:root{--cream:#f6f3ec;--paper:#faf8f2;--ink:#454936;--olive:#595c47;--olive-dark:#414532;--muted:#777668;--gold:#b49b70;--line:#dcd9cc;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost',Arial,sans-serif}
html,body{max-width:100%;overflow-x:clip;overscroll-behavior-x:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;font-weight:400;line-height:1.7;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:wait}img{display:block;max-width:100%}figure,p,h1,h2,h3{margin:0}button{border:0}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}[hidden]{display:none!important}::selection{background:#d8ccac;color:#35392b}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.02}h2{font-size:clamp(42px,4.15vw,60px)}h2 em,h1 em{font-weight:400}strong{font-weight:500}.section-shell{width:min(1180px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-size:10px;letter-spacing:.19em;font-weight:500;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:53px;padding:17px 27px;font-size:10px;font-weight:500;letter-spacing:.115em;line-height:1.6;border:1px solid transparent;border-radius:2px;transition:background .2s,color .2s,transform .2s}.button>span{font-size:19px;line-height:1;font-weight:400;transition:transform .2s}.button:hover>span{transform:translate(2px,-2px)}.button-olive{background:var(--olive);color:var(--paper)}.button-olive:hover{background:var(--olive-dark)}.button-outline{background:transparent;border-color:#a6a795;color:var(--ink)}.button-outline:hover{background:var(--olive);border-color:var(--olive);color:var(--paper)}.button-cream{background:var(--cream);color:var(--ink)}.button-cream:hover{background:#e8e1d1}.skip-link{position:fixed;top:10px;left:10px;padding:12px 20px;background:var(--olive);color:white;z-index:100;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{background:rgba(246,243,236,.97);position:sticky;top:0;z-index:20;border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s}.site-header.scrolled{border-color:var(--line);box-shadow:0 4px 20px #22200004}.header-inner{width:calc(100% - 104px);max-width:1440px;height:102px;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.desktop-nav{display:flex;gap:28px;align-items:center;font-size:11px}.desktop-nav a{position:relative;padding-block:8px}.desktop-nav a:after{content:'';position:absolute;left:0;bottom:3px;width:0;height:1px;background:var(--olive);transition:width .2s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{width:100%}.brand{display:flex;align-items:center;flex-direction:column;width:max-content;line-height:1.05}.brand-name{font-family:var(--serif);font-size:34px;letter-spacing:-.055em;font-style:italic;position:relative}.brand-spark{position:absolute;top:0;right:-14px;font-family:Georgia,serif;font-size:14px;color:#9c8965}.brand-subtitle{font-size:7px;letter-spacing:.3em;margin-top:7px;padding-left:4px}.header-cta{justify-self:end;display:flex;gap:18px;align-items:center;font-size:9px;letter-spacing:.1em}.header-cta>span{font-size:20px;border:1px solid #c5c5b6;border-radius:50%;display:grid;place-items:center;width:34px;height:34px;transition:background .2s}.header-cta:hover>span{background:#e6e4d8}.menu-toggle{display:none}.mobile-nav{display:none}
.hero{position:relative;isolation:isolate;min-height:640px;height:min(710px,calc(100svh - 124px));margin:0 24px;overflow:hidden;background:#d8c1a0;scroll-margin-top:105px}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:62% 52%;z-index:-3}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(248,239,218,.6),rgba(245,234,213,.52) 30%,rgba(238,225,201,.03) 66%)}.hero-content{width:58%;max-width:770px;height:100%;padding:62px 24px 75px 46px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.hero-eyebrow{font-size:9px;letter-spacing:.16em;display:flex;gap:12px;align-items:center;margin-bottom:24px}.hero-eyebrow>span{height:1px;width:23px;background:#938869}.hero-name{font-family:var(--serif);font-size:26px;line-height:1.2;font-style:italic;margin-bottom:22px;letter-spacing:-.015em}.hero h1{font-size:clamp(48px,5.1vw,76px);line-height:1.02;letter-spacing:-.045em;color:#424432}.hero h1 em{color:#55583e}.hero-description{font-size:13px;line-height:1.8;margin-top:23px;color:#585749}.hero .button{margin-top:27px;min-width:266px}.hero-note{font-size:10px;margin-top:11px;color:#62604f}.hero-discover{display:flex;align-items:center;gap:12px;position:absolute;left:45px;bottom:25px;font-size:8px;letter-spacing:.18em}.discover-line{display:block;width:36px;height:1px;background:currentColor}.hero-edition{position:absolute;right:30px;bottom:27px;font-size:8px;letter-spacing:.22em;writing-mode:vertical-rl;transform:rotate(180deg);color:#fefaf2;text-shadow:0 1px 8px #50442e}.poetry-strip{width:min(1060px,calc(100% - 112px));min-height:104px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:20px;font-style:italic}.poetry-strip i{font-style:normal;color:#ad976e;font-size:18px}
.introduction{padding-block:94px 100px}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;margin-bottom:48px}.section-intro .eyebrow{margin-bottom:20px}.intro-copy{font-size:13px;max-width:432px;justify-self:end;color:#6c6d60}.intro-copy>p+p{margin-top:13px}.handwritten{font-family:var(--serif);font-style:italic;font-size:26px;display:block;margin-top:17px;color:var(--ink)}.triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.photo-button{display:block;width:100%;padding:0;background:#ded9ce;overflow:hidden;position:relative}.photo-button>img{height:100%;width:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.5,.3,1),filter .65s}.photo-button:hover>img{transform:scale(1.035);filter:brightness(.96)}.photo-story .photo-button{aspect-ratio:.735}.photo-story img{object-position:center 44%}.photo-expand{position:absolute;right:14px;bottom:14px;width:32px;height:32px;display:grid;place-items:center;background:rgba(246,243,236,.9);color:var(--ink);border-radius:50%;font-size:19px;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}.photo-button:hover .photo-expand,.photo-button:focus-visible .photo-expand{opacity:1;transform:translateY(0)}.photo-story figcaption{margin-top:18px;display:flex;justify-content:space-between;align-items:baseline;gap:10px}.photo-story figcaption>span{font-size:8px;letter-spacing:.13em;color:#787c67}.photo-story figcaption>em{font-family:var(--serif);font-size:17px}
.experience{background:var(--olive);color:var(--cream);overflow:hidden}.experience-inner{padding-block:95px 103px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:120px}.experience-copy .eyebrow{color:#dfd8c5;margin-bottom:23px}.experience h2{font-size:clamp(40px,3.7vw,53px);margin-bottom:26px;line-height:1.06}.experience-copy>p:not(.eyebrow){color:#e0e0d3;font-size:13px;line-height:1.85;max-width:386px;margin-top:13px}.experience-notes{margin-block:30px 29px;max-width:386px}.experience-notes p{font-size:11px;padding-block:13px;border-bottom:1px solid #ffffff26;display:flex;gap:22px}.experience-notes span{font-family:var(--serif);font-size:13px;color:#d8c8a5}.text-link{display:inline-flex;gap:22px;align-items:center;padding-bottom:7px;border-bottom:1px solid;font-size:9px;letter-spacing:.13em}.text-link>span{font-size:19px;line-height:1}.light-link{border-color:#d2cfb7;color:#f1ecdd}.experience-photos{position:relative;padding-left:45px;padding-bottom:35px}.experience-main{width:100%;height:510px;object-fit:cover;object-position:50% 47%}.experience-inset{position:absolute;bottom:0;left:-43px;width:218px;padding:10px 10px 5px;background:#f7f3e9;transform:rotate(-7deg);box-shadow:0 10px 20px #1a211025}.experience-inset img{width:100%;height:144px;object-fit:cover}.experience-inset span{font-family:var(--serif);font-style:italic;text-align:center;display:block;color:#656452;font-size:20px;line-height:1.65}.photo-year{position:absolute;right:-25px;top:0;writing-mode:vertical-rl;font-size:8px;letter-spacing:.15em;color:#e1dccc}
.packages{padding-block:96px 83px}.centered-heading{text-align:center;margin-bottom:53px}.section-spark{display:block;font-size:32px;line-height:1;color:var(--gold);margin-bottom:22px}.centered-heading .eyebrow{margin-bottom:19px}.centered-heading h2{font-size:clamp(43px,4vw,57px);line-height:1.05}.centered-heading>p:last-child{font-size:13px;color:var(--muted);margin-top:21px}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.package-card{border:1px solid #d5d4c5;padding:29px 31px 30px;display:flex;flex-direction:column;background:transparent}.package-featured{background:#eaece2;border-color:#c4c9b5}.package-topline{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:.16em;min-height:32px}.package-symbol{font-family:var(--serif);font-size:40px;line-height:1;font-weight:400;color:#96977d;letter-spacing:0}.memory-symbol{font-size:30px}.package-card h3{font-size:49px;margin-top:19px;letter-spacing:-.02em}.package-tagline{font-family:var(--serif);font-size:19px;font-style:italic;margin-top:10px;line-height:1.4;min-height:27px}.package-facts{display:flex;gap:18px;align-items:center;border-block:1px solid #cfd1c0;padding-block:15px;margin-block:24px 18px;font-size:8px;font-weight:500;letter-spacing:.095em}.package-facts>span+span:before{content:'·';margin-right:18px}.package-card ul{padding:0;margin:0 0 30px;list-style:none;font-size:12px;color:#626652}.package-card li{position:relative;padding-left:20px;line-height:1.8;margin-bottom:9px}.package-card li:before{content:'✓';position:absolute;left:0;top:0;font-size:10px;color:#8a906f}.package-card li strong{font-weight:500;color:var(--ink)}.feature-detail{font-size:11px;color:#828573}.package-bottom{margin-top:auto}.package-price{font-size:10px;color:#767967;margin-bottom:15px}.package-price.has-price{font-family:var(--serif);font-size:29px;color:var(--ink)}.package-card .button{width:100%;font-size:9px;gap:10px;min-height:49px;padding:14px 18px}.packages-help{margin-top:33px;font-size:11px;text-align:center;color:var(--muted)}.inline-link{padding:0;background:transparent;border:0;border-bottom:1px solid #8b9077;color:var(--ink);font-size:inherit;line-height:1.8}.inline-link>span{margin-left:7px}.packages-help .inline-link{margin-left:5px}
.memories{padding-top:30px;padding-bottom:55px;background:#edece4}.memories-heading{display:flex;align-items:end;justify-content:space-between;padding-block:45px 38px;gap:25px}.memories-heading .eyebrow{margin-bottom:18px}.memories-heading h2{font-size:clamp(42px,3.8vw,55px)}.memories-heading>p{font-size:12px;color:#787c69;padding-bottom:4px}.memories-grid{display:grid;grid-template-columns:1fr 1.25fr 1fr 1fr;gap:14px;padding-inline:24px}.memories-grid .photo-button{height:350px}.memories-grid .photo-button:nth-child(2) img{object-position:49% center}.memories-grid .photo-button:nth-child(3) img{object-position:50% 40%}.memories-grid .photo-button:nth-child(4) img{object-position:51% center}.gallery-note{display:flex;justify-content:center;gap:21px;text-align:center;align-items:center;font-size:9px;color:#747966;margin-top:23px;letter-spacing:.015em}.gallery-note span{font-size:16px;color:#a19070}
.faq{padding-block:97px 104px;display:grid;grid-template-columns:1fr 1.35fr;gap:100px}.faq-heading .eyebrow{margin-bottom:22px}.faq-heading h2{font-size:53px;line-height:1.04}.faq-heading>p:last-child{color:var(--muted);font-size:12px;line-height:1.8;margin-top:23px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;cursor:pointer;font-size:13px;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{position:relative;flex-shrink:0;width:13px;height:13px}.faq-list summary>span:before,.faq-list summary>span:after{content:'';position:absolute;top:6px;left:1px;width:11px;height:1px;background:#858a74}.faq-list summary>span:after{transform:rotate(90deg);transition:transform .2s}.faq-list details[open] summary>span:after{transform:rotate(0)}.faq-answer{padding:0 27px 22px 0;color:var(--muted);font-size:12px;line-height:1.9;animation:fade-in .25s}.faq-answer .inline-link{margin-top:11px}
.closing{position:relative;isolation:isolate;margin:0 24px;min-height:450px;display:grid;place-items:center;overflow:hidden;color:var(--cream);text-align:center}.closing>img,.closing-overlay{position:absolute;inset:0;height:100%;width:100%}.closing>img{object-fit:cover;object-position:50% 40%;z-index:-2}.closing-overlay{z-index:-1;background:#323829a8}.closing-content{padding:65px 24px}.closing .eyebrow{color:#eee5cc;margin-bottom:23px;font-size:9px}.closing h2{font-size:clamp(47px,4.7vw,68px);line-height:1}.closing-content>p:not(.eyebrow){font-family:var(--serif);font-size:25px;font-style:italic;margin-top:19px}.closing .button{margin-top:29px}.footer{padding-block:48px 20px}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:38px}.footer-main>p{font-size:10px;color:#7c7e70;text-align:center;line-height:1.9}.footer-main>p em{font-family:var(--serif);font-size:18px;color:#60644e}.back-top{font-size:8px;letter-spacing:.1em;display:flex;align-items:center;gap:14px}.back-top>span{font-size:19px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:18px;border-top:1px solid var(--line);font-size:8px;color:#848576}.footer-bottom>span:last-child{font-size:7px;letter-spacing:.12em}
.booking-dialog{width:min(510px,calc(100% - 32px));padding:42px 43px 29px;border:1px solid var(--line);background:var(--paper);color:var(--ink);max-height:calc(100svh - 40px);overflow:auto;text-align:center}.booking-dialog::backdrop{background:#222819a3;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:13px;top:8px;font-size:31px;font-weight:400;background:transparent;line-height:1;width:40px;height:40px;color:#757867}.booking-dialog .section-spark{margin-bottom:17px;font-size:25px}.booking-dialog .eyebrow{font-size:8px;margin-bottom:18px}.booking-dialog h2{font-size:49px;line-height:1}.booking-intro{font-size:12px;color:var(--muted);margin-top:20px}.booking-dialog label{display:block;text-align:left;font-size:8px;letter-spacing:.15em;margin-top:24px;margin-bottom:8px}.booking-dialog select{width:100%;background:var(--cream);border:1px solid #d1d3c2;padding:11px 10px;color:var(--ink);font-size:12px;border-radius:0;line-height:1.5}.booking-summary{font-size:11px;line-height:1.7;margin:13px 0 18px;color:var(--muted)}.booking-message{background:#eeeee4;padding:15px 17px;text-align:left;font-size:12px;line-height:1.8;margin-bottom:20px;white-space:pre-line;user-select:text}.booking-dialog .button{width:100%;justify-content:center;font-size:9px}.booking-hint{margin-top:12px;font-size:10px;color:var(--muted);line-height:1.7}.booking-status{font-size:11px;margin-top:9px;color:var(--olive-dark);min-height:18px}.lightbox{width:100vw;max-width:100vw;height:100svh;max-height:100svh;margin:0;padding:45px 80px;border:none;background:#24271ff5;color:var(--cream);overflow:hidden}.lightbox::backdrop{background:#24271f}.lightbox[open]{display:flex;align-items:center;justify-content:center}.lightbox figure{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;width:100%}.lightbox figure img{height:auto;width:auto;max-height:calc(100svh - 140px);max-width:100%;object-fit:contain}.lightbox figcaption{text-align:center;font-size:12px;color:#e5e2d4}.lightbox-close{position:absolute;top:14px;right:22px;color:var(--cream);background:transparent;font-size:38px;width:48px;height:48px;line-height:1;z-index:1}.lightbox-arrow{position:absolute;top:50%;background:#ffffff0a;color:var(--cream);font-size:26px;width:46px;height:46px;border-radius:50%;border:1px solid #ffffff30;transition:background .2s}.lightbox-arrow:hover{background:#ffffff1c}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-count{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.15em;color:#c5c8b8}.reveal{opacity:1;transform:none}.motion-ready .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}.motion-ready .triptych .reveal:nth-child(2),.motion-ready .package-grid .reveal:nth-child(2){transition-delay:.09s}.motion-ready .triptych .reveal:nth-child(3),.motion-ready .package-grid .reveal:nth-child(3){transition-delay:.18s}@keyframes fade-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.hero{height:750px;max-height:none}.hero-content{max-width:none;width:55%;padding-left:90px}.hero h1{font-size:86px}.hero-name{font-size:32px}.hero-description{font-size:15px}.hero-eyebrow{font-size:10px}.hero .button{font-size:11px}.hero-note{font-size:11px}}
@media(max-width:1150px){.section-shell{width:calc(100% - 80px)}.header-inner{width:calc(100% - 72px);gap:15px}.desktop-nav{gap:19px;font-size:10px}.header-cta{font-size:8px;gap:10px}.brand-name{font-size:31px}.hero{min-height:625px}.hero-content{width:61%;padding-left:15px}.hero h1{font-size:64px}.hero-eyebrow{font-size:8px;gap:8px}.hero-eyebrow>span{width:16px}.hero-name{font-size:25px}.hero-image{object-position:60% center}.section-intro{gap:55px}.experience-inner{gap:70px}.experience-photos{padding-left:15px}.experience-main{height:480px}.experience-inset{left:-35px;width:190px}.experience-inset img{height:130px}.photo-story figcaption{align-items:flex-start;flex-direction:column;gap:2px}.package-grid{gap:16px}.package-card{padding:25px 22px}.package-tagline{font-size:18px;min-height:50px}.package-card .button{font-size:8px;padding-inline:13px}.faq{gap:65px}.memories-grid .photo-button{height:310px}}
@media(max-width:850px){.header-inner{height:88px;width:calc(100% - 48px);grid-template-columns:1fr auto}.desktop-nav,.header-cta{display:none}.brand-name{font-size:32px}.brand-subtitle{font-size:6px}.menu-toggle{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;width:42px;height:42px;padding:8px;background:transparent}.menu-toggle>span{display:block;width:23px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;flex-direction:column;gap:0;padding:10px 25px 25px;border-top:1px solid var(--line);box-shadow:0 15px 20px #4549360a}.mobile-nav a{padding:12px;font-size:14px}.hero{margin-inline:16px;min-height:610px;height:calc(90svh - 88px);max-height:740px}.hero-content{width:64%;padding:38px 12px 64px}.hero h1{font-size:54px}.hero-shade{background:linear-gradient(90deg,#f4ead8c9,#f4ead896 40%,#f4ead805 85%)}.hero-description{font-size:12px}.hero-name{font-size:24px;margin-bottom:21px}.hero-eyebrow{font-size:7px;letter-spacing:.1em;gap:6px;margin-bottom:22px}.hero-eyebrow>span{width:13px}.hero .button{font-size:8px;min-width:230px;padding:16px 21px}.hero-note{font-size:9px}.hero-discover{left:26px;bottom:22px;font-size:7px}.poetry-strip{width:calc(100% - 64px);font-size:17px;gap:12px;min-height:90px}.poetry-strip i{font-size:15px}.section-shell{width:calc(100% - 64px)}.introduction{padding-block:70px}.section-intro{gap:37px}.section-intro h2{font-size:45px}.intro-copy{font-size:12px}.triptych{gap:16px}.photo-story figcaption>em{font-size:16px}.photo-story figcaption>span{font-size:7px}.experience-inner{gap:45px;padding-block:70px}.experience h2{font-size:41px}.experience-copy>p:not(.eyebrow){font-size:12px}.experience-main{height:440px}.experience-inset{width:165px;left:-22px}.experience-inset img{height:113px}.experience-notes p{font-size:10px;gap:15px}.experience .eyebrow{font-size:9px}.experience .text-link{font-size:8px;gap:15px}.packages{padding-block:70px 65px}.package-grid{gap:11px}.package-card{padding:20px 16px}.package-card h3{font-size:41px}.package-topline{font-size:7px}.package-symbol{font-size:31px}.package-tagline{font-size:17px}.package-facts{gap:8px;font-size:6.5px}.package-facts>span+span:before{margin-right:8px}.package-card ul{font-size:11px}.package-card .button{font-size:7px;gap:4px;padding-inline:10px}.package-card .button>span{font-size:15px}.package-price{font-size:9px}.memories-grid{padding-inline:16px;gap:10px}.memories-grid .photo-button{height:265px}.faq{gap:45px;padding-block:70px}.faq-heading h2{font-size:45px}.faq-list summary{font-size:12px;padding-block:20px}.closing{margin-inline:16px;min-height:420px}.footer-main{gap:18px}.footer-main .brand-name{font-size:28px}.footer-main>p{font-size:9px}.back-top{font-size:7px;gap:8px}.footer-bottom{font-size:7px}.footer-bottom>span:last-child{font-size:6px}}
@media(max-width:620px){html{scroll-padding-top:87px}.section-shell{width:calc(100% - 44px)}.header-inner{height:79px;width:calc(100% - 44px)}.brand-name{font-size:30px}.brand-subtitle{font-size:6px;letter-spacing:.24em;margin-top:5px}.hero{min-height:690px;height:calc(100svh - 91px);max-height:790px;margin-inline:10px;scroll-margin-top:79px}.hero-image{object-position:67% center}.hero-shade{background:linear-gradient(180deg,#f4ead888 0%,#f4ead880 28%,#f4ead88f 60%,#dac09e18 100%),linear-gradient(90deg,#f4ead880 0%,#f4ead838 100%)}.hero-content{width:100%;padding:55px 18px 110px;justify-content:flex-start;align-items:center}.hero-eyebrow{font-size:7px;letter-spacing:.11em;margin-bottom:23px;gap:10px}.hero-eyebrow>span{width:17px}.hero-name{font-size:25px;margin-bottom:24px}.hero h1{font-size:clamp(47px,12.3vw,68px);line-height:1.05;letter-spacing:-.045em;color:#3e412f}.hero h1 em{color:#505337}.hero-description{font-size:12px;margin-top:23px;max-width:295px;text-shadow:0 0 10px #f4ead866}.hero .button{margin-top:26px;min-width:262px;min-height:51px;font-size:9px;padding:16px 22px}.hero-note{margin-top:12px;font-size:9px}.hero-discover{left:21px;bottom:23px;font-size:7px;gap:10px}.discover-line{width:23px}.hero-edition{font-size:7px;right:19px;bottom:23px;letter-spacing:.17em}.poetry-strip{width:calc(100% - 44px);min-height:auto;padding-block:26px;flex-direction:column;gap:6px;font-size:19px;line-height:1.55}.poetry-strip i{display:none}.poetry-strip>span:nth-of-type(2){color:#93907a}.introduction{padding-block:57px 59px}.section-intro{grid-template-columns:1fr;gap:25px;margin-bottom:33px}.section-intro .eyebrow{font-size:9px;margin-bottom:19px}.section-intro h2{font-size:47px;line-height:1.03}.intro-copy{justify-self:start;max-width:none;font-size:12px}.intro-copy>p+p{margin-top:11px}.handwritten{font-size:25px;margin-top:15px}.triptych{grid-template-columns:1fr 1fr;gap:24px 14px}.photo-story:first-child{grid-column:1/-1}.photo-story:first-child .photo-button{aspect-ratio:1.03}.photo-story:first-child img{object-position:center 38%}.photo-story:not(:first-child) .photo-button{aspect-ratio:.68}.photo-story figcaption{margin-top:12px;gap:3px}.photo-story:first-child figcaption{flex-direction:row;align-items:center}.photo-story figcaption>em{font-size:15px;line-height:1.2}.photo-story figcaption>span{font-size:7px}.experience-inner{padding-block:59px 68px;grid-template-columns:1fr;gap:40px}.experience h2{font-size:43px;max-width:400px}.experience-copy>p:not(.eyebrow){font-size:12px;max-width:100%}.experience-copy .eyebrow{margin-bottom:21px}.experience-notes{max-width:none;margin-block:23px}.experience-notes p{font-size:11px;padding-block:14px}.experience-photos{max-width:380px;width:100%;justify-self:center;padding-left:37px;padding-bottom:27px;padding-right:13px}.experience-main{height:430px}.experience-inset{width:181px;left:1px;padding:9px 9px 4px}.experience-inset img{height:121px}.photo-year{right:-5px;font-size:7px}.packages{padding-block:63px 50px}.centered-heading{margin-bottom:33px}.section-spark{font-size:29px;margin-bottom:19px}.centered-heading .eyebrow{font-size:8px;letter-spacing:.14em;margin-bottom:19px}.centered-heading h2{font-size:43px;line-height:1.02}.centered-heading>p:last-child{font-size:12px;margin:19px auto 0;max-width:260px}.package-grid{grid-template-columns:1fr;gap:19px;max-width:430px;margin-inline:auto}.package-card{padding:25px 27px 28px}.package-topline{font-size:8px}.package-symbol{font-size:38px}.package-card h3{font-size:50px;margin-top:13px}.package-tagline{min-height:0;font-size:21px;margin-top:8px}.package-facts{margin-top:23px;margin-bottom:21px;font-size:8px;padding-block:14px;gap:17px}.package-facts>span+span:before{margin-right:17px}.package-card ul{font-size:12px;margin-bottom:22px}.package-card li{margin-bottom:8px}.package-card .button{font-size:9px;padding:15px 19px;min-height:49px}.package-card .button>span{font-size:19px}.package-price{font-size:10px}.packages-help{font-size:11px;margin:27px auto 0;max-width:300px;line-height:2}.packages-help .inline-link{margin-left:0}.memories{padding-top:15px;padding-bottom:32px}.memories-heading{padding-block:34px 26px;display:block}.memories-heading .eyebrow{font-size:9px;margin-bottom:17px}.memories-heading h2{font-size:45px}.memories-heading>p{font-size:11px;margin-top:18px}.memories-heading>p br{display:none}.memories-grid{grid-template-columns:1fr 1fr;padding-inline:10px;gap:10px}.memories-grid .photo-button{height:250px}.memories-grid .photo-button:nth-child(2){order:3}.memories-grid .photo-button:nth-child(2) img{object-position:55% center}.memories-grid .photo-button:nth-child(3){order:2}.memories-grid .photo-button:nth-child(4){order:4}.gallery-note{font-size:8px;gap:9px;margin-top:19px;flex-wrap:wrap;padding-inline:20px}.faq{padding-block:56px 59px;grid-template-columns:1fr;gap:29px}.faq-heading .eyebrow{font-size:9px;margin-bottom:19px}.faq-heading h2{font-size:47px}.faq-heading>p:last-child{font-size:12px;margin-top:20px}.faq-heading>p:last-child br{display:none}.faq-list summary{font-size:12px;padding-block:21px;gap:16px}.faq-answer{font-size:12px;padding-right:10px}.closing{margin-inline:10px;min-height:440px}.closing>img{object-position:48% center}.closing-overlay{background:#323829b8}.closing-content{padding:48px 17px}.closing .eyebrow{font-size:7px;letter-spacing:.12em;margin-bottom:25px}.closing h2{font-size:47px;line-height:1.04}.closing-content>p:not(.eyebrow){font-size:24px;margin-top:17px}.closing .button{font-size:8px;gap:18px;padding:16px 21px;margin-top:27px}.footer{padding-block:35px 20px}.footer-main{flex-direction:column;gap:25px;padding-bottom:25px}.footer-main .brand-name{font-size:33px}.footer-main>p{font-size:10px}.back-top{font-size:8px}.footer-bottom{flex-direction:column;gap:9px;text-align:center;font-size:8px;padding-top:21px}.footer-bottom>span:last-child{font-size:6px}.booking-dialog{padding:36px 25px 20px;max-height:calc(100svh - 30px)}.booking-dialog h2{font-size:44px}.booking-dialog .eyebrow{font-size:7px}.booking-message{font-size:11px}.booking-dialog select{font-size:11px}.lightbox{padding:60px 10px 90px}.lightbox figure{gap:14px}.lightbox figure img{max-height:calc(100svh - 190px)}.lightbox figcaption{font-size:11px}.lightbox-arrow{top:auto;bottom:22px;width:42px;height:42px;font-size:23px}.lightbox-prev{left:calc(50% - 94px)}.lightbox-next{right:calc(50% - 94px)}.lightbox-count{bottom:32px}.lightbox-close{top:9px;right:9px}.photo-expand{width:27px;height:27px;font-size:17px}}
@media(max-width:370px){.hero-content{padding-inline:11px}.hero h1{font-size:45px}.hero-eyebrow{font-size:6px;gap:7px}.hero-name{font-size:24px}.hero-description{font-size:11px}.hero .button{min-width:245px;font-size:8px}.hero-note{font-size:8px}.section-shell{width:calc(100% - 36px)}.section-intro h2,.faq-heading h2{font-size:43px}.centered-heading h2{font-size:39px}.experience h2{font-size:39px}.closing h2{font-size:42px}.memories-grid .photo-button{height:220px}.package-card{padding-inline:22px}.photo-story figcaption>em{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}.motion-ready .reveal{opacity:1;transform:none}}

/* Keep the complete opening section visible on shorter screens. */
@media (min-width:621px) and (max-height:760px){
  .header-inner{height:78px}
  .hero{height:calc(100svh - 78px);min-height:0}
  .hero-content{padding:18px 20px 36px 32px}
  .hero-eyebrow{margin-bottom:12px}
  .hero-name{font-size:23px;margin-bottom:10px}
  .hero h1{font-size:clamp(39px,min(4.2vw,9svh),62px)}
  .hero-description{margin-top:12px;font-size:12px;line-height:1.5}
  .hero .button{margin-top:14px;min-height:46px;padding-block:12px}
  .hero-note{margin-top:6px}
  .hero-discover{bottom:15px}
  .hero-edition{bottom:17px}
}
@media (max-width:620px) and (max-height:800px){
  .hero{height:calc(100svh - 79px);min-height:0;max-height:none}
  .hero-content{padding:24px 14px 46px}
  .hero-eyebrow{margin-bottom:12px}
  .hero-name{margin-bottom:10px}
  .hero h1{font-size:clamp(36px,min(10.5vw,7.4svh),52px)}
  .hero-description{margin-top:12px}
  .hero .button{margin-top:13px}
  .hero-note{margin-top:6px}
  .hero-discover,.hero-edition{bottom:12px}
}

/* Christmas palette: pine, candlelight and a small berry accent. */
:root{
  --cream:#f7f2e7;
  --paper:#fffaf0;
  --ink:#254336;
  --olive:#28503d;
  --olive-dark:#17392d;
  --muted:#657064;
  --gold:#bd9453;
  --line:#d9ceb6;
}
.site-header{background:rgba(246,243,236,.97);color:#454936}
.header-cta>span{border-color:#c5c5b6;color:inherit}
.button-olive{background:#214b39;border-color:#b79454;color:#fff7e8}
.button-olive:hover{background:#143b2c}
.button-outline{border-color:#66816b}
.hero{background:#d8c1a0;color:#454936}
.hero-shade{background:linear-gradient(90deg,rgba(248,239,218,.6),rgba(245,234,213,.52) 30%,rgba(238,225,201,.03) 66%)}
.hero .button-olive{background:#595c47;border-color:transparent;color:#faf8f2}
.hero .button-olive:hover{background:#414532}
.poetry-strip{width:100%;max-width:none;min-height:104px;padding:18px clamp(24px,7vw,110px);background:#1d3f31;color:#f7efdd;border-bottom:3px solid #b99555}
.poetry-strip i{color:#dcbd78}
.introduction .eyebrow,.packages .eyebrow,.memories .eyebrow,.faq .eyebrow{color:#8b6b3c}
.handwritten{color:#97713c}
.introduction{padding-bottom:42px}
.experience{background:#193d30}
.experience-notes span{color:#ddbf7c}
.package-card:first-child{background:#edf1e5;border-color:#c9d4be}
.package-card:nth-child(3){background:#f0e5cf;border-color:#dfca9e}
.package-featured{background:#214838;border-color:#c5a362;color:#fff7e8;box-shadow:0 18px 42px #1b3d2d1c}
.package-featured .package-symbol,.package-featured .package-price,.package-featured li strong{color:#f8edd1}
.package-featured ul,.package-featured .package-price,.package-featured .package-tagline{color:#f4ead8}
.package-featured .package-facts{border-color:#f5e6c263}
.package-featured li:before{color:#e6c175}
.package-featured .button-olive{background:#dfbd79;border-color:#dfbd79;color:#1d3d30}
.package-featured .button-olive:hover{background:#efcf8b}
.package-card li:before{color:#a68145}
.section-spark{color:#bb9151}
.memories{background:#e2e9dd}
.gallery-note span{color:#af8141}
.closing-overlay{background:linear-gradient(90deg,#153a30c9,#173c30a6 55%,#173c306e)}
.footer .brand-name{color:#28513d}

/* Full-size photographic chapters between the editorial sections. */
.photo-chapter{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-end;min-height:550px;height:min(86svh,760px);margin:12px 24px 38px;overflow:hidden;border-radius:26px;background:#1c3d31;color:#fff8e8}
.photo-chapter>img,.photo-chapter-shade{position:absolute;inset:0;width:100%;height:100%}
.photo-chapter>img{object-fit:cover;object-position:50% 43%;z-index:-2}
.photo-chapter-shade{z-index:-1;background:linear-gradient(90deg,#173b2b08 17%,#173b2b64 54%,#102f27e8 100%)}
.photo-chapter-content{position:relative;top:-14px;width:min(350px,32%);margin-right:clamp(54px,6vw,100px);padding-block:50px}
.photo-chapter .eyebrow,.album-chapter .eyebrow{color:#e7cf95;letter-spacing:.2em}
.photo-chapter .eyebrow:before,.album-chapter .eyebrow:before{content:"";display:inline-block;width:6px;height:6px;margin:0 11px 1px 0;border-radius:50%;background:#aa5f52}
.photo-chapter h2{font-size:clamp(55px,5.2vw,78px);line-height:.96;margin:28px 0 28px;color:#fff8e8}
.photo-chapter h2 em{color:#f2d9a5}
.photo-chapter-content>p:not(.eyebrow){max-width:375px;font-size:15px;line-height:1.85;color:#f4eee0}
.chapter-rule{display:block;width:68px;height:1px;background:#d4b474;margin:35px 0 19px}
.photo-chapter .chapter-caption{font-size:9px!important;letter-spacing:.2em;color:#e7cf95!important}

.album-chapter{display:grid;grid-template-columns:42% 58%;min-height:760px;margin:24px 24px 0;overflow:hidden;border-radius:26px;background:#1b4031;color:#fff7e7}
.album-chapter-photo{display:grid;place-items:center;overflow:hidden;background:#152f26}
.album-chapter-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 43%}
.album-chapter-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:65px clamp(46px,7vw,115px);border-left:1px solid #dbb97650}
.album-chapter-star{font-family:var(--serif);font-size:52px;color:#dfbc79;line-height:1;margin-bottom:33px}
.album-chapter h2{font-size:clamp(54px,5vw,78px);line-height:.98;margin:25px 0 26px;color:#fff7e7}
.album-chapter h2 em{color:#eacb91}
.album-chapter-copy>p:not(.eyebrow){max-width:400px;color:#e4e9da;font-size:14px;line-height:1.9}
.album-chapter .text-link{margin-top:35px;color:#f1d494;border-color:#b69557}
.album-chapter-footnote{margin-top:65px;font-size:9px;letter-spacing:.2em;color:#c3c9b2}
.photo-story .photo-button,.memories-grid .photo-button{border-radius:18px}
.experience-main{border-radius:20px}
.package-card{border-radius:20px}
.packages .button,.closing .button,.booking-dialog .button{border-radius:999px}
.faq-list{border-top:0}
.faq-list details{margin-bottom:10px;padding-inline:20px;border:1px solid var(--line);border-radius:14px;background:#fffaf0}
.closing{border-radius:26px}
.brand-logo-wordmark{position:relative;display:block;width:240px;height:25px;overflow:hidden}
.brand-logo-wordmark img{position:absolute;top:-162px;left:-10px;width:260px;height:auto;max-width:none}
.footer-logo-art{position:relative;display:block;width:210px;height:120px;overflow:hidden}
.footer-logo-art img{position:absolute;top:-45px;left:-10px;width:230px;height:auto;max-width:none}

@media (min-width:621px) and (max-width:850px){
  .hero-shade{background:linear-gradient(90deg,#f4ead8c9,#f4ead896 40%,#f4ead805 85%)}
}
@media (max-width:850px){
  .photo-chapter{margin-inline:16px}
  .photo-chapter-content{width:min(325px,42%);margin-right:38px}
  .photo-chapter h2{font-size:clamp(48px,6vw,65px)}
  .album-chapter{margin-inline:16px;grid-template-columns:50% 50%;min-height:620px}
  .album-chapter-copy{padding:45px 35px}
  .album-chapter h2{font-size:clamp(48px,6vw,62px)}
}
@media (max-width:620px){
  .poetry-strip{width:100%;padding:27px 22px}
  .hero-shade{background:linear-gradient(180deg,#f4ead888 0%,#f4ead880 28%,#f4ead88f 60%,#dac09e18 100%),linear-gradient(90deg,#f4ead880 0%,#f4ead838 100%)}
  .photo-chapter{min-height:690px;height:min(90svh,790px);margin:12px 10px 28px;align-items:flex-end;justify-content:center}
  .photo-chapter>img{object-position:48% center}
  .photo-chapter-shade{background:linear-gradient(180deg,#143d3022 12%,#143d3044 42%,#12372de8 71%,#12372d 100%)}
  .photo-chapter-content{width:100%;margin:0;padding:35px 27px 38px}
  .photo-chapter h2{font-size:clamp(48px,13vw,66px);margin:17px 0}
  .photo-chapter-content>p:not(.eyebrow){font-size:13px;line-height:1.65}
  .chapter-rule{margin:19px 0 12px}
  .photo-chapter .chapter-caption{font-size:8px!important}
  .album-chapter{display:block;margin:16px 10px 0}
  .album-chapter-photo{height:auto}
  .album-chapter-photo>img{width:100%;height:auto;object-fit:initial}
  .album-chapter-copy{padding:46px 30px 54px;border-left:0;border-top:1px solid #dbb97650}
  .album-chapter-star{margin-bottom:25px}
  .album-chapter h2{font-size:clamp(50px,12vw,65px);margin:18px 0}
  .album-chapter-copy>p:not(.eyebrow){font-size:13px}
  .album-chapter .text-link{margin-top:25px}
  .album-chapter-footnote{margin-top:43px}
  .brand-logo-wordmark{width:220px;height:24px}
  .brand-logo-wordmark img{top:-150px;left:-10px;width:240px}
}
@media (max-width:370px){
  .brand-logo-wordmark{width:205px;height:22px}
  .brand-logo-wordmark img{top:-140px;width:225px}
}
@media (max-width:620px){
  .hero-image{object-position:78% center}
}

/* The opening image fills the visible screen below the navigation. */
.hero{--hero-header-height:102px;width:100%;height:calc(100svh - var(--hero-header-height));min-height:0;max-height:none;margin:0}
@media (max-width:850px){
  .hero{--hero-header-height:88px}
}
@media (max-width:620px){
  .hero{--hero-header-height:79px}
}
@media (min-width:621px) and (max-height:760px){
  .hero{--hero-header-height:78px}
}

/* Keep the opening words airy while giving them a little more scale. */
.hero h1{
  font-family:var(--serif);
  font-weight:400;
  font-size:clamp(53px,5.6vw,82px);
  line-height:1.01;
  letter-spacing:-.045em;
}
@media (min-width:621px) and (max-height:760px){
  .hero h1{font-size:clamp(42px,min(4.7vw,9.8svh),69px)}
}
@media (max-width:620px){
  .hero-content{padding-inline:4px}
  .hero h1{width:100%;font-size:clamp(42px,13.4vw,73px);line-height:1.3;letter-spacing:0}
  .hero-description{width:min(100%,370px);max-width:none}
  .hero-description .desktop-break{display:none}
}
@media (max-width:620px) and (max-height:800px){
  .hero h1{font-size:clamp(45px,min(13.2vw,9.3svh),64px)}
}
@media (max-width:370px){
  .hero h1{font-size:42px}
}

/* Give supporting copy a more comfortable reading size. */
.desktop-nav{font-size:14px}
.header-cta{font-size:12px}
.brand-subtitle{font-size:10px}
.eyebrow,
.experience .eyebrow,
.section-intro .eyebrow,
.centered-heading .eyebrow,
.memories-heading .eyebrow,
.faq-heading .eyebrow,
.closing .eyebrow,
.booking-dialog .eyebrow{font-size:13px}
.button{font-size:12px}
.hero-eyebrow{font-size:12px}
.hero-description{font-size:15px}
.hero-note{font-size:13px}
.hero-discover,.hero-edition{font-size:12px}
.photo-story figcaption>span,
.photo-year,
.package-topline,
.package-facts{font-size:12px}
.photo-chapter .chapter-caption{font-size:11px!important}
.album-chapter-footnote{font-size:12px}
.experience-notes p{font-size:14px}
.text-link,.experience .text-link{font-size:12px}
.package-card .button,.closing .button,.booking-dialog .button{font-size:12px}
.package-price,.gallery-note,.footer-main>p{font-size:13px}
.back-top{font-size:12px}
.footer-bottom{font-size:11px}
.footer-bottom>span:last-child{font-size:10px}
.booking-dialog label,.booking-hint,.lightbox-count{font-size:12px}
.intro-copy,.experience-copy>p:not(.eyebrow),.centered-heading>p:last-child{font-size:15px}
.album-chapter-copy>p:not(.eyebrow){font-size:16px}
.memories-heading>p,.packages-help{font-size:14px}
.package-card ul{font-size:14px}
.feature-detail,.booking-summary,.booking-status{font-size:13px}
.booking-intro,.booking-message,.booking-dialog select,.lightbox figcaption{font-size:14px}
@media (max-width:620px){
  .hero-eyebrow{font-size:10px}
  .hero-discover,.hero-edition{font-size:10px}
  .hero-description{font-size:14px}
  .hero .button{font-size:11px}
  .photo-story figcaption>span{font-size:11px}
  .photo-year{font-size:10px}
  .package-facts{font-size:11px}
  .photo-chapter-content>p:not(.eyebrow){font-size:15px}
  .album-chapter-copy>p:not(.eyebrow){font-size:15px}
  .footer-bottom>span:last-child{font-size:9px}
}
@media (max-width:370px){
  .hero-eyebrow{font-size:9px}
  .hero .button{font-size:10px}
}

/* Current package prices and the new lot overview. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.package-price.has-price{display:flex;flex-direction:column;gap:5px;font-size:inherit;line-height:1.2;margin:19px 0 0}
.package-price .price-kicker{font-family:var(--sans);font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.12em;color:#777866}
.package-price strong{font-family:var(--sans);font-size:33px;font-weight:500;line-height:1.1;letter-spacing:-.045em;color:var(--ink)}
.package-card .package-facts{margin-top:21px}
.package-featured .price-kicker{color:#ddd7be}
.package-featured .package-price strong{color:#fff4d9}
.lots-jump{display:flex;align-items:center;justify-content:center;gap:15px;width:max-content;max-width:100%;margin:38px auto 0;padding-bottom:8px;border-bottom:1px solid #92957d;font-size:13px;font-weight:500;letter-spacing:.1em;line-height:1.5}
.lots-jump span{font-size:18px;line-height:1}
.packages-help{margin-top:19px}
.lots{min-height:650px;padding:100px 0 105px;background:#eeeade;color:#3f4336;display:flex;align-items:center}
.lots-inner{width:min(1320px,calc(100% - 112px));margin-inline:auto;display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.35fr);align-items:center;gap:clamp(56px,7vw,115px)}
.lots-copy .eyebrow{color:#6b745d;margin-bottom:25px}
.lots-copy h2{font-size:clamp(52px,4.9vw,73px);line-height:.98;letter-spacing:-.04em}
.lots-copy h2 em{color:#68745d}
.lots-copy>p:not(.eyebrow){max-width:410px;margin-top:25px;font-size:17px;line-height:1.75;color:#66695d}
.lots-cta{margin-top:30px;border-radius:999px;font-size:12px}
.lots-table{width:100%;border-collapse:separate;border-spacing:0;text-align:left;table-layout:fixed}
.lots-table thead th{padding:0 16px 17px;font-size:12px;font-weight:600;letter-spacing:.13em;color:#65705b}
.lots-table thead th:first-child{width:26%}
.lots-table tbody th,.lots-table tbody td{padding:24px 16px;font-size:16px;line-height:1.25}
.lots-table tbody th{font-weight:500}
.lots-table tbody td{font-family:var(--sans);font-size:18px;font-weight:500;letter-spacing:-.025em;white-space:nowrap}
.lots-table tbody tr:not(.lot-current)>*{border-bottom:1px solid #d3d2c5}
.lots-table .lot-current{background:#dfe4d6}
.lots-table .lot-current>*{font-weight:600}
.lots-table .lot-current>*:first-child{border-radius:16px 0 0 16px}
.lots-table .lot-current>*:last-child{border-radius:0 16px 16px 0}
.lots-table small{display:block;margin-top:6px;font-size:10px;font-weight:600;letter-spacing:.12em;color:#6b735c}
.lots-footnote{margin:21px 16px 0;font-size:13px;line-height:1.5;color:#75796b}
@media (max-width:1050px){
  .lots-inner{width:calc(100% - 80px);gap:45px;grid-template-columns:minmax(250px,.78fr) minmax(0,1.25fr)}
  .lots-copy h2{font-size:clamp(48px,5vw,60px)}
  .lots-table thead th,.lots-table tbody th,.lots-table tbody td{padding-inline:11px}
}
@media (max-width:850px){
  .lots{min-height:0;padding:78px 0 84px}
  .lots-inner{width:calc(100% - 64px);grid-template-columns:1fr;gap:45px}
  .lots-copy>p:not(.eyebrow){max-width:620px}
}
@media (max-width:620px){
  .package-price strong{font-size:32px}
  .lots-jump{font-size:11px;text-align:center;gap:10px;margin-top:32px}
  .lots{padding:68px 0 74px}
  .lots-inner{width:calc(100% - 44px);gap:35px}
  .lots-copy h2{font-size:clamp(47px,11vw,58px)}
  .lots-copy>p:not(.eyebrow){font-size:15px;line-height:1.7;margin-top:20px}
  .lots-cta{margin-top:24px;font-size:11px}
  .lots-table,.lots-table tbody{display:block;width:100%}
  .lots-table thead{display:none}
  .lots-table tbody{display:grid;gap:14px}
  .lots-table tbody tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:20px 15px;border:1px solid #d3d2c5;border-radius:18px;background:#f7f4eb}
  .lots-table tbody tr.lot-current{background:#dfe4d6;border-color:#c6d0bd}
  .lots-table tbody th{grid-column:1/-1;padding:0 4px 15px;font-size:18px}
  .lots-table tbody td{display:flex;flex-direction:column;gap:5px;padding:0 4px;font-size:15px;white-space:nowrap}
  .lots-table tbody td:before{content:attr(data-label);font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.04em;color:#6c7463}
  .lots-table tbody tr:not(.lot-current)>*{border-bottom:0}
  .lots-table .lot-current>*:first-child,.lots-table .lot-current>*:last-child{border-radius:0}
  .lots-footnote{margin:18px 4px 0;font-size:12px}
}

.whatsapp-float{position:fixed;right:18px;bottom:max(18px,env(safe-area-inset-bottom));z-index:25;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:6px 12px 6px 9px;border:1px solid #d3c89d;border-radius:999px;background:#25543f;color:#fffaf0;box-shadow:0 6px 18px #18291e29;font-size:9px;font-weight:600;letter-spacing:.08em;line-height:1.3;transition:transform .2s,background .2s,box-shadow .2s}
.whatsapp-float:hover{background:#1c4231;transform:translateY(-2px);box-shadow:0 13px 30px #18291e40}
.whatsapp-float svg{width:19px;height:19px;flex:none}
@media (max-width:620px){
  .whatsapp-float{right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:40px;height:40px;min-height:0;padding:0}
  .whatsapp-float svg{width:22px;height:22px}
  .whatsapp-float span{display:none}
}

.booking-dialog label{margin-bottom:10px;color:#536a54;font-weight:600;letter-spacing:.13em}
.booking-choice{text-align:left}
.booking-choice-trigger{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  min-height:60px;
  padding:13px 18px 13px 19px;
  border:1px solid #bdc9b6;
  border-radius:16px;
  background:#f7f6ef;
  box-shadow:0 6px 18px #243b2910,inset 0 1px #fff;
  color:#294634;
  font-size:14px;
  font-weight:500;
  line-height:1.4;
  text-align:left;
  transition:border-color .2s,box-shadow .2s,background-color .2s;
}
.booking-choice-trigger:hover{border-color:#849b82;background:#fbfaf5}
.booking-choice-trigger:focus-visible{outline:2px solid #b79758;outline-offset:3px;border-color:#789477;box-shadow:0 6px 20px #243b2920}
.booking-choice-chevron{display:grid;place-items:center;flex:none;width:36px;height:27px;border-left:1px solid #d6dece;color:#4b6652}
.booking-choice-chevron svg{width:18px;height:18px;transition:transform .2s}
.booking-choice-trigger[aria-expanded="true"] .booking-choice-chevron svg{transform:rotate(180deg)}
.booking-choice-list{display:grid;gap:4px;max-height:290px;overflow:auto;margin-top:8px;padding:7px;border:1px solid #d3d9cd;border-radius:16px;background:#fffdf7;box-shadow:0 13px 30px #26392917}
.booking-choice-option{position:relative;display:block;width:100%;padding:10px 39px 10px 13px;border:1px solid transparent;border-radius:11px;background:transparent;color:#314b38;text-align:left;line-height:1.4;transition:background .2s,border-color .2s}
.booking-choice-option:hover,.booking-choice-option:focus-visible{background:#f1f2e9;border-color:#dce4d6}
.booking-choice-option:focus-visible{outline:2px solid #b79758;outline-offset:-2px}
.booking-choice-option[aria-selected="true"]{background:#e7eddf;border-color:#cbd8c5}
.booking-choice-option[aria-selected="true"]::after{content:'✓';position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#3e694c;font-size:17px}
.option-title{display:block;font-size:14px;font-weight:600}
.option-description{display:block;margin-top:2px;color:#788477;font-size:12px}
@media (max-width:620px){
  .booking-choice-trigger{min-height:56px;padding-inline:15px;font-size:13px}
  .booking-choice-option{padding-block:9px}
}

.arrow-icon{display:block;width:1em;height:1em;flex:none}
.lightbox-arrow{display:grid;place-items:center}
.lightbox-arrow .arrow-icon{width:24px;height:24px}
@media (max-width:620px){.lightbox-arrow .arrow-icon{width:21px;height:21px}}

.faq-chapter{margin-block:clamp(48px,6vw,88px);padding:clamp(80px,8vw,122px) 0;background:#204635;color:#f8f3e7}
.faq-chapter-inner{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.22fr);align-items:start;gap:clamp(48px,6vw,105px)}
.faq-chapter-intro{position:sticky;top:140px;padding-top:11px}
.faq-chapter-intro .eyebrow{color:#e4c994;font-size:12px;margin-bottom:29px}
.faq-chapter-intro h2{font-size:clamp(50px,5.1vw,74px);line-height:1.04;letter-spacing:-.045em}
.faq-chapter-intro h2 em{color:#e3c88f}
.faq-chapter-intro>p:not(.eyebrow){max-width:390px;margin-top:28px;color:#e0e4d8;font-size:16px;line-height:1.75}
.faq-chapter-note{display:block;width:max-content;max-width:100%;margin-top:43px;padding-top:18px;border-top:1px solid #e8d9b766;color:#e9d7ad;font-size:10px;font-weight:500;letter-spacing:.15em;line-height:1.6}
.faq-chapter-list{padding:13px 37px;border:1px solid #ddd9c8;border-radius:27px;background:#f8f5eb;color:#344639;box-shadow:0 24px 50px #0f251b25}
.faq-item{border-bottom:1px solid #dadbcf}
.faq-item:last-child{border-bottom:0}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:68px;padding:18px 0;list-style:none;cursor:pointer;font-size:16px;font-weight:500;line-height:1.45;transition:color .2s}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover,.faq-item[open] summary{color:#25583b}
.faq-toggle{position:relative;display:grid;place-items:center;flex:none;width:30px;height:30px;border:1px solid #bbc9b5;border-radius:50%;background:#ecf0e7;color:#43694d}
.faq-toggle::before,.faq-toggle::after{content:'';position:absolute;width:12px;height:1.5px;border-radius:2px;background:currentColor;transition:transform .2s,opacity .2s}
.faq-toggle::after{transform:rotate(90deg)}
.faq-item[open] .faq-toggle::after{opacity:0;transform:rotate(0)}
.faq-chapter .faq-answer{padding:0 47px 23px 0;color:#5f6a5e;font-size:14px;line-height:1.75;animation:fade-in .25s}
.faq-chapter .faq-answer p+p{margin-top:13px}
@media (max-width:850px){
  .faq-chapter{padding:76px 0 82px}
  .faq-chapter-inner{grid-template-columns:1fr;gap:36px}
  .faq-chapter-intro{position:static;padding-top:0}
  .faq-chapter-intro h2{max-width:640px;font-size:clamp(46px,7vw,62px)}
  .faq-chapter-note{margin-top:27px}
}
@media (max-width:620px){
  .faq-chapter{margin-block:38px;padding:63px 0 68px}
  .faq-chapter-inner{width:calc(100% - 36px);gap:29px}
  .faq-chapter-intro{padding-inline:4px}
  .faq-chapter-intro .eyebrow{font-size:10px;margin-bottom:19px}
  .faq-chapter-intro h2{font-size:clamp(42px,11vw,52px)}
  .faq-chapter-intro>p:not(.eyebrow){margin-top:18px;font-size:14px}
  .faq-chapter-note{margin-top:25px;font-size:9px}
  .faq-chapter-list{padding:7px 19px;border-radius:22px}
  .faq-item summary{min-height:64px;gap:15px;padding:17px 0;font-size:14px}
  .faq-toggle{width:27px;height:27px}
  .faq-chapter .faq-answer{padding:0 34px 19px 0;font-size:13px}
}
