:root{--ink:#11110f;--paper:#f7f5f1;--stone:#d9d3ca;--taupe:#82776a;--copper:#c99b76;--white:#fff;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6}img{display:block;max-width:100%}a{color:inherit}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:700;color:var(--taupe)}
.topbar{background:#070707;color:#e7d5c5;font-size:.78rem;letter-spacing:.05em;text-align:center;padding:8px 16px}.site-header{position:sticky;top:0;z-index:20;background:rgba(247,245,241,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(17,17,15,.1)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand img{width:178px;height:64px;object-fit:contain}.nav-links{display:flex;align-items:center;gap:26px;font-size:.92rem;font-weight:600}.nav-links a{text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid var(--ink);background:var(--ink);color:#fff;text-decoration:none;font-weight:700;font-size:.9rem;letter-spacing:.02em;transition:.2s}.btn:hover{background:var(--copper);border-color:var(--copper);color:var(--ink)}.btn-outline{background:transparent;color:var(--ink)}
.hero{background:#090909;color:white}.hero-grid{min-height:690px;display:grid;grid-template-columns:1.02fr .98fr}.hero-copy{padding:90px max(38px,calc((100vw - var(--max))/2)) 80px max(20px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center}.hero .eyebrow{color:var(--copper)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;font-weight:500;margin:0}h1{font-size:clamp(3rem,6vw,6.4rem);letter-spacing:-.045em;max-width:760px}h2{font-size:clamp(2.25rem,4vw,4.25rem);letter-spacing:-.035em}h3{font-size:1.55rem}.lead{font-size:1.12rem;color:#d6d1ca;max-width:620px;margin:25px 0 34px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero .btn-outline{border-color:#716b65;color:white}.hero-media{position:relative;min-height:600px;overflow:hidden}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,9,9,.18),transparent 35%)}.hero-badge{position:absolute;right:24px;bottom:24px;background:rgba(9,9,9,.88);padding:18px 20px;border-left:3px solid var(--copper);font-size:.85rem;z-index:2}
.trust{background:#fff;border-bottom:1px solid #ddd6cd}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:24px;border-right:1px solid #e6e0d9}.trust-item:last-child{border:0}.trust-item strong{display:block;font-family:Georgia,serif;font-size:1.1rem}.trust-item span{font-size:.84rem;color:#6d665f}
section{padding:100px 0}.section-head{display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:end;margin-bottom:48px}.section-head p{margin:0;color:#625d57;font-size:1.02rem;max-width:680px}.services{background:#fff}.cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d9d3ca;border-left:1px solid #d9d3ca}.card{padding:34px;border-right:1px solid #d9d3ca;border-bottom:1px solid #d9d3ca;min-height:245px}.num{font-family:Georgia,serif;color:var(--copper);font-size:1.1rem;margin-bottom:42px}.card p{color:#69625b;font-size:.93rem}.project-card{display:grid;grid-template-columns:1.1fr .9fr;background:#0b0b0b;color:white}.project-image{min-height:620px}.project-image img{width:100%;height:100%;object-fit:cover}.project-copy{padding:70px;display:flex;flex-direction:column;justify-content:center}.project-copy .eyebrow{color:var(--copper)}.project-copy p{color:#cfc9c2}.project-list{list-style:none;padding:0;margin:18px 0 30px;border-top:1px solid #393633}.project-list li{padding:11px 0;border-bottom:1px solid #393633;font-size:.92rem}.method{background:#e8e2da}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#c6beb4;margin-top:48px}.step{background:var(--paper);padding:30px;min-height:230px}.step b{display:block;color:var(--copper);font-family:Georgia,serif;font-size:2rem;margin-bottom:40px}.areas{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.pill{border:1px solid #bdb5ac;padding:10px 15px;font-size:.88rem;background:white}.contact{background:#090909;color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact h2{max-width:650px}.contact p{color:#bbb5ae}.contact-links{display:grid;gap:12px;margin-top:30px}.contact-links a{text-decoration:none;border-bottom:1px solid #403d39;padding:15px 0;font-size:1.05rem}.hours{border-left:1px solid #403d39;padding-left:50px}.hours dl{margin:26px 0}.hours div{display:flex;justify-content:space-between;border-bottom:1px solid #403d39;padding:12px 0}.hours dt,.hours dd{margin:0}.footer{background:#050505;color:#aaa39b;padding:35px 0 100px;font-size:.82rem}.footer-grid{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer a{color:#d6cdc4}.mobile-contact{display:none}
.project-hero{padding:90px 0 60px;background:#0a0a0a;color:white}.project-hero h1{font-size:clamp(2.8rem,6vw,5.5rem);max-width:1000px}.project-hero p{color:#c8c2bb;max-width:690px}.gallery-section{padding:75px 0}.gallery-section.alt{background:#e8e2da}.gallery-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.gallery-title span{color:#756d65;font-size:.9rem}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.shot{grid-column:span 6;margin:0;background:#fff}.shot.wide{grid-column:span 12}.shot img{width:100%;height:520px;object-fit:cover}.shot.wide img{height:680px}.shot figcaption{padding:13px 16px;font-size:.85rem;color:#5c5650}.breadcrumb{font-size:.84rem;margin-bottom:24px;color:#bfb7af}.breadcrumb a{color:white}.legal{padding:80px 0}.legal h1{font-size:clamp(2.6rem,5vw,4.5rem)}.legal h2{font-size:1.6rem;margin-top:38px}.legal p{max-width:820px;color:#554f49}
@media(max-width:850px){.wrap{width:min(calc(100% - 28px),var(--max))}.nav{height:70px}.brand img{width:135px}.nav-links a:not(.btn){display:none}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:72px 20px 54px}.hero-media{min-height:460px}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.section-head{grid-template-columns:1fr;gap:22px}.cards{grid-template-columns:1fr}.project-card{grid-template-columns:1fr}.project-image{min-height:460px}.project-copy{padding:42px 26px}.steps{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr;gap:50px}.hours{border-left:0;padding-left:0}.shot,.shot.wide{grid-column:span 12}.shot img,.shot.wide img{height:470px}section{padding:75px 0}.mobile-contact{display:grid;grid-template-columns:1fr 1fr;position:fixed;z-index:30;left:0;right:0;bottom:0;background:#090909;border-top:1px solid #3c3936}.mobile-contact a{color:#fff;text-align:center;text-decoration:none;padding:14px 8px;font-weight:700;font-size:.86rem}.mobile-contact a+ a{background:var(--copper);color:#111}.footer{padding-bottom:90px}}
@media(max-width:520px){h1{font-size:3.15rem}.hero-media{min-height:430px}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0}.cards{display:block}.steps{grid-template-columns:1fr}.step{min-height:auto}.shot img,.shot.wide img{height:390px}.gallery{gap:12px}.project-hero{padding-top:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Hero éditorial — identité ND */
.site-header{background:#f4ecdd;border-bottom:1px solid rgba(17,17,15,.16)}
.nav{height:112px}.brand img{width:255px;height:96px}.topbar{background:#050505;color:#d7ad8b;letter-spacing:.14em}
.hero{background:#f4ecdd;color:var(--ink);padding:0 0 38px}.hero-grid{min-height:760px;grid-template-columns:.82fr 1.18fr;gap:0}.hero-copy{position:relative;padding-top:42px;padding-bottom:58px;justify-content:flex-start}.hero-copy:before{content:"";display:block;width:min(390px,85%);height:260px;background:url('assets/logo.png') center/contain no-repeat;margin:0 0 12px -18px}.hero .eyebrow{color:#7a5b43}.hero h1{font-size:clamp(3.5rem,5.7vw,6.6rem);max-width:760px}.hero .lead{color:#514a43;font-size:1.08rem;max-width:570px;margin:22px 0 30px}.hero .btn{background:#b56d4d;border-color:#b56d4d;color:#fff}.hero .btn:hover{background:#111;border-color:#111}.hero .btn-outline{background:transparent;border-color:#1b1916;color:#1b1916}.hero-media{margin-top:40px;min-height:720px;border-radius:190px 0 0 0;background:url('assets/hero-salle-de-bain.jpg') center 46%/cover no-repeat;box-shadow:-18px 24px 0 #d6b79f}.hero-media img{display:none}.hero-media:after{background:linear-gradient(180deg,transparent 50%,rgba(8,8,8,.32))}.hero-badge{right:28px;bottom:28px;background:#0c0b0a;color:#fff;border-left:4px solid #d7ad8b;letter-spacing:.04em}.trust{margin-top:-38px;position:relative;z-index:3}
@media(max-width:850px){.nav{height:92px}.brand img{width:210px;height:80px}.hero{padding-bottom:0}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:28px 24px 46px;align-items:center;text-align:center}.hero-copy:before{width:270px;height:190px;margin:0 auto 4px}.hero h1{font-size:clamp(3.1rem,13vw,5.2rem)}.hero .lead{font-size:1rem}.hero-actions{justify-content:center}.hero-media{margin:0 0 0 20px;min-height:540px;border-radius:120px 0 0 0;box-shadow:-10px 14px 0 #d6b79f}.trust{margin-top:0}.topbar{font-size:.67rem;letter-spacing:.08em}}
@media(max-width:520px){.brand img{width:180px}.nav-links .btn{padding:0 15px;min-height:44px;font-size:.78rem}.hero-copy:before{width:245px;height:165px}.hero-copy{padding-top:18px}.hero .eyebrow{font-size:.7rem}.hero h1{font-size:3.35rem}.hero-media{min-height:500px;border-radius:96px 0 0 0;background-position:center}.hero-badge{right:14px;bottom:16px;font-size:.76rem;padding:13px 14px}}

/* Contraste renforcé et suppression du doublon de logo */
.site-header{background:#080808;border-bottom:1px solid #302b27}.brand img{display:none}.brand{text-decoration:none}.brand:after{content:"ND  ·  ARTISAN CARRELEUR";color:#e3b893;font-family:Georgia,"Times New Roman",serif;font-size:1.05rem;letter-spacing:.16em;white-space:nowrap}.nav-links a{color:#f6f0e8}.nav-links .btn{background:#c27c59;border-color:#c27c59;color:#fff}.hero{background:#080808}.hero-grid{grid-template-columns:.9fr 1.1fr}.hero-copy{background:#080808;color:#fff;padding-top:34px}.hero-copy:before{width:min(460px,92%);height:310px;margin:0 0 2px -26px;filter:brightness(1.13) contrast(1.12);background-size:contain}.hero .eyebrow{color:#dfa980;font-weight:800}.hero h1{color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.18)}.hero .lead{color:#f0e9e1;font-size:1.13rem}.hero .btn-outline{color:#fff;border-color:#817268}.hero .btn-outline:hover{background:#fff;color:#111;border-color:#fff}.hero-media{margin-top:0;min-height:780px;border-radius:0 0 0 190px;box-shadow:-16px 18px 0 #bd7655;background-position:center 45%}.hero-badge{background:#f4ecdd;color:#15120f;border-left:5px solid #bd7655;font-weight:700}.trust{margin-top:0}
@media(max-width:850px){.brand:after{font-size:.82rem;letter-spacing:.1em}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:24px 24px 52px}.hero-copy:before{width:330px;height:225px;margin:0 auto}.hero .lead{color:#f3ede6}.hero-media{margin:0;min-height:570px;border-radius:0 0 0 110px;box-shadow:-9px 12px 0 #bd7655}}
@media(max-width:520px){.nav{height:76px}.brand:after{content:"ND · CARRELEUR";font-size:.78rem}.hero-copy:before{width:285px;height:195px}.hero-copy{padding-top:16px}.hero h1{font-size:3.2rem}.hero-media{min-height:520px}.hero-actions .btn{width:100%}}

/* Trame architecturale et halo cuivre du hero */
.hero-copy{background-color:#080808;background-image:radial-gradient(circle at 43% 23%,rgba(198,128,88,.22),transparent 31%),linear-gradient(rgba(215,169,128,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(215,169,128,.055) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px}
.hero-copy:before{filter:brightness(1.18) contrast(1.15) drop-shadow(0 18px 28px rgba(198,128,88,.16))}
@media(max-width:850px){.hero-copy{background-size:auto,54px 54px,54px 54px}}

/* Signature commerciale complète */
.brand:after{content:"ND  ARTISAN CARRELEUR";font-family:Didot,"Bodoni 72 Smallcaps","Bodoni MT",Georgia,serif;font-size:1.12rem;font-weight:500;letter-spacing:.115em;color:#e4b48e;text-transform:none;border-bottom:1px solid rgba(228,180,142,.55);padding:0 0 7px}
@media(max-width:850px){.brand:after{font-size:.91rem;letter-spacing:.075em}}
@media(max-width:520px){.brand:after{content:"ND  ARTISAN CARRELEUR";font-size:.82rem;letter-spacing:.055em;padding-bottom:5px}}

.project-card-secondary{margin-top:34px}.project-card-secondary .project-image{order:2}.project-card-secondary .project-copy{order:1;background:#161310}
@media(max-width:850px){.project-card-secondary .project-image,.project-card-secondary .project-copy{order:initial}}
.project-card-tertiary{margin-top:34px}.project-card-tertiary .project-copy{background:#11100e}

/* Présentation de l'artisan */
.about{position:relative;overflow:hidden;background:#e8e2da;padding:112px 0}.about:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(17,17,15,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(17,17,15,.045) 1px,transparent 1px);background-size:72px 72px;pointer-events:none}.about-grid{position:relative;display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(48px,7vw,96px);align-items:center}.about-portrait{position:relative;margin:0 0 28px 18px}.about-portrait:before{content:"";position:absolute;inset:22px 22px -24px -18px;background:#bd7655}.about-portrait img{position:relative;width:100%;aspect-ratio:1.02/1;object-fit:cover;object-position:center 42%;filter:contrast(1.05);border:1px solid rgba(255,255,255,.16)}.about-experience{position:absolute;right:-22px;bottom:-28px;z-index:2;min-width:170px;padding:20px 24px;background:#090909;color:#fff;border-top:3px solid #d7ad8b}.about-experience strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:2.15rem;font-weight:500;line-height:1}.about-experience span{display:block;margin-top:7px;color:#d8d0c7;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.about-copy{max-width:620px}.about-copy .eyebrow{color:#80583e}.about-copy h2{max-width:650px;margin:10px 0 28px}.about-copy p{max-width:570px;margin:0 0 18px;color:#514b45;font-size:1.05rem}.about-signature{display:inline-flex;flex-direction:column;margin-top:20px;padding-top:15px;border-top:1px solid rgba(17,17,15,.25);font-family:Georgia,"Times New Roman",serif;font-size:1.14rem}.about-signature span{margin-top:2px;color:#80583e;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
@media(max-width:850px){.about{padding:80px 0}.about:before{background-size:54px 54px}.about-grid{grid-template-columns:1fr;gap:62px}.about-portrait{width:min(88%,580px);margin:0 auto 28px}.about-experience{right:-14px}.about-copy{max-width:680px;margin:auto}}
@media(max-width:520px){.about{padding:66px 0 72px}.about-grid{gap:50px}.about-portrait{width:calc(100% - 20px);margin-left:14px}.about-portrait:before{inset:14px 14px -16px -12px}.about-experience{right:-8px;bottom:-22px;min-width:148px;padding:16px 18px}.about-experience strong{font-size:1.75rem}.about-copy h2{font-size:2.5rem}.about-copy p{font-size:1rem}.about-signature{margin-top:12px}}

/* Portrait volontairement discret : carré, complet et sans déformation */
.about-grid{grid-template-columns:minmax(280px,390px) minmax(0,1fr)}.about-portrait{width:100%;max-width:390px;aspect-ratio:1/1;justify-self:start}.about-portrait img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;object-position:center;background:#080808}
@media(max-width:850px){.about-grid{grid-template-columns:minmax(0,1fr);gap:54px}.about-portrait{width:min(68%,320px);margin:0 auto 24px}.about-copy{width:100%}}
@media(max-width:520px){.about-portrait{width:min(72%,260px);margin:0 auto 22px}.about-experience{right:-22px}}

/* Informations et récit du chantier escalier */
.project-facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:38px;border-top:1px solid #3b3733;border-left:1px solid #3b3733}.project-facts div{padding:18px 20px;border-right:1px solid #3b3733;border-bottom:1px solid #3b3733}.project-facts span{display:block;color:#a9a198;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.project-facts strong{display:block;margin-top:4px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:1.05rem;font-weight:500}.gallery-intro{max-width:820px;margin:-8px 0 34px;color:#5e5750;font-size:1.02rem}.project-card-staircase{margin-top:34px}.project-card-staircase .project-copy{background:#17130f}
@media(max-width:850px){.project-facts{grid-template-columns:1fr 1fr}.gallery-title{align-items:start;gap:12px}.gallery-title span{text-align:right}.gallery-intro{margin-top:0}}
@media(max-width:520px){.project-facts{grid-template-columns:1fr}.project-facts div{padding:14px 16px}.gallery-title{display:block}.gallery-title span{display:block;margin-top:8px;text-align:left}.gallery-intro{font-size:1rem}}

/* Galerie compacte pour les détails de parement extérieur */
.gallery-three .shot{grid-column:span 4}.gallery-three .shot img{height:560px}
@media(max-width:850px){.gallery-three .shot{grid-column:span 12}.gallery-three .shot img{height:470px}}
@media(max-width:520px){.gallery-three .shot img{height:390px}}

/* Chantier signature : photo d'accueil et rythme éditorial */
.hero-media{background-image:url('assets/signature-cavaillon-vue-principale.webp')}
.project-hero-signature{position:relative;overflow:hidden;background-color:#080808;background-image:radial-gradient(circle at 78% 24%,rgba(194,124,89,.2),transparent 32%),linear-gradient(rgba(215,169,128,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(215,169,128,.045) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px}.project-hero-signature:after{content:"SIGNATURE";position:absolute;right:-22px;bottom:-42px;color:rgba(255,255,255,.035);font-family:Georgia,"Times New Roman",serif;font-size:clamp(5rem,13vw,12rem);letter-spacing:.08em;pointer-events:none}.project-hero-signature .wrap{position:relative;z-index:1}.project-hero-signature .eyebrow{color:#dfa980}.signature-opening{border-top:6px solid #bd7655}
@media(max-width:850px){.project-hero-signature{background-size:auto,54px 54px,54px 54px}.project-hero-signature:after{right:-12px;bottom:-18px}}

/* Avis clients — adaptation web du flyer de fin de chantier */
.reviews-preview{position:relative;overflow:hidden;background:#f1e8d9}.reviews-preview:before,.reviews-list-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 18%,rgba(255,255,255,.78) 0 2px,transparent 3px),radial-gradient(circle at 82% 68%,rgba(98,73,45,.1) 0 1px,transparent 2px),linear-gradient(rgba(125,95,65,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(125,95,65,.055) 1px,transparent 1px);background-size:110px 110px,74px 74px,72px 72px,72px 72px;pointer-events:none}.reviews-preview .wrap,.reviews-list-section .wrap{position:relative}.reviews-preview-head h2{max-width:670px}.review-grid{display:grid;gap:20px}.review-grid-preview{grid-template-columns:repeat(3,1fr)}.review-card{position:relative;display:flex;flex-direction:column;min-height:310px;padding:34px;background:rgba(255,255,255,.86);border:1px solid rgba(118,88,55,.22);box-shadow:0 16px 40px rgba(58,40,24,.06)}.review-card:before{content:"“";position:absolute;right:24px;top:7px;color:rgba(165,122,47,.15);font-family:Georgia,"Times New Roman",serif;font-size:6.4rem;line-height:1}.review-card blockquote{position:relative;margin:28px 0 30px;font-family:Georgia,"Times New Roman",serif;font-size:1.28rem;line-height:1.48}.review-card footer{display:flex;align-items:baseline;gap:7px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(17,17,15,.15)}.review-card footer strong{font-size:.94rem}.review-card footer span{color:#776e64;font-size:.82rem}.review-stars{position:relative;color:#a9802e;font-size:1rem;letter-spacing:.14em;white-space:nowrap}.reviews-preview-action{display:flex;align-items:center;gap:26px;margin-top:34px}.reviews-google-link{font-weight:700;text-underline-offset:5px}
.reviews-hero{position:relative;overflow:hidden;padding:86px 0;background-color:#080808;background-image:radial-gradient(circle at 28% 28%,rgba(194,124,89,.22),transparent 30%),linear-gradient(rgba(215,169,128,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(215,169,128,.05) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px;color:#fff}.reviews-hero:after{content:"AVIS";position:absolute;left:-28px;bottom:-76px;color:rgba(255,255,255,.035);font-family:Georgia,"Times New Roman",serif;font-size:clamp(8rem,19vw,18rem);letter-spacing:.08em;pointer-events:none}.reviews-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(290px,.58fr);gap:clamp(54px,8vw,112px);align-items:center}.reviews-hero-copy .eyebrow{color:#d5a441}.reviews-hero-copy h1{max-width:760px;margin-top:10px}.reviews-hero-copy .lead{max-width:700px}.reviews-hero .btn{background:#c27c59;border-color:#c27c59}.reviews-hero .btn:hover{background:#fff;border-color:#fff;color:#111}.reviews-hero .btn-outline{background:transparent;border-color:#786d62;color:#fff}.reviews-hero .breadcrumb{color:#bfb7af}.review-themes{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0 0 32px;padding:0}.review-themes li{padding:8px 13px;border:1px solid rgba(218,179,145,.4);color:#ead8c8;font-size:.78rem;letter-spacing:.05em}.review-flyer{width:min(100%,365px);margin:0;justify-self:end;background:#efe7d9;padding:12px;box-shadow:-16px 18px 0 #bd7655}.review-flyer img{width:100%;height:auto}.review-flyer figcaption{padding:10px 4px 1px;color:#5d5147;font-size:.72rem;text-align:center}
.reviews-list-section{position:relative;overflow:hidden;background:#f1e8d9}.reviews-list-section .section-head{align-items:start}.review-grid-full{grid-template-columns:repeat(2,1fr)}.review-grid-full .review-card{min-height:390px}.review-card-top{position:relative;display:flex;align-items:start;justify-content:space-between;gap:18px}.review-tag{color:#795432;font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.review-grid-full .review-card blockquote{font-size:1.18rem}.review-card-featured{background:#0d0c0a;color:#fff;border-color:#0d0c0a}.review-card-featured:before{color:rgba(210,164,65,.18)}.review-card-featured .review-tag{color:#dcb378}.review-card-featured footer{border-color:rgba(255,255,255,.18)}.review-card-featured footer span{color:#c8bfb4}.review-card-wide{grid-column:1/-1;min-height:300px}.review-card-wide blockquote{max-width:920px;font-size:1.35rem}.reviews-source-note{max-width:880px;margin:28px auto 0;color:#6a6056;font-size:.78rem;text-align:center}.reviews-cta{background:#0a0a09;color:#fff}.reviews-cta-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end}.reviews-cta .eyebrow{color:#dfa980}.reviews-cta p{max-width:540px;margin:0 0 26px;color:#c8c0b8}
@media(max-width:960px){.review-grid-preview{grid-template-columns:1fr 1fr}.review-grid-preview .review-card:last-child{grid-column:1/-1;min-height:250px}.reviews-hero-grid{grid-template-columns:minmax(0,1fr) 310px;gap:46px}.review-flyer{width:300px}.review-card{padding:28px}}
@media(min-width:851px) and (max-width:1100px){.nav-links{gap:15px}.nav-links a{font-size:.8rem}.nav-links .btn{padding:0 15px}.brand:after{font-size:.9rem;letter-spacing:.07em}}
@media(max-width:850px){.review-grid-preview,.review-grid-full{grid-template-columns:1fr}.review-grid-preview .review-card:last-child,.review-card-wide{grid-column:auto}.review-card,.review-grid-full .review-card{min-height:auto}.reviews-hero{padding:68px 0 82px;background-size:auto,54px 54px,54px 54px}.reviews-hero-grid{grid-template-columns:1fr}.reviews-hero-copy{text-align:center}.reviews-hero-copy .lead{margin-left:auto;margin-right:auto}.reviews-hero .hero-actions,.review-themes{justify-content:center}.reviews-hero .breadcrumb{text-align:left}.review-flyer{width:min(70%,330px);justify-self:center;box-shadow:-10px 12px 0 #bd7655}.reviews-cta-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:520px){.reviews-preview:before,.reviews-list-section:before{background-size:76px 76px,58px 58px,54px 54px,54px 54px}.review-card{padding:24px}.review-card blockquote,.review-grid-full .review-card blockquote,.review-card-wide blockquote{font-size:1.08rem}.review-card footer{display:block}.review-card footer span{display:block;margin-top:3px}.reviews-preview-action{align-items:flex-start;flex-direction:column;gap:16px}.reviews-hero{padding-top:54px}.reviews-hero-copy h1{font-size:3.1rem}.reviews-hero .hero-actions .btn{width:100%}.review-flyer{width:min(82%,310px)}.review-card-top{display:block}.review-card-top .review-stars{display:block;margin-top:10px}.reviews-cta h2{font-size:2.55rem}}

/* Rythme final : davantage de respiration et une lecture mobile moins compacte */
.hero .eyebrow{display:block;margin:20px 0 16px}.section-head h2,.about-copy h2,.contact h2{margin-top:12px}.project-copy h3{margin-top:13px}.project-copy p{margin:20px 0 4px;line-height:1.75}.project-card-secondary,.project-card-tertiary{margin-top:46px}.all-projects-action{display:flex;justify-content:center;margin-top:50px}.all-projects-action .btn-outline{background:transparent;color:var(--ink)}.all-projects-action .btn-outline:hover{color:#fff}

/* Page regroupant toutes les réalisations */
.portfolio-hero{position:relative;overflow:hidden;padding:104px 0 92px;background-color:#080808;background-image:radial-gradient(circle at 78% 22%,rgba(194,124,89,.2),transparent 30%),linear-gradient(rgba(215,169,128,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(215,169,128,.045) 1px,transparent 1px);background-size:auto,72px 72px,72px 72px;color:#fff}.portfolio-hero .eyebrow{color:#dfa980}.portfolio-hero h1{max-width:900px;margin:14px 0 28px;font-size:clamp(3.2rem,6vw,6rem)}.portfolio-hero p{max-width:720px;margin:0;color:#d2cbc3;font-size:1.08rem;line-height:1.75}.portfolio-section{padding:110px 0;background:#f4ecdd}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.portfolio-card{overflow:hidden;background:#fff;border:1px solid rgba(17,17,15,.13)}.portfolio-card-featured{grid-column:1/-1;display:grid;grid-template-columns:1.14fr .86fr;background:#0d0c0a;color:#fff}.portfolio-image{display:block;overflow:hidden}.portfolio-image img{width:100%;height:430px;object-fit:cover;transition:transform .35s ease}.portfolio-card-featured .portfolio-image img{height:100%;min-height:570px}.portfolio-image:hover img{transform:scale(1.02)}.portfolio-copy{padding:34px 36px 38px}.portfolio-card-featured .portfolio-copy{display:flex;flex-direction:column;justify-content:center;padding:56px}.portfolio-copy .eyebrow{color:#8a6245}.portfolio-card-featured .eyebrow{color:#dfa980}.portfolio-copy h2{margin:12px 0 18px;font-size:2rem}.portfolio-card-featured h2{font-size:clamp(2.5rem,4vw,4rem)}.portfolio-copy p{margin:0 0 25px;color:#625b54;line-height:1.72}.portfolio-card-featured p{color:#cec6bd}.portfolio-copy>a{font-weight:800;text-underline-offset:6px}.portfolio-card-pending .portfolio-image img{object-position:center 42%}.button-spacer{height:14px}.light-outline{color:#fff;border-color:#716b65}

@media(max-width:850px){
  section{padding:88px 0}
  .nav{height:84px;gap:16px}
  .hero-copy{padding:34px 28px 76px}
  .hero-copy:before{width:280px;height:190px;margin:0 auto 26px}
  .hero .eyebrow{margin:0 0 19px}
  .hero h1{font-size:clamp(3rem,12.5vw,3.7rem);line-height:1.12}
  .hero .lead{margin:36px 0 38px;line-height:1.75}
  .hero-actions{gap:16px}
  .trust-item{padding:30px 25px}
  .about{padding:92px 0}
  .about-grid{gap:64px}
  .about-copy h2{margin:14px 0 30px}
  .about-copy p{margin-bottom:22px;line-height:1.75}
  .section-head{gap:28px;margin-bottom:56px}
  .section-head h2{margin-top:13px}
  .section-head p{line-height:1.75}
  .card{padding:40px 30px;min-height:auto}
  .card+.card{border-top:0}
  .num{margin-bottom:30px}
  .card p{margin-top:18px;line-height:1.75}
  .project-card-secondary,.project-card-tertiary{margin-top:48px}
  .project-copy{padding:50px 30px 54px}
  .project-copy h3{margin-top:14px}
  .project-copy p{margin-top:22px}
  .project-list{margin:25px 0 34px}
  .project-list li{padding:14px 0;line-height:1.55}
  .all-projects-action{margin-top:48px}
  .step{padding:36px 30px}
  .step b{margin-bottom:30px}
  .contact-grid{gap:58px}
  .contact p{line-height:1.75}
  .review-grid{gap:26px}
  .review-card{padding:32px}
  .reviews-preview-action{margin-top:42px}
  .project-hero{padding:82px 0 70px}
  .project-hero .eyebrow{display:block;margin-bottom:16px}
  .project-hero h1{line-height:1.12}
  .project-hero p{margin-top:26px;line-height:1.75}
  .gallery-section{padding:88px 0}
  .portfolio-hero{padding:82px 0 76px;background-size:auto,54px 54px,54px 54px}
  .portfolio-hero h1{margin-top:16px}
  .portfolio-section{padding:88px 0}
  .portfolio-grid{grid-template-columns:1fr;gap:32px}
  .portfolio-card-featured{grid-column:auto;display:block}
  .portfolio-card-featured .portfolio-image img,.portfolio-image img{height:420px;min-height:0}
  .portfolio-card-featured .portfolio-copy,.portfolio-copy{padding:38px 32px 42px}
}

@media(max-width:520px){
  body{line-height:1.68}
  .wrap{width:min(calc(100% - 36px),var(--max))}
  .nav{height:84px}
  .brand:after{font-size:.77rem;letter-spacing:.045em}
  .nav-links .btn{min-height:48px;padding:0 17px;font-size:.79rem;line-height:1.35;text-align:center}
  .hero-copy{padding:34px 26px 78px}
  .hero-copy:before{width:270px;height:184px;margin-bottom:29px}
  .hero h1{font-size:3rem}
  .hero .lead{margin-top:39px;margin-bottom:40px;font-size:1.02rem;line-height:1.78}
  .hero-media{min-height:500px}
  section{padding:84px 0}
  .trust-item{padding:28px 24px}
  .about{padding:84px 0 90px}
  .about-grid{gap:60px}
  .about-portrait{margin-bottom:30px}
  .about-copy h2{font-size:2.42rem;line-height:1.12}
  .section-head{gap:27px;margin-bottom:52px}
  .section-head h2{line-height:1.12}
  .project-image{min-height:420px}
  .project-copy{padding:47px 28px 52px}
  .project-copy h3{font-size:1.65rem;line-height:1.18}
  .project-list{margin-top:26px}
  .all-projects-action .btn{width:100%}
  .review-card{padding:29px 27px}
  .review-card blockquote,.review-grid-full .review-card blockquote,.review-card-wide blockquote{margin:32px 0 34px;line-height:1.6}
  .reviews-preview-action{gap:21px}
  .project-hero{padding:76px 0 66px}
  .project-hero h1{font-size:2.85rem}
  .gallery-section{padding:82px 0}
  .gallery-title{margin-bottom:35px}
  .shot figcaption{padding:16px 17px}
  .portfolio-hero{padding:74px 0 70px}
  .portfolio-hero h1{font-size:3rem;line-height:1.12;margin:17px 0 30px}
  .portfolio-hero p{font-size:1rem}
  .portfolio-section{padding:82px 0}
  .portfolio-grid{gap:30px}
  .portfolio-image img,.portfolio-card-featured .portfolio-image img{height:350px}
  .portfolio-copy,.portfolio-card-featured .portfolio-copy{padding:34px 27px 39px}
  .portfolio-copy h2,.portfolio-card-featured h2{font-size:2rem;line-height:1.15}
}
/* ================================================================
   Ajustement mobile final — la version ordinateur reste inchangée.
   La composition, les couleurs et les détails du site sont conservés ;
   seules les dimensions et les grilles sous 850 px sont adaptées.
   ================================================================ */
@media(max-width:850px){
  html,body{max-width:100%;overflow-x:hidden}
  .wrap{width:min(calc(100% - 24px),var(--max))}
  section{padding:62px 0}

  /* En-tête : même identité, simplement remise à l'échelle. */
  .topbar{padding:6px 8px;font-size:.58rem;letter-spacing:.055em;white-space:nowrap}
  .nav{height:70px;gap:10px}
  .brand{min-width:0;overflow:hidden}
  .brand:after{display:block;overflow:hidden;font-size:clamp(.61rem,2.55vw,.82rem);letter-spacing:.055em;text-overflow:clip;white-space:nowrap;padding-bottom:6px}
  .nav-links{flex:0 0 auto;gap:0}
  .nav-links .btn{min-height:40px;padding:0 clamp(10px,2.8vw,17px);font-size:clamp(.62rem,2.35vw,.76rem);white-space:nowrap}

  /* Hero : maintien de la composition PC en deux panneaux. */
  .hero{padding-bottom:0}
  .hero-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:clamp(660px,175vw,760px);overflow:hidden}
  .hero-copy{min-width:0;align-items:flex-start;justify-content:flex-start;padding:clamp(16px,4.2vw,30px) clamp(8px,2.4vw,18px) 24px max(12px,calc((100vw - var(--max))/2));text-align:left;background-size:auto,54px 54px,54px 54px}
  .hero-copy:before{width:clamp(128px,39vw,205px);height:clamp(128px,39vw,205px);max-width:100%;margin:0 auto clamp(12px,3vw,20px);background-image:url('assets/logo.png');background-position:center;background-size:contain;background-repeat:no-repeat;filter:drop-shadow(0 12px 22px rgba(198,128,88,.16))}
  .hero .eyebrow{max-width:100%;margin:0 0 clamp(10px,2.7vw,16px);font-size:clamp(.52rem,2.18vw,.7rem);line-height:1.42;letter-spacing:.12em}
  .hero h1{max-width:100%;font-size:clamp(1.78rem,8.45vw,2.9rem);line-height:1.035;letter-spacing:-.04em}
  .hero .lead{max-width:100%;margin:clamp(16px,4.6vw,26px) 0 0;color:#f3ede6;font-size:clamp(.69rem,2.95vw,.9rem);line-height:1.5}
  .hero-actions{display:grid;width:100%;gap:8px;margin-top:clamp(17px,4.8vw,28px)}
  .hero-actions .btn{width:100%;min-height:35px;padding:5px 6px;font-size:clamp(.54rem,2.25vw,.69rem);line-height:1.3;text-align:center;white-space:normal}
  .hero-media{align-self:stretch;height:auto;min-height:0;margin:0;border-left:6px solid #bd7655;border-bottom:6px solid #bd7655;border-radius:0 0 0 clamp(74px,23vw,150px);box-shadow:none;background-position:60% center}
  .hero-badge{right:7px;bottom:17px;max-width:calc(100% - 16px);padding:clamp(8px,2.4vw,13px) clamp(7px,2.3vw,12px);border-left-width:4px;font-size:clamp(.56rem,2.35vw,.72rem);line-height:1.35}

  /* Les quatre garanties restent alignées comme sur ordinateur. */
  .trust{margin-top:0}
  .trust-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .trust-item{min-width:0;padding:14px clamp(5px,1.8vw,12px);border-right:1px solid #e6e0d9}
  .trust-item:nth-child(2){border-right:1px solid #e6e0d9}
  .trust-item:last-child{border-right:0}
  .trust-item strong{font-size:clamp(.61rem,2.35vw,.82rem);line-height:1.25}
  .trust-item span{display:block;margin-top:4px;font-size:clamp(.48rem,1.9vw,.66rem);line-height:1.25}

  /* Sections éditoriales : proportions du PC, adaptées à la largeur. */
  h2{font-size:clamp(1.8rem,7.1vw,3rem);line-height:1.08}
  h3{font-size:clamp(1.08rem,4.4vw,1.5rem)}
  .section-head{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(14px,4vw,32px);align-items:end;margin-bottom:clamp(32px,8vw,50px)}
  .section-head p{font-size:clamp(.75rem,2.75vw,.96rem);line-height:1.62}

  .about{padding:66px 0}
  .about-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(20px,5vw,44px);align-items:center}
  .about-portrait{width:100%;max-width:none;margin:0 0 18px 8px}
  .about-portrait:before{inset:12px 12px -14px -8px}
  .about-experience{right:-8px;bottom:-17px;min-width:96px;padding:11px 12px}
  .about-experience strong{font-size:clamp(1.25rem,5vw,1.75rem)}
  .about-experience span{margin-top:4px;font-size:clamp(.48rem,1.8vw,.63rem);line-height:1.3}
  .about-copy{width:100%;max-width:none;margin:0}
  .about-copy h2{margin:10px 0 18px;font-size:clamp(1.72rem,6.9vw,2.8rem)}
  .about-copy p{margin-bottom:12px;font-size:clamp(.72rem,2.7vw,.95rem);line-height:1.62}
  .about-signature{margin-top:8px;padding-top:10px;font-size:clamp(.78rem,3vw,1rem)}
  .about-signature span{font-size:clamp(.48rem,1.8vw,.63rem)}

  .cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .card{min-height:0;padding:clamp(20px,5vw,34px) clamp(14px,3.7vw,26px)}
  .card+.card{border-top:0}
  .num{margin-bottom:20px;font-size:.92rem}
  .card h3{font-size:clamp(1.08rem,4.5vw,1.45rem)}
  .card p{margin-top:13px;font-size:clamp(.71rem,2.65vw,.88rem);line-height:1.58}

  .project-card{grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr)}
  .project-card-secondary .project-image{order:2}
  .project-card-secondary .project-copy{order:1}
  .project-image{min-height:clamp(500px,138vw,650px)}
  .project-copy{min-width:0;padding:clamp(24px,6vw,42px) clamp(13px,3.7vw,28px)}
  .project-copy h3{font-size:clamp(1.16rem,4.8vw,1.65rem);line-height:1.16}
  .project-copy p{margin-top:15px;font-size:clamp(.7rem,2.62vw,.87rem);line-height:1.58}
  .project-list{margin:17px 0 22px}
  .project-list li{padding:9px 0;font-size:clamp(.64rem,2.35vw,.8rem);line-height:1.42}
  .project-copy .btn{min-height:40px;padding:6px 9px;font-size:clamp(.62rem,2.3vw,.76rem);line-height:1.3;text-align:center}
  .project-card-secondary,.project-card-tertiary{margin-top:34px}
  .all-projects-action{margin-top:36px}
  .all-projects-action .btn{width:auto;min-height:42px;font-size:.76rem}

  .review-grid-preview,.review-grid-full{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .review-grid-preview .review-card:last-child,.review-card-wide{grid-column:1/-1}
  .review-card,.review-grid-full .review-card{min-height:0;padding:clamp(18px,4.8vw,30px)}
  .review-card blockquote,.review-grid-full .review-card blockquote,.review-card-wide blockquote{margin:25px 0;font-size:clamp(.78rem,2.85vw,1rem);line-height:1.55}
  .review-card footer{display:block;padding-top:13px}
  .review-card footer strong{font-size:.76rem}
  .review-card footer span{display:block;margin-top:2px;font-size:.67rem}
  .review-stars{font-size:.78rem}
  .reviews-preview-action{align-items:center;flex-direction:row;flex-wrap:wrap;gap:15px;margin-top:32px}
  .reviews-preview-action .btn{min-height:42px;font-size:.73rem}

  .reviews-hero{padding:58px 0 68px}
  .reviews-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(120px,.58fr);gap:clamp(18px,5vw,40px);align-items:center}
  .reviews-hero-copy{text-align:left}
  .reviews-hero-copy .lead{margin-left:0;margin-right:0}
  .reviews-hero .hero-actions,.review-themes{justify-content:flex-start}
  .reviews-hero .hero-actions{display:flex;width:auto}
  .reviews-hero .hero-actions .btn{width:auto;min-height:40px;padding:5px 10px}
  .review-themes{gap:6px;margin-bottom:22px}
  .review-themes li{padding:6px 8px;font-size:.58rem}
  .review-flyer{width:100%;max-width:230px;justify-self:end;box-shadow:-8px 10px 0 #bd7655}
  .reviews-cta-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:26px;align-items:end}

  .steps{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:34px}
  .step{min-height:0;padding:clamp(22px,5.5vw,34px) clamp(15px,4vw,26px)}
  .step b{margin-bottom:20px;font-size:1.55rem}
  .step p{font-size:clamp(.72rem,2.7vw,.9rem);line-height:1.58}

  .contact-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(22px,6vw,48px)}
  .contact p{font-size:clamp(.74rem,2.75vw,.94rem);line-height:1.62}
  .contact-links{gap:7px;margin-top:21px}
  .contact-links a{padding:10px 0;font-size:clamp(.68rem,2.5vw,.86rem);overflow-wrap:anywhere}
  .hours{padding-left:clamp(15px,4vw,28px);border-left:1px solid #403d39}
  .hours h3{margin-top:9px}
  .hours dl{margin:17px 0}
  .hours div{display:block;padding:9px 0;font-size:clamp(.65rem,2.4vw,.82rem)}
  .hours dd{margin-top:2px;color:#cfc7be}

  /* Réalisations et galeries : deux images par ligne, comme la grille PC. */
  .project-hero{padding:62px 0 50px}
  .project-hero h1{font-size:clamp(2.2rem,9vw,4rem);line-height:1.08}
  .project-hero p{font-size:clamp(.75rem,2.8vw,.96rem);line-height:1.62}
  .project-facts{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px}
  .project-facts div{padding:13px 14px}
  .project-facts span{font-size:.59rem}
  .project-facts strong{font-size:.82rem}
  .gallery-section{padding:60px 0}
  .gallery-title{display:flex;align-items:end;gap:10px;margin-bottom:27px}
  .gallery-title span{font-size:.7rem;text-align:right}
  .gallery-intro{margin-top:0;font-size:.82rem;line-height:1.62}
  .gallery{gap:12px}
  .shot{grid-column:span 6}
  .shot.wide{grid-column:span 12}
  .shot img{height:clamp(220px,70vw,380px)}
  .shot.wide img{height:clamp(300px,95vw,520px)}
  .shot figcaption{padding:11px 12px;font-size:.68rem;line-height:1.4}
  .gallery-three .shot{grid-column:span 6}
  .gallery-three .shot:last-child{grid-column:span 12}
  .gallery-three .shot img{height:clamp(220px,70vw,380px)}

  .portfolio-hero{padding:62px 0 56px}
  .portfolio-hero h1{margin:13px 0 22px;font-size:clamp(2.35rem,9.4vw,4.3rem)}
  .portfolio-hero p{font-size:clamp(.75rem,2.8vw,.96rem);line-height:1.62}
  .portfolio-section{padding:62px 0}
  .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .portfolio-card-featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}
  .portfolio-image img{height:clamp(190px,54vw,330px)}
  .portfolio-card-featured .portfolio-image img{height:100%;min-height:clamp(350px,92vw,520px)}
  .portfolio-copy,.portfolio-card-featured .portfolio-copy{padding:clamp(18px,4.8vw,32px)}
  .portfolio-copy h2,.portfolio-card-featured h2{margin:9px 0 13px;font-size:clamp(1.18rem,4.9vw,1.8rem);line-height:1.14}
  .portfolio-copy p{margin-bottom:16px;font-size:clamp(.68rem,2.5vw,.84rem);line-height:1.55}
  .portfolio-copy>a{font-size:clamp(.66rem,2.45vw,.82rem)}

  /* Le gros bandeau fixe est supprimé : les boutons restent dans le site. */
  .mobile-contact{display:none!important}
  .footer{padding-bottom:35px}
}

@media(max-width:520px){
  .wrap{width:min(calc(100% - 22px),var(--max))}
  section{padding:56px 0}
  .nav{height:70px}
  .brand:after{content:"ND  ARTISAN CARRELEUR";font-size:clamp(.58rem,2.55vw,.72rem);letter-spacing:.04em}
  .nav-links .btn{min-height:40px;padding:0 10px;font-size:clamp(.59rem,2.35vw,.68rem)}
  .hero-grid{grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);min-height:clamp(660px,175vw,720px)}
  .hero-copy{padding:16px 8px 22px 12px}
  .hero-copy:before{width:clamp(105px,32vw,138px);height:clamp(105px,32vw,138px);margin-left:-6px}
  .hero h1{font-size:clamp(1.72rem,8.3vw,2.25rem)}
  .hero .lead{font-size:clamp(.67rem,2.9vw,.78rem)}
  .hero-media{border-left-width:6px;border-bottom-width:6px;background-position:62% center}
  .hero-badge{right:6px;bottom:15px}
  .about{padding:58px 0}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .project-image{min-height:clamp(500px,140vw,600px)}
  .review-grid-preview,.review-grid-full{grid-template-columns:repeat(2,minmax(0,1fr))}
  .review-grid-preview .review-card:last-child,.review-card-wide{grid-column:1/-1}
  .review-card-top{display:block}
  .review-card-top .review-stars{display:block;margin-top:8px}
  .reviews-hero{padding-top:54px}
  .reviews-hero-copy h1{font-size:clamp(2.1rem,8.8vw,2.8rem)}
  .review-flyer{width:100%;max-width:175px}
  .reviews-cta h2{font-size:clamp(1.9rem,7.7vw,2.5rem)}
  .project-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-title{display:flex}
  .gallery-three .shot img{height:clamp(220px,70vw,340px)}
  .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portfolio-card-featured{grid-column:1/-1;display:grid}
  .all-projects-action .btn{width:auto}
}

@media(max-width:360px){
  .topbar{font-size:.52rem;letter-spacing:.035em}
  .nav{gap:7px}
  .brand:after{font-size:.57rem;letter-spacing:.025em}
  .nav-links .btn{padding:0 8px;font-size:.58rem}
  .hero-grid{grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);min-height:660px}
  .hero-copy{padding:14px 7px 20px 10px}
  .hero-copy:before{width:132px;height:132px;margin-left:auto;margin-right:auto}
  .hero h1{font-size:1.72rem}
  .hero .lead{font-size:.65rem}
  .hero-actions .btn{font-size:.53rem}
  .hero-media{border-radius:0 0 0 72px}
}

/* Nouveau logo transparent, à la même présence visuelle sur PC et mobile. */
.hero-copy:before{background-position:center;background-size:contain;background-repeat:no-repeat;height:auto;aspect-ratio:1 / 1;flex-shrink:0;filter:none;margin-left:auto;margin-right:auto}

/* Le métier figure déjà dans le nouveau logo : suppression du doublon visuel. */
.hero-copy>.eyebrow{display:none}
.hero-copy:before{margin-bottom:clamp(20px,3vw,30px)}


/* Mise à jour du 9 septembre 2026 : accueil et prestation salles de bains. */
.hero-seo .hero-signature{margin:24px 0 0;color:#dfb18e;font-family:Georgia,"Times New Roman",serif;font-size:clamp(1rem,1.7vw,1.45rem);line-height:1.4;max-width:560px}
.hero-seo .lead{margin-top:22px;font-size:1rem;line-height:1.65}
.service-discovery{display:inline-flex;align-items:center;gap:10px;max-width:100%;min-height:44px;margin-top:8px;color:#77503a;font-size:1rem;font-weight:650;line-height:1.45;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.service-discovery span{flex:none}
.service-discovery:hover{color:#11110f}
.service-discovery:focus-visible,.zone-seo a:focus-visible,.bathroom-page a:focus-visible{outline:2px solid #b97851;outline-offset:5px}
.zone-seo .section-head p,.zone-seo .zone-group p,.zone-question{font-size:1rem;line-height:1.7}
.zone-groups{display:grid;grid-template-columns:1fr 1fr;gap:32px;border-top:1px solid #bdb5ac;padding-top:30px}
.zone-group h3{font-size:1.45rem;line-height:1.25}
.zone-group p{margin:14px 0 0;color:#554f49}
.zone-question{margin:26px 0 0;color:#554f49}
.zone-question a{text-underline-offset:4px}
.bathroom-related{padding:32px 0;background:#eee7de;border-top:1px solid #d9d3ca}
.bathroom-related-inner{display:flex;align-items:center;justify-content:space-between;gap:16px 32px;flex-wrap:wrap}
.bathroom-related p{margin:0;font-size:1rem;line-height:1.6}
.bathroom-related .service-discovery{margin:0}

.bathroom-page{background:var(--paper);font-size:1rem}
.bathroom-page .wrap{width:min(calc(100% - 48px),var(--max))}
.bathroom-page section[id],.bathroom-page main[id]{scroll-margin-top:110px}
.bathroom-skip{position:absolute;top:8px;left:16px;z-index:100;padding:12px 18px;background:#f7f5f1;color:#111;transform:translateY(-160%)}
.bathroom-skip:focus{transform:translateY(0)}
.bathroom-hero{padding:42px 0 78px;background:#080808;color:#fff}
.bathroom-breadcrumb{font-size:.875rem;color:#c9c0b7;margin-bottom:38px}
.bathroom-breadcrumb a{text-underline-offset:4px}
.bathroom-breadcrumb span[aria-hidden]{margin:0 10px}
.bathroom-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(36px,6vw,80px);align-items:center}
.bathroom-hero-copy{min-width:0}
.bathroom-page .eyebrow{font-size:.875rem;line-height:1.5;letter-spacing:.1em}
.bathroom-hero .eyebrow,.bathroom-contact .eyebrow{color:#dfb18e}
.bathroom-page h1{font-size:clamp(2.5rem,4.6vw,4.5rem);line-height:1.08;letter-spacing:-.035em;margin:18px 0 28px;max-width:750px;overflow-wrap:break-word}
.bathroom-hero-copy p{color:#d2cac2;font-size:1rem;line-height:1.75;margin:0 0 18px}
.bathroom-hero-copy .bathroom-intro{font-size:1.125rem;color:#f0e9e1}
.bathroom-actions{display:flex;flex-wrap:wrap;gap:18px 26px;align-items:center;margin-top:28px}
.bathroom-page .btn{font-size:1rem;padding:13px 20px;min-height:48px;line-height:1.4;white-space:normal;text-align:center}
.bathroom-hero .btn,.bathroom-contact .btn{background:#d1a17e;border-color:#d1a17e;color:#12100e}
.bathroom-hero .btn:hover,.bathroom-contact .btn:hover{background:#edc9ab;border-color:#edc9ab}
.bathroom-text-link{display:inline-flex;align-items:center;min-height:44px;font-size:1rem;line-height:1.5;text-underline-offset:5px}
.bathroom-hero-photo{margin:0;min-width:0;border-bottom:4px solid #bd7655}
.bathroom-hero-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.bathroom-hero-photo figcaption{padding:14px 16px;background:#191512;color:#e2d4c7;font-size:.875rem;line-height:1.5}
.bathroom-page section:not(.bathroom-hero){padding:84px 0}
.bathroom-section-heading{max-width:780px;margin-bottom:40px}
.bathroom-section-heading h2,.bathroom-contact h2{font-size:clamp(2rem,3.5vw,3.35rem);line-height:1.12;margin:12px 0 22px}
.bathroom-section-heading p{margin:0;font-size:1.0625rem;line-height:1.75;color:#5b524a}
.bathroom-services{background:#fff}
.bathroom-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid #d9d3ca;border-left:1px solid #d9d3ca}
.bathroom-service-grid article{padding:32px;border-right:1px solid #d9d3ca;border-bottom:1px solid #d9d3ca}
.bathroom-number{display:block;font-family:Georgia,serif;font-size:1.125rem;color:#875d40;margin-bottom:22px}
.bathroom-service-grid h3,.bathroom-steps h3,.bathroom-project h3,.bathroom-contact h3{font-size:1.65rem;line-height:1.2}
.bathroom-service-grid p,.bathroom-steps p,.bathroom-project p{font-size:1rem;line-height:1.7;color:#5b524a;margin:16px 0 0}
.bathroom-method{background:#e8e2da}
.bathroom-steps{list-style:none;counter-reset:bathroom-step;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0;padding:0}
.bathroom-steps li{counter-increment:bathroom-step;border-top:1px solid #b9a593;padding-top:24px;min-width:0}
.bathroom-steps li:before{content:"0" counter(bathroom-step);display:block;color:#80573c;font-family:Georgia,serif;font-size:1.5rem;line-height:1;margin-bottom:24px}
.bathroom-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.bathroom-project{background:#fff;display:flex;flex-direction:column;min-width:0;border:1px solid #e3dbd3}
.bathroom-project>img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center}
.bathroom-project>div{padding:26px;display:flex;flex-direction:column;flex:1;align-items:flex-start}
.bathroom-project h3{margin-top:12px}
.bathroom-project p{margin-bottom:22px}
.bathroom-project .service-discovery{margin-top:auto;padding-top:10px}
.bathroom-contact{background:#090909;color:#fff}
.bathroom-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}
.bathroom-contact p{font-size:1rem;line-height:1.75;color:#d2cac2}
.bathroom-contact-details{padding-left:36px;border-left:1px solid #51443a}
.bathroom-contact-details ul{padding-left:20px;margin:24px 0;line-height:1.7;font-size:1rem;color:#d2cac2}
.bathroom-contact-details li+li{margin-top:12px}
.bathroom-contact .bathroom-contact-hours{font-size:.875rem;margin-top:26px}
@media(max-width:900px){
  .bathroom-hero-grid{gap:32px}
  .bathroom-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  .bathroom-project-grid{grid-template-columns:1fr}
  .bathroom-project{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
  .bathroom-project>img{height:100%;min-height:320px;aspect-ratio:auto}
  .bathroom-contact-grid{gap:36px}
}
@media(max-width:700px){
  .zone-groups{grid-template-columns:1fr;gap:26px}
  .zone-seo .section-head{grid-template-columns:1fr;gap:22px}
  .bathroom-page .wrap{width:calc(100% - 36px)}
  .bathroom-hero{padding:28px 0 52px}
  .bathroom-breadcrumb{margin-bottom:28px}
  .bathroom-hero-grid{grid-template-columns:1fr;gap:34px}
  .bathroom-page h1{font-size:clamp(2.35rem,8vw,3.4rem)}
  .bathroom-hero-photo img{aspect-ratio:4/5}
  .bathroom-page section:not(.bathroom-hero){padding:56px 0}
  .bathroom-service-grid{grid-template-columns:1fr}
  .bathroom-service-grid article{padding:26px}
  .bathroom-project{display:flex}
  .bathroom-project>img{height:auto;min-height:0;aspect-ratio:4/5}
  .bathroom-contact-grid{grid-template-columns:1fr;gap:32px}
  .bathroom-contact-details{border-left:0;border-top:1px solid #51443a;padding:30px 0 0}
  .bathroom-page .bathroom-actions .btn{width:100%}
}
@media(max-width:420px){
  .bathroom-steps{grid-template-columns:1fr}
  .bathroom-steps li:before{margin-bottom:16px}
}
