.menu-check { display: none; }

@media (max-width: 768px) {
  .menu-check:checked ~ .nav-menu { display: flex; flex-direction: column; }
}

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

:root{
  --primary:#1C2A3A;
  --primary-dark:#0F1419;
  --gold:#C9A36A;
  --gold-light:#d9b684;
  --gold-dark:#a8864f;
  --cream:#F8F5F0;
  --stone:#6B7280;
  --white:#ffffff;
  --bordeaux:#800020;
  --shadow:0 10px 40px rgba(28,42,58,0.1);
  --shadow-lg:0 20px 60px rgba(28,42,58,0.18);
}

html{scroll-behavior:smooth}

body{font-family:'Inter',sans-serif;color:var(--primary);background:var(--cream);line-height:1.7;overflow-x:hidden}

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

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

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

h1,h2,h3,h4{font-family:'Playfair Display',serif;font-weight:600;line-height:1.2;color:var(--primary)}

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

.header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:18px 0;transition:all 0.4s ease;background:transparent}

.header.scrolled{background:rgba(248,245,240,0.97);backdrop-filter:blur(10px);box-shadow:0 2px 20px rgba(0,0,0,0.08);padding:12px 0}

.nav{display:flex;justify-content:space-between;align-items:center}

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

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

.logo-text{font-family:'Playfair Display',serif;font-size:1.3rem;color:var(--bordeaux);font-weight:700;letter-spacing:0.5px;text-shadow:0 1px 2px rgba(0,0,0,0.25)}

.header.scrolled .logo-text{color:var(--bordeaux);text-shadow:none}

.nav-menu{display:flex;gap:32px;align-items:center;list-style:none}

.nav-menu a{color:var(--white);font-weight:500;font-size:0.95rem;position:relative;transition:color 0.3s}

.header.scrolled .nav-menu a{color:var(--primary)}

.nav-menu a:not(.btn-cta-nav):hover{color:var(--gold)}

.nav-menu a:not(.btn-cta-nav)::after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:1px;background:var(--gold);transition:width 0.3s}

.nav-menu a:not(.btn-cta-nav):hover::after{width:100%}

.btn-cta-nav{background:var(--gold);color:var(--primary)!important;padding:10px 22px;border-radius:50px;font-weight:600;transition:all 0.3s;display:inline-block;line-height:1.2}

.btn-cta-nav:hover{background:var(--gold-light);transform:translateY(-2px);box-shadow:0 8px 20px rgba(201,163,106,0.4)}

.burger{display:none;background:none;border:none;color:var(--white);font-size:1.5rem;cursor:pointer}

.header.scrolled .burger{color:var(--primary)}

.hero{position:relative;min-height:100vh;display:flex;align-items:center;color:var(--white);overflow:hidden;padding:120px 0 60px}

.hero::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,20,25,0.85) 0%,rgba(28,42,58,0.7) 100%),url('https://webflash.pro/images/hero_1776358643_69e114f3cd247.webp') center/cover no-repeat;z-index:-1}

.hero-content{max-width:780px}

.hero-eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--gold);font-size:0.9rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:24px;font-weight:500}

.hero-eyebrow::before{content:'';width:40px;height:1px;background:var(--gold)}

.hero h1{font-size:clamp(2.2rem,5vw,4rem);color:var(--white);margin-bottom:24px;font-weight:500}

.hero h1 span{color:var(--gold);font-style:italic}

.hero p.lead{font-size:1.15rem;margin-bottom:36px;color:rgba(255,255,255,0.9);max-width:620px}

.hero-cta{display:flex;gap:16px;flex-wrap:wrap}

.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 32px;border-radius:50px;font-weight:600;transition:all 0.3s;cursor:pointer;border:none;font-size:1rem;font-family:inherit}

.btn-primary{background:var(--gold);color:var(--primary)}

.btn-primary:hover{background:var(--gold-light);transform:translateY(-3px);box-shadow:0 12px 30px rgba(201,163,106,0.4)}

.btn-outline{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,0.5)}

.btn-outline:hover{background:var(--white);color:var(--primary);border-color:var(--white)}

.devis-section{padding:80px 0;background:var(--cream);position:relative}

.devis-wrapper{max-width:900px;margin:0 auto;background:var(--white);border-radius:8px;overflow:hidden;box-shadow:var(--shadow-lg);display:grid;grid-template-columns:1fr 1.3fr}

.devis-intro{background:var(--primary);color:var(--white);padding:48px 40px;position:relative}

.devis-intro::after{content:'';position:absolute;right:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--gold)}

.devis-intro h2{color:var(--white);font-size:2rem;margin-bottom:16px}

.devis-intro p{color:rgba(255,255,255,0.85);margin-bottom:24px;font-size:0.95rem}

.devis-intro ul{list-style:none}

.devis-intro li{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;font-size:0.93rem}

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

.devis-form{padding:48px 40px}

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

.form-group label{display:block;font-size:0.85rem;font-weight:600;margin-bottom:6px;color:var(--primary);text-transform:uppercase;letter-spacing:0.5px}

.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 14px;border:1px solid #e5e5e5;border-radius:4px;font-family:inherit;font-size:0.95rem;transition:border-color 0.3s;background:var(--cream)}

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

.form-group textarea{resize:vertical;min-height:100px}

.devis-form button{width:100%;background:var(--gold);color:var(--primary);border:none;padding:14px;border-radius:50px;font-weight:600;cursor:pointer;font-size:1rem;transition:all 0.3s;font-family:inherit}

.devis-form button:hover{background:var(--primary);color:var(--white)}

.form-status{margin-top:16px;text-align:center;font-size:0.9rem}

.stats{background:var(--primary);color:var(--white);padding:70px 0;position:relative}

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

.stat-item{position:relative;padding:0 20px}

.stat-item:not(:last-child)::after{content:'';position:absolute;right:0;top:20%;height:60%;width:1px;background:rgba(201,163,106,0.3)}

.stat-number{font-family:'Playfair Display',serif;font-size:3.2rem;color:var(--gold);font-weight:600;line-height:1;margin-bottom:12px}

.stat-label{font-size:0.9rem;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.8)}

section{padding:100px 0}

.section-header{text-align:center;max-width:680px;margin:0 auto 60px}

.section-eyebrow{display:inline-block;color:var(--gold);font-size:0.85rem;letter-spacing:4px;text-transform:uppercase;margin-bottom:14px;font-weight:500}

.section-eyebrow::before,.section-eyebrow::after{content:'';display:inline-block;width:30px;height:1px;background:var(--gold);vertical-align:middle;margin:0 12px}

.section-title{font-size:clamp(2rem,4vw,2.8rem);margin-bottom:16px}

.section-subtitle{color:var(--stone);font-size:1.05rem}

.about{background:var(--white)}

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

.about-image{position:relative;border-radius:4px;overflow:hidden}

.about-image img{width:100%;height:520px;object-fit:cover}

.about-image::before{content:'';position:absolute;inset:0;border:2px solid var(--gold);transform:translate(-20px,-20px);z-index:-1}

.about-image-wrap{position:relative}

.about-content{position:relative;padding-left:30px;border-left:1px solid var(--gold)}

.about-content h2{font-size:2.4rem;margin-bottom:24px}

.about-content h2 span{font-style:italic;color:var(--gold)}

.about-content p{color:var(--stone);margin-bottom:18px}

.about-features{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}

.about-feature{display:flex;align-items:center;gap:12px;font-size:0.95rem;font-weight:500}

.about-feature i{color:var(--gold)}

.services{background:var(--cream);position:relative}

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

.service-card{background:var(--white);border-radius:4px;overflow:hidden;transition:all 0.4s ease;position:relative;flex:0 1 calc(33.333% - 20px);min-width:280px;box-shadow:0 5px 20px rgba(28,42,58,0.06)}

.service-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-lg)}

.service-image{position:relative;overflow:hidden;height:240px}

.service-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s}

.service-card:hover .service-image img{transform:scale(1.05)}

.service-number{position:absolute;top:16px;left:16px;font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--white);background:rgba(28,42,58,0.7);backdrop-filter:blur(4px);width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--gold)}

.service-content{padding:28px 26px;position:relative}

.service-content::before{content:'';position:absolute;top:0;left:26px;width:40px;height:2px;background:var(--gold)}

.service-content h3{font-size:1.25rem;margin-bottom:12px;margin-top:8px;color:var(--primary)}

.service-content p{color:var(--stone);font-size:0.95rem;line-height:1.65}

.why-us{background:var(--primary);color:var(--white);position:relative;overflow:hidden}

.why-us::before{content:'';position:absolute;top:-50%;right:-20%;width:600px;height:600px;border:1px solid rgba(201,163,106,0.1);border-radius:50%}

.why-us::after{content:'';position:absolute;bottom:-30%;left:-10%;width:400px;height:400px;border:1px solid rgba(201,163,106,0.08);border-radius:50%}

.why-us .section-title,.why-us .section-title *{color:var(--white)}

.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;position:relative;z-index:1}

.why-card{text-align:center;padding:36px 20px;border:1px solid rgba(201,163,106,0.2);border-radius:4px;transition:all 0.4s;background:rgba(255,255,255,0.02)}

.why-card:hover{background:rgba(201,163,106,0.08);border-color:var(--gold);transform:translateY(-6px)}

.why-icon{width:70px;height:70px;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-size:1.6rem}

.why-card h3{color:var(--white);font-size:1.2rem;margin-bottom:12px}

.why-card p{color:rgba(255,255,255,0.75);font-size:0.9rem}

.processus{background:var(--white)}

.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;position:relative}

.process-grid::before{content:'';position:absolute;top:35px;left:10%;right:10%;height:1px;background:linear-gradient(to right,transparent,var(--gold),transparent);z-index:0}

.process-step{text-align:center;position:relative;z-index:1}

.process-num{width:70px;height:70px;background:var(--cream);color:var(--gold);border:1.5px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:600;transition:all 0.3s}

.process-step:hover .process-num{background:var(--gold);color:var(--white)}

.process-step h3{font-size:1.15rem;margin-bottom:10px}

.process-step p{color:var(--stone);font-size:0.9rem}

.zones{background:var(--cream);text-align:center}

.zones-content{max-width:820px;margin:0 auto}

.zones-content p{color:var(--stone);font-size:1.05rem;margin-bottom:36px}

.zones-list{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:30px}

.zone-tag{padding:10px 22px;background:var(--white);border:1px solid var(--gold);border-radius:50px;color:var(--primary);font-size:0.9rem;font-weight:500;transition:all 0.3s}

.zone-tag:hover{background:var(--gold);color:var(--white)}

.zone-tag i{color:var(--gold);margin-right:6px;transition:color 0.3s}

.zone-tag:hover i{color:var(--white)}

.faq{background:var(--white)}

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

.faq-item{border-bottom:1px solid rgba(28,42,58,0.1);padding:6px 0}

.faq-question{width:100%;background:none;border:none;padding:22px 0;font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:500;color:var(--primary);cursor:pointer;display:flex;justify-content:space-between;align-items:center;text-align:left;transition:color 0.3s}

.faq-question:hover{color:var(--gold)}

.faq-question i{color:var(--gold);transition:transform 0.3s;font-size:0.9rem;flex-shrink:0;margin-left:16px}

.faq-item.active .faq-question i{transform:rotate(180deg)}

.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.4s ease;color:var(--stone)}

.faq-item.active .faq-answer{max-height:300px}

.faq-answer p{padding:0 0 22px 0}

.horaires{background:var(--cream)}

.horaires-card{max-width:620px;margin:0 auto;background:var(--white);padding:48px 40px;border-radius:4px;box-shadow:var(--shadow);position:relative}

.horaires-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:var(--gold)}

.horaires-title{text-align:center;margin-bottom:30px;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--primary)}

.horaires-title i{color:var(--gold)}

.horaires-title h3{font-size:1.5rem}

.horaires-list{list-style:none}

.horaires-item{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid rgba(28,42,58,0.08)}

.horaires-item:last-child{border-bottom:none}

.horaires-day{font-weight:600;color:var(--primary)}

.horaires-hours{color:var(--stone);font-size:0.95rem}

.horaires-item.closed .horaires-day{color:var(--stone)}

.horaires-item.closed .horaires-hours{color:#c0392b;font-style:italic;font-size:0.9rem}

.contact{background:var(--white)}

.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:50px}

.contact-info{background:var(--primary);color:var(--white);padding:48px 40px;border-radius:4px;position:relative}

.contact-info::before{content:'';position:absolute;top:0;left:40px;right:40px;height:2px;background:var(--gold)}

.contact-info h3{color:var(--white);font-size:1.6rem;margin-bottom:12px;margin-top:10px}

.contact-info > p{color:rgba(255,255,255,0.8);margin-bottom:30px;font-size:0.95rem}

.contact-list{list-style:none}

.contact-item{display:flex;align-items:flex-start;gap:18px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,0.1)}

.contact-item:last-child{border-bottom:none}

.contact-icon{width:44px;height:44px;background:rgba(201,163,106,0.15);border:1px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0}

.contact-text span{display:block;font-size:0.8rem;letter-spacing:1px;text-transform:uppercase;color:var(--gold);margin-bottom:4px}

.contact-text p,.contact-text a{color:var(--white);font-size:1rem}

.contact-text a:hover{color:var(--gold)}

.contact-form-wrap{background:var(--cream);padding:48px 40px;border-radius:4px}

.contact-form-wrap h3{font-size:1.6rem;margin-bottom:24px}

.map-wrap{margin-top:50px;border-radius:4px;overflow:hidden;box-shadow:var(--shadow)}

.map-wrap iframe{display:block;width:100%;border:0}

.footer{background:var(--primary-dark);color:rgba(255,255,255,0.7);padding:70px 0 0}

.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;margin-bottom:50px}

.footer-brand img{height:50px;width:auto;margin-bottom:18px}

.footer-brand-name{font-family:'Playfair Display',serif;font-size:1.4rem;color:var(--bordeaux);margin-bottom:14px;font-weight:700}

.footer-brand p{font-size:0.9rem;line-height:1.7}

.footer-title{color:var(--white);font-family:'Playfair Display',serif;font-size:1.1rem;margin-bottom:20px;font-weight:600;display:block;position:relative;padding-bottom:12px}

.footer-title::after{content:'';position:absolute;bottom:0;left:0;width:30px;height:1px;background:var(--gold)}

.footer ul{list-style:none}

.footer li{margin-bottom:10px;font-size:0.9rem}

.footer a{transition:color 0.3s}

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

.footer-contact-item{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;font-size:0.9rem}

.footer-contact-item i{color:var(--gold);margin-top:4px}

.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding:24px 0;text-align:center;font-size:0.85rem}

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

.footer-bottom-links{margin-top:10px}

.footer-bottom-links span{margin:0 8px;color:rgba(255,255,255,0.3)}

.floating-phone{position:fixed;bottom:24px;right:24px;width:60px;height:60px;background:var(--gold);color:var(--primary);border-radius:50%;display:none;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(201,163,106,0.4);z-index:999;font-size:1.3rem;animation:pulse 2s infinite}

@keyframes pulse{0%{box-shadow:0 10px 30px rgba(201,163,106,0.4),0 0 0 0 rgba(201,163,106,0.5)}70%{box-shadow:0 10px 30px rgba(201,163,106,0.4),0 0 0 18px rgba(201,163,106,0)}100%{box-shadow:0 10px 30px rgba(201,163,106,0.4),0 0 0 0 rgba(201,163,106,0)}}

.modal{display:none;position:fixed;inset:0;background:rgba(15,20,25,0.85);z-index:2000;align-items:center;justify-content:center;padding:20px}

.modal.active{display:flex}

.modal-content{background:var(--white);max-width:720px;width:100%;max-height:85vh;overflow-y:auto;border-radius:6px;padding:40px;position:relative}

.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--primary);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background 0.3s}

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

.modal-content p{margin-bottom:10px;font-size:0.95rem}

.modal-content strong{color:var(--primary)}

.reveal{opacity:0;transform:translateY(30px);transition:opacity 0.8s ease,transform 0.8s ease}

.reveal.visible{opacity:1;transform:translateY(0)}

@media (max-width:1024px){
  .about-grid,.contact-grid{grid-template-columns:1fr;gap:40px}
  .about-image::before{display:none}
  .why-grid,.process-grid{grid-template-columns:repeat(2,1fr)}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .service-card{flex:0 1 calc(50% - 15px)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .process-grid::before{display:none}
}

@media (max-width:768px){
  section{padding:70px 0}
  .hero{padding:110px 0 50px;min-height:auto}
  .hero h1{font-size:2.1rem}
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;padding:20px;gap:16px;box-shadow:var(--shadow);border-top:2px solid var(--gold)}
  .nav-menu.active{display:flex}
  .nav-menu a{color:var(--primary)}
  .burger{display:block}
  .devis-wrapper{grid-template-columns:1fr}
  .devis-intro::after{display:none}
  .devis-intro,.devis-form{padding:36px 26px}
  .stats-grid{grid-template-columns:1fr 1fr;gap:40px 20px}
  .stat-item:nth-child(2)::after{display:none}
  .stat-number{font-size:2.5rem}
  .why-grid{grid-template-columns:1fr}
  .process-grid{grid-template-columns:1fr;gap:30px}
  .service-card{flex:0 1 100%;min-width:unset}
  .about-content{padding-left:20px}
  .about-features{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr;gap:30px}
  .contact-info,.contact-form-wrap,.horaires-card{padding:32px 24px}
  .floating-phone{display:flex}
  .hero-cta{flex-direction:column;align-items:flex-start}
  .hero-cta .btn{width:100%;justify-content:center}
  .logo-text{font-size:1.1rem}
  .logo img{height:42px}
}

@media (max-width:640px){
  .container{padding:0 16px}
  .section-header{margin-bottom:40px}
  .btn{padding:13px 24px;font-size:0.95rem}
  .modal-content{padding:30px 20px}
}

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

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

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

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

.sct-tpl-service-city .sct-hero {
    position: relative;
    padding: 160px 0 90px;
    background: linear-gradient(135deg, rgba(15,20,25,0.92) 0%, rgba(28,42,58,0.85) 100%), url('/images/service_1_1776358667_69e1150bad44a.webp') center/cover no-repeat;
    color: #fff;
}

.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: 0.85rem;
    margin-bottom: 24px;
    color: rgba(255,255,255,0.75);
}

.sct-tpl-service-city .sct-breadcrumb a { color: rgba(255,255,255,0.85); transition: color 0.3s; }

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

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

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

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

.sct-tpl-service-city .sct-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px;
    background: rgba(201,163,106,0.15);
    border: 1px solid rgba(201,163,106,0.4);
    border-radius: 50px;
    font-size: 0.82rem;
    color: #C9A36A;
    font-weight: 500;
}

.sct-tpl-service-city .sct-hero-text h1 {
    font-family: 'Playfair Display', serif;
    font-size: clamp(2rem, 4.5vw, 3.4rem);
    color: #fff;
    margin-bottom: 22px;
    font-weight: 500;
    line-height: 1.15;
}

.sct-tpl-service-city .sct-hero-text h1 span,
.sct-tpl-service-city .sct-hero-text h1 em { color: #C9A36A; font-style: italic; }

.sct-tpl-service-city .sct-hero-subtitle {
    font-size: 1.1rem;
    color: rgba(255,255,255,0.88);
    margin-bottom: 32px;
    max-width: 620px;
    line-height: 1.65;
}

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

.sct-tpl-service-city .sct-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 30px;
    border-radius: 50px;
    font-weight: 600;
    transition: all 0.3s;
    border: none;
    font-size: 0.98rem;
    font-family: inherit;
    cursor: pointer;
}

.sct-tpl-service-city .sct-btn-primary { background: #C9A36A; color: #1C2A3A; }

.sct-tpl-service-city .sct-btn-primary:hover { background: #d9b684; transform: translateY(-3px); box-shadow: 0 12px 30px rgba(201,163,106,0.4); }

.sct-tpl-service-city .sct-btn-outline { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,0.5); }

.sct-tpl-service-city .sct-btn-outline:hover { background: #fff; color: #1C2A3A; border-color: #fff; }

.sct-tpl-service-city .sct-hero-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    color: rgba(255,255,255,0.85);
    font-size: 0.9rem;
}

.sct-tpl-service-city .sct-hero-trust span { display: inline-flex; align-items: center; gap: 8px; }

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

.sct-tpl-service-city .sct-hero-card {
    background: rgba(255,255,255,0.08);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(201,163,106,0.3);
    border-radius: 6px;
    padding: 36px 32px;
}

.sct-tpl-service-city .sct-hero-card-title {
    font-family: 'Playfair Display', serif;
    font-size: 1.4rem;
    color: #fff;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(201,163,106,0.3);
}

.sct-tpl-service-city .sct-hero-card-line {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 12px 0;
    color: rgba(255,255,255,0.9);
    font-size: 0.93rem;
}

.sct-tpl-service-city .sct-hero-card-line i {
    color: #C9A36A;
    width: 22px;
    flex-shrink: 0;
    margin-top: 4px;
}

.sct-tpl-service-city .sct-hero-card-cta {
    display: block;
    margin-top: 22px;
    padding: 13px 24px;
    background: #C9A36A;
    color: #1C2A3A;
    text-align: center;
    border-radius: 50px;
    font-weight: 600;
    transition: all 0.3s;
}

.sct-tpl-service-city .sct-hero-card-cta:hover { background: #d9b684; }

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

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

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

.sct-tpl-service-city .sct-stat-value {
    font-family: 'Playfair Display', serif;
    font-size: 2.8rem;
    color: #C9A36A;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 10px;
}

.sct-tpl-service-city .sct-stat-label {
    font-size: 0.85rem;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.8);
}

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

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

.sct-tpl-service-city .sct-intro-content p {
    color: #4a5568;
    font-size: 1.05rem;
    line-height: 1.8;
    margin-bottom: 22px;
}

.sct-tpl-service-city .sct-intro-content strong { color: #1C2A3A; font-weight: 600; }

.sct-tpl-service-city .sct-section-tag {
    display: inline-block;
    color: #C9A36A;
    font-size: 0.85rem;
    letter-spacing: 4px;
    text-transform: uppercase;
    margin-bottom: 14px;
    font-weight: 500;
}

.sct-tpl-service-city .sct-section-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(1.9rem, 3.5vw, 2.6rem);
    color: #1C2A3A;
    margin-bottom: 16px;
    font-weight: 600;
    line-height: 1.2;
}

.sct-tpl-service-city .sct-section-title em { color: #C9A36A; font-style: italic; }

.sct-tpl-service-city .sct-section-subtitle {
    color: #6B7280;
    font-size: 1.02rem;
    max-width: 720px;
    margin: 0 auto;
}

.sct-tpl-service-city .sct-section-header {
    text-align: center;
    max-width: 780px;
    margin: 0 auto 56px;
}

.sct-tpl-service-city .sct-services-section { background: #F8F5F0; padding: 100px 0; }

.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-radius: 4px;
    overflow: hidden;
    transition: all 0.4s ease;
    box-shadow: 0 5px 20px rgba(28,42,58,0.06);
}

.sct-tpl-service-city .sct-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 60px rgba(28,42,58,0.18);
}

.sct-tpl-service-city .sct-service-img {
    height: 230px;
    overflow: hidden;
    position: relative;
}

.sct-tpl-service-city .sct-service-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s;
}

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

.sct-tpl-service-city .sct-service-body { padding: 28px 26px; position: relative; }

.sct-tpl-service-city .sct-service-body::before {
    content: '';
    position: absolute;
    top: 0;
    left: 26px;
    width: 40px;
    height: 2px;
    background: #C9A36A;
}

.sct-tpl-service-city .sct-service-body h3 {
    font-family: 'Playfair Display', serif;
    font-size: 1.3rem;
    color: #1C2A3A;
    margin: 12px 0 12px;
    font-weight: 600;
}

.sct-tpl-service-city .sct-service-body p { color: #6B7280; font-size: 0.95rem; line-height: 1.65; }

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

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

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

.sct-tpl-service-city .sct-step { text-align: center; position: relative; }

.sct-tpl-service-city .sct-step-icon {
    width: 72px;
    height: 72px;
    margin: 0 auto 20px;
    background: #F8F5F0;
    border: 1.5px solid #C9A36A;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #C9A36A;
    font-size: 1.4rem;
    transition: all 0.3s;
}

.sct-tpl-service-city .sct-step:hover .sct-step-icon { background: #C9A36A; color: #fff; }

.sct-tpl-service-city .sct-step-num {
    display: inline-block;
    color: #C9A36A;
    font-family: 'Playfair Display', serif;
    font-size: 0.85rem;
    letter-spacing: 2px;
    margin-bottom: 6px;
}

.sct-tpl-service-city .sct-step h3 {
    font-family: 'Playfair Display', serif;
    font-size: 1.1rem;
    color: #1C2A3A;
    margin-bottom: 10px;
    font-weight: 600;
}

.sct-tpl-service-city .sct-step p { color: #6B7280; font-size: 0.88rem; line-height: 1.6; }

.sct-tpl-service-city .sct-why-section {
    background: #1C2A3A;
    color: #fff;
    padding: 100px 0;
    position: relative;
    overflow: hidden;
}

.sct-tpl-service-city .sct-why-section::before {
    content: '';
    position: absolute;
    top: -40%;
    right: -15%;
    width: 500px;
    height: 500px;
    border: 1px solid rgba(201,163,106,0.1);
    border-radius: 50%;
}

.sct-tpl-service-city .sct-why-section .sct-section-title { color: #fff; }

.sct-tpl-service-city .sct-why-section .sct-section-title em { color: #C9A36A; }

.sct-tpl-service-city .sct-why-section .sct-section-subtitle { color: rgba(255,255,255,0.8); }

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

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

.sct-tpl-service-city .sct-why-card {
    text-align: center;
    padding: 36px 24px;
    border: 1px solid rgba(201,163,106,0.2);
    border-radius: 4px;
    transition: all 0.4s;
    background: rgba(255,255,255,0.02);
}

.sct-tpl-service-city .sct-why-card:hover {
    background: rgba(201,163,106,0.08);
    border-color: #C9A36A;
    transform: translateY(-5px);
}

.sct-tpl-service-city .sct-why-icon {
    width: 68px;
    height: 68px;
    margin: 0 auto 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #C9A36A;
    border-radius: 50%;
    color: #C9A36A;
    font-size: 1.5rem;
}

.sct-tpl-service-city .sct-why-card h3 {
    font-family: 'Playfair Display', serif;
    color: #fff;
    font-size: 1.18rem;
    margin-bottom: 12px;
    font-weight: 600;
}

.sct-tpl-service-city .sct-why-card p { color: rgba(255,255,255,0.78); font-size: 0.9rem; line-height: 1.6; }

.sct-tpl-service-city .sct-zones-section { background: #F8F5F0; padding: 100px 0; text-align: center; }

.sct-tpl-service-city .sct-zones-content { max-width: 880px; margin: 0 auto; }

.sct-tpl-service-city .sct-zones-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    margin-top: 36px;
}

.sct-tpl-service-city .sct-zone-tag {
    padding: 10px 22px;
    background: #fff;
    border: 1px solid #C9A36A;
    border-radius: 50px;
    color: #1C2A3A;
    font-size: 0.9rem;
    font-weight: 500;
    transition: all 0.3s;
}

.sct-tpl-service-city .sct-zone-tag:hover { background: #C9A36A; color: #fff; }

.sct-tpl-service-city .sct-zone-tag i { color: #C9A36A; margin-right: 6px; transition: color 0.3s; }

.sct-tpl-service-city .sct-zone-tag:hover i { color: #fff; }

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

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

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

.sct-tpl-service-city .sct-usecase-img-wrap { position: relative; }

.sct-tpl-service-city .sct-usecase-img-wrap::before {
    content: '';
    position: absolute;
    inset: 0;
    border: 2px solid #C9A36A;
    transform: translate(-18px, -18px);
    z-index: 0;
}

.sct-tpl-service-city .sct-usecase-img {
    position: relative;
    z-index: 1;
    border-radius: 4px;
    overflow: hidden;
}

.sct-tpl-service-city .sct-usecase-img img {
    width: 100%;
    height: 480px;
    object-fit: cover;
}

.sct-tpl-service-city .sct-usecase-content { padding-left: 28px; border-left: 1px solid #C9A36A; }

.sct-tpl-service-city .sct-usecase-content p { color: #4a5568; margin-bottom: 16px; line-height: 1.75; }

.sct-tpl-service-city .sct-usecase-content strong { color: #1C2A3A; }

.sct-tpl-service-city .sct-engagements-section { background: #F8F5F0; padding: 100px 0; }

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

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

.sct-tpl-service-city .sct-engagement-card {
    background: #fff;
    padding: 38px 32px;
    border-radius: 4px;
    text-align: center;
    border-top: 3px solid #C9A36A;
    transition: all 0.3s;
}

.sct-tpl-service-city .sct-engagement-card:hover { transform: translateY(-6px); box-shadow: 0 20px 60px rgba(28,42,58,0.12); }

.sct-tpl-service-city .sct-engagement-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 18px;
    background: rgba(201,163,106,0.12);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #C9A36A;
    font-size: 1.4rem;
}

.sct-tpl-service-city .sct-engagement-card h3 {
    font-family: 'Playfair Display', serif;
    font-size: 1.2rem;
    color: #1C2A3A;
    margin-bottom: 12px;
    font-weight: 600;
}

.sct-tpl-service-city .sct-engagement-card p { color: #6B7280; font-size: 0.93rem; line-height: 1.65; }

.sct-tpl-service-city .sct-local-spec { background: #fff; padding: 80px 0; }

.sct-tpl-service-city .sct-local-spec-content {
    max-width: 880px;
    margin: 0 auto;
    background: #F8F5F0;
    padding: 48px 44px;
    border-radius: 6px;
    border-left: 3px solid #C9A36A;
}

.sct-tpl-service-city .sct-local-spec-content p { color: #4a5568; line-height: 1.75; margin-bottom: 14px; }

.sct-tpl-service-city .sct-local-spec-content strong { color: #1C2A3A; }

.sct-tpl-service-city .sct-faq-section { background: #F8F5F0; padding: 100px 0; }

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

.sct-tpl-service-city .sct-faq-item {
    background: #fff;
    margin-bottom: 14px;
    border-radius: 4px;
    border-left: 3px solid transparent;
    transition: all 0.3s;
    overflow: hidden;
}

.sct-tpl-service-city .sct-faq-item.active { border-left-color: #C9A36A; }

.sct-tpl-service-city .sct-faq-q {
    width: 100%;
    background: none;
    border: none;
    padding: 22px 26px;
    font-family: 'Playfair Display', serif;
    font-size: 1.08rem;
    font-weight: 500;
    color: #1C2A3A;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: left;
    transition: color 0.3s;
}

.sct-tpl-service-city .sct-faq-q:hover { color: #C9A36A; }

.sct-tpl-service-city .sct-faq-q i { color: #C9A36A; transition: transform 0.3s; font-size: 0.85rem; flex-shrink: 0; margin-left: 14px; }

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

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

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

.sct-tpl-service-city .sct-faq-a p { padding: 0 26px 22px; color: #6B7280; line-height: 1.7; }

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

.sct-tpl-service-city .sct-maillage-section + .sct-maillage-section { background: #F8F5F0; padding-top: 70px; }

.sct-tpl-service-city .sct-maillage-title {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    color: #1C2A3A;
    text-align: center;
    margin-bottom: 30px;
    font-weight: 600;
}

.sct-tpl-service-city .sct-maillage-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    max-width: 1000px;
    margin: 0 auto;
}

.sct-tpl-service-city .sct-maillage-list a {
    padding: 9px 18px;
    background: #F8F5F0;
    border: 1px solid rgba(201,163,106,0.3);
    border-radius: 50px;
    color: #1C2A3A;
    font-size: 0.88rem;
    transition: all 0.3s;
}

.sct-tpl-service-city .sct-maillage-list a:hover {
    background: #C9A36A;
    color: #fff;
    border-color: #C9A36A;
}

.sct-tpl-service-city .sct-cta-final {
    background: linear-gradient(135deg, #1C2A3A 0%, #0F1419 100%);
    color: #fff;
    padding: 80px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.sct-tpl-service-city .sct-cta-final::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 600px;
    border: 1px solid rgba(201,163,106,0.08);
    border-radius: 50%;
}

.sct-tpl-service-city .sct-cta-final-content { position: relative; z-index: 1; max-width: 720px; margin: 0 auto; }

.sct-tpl-service-city .sct-cta-final h2 {
    font-family: 'Playfair Display', serif;
    font-size: clamp(1.8rem, 3.5vw, 2.6rem);
    color: #fff;
    margin-bottom: 18px;
    font-weight: 500;
}

.sct-tpl-service-city .sct-cta-final h2 em { color: #C9A36A; font-style: italic; }

.sct-tpl-service-city .sct-cta-final p { color: rgba(255,255,255,0.85); font-size: 1.05rem; margin-bottom: 32px; line-height: 1.7; }

.sct-tpl-service-city .sct-cta-final-btns {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    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-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 40px 20px; }
    .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-engagements-grid { grid-template-columns: 1fr; max-width: 540px; margin: 0 auto; }
    .sct-tpl-service-city .sct-usecase-grid { grid-template-columns: 1fr; gap: 40px; }
    .sct-tpl-service-city .sct-usecase-img-wrap::before { display: none; }
    .sct-tpl-service-city .sct-usecase-img img { height: 380px; }
}

@media (max-width: 640px) {
    .sct-tpl-service-city .sct-hero { padding: 120px 0 60px; }
    .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-btns { flex-direction: column; }
    .sct-tpl-service-city .sct-hero-btns > * { width: 100%; justify-content: center; }
    .sct-tpl-service-city .sct-hero-card { padding: 28px 22px; }
    .sct-tpl-service-city .sct-stats-grid { grid-template-columns: 1fr 1fr; }
    .sct-tpl-service-city .sct-stat-value { font-size: 2.2rem; }
    .sct-tpl-service-city .sct-services-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-city .sct-processus-grid { grid-template-columns: 1fr; gap: 36px; }
    .sct-tpl-service-city .sct-why-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-city .sct-usecase-content { padding-left: 18px; }
    .sct-tpl-service-city .sct-local-spec-content { padding: 32px 24px; }
    .sct-tpl-service-city .sct-faq-q { font-size: 1rem; padding: 18px 20px; }
    .sct-tpl-service-city .sct-faq-a p { padding: 0 20px 20px; }
    .sct-tpl-service-city .sct-cta-final-btns { flex-direction: column; }
    .sct-tpl-service-city .sct-cta-final-btns > * { width: 100%; justify-content: center; }
    .sct-tpl-service-city .sct-intro-content p { font-size: 1rem; }
    .sct-tpl-service-city .sct-section-header { margin-bottom: 40px; }
    .sct-tpl-service-city .sct-intro-section,
    .sct-tpl-service-city .sct-services-section,
    .sct-tpl-service-city .sct-processus-section,
    .sct-tpl-service-city .sct-why-section,
    .sct-tpl-service-city .sct-zones-section,
    .sct-tpl-service-city .sct-usecase-section,
    .sct-tpl-service-city .sct-engagements-section,
    .sct-tpl-service-city .sct-faq-section { padding: 70px 0; }
}

.sct-tpl-service-city .sct-hero {
    position: relative;
    padding: 160px 0 90px;
    background: linear-gradient(135deg, rgba(15,20,25,0.92) 0%, rgba(28,42,58,0.85) 100%), url('/images/service_2_1776358689_69e11521bfd2b.webp') center/cover no-repeat;
    color: #fff;
}

.sct-tpl-service-city .sct-hero {
    position: relative;
    padding: 160px 0 90px;
    background: linear-gradient(135deg, rgba(15,20,25,0.92) 0%, rgba(28,42,58,0.85) 100%), url('/images/service_4_1776358749_69e1155d55b27.webp') center/cover no-repeat;
    color: #fff;
}

.sct-tpl-service-city .sct-hero {
    position: relative;
    padding: 160px 0 90px;
    background: linear-gradient(135deg, rgba(15,20,25,0.92) 0%, rgba(28,42,58,0.85) 100%), url('/images/service_5_1776358769_69e11571dd2b7.webp') center/cover no-repeat;
    color: #fff;
}

.sct-tpl-service-city .sct-hero {
    position: relative;
    padding: 160px 0 90px;
    background: linear-gradient(135deg, rgba(15,20,25,0.92) 0%, rgba(28,42,58,0.85) 100%), url('/images/service_3_1776358727_69e115479ad33.webp') center/cover no-repeat;
    color: #fff;
}

.sct-tpl-service-hub { background: var(--cream); color: var(--primary); }

.sct-tpl-service-hub .sct-breadcrumb-wrap { background: var(--white); border-bottom: 1px solid rgba(28,42,58,0.08); padding: 100px 0 18px; }

.sct-tpl-service-hub .sct-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; max-width: 100%; overflow-wrap: anywhere; font-size: 0.88rem; color: var(--stone); }

.sct-tpl-service-hub .sct-breadcrumb a { color: var(--stone); transition: color 0.3s; }

.sct-tpl-service-hub .sct-breadcrumb a:hover { color: var(--gold); }

.sct-tpl-service-hub .sct-breadcrumb i { color: var(--gold); font-size: 0.7rem; }

.sct-tpl-service-hub .sct-breadcrumb span[aria-current] { color: var(--primary); font-weight: 500; }

.sct-tpl-service-hub .sct-hero { position: relative; padding: 70px 0 90px; color: var(--white); overflow: hidden; }

.sct-tpl-service-hub .sct-hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(15,20,25,0.88) 0%, rgba(28,42,58,0.78) 100%), url('/images/service_1_1776358667_69e1150bad44a.webp') center/cover no-repeat; z-index: -1; }

.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-hero-eyebrow { display: inline-flex; align-items: center; gap: 12px; color: var(--gold); font-size: 0.85rem; letter-spacing: 3px; text-transform: uppercase; margin-bottom: 22px; font-weight: 500; }

.sct-tpl-service-hub .sct-hero-eyebrow::before { content: ''; width: 40px; height: 1px; background: var(--gold); }

.sct-tpl-service-hub .sct-hero-text h1 { font-family: 'Playfair Display', serif; font-size: clamp(2.1rem, 4.5vw, 3.4rem); color: var(--white); margin-bottom: 22px; font-weight: 500; line-height: 1.18; }

.sct-tpl-service-hub .sct-hero-text h1 em { color: var(--gold); font-style: italic; }

.sct-tpl-service-hub .sct-hero-subtitle { font-size: 1.1rem; color: rgba(255,255,255,0.88); margin-bottom: 32px; max-width: 600px; line-height: 1.7; }

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

.sct-tpl-service-hub .sct-btn { display: inline-flex; align-items: center; gap: 10px; padding: 15px 30px; border-radius: 50px; font-weight: 600; transition: all 0.3s; border: none; font-size: 0.98rem; cursor: pointer; font-family: inherit; }

.sct-tpl-service-hub .sct-btn-primary { background: var(--gold); color: var(--primary); }

.sct-tpl-service-hub .sct-btn-primary:hover { background: var(--gold-light); transform: translateY(-3px); box-shadow: 0 12px 30px rgba(201,163,106,0.4); }

.sct-tpl-service-hub .sct-btn-outline { background: transparent; color: var(--white); border: 1.5px solid rgba(255,255,255,0.5); }

.sct-tpl-service-hub .sct-btn-outline:hover { background: var(--white); color: var(--primary); border-color: var(--white); }

.sct-tpl-service-hub .sct-hero-card { background: rgba(255,255,255,0.06); backdrop-filter: blur(10px); border: 1px solid rgba(201,163,106,0.3); border-radius: 6px; padding: 32px; }

.sct-tpl-service-hub .sct-hero-card h3 { color: var(--white); font-family: 'Playfair Display', serif; font-size: 1.3rem; margin-bottom: 18px; }

.sct-tpl-service-hub .sct-hero-card ul { list-style: none; padding: 0; margin: 0; }

.sct-tpl-service-hub .sct-hero-card li { display: flex; align-items: flex-start; gap: 12px; padding: 10px 0; color: rgba(255,255,255,0.9); font-size: 0.95rem; border-bottom: 1px solid rgba(255,255,255,0.08); }

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

.sct-tpl-service-hub .sct-hero-card li i { color: var(--gold); margin-top: 4px; flex-shrink: 0; }

.sct-tpl-service-hub .sct-stats-band { background: var(--primary); color: var(--white); padding: 60px 0; }

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

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

.sct-tpl-service-hub .sct-stat-item { position: relative; padding: 0 16px; }

.sct-tpl-service-hub .sct-stat-item:not(:last-child)::after { content: ''; position: absolute; right: 0; top: 20%; height: 60%; width: 1px; background: rgba(201,163,106,0.3); }

.sct-tpl-service-hub .sct-stat-number { font-family: 'Playfair Display', serif; font-size: 2.8rem; color: var(--gold); font-weight: 600; line-height: 1; margin-bottom: 10px; }

.sct-tpl-service-hub .sct-stat-label { font-size: 0.82rem; letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,0.8); }

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

.sct-tpl-service-hub .sct-section-header { text-align: center; max-width: 720px; margin: 0 auto 56px; }

.sct-tpl-service-hub .sct-section-eyebrow { display: inline-block; color: var(--gold); font-size: 0.82rem; letter-spacing: 4px; text-transform: uppercase; margin-bottom: 14px; font-weight: 500; }

.sct-tpl-service-hub .sct-section-eyebrow::before, .sct-tpl-service-hub .sct-section-eyebrow::after { content: ''; display: inline-block; width: 28px; height: 1px; background: var(--gold); vertical-align: middle; margin: 0 12px; }

.sct-tpl-service-hub .sct-section-title { font-family: 'Playfair Display', serif; font-size: clamp(1.9rem, 3.6vw, 2.6rem); margin-bottom: 14px; color: var(--primary); font-weight: 600; }

.sct-tpl-service-hub .sct-section-title em { color: var(--gold); font-style: italic; }

.sct-tpl-service-hub .sct-section-subtitle { color: var(--stone); font-size: 1.02rem; }

.sct-tpl-service-hub .sct-intro-section { background: var(--white); padding: 90px 0; }

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

.sct-tpl-service-hub .sct-intro-content p { color: var(--stone); margin-bottom: 22px; font-size: 1.02rem; line-height: 1.85; }

.sct-tpl-service-hub .sct-intro-content p:first-child { font-size: 1.12rem; color: var(--primary); }

.sct-tpl-service-hub .sct-intro-content p strong { color: var(--primary); }

.sct-tpl-service-hub .sct-services-section { background: var(--cream); }

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

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

.sct-tpl-service-hub .sct-service-card { background: var(--white); border-radius: 4px; overflow: hidden; transition: all 0.4s ease; box-shadow: 0 5px 20px rgba(28,42,58,0.06); }

.sct-tpl-service-hub .sct-service-card:hover { transform: translateY(-10px); box-shadow: var(--shadow-lg); }

.sct-tpl-service-hub .sct-service-image { position: relative; overflow: hidden; height: 240px; }

.sct-tpl-service-hub .sct-service-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s; }

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

.sct-tpl-service-hub .sct-service-content { padding: 28px 26px; position: relative; }

.sct-tpl-service-hub .sct-service-content::before { content: ''; position: absolute; top: 0; left: 26px; width: 40px; height: 2px; background: var(--gold); }

.sct-tpl-service-hub .sct-service-content h3 { font-family: 'Playfair Display', serif; font-size: 1.25rem; margin: 8px 0 12px; color: var(--primary); }

.sct-tpl-service-hub .sct-service-content p { color: var(--stone); font-size: 0.95rem; line-height: 1.65; }

.sct-tpl-service-hub .sct-processus-section { background: var(--white); }

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

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

.sct-tpl-service-hub .sct-processus-grid::before { content: ''; position: absolute; top: 35px; left: 8%; right: 8%; height: 1px; background: linear-gradient(to right, transparent, var(--gold), transparent); z-index: 0; }

.sct-tpl-service-hub .sct-process-step { text-align: center; position: relative; z-index: 1; }

.sct-tpl-service-hub .sct-process-num { width: 70px; height: 70px; background: var(--cream); color: var(--gold); border: 1.5px solid var(--gold); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 18px; font-family: 'Playfair Display', serif; font-size: 1.4rem; font-weight: 600; transition: all 0.3s; }

.sct-tpl-service-hub .sct-process-step:hover .sct-process-num { background: var(--gold); color: var(--white); }

.sct-tpl-service-hub .sct-process-step h3 { font-family: 'Playfair Display', serif; font-size: 1.1rem; margin-bottom: 10px; color: var(--primary); }

.sct-tpl-service-hub .sct-process-step p { color: var(--stone); font-size: 0.88rem; line-height: 1.6; }

.sct-tpl-service-hub .sct-why-section { background: var(--primary); color: var(--white); position: relative; overflow: hidden; }

.sct-tpl-service-hub .sct-why-section::before { content: ''; position: absolute; top: -50%; right: -20%; width: 600px; height: 600px; border: 1px solid rgba(201,163,106,0.1); border-radius: 50%; }

.sct-tpl-service-hub .sct-why-section::after { content: ''; position: absolute; bottom: -30%; left: -10%; width: 400px; height: 400px; border: 1px solid rgba(201,163,106,0.08); border-radius: 50%; }

.sct-tpl-service-hub .sct-why-section .sct-section-title { color: var(--white); }

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

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

.sct-tpl-service-hub .sct-why-card { text-align: center; padding: 36px 22px; border: 1px solid rgba(201,163,106,0.2); border-radius: 4px; transition: all 0.4s; background: rgba(255,255,255,0.02); }

.sct-tpl-service-hub .sct-why-card:hover { background: rgba(201,163,106,0.08); border-color: var(--gold); transform: translateY(-6px); }

.sct-tpl-service-hub .sct-why-icon { width: 70px; height: 70px; margin: 0 auto 20px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--gold); border-radius: 50%; color: var(--gold); font-size: 1.5rem; }

.sct-tpl-service-hub .sct-why-card h3 { font-family: 'Playfair Display', serif; color: var(--white); font-size: 1.18rem; margin-bottom: 12px; }

.sct-tpl-service-hub .sct-why-card p { color: rgba(255,255,255,0.78); font-size: 0.9rem; line-height: 1.65; }

.sct-tpl-service-hub .sct-usecase-section { background: var(--white); }

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

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

.sct-tpl-service-hub .sct-usecase-image-wrap { position: relative; }

.sct-tpl-service-hub .sct-usecase-image { position: relative; border-radius: 4px; overflow: hidden; }

.sct-tpl-service-hub .sct-usecase-image img { width: 100%; height: 520px; object-fit: cover; }

.sct-tpl-service-hub .sct-usecase-image::before { content: ''; position: absolute; inset: 0; border: 2px solid var(--gold); transform: translate(-20px, -20px); z-index: -1; }

.sct-tpl-service-hub .sct-usecase-content { padding-left: 30px; border-left: 1px solid var(--gold); }

.sct-tpl-service-hub .sct-usecase-content h2 { font-family: 'Playfair Display', serif; font-size: 2.2rem; margin-bottom: 20px; color: var(--primary); }

.sct-tpl-service-hub .sct-usecase-content h2 em { font-style: italic; color: var(--gold); }

.sct-tpl-service-hub .sct-usecase-content p { color: var(--stone); margin-bottom: 16px; line-height: 1.8; }

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

.sct-tpl-service-hub .sct-usecase-list li { display: flex; gap: 14px; padding: 12px 0; border-bottom: 1px solid rgba(28,42,58,0.06); color: var(--primary); font-size: 0.96rem; }

.sct-tpl-service-hub .sct-usecase-list li:last-child { border-bottom: none; }

.sct-tpl-service-hub .sct-usecase-list i { color: var(--gold); margin-top: 4px; flex-shrink: 0; }

.sct-tpl-service-hub .sct-engagements-section { background: var(--cream); }

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

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

.sct-tpl-service-hub .sct-engagement-card { background: var(--white); padding: 40px 32px; border-radius: 4px; text-align: center; box-shadow: 0 5px 20px rgba(28,42,58,0.05); transition: all 0.4s; position: relative; overflow: hidden; }

.sct-tpl-service-hub .sct-engagement-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--gold); transform: scaleX(0); transform-origin: left; transition: transform 0.4s; }

.sct-tpl-service-hub .sct-engagement-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-lg); }

.sct-tpl-service-hub .sct-engagement-card:hover::before { transform: scaleX(1); }

.sct-tpl-service-hub .sct-engagement-icon { width: 72px; height: 72px; margin: 0 auto 20px; display: flex; align-items: center; justify-content: center; background: rgba(201,163,106,0.1); border-radius: 50%; color: var(--gold); font-size: 1.6rem; }

.sct-tpl-service-hub .sct-engagement-card h3 { font-family: 'Playfair Display', serif; font-size: 1.2rem; margin-bottom: 12px; color: var(--primary); }

.sct-tpl-service-hub .sct-engagement-card p { color: var(--stone); font-size: 0.94rem; line-height: 1.7; }

.sct-tpl-service-hub .sct-faq-section { background: var(--white); }

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

.sct-tpl-service-hub .sct-faq-item { border-bottom: 1px solid rgba(28,42,58,0.1); padding: 6px 0; }

.sct-tpl-service-hub .sct-faq-question { width: 100%; background: none; border: none; padding: 22px 0; font-family: 'Playfair Display', serif; font-size: 1.12rem; font-weight: 500; color: var(--primary); cursor: pointer; display: flex; justify-content: space-between; align-items: center; text-align: left; transition: color 0.3s; gap: 16px; }

.sct-tpl-service-hub .sct-faq-question:hover { color: var(--gold); }

.sct-tpl-service-hub .sct-faq-question i { color: var(--gold); transition: transform 0.3s; font-size: 0.85rem; flex-shrink: 0; }

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

.sct-tpl-service-hub .sct-faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.4s ease; color: var(--stone); }

.sct-tpl-service-hub .sct-faq-item.active .sct-faq-answer { max-height: 500px; }

.sct-tpl-service-hub .sct-faq-answer p { padding: 0 0 22px 0; line-height: 1.75; }

.sct-tpl-service-hub .sct-maillage-section { background: var(--cream); padding: 90px 0; }

.sct-tpl-service-hub .sct-maillage-section + .sct-maillage-section { background: var(--white); padding-top: 0; padding-bottom: 90px; }

.sct-tpl-service-hub .sct-maillage-intro { text-align: center; max-width: 720px; margin: 0 auto 40px; color: var(--stone); font-size: 1rem; line-height: 1.75; }

.sct-tpl-service-hub .sct-maillage-cities { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; max-width: 1100px; margin: 0 auto; }

.sct-tpl-service-hub .sct-maillage-cities a { padding: 10px 20px; background: var(--white); border: 1px solid var(--gold); border-radius: 50px; color: var(--primary); font-size: 0.9rem; font-weight: 500; transition: all 0.3s; display: inline-flex; align-items: center; gap: 8px; }

.sct-tpl-service-hub .sct-maillage-cities a:hover { background: var(--gold); color: var(--white); }

.sct-tpl-service-hub .sct-maillage-cities a i { color: var(--gold); font-size: 0.78rem; transition: color 0.3s; }

.sct-tpl-service-hub .sct-maillage-cities a:hover i { color: var(--white); }

.sct-tpl-service-hub .sct-maillage-section + .sct-maillage-section .sct-maillage-cities a { background: var(--cream); }

.sct-tpl-service-hub .sct-maillage-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1100px; margin: 0 auto; }

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

.sct-tpl-service-hub .sct-maillage-service-card { background: var(--cream); border: 1px solid rgba(201,163,106,0.25); border-radius: 4px; padding: 26px 24px; transition: all 0.3s; display: flex; gap: 16px; align-items: flex-start; }

.sct-tpl-service-hub .sct-maillage-service-card:hover { border-color: var(--gold); transform: translateY(-4px); box-shadow: var(--shadow); }

.sct-tpl-service-hub .sct-maillage-service-card i { color: var(--gold); font-size: 1.3rem; margin-top: 4px; flex-shrink: 0; }

.sct-tpl-service-hub .sct-maillage-service-card h3 { font-family: 'Playfair Display', serif; font-size: 1.08rem; margin-bottom: 6px; color: var(--primary); }

.sct-tpl-service-hub .sct-maillage-service-card p { color: var(--stone); font-size: 0.88rem; line-height: 1.55; margin: 0; }

.sct-tpl-service-hub .sct-cta-final { background: linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%); color: var(--white); padding: 90px 0; text-align: center; position: relative; overflow: hidden; }

.sct-tpl-service-hub .sct-cta-final::before { content: ''; position: absolute; top: -100px; left: 50%; transform: translateX(-50%); width: 400px; height: 400px; border: 1px solid rgba(201,163,106,0.15); border-radius: 50%; }

.sct-tpl-service-hub .sct-cta-final-inner { position: relative; z-index: 1; max-width: 720px; margin: 0 auto; }

.sct-tpl-service-hub .sct-cta-final h2 { font-family: 'Playfair Display', serif; font-size: clamp(1.9rem, 3.6vw, 2.6rem); color: var(--white); margin-bottom: 18px; }

.sct-tpl-service-hub .sct-cta-final h2 em { color: var(--gold); font-style: italic; }

.sct-tpl-service-hub .sct-cta-final p { color: rgba(255,255,255,0.85); font-size: 1.08rem; margin-bottom: 32px; line-height: 1.7; }

.sct-tpl-service-hub .sct-cta-final-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

@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-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 40px 20px; }
    .sct-tpl-service-hub .sct-stat-item:nth-child(2)::after { display: none; }
    .sct-tpl-service-hub .sct-services-grid { grid-template-columns: repeat(2, 1fr); }
    .sct-tpl-service-hub .sct-processus-grid { grid-template-columns: repeat(2, 1fr); gap: 36px; }
    .sct-tpl-service-hub .sct-processus-grid::before { display: none; }
    .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: 40px; }
    .sct-tpl-service-hub .sct-usecase-image::before { display: none; }
    .sct-tpl-service-hub .sct-usecase-content { padding-left: 20px; }
    .sct-tpl-service-hub .sct-usecase-image img { height: 400px; }
    .sct-tpl-service-hub .sct-engagements-grid { grid-template-columns: 1fr; max-width: 520px; margin: 0 auto; }
    .sct-tpl-service-hub .sct-maillage-services-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
    .sct-tpl-service-hub .sct-section { padding: 70px 0; }
    .sct-tpl-service-hub .sct-intro-section, .sct-tpl-service-hub .sct-maillage-section { padding: 70px 0; }
    .sct-tpl-service-hub .sct-hero { padding: 50px 0 70px; }
    .sct-tpl-service-hub .sct-hero-text h1 { font-size: 1.9rem; line-height: 1.2; }
    .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-card { padding: 26px 22px; }
    .sct-tpl-service-hub .sct-stats-grid { grid-template-columns: 1fr 1fr; }
    .sct-tpl-service-hub .sct-stat-number { font-size: 2.2rem; }
    .sct-tpl-service-hub .sct-services-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-hub .sct-processus-grid { grid-template-columns: 1fr; gap: 30px; }
    .sct-tpl-service-hub .sct-why-grid { grid-template-columns: 1fr; }
    .sct-tpl-service-hub .sct-usecase-content { padding-left: 16px; }
    .sct-tpl-service-hub .sct-cta-final-btns { flex-direction: column; }
    .sct-tpl-service-hub .sct-cta-final-btns > * { width: 100%; justify-content: center; }
    .sct-tpl-service-hub .sct-maillage-services-grid { grid-template-columns: 1fr; }
}

.sct-tpl-zone .sct-hero { position: relative; padding: 160px 0 90px; color: var(--white); overflow: hidden; }

.sct-tpl-zone .sct-hero::before { content:''; position:absolute; inset:0; background: linear-gradient(135deg, rgba(15,20,25,0.88) 0%, rgba(28,42,58,0.75) 100%), url('/images/service_5_1776358769_69e11571dd2b7.webp') center/cover no-repeat; z-index:-1; }

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

.sct-tpl-zone .sct-breadcrumb a { color:rgba(255,255,255,0.85); transition:color 0.3s; }

.sct-tpl-zone .sct-breadcrumb a:hover { color:var(--gold); }

.sct-tpl-zone .sct-breadcrumb i { font-size:0.7rem; color:var(--gold); }

.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-hero-eyebrow { display:inline-flex; align-items:center; gap:12px; color:var(--gold); font-size:0.85rem; letter-spacing:3px; text-transform:uppercase; margin-bottom:20px; font-weight:500; }

.sct-tpl-zone .sct-hero-eyebrow::before { content:''; width:40px; height:1px; background:var(--gold); }

.sct-tpl-zone .sct-hero-text h1 { font-family:'Playfair Display',serif; font-size:clamp(2rem,4.5vw,3.4rem); color:var(--white); margin-bottom:22px; font-weight:500; line-height:1.15; }

.sct-tpl-zone .sct-hero-text h1 span { color:var(--gold); font-style:italic; }

.sct-tpl-zone .sct-hero-text p { font-size:1.1rem; color:rgba(255,255,255,0.9); margin-bottom:32px; max-width:600px; }

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

.sct-tpl-zone .sct-hero-card { background:rgba(255,255,255,0.06); border:1px solid rgba(201,163,106,0.3); backdrop-filter:blur(8px); border-radius:6px; padding:32px; }

.sct-tpl-zone .sct-hero-card-title { font-family:'Playfair Display',serif; color:var(--white); font-size:1.2rem; margin-bottom:18px; padding-bottom:14px; border-bottom:1px solid rgba(201,163,106,0.25); }

.sct-tpl-zone .sct-hero-card ul { list-style:none; padding:0; margin:0; }

.sct-tpl-zone .sct-hero-card li { display:flex; align-items:flex-start; gap:12px; padding:10px 0; color:rgba(255,255,255,0.88); font-size:0.93rem; }

.sct-tpl-zone .sct-hero-card li i { color:var(--gold); margin-top:5px; flex-shrink:0; }

.sct-tpl-zone .sct-stats-band { background:var(--primary); color:var(--white); padding:50px 0; }

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

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

.sct-tpl-zone .sct-stat-band-item { padding:0 16px; position:relative; }

.sct-tpl-zone .sct-stat-band-item:not(:last-child)::after { content:''; position:absolute; right:0; top:20%; height:60%; width:1px; background:rgba(201,163,106,0.3); }

.sct-tpl-zone .sct-stat-band-num { font-family:'Playfair Display',serif; font-size:2.6rem; color:var(--gold); font-weight:600; line-height:1; margin-bottom:10px; }

.sct-tpl-zone .sct-stat-band-label { font-size:0.82rem; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,0.78); }

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

.sct-tpl-zone .sct-section-header { text-align:center; max-width:720px; margin:0 auto 56px; }

.sct-tpl-zone .sct-section-eyebrow { display:inline-block; color:var(--gold); font-size:0.82rem; letter-spacing:4px; text-transform:uppercase; margin-bottom:14px; font-weight:500; }

.sct-tpl-zone .sct-section-eyebrow::before, .sct-tpl-zone .sct-section-eyebrow::after { content:''; display:inline-block; width:30px; height:1px; background:var(--gold); vertical-align:middle; margin:0 12px; }

.sct-tpl-zone .sct-section-title { font-family:'Playfair Display',serif; font-size:clamp(1.9rem,3.6vw,2.6rem); margin-bottom:14px; color:var(--primary); font-weight:600; }

.sct-tpl-zone .sct-section-title span { color:var(--gold); font-style:italic; }

.sct-tpl-zone .sct-section-subtitle { color:var(--stone); font-size:1.02rem; }

.sct-tpl-zone .sct-intro-section { background:var(--white); }

.sct-tpl-zone .sct-intro-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:60px; align-items:center; }

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

.sct-tpl-zone .sct-intro-image-wrap { position:relative; }

.sct-tpl-zone .sct-intro-image { border-radius:4px; overflow:hidden; position:relative; }

.sct-tpl-zone .sct-intro-image img { width:100%; height:500px; object-fit:cover; display:block; }

.sct-tpl-zone .sct-intro-image-wrap::before { content:''; position:absolute; inset:0; border:2px solid var(--gold); transform:translate(-18px,-18px); z-index:-1; }

.sct-tpl-zone .sct-intro-content { padding-left:24px; border-left:1px solid var(--gold); }

.sct-tpl-zone .sct-intro-content h2 { font-family:'Playfair Display',serif; font-size:2.1rem; margin-bottom:22px; color:var(--primary); font-weight:600; }

.sct-tpl-zone .sct-intro-content h2 span { color:var(--gold); font-style:italic; }

.sct-tpl-zone .sct-intro-content p { color:var(--stone); margin-bottom:16px; }

.sct-tpl-zone .sct-services-section { background:var(--cream); }

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

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

.sct-tpl-zone .sct-service-card { background:var(--white); border-radius:4px; overflow:hidden; box-shadow:0 5px 20px rgba(28,42,58,0.06); transition:all 0.4s ease; display:flex; flex-direction:column; }

.sct-tpl-zone .sct-service-card:hover { transform:translateY(-8px); box-shadow:0 20px 50px rgba(28,42,58,0.15); }

.sct-tpl-zone .sct-service-img { height:200px; overflow:hidden; position:relative; }

.sct-tpl-zone .sct-service-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.6s; }

.sct-tpl-zone .sct-service-card:hover .sct-service-img img { transform:scale(1.06); }

.sct-tpl-zone .sct-service-num { position:absolute; top:14px; left:14px; font-family:'Playfair Display',serif; font-size:0.95rem; color:var(--white); background:rgba(28,42,58,0.7); width:40px; height:40px; display:flex; align-items:center; justify-content:center; border-radius:50%; border:1px solid var(--gold); }

.sct-tpl-zone .sct-service-body { padding:26px 24px 24px; flex:1; display:flex; flex-direction:column; position:relative; }

.sct-tpl-zone .sct-service-body::before { content:''; position:absolute; top:0; left:24px; width:36px; height:2px; background:var(--gold); }

.sct-tpl-zone .sct-service-body h3 { font-family:'Playfair Display',serif; font-size:1.2rem; margin:6px 0 12px; color:var(--primary); font-weight:600; }

.sct-tpl-zone .sct-service-body p { color:var(--stone); font-size:0.93rem; margin-bottom:18px; flex:1; }

.sct-tpl-zone .sct-service-link { color:var(--gold); font-weight:600; font-size:0.9rem; display:inline-flex; align-items:center; gap:8px; transition:gap 0.3s; }

.sct-tpl-zone .sct-service-link:hover { gap:14px; }

.sct-tpl-zone .sct-zones-section { background:var(--white); text-align:center; }

.sct-tpl-zone .sct-zones-content { max-width:880px; margin:0 auto; }

.sct-tpl-zone .sct-zones-content > p { color:var(--stone); font-size:1.02rem; margin-bottom:34px; }

.sct-tpl-zone .sct-zones-list { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }

.sct-tpl-zone .sct-zone-tag { padding:10px 22px; background:var(--cream); border:1px solid var(--gold); border-radius:50px; color:var(--primary); font-size:0.9rem; font-weight:500; transition:all 0.3s; display:inline-flex; align-items:center; gap:8px; }

.sct-tpl-zone .sct-zone-tag:hover { background:var(--gold); color:var(--white); }

.sct-tpl-zone .sct-zone-tag i { color:var(--gold); transition:color 0.3s; }

.sct-tpl-zone .sct-zone-tag:hover i { color:var(--white); }

.sct-tpl-zone .sct-usecase-section { background:var(--cream); }

.sct-tpl-zone .sct-usecase-card { max-width:920px; margin:0 auto; background:var(--white); padding:50px 48px; border-radius:6px; box-shadow:var(--shadow); position:relative; }

.sct-tpl-zone .sct-usecase-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:3px; background:var(--gold); }

.sct-tpl-zone .sct-usecase-card h3 { font-family:'Playfair Display',serif; font-size:1.5rem; margin-bottom:22px; color:var(--primary); display:flex; align-items:center; gap:14px; }

.sct-tpl-zone .sct-usecase-card h3 i { color:var(--gold); }

.sct-tpl-zone .sct-usecase-card p { color:var(--stone); margin-bottom:14px; }

.sct-tpl-zone .sct-engagements-section { background:var(--primary); color:var(--white); position:relative; overflow:hidden; }

.sct-tpl-zone .sct-engagements-section::before { content:''; position:absolute; top:-40%; right:-15%; width:520px; height:520px; border:1px solid rgba(201,163,106,0.1); border-radius:50%; }

.sct-tpl-zone .sct-engagements-section::after { content:''; position:absolute; bottom:-25%; left:-8%; width:380px; height:380px; border:1px solid rgba(201,163,106,0.08); border-radius:50%; }

.sct-tpl-zone .sct-engagements-section .sct-section-title, .sct-tpl-zone .sct-engagements-section .sct-section-title span { color:var(--white); }

.sct-tpl-zone .sct-engagements-section .sct-section-subtitle { color:rgba(255,255,255,0.78); }

.sct-tpl-zone .sct-engagements-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; position:relative; z-index:1; }

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

.sct-tpl-zone .sct-engagement-card { padding:38px 26px; border:1px solid rgba(201,163,106,0.22); border-radius:4px; background:rgba(255,255,255,0.02); text-align:center; transition:all 0.4s; }

.sct-tpl-zone .sct-engagement-card:hover { background:rgba(201,163,106,0.08); border-color:var(--gold); transform:translateY(-6px); }

.sct-tpl-zone .sct-engagement-icon { width:72px; height:72px; margin:0 auto 22px; display:flex; align-items:center; justify-content:center; border:1px solid var(--gold); border-radius:50%; color:var(--gold); font-size:1.5rem; }

.sct-tpl-zone .sct-engagement-card h3 { font-family:'Playfair Display',serif; color:var(--white); font-size:1.2rem; margin-bottom:12px; font-weight:600; }

.sct-tpl-zone .sct-engagement-card p { color:rgba(255,255,255,0.75); font-size:0.92rem; }

.sct-tpl-zone .sct-local-spec { background:var(--white); }

.sct-tpl-zone .sct-local-spec-card { max-width:920px; margin:0 auto; background:var(--cream); border-left:4px solid var(--gold); padding:40px 44px; border-radius:4px; }

.sct-tpl-zone .sct-local-spec-card h3 { font-family:'Playfair Display',serif; font-size:1.4rem; margin-bottom:18px; color:var(--primary); display:flex; align-items:center; gap:14px; }

.sct-tpl-zone .sct-local-spec-card h3 i { color:var(--gold); }

.sct-tpl-zone .sct-local-spec-card p { color:var(--stone); margin-bottom:14px; }

.sct-tpl-zone .sct-faq-section { background:var(--cream); }

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

.sct-tpl-zone .sct-faq-item { background:var(--white); border:1px solid rgba(28,42,58,0.08); border-radius:4px; margin-bottom:14px; overflow:hidden; transition:border-color 0.3s; }

.sct-tpl-zone .sct-faq-item:hover { border-color:var(--gold); }

.sct-tpl-zone .sct-faq-item input { display:none; }

.sct-tpl-zone .sct-faq-q { display:flex; justify-content:space-between; align-items:center; padding:22px 26px; cursor:pointer; font-family:'Playfair Display',serif; font-size:1.08rem; color:var(--primary); font-weight:500; gap:18px; }

.sct-tpl-zone .sct-faq-q i { color:var(--gold); transition:transform 0.3s; flex-shrink:0; }

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

.sct-tpl-zone .sct-faq-a { max-height:0; overflow:hidden; transition:max-height 0.4s ease; padding:0 26px; }

.sct-tpl-zone .sct-faq-item input:checked ~ .sct-faq-a { max-height:600px; padding-bottom:22px; }

.sct-tpl-zone .sct-faq-a p { color:var(--stone); font-size:0.95rem; }

.sct-tpl-zone .sct-maillage-section { background:var(--white); text-align:center; }

.sct-tpl-zone .sct-maillage-content { max-width:920px; margin:0 auto; }

.sct-tpl-zone .sct-maillage-content > p { color:var(--stone); margin-bottom:30px; }

.sct-tpl-zone .sct-maillage-list { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }

.sct-tpl-zone .sct-maillage-list a { padding:10px 22px; background:var(--cream); border:1px solid rgba(201,163,106,0.4); border-radius:50px; color:var(--primary); font-size:0.9rem; font-weight:500; transition:all 0.3s; display:inline-flex; align-items:center; gap:8px; }

.sct-tpl-zone .sct-maillage-list a:hover { background:var(--gold); color:var(--white); border-color:var(--gold); }

.sct-tpl-zone .sct-maillage-list a i { color:var(--gold); transition:color 0.3s; }

.sct-tpl-zone .sct-maillage-list a:hover i { color:var(--white); }

.sct-tpl-zone .sct-cta-final { background:linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%); color:var(--white); padding:90px 0; text-align:center; position:relative; overflow:hidden; }

.sct-tpl-zone .sct-cta-final::before { content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:600px; height:600px; border:1px solid rgba(201,163,106,0.12); border-radius:50%; }

.sct-tpl-zone .sct-cta-final::after { content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:380px; height:380px; border:1px solid rgba(201,163,106,0.08); border-radius:50%; }

.sct-tpl-zone .sct-cta-final-inner { position:relative; z-index:1; max-width:720px; margin:0 auto; }

.sct-tpl-zone .sct-cta-final h2 { font-family:'Playfair Display',serif; font-size:clamp(1.9rem,3.6vw,2.6rem); margin-bottom:18px; color:var(--white); font-weight:500; }

.sct-tpl-zone .sct-cta-final h2 span { color:var(--gold); font-style:italic; }

.sct-tpl-zone .sct-cta-final p { color:rgba(255,255,255,0.85); margin-bottom:34px; font-size:1.05rem; }

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

.sct-tpl-zone .sct-floating-phone { position:fixed; bottom:24px; right:24px; width:60px; height:60px; background:var(--gold); color:var(--primary); border-radius:50%; display:none; align-items:center; justify-content:center; box-shadow:0 10px 30px rgba(201,163,106,0.4); z-index:999; font-size:1.3rem; }

@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-stats-band-grid { grid-template-columns:repeat(2,1fr); gap:30px 20px; }
    .sct-tpl-zone .sct-stat-band-item:nth-child(2)::after { display:none; }
    .sct-tpl-zone .sct-intro-grid { grid-template-columns:1fr; gap:40px; }
    .sct-tpl-zone .sct-intro-image-wrap::before { display:none; }
    .sct-tpl-zone .sct-services-grid { grid-template-columns:repeat(2,1fr); }
    .sct-tpl-zone .sct-engagements-grid { grid-template-columns:1fr; }
    .sct-tpl-zone .sct-section { padding:70px 0; }
    .sct-tpl-zone .sct-hero { padding:130px 0 70px; }
}

@media (max-width: 640px) {
    .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-stats-band-grid { grid-template-columns:1fr 1fr; }
    .sct-tpl-zone .sct-services-grid { grid-template-columns:1fr; }
    .sct-tpl-zone .sct-stat-band-num { font-size:2.1rem; }
    .sct-tpl-zone .sct-usecase-card, .sct-tpl-zone .sct-local-spec-card { padding:32px 24px; }
    .sct-tpl-zone .sct-cta-final-btns { flex-direction:column; }
    .sct-tpl-zone .sct-cta-final-btns > * { width:100%; justify-content:center; }
    .sct-tpl-zone .sct-floating-phone { display:flex; }
    .sct-tpl-zone .sct-intro-content { padding-left:18px; }
}

.sct-tpl-zone .sct-hero::before { content:''; position:absolute; inset:0; background: linear-gradient(135deg, rgba(15,20,25,0.88) 0%, rgba(28,42,58,0.75) 100%), url('/images/service_1_1776358667_69e1150bad44a.webp') center/cover no-repeat; z-index:-1; }

.sitemap-hero{position:relative;padding:160px 0 80px;color:var(--white);overflow:hidden;text-align:center}

.sitemap-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,20,25,0.88) 0%,rgba(28,42,58,0.78) 100%),url('https://webflash.pro/images/hero_1776358643_69e114f3cd247.webp') center/cover no-repeat;z-index:-1}

.sitemap-hero .hero-eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--gold);font-size:0.85rem;letter-spacing:3px;text-transform:uppercase;margin-bottom:20px;font-weight:500}

.sitemap-hero .hero-eyebrow::before,.sitemap-hero .hero-eyebrow::after{content:'';width:40px;height:1px;background:var(--gold)}

.sitemap-hero h1{color:var(--white);font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:18px;font-weight:500}

.sitemap-hero h1 span{color:var(--gold);font-style:italic}

.sitemap-hero p{color:rgba(255,255,255,0.88);font-size:1.1rem;max-width:620px;margin:0 auto}

.sitemap-section{background:var(--cream)}

.sitemap-block{margin-bottom:70px}

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

.sitemap-block-header{display:flex;align-items:center;gap:18px;margin-bottom:30px;padding-bottom:18px;border-bottom:1px solid rgba(201,163,106,0.3)}

.sitemap-block-icon{width:54px;height:54px;display:flex;align-items:center;justify-content:center;background:var(--white);border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-size:1.2rem;flex-shrink:0;box-shadow:0 5px 15px rgba(28,42,58,0.06)}

.sitemap-block-title{font-family:'Playfair Display',serif;font-size:1.7rem;color:var(--primary);font-weight:600}

.sitemap-block-title span{color:var(--gold);font-style:italic}

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

.chip{display:inline-flex;align-items:center;gap:10px;padding:11px 20px;background:var(--white);border:1px solid rgba(201,163,106,0.4);border-radius:50px;color:var(--primary);font-size:0.92rem;font-weight:500;transition:all 0.3s;box-shadow:0 3px 10px rgba(28,42,58,0.04)}

.chip i{color:var(--gold);font-size:0.85rem;transition:color 0.3s}

.chip:hover{background:var(--gold);border-color:var(--gold);color:var(--white);transform:translateY(-3px);box-shadow:0 10px 20px rgba(201,163,106,0.25)}

.chip:hover i{color:var(--white)}

.subgroup{background:var(--white);border-radius:6px;padding:30px 32px;margin-bottom:22px;box-shadow:0 5px 20px rgba(28,42,58,0.05);border-left:3px solid var(--gold)}

.subgroup:last-child{margin-bottom:0}

.subgroup-title{display:flex;align-items:center;gap:12px;font-family:'Playfair Display',serif;font-size:1.2rem;color:var(--primary);margin-bottom:20px;font-weight:600}

.subgroup-title i{color:var(--gold);font-size:1rem}

.cta-band{background:var(--primary);color:var(--white);padding:60px 40px;border-radius:6px;text-align:center;margin-top:70px;position:relative;overflow:hidden}

.cta-band::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:80px;height:3px;background:var(--gold)}

.cta-band h2{color:var(--white);font-size:2rem;margin-bottom:14px}

.cta-band h2 span{color:var(--gold);font-style:italic}

.cta-band p{color:rgba(255,255,255,0.85);margin-bottom:28px;max-width:540px;margin-left:auto;margin-right:auto}

.cta-band .btn{margin:0 6px}

@media (max-width:1024px){
  .footer-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:768px){
  section{padding:70px 0}
  .sitemap-hero{padding:130px 0 60px}
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);flex-direction:column;padding:20px;gap:16px;box-shadow:var(--shadow);border-top:2px solid var(--gold)}
  .nav-menu.active{display:flex}
  .nav-menu a{color:var(--primary)}
  .burger{display:block}
  .footer-grid{grid-template-columns:1fr;gap:30px}
  .floating-phone{display:flex}
  .logo-text{font-size:1.1rem}
  .logo img{height:42px}
  .sitemap-block-header{flex-direction:row;flex-wrap:wrap}
  .sitemap-block-title{font-size:1.4rem}
  .subgroup{padding:24px 20px}
  .cta-band{padding:46px 24px}
  .cta-band h2{font-size:1.6rem}
}

@media (max-width:640px){
  .container{padding:0 16px}
  .chip{font-size:0.88rem;padding:10px 16px}
  .btn{padding:13px 24px;font-size:0.95rem}
}