/* Phase 6: structured cleanup layer */
:root{
  --header-offset:110px;
  --focus-ring:3px solid rgba(67,201,232,.78);
  --surface:#ffffff;
  --surface-soft:#faf8ff;
  --border-soft:1px solid rgba(111,44,255,.10);
}
html{scroll-padding-top:var(--header-offset)}
body.admin-bar{--header-offset:142px}
.skip-link{position:absolute;left:16px;top:-100px;z-index:1000;background:#111;color:#fff;padding:12px 16px;border-radius:12px}
.skip-link:focus{top:16px}
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-header,.services-dropdown,.service-submenu,.xh-popup-box,.footer-card,.blog-card,.service-card,.contact-box,.single-summary{backface-visibility:hidden}
.site-header{background:rgba(255,255,255,.92)}
.header-meta,.top-promo-bar{position:relative;z-index:2}
.desktop-nav{min-width:0}
.main-menu,.main-menu--custom{min-width:0}
.main-menu > li > a,.main-menu--custom > li > a,.services-menu-toggle{min-height:44px}
.main-menu a,.main-menu--custom a,.services-menu-toggle,.mobile-menu a,.mobile-submenu a,.btn,.client-space-btn{transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
.main-menu a:focus-visible,.main-menu--custom a:focus-visible,.services-menu-toggle:focus-visible,.mobile-menu a:focus-visible,.mobile-submenu a:focus-visible,.btn:focus-visible,.client-space-btn:focus-visible,.mobile-toggle:focus-visible,.mobile-submenu-toggle:focus-visible,.summary-toggle:focus-visible,.summary-item a:focus-visible,.xh-popup-close:focus-visible{outline:var(--focus-ring);outline-offset:3px}
.services-dropdown[aria-hidden="true"],.mobile-submenu[hidden],.summary-panel[hidden]{display:none!important}
.summary-panel.is-open{display:block}
.summary-toggle span{transition:transform .2s ease}
.summary-toggle[aria-expanded="true"] span{transform:rotate(180deg)}
.single-summary{border:var(--border-soft);background:var(--surface)}
.blog-card,.service-card,.contact-box,.footer-card,.testimonial-card,.social-card,.offer-card{border:var(--border-soft)}
.blog-card:hover,.service-card:hover,.social-card:hover,.offer-card:hover{box-shadow:0 18px 38px rgba(23,10,53,.10)}
.hero-actions .btn,.section-actions .btn,.offer-actions .btn{min-height:52px}
.hero-actions .btn[href="#devis"],.section-actions .btn[href="#devis"],.offer-actions .btn[href="#devis"]{scroll-margin-top:var(--header-offset)}
.footer-contact-skew,.cta-wave-section,.method-section,.results-section{position:relative;overflow:hidden}
.footer-grid a,.contact-box a,.blog-card-link,.services-dropdown-card,.service-submenu a{overflow-wrap:anywhere}
.blog-card-media-image img,.case-study-cover img,.case-study-media img,.hero-video-shell video,.hero-video-shell iframe{object-fit:cover}
.case-study-gallery-mosaic img{height:100%}
.xh-popup{padding:18px}
.xh-popup-box{width:min(680px,100%);margin-inline:auto}
.xh-popup-content > *:first-child{margin-top:0}
.xh-popup-content > *:last-child{margin-bottom:0}
.xh-popup-actions{display:flex;flex-wrap:wrap;gap:12px}
.xh-popup-actions .btn{flex:1 1 220px}
.whatsapp-float{box-shadow:0 18px 38px rgba(0,0,0,.18)}
.footer-social-link{padding-block:4px}
.footer-grid ul li a:hover{text-decoration:underline}
@media (max-width:1100px){
  :root{--header-offset:96px}
  body.admin-bar{--header-offset:126px}
  .services-dropdown{width:min(100vw - 24px,980px)}
  .blog-grid,.social-grid,.services-grid,.footer-contact-grid,.footer-grid{gap:20px}
}
@media (max-width:768px){
  :root{--header-offset:88px}
  body.admin-bar{--header-offset:120px}
  .site-header{backdrop-filter:none}
  .hero-actions,.section-actions,.offer-actions,.xh-popup-actions{display:grid;grid-template-columns:1fr}
  .blog-grid,.social-grid,.services-grid,.footer-contact-grid,.footer-grid,.method-steps{grid-template-columns:1fr!important}
  .single-grid,.case-study-intro-grid,.hero-grid,.blog-hero-grid{grid-template-columns:1fr!important}
  .single-summary{position:static;top:auto}
  .summary-toggle{pointer-events:auto}
}
@media (max-width:560px){
  .container{width:min(100% - 20px,1180px)}
  .mobile-menu > li > a,.mobile-submenu-toggle{min-height:74px!important;padding-inline:20px!important}
  .site-branding{max-width:150px}
  .site-branding img{max-height:42px;width:auto}
  .whatsapp-float{right:12px!important;bottom:12px!important}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .main-menu a,.main-menu--custom a,.services-menu-toggle,.mobile-menu a,.mobile-submenu a,.btn,.client-space-btn,.summary-toggle span{transition:none!important}
}
