/* ═══════════════════════════════════════════════════════════════
   ITS ÉNERGIE — Master Stylesheet v2
   ═══════════════════════════════════════════════════════════════ */

/* ─── DESIGN TOKENS ─── */
:root {
  --navy:        #0E3557;
  --navy-light:  #14406A;
  --navy-dark:   #091E33;
  --cool-blue:   #1E88E5;
  --cool-cyan:   #00ACC1;
  --cool-light:  #E3F2FD;
  --warm-orange: #FF6B00;
  --warm-deep:   #F4511E;
  --warm-light:  #FFF3E0;
  --warm-amber:  #FFB74D;
  --whatsapp:    #25D366;
  --whatsapp-dark:#128C7E;
  --white:       #FFFFFF;
  --gray-50:     #F8FAFC;
  --gray-100:    #F1F5F9;
  --gray-200:    #E2E8F0;
  --gray-300:    #CBD5E1;
  --gray-400:    #94A3B8;
  --gray-500:    #64748B;
  --gray-600:    #475569;
  --gray-700:    #334155;
  --gray-800:    #1E293B;
  --gray-900:    #0F172A;
  --success:     #22C55E;
  --star:        #FFB300;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-heading: 'Plus Jakarta Sans', 'Inter', sans-serif;
  --space-xs: .25rem; --space-sm: .5rem; --space-md: 1rem; --space-lg: 1.5rem;
  --space-xl: 2rem; --space-2xl: 3rem; --space-3xl: 4rem; --space-4xl: 6rem;
  --radius-sm: .5rem; --radius-md: .75rem; --radius-lg: 1rem; --radius-xl: 1.5rem; --radius-full: 9999px;
  --shadow-sm:  0 1px 2px rgba(14,53,87,.05);
  --shadow-md:  0 4px 12px rgba(14,53,87,.08);
  --shadow-lg:  0 8px 30px rgba(14,53,87,.12);
  --shadow-xl:  0 20px 60px rgba(14,53,87,.15);
  --shadow-glow-warm: 0 4px 30px rgba(255,107,0,.25);
  --shadow-glow-cool: 0 4px 30px rgba(30,136,229,.2);
  --ease-out: cubic-bezier(.16,1,.3,1);
  --transition: .3s var(--ease-out);
  --header-height: 80px;
  --container-max: 1200px;
}

/* ─── RESET ─── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

/* ─── Scroll Offset for Sticky Header ─── */
section,section[id]{scroll-margin-top:100px;box-sizing:border-box;width:100%}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-height);-webkit-font-smoothing:antialiased;overflow-x:hidden;width:100%;max-width:100%}
body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--gray-700);background:var(--white);overflow-x:hidden;width:100%;max-width:100%;position:relative}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{cursor:pointer;border:none;background:none;font-family:inherit}

/* ─── UTILITY ─── */
.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-lg);box-sizing:border-box}
.text-warm{color:var(--warm-orange)}.text-cool{color:var(--cool-blue)}.text-navy{color:var(--navy)}
.accent-warm{color:var(--warm-orange)}.required{color:var(--warm-deep)}

/* ─── SECTION HEADERS ─── */
.section-header{text-align:center;max-width:680px;margin:0 auto var(--space-3xl)}
.section-header__tag{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);background:var(--cool-light);color:var(--cool-blue);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-md)}
.section-header__title{font-family:var(--font-heading);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800;color:var(--navy);line-height:1.2;margin-bottom:var(--space-md)}
.section-header__desc{font-size:1.0625rem;color:var(--gray-500);line-height:1.7}

/* ═══════════════════════════════════════
   BUTTONS
   ═══════════════════════════════════════ */
.btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.75rem 1.5rem;border-radius:var(--radius-md);font-family:var(--font-body);font-size:.9375rem;font-weight:600;line-height:1;white-space:nowrap;transition:all var(--transition);cursor:pointer;border:2px solid transparent;text-decoration:none}
.btn--primary{background:var(--cool-blue);color:var(--white);box-shadow:var(--shadow-glow-cool)}
.btn--primary:hover{background:#1976D2;transform:translateY(-2px);box-shadow:0 8px 30px rgba(30,136,229,.3)}
.btn--outline-warm{background:transparent;color:var(--warm-orange);border-color:var(--warm-orange)}
.btn--outline-warm:hover{background:var(--warm-orange);color:var(--white);transform:translateY(-2px);box-shadow:var(--shadow-glow-warm)}
.btn--emergency{background:var(--warm-orange);color:var(--white);animation:pulse-emergency 2s ease-in-out infinite}
.btn--emergency:hover{background:var(--warm-deep);transform:translateY(-2px);box-shadow:var(--shadow-glow-warm)}
.btn--white{background:var(--white);color:var(--warm-deep);font-weight:700;box-shadow:var(--shadow-lg)}
.btn--white:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}
.btn--ghost{background:transparent;color:var(--gray-500);border-color:var(--gray-200)}
.btn--ghost:hover{background:var(--gray-50);color:var(--navy);border-color:var(--gray-300)}
.btn--lg{padding:1rem 2rem;font-size:1rem;border-radius:var(--radius-lg)}
@keyframes pulse-emergency{0%,100%{box-shadow:0 0 0 0 rgba(255,107,0,.4)}50%{box-shadow:0 0 0 12px rgba(255,107,0,0)}}

/* ═══════════════════════════════════════
   HEADER
   ═══════════════════════════════════════ */
.header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background:rgba(255,255,255,.96);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(14,53,87,.08);z-index:1000;transition:all var(--transition)}
.header--scrolled{box-shadow:0 4px 20px rgba(14,53,87,.08);height:72px}
.header__inner{display:flex;align-items:center;justify-content:space-between;height:100%;width:100%;max-width:1440px;margin:0 auto;padding:0 var(--space-xl);gap:var(--space-xl)}

.header__logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none;line-height:0}
.header__logo-img{max-height:60px;height:54px;width:auto;object-fit:contain;mix-blend-mode:multiply;transition:transform var(--transition)}
.header__logo:hover .header__logo-img{transform:scale(1.04)}

.header__nav{display:flex;align-items:center}
.header__nav-top,.header__nav-cta{display:none}

.header__nav-list{display:flex;align-items:center;gap:1.75rem;list-style:none;margin:0;padding:0;flex-wrap:nowrap}
.header__nav-link{font-size:.9375rem;font-weight:600;color:var(--navy);white-space:nowrap;padding:.5rem .25rem;text-decoration:none;position:relative;transition:color var(--transition)}
.header__nav-link:hover,.header__nav-link.active{color:var(--cool-blue)}
.header__nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2.5px;background:var(--cool-blue);border-radius:2px;transition:width var(--transition)}
.header__nav-link:hover::after,.header__nav-link.active::after{width:100%}

.header__actions{display:flex;align-items:center;gap:.85rem;flex-shrink:0}
.header__emergency-btn{white-space:nowrap;font-size:.875rem;padding:.65rem 1.25rem;font-weight:700;border-radius:var(--radius-md);box-shadow:var(--shadow-glow-warm);display:inline-flex;align-items:center;gap:.5rem}
.header__emergency-btn svg{flex-shrink:0}
.header__emergency-text{white-space:nowrap}

.header__hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;padding:8px;border-radius:var(--radius-sm);background:rgba(14,53,87,.04);border:1px solid rgba(14,53,87,.08);cursor:pointer;z-index:1002;transition:all var(--transition)}
.header__hamburger span{display:block;width:22px;height:2.5px;background:var(--navy);border-radius:2px;margin:2.5px 0;transition:all var(--transition)}
.header__hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.header__hamburger.active span:nth-child(2){opacity:0}
.header__hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}


/* ═══════════════════════════════════════
   HERO
   ═══════════════════════════════════════ */
.hero{position:relative;padding:calc(var(--header-height) + var(--space-4xl)) 0 var(--space-4xl);background:linear-gradient(180deg,#FFFFFF 0%,#F8FAFC 55%,#F1F5F9 100%);overflow:hidden;min-height:85vh;display:flex;align-items:center;justify-content:center}

/* Massive Faint Background Watermark Logo */
.hero__watermark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:1;overflow:hidden}
.hero__watermark-img{width:90%;max-width:860px;height:auto;max-height:85%;object-fit:contain;opacity:0.07;mix-blend-mode:multiply;user-select:none;pointer-events:none}

.hero__inner{position:relative;z-index:2;width:100%;max-width:1000px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center}
.hero__content{width:100%;display:flex;flex-direction:column;align-items:center;text-align:center}
.hero__badge{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-full);font-size:.8125rem;font-weight:600;color:var(--navy);margin-bottom:var(--space-xl);box-shadow:var(--shadow-sm)}
.hero__badge svg{color:var(--cool-blue)}
.hero__title{font-family:var(--font-heading);font-size:clamp(2.125rem,5.5vw,3.5rem);font-weight:900;line-height:1.12;color:var(--navy);margin-bottom:var(--space-lg);letter-spacing:-.02em;max-width:880px}
.hero__title-location{display:block;margin-top:var(--space-xs)}
.hero__subtitle{font-size:1.1875rem;color:var(--gray-600);line-height:1.75;max-width:680px;margin:0 auto var(--space-2xl) auto}
.hero__ctas{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-md);margin-bottom:var(--space-2xl)}
.hero__trust{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-xl)}
.hero__trust-item{display:flex;align-items:center;gap:var(--space-md);background:rgba(255,255,255,.75);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:.5rem 1rem;border-radius:var(--radius-lg);border:1px solid rgba(226,232,240,.8);box-shadow:0 2px 8px rgba(14,53,87,.04)}
.hero__trust-icon{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.hero__trust-icon--cool{background:var(--cool-light);color:var(--cool-blue)}
.hero__trust-icon--warm{background:var(--warm-light);color:var(--warm-orange)}
.hero__trust-icon--navy{background:#E8EAF6;color:var(--navy)}
.hero__trust-item strong{display:block;font-size:.875rem;font-weight:700;color:var(--navy);text-align:left}
.hero__trust-item span{font-size:.8125rem;color:var(--gray-400);text-align:left}

/* ═══════════════════════════════════════
   SERVICES
   ═══════════════════════════════════════ */
.services{padding:var(--space-4xl) 0;background:var(--white)}
.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl);margin-bottom:var(--space-3xl)}
.service-card{position:relative;padding:var(--space-2xl);background:linear-gradient(168deg,#FCFDFE 0%,#F8FAFC 100%);border-radius:var(--radius-xl);border:1px solid rgba(0,0,0,.05);transition:all .35s var(--ease-out);overflow:hidden;box-shadow:0 2px 8px rgba(14,53,87,.04),0 0 0 1px rgba(14,53,87,.02)}
.service-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;border-radius:var(--radius-xl) var(--radius-xl) 0 0;transition:height var(--transition)}
.service-card--warm::before{background:linear-gradient(90deg,var(--warm-orange),var(--warm-amber))}
.service-card--cool::before{background:linear-gradient(90deg,var(--cool-blue),var(--cool-cyan))}
.service-card--navy::before{background:linear-gradient(90deg,var(--navy),var(--cool-blue))}
.service-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl),0 0 0 1px rgba(30,136,229,.12);border-color:transparent}
.service-card--warm:hover{box-shadow:var(--shadow-xl),0 0 0 1px rgba(255,107,0,.15)}
.service-card:hover::before{height:6px}
.service-card__icon-wrap{margin-bottom:var(--space-lg)}
.service-card__icon{width:64px;height:64px}
.service-card__title{font-family:var(--font-heading);font-size:1.375rem;font-weight:700;color:var(--navy);margin-bottom:var(--space-xs)}
.service-card__subtitle{font-size:.8125rem;font-weight:600;color:var(--cool-blue);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-md)}
.service-card--warm .service-card__subtitle{color:var(--warm-orange)}
.service-card__desc{font-size:.9375rem;color:var(--gray-500);line-height:1.7;margin-bottom:var(--space-lg)}
.service-card__list{margin-bottom:var(--space-xl)}
.service-card__list li{position:relative;padding-left:var(--space-lg);padding-bottom:var(--space-sm);font-size:.875rem;color:var(--gray-600)}
.service-card__list li::before{content:'';position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%}
.service-card--warm .service-card__list li::before{background:var(--warm-orange)}
.service-card--cool .service-card__list li::before{background:var(--cool-blue)}
.service-card--navy .service-card__list li::before{background:var(--navy)}
.service-card__link{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:.9375rem;font-weight:600;color:var(--warm-orange);transition:gap var(--transition),color var(--transition)}
.service-card__link:hover{gap:var(--space-md)}
.service-card__link--cool{color:var(--cool-blue)}
.service-card__link--navy{color:var(--navy)}

/* Certifications */
.certs{text-align:center;padding-top:var(--space-xl)}
.certs__title{font-family:var(--font-heading);font-size:1rem;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-lg)}
.certs__grid{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-md)}
.cert-badge{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-full);font-size:.875rem;font-weight:600;color:var(--navy);transition:all var(--transition)}
.cert-badge:hover{background:var(--cool-light);border-color:var(--cool-blue);transform:translateY(-2px)}

/* ═══════════════════════════════════════
   ARTISAN SPOTLIGHT
   ═══════════════════════════════════════ */
.artisan{padding:var(--space-4xl) 0;background:var(--gray-50)}
.artisan__inner{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-3xl);align-items:start;margin-bottom:var(--space-3xl)}
.artisan__profile{text-align:center;padding:var(--space-2xl);background:linear-gradient(168deg,#FCFDFE 0%,#F8FAFC 100%);border-radius:var(--radius-xl);box-shadow:0 4px 16px rgba(14,53,87,.06),0 0 0 1px rgba(14,53,87,.03);border:1px solid rgba(0,0,0,.05)}
.artisan__avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--cool-blue) 0%,var(--navy) 100%);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-lg);box-shadow:0 8px 24px rgba(30,136,229,.3);color:var(--white)}
.artisan__avatar--shield svg{color:var(--white)}
.artisan__name{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;color:var(--navy);margin-bottom:var(--space-xs)}
.artisan__role{font-size:.875rem;color:var(--gray-500);margin-bottom:var(--space-xl)}
.artisan__quote{position:relative;padding:var(--space-lg);background:var(--gray-50);border-radius:var(--radius-lg);border-left:4px solid var(--cool-blue);text-align:left;margin-bottom:var(--space-xl)}
.artisan__quote svg{position:absolute;top:var(--space-md);right:var(--space-md);opacity:.3}
.artisan__quote p{font-size:1rem;color:var(--gray-700);font-style:italic;line-height:1.7}
.artisan__meta{display:flex;flex-direction:column;gap:var(--space-xs);font-size:.75rem;color:var(--gray-400);text-transform:uppercase;letter-spacing:.04em}

.artisan__pillars{display:flex;flex-direction:column;gap:var(--space-xl)}
.artisan-pillar{display:flex;align-items:flex-start;gap:var(--space-lg);padding:var(--space-xl);background:linear-gradient(168deg,#FCFDFE 0%,#F8FAFC 100%);border-radius:var(--radius-xl);border:1px solid rgba(0,0,0,.05);transition:all .35s var(--ease-out);box-shadow:0 2px 8px rgba(14,53,87,.04),0 0 0 1px rgba(14,53,87,.02)}
.artisan-pillar:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg),0 0 0 1px rgba(30,136,229,.12);border-color:rgba(30,136,229,.2)}
.artisan-pillar__icon{width:56px;height:56px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.artisan-pillar__icon--cool{background:var(--cool-light)}
.artisan-pillar__icon--warm{background:var(--warm-light)}
.artisan-pillar__icon--navy{background:#E8EAF6}
.artisan-pillar__title{font-family:var(--font-heading);font-size:1.125rem;font-weight:700;color:var(--navy);margin-bottom:var(--space-xs)}
.artisan-pillar__desc{font-size:.9375rem;color:var(--gray-500);line-height:1.6}

/* ─── Stats Bar ─── */
.stats{display:flex;align-items:center;justify-content:center;gap:var(--space-2xl);padding:var(--space-2xl) var(--space-3xl);background:var(--navy);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}
.stats__item{text-align:center}
.stats__number{font-family:var(--font-heading);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:900;color:var(--white)}
.stats__suffix{font-family:var(--font-heading);font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700;color:var(--cool-cyan)}
.stats__label{display:block;font-size:.8125rem;color:var(--gray-400);margin-top:var(--space-xs);font-weight:500}
.stats__divider{width:1px;height:48px;background:rgba(255,255,255,.12)}

/* ═══════════════════════════════════════
   EMERGENCY BANNER
   ═══════════════════════════════════════ */
.emergency{position:relative;padding:var(--space-3xl) 0;background:linear-gradient(135deg,var(--warm-orange) 0%,var(--warm-deep) 100%);overflow:hidden}
.emergency__bg{position:absolute;inset:0;overflow:hidden}
.emergency__pulse{position:absolute;top:50%;left:50%;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.05);transform:translate(-50%,-50%);animation:pulse-ring 3s ease-out infinite}
@keyframes pulse-ring{0%{transform:translate(-50%,-50%) scale(.8);opacity:1}100%{transform:translate(-50%,-50%) scale(3);opacity:0}}
.emergency__inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2xl)}
.emergency__content{display:flex;align-items:flex-start;gap:var(--space-xl);flex:1}
.emergency__icon-wrap{flex-shrink:0;animation:shake 4s ease-in-out infinite}
@keyframes shake{0%,90%,100%{transform:rotate(0)}92%{transform:rotate(-8deg)}94%{transform:rotate(8deg)}96%{transform:rotate(-5deg)}98%{transform:rotate(5deg)}}
.emergency__title{font-family:var(--font-heading);font-size:clamp(1.5rem,3vw,2rem);font-weight:800;color:var(--white);margin-bottom:var(--space-sm)}
.emergency__desc{font-size:1.0625rem;color:rgba(255,255,255,.9);line-height:1.7;max-width:600px}
.emergency__actions{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);flex-shrink:0}
.emergency__availability{display:flex;align-items:center;gap:var(--space-sm);color:var(--white);font-size:.8125rem;font-weight:500}
.emergency__dot{width:8px;height:8px;border-radius:50%;background:#4ADE80;animation:blink 1.5s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}

/* ═══════════════════════════════════════
   REVIEWS (AUTHENTIC GOOGLE MAPS STYLE)
   ═══════════════════════════════════════ */
.reviews{padding:var(--space-4xl) 0;background:var(--white)}
.reviews__rating-summary{display:flex;align-items:center;justify-content:center;gap:var(--space-md);margin-top:var(--space-lg);flex-wrap:wrap}
.reviews__stars{display:flex;gap:3px;align-items:center}
.reviews__score{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;color:var(--navy)}
.reviews__count{font-size:.875rem;color:var(--gray-500);font-weight:500}

.reviews__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl);margin:0 auto var(--space-2xl);max-width:var(--container-max);width:100%;justify-content:center}

.google-review-card{padding:var(--space-xl);background:linear-gradient(168deg,#FCFDFE 0%,#F8FAFC 100%);border:1px solid rgba(0,0,0,.05);border-radius:var(--radius-xl);transition:all .35s var(--ease-out);display:flex;flex-direction:column;box-shadow:0 2px 10px rgba(14,53,87,.04),0 0 0 1px rgba(14,53,87,.02);position:relative}
.google-review-card:hover{transform:translateY(-5px);box-shadow:0 16px 35px rgba(14,53,87,.1),0 0 0 1px rgba(30,136,229,.18);border-color:rgba(66,133,244,.35)}

.review-card__header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm)}
.review-card__avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9375rem;flex-shrink:0;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.review-card__user-info{flex:1;min-width:0}
.review-card__name{font-weight:700;color:var(--navy);font-size:.9375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.review-card__meta{font-size:.75rem;color:var(--gray-400);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.review-card__google{flex-shrink:0;display:flex;align-items:center;padding:2px}

.review-card__sub-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-md);padding-bottom:var(--space-xs);flex-wrap:wrap}
.review-card__verified-badge{display:inline-flex;align-items:center;gap:4px;font-size:.6875rem;font-weight:700;color:#188038;background:#E6F4EA;padding:2px 8px;border-radius:var(--radius-full);letter-spacing:.02em}
.review-card__verified-badge svg{stroke:#188038}

.review-card__text{font-size:.9375rem;color:var(--gray-600);line-height:1.7;margin:0;flex:1}

/* Google Reviews CTA Button */
.reviews__cta-wrap{display:flex;justify-content:center;margin-top:var(--space-xl)}
.btn--google-reviews{background:var(--white);color:#1A73E8;border:2px solid #DADCE0;box-shadow:0 2px 8px rgba(60,64,67,.12);font-weight:700;padding:.875rem 2rem;border-radius:var(--radius-full);gap:.75rem;font-size:1rem;transition:all var(--transition);text-decoration:none;display:inline-flex;align-items:center}
.btn--google-reviews:hover{background:#F8FAFC;border-color:#1A73E8;color:#174EA6;transform:translateY(-2px);box-shadow:0 6px 20px rgba(26,115,232,.22)}
.btn--google-reviews svg{flex-shrink:0}

/* ═══════════════════════════════════════
   GALLERY
   ═══════════════════════════════════════ */
.gallery{padding:var(--space-4xl) 0;background:var(--gray-50)}
.gallery__filters{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--space-sm);margin-bottom:var(--space-2xl)}
.gallery__filter{padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-full);font-size:.875rem;font-weight:600;color:var(--gray-500);background:var(--white);border:2px solid var(--gray-200);transition:all var(--transition);cursor:pointer}
.gallery__filter:hover{border-color:var(--cool-blue);color:var(--cool-blue)}
.gallery__filter.active{background:var(--cool-blue);color:var(--white);border-color:var(--cool-blue);box-shadow:var(--shadow-glow-cool)}

.gallery__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-lg)}
.gallery-card{border-radius:var(--radius-xl);overflow:hidden;background:linear-gradient(168deg,#FCFDFE 0%,#F8FAFC 100%);border:1px solid rgba(0,0,0,.05);transition:all .4s var(--ease-out);cursor:pointer;display:flex;flex-direction:column;box-shadow:0 2px 8px rgba(14,53,87,.04),0 0 0 1px rgba(14,53,87,.02);position:relative}
.gallery-card:hover{transform:translateY(-8px);box-shadow:0 20px 35px rgba(14,53,87,.14),0 0 0 1px rgba(30,136,229,.15);border-color:rgba(30,136,229,.3)}
.gallery-card.hidden{display:none}

.gallery-card__img-wrap{height:240px;width:100%;overflow:hidden;position:relative;background:var(--gray-100);border-radius:var(--radius-xl) var(--radius-xl) 0 0}
.gallery-card__img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.gallery-card:hover .gallery-card__img{transform:scale(1.05)}

.gallery-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,53,87,0) 40%,rgba(14,53,87,.7) 100%);opacity:.85;transition:opacity var(--transition)}
.gallery-card:hover .gallery-card__overlay{opacity:1}

.gallery-card__badge{position:absolute;top:12px;left:12px;padding:4px 10px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-full);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;box-shadow:var(--shadow-sm);z-index:2}
.gallery-card__badge--sdb{color:var(--cool-blue)}
.gallery-card__badge--ch{color:var(--warm-orange)}
.gallery-card__badge--clim{color:#0284C7}
.gallery-card__badge--rep{color:#334155}

.gallery-card__info{padding:var(--space-lg);background:transparent;flex:1;display:flex;flex-direction:column;justify-content:center}
.gallery-card__info h4{font-size:.9375rem;font-weight:700;color:var(--navy);line-height:1.4;margin-bottom:6px;transition:color var(--transition)}
.gallery-card:hover .gallery-card__info h4{color:var(--cool-blue)}
.gallery-card__info p{font-size:.78125rem;color:var(--gray-500);display:flex;align-items:center;gap:4px;margin:0}
.gallery-card__info p svg{color:var(--cool-blue);flex-shrink:0}

/* ═══════════════════════════════════════
   ZONE D'INTERVENTION
   ═══════════════════════════════════════ */
.zone{padding:var(--space-4xl) 0;background:var(--white)}
.zone__inner{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-2xl);align-items:start}
.zone__map-wrap{border-radius:var(--radius-xl);overflow:hidden;border:2px solid var(--gray-100);box-shadow:var(--shadow-md)}
.zone__map{width:100%;height:400px}
.zone__cities-title{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--navy);margin-bottom:var(--space-lg)}
.zone__badges{display:flex;flex-direction:column;gap:var(--space-sm)}
.zone-badge{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;color:var(--gray-700);transition:all var(--transition)}
.zone-badge:hover{background:var(--cool-light);border-color:var(--cool-blue);transform:translateX(4px)}
.zone-badge svg{color:var(--cool-blue);flex-shrink:0}
.zone-badge--primary{background:var(--cool-light);border-color:var(--cool-blue);font-weight:700;color:var(--navy)}
.zone-badge--primary svg{color:var(--cool-blue)}
.zone__note{margin-top:var(--space-lg);font-size:.8125rem;color:var(--gray-400);font-style:italic;text-align:center}

/* ═══════════════════════════════════════
   CONTACT
   ═══════════════════════════════════════ */
.contact{padding:var(--space-4xl) 0;background:var(--gray-50)}

/* Quick contact cards */
.contact-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);margin-bottom:var(--space-3xl)}
.contact-quick__card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);background:linear-gradient(168deg,#FCFDFE 0%,#F8FAFC 100%);border-radius:var(--radius-xl);border:1px solid rgba(0,0,0,.05);box-shadow:0 2px 10px rgba(14,53,87,.04),0 0 0 1px rgba(14,53,87,.02);transition:all .35s var(--ease-out);text-decoration:none;position:relative}
.contact-quick__card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:transparent}
.contact-quick__card--phone:hover{border-color:rgba(255,107,0,.4);box-shadow:var(--shadow-glow-warm),0 0 0 1px rgba(255,107,0,.15)}
.contact-quick__card--whatsapp:hover{border-color:rgba(37,211,102,.4);box-shadow:0 4px 30px rgba(37,211,102,.25),0 0 0 1px rgba(37,211,102,.15)}
.contact-quick__card--email:hover{border-color:rgba(30,136,229,.4);box-shadow:var(--shadow-glow-cool),0 0 0 1px rgba(30,136,229,.15)}
.contact-quick__icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-quick__card--phone .contact-quick__icon{background:var(--warm-light);color:var(--warm-orange)}
.contact-quick__card--whatsapp .contact-quick__icon{background:#E8F5E9;color:var(--whatsapp)}
.contact-quick__card--email .contact-quick__icon{background:var(--cool-light);color:var(--cool-blue)}
.contact-quick__card strong{display:block;font-size:.9375rem;font-weight:700;color:var(--navy)}
.contact-quick__card span{display:block;font-size:.875rem;color:var(--gray-600)}
.contact-quick__card small{display:block;font-size:.6875rem;color:var(--gray-400);margin-top:2px}
.contact-quick__badge{position:absolute;top:var(--space-md);right:var(--space-md);font-size:.6875rem;font-weight:700;padding:2px var(--space-sm);border-radius:var(--radius-full);background:#DCFCE7;color:#16A34A;text-transform:uppercase;letter-spacing:.04em}

/* Form area */
.contact__inner{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-3xl);align-items:start}
.contact__title{font-family:var(--font-heading);font-size:1.25rem;font-weight:800;color:var(--navy);margin-bottom:var(--space-xl)}
.contact__details{display:flex;flex-direction:column;gap:var(--space-lg);margin-bottom:var(--space-2xl)}
.contact__detail-item{display:flex;align-items:center;gap:var(--space-md)}
.contact__detail-icon{width:44px;height:44px;border-radius:var(--radius-md);background:var(--white);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-sm);border:1px solid var(--gray-100)}
.contact__detail-item strong{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);margin-bottom:2px}
.contact__detail-item a,.contact__detail-item span{font-size:.9375rem;color:var(--navy);font-weight:600}
.contact__detail-item a:hover{color:var(--cool-blue)}
.contact__artisan-note{padding:var(--space-lg);background:var(--cool-light);border-radius:var(--radius-lg);border-left:4px solid var(--cool-blue)}
.contact__artisan-note strong{display:block;font-size:1rem;color:var(--navy);margin-bottom:var(--space-xs)}
.contact__artisan-note span{display:block;font-size:.8125rem;color:var(--gray-500)}

/* Form */
.contact__form-wrap{background:linear-gradient(168deg,#FCFDFE 0%,#F8FAFC 100%);border-radius:var(--radius-xl);padding:var(--space-2xl);box-shadow:0 8px 30px rgba(14,53,87,.08),0 0 0 1px rgba(0,0,0,.04);border:1px solid rgba(0,0,0,.05)}
.contact-form__step{display:none}
.contact-form__step.active{display:block;animation:fadeSlideIn .4s var(--ease-out)}
@keyframes fadeSlideIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
.contact-form__step-title{display:flex;align-items:center;gap:var(--space-md);font-family:var(--font-heading);font-size:1.125rem;font-weight:700;color:var(--navy);margin-bottom:var(--space-xl)}
.contact-form__step-num{width:32px;height:32px;border-radius:50%;background:var(--cool-blue);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:700;flex-shrink:0}
.contact-form__service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md);margin-bottom:var(--space-xl)}
.contact-form__service-option{position:relative;cursor:pointer;display:block;outline:none}
.contact-form__service-option input{position:absolute;opacity:0;pointer-events:none}
.contact-form__service-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);padding:1.35rem 1rem;background:#ffffff;border:2px solid var(--gray-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition);font-weight:700;color:var(--navy);user-select:none;position:relative;text-align:center}
.contact-form__service-card:hover{border-color:var(--cool-blue);background:var(--cool-light);transform:translateY(-2px);box-shadow:0 6px 20px rgba(30,136,229,.12)}

/* Active / Selected state - Cool Blue by default */
.contact-form__service-option.active .contact-form__service-card,
.contact-form__service-card.active,
.contact-form__service-option input:checked+.contact-form__service-card{
  border-color:var(--cool-blue)!important;
  background:var(--cool-light)!important;
  color:var(--navy)!important;
  box-shadow:0 0 0 3px rgba(30,136,229,.25),0 8px 24px rgba(30,136,229,.15);
  transform:translateY(-2px);
}

/* Active / Selected state - Urgent card in Flame Orange */
.contact-form__service-option.active .contact-form__service-card--urgent,
.contact-form__service-card--urgent.active,
.contact-form__service-option input:checked+.contact-form__service-card--urgent{
  border-color:var(--warm-orange)!important;
  background:var(--warm-light)!important;
  color:var(--warm-deep)!important;
  box-shadow:0 0 0 3px rgba(255,107,0,.25),0 8px 24px rgba(255,107,0,.18);
  transform:translateY(-2px);
}

/* Checkmark badge when active */
.contact-form__service-option.active .contact-form__service-card::after,
.contact-form__service-card.active::after{
  content:'✓';
  position:absolute;
  top:8px;
  right:8px;
  width:22px;
  height:22px;
  background:var(--cool-blue);
  color:#fff;
  border-radius:50%;
  font-size:12px;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  box-shadow:0 2px 6px rgba(0,0,0,.15);
}
.contact-form__service-option.active .contact-form__service-card--urgent::after,
.contact-form__service-card--urgent.active::after{
  background:var(--warm-orange);
}

@keyframes shake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.contact-form__fields{display:flex;flex-direction:column;gap:var(--space-lg)}
.form-group{display:flex;flex-direction:column;gap:var(--space-xs)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}
.form-label{font-size:.8125rem;font-weight:600;color:var(--navy);letter-spacing:.02em}
.form-input{padding:.75rem 1rem;border:2px solid var(--gray-200);border-radius:var(--radius-md);font-family:var(--font-body);font-size:.9375rem;color:var(--gray-800);background:var(--white);transition:all var(--transition);outline:none;-webkit-appearance:none}
.form-input::placeholder{color:var(--gray-300)}
.form-input:focus{border-color:var(--cool-blue);box-shadow:0 0 0 3px rgba(30,136,229,.12)}
.form-select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}
.form-textarea{resize:vertical;min-height:100px}
.contact-form__progress{display:flex;align-items:center;gap:var(--space-md);margin-top:var(--space-xl);margin-bottom:var(--space-lg)}
.contact-form__progress-bar{flex:1;height:4px;background:var(--gray-100);border-radius:2px;overflow:hidden}
.contact-form__progress-fill{height:100%;width:33.33%;background:linear-gradient(90deg,var(--cool-blue),var(--cool-cyan));border-radius:2px;transition:width .5s var(--ease-out)}
.contact-form__progress-text{font-size:.75rem;color:var(--gray-400);font-weight:500;white-space:nowrap}
.contact-form__nav{display:flex;justify-content:space-between;gap:var(--space-md)}
.contact-form__success{text-align:center;padding:var(--space-3xl) var(--space-xl);animation:fadeSlideIn .5s var(--ease-out)}
.contact-form__success h3{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;color:var(--navy);margin:var(--space-lg) 0 var(--space-md)}
.contact-form__success p{color:var(--gray-500);font-size:1rem}

/* ═══════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════ */
.footer{background:var(--navy-dark);padding:var(--space-3xl) 0 var(--space-xl);color:var(--gray-400)}
.footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:var(--space-2xl);margin-bottom:var(--space-2xl)}
.footer__logo{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md)}
.footer__logo-img{max-height:46px;width:auto;border-radius:var(--radius-sm);object-fit:contain;background:rgba(255,255,255,.95);padding:3px 8px}
.footer__logo span{font-family:var(--font-heading);font-size:1.125rem;font-weight:800;color:var(--white)}
.footer__tagline{font-size:.875rem;line-height:1.7;max-width:300px;margin-bottom:var(--space-sm)}
.footer__siret{font-size:.75rem;color:var(--gray-500)}
.footer__links h4{font-size:.875rem;font-weight:700;color:var(--white);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-lg)}
.footer__links li{margin-bottom:var(--space-sm)}
.footer__links a{font-size:.875rem;color:var(--gray-400);transition:color var(--transition)}
.footer__links a:hover{color:var(--white)}
.footer__bottom{padding-top:var(--space-xl);border-top:1px solid rgba(255,255,255,.08);text-align:center;font-size:.8125rem}
.footer__seo{margin-top:var(--space-sm);font-size:.6875rem;color:var(--gray-600);opacity:.6}

/* SEO Hidden Container (Screen-reader & Search Engine accessible, 100% invisible to human users) */
.seo-hidden-container {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Footer SEO Keyword Matrix */
.footer__seo-matrix{margin:var(--space-2xl) 0 var(--space-xl);padding:var(--space-xl);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:var(--radius-lg);text-align:left}
.footer__seo-matrix-header{margin-bottom:var(--space-lg);border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:var(--space-sm)}
.footer__seo-matrix-title{font-size:.8125rem;font-weight:700;color:var(--white);text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:var(--space-sm)}
.footer__seo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl)}
.footer__seo-col h5{font-size:.8125rem;font-weight:700;color:var(--cool-blue);margin-bottom:var(--space-sm);display:flex;align-items:center;gap:6px}
.footer__seo-col--warm h5{color:var(--warm-orange)}
.footer__seo-col--cyan h5{color:var(--cool-cyan)}
.footer__seo-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.footer__seo-list li{margin:0}
.footer__seo-list li a{font-size:.75rem;color:var(--gray-400);text-decoration:none;transition:color var(--transition);line-height:1.45}
.footer__seo-list li a:hover{color:var(--white);text-decoration:underline}
@media(max-width:860px){.footer__seo-grid{grid-template-columns:1fr;gap:var(--space-lg)}}

/* ═══════════════════════════════════════
   MOBILE FLOATING BAR
   ═══════════════════════════════════════ */
.mobile-bar{position:fixed;bottom:0;left:0;right:0;display:none;z-index:999;background:var(--white);box-shadow:0 -4px 20px rgba(14,53,87,.12);padding:var(--space-sm) var(--space-md);padding-bottom:max(var(--space-sm),env(safe-area-inset-bottom));gap:var(--space-sm)}
.mobile-bar__btn{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:.875rem;border-radius:var(--radius-md);font-size:.9375rem;font-weight:700;text-decoration:none;transition:all var(--transition)}
.mobile-bar__btn--call{background:var(--warm-orange);color:var(--white)}
.mobile-bar__btn--call:hover{background:var(--warm-deep)}
.mobile-bar__btn--whatsapp{background:var(--whatsapp);color:var(--white)}
.mobile-bar__btn--whatsapp:hover{background:var(--whatsapp-dark)}

/* ═══════════════════════════════════════
   SCROLL REVEAL
   ═══════════════════════════════════════ */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}

/* ═══════════════════════════════════════
   OVERLAY
   ═══════════════════════════════════════ */
.nav-overlay{position:fixed;inset:0;background:rgba(14,53,87,.4);backdrop-filter:blur(4px);z-index:998;opacity:0;visibility:hidden;transition:all var(--transition)}
.nav-overlay.active{opacity:1;visibility:visible}

/* ═══════════════════════════════════════
   RESPONSIVE — TABLET & LAPTOP (<= 1140px)
   ═══════════════════════════════════════ */
@media(max-width:1140px){
  :root{--header-height:72px}

  /* Hamburger & Drawer Navigation */
  .header__nav{position:fixed;top:0;right:0;width:85%;max-width:360px;height:100vh;height:100dvh;background:#fff;box-shadow:-10px 0 40px rgba(14,53,87,.18);padding:1.5rem 1.75rem 2rem;display:flex;flex-direction:column;justify-content:space-between;transform:translateX(105%);transition:transform .35s cubic-bezier(.16,1,.3,1),visibility .35s;z-index:1001;overflow-y:auto;visibility:hidden;pointer-events:none}
  .header__nav.open{transform:translateX(0);visibility:visible;pointer-events:auto}
  .header__nav-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:1.25rem;border-bottom:1px solid var(--gray-100);margin-bottom:1.25rem}
  .header__nav-logo{max-height:48px;width:auto;object-fit:contain;mix-blend-mode:multiply}
  .header__nav-close{font-size:2rem;line-height:1;width:38px;height:38px;display:flex;align-items:center;justify-content:center;color:var(--navy);border-radius:50%;background:var(--gray-50);border:1px solid var(--gray-200);cursor:pointer;transition:all var(--transition)}
  .header__nav-close:hover{background:var(--gray-100);color:var(--warm-deep)}
  .header__nav-list{flex-direction:column;align-items:stretch;gap:.5rem;width:100%}
  .header__nav-link{display:block;padding:.75rem 1rem;font-size:1.0625rem;font-weight:700;color:var(--navy);border-radius:var(--radius-md);transition:all var(--transition)}
  .header__nav-link:hover,.header__nav-link.active{background:var(--cool-light);color:var(--cool-blue);transform:translateX(4px)}
  .header__nav-link::after{display:none}
  .header__nav-cta{display:flex;flex-direction:column;gap:.75rem;padding-top:1.25rem;border-top:1px solid var(--gray-100);margin-top:auto}
  .btn--whatsapp-outline{background:transparent;color:var(--whatsapp);border:2px solid var(--whatsapp);font-weight:700;padding:.75rem;border-radius:var(--radius-md);text-align:center;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:all var(--transition)}
  .btn--whatsapp-outline:hover{background:var(--whatsapp);color:#fff}
  .btn--block{width:100%;justify-content:center}

  .header__hamburger{display:flex}
  .header__inner{padding:0 var(--space-lg)}
  .header__actions{gap:var(--space-md)}
}

/* ═══════════════════════════════════════
   RESPONSIVE — TABLET (<= 1024px)
   ═══════════════════════════════════════ */
@media(max-width:1024px){
  .hero{min-height:auto;padding:calc(var(--header-height) + var(--space-2xl)) 0 var(--space-3xl)}
  .hero__watermark-img{max-width:650px;opacity:0.06}
  .hero__title{font-size:2.5rem}

  .services__grid{grid-template-columns:repeat(2,1fr)}
  .services__grid .service-card:last-child{grid-column:1/-1;max-width:500px;margin:0 auto}
  .artisan__inner{grid-template-columns:1fr}
  .reviews__grid{grid-template-columns:repeat(2,1fr)}
  .reviews__grid .review-card:last-child{grid-column:1/-1;max-width:500px;margin:0 auto}
  .gallery__grid{grid-template-columns:repeat(2,1fr)}
  .zone__inner{grid-template-columns:1fr}
  .zone__map{height:350px}
  .contact-quick{grid-template-columns:1fr}
  .contact__inner{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:repeat(2,1fr)}
  .stats{flex-wrap:wrap;gap:var(--space-xl);padding:var(--space-xl)}
  .stats__divider{display:none}
  .stats__item{min-width:120px}
}

/* ═══════════════════════════════════════
   RESPONSIVE — MOBILE (<= 768px)
   ═══════════════════════════════════════ */
@media(max-width:768px){
  :root{--header-height:64px}
  .header--scrolled{height:60px}
  .header__inner{padding:0 16px;justify-content:space-between;gap:8px;width:100%;box-sizing:border-box}
  .header__logo{flex-shrink:0}
  .header__logo-img{max-height:44px;height:38px;width:auto}
  .header__live-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:5px 11px;background:#ECFDF5;border:1px solid rgba(34,197,94,.3);border-radius:var(--radius-full);box-shadow:0 1px 4px rgba(34,197,94,.12);line-height:1;flex-shrink:0;margin:0 auto;user-select:none}
  .header__live-dot{position:relative;width:7px;height:7px;border-radius:50%;background:#16A34A;display:inline-block}
  .header__live-dot::before{content:'';position:absolute;inset:-3px;border-radius:50%;background:rgba(34,197,94,.45);animation:live-dot-pulse 2s cubic-bezier(0,0,.2,1) infinite}
  .header__live-text{font-size:.71875rem;font-weight:700;color:#15803D;letter-spacing:.02em;white-space:nowrap;text-transform:uppercase}
  .header__actions{gap:.65rem;flex-shrink:0}
  .header__emergency-text{display:none}
  .header__emergency-btn{width:44px;height:44px;min-width:44px;padding:0;justify-content:center;align-items:center;border-radius:var(--radius-md)}
  .header__emergency-btn svg{margin:0}

  .mobile-bar{display:flex}
  body{padding-bottom:76px}

  /* Containers, Sections & Alignment */
  .container{width:100%;max-width:100%;margin:0 auto;padding:0 16px;box-sizing:border-box}
  section,section[id]{scroll-margin-top:85px;box-sizing:border-box;width:100%}
  .services,.artisan,.emergency,.reviews,.gallery,.zone,.contact{padding-top:3.5rem;padding-bottom:3.5rem;width:100%;box-sizing:border-box}
  .services__grid,.artisan__inner,.gallery__grid,.zone__inner,.contact-quick,.contact__inner,.footer__grid{width:100%;max-width:100%;margin-left:auto;margin-right:auto;box-sizing:border-box}

  .hero{min-height:auto;padding:calc(var(--header-height) + var(--space-xl)) 0 var(--space-2xl)}
  .hero__watermark-img{max-width:450px;width:95%;opacity:0.05}
  .hero__title{font-size:1.875rem}
  .hero__subtitle{font-size:1rem;margin-bottom:var(--space-xl)}
  .hero__ctas{flex-direction:column;align-items:stretch;width:100%;max-width:340px}
  .hero__ctas .btn{width:100%;justify-content:center}
  .hero__trust{flex-direction:column;gap:var(--space-md);align-items:center;width:100%}
  .hero__trust-item{width:100%;max-width:320px;justify-content:flex-start}

  .services__grid{grid-template-columns:1fr}
  .services__grid .service-card:last-child{max-width:none}
  .service-card{padding:1.5rem;width:100%;box-sizing:border-box}
  .artisan__inner{grid-template-columns:1fr}
  .stats{width:100%;padding:1.25rem 1rem;gap:1rem;justify-content:space-around;box-sizing:border-box}
  .stats__item{min-width:40%;flex:1 1 40%}
  .emergency__inner{flex-direction:column;text-align:center}
  .emergency__content{flex-direction:column;align-items:center}

  /* Centered Clean 1-Column Reviews on Mobile */
  .reviews .container{padding-left:20px!important;padding-right:20px!important;box-sizing:border-box!important}
  .reviews__grid,.reviews-grid,#reviewsGrid{display:flex!important;flex-direction:column!important;gap:0!important;width:100%!important;max-width:100%!important;margin:0 auto var(--space-xl)!important;padding:0!important;box-sizing:border-box!important}
  .reviews__grid .review-card:last-child,.reviews-grid .review-card:last-child{max-width:100%!important}
  .google-review-card,.review-card.google-review-card{width:auto!important;max-width:100%!important;padding:20px 18px!important;box-sizing:border-box!important;border-radius:16px!important;border:1px solid rgba(14,53,87,.08)!important;background:#ffffff!important;box-shadow:0 4px 16px rgba(14,53,87,.06),0 1px 3px rgba(0,0,0,.03)!important;margin:0 0 16px 0!important}
  .google-review-card:last-child,.review-card.google-review-card:last-child{margin-bottom:0!important}
  .review-card__header{gap:var(--space-md);margin-bottom:var(--space-sm)}
  .review-card__avatar{width:38px;height:38px;font-size:.875rem}
  .review-card__name{font-size:.9375rem}
  .review-card__meta{font-size:.75rem}
  .review-card__google svg{width:18px;height:18px}
  .review-card__sub-header{gap:var(--space-sm);margin-bottom:var(--space-md);padding-bottom:var(--space-xs);flex-wrap:wrap}
  .review-card__stars svg{width:14px;height:14px}
  .review-card__verified-badge{font-size:.6875rem;padding:2px 8px;gap:4px}
  .review-card__verified-badge svg{width:11px;height:11px}
  .review-card__text{font-size:14px!important;line-height:1.6}
  .reviews__rating-summary{flex-wrap:wrap}

  .gallery__grid{grid-template-columns:repeat(2,1fr)}
  .gallery-card__img-wrap{height:180px}
  .zone__inner{grid-template-columns:1fr}
  .zone__map{height:280px}
  .zone__badges{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}
  .contact-quick{grid-template-columns:1fr}
  .contact__inner{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .contact-form__service-grid{grid-template-columns:repeat(2,1fr)}
  .footer__grid{grid-template-columns:1fr;gap:var(--space-xl)}
}

@media(max-width:480px){
  .header__inner{padding:0 12px;gap:6px}
  .header__logo-img{max-height:40px;height:36px}
  .hero__title{font-size:1.625rem}
  .hero__watermark-img{max-width:320px}
  .zone__badges{grid-template-columns:1fr}
  .gallery__grid{grid-template-columns:1fr}
  .gallery-card__img-wrap{height:220px}
  .contact-form__service-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}
  .contact-form__service-card{padding:1rem .5rem;font-size:.8125rem}
  .contact-form__service-card svg{width:24px;height:24px}
}

/* ─── Accessibility ─── */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
:focus-visible{outline:2px solid var(--cool-blue);outline-offset:2px}

/* ─── Print ─── */
@media print{
  .header,.mobile-bar,.emergency,.hero__bg-shapes,.hero__visual,.gallery__filters{display:none!important}
  body{font-size:12pt;color:#000;padding:0}
}

/* ─── Leaflet overrides ─── */
.leaflet-control-attribution{font-size:10px!important}
.leaflet-popup-content-wrapper{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:4px}
.leaflet-popup-content{margin:10px 14px;line-height:1.5}
.custom-marker{background:transparent;border:none}
