:root{
  --primary:#0F9B8E;
  --primary-dark:#0B7A70;
  --primary-light:#E6F5F3;
  --secondary:#1B3A4B;
  --secondary-light:#2A5468;
  --accent:#F5A623;
  --accent-dark:#D98B0C;
  --accent-light:#FFF6E6;
  --white:#FFFFFF;
  --soft:#F7FAF9;
  --text:#22343C;
  --muted:#5A6B72;
  --border:#E3ECEA;
  --shadow-sm:0 4px 14px rgba(15,155,142,.08);
  --shadow-md:0 12px 30px rgba(15,155,142,.12);
  --shadow-lg:0 22px 50px rgba(27,58,75,.16);
  --radius:20px;
  --radius-sm:12px;
}

*,*::before,*::after{box-sizing:border-box;}

html{scroll-behavior:smooth;scroll-padding-top:96px;}

body{
  margin:0;
  font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  color:var(--text);
  background:var(--white);
  line-height:1.65;
  font-size:16px;
  overflow-x:hidden;
}

img{max-width:100%;display:block;}

a{color:inherit;text-decoration:none;}

h1,h2,h3{line-height:1.2;margin:0 0 16px;color:var(--secondary);font-weight:800;letter-spacing:-.02em;}

h1{font-size:clamp(2rem,5vw,3.5rem);}

h2{font-size:clamp(1.6rem,3.6vw,2.5rem);}

h3{font-size:clamp(1.1rem,2vw,1.3rem);}

p{margin:0 0 16px;}

.container{width:100%;max-width:1180px;margin:0 auto;padding-left:20px;padding-right:20px;}

.section{padding-top:84px;padding-bottom:84px;}

.section-soft{background:var(--soft);}

.section-head{max-width:720px;margin:0 auto 52px;text-align:center;}

.section-head p{color:var(--muted);font-size:1.05rem;margin-bottom:0;}

.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--primary-light);color:var(--primary-dark);
  font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;
  padding:7px 16px;border-radius:999px;margin-bottom:16px;
}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:15px 30px;border-radius:999px;font-weight:700;font-size:1rem;
  border:2px solid transparent;cursor:pointer;transition:all .3s ease;text-align:center;
  font-family:inherit;
}

.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 24px rgba(15,155,142,.28);}

.btn-primary:hover{background:var(--primary-dark);transform:translateY(-2px);}

.btn-accent{background:var(--accent);color:#3A2A05;box-shadow:0 10px 24px rgba(245,166,35,.3);}

.btn-accent:hover{background:var(--accent-dark);transform:translateY(-2px);}

.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55);}

.btn-ghost:hover{background:rgba(255,255,255,.14);border-color:#fff;}

.btn-outline{background:#fff;color:var(--primary-dark);border-color:var(--border);}

.btn-outline:hover{border-color:var(--primary);transform:translateY(-2px);}

.header{
  position:fixed;top:0;left:0;right:0;z-index:900;
  background:rgba(255,255,255,.97);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(10px);
}

.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative;min-height:76px;}

.logo{display:flex;align-items:center;gap:12px;flex-shrink:0;}

.logo img{height:46px;width:auto;}

.logo-text{font-weight:800;color:var(--secondary);font-size:1.05rem;line-height:1.15;max-width:190px;letter-spacing:-.02em;}

.menu-toggle{display:none;cursor:pointer;}

.nav{display:flex;align-items:center;gap:24px;}

.nav a{font-weight:600;color:var(--secondary);font-size:.97rem;transition:color .3s ease;}

.nav a:hover{color:var(--primary);}

.nav .btn-cta-nav{
  background:var(--primary);color:#fff;
  padding:11px 22px;border-radius:999px;
  box-shadow:0 6px 16px rgba(15,155,142,.26);
  white-space:nowrap;font-weight:700;
}

.nav .btn-cta-nav:hover{background:var(--primary-dark);color:#fff;}

.hero{
  position:relative;
  padding-top:150px;padding-bottom:120px;
  background:linear-gradient(135deg,var(--secondary) 0%,#14505A 55%,var(--primary-dark) 100%);
  color:#fff;overflow:hidden;
}

.hero::before{
  content:"";position:absolute;top:-160px;right:-140px;width:520px;height:520px;
  background:radial-gradient(circle,rgba(15,155,142,.45),transparent 68%);border-radius:50%;
}

.hero::after{
  content:"";position:absolute;bottom:-200px;left:-180px;width:480px;height:480px;
  background:radial-gradient(circle,rgba(245,166,35,.18),transparent 70%);border-radius:50%;
}

.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;}

.hero h1{color:#fff;}

.hero-badge{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--accent);color:#3A2A05;
  padding:9px 20px;border-radius:999px;font-weight:800;font-size:.92rem;
  margin-bottom:22px;box-shadow:0 10px 26px rgba(245,166,35,.32);
}

.hero-loc{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  color:rgba(255,255,255,.86);font-weight:600;font-size:.95rem;margin-bottom:14px;
}

.hero-loc i{color:var(--accent);}

.hero-lead{color:rgba(255,255,255,.9);font-size:1.1rem;max-width:560px;}

.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;}

.hero-visual{position:relative;}

.hero-visual img{
  width:100%;height:440px;object-fit:cover;
  border-radius:28px;box-shadow:var(--shadow-lg);
}

.hero-float{
  position:absolute;left:-18px;bottom:-26px;
  background:#fff;color:var(--secondary);
  border-radius:18px;padding:16px 20px;
  box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:14px;max-width:270px;
}

.hero-float i{color:var(--primary);font-size:1.5rem;}

.hero-float strong{display:block;font-size:.95rem;}

.hero-float span{font-size:.82rem;color:var(--muted);}

.reassure{margin-top:-46px;position:relative;z-index:5;}

.reassure-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-md);overflow:hidden;
}

.reassure-item{display:flex;align-items:center;gap:14px;padding:24px 22px;border-right:1px solid var(--border);}

.reassure-item:last-child{border-right:none;}

.reassure-item i{color:var(--primary);font-size:1.3rem;flex-shrink:0;}

.reassure-item span{font-weight:700;font-size:.94rem;color:var(--secondary);line-height:1.35;}

.devis-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start;}

.devis-intro ul{list-style:none;padding:0;margin:26px 0 0;}

.devis-intro li{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px;color:var(--muted);font-weight:500;}

.devis-intro li i{color:var(--primary);margin-top:5px;}

.devis-card{
  background:#fff;border-radius:var(--radius);padding:34px;
  box-shadow:var(--shadow-md);border:1px solid var(--border);
}

.devis-card > p:first-of-type{color:var(--muted);margin-top:-6px;}

.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}

.form-group{margin-bottom:18px;}

.form-group label{display:block;font-weight:700;font-size:.88rem;color:var(--secondary);margin-bottom:7px;}

.form-group input,.form-group textarea{
  width:100%;padding:13px 15px;border:1.5px solid var(--border);border-radius:var(--radius-sm);
  font-family:inherit;font-size:.97rem;color:var(--text);background:var(--soft);
  transition:border-color .3s ease,background .3s ease;
}

.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);background:#fff;}

.form-group textarea{resize:vertical;}

.form-note{font-size:.8rem;color:var(--muted);margin:12px 0 0;}

.devis-card button[type="submit"],#contactForm button[type="submit"]{
  width:100%;background:var(--primary);color:#fff;border:none;
  padding:15px 28px;border-radius:999px;font-weight:700;font-size:1rem;
  cursor:pointer;font-family:inherit;transition:background .3s ease,transform .3s ease;
}

.devis-card button[type="submit"]:hover,#contactForm button[type="submit"]:hover{background:var(--primary-dark);transform:translateY(-2px);}

.devis-card button[disabled],#contactForm button[disabled]{opacity:.65;cursor:not-allowed;}

.form-status p,#formStatus p{margin:14px 0 0;font-weight:600;font-size:.93rem;}

.stats{background:var(--secondary);color:#fff;padding-top:64px;padding-bottom:64px;}

.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;text-align:center;}

.stat-num{font-size:clamp(2rem,4vw,2.9rem);font-weight:800;color:var(--accent);line-height:1;}

.stat-label{color:rgba(255,255,255,.82);font-weight:600;font-size:.95rem;margin-top:10px;}

.services-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:28px;}

.service-card{
  flex:0 1 340px;max-width:100%;
  background:#fff;border:1px solid var(--border);border-radius:var(--radius);
  padding:0 0 26px;box-shadow:var(--shadow-sm);
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
  display:flex;flex-direction:column;
}

.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--primary);}

.service-media{position:relative;}

.service-media img{
  width:100%;height:210px;object-fit:cover;
  border-radius:var(--radius) var(--radius) 0 0;transition:transform .35s ease;
}

.service-card:hover .service-media img{transform:scale(1.04);}

.service-icon{
  position:absolute;left:22px;bottom:-24px;
  width:52px;height:52px;border-radius:16px;background:var(--primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:1.2rem;
  box-shadow:0 10px 22px rgba(15,155,142,.34);
}

.service-body{padding:40px 24px 0;}

.service-body h3{margin-bottom:10px;}

.service-body p{color:var(--muted);font-size:.95rem;margin-bottom:14px;}

.tag-credit{
  display:inline-flex;align-items:center;gap:7px;
  background:var(--accent-light);color:var(--accent-dark);
  font-size:.78rem;font-weight:800;padding:6px 14px;border-radius:999px;
  border:1px solid rgba(245,166,35,.35);
}

.service-cities{
  margin-top:14px;padding-top:14px;border-top:1px solid var(--border);
  font-size:.86rem;color:var(--muted);line-height:1.7;
}

.service-cities strong{display:block;color:var(--secondary);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;}

.service-cities a{color:var(--primary-dark);font-weight:700;}

.service-cities a:hover{color:var(--primary);text-decoration:underline;}

.service-link{
  display:inline-flex;align-items:center;gap:8px;margin-top:16px;
  color:var(--primary-dark);font-weight:800;font-size:.92rem;
  transition:gap .3s ease,color .3s ease;
}

.service-link:hover{color:var(--primary);gap:12px;}

.sap{
  background:linear-gradient(135deg,var(--secondary) 0%,#173F52 60%,var(--primary-dark) 130%);
  color:#fff;position:relative;overflow:hidden;
}

.sap::before{
  content:"";position:absolute;top:-120px;left:-100px;width:420px;height:420px;
  background:radial-gradient(circle,rgba(245,166,35,.16),transparent 70%);border-radius:50%;
}

.sap h2{color:#fff;}

.sap-grid{position:relative;z-index:2;display:grid;grid-template-columns:.75fr 1.25fr;gap:52px;align-items:center;}

.sap-medal{
  width:230px;height:230px;border-radius:50%;margin:0 auto;
  background:linear-gradient(140deg,var(--accent),#FFCE73);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  color:#3A2A05;box-shadow:0 22px 50px rgba(245,166,35,.34);
  border:8px solid rgba(255,255,255,.14);
}

.sap-medal strong{font-size:3.2rem;font-weight:800;line-height:1;}

.sap-medal span{font-weight:800;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;margin-top:6px;text-align:center;padding:0 14px;}

.sap-lead{color:rgba(255,255,255,.9);font-size:1.06rem;}

.sap-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px;}

.sap-step{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-sm);padding:20px;}

.sap-step b{
  display:flex;align-items:center;justify-content:center;
  width:32px;height:32px;border-radius:50%;background:var(--accent);color:#3A2A05;
  font-size:.9rem;margin-bottom:12px;
}

.sap-step p{margin:0;color:rgba(255,255,255,.88);font-size:.92rem;line-height:1.5;}

.sap-example{
  display:flex;flex-wrap:wrap;align-items:center;gap:18px;
  background:rgba(255,255,255,.96);color:var(--secondary);
  border-radius:var(--radius-sm);padding:20px 24px;margin-top:26px;
}

.sap-example i{color:var(--primary);font-size:1.6rem;}

.sap-example div{flex:1 1 220px;}

.sap-example strong{display:block;font-size:1.02rem;}

.sap-example span{font-size:.88rem;color:var(--muted);}

.sap-nova{
  display:inline-flex;align-items:center;gap:12px;margin-top:24px;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);
  border-radius:999px;padding:11px 22px;font-weight:700;font-size:.93rem;
}

.sap-nova i{color:var(--accent);}

.legal-note{font-size:.8rem;font-style:italic;color:rgba(255,255,255,.62);margin-top:18px;margin-bottom:0;}

.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}

.why-card{
  background:#fff;border:1px solid var(--border);border-radius:var(--radius);
  padding:32px 26px;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease;
}

.why-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);}

.why-card i{
  display:flex;align-items:center;justify-content:center;
  width:54px;height:54px;border-radius:16px;
  background:var(--primary-light);color:var(--primary-dark);font-size:1.3rem;margin-bottom:18px;
}

.why-card h3{font-size:1.1rem;margin-bottom:8px;}

.why-card p{color:var(--muted);font-size:.94rem;margin:0;}

.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center;}

.about-visual{position:relative;}

.about-visual img{width:100%;height:460px;object-fit:cover;border-radius:26px;box-shadow:var(--shadow-lg);}

.about-float{
  position:absolute;right:-16px;bottom:-24px;background:#fff;border-radius:18px;
  padding:20px 24px;box-shadow:var(--shadow-lg);display:grid;grid-template-columns:1fr 1fr;gap:18px;
  min-width:250px;
}

.about-float div span{display:block;font-size:1.45rem;font-weight:800;color:var(--primary);line-height:1;}

.about-float div small{font-size:.78rem;color:var(--muted);font-weight:600;}

.about-text p{color:var(--muted);}

.about-list{list-style:none;padding:0;margin:24px 0 30px;}

.about-list li{display:flex;gap:12px;align-items:flex-start;margin-bottom:13px;font-weight:600;color:var(--secondary);}

.about-list li i{color:var(--primary);margin-top:5px;}

.zones-inner{
  background:#fff;border:1px solid var(--border);border-radius:var(--radius);
  padding:40px;box-shadow:var(--shadow-sm);
}

.zone-tags{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}

.zone-tags span,.zone-tags a{
  background:var(--primary-light);color:var(--primary-dark);font-weight:700;font-size:.9rem;
  padding:9px 18px;border-radius:999px;border:1px solid rgba(15,155,142,.16);
}

.zone-tags a{transition:background .3s ease,border-color .3s ease,transform .3s ease;}

.zone-tags a:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-2px);}

.zone-tags .zone-more{background:transparent;border-color:transparent;color:var(--muted);font-weight:600;}

.zone-note{display:flex;gap:12px;align-items:flex-start;margin-top:26px;color:var(--muted);font-size:.93rem;}

.zone-note i{color:var(--primary);margin-top:4px;}

.faq-list{max-width:820px;margin:0 auto;}

.faq-item{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:14px;overflow:hidden;}

.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:none;border:none;padding:20px 24px;cursor:pointer;
  font-family:inherit;font-size:1.02rem;font-weight:700;color:var(--secondary);text-align:left;
}

.faq-q i{color:var(--primary);transition:transform .3s ease;flex-shrink:0;}

.faq-item.open .faq-q i{transform:rotate(180deg);}

.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;}

.faq-item.open .faq-a{max-height:420px;}

.faq-a p{padding:0 24px 22px;margin:0;color:var(--muted);font-size:.96rem;}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}

.info-card{
  background:#fff;border:1px solid var(--border);border-radius:var(--radius);
  padding:32px;box-shadow:var(--shadow-sm);margin-bottom:26px;
}

.info-card .card-title{
  font-weight:800;color:var(--secondary);font-size:1.15rem;
  display:flex;align-items:center;gap:10px;margin:0 0 20px;
}

.info-card .card-title i{color:var(--primary);}

.hours-row{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:12px 14px;border-radius:10px;font-size:.94rem;
}

.hours-row:nth-child(odd){background:var(--soft);}

.hours-row .day{font-weight:700;color:var(--secondary);}

.hours-row .val{color:var(--muted);font-weight:600;text-align:right;}

.hours-row.closed .val{color:#B0442F;}

.hours-row.today{background:var(--primary-light);}

.hours-row.today .day{color:var(--primary-dark);}

.contact-lines{list-style:none;padding:0;margin:0;}

.contact-lines li{display:flex;gap:16px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--border);}

.contact-lines li:last-child{border-bottom:none;}

.contact-lines i{
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  width:44px;height:44px;border-radius:14px;background:var(--primary-light);color:var(--primary-dark);
}

.contact-lines .lbl{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:700;}

.contact-lines .val{font-weight:700;color:var(--secondary);}

.contact-lines a.val:hover{color:var(--primary);}

.map-wrap{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--border);margin-top:36px;line-height:0;}

.map-wrap iframe{display:block;}

.cta-band{background:var(--primary);color:#fff;padding-top:60px;padding-bottom:60px;text-align:center;}

.cta-band h2{color:#fff;margin-bottom:10px;}

.cta-band p{color:rgba(255,255,255,.9);max-width:620px;margin:0 auto 26px;}

.cta-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}

.cta-band .btn-outline{color:var(--primary-dark);}

.footer{background:var(--secondary);color:rgba(255,255,255,.76);padding-top:64px;padding-bottom:28px;font-size:.94rem;}

.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.15fr 1fr 1.1fr;gap:32px;}

.footer-logo{display:flex;align-items:center;gap:12px;margin-bottom:16px;}

.footer-logo img{height:44px;width:auto;}

.footer-logo span{font-weight:800;color:#fff;font-size:1rem;}

.footer .col-title{display:block;font-weight:800;color:#fff;margin-bottom:16px;font-size:1rem;}

.footer ul{list-style:none;padding:0;margin:0;}

.footer ul li{margin-bottom:10px;}

.footer a:hover{color:var(--accent);}

.footer-badge{
  display:inline-flex;align-items:center;gap:9px;margin-top:16px;
  background:rgba(245,166,35,.16);border:1px solid rgba(245,166,35,.32);color:#FFD489;
  padding:8px 16px;border-radius:999px;font-weight:700;font-size:.84rem;
}

.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);margin-top:44px;padding-top:22px;
  display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;font-size:.88rem;
}

.footer-bottom a{color:var(--accent);}

.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-family:inherit;font-size:.88rem;padding:0;text-decoration:underline;}

.modal{
  display:none;position:fixed;inset:0;z-index:1200;
  background:rgba(20,35,42,.7);padding:20px;overflow-y:auto;
}

.modal.open{display:flex;align-items:flex-start;justify-content:center;}

.modal-box{
  background:#fff;border-radius:var(--radius);max-width:640px;width:100%;
  margin:60px auto;padding:34px;box-shadow:var(--shadow-lg);position:relative;
}

.modal-box .modal-title{font-weight:800;color:var(--secondary);font-size:1.3rem;margin:0 0 18px;}

.modal-box p{font-size:.94rem;color:var(--muted);}

.modal-box strong{color:var(--secondary);}

.modal-close{
  position:absolute;top:16px;right:16px;width:38px;height:38px;border-radius:50%;
  border:none;background:var(--soft);color:var(--secondary);cursor:pointer;font-size:1rem;
}

.modal-close:hover{background:var(--border);}

.float-call{
  display:none;position:fixed;right:18px;bottom:18px;z-index:800;
  width:60px;height:60px;border-radius:50%;background:var(--primary);color:#fff;
  align-items:center;justify-content:center;font-size:1.4rem;
  box-shadow:0 12px 28px rgba(15,155,142,.42);
}

@media (max-width:1024px){
  .hero-grid,.about-grid,.sap-grid,.devis-grid,.contact-grid{grid-template-columns:1fr;}
  .hero-visual img,.about-visual img{height:360px;}
  .reassure-grid{grid-template-columns:repeat(2,1fr);}
  .reassure-item:nth-child(2){border-right:none;}
  .reassure-item:nth-child(1),.reassure-item:nth-child(2){border-bottom:1px solid var(--border);}
  .why-grid{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .hero-float{left:auto;right:16px;bottom:-20px;}
  .about-float{right:16px;}
  .sap-medal{width:190px;height:190px;}
  .sap-medal strong{font-size:2.6rem;}
}

@media (max-width:768px){
  .menu-toggle{
    display:inline-flex;align-items:center;justify-content:center;
    font-size:1.5rem;padding:8px;color:var(--primary);
  }
  .nav{
    display:none;
    position:absolute;top:100%;left:0;right:0;
    flex-direction:column;gap:12px;
    background:var(--white,#fff);padding:20px;
    box-shadow:0 10px 30px rgba(0,0,0,0.1);
  }
  .menu-check:checked ~ .nav{display:flex;}
  .menu-check:checked ~ .menu-toggle .fa-bars::before{content:"\f00d";}
  .nav a{width:100%;padding:6px 0;}
  .nav .btn-cta-nav{width:100%;padding:13px 22px;}
  .header-inner{min-height:68px;}
  .logo img{height:40px;}
  .logo-text{font-size:.92rem;max-width:150px;}
  .hero{padding-top:118px;padding-bottom:96px;}
  .hero-visual img{height:280px;}
  .hero-float{position:static;max-width:none;margin-top:18px;}
  .section{padding-top:60px;padding-bottom:60px;}
  .container{padding-left:16px;padding-right:16px;}
  .reassure{margin-top:-30px;}
  .reassure-grid{grid-template-columns:1fr;}
  .reassure-item{border-right:none;border-bottom:1px solid var(--border);}
  .reassure-item:last-child{border-bottom:none;}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:26px;}
  .why-grid{grid-template-columns:1fr;}
  .sap-steps{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;gap:0;}
  .devis-card,.info-card,.zones-inner{padding:24px;}
  .about-visual img{height:280px;}
  .about-float{position:static;margin-top:18px;min-width:0;}
  .footer-grid{grid-template-columns:1fr;gap:26px;}
  .footer-bottom{justify-content:flex-start;}
  .float-call{display:flex;}
  .modal-box{padding:26px;margin:30px auto;}
  .section-head{margin-bottom:36px;}
}

@media (max-width:640px){
  .service-card{flex:1 1 100%;}
  .btn{width:100%;}
  .hero-actions .btn,.cta-actions .btn{width:100%;}
  .sap-medal{width:170px;height:170px;}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;}
}

html, body { overflow-x: hidden; max-width: 100%; }

img { max-width: 100%; height: auto; }

.sct-container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 20px; }

@media (max-width: 640px) { .sct-container { padding: 0 18px; } }

.sct-tpl-service-hub .sct-section { padding: 80px 0; }

.sct-tpl-service-hub .sct-section-soft { background: #F7FAF9; }

.sct-tpl-service-hub .sct-section-head { max-width: 760px; margin: 0 auto 48px; text-align: center; }

.sct-tpl-service-hub .sct-section-head p { color: #5A6B72; font-size: 1.04rem; margin-bottom: 0; }

.sct-tpl-service-hub .sct-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    background: #E6F5F3; color: #0B7A70;
    font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .09em;
    padding: 7px 16px; border-radius: 999px; margin-bottom: 14px;
}

.sct-tpl-service-hub h2 { font-size: clamp(1.55rem, 3.4vw, 2.4rem); line-height: 1.2; color: #1B3A4B; font-weight: 800; letter-spacing: -.02em; margin: 0 0 16px; }

.sct-tpl-service-hub h3 { font-size: clamp(1.05rem, 2vw, 1.25rem); line-height: 1.3; color: #1B3A4B; font-weight: 800; margin: 0 0 10px; }

.sct-tpl-service-hub .sct-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    padding: 15px 30px; border-radius: 999px; font-weight: 700; font-size: 1rem;
    border: 2px solid transparent; cursor: pointer; transition: all .3s ease;
    font-family: inherit; text-align: center; text-decoration: none;
}

.sct-tpl-service-hub .sct-btn-primary { background: #0F9B8E; color: #fff; box-shadow: 0 10px 24px rgba(15,155,142,.28); }

.sct-tpl-service-hub .sct-btn-primary:hover { background: #0B7A70; transform: translateY(-2px); }

.sct-tpl-service-hub .sct-btn-accent { background: #F5A623; color: #3A2A05; box-shadow: 0 10px 24px rgba(245,166,35,.3); }

.sct-tpl-service-hub .sct-btn-accent:hover { background: #D98B0C; transform: translateY(-2px); }

.sct-tpl-service-hub .sct-btn-ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); }

.sct-tpl-service-hub .sct-btn-ghost:hover { background: rgba(255,255,255,.14); border-color: #fff; }

.sct-tpl-service-hub .sct-btn-outline { background: #fff; color: #0B7A70; border-color: #E3ECEA; }

.sct-tpl-service-hub .sct-btn-outline:hover { border-color: #0F9B8E; transform: translateY(-2px); }

.sct-tpl-service-hub .sct-hero {
    position: relative;
    padding: 150px 0 100px;
    background: linear-gradient(135deg, #1B3A4B 0%, #14505A 55%, #0B7A70 100%);
    color: #fff; overflow: hidden;
}

.sct-tpl-service-hub .sct-hero::before {
    content: ""; position: absolute; top: -160px; right: -140px; width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(15,155,142,.45), transparent 68%); border-radius: 50%;
}

.sct-tpl-service-hub .sct-hero::after {
    content: ""; position: absolute; bottom: -200px; left: -180px; width: 460px; height: 460px;
    background: radial-gradient(circle, rgba(245,166,35,.18), transparent 70%); border-radius: 50%;
}

.sct-tpl-service-hub .sct-hero-container { position: relative; z-index: 2; }

.sct-tpl-service-hub .sct-hero-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 50px; align-items: center; }

.sct-tpl-service-hub .sct-hero-grid > * { min-width: 0; }

.sct-tpl-service-hub .sct-hero-text, .sct-tpl-service-hub .sct-hero-card { min-width: 0; max-width: 100%; }

.sct-tpl-service-hub .sct-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    max-width: 100%;
    overflow-wrap: anywhere;
    font-size: .86rem;
    margin-bottom: 20px;
    color: rgba(255,255,255,.72);
}

.sct-tpl-service-hub .sct-breadcrumb a { color: rgba(255,255,255,.82); text-decoration: none; font-weight: 600; }

.sct-tpl-service-hub .sct-breadcrumb a:hover { color: #F5A623; }

.sct-tpl-service-hub .sct-bc-sep { color: rgba(255,255,255,.42); }

.sct-tpl-service-hub .sct-bc-current { color: #F5A623; font-weight: 700; }

.sct-tpl-service-hub .sct-hero-badges { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }

.sct-tpl-service-hub .sct-hero-badge {
    display: inline-flex; align-items: center; gap: 8px;
    background: #F5A623; color: #3A2A05;
    padding: 8px 18px; border-radius: 999px; font-weight: 800; font-size: .86rem;
    box-shadow: 0 10px 26px rgba(245,166,35,.3);
}

.sct-tpl-service-hub .sct-hero-badge-soft {
    background: rgba(255,255,255,.12); color: #fff; border: 1px solid rgba(255,255,255,.24);
    box-shadow: none;
}

.sct-tpl-service-hub .sct-hero-text h1 {
    color: #fff; font-size: clamp(1.9rem, 4.6vw, 3.1rem); line-height: 1.16;
    font-weight: 800; letter-spacing: -.02em; margin: 0 0 18px;
}

.sct-tpl-service-hub .sct-hero-text h1 span { color: #F5A623; }

.sct-tpl-service-hub .sct-hero-subtitle { color: rgba(255,255,255,.9); font-size: 1.08rem; max-width: 620px; margin: 0 0 26px; }

.sct-tpl-service-hub .sct-hero-btns { display: flex; flex-wrap: wrap; gap: 14px; }

.sct-tpl-service-hub .sct-hero-trust { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 28px; }

.sct-tpl-service-hub .sct-hero-trust span {
    display: inline-flex; align-items: center; gap: 9px;
    color: rgba(255,255,255,.88); font-weight: 600; font-size: .93rem;
}

.sct-tpl-service-hub .sct-hero-trust i { color: #F5A623; }

.sct-tpl-service-hub .sct-hero-card { position: relative; }

.sct-tpl-service-hub .sct-hero-card img {
    width: 100%; height: 400px; object-fit: cover;
    border-radius: 26px; box-shadow: 0 22px 50px rgba(27,58,75,.28);
}

.sct-tpl-service-hub .sct-hero-float {
    position: absolute; left: -14px; bottom: -24px;
    background: #fff; color: #1B3A4B;
    border-radius: 18px; padding: 16px 20px;
    box-shadow: 0 22px 50px rgba(27,58,75,.22);
    display: flex; align-items: center; gap: 14px; max-width: 268px;
}

.sct-tpl-service-hub .sct-hero-float i { color: #0F9B8E; font-size: 1.45rem; flex-shrink: 0; }

.sct-tpl-service-hub .sct-hero-float strong { display: block; font-size: .94rem; }

.sct-tpl-service-hub .sct-hero-float span { font-size: .81rem; color: #5A6B72; }

.sct-tpl-service-hub .sct-stats-band { background: #1B3A4B; color: #fff; padding: 58px 0; }

.sct-tpl-service-hub .sct-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; text-align: center; }

.sct-tpl-service-hub .sct-stats-grid > * { min-width: 0; }

.sct-tpl-service-hub .sct-stat-num { font-size: clamp(1.8rem, 3.6vw, 2.7rem); font-weight: 800; color: #F5A623; line-height: 1; }

.sct-tpl-service-hub .sct-stat-label { color: rgba(255,255,255,.82); font-weight: 600; font-size: .93rem; margin-top: 10px; }

.sct-tpl-service-hub .sct-intro-section { background: #fff; }

.sct-tpl-service-hub .sct-intro-inner { max-width: 900px; margin: 0 auto; }

.sct-tpl-service-hub .sct-intro-inner p { color: #5A6B72; font-size: 1.03rem; margin: 0 0 18px; line-height: 1.75; }

.sct-tpl-service-hub .sct-intro-inner p:last-child { margin-bottom: 0; }

.sct-tpl-service-hub .sct-intro-inner strong { color: #1B3A4B; font-weight: 700; }

.sct-tpl-service-hub .sct-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }

.sct-tpl-service-hub .sct-services-grid > * { min-width: 0; }

.sct-tpl-service-hub .sct-service-card {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 20px;
    padding: 0 0 26px; box-shadow: 0 4px 14px rgba(15,155,142,.08);
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
    display: flex; flex-direction: column; overflow: hidden;
}

.sct-tpl-service-hub .sct-service-card:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(15,155,142,.12); border-color: #0F9B8E; }

.sct-tpl-service-hub .sct-service-media { position: relative; }

.sct-tpl-service-hub .sct-service-media img { width: 100%; height: 200px; object-fit: cover; display: block; transition: transform .35s ease; }

.sct-tpl-service-hub .sct-service-card:hover .sct-service-media img { transform: scale(1.04); }

.sct-tpl-service-hub .sct-service-icon {
    position: absolute; left: 22px; bottom: -24px;
    width: 50px; height: 50px; border-radius: 16px; background: #0F9B8E; color: #fff;
    display: flex; align-items: center; justify-content: center; font-size: 1.15rem;
    box-shadow: 0 10px 22px rgba(15,155,142,.34);
}

.sct-tpl-service-hub .sct-service-body { padding: 38px 24px 0; }

.sct-tpl-service-hub .sct-service-body p { color: #5A6B72; font-size: .95rem; margin: 0 0 14px; }

.sct-tpl-service-hub .sct-tag-credit {
    display: inline-flex; align-items: center; gap: 7px;
    background: #FFF6E6; color: #D98B0C;
    font-size: .76rem; font-weight: 800; padding: 6px 14px; border-radius: 999px;
    border: 1px solid rgba(245,166,35,.35);
}

.sct-tpl-service-hub .sct-processus-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; }

.sct-tpl-service-hub .sct-processus-grid > * { min-width: 0; }

.sct-tpl-service-hub .sct-step-card {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 18px;
    padding: 28px 22px; text-align: center; position: relative;
    box-shadow: 0 4px 14px rgba(15,155,142,.08);
    transition: transform .3s ease, box-shadow .3s ease;
}

.sct-tpl-service-hub .sct-step-card:hover { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(15,155,142,.12); }

.sct-tpl-service-hub .sct-step-icon {
    width: 56px; height: 56px; border-radius: 18px; margin: 0 auto 16px;
    background: #E6F5F3; color: #0B7A70;
    display: flex; align-items: center; justify-content: center; font-size: 1.3rem;
}

.sct-tpl-service-hub .sct-step-num {
    position: absolute; top: 16px; right: 18px;
    font-size: .8rem; font-weight: 800; color: #F5A623;
}

.sct-tpl-service-hub .sct-step-card h3 { font-size: 1.02rem; margin-bottom: 8px; }

.sct-tpl-service-hub .sct-step-card p { color: #5A6B72; font-size: .9rem; margin: 0; }

.sct-tpl-service-hub .sct-why-section { background: #F7FAF9; }

.sct-tpl-service-hub .sct-why-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; }

.sct-tpl-service-hub .sct-why-grid > * { min-width: 0; }

.sct-tpl-service-hub .sct-why-card {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 20px;
    padding: 30px 26px; box-shadow: 0 4px 14px rgba(15,155,142,.08);
    transition: transform .3s ease, box-shadow .3s ease;
}

.sct-tpl-service-hub .sct-why-card:hover { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(15,155,142,.12); }

.sct-tpl-service-hub .sct-why-card i {
    display: flex; align-items: center; justify-content: center;
    width: 52px; height: 52px; border-radius: 16px;
    background: #E6F5F3; color: #0B7A70; font-size: 1.25rem; margin-bottom: 18px;
}

.sct-tpl-service-hub .sct-why-card h3 { font-size: 1.08rem; }

.sct-tpl-service-hub .sct-why-card p { color: #5A6B72; font-size: .93rem; margin: 0; }

.sct-tpl-service-hub .sct-usecase-section { background: #fff; }

.sct-tpl-service-hub .sct-usecase-grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 52px; align-items: center; }

.sct-tpl-service-hub .sct-usecase-grid > * { min-width: 0; }

.sct-tpl-service-hub .sct-usecase-visual img {
    width: 100%; height: 420px; object-fit: cover; border-radius: 24px;
    box-shadow: 0 22px 50px rgba(27,58,75,.16);
}

.sct-tpl-service-hub .sct-usecase-text p { color: #5A6B72; font-size: 1.01rem; margin: 0 0 16px; line-height: 1.75; }

.sct-tpl-service-hub .sct-usecase-text strong { color: #1B3A4B; }

.sct-tpl-service-hub .sct-usecase-text ul { list-style: none; padding: 0; margin: 22px 0 0; }

.sct-tpl-service-hub .sct-usecase-text li {
    display: flex; gap: 12px; align-items: flex-start; margin-bottom: 12px;
    font-weight: 600; color: #1B3A4B; font-size: .96rem;
}

.sct-tpl-service-hub .sct-usecase-text li i { color: #0F9B8E; margin-top: 5px; flex-shrink: 0; }

.sct-tpl-service-hub .sct-engagements-section {
    background: linear-gradient(135deg, #1B3A4B 0%, #173F52 60%, #0B7A70 130%);
    color: #fff; position: relative; overflow: hidden;
}

.sct-tpl-service-hub .sct-engagements-section::before {
    content: ""; position: absolute; top: -120px; left: -100px; width: 400px; height: 400px;
    background: radial-gradient(circle, rgba(245,166,35,.16), transparent 70%); border-radius: 50%;
}

.sct-tpl-service-hub .sct-engagements-section .sct-container { position: relative; z-index: 2; }

.sct-tpl-service-hub .sct-engagements-section h2 { color: #fff; }

.sct-tpl-service-hub .sct-engagements-section .sct-section-head p { color: rgba(255,255,255,.85); }

.sct-tpl-service-hub .sct-engagements-section .sct-eyebrow { background: rgba(255,255,255,.12); color: #FFD489; }

.sct-tpl-service-hub .sct-engagements-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

.sct-tpl-service-hub .sct-engagements-grid > * { min-width: 0; }

.sct-tpl-service-hub .sct-engagement-card {
    background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16);
    border-radius: 18px; padding: 28px 24px;
}

.sct-tpl-service-hub .sct-engagement-card i {
    display: flex; align-items: center; justify-content: center;
    width: 50px; height: 50px; border-radius: 15px;
    background: #F5A623; color: #3A2A05; font-size: 1.15rem; margin-bottom: 16px;
}

.sct-tpl-service-hub .sct-engagement-card h3 { color: #fff; font-size: 1.06rem; }

.sct-tpl-service-hub .sct-engagement-card p { color: rgba(255,255,255,.85); font-size: .93rem; margin: 0; }

.sct-tpl-service-hub .sct-legal-note {
    font-size: .8rem; font-style: italic; color: rgba(255,255,255,.6);
    margin: 26px 0 0; text-align: center;
}

.sct-tpl-service-hub .sct-faq-section { background: #F7FAF9; }

.sct-tpl-service-hub .sct-faq-list { max-width: 840px; margin: 0 auto; }

.sct-tpl-service-hub .sct-faq-item {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 14px;
    margin-bottom: 14px; overflow: hidden;
}

.sct-tpl-service-hub .sct-faq-q {
    width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px;
    background: none; border: none; padding: 20px 24px; cursor: pointer;
    font-family: inherit; font-size: 1rem; font-weight: 700; color: #1B3A4B; text-align: left;
}

.sct-tpl-service-hub .sct-faq-q i { color: #0F9B8E; transition: transform .3s ease; flex-shrink: 0; }

.sct-tpl-service-hub .sct-faq-item.sct-open .sct-faq-q i { transform: rotate(180deg); }

.sct-tpl-service-hub .sct-faq-a { max-height: 0; overflow: hidden; transition: max-height .35s ease; }

.sct-tpl-service-hub .sct-faq-item.sct-open .sct-faq-a { max-height: 520px; }

.sct-tpl-service-hub .sct-faq-a p { padding: 0 24px 22px; margin: 0; color: #5A6B72; font-size: .95rem; line-height: 1.7; }

.sct-tpl-service-hub .sct-maillage-section { background: #fff; padding: 72px 0; }

.sct-tpl-service-hub .sct-maillage-section.sct-maillage-alt { background: #F7FAF9; padding: 56px 0; }

.sct-tpl-service-hub .sct-maillage-inner { max-width: 1040px; margin: 0 auto; text-align: center; }

.sct-tpl-service-hub .sct-maillage-inner h2 { font-size: clamp(1.4rem, 2.8vw, 2rem); }

.sct-tpl-service-hub .sct-maillage-inner > p { color: #5A6B72; margin: 0 0 28px; }

.sct-tpl-service-hub .sct-maillage-links {
    display: flex; flex-wrap: wrap; gap: 12px; justify-content: center;
    max-width: 100%; overflow-wrap: anywhere;
}

.sct-tpl-service-hub .sct-maillage-links a {
    display: inline-flex; align-items: center; gap: 8px;
    background: #fff; border: 1px solid #E3ECEA; border-radius: 999px;
    padding: 10px 20px; font-weight: 600; font-size: .92rem; color: #1B3A4B;
    text-decoration: none; transition: all .25s ease;
}

.sct-tpl-service-hub .sct-maillage-links a:hover { border-color: #0F9B8E; color: #0B7A70; transform: translateY(-2px); }

.sct-tpl-service-hub .sct-maillage-note {
    display: inline-flex; align-items: center; gap: 10px; margin-top: 28px;
    background: #E6F5F3; border: 1px solid rgba(15,155,142,.18); color: #0B7A70;
    border-radius: 999px; padding: 10px 22px; font-weight: 700; font-size: .9rem;
}

.sct-tpl-service-hub .sct-cta-final { background: #0F9B8E; color: #fff; padding: 62px 0; text-align: center; }

.sct-tpl-service-hub .sct-cta-final h2 { color: #fff; margin-bottom: 12px; }

.sct-tpl-service-hub .sct-cta-final p { color: rgba(255,255,255,.92); max-width: 640px; margin: 0 auto 26px; font-size: 1.03rem; }

.sct-tpl-service-hub .sct-cta-actions { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }

@media (max-width: 992px) {
    .sct-tpl-service-hub .sct-hero-grid { grid-template-columns: 1fr; gap: 40px; }
    .sct-tpl-service-hub .sct-hero-card { max-width: 480px; margin: 0 auto; width: 100%; }
    .sct-tpl-service-hub .sct-hero { padding: 130px 0 80px; }
    .sct-tpl-service-hub .sct-hero-float { left: auto; right: 12px; }
    .sct-tpl-service-hub .sct-services-grid { grid-template-columns: repeat(2, 1fr); }
    .sct-tpl-service-hub .sct-processus-grid { grid-template-columns: repeat(3, 1fr); }
    .sct-tpl-service-hub .sct-why-grid { grid-template-columns: repeat(2, 1fr); }
    .sct-tpl-service-hub .sct-usecase-grid { grid-template-columns: 1fr; gap: 36px; }
    .sct-tpl-service-hub .sct-usecase-visual img { height: 340px; }
    .sct-tpl-service-hub .sct-section { padding: 64px 0; }
    .sct-tpl-service-hub .sct-maillage-section { padding: 58px 0; }
}

@media (max-width: 768px) {
    .sct-tpl-service-hub .sct-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 26px; }
    .sct-tpl-service-hub .sct-engagements-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
    .sct-tpl-service-hub .sct-hero { padding: 120px 0 68px; }
    .sct-tpl-service-hub .sct-breadcrumb { font-size: .8rem; margin-bottom: 16px; }
    .sct-tpl-service-hub .sct-hero-btns { flex-direction: column; }
    .sct-tpl-service-hub .sct-hero-btns > * { width: 100%; justify-content: center; }
    .sct-tpl-service-hub .sct-hero-text h1 { font-size: 1.9rem; line-height: 1.2; }
    .sct-tpl-service-hub .sct-hero-subtitle { font-size: 1rem; }
    .sct-tpl-service-hub .sct-hero-card img { height: 250px; }
    .sct-tpl-service-hub .sct-hero-float { position: static; max-width: none; margin-top: 16px; }
    .sct-tpl-service-hub .sct-section { padding: 54px 0; }
    .sct-tpl-service-hub .sct-section-head { margin-bottom: 34px; }
    .sct-tpl-service-hub .sct-services-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-hub .sct-processus-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-hub .sct-why-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-hub .sct-usecase-visual img { height: 250px; }
    .sct-tpl-service-hub .sct-cta-actions > .sct-btn { width: 100%; }
    .sct-tpl-service-hub .sct-faq-q { padding: 17px 18px; font-size: .95rem; }
    .sct-tpl-service-hub .sct-faq-a p { padding: 0 18px 20px; }
    .sct-tpl-service-hub .sct-maillage-links a { font-size: .88rem; padding: 9px 17px; }
}

@media (prefers-reduced-motion: reduce) {
    .sct-tpl-service-hub *, .sct-tpl-service-hub *::before, .sct-tpl-service-hub *::after {
        animation-duration: .01ms !important; transition-duration: .01ms !important;
    }
}

.sct-tpl-service-city .sct-section { padding: 80px 0; }

.sct-tpl-service-city .sct-section-soft { background: #F7FAF9; }

.sct-tpl-service-city .sct-section-head { max-width: 760px; margin: 0 auto 48px; text-align: center; }

.sct-tpl-service-city .sct-section-head p { color: #5A6B72; font-size: 1.04rem; margin-bottom: 0; }

.sct-tpl-service-city .sct-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    background: #E6F5F3; color: #0B7A70;
    font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .09em;
    padding: 7px 16px; border-radius: 999px; margin-bottom: 14px;
}

.sct-tpl-service-city h2 { font-size: clamp(1.55rem, 3.4vw, 2.4rem); line-height: 1.2; color: #1B3A4B; font-weight: 800; letter-spacing: -.02em; margin: 0 0 16px; }

.sct-tpl-service-city h3 { font-size: clamp(1.05rem, 2vw, 1.25rem); line-height: 1.3; color: #1B3A4B; font-weight: 800; margin: 0 0 10px; }

.sct-tpl-service-city .sct-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    padding: 15px 30px; border-radius: 999px; font-weight: 700; font-size: 1rem;
    border: 2px solid transparent; cursor: pointer; transition: all .3s ease;
    font-family: inherit; text-align: center; text-decoration: none;
}

.sct-tpl-service-city .sct-btn-primary { background: #0F9B8E; color: #fff; box-shadow: 0 10px 24px rgba(15,155,142,.28); }

.sct-tpl-service-city .sct-btn-primary:hover { background: #0B7A70; transform: translateY(-2px); }

.sct-tpl-service-city .sct-btn-accent { background: #F5A623; color: #3A2A05; box-shadow: 0 10px 24px rgba(245,166,35,.3); }

.sct-tpl-service-city .sct-btn-accent:hover { background: #D98B0C; transform: translateY(-2px); }

.sct-tpl-service-city .sct-btn-ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); }

.sct-tpl-service-city .sct-btn-ghost:hover { background: rgba(255,255,255,.14); border-color: #fff; }

.sct-tpl-service-city .sct-btn-outline { background: #fff; color: #0B7A70; border-color: #E3ECEA; }

.sct-tpl-service-city .sct-btn-outline:hover { border-color: #0F9B8E; transform: translateY(-2px); }

.sct-tpl-service-city .sct-hero {
    position: relative;
    padding: 150px 0 100px;
    background: linear-gradient(135deg, #1B3A4B 0%, #14505A 55%, #0B7A70 100%);
    color: #fff; overflow: hidden;
}

.sct-tpl-service-city .sct-hero::before {
    content: ""; position: absolute; top: -160px; right: -140px; width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(15,155,142,.45), transparent 68%); border-radius: 50%;
}

.sct-tpl-service-city .sct-hero::after {
    content: ""; position: absolute; bottom: -200px; left: -180px; width: 460px; height: 460px;
    background: radial-gradient(circle, rgba(245,166,35,.18), transparent 70%); border-radius: 50%;
}

.sct-tpl-service-city .sct-hero-container { position: relative; z-index: 2; }

.sct-tpl-service-city .sct-hero-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 50px; align-items: center; }

.sct-tpl-service-city .sct-hero-grid > * { min-width: 0; }

.sct-tpl-service-city .sct-hero-text, .sct-tpl-service-city .sct-hero-card { min-width: 0; max-width: 100%; }

.sct-tpl-service-city .sct-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    max-width: 100%;
    overflow-wrap: anywhere;
    font-size: .86rem;
    margin-bottom: 20px;
    color: rgba(255,255,255,.72);
}

.sct-tpl-service-city .sct-breadcrumb a { color: rgba(255,255,255,.82); text-decoration: none; font-weight: 600; }

.sct-tpl-service-city .sct-breadcrumb a:hover { color: #F5A623; }

.sct-tpl-service-city .sct-bc-sep { color: rgba(255,255,255,.42); }

.sct-tpl-service-city .sct-bc-current { color: #F5A623; font-weight: 700; }

.sct-tpl-service-city .sct-hero-badges { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }

.sct-tpl-service-city .sct-hero-badge {
    display: inline-flex; align-items: center; gap: 8px;
    background: #F5A623; color: #3A2A05;
    padding: 8px 18px; border-radius: 999px; font-weight: 800; font-size: .86rem;
    box-shadow: 0 10px 26px rgba(245,166,35,.3);
}

.sct-tpl-service-city .sct-hero-badge-soft {
    background: rgba(255,255,255,.12); color: #fff; border: 1px solid rgba(255,255,255,.24);
    box-shadow: none;
}

.sct-tpl-service-city .sct-hero-text h1 {
    color: #fff; font-size: clamp(1.9rem, 4.6vw, 3.1rem); line-height: 1.16;
    font-weight: 800; letter-spacing: -.02em; margin: 0 0 18px;
}

.sct-tpl-service-city .sct-hero-text h1 span { color: #F5A623; }

.sct-tpl-service-city .sct-hero-subtitle { color: rgba(255,255,255,.9); font-size: 1.08rem; max-width: 620px; margin: 0 0 26px; }

.sct-tpl-service-city .sct-hero-btns { display: flex; flex-wrap: wrap; gap: 14px; }

.sct-tpl-service-city .sct-hero-trust { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 28px; }

.sct-tpl-service-city .sct-hero-trust span {
    display: inline-flex; align-items: center; gap: 9px;
    color: rgba(255,255,255,.88); font-weight: 600; font-size: .93rem;
}

.sct-tpl-service-city .sct-hero-trust i { color: #F5A623; }

.sct-tpl-service-city .sct-hero-card {
    background: #fff; border-radius: 22px; padding: 30px;
    box-shadow: 0 22px 50px rgba(27,58,75,.28); color: #22343C;
}

.sct-tpl-service-city .sct-hero-card-title {
    font-weight: 800; color: #1B3A4B; font-size: 1.15rem;
    display: flex; align-items: center; gap: 10px; margin: 0 0 18px;
}

.sct-tpl-service-city .sct-hero-card-title i { color: #0F9B8E; }

.sct-tpl-service-city .sct-hero-lines { list-style: none; padding: 0; margin: 0 0 22px; }

.sct-tpl-service-city .sct-hero-lines li {
    display: flex; gap: 14px; align-items: flex-start;
    padding: 13px 0; border-bottom: 1px solid #E3ECEA;
}

.sct-tpl-service-city .sct-hero-lines li:last-child { border-bottom: none; }

.sct-tpl-service-city .sct-hero-lines i {
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
    width: 40px; height: 40px; border-radius: 13px; background: #E6F5F3; color: #0B7A70;
}

.sct-tpl-service-city .sct-hero-lines .sct-lbl {
    display: block; font-size: .74rem; text-transform: uppercase; letter-spacing: .07em;
    color: #5A6B72; font-weight: 700;
}

.sct-tpl-service-city .sct-hero-lines .sct-val { font-weight: 700; color: #1B3A4B; font-size: .96rem; text-decoration: none; }

.sct-tpl-service-city .sct-hero-lines a.sct-val:hover { color: #0F9B8E; }

.sct-tpl-service-city .sct-hero-card .sct-btn { width: 100%; }

.sct-tpl-service-city .sct-stats-band { background: #1B3A4B; color: #fff; padding: 58px 0; }

.sct-tpl-service-city .sct-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; text-align: center; }

.sct-tpl-service-city .sct-stats-grid > * { min-width: 0; }

.sct-tpl-service-city .sct-stat-num { font-size: clamp(1.8rem, 3.6vw, 2.7rem); font-weight: 800; color: #F5A623; line-height: 1; }

.sct-tpl-service-city .sct-stat-label { color: rgba(255,255,255,.82); font-weight: 600; font-size: .93rem; margin-top: 10px; }

.sct-tpl-service-city .sct-intro-section { background: #fff; }

.sct-tpl-service-city .sct-intro-inner { max-width: 900px; margin: 0 auto; }

.sct-tpl-service-city .sct-intro-inner p { color: #5A6B72; font-size: 1.03rem; margin: 0 0 18px; line-height: 1.75; }

.sct-tpl-service-city .sct-intro-inner p:last-child { margin-bottom: 0; }

.sct-tpl-service-city .sct-intro-inner strong { color: #1B3A4B; font-weight: 700; }

.sct-tpl-service-city .sct-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }

.sct-tpl-service-city .sct-services-grid > * { min-width: 0; }

.sct-tpl-service-city .sct-service-card {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 20px;
    padding: 0 0 26px; box-shadow: 0 4px 14px rgba(15,155,142,.08);
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
    display: flex; flex-direction: column; overflow: hidden;
}

.sct-tpl-service-city .sct-service-card:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(15,155,142,.12); border-color: #0F9B8E; }

.sct-tpl-service-city .sct-service-media { position: relative; }

.sct-tpl-service-city .sct-service-media img { width: 100%; height: 200px; object-fit: cover; display: block; transition: transform .35s ease; }

.sct-tpl-service-city .sct-service-card:hover .sct-service-media img { transform: scale(1.04); }

.sct-tpl-service-city .sct-service-icon {
    position: absolute; left: 22px; bottom: -24px;
    width: 50px; height: 50px; border-radius: 16px; background: #0F9B8E; color: #fff;
    display: flex; align-items: center; justify-content: center; font-size: 1.15rem;
    box-shadow: 0 10px 22px rgba(15,155,142,.34);
}

.sct-tpl-service-city .sct-service-body { padding: 38px 24px 0; }

.sct-tpl-service-city .sct-service-body p { color: #5A6B72; font-size: .95rem; margin: 0 0 14px; }

.sct-tpl-service-city .sct-tag-credit {
    display: inline-flex; align-items: center; gap: 7px;
    background: #FFF6E6; color: #D98B0C;
    font-size: .76rem; font-weight: 800; padding: 6px 14px; border-radius: 999px;
    border: 1px solid rgba(245,166,35,.35);
}

.sct-tpl-service-city .sct-processus-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; }

.sct-tpl-service-city .sct-processus-grid > * { min-width: 0; }

.sct-tpl-service-city .sct-step-card {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 18px;
    padding: 28px 22px; text-align: center; position: relative;
    box-shadow: 0 4px 14px rgba(15,155,142,.08);
    transition: transform .3s ease, box-shadow .3s ease;
}

.sct-tpl-service-city .sct-step-card:hover { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(15,155,142,.12); }

.sct-tpl-service-city .sct-step-icon {
    width: 56px; height: 56px; border-radius: 18px; margin: 0 auto 16px;
    background: #E6F5F3; color: #0B7A70;
    display: flex; align-items: center; justify-content: center; font-size: 1.3rem;
}

.sct-tpl-service-city .sct-step-num {
    position: absolute; top: 16px; right: 18px;
    font-size: .8rem; font-weight: 800; color: #F5A623;
}

.sct-tpl-service-city .sct-step-card h3 { font-size: 1.02rem; margin-bottom: 8px; }

.sct-tpl-service-city .sct-step-card p { color: #5A6B72; font-size: .9rem; margin: 0; }

.sct-tpl-service-city .sct-why-section { background: #F7FAF9; }

.sct-tpl-service-city .sct-why-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; }

.sct-tpl-service-city .sct-why-grid > * { min-width: 0; }

.sct-tpl-service-city .sct-why-card {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 20px;
    padding: 30px 26px; box-shadow: 0 4px 14px rgba(15,155,142,.08);
    transition: transform .3s ease, box-shadow .3s ease;
}

.sct-tpl-service-city .sct-why-card:hover { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(15,155,142,.12); }

.sct-tpl-service-city .sct-why-card i {
    display: flex; align-items: center; justify-content: center;
    width: 52px; height: 52px; border-radius: 16px;
    background: #E6F5F3; color: #0B7A70; font-size: 1.25rem; margin-bottom: 18px;
}

.sct-tpl-service-city .sct-why-card h3 { font-size: 1.08rem; }

.sct-tpl-service-city .sct-why-card p { color: #5A6B72; font-size: .93rem; margin: 0; }

.sct-tpl-service-city .sct-zones-inner {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 20px;
    padding: 40px; box-shadow: 0 4px 14px rgba(15,155,142,.08);
}

.sct-tpl-service-city .sct-zones-inner p { color: #5A6B72; margin: 0; }

.sct-tpl-service-city .sct-zone-tags { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }

.sct-tpl-service-city .sct-zone-tags span, .sct-tpl-service-city .sct-zone-tags a {
    background: #E6F5F3; color: #0B7A70; font-weight: 700; font-size: .88rem;
    padding: 9px 18px; border-radius: 999px; border: 1px solid rgba(15,155,142,.16);
    text-decoration: none; display: inline-block;
}

.sct-tpl-service-city .sct-zone-tags a:hover { background: #0F9B8E; color: #fff; }

.sct-tpl-service-city .sct-zone-note {
    display: flex; gap: 12px; align-items: flex-start; margin-top: 24px;
    color: #5A6B72; font-size: .92rem;
}

.sct-tpl-service-city .sct-zone-note i { color: #0F9B8E; margin-top: 4px; flex-shrink: 0; }

.sct-tpl-service-city .sct-usecase-section { background: #F7FAF9; }

.sct-tpl-service-city .sct-usecase-grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 52px; align-items: center; }

.sct-tpl-service-city .sct-usecase-grid > * { min-width: 0; }

.sct-tpl-service-city .sct-usecase-visual img {
    width: 100%; height: 420px; object-fit: cover; border-radius: 24px;
    box-shadow: 0 22px 50px rgba(27,58,75,.16);
}

.sct-tpl-service-city .sct-usecase-text p { color: #5A6B72; font-size: 1.01rem; margin: 0 0 16px; line-height: 1.75; }

.sct-tpl-service-city .sct-usecase-text strong { color: #1B3A4B; }

.sct-tpl-service-city .sct-usecase-text ul { list-style: none; padding: 0; margin: 22px 0 0; }

.sct-tpl-service-city .sct-usecase-text li {
    display: flex; gap: 12px; align-items: flex-start; margin-bottom: 12px;
    font-weight: 600; color: #1B3A4B; font-size: .96rem;
}

.sct-tpl-service-city .sct-usecase-text li i { color: #0F9B8E; margin-top: 5px; flex-shrink: 0; }

.sct-tpl-service-city .sct-engagements-section {
    background: linear-gradient(135deg, #1B3A4B 0%, #173F52 60%, #0B7A70 130%);
    color: #fff; position: relative; overflow: hidden;
}

.sct-tpl-service-city .sct-engagements-section::before {
    content: ""; position: absolute; top: -120px; left: -100px; width: 400px; height: 400px;
    background: radial-gradient(circle, rgba(245,166,35,.16), transparent 70%); border-radius: 50%;
}

.sct-tpl-service-city .sct-engagements-section .sct-container { position: relative; z-index: 2; }

.sct-tpl-service-city .sct-engagements-section h2 { color: #fff; }

.sct-tpl-service-city .sct-engagements-section .sct-section-head p { color: rgba(255,255,255,.85); }

.sct-tpl-service-city .sct-engagements-section .sct-eyebrow { background: rgba(255,255,255,.12); color: #FFD489; }

.sct-tpl-service-city .sct-engagements-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

.sct-tpl-service-city .sct-engagements-grid > * { min-width: 0; }

.sct-tpl-service-city .sct-engagement-card {
    background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16);
    border-radius: 18px; padding: 28px 24px;
}

.sct-tpl-service-city .sct-engagement-card i {
    display: flex; align-items: center; justify-content: center;
    width: 50px; height: 50px; border-radius: 15px;
    background: #F5A623; color: #3A2A05; font-size: 1.15rem; margin-bottom: 16px;
}

.sct-tpl-service-city .sct-engagement-card h3 { color: #fff; font-size: 1.06rem; }

.sct-tpl-service-city .sct-engagement-card p { color: rgba(255,255,255,.85); font-size: .93rem; margin: 0; }

.sct-tpl-service-city .sct-legal-note {
    font-size: .8rem; font-style: italic; color: rgba(255,255,255,.6);
    margin: 26px 0 0; text-align: center;
}

.sct-tpl-service-city .sct-local-spec { background: #fff; }

.sct-tpl-service-city .sct-local-inner {
    max-width: 900px; margin: 0 auto;
    background: #F7FAF9; border: 1px solid #E3ECEA; border-left: 5px solid #0F9B8E;
    border-radius: 18px; padding: 34px 36px;
}

.sct-tpl-service-city .sct-local-inner p { color: #5A6B72; font-size: 1rem; margin: 0 0 14px; line-height: 1.75; }

.sct-tpl-service-city .sct-local-inner p:last-child { margin-bottom: 0; }

.sct-tpl-service-city .sct-local-inner strong { color: #1B3A4B; }

.sct-tpl-service-city .sct-faq-section { background: #F7FAF9; }

.sct-tpl-service-city .sct-faq-list { max-width: 840px; margin: 0 auto; }

.sct-tpl-service-city .sct-faq-item {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 14px;
    margin-bottom: 14px; overflow: hidden;
}

.sct-tpl-service-city .sct-faq-q {
    width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px;
    background: none; border: none; padding: 20px 24px; cursor: pointer;
    font-family: inherit; font-size: 1rem; font-weight: 700; color: #1B3A4B; text-align: left;
}

.sct-tpl-service-city .sct-faq-q i { color: #0F9B8E; transition: transform .3s ease; flex-shrink: 0; }

.sct-tpl-service-city .sct-faq-item.sct-open .sct-faq-q i { transform: rotate(180deg); }

.sct-tpl-service-city .sct-faq-a { max-height: 0; overflow: hidden; transition: max-height .35s ease; }

.sct-tpl-service-city .sct-faq-item.sct-open .sct-faq-a { max-height: 520px; }

.sct-tpl-service-city .sct-faq-a p { padding: 0 24px 22px; margin: 0; color: #5A6B72; font-size: .95rem; line-height: 1.7; }

.sct-tpl-service-city .sct-maillage-section { background: #fff; padding: 56px 0; }

.sct-tpl-service-city .sct-maillage-section.sct-maillage-alt { background: #F7FAF9; }

.sct-tpl-service-city .sct-maillage-inner { max-width: 1000px; margin: 0 auto; text-align: center; }

.sct-tpl-service-city .sct-maillage-inner h2 { font-size: clamp(1.35rem, 2.6vw, 1.8rem); }

.sct-tpl-service-city .sct-maillage-inner > p { color: #5A6B72; margin: 0 0 26px; }

.sct-tpl-service-city .sct-maillage-links {
    display: flex; flex-wrap: wrap; gap: 12px; justify-content: center;
    max-width: 100%; overflow-wrap: anywhere;
}

.sct-tpl-service-city .sct-maillage-links a {
    display: inline-flex; align-items: center; gap: 8px;
    background: #fff; border: 1px solid #E3ECEA; border-radius: 999px;
    padding: 10px 20px; font-weight: 600; font-size: .92rem; color: #1B3A4B;
    text-decoration: none; transition: all .25s ease;
}

.sct-tpl-service-city .sct-maillage-section.sct-maillage-alt .sct-maillage-links a { background: #fff; }

.sct-tpl-service-city .sct-maillage-links a:hover { border-color: #0F9B8E; color: #0B7A70; transform: translateY(-2px); }

.sct-tpl-service-city .sct-cta-final { background: #0F9B8E; color: #fff; padding: 62px 0; text-align: center; }

.sct-tpl-service-city .sct-cta-final h2 { color: #fff; margin-bottom: 12px; }

.sct-tpl-service-city .sct-cta-final p { color: rgba(255,255,255,.92); max-width: 640px; margin: 0 auto 26px; font-size: 1.03rem; }

.sct-tpl-service-city .sct-cta-actions { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }

@media (max-width: 992px) {
    .sct-tpl-service-city .sct-hero-grid { grid-template-columns: 1fr; gap: 40px; }
    .sct-tpl-service-city .sct-hero-card { max-width: 480px; margin: 0 auto; width: 100%; }
    .sct-tpl-service-city .sct-hero { padding: 130px 0 80px; }
    .sct-tpl-service-city .sct-services-grid { grid-template-columns: repeat(2, 1fr); }
    .sct-tpl-service-city .sct-processus-grid { grid-template-columns: repeat(3, 1fr); }
    .sct-tpl-service-city .sct-why-grid { grid-template-columns: repeat(2, 1fr); }
    .sct-tpl-service-city .sct-usecase-grid { grid-template-columns: 1fr; gap: 36px; }
    .sct-tpl-service-city .sct-usecase-visual img { height: 340px; }
    .sct-tpl-service-city .sct-section { padding: 64px 0; }
}

@media (max-width: 768px) {
    .sct-tpl-service-city .sct-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 26px; }
    .sct-tpl-service-city .sct-engagements-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-city .sct-zones-inner { padding: 26px; }
    .sct-tpl-service-city .sct-local-inner { padding: 26px 24px; }
}

@media (max-width: 640px) {
    .sct-tpl-service-city .sct-hero { padding: 120px 0 68px; }
    .sct-tpl-service-city .sct-breadcrumb { font-size: .8rem; margin-bottom: 16px; }
    .sct-tpl-service-city .sct-hero-btns { flex-direction: column; }
    .sct-tpl-service-city .sct-hero-btns > * { width: 100%; justify-content: center; }
    .sct-tpl-service-city .sct-hero-text h1 { font-size: 1.9rem; line-height: 1.2; }
    .sct-tpl-service-city .sct-hero-subtitle { font-size: 1rem; }
    .sct-tpl-service-city .sct-hero-card { padding: 24px; }
    .sct-tpl-service-city .sct-section { padding: 54px 0; }
    .sct-tpl-service-city .sct-section-head { margin-bottom: 34px; }
    .sct-tpl-service-city .sct-services-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-city .sct-processus-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-city .sct-why-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-city .sct-usecase-visual img { height: 250px; }
    .sct-tpl-service-city .sct-cta-actions > .sct-btn { width: 100%; }
    .sct-tpl-service-city .sct-faq-q { padding: 17px 18px; font-size: .95rem; }
    .sct-tpl-service-city .sct-faq-a p { padding: 0 18px 20px; }
}

@media (prefers-reduced-motion: reduce) {
    .sct-tpl-service-city *, .sct-tpl-service-city *::before, .sct-tpl-service-city *::after {
        animation-duration: .01ms !important; transition-duration: .01ms !important;
    }
}

.sct-tpl-zone .sct-section { padding: 80px 0; }

.sct-tpl-zone .sct-section-soft { background: #F7FAF9; }

.sct-tpl-zone .sct-section-head { max-width: 760px; margin: 0 auto 48px; text-align: center; }

.sct-tpl-zone .sct-section-head p { color: #5A6B72; font-size: 1.04rem; margin-bottom: 0; }

.sct-tpl-zone .sct-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    background: #E6F5F3; color: #0B7A70;
    font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .09em;
    padding: 7px 16px; border-radius: 999px; margin-bottom: 14px;
}

.sct-tpl-zone h2 { font-size: clamp(1.55rem, 3.4vw, 2.4rem); line-height: 1.2; color: #1B3A4B; font-weight: 800; letter-spacing: -.02em; margin: 0 0 16px; }

.sct-tpl-zone h3 { font-size: clamp(1.05rem, 2vw, 1.25rem); line-height: 1.3; color: #1B3A4B; font-weight: 800; margin: 0 0 10px; }

.sct-tpl-zone .sct-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    padding: 15px 30px; border-radius: 999px; font-weight: 700; font-size: 1rem;
    border: 2px solid transparent; cursor: pointer; transition: all .3s ease;
    font-family: inherit; text-align: center; text-decoration: none;
}

.sct-tpl-zone .sct-btn-primary { background: #0F9B8E; color: #fff; box-shadow: 0 10px 24px rgba(15,155,142,.28); }

.sct-tpl-zone .sct-btn-primary:hover { background: #0B7A70; transform: translateY(-2px); }

.sct-tpl-zone .sct-btn-accent { background: #F5A623; color: #3A2A05; box-shadow: 0 10px 24px rgba(245,166,35,.3); }

.sct-tpl-zone .sct-btn-accent:hover { background: #D98B0C; transform: translateY(-2px); }

.sct-tpl-zone .sct-btn-ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); }

.sct-tpl-zone .sct-btn-ghost:hover { background: rgba(255,255,255,.14); border-color: #fff; }

.sct-tpl-zone .sct-btn-outline { background: #fff; color: #0B7A70; border-color: #E3ECEA; }

.sct-tpl-zone .sct-btn-outline:hover { border-color: #0F9B8E; transform: translateY(-2px); }

.sct-tpl-zone .sct-hero {
    position: relative;
    padding: 150px 0 100px;
    background: linear-gradient(135deg, #1B3A4B 0%, #14505A 55%, #0B7A70 100%);
    color: #fff; overflow: hidden;
}

.sct-tpl-zone .sct-hero::before {
    content: ""; position: absolute; top: -160px; right: -140px; width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(15,155,142,.45), transparent 68%); border-radius: 50%;
}

.sct-tpl-zone .sct-hero::after {
    content: ""; position: absolute; bottom: -200px; left: -180px; width: 460px; height: 460px;
    background: radial-gradient(circle, rgba(245,166,35,.18), transparent 70%); border-radius: 50%;
}

.sct-tpl-zone .sct-hero-container { position: relative; z-index: 2; }

.sct-tpl-zone .sct-hero-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 50px; align-items: center; }

.sct-tpl-zone .sct-hero-grid > * { min-width: 0; }

.sct-tpl-zone .sct-hero-text, .sct-tpl-zone .sct-hero-card { min-width: 0; max-width: 100%; }

.sct-tpl-zone .sct-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    max-width: 100%;
    overflow-wrap: anywhere;
    font-size: .86rem;
    margin-bottom: 20px;
    color: rgba(255,255,255,.72);
}

.sct-tpl-zone .sct-breadcrumb a { color: rgba(255,255,255,.82); text-decoration: none; font-weight: 600; }

.sct-tpl-zone .sct-breadcrumb a:hover { color: #F5A623; }

.sct-tpl-zone .sct-bc-sep { color: rgba(255,255,255,.42); }

.sct-tpl-zone .sct-bc-current { color: #F5A623; font-weight: 700; }

.sct-tpl-zone .sct-hero-badges { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }

.sct-tpl-zone .sct-hero-badge {
    display: inline-flex; align-items: center; gap: 8px;
    background: #F5A623; color: #3A2A05;
    padding: 8px 18px; border-radius: 999px; font-weight: 800; font-size: .86rem;
    box-shadow: 0 10px 26px rgba(245,166,35,.3);
}

.sct-tpl-zone .sct-hero-badge-soft {
    background: rgba(255,255,255,.12); color: #fff; border: 1px solid rgba(255,255,255,.24);
    box-shadow: none;
}

.sct-tpl-zone .sct-hero-text h1 {
    color: #fff; font-size: clamp(1.9rem, 4.6vw, 3.1rem); line-height: 1.16;
    font-weight: 800; letter-spacing: -.02em; margin: 0 0 18px;
}

.sct-tpl-zone .sct-hero-text h1 span { color: #F5A623; }

.sct-tpl-zone .sct-hero-subtitle { color: rgba(255,255,255,.9); font-size: 1.08rem; max-width: 620px; margin: 0 0 26px; }

.sct-tpl-zone .sct-hero-btns { display: flex; flex-wrap: wrap; gap: 14px; }

.sct-tpl-zone .sct-hero-trust { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 28px; }

.sct-tpl-zone .sct-hero-trust span {
    display: inline-flex; align-items: center; gap: 9px;
    color: rgba(255,255,255,.88); font-weight: 600; font-size: .93rem;
}

.sct-tpl-zone .sct-hero-trust i { color: #F5A623; }

.sct-tpl-zone .sct-hero-card {
    background: #fff; border-radius: 22px; padding: 30px;
    box-shadow: 0 22px 50px rgba(27,58,75,.28); color: #22343C;
}

.sct-tpl-zone .sct-hero-card-title {
    font-weight: 800; color: #1B3A4B; font-size: 1.15rem;
    display: flex; align-items: center; gap: 10px; margin: 0 0 18px;
}

.sct-tpl-zone .sct-hero-card-title i { color: #0F9B8E; }

.sct-tpl-zone .sct-hero-lines { list-style: none; padding: 0; margin: 0 0 22px; }

.sct-tpl-zone .sct-hero-lines li {
    display: flex; gap: 14px; align-items: flex-start;
    padding: 13px 0; border-bottom: 1px solid #E3ECEA;
}

.sct-tpl-zone .sct-hero-lines li:last-child { border-bottom: none; }

.sct-tpl-zone .sct-hero-lines i {
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
    width: 40px; height: 40px; border-radius: 13px; background: #E6F5F3; color: #0B7A70;
}

.sct-tpl-zone .sct-hero-lines .sct-lbl {
    display: block; font-size: .74rem; text-transform: uppercase; letter-spacing: .07em;
    color: #5A6B72; font-weight: 700;
}

.sct-tpl-zone .sct-hero-lines .sct-val { font-weight: 700; color: #1B3A4B; font-size: .96rem; text-decoration: none; }

.sct-tpl-zone .sct-hero-lines a.sct-val:hover { color: #0F9B8E; }

.sct-tpl-zone .sct-hero-card .sct-btn { width: 100%; }

.sct-tpl-zone .sct-stats-band { background: #1B3A4B; color: #fff; padding: 58px 0; }

.sct-tpl-zone .sct-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; text-align: center; }

.sct-tpl-zone .sct-stats-grid > * { min-width: 0; }

.sct-tpl-zone .sct-stat-num { font-size: clamp(1.8rem, 3.6vw, 2.7rem); font-weight: 800; color: #F5A623; line-height: 1; }

.sct-tpl-zone .sct-stat-label { color: rgba(255,255,255,.82); font-weight: 600; font-size: .93rem; margin-top: 10px; }

.sct-tpl-zone .sct-intro-section { background: #fff; }

.sct-tpl-zone .sct-intro-inner { max-width: 900px; margin: 0 auto; }

.sct-tpl-zone .sct-intro-inner p { color: #5A6B72; font-size: 1.03rem; margin: 0 0 18px; line-height: 1.75; }

.sct-tpl-zone .sct-intro-inner p:last-child { margin-bottom: 0; }

.sct-tpl-zone .sct-intro-inner strong { color: #1B3A4B; font-weight: 700; }

.sct-tpl-zone .sct-services-section { background: #F7FAF9; }

.sct-tpl-zone .sct-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }

.sct-tpl-zone .sct-services-grid > * { min-width: 0; }

.sct-tpl-zone .sct-service-card {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 20px;
    padding: 30px 26px; box-shadow: 0 4px 14px rgba(15,155,142,.08);
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
    display: flex; flex-direction: column;
}

.sct-tpl-zone .sct-service-card:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(15,155,142,.12); border-color: #0F9B8E; }

.sct-tpl-zone .sct-service-card i, .sct-tpl-zone .sct-service-icon {
    display: flex; align-items: center; justify-content: center;
    width: 52px; height: 52px; border-radius: 16px;
    background: #E6F5F3; color: #0B7A70; font-size: 1.25rem; margin-bottom: 18px;
    flex-shrink: 0;
}

.sct-tpl-zone .sct-service-card h3 { font-size: 1.08rem; }

.sct-tpl-zone .sct-service-card p { color: #5A6B72; font-size: .94rem; margin: 0 0 16px; }

.sct-tpl-zone .sct-service-card a,
.sct-tpl-zone .sct-service-link {
    margin-top: auto; display: inline-flex; align-items: center; gap: 9px;
    font-weight: 700; font-size: .93rem; color: #0B7A70; text-decoration: none;
    transition: gap .25s ease;
}

.sct-tpl-zone .sct-service-card a:hover,
.sct-tpl-zone .sct-service-link:hover { gap: 14px; color: #0F9B8E; }

.sct-tpl-zone .sct-service-card a i,
.sct-tpl-zone .sct-service-link i {
    width: auto; height: auto; border-radius: 0; background: none;
    color: inherit; font-size: .85rem; margin: 0;
}

.sct-tpl-zone .sct-tag-credit {
    display: inline-flex; align-items: center; gap: 7px; margin-bottom: 16px;
    background: #FFF6E6; color: #D98B0C;
    font-size: .76rem; font-weight: 800; padding: 6px 14px; border-radius: 999px;
    border: 1px solid rgba(245,166,35,.35); align-self: flex-start;
}

.sct-tpl-zone .sct-zones-section { background: #fff; }

.sct-tpl-zone .sct-zones-inner {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 20px;
    padding: 40px; box-shadow: 0 4px 14px rgba(15,155,142,.08);
}

.sct-tpl-zone .sct-zones-inner p { color: #5A6B72; margin: 0; }

.sct-tpl-zone .sct-zone-tags { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }

.sct-tpl-zone .sct-zone-tags span, .sct-tpl-zone .sct-zone-tags a {
    background: #E6F5F3; color: #0B7A70; font-weight: 700; font-size: .88rem;
    padding: 9px 18px; border-radius: 999px; border: 1px solid rgba(15,155,142,.16);
    text-decoration: none; display: inline-block;
}

.sct-tpl-zone .sct-zone-tags a:hover { background: #0F9B8E; color: #fff; }

.sct-tpl-zone .sct-zone-note {
    display: flex; gap: 12px; align-items: flex-start; margin-top: 24px;
    color: #5A6B72; font-size: .92rem;
}

.sct-tpl-zone .sct-zone-note i { color: #0F9B8E; margin-top: 4px; flex-shrink: 0; }

.sct-tpl-zone .sct-usecase-section { background: #F7FAF9; }

.sct-tpl-zone .sct-usecase-grid { display: grid; grid-template-columns: 1fr 1.05fr; gap: 52px; align-items: center; }

.sct-tpl-zone .sct-usecase-grid > * { min-width: 0; }

.sct-tpl-zone .sct-usecase-visual img {
    width: 100%; height: 420px; object-fit: cover; border-radius: 24px;
    box-shadow: 0 22px 50px rgba(27,58,75,.16);
}

.sct-tpl-zone .sct-usecase-text p { color: #5A6B72; font-size: 1.01rem; margin: 0 0 16px; line-height: 1.75; }

.sct-tpl-zone .sct-usecase-text strong { color: #1B3A4B; }

.sct-tpl-zone .sct-usecase-text ul { list-style: none; padding: 0; margin: 22px 0 0; }

.sct-tpl-zone .sct-usecase-text li {
    display: flex; gap: 12px; align-items: flex-start; margin-bottom: 12px;
    font-weight: 600; color: #1B3A4B; font-size: .96rem;
}

.sct-tpl-zone .sct-usecase-text li i { color: #0F9B8E; margin-top: 5px; flex-shrink: 0; }

.sct-tpl-zone .sct-engagements-section {
    background: linear-gradient(135deg, #1B3A4B 0%, #173F52 60%, #0B7A70 130%);
    color: #fff; position: relative; overflow: hidden;
}

.sct-tpl-zone .sct-engagements-section::before {
    content: ""; position: absolute; top: -120px; left: -100px; width: 400px; height: 400px;
    background: radial-gradient(circle, rgba(245,166,35,.16), transparent 70%); border-radius: 50%;
}

.sct-tpl-zone .sct-engagements-section .sct-container { position: relative; z-index: 2; }

.sct-tpl-zone .sct-engagements-section h2 { color: #fff; }

.sct-tpl-zone .sct-engagements-section .sct-section-head p { color: rgba(255,255,255,.85); }

.sct-tpl-zone .sct-engagements-section .sct-eyebrow { background: rgba(255,255,255,.12); color: #FFD489; }

.sct-tpl-zone .sct-engagements-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }

.sct-tpl-zone .sct-engagements-grid > * { min-width: 0; }

.sct-tpl-zone .sct-engagement-card {
    background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16);
    border-radius: 18px; padding: 28px 24px;
}

.sct-tpl-zone .sct-engagement-card i {
    display: flex; align-items: center; justify-content: center;
    width: 50px; height: 50px; border-radius: 15px;
    background: #F5A623; color: #3A2A05; font-size: 1.15rem; margin-bottom: 16px;
}

.sct-tpl-zone .sct-engagement-card h3 { color: #fff; font-size: 1.06rem; }

.sct-tpl-zone .sct-engagement-card p { color: rgba(255,255,255,.85); font-size: .93rem; margin: 0; }

.sct-tpl-zone .sct-legal-note {
    font-size: .8rem; font-style: italic; color: rgba(255,255,255,.6);
    margin: 26px 0 0; text-align: center;
}

.sct-tpl-zone .sct-local-spec { background: #fff; }

.sct-tpl-zone .sct-local-inner {
    max-width: 900px; margin: 0 auto;
    background: #F7FAF9; border: 1px solid #E3ECEA; border-left: 5px solid #0F9B8E;
    border-radius: 18px; padding: 34px 36px;
}

.sct-tpl-zone .sct-local-inner p { color: #5A6B72; font-size: 1rem; margin: 0 0 14px; line-height: 1.75; }

.sct-tpl-zone .sct-local-inner p:last-child { margin-bottom: 0; }

.sct-tpl-zone .sct-local-inner strong { color: #1B3A4B; }

.sct-tpl-zone .sct-faq-section { background: #F7FAF9; }

.sct-tpl-zone .sct-faq-list { max-width: 840px; margin: 0 auto; }

.sct-tpl-zone .sct-faq-item {
    background: #fff; border: 1px solid #E3ECEA; border-radius: 14px;
    margin-bottom: 14px; overflow: hidden;
}

.sct-tpl-zone .sct-faq-q {
    width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px;
    background: none; border: none; padding: 20px 24px; cursor: pointer;
    font-family: inherit; font-size: 1rem; font-weight: 700; color: #1B3A4B; text-align: left;
}

.sct-tpl-zone .sct-faq-q i { color: #0F9B8E; transition: transform .3s ease; flex-shrink: 0; }

.sct-tpl-zone .sct-faq-item.sct-open .sct-faq-q i { transform: rotate(180deg); }

.sct-tpl-zone .sct-faq-a { max-height: 0; overflow: hidden; transition: max-height .35s ease; }

.sct-tpl-zone .sct-faq-item.sct-open .sct-faq-a { max-height: 520px; }

.sct-tpl-zone .sct-faq-a p { padding: 0 24px 22px; margin: 0; color: #5A6B72; font-size: .95rem; line-height: 1.7; }

.sct-tpl-zone .sct-maillage-section { background: #fff; padding: 66px 0; }

.sct-tpl-zone .sct-maillage-inner { max-width: 1040px; margin: 0 auto; text-align: center; }

.sct-tpl-zone .sct-maillage-inner h2 { font-size: clamp(1.4rem, 2.8vw, 2rem); }

.sct-tpl-zone .sct-maillage-inner > p { color: #5A6B72; margin: 0 0 28px; }

.sct-tpl-zone .sct-maillage-links {
    display: flex; flex-wrap: wrap; gap: 12px; justify-content: center;
    max-width: 100%; overflow-wrap: anywhere;
}

.sct-tpl-zone .sct-maillage-links a {
    display: inline-flex; align-items: center; gap: 8px;
    background: #fff; border: 1px solid #E3ECEA; border-radius: 999px;
    padding: 10px 20px; font-weight: 600; font-size: .92rem; color: #1B3A4B;
    text-decoration: none; transition: all .25s ease;
}

.sct-tpl-zone .sct-maillage-links a:hover { border-color: #0F9B8E; color: #0B7A70; transform: translateY(-2px); }

.sct-tpl-zone .sct-maillage-note {
    display: inline-flex; align-items: center; gap: 10px; margin-top: 28px;
    background: #E6F5F3; border: 1px solid rgba(15,155,142,.18); color: #0B7A70;
    border-radius: 999px; padding: 10px 22px; font-weight: 700; font-size: .9rem;
}

.sct-tpl-zone .sct-cta-final { background: #0F9B8E; color: #fff; padding: 62px 0; text-align: center; }

.sct-tpl-zone .sct-cta-final h2 { color: #fff; margin-bottom: 12px; }

.sct-tpl-zone .sct-cta-final p { color: rgba(255,255,255,.92); max-width: 640px; margin: 0 auto 26px; font-size: 1.03rem; }

.sct-tpl-zone .sct-cta-actions { display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }

@media (max-width: 992px) {
    .sct-tpl-zone .sct-hero-grid { grid-template-columns: 1fr; gap: 40px; }
    .sct-tpl-zone .sct-hero-card { max-width: 480px; margin: 0 auto; width: 100%; }
    .sct-tpl-zone .sct-hero { padding: 130px 0 80px; }
    .sct-tpl-zone .sct-services-grid { grid-template-columns: repeat(2, 1fr); }
    .sct-tpl-zone .sct-usecase-grid { grid-template-columns: 1fr; gap: 36px; }
    .sct-tpl-zone .sct-usecase-visual img { height: 340px; }
    .sct-tpl-zone .sct-section { padding: 64px 0; }
    .sct-tpl-zone .sct-maillage-section { padding: 56px 0; }
}

@media (max-width: 768px) {
    .sct-tpl-zone .sct-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 26px; }
    .sct-tpl-zone .sct-engagements-grid { grid-template-columns: 1fr; }
    .sct-tpl-zone .sct-zones-inner { padding: 26px; }
    .sct-tpl-zone .sct-local-inner { padding: 26px 24px; }
}

@media (max-width: 640px) {
    .sct-tpl-zone .sct-hero { padding: 120px 0 68px; }
    .sct-tpl-zone .sct-breadcrumb { font-size: .8rem; margin-bottom: 16px; }
    .sct-tpl-zone .sct-hero-btns { flex-direction: column; }
    .sct-tpl-zone .sct-hero-btns > * { width: 100%; justify-content: center; }
    .sct-tpl-zone .sct-hero-text h1 { font-size: 1.9rem; line-height: 1.2; }
    .sct-tpl-zone .sct-hero-subtitle { font-size: 1rem; }
    .sct-tpl-zone .sct-hero-card { padding: 24px; }
    .sct-tpl-zone .sct-section { padding: 54px 0; }
    .sct-tpl-zone .sct-section-head { margin-bottom: 34px; }
    .sct-tpl-zone .sct-services-grid { grid-template-columns: 1fr; }
    .sct-tpl-zone .sct-usecase-visual img { height: 250px; }
    .sct-tpl-zone .sct-cta-actions > .sct-btn { width: 100%; }
    .sct-tpl-zone .sct-faq-q { padding: 17px 18px; font-size: .95rem; }
    .sct-tpl-zone .sct-faq-a p { padding: 0 18px 20px; }
    .sct-tpl-zone .sct-maillage-links a { font-size: .88rem; padding: 9px 17px; }
}

@media (prefers-reduced-motion: reduce) {
    .sct-tpl-zone *, .sct-tpl-zone *::before, .sct-tpl-zone *::after {
        animation-duration: .01ms !important; transition-duration: .01ms !important;
    }
}

.hero-sitemap{padding-top:150px;padding-bottom:96px;text-align:center;}

.hero-sitemap .hero-inner{position:relative;z-index:2;max-width:760px;margin:0 auto;}

.hero-sitemap h1{margin-bottom:14px;}

.hero-sitemap .hero-lead{margin:0 auto;color:rgba(255,255,255,.9);}

.hero-sitemap .hero-badge{margin-bottom:20px;}

.hero-sitemap .hero-actions{justify-content:center;}

.sitemap-block{
  background:#fff;border:1px solid var(--border);border-radius:var(--radius);
  padding:38px;box-shadow:var(--shadow-sm);margin-bottom:32px;
}

.sitemap-block:last-child{margin-bottom:0;}

.sitemap-block .block-head{
  display:flex;align-items:center;gap:16px;margin-bottom:8px;
}

.sitemap-block .block-head i{
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  width:54px;height:54px;border-radius:16px;
  background:var(--primary-light);color:var(--primary-dark);font-size:1.25rem;
}

.sitemap-block .block-head h2{font-size:clamp(1.35rem,2.6vw,1.7rem);margin:0;}

.sitemap-block .block-desc{color:var(--muted);font-size:.96rem;margin:0 0 24px;}

.chips{display:flex;flex-wrap:wrap;gap:12px;}

.chips a{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--primary-light);color:var(--primary-dark);
  font-weight:700;font-size:.92rem;line-height:1.35;
  padding:11px 20px;border-radius:999px;border:1px solid rgba(15,155,142,.16);
  transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease,box-shadow .3s ease;
}

.chips a i{font-size:.82rem;opacity:.75;}

.chips a:hover{
  background:var(--primary);color:#fff;border-color:var(--primary);
  transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,155,142,.24);
}

.chips a:hover i{opacity:1;}

.chips.chips-accent a{
  background:var(--accent-light);color:var(--accent-dark);border-color:rgba(245,166,35,.35);
}

.chips.chips-accent a:hover{
  background:var(--accent);color:#3A2A05;border-color:var(--accent);
  box-shadow:0 8px 20px rgba(245,166,35,.28);
}

.chips.chips-home a{
  background:var(--secondary);color:#fff;border-color:var(--secondary);
}

.chips.chips-home a:hover{
  background:var(--secondary-light);border-color:var(--secondary-light);
  box-shadow:0 8px 20px rgba(27,58,75,.26);
}

.city-group{
  padding:22px 0;border-top:1px solid var(--border);
}

.city-group:first-of-type{border-top:none;padding-top:6px;}

.city-group .city-title{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;
  color:var(--secondary);margin:0 0 14px;
}

.city-group .city-title i{color:var(--primary);font-size:.9rem;}

.city-group .city-title a{color:var(--primary-dark);text-transform:none;letter-spacing:0;font-size:.8rem;font-weight:700;}

.city-group .city-title a:hover{text-decoration:underline;}

.sitemap-note{
  display:flex;gap:12px;align-items:flex-start;
  margin-top:26px;padding-top:22px;border-top:1px solid var(--border);
  color:var(--muted);font-size:.92rem;
}

.sitemap-note i{color:var(--primary);margin-top:4px;}

@media (max-width:768px){
  .hero-sitemap{padding-top:118px;padding-bottom:70px;}
  .sitemap-block{padding:24px;}
  .sitemap-block .block-head{gap:12px;}
  .sitemap-block .block-head i{width:46px;height:46px;font-size:1.05rem;}
  .chips{gap:10px;}
  .chips a{font-size:.88rem;padding:10px 16px;width:auto;}
}