/* Loaded exclusively by the HORN manufacturer route. */
body[data-page="horn"] .page-hero{gap:34px;padding-top:20px}
body[data-page="horn"] .page-hero>div:first-child{position:relative;padding-right:330px}
body[data-page="horn"] .page-hero h1{font-size:60px}
body[data-page="horn"] .page-hero .eyebrow{margin-bottom:12px}
body[data-page="horn"] .page-hero .lead{margin-top:14px;font-size:20px}
body[data-page="horn"] .page-hero>div:first-child>.button{position:absolute;right:0;top:0;margin:0}
body[data-page="horn"] .brand-actions{position:absolute;right:0;bottom:0;margin:0}
body[data-page="horn"] .brand-actions .button{margin:0}
.horn-module{--horn-accent:#a83b16;--horn-bright:#c64217;--horn-ink:#263a41;min-width:0;border:1px solid #b7c2bf;background:#f1f3ee;color:var(--horn-ink)}
.horn-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:22px 24px}
.horn-kicker{display:block;font-size:10px;letter-spacing:.14em;margin-bottom:8px;color:#596d71}
.horn-heading h2{font-size:27px;letter-spacing:-.035em}
.horn-heading p{font-size:12px;max-width:260px;line-height:1.5;color:#4b6064}
.horn-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid #b7c2bf}
.horn-tabs button{display:flex;align-items:center;gap:12px;min-height:62px;text-align:left;padding:12px 20px;border:0;border-right:1px solid #b7c2bf;background:#e5eae5;color:#354b50;transition:background .2s,color .2s,box-shadow .2s}
.horn-tabs button:last-child{border-right:0}
.horn-tabs button>span{font:12px monospace;color:var(--horn-accent)}
.horn-tabs b{font-weight:500;font-size:14px;line-height:1.35}
.horn-tabs button[aria-selected="true"]{background:#263a41;color:#fff;box-shadow:inset 0 -4px var(--horn-bright)}
.horn-tabs button[aria-selected="true"]>span{color:#ffab80}
.horn-tabs button:hover{box-shadow:inset 0 -4px var(--horn-bright)}
.horn-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px}
.horn-plate{min-width:0;padding:14px;background:#e9eeea}
.horn-drawing{position:relative;isolation:isolate}
.horn-drawing>svg{width:100%;height:auto}
.horn-zone{stroke:#455d66;stroke-width:1.5;stroke-linejoin:round}
.horn-zone-fill{fill:#eff2ed;fill-opacity:.15;stroke:#8d9f9f;stroke-opacity:.45;transition:fill .2s,fill-opacity .2s,stroke .2s}
.horn-zone.is-active .horn-zone-fill{fill:#ffead9;fill-opacity:.56;stroke:var(--horn-bright);stroke-width:2.5;stroke-opacity:1}
.horn-zone.is-preview:not(.is-active) .horn-zone-fill{stroke:var(--horn-accent);stroke-dasharray:5 4;stroke-opacity:1}
.horn-metal{fill:url(#horn-metal)}
.horn-hatch{fill:url(#horn-hatch);stroke:none}
.horn-tool{fill:#a4b4ba}
.horn-axis{fill:none;stroke:#718b93;stroke-dasharray:10 4 2 4;stroke-width:.8}
.horn-dimension{fill:none;stroke:#718b93;stroke-width:1}
.horn-feed{fill:none;stroke:#a9401b;marker-end:url(#horn-arrow);stroke-width:1.5}
.horn-cut{fill:#aeb5aa;stroke:#526769;stroke-width:2;transition:fill .2s,stroke .2s}
.horn-zone.is-active .horn-cut{fill:#f0995f;stroke:#ad3812;stroke-width:3}
.horn-contact{fill:#e45b211a;stroke:#b63d16;stroke-width:2;stroke-dasharray:5 3;opacity:0;transition:opacity .2s}
.horn-zone.is-active .horn-contact{opacity:1}
.horn-brackets{fill:none;stroke:#9badad;stroke-width:2;transition:stroke .2s}
.horn-zone.is-active .horn-brackets{stroke:var(--horn-bright);stroke-width:3}
.horn-annotation{font:9px monospace;letter-spacing:.7px;fill:#46616a;stroke:none}
.horn-hit-grid{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.horn-hit{position:relative;min-width:44px;min-height:44px;border:0;background:transparent;text-align:left;color:var(--horn-ink);padding:0;touch-action:manipulation}
.horn-marker{position:absolute;top:5%;left:4%;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--horn-accent);background:#f8f7f0;border-radius:50%;color:var(--horn-accent);font:600 12px monospace;box-shadow:0 0 0 3px #f1f3eebb;transition:background .2s,color .2s,box-shadow .2s}
.horn-hit.is-active .horn-marker{background:var(--horn-bright);color:#fff;border-color:var(--horn-bright);box-shadow:0 0 0 4px #d64a1b25}
.horn-zone-name{position:absolute;bottom:6%;right:5%;padding:4px 6px;background:#eef2ecd9;font-size:11px;color:#37505a}
.horn-hit.is-active .horn-zone-name{background:#ffead9;color:#8a2e10}
.horn-plate figcaption{font-size:10px;line-height:1.5;color:#53686d;padding:12px 6px 2px}
.horn-explanation{border-left:1px solid #b7c2bf;background:#f8f8f3;padding:25px 24px;min-width:0}
.horn-panel:not([hidden]){display:flex;flex-direction:column;height:100%;animation:horn-panel-in .2s ease-out}
.horn-panel-number{font:32px monospace;color:var(--horn-accent);margin-bottom:16px}
.horn-panel-number>span{font-size:11px;color:#53676b}
.horn-panel h3{font-size:26px;line-height:1.15;margin-bottom:13px}
.horn-panel p{font-size:14px;line-height:1.6;color:#4e6063}
.horn-use{border-top:1px solid #ccd4cc;margin-top:20px;padding-top:16px}
.horn-use>span{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;color:var(--horn-accent);font-weight:600}
.horn-panel>a{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #c6a18c;padding-block:18px 8px;font-size:12px;color:#8a2e10;margin-top:auto;min-height:44px}
.horn-module button:focus-visible,.horn-module a:focus-visible,.horn-panel:focus-visible{outline:3px solid #155e86;outline-offset:-4px;z-index:2}
@keyframes horn-panel-in{from{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(min-width:1251px){.horn-workspace{grid-template-columns:minmax(0,1fr) 330px}.horn-explanation{padding:30px}}
@media(max-width:1100px){.horn-tabs button{padding:12px;gap:8px}.horn-workspace{grid-template-columns:minmax(0,1fr) 270px}.horn-explanation{padding:20px}.horn-panel h3{font-size:23px}.horn-annotation{font-size:8px}}
@media(max-width:760px){body[data-page="horn"] .page-hero>div:first-child{padding-right:0}body[data-page="horn"] .page-hero>div:first-child>.button{position:static;margin-top:20px}body[data-page="horn"] .brand-actions{position:static;display:inline-flex;margin:12px 0 0 8px}body[data-page="horn"] .page-hero h1{font-size:48px}.horn-heading{display:block;padding:18px}.horn-heading h2{font-size:25px}.horn-heading p{margin-top:8px;max-width:none}.horn-tabs{grid-template-columns:1fr 1fr}.horn-tabs button{min-height:58px;padding:10px 12px}.horn-tabs button:nth-child(2){border-right:0}.horn-tabs button:nth-child(-n+2){border-bottom:1px solid #b7c2bf}.horn-tabs b{font-size:12px}.horn-workspace{grid-template-columns:1fr}.horn-plate{padding:8px}.horn-explanation{border-left:0;border-top:1px solid #b7c2bf;padding:20px}.horn-panel-number{font-size:26px;margin-bottom:10px}.horn-panel h3{font-size:24px}.horn-panel p{font-size:13px}.horn-use{margin-top:14px;padding-top:12px}.horn-marker{width:28px;height:28px;top:6%;left:5%;font-size:10px}.horn-annotation{display:none}.horn-zone-name{font-size:9px;padding:2px 4px;bottom:5%;right:4%}.horn-panel>a{margin-top:8px;padding-top:12px}.horn-plate figcaption{font-size:9px}.horn-kicker{font-size:9px}}
@media(max-width:360px){.horn-heading{padding:16px 12px}.horn-tabs button{padding:9px 8px;gap:6px}.horn-tabs b{font-size:11px}.horn-explanation{padding:17px}.horn-zone-name{font-size:8px}.horn-plate{padding:6px}body[data-page="horn"] .brand-actions{margin-left:0}}
@media(prefers-reduced-motion:reduce){.horn-module *{transition:none!important;animation:none!important}}

/* HORN polishing: shared feedback for tabs and numbered map plates. */
.horn-tabs button,.horn-hit{cursor:pointer}
.horn-tabs button{position:relative;transition:background 180ms ease,color 180ms ease,box-shadow 180ms ease,transform 180ms ease}
.horn-tabs button>span,.horn-tabs b{transition:color 180ms ease,text-shadow 180ms ease}
.horn-tabs button[aria-selected="true"]{box-shadow:inset 0 -4px var(--horn-bright),inset 0 0 0 1px #df865b}
.horn-tabs button[aria-selected="true"] b{text-shadow:0 0 .4px currentColor}
.horn-tabs button:focus-visible{transform:none;box-shadow:inset 0 -4px var(--horn-bright),inset 0 0 0 1px var(--horn-accent),0 0 0 3px #a83b161a}
.horn-tabs button:active{transform:translateX(1px)}
.horn-marker{transition:background 180ms ease,color 180ms ease,box-shadow 180ms ease,transform 180ms ease,border-color 180ms ease}
.horn-zone-name{border:1px solid transparent;transition:background 180ms ease,color 180ms ease,border-color 180ms ease,transform 180ms ease;transform-origin:right center}
.horn-hit.is-active .horn-marker{box-shadow:0 0 0 4px #c642172b;transform:none}
.horn-hit.is-active .horn-zone-name{border-color:#bd623c;text-shadow:0 0 .35px currentColor}
.horn-hit:focus-visible .horn-marker{transform:none;box-shadow:0 0 0 4px #c642172b,0 0 0 6px #155e86}
.horn-hit:focus-visible .horn-zone-name{border-color:var(--horn-accent);transform:none}
.horn-zone-fill{transition:fill 180ms ease,fill-opacity 180ms ease,stroke 180ms ease,stroke-width 180ms ease,stroke-opacity 180ms ease}
.horn-zone.is-active .horn-zone-fill{fill-opacity:.67;stroke-width:3}
.horn-zone.is-preview:not(.is-active) .horn-zone-fill{fill:#ffead9;fill-opacity:.38;stroke-width:2}
.horn-zone.is-active .horn-contact{fill:#e45b2129;stroke-width:2.5}
@media(hover:hover) and (pointer:fine){
 .horn-tabs button:hover{transform:none;z-index:1;box-shadow:inset 0 -4px var(--horn-bright),inset 0 0 0 1px var(--horn-accent),0 2px 7px #263a411c}
 .horn-tabs button:hover:not([aria-selected="true"]){background:#f5e9df;color:#843313}
 .horn-tabs button:hover b{text-shadow:0 0 .4px currentColor}
 .horn-hit:hover .horn-marker{transform:none;box-shadow:0 0 0 5px #c642172b}
 .horn-hit:hover:not(.is-active) .horn-marker{background:#ffead9}
 .horn-hit:hover .horn-zone-name{border-color:var(--horn-accent);transform:none}
}
@media(prefers-reduced-motion:reduce){.horn-tabs button,.horn-marker,.horn-zone-name{transform:none!important}}
