@font-face{font-family:'IBM Plex Sans';src:url(../fonts/ibm-plex-sans-400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'IBM Plex Sans';src:url(../fonts/ibm-plex-sans-600.woff2) format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:'IBM Plex Mono';src:url(../fonts/ibm-plex-mono-400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'IBM Plex Mono';src:url(../fonts/ibm-plex-mono-500.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}:root{--ground:#0d1317;--ground-2:#0a0f12;--surface:#151f25;--surface-2:#1b272e;--ink:#e6edf1;--ink-2:#93a4af;--ink-3:#7b8c97;--rule:#26343d;--rule-soft:#1c272e;--accent:#f2404c;--accent-solid:#d91f2c;--amber:#f2b824;--steel:#5c9bd1;--sans:'IBM Plex Sans' , 'Segoe UI' , Roboto , Helvetica , Arial , sans-serif;--mono:'IBM Plex Mono' , 'Cascadia Mono' , Consolas , 'Courier New' , monospace;--measure:66ch;--gutter:1.5rem;--maxw:1180px}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--ground)}body{margin:0;background:var(--ground);color:var(--ink);font-family: var(--sans);font-size:1rem;line-height:1.6;font-feature-settings:'kern' 1;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:var(--steel);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--amber);outline-offset:2px}h1,h2,h3{line-height:1.12;margin:0 0 .5em;font-weight:600;letter-spacing:-.015em;color:var(--ink)}h1{font-size: clamp(1.9rem, 1.2rem + 2.6vw, 3.1rem)}h2{font-size: clamp(1.3rem, 1.1rem + 0.9vw, 1.7rem)}h3{font-size:1.05rem;letter-spacing:-.01em}p{margin:0 0 1rem;max-width:var(--measure);color:var(--ink-2)}ul{margin:0 0 1rem;padding-left:1.1rem}li{margin-bottom:.3rem;color:var(--ink-2)}strong{color:var(--ink);font-weight:600}address{font-style:normal;line-height:1.75;color:var(--ink-2)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}.num{font-family: var(--mono);font-variant-numeric:tabular-nums}body::before{content:"";position:fixed;right:-2vmin;top:50%;width:62vmin;height:62vmin;transform:translateY(-50%);background: url('../images/logo-512.png') no-repeat center / contain;opacity:.11;pointer-events:none;z-index:0}.masthead,main,.band,.foot{position:relative;z-index:1}.intro{position:fixed;inset:0;z-index:100;background:var(--ground);display:grid;place-items:center;animation:introClear .45s ease .70s forwards}.intro img{width:min(34vmin,190px);opacity:0;animation:introEnter .40s cubic-bezier(.2,.7,.3,1) forwards , introDissolve .55s cubic-bezier(.4,0,.7,.4) .62s forwards}@keyframes introEnter    { from { opacity: 0; transform: scale(.90); } to { opacity: 1; transform: none; } }@keyframes introDissolve { to { opacity: 0; transform: scale(2.6); } }@keyframes introClear    { to { opacity: 0; visibility: hidden; } }.masthead,main,.band,.foot{animation:riseIn .55s ease .74s both}@keyframes riseIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }.no-intro .intro{display:none}.no-intro .masthead,.no-intro main,.no-intro .band,.no-intro .foot{animation:none}.masthead{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--rule);background:rgba(13,19,23,.90);backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px)}.masthead__bar{display:flex;align-items:center;gap:1.25rem;max-width:var(--maxw);margin:0 auto;padding:.7rem var(--gutter)}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:inherit}.brand img{height:44px;width:auto;filter:drop-shadow(0 0 1px rgba(255,255,255,.7)) drop-shadow(0 0 4px rgba(0,0,0,.55))}.brand__name{font-weight:600;font-size:1.05rem;letter-spacing:.005em;color:var(--ink);line-height:1.2}.brand__sub{display:block;font-size:.7rem;color:var(--ink-3);font-weight:400;letter-spacing:.04em}.nav{margin-left:auto}.nav ul{display:flex;gap:1.4rem;list-style:none;margin:0;padding:0}.nav li{margin:0}.nav a{color:var(--ink-2);text-decoration:none;font-size:.93rem;padding:.25rem 0;border-bottom:2px solid transparent}.nav a:hover{color:var(--ink);border-bottom-color:var(--accent)}.nav a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--amber)}.masthead__tel{font-family: var(--mono);font-size:.86rem;color:var(--ink);text-decoration:none;white-space:nowrap;padding:.3rem .6rem;border:1px solid var(--rule)}.masthead__tel:hover{color:var(--amber);border-color:var(--amber)}.navtoggle{display:none;margin-left:auto;background:none;border:1px solid var(--rule);padding:.4rem .7rem;font:inherit;font-size:.85rem;color:var(--ink);cursor:pointer}.navtoggle:hover{border-color:var(--accent)}.hero{padding:4rem 0 3rem;border-bottom:1px solid var(--rule)}.hero__grid{display:grid;gap:3rem;grid-template-columns:1.1fr .9fr;align-items:center}.hero h1{max-width:15ch}.hero__lead{font-size:1.12rem;color:var(--ink-2);max-width:var(--measure)}.hero .hero__lead{max-width:44ch}.hero__shot{margin:0}.hero__shot img{width:100%;aspect-ratio: 4/3;object-fit:cover;border:1px solid var(--rule)}.hero__shot .plate{position:relative;z-index:1;margin:-3rem 2rem 0}.plate{background:var(--surface);border:1px solid var(--rule);border-top:3px solid var(--accent-solid);padding:1.1rem 1.25rem 1.25rem}.plate__head{font-size:.82rem;color:var(--ink-3);margin:0 0 .9rem;max-width:none;padding-bottom:.6rem;border-bottom:1px solid var(--rule)}.plate dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:0}.plate dt{font-size:.84rem;color:var(--ink-3);min-width:0;padding-right:1rem;padding-top:.45rem;padding-bottom:.45rem;border-bottom:1px solid var(--rule-soft)}.plate dd{margin:0;font-family: var(--mono);font-weight:500;font-size:.86rem;font-variant-numeric:tabular-nums;text-align:right;color:var(--amber);min-width:0;overflow-wrap:anywhere;padding:.45rem 0;border-bottom:1px solid var(--rule-soft)}.section{padding:3rem 0;border-bottom:1px solid var(--rule)}.section--tight{padding:2.25rem 0}.section__intro{max-width:var(--measure);margin-bottom:2rem}.section__intro p:last-child{margin-bottom:0}.section h2{position:relative;padding-top:1.15rem;margin-top:2.75rem}.section h2::before{content:"";position:absolute;top:0;left:0;width:2.25rem;height:2px;background:var(--accent-solid)}.section>h2:first-child,.section__intro+h2,.mode+h2{margin-top:0}.cards{display:grid;gap:1.5rem;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0}.card{border:1px solid var(--rule);background:var(--surface);display:flex;flex-direction:column;margin:0;transition:border-color .18s ease}.card:hover{border-color:var(--ink-3)}.card img{aspect-ratio: 4/3;object-fit:cover;border-bottom:1px solid var(--rule)}.card__body{padding:1rem 1.1rem 1.15rem;display:flex;flex-direction:column;flex:1}.card h3{margin-bottom:.4rem}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{color:var(--accent)}.card p{font-size:.92rem;color:var(--ink-2);margin-bottom:.9rem}.card__mode{margin-top:auto;font-size:.78rem;padding-top:.7rem;margin-bottom:0;border-top:1px solid var(--rule);color:var(--ink-3)}.card__mode b{font-weight:600;color:var(--amber)}.table-scroll{overflow-x:auto;margin:2.25rem 0 1.5rem}table.data{border-collapse:collapse;width:100%;font-size:.93rem}table.data caption{text-align:left;font-weight:600;color:var(--ink);margin-bottom:.7rem}table.data th,table.data td{text-align:left;padding:.55rem 1rem .55rem 0;border-bottom:1px solid var(--rule-soft);vertical-align:top}table.data thead th{color:var(--ink);border-bottom:1px solid var(--accent-solid);font-weight:600}table.data td{color:var(--ink-2)}table.data tbody tr:hover td{background:var(--surface);color:var(--ink)}table.data tbody tr:last-child td{border-bottom:1px solid var(--rule)}.cols{columns:2;column-gap:2.5rem;margin-bottom:1.25rem;max-width:var(--measure)}.cols ul{margin:0}.cols li{break-inside:avoid}@media (max-width:640px){.cols{columns:1}}.chain{list-style:none;margin:0 0 .5rem;padding:0;counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);column-gap:3rem}.chain li{counter-increment:step;margin:0;border-bottom:1px solid var(--rule);padding:.7rem 0;display:flex;gap:.8rem;align-items:baseline;color:var(--ink-2);font-size:.93rem}.chain li::before{content:counter(step,decimal-leading-zero);font-family: var(--mono);font-size:.76rem;color:var(--accent);font-variant-numeric:tabular-nums;flex:none}@media (max-width:820px){.chain{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.chain{grid-template-columns:1fr}}.specs{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0;margin:0 0 1rem;border-top:1px solid var(--rule)}.specs dt{color:var(--ink-3);font-size:.9rem;min-width:0;padding-right:1.5rem;padding-top:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--rule-soft)}.specs dd{margin:0;font-family: var(--mono);font-size:.88rem;font-variant-numeric:tabular-nums;color:var(--amber);min-width:0;overflow-wrap:anywhere;text-align:right;padding:.5rem 0;border-bottom:1px solid var(--rule-soft)}.mode{background:var(--surface);border:1px solid var(--rule);border-left:3px solid var(--steel);padding:.9rem 1.15rem;margin:0 0 2rem;max-width:var(--measure)}.mode--fab{border-left-color:var(--accent-solid)}.mode strong{display:block;margin-bottom:.25rem;color:var(--ink)}.mode .fineprint{margin-bottom:0}.gallery{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);grid-auto-rows:190px;margin:0 0 2rem}.gallery img{width:100%;height:100%;object-fit:cover;border:1px solid var(--rule)}.gallery--lead img:first-child{grid-column:span 2;grid-row:span 2}.gallery--split{grid-template-columns:repeat(2,1fr);grid-auto-rows:250px}.strip{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:.5rem;margin:2.5rem 0 0}.strip img{width:100%;height:210px;object-fit:cover;border:1px solid var(--rule)}.band{background:var(--surface);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:3rem 0}.band h2{color:var(--ink);margin-top:0}.band p{color:var(--ink-2)}.band a{color:var(--ink)}.band a:hover{color:var(--amber)}.band__grid{display:grid;gap:2.5rem;grid-template-columns:1.1fr .9fr}.band__tel{font-family: var(--mono);font-size:1.4rem;font-weight:500;color:var(--ink);display:block;margin-bottom:.35rem;text-decoration:none;font-variant-numeric:tabular-nums}.band address{font-style:normal;line-height:1.75;color:var(--ink-2)}.band__hours{margin-top:.9rem;color:var(--ink-3);font-size:.92rem}.foot{background:var(--ground-2);color:var(--ink-3);border-top:1px solid var(--rule);padding:1.6rem 0;font-size:.85rem}.foot__grid{display:flex;flex-wrap:wrap;gap:.6rem 2.5rem;align-items:baseline}.foot a{color:var(--ink-2)}.foot a:hover{color:var(--amber)}.foot .num{color:var(--ink-2)}.fineprint{font-size:.88rem;color:var(--ink-3);margin:.5rem 0 1.25rem}.mt{margin-top:1.25rem}.band__tel--ink{color:var(--ink)}.band__tel--ink:hover{color:var(--amber)}.crumb{font-size:.86rem;color:var(--ink-3);padding:1rem 0 0;margin:0}.crumb a{color:var(--ink-3)}.crumb a:hover{color:var(--amber)}.pill-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);column-gap:3rem}.pill-list li{margin:0;padding:.7rem 0;border-bottom:1px solid var(--rule);color:var(--ink-2);font-size:.93rem}@media (max-width:820px){.pill-list{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.pill-list{grid-template-columns:1fr}}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;position:fixed;z-index:200;background:var(--accent-solid);color:#fff;padding:.6rem 1rem}@media (max-width:1080px){.cards{grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.hero__grid,.band__grid{grid-template-columns:1fr;gap:2rem}.cards{grid-template-columns:repeat(2,1fr)}.gallery--lead{grid-template-columns:1fr 1fr}.hero{padding:2.75rem 0 2.25rem}.strip{grid-auto-flow:row;grid-template-columns:repeat(2,1fr)}.strip img{height:160px}}@media (max-width:700px){.navtoggle{display:block}.nav{display:none;flex-basis:100%;margin-left:0}.nav.is-open{display:block}.nav ul{flex-direction:column;gap:0;padding-bottom:.5rem}.nav a{display:block;padding:.6rem 0;border-bottom:1px solid var(--rule-soft)}.masthead__bar{flex-wrap:wrap;gap:.75rem}.masthead__tel{order:3}.cards,.gallery,.gallery--lead,.gallery--split{grid-template-columns:1fr}.gallery{grid-auto-rows:210px}.gallery--lead img:first-child{grid-column:auto;grid-row:auto}.hero{padding:2rem 0 1.75rem}.hero__shot .plate{margin:-2rem 1rem 0}.strip img{height:140px}body::before{width:90vmin;height:90vmin;right:-22vmin;opacity:.045}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.intro{display:none}.masthead,main,.band,.foot{opacity:1;transform:none}}@media print{.masthead,.foot,.navtoggle,.intro{display:none}body{background:#fff;color:#000}body::before{display:none}a{color:#000}.plate,.mode,.card,.band{background:#fff;border-color:#999}.plate dd,.specs dd,.card__mode b{color:#000}h1,h2,h3,p,li,td,.chain li{color:#000}}.facts{background:var(--surface);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:1.6rem 0}.facts__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem 2rem;margin:0}.facts__grid dt{font-size:.78rem;color:var(--ink-3);margin-bottom:.3rem}.facts__grid dd{margin:0;font-family: var(--mono);font-size:.95rem;font-weight:500;color:var(--amber);overflow-wrap:anywhere}@media (max-width:820px){.facts__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:340px){.facts__grid{grid-template-columns:1fr}}.svc{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:2.5rem;align-items:start}.svc .table-scroll{margin-top:1.25rem}.svc__shot{margin:0}.svc__shot img{width:100%;height:auto;border:1px solid var(--rule)}@media (max-width:900px){.svc{grid-template-columns:1fr;gap:1.5rem}.svc__shot{max-width:420px}}.carousel{position:relative}.carousel__track{display:flex;gap:1rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:.25rem var(--gutter) 1rem}.carousel__track:focus-visible{outline:2px solid var(--amber);outline-offset:-2px}.carousel__item{flex:0 0 clamp(240px,26vw,320px);scroll-snap-align:center;text-decoration:none;color:inherit;border:1px solid var(--rule);background:var(--surface);transition:border-color .18s ease}.carousel__item img{width:100%;height:220px;object-fit:cover;border-bottom:1px solid var(--rule)}.carousel__cap{display:block;padding:.85rem 1rem;font-weight:600;color:var(--ink);font-size:.96rem}.carousel__item:hover{border-color:var(--amber)}.carousel__item:hover .carousel__cap{color:var(--amber)}.carousel__nav{position:absolute;top:110px;z-index:2;width:2.5rem;height:2.5rem;padding:0;background:var(--ground);color:var(--ink);border:1px solid var(--rule);cursor:pointer;font: 400 1.5rem/1 var(--sans)}.carousel__nav:hover{border-color:var(--amber);color:var(--amber)}.carousel__nav--prev{left:.35rem}.carousel__nav--next{right:.35rem}.carousel__nav[disabled]{opacity:.3;cursor:default}.carousel__nav[disabled]:hover{border-color:var(--rule);color:var(--ink)}@media (max-width:700px){.carousel__nav{display:none}.carousel__item img{height:180px}}@media (prefers-reduced-motion:reduce){.carousel__track{scroll-behavior:auto}}.stats{background:var(--surface);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:2rem 0}.stats--inline{border:1px solid var(--rule);padding:1.5rem;margin:0 0 2rem}.stats__grid{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter);display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem 2rem}.stats--inline .stats__grid{padding:0}.stat{display:flex;flex-direction:column;gap:.3rem}.stat__n{font-family: var(--mono);font-weight:500;color:var(--amber);font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem);line-height:1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat__l{font-size:.84rem;color:var(--ink-3)}@media (max-width:760px){.stats__grid{grid-template-columns:repeat(2,1fr)}}.sectors{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule)}.sector{margin:0;background:var(--ground);padding:1.15rem 1.25rem}.sector h3{margin-bottom:.35rem;color:var(--ink)}.sector p{margin:0;font-size:.92rem;color:var(--ink-2);max-width:none}@media (max-width:900px){.sectors{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.sectors{grid-template-columns:1fr}}.strip-makes{background:var(--surface);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:2.5rem 0}.strip-makes h2{margin-top:0}.makes{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem 2rem}.make{margin:0;padding:.85rem 0 0;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:.15rem}.make b{color:var(--ink);font-size:1.05rem;letter-spacing:-.01em}.make span{font-size:.86rem;color:var(--ink-3)}@media (max-width:820px){.makes{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.makes{grid-template-columns:1fr}}.clients{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;gap:1rem}.client{margin:0;border:1px solid var(--rule);border-left:3px solid var(--accent-solid);background:var(--surface);padding:1.1rem 1.25rem;max-width:var(--measure)}.client h3{margin-bottom:.15rem}.client__where{font-family: var(--mono);font-size:.84rem;color:var(--amber);margin-bottom:.5rem}.client p:last-child{margin-bottom:0}.cta{background:var(--surface);color:var(--ink);padding:2.5rem 0;border-top:3px solid var(--accent-solid);border-bottom:1px solid var(--rule)}.cta__grid{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}.cta h2{color:var(--ink);margin:0 0 .4rem}.cta p{color:var(--ink-2);margin:0;max-width:52ch}.cta__act{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}.cta__tel{color:var(--ink);text-decoration:none;font-size:1.05rem;font-weight:500}.cta__tel:hover{color:var(--amber)}@media (max-width:760px){.cta__grid{grid-template-columns:1fr}}.btn{display:inline-block;text-decoration:none;font-weight:600;padding:.65rem 1.3rem;border:1px solid var(--amber);background:var(--amber);color:#14202a}.btn:hover{background:transparent;color:var(--amber)}.foot__cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:2rem;padding-top:.5rem;padding-bottom:1.5rem}.foot__name{color:var(--ink);font-weight:600;margin-bottom:.5rem}.foot__h{color:var(--ink-2);font-weight:600;margin-bottom:.5rem}.foot__hours{margin:.6rem 0 0;font-size:.82rem}.foot__nav{list-style:none;margin:0;padding:0}.foot__nav li{margin-bottom:.3rem}.foot__base{display:flex;flex-wrap:wrap;gap:.5rem 2rem;border-top:1px solid var(--rule);padding-top:1rem}@media (max-width:760px){.foot__cols{grid-template-columns:1fr;gap:1.5rem}}