@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@400;500;600&display=swap";:root{--ink: #29312d;--muted: #6d776f;--forest: #2f5862;--forest-2: #5e7f82;--sage: #8f9d88;--lake: #6f9fb1;--rose: #c18667;--gold-display: #c76452;--gold: #8f493d;--gold-soft: #ffd8cc;--paper: #f5f3ef;--paper-2: #e8eeee;--line: #cbd4cf;--white: #fffdf8;--shadow: 0 18px 55px rgba(45, 72, 78, .12);--serif: "Cormorant Garamond", Georgia, serif;--sans: Inter, Avenir, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden;scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden}button,a{font:inherit}button{cursor:pointer}button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.56;transform:none}:where(a,button,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--gold) 74%,white);outline-offset:4px}img,svg,canvas{max-width:100%}.welcome-split>*,.split-hero>*,.travel-content>*,.registry-hero>*,.photos-layout>*,.subpage>*,.schedule-grid>*,.page-cards>*,.quick-strip>*,.info-band>*,.rsvp-section>*{min-width:0}.app{min-height:100vh;background:radial-gradient(circle at 0 14%,rgba(234,214,162,.38),transparent 30%),radial-gradient(circle at 24% 86%,rgba(193,134,103,.14),transparent 34%),radial-gradient(circle at 92% 22%,rgba(111,159,177,.2),transparent 34%),linear-gradient(135deg,rgba(232,238,238,.82),transparent 42%),var(--paper)}.site-header{align-items:center;background:#fffdf8f0;border-bottom:1px solid rgba(203,212,207,.8);display:grid;gap:18px;grid-template-columns:145px minmax(0,1fr) 172px;height:92px;left:0;padding:0 28px;position:sticky;right:0;top:0;max-width:100vw;overflow:hidden;z-index:20}.logo-mark{color:var(--gold-display);display:inline-flex;font-family:var(--serif);font-size:36px;font-weight:500;line-height:.85;position:relative;text-decoration:none;width:max-content}.site-header nav{align-items:center;display:flex;gap:clamp(16px,2.4vw,40px);justify-content:center;min-width:0}.site-header nav a{color:var(--ink);font-size:10px;font-weight:600;letter-spacing:.18em;padding:12px 0;position:relative;text-decoration:none;text-transform:uppercase}.site-header nav a.active:after{background:var(--gold-display);bottom:4px;content:"";height:1px;left:0;position:absolute;right:0}.header-rsvp,.primary-button,.secondary-button{align-items:center;border-radius:2px;display:inline-flex;gap:9px;justify-content:center;letter-spacing:.14em;min-height:54px;padding:0 30px;text-decoration:none;text-transform:uppercase;transition:transform .18s ease,background .18s ease,color .18s ease}.primary-button.small{min-height:38px;padding:0 18px;font-size:9px}.header-rsvp,.primary-button{background:var(--forest);border:1px solid var(--forest);color:var(--white);font-size:11px;font-weight:600}.header-rsvp:hover,.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}button:disabled:hover,.primary-button:disabled:hover,.secondary-button:disabled:hover{transform:none}.secondary-button{background:#fffdf8bf;border:1px solid color-mix(in srgb,var(--lake) 46%,var(--ink));color:var(--ink);font-size:11px;font-weight:600}.secondary-button.small{min-height:36px;padding:0 18px;font-size:9px}.menu-button{display:none}.hero{min-height:720px;overflow:hidden;position:relative}.hero-media{inset:0 0 0 28%;margin:0;position:absolute}.hero-media img{display:block;height:100%;object-fit:cover;object-position:center;width:100%}.hero:after{background:linear-gradient(90deg,var(--paper) 0%,rgba(245,243,239,.96) 28%,rgba(232,238,238,.62) 50%,transparent 72%);content:"";inset:0;pointer-events:none;position:absolute}.hero-copy{align-items:center;display:flex;flex-direction:column;max-width:560px;padding:110px 0 80px 70px;position:relative;text-align:center;z-index:2}.eyebrow,.section-title p{color:var(--gold);font-size:11px;font-weight:600;letter-spacing:.24em;margin:0 0 18px;text-transform:uppercase}.hero .eyebrow{color:var(--gold-display)}.hero h1{color:var(--gold-display);font-family:var(--serif);font-size:clamp(78px,7.4vw,108px);font-weight:500;letter-spacing:0;line-height:.92;margin:12px 0 14px;white-space:nowrap}.welcome-copy em{color:var(--gold-display);font-family:var(--serif);font-size:28px;font-weight:600;font-style:normal;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.hero-location{color:var(--gold-display);font-family:var(--serif);font-style:normal;font-weight:600;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}.hero-location{font-size:18px}.footer-note{color:var(--gold-soft);font-family:var(--serif);font-style:normal;font-weight:600;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}.date-line{color:var(--gold);font-family:var(--serif);font-size:22px;letter-spacing:.24em;margin:26px 0 18px;text-transform:uppercase}.hero-body{color:var(--ink);font-family:var(--serif);font-size:22px;line-height:1.45;margin:24px 0 34px;max-width:430px}.hero-actions{display:flex;gap:28px}.ornament{color:var(--gold);display:inline-block;height:20px;position:relative;width:92px}.ornament:before{background:currentColor;content:"";height:1px;left:26px;position:absolute;right:26px;top:10px}.ornament:after{border-bottom:1px solid currentColor;border-left:1px solid currentColor;content:"";height:10px;left:37px;position:absolute;top:4px;transform:rotate(-45deg);width:18px;box-shadow:16px 16px 0 -7px transparent}.quick-strip{background:linear-gradient(90deg,#183640,var(--forest));border-bottom:1px solid rgba(255,253,248,.14);border-top:1px solid rgba(255,253,248,.14);color:var(--white);display:grid;grid-template-columns:repeat(4,1fr);padding:25px 9vw}.quick-item,.band-item{align-items:center;border-right:1px solid var(--line);background:transparent;border-left:0;border-top:0;border-bottom:0;color:inherit;display:flex;gap:20px;justify-content:center;min-height:58px;padding:0 18px;text-align:left;text-decoration:none;width:100%}.quick-item:last-child,.band-item:last-child{border-right:0}.quick-strip .quick-item{border-right-color:#fffdf829;transition:background .18s ease,color .18s ease}.quick-strip .quick-item:hover{background:#fffdf80f}.icon{color:currentColor;height:38px;width:38px}.quick-item strong,.band-item strong{color:var(--gold);display:block;font-size:11px;font-weight:600;letter-spacing:.14em;margin-bottom:5px;text-transform:uppercase}.quick-item span,.band-item span{color:var(--muted);display:block;font-size:12px}.quick-item .icon,.band-item .icon{color:var(--gold)}.quick-strip .quick-item strong,.quick-strip .quick-item .icon,.quick-strip .calendar-link-row a{color:var(--gold-soft)}.quick-strip .quick-item span{color:#fffdf8c7}.calendar-link-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px 10px}.calendar-link-row a{color:var(--gold);font-size:11px;font-weight:600;letter-spacing:.04em;text-decoration:none}.calendar-link-row a:not(.secondary-button):after{color:var(--muted);content:"/";padding-left:10px}.calendar-link-row a:not(.secondary-button):last-child:after{content:"";padding-left:0}.calendar-link-row.small{gap:10px}.welcome-split{display:grid;grid-template-columns:43% 57%;min-height:420px}.image-block{background-color:var(--paper-2);display:block;margin:0;min-height:220px;overflow:hidden;position:relative}.image-block img{display:block;height:100%;object-fit:cover;object-position:center;width:100%}.image-block:after{background:linear-gradient(180deg,#fffdf808,#fffdf824);content:"";inset:0;pointer-events:none;position:absolute}.welcome-copy{padding:72px clamp(48px,8vw,120px);position:relative}.section-title h1,.section-title h2{font-family:var(--serif);font-size:clamp(38px,4vw,54px);font-weight:500;letter-spacing:0;line-height:.98;margin:0;overflow-wrap:break-word}.section-title.center{text-align:center}.welcome-copy p,.subpage-intro p,.travel-page p,.things-page p,.qa-page p,.registry-page p,.photos-page p{color:#343a35;font-family:var(--serif);font-size:19px;line-height:1.55}.welcome-copy .section-title p,.subpage-intro .section-title p,.split-hero .section-title p,.subpage-hero .section-title p,.registry-hero .section-title p,.photos-copy .section-title p{color:var(--gold);font-family:var(--sans);font-size:11px;line-height:1.2}.welcome-copy>p{max-width:490px}.line-town,.lake-sketch,.leaf-sketch{border:1px solid rgba(111,159,177,.28);border-left:0;border-right:0;bottom:52px;height:96px;opacity:.38;position:absolute;right:42px;width:265px}.line-town:before,.lake-sketch:before{border-bottom:1px solid var(--gold-soft);border-left:1px solid var(--gold-soft);content:"";height:72px;left:22px;position:absolute;top:16px;transform:skew(-28deg);width:210px}.line-town:after,.lake-sketch:after{background:linear-gradient(135deg,transparent 48%,var(--gold-soft) 50%,transparent 52%);content:"";inset:22px;position:absolute}.weekend-preview{padding:38px 7vw 72px;text-align:center}.weekend-preview>.ornament{margin-bottom:12px}.section-intro{font-family:var(--serif);font-size:17px;margin:14px auto 34px}.schedule-grid{display:grid;gap:42px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 auto;max-width:1280px}.schedule-card{background:#fffdf8c7;border:1px solid rgba(203,212,207,.82);box-shadow:var(--shadow);min-height:420px;padding:35px 28px 24px;position:relative;text-align:left}.schedule-heading{align-items:center;display:flex;gap:18px;margin-bottom:28px}.schedule-heading h3{font-size:13px;letter-spacing:.18em;line-height:1.7;margin:0;text-transform:uppercase}.schedule-heading h3 span{display:inline}.schedule-list{display:grid;gap:24px}.schedule-row,.timeline-row{display:grid;gap:20px;grid-template-columns:78px 1fr}.schedule-row time,.timeline-row time{color:var(--gold);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.schedule-row strong,.timeline-row strong{display:block;font-family:var(--serif);font-size:17px;line-height:1}.schedule-row p,.timeline-row p{color:#52554d;font-size:12px;line-height:1.35;margin:4px 0 0}.card-ornament{bottom:24px;position:absolute;right:26px}.info-band{background:linear-gradient(90deg,var(--forest),var(--forest-2));color:var(--white);display:grid;grid-template-columns:repeat(4,1fr);padding:34px 8vw}.band-item{border-color:#fffdf838}.band-item span{color:#fffdf8db}.page-cards{display:grid;gap:10px;grid-template-columns:repeat(5,1fr);padding:10px}.page-card{background:var(--white);border:0;color:var(--ink);padding:0 0 26px;text-align:center}.page-card:focus-visible,.subnav button:focus-visible,.category-tabs button:focus-visible,.faq-item>button:focus-visible{outline-offset:-4px}.page-card .image-block{aspect-ratio:1.15 / 1;min-height:0}.page-card span{display:block;font-family:var(--serif);font-size:21px;letter-spacing:.12em;margin:24px 0 8px;text-transform:uppercase}.page-card p{color:#4f5148;font-size:13px;line-height:1.35;margin:0 auto;max-width:190px}.rsvp-section{background:linear-gradient(135deg,#e8eeeeb8,#fffdf8c7);border-top:1px solid rgba(203,212,207,.72);display:grid;gap:clamp(24px,4vw,54px);grid-template-columns:120px minmax(0,860px);justify-content:center;margin:26px 0 0;padding:44px 7vw 52px 0;position:relative}.leaf-sketch{border:0;height:210px;left:0;opacity:.42;position:relative;top:0;width:120px}.leaf-sketch:before{border-left:1px solid var(--gold-soft);content:"";height:200px;left:20px;position:absolute;top:0;transform:rotate(28deg)}.leaf-sketch:after{background:radial-gradient(ellipse at center,transparent 52%,var(--gold-soft) 54%,transparent 57%) 24px 14px / 54px 32px,radial-gradient(ellipse at center,transparent 52%,var(--gold-soft) 54%,transparent 57%) 2px 58px / 62px 36px,radial-gradient(ellipse at center,transparent 52%,var(--gold-soft) 54%,transparent 57%) 30px 106px / 62px 36px;content:"";inset:0;position:absolute}.rsvp-form-card{background:#fffdf8e6;border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(28px,5vw,52px)}.rsvp-form h2{font-family:var(--serif);font-size:clamp(34px,4vw,48px);font-weight:500;line-height:1.02;margin:0 0 22px}.rsvp-deadline-copy{display:grid;gap:10px;margin-bottom:24px}.rsvp-deadline-copy p{color:#30362f;font-family:var(--serif);font-size:19px;line-height:1.55;margin:0}.site-footer{align-items:center;background:linear-gradient(90deg,#183640,#2f5862);color:var(--white);display:grid;grid-template-columns:180px 1fr 180px;min-height:92px;padding:18px 46px}.site-footer .logo-mark{color:var(--gold-soft);transform:scale(.88);transform-origin:left center}.site-footer div:nth-child(2){text-align:center}.site-footer p{color:var(--gold-soft);font-size:12px;font-weight:600;letter-spacing:.28em;margin:0 0 7px;text-transform:uppercase}.site-footer p span{color:var(--gold-soft);padding:0 14px}.site-footer .footer-note{color:var(--gold-soft);font-size:12px}.footer-icons{align-items:center;display:flex;gap:20px;justify-content:flex-end}.footer-icons a{color:inherit;display:inline-flex;text-decoration:none}.footer-icons .icon{height:24px;width:24px}.modal-backdrop{align-items:center;background:#1f313570;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:50}.rsvp-modal{background:var(--paper);border:1px solid var(--line);box-shadow:0 28px 90px #191d1647;max-height:calc(100vh - 48px);max-width:760px;overflow:auto;padding:42px;position:relative;width:min(760px,100%)}.modal-close{align-items:center;background:transparent;border:1px solid var(--line);color:var(--ink);display:flex;font-family:var(--serif);font-size:30px;height:40px;justify-content:center;line-height:1;position:absolute;right:18px;top:18px;width:40px}.rsvp-modal h2{font-family:var(--serif);font-size:42px;font-weight:500;line-height:1;margin:0 0 24px}.rsvp-form{display:grid;gap:22px}.form-grid{display:grid;gap:18px;grid-template-columns:repeat(2,1fr)}.rsvp-form label,.rsvp-form legend{color:var(--gold);display:grid;font-size:11px;font-weight:600;gap:8px;letter-spacing:.14em;text-transform:uppercase}.rsvp-form fieldset{border:1px solid var(--line);display:grid;gap:14px;margin:0;padding:18px}.rsvp-form fieldset label{align-items:center;color:var(--ink);display:flex;font-size:13px;font-weight:500;gap:10px;letter-spacing:.05em;text-transform:none}.rsvp-form .radio-card{align-items:flex-start;background:#fffdf8b8;border:1px solid rgba(203,212,207,.72);padding:14px 16px}.rsvp-form .radio-card span{display:grid;gap:5px}.rsvp-form .radio-card strong{color:var(--ink);font-family:var(--serif);font-size:18px;font-weight:600;letter-spacing:0;line-height:1.2}.rsvp-form .radio-card small{color:#4a514b;font-size:13px;letter-spacing:0;line-height:1.35}.rsvp-estimate-note{color:var(--ink);font-family:var(--serif);font-size:19px;font-weight:600;line-height:1.4;margin:-4px 0 0}.rsvp-form input,.rsvp-form select,.rsvp-form textarea{background:#fffdf8d1;border:1px solid var(--line);color:var(--ink);font:15px var(--sans);min-height:44px;padding:10px 12px;width:100%}.rsvp-form input[type=radio],.rsvp-form input[type=checkbox]{accent-color:var(--forest);min-height:auto;width:auto}.form-errors{background:#bd837d1f;border:1px solid rgba(189,131,125,.36);color:#74382f;font-size:13px;margin:0;padding:14px 18px 14px 34px}.form-help{color:var(--muted);font-family:var(--serif);font-size:15px;line-height:1.4;margin:-12px 0 0}.form-help.rsvp-deadline-copy{margin:0 0 24px}.field-error{color:#8b4238;font-size:12px;letter-spacing:.02em;text-transform:none}.form-status{border:1px solid rgba(189,131,125,.38);color:#74382f;font-size:13px;line-height:1.45;padding:13px 16px}.form-status.missing-endpoint{background:#6f9fb121}.form-status.error{background:#8b3d241a;border-color:#8b3d2452}.sr-only{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.rsvp-confirmation{align-items:center;display:flex;flex-direction:column;padding:28px;text-align:center}.rsvp-confirmation>.icon{color:var(--gold);height:62px;width:62px}.subpage,.travel-page,.things-page,.registry-page,.photos-page{--page-max-width: 1360px;--page-side-padding: max(54px, calc((100vw - var(--page-max-width)) / 2 + 54px));margin:0;max-width:none;padding:68px var(--page-side-padding) 68px;width:100%}.travel-page,.things-page,.registry-page,.photos-page,.subpage{background:radial-gradient(circle at 7% 8%,rgba(189,131,125,.11),transparent 28%),radial-gradient(circle at 94% 12%,rgba(111,159,177,.12),transparent 30%)}.subpage{display:grid;gap:64px;grid-template-columns:.9fr 1.45fr}.subpage-intro{min-height:560px;position:relative}.subpage-intro>p{color:var(--ink);font-size:21px;line-height:1.55}.weekend-side-image{aspect-ratio:4 / 5;margin-top:34px;min-height:0}.weekend-side-image img{object-position:center 28%}.subpage-intro .section-title h1,.subpage-intro .section-title h2,.subpage-hero .section-title h1,.subpage-hero .section-title h2{max-width:470px}.timeline-table{background:#fffdf8c2;border:1px solid var(--line)}.timeline-day{border-bottom:1px solid var(--line);display:grid;grid-template-columns:130px 1fr}.timeline-day:last-child{border-bottom:0}.timeline-date{color:var(--gold);border-right:1px solid var(--line);font-size:11px;font-weight:600;letter-spacing:.18em;line-height:1.8;padding:30px;text-transform:uppercase;white-space:pre-line}.timeline-items{display:grid}.timeline-row{align-items:start;border-bottom:1px solid rgba(203,212,207,.74);grid-template-columns:38px 95px 1fr;padding:24px}.timeline-row:last-child{border-bottom:0}.timeline-row .icon{color:var(--gold);height:28px;width:28px}.calendar-panel{align-items:center;background:#e8eeeeb3;border:1px solid var(--line);display:flex;gap:16px;grid-column:1 / -1;justify-content:center;padding:28px}.calendar-panel>div{align-items:center;display:flex;gap:16px;margin-right:22px;text-transform:uppercase}.calendar-panel .icon,.calendar-panel strong{color:var(--gold)}.calendar-panel>.calendar-link-row{margin-right:0;text-transform:none}.split-hero{display:grid;gap:48px;grid-template-columns:.82fr 1.5fr}.split-hero .image-block{min-height:360px}.subnav,.category-tabs{background:#fffdf8cc;border:1px solid var(--line);display:grid;margin:0 0 42px}.subnav{grid-template-columns:repeat(4,1fr)}.travel-subnav{grid-template-columns:repeat(3,1fr)}.category-tabs{grid-template-columns:repeat(5,1fr)}.subnav button,.category-tabs button{align-items:center;background:transparent;border:0;border-right:1px solid var(--line);color:var(--ink);display:flex;font-size:10px;font-weight:600;gap:12px;justify-content:center;letter-spacing:.12em;min-height:68px;text-transform:uppercase}.subnav button:last-child,.category-tabs button:last-child{border-right:0}.subnav button.active,.category-tabs button.active{background:#6f9fb124;color:var(--gold)}.subnav .icon,.category-tabs .icon{height:30px;width:30px}.travel-content{display:grid;gap:52px;grid-template-columns:.55fr 1.45fr}.travel-content.full{grid-template-columns:1fr}.travel-panel-stack,.stay-column{background:#fffdf8d1;border:1px solid var(--line);box-shadow:var(--shadow);padding:clamp(28px,5vw,48px)}.passport-reminder{background:#fffdf8b8;border-left:3px solid var(--gold-display);margin-top:22px;padding:14px 18px}.passport-reminder a,.text-link-row a{color:var(--gold);font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}.travel-option-grid{display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:28px}.travel-option{display:grid;gap:18px;grid-template-columns:38px 1fr;margin-bottom:0}.travel-option .icon{color:var(--gold);height:31px;width:31px}.travel-option strong,.stay-column .eyebrow{color:var(--gold);display:block;font-size:10px;font-weight:600;letter-spacing:.24em;margin-bottom:4px;text-transform:uppercase}.travel-panel-stack>.eyebrow,.travel-panel>.eyebrow{color:var(--gold);font-family:var(--sans);font-size:11px;letter-spacing:.24em}.travel-option p{font-size:15px;margin:0}.travel-option span,.hotel-card span{color:var(--muted);display:block;font-size:12px}.hotel-grid{display:grid;gap:24px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}.copy-stack{display:grid;gap:14px;margin:20px 0 30px}.copy-stack p{margin:0}.travel-gateway-list{display:grid;gap:22px;margin:30px 0}.travel-gateway{background:#f8f9f6db;border:1px solid var(--line);padding:clamp(22px,3vw,32px)}.travel-gateway h2,.travel-section-heading,.stay-guide-card h2{color:var(--ink);font-family:var(--serif);font-size:clamp(27px,3vw,36px);font-weight:500;line-height:1.02;margin:0 0 8px}.travel-gateway>div:first-child p{color:var(--gold);font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.45;margin:0;text-transform:uppercase}.travel-gateway ul,.stay-guide-card ul{color:#343a35;display:grid;gap:10px;font-family:var(--serif);font-size:18px;line-height:1.5;margin:0;padding-left:24px}.travel-gateway a{color:var(--gold);font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}.travel-gateway li strong{color:var(--ink);font-weight:700}.travel-gateway .travel-sub-bullets{gap:6px;margin-top:8px;padding-left:28px}.travel-section-heading{margin:36px 0 16px}.itinerary-list{display:grid;gap:12px}.itinerary-item{background:#f8f9f6db;border:1px solid var(--line)}.itinerary-item summary{color:var(--ink);cursor:pointer;font-family:var(--serif);font-size:19px;font-weight:500;line-height:1.2;padding:18px 22px}.itinerary-item summary:focus-visible{outline:3px solid color-mix(in srgb,var(--gold) 74%,white);outline-offset:-3px}.itinerary-item ul{color:#343a35;display:grid;gap:10px;font-family:var(--serif);font-size:17px;line-height:1.5;margin:0;padding:0 28px 24px 42px}.stay-photo-grid{display:grid;gap:14px;grid-template-columns:1.2fr 1fr .72fr;margin:30px 0}.stay-photo-grid .image-block{aspect-ratio:4 / 3;border:1px solid rgba(143,73,61,.18);min-height:0}.stay-photo-grid .image-block:last-child{aspect-ratio:3 / 4}.stay-guide-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.stay-guide-card{background:#f8f9f6db;border:1px solid var(--line);padding:clamp(22px,3vw,32px)}.stay-guide-card.wide{grid-column:1 / -1}.text-link-row{display:flex;flex-wrap:wrap;gap:14px 20px;margin-top:20px}.stay-booking-button{margin-top:18px}.single-panel{background:#fffdf8d6;border:1px solid var(--line);box-shadow:var(--shadow);grid-column:1 / -1;min-height:290px;padding:48px}.single-panel h2{font-family:var(--serif);font-size:38px;font-weight:500;line-height:1;margin:0 0 16px}.transport-grid{display:grid;gap:18px;grid-template-columns:repeat(3,1fr);margin-top:28px}.transport-grid article{align-items:center;border:1px solid var(--line);display:flex;gap:14px;min-height:92px;padding:18px}.map-panel{align-items:flex-start;display:flex;flex-direction:column}.map-panel>.icon{color:var(--gold);height:54px;width:54px}.hotel-card,.registry-card{background:#fffdf8db;border:1px solid var(--line);box-shadow:var(--shadow)}.hotel-card{padding:0 0 22px}.hotel-card .image-block{aspect-ratio:1.1 / .78;min-height:0}.hotel-card h3,.registry-card h3{font-family:var(--serif);font-size:26px;font-weight:500;line-height:1.06;margin:20px 22px 8px}.hotel-card p,.hotel-card span,.hotel-card .secondary-button{margin-left:22px;margin-right:22px}.subpage-hero{margin-bottom:34px;min-height:215px;position:relative}.centered-sketch .line-town{bottom:20px;right:30px}.things-page{--page-max-width: 1240px}.things-guide-hero{align-items:end;display:grid;gap:54px;grid-template-columns:minmax(0,1fr) minmax(300px,380px);margin-bottom:58px}.things-guide-copy{max-width:680px}.things-guide-copy>p{margin-top:22px;max-width:760px}.things-index{background:#fffdf8b3;border:1px solid rgba(143,73,61,.18);box-shadow:0 20px 44px #383f3714;padding:24px}.things-index-label,.things-index-total{color:var(--gold);font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.22em;margin:0;text-transform:uppercase}.things-index-list{display:grid;gap:8px;margin:18px 0}.things-index-link{align-items:center;color:var(--ink);display:grid;gap:12px;grid-template-columns:32px minmax(0,1fr) auto;min-height:52px;padding:10px 0;text-decoration:none}.things-index-link+.things-index-link{border-top:1px solid rgba(143,73,61,.14)}.things-index-link .icon{color:var(--gold);height:27px;width:27px}.things-index-link span{font-family:var(--serif);font-size:21px;line-height:1}.things-index-link small{color:var(--muted);font-family:var(--sans);font-size:12px}.things-index-link:hover,.things-index-link:focus-visible{color:var(--gold-display)}.recommendation-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.things-group-list{display:grid;gap:52px}.recommendation-section{display:grid;gap:34px;grid-template-columns:minmax(220px,.32fr) minmax(0,1fr);scroll-margin-top:118px;padding-top:32px;border-top:1px solid rgba(143,73,61,.18)}.recommendation-heading{display:grid;gap:18px;align-self:start}.recommendation-heading-title{align-items:start;display:grid;gap:14px;grid-template-columns:36px minmax(0,1fr)}.recommendation-heading-title .icon{color:var(--gold);height:32px;width:32px}.recommendation-heading .eyebrow{color:var(--gold);font-family:var(--sans);font-size:11px;letter-spacing:.24em;margin:0 0 10px}.recommendation-heading h2{color:var(--ink);font-family:var(--serif);font-size:31px;font-weight:500;letter-spacing:0;line-height:1;margin:0}.recommendation-heading>span{color:var(--muted);font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.recommendation-card{background:#fffdf8c7;border:1px solid var(--line);box-shadow:0 18px 38px #383f3714;display:grid;gap:16px;grid-template-columns:128px minmax(0,1fr);min-height:192px;overflow:hidden;padding:12px}.recommendation-card .image-block{align-self:stretch;aspect-ratio:auto;min-height:0}.recommendation-card-copy{display:flex;flex-direction:column;min-width:0;padding:4px 6px 4px 0}.recommendation-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.recommendation-card-meta span{border:1px solid rgba(143,73,61,.18);color:var(--gold);font-family:var(--sans);font-size:10px;font-weight:600;letter-spacing:.1em;line-height:1;padding:6px 7px;text-transform:uppercase}.recommendation-card h3{color:var(--ink);font-family:var(--serif);font-size:25px;font-weight:500;line-height:1.05;margin:0 0 10px}.recommendation-card p{color:#4b4c42;font-family:var(--sans);font-size:14px;line-height:1.45;margin:0 0 16px}.recommendation-card a{align-self:flex-start;color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.08em;margin-top:auto;text-decoration:none;text-transform:uppercase}.upload-cta,.contribution-row{align-items:center;background:#fffdf8c7;border:1px solid var(--line);display:flex;gap:24px;margin-top:34px;padding:28px 42px}.upload-cta>div,.contribution-row>div{flex:1}.upload-cta strong,.contribution-row strong{display:block;font-family:var(--serif);font-size:20px;font-weight:500}.upload-cta span,.contribution-row span{color:var(--muted);font-size:13px}.qa-page-single{display:grid;gap:30px;grid-template-columns:minmax(0,980px);justify-content:center;max-width:none;width:100%}.qa-hero{margin-bottom:0;min-height:auto}.faq-list{background:#fffdf8d1;border:1px solid var(--line);height:max-content}.qa-page-single .faq-list{width:100%}.faq-item{border-bottom:1px solid var(--line)}.faq-item:last-child{border-bottom:0}.faq-item>button{align-items:center;background:transparent;border:0;color:var(--ink);display:flex;justify-content:space-between;padding:26px 30px;text-align:left;width:100%}.faq-item>button span:first-child{font-family:var(--serif);font-size:23px;line-height:1.16}.faq-item>button span:last-child{color:var(--gold-display);font-size:24px;line-height:1}.faq-item p{color:#343a35;font-size:18px;line-height:1.55;margin:-10px 30px 26px}.registry-hero{display:grid;gap:48px;grid-template-columns:.8fr 1.4fr;margin-bottom:52px}.registry-hero .image-block{min-height:330px}.registry-grid{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr))}.registry-card{align-items:center;display:flex;flex-direction:column;min-height:290px;padding:52px 56px;text-align:center}.registry-card .icon{color:var(--gold);height:68px;width:68px}.registry-card p{max-width:430px}.photos-intro{display:flex;justify-content:center;margin:0 auto 38px;max-width:780px;text-align:center}.photos-copy{padding-top:0}.photo-collage{aspect-ratio:760 / 2749;background:#fff;margin:0 auto;overflow:hidden;position:relative;width:min(100%,760px)}.photo-collage-slot{background:#f8f8f5;margin:0;overflow:hidden;position:absolute}.photo-collage-slot img{display:block;height:100%;object-fit:cover;width:100%}@media(max-width:1050px){.site-header{grid-template-columns:130px 1fr 130px;padding:0 20px}.site-header nav{gap:16px}.hero-copy{padding-left:34px}.schedule-grid,.hotel-grid,.recommendation-grid,.travel-option-grid,.stay-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-strip,.info-band,.page-cards,.subnav,.category-tabs{grid-template-columns:repeat(2,1fr)}.subpage,.split-hero,.travel-content,.registry-hero,.photos-layout,.welcome-split,.rsvp-section,.family-photo-pair{grid-template-columns:1fr}.rsvp-section{padding-left:32px}.things-guide-hero{align-items:start;gap:30px;grid-template-columns:1fr}.things-index-list{grid-template-columns:repeat(2,minmax(0,1fr))}.recommendation-section{gap:24px;grid-template-columns:1fr}.recommendation-heading{max-width:680px}}@media(max-width:1180px){.site-header{gap:14px;grid-template-columns:1fr auto auto;height:78px;overflow:visible;padding:0 24px}.menu-button{background:transparent;border:1px solid var(--line);color:var(--ink);display:inline-flex;font-size:10px;font-weight:600;letter-spacing:.16em;padding:10px 14px;text-transform:uppercase}.site-header nav{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);display:none;flex-direction:column;gap:10px;left:24px;padding:16px;position:absolute;right:24px;top:80px}.site-header nav.open{display:flex}.header-rsvp{min-height:44px;padding:0 18px}.hero h1{white-space:normal}}@media(max-width:760px){.site-header{grid-template-columns:1fr auto auto;height:74px;overflow:visible;gap:10px;padding:0 14px}.menu-button{background:transparent;border:1px solid var(--line);display:inline-flex;font-size:10px;letter-spacing:.16em;padding:10px 14px;text-transform:uppercase}.site-header nav{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);display:none;flex-direction:column;left:20px;padding:16px;position:absolute;right:20px;top:76px}.site-header nav.open{display:flex}.header-rsvp{font-size:9px;letter-spacing:.08em;min-height:42px;padding:0 10px}.hero{min-height:min(760px,calc(100svh + 150px))}.hero-media{inset:360px 0 0}.hero-media img{object-position:center top}.hero:after{background:linear-gradient(180deg,var(--paper) 0%,rgba(245,243,239,.94) 48%,rgba(232,238,238,.38) 64%,transparent 74%)}.hero-copy{max-width:none;padding:46px 26px 30px}.hero h1{font-size:70px}.hero-actions,.upload-cta,.contribution-row,.calendar-panel{align-items:stretch;flex-direction:column}.quick-strip,.info-band,.page-cards,.schedule-grid,.hotel-grid,.recommendation-grid,.travel-option-grid,.stay-photo-grid,.stay-guide-grid,.registry-grid,.subnav,.category-tabs,.gallery-grid,.family-photo-pair{grid-template-columns:1fr}.things-guide-hero{margin-bottom:42px}.things-index{padding:18px}.things-index-list{display:flex;flex-wrap:wrap;gap:8px}.things-index-link{border:1px solid rgba(143,73,61,.16);flex:1 1 145px;grid-template-columns:26px minmax(0,1fr);min-height:64px;padding:10px}.things-index-link+.things-index-link{border-top:1px solid rgba(143,73,61,.16)}.things-index-link small{grid-column:2}.recommendation-heading{align-items:start;grid-template-columns:1fr}.recommendation-heading h2{font-size:27px}.recommendation-card{gap:12px;grid-template-columns:98px minmax(0,1fr);min-height:0;padding:10px}.recommendation-card h3{font-size:22px}.recommendation-card p{font-size:13px}.recommendation-card-meta{margin-bottom:8px}.recommendation-card-meta span{font-size:9px;padding:5px 6px}.quick-item,.band-item{border-bottom:1px solid rgba(203,212,207,.82);border-right:0;justify-content:flex-start}.quick-strip .quick-item{border-bottom-color:#fffdf829}.quick-strip .quick-item:last-child{border-bottom:0}.info-band{padding:26px}.subpage,.travel-page,.things-page,.registry-page,.photos-page{padding:44px 22px}.timeline-day,.timeline-row{grid-template-columns:1fr}.subpage-intro{min-height:auto}.lake-sketch,.leaf-sketch{display:none}.timeline-date{border-bottom:1px solid var(--line);border-right:0;white-space:normal}.rsvp-section{margin-left:0;margin-right:0;padding:32px 20px}.site-footer{gap:18px;grid-template-columns:1fr;justify-items:center;text-align:center}.footer-icons{justify-content:center}.form-grid,.transport-grid{grid-template-columns:1fr}.rsvp-modal{padding:34px 20px 22px}}
