*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f0e8;color:#211d18;font-family:'DM Sans',sans-serif;line-height:1.65}a{text-decoration:none;color:inherit}.shell{width:min(1160px,90%);margin:auto}.site-header{height:82px;background:#f4f0e8;border-bottom:1px solid #d8d1c4;position:relative;z-index:20}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:600;letter-spacing:.13em;font-size:20px;display:flex;flex-direction:column;line-height:1}.brand span{font-size:8px;letter-spacing:.35em;margin-top:6px;color:#8c4e3c}.light{color:#f4f0e8}.menu-btn{display:none;background:none;border:0;font-size:24px}nav{display:flex;align-items:center;gap:30px}nav a{font-size:13px;color:#605a52}nav a.active{color:#211d18;font-weight:600}.nav-cta{padding:12px 18px;border:1px solid #211d18;color:#211d18!important}.active-nav{background:#211d18;color:#fff!important}.kicker{font-size:10px;letter-spacing:.22em;font-weight:600;color:#8c4e3c;margin:0 0 18px}.hero{min-height:700px;position:relative;overflow:hidden;background:#c8b5a1}.hero-image{position:absolute;inset:0;background:linear-gradient(90deg,rgba(29,24,19,.63),rgba(29,24,19,.08)),linear-gradient(135deg,#8c6e59,#cbb9a7 55%,#675449)}.hero-copy{position:relative;color:#f8f4ec;padding-top:145px}.hero-copy .kicker{color:#d8b2a1}.hero h1{font:500 clamp(70px,10vw,126px)/.86 'Playfair Display',serif;letter-spacing:-.045em;margin:0 0 30px}.hero h1 i,.inner-hero h1 i,.booking-intro h1 i{font-weight:500}.hero-text{max-width:420px;font-size:16px;color:#eee6dc;margin-bottom:35px}.outline-btn,.dark-btn{display:inline-flex;align-items:center;gap:25px;padding:14px 20px;border:1px solid currentColor;font-size:13px;font-weight:600}.outline-btn{color:#fff}.hero-stamp{position:absolute;right:6%;bottom:55px;border:1px solid rgba(255,255,255,.6);border-radius:50%;width:86px;height:86px;display:grid;place-items:center;text-align:center;color:#fff;font-size:10px;letter-spacing:.15em;line-height:1.3}.manifesto{display:grid;grid-template-columns:1fr 2fr;gap:100px;padding:130px 0}.manifesto h2,.feature-copy h2,.services-home h2,.booking-banner h2{font:500 clamp(46px,6vw,72px)/.98 'Playfair Display',serif;margin:0 0 28px;letter-spacing:-.03em}.manifesto p{max-width:520px;color:#71695f}.under-link{display:inline-block;border-bottom:1px solid #211d18;margin-top:18px;padding-bottom:4px;font-size:13px;font-weight:600}.feature{display:grid;grid-template-columns:1fr 1fr;background:#ddd5c7}.feature-photo{min-height:620px}.photo-one{background:linear-gradient(145deg,#bba58e,#71594a 70%,#d5c5b2)}.feature-copy{padding:100px 10%;align-self:center}.feature-copy>p:not(.kicker){max-width:450px;color:#655e55}.number-list{margin-top:45px;border-top:1px solid #b9ae9f}.number-list div{display:flex;gap:35px;padding:18px 0;border-bottom:1px solid #b9ae9f;font-size:13px}.number-list b{color:#8c4e3c}.number-list span{font-weight:500}.services-home{padding:130px 0}.topline{display:flex;justify-content:space-between;align-items:center}.topline .under-link{margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cfc6b8}.service-grid a{padding:30px 25px 45px;border-right:1px solid #cfc6b8;transition:.3s}.service-grid a:first-child{border-left:1px solid #cfc6b8}.service-grid a:hover{background:#e5ddd0;transform:translateY(-4px)}.service-grid span{font-size:11px;color:#8c4e3c}.service-grid h3{font:500 30px 'Playfair Display',serif;margin:60px 0 8px}.service-grid p{color:#746d64;font-size:13px;margin:0 0 30px}.service-grid strong{font-size:12px}.quote{background:#211d18;color:#f4f0e8;padding:120px 0}.quote span{font:100px 'Playfair Display',serif;line-height:.5;color:#8c4e3c}.quote blockquote{font:500 clamp(42px,6vw,72px)/1.05 'Playfair Display',serif;margin:20px 0 30px}.quote p{font-size:10px;letter-spacing:.2em;color:#aaa095}.booking-banner{padding:125px 0;display:flex;justify-content:space-between;align-items:center}.dark-btn{background:#211d18;color:#fff;border-color:#211d18}.inner-hero{padding:110px 0 90px;border-bottom:1px solid #d8d1c4}.inner-hero h1,.booking-intro h1{font:500 clamp(60px,8vw,100px)/.9 'Playfair Display',serif;letter-spacing:-.04em;margin:0 0 30px}.inner-hero p:last-child,.booking-intro>p:last-child{font-size:17px;color:#71695f;max-width:570px}.about-story{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:120px 0}.about-photo{min-height:570px;background:linear-gradient(160deg,#c6af99,#765b4c 60%,#d7c5b0)}.about-story h2{font:500 56px/1 'Playfair Display',serif;margin:20px 0 25px}.about-story p:not(.kicker){color:#71695f;max-width:500px}.signature{font:italic 22px 'Playfair Display',serif;margin-top:50px;color:#8c4e3c}.values{background:#ddd5c7;padding:100px 0}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.value-grid>div{border-top:1px solid #aaa093;padding:25px 0}.value-grid span{font-size:11px;color:#8c4e3c}.value-grid h3{font:500 32px 'Playfair Display',serif;margin:45px 0 10px}.value-grid p{font-size:13px;color:#655e55;max-width:280px}.menu-section{padding:100px 0}.menu-category{display:grid;grid-template-columns:28% 72%;border-top:1px solid #cfc6b8;padding:45px 0}.category-title{display:flex;gap:35px}.category-title span{font-size:11px;color:#8c4e3c}.category-title h2{font:500 46px 'Playfair Display',serif;margin:0}.menu-items article{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid #d8d1c4;padding:0 0 25px;margin-bottom:25px}.menu-items h3{font:500 25px 'Playfair Display',serif;margin:0}.menu-items p{font-size:12px;color:#756e65;margin:5px 0 0}.menu-items b{font-size:12px;white-space:nowrap}.small-note{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #cfc6b8;padding:35px 0 110px}.small-note p{font-size:11px;color:#756e65}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:110px 0}.contact-layout h2{font:500 50px 'Playfair Display',serif;margin:0 0 5px}.contact-detail{border-top:1px solid #d8d1c4;margin-top:45px;padding-top:18px}.contact-detail p{margin:4px 0;color:#756e65}.map-placeholder{min-height:500px;background:#d9d0c2;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8c4e3c}.map-placeholder span{font:italic 75px 'Playfair Display',serif}.map-placeholder small{font-size:9px;letter-spacing:.2em;text-align:center}.hours{border-top:1px solid #cfc6b8;padding:60px 0 120px}.hours-row{display:flex;justify-content:space-between;border-bottom:1px solid #d8d1c4;padding:20px 0;font-size:13px}.booking-page{min-height:900px}.booking-intro{padding:100px 0 65px}.booking-card{padding-bottom:120px}.booking-card form{background:#e2d9cb;max-width:760px;margin-left:auto;padding:55px}.field{margin-bottom:28px}.field label{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:9px}.field input{width:100%;border:0;border-bottom:1px solid #9e9487;background:transparent;padding:13px 0;font:16px 'DM Sans';color:#211d18;outline:none;border-radius:0}.field input:focus{border-color:#8c4e3c}.date-time{display:grid;grid-template-columns:1fr 1fr;gap:35px}.submit-btn{margin-top:15px}.fine-print{font-size:11px;color:#756e65;margin:18px 0 0}footer{background:#211d18;color:#e9e3da;padding:65px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:35px}.footer-grid p{font-size:12px;color:#a9a198}.footer-grid b{font-size:11px;letter-spacing:.1em;text-transform:uppercase}.footer-bottom{border-top:1px solid #49433d;margin-top:55px;padding-top:20px;font-size:10px;color:#817a72;display:flex;justify-content:space-between}.success{min-height:100vh;display:grid;place-items:center;padding:50px;text-align:center}.success h1{font:500 70px/1 'Playfair Display',serif}.success p{color:#756e65;margin-bottom:35px}
@media(max-width:800px){.site-header{height:72px}.menu-btn{display:block}nav{display:none;position:absolute;left:0;right:0;top:72px;background:#f4f0e8;padding:18px 5%;flex-direction:column;align-items:stretch;gap:5px;border-bottom:1px solid #d8d1c4}nav.open{display:flex}nav a{padding:10px}.hero{min-height:620px}.hero-copy{padding-top:110px}.hero h1{font-size:70px}.manifesto,.about-story,.contact-layout{grid-template-columns:1fr;gap:45px;padding:85px 0}.feature{grid-template-columns:1fr}.feature-photo{min-height:420px}.feature-copy{padding:75px 7%}.service-grid,.value-grid{grid-template-columns:1fr}.service-grid a{border:0!important;border-bottom:1px solid #cfc6b8!important}.booking-banner,.small-note{display:block;padding:85px 0}.booking-banner .dark-btn{margin-top:25px}.menu-category{grid-template-columns:1fr;gap:35px}.category-title h2{font-size:40px}.inner-hero{padding:80px 0 65px}.inner-hero h1,.booking-intro h1{font-size:62px}.footer-grid{grid-template-columns:1fr 1fr}.date-time{grid-template-columns:1fr}.booking-card form{padding:35px 25px}.hero-stamp{right:5%;bottom:25px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:10px}}
/* Premium portfolio upgrade */
.hero-image,.feature-photo,.about-photo,.team-image{background-size:cover;background-position:center;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.hero:hover .hero-image{transform:scale(1.025)}.small-label{font-size:9px;letter-spacing:.18em;color:#756e65}
.team-section{background:#e8e0d3;padding:120px 0}.team-section h2,.gallery-section h2{font:500 clamp(48px,6vw,72px)/.98 'Playfair Display',serif;margin:0 0 55px;letter-spacing:-.03em}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.team-card{background:#f4f0e8;overflow:hidden}.team-image{height:430px}.team-info{padding:22px 24px 28px}.team-info span{font-size:9px;letter-spacing:.16em;color:#8c4e3c}.team-info h3{font:500 28px 'Playfair Display',serif;margin:12px 0 4px}.team-info p{font-size:12px;color:#756e65;margin:0}
.testimonials{padding:120px 0}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial{border-top:1px solid #cfc6b8;padding:28px 0 20px}.testimonial>span{font:70px/.5 'Playfair Display',serif;color:#8c4e3c}.testimonial p{font:500 24px/1.35 'Playfair Display',serif;max-width:330px}.testimonial b{font-size:10px;letter-spacing:.13em;text-transform:uppercase}
.gallery-section{padding:120px 0}.gallery-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:280px 280px;gap:14px}.gallery-item{display:block;overflow:hidden;background:#ddd5c7}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s}.gallery-item:hover img{transform:scale(1.06);filter:saturate(.88)}.gallery-note{font-size:10px;color:#81786e;margin:18px 0 0}.about-team{margin-top:0}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}.team-card.reveal:nth-child(2),.testimonial.reveal:nth-child(2){transition-delay:.08s}.team-card.reveal:nth-child(3),.testimonial.reveal:nth-child(3){transition-delay:.16s}
@media(max-width:800px){.hero-image{background-position:58% center}.hero-copy{padding-bottom:95px}.manifesto{padding-top:75px;padding-bottom:75px}.feature-copy{padding:70px 7%}.team-section,.testimonials,.gallery-section{padding:80px 0}.team-grid,.testimonial-grid{grid-template-columns:1fr}.team-image{height:420px}.testimonial p{font-size:22px;max-width:100%}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 230px 230px}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.gallery-item:nth-child(4){grid-row:3}.booking-banner{padding-top:80px;padding-bottom:80px}.nav-cta{margin-top:5px;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero-image,.gallery-item img{transition:none}}

/* VÉRA V3 cinematic hero */
.hero-video{background:#201a16;min-height:760px}.hero-video-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(1.04);transform:scale(1.02)}.hero-video-bg.video-failed{display:none}.hero-video-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,15,12,.74),rgba(20,15,12,.18) 65%,rgba(20,15,12,.38)),linear-gradient(0deg,rgba(20,15,12,.36),transparent 55%)}.hero-video-label{position:absolute;right:6%;bottom:58px;color:#fff;font-size:9px;letter-spacing:.18em;display:flex;align-items:center;gap:8px}.pulse-dot{width:7px;height:7px;border-radius:50%;background:#d8b2a1;box-shadow:0 0 0 0 rgba(216,178,161,.7);animation:pulse 1.8s infinite}@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(216,178,161,0)}100%{box-shadow:0 0 0 0 rgba(216,178,161,0)}}
/* VÉRA V3 transformations */
.transformations{padding:120px 0}.transformations h2{font:500 clamp(48px,6vw,72px)/.98 'Playfair Display',serif;margin:0 0 55px}.ba-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ba-images{position:relative;aspect-ratio:4/3;overflow:hidden;background:#ddd5c7}.ba-images>img,.ba-after img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ba-after{position:absolute;left:0;top:0;bottom:0;width:50%;overflow:hidden;border-right:2px solid #fff}.ba-range{position:absolute;inset:auto 0 0;width:100%;height:38px;appearance:none;background:linear-gradient(90deg,rgba(255,255,255,.78),rgba(255,255,255,.35));z-index:3;cursor:ew-resize}.ba-range::-webkit-slider-thumb{appearance:none;width:18px;height:38px;background:#211d18;border:0}.ba-range::-moz-range-thumb{width:18px;height:38px;background:#211d18;border:0}.ba-meta{display:flex;justify-content:space-between;padding:18px 2px;font-size:9px;letter-spacing:.14em}.ba-meta b{font-weight:500;color:#8c4e3c}.ba-grid+.gallery-note{margin-top:25px}
/* VÉRA V3 booking wizard */
.booking-card form{max-width:820px}.wizard-progress{display:flex;align-items:center;gap:14px;margin-bottom:55px}.wizard-step{display:flex;align-items:center;gap:8px;color:#9a9186;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.wizard-step span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #b8aea1;border-radius:50%}.wizard-step.active{color:#211d18}.wizard-step.active span{background:#211d18;color:#fff;border-color:#211d18}.wizard-line{height:1px;background:#c6bcaf;flex:1}.wizard-panel{display:none}.wizard-panel.active{display:block;animation:panelIn .55s cubic-bezier(.2,.7,.2,1)}.wizard-panel h2{font:500 46px/1.05 'Playfair Display',serif;margin:0 0 45px}.wizard-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:35px}.back-btn{background:none;border:0;border-bottom:1px solid #211d18;padding:10px 0;font:600 12px 'DM Sans';cursor:pointer}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.time-choice{background:transparent;border:1px solid #b9ae9f;padding:15px 8px;font:12px 'DM Sans';cursor:pointer;transition:.2s}.time-choice:hover,.time-choice.selected{background:#211d18;color:#fff;border-color:#211d18}.time-note{font-size:10px;color:#756e65;margin-top:18px}.shake{animation:shake .35s}@keyframes panelIn{from{opacity:0;transform:translateX(22px)}to{opacity:1;transform:none}}@keyframes shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
@media(max-width:800px){.hero-video{min-height:650px}.hero-video-label{bottom:25px;right:5%;font-size:8px}.ba-grid{grid-template-columns:1fr}.transformations{padding:80px 0}.time-grid{grid-template-columns:repeat(2,1fr)}.wizard-progress{gap:7px}.wizard-step b{display:none}.wizard-panel h2{font-size:38px}.wizard-actions{align-items:flex-end}.hero-video-bg{object-position:58% center}}
@media(prefers-reduced-motion:reduce){.pulse-dot{animation:none}.hero-video-bg{transform:none}.wizard-panel.active{animation:none}}

.success-check{width:70px;height:70px;border-radius:50%;background:#211d18;color:#fff;display:grid;place-items:center;margin:0 auto 28px;font-size:28px;animation:checkPop .6s cubic-bezier(.2,.8,.2,1)}@keyframes checkPop{from{transform:scale(0);opacity:0}70%{transform:scale(1.12)}to{transform:scale(1);opacity:1}}.confetti{position:fixed;top:-15px;width:7px;height:14px;background:#8c4e3c;animation:fall 2.5s linear forwards;z-index:5}.confetti:nth-child(3n){background:#c7a06a;width:5px;height:9px}.confetti:nth-child(4n){background:#211d18;width:4px;height:12px}@keyframes fall{to{top:105vh;opacity:0}}
