:root{--cream: #eddeb6;--cream-2: #e0c891;--paper: #f8eed1;--ink: #2b1c0b;--ink-soft: #5a4020;--pop: #17a06a;--pop-dark: #0e7c50;--jade: #8a6a38;--jade-dark: #6a4c20;--coral: var(--pop);--coral-dark: var(--pop-dark);--sun: #d99a2b;--gold: #b8801f;--line: #d3b884;--shadow-sm: 0 2px 8px rgba(42, 32, 24, .1);--shadow-md: 0 12px 32px rgba(42, 32, 24, .16);--shadow-lg: 0 26px 64px rgba(42, 32, 24, .22);--radius: 16px;--radius-lg: 26px;--maxw: 1180px;--font-script: "Sacramento", "Parisienne", "Snell Roundhand", "Brush Script MT", cursive;--font-head: "Cormorant Garamond", "Iowan Old Style", "Palatino Linotype", Georgia, "Times New Roman", serif;--font-body: "Iowan Old Style", Palatino, "Palatino Linotype", Georgia, "Times New Roman", serif;--font-antique: "Cormorant Garamond", "Playfair Display", "Iowan Old Style", "Times New Roman", serif;--font-modern: "Cormorant Garamond", Georgia, serif;--sepia: 0;--grain: .04;--vignette: .12;--modern: 0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--cream);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}body:before,body:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background-position:top right;background-size:cover;background-repeat:no-repeat;transition:opacity .8s ease;pointer-events:none}body:before{background-image:url(/images/bg-long-english.jpg);opacity:1}body:after{background-image:url(/images/bg-long-spanish.jpg);opacity:0}@media (max-width: 699px){body:before,body:after{position:fixed;background-size:cover;background-position:top center}}html[data-lang=es] body:before{opacity:0}html[data-lang=es] body:after{opacity:1}img{max-width:100%;display:block;filter:sepia(.5) saturate(.72) contrast(.96)}h1,h2,h3{font-family:var(--font-head);line-height:1.14;margin:0}p{margin:0}a{color:var(--jade-dark)}.veil{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;transition:opacity 1.6s ease-out}.veil--sepia{z-index:70;background:#6f4a25;mix-blend-mode:color;opacity:var(--sepia, .9)}.veil--color{display:none}.veil--grain{z-index:68;mix-blend-mode:multiply;opacity:var(--grain, .2);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:140px 140px}.veil--vignette{z-index:66;mix-blend-mode:multiply;opacity:var(--vignette, .6);background:radial-gradient(120% 120% at 50% 38%,transparent 42%,rgba(34,18,4,.95) 100%)}.gate{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;background:radial-gradient(120% 90% at 80% 0%,rgba(255,222,0,.3),transparent 60%),radial-gradient(120% 90% at 0% 100%,rgba(21,184,140,.2),transparent 55%),var(--cream)}.gate__topbar{position:absolute;top:1.1rem;right:1.1rem}.gate__card{width:100%;max-width:26rem;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-lg),inset 0 0 0 5px var(--paper),inset 0 0 0 6px var(--line);border-radius:var(--radius-lg);padding:2.4rem 1.8rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.gate__monogram{font-family:var(--font-head);font-weight:700;font-size:1.1rem;letter-spacing:.08em;color:var(--jade-dark);border:1.5px solid var(--gold);box-shadow:inset 0 0 0 3px var(--paper),inset 0 0 0 4.5px var(--gold);border-radius:999px;padding:.5rem 1rem;margin-bottom:.4rem}.gate__eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:700;color:var(--gold)}.gate__title{font-family:var(--font-antique);font-weight:700;font-size:clamp(2rem,9vw,2.8rem);color:var(--ink)}.gate__subtitle{color:var(--ink-soft);margin-bottom:.6rem}.gate__form{width:100%;display:flex;flex-direction:column;gap:.7rem}.gate__input{font:inherit;font-size:1.05rem;text-align:center;padding:.85rem 1rem;border-radius:999px;border:1.5px solid var(--line);background:var(--cream)}.gate__input:focus{outline:none;border-color:var(--jade)}.gate__error{color:var(--coral-dark);font-weight:700;font-size:.9rem}.skip-link{position:absolute;left:-999px;top:0;z-index:1000;background:var(--jade);color:#fff;padding:.75rem 1.25rem;border-radius:0 0 var(--radius) 0}.skip-link:focus{left:0}:focus-visible{outline:3px solid var(--coral);outline-offset:2px;border-radius:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-body);font-weight:700;font-size:.92rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;padding:.85rem 1.6rem;border-radius:999px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;min-height:48px}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--coral);color:#fff;box-shadow:var(--shadow-sm),inset 0 0 0 1px #ffffff40}.btn--primary:hover{background:var(--coral-dark);box-shadow:var(--shadow-md)}.btn--ghost{background:transparent;color:var(--jade-dark);border:1.5px solid var(--jade);box-shadow:inset 0 0 0 3px #6f553014}.btn--ghost:hover{background:#6f553014}.btn--whatsapp{background:#15b88c;color:#fff}.btn--whatsapp:hover{background:#0b8e69}.btn--xl{font-size:1.05rem;padding:1.15rem 2.5rem}.btn--sm{font-size:.78rem;padding:.55rem 1.05rem;min-height:40px}.morph{font-family:var(--font-antique);font-weight:700;line-height:1.06}.hero{position:relative;padding:1rem 1.1rem 2.5rem;background:transparent;overflow:hidden}.hero__text{--hero-text-offset-mobile: 3.5rem;--hero-text-offset-desktop: 7rem;--hero-text-offset: var(--hero-text-offset-mobile);padding-top:var(--hero-text-offset);padding-right:5rem}@media (min-width: 700px){.hero__text{--hero-text-offset: var(--hero-text-offset-desktop);padding-right:0}}.hero__topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:var(--maxw);margin:0 auto 1.5rem}.hero__monogram{font-family:var(--font-head);font-weight:700;font-size:1.15rem;letter-spacing:.08em;color:var(--jade-dark);background:var(--paper);border:1.5px solid var(--gold);box-shadow:inset 0 0 0 3px var(--paper),inset 0 0 0 4.5px var(--gold);padding:.5rem 1rem;border-radius:999px;white-space:nowrap}.lang-toggle{display:inline-flex;align-items:center;gap:.35rem;background:var(--paper);border:1.5px solid var(--line);border-radius:999px;padding:.3rem .6rem;box-shadow:var(--shadow-sm)}.lang-toggle button{background:none;border:none;font:inherit;font-family:var(--font-body);font-weight:700;letter-spacing:.04em;color:var(--ink-soft);cursor:pointer;padding:.35rem .7rem;border-radius:999px;min-height:40px}.lang-toggle button.is-active{background:var(--jade);color:#fff}.lang-toggle__sep{color:var(--line)}.hero__grid{max-width:var(--maxw);margin:0 auto;display:grid;gap:2rem;align-items:center}.hero__eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;font-weight:700;color:var(--ink-soft);margin-bottom:.7rem}.hero__title{font-size:clamp(3.8rem,16vw,7.2rem);font-weight:600;letter-spacing:0;line-height:1.04;color:var(--ink);margin-bottom:.5rem;padding:.12em .04em;text-shadow:0 1px 2px rgba(255,248,235,.6)}.hero__title .morph{font-family:var(--font-script);font-weight:600}.hero__meta{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;font-family:var(--font-head);font-style:italic;font-size:1.15rem;font-weight:600;color:var(--jade-dark);margin-bottom:1rem;text-shadow:0 1px 2px rgba(255,248,235,.7)}.hero__subtitle{font-size:1.2rem;font-weight:600;color:var(--ink);margin-bottom:.8rem;text-shadow:0 1px 2px rgba(255,248,235,.7)}.hero__welcome{color:var(--ink);font-weight:500;margin-bottom:1.6rem;max-width:40ch;text-shadow:0 1px 2px rgba(255,248,235,.7)}.hero__ctas{display:flex;flex-wrap:wrap;gap:.8rem}.hero__media{position:relative;min-height:240px;display:flex;align-items:center;justify-content:center}.hero__filmstrip{width:100%;max-width:420px;height:auto;object-fit:contain;filter:sepia(.5) saturate(.72) contrast(.96) drop-shadow(0 14px 22px rgba(42,32,24,.28)) drop-shadow(0 4px 8px rgba(42,32,24,.18));transform:rotate(-1deg)}.cal{position:absolute;top:.75rem;right:.75rem;z-index:6;width:82px;display:flex;flex-direction:column;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);text-align:center}.cal__top{width:100%;background:#cda85a;color:#3a2c16;font-family:var(--font-modern);font-weight:700;font-size:.62rem;letter-spacing:.08em;padding:.28rem 0}.cal__num{font-family:var(--font-antique);font-weight:700;font-size:2.1rem;line-height:1.1;color:var(--ink);padding-top:.3rem}.cal__label{font-family:var(--font-modern);font-size:.58rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft);padding-bottom:.4rem}@media (min-width: 700px){.cal{top:1rem;right:1rem;width:96px}.cal__num{font-size:2.5rem}}.hero__scrollhint{max-width:520px;margin:2.2rem auto 0;display:flex;align-items:center;gap:.9rem;text-align:center;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700;color:var(--gold)}.hero__scrollhint-rule{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}.hero__scrollhint-rule:last-child{background:linear-gradient(90deg,var(--gold),transparent)}.layout{min-height:100vh;background:linear-gradient(180deg,#eddeb680,#e0c89180)}.layout__main{max-width:var(--maxw);margin:0 auto;padding:0 1.1rem 6.5rem;outline:none}.page{animation:page-in .45s ease both}@keyframes page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.section{padding:1.75rem 0 1rem}.section__head{margin-bottom:1.4rem;text-align:center}.section__eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:.72rem;font-weight:700;color:var(--gold)}.section__title{font-size:clamp(2rem,6.5vw,3rem);font-weight:700;margin-bottom:.4rem}.section__subtitle{color:var(--ink-soft);font-family:var(--font-head);font-style:italic;font-size:1.1rem;max-width:60ch;margin:0 auto}.section__head:after{content:"";display:block;width:64px;height:2px;margin:1rem auto 0;background:var(--gold)}.card-grid{display:grid;gap:1rem;grid-template-columns:1fr}.card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--paper),inset 0 0 0 2px #d9c5a08c;border-radius:var(--radius);padding:1.5rem 1.4rem;text-align:center;transition:transform .15s ease,box-shadow .15s ease}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.card__title{font-size:1.18rem;letter-spacing:.02em;margin-bottom:.45rem}.card__body{color:var(--ink-soft)}.card__link{display:inline-block;margin-top:.7rem;font-weight:700;word-break:break-word}.callout{margin-top:1.5rem;padding:1.1rem 1.3rem;border-radius:var(--radius);font-size:.97rem}.callout--note{background:#d99a2b33;border:1px solid rgba(184,128,31,.55);color:#6a4c1a}.callout--help{background:#6f553014;border:1px solid rgba(111,85,48,.28);display:flex;flex-direction:column;gap:.8rem;align-items:center;text-align:center}.section--rsvp .section__head{text-align:center}.rsvp{background:linear-gradient(160deg,var(--paper),var(--cream-2));border:1px solid var(--line);box-shadow:var(--shadow-md),inset 0 0 0 4px var(--paper),inset 0 0 0 5px var(--line);border-radius:var(--radius-lg);padding:2.2rem 1.4rem;display:flex;flex-direction:column;align-items:center;gap:1.1rem;text-align:center}.rsvp__deadline{display:inline-flex;flex-direction:column;gap:.1rem;background:var(--paper);border:2px dashed var(--coral);border-radius:var(--radius);padding:.6rem 1.4rem;transform:rotate(-2deg)}.rsvp__deadline-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft)}.rsvp__deadline-date{font-family:var(--font-head);font-size:1.3rem;font-weight:700;color:var(--coral-dark)}.rsvp__note{color:var(--ink-soft);max-width:52ch}.rsvp__greeting{font-family:var(--font-head);font-size:1.5rem;font-weight:700;color:var(--jade-dark)}.rsvp__prompt{color:var(--ink-soft);max-width:46ch}.rsvp__people{list-style:none;margin:0;padding:0;width:100%;max-width:30rem;display:grid;gap:.6rem}.rsvp__person{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem;box-shadow:var(--shadow-sm)}.rsvp__person-name{font-family:var(--font-head);font-weight:700;font-size:1.05rem;text-align:left}.rsvp__choices{display:inline-flex;gap:.4rem}.rsvp__choice{font:inherit;font-weight:700;font-size:.85rem;cursor:pointer;padding:.45rem .9rem;min-height:40px;border-radius:999px;border:1.5px solid var(--line);background:transparent;color:var(--ink-soft);transition:background .15s ease,color .15s ease,border-color .15s ease}.rsvp__choice.is-yes{background:var(--pop);border-color:var(--pop);color:#fff}.rsvp__choice.is-no{background:var(--ink-soft);border-color:var(--ink-soft);color:#fff}.rsvp__message{display:flex;flex-direction:column;align-items:center;gap:.7rem;max-width:46ch}.rsvp__message-title{font-family:var(--font-head);font-size:1.4rem;color:var(--jade-dark)}.rsvp__summary{list-style:none;margin:0;padding:0;display:grid;gap:.3rem;font-family:var(--font-head)}.rsvp__error{color:var(--coral-dark);font-weight:700}.rsvp__search{width:100%;max-width:30rem;display:flex;flex-direction:column;align-items:stretch;gap:.6rem}.rsvp__search-title{font-family:var(--font-head);font-weight:700;font-size:1.2rem;text-align:center}.rsvp__search-input{font:inherit;font-size:1.05rem;padding:.85rem 1.1rem;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);text-align:center}.rsvp__search-input:focus{outline:none;border-color:var(--jade)}.rsvp__namefields{display:flex;flex-wrap:wrap;gap:.6rem}.rsvp__namefields .rsvp__search-input{flex:1 1 8rem;min-width:0}.rsvp__results{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.rsvp__result{width:100%;display:flex;flex-direction:column;gap:.15rem;text-align:left;cursor:pointer;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem;transition:border-color .15s ease,transform .15s ease}.rsvp__result:hover{border-color:var(--jade);transform:translateY(-1px)}.rsvp__result-name{font-family:var(--font-head);font-weight:700;font-size:1.05rem;color:var(--jade-dark)}.rsvp__result-party{font-size:.85rem;color:var(--ink-soft)}.rsvp__link{background:none;border:none;cursor:pointer;font:inherit;font-weight:700;color:var(--jade-dark);text-decoration:underline;text-underline-offset:3px;padding:.3rem}.travelform{width:100%;max-width:34rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.9rem;text-align:left}.travelform__title{font-family:var(--font-head);font-size:1.3rem;text-align:center}.travelform__intro{color:var(--ink-soft);text-align:center;font-size:.95rem}.travelform__grid{display:grid;gap:.8rem;grid-template-columns:1fr}.travelform__field{display:flex;flex-direction:column;gap:.3rem;font-weight:600;font-size:.9rem}.travelform__field input{font:inherit;font-weight:400;padding:.7rem .9rem;border-radius:12px;border:1.5px solid var(--line);background:var(--paper)}.travelform__field input:focus{outline:none;border-color:var(--jade)}.travelform__hint{font-weight:400;font-size:.8rem;color:var(--ink-soft)}.travelform__transport{border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1rem;margin:0;display:flex;flex-direction:column;gap:.6rem}.travelform__transport legend{font-weight:600;font-size:.9rem;padding:0}.travelform__lodging{border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1rem;margin:0;display:flex;flex-direction:column;gap:.6rem}.travelform__lodging legend{font-weight:600;font-size:.9rem;padding:0}.travelform__lodging-q{font-size:.9rem;color:var(--ink-soft)}.travelform__options{display:flex;flex-direction:column;gap:.5rem}.travelform__option{font:inherit;font-size:.92rem;font-weight:600;text-align:left;cursor:pointer;padding:.75rem .9rem .75rem 2.4rem;position:relative;border-radius:var(--radius);border:1.5px solid var(--line);background:var(--cream);color:var(--ink);transition:background .15s ease,color .15s ease,border-color .15s ease}.travelform__option:before{content:"";position:absolute;left:.95rem;top:50%;transform:translateY(-50%);width:1.05rem;height:1.05rem;border-radius:999px;border:2px solid var(--line);background:transparent;transition:border-color .15s ease,box-shadow .15s ease}.travelform__option.is-on{border-color:var(--pop);background:#17a06a1a;color:var(--pop-dark)}.travelform__option.is-on:before{border-color:var(--pop);background:var(--pop);box-shadow:inset 0 0 0 3px var(--cream)}.travelform__saved{color:var(--jade-dark);font-weight:700}.travelform__fallback{font-size:.85rem;color:var(--ink-soft)}@media (min-width: 700px){.travelform__grid{grid-template-columns:1fr 1fr}}.walkthrough{margin-top:1.8rem;background:linear-gradient(160deg,#e9bd55,#cf982c);color:var(--ink);border-radius:var(--radius-lg);padding:1.7rem;box-shadow:var(--shadow-md);text-align:center}.walkthrough__title{font-size:1.4rem;margin-bottom:1rem}.walkthrough__steps{margin:0 auto 1.3rem;padding-left:1.3rem;max-width:30rem;text-align:left;display:grid;gap:.5rem}.itinerary-grid{list-style:none;margin:0;padding:0;display:grid;gap:1.4rem;grid-template-columns:1fr}.itinerary-day{display:flex;flex-direction:column;align-items:center;text-align:center}.itinerary-day__head{display:flex;flex-direction:column;align-items:center;gap:.1rem;margin-bottom:.7rem}.itinerary-day__name{font-family:var(--font-head);font-size:1.55rem;letter-spacing:.05em;color:var(--jade-dark);line-height:1}.itinerary-day__date{font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}.itinerary-day__card{width:100%;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--paper),inset 0 0 0 2px #d9c5a08c;padding:1.2rem 1.1rem;transition:transform .15s ease,box-shadow .15s ease}.itinerary-day__card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.itinerary-day__events{list-style:none;margin:0;padding:0;display:grid;gap:.9rem}.itinerary-row+.itinerary-row{padding-top:.9rem;border-top:1px dashed rgba(217,197,160,.85)}.itinerary-row__name{font-weight:700;color:var(--ink);font-size:1.02rem;margin-bottom:.2rem}.itinerary-row__time{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-dark);margin-bottom:.2rem}.itinerary-row__place{font-style:italic;color:var(--ink-soft);font-size:.95rem}@media (min-width: 720px){.itinerary-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:1.6rem}.itinerary-day__card{flex:1;width:100%}}.lodging__feature{display:grid;gap:1.2rem;margin-bottom:1.6rem}.lodging__photo{border-radius:8px;overflow:hidden;box-shadow:var(--shadow-md);border:9px solid var(--paper);outline:1px solid var(--line);aspect-ratio:16 / 10}.lodging__photo .smartimg{width:100%;height:100%;object-fit:cover;filter:none}.lodging__intro{font-family:var(--font-head);font-size:1.15rem;font-style:italic;font-weight:700;color:#1a1006;max-width:22ch;align-self:center}.lodging__heading{font-family:var(--font-head);font-size:1.35rem;letter-spacing:.05em;text-align:center;color:var(--jade-dark);margin:2rem 0 1rem}.lodging__rooms{list-style:none;margin:0 auto;padding:0;max-width:38rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--paper),inset 0 0 0 2px #d9c5a08c;padding:.4rem 1.1rem}.lodging-room{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:.4rem 1rem;padding:1rem 0}.lodging-room+.lodging-room{border-top:1px dashed rgba(217,197,160,.85)}.lodging-room__name{font-weight:700;color:var(--ink);font-size:1.02rem}.lodging-room__price{font-family:var(--font-head);font-weight:700;color:var(--coral-dark);letter-spacing:.04em;text-align:right;white-space:nowrap}.lodging-room__details{grid-column:1 / -1;color:var(--ink-soft);font-size:.95rem;font-style:italic}.lodging__booking,.lodging__family{margin-top:1.5rem}.lodging__note{margin-top:1.6rem;text-align:center;font-size:.9rem;color:var(--ink-soft);font-style:italic}.phrases{margin-top:1.8rem;text-align:center}.phrases__title{font-size:1.4rem;margin-bottom:1rem}.phrases__list{list-style:none;margin:0;padding:0;display:grid;gap:.7rem;grid-template-columns:1fr}.phrase{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1.1rem;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.3rem .8rem;box-shadow:var(--shadow-sm)}.phrase__es{font-family:var(--font-head);font-size:1.15rem;font-weight:700;color:var(--jade-dark)}.phrase__en{color:var(--ink-soft)}.phrase__say{font-family:var(--font-head);font-style:italic;color:var(--coral-dark);font-size:.9rem}.faq{display:grid;gap:.7rem}.faq__item{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}.faq__q{margin:0;font-family:var(--font-body)}.faq__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:none;border:none;cursor:pointer;font:inherit;font-family:var(--font-head);font-weight:700;font-size:1.08rem;color:var(--ink);text-align:left;padding:1.1rem 1.2rem;min-height:52px}.faq__toggle{flex:0 0 auto;color:var(--gold);font-family:var(--font-modern);font-weight:600;font-size:1.5rem;line-height:1}.faq__panel{padding:0 1.2rem 1.2rem;color:var(--ink-soft)}.faq__images{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.9rem}.faq__images img{flex:1 1 200px;max-width:320px;height:auto;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-sm);filter:none}.navbtn{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .9rem;font-family:var(--font-head);font-weight:600;letter-spacing:.02em;transition:background .15s ease,border-color .15s ease,color .15s ease;min-height:48px}.navbtn:hover{border-color:var(--jade)}.navbtn.is-active{background:var(--jade);border-color:var(--jade);color:#fff;box-shadow:var(--shadow-sm)}.navbtn.is-active .navbtn__label{text-decoration:underline;text-underline-offset:3px}.topbar{position:sticky;top:0;z-index:55;background:#fcf6e9eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar__inner{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.5rem 1.1rem}.topbar__brand{flex:0 0 auto;text-decoration:none;font-family:var(--font-head);font-weight:700;font-size:1.05rem;letter-spacing:.06em;color:var(--jade-dark);background:var(--paper);border-radius:999px;padding:.35rem .85rem;box-shadow:inset 0 0 0 1.5px var(--gold);white-space:nowrap}.navpanel--top{display:none}.navpanel--bottom{position:fixed;left:0;right:0;bottom:0;z-index:50;background:#fcf6e9f7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);box-shadow:0 -6px 20px #2a20181f;padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom,0px))}.navpanel--bottom .navpanel__list{list-style:none;margin:0;padding:.2rem;display:flex;gap:.25rem}.navpanel--bottom .navpanel__list>li{flex:1 1 0;min-width:0}.navpanel--bottom .navbtn{width:100%;flex-direction:column;gap:.2rem;padding:.5rem .2rem;font-size:.66rem;text-transform:uppercase;letter-spacing:.03em;border-radius:12px;text-align:center}.navpanel--bottom .navbtn__label{white-space:normal;line-height:1.1}.footer{position:relative;background:linear-gradient(160deg,#e9bd55,#cf982c);color:var(--ink);text-align:center;padding:3.2rem 1.2rem;margin-top:1rem}.footer__inner{max-width:500px;margin:0 auto;display:grid;gap:.8rem;justify-items:center}.footer__couple{font-family:var(--font-script);font-weight:400;font-size:3rem;line-height:1.1}.footer__tagline{font-style:italic;color:#2b1c0bc7}.footer__rsvp{margin:.4rem 0}.footer__meta{font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;color:#2b1c0b9e}.smartimg--fallback{display:flex;align-items:center;justify-content:center;text-align:center;padding:1rem;width:100%;height:100%;min-height:220px;font-family:var(--font-antique);font-weight:700;font-size:1.5rem;letter-spacing:.01em;background:linear-gradient(135deg,var(--cream-2),var(--cream));color:var(--jade)}@media (min-width: 700px){.hero{padding:1.5rem 2rem 3rem}.card-grid,.phrases__list{grid-template-columns:repeat(2,1fr)}.hero__media{min-height:320px}.hero__filmstrip{max-width:480px}.lodging__feature{grid-template-columns:1.1fr 1fr;align-items:center}}@media (min-width: 1024px){.hero__grid{gap:2.5rem;padding-top:1.5rem}.hero__media{min-height:380px}.hero__filmstrip{max-width:540px}.navpanel--bottom{display:none}.layout__main{padding-bottom:0}.navpanel--top{display:block;flex:1 1 auto;min-width:0}.navpanel--top .navpanel__list{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:.15rem;overflow-x:auto;scrollbar-width:none}.navpanel--top .navpanel__list::-webkit-scrollbar{display:none}.navpanel--top .navbtn{flex:0 0 auto;background:none;border:none;border-radius:8px;min-height:40px;padding:.45rem .6rem;gap:.4rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);border-bottom:2px solid transparent}.navpanel--top .navbtn:hover{background:#6f55301a;border-color:transparent}.navpanel--top .navbtn.is-active{background:none;color:var(--jade-dark);box-shadow:none;border-bottom:2px solid var(--coral);border-radius:8px 8px 0 0}.navpanel--top .navbtn.is-active .navbtn__label{text-decoration:none}.section{padding:2.2rem 0 1rem}.card-grid{grid-template-columns:repeat(3,1fr)}#travel .card-grid{grid-template-columns:repeat(2,1fr);max-width:52rem;margin-left:auto;margin-right:auto}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
