/* Task009: public home/navigation/About only; shared tokens, no invented facts. */
.public-home9-shell .home9-wrap { width:min(1328px,calc(100% - 96px)); margin-inline:auto; min-width:0; }
.public-home9-shell .sv1-nav-frame { position:relative; z-index:91; background:var(--bg); }
.public-home9-shell .sv1-utility-inner { width:min(1328px,calc(100% - 96px)); }
.home9-header { display:flex; align-items:center; gap:24px; padding-block:24px; min-height:96px; }
.home9-brand { display:inline-flex; align-items:center; min-height:44px; font-size:24px; line-height:1; letter-spacing:-1px; font-weight:800; white-space:nowrap; color:var(--primary); }
.home9-brand-dot { color:var(--accent-soft); }
.home9-primary-nav { display:flex; gap:24px; align-items:center; }
.home9-primary-nav a { min-height:44px; display:flex; align-items:center; font-weight:600; font-size:14px; }
.home9-header-search { flex:1; display:flex; gap:16px; min-width:0; align-items:center; }
.home9-header-search:empty { display:none; }
.home9-header-search .sv1-global-quantity { min-width:136px; }
.home9-header > [data-open-quote] { margin-left:auto; flex-shrink:0; }
.public-home9-shell .home9-search { display:flex; align-items:center; flex:1; min-width:0; border:1px solid var(--border-strong); padding:4px; border-radius:12px; background:var(--bg); overflow:visible; gap:8px; position:relative; }
.public-home9-shell .home9-search > label:not(.sv1-global-quantity) { flex:1; min-width:0; margin:0; }
.public-home9-shell .home9-search input { width:100%; height:48px; min-height:44px; padding:8px 16px; border:0; background:transparent; box-shadow:none; font-size:14px; }
.public-home9-shell .home9-search button { padding:12px 20px; min-height:48px; flex-shrink:0; }
.public-home9-shell .home9-search:focus-within { border-color:var(--primary); }
.public-home9-shell .home9-hero-search { max-width:944px; padding:8px; gap:16px; }
.home9-hero-search .sv1-global-quantity { width:160px; flex-shrink:0; font-size:11px; gap:0; border-left:1px solid var(--border); padding-left:16px; }
.home9-hero-search .sv1-global-quantity select { border:0; padding:0 8px 0 0; min-height:44px; font-size:14px; }
.public-home9-shell .home9-hero-search input { height:56px; font-size:17px; }
.public-home9-shell .home9-hero-search button { min-height:56px; padding-inline:24px; }
.home9-skip { position:absolute; left:16px; top:-100px; z-index:500; padding:12px 20px; background:var(--bg); border:1px solid var(--primary); border-radius:10px; }
.home9-skip:focus { top:12px; }
.public-home9-shell .home9-navrow { position:relative; padding:0; z-index:90; background:var(--bg); border-block:1px solid var(--border); }
.home9-category-nav { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); max-width:1328px; margin:auto; }
.home9-nav-item { min-width:0; }
.home9-category-link { display:flex; min-height:56px; align-items:center; justify-content:center; text-align:center; padding:8px; color:var(--ink-2); font-size:12px; font-weight:600; line-height:1.25; }
.home9-category-link:hover,.home9-category-link[aria-expanded=true] { color:var(--primary); background:var(--primary-tint); }
.home9-mega { position:absolute; top:100%; left:max(24px,calc((100vw - 1328px)/2)); right:max(24px,calc((100vw - 1328px)/2)); padding:32px; border:1px solid var(--border); border-radius:0 0 16px 16px; background:var(--bg); display:grid; grid-template-columns:minmax(0,1fr) 240px; gap:48px; }
.home9-mega[hidden] { display:none; }
.home9-mega h2 { margin:4px 0 16px; font-size:28px; letter-spacing:-.5px; }
.home9-mega-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 16px; }
.home9-mega-links a { display:flex; align-items:center; min-height:44px; padding:8px; font-size:14px; border-radius:10px; }
.home9-mega-links a:hover { background:var(--primary-tint); }
.home9-mega-links .home9-view-all { grid-column:1/-1; border-top:1px solid var(--border); border-radius:0; margin-top:16px; font-weight:600; gap:8px; }
.home9-mega img { width:240px; height:240px; object-fit:contain; background:var(--surface); border-radius:12px; }
.home9-eyebrow { font-size:11px; font-weight:650; letter-spacing:1.4px; text-transform:uppercase; color:var(--muted); margin:0 0 12px; }
.home9-hero { background:var(--surface); border-bottom:1px solid var(--border); padding:56px 0 32px; }
.home9-hero h1,.home9-about h1 { font-size:clamp(40px,5.1vw,72px); line-height:1.04; letter-spacing:-3px; font-weight:650; margin:0 0 24px; }
.home9-hero .home9-eyebrow { color:var(--ink-2); }
.home9-intro { max-width:640px; font-size:18px; line-height:1.6; color:var(--ink-2); margin:0 0 32px; }
.home9-popular { display:flex; flex-wrap:wrap; gap:0 16px; align-items:center; margin-top:16px; font-size:13px; }
.home9-popular > span { color:var(--ink-2); }
.home9-popular a { min-height:44px; display:inline-flex; align-items:center; text-decoration:underline; text-underline-offset:4px; }
.home9-facts { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); padding-block:32px; border-bottom:1px solid var(--border); }
.home9-facts > div { padding:0 32px; border-left:1px solid var(--border); display:grid; gap:8px; }
.home9-facts > div:first-child { border:0; padding-left:0; }
.home9-facts strong { font-size:22px; color:var(--primary); font-weight:600; letter-spacing:-.4px; }
.home9-facts span { font-size:13px; color:var(--muted); }
.home9-section { padding-block:64px; }
.home9-section-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:32px; }
.home9-section-head h2,.home9-quote h2,.home9-about-next h2 { font-size:36px; line-height:1.12; font-weight:600; letter-spacing:-1.2px; margin:0; }
.home9-section-head > a { display:flex; align-items:center; gap:16px; min-height:44px; font-size:14px; font-weight:600; }
.home9-category-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:24px; }
.home9-category-tile { display:block; position:relative; min-width:0; }
.home9-tile-image { aspect-ratio:1; border:1px solid var(--border); border-radius:12px; background:var(--bg); overflow:hidden; margin-bottom:16px; }
.home9-category-tile img { width:100%; height:100%; object-fit:contain; transition:transform .2s ease; }
.home9-category-tile:hover .home9-tile-image { border-color:var(--primary); }
.home9-category-tile:hover img { transform:scale(1.04); }
.home9-category-tile h3 { font-size:14px; line-height:1.4; font-weight:600; margin:0 20px 4px 0; }
.home9-category-tile div > span { display:block; font-size:12px; color:var(--muted); }
.home9-tile-arrow { position:absolute; right:0; bottom:24px; }
.home9-favorites { background:var(--surface); border-block:1px solid var(--border); }
.home9-favorites .home9-eyebrow { color:var(--ink-2); }
.home9-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.home9-product-grid > * { min-width:0; }
.home9-product-grid .sv1-product-card { background:var(--bg); padding:16px; border:1px solid var(--border); border-radius:12px; box-shadow:none; }
.home9-product-grid .sv1-product-card h3 { font-size:16px; line-height:1.4; margin-block:8px; }
.home9-product-grid .sv1-product-media { aspect-ratio:1; min-height:0; }
.home9-product-grid .sv1-price-request { font-size:18px; }
.home9-program-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.home9-program { min-width:0; padding:24px; border:1px solid var(--border); border-radius:12px; position:relative; }
.home9-program:hover { border-color:var(--primary); background:var(--surface); }
.home9-program-index { font-family:var(--font-mono); font-size:12px; color:var(--muted); }
.home9-program h3 { font-size:22px; letter-spacing:-.5px; margin:40px 0 12px; font-weight:600; }
.home9-program p { font-size:14px; margin:0; color:var(--ink-2); max-width:180px; }
.home9-program > span:last-child { position:absolute; right:24px; top:24px; }
.home9-quote { display:grid; grid-template-columns:1fr 1fr; gap:64px; border-top:1px solid var(--border); padding-block:64px 80px; }
.home9-quote h2 { font-size:48px; margin-bottom:32px; }
.home9-quote ol { list-style:none; margin:0; padding:0; }
.home9-quote li { display:flex; gap:24px; border-bottom:1px solid var(--border); padding:24px 0; }
.home9-quote li:first-child { padding-top:0; }
.home9-quote li > span { font:14px var(--font-mono); color:var(--muted); padding-top:4px; }
.home9-quote li h3 { margin:0 0 8px; font-size:20px; font-weight:600; }
.home9-quote li p { margin:0; font-size:15px; color:var(--muted); }
.public-home9-shell .home9-footer { background:var(--ink); padding:56px 0 24px; }
.home9-footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1.4fr; gap:40px; }
.home9-footer-brand strong { font-size:26px; font-weight:650; letter-spacing:-.7px; }
.home9-footer-brand p { font-size:14px; max-width:280px; margin:16px 0 0; }
.home9-footer h2 { font-size:12px; font-weight:600; letter-spacing:1px; text-transform:uppercase; margin:4px 0 16px; }
.home9-footer a { font-size:14px; min-height:44px; overflow-wrap:anywhere; }
.home9-footer-bottom { display:flex; justify-content:space-between; gap:24px; border-top:1px solid var(--border-strong); padding-top:24px; margin-top:48px; font-size:12px; }
.home9-footer-bottom div { display:flex; gap:24px; }
.home9-footer :focus-visible { outline-color:var(--bg); }
.home9-about { padding-block:32px 80px; }
.home9-about .sv1-breadcrumb { display:flex; align-items:center; gap:12px; font-size:13px; }
.home9-about .sv1-breadcrumb a { min-height:44px; display:flex; align-items:center; }
.home9-about-intro { display:grid; grid-template-columns:1.1fr 1fr; gap:64px; padding-block:64px; align-items:center; }
.home9-about-intro p:not(.home9-eyebrow) { line-height:1.7; color:var(--ink-2); }
.home9-about h1 { font-size:56px; }
.home9-about-ids { display:flex; flex-wrap:wrap; gap:16px; margin-top:24px; color:var(--primary); font:13px var(--font-mono); }
.home9-about-next { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:48px; border-block:1px solid var(--border); }
.home9-about-next > div { display:flex; gap:16px; flex-wrap:wrap; }
.home9-about-section { border-top:1px solid var(--border); padding:32px 0; }
.home9-about-section li { margin-block:8px; }
.home9-company-facts { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.home9-company-facts div { padding:24px; border:1px solid var(--border); border-radius:12px; }
.home9-company-facts dt { font-size:12px; color:var(--muted); }
.home9-company-facts dd { margin:8px 0 0; }
.home9-team { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:24px; }
.home9-team article { padding:24px; border:1px solid var(--border); border-radius:12px; }
@media (max-width:1200px) {
  .public-home9-shell .home9-wrap,.public-home9-shell .sv1-utility-inner { width:calc(100% - 48px); }
  .home9-header { flex-wrap:wrap; gap:16px 24px; }
  .home9-header-search:not(:empty) { order:4; flex-basis:100%; }
  .home9-category-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .home9-category-link { font-size:11px; padding-inline:4px; }
}
@media (max-width:800px) {
  .public-home9-shell .home9-wrap,.public-home9-shell .sv1-utility-inner { width:calc(100% - 32px); }
  .home9-header { padding-block:16px; min-height:80px; gap:8px 16px; }
  .home9-brand { font-size:22px; }
  .home9-primary-nav { gap:20px; }
  .home9-primary-nav a { font-size:13px; }
  .home9-category-nav { display:flex; overflow-x:auto; scrollbar-width:thin; }
  .home9-nav-item { flex-shrink:0; }
  .home9-category-link { font-size:12px; min-height:48px; padding:12px 16px; }
  .home9-mega { display:none !important; }
  .home9-section { padding-block:40px; }
  .home9-hero { padding-block:40px 24px; }
  .home9-hero h1 { font-size:48px; letter-spacing:-2px; }
  .home9-intro { font-size:16px; margin-bottom:24px; }
  .home9-facts { grid-template-columns:1fr; padding-block:8px; }
  .home9-facts > div,.home9-facts > div:first-child { border:0; border-top:1px solid var(--border); padding:16px 0; display:flex; justify-content:space-between; align-items:center; gap:16px; }
  .home9-facts > div:first-child { border:0; }
  .home9-facts strong { font-size:18px; }
  .home9-facts span { font-size:12px; text-align:right; }
  .home9-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 16px; }
  .home9-product-grid,.home9-program-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .home9-section-head { margin-bottom:24px; flex-wrap:wrap; gap:8px; }
  .home9-section-head h2 { font-size:28px; }
  .home9-quote { grid-template-columns:1fr; gap:40px; padding-block:40px; }
  .home9-quote h2 { font-size:36px; }
  .home9-footer-grid { grid-template-columns:1fr 1fr; gap:32px; }
  .home9-footer-brand,.home9-footer-contact { grid-column:1/-1; }
  .home9-about-intro { grid-template-columns:1fr; gap:24px; padding-block:40px; }
  .home9-about h1 { font-size:44px; letter-spacing:-1.5px; margin-bottom:0; }
  .home9-about-next { display:block; }
  .home9-about-next h2 { font-size:28px; margin-bottom:24px; }
}
@media (max-width:480px) {
  .home9-hero h1 { font-size:40px; letter-spacing:-1.5px; }
  .home9-primary-nav { order:3; width:100%; border-top:1px solid var(--border); padding-top:8px; }
  .home9-header-search { flex-wrap:wrap; }
  .home9-header-search > .sv1-global-quantity { width:100%; }
  .public-home9-shell .home9-hero-search { flex-wrap:wrap; gap:8px; }
  .public-home9-shell .home9-hero-search > label:not(.sv1-global-quantity) { flex-basis:100%; }
  .public-home9-shell .home9-hero-search input { font-size:14px; padding:8px; }
  .home9-hero-search .sv1-global-quantity { flex:1; border-left:0; border-top:1px solid var(--border); padding:8px 8px 0; }
  .public-home9-shell .home9-hero-search button { min-height:56px; padding-inline:24px; }
  .home9-popular { gap:0 16px; font-size:12px; }
  .home9-popular > span { width:100%; }
  .home9-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home9-product-grid .sv1-product-card { padding:8px; }
  .home9-product-grid .sv1-product-card h3 { font-size:14px; }
  .home9-product-grid .sv1-price-request { font-size:14px; }
  .home9-program { padding:16px; }
  .home9-program h3 { font-size:20px; }
  .home9-program p { font-size:13px; }
  .home9-footer-bottom { flex-direction:column; gap:16px; }
  .home9-company-facts { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) { .home9-category-tile img { transition:none; } }
