/* HADS V1.2.4 — production refinement layer. Additive, loaded last. */
:root{
  --hads-purple:#8152a2;
  --hads-purple-2:#a760c9;
  --hads-ink:#211d25;
  --hads-muted:#6f6874;
  --hads-soft:#f8f5fa;
  --hads-line:#eadff0;
  --hads-shadow:0 18px 45px rgba(72,45,88,.09);
}
html{scroll-padding-top:88px}
[id]{scroll-margin-top:88px}
body{color:var(--hads-ink);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
:focus-visible{outline:3px solid rgba(129,82,162,.35);outline-offset:3px}

/* Official logo: do not stretch, crop or recolor. */
.logo img,.brand img,.footer-brand img,.site-logo img,.hads-logo{
  object-fit:contain!important;object-position:left center!important;filter:none!important;transform:none!important;
}
.logo img{width:128px!important;max-height:54px!important;height:auto!important}
.logo small{color:#8152a2!important;font-weight:650!important;letter-spacing:.01em!important}

/* Header language switch: always keep all 3 languages visible on desktop. */
.lang-switch{display:flex!important;align-items:center!important;gap:7px!important;white-space:nowrap!important;flex:0 0 auto!important}
.lang-btn{min-width:28px!important;min-height:32px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;padding:0 7px!important;font-size:11px!important;font-weight:800!important}
.lang-btn.active{background:#f1e8f6!important;color:#71438e!important}

/* CTA and buttons: fine, premium, readable. */
.btn,.submit-btn,.request-btn,.v38-cta,.quick-filter,.catalogue-family-nav a,.family-shortcuts a{
  border-radius:14px!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease!important;
}
.btn:hover,.submit-btn:hover,.request-btn:hover,.v38-cta:hover{transform:translateY(-2px)!important}

/* ---------- Commercial/catalogue presentation ---------- */
.v38-commercial{padding:58px 0 64px!important;background:linear-gradient(180deg,#fff 0%,#fcf9fd 100%)!important}
.v38-commercial .v38-wrap{width:min(1320px,92%)!important}
.v38-commercial .v38-kicker{font-size:10px!important;letter-spacing:2.6px!important;margin-bottom:9px!important}
.v38-commercial h2{max-width:900px!important;font-size:clamp(31px,3.1vw,48px)!important;line-height:1.06!important;letter-spacing:-1.6px!important;margin-bottom:13px!important}
.v38-commercial .v38-lead{max-width:820px!important;font-size:15px!important;line-height:1.65!important;margin-bottom:25px!important}
.v38-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin:20px 0 30px!important}
.v38-product-card{min-height:0!important;height:235px!important;border-radius:22px!important;box-shadow:0 12px 28px rgba(31,22,38,.08)!important}
.v38-product-card img{object-fit:cover!important;object-position:center 24%!important}
.v38-product-card .v38-product-copy{left:17px!important;right:17px!important;bottom:15px!important}
.v38-product-card b{font-size:18px!important;line-height:1.16!important}
.v38-product-card small{font-size:9px!important;letter-spacing:1.25px!important}
.v38-preview-note{margin:0 0 28px!important;padding:10px 13px!important;font-size:11px!important}
.v38-two-col{grid-template-columns:1fr 1fr!important;gap:18px!important}
.v38-panel{border-radius:22px!important;padding:26px!important;box-shadow:0 10px 24px rgba(74,52,86,.05)!important}
.v38-panel h3{font-size:22px!important;line-height:1.28!important;margin:0 0 17px!important}
.v38-cap-grid{gap:10px!important}
.v38-cap{padding:15px!important;min-height:102px!important;border-radius:16px!important}
.v38-cap b{font-size:12px!important;line-height:1.3!important}
.v38-cap span{font-size:12px!important;line-height:1.48!important}
.v38-chips{gap:8px!important;margin:9px 0 20px!important}
.v38-chip{padding:8px 11px!important;font-size:11px!important}
.v38-support-list{gap:0!important;margin:8px 0 22px!important}
.v38-support-list div{padding:9px 10px!important;font-size:12px!important;line-height:1.45!important}
.v38-panel>p{font-size:14px!important;line-height:1.55!important;margin:18px 0 12px!important}
.v38-cta{min-height:44px!important;padding:0 18px!important;border-radius:13px!important;box-shadow:0 6px 0 #e3d6ea!important;font-size:11px!important}
.v38-local-badge{display:none!important}

/* Main family catalogue — calmer images and denser reading rhythm. */
.catalogue{padding-top:64px!important;padding-bottom:70px!important}
.catalogue-toolbar{margin-bottom:30px!important}
.catalogue-toolbar h2{font-size:clamp(30px,3.4vw,48px)!important;line-height:1.08!important}
.catalogue-toolbar p{max-width:680px!important;font-size:14px!important;line-height:1.6!important}
.product-grid{gap:16px!important}
.product-card{border-radius:20px!important;overflow:hidden!important;box-shadow:0 10px 26px rgba(50,35,60,.06)!important}
.product-visual{height:260px!important;background:linear-gradient(180deg,#faf8fb,#f1edf3)!important}
.product-visual img{object-fit:contain!important;object-position:center!important;padding:14px!important}
.product-info{padding:18px 18px 20px!important}
.product-info h4{font-size:17px!important;line-height:1.25!important;margin:.35rem 0 .45rem!important}
.product-info p{font-size:12px!important;line-height:1.55!important;color:#746e78!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.product-badge{font-size:9px!important;letter-spacing:.8px!important}

/* Search added by V1.2.4. */
.hads-catalogue-search{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px;align-items:center;margin:0 0 20px;padding:12px;border:1px solid var(--hads-line);border-radius:18px;background:#fff;box-shadow:0 8px 20px rgba(74,52,86,.04)}
.hads-catalogue-search label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hads-catalogue-search input{width:100%;min-height:44px;border:1px solid #e3d9e8;border-radius:12px;padding:0 14px;font:600 13px/1.2 Manrope,sans-serif;color:#2d2730;background:#fcfbfd;outline:none}
.hads-catalogue-search input:focus{border-color:#9b70b5;box-shadow:0 0 0 3px rgba(129,82,162,.10)}
.hads-catalogue-search .hads-search-count{font-size:11px;font-weight:750;color:#765187;padding:0 8px;white-space:nowrap}

/* Navigation pills / family bubbles — softer 3D wave. */
.catalogue-family-nav .container,.family-shortcuts{gap:9px!important}
.catalogue-family-nav a,.family-shortcuts a{
  border:1px solid #e7dced!important;background:linear-gradient(180deg,#fff,#faf6fc)!important;color:#60466f!important;box-shadow:0 5px 0 #eee3f3,0 10px 22px rgba(75,43,91,.05)!important;
}
.catalogue-family-nav a.active,.family-shortcuts a.active{background:linear-gradient(135deg,#9d5bc0,#76489a)!important;color:#fff!important;border-color:#8d54ad!important;box-shadow:0 5px 0 #60387d,0 12px 24px rgba(111,62,139,.16)!important}

/* Footer official mark in a controlled light chip on dark backgrounds. */
.footer-brand .hads-footer-logo{display:inline-flex;align-items:center;background:rgba(255,255,255,.96);padding:8px 10px;border-radius:14px;margin:0 0 15px;box-shadow:0 10px 24px rgba(0,0,0,.13)}
.footer-brand .hads-footer-logo img{width:122px!important;max-height:48px!important}

/* Accessibility helpers */
.hads-skip-link{position:fixed;left:14px;top:-60px;z-index:100000;background:#fff;color:#3b2847;padding:10px 14px;border-radius:10px;box-shadow:0 8px 22px rgba(0,0,0,.18);font:800 12px/1 Manrope,sans-serif;text-decoration:none}
.hads-skip-link:focus{top:14px}
.hads-form-consent{display:flex;gap:10px;align-items:flex-start;margin:18px 0 0;padding:13px 14px;border:1px solid #e5dbe9;border-radius:14px;background:#fbf9fc}
.hads-form-consent input{width:18px!important;height:18px!important;flex:0 0 auto;margin-top:1px}
.hads-form-consent label{font-size:11px!important;line-height:1.5!important;letter-spacing:0!important;text-transform:none!important;color:#68616c!important}
.hads-form-status{margin-top:12px;font-size:12px;line-height:1.5;color:#5d4a67}

@media(max-width:1100px){
  .logo img{width:108px!important}
  .v38-product-card{height:215px!important}
  .v38-two-col{grid-template-columns:1fr!important}
  .product-visual{height:240px!important}
}
@media(max-width:760px){
  html{scroll-padding-top:70px}[id]{scroll-margin-top:70px}
  .logo img{width:96px!important;max-height:44px!important}.logo small{font-size:6.5px!important}
  .lang-switch{gap:3px!important}.lang-btn{min-width:27px!important;padding:0 5px!important;font-size:10px!important}
  .v38-commercial{padding:42px 0 48px!important}.v38-commercial h2{font-size:31px!important;letter-spacing:-1px!important}.v38-commercial .v38-lead{font-size:14px!important}
  .v38-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.v38-product-card{height:190px!important;border-radius:17px!important}.v38-product-card b{font-size:15px!important}.v38-product-card .v38-product-copy{left:13px!important;right:13px!important;bottom:12px!important}
  .v38-panel{padding:20px!important}.v38-cap-grid{grid-template-columns:1fr!important}.v38-cap{min-height:0!important}
  .catalogue{padding-top:46px!important}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.product-visual{height:190px!important}.product-info{padding:14px!important}.product-info h4{font-size:14px!important}.product-info p{font-size:11px!important;-webkit-line-clamp:2}.product-code{font-size:9px!important}
  .hads-catalogue-search{grid-template-columns:1fr!important;padding:9px!important}.hads-catalogue-search .hads-search-count{text-align:right;padding-right:2px}
  .catalogue-family-nav .container{overflow-x:auto!important;scrollbar-width:none!important;padding-bottom:7px!important}.catalogue-family-nav .container::-webkit-scrollbar{display:none}.catalogue-family-nav a{flex:0 0 auto!important;min-height:40px!important;padding:0 13px!important;font-size:10px!important}
  .footer-brand .hads-footer-logo img{width:108px!important}
}
@media(max-width:460px){
  .v38-product-grid{grid-template-columns:1fr 1fr!important}.v38-product-card{height:165px!important}.v38-product-card small{display:none!important}.v38-product-card b{font-size:13px!important}
  .product-grid{grid-template-columns:1fr 1fr!important}.product-visual{height:165px!important}.product-info h4{font-size:13px!important}.product-info p{display:none!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Catalogue family hero: keep visual impact without swallowing the page. */
body.hads-catalogue-page .hero{min-height:560px!important}
body.hads-catalogue-page .hero h1{font-size:clamp(44px,5vw,72px)!important;line-height:.98!important;letter-spacing:-3px!important}
body.hads-catalogue-page .hero p{max-width:620px!important;font-size:15px!important;line-height:1.65!important}
@media(max-width:760px){body.hads-catalogue-page .hero{min-height:500px!important}body.hads-catalogue-page .hero h1{font-size:40px!important;letter-spacing:-2px!important}body.hads-catalogue-page .hero p{font-size:14px!important}}
