.occasion-page{--occasion-plum:#1d1021;--occasion-deep:#110b1b;--occasion-cream:#f6ead5;--occasion-muted:#c6b8c4;--occasion-gold:#dcab68;background:radial-gradient(circle at 50% 7%, #51263c 0, transparent 28rem), radial-gradient(circle at 85% 73%, #44273a 0, transparent 30rem), linear-gradient(150deg, var(--occasion-plum), var(--occasion-deep) 70%);min-height:100vh;color:var(--occasion-cream);overflow:hidden}.occasion-page a:focus-visible{outline:2px solid var(--occasion-gold);outline-offset:5px}.occasion-nav,.occasion-footer{justify-content:space-between;align-items:center;gap:1.5rem;max-width:1260px;margin:0 auto;padding:1.4rem clamp(1.25rem,4vw,3rem);display:flex}.occasion-brand{align-items:center;gap:.65rem;font-weight:650;display:inline-flex}.occasion-brand span{letter-spacing:-.025em}.occasion-edition,.occasion-eyebrow,.occasion-kicker,.occasion-action-number{letter-spacing:.2em;text-transform:uppercase;font-size:.68rem;font-weight:700}.occasion-edition{color:var(--occasion-muted);white-space:nowrap}.occasion-edition span{color:var(--occasion-gold);margin:0 .35rem}.occasion-hero{isolation:isolate;text-align:center;max-width:1340px;margin:0 auto;padding:clamp(2.2rem,5vw,5rem) clamp(1rem,3vw,2.5rem) 0;position:relative}.occasion-halo{z-index:-1;pointer-events:none;background:radial-gradient(#a44a4040 0,#0000 70%);width:min(90vw,800px);height:450px;position:absolute;top:0;left:50%;transform:translate(-50%)}.occasion-eyebrow{color:var(--occasion-gold)}.occasion-hero h1{font-family:var(--font-display);letter-spacing:-.055em;text-wrap:balance;margin:1rem auto 0;font-size:clamp(3.8rem,10vw,9rem);font-weight:500;line-height:.94}.occasion-hero h1 em{color:#ecc78b;font-weight:500}.occasion-intro{color:var(--occasion-muted);font-family:var(--font-display);margin:1.5rem auto 2.75rem;font-size:clamp(1.1rem,2vw,1.45rem)}.occasion-gallery{margin:0}.occasion-gallery-frame{background:linear-gradient(140deg,#a87842,#472a31 38%,#b3884c 75%,#3a1b2b);border:1px solid #e6bc7a80;border-radius:clamp(.8rem,2vw,1.5rem);padding:clamp(.28rem,.7vw,.65rem);overflow:hidden;box-shadow:0 22px 80px #0009,0 0 55px #cc6c3533}.occasion-gallery-frame img{border-radius:clamp(.5rem,1.4vw,1rem);width:100%;height:auto;display:block}.occasion-gallery figcaption{color:var(--occasion-muted);letter-spacing:.025em;margin:1.1rem auto 0;font-size:.78rem}.occasion-invitation{text-align:center;max-width:900px;margin:0 auto;padding:clamp(4rem,8vw,7rem) clamp(1.25rem,4vw,3rem) 6rem}.occasion-rule{color:var(--occasion-gold);align-items:center;gap:1rem;display:flex}.occasion-rule:before,.occasion-rule:after{content:"";background:linear-gradient(90deg,#0000,#c29a624d);flex:1;height:1px}.occasion-rule:after{transform:rotate(180deg)}.occasion-kicker{color:var(--occasion-gold);margin-top:2.5rem}.occasion-invitation h2{font-family:var(--font-display);letter-spacing:-.035em;margin-top:.8rem;font-size:clamp(2.4rem,5vw,4.5rem);font-weight:500}.occasion-invitation-copy{color:#decfd9;max-width:620px;margin:1rem auto 0;line-height:1.7}.occasion-actions{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:3.25rem;display:grid}.occasion-action{background:#fceac608;border:1px solid #d0a7774d;border-radius:1.1rem;min-height:225px;padding:1.6rem}.occasion-action-number{color:var(--occasion-gold)}.occasion-action p{color:var(--occasion-muted);margin-top:1.2rem;font-size:.92rem;line-height:1.65}.occasion-store-link{border:1px solid var(--occasion-gold);color:var(--occasion-cream);border-radius:999px;align-items:center;gap:.7rem;margin-top:1.5rem;padding:.85rem 1.15rem;font-size:.85rem;font-weight:650;transition:background .2s,color .2s;display:inline-flex}.occasion-store-link:hover{background:var(--occasion-gold);color:var(--occasion-deep)}.occasion-footnote{color:#ab9ca9;margin-top:2.4rem;font-size:.75rem;line-height:1.5}.occasion-footer{color:var(--occasion-muted);border-top:1px solid #e6bc7a2e;font-size:.78rem}.occasion-footer nav{gap:1.2rem;display:flex}.occasion-footer a:hover{color:var(--occasion-cream)}@media (width<=640px){.occasion-edition{letter-spacing:.09em;font-size:.57rem}.occasion-hero h1{font-size:clamp(3.4rem,15vw,5.4rem)}.occasion-intro{margin-bottom:2rem}.occasion-actions{grid-template-columns:1fr}.occasion-action{min-height:0}.occasion-footer{flex-direction:column}}@media (prefers-reduced-motion:reduce){.occasion-store-link{transition:none}}
