/* Layout repairs, September 2026. Loaded after the legacy page styles. */
#gndrawer .gndsub[data-menu] { min-width:0; }
#gndrawer .gndsub[data-menu] a { min-width:0; white-space:normal!important; overflow-wrap:break-word; line-height:1.45; }
header#gnhdr .gndd .gnpanel { max-height:calc(100dvh - 125px); overflow-y:auto; overscroll-behavior:contain; }
body main[data-page="product-detail"]>section[aria-label="Hero"] { padding-bottom:0!important; }
body main[data-page="product-detail"]>section[aria-label="Hero"] h1 { max-width:none; }
body main[data-page="product-detail"]>section[aria-label="Hero"] h1 span { display:block!important; font-size:1.125rem!important; line-height:1.5!important; letter-spacing:0!important; margin-top:16px!important; }
body main[data-page="product-detail"]>section[aria-label="Hero"] [data-reveal] { aspect-ratio:16/10; min-width:0; }
body main[data-page="product-detail"] dl { margin-top:24px!important; }
body main[data-page="product-detail"] dd { margin-left:0; overflow-wrap:break-word; }
body main[data-page="product-detail"] [data-faq-btn] { gap:16px; text-align:left; }
body main[data-page="product-detail"] [data-faq-mark] { flex-shrink:0; }
@media(max-width:1000px) {

  #gndrawer { max-height:calc(100dvh - 20px); overflow-y:auto; overscroll-behavior:contain; padding-bottom:max(20px,env(safe-area-inset-bottom))!important; }
  #gndrawer .gndcta { flex-shrink:0; }
}
@media(max-width:760px) {
  body main[data-page="product-detail"]>section { padding-top:32px!important; padding-bottom:32px!important; }
  body main[data-page="product-detail"]>section[aria-label="Hero"] { padding-top:0!important; padding-bottom:0!important; }
  body main[data-page="product-detail"]>section[aria-label="Hero"]>div { padding-top:24px!important; padding-bottom:32px!important; gap:24px!important; }
  body main[data-page="product-detail"]>section[aria-label="Hero"]>nav { font-size:.75rem!important; line-height:1.7; letter-spacing:.04em!important; padding-top:8px!important; }
  body main[data-page="product-detail"]>section[aria-label="Hero"] h1 { margin-bottom:16px!important; }
  body main[data-page="product-detail"]>section[aria-label="Hero"] h1 span { margin-top:12px!important; }
  body main[data-page="product-detail"]>section[aria-label="Hero"] p { margin-bottom:24px!important; }
  body main[data-page="product-detail"] .sbtn { box-sizing:border-box; max-width:100%; white-space:normal!important; }
  body main[data-page="contact"] #contact { padding-top:32px!important; }
  body main[data-page="contact"] #contact>div>div[style*="display:grid"] { margin-top:32px!important; gap:32px!important; }
  body main[data-page="contact"] #contact div[style*="flex-direction:column"]>h2 { margin-bottom:0!important; }
}
/* The heading link covers the product image and card surface. Existing detail links remain accessible. */
main .product-linked-card {position:relative;}
main .product-linked-card h3 .product-card-link {color:inherit;text-decoration:none;}
main .product-linked-card .product-card-link::after {content:"";position:absolute;inset:0;z-index:1;}
main .product-linked-card a:not(.product-card-link) {position:relative;z-index:2;}
main .product-linked-card:hover h3 .product-card-link {color:#0e7c86;text-decoration:underline;text-underline-offset:4px;}
main .product-linked-card:focus-within {outline:2px solid #0e7c86;outline-offset:2px;}

/* Single floating contact bar: proposed layout, reference teal and white palette. */
html body #mbot {
 display:flex!important;align-items:stretch!important;gap:0!important;
 padding:10px 3px!important;box-sizing:border-box;overflow:hidden!important;
 background:linear-gradient(135deg,rgba(83,132,139,.94),rgba(53,82,94,.97))!important;
 border:1px solid rgba(218,247,247,.55)!important;border-radius:18px!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 5px 18px rgba(20,54,64,.26)!important;
 backdrop-filter:blur(22px) saturate(120%)!important;-webkit-backdrop-filter:blur(22px) saturate(120%)!important;
}
html body #mbot a,html body #mbot a:hover,html body #mbot a.wa,html body #mbot a.wa:hover,html body #mbot a:not(.wa),html body #mbot a:not(.wa):hover {
 position:relative!important;display:flex!important;flex:1 1 0;min-width:0;width:auto!important;
 flex-direction:row!important;align-items:center!important;justify-content:center!important;
 min-height:44px!important;padding:2px 8px!important;gap:8px!important;box-sizing:border-box;
 background:transparent!important;color:#fff!important;border:0!important;border-radius:0!important;
 box-shadow:none!important;transform:none!important;text-decoration:none!important;
 backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
html body #mbot a+a::before {
 content:""!important;display:block!important;position:absolute!important;
 left:0!important;top:5px!important;bottom:5px!important;width:1px!important;
 background:rgba(240,255,255,.65)!important;box-shadow:1px 0 0 rgba(20,45,52,.2)!important;
}
html body #mbot a:hover,html body #mbot a.wa:hover,html body #mbot a:not(.wa):hover {background:rgba(255,255,255,.1)!important;}
html body #mbot a:active {background:rgba(0,25,35,.12)!important;}
html body #mbot a:focus-visible {outline:2px solid white;outline-offset:-3px;}
html body #mbot svg {display:block;width:27px!important;height:27px!important;flex-shrink:0;color:#fff!important;fill:currentColor!important;background:none!important;padding:0!important;border:0!important;box-shadow:none!important;}
html body #mbot .contact-label {display:block!important;font-size:13px!important;font-weight:700!important;line-height:1.2!important;}
@media(min-width:1001px){html body #mbot {width:380px;right:16px!important;bottom:16px!important;}}
@media(max-width:1000px){
 html body #mbot {left:10px!important;right:10px!important;width:auto!important;bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;}
 html.gn-ready body {padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))!important;}
 html body #mtop {bottom:calc(88px + env(safe-area-inset-bottom,0px))!important;}
}
@media(max-width:350px){html body #mbot a {gap:5px!important;padding-inline:4px!important;}html body #mbot .contact-label {font-size:12px!important;}html body #mbot svg {width:23px!important;height:23px!important;}}
@supports not (backdrop-filter:blur(1px)){html body #mbot {background:#456a74!important;}}
@media(prefers-reduced-transparency:reduce){html body #mbot {background:#456a74!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}}

/* Approved restoration: desktop has WhatsApp and Email only. */
@media(min-width:1001px){html body #mbot a.tel {display:none!important;}}
/* Keep restored reading controls above the approved whole-card link. */
main .product-linked-card .reading-toggle {position:relative;z-index:2;}
/* Slide the contact bar clear of the mobile menu, then back on dismissal. */
@media(max-width:1000px){
 html body #mbot {
  transform:translateY(0)!important;visibility:visible!important;
  transition:transform .28s cubic-bezier(.22,.7,.3,1),visibility 0s linear 0s!important;
 }
 html.gn-open body #mbot {
  transform:translateY(calc(100% + 30px + env(safe-area-inset-bottom,0px)))!important;
  visibility:hidden!important;pointer-events:none!important;
  transition:transform .28s cubic-bezier(.22,.7,.3,1),visibility 0s linear .28s!important;
 }
}
@media(prefers-reduced-motion:reduce){html body #mbot,html.gn-open body #mbot {transition:none!important;}}

/* Phone: equal gap between the header bar and the first text on every page (22/09/2026).
   Benchmark = product pages: 37px header to first letters, 37.5px breadcrumb to heading. Delete this block to undo. */
@media(max-width:760px){
  body main[data-page="about"]>nav[aria-label="Breadcrumb"]>div{padding-top:6px!important;padding-bottom:6px!important}
  body main[data-page="about"]>nav[aria-label="Breadcrumb"]+section{padding-top:0!important}
  body main[data-page="about"]>nav[aria-label="Breadcrumb"]+section>div{padding-top:17px!important}
  body main[data-page="unfilled-silicone"]>section[aria-label="Hero"]>div{padding-top:24px!important}
  body main[data-page="unfilled-silicone"] nav[aria-label="Breadcrumb"]{padding-top:6px!important}
  body main[data-page="contact"] #contact{padding-top:6px!important}
  body main[data-page="materials"]>section:first-of-type,
  body main[data-page="process"]>section:first-of-type,
  body main[data-page="products"]>section:first-of-type{padding-top:6px!important}
  body main[data-page="404"]>section[aria-label="Hero"]{padding-top:0!important}
  body main[data-page="404"]>section[aria-label="Hero"]>div{padding-top:6px!important}
  body main[data-page="index"]>section[aria-label="Hero"]>div{padding-top:6px!important}
}

/* Home hero: space under the "Find the right compound" button matches the other home
   sections (40px up to 600px, 64px wider). Added 22/09/2026 after removing the "3 quick steps"
   line and the Request a Quote button. Delete this block to undo. */
@media(max-width:600px){
  body main[data-page="index"]>section[aria-label="Hero"]{padding-bottom:39px!important}
  body main[data-page="index"]>section[aria-label="Hero"]>div{padding-bottom:0!important}
}
@media(min-width:601px){
  body main[data-page="index"]>section[aria-label="Hero"]>div{padding-bottom:63px!important}
}
