:root{--green:#173b2c;--green-deep:#0d2b20;--wine:#8a2938;--wine-dark:#681a28;--terracotta:#b76541;--ochre:#d6a957;--gold:#efc978;--cream:#f5efe3;--cream-deep:#e9deca;--paper:#fbf8f1;--ink:#24241f;--muted:#6f6a60;--line:#24241f2e;--serif:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--shadow:0 24px 70px #1f1a1124}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.6}body:before{content:"";opacity:.14;pointer-events:none;z-index:100;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit}img{display:block}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--ochre);outline-offset:4px}.skip-link{background:var(--paper);z-index:1000;padding:.7rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.announcement-bar{background:var(--wine-dark);color:#fff4d8;letter-spacing:.15em;text-align:center;text-transform:uppercase;justify-content:center;align-items:center;gap:.75rem;padding:.45rem 1rem;font-size:.7rem;font-weight:700;display:flex}.announcement-bar svg{color:var(--gold);width:.9rem;height:.9rem}.site-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:50;background:#f4eee2eb;grid-template-columns:1fr auto;align-items:center;min-height:76px;padding:0 4vw;display:grid;position:sticky;top:0}.site-header nav{justify-self:start;gap:clamp(1.25rem,3vw,3.5rem);display:flex}.site-header nav a,.header-rsvp{letter-spacing:.09em;text-transform:uppercase;font-size:.72rem;font-weight:700;text-decoration:none}.site-header nav a{padding:1rem 0;position:relative}.site-header nav a:after{background:var(--wine);content:"";transform-origin:0;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:.75rem;left:0;transform:scaleX(0)}.site-header nav a:hover:after{transform:scaleX(1)}.header-rsvp{grid-column:2;justify-self:end;align-items:center;gap:.6rem;display:flex}.header-rsvp svg,.text-link svg,.button svg,.card-links svg,.hotel-card svg{width:1.1rem;height:1.1rem}.hero{grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);min-height:min(850px,100vh - 104px);display:grid;overflow:hidden}.hero-copy{background:radial-gradient(circle at 12% 16%, #efc97821 0 2px, transparent 3px), radial-gradient(circle at 86% 72%, #efc9781a 0 1.5px, transparent 2.5px), linear-gradient(145deg, #173d2e, var(--green-deep));color:#fff8e8;background-size:85px 85px,120px 120px,auto;align-content:center;min-width:0;padding:clamp(5rem,9vw,10rem) clamp(2rem,7vw,8rem);display:grid;position:relative}.hero-copy:before{content:"";border:1px solid #efc9782e;border-radius:50%;width:300px;height:300px;position:absolute;top:70px;left:-170px}.hero-copy:after{content:"";border:1px solid #efc9781f;border-radius:50%;width:340px;height:340px;position:absolute;bottom:-140px;right:-180px}.advent-badge{color:#ffe6ad;letter-spacing:.12em;text-transform:uppercase;border:1px solid #efc97885;border-radius:999px;justify-self:start;align-items:center;gap:.55rem;margin-bottom:1.4rem;padding:.55rem .85rem;font-size:.65rem;font-weight:800;display:inline-flex}.advent-badge svg{width:.9rem;height:.9rem}.eyebrow,.section-kicker,.card-label{letter-spacing:.17em;text-transform:uppercase;font-size:.68rem;font-weight:800}.eyebrow{color:var(--wine);margin:0 0 1.5rem}.hero .eyebrow{color:var(--gold)}.hero h1{font-family:var(--serif);letter-spacing:-.065em;margin:0;font-size:clamp(4.2rem,7.4vw,8.2rem);font-weight:500;line-height:.82}.hero h1 em,.intro-grid h2 i,.warm-section h2 i,.rsvp-heading h2 i{color:var(--wine);font-weight:400}.hero h1 em{color:var(--gold)}.hero-intro{font-family:var(--serif);max-width:550px;margin:2.3rem 0;font-size:clamp(1.4rem,2vw,2rem);line-height:1.3}.hero-meta{border-top:1px solid #ffffff3d;border-bottom:1px solid #ffffff3d;grid-template-columns:1fr 1fr;max-width:650px;margin:0 0 2.2rem;display:grid}.hero-meta>div{gap:.12rem;padding:1.1rem 1.25rem 1.1rem 0;display:grid}.hero-meta>div+div{border-left:1px solid #ffffff3d;padding-left:1.25rem}.hero-meta span{color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:.63rem;font-weight:800}.hero-meta strong{font-family:var(--serif);font-size:1.05rem}.hero-meta small{color:#ffffff9e}.hero-actions,.success-actions{flex-wrap:wrap;align-items:center;gap:1.2rem;display:flex}.advent-moment{border-top:1px solid #efc97840;align-items:end;gap:1.2rem;max-width:650px;margin-top:2.3rem;padding-top:1.2rem;display:flex}.advent-moment p{color:#ffffffa8;font-family:var(--serif);margin:0;font-size:.9rem;line-height:1.35}.advent-moment strong{color:#fff7e7;font-weight:600}.advent-candles{align-items:end;gap:.4rem;height:42px;display:flex}.candle{opacity:.35;background:#f0e5cd;border-radius:2px 2px 0 0;width:8px;height:25px;display:block;position:relative}.candle:nth-child(2){height:29px}.candle:nth-child(3){height:33px}.candle:nth-child(4){height:37px}.candle span{opacity:0;background:#fff0a6;border-radius:70% 30% 65% 35%;width:6px;height:10px;position:absolute;top:-11px;left:1px;transform:rotate(8deg)}.candle.is-lit{opacity:1}.candle.is-lit span{opacity:1;box-shadow:0 0 8px #ffd979,0 0 15px #ffcd62d9}.candle.is-next{opacity:.72;border:1px solid #efc978bf}.button{cursor:pointer;letter-spacing:.07em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.7rem;min-height:50px;padding:.8rem 1.45rem;font-size:.75rem;font-weight:800;text-decoration:none;transition:background .16s,color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--wine);color:#fff;box-shadow:0 10px 32px #0000002e}.button-primary:hover{background:var(--wine-dark)}.button-secondary{border-color:currentColor}.text-link{letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.75rem;font-weight:800;text-decoration:none;display:inline-flex}.hero-visual{background:var(--wine-dark);min-height:630px;padding:clamp(1.25rem,2vw,2rem);position:relative}.hero-visual:before{content:"";pointer-events:none;z-index:2;background:radial-gradient(circle at 18% 8%,#ffde923d,#0000 18%),radial-gradient(circle at 78% 12%,#ffde922e,#0000 16%);position:absolute;inset:0}.hero-image-frame{border:5px solid #fff6e0db;height:calc(100% - 85px);min-height:560px;position:relative;overflow:hidden}.hero-image-frame:after{content:"";background:linear-gradient(#15241c14,#0000 42%,#0b1d1694);position:absolute;inset:0}.hero-image-frame img{filter:saturate(.88)sepia(.08)contrast(1.04);object-fit:cover;object-position:55% center}.christmas-lights{pointer-events:none;z-index:5;border-top:2px solid #232219b8;justify-content:space-around;display:flex;position:absolute;inset:1.65rem 1.8rem auto;transform:rotate(-1.2deg)}.christmas-lights i{background:#ffd978;border:2px solid #3c3b2c;border-radius:50% 50% 48% 48%;width:10px;height:13px;margin-top:-1px;position:relative;box-shadow:0 0 8px #ffd978,0 0 18px #ffd978bf}.christmas-lights i:before{content:"";background:#3c3b2c;width:3px;height:5px;position:absolute;top:-5px;left:2px}.christmas-lights i:nth-child(3n+2){background:#c33e4f;box-shadow:0 0 8px #c33e4f,0 0 18px #c33e4f9e}.christmas-lights i:nth-child(3n){background:#f7efe0;box-shadow:0 0 8px #fff8e8,0 0 18px #fff8e8a6}.date-seal{background:var(--wine);color:#fff;z-index:6;border:2px solid #f5d38f;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:150px;height:150px;line-height:1;display:flex;position:absolute;top:14%;left:-66px;transform:rotate(-6deg)}.date-seal:before,.date-seal:after{color:#f5d38f;content:"✦";font-size:.7rem;position:absolute;top:50%;transform:translateY(-50%)}.date-seal:before{left:12px}.date-seal:after{right:12px}.date-seal span,.date-seal small{letter-spacing:.18em;text-transform:uppercase;font-size:.66rem;font-weight:800}.date-seal strong{font-family:var(--serif);letter-spacing:-.07em;font-size:4.25rem;font-weight:400}.image-note{color:#f3ebda;font-family:var(--serif);z-index:6;margin:0;font-size:1rem;font-style:italic;position:absolute;bottom:1.65rem;left:2rem}.section-pad{padding:clamp(5rem,9vw,9rem) max(5vw,50vw - 700px)}.section-kicker{align-items:center;gap:.8rem;margin-bottom:3.5rem;display:flex}.section-kicker span{border:1px solid;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.section-kicker.light{color:#f4ebda}.intro-grid{grid-template-columns:1.2fr .8fr;align-items:start;gap:clamp(3rem,8vw,9rem);display:grid}.intro-section{background:radial-gradient(circle at 8% 22%, #8a293814 0 2px, transparent 3px), radial-gradient(circle at 90% 76%, #173b2c14 0 2px, transparent 3px), var(--cream);background-size:118px 118px,148px 148px,auto}.festive-divider,.footer-sprigs{color:var(--green);justify-content:center;align-items:center;max-width:520px;margin:clamp(3rem,6vw,6rem) auto 0;display:flex}.festive-divider>svg:first-child,.footer-sprigs>svg:first-child{transform:scaleX(-1)}.festive-divider>svg:not(:nth-child(2)),.footer-sprigs>svg:not(:nth-child(2)){width:min(36vw,190px);height:auto}.festive-divider>svg:nth-child(2),.footer-sprigs>svg:nth-child(2){color:var(--ochre);flex:none;width:1.4rem;height:1.4rem;margin:0 .8rem}.intro-grid h2,.section-heading h2,.warm-section h2,.hotel-heading h2,.rsvp-heading h2,.manage-heading h1,.legal-page h1{font-family:var(--serif);letter-spacing:-.055em;margin:0;font-size:clamp(3rem,5.4vw,6.3rem);font-weight:400;line-height:.96}.intro-copy{border-left:1px solid var(--line);font-family:var(--serif);padding-left:clamp(1.5rem,3vw,3rem);font-size:clamp(1.15rem,1.7vw,1.55rem);line-height:1.5}.intro-copy p:first-child{margin-top:0}.timeline-section{background:radial-gradient(circle at 15% 15%, #efc97814 0 2px, transparent 3px), linear-gradient(135deg, var(--green), var(--green-deep));color:var(--paper);background-size:105px 105px,auto}.section-heading{grid-template-columns:.7fr 1.3fr;align-items:end;margin-bottom:5rem;display:grid}.section-heading .section-kicker{margin:0}.section-heading h2{font-size:clamp(3.2rem,5vw,5.6rem)}.timeline{border-top:1px solid #ffffff47;margin:0;padding:0;list-style:none}.timeline li{border-bottom:1px solid #fff3;grid-template-columns:55px minmax(115px,.35fr) 1fr;align-items:center;gap:2rem;padding:2.2rem 0;display:grid}.timeline-number{color:#aebcb7;letter-spacing:.15em;font-size:.7rem}.timeline time{color:#e5bd7c;font-family:var(--serif);font-size:clamp(1.5rem,2.4vw,2.5rem);font-style:italic}.timeline h3{font-family:var(--serif);margin:0 0 .25rem;font-size:clamp(1.6rem,2.5vw,2.8rem);font-weight:400}.timeline p{color:#ffffffab;max-width:620px;margin:0}.walk-note{color:#ffffffb8;justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem;font-size:.82rem;display:flex}.walk-note svg{color:#e5bd7c;width:2rem;height:2rem}.warm-section{background:var(--wine);color:#fff8ed;text-align:center;flex-direction:column;align-items:center;padding:clamp(5rem,9vw,9rem) 5vw;display:flex;position:relative;overflow:hidden}.warm-section:before,.warm-section:after{color:#ffe4b11f;content:"✦";font-family:var(--serif);font-size:clamp(9rem,22vw,20rem);line-height:1;position:absolute}.warm-section:before{top:-3rem;left:-4vw}.warm-section:after{bottom:-5rem;right:-3vw}.warm-section>*{z-index:1;position:relative}.warm-icon{border:1px solid #ffffff8c;border-radius:50%;place-items:center;width:82px;height:82px;margin-bottom:1.5rem;display:grid}.warm-icon svg{width:40px;height:40px}.warm-section .eyebrow{color:#e8c58f;margin-bottom:1rem}.warm-section h2 i{color:#f2c982}.warm-section>p:not(.eyebrow){font-family:var(--serif);max-width:720px;font-size:clamp(1.1rem,1.8vw,1.45rem)}.warm-pills{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1rem;display:flex}.warm-pills span{letter-spacing:.09em;text-transform:uppercase;border:1px solid #ffffff80;border-radius:999px;padding:.6rem 1rem;font-size:.65rem;font-weight:800}.info-section{background:var(--paper)}.info-grid{grid-template-columns:1.25fr 1fr 1fr;gap:1px;margin-bottom:clamp(5rem,9vw,9rem);display:grid}.info-card{background:var(--cream);flex-direction:column;min-height:360px;padding:clamp(1.7rem,3vw,3.2rem);display:flex}.info-card.feature-card{background:var(--green);color:#fff}.info-card>svg,.park-sign{border:1px solid;border-radius:50%;place-items:center;width:52px;height:52px;margin-bottom:auto;display:grid}.info-card>svg{padding:12px}.park-sign{font-family:var(--serif);font-size:1.4rem}.info-card .card-label{color:var(--wine);margin-bottom:.8rem}.feature-card .card-label{color:#e9bd76}.info-card h3{font-family:var(--serif);letter-spacing:-.04em;margin:0 0 1rem;font-size:clamp(1.8rem,3vw,3.2rem);font-weight:400;line-height:1}.info-card p{color:var(--muted);margin:0}.feature-card p{color:#ffffffb8}.card-links{flex-wrap:wrap;gap:1.5rem;margin-top:2.5rem;display:flex}.card-links a{letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.35rem;font-size:.7rem;font-weight:800;text-decoration:none;display:inline-flex}.hotel-heading{grid-template-columns:1fr .6fr;align-items:end;gap:3rem;margin-bottom:3rem;display:grid}.hotel-heading span{color:var(--wine);letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:800}.hotel-heading h2{margin-top:.7rem;font-size:clamp(2.8rem,4.5vw,5rem)}.hotel-heading>p{color:var(--muted);margin:0}.hotel-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.hotel-card{grid-template-columns:auto 1fr;align-items:center;gap:2rem;min-height:250px;padding:2.5rem;text-decoration:none;transition:background .18s,color .18s;display:grid}.hotel-card+.hotel-card{border-left:1px solid var(--line)}.hotel-card:hover{background:var(--green);color:#fff}.hotel-card>span{color:var(--wine);font-family:var(--serif);font-size:2rem;font-style:italic}.hotel-card:hover>span{color:#e6bb78}.hotel-card small{letter-spacing:.12em;text-transform:uppercase;font-size:.64rem;font-weight:800}.hotel-card h3{font-family:var(--serif);margin:.5rem 0 1.5rem;font-size:clamp(1.4rem,2.2vw,2rem);font-weight:400;line-height:1.2}.hotel-card strong{letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.68rem;display:flex}.rsvp-section{background:radial-gradient(circle at 8% 18%, #efc9781a 0 2px, transparent 3px), radial-gradient(circle at 32% 62%, #efc97812 0 1px, transparent 2px), var(--green-deep);color:var(--paper);background-size:100px 100px,70px 70px,auto;grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,8vw,8rem);display:grid}.rsvp-sprig{color:#c7d5c7;width:55%;max-width:220px;height:auto;margin:-.5rem 0 1.5rem}.rsvp-heading{align-self:start;position:sticky;top:130px}.rsvp-heading .section-kicker{margin-bottom:2rem}.rsvp-heading h2{font-size:clamp(3.8rem,5.5vw,6.8rem)}.rsvp-heading h2 i{color:#e3b669}.rsvp-heading>p{color:#ffffffad;font-family:var(--serif);max-width:440px;margin-top:2rem;font-size:1.2rem}.rsvp-card{background:var(--paper);box-shadow:var(--shadow);color:var(--ink);padding:clamp(1.5rem,4vw,4.5rem)}.rsvp-form{gap:0;display:grid}.form-section{border:0;border-bottom:1px solid var(--line);margin:0;padding:0 0 2.2rem}.form-section+.form-section{padding-top:2.2rem}.form-section legend{font-family:var(--serif);padding:0;font-size:1.65rem;font-weight:600}.field-hint{color:var(--muted);margin:.25rem 0 1.3rem;font-size:.85rem}.choice-grid{gap:.7rem;display:grid}.attendance-grid,.agenda-grid{grid-template-columns:repeat(3,1fr)}.choice-card,.check-card{border:1px solid var(--line);cursor:pointer;min-height:130px;padding:1rem;transition:border .15s,background .15s;display:grid;position:relative}:is(.choice-card:has(input:checked),.check-card:has(input:checked)){border-color:var(--wine);background:#f0e7d7}.choice-card input,.check-card input,.pill-options input,.privacy-check>input{opacity:0;width:1px;height:1px;position:absolute}.choice-card:has(input:focus-visible){outline:3px solid var(--ochre);outline-offset:3px}.check-card:has(input:focus-visible){outline:3px solid var(--ochre);outline-offset:3px}.pill-options label:has(input:focus-visible){outline:3px solid var(--ochre);outline-offset:3px}.privacy-check:has(input:focus-visible){outline:3px solid var(--ochre);outline-offset:3px}.choice-indicator{border:1px solid var(--muted);border-radius:50%;width:17px;height:17px;margin-bottom:auto}.choice-card input:checked+.choice-indicator{background:var(--wine);box-shadow:0 0 0 1px var(--wine);border:4px solid #f0e7d7}.choice-card strong,.check-card strong{font-family:var(--serif);font-size:1.05rem}.choice-card small,.check-card small{color:var(--muted);font-size:.72rem}.check-indicator{border:1px solid var(--muted);place-items:center;width:20px;height:20px;margin-bottom:auto;display:grid}.check-indicator svg{opacity:0;width:15px;height:15px}input:checked+.check-indicator{background:var(--wine);border-color:var(--wine);color:#fff}input:checked+.check-indicator svg{opacity:1}.two-column-fields,.companion-fields{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.field{gap:.45rem;display:grid}.field>span{letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.field input,.field select,.field textarea{border:1px solid var(--line);background:0 0;border-radius:0;width:100%;min-height:50px;padding:.85rem 1rem}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--wine);outline:2px solid #8a293829}.field>small{color:var(--muted);font-size:.74rem}.compact-field{max-width:260px}.companion-fields{margin-top:1.2rem}.pill-options{flex-wrap:wrap;gap:.6rem;margin-bottom:1.5rem;display:flex}.pill-options label{cursor:pointer;position:relative}.pill-options span{border:1px solid var(--line);border-radius:999px;min-height:42px;padding:.65rem 1rem;font-size:.75rem;font-weight:700;display:inline-flex}.pill-options input:checked+span{background:var(--green);border-color:var(--green);color:#fff}.privacy-check{cursor:pointer;grid-template-columns:20px 1fr;align-items:start;gap:.8rem;margin:2rem 0 .8rem;font-size:.78rem;display:grid;position:relative}.privacy-check .check-indicator{margin:0}.field-error{margin:.55rem 0 0;font-size:.78rem;font-weight:700;color:#b10e2e!important}.form-alert{border-left:4px solid var(--wine);background:#f8e4e6;margin-bottom:1.5rem;padding:1rem 1.2rem}.honeypot{width:0;height:0;position:absolute;left:-9999px;overflow:hidden}.submit-button{justify-self:start;margin-top:1.2rem}.submit-button:disabled{cursor:wait;opacity:.65;transform:none}.rsvp-success,.rsvp-closed{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:540px;display:flex}.success-mark{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:72px;height:72px;margin-bottom:1.5rem;display:grid}.success-mark svg{width:34px;height:34px}.rsvp-success h3,.rsvp-closed h3{font-family:var(--serif);letter-spacing:-.04em;margin:0 0 1rem;font-size:clamp(2.5rem,4vw,4rem);font-weight:400;line-height:1}.rsvp-success>p:not(.eyebrow),.rsvp-closed>p{max-width:600px}.private-address{background:var(--cream);border:1px solid var(--line);min-width:min(100%,430px);margin:1.5rem 0 2rem;padding:1.5rem;display:grid}.private-address span,.private-address small{color:var(--muted);font-size:.72rem}.private-address strong{font-family:var(--serif);font-size:1.45rem}.site-footer{background:var(--cream);text-align:center;flex-direction:column;align-items:center;padding:5rem 5vw 2rem;display:flex}.footer-sprigs{margin-top:0}.site-footer>p{font-family:var(--serif);max-width:750px;font-size:clamp(1.6rem,3vw,2.8rem)}.footer-bottom{border-top:1px solid var(--line);letter-spacing:.07em;text-transform:uppercase;grid-template-columns:1fr 1fr 1fr;width:100%;margin-top:3rem;padding-top:1.5rem;font-size:.65rem;font-weight:700;display:grid}.footer-bottom span:first-child{text-align:left}.footer-bottom a{justify-self:end}.manage-page,.legal-page{background:var(--green-deep);min-height:100vh;padding:clamp(2rem,6vw,6rem) 5vw}.manage-shell{max-width:940px;margin:0 auto}.manage-heading{color:var(--paper);text-align:center;margin:5rem 0 3rem}.manage-heading p:last-child{color:#ffffffb3}.back-link{color:inherit;letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:800;text-decoration:none}.manage-page>.back-link,.manage-shell>.back-link{color:#fff}.legal-page article{background:var(--paper);box-shadow:var(--shadow);max-width:840px;margin:0 auto;padding:clamp(2rem,6vw,6rem)}.legal-page h1{margin:3rem 0 1.5rem;font-size:clamp(3rem,6vw,5.5rem)}.legal-page h2{font-family:var(--serif);margin:2.4rem 0 .6rem;font-size:1.6rem}.legal-lead{font-family:var(--serif);font-size:1.3rem}@media (max-width:1050px){.hero{grid-template-columns:1fr .8fr}.hero-copy{padding-left:5vw;padding-right:5vw}.hero h1{font-size:clamp(4rem,8vw,6.3rem)}.rsvp-section{grid-template-columns:.65fr 1.35fr;gap:4rem}}@media (max-width:820px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{flex-direction:column;display:flex}.hero-copy{order:2;padding-top:4rem;padding-bottom:5rem}.hero-visual{order:1;min-height:58vh}.hero-image-frame{min-height:52vh}.date-seal{inset:auto 6vw -52px auto}.intro-grid,.section-heading,.hotel-heading,.rsvp-section{grid-template-columns:1fr}.intro-grid,.section-heading{gap:2.5rem}.info-grid{grid-template-columns:1fr}.info-card{min-height:300px}.hotel-heading{align-items:start}.rsvp-heading{position:static}.footer-bottom{grid-template-columns:1fr;gap:.8rem}.footer-bottom span:first-child,.footer-bottom a{text-align:center;justify-self:center}}@media (max-width:620px){.announcement-bar{letter-spacing:.08em}.site-header{min-height:64px}.header-rsvp{border:1px solid var(--line);border-radius:999px;padding:.55rem .8rem}.hero-copy{padding-left:1.25rem;padding-right:1.25rem}.hero h1{font-size:clamp(2.95rem,15vw,4.6rem)}.hero-copy>*{min-width:0;max-width:100%}.image-note{display:none}.hero-meta{grid-template-columns:1fr}.hero-meta>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.section-pad{padding-left:1.25rem;padding-right:1.25rem}.section-kicker{margin-bottom:2.2rem}.intro-grid h2,.section-heading h2,.warm-section h2,.hotel-heading h2,.rsvp-heading h2{font-size:clamp(2.8rem,14vw,4.3rem)}.timeline li{grid-template-columns:40px 1fr;align-items:start;gap:.7rem 1rem}.timeline time{grid-area:1/2}.timeline li>div:last-child{grid-column:2}.walk-note{justify-content:flex-start;align-items:flex-start}.hotel-grid{grid-template-columns:1fr}.hotel-card{min-height:220px;padding:2rem .5rem}.hotel-card+.hotel-card{border-left:0;border-top:1px solid var(--line)}.rsvp-section{padding-left:0;padding-right:0}.rsvp-heading{padding:0 1.25rem}.rsvp-card{padding:1.4rem 1.1rem}.attendance-grid,.agenda-grid,.two-column-fields,.companion-fields{grid-template-columns:1fr}.choice-card,.check-card{min-height:105px}.success-actions{flex-direction:column;width:100%}.success-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.admin-page{background:#f6f2ea;min-height:100vh;padding:clamp(2rem,5vw,5rem)}.admin-header{justify-content:space-between;align-items:end;max-width:1500px;margin:0 auto 3rem;display:flex}.admin-header .eyebrow{margin-bottom:.5rem}.admin-header h1{font-family:var(--serif);letter-spacing:-.055em;margin:0;font-size:clamp(3rem,6vw,6rem);font-weight:400;line-height:1}.admin-header p:last-child{color:var(--muted)}.admin-stats{grid-template-columns:repeat(4,1fr);gap:1px;max-width:1500px;margin:0 auto 3rem;display:grid}.admin-stats article{background:#fff;min-height:180px;padding:1.6rem;display:grid}.admin-stats span,.admin-stats small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.admin-stats strong{font-family:var(--serif);align-self:end;font-size:4rem;font-weight:400;line-height:1}.admin-list{background:#fff;max-width:1500px;margin:0 auto;padding:clamp(1.3rem,3vw,3rem)}.admin-list-heading{justify-content:space-between;align-items:baseline;display:flex}.admin-list-heading h2{font-family:var(--serif);font-size:2rem}.admin-list-heading span{color:var(--muted);font-size:.75rem}.admin-table-wrap{overflow-x:auto}.admin-list table{border-collapse:collapse;width:100%;min-width:1100px}.admin-list th,.admin-list td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:1rem}.admin-list th{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem}.admin-list td{font-size:.82rem}.admin-list td:first-child{display:grid}.admin-list td small{color:var(--muted)}.status-badge{text-transform:uppercase;border-radius:999px;padding:.35rem .65rem;font-size:.68rem;font-weight:800;display:inline-flex}.status-yes{color:#175c2b;background:#dcebdd}.status-maybe{color:#755018;background:#f7e9c9}.status-no{color:#595959;background:#eee}.allergy-note{color:#8a2938}.admin-empty{border:1px dashed var(--line);text-align:center;margin-top:1rem;padding:5rem 1rem}.admin-empty h3{font-family:var(--serif);margin:0;font-size:2rem}@media (max-width:820px){.admin-header{flex-direction:column;align-items:start;gap:2rem}.admin-stats{grid-template-columns:1fr 1fr}}
