:root{color-scheme:light;--lime: #a8d96f;--pistachio: #c7e8a3;--lime-soft: #b8df82;--lime-bright: #b7e46c;--pistachio-fresh: #cbef98;--lime-paper: #ddf5b9;--leaf: #6fa447;--leaf-dark: #486b32;--ivory: #faf7ee;--white: #fffdf8;--gold: #c8a45d;--gold-dark: #a98238;--ink: #403a30;--content-warm: #fffdf8;--content-ivory: #faf7ee;--content-lime: #dcefb8;--content-pistachio: #cbea96;--content-ink: #4b6036;--content-heading: #354b2f;--content-gold: #d5ad48;--content-gold-deep: #56683a;--display: "Cormorant Garamond", Georgia, serif;--script: "Great Vibes", "Segoe Script", cursive;--sans: "Montserrat", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ivory)}body{margin:0;min-width:320px;overflow-x:hidden;background:var(--ivory);color:var(--ink);font-family:var(--display)}body.is-locked{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--gold-dark);outline-offset:5px}#app{width:min(100%,620px);margin:0 auto;overflow:hidden;background:var(--white);box-shadow:0 0 80px #735c2f1f}.opening{position:relative;height:100svh;min-height:620px;background:var(--ivory)}.stage{position:relative;height:100%;min-height:620px;isolation:isolate;overflow:hidden;background:var(--lime) url(../media/curtain-opening-runway-test-v1-poster.png) center / cover no-repeat;contain:paint}.hero-video,.hero-fallback{position:absolute;inset:0;width:100%;height:100%}.hero-video{z-index:1;display:block;border:0;object-fit:cover;object-position:50% 50%;background:transparent}.hero-fallback{z-index:0;opacity:0;background:var(--ivory) url(../media/curtain-opening-runway-test-v1-final.png) center / cover no-repeat;transition:opacity .35s ease}.stage.is-fallback .hero-video{opacity:0}.stage.is-fallback .hero-fallback{opacity:1}.stage:after{content:"";position:absolute;z-index:2;inset:20% 4% 13%;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 51%,rgba(54,61,35,.42),rgba(66,72,42,.2) 48%,transparent 73%);filter:blur(10px);transition:opacity 1.6s ease}.stage.show-focus:after,.stage.is-fallback:after{opacity:1}.hero-copy{position:absolute;z-index:3;top:50.5%;left:50%;width:min(84%,500px);transform:translate(-50%,-50%);text-align:center;color:var(--white);pointer-events:none}.hero-focus{position:absolute;z-index:-1;inset:-3.1rem -.7rem;opacity:0;border-radius:50%;background:radial-gradient(ellipse,rgba(45,51,29,.35),rgba(59,65,37,.15) 54%,transparent 76%);filter:blur(12px);transform:scale(.9);transition:opacity 1.4s ease,transform 1.4s ease}.hero-eyebrow,.couple-names span,.hero-date{opacity:0;filter:blur(7px);transform:translate3d(0,12px,0) scale(.985);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform 1.05s cubic-bezier(.22,1,.36,1),filter .9s ease,letter-spacing 1.05s ease;will-change:opacity,transform,filter}.hero-eyebrow,.kicker{margin:0;font-family:var(--sans);font-size:.64rem;font-weight:400;letter-spacing:.28em;line-height:1.6;text-transform:uppercase}.hero-eyebrow{color:var(--white);font-weight:500;letter-spacing:.36em;text-shadow:0 2px 8px rgba(41,48,29,.9),0 0 18px rgba(55,70,38,.58)}.couple-names{display:grid;justify-items:center;gap:.36rem;margin:1rem 0 .9rem;font-weight:400;line-height:1}.couple-names span:not(.ampersand){display:block;max-width:100%;color:#d2aa58;font-family:var(--script);font-size:clamp(3.75rem,18vw,6.55rem);line-height:.9;white-space:nowrap;-webkit-text-fill-color:#d2aa58;-webkit-text-stroke:0;text-shadow:0 1px 2px rgba(62,45,20,.96),0 5px 18px rgba(47,55,33,.7),0 0 18px rgba(255,236,173,.2)}.couple-names .ampersand{margin:.04rem 0;color:#d4ad5d;font-family:var(--display);font-size:1.95rem;font-style:italic;line-height:1;text-shadow:0 1px 2px rgba(62,45,20,.9),0 0 10px rgba(43,53,29,.78)}.hero-date{margin:0;color:#d4ad5d;font-family:var(--sans);font-size:.8rem;font-weight:500;letter-spacing:.46em;text-shadow:0 1px 2px rgba(67,49,22,.92),0 0 9px rgba(43,53,29,.8)}.stage.show-focus .hero-focus,.stage.is-fallback .hero-focus{opacity:1;transform:scale(1)}.stage.show-eyebrow .hero-eyebrow,.stage.show-ramik .name-ramik,.stage.show-ampersand .ampersand,.stage.show-mariam .name-mariam,.stage.show-date .hero-date,.stage.is-fallback .hero-eyebrow,.stage.is-fallback .couple-names span,.stage.is-fallback .hero-date{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}.stage.show-eyebrow .hero-eyebrow,.stage.is-fallback .hero-eyebrow{letter-spacing:.28em}.stage.show-date .hero-date,.stage.is-fallback .hero-date{letter-spacing:.42em}.hero-transition{position:absolute;z-index:4;right:0;bottom:-1px;left:0;height:76px;display:grid;place-items:end center;padding-bottom:11px;opacity:0;pointer-events:none;color:var(--gold-dark);font-size:.58rem;background:linear-gradient(to bottom,transparent 0,rgba(255,253,248,.12) 36%,rgba(255,253,248,.92) 92%,var(--white) 100%);transform:translateY(12px);transition:opacity 1.2s ease,transform 1.2s ease}.stage.show-transition .hero-transition,.stage.is-fallback .hero-transition{opacity:1;transform:translateY(0)}.hero-transition span:before,.hero-transition span:after{content:"";display:inline-block;width:52px;height:1px;margin:0 .7rem .18rem;background:linear-gradient(90deg,transparent,rgba(169,130,56,.58))}.hero-transition span:after{background:linear-gradient(90deg,rgba(169,130,56,.58),transparent)}main{position:relative;isolation:isolate;overflow:hidden;color:var(--content-ink);background:radial-gradient(72% 6% at 92% 19%,rgba(231,197,111,.56) 0%,rgba(242,223,167,.28) 54%,transparent 86%),radial-gradient(70% 5% at 7% 32%,rgba(231,197,111,.52) 0%,rgba(242,223,167,.26) 54%,transparent 86%),radial-gradient(74% 6% at 93% 48%,rgba(231,197,111,.54) 0%,rgba(242,223,167,.28) 54%,transparent 86%),radial-gradient(72% 6% at 6% 64%,rgba(231,197,111,.52) 0%,rgba(242,223,167,.26) 54%,transparent 86%),radial-gradient(72% 6% at 94% 79%,rgba(231,197,111,.56) 0%,rgba(242,223,167,.28) 54%,transparent 86%),radial-gradient(70% 5% at 7% 90%,rgba(231,197,111,.52) 0%,rgba(242,223,167,.26) 54%,transparent 86%),radial-gradient(84% 8% at 88% 101%,rgba(231,197,111,.7) 0%,rgba(242,223,167,.38) 54%,transparent 88%),radial-gradient(110% 10% at 39% 11%,rgba(255,253,247,.9) 0%,rgba(250,245,232,.58) 48%,transparent 100%),radial-gradient(106% 7% at 64% 27%,rgba(255,253,247,.88) 0%,rgba(250,245,232,.55) 48%,transparent 100%),radial-gradient(112% 8% at 35% 41%,rgba(255,253,247,.9) 0%,rgba(250,245,232,.58) 48%,transparent 100%),radial-gradient(108% 8% at 65% 57%,rgba(255,253,247,.9) 0%,rgba(250,245,232,.56) 48%,transparent 100%),radial-gradient(112% 8% at 37% 72%,rgba(255,253,247,.9) 0%,rgba(250,245,232,.56) 48%,transparent 100%),radial-gradient(106% 6% at 64% 85%,rgba(255,253,247,.88) 0%,rgba(250,245,232,.54) 48%,transparent 100%),radial-gradient(102% 6% at 41% 96%,rgba(255,253,247,.86) 0%,rgba(250,245,232,.52) 48%,transparent 100%),radial-gradient(108% 12% at 62% 0%,rgba(203,239,122,.84) 0%,rgba(221,244,166,.6) 42%,rgba(234,244,201,.18) 72%,transparent 100%),radial-gradient(114% 9% at 28% 20%,rgba(203,239,122,.74) 0%,rgba(221,244,166,.56) 42%,rgba(234,244,201,.16) 72%,transparent 100%),radial-gradient(112% 10% at 73% 33%,rgba(203,239,122,.76) 0%,rgba(221,244,166,.56) 42%,rgba(234,244,201,.16) 72%,transparent 100%),radial-gradient(114% 10% at 24% 49%,rgba(203,239,122,.74) 0%,rgba(221,244,166,.56) 42%,rgba(234,244,201,.16) 72%,transparent 100%),radial-gradient(114% 10% at 68% 65%,rgba(203,239,122,.74) 0%,rgba(221,244,166,.55) 42%,rgba(234,244,201,.16) 72%,transparent 100%),radial-gradient(112% 8% at 31% 80%,rgba(203,239,122,.72) 0%,rgba(221,244,166,.54) 42%,rgba(234,244,201,.15) 72%,transparent 100%),radial-gradient(108% 7% at 64% 91%,rgba(203,239,122,.68) 0%,rgba(221,244,166,.5) 42%,rgba(234,244,201,.14) 72%,transparent 100%),radial-gradient(94% 10% at 86% 20%,rgba(242,223,167,.7) 0%,rgba(231,197,111,.42) 52%,transparent 100%),radial-gradient(92% 7% at 12% 33%,rgba(242,223,167,.68) 0%,rgba(231,197,111,.4) 52%,transparent 100%),radial-gradient(98% 8% at 86% 49%,rgba(242,223,167,.7) 0%,rgba(231,197,111,.42) 52%,transparent 100%),radial-gradient(94% 8% at 10% 65%,rgba(242,223,167,.68) 0%,rgba(231,197,111,.4) 52%,transparent 100%),radial-gradient(94% 8% at 88% 80%,rgba(242,223,167,.7) 0%,rgba(231,197,111,.42) 52%,transparent 100%),radial-gradient(90% 6% at 12% 91%,rgba(242,223,167,.66) 0%,rgba(231,197,111,.38) 52%,transparent 100%),radial-gradient(104% 9% at 80% 100%,rgba(242,223,167,.82) 0%,rgba(231,197,111,.5) 52%,transparent 100%),#faf5e8}main:before,main:after{content:"";position:absolute;z-index:0;inset:0;pointer-events:none}main:before{inset:-2% -12%;background:radial-gradient(ellipse 18% 88% at 0% 44%,rgba(255,253,247,.46),transparent 78%),radial-gradient(ellipse 17% 84% at 100% 59%,rgba(255,253,247,.4),transparent 78%);filter:blur(34px)}main:after{background-image:radial-gradient(rgba(68,84,48,.12) .42px,transparent .58px),radial-gradient(rgba(255,255,255,.72) .38px,transparent .52px);background-position:0 0,1px 1px;background-size:4px 4px,5px 5px;opacity:.12;mix-blend-mode:soft-light}main>section{position:relative;z-index:2;padding:7.5rem 1.5rem;text-align:center}main h2{margin:0 auto;color:var(--content-heading);font-weight:400;line-height:1.08;text-wrap:balance}.quote-block,.portrait-frame,.message-section>:not(.editorial-wave),.calendar-section>:not(.editorial-wave),.clock-section>:not(.editorial-wave),.location-paper,.countdown-section>*,.closing-content{position:relative;z-index:1}.reveal-item,.message-title>span,.stagger-char{opacity:0;filter:blur(7px);transform:translate3d(0,22px,0);transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1),filter .95s ease}.reveal-item{transition-delay:calc(var(--reveal-order, 0) * 80ms)}.message-title>span{display:inline-block;transition-delay:calc(.12s + var(--word-order, 0) * 90ms)}.stagger-char{display:inline-block;transform:translate3d(0,10px,0);transition-delay:calc(.1s + var(--char-order, 0) * 34ms)}.reveal.is-visible .reveal-item,.reveal.is-visible .message-title>span,.reveal.is-visible .stagger-char{opacity:1;filter:blur(0);transform:translateZ(0)}.section-label{margin:0;color:var(--content-gold-deep);font:500 .66rem/1.5 var(--sans);letter-spacing:.3em;text-transform:uppercase}.section-rule,.closing-rule{display:block;width:82px;height:1px;margin-inline:auto;background:linear-gradient(90deg,transparent,var(--content-gold) 20%,var(--content-gold) 80%,transparent)}.reveal .section-rule,.reveal .closing-rule{transform:scaleX(0);transform-origin:center}.reveal.is-visible .section-rule,.reveal.is-visible .closing-rule{transform:scaleX(1)}.editorial-wave{position:absolute;z-index:0;left:-12%;width:124%;height:120px;overflow:visible;pointer-events:none}.editorial-wave path{fill:none;stroke:#d5ad48;stroke-width:1.2;stroke-linecap:round;opacity:.58;vector-effect:non-scaling-stroke}.editorial-wave .wave-fine{opacity:.36}.editorial-wave .wave-soft{stroke-width:.9;opacity:.25}.clock-section .editorial-wave path{stroke:#f1dda3;opacity:.44}.clock-section .editorial-wave .wave-fine{opacity:.25}.clock-section .editorial-wave .wave-soft{opacity:.17}.closing-section .editorial-wave path{stroke:#f6e6b8;opacity:.42}.closing-section .editorial-wave .wave-fine{opacity:.22}.closing-section .editorial-wave .wave-soft{opacity:.14}.portrait-section{padding-top:7.8rem;padding-bottom:10.5rem}.portrait-verse{max-width:510px;font-size:clamp(2rem,7.8vw,3.15rem);line-height:1.16}.verse-reference{min-height:1.2em;margin:1.15rem 0 0;color:var(--content-gold-deep);font:500 .64rem/1.5 var(--sans);letter-spacing:.24em;text-transform:uppercase}.portrait-frame{width:min(88%,430px);margin:4rem auto 0}.portrait-paper{position:relative;padding:10px;border:1px solid rgba(255,255,255,.4);background:#fffdf880;box-shadow:0 24px 58px #5467391f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.portrait-arch{position:relative;aspect-ratio:4 / 5;overflow:hidden;border:1px solid rgba(213,173,72,.76);border-radius:48% 48% 2px 2px/28% 28% 2px 2px;clip-path:inset(0 46% 0 46% round 48% 48% 2px 2px);transition:clip-path 1.65s cubic-bezier(.22,1,.36,1) .18s}.portrait-arch:before,.portrait-arch:after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none}.portrait-arch:before{width:42%;left:-70%;background:linear-gradient(112deg,transparent 10%,rgba(255,252,233,.34) 46%,transparent 82%);transform:skew(-13deg)}.portrait-arch:after{box-shadow:inset 0 0 34px #354b2f1a}.portrait-media{width:100%;height:100%;filter:blur(12px);transform:scale(1.1);transform-origin:center;transition:filter 1.55s ease .2s,transform 1.8s cubic-bezier(.22,1,.36,1) .2s}.portrait-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:saturate(.94) contrast(1.025);transform:scale(1.02)}.portrait-section.is-visible .portrait-arch{clip-path:inset(0 round 48% 48% 2px 2px)}.portrait-section.is-visible .portrait-media{filter:blur(0);transform:scale(1.02)}.portrait-section.is-visible .portrait-arch:before{animation:portrait-shimmer 1.45s cubic-bezier(.22,1,.36,1) .82s both}.portrait-section.is-visible .portrait-media img{animation:portrait-ken-burns 18s ease-in-out 2s both}.wave-after-photo{bottom:1.35rem}@keyframes portrait-shimmer{0%{left:-70%}to{left:138%}}@keyframes portrait-ken-burns{0%{transform:scale(1.02) translateZ(0)}to{transform:scale(1.065) translate3d(-.8%,-1%,0)}}.message-section{padding-top:8rem;padding-bottom:9rem}.message-title{max-width:520px;margin-top:2.4rem;font-size:clamp(2.3rem,9vw,3.55rem)}.invitation-copy{max-width:460px;margin:2.7rem auto 0}.invitation-copy p{margin:0 auto 1.25rem;color:var(--content-ink);font-size:clamp(1.12rem,3.2vw,1.3rem);line-height:1.72}.calendar-section{padding-top:10rem;padding-bottom:10rem}.wave-calendar-top{top:1.2rem}.wave-calendar-bottom{bottom:1rem}.calendar-paper{width:min(100%,505px);margin:2rem auto 0;padding:2.35rem 2rem 1.7rem;border:1px solid rgba(255,255,255,.36);border-radius:2px;background:#fffdf880;box-shadow:0 22px 50px #5467391f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.calendar-heading h2{color:var(--content-heading);font-family:var(--script);font-size:clamp(3.25rem,12vw,4.7rem);line-height:.95}.calendar-heading p{margin:.7rem 0 1.6rem;color:var(--content-gold-deep);font:500 .66rem/1 var(--sans);letter-spacing:.42em}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding:0 .1rem .85rem;border-bottom:1px solid rgba(213,173,72,.34)}.calendar-weekdays span{color:var(--content-gold-deep);font:500 .58rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}.calendar-days{padding-top:.65rem}.calendar-day{position:relative;min-width:0;height:48px;display:grid;place-items:center;color:var(--content-heading);font-size:1rem;font-variant-numeric:tabular-nums;opacity:0;transform:translateY(7px)}.calendar-section.is-visible .calendar-day:not(.calendar-day-empty){animation:calendar-day-in .72s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(.36s + var(--day-order, 0) * 22ms)}.calendar-day-empty{pointer-events:none}.calendar-day-wedding{position:relative;width:36px;height:36px;display:grid;place-items:center;color:var(--content-gold-deep);border-radius:50%;background:#cbea9659}.calendar-day-wedding svg{position:absolute;inset:-2px;width:40px;height:40px;overflow:visible;transform:rotate(-90deg)}.calendar-day-wedding circle{fill:none;stroke:var(--content-gold);stroke-width:1.2;stroke-dasharray:113;stroke-dashoffset:113}.calendar-section.is-visible .calendar-day-wedding circle{animation:calendar-circle-draw 1.25s cubic-bezier(.22,1,.36,1) 1s forwards}.calendar-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-top:1rem}.calendar-footer span{height:1px;background:#d5ad4875}.calendar-footer time{color:var(--content-heading);font:500 .66rem/1 var(--sans);letter-spacing:.28em}@keyframes calendar-day-in{to{opacity:1;transform:translateY(0)}}@keyframes calendar-circle-draw{to{stroke-dashoffset:0}}.clock-section{padding-top:8.5rem;padding-bottom:10rem}.clock-composition{margin-top:2.8rem}.analog-clock{display:block;width:min(72vw,330px);margin:0 auto;overflow:visible}.clock-ring,.clock-tick,.clock-hand{fill:none;stroke-linecap:round}.clock-ring{stroke:var(--content-gold)}.clock-ring-outer{stroke-width:1.05;opacity:.72}.clock-ring-inner{stroke-width:.55;opacity:.36}.clock-tick{stroke:var(--content-gold-deep);stroke-width:.75;opacity:.58}.clock-tick-major{stroke-width:1.25;opacity:.78}.clock-numerals{fill:var(--content-gold-deep);font:500 7px var(--display);opacity:.78;text-anchor:middle;dominant-baseline:middle}.clock-hand{transform-origin:100px 100px;transform-box:view-box;transform:rotate(0);transition:transform 1.85s cubic-bezier(.2,.82,.22,1) .42s}.clock-hour{stroke:var(--content-heading);stroke-width:2}.clock-minute{stroke:var(--content-gold-deep);stroke-width:1.2}.clock-pin{fill:var(--content-gold);stroke:var(--content-warm);stroke-width:1.3}.clock-section.is-visible .clock-hour{transform:rotate(150deg)}.clock-section.is-visible .clock-minute{transform:rotate(360deg)}.clock-time{margin:1.8rem 0 0;color:var(--content-heading);font-size:clamp(4.3rem,18vw,6.2rem);font-variant-numeric:lining-nums tabular-nums;letter-spacing:.02em;line-height:.9}.clock-time span{color:var(--content-gold)}.wave-between-time-location{bottom:1.25rem}.location-section{padding-top:8.5rem;padding-bottom:8.5rem}.location-paper{width:min(100%,500px);margin:0 auto;padding:4.5rem 2.1rem 2.2rem;border:1px solid rgba(255,255,255,.36);border-radius:2px;background:#fffdf880;box-shadow:0 22px 52px #5467391f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.location-title{font-family:var(--script);font-size:clamp(3.9rem,14vw,5.4rem)}.location-paper .section-label{margin-top:1.7rem}.venue-name{margin:2.2rem 0 0;color:var(--content-heading);font-size:clamp(2.35rem,9vw,3.35rem);line-height:1}.location-divider{display:block;width:44px;height:1px;margin:1.8rem auto 1.65rem;background:var(--content-gold)}.location-paper address{color:var(--content-ink);font:400 .78rem/1.6 var(--sans);font-style:normal;letter-spacing:.07em}.location-button{position:relative;width:min(100%,330px);min-height:56px;display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.7rem;padding:1rem 1.25rem 1rem 1.5rem;border:1px solid var(--content-gold);background:#fffdf857;color:var(--content-heading);font:500 .64rem/1 var(--sans);letter-spacing:.18em;text-decoration:none;text-transform:uppercase;transition:color .35s ease,background .35s ease,transform .35s ease,box-shadow .35s ease}.button-arrow{color:var(--content-gold-deep);font-size:1rem;transition:transform .35s ease}.location-button:hover{color:var(--content-warm);background:var(--content-heading);box-shadow:0 12px 28px #3f4d3524;transform:translateY(-2px)}.location-button:hover .button-arrow{transform:translate(4px)}.countdown-section{padding-top:8rem;padding-bottom:9rem}.countdown-title>span{display:block;color:var(--content-heading);font:500 clamp(.75rem,2.4vw,.9rem)/1.5 var(--sans);letter-spacing:.28em;text-transform:uppercase}.countdown-title em{display:block;margin-top:.25rem;color:var(--content-gold-deep);font-family:var(--script);font-size:clamp(2.6rem,10vw,3.8rem);font-style:normal;line-height:1}.countdown{width:min(100%,520px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:3.1rem auto 0;padding:1.4rem 0 1.25rem;border-top:1px solid rgba(213,173,72,.4);border-bottom:1px solid rgba(213,173,72,.4)}.countdown div{min-width:0;padding:.45rem .25rem}.countdown div+div{border-left:1px solid rgba(213,173,72,.32)}.countdown strong{display:block;color:var(--content-heading);font-size:clamp(2.1rem,9vw,3.7rem);font-weight:400;font-variant-numeric:lining-nums tabular-nums;line-height:1;transform-origin:center}.countdown strong.is-ticking{animation:countdown-tick .42s cubic-bezier(.22,1,.36,1)}.countdown span{display:block;margin-top:.55rem;color:#445632;font:500 clamp(.44rem,1.6vw,.58rem)/1 var(--sans);letter-spacing:.1em;text-transform:uppercase}.countdown-finished{margin:2.8rem 0 0;color:var(--content-gold-deep);font-size:2.25rem}@keyframes countdown-tick{0%{opacity:.28;filter:blur(4px);transform:translateY(-7px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}.closing-section{min-height:470px;display:grid;place-items:center;padding-top:8.5rem;padding-bottom:6.5rem}.wave-before-closing{top:.75rem}.closing-script{margin:0;color:#465a35;text-shadow:0 2px 18px rgba(255,246,219,.2);font-family:var(--script);font-size:clamp(3rem,12vw,4.4rem);line-height:1}.closing-names{margin-top:1rem;font-family:var(--script);font-size:clamp(2.8rem,12vw,4.6rem)}.closing-rule{margin-top:1.7rem}.closing-date{margin:1.5rem 0 0;color:#405032;font:500 .64rem/1 var(--sans);letter-spacing:.34em}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:700px){body{padding:0 24px}main>section{padding-inline:3.2rem}.opening,.stage{min-height:720px}}@media(max-width:430px){main>section{padding-inline:1.2rem}.editorial-wave{left:-19%;width:138%}.portrait-section{padding-bottom:9.5rem}.portrait-frame{width:min(92%,410px);margin-top:3.3rem}.calendar-paper{padding:2.1rem 1rem 1.45rem}.calendar-day{height:42px;font-size:.9rem}.calendar-day-wedding{width:34px;height:34px}.calendar-day-wedding svg{width:38px;height:38px}.calendar-footer{gap:.65rem}.calendar-footer time{font-size:.58rem;letter-spacing:.2em}.analog-clock{width:min(76vw,305px)}.location-paper{padding:4rem 1.35rem 1.55rem}.countdown-section{padding-inline:1rem}}@media(max-width:380px){.hero-copy{top:51%;width:86%}.couple-names span:not(.ampersand){font-size:3.55rem}.calendar-day{height:40px}.countdown strong{font-size:2rem}.countdown span{font-size:.43rem;letter-spacing:.06em}}@media(max-width:340px){.countdown{grid-template-columns:repeat(2,minmax(0,1fr))}.countdown div:nth-child(3){border-left:0}.countdown div:nth-child(n+3){border-top:1px solid rgba(213,173,72,.28)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}.reveal-item,.message-title>span,.stagger-char,.calendar-day{opacity:1!important;filter:none!important;transform:none!important}.section-rule,.closing-rule{transform:scaleX(1)!important}.portrait-arch{clip-path:inset(0 round 48% 48% 2px 2px)}.portrait-media{filter:none;transform:scale(1.02)}.clock-hour{transform:rotate(150deg)}.clock-minute{transform:rotate(0)}.calendar-day-wedding circle{stroke-dashoffset:0}}
