:root{
  --burgundy:#681f24;--burgundy-2:#4b1519;--burgundy-3:#2e0d10;
  --cream:#f5efe3;--paper:#fffdf8;--rose:#e7cfcd;--rose-soft:#f5e9e7;
  --gold:#c3a05c;--gold-2:#a7813f;--ink:#241416;--muted:#745f61;
  --line:rgba(104,31,36,.18);--shadow:0 22px 70px rgba(55,18,21,.12);
  --max:1240px;--radius:22px;--ease:cubic-bezier(.2,.7,.2,1)
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.menu-open{overflow:hidden}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.section{padding:104px 0}.section--compact{padding:72px 0}.section--cream{background:var(--cream)}.section--rose{background:var(--rose-soft)}
.kicker{display:inline-flex;align-items:center;gap:12px;color:var(--burgundy);font-size:.75rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.kicker:before{content:"";width:34px;height:1px;background:var(--gold)}
h1,h2,h3,h4{margin:0;color:var(--burgundy-2);font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.06}h1{font-size:clamp(3rem,6vw,6.15rem);letter-spacing:-.045em}h2{font-size:clamp(2.45rem,4.4vw,4.45rem);letter-spacing:-.035em}h3{font-size:clamp(1.42rem,2.3vw,2rem)}p{margin:0 0 1rem}.lead{font-size:clamp(1.05rem,1.6vw,1.28rem);color:var(--muted);max-width:720px}.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,520px);gap:56px;align-items:end;margin-bottom:58px}.section-heading.center{display:block;text-align:center;max-width:820px;margin:0 auto 58px}.section-heading.center .lead{margin:18px auto 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:52px;padding:13px 25px;border-radius:999px;border:1px solid transparent;cursor:pointer;font-weight:700;font-size:.88rem;letter-spacing:.055em;text-transform:uppercase;transition:.28s var(--ease)}.btn svg{width:18px;height:18px}.btn--primary{background:var(--burgundy);color:var(--paper)}.btn--primary:hover{background:var(--burgundy-3);transform:translateY(-2px);box-shadow:0 12px 30px rgba(104,31,36,.25)}.btn--light{background:var(--paper);color:var(--burgundy)}.btn--outline{border-color:currentColor;background:transparent}.btn--outline:hover{background:rgba(255,255,255,.1)}.btn--gold{background:var(--gold);color:var(--burgundy-3)}
.skip-link{position:fixed;left:12px;top:-100px;background:var(--paper);padding:10px;z-index:999}.skip-link:focus{top:12px}
.site-header{height:86px;position:sticky;top:0;z-index:100;background:rgba(255,253,248,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;width:190px;flex:0 0 auto}.brand img{width:100%;height:auto}.main-nav{display:flex;align-items:center;gap:4px}.main-nav a{padding:12px 12px;color:var(--burgundy-2);font-size:.86rem;font-weight:600;border-radius:999px;white-space:nowrap}.main-nav a:hover,.main-nav a.active{background:var(--rose-soft)}.main-nav .nav-cta{margin-left:8px;background:var(--burgundy);color:var(--paper);padding-inline:20px}.nav-toggle{display:none;border:0;background:none;width:48px;height:48px;padding:12px;cursor:pointer}.nav-toggle span{display:block;width:24px;height:2px;background:var(--burgundy);margin:5px auto;transition:.25s}
.hero{background:var(--cream);padding:24px 0 0}.hero-frame{height:clamp(570px,calc(100vh - 220px),640px);min-height:570px;display:grid;grid-template-columns:minmax(420px,.9fr) minmax(0,1.25fr);overflow:hidden;background:var(--burgundy-2);border:1px solid rgba(195,160,92,.5);box-shadow:var(--shadow);position:relative}.hero-frame:before{content:"";position:absolute;inset:0 55% 0 0;background:url("../img/motifs/motif-1.webp") center/cover;opacity:.08;mix-blend-mode:screen;pointer-events:none}.hero-copy{position:relative;z-index:2;padding:clamp(48px,6vw,82px);display:flex;flex-direction:column;justify-content:center;color:var(--paper)}.hero-copy .kicker,.diagnostic-intro .kicker,.about-copy .kicker,.contact-section .kicker,.review-card .kicker{color:var(--gold)}.hero-copy h1{color:var(--paper);margin:18px 0 20px;font-size:clamp(3.15rem,4.7vw,4.8rem)}.hero-copy h1 em{color:var(--gold);font-weight:400}.hero-copy .hero-lead{font-size:1.13rem;max-width:560px;color:rgba(255,253,248,.8)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.tax-pill{display:inline-flex;align-items:center;gap:12px;align-self:flex-start;margin-top:25px;padding:12px 16px;border:1px solid rgba(195,160,92,.75);background:rgba(195,160,92,.15);color:var(--paper);font-weight:600;border-radius:12px}.tax-pill strong{font-size:1.22rem;color:var(--gold)}.hero-visual{position:relative;min-height:520px;overflow:hidden}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--burgundy-2) 0%,rgba(75,21,25,.35) 19%,transparent 55%)}.hero-label{position:absolute;right:24px;bottom:22px;z-index:2;background:rgba(255,253,248,.9);color:var(--burgundy);padding:10px 14px;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.quick-nav{background:var(--cream);padding:0 0 30px}.quick-nav-grid{display:grid;grid-template-columns:repeat(4,1fr);background:var(--paper);border:1px solid var(--line);border-top:0}.quick-link{min-height:112px;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-right:1px solid var(--line);transition:.25s}.quick-link:last-child{border-right:0}.quick-link strong{font-family:Georgia,serif;font-size:1.28rem;color:var(--burgundy)}.quick-link span{width:38px;height:38px;border:1px solid var(--line);display:grid;place-items:center;border-radius:50%;transition:.25s}.quick-link:hover{background:var(--rose-soft)}.quick-link:hover span{transform:translateY(4px);background:var(--burgundy);color:white}
.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.problem-card{padding:34px;border:1px solid var(--line);background:var(--paper);position:relative;overflow:hidden;min-height:270px}.problem-card:before{content:attr(data-index);position:absolute;right:20px;top:10px;font-family:Georgia,serif;font-size:5rem;color:rgba(104,31,36,.06)}.problem-card h3{margin:70px 0 14px}.concept-promise{margin-top:28px;padding:36px 42px;background:var(--burgundy);color:var(--paper);display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;border:1px solid var(--gold)}.concept-promise h3{color:var(--gold);font-size:2rem}.concept-promise p{color:rgba(255,255,255,.8);margin:0}
.benefit-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.benefit-card{background:var(--paper);border:1px solid var(--line);padding:26px 22px;min-height:245px;transition:.28s}.benefit-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.benefit-icon{width:54px;height:54px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--burgundy);margin-bottom:28px}.benefit-icon svg{width:25px}.benefit-card h3{font-size:1.4rem;margin-bottom:12px}.benefit-card p{font-size:.93rem;color:var(--muted)}
.diagnostic-shell{display:grid;grid-template-columns:.85fr 1.15fr;background:var(--burgundy-3);color:var(--paper);border:1px solid var(--gold);min-height:540px}.diagnostic-intro{padding:44px;position:relative;overflow:hidden;min-width:0}.diagnostic-intro:after{content:"";position:absolute;width:320px;height:420px;right:-110px;bottom:-180px;background:url("../img/motifs/motif-2.webp") center/cover;opacity:.12;transform:rotate(12deg)}.diagnostic-intro h2{color:var(--paper);margin:18px 0;font-size:clamp(1.7rem,2.3vw,2.5rem);overflow-wrap:break-word}.diagnostic-intro p{color:rgba(255,255,255,.72)}.diagnostic-panel{background:var(--paper);color:var(--ink);padding:48px 54px}.diag-progress{display:flex;gap:8px;margin-bottom:32px}.diag-progress span{height:4px;flex:1;background:var(--rose)}.diag-progress span.on{background:var(--burgundy)}.diag-step{display:none}.diag-step.active{display:block;animation:fadeUp .35s}.diag-step h3{margin-bottom:24px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.choice{border:1px solid var(--line);background:white;padding:17px 18px;text-align:left;border-radius:12px;cursor:pointer;color:var(--ink);transition:.2s}.choice:hover,.choice.selected{border-color:var(--burgundy);background:var(--rose-soft)}.diag-actions{display:flex;justify-content:space-between;gap:12px;margin-top:30px}.diag-result{padding:22px;background:var(--cream);border-left:4px solid var(--gold);margin:18px 0}.diag-result strong{display:block;color:var(--burgundy);font-family:Georgia,serif;font-size:1.7rem}
.approach-layout{display:grid;grid-template-columns:340px 1fr;gap:52px;align-items:start}.approach-tabs{position:sticky;top:116px;border-top:1px solid var(--line)}.approach-tab{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;padding:20px 8px;color:var(--muted);font-weight:600;cursor:pointer;display:flex;justify-content:space-between;gap:20px}.approach-tab.active{color:var(--burgundy);padding-left:18px}.approach-tab .num{font-family:ui-monospace,"Courier New",monospace;font-size:.78rem;color:var(--gold)}.approach-content{min-height:520px}.approach-pane{display:none}.approach-pane.active{display:block;animation:fadeUp .4s}.approach-pane-inner{display:grid;grid-template-columns:1fr .8fr;gap:40px}.approach-pane h3{font-size:2.4rem;margin-bottom:18px}.approach-photo{height:480px;overflow:hidden;border:8px solid var(--paper);outline:1px solid var(--gold)}.approach-photo img{width:100%;height:100%;object-fit:cover}.steps{margin-top:26px;display:grid;gap:12px}.step{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:16px 0;border-top:1px solid var(--line)}.step b{font-family:ui-monospace,"Courier New",monospace;color:var(--gold)}.four-c{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}.four-c article{padding:22px;background:var(--cream);border:1px solid var(--line)}.four-c strong{display:block;font-family:Georgia,serif;color:var(--burgundy);font-size:1.45rem}.commitments{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.commitments span{padding:9px 13px;border:1px solid var(--gold);border-radius:999px;color:var(--burgundy);font-size:.88rem}
.values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}.values-grid article{padding:18px 20px;background:var(--cream);border:1px solid var(--line)}.values-grid strong{display:block;font-family:Georgia,serif;color:var(--burgundy);font-size:1.2rem;margin-bottom:6px}.values-grid p{font-size:.88rem;color:var(--muted);margin:0}
.partner-logos{display:flex;flex-wrap:wrap;align-items:center;gap:26px;margin-top:20px}.partner-logos img{height:34px;width:auto;max-width:130px;object-fit:contain;filter:grayscale(1) opacity(.8)}.partner-logos .partner-text{padding:7px 12px;background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:.8rem;color:var(--burgundy)}
.legal-content{max-width:760px}.legal-content h1{color:var(--burgundy-2)}.legal-content h2{font-size:1.7rem;margin:44px 0 14px}.legal-content h2:first-of-type{margin-top:8px}.legal-content ul{padding-left:22px;color:var(--muted)}.legal-content li{margin-bottom:8px}.legal-content a{color:var(--burgundy);text-decoration:underline}.tbd{background:rgba(195,160,92,.25);padding:1px 6px;border-radius:4px;font-style:italic;color:var(--burgundy-2)}
.about-band{display:grid;grid-template-columns:1fr 1fr;background:var(--burgundy);color:var(--paper);overflow:hidden}.about-image{min-height:550px}.about-image img{width:100%;height:100%;object-fit:cover}.about-copy{padding:72px;position:relative}.about-copy:before{content:"";position:absolute;inset:0;background:url("../img/photos/section-detail-1.webp") center/cover;opacity:.07}.about-copy>*{position:relative}.about-copy h2{color:var(--paper);margin:18px 0 24px}.about-copy p{color:rgba(255,255,255,.77)}.signature-line{font-family:ui-monospace,"Courier New",monospace;color:var(--gold);font-size:1.15rem;margin-top:26px}
.space-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.space-card{background:var(--paper);border:1px solid var(--line);overflow:hidden;transition:.3s;display:flex;flex-direction:column}.space-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.space-image{height:300px;overflow:hidden}.space-image img{width:100%;height:100%;object-fit:cover;transition:.5s}.space-card:hover img{transform:scale(1.035)}.space-body{padding:25px 27px;display:flex;flex:1;flex-direction:column}.space-body h3{font-size:1.55rem}.space-body p{color:var(--muted);font-size:.94rem;flex:1}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--burgundy);font-weight:700;font-size:.84rem;text-transform:uppercase;letter-spacing:.08em}.text-link:after{content:"→";transition:.2s}.text-link:hover:after{transform:translateX(5px)}
.gallery-controls{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:30px}.filter-btn{border:1px solid var(--line);background:var(--paper);color:var(--burgundy);padding:10px 15px;border-radius:999px;cursor:pointer}.filter-btn.active,.filter-btn:hover{background:var(--burgundy);color:var(--paper)}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.gallery-item.hidden{display:none}.ba-card{background:var(--paper);border:1px solid var(--line);padding:10px}.ba-media{position:relative;aspect-ratio:4/3;overflow:hidden;background:#ddd}.ba-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ba-before{clip-path:inset(0 50% 0 0)}.ba-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;touch-action:pan-y;z-index:5}.ba-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--paper);z-index:3;pointer-events:none;box-shadow:0 0 0 1px rgba(0,0,0,.2)}.ba-line:after{content:"↔";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--burgundy);font-weight:700}.ba-tag{position:absolute;top:14px;z-index:4;padding:7px 10px;background:rgba(36,20,22,.76);color:white;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.ba-tag.before{left:14px}.ba-tag.after{right:14px}.ba-card figcaption{padding:15px 8px 7px;color:var(--burgundy);font-weight:600}
.pricing-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.price-card{border:1px solid #f0ece8;background:#fefdfb;padding:30px 18px;display:flex;flex-direction:column;min-height:180px;align-items:center;text-align:center;justify-content:flex-start;gap:8px}.price-card.featured{background:#fefdfb;border:3px solid #c3b8a2;transform:none}.price-card .duration{font-family:Georgia,serif;color:#4a3032;font-size:1.1rem;margin-bottom:4px}.price{font-family:Georgia,serif;color:#4a3032;font-size:2.2rem;font-weight:500;line-height:1}.price-after{color:#c0a66f;font-size:.78rem;margin:2px 0 8px}.price-card p{color:#8c7b78;font-size:.82rem;line-height:1.4;margin:0}.tax-note{margin-top:24px;padding:14px 20px;background:#f6ebe9;border-radius:6px;font-size:.82rem;color:#795f5c;text-align:center}
.gift-card{margin-top:20px;padding:28px 30px;background:#fefdfb;border:1px solid #c3b8a2;border-radius:6px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.gift-icon{color:#c0a66f;font-size:1.2rem;margin-bottom:4px}
.gift-card h3{font-family:Georgia,serif;color:#4a3032;font-size:1.3rem;margin:0}
.gift-card p{color:#8c7b78;font-size:.9rem;margin:0;max-width:480px}
.gift-card .gift-sub{color:#ab8b80;font-size:.82rem;margin-top:4px}
.reviews-shell{position:relative}.review-card{display:none;grid-template-columns:200px 1fr;gap:48px;align-items:center;min-height:330px;background:var(--burgundy-3);color:var(--paper);padding:50px;border:1px solid var(--gold)}.review-card.active{display:grid;animation:fadeUp .4s}.review-mark{font-family:Georgia,serif;font-size:9rem;color:var(--gold);line-height:.6;text-align:center}.review-card blockquote{margin:0;font-family:Georgia,serif;font-size:clamp(1.55rem,2.8vw,2.55rem);line-height:1.3}.review-card cite{display:block;margin-top:20px;font-style:normal;color:var(--gold);font-size:.9rem}.review-nav{display:flex;justify-content:center;gap:10px;margin-top:20px}.review-nav button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--burgundy);cursor:pointer}
.social-handle{color:var(--burgundy);font-style:italic;transition:.2s;overflow-wrap:anywhere}.social-handle:hover{color:var(--gold-2)}
.social-viewport{overflow:hidden}.social-track{display:flex;width:max-content;gap:14px;animation:marquee 32s linear infinite}.social-track:hover{animation-play-state:paused}.social-card{width:260px;height:330px;overflow:hidden;position:relative;flex:0 0 auto}.social-card img{width:100%;height:100%;object-fit:cover}
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:74px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;border:0;background:none;text-align:left;color:var(--burgundy);font-family:Georgia,serif;font-size:1.25rem;padding:22px 44px 22px 0;cursor:pointer;position:relative}.faq-q:after{content:"+";position:absolute;right:8px;top:20px;font-family:Arial,Helvetica,sans-serif;font-size:1.5rem}.faq-item.open .faq-q:after{content:"−"}.faq-a{display:grid;grid-template-rows:0fr;transition:.3s}.faq-a>div{overflow:hidden;color:var(--muted)}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-a p{padding:0 40px 22px 0}.zone-card{background:var(--cream);padding:38px;border:1px solid var(--gold);position:relative;overflow:hidden}.zone-card:after{content:"";position:absolute;width:270px;height:360px;right:-120px;bottom:-140px;background:url("../img/motifs/motif-1.webp") center/cover;opacity:.08}.zone-card>*{position:relative;z-index:1}.location-list{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.location-list span{padding:7px 11px;background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:.82rem}.schedule{padding-top:22px;border-top:1px solid var(--line)}
.contact-section{background:var(--burgundy-2);color:var(--paper)}.contact-section h2,.contact-section h3{color:var(--paper)}.contact-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:48px}.contact-copy p{color:rgba(255,255,255,.72)}.contact-details{margin:30px 0;display:grid;gap:13px}.contact-details a{color:var(--gold)}.social-icons{display:flex;gap:10px;margin-bottom:8px}.social-icons a{width:42px;height:42px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center;font-size:.68rem;font-weight:700;letter-spacing:.03em;color:var(--gold);transition:.25s}.social-icons a:hover{background:var(--gold);color:var(--burgundy-3)}.form-shell{background:var(--paper);min-height:650px;border:1px solid var(--gold);overflow:hidden}.form-shell iframe{width:100%;height:720px;border:0}.form-fallback{display:none;padding:30px;color:var(--ink)}
.future-note{padding:38px;background:var(--cream);border:1px dashed var(--gold);display:flex;align-items:center;justify-content:space-between;gap:30px}.future-note h3{margin-bottom:8px}.future-note span{font-family:ui-monospace,"Courier New",monospace;color:var(--gold);text-transform:uppercase;letter-spacing:.08em}
.site-footer{background:var(--burgundy-3);color:rgba(255,255,255,.68);padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:42px}.footer-grid>div:first-child{min-width:220px}.footer-logo{width:250px;margin-bottom:18px}.site-footer h3{color:var(--gold);font-family:Arial,Helvetica,sans-serif;font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:18px}.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.site-footer a:hover{color:var(--gold)}.footer-bottom{margin-top:48px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:20px;font-size:.78rem}.floating-contact{position:fixed;right:20px;bottom:20px;z-index:70;width:58px;height:58px;border-radius:50%;background:var(--burgundy);color:white;border:1px solid var(--gold);display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.2)}.floating-contact svg{width:23px}
.reveal{opacity:0;transform:translateY(22px);transition:.7s var(--ease)}.reveal.visible{opacity:1;transform:none}@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes marquee{to{transform:translateX(-50%)}}
/* Dedicated room pages */
.room-hero{padding:54px 0 0;background:var(--cream)}.room-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--burgundy);color:white;min-height:540px;border:1px solid var(--gold)}.room-hero-copy{padding:65px}.room-hero-copy h1{color:white;font-size:clamp(3rem,5vw,5.2rem);margin:18px 0}.room-hero-copy p{color:rgba(255,255,255,.76);font-size:1.12rem}.breadcrumb{font-size:.8rem;color:var(--gold);text-transform:uppercase;letter-spacing:.1em}.room-hero-image img{width:100%;height:100%;object-fit:cover}.room-columns{display:grid;grid-template-columns:1fr .8fr;gap:65px}.room-list{display:grid;gap:14px;margin-top:24px}.room-list li{padding:14px 0;border-top:1px solid var(--line)}.room-aside{padding:32px;background:var(--cream);border:1px solid var(--gold);align-self:start;position:sticky;top:112px}.room-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.room-gallery img{width:100%;height:340px;object-fit:cover}.room-cta{padding:48px;background:var(--burgundy);color:white;display:flex;justify-content:space-between;align-items:center;gap:30px}.room-cta h2{color:white;font-size:2.5rem}.room-cta .kicker{color:var(--gold)}
.room-testimonial{margin-top:0;padding:44px 50px;background:var(--burgundy-3);color:var(--paper);border:1px solid var(--gold);text-align:center}.room-testimonial p{color:rgba(255,255,255,.85);font-family:Georgia,serif;font-size:1.2rem;line-height:1.55;max-width:760px;margin:16px auto 0}
@media(max-width:1100px){.main-nav a{padding-inline:8px;font-size:.78rem}.brand{width:160px}.benefit-grid{grid-template-columns:repeat(3,1fr)}.pricing-grid{grid-template-columns:repeat(2,1fr)}.price-card.featured{transform:none}.hero-frame{grid-template-columns:.95fr 1.05fr}.hero-copy{padding:50px}.approach-layout{grid-template-columns:280px 1fr}.approach-pane-inner{grid-template-columns:1fr}.approach-photo{height:350px}.room-hero-grid{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.container{width:min(100% - 30px,var(--max))}.site-header{height:76px}.brand{width:168px}.nav-toggle{display:block;z-index:102}.main-nav{position:absolute;top:100%;left:0;right:0;z-index:101;background:var(--paper);display:grid;padding:18px 24px 24px;transform:translateY(-125%);opacity:0;visibility:hidden;transition:.3s;box-shadow:var(--shadow);border-top:1px solid var(--line)}.main-nav.open{transform:none;opacity:1;visibility:visible}.main-nav a{padding:14px}.main-nav .nav-cta{margin:8px 0 0;text-align:center}.hero{padding-top:14px}.hero-frame{grid-template-columns:1fr;min-height:0;height:auto;max-height:none}.hero-copy{padding:48px 34px}.hero-visual{min-height:420px}.hero-visual:after{background:linear-gradient(0deg,var(--burgundy-2),transparent 55%)}.quick-nav-grid{grid-template-columns:repeat(2,1fr)}.quick-link:nth-child(2){border-right:0}.quick-link:nth-child(-n+2){border-bottom:1px solid var(--line)}.section{padding:78px 0}.section-heading{grid-template-columns:1fr;gap:18px}.problem-grid,.space-grid{grid-template-columns:repeat(2,1fr)}.concept-promise{grid-template-columns:1fr}.diagnostic-shell{grid-template-columns:1fr}.diagnostic-intro{padding:40px}.diagnostic-panel{padding:40px}.approach-layout{grid-template-columns:1fr}.approach-tabs{position:static;display:flex;flex-wrap:wrap;border:0;gap:8px;margin-bottom:24px}.approach-tab{min-width:max-content;border:1px solid var(--line);padding:12px 15px;border-radius:999px}.approach-tab.active{padding-left:15px;background:var(--burgundy);color:white}.about-band{grid-template-columns:1fr}.about-image{min-height:430px}.about-copy{padding:48px 34px}.gallery-grid{grid-template-columns:1fr}.review-card{grid-template-columns:1fr;gap:12px}.review-mark{text-align:left;font-size:6rem}.info-grid,.contact-layout{grid-template-columns:1fr;gap:44px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto}.room-hero-grid{grid-template-columns:1fr}.room-hero-image{height:430px}.room-columns{grid-template-columns:1fr}.room-aside{position:static}.room-gallery{grid-template-columns:1fr 1fr}.room-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){h1{font-size:3rem}.hero-copy{padding:38px 24px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-visual{min-height:330px}.hero-label{right:12px;bottom:12px}.quick-nav-grid{grid-template-columns:1fr}.quick-link{min-height:82px;border-right:0!important;border-bottom:1px solid var(--line)}.problem-grid,.space-grid,.benefit-grid,.pricing-grid{grid-template-columns:1fr}.benefit-card{min-height:auto}.choice-grid{grid-template-columns:1fr}.diagnostic-panel{padding:30px 22px}.approach-pane h3{font-size:2rem}.four-c,.values-grid{grid-template-columns:1fr}.about-image{min-height:330px}.about-copy{padding:42px 24px}.space-image{height:260px}.review-card{padding:35px 25px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.future-note{align-items:flex-start;flex-direction:column}.room-hero-copy{padding:45px 25px}.room-hero-image{height:330px}.room-gallery{grid-template-columns:1fr}.room-gallery img{height:310px}.room-cta{padding:35px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.social-track{animation:none}}

/* Correctif v3 : le bandeau de crédit d’impôt reste entièrement visible */
.hero-copy{min-width:0}
.tax-pill{width:min(100%,440px);max-width:100%;box-sizing:border-box;min-width:0}
.tax-pill strong{flex:0 0 auto}
.tax-pill span{min-width:0;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
.tax-pill small{display:inline-block;max-width:100%;font-weight:400;line-height:1.25}
@media(max-width:1100px){.tax-pill{width:100%;padding:11px 12px;gap:10px}.tax-pill span{font-size:.92rem}.tax-pill small{font-size:.72rem}}
@media(max-width:560px){.tax-pill{align-items:flex-start}.tax-pill strong{font-size:1.1rem}.tax-pill span{font-size:.88rem}}

/* Correctif v4 : rendu identique à la prévisualisation sur Windows et macOS.
   Le titre du hero conserve exactement ses trois lignes, quelle que soit la police locale
   ou le niveau de zoom du navigateur, et l'ensemble CTA reste dans le cadre. */
.hero-copy h1{font-size:clamp(2.9rem,4.1vw,3.95rem)}
.hero-title-line{display:block}
.hero-title-line--first{white-space:nowrap}
@media(max-width:850px){
  .hero-copy h1{font-size:clamp(3rem,8vw,4rem)}
}
@media(max-width:360px){
  .hero-title-line--first{white-space:normal}
  .hero-copy h1{font-size:2.75rem}
}

/* === v4.1 : quick-nav 3 colonnes (winter way / bien chez vous / moi chez vous) === */
.quick-nav-3{grid-template-columns:repeat(3,1fr)!important}

/* === v4.2 : correctifs responsive =========================================
   Le !important ci-dessus forçait 3 colonnes à toutes les tailles → la bande
   "winter way / bien chez vous / moi chez vous" débordait sur mobile (masqué
   par overflow-x:hidden = contenu tronqué). On réétablit ici le repli mobile,
   en gardant l'ordre source ≤850 puis ≤560 pour que la cascade se résolve bien.
   On corrige aussi la grille des avantages (2 colonnes sur tablette). */
@media(max-width:850px){
  .quick-nav-3{grid-template-columns:repeat(2,1fr)!important}
  .benefit-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .quick-nav-3{grid-template-columns:1fr!important}
  .benefit-grid{grid-template-columns:1fr}
  /* Le pseudo « @handle » Instagram (un seul mot, sans espace) débordait la
     largeur de l'écran dans son grand H2 → on le borne sur mobile. */
  .section--compact h2{font-size:clamp(1.9rem,8vw,2.6rem)}
}
