@font-face{font-family:Barlow;src:url("assets/barlow-regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Barlow;src:url("assets/barlow-medium.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url("assets/barlow-condensed-semibold.ttf") format("truetype");font-style:normal;font-weight:600;font-display:swap}

:root{--ground:#0b0d0d;--surface:#151717;--surface-raised:#1e2020;--ink:#f3f1ec;--muted:#babbb6;--gold:#ba9a5f;--gold-light:#d4b77e;--black:#000;--font-body:Barlow,"Helvetica Neue",sans-serif;--font-display:"Barlow Condensed",Barlow,sans-serif;--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--gutter:clamp(22px,5vw,80px);--section-gap:clamp(76px,8.4vw,128px);--content-width:1280px;scroll-behavior:smooth;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-padding-top:100px;scrollbar-color:var(--gold) var(--surface);scrollbar-width:thin}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--font-body);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
::selection{background:var(--gold);color:var(--ground)}
button,input,select{font:inherit;accent-color:var(--gold);caret-color:var(--gold)}
button,a,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button{cursor:pointer}
button,select{border-radius:0}
button::-moz-focus-inner{border:0}
img{display:block;max-width:100%;height:auto}
svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
a{color:inherit;text-decoration:none;text-underline-offset:6px}
button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--gold-light);outline-offset:6px}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{text-wrap:balance}
p{text-wrap:pretty}
h1,h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.025em;line-height:1.03}
h1{font-size:clamp(64px,7.1vw,96px)}
h2{font-size:clamp(42px,4.4vw,64px)}
h3{font-size:25px;font-weight:500;letter-spacing:-.015em;line-height:1.22}
[hidden]{display:none!important}
.container{width:min(calc(100% - var(--gutter)*2),var(--content-width));margin-inline:auto}
.section-space{padding-block:var(--section-gap)}
.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:12px;left:var(--gutter);z-index:100;padding:12px 18px;background:var(--gold);color:var(--ground);transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}

.site-header{background:var(--black)}
.header-inner{min-height:102px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.brand{width:192px;flex-shrink:0;display:block}
.brand img{width:100%}
nav{display:flex;align-items:center;gap:clamp(24px,3vw,44px)}
nav a{font-size:17px;line-height:1.4;padding-block:12px;color:var(--muted);position:relative}
nav a::after{content:"";position:absolute;bottom:4px;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform 200ms var(--ease-out)}
nav .nav-contact{color:var(--gold-light)}

.hero{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:32px;padding-top:74px;padding-bottom:76px;min-height:615px}
.hero-description{max-width:390px;font-size:20px;line-height:1.65;color:var(--muted);margin-top:27px;margin-bottom:34px}
.button{min-height:52px;padding:13px 24px;display:inline-flex;align-items:center;justify-content:center;gap:20px;border:0;font-size:17px;font-weight:500;line-height:1.4;transition:transform 160ms var(--ease-out);text-align:center}
.button-gold{background:var(--gold);color:var(--ground)}
.button:active{transform:scale(.97)}
.hero-products{align-self:center;width:100%;padding-top:30px}
.hero-product-scene{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:0;min-height:300px}
.hero-bit{width:34%;height:auto;object-fit:contain;position:relative;max-width:214px;will-change:auto}
.hero-bit-red{width:38%;max-width:238px;margin-inline:-12px;z-index:1;margin-bottom:14px}
.hero-bit-green{transform:rotate(-8deg)}
.hero-bit-blue{transform:rotate(8deg)}
.hero-products figcaption{display:flex;justify-content:center;gap:12px;margin-top:30px;font-size:15px;color:var(--gold-light)}
.hero-products figcaption span{color:var(--muted)}

.brands-section{background:var(--surface)}
.brands-inner{display:grid;grid-template-columns:1fr 3fr;align-items:center;gap:40px;padding-block:37px}
.brands-inner h2{font-family:var(--font-body);font-size:20px;line-height:1.35;font-weight:400;letter-spacing:0;color:var(--muted)}
.brand-names{display:flex;justify-content:space-between;align-items:center;gap:30px}
.brand-names p{font-size:clamp(24px,2.5vw,36px);font-weight:500;letter-spacing:-.025em;white-space:nowrap}
.brand-names span{font-size:16px;font-weight:400;letter-spacing:0;margin-left:5px;color:var(--muted)}

.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:48px}
.section-intro>p{color:var(--muted);max-width:400px;justify-self:end}
.catalog-filters{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:18px}
.category-filters{margin:0;padding:0;border:0;display:flex;gap:5px;flex-wrap:wrap}
.category-filters button{padding:11px 18px;min-height:46px;background:transparent;border:0;color:var(--muted);font-size:16px;line-height:1.4;transition:transform 160ms var(--ease-out)}
.category-filters button[aria-pressed="true"]{background:var(--gold);color:var(--ground);font-weight:500}
.category-filters button:active{transform:scale(.97)}
.brand-select{display:flex;gap:12px;align-items:center;flex-shrink:0;font-size:16px;color:var(--muted)}
.brand-select select{color:var(--ink);background:var(--surface);border:1px solid #555952;padding:10px 34px 10px 12px;min-height:46px;max-width:225px;cursor:pointer}
.catalog-status{font-size:15px;color:var(--muted);margin-bottom:28px;min-height:24px}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 28px}
.product{min-width:0}
.product-image{height:255px;display:flex;align-items:center;justify-content:center;background:var(--surface);padding:23px;overflow:hidden}
.product-image>img{height:100%;width:auto;max-width:100%;object-fit:contain;transition:transform 250ms var(--ease-out)}
.product-photo{padding:0}
.product-photo>img{width:100%;height:100%;object-fit:cover;object-position:center}
.product-image-tall{padding:20px}
.product-brand-image{background:#211f1f;padding:40px}
.product-brand-image>img{width:100%;height:auto}
.product-copy{padding:22px 1px 0}
.product-maker{font-size:16px;line-height:1.5;color:var(--gold-light);margin-bottom:7px}
.product-copy h3{margin-bottom:12px}
.product-copy>p:not(.product-maker){color:var(--muted);font-size:17px;line-height:1.55;min-height:53px;max-width:34ch}
.product-link{display:inline-flex;align-items:center;gap:12px;font-size:16px;font-weight:500;margin-top:20px;padding-block:5px;color:var(--ink)}
.product-link svg{width:18px;height:18px;transition:transform 200ms var(--ease-out);color:var(--gold)}
.catalog-empty{background:var(--surface);padding:48px;text-align:center}
.catalog-empty h3{font-family:var(--font-display);font-size:34px;margin-bottom:14px}
.catalog-empty p{color:var(--muted);max-width:50ch;margin:0 auto 26px}

.about-section{background:var(--surface)}
.about-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px;padding-block:var(--section-gap)}
.about-copy h2{margin-bottom:32px}
.about-lead{font-size:26px;line-height:1.4;margin-bottom:22px}
.about-copy>p:not(.about-lead){color:var(--muted);font-size:18px;max-width:49ch;margin-top:18px}
.coverage{display:grid;grid-template-columns:1fr 1fr;gap:44px 34px}
.coverage p{font-family:var(--font-display);font-size:clamp(32px,3.4vw,49px);line-height:1.1;letter-spacing:-.02em;color:var(--gold-light)}

.contact-intro{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:80px;margin-bottom:64px}
.contact-intro p{color:var(--muted);max-width:38ch;margin-bottom:18px}
.email-link{font-size:clamp(22px,2.6vw,38px);line-height:1.3;letter-spacing:-.025em;display:inline-block;color:var(--gold-light);overflow-wrap:anywhere}
.contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:42px}
.contact-grid h3{font-size:21px;margin-bottom:15px}
.phone-link{font-size:20px;display:block;margin-bottom:16px;font-variant-numeric:tabular-nums}
.text-link{display:inline-flex;align-items:center;gap:10px;padding-block:6px;color:var(--gold-light);font-size:16px}
.text-link svg{width:17px;height:17px}
.contact-address address{font-style:normal;font-size:17px;color:var(--muted);line-height:1.65;margin-bottom:10px}
.site-footer{background:var(--black)}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:32px}
.footer-brand{width:154px;flex-shrink:0}
.footer-inner p{font-size:14px;color:var(--muted)}
.back-top{font-size:15px;display:inline-flex;gap:9px;align-items:center;color:var(--muted)}
.back-top svg{width:18px;height:18px}

@media(hover:hover) and (pointer:fine){
  nav a:hover{color:var(--ink)}
  nav a:hover::after{transform:scaleX(1)}
  .button:hover{transform:translateY(-2px)}
  .button:active{transform:scale(.97)}
  .product:hover .product-image>img{transform:scale(1.035)}
  .product-link:hover svg{transform:translate(2px,-2px)}
  .text-link:hover,.email-link:hover,.phone-link:hover,.back-top:hover{text-decoration:underline}
  .category-filters button:not([aria-pressed="true"]):hover{color:var(--ink);background:var(--surface)}
}

@media(min-width:1600px){.hero{min-height:650px}}
@media(max-width:1100px){
  .hero{gap:12px;min-height:560px;padding-block:65px}
  h1{font-size:76px}
  .hero-product-scene{min-height:250px}
  .hero-description{font-size:18px}
  .brands-inner{grid-template-columns:1fr 3.4fr;gap:25px}
  .brand-names{gap:22px}
  .brand-names p{font-size:27px}
  .brand-names span{font-size:14px}
  .catalog-filters{flex-wrap:wrap;gap:16px}
  .product-image{height:220px}
  .product-grid{gap:40px 22px}
  .about-inner{gap:52px}
  .contact-intro{gap:45px}
}
@media(max-width:800px){
  .header-inner{min-height:92px;gap:24px}
  .brand{width:154px}
  nav{gap:18px}
  nav a{font-size:15px}
  .hero{grid-template-columns:1fr 1fr;padding-block:55px;min-height:500px;gap:16px}
  h1{font-size:60px}
  .hero-description{font-size:18px;margin-top:23px;margin-bottom:28px}
  .hero-product-scene{min-height:190px}
  .hero-products figcaption{flex-direction:column;gap:1px;text-align:center;font-size:14px;margin-top:24px}
  .brands-inner{grid-template-columns:1fr;padding-block:32px;gap:24px}
  .brands-inner h2 br{display:none}
  .brand-names p{font-size:28px}
  .section-intro{gap:40px;margin-bottom:35px}
  .section-intro>p{font-size:17px}
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 24px}
  .product-image{height:245px}
  .product-copy>p:not(.product-maker){min-height:53px}
  .about-inner{gap:36px}
  .coverage{grid-template-columns:1fr;gap:18px}
  .coverage p{font-size:40px}
  .contact-grid{grid-template-columns:1fr 1fr;row-gap:40px}
  .contact-address{grid-column:1/-1}
  .contact-intro{gap:34px}
  .footer-inner{flex-wrap:wrap;gap:24px}
  .footer-inner p{order:3;width:100%}
}
@media(max-width:600px){
  :root{--gutter:22px}
  html{scroll-padding-top:24px}
  .header-inner{display:block;padding-top:18px;padding-bottom:15px;min-height:auto}
  .brand{width:153px;margin-inline:auto}
  nav{justify-content:space-between;gap:12px;margin-top:15px}
  nav a{font-size:15px;padding-block:6px}
  .hero{display:flex;flex-direction:column;align-items:stretch;min-height:auto;gap:29px;padding-top:47px;padding-bottom:42px}
  h1{font-size:66px;line-height:1.0;letter-spacing:-.025em}
  .hero-description{font-size:18px;line-height:1.55;max-width:32ch;margin-top:23px;margin-bottom:25px}
  .hero-copy .button{font-size:16px;min-height:50px}
  .hero-products{padding-top:0}
  .hero-product-scene{min-height:165px;max-width:380px;margin-inline:auto}
  .hero-bit{width:32.5%;max-width:160px}
  .hero-bit-red{width:35%;margin-inline:-4px;margin-bottom:8px}
  .hero-products figcaption{flex-direction:row;gap:8px;margin-top:18px;font-size:13px;line-height:1.4}
  .brands-inner{padding-block:28px;gap:18px}
  .brands-inner h2{font-size:16px}
  .brand-names{gap:20px;flex-wrap:wrap;justify-content:flex-start}
  .brand-names p{font-size:24px}
  .brand-names span{font-size:13px;margin-left:2px}
  h2{font-size:46px}
  .section-intro,.contact-intro{grid-template-columns:1fr;gap:25px}
  .section-intro{margin-bottom:30px}
  .section-intro>p{justify-self:start;font-size:17px;max-width:36ch}
  .catalog-filters{display:block}
  .category-filters{gap:4px}
  .category-filters button{padding:10px 12px;font-size:15px;min-height:44px}
  .brand-select{margin-top:18px;justify-content:space-between;font-size:15px}
  .brand-select select{width:calc(100% - 64px);max-width:none;font-size:16px}
  .catalog-status{font-size:14px;margin-bottom:23px}
  .product-grid{grid-template-columns:1fr;gap:42px}
  .product-image{height:270px}
  .product-image>img{max-height:232px}
  .product-photo>img{max-height:none}
  .product-image-tall>img{max-height:235px}
  .product-copy{padding-top:20px}
  .product-copy>p:not(.product-maker){min-height:0;max-width:36ch}
  .product-maker{font-size:15px}
  .product-copy h3{font-size:26px;margin-bottom:10px}
  .product-link{margin-top:16px}
  .catalog-empty{padding:32px 22px}
  .catalog-empty h3{font-size:30px}
  .about-inner{grid-template-columns:1fr;gap:36px}
  .about-copy h2{margin-bottom:25px}
  .about-lead{font-size:23px}
  .about-copy>p:not(.about-lead){font-size:17px}
  .coverage{grid-template-columns:1fr 1fr;gap:25px 20px}
  .coverage p{font-size:35px}
  .contact-intro{margin-bottom:40px}
  .contact-intro p{font-size:17px;margin-bottom:13px}
  .email-link{font-size:29px}
  .contact-grid{grid-template-columns:1fr;gap:36px}
  .contact-grid h3{font-size:22px;margin-bottom:10px}
  .phone-link{font-size:22px;margin-bottom:10px}
  .contact-address{grid-column:auto}
  .footer-inner{padding-block:30px;gap:22px}
  .footer-brand{width:134px}
  .back-top{font-size:14px}
  .footer-inner p{font-size:13px}
}
@media(max-width:359px){h1{font-size:56px}.hero-products figcaption{font-size:12px}.brand-names{column-gap:16px}.brand-names p{font-size:22px}.category-filters button{padding-inline:9px;font-size:14px}.email-link{font-size:26px}.coverage p{font-size:32px}}
@media(prefers-reduced-motion:reduce){
  :root{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important}
  .button,.category-filters button,.product-image>img,.product-link svg,nav a::after{transition:none}
  .button:hover,.button:active,.category-filters button:active,.product:hover .product-image>img,.product-link:hover svg{transform:none}
}
html[data-input="keyboard"]{scroll-behavior:auto}
html[data-input="keyboard"] .button,html[data-input="keyboard"] .product-image>img,html[data-input="keyboard"] .product-link svg,html[data-input="keyboard"] .category-filters button{transition:none}
