:root{--ink:#292723;--muted:#77736c;--cream:#f8f6f1;--paper:#fffdfa;--line:#dedad2;--brown:#827361;--sage:#8a9480;--accent:#e9e2d7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.wrap{width:min(1380px,calc(100% - 112px));margin:auto}.demo-bar{background:#31322c;color:#f4f1ea;text-align:center;font-size:11px;letter-spacing:.035em;padding:7px 16px}.demo-bar span{padding:0 9px;color:#b9ae9c}.header{background:rgba(255,253,250,.97);position:relative;z-index:10}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{display:inline-flex;align-items:center;gap:10px;line-height:1;font-family:Manrope,sans-serif;font-size:18px;letter-spacing:.12em;white-space:nowrap}.logo b{font-weight:400}.logo small{display:block;font-family:'DM Sans',sans-serif;font-size:7px;letter-spacing:.25em;margin-top:7px;color:#8e8981}.logo-star{font-size:31px;color:#8c907b}.nav-links{display:flex;align-items:center;gap:34px;font-size:12px;font-weight:600}.nav-links a:hover,.text-link:hover,.under-link:hover{color:#8b705f}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;border:1px solid transparent;padding:16px 21px;font-size:11px;font-weight:700;letter-spacing:.055em;transition:background .2s,color .2s;min-height:50px}.btn span{font-size:15px;font-weight:400}.btn-dark{background:#292a24;color:white}.btn-dark:hover{background:#55584a}.nav-cta{padding:13px 18px;min-height:43px}.menu-toggle{display:none}.hero{height:620px;min-height:570px;position:relative;background:#e7e1d6;overflow:hidden}.hero-photo{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(245,242,235,.99) 0%,rgba(245,242,235,.91) 31%,rgba(245,242,235,.12) 67%),url('assets/hero.png'),url('https://images.unsplash.com/photo-1604654894610-df63bc536371?auto=format&fit=crop&w=1800&q=85');background-size:cover;background-position:center}.hero-inner{height:100%;position:relative;display:flex;align-items:center}.hero-content{width:56%;padding-bottom:10px}.eyebrow{font-family:Manrope,sans-serif;font-weight:700;font-size:10px;letter-spacing:.17em;color:#837a6d;margin:0 0 22px;text-transform:uppercase}.eyebrow .sparkle{font-size:15px;margin-right:7px}.eyebrow .rule{display:inline-block;width:31px;height:1px;background:#a7a094;vertical-align:middle;margin:0 10px}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;letter-spacing:-.045em;font-weight:400;line-height:1.07}.hero h1{font-size:clamp(64px,6.2vw,95px);margin:0 0 22px}.hero h1 em,h2 em{font-weight:400;color:#887967}.hero-content>p{font-size:15px;color:#6a655d;max-width:355px;margin:0 0 31px}.hero-actions{display:flex;align-items:center;gap:30px}.text-link,.under-link{font-size:11px;font-weight:700;letter-spacing:.04em;border-bottom:1px solid #81776b;padding-bottom:6px;display:inline-flex;gap:22px;align-items:center}.hero-foot{margin-top:56px;display:flex;align-items:center;gap:10px;font-size:8px;letter-spacing:.13em;color:#9a9285}.hero-foot b{font-weight:600;color:#746f66}.tiny-icon{font-size:24px;color:#9b9a83}.hero-side{position:absolute;right:28px;bottom:42px;writing-mode:vertical-rl;font-size:9px;letter-spacing:.22em;color:#6e675f}.ticker{background:#dfd8cc}.ticker-inner{height:49px;display:flex;align-items:center;justify-content:space-around;gap:20px;font-size:9px;font-weight:700;letter-spacing:.17em}.ticker i{font-size:16px;font-style:normal;color:#8b8d78}.intro,.gallery,.contact{padding-top:98px;padding-bottom:105px}.section-label{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px;font-size:9px;font-weight:700;letter-spacing:.16em;color:#8b8479}.section-label i{font-style:normal;font-size:18px;color:#9c9a88}.intro-content{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:63px}.intro h2,.section-head h2,.price-intro h2,.contact-heading h2,.feature h2{font-size:clamp(42px,4.2vw,62px);margin:0}.intro-copy{max-width:470px;color:#747067;font-size:14px}.intro-copy p{margin:0 0 17px}.intro-copy .under-link{color:#2e2c28;margin-top:12px}.services{background:#f1eee8;padding:91px 0 87px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:60px 0 42px}.section-head>p{max-width:325px;color:#79746c;font-size:13px;margin:0 0 5px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid #dcd7ce}.service-card{border:1px solid #dcd7ce;border-left:0;min-height:270px;padding:20px 22px 21px;background:rgba(255,255,255,.18);display:flex;flex-direction:column;transition:background .2s}.service-card:hover{background:#faf8f3}.service-no{display:flex;justify-content:space-between;font-size:10px;color:#9b958c}.service-no span{font-size:15px}.service-icon{font-size:28px;color:#9a9a86;margin:18px 0 10px}.service-card h3,.price-row h3,.contact-col h3{font-family:'Playfair Display',Georgia,serif;font-size:23px;font-weight:400;margin:0 0 7px}.service-card p{font-size:12px;color:#817b72;margin:0 0 22px;max-width:235px}.service-card a{font-size:10px;font-weight:700;margin-top:auto}.service-card a span{margin-left:12px}.services-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:24px;font-size:11px;color:#8b857b}.button-link{border:0;background:none;color:#2e2c28;border-bottom:1px solid #81776b;padding:0 0 4px}.gallery-head{align-items:end}.gallery-head h2{font-size:clamp(39px,3.8vw,57px)}.gallery-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:15px}.gallery-item{position:relative;margin:0;background:#eae5dc;height:400px;overflow:hidden}.gallery-item img{transition:transform .5s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(23,22,20,.45));pointer-events:none}.gallery-item figcaption{position:absolute;z-index:1;left:19px;right:19px;bottom:17px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:9px;font-weight:700;letter-spacing:.12em}.gallery-item figcaption span{font-size:12px}.gallery-bottom{display:flex;justify-content:space-between;margin-top:20px;font-size:9px;letter-spacing:.14em;color:#9b9489}.gallery-bottom span:nth-child(2){font-size:18px}.price-section{background:#eee9df;padding:90px 0 105px}.price-layout{display:grid;grid-template-columns:.9fr 1fr;gap:15%;padding-top:72px}.price-intro>p:not(.eyebrow){max-width:330px;font-size:14px;color:#7b756c;margin:25px 0 29px}.price-note{margin-top:30px;color:#9b8f80;font-size:10px}.price-header{display:flex;justify-content:space-between;border-bottom:1px solid #cfc8bd;color:#8e867a;font-size:9px;font-weight:700;letter-spacing:.15em;padding-bottom:15px}.price-row{display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid #d8d1c7;padding:18px 0}.price-row h3{font-size:20px;margin:0 0 3px}.price-row p{font-size:11px;color:#8e877d;margin:0}.price-value{display:flex;flex-direction:column;align-items:end;white-space:nowrap}.price-value small{color:#9b9286;font-size:10px}.price-value strong{font-size:12px;font-weight:700}.price-disclaimer{color:#938a7f;font-size:10px;line-height:1.6;margin-top:18px}.feature{display:grid;grid-template-columns:1fr 1fr;min-height:460px}.feature-image{background:linear-gradient(0deg,rgba(70,55,43,.12),rgba(70,55,43,.12)),url('https://images.unsplash.com/photo-1604654894610-df63bc536371?auto=format&fit=crop&w=1200&q=85') center 48%/cover}.feature-copy{background:#777f6e;color:#fff;padding:70px max(65px,9vw);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.feature-sparkle{font-size:26px;color:#e0e1d6}.feature-copy .eyebrow{color:#e2e4dc;margin:22px 0}.feature h2{font-size:clamp(37px,3.6vw,54px)}.feature h2 em{color:#e5dfd4}.feature-copy>p:not(.eyebrow){font-size:13px;color:#eeeee9;max-width:330px;margin:22px 0 28px}.btn-light{background:#f9f8f3;color:#31332e}.btn-light:hover{background:#e0ddd4}.contact{padding-bottom:90px}.contact-heading{text-align:center;padding:68px 0 52px}.contact-heading>p:last-child{font-size:13px;color:#827b72;margin-top:20px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.contact-col{padding:28px 38px 34px;border-right:1px solid var(--line);min-height:190px}.contact-col:first-child{padding-left:0}.contact-col:last-child{border:0}.contact-no{font-size:10px;color:#a9a296}.contact-col h3{font-size:22px;margin:13px 0 10px}.contact-col p{font-size:12px;line-height:1.9;color:#79736b;margin:0}.contact-col p b{font-weight:500;color:#48443e}.contact-col small{font-size:10px;color:#a29b90;display:block;margin-top:7px}.contact-action{background:#f2eee7;padding:25px 30px;display:flex;align-items:center;justify-content:space-between;margin-top:30px;gap:20px}.contact-action>div{display:flex;align-items:center;gap:18px}.contact-action>div>span{font-size:27px;color:#8d927e}.contact-action p{font-family:'Playfair Display',serif;font-size:18px;line-height:1.3;margin:0}.contact-action small{font-family:'DM Sans',sans-serif;font-size:11px;color:#8c857a}footer{background:#282a24;color:#e9e7df}.footer-main{padding-top:50px;padding-bottom:50px;display:flex;align-items:center;gap:15%;position:relative}.footer-logo{color:#fff}.footer-main>p{font-size:11px;color:#aaa99f;margin:0}.back-top{margin-left:auto;font-size:9px;letter-spacing:.14em}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:18px;padding-bottom:18px;border-top:1px solid #494a42;color:#999a90;font-size:9px;letter-spacing:.09em}.booking{width:min(560px,calc(100% - 32px));max-height:90dvh;border:0;padding:35px;background:#fffdfa;color:var(--ink);box-shadow:0 24px 90px #1f1b18a6}.booking::backdrop{background:rgba(31,28,23,.66)}.booking-top{display:flex;justify-content:space-between;gap:20px;align-items:start}.booking h2{font-size:43px;margin:0}.booking .eyebrow{margin-bottom:12px}.close{border:0;background:none;font-size:32px;color:#6b665d;line-height:1}.modal-intro{font-size:13px;color:#787269}.booking form{display:grid;gap:13px;margin-top:22px}.booking label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700}.booking label span{font-weight:400;color:#9b9388}.booking input,.booking select,.booking textarea{border:1px solid #dad4c9;background:white;padding:11px 12px;font-size:13px;color:#38352f;width:100%;outline-color:#898f7c}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-submit{width:100%;margin-top:4px}.modal-note{font-size:11px;color:#827b70;margin:0;text-align:center}.confirmation{text-align:center;padding:24px 0 0}.confirmation>span{font-size:35px;color:#888f7c}.confirmation h3{font-family:'Playfair Display',serif;font-weight:400;font-size:25px}.confirmation p{font-size:13px;color:#777167}.confirmation .btn{margin-top:10px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a08b70;outline-offset:3px}@media(max-width:900px){.wrap{width:calc(100% - 64px)}.nav-links{gap:17px}.hero{height:580px}.hero-content{width:68%}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card:nth-child(n+3){border-top:0}.gallery-item{height:310px}.price-layout{gap:8%}.feature-copy{padding:55px}.contact-col{padding:25px 20px}}@media(max-width:680px){.wrap{width:calc(100% - 38px)}.demo-bar{font-size:9px}.nav{height:70px}.logo{font-size:15px}.logo-star{font-size:26px}.menu-toggle{display:grid;gap:5px;border:0;background:none;padding:10px}.menu-toggle span{width:23px;height:1px;background:#282823}.nav-links{display:none;position:absolute;left:0;right:0;top:70px;background:#fffdfa;padding:20px;box-shadow:0 12px 20px #00000012;align-items:stretch;flex-direction:column;gap:0}.nav-links.open{display:flex}.nav-links a{padding:10px 0;border-bottom:1px solid #eee}.nav-cta{margin-top:18px}.hero{height:690px;min-height:0}.hero-photo{background-image:linear-gradient(90deg,rgba(245,242,235,.97) 0%,rgba(245,242,235,.76) 55%,rgba(245,242,235,.16) 100%),url('assets/hero.png'),url('https://images.unsplash.com/photo-1604654894610-df63bc536371?auto=format&fit=crop&w=1200&q=85');background-position:58% center}.hero-content{width:100%;padding-bottom:0}.hero h1{font-size:clamp(60px,16vw,78px)}.hero-content>p{max-width:270px}.hero-actions{gap:19px;flex-wrap:wrap}.hero-foot{margin-top:48px}.hero-side{right:12px}.ticker-inner{justify-content:flex-start;overflow:hidden;white-space:nowrap;font-size:8px;gap:20px}.intro,.gallery,.contact{padding-top:66px;padding-bottom:70px}.intro-content{grid-template-columns:1fr;gap:20px;padding-top:40px}.intro-copy{font-size:13px}.services,.price-section{padding:66px 0}.section-head{display:block;padding:43px 0 26px}.section-head>p{margin-top:19px}.service-card{padding:16px;min-height:255px}.service-card h3{font-size:21px}.service-card p{font-size:11px}.services-bottom{align-items:start;flex-direction:column}.gallery-grid{grid-template-columns:1fr 1fr;gap:9px}.gallery-item{height:230px}.gallery-item.tall{grid-column:1/-1;height:320px}.gallery-item figcaption{font-size:8px;left:11px;right:11px}.gallery-bottom{font-size:8px}.gallery-bottom span:last-child{display:none}.price-layout{grid-template-columns:1fr;gap:42px;padding-top:45px}.price-intro>p:not(.eyebrow){margin:18px 0 24px}.price-row h3{font-size:19px}.feature{grid-template-columns:1fr}.feature-image{min-height:270px}.feature-copy{padding:52px 24px 60px}.contact-heading{padding:48px 0 36px}.contact-grid{grid-template-columns:1fr}.contact-col,.contact-col:first-child{padding:22px 0;border:0;border-bottom:1px solid var(--line);min-height:0}.contact-col:last-child{border:0}.contact-action{align-items:flex-start;flex-direction:column}.contact-action .btn{width:100%}.footer-main{align-items:flex-start;flex-direction:column;gap:24px;padding-top:38px;padding-bottom:35px}.back-top{position:absolute;right:0;top:40px}.footer-bottom{flex-direction:column;gap:7px}.form-row{grid-template-columns:1fr}.booking{padding:25px}.booking h2{font-size:36px}}
:root{--image-update:true}
.visual-story{display:grid;grid-template-columns:1.05fr .95fr;min-height:420px;margin-top:-38px;margin-bottom:90px;background:#eeeae2}
.story-photo{position:relative;min-height:420px;overflow:hidden}.story-photo img{position:absolute;inset:0;object-position:center 58%}.story-badge{position:absolute;bottom:24px;left:24px;background:#fffdf9;color:#625d54;font-size:9px;line-height:1.6;letter-spacing:.14em;padding:15px 18px}
.story-note{padding:60px 12%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.story-note h2{font-size:clamp(38px,3.9vw,58px);margin:0}.story-note>p:not(.eyebrow){font-size:13px;color:#777168;max-width:330px;margin:22px 0}.story-note .under-link{margin-top:6px}
.gallery-grid{grid-template-columns:1.15fr 1fr 1fr 1fr}.gallery-item{height:360px}
@media(max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item{height:320px}.visual-story{min-height:350px}.story-photo{min-height:350px}.story-note{padding:42px 9%}}
@media(max-width:680px){.visual-story{grid-template-columns:1fr;margin-top:-30px;margin-bottom:60px}.story-photo{min-height:320px}.story-note{padding:38px 24px 45px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item{height:220px}.gallery-item.tall{grid-column:auto;height:220px}}
