:root{color-scheme:dark;--ink:#10100f;--panel:#181817;--bone:#f0eadc;--muted:#bcb5a9;--line:#39342e;--red:#e37769;--action:#a3342b;--font:'Barlow Condensed','Arial Narrow',sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--bone);font:600 19px/1.38 var(--font)}
a{color:inherit;text-decoration:none}
a:hover{color:var(--red)}
button,input,select,textarea{font:inherit}
button,summary,select{cursor:pointer}
img,video{display:block;max-width:100%;height:auto}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:900;text-transform:uppercase;line-height:.98}
:focus-visible{outline:2px solid var(--red);outline-offset:5px}
.skip{position:absolute;top:8px;left:10px;transform:translateY(-150%);padding:10px;background:#000;z-index:5}
.skip:focus{transform:none}
.shell{width:min(1320px,calc(100% - 112px));margin-inline:auto}
.weathered{mask-image:var(--wear);mask-repeat:repeat}
.eyebrow,.button,.site-header nav,.header-actions,.section-heading>a,.site-footer,.form-label{letter-spacing:.095em;text-transform:uppercase}
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--red);font-size:16px}
.eyebrow span{display:inline-block;width:27px;height:2px;background:currentColor}
.site-header{position:relative;z-index:2;background:#10100f;border-bottom:1px solid var(--line)}
.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;color:var(--bone);font-size:26px;text-transform:uppercase;font-weight:900;letter-spacing:.025em}
.brand img{width:36px;max-height:48px;object-fit:contain}
.brand .brand-custom{width:auto;max-width:150px}
.brand span span{color:var(--muted)}
.desktop-nav,.header-actions{display:flex;align-items:center;gap:clamp(15px,3vw,45px);font-size:15px}
.header-actions{gap:19px}
.bag-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 4px;margin-left:4px;border:1px solid #70443b;color:var(--red)}
.mobile-nav{display:none}
.nav-group{position:relative}
.nav-sub,.mobile-nav nav{position:absolute;top:100%;right:0;min-width:180px;background:var(--panel);border:1px solid var(--line);padding:12px 16px}
.nav-sub a,.mobile-nav a{display:block;padding:6px 0}
.mobile-nav .child-link{padding-left:12px}
.hero{position:relative;isolation:isolate;display:grid;align-items:center;min-height:clamp(480px,45vw,690px);background:#171614;overflow:hidden;border-bottom:1px solid var(--line)}
.hero-image,.line-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-image{z-index:-2;object-position:center 8%}
.hero::after,.line-link::after{position:absolute;inset:0;content:'';pointer-events:none}
.hero::after{z-index:-1;background:linear-gradient(90deg,#100f0eea 0%,#100f0e94 34%,#100f0e0a 71%),linear-gradient(0deg,#100f0e53,transparent 45%)}
.hero-content{padding-block:70px 78px}
.hero h1{font-size:clamp(60px,8.2vw,128px);letter-spacing:-.018em;margin:18px 0 20px;max-width:850px}
.hero h1 em{font-style:normal;color:var(--red)}
.hero-copy{font-size:clamp(20px,2vw,26px);color:var(--muted);max-width:32ch}
.button{min-height:46px;border:1px solid #c35c50;background:var(--action);padding:10px 17px;display:inline-flex;gap:22px;align-items:center;justify-content:center;color:#fff4e9;font-size:17px;text-align:center}
.button:hover{background:#852920;color:#fff}
.button:disabled{cursor:default;opacity:.55}
.hero .button{margin-top:27px}
.collections{padding-block:55px 68px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.section-heading h2,.mission h2,.store h1{font-size:clamp(38px,5vw,70px)}
.section-heading>a{white-space:nowrap;color:var(--red);font-size:16px}
.section-heading>a:hover{text-decoration:underline}
.line-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.line-card{position:relative;scroll-margin-top:20px}
.line-link{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:end;min-height:clamp(310px,30vw,430px);background:#25211e;border:1px solid #4d4139}
.line-image{z-index:-2;object-position:center 37%;transition:transform .3s ease}
.line-link::after{z-index:-1;background:linear-gradient(0deg,#0b0a09f5,#0b0a09c9 25%,#0b0a0920 66%)}
.line-link:hover{border-color:var(--red);color:var(--bone)}
.line-link:hover .line-image{transform:scale(1.035)}
.line-content{width:100%;padding:19px 58px 22px 20px;position:relative}
.line-content h3{font-size:clamp(31px,3.5vw,55px);margin:8px 0}
.line-copy{color:var(--muted);font-size:17px}
.card-arrow{position:absolute;bottom:22px;right:16px;width:32px;height:32px;display:grid;place-items:center;border:1px solid #967064;color:var(--red)}
.mission{border-block:1px solid var(--line);background:radial-gradient(ellipse at 50% 115%,#382520,#191615 55%,#151413)}
.mission-inner{text-align:center;padding:60px 0 66px}
.mission .eyebrow{justify-content:center}
.mission h2{margin:12px 0 15px}
.mission p:last-child{color:var(--muted);font-size:21px;max-width:60ch;margin:auto}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;min-height:106px;padding-block:18px}
.site-footer{border-top:1px solid var(--line)}
.site-footer nav{display:flex;gap:14px 22px;flex-wrap:wrap;font-size:15px}
.site-footer small{color:var(--muted);font-size:13px}
.store{padding-block:54px 75px;min-height:60vh}
.store h1{margin-bottom:20px}
.store h2{font-size:32px;margin-bottom:12px}
.store .rte{max-width:68ch;color:var(--muted);margin-bottom:24px}
.rte>*+*{margin-top:12px}
.rte a,.pagination a,.text-link{text-decoration:underline;text-underline-offset:3px}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px;margin-block:25px}
.product-card{display:block}
.product-card img,.product-placeholder{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--panel)}
.product-card h2{font-size:25px;margin:10px 0 4px}
.product-card p,.price{color:var(--muted)}
.product-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}
.product-media{display:grid;gap:12px;align-content:start}
.product-media img,.product-media video{width:100%;background:var(--panel)}
.product-media iframe,.product-media model-viewer{width:100%;aspect-ratio:1;border:0}
.product-info .price{font-size:27px;margin-bottom:18px}
.product-form,.stack-form{display:grid;gap:12px;max-width:450px}
.product-form .button{justify-self:start}
input:not([type=hidden]),select,textarea{min-width:0;max-width:100%;min-height:42px;padding:6px 10px;border:1px solid #74675e;background:#211f1d;color:var(--bone);border-radius:0}
select{width:100%}
input[type=number]{width:84px}
textarea{min-height:120px}
.search-form{display:flex;gap:10px;max-width:600px;margin-bottom:24px}
.search-form input{flex:1}
.cart-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}
.cart-item{display:flex;align-items:center;gap:12px}
.cart-item img{width:70px}
.cart-summary{display:flex;justify-content:end;align-items:center;gap:13px;margin-top:20px;flex-wrap:wrap}
.pagination{margin:25px 0}
@media(max-width:1000px){.shell{width:calc(100% - 64px)}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
 .shell{width:calc(100% - 36px)}
 .header-inner{min-height:62px}.desktop-nav,.search-link{display:none}.mobile-nav{display:block}
 .mobile-nav nav{top:100%}.brand{font-size:22px}.brand img{width:29px}
 .hero{min-height:510px;align-items:end}.hero-image{object-position:65% center}
 .hero::after{background:linear-gradient(0deg,#100f0ef9,#100f0eab 34%,#100f0e16 75%),linear-gradient(90deg,#100f0e8a,transparent 78%)}
 .hero-content{padding-block:110px 43px}.hero h1{font-size:clamp(49px,11vw,82px)}
 .collections{padding-block:38px 46px}.line-grid{grid-template-columns:1fr}
 .line-link{min-height:320px}.line-image{object-position:center 32%}
 .mission-inner{padding-block:43px 48px}.footer-inner{gap:12px}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .product-layout{grid-template-columns:1fr;gap:20px}.store{padding-block:35px 50px}
}
@media(max-width:365px){.header-inner{gap:7px}.header-actions{gap:10px}.section-heading h2{font-size:32px}.cart-row{grid-template-columns:1fr auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
