.hero-art{aspect-ratio:1;isolation:isolate;width:100%;min-height:0;position:relative;container-type:inline-size}.seed-stage{transform:perspective(1100px) translate3d(var(--parallax-x,0px), var(--parallax-y,0px), 0) rotateX(var(--stage-tilt-x,0deg)) rotateY(var(--stage-tilt-y,0deg));transition:transform 1.1s var(--ease);position:absolute;inset:2%}.seed-halo{background:radial-gradient(#99a47b38,#e2e3c761 47%,#0000 72%);border-radius:50%;animation:12s ease-in-out infinite halo-breathe;position:absolute;inset:3%}.ceramic-disc{background:linear-gradient(145deg,#fffef8 8%,#eeedda 57%,#e0e2c9);border:1px solid #fffef8b3;border-radius:49% 51% 48% 52%/52% 48%;animation:10s ease-in-out infinite ceramic-float;position:absolute;inset:13%;box-shadow:14px 24px 42px #303a2817,inset 2px 2px 4px #ffffffe6,inset -3px -3px 7px #8d95721f}.ceramic-disc:before,.ceramic-disc:after{content:"";border-radius:inherit;position:absolute}.ceramic-disc:before{border:1px solid #a1a9853b;inset:5%;box-shadow:1px 1px #fffef8e6}.ceramic-disc:after{border:1px solid #fffef8e6;inset:9%}.botanical-orbit{border:1px solid #65704d3b;border-radius:50%;animation:54s linear infinite botanical-orbit;position:absolute;inset:6%}.botanical-orbit>span{aspect-ratio:1;background:var(--olive-light);border-radius:50%;width:8px;margin-top:-4px;position:absolute;top:50%;left:-4px;box-shadow:0 0 0 5px #99a47b14}.orbit-two{border-color:#65704d1f;animation-duration:72s;animation-direction:reverse;inset:2% 11%;rotate:-30deg}.orbit-two>span{background:var(--surface);width:5px;box-shadow:0 0 0 1px var(--line);left:-3px}.ceremony-satellite{--satellite-period:54s;z-index:6;pointer-events:none;animation:ceremony-orbit var(--satellite-period) linear infinite;position:absolute;inset:6%}.satellite-position{aspect-ratio:1;width:clamp(40px,12cqw,72px);position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.satellite-medallion{border:1px solid var(--line);width:100%;height:100%;color:var(--olive-deep);background:var(--surface);animation:ceremony-upright var(--satellite-period) linear infinite;border-radius:50%;position:relative;box-shadow:0 7px 18px #303a281a,inset 0 0 0 4px #e2e3c733}.wedding-symbol{place-items:center;display:grid;position:absolute;inset:12%}.wedding-symbol svg{width:100%;height:100%;display:block}.symbol-rings{opacity:1;animation:16s ease-in-out infinite rings-dissolve}.symbol-cake{opacity:0;animation:16s ease-in-out infinite cake-dissolve}.olive-wreath{z-index:3;filter:drop-shadow(2px 6px 3px #303a2817);width:100%;height:100%;position:absolute;inset:0;overflow:visible}.olive-stem{stroke:#8c9770;stroke-width:1.2px;stroke-linecap:round}.olive-branch{transform-origin:178px 505px;animation:11s ease-in-out infinite branch-sway}.branch-right{animation-duration:13s;animation-delay:-5s}.olive-leaf{transform-origin:0 0;animation:leaf-sway 7s ease-in-out var(--leaf-delay) infinite}.olive-vein{stroke:#f0f1d975;stroke-width:.7px}.olive-fruit{fill:#69754f}.seed-core{z-index:4;background:linear-gradient(135deg,#fffef9,#faf9ee);border:1px solid #c9c7a980;border-radius:50%;place-items:center;animation:10s ease-in-out infinite core-float;display:grid;position:absolute;inset:25%;box-shadow:0 8px 25px #303a280f,inset 0 0 0 5px #fffef8cc}.seed-core:before{content:"";border-radius:inherit;border:1px solid #c9c7a96e;position:absolute;inset:6%}.seed-copy{max-width:7ch;font:400 clamp(2rem, 4.5vw, 4rem)/.9 var(--font-script);text-align:center;text-wrap:balance;padding-bottom:.08em;font-size:10.5cqw;position:relative;transform:rotate(-6deg)}.seed-flourish{align-items:center;gap:5px;display:flex;position:absolute;bottom:14%}.seed-flourish i{background:var(--olive-light);border-radius:50%;width:3px;height:3px}.seed-flourish i:nth-child(2){border-radius:100% 0;width:11px;height:5px;transform:rotate(-30deg)}.seed-sparkles{pointer-events:none;position:absolute;inset:0}.seed-sparkles i{background:var(--olive-light);border-radius:50%;width:4px;height:4px;animation:9s ease-in-out infinite seed-drift;position:absolute}.seed-sparkles i:first-child{top:14%;left:44%}.seed-sparkles i:nth-child(2){width:3px;height:3px;animation-delay:-3s;bottom:14%;right:43%}.seed-sparkles i:nth-child(3){width:2px;height:2px;animation-delay:-6s;top:48%;right:7%}.motion-paused *{animation-play-state:paused!important}@keyframes botanical-orbit{to{transform:rotate(360deg)}}@keyframes ceremony-orbit{0%{transform:rotate(115deg)}to{transform:rotate(475deg)}}@keyframes ceremony-upright{0%{transform:rotate(-115deg)}to{transform:rotate(-475deg)}}@keyframes rings-dissolve{0%,40%,to{opacity:1;transform:translateY(0)scale(1)}48%,92%{opacity:0;transform:translateY(-3px)scale(.94)}}@keyframes cake-dissolve{0%,40%,to{opacity:0;transform:translateY(3px)scale(.94)}48%,92%{opacity:1;transform:translateY(0)scale(1)}}@keyframes halo-breathe{0%,to{opacity:.7;transform:scale(.97)}50%{opacity:1;transform:scale(1.04)}}@keyframes ceramic-float{0%,to{transform:translateY(3px)rotate(-7deg)}50%{transform:translateY(-5px)rotate(-3deg)}}@keyframes core-float{0%,to{transform:translateY(2px)}50%{transform:translateY(-3px)}}@keyframes branch-sway{0%,to{transform:rotate(-1.8deg)}50%{transform:rotate(1.8deg)}}@keyframes leaf-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes seed-drift{0%,to{opacity:.35;transform:translateY(3px)}50%{opacity:.8;transform:translateY(-5px)}}:root{--bg:#f5f1df;--surface:#fffef8;--surface-soft:#ecebd9;--surface-warm:#e2e3c7;--ink:#292b1f;--ink-soft:#4b503d;--muted:#686c56;--line:#c9c7a9;--line-soft:#dfddc7;--olive:#65704d;--olive-deep:#303a28;--olive-light:#99a47b;--white:#fffef8;--font-display:"Iowan Old Style", Baskerville, Georgia, serif;--font-body:"Avenir Next", Avenir, "Helvetica Neue", sans-serif;--font-script:"Snell Roundhand", "Segoe Script", cursive;--font-mono:"SF Mono", ui-monospace, Menlo, monospace;--radius-md:20px;--radius-lg:28px;--radius-round:999px;--shadow-soft:0 16px 48px #292b1f14;--focus:0 0 0 4px #65704d40;--ease:cubic-bezier(.22, 1, .36, 1);--container:1320px;--section-space:clamp(5rem, 9vw, 9rem)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);scrollbar-gutter:stable;min-width:320px;scroll-padding-top:108px}body{min-width:320px;color:var(--ink);background:var(--bg);font:400 1rem/1.6 var(--font-body);-webkit-font-smoothing:antialiased;margin:0}body:before{z-index:20;content:"";pointer-events:none;opacity:.17;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.84' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E");position:fixed;inset:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a,button{color:inherit}:focus-visible{outline:2px solid var(--olive);outline-offset:5px}.places :focus-visible,.info-tile-accent :focus-visible{outline-color:var(--white)}main:focus,section:focus{outline:none}::selection{color:var(--white);background:var(--olive)}.container{width:min(var(--container), calc(100% - 112px));margin-inline:auto}section{padding-block:var(--section-space)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.055em;text-wrap:balance;margin-bottom:0;font-weight:400;line-height:1.02}h2{font-size:clamp(3.2rem,5.8vw,5.6rem)}h3{font-size:clamp(1.8rem,2.6vw,2.6rem)}h2 em,.footer-message em{color:var(--olive);font-weight:400}p{text-wrap:pretty}.lead{max-width:43ch;color:var(--ink-soft);margin-bottom:0;font-size:clamp(.95rem,1.15vw,1.1rem);line-height:1.8}.eyebrow{color:var(--olive);font:500 .65rem/1.5 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:.9rem;margin-bottom:1.7rem;display:flex}.eyebrow-line{background:currentColor;width:36px;height:1px}.section-number{letter-spacing:0;opacity:.8;border:1px solid;border-radius:50%;place-items:center;width:29px;height:29px;font-size:.6rem;display:inline-grid}.reveal{opacity:0;transition:opacity .9s var(--ease) var(--reveal-delay), transform .9s var(--ease) var(--reveal-delay);transform:translateY(28px)}.reveal.is-visible,.reveal:focus-within{opacity:1;transform:none}.skip-link{z-index:40;background:var(--white);border-radius:8px;padding:.8rem 1rem;position:fixed;top:12px;left:20px;transform:translateY(-150%)}.skip-link:focus{transform:none}.nav-shell{z-index:30;border:1px solid #0000;border-bottom-color:var(--line);height:72px;transition:background .45s var(--ease), box-shadow .45s var(--ease), border-radius .45s var(--ease), border-color .45s var(--ease);border-radius:2px;align-items:center;gap:20px;padding:0 24px;display:flex;position:fixed;top:20px;left:28px;right:28px}.nav-shell.is-scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f5f1dfeb;border-color:#c9c7a9a6;border-radius:18px;box-shadow:0 8px 30px #292b1f12}.brand{min-width:48px;min-height:44px;color:var(--olive-deep);font:400 1.7rem/1 var(--font-display);letter-spacing:-.09em;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.brand i{color:var(--olive);font:400 1.3rem/1 var(--font-script);padding-inline:2px}.nav-date{border-left:1px solid var(--line);color:var(--muted);font:.6rem var(--font-mono);letter-spacing:.08em;padding-left:18px}.nav-links{gap:5px;margin-inline:auto;display:flex}.nav-links a{min-height:44px;color:var(--ink-soft);transition:background .35s var(--ease), color .35s var(--ease);border-radius:30px;place-items:center;padding:.5rem 17px;font-size:.77rem;text-decoration:none;display:grid;position:relative}.nav-links a:hover{background:#65704d14}.nav-links a[aria-current]{color:var(--olive-deep);background:var(--surface-warm)}.nav-links i{width:3px;height:3px;transition:transform .35s var(--ease);background:currentColor;border-radius:50%;position:absolute;bottom:4px;transform:scale(0)}.nav-links a[aria-current] i{transform:scale(1)}.nav-date-link{min-height:44px;color:var(--white);background:var(--olive-deep);transition:background .3s, transform .3s var(--ease);border-radius:30px;align-items:center;gap:13px;padding:.6rem 17px;font-size:.72rem;text-decoration:none;display:inline-flex}.nav-date-link:hover{background:var(--olive);transform:translateY(-2px)}.reading-progress{height:2px;transform:scaleX(var(--progress,0));transform-origin:0;background:var(--olive);pointer-events:none;position:absolute;bottom:-1px;left:20px;right:20px}.menu-toggle{display:none}.mobile-menu{border:1px solid var(--line);width:calc(100% - 24px);max-width:600px;max-height:calc(100dvh - 24px);color:var(--ink);background:var(--bg);opacity:0;transition:opacity .3s var(--ease), transform .4s var(--ease), display .4s allow-discrete, overlay .4s allow-discrete;border-radius:26px;padding:0;transform:translateY(-14px)scale(.985)}.mobile-menu::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .3s, display .4s allow-discrete, overlay .4s allow-discrete;background:#20281b61}.mobile-menu[open]{opacity:1;transform:none}.mobile-menu[open]::backdrop{opacity:1}@starting-style{.mobile-menu[open]{opacity:0;transform:translateY(-14px)scale(.985)}.mobile-menu[open]::backdrop{opacity:0}}.menu-inner{padding:24px}.menu-top,.menu-bottom{justify-content:space-between;align-items:center;gap:20px;display:flex}.menu-top{font:.65rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:36px}.menu-close{cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;min-height:44px;display:flex}.menu-close span{font:1.6rem var(--font-body)}.mobile-menu nav a{border-top:1px solid var(--line);font:400 clamp(2rem, 8vw, 3rem)/1.2 var(--font-display);letter-spacing:-.04em;align-items:baseline;gap:16px;padding:20px 0;text-decoration:none;display:flex}.mobile-menu[open] nav a{animation:menu-link .65s var(--ease) calc(var(--item-index) * 65ms) both}.mobile-menu nav a[aria-current]{color:var(--olive)}.mobile-menu nav small{font:.65rem var(--font-mono);color:var(--olive)}.mobile-menu nav svg{flex-shrink:0;align-self:center;margin-left:auto}.menu-bottom{color:var(--muted);flex-wrap:wrap;margin-top:38px;font-size:.65rem}.hero{flex-direction:column;justify-content:center;min-height:100svh;padding:150px 0 28px;display:flex;position:relative;overflow:clip}.hero-grid{flex:1;grid-template-columns:1.08fr 1fr;align-items:center;gap:2vw;display:grid}.hero-content{z-index:2;min-width:0;padding-block:25px 35px;position:relative}.hero h1{letter-spacing:-.065em;max-width:none;font-size:clamp(6rem,10.7vw,10.5rem);line-height:.84}.name-line{margin-bottom:-.08em;padding-bottom:.14em;display:block;overflow:hidden}.name-line>span{display:block}.hero-content.is-visible .name-line>span{animation:name-enter 1.25s var(--ease) both}.hero-content.is-visible .name-line-second>span{animation-delay:.14s}.name-line-second{white-space:nowrap;margin-left:.26em}.amp{color:var(--olive);font-family:var(--font-script);letter-spacing:-.12em;vertical-align:.1em;font-size:.52em;font-weight:400;display:inline-block;transform:rotate(-9deg)}.hero-intro{max-width:29ch;color:var(--ink-soft);font:italic clamp(1.1rem, 1.55vw, 1.5rem)/1.5 var(--font-display);margin:2rem 0 0}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:2rem;display:flex}.button{border-radius:var(--radius-round);cursor:pointer;min-height:50px;transition:transform .4s var(--ease), background .35s var(--ease), border-color .35s, box-shadow .35s;border:1px solid #0000;justify-content:center;align-items:center;gap:12px;padding:.7rem 1.2rem;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex}.button svg,.text-action svg,.nav-date-link svg{transition:transform .4s var(--ease);flex-shrink:0}.button:hover svg,.text-action:hover svg,.nav-date-link:hover svg{transform:translate(2px,-2px)}.button:hover{transform:translateY(-3px)}.button:active{transform:scale(.97)}.button:disabled{cursor:not-allowed;opacity:.5;transform:none}.button-primary{color:var(--white);background:var(--olive-deep)}.button-primary:hover{background:var(--olive);box-shadow:0 8px 20px #303a2826}.button-calendar{min-width:158px;color:var(--ink-soft);border-bottom-color:var(--line);background:0 0;border-radius:0;justify-content:flex-start;padding-inline:0;font-size:.75rem}.button-calendar:hover{border-bottom-color:var(--olive)}.hero-art-wrap{min-width:0;position:relative}.hero-art{max-width:610px;margin-inline:auto}.art-caption{text-align:center;color:var(--muted);font:.57rem var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin-top:-8px;display:block}.hero-bottom{border-top:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;margin-top:35px;padding-top:24px;display:grid}.hero-location{flex-direction:column;gap:3px;font-size:.8rem;display:flex}.hero-location .eyebrow{margin-bottom:3px;font-size:.55rem}.hero-location>span:last-child{color:var(--muted);font-size:.7rem}.scroll-cue{min-height:44px;color:var(--ink-soft);font:.55rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:16px;text-decoration:none;display:flex}.scroll-circle{border:1px solid var(--line);width:44px;height:44px;font:1.2rem var(--font-body);transition:transform .4s var(--ease), background .4s;border-radius:50%;place-items:center;display:grid}.scroll-cue:hover .scroll-circle{background:var(--surface-warm);transform:translateY(4px)}.countdown-wrap{justify-content:end;align-items:center;gap:20px;display:flex}.countdown-wrap p{color:var(--ink-soft);font:.82rem/1.4 var(--font-display);margin:0}.countdown{gap:14px;display:flex}.count-unit{text-align:center}.count-value{height:33px;font:400 1.8rem/1.1 var(--font-display);font-variant-numeric:tabular-nums;display:block;overflow:hidden}.count-value>span{animation:digit-enter .45s var(--ease) both;display:block}.count-label{color:var(--muted);font:.45rem var(--font-mono);text-transform:uppercase;letter-spacing:.07em;margin-top:4px;display:block}.section-heading{grid-template-columns:1fr 1fr;align-items:end;gap:4rem;margin-bottom:3.8rem;display:grid}.section-heading .lead{justify-self:end;max-width:40ch}.section-heading.is-light .eyebrow{color:var(--surface-warm)}.section-heading.is-light .lead{color:#fffef8b8}.outer-panel{border-radius:32px;margin:30px 16px 0}.places{color:var(--white);background:var(--olive-deep);position:relative;overflow:hidden}.places:before{aspect-ratio:1;content:"";pointer-events:none;border:1px solid #fffef81a;border-radius:50%;width:60%;position:absolute;bottom:-35%;right:-12%;box-shadow:0 0 0 80px #fffef805,0 0 0 160px #fffef805}.place-grid{grid-template-columns:1fr 1.2fr;gap:24px;display:grid;position:relative}.place-card{border-radius:var(--radius-lg);background:#fffef80d;border:1px solid #fffef833;flex-direction:column;align-items:flex-start;min-height:500px;padding:clamp(1.5rem,3vw,3rem);display:flex;position:relative;overflow:hidden}.place-card-main:after{content:"";pointer-events:none;width:68%;height:20%;transition:transform 1s var(--ease);border:1px solid #e2e3c729;border-radius:100% 0;position:absolute;top:20%;right:-8%;transform:rotate(-35deg)}.place-card-main:hover:after{transform:rotate(-28deg)translate(-12px)}.place-card-reception{color:var(--ink);background:var(--surface-warm)}.place-index{color:#fffef817;font:italic 7rem/1 var(--font-display);pointer-events:none;position:absolute;top:.4rem;right:1.6rem}.place-card-reception .place-index{color:#303a2817}.place-meta{z-index:1;font:.62rem/1.4 var(--font-mono);letter-spacing:.09em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:2rem;display:flex;position:relative}.place-meta span{color:var(--surface-warm)}.place-card-reception .place-meta span{color:var(--olive-deep)}.place-meta time:before{content:"· "}.place-card h3{z-index:1;max-width:14ch;margin-top:auto;font-size:clamp(2.7rem,4.5vw,4.5rem);position:relative}.place-card p{z-index:1;color:#fffef8bf;margin:1rem 0 1.7rem;font-size:.85rem;position:relative}.place-card-reception p{color:var(--ink-soft)}.place-map{background:var(--surface-soft);border:1px solid #303a2826;border-radius:16px;flex-shrink:0;width:100%;height:205px;margin-bottom:1.5rem;position:relative;overflow:hidden}.place-map iframe{filter:saturate(.65)sepia(.1);border:0;width:100%;height:100%;display:block}.place-actions{z-index:1;flex-wrap:wrap;gap:.65rem;display:flex;position:relative}.place-actions .button{min-height:46px;font-size:.72rem}.button-light{color:var(--ink);background:var(--white)}.button-dark{color:var(--white);background:var(--olive-deep)}.button-dark:hover{background:var(--olive)}.button-outline{color:var(--ink);background:0 0;border-color:#303a284d}.button-outline:hover{background:#fffef866}.button-ghost{color:var(--white);background:0 0;border-color:#fffef84d}.button-ghost:hover{background:#fffef81a}.timeline-layout{grid-template-columns:1fr 1.2fr;gap:clamp(3rem,6vw,7rem);display:grid}.timeline-intro{align-self:start;position:sticky;top:145px}.timeline-intro h2{font-size:clamp(3rem,4.6vw,4.6rem)}.timeline-intro .lead{max-width:32ch;margin-top:1.8rem}.schedule-note{color:var(--muted);align-items:center;gap:9px;margin-top:2rem;font-size:.67rem;display:flex}.schedule-note i{border:1px solid var(--olive);border-radius:50%;width:6px;height:6px}.timeline{position:relative}.timeline:before{content:"";background:var(--line);width:1px;position:absolute;top:35px;bottom:75px;left:72px}.timeline-item{grid-template-columns:52px minmax(0,1fr);gap:40px;padding-bottom:16px;display:grid;position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-time{color:var(--muted);font:.7rem/1 var(--font-mono);padding-top:32px}.timeline-card{border-bottom:1px solid var(--line);transition:transform .5s var(--ease), background .4s;border-radius:3px;padding:26px 24px;position:relative}.timeline-card:before{content:"";border:2px solid var(--bg);background:var(--muted);width:8px;height:8px;box-shadow:0 0 0 1px var(--muted);border-radius:50%;position:absolute;top:33px;left:-24px}.timeline-card:hover{background:#fffef899;transform:translate(5px)}.timeline-number{color:var(--muted);font:.55rem var(--font-mono);position:absolute;top:16px;right:15px}.timeline-card h3{padding-right:15px;font-size:clamp(1.65rem,2.4vw,2.2rem)}.timeline-card p{color:var(--muted);margin:.7rem 0 0;font-size:.8rem}.timeline-item.is-confirmed .timeline-time{color:var(--olive-deep)}.timeline-item.is-confirmed .timeline-card{border:1px solid var(--line);background:var(--surface-warm);border-radius:18px}.timeline-item.is-confirmed .timeline-card:before{background:var(--olive);box-shadow:0 0 0 4px #65704d26}.date-section{padding-block:0}.date-panel{border:1px solid var(--line);background:var(--surface-warm);border-radius:30px;padding:clamp(2rem,5.5vw,5rem);position:relative;overflow:hidden}.date-grid{z-index:1;grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(2rem,5vw,5rem);display:grid;position:relative}.date-copy h2{font-size:clamp(3rem,4.4vw,4.4rem)}.date-copy .lead{max-width:33ch;margin-top:1.8rem;font-size:.9rem}.date-note{border-top:1px solid #65704d40;align-items:center;gap:16px;margin-top:2.5rem;padding-top:1rem;display:flex}.date-note>span{color:var(--olive);font:italic 4.5rem/1 var(--font-display);letter-spacing:-.07em}.date-note p{color:var(--olive);font:.6rem/1.8 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0}.date-info{background:var(--surface);border:1px solid #c9c7a999;border-radius:100px 100px 20px 20px;padding:clamp(1.7rem,3vw,3rem);position:relative;box-shadow:0 14px 40px #303a280d}.date-info-label{text-align:center;color:var(--olive);font:.62rem var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin:1rem 0 2rem}.date-info-text{color:var(--ink-soft);font:1.2rem/1.65 var(--font-display)}.date-info-text strong{font-weight:600}.date-detail{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:2rem;padding-top:1.5rem;display:flex}.date-detail>span,.help-contact>span{font:.58rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase}.date-detail time{font:1.7rem var(--font-display)}.date-help{color:var(--muted);margin:1rem 0 0;font-size:.67rem}.utility-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.info-tile{border:1px solid var(--line);min-height:315px;transition:transform .5s var(--ease), box-shadow .5s, opacity .9s var(--ease);background:#fffef86b;border-radius:22px;flex-direction:column;justify-content:space-between;gap:35px;padding:28px;display:flex}.info-tile:hover{box-shadow:var(--shadow-soft);transform:translateY(-6px)}.info-tile-accent{color:var(--white);border-color:var(--olive);background:var(--olive)}.tile-topline{color:var(--olive);font:.6rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;display:flex}.tile-topline small{font:inherit}.info-tile-accent .tile-topline{color:var(--surface-warm)}.info-tile h3{font-size:2rem}.info-tile p{color:var(--muted);margin:.8rem 0 0;font-size:.83rem}.info-tile-accent p{color:#fffef8d9}.help-contact{border-top:1px solid #fffef84d;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:1rem;display:flex}.help-contact strong{font:1.5rem var(--font-display)}.text-action{min-height:44px;color:var(--olive-deep);border-bottom:1px solid var(--line);align-self:flex-start;align-items:center;gap:15px;font-size:.75rem;text-decoration:none;display:inline-flex}.text-action.is-muted{color:var(--muted);border:none;font-size:.7rem}footer{padding:0 0 28px}.footer-message{border-top:1px solid var(--line);text-align:center;padding:65px 0 75px;position:relative}.footer-message .eyebrow{justify-content:center}.footer-message p{z-index:1;font:400 clamp(3rem, 6vw, 6rem)/1.04 var(--font-display);letter-spacing:-.05em;margin:0;position:relative}.footer-leaf{border:1px solid var(--line);border-radius:100% 0;width:130px;height:42px;position:absolute;top:40%;right:12%;transform:rotate(-35deg)}.footer-row{border-top:1px solid var(--line);color:var(--muted);font:.6rem var(--font-mono);justify-content:space-between;align-items:center;gap:20px;padding-top:24px;display:flex}.signature{color:var(--ink);font:400 1.5rem/1.3 var(--font-script)}.footer-row a{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}@keyframes name-enter{0%{transform:translateY(115%)rotate(3deg)}to{transform:translateY(0)rotate(0)}}@keyframes digit-enter{0%{opacity:0;transform:translateY(55%)}to{opacity:1;transform:translateY(0)}}@keyframes menu-link{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (width>=1600px){.hero-grid{max-height:740px}.hero-bottom{margin-top:55px}}@media (width<=1100px){.container{width:calc(100% - 72px)}.nav-date{display:none}.nav-shell{gap:12px;padding-inline:16px}.nav-links a{padding-inline:13px}.hero{padding-top:135px}.hero h1{font-size:clamp(5rem,10.5vw,8rem)}.hero-actions{gap:12px}.hero-bottom{grid-template-columns:1fr 1fr}.scroll-cue{display:none}.countdown-wrap,.place-grid{gap:16px}.place-card{padding:26px}.place-card h3{font-size:3rem}.utility-grid{gap:14px}.info-tile{padding:22px}.info-tile h3{font-size:1.8rem}}@media (width<=820px){.hero-grid{grid-template-columns:1.1fr 1fr;gap:0}.hero h1{font-size:10.6vw}.hero .eyebrow{gap:.55rem;font-size:.52rem}.eyebrow-line{width:20px}.hero-intro{font-size:1.12rem}.hero-actions{flex-direction:column;align-items:flex-start}.art-caption{max-width:22ch;margin:0 auto;line-height:1.7}.section-heading{gap:2rem}.place-grid,.timeline-layout,.date-grid{grid-template-columns:1fr}.place-card{min-height:440px}.place-card-reception{min-height:520px}.place-card h3{max-width:16ch;font-size:3.6rem}.place-card-main h3{max-width:12ch}.timeline-intro{position:static}.timeline-intro .lead{max-width:42ch}.date-grid{gap:36px}.date-copy .lead{max-width:46ch}.date-note{display:none}.date-info{justify-self:center;width:100%;max-width:500px;padding:35px}.utility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-tile:last-child{grid-column:1/-1;min-height:240px}}@media (width<=760px){html{scroll-padding-top:100px}.container{width:calc(100% - 48px)}.nav-shell{top:max(12px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f1dfed;height:64px;padding:0 12px;left:16px;right:16px}.nav-links,.nav-date-link{display:none}.nav-date{padding-left:12px;font-size:.58rem;display:block}.menu-toggle{cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;min-height:44px;margin-left:auto;padding:0 8px;font-size:.75rem;display:flex}.menu-toggle>span{gap:5px;display:grid}.menu-toggle i{background:currentColor;width:19px;height:1px}.hero{min-height:auto;padding:115px 0 24px}.hero-grid{grid-template-columns:1fr}.hero-content{padding:15px 0 0}.hero .eyebrow{margin-bottom:28px;font-size:.6rem}.hero h1{font-size:clamp(5.7rem,17.5vw,8.8rem)}.name-line-second{margin-left:.35em}.hero-intro{max-width:31ch;margin-top:1.5rem;font-size:1.22rem}.hero-actions{flex-flow:wrap;align-items:center;gap:12px 20px;margin-top:1.5rem}.hero-art-wrap{justify-self:center;width:min(100%,460px);margin-top:18px}.hero-art{width:100%}.art-caption{max-width:none;font-size:.49rem}.hero-bottom{margin-top:28px;padding-top:20px}.hero-location{font-size:.7rem}.hero-location .eyebrow{margin-bottom:4px;font-size:.5rem}.hero-location>span:last-child{font-size:.62rem}.countdown-wrap p{display:none}.countdown{gap:12px}.count-value{height:29px;font-size:1.6rem}.count-label{letter-spacing:0;font-size:.41rem}.outer-panel{border-radius:26px;margin:14px 8px 0}.section-heading{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2.5rem}.section-heading .lead{justify-self:start}.place-card{min-height:420px}.date-panel{width:calc(100% - 16px);padding:32px 24px}.footer-leaf{opacity:.6;width:90px;right:0}}@media (width<=480px){:root{--section-space:4.5rem}.hero-actions{gap:10px}.hero-actions .button{min-height:48px;font-size:.7rem}.hero-actions .button-primary{padding-inline:16px}.hero-actions .button-calendar{gap:6px;min-width:138px;font-size:.65rem}.hero-bottom{grid-template-columns:1fr;gap:15px}.hero-location{grid-template-columns:1fr auto;gap:3px 8px;display:grid}.hero-location .eyebrow{grid-column:1/-1}.countdown-wrap{border-top:1px solid var(--line-soft);justify-content:space-between;padding-top:16px}.countdown-wrap p{font-size:.86rem;display:block}.countdown{gap:20px}.count-value{height:32px;font-size:1.8rem}h2{font-size:3.5rem}.place-card{border-radius:20px;min-height:390px;padding:24px 20px}.place-card h3{font-size:3rem}.place-actions{gap:10px}.place-actions .button{padding-inline:15px}.place-card-reception{min-height:540px}.place-card-reception h3{margin-top:12px}.timeline-layout{gap:35px}.timeline-intro h2,.date-copy h2{font-size:3.1rem}.timeline:before{left:51px}.timeline-item{grid-template-columns:38px minmax(0,1fr);gap:28px}.timeline-time{font-size:.62rem}.timeline-card{padding:25px 16px}.timeline-card:before{left:-19px}.timeline-card h3{font-size:1.65rem}.timeline-card p{font-size:.76rem}.date-info{border-radius:65px 65px 18px 18px;padding:28px 23px}.date-info-text{font-size:1.12rem}.date-detail time{font-size:1.5rem}.utility-grid{grid-template-columns:1fr;gap:14px}.info-tile,.info-tile:last-child{grid-column:auto;gap:28px;min-height:270px;padding:25px}.info-tile h3{font-size:2.2rem}.footer-message{padding-block:45px 55px}.footer-row{flex-wrap:wrap;gap:15px}.footer-row .signature{flex-basis:100%}.footer-row>span:nth-child(2){font-size:.52rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}.seed-stage{transform:none!important}}@media print{.nav-shell,.mobile-menu,.skip-link,.countdown-wrap{display:none}.reveal{opacity:1;transform:none}.hero{min-height:0;padding-top:20px}.timeline-intro{position:static}section{break-inside:avoid}}
