/* White actions stay clean in every pointer state; keyboard focus remains visible. */
body :is(.btn-soft,.btn.details,.home-section-link,.clear-compare):is(:link,:visited,:hover,:active,:focus,:focus-visible),
body button.btn-soft {box-shadow:none!important;filter:none!important}
body :is(.btn-soft,.btn.details,.home-section-link):focus-visible {outline:2px solid var(--blue);outline-offset:4px}
.supplier-wordmark img {width:100%;height:65px;object-fit:contain;transition:filter .25s}
.supplier-wordmark:hover img {filter:brightness(0) invert(1)}
.crumbs {display:flex;flex-wrap:wrap;gap:10px;font-size:13px;color:var(--muted);padding:18px 0;margin:0;list-style:none}
.crumbs a:hover {color:var(--blue);text-decoration:underline}
.skip-link {position:fixed;top:-80px;right:20px;z-index:3000;background:white;color:var(--brand);padding:10px 20px;border-radius:12px}
.skip-link:focus {top:12px}
.company-intro {position:relative;isolation:isolate;min-height:330px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:right;padding:40px 5% 40px 40%;overflow:hidden;background:none;border:0;box-shadow:none}
.company-intro::before {content:'';position:absolute;inset:0;width:100%;z-index:-1;background:url('/assets/about-panel.webp') center/100% 100% no-repeat;filter:blur(16px);opacity:.25;transition:filter 1s ease,opacity .9s ease}
.company-intro.visible::before {filter:blur(0);opacity:1}
.company-intro > * {opacity:0;transform:translateY(12px);transition:opacity .6s .4s,transform .6s .4s}
.company-intro.visible > * {opacity:1;transform:none}
.company-intro h2 {font-size:clamp(24px,3vw,38px);margin:0 0 14px}
.company-intro p {font-size:14px;margin:0 0 18px;color:var(--ink)}
.hero-home {min-height:640px}
.hero-home .hero-copy {text-align:right;margin:0 0 0 auto;padding:70px 5% 80px;width:50%;z-index:3}
.hero-home .hero-word {display:none}
.hero-home .hero-actions {justify-content:flex-start}
.hero-home .hero-desc {margin:18px 0 26px}
.hero-home .hero-kicker {background:transparent;border:0;box-shadow:none;padding:0}
.hero-home .hero-dust {right:45%;left:-12%;z-index:1}
.hero-home .hero-dust img {width:145%;max-width:none}
.hero-home .hero-tag {font-size:clamp(28px,3.3vw,48px)}
.hero-benefits {display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:20px 0 32px;border-bottom:1px solid var(--line)}
.hero-benefits article {padding:12px 20px;border-inline-start:1px solid var(--line)}
.hero-benefits h2 {font-size:16px;margin:0 0 6px}.hero-benefits p {font-size:12px;color:var(--muted);margin:0}
.site-home #cr .cr-i img {mix-blend-mode:normal;object-fit:cover}
.site-home .cr-s:last-child .cr-i img {filter:none;padding:0;object-fit:cover}
.site-home #cr-t > a.cr-s {display:block}
.home-intro h2 {font-size:clamp(26px,3vw,36px);margin:0;color:var(--brand)}
.site-home #cr .reel-nav {display:none}
.site-suppliers {height:auto;min-height:100vh;overflow:auto;background:var(--bg-gradient)}
html:has(.site-suppliers) {height:auto;overflow:auto}
.site-suppliers .supplier-heading {position:relative;inset:auto;max-width:none;width:auto;padding:20px 0 0;pointer-events:auto}
.site-suppliers .supplier-heading h1 {font-size:clamp(28px,4vw,48px)}
.site-suppliers #stage {position:relative;inset:auto;height:730px;--R:240px;--w:165px}
.site-suppliers #stage .container {display:block;width:var(--w);height:calc(var(--w)*1.34);margin:0;min-width:0}
.site-suppliers #stage .face {background:none!important;display:grid;place-items:center;padding:18px;background:linear-gradient(140deg,var(--c1),var(--c2))!important}
.site-suppliers #stage .face img {width:100%;height:90px;object-fit:contain;filter:brightness(0) invert(1)}
.site-suppliers #stage .face span {position:absolute;top:14px;right:14px;color:#fff;font-size:11px}
.site-suppliers #stage .card {box-shadow:0 0 18px color-mix(in srgb,var(--c1) 35%,transparent);transition:box-shadow .3s,transform .25s}
.site-suppliers #stage .container:hover .card {box-shadow:0 0 30px color-mix(in srgb,var(--c1) 65%,transparent)}
.site-suppliers .supplier-controls {position:relative;inset:auto;transform:none;width:max-content;max-width:100%;margin:16px auto;flex-wrap:wrap;justify-content:center}
.site-suppliers .supplier-controls button {min-height:44px}
.site-suppliers .hint {position:static;text-align:center}
.site-suppliers .supplier-art img {border-radius:0;box-shadow:none}
.site-suppliers #detail {z-index:2000}
.site-suppliers .site-footer {margin-top:40px}
.site-suppliers.list-mode #stage {height:auto;min-height:440px}
.site-suppliers.list-mode #ring {grid-template-columns:repeat(5,1fr)}
.site-suppliers.list-mode #stage .container {width:100%}
.site-suppliers .supplier-name {color:var(--brand)}
@media(max-width:700px){
 .hero-home {min-height:750px;padding-top:25px;align-items:start}
 .hero-home .hero-copy {width:100%;padding:24px 24px 280px;text-align:center}
 .hero-home .hero-actions {justify-content:center}.hero-home .hero-desc {margin:14px auto 24px}
 .hero-home .hero-dust {inset:340px -30% 20px}.hero-home .hero-dust img {width:140%;top:50%}
 .hero-benefits {grid-template-columns:1fr;gap:6px}
 .company-intro {padding:30px 24px 145px;min-height:420px;border-radius:24px;background:#c1d9f1}
 .company-intro::before {background-size:auto 200px;background-position:left bottom}
 .site-suppliers #stage {height:480px;--R:135px;--w:90px}
 .site-suppliers #stage .face {padding:10px}.site-suppliers #stage .face img {height:55px}
 .site-suppliers #stage .face span {font-size:9px;right:8px;top:10px}
 .site-suppliers.list-mode #ring {grid-template-columns:repeat(2,1fr)}
 .site-home #cr {height:460px;min-height:460px}
 .site-home #cr .cr-i img,.site-home .cr-s:last-child .cr-i img {object-fit:contain}
 .site-home #cr .cr-b {bottom:10px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.company-intro::before{filter:none;opacity:1}.company-intro > *{opacity:1;transform:none;transition:none}}
