/* Preserve the original palette and assets; let content and images set their size. */
.site-header{height:auto;min-height:82px;gap:24px;padding:12px clamp(20px,4vw,64px)}
.site-header nav{gap:clamp(16px,2vw,30px);align-items:center}
.site-header nav a,.header-cta{white-space:nowrap}
.nav-quote{background:var(--green);padding:13px 18px;border-radius:3px;color:var(--navy)}
.site-header nav .nav-quote:hover{background:#88e57e;color:var(--navy)}
.hero{display:grid;min-height:0;height:auto;max-height:none;background:var(--navy);overflow:visible}
.hero-image,.hero-shade,.hero-content{grid-area:1 / 1}
.hero-image{position:relative;inset:auto;display:block;width:100%;height:auto;max-height:calc(100svh - 82px);object-fit:contain;align-self:center}
.hero-shade{position:absolute}
.hero-content{width:46%;margin:0 0 0 5%;padding:32px 0 56px;align-self:center}
.hero h1{font-size:clamp(2.3rem,3.8vw,4rem);line-height:1.12;margin-bottom:20px}
.hero-copy{font-size:clamp(1rem,1.25vw,1.125rem);line-height:1.65;margin-bottom:24px}
.hero-stat{bottom:24px}
.hero-actions{flex-wrap:wrap}
.product-quote{margin-top:28px}
.product-content,.problem-copy>*,.contact>*{min-width:0}
.product-card{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}
.product-card.reverse{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr)}
.how-photo{min-height:0}
.how-photo>.how-concept-image{display:block;width:100%;height:auto;object-fit:contain}
.contact-card .button{font-size:.875rem;gap:12px;overflow-wrap:anywhere}
.button{min-height:44px;max-width:100%}
.product-highlights span{font-size:.75rem}
.compliance{display:block;margin-top:24px;padding:20px;background:#f0f7f0;border:1px solid #c6dfc7;border-radius:12px;color:var(--navy)}
.compliance strong{display:block;width:auto;margin:0 0 14px;font-size:1rem;line-height:1.4}
.compliance-badges{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.compliance-badges li{display:flex;align-items:center;gap:9px;max-width:100%;padding:8px 11px;border:1px solid #c9d6da;border-radius:7px;background:#fff;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}
.compliance-badges li::before{content:"";flex:0 0 12px;width:12px;height:7px;border-left:3px solid #408c36;border-bottom:3px solid #408c36;transform:translateY(-2px) rotate(-45deg)}
.compliance p{margin:14px 0 0;font-size:.875rem;line-height:1.5;color:#586c60}
@media(max-width:520px){.compliance{padding:16px}.compliance-badges li{padding:7px 9px}}
.detail-body{font-size:.875rem}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #408bc2;outline-offset:4px}
@media(max-width:1100px){
  .site-header .header-cta{display:none}
}
@media(max-width:900px){
  .product-card,.product-card.reverse{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:850px){
  .site-header{min-height:70px;gap:12px}
  .brand{min-width:0}
  .brand img{max-width:100%}
  .site-header.open nav{top:100%;align-items:stretch;gap:8px}
  .site-header nav a{padding:12px}
  .hero-image{grid-area:1 / 1;height:auto;max-height:none;object-fit:contain}
  .hero-shade{display:none}
  .hero-content{grid-area:2 / 1;width:auto;margin:0;padding:32px 24px 40px}
  .hero h1{font-size:clamp(2rem,5.5vw,3rem);line-height:1.15}
  .hero-copy{max-width:38rem;font-size:1rem}
  .hero-actions{flex-direction:row}
  .hero-stat{display:none}
  .how-photo{min-height:0}
  .eyebrow{margin-bottom:18px}
}
@media(max-width:520px){
  .contact h2,.problem h2,.how h2,.products-intro h2{font-size:clamp(1.875rem,8vw,2.375rem)}
  .product-content h3{font-size:clamp(1.875rem,8vw,2.5rem)}
  .product-media{min-height:0;padding:44px 28px}
  .product-media img{height:auto;max-height:330px}
  .product-quote{width:100%}
  .contact-card .button{padding:16px 12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.products-intro h2{font-size:clamp(1.875rem,3.1vw,2.75rem);overflow-wrap:break-word}
.silica-product .product-media img{height:auto;box-shadow:none}
.silica-applications{margin:0;padding-left:20px}
.silica-applications li{margin-bottom:6px}
.silica-table-wrap{width:100%;max-width:100%;overflow-x:auto;margin:18px 0;overscroll-behavior-x:contain}
.silica-table{width:100%;min-width:480px;border-collapse:collapse;font-size:.875rem;text-align:left}
.silica-table caption{text-align:left;font-weight:700;color:var(--navy);margin-bottom:10px}
.silica-table th,.silica-table td{padding:10px 8px;border-bottom:1px solid #ccd8dc;vertical-align:top}
.silica-table thead{background:#e2f4e1;color:var(--navy)}
.silica-table tbody th{font-weight:500}
.silica-table-wrap:focus-visible{outline:3px solid #408bc2;outline-offset:3px}
