:root{
--black:#120d09;--brown:#24170f;--brown2:#352116;--paper:#e7d6b5;
--cream:#f4ead5;--gold:#c89a48;--gold2:#e1b96c;--red:#7c3025;--line:#61462d;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--cream);font-family:Inter,Arial,sans-serif}
a{color:inherit;text-decoration:none}.header{height:88px;background:#130e0a;display:flex;align-items:center;padding:0 4vw;gap:28px;border-bottom:1px solid #5d432c;position:sticky;top:0;z-index:50}
.logo{width:245px;display:grid;grid-template-columns:25px 1fr;line-height:.78;position:relative}.star{color:var(--gold);font-size:18px}.logo-main{font-family:"Bebas Neue";font-size:31px;letter-spacing:1.5px}.logo-main span{font:9px Inter;margin-left:3px;vertical-align:top}.logo small{grid-column:2;color:var(--gold2);font:8px "Bebas Neue";letter-spacing:1.1px;margin-top:7px;white-space:nowrap}
.logo-badge{display:block;width:142px;height:72px}.logo-badge img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
nav{display:flex;justify-content:center;gap:28px;flex:1}nav a,.store,.btn,.kicker,.values span,.life-heading>p{font-family:"Bebas Neue";letter-spacing:1.5px}nav a{font-size:14px;color:#e5d5b7;padding:32px 0 29px;border-bottom:2px solid transparent}nav a:hover,nav a.active{color:var(--gold2);border-bottom-color:var(--gold)}
.store{font-size:13px;border:1px solid var(--gold);padding:13px 16px;color:var(--gold2);white-space:nowrap}.hamburger{display:none}
.hero{min-height:720px;position:relative;overflow:hidden;display:flex;align-items:center;padding:80px 6vw}.hero-bg{position:absolute;inset:0;background:url("assets/hero-frontier.png") center/cover no-repeat;transform:scale(1.04)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,10,7,.93),rgba(16,10,7,.68) 39%,rgba(16,10,7,.18) 72%),linear-gradient(0deg,rgba(16,10,7,.55),transparent 45%)}.hero-copy{position:relative;z-index:2;max-width:650px}.kicker{font-size:17px;margin:0 0 13px}.gold-text{color:var(--gold2)}.red-text{color:var(--red)}
h1,h2{font-family:"Rye",Georgia,serif;line-height:.95;margin:0;letter-spacing:.5px}h1{font-size:clamp(70px,8.2vw,118px)}h1 em{font-style:normal;color:var(--gold2)}h2{font-size:clamp(48px,5.3vw,76px)}
.lead{font:20px/1.5 Georgia,serif;color:#e2d6bd;margin:25px 0}.buttons{display:flex;gap:12px}.btn{display:inline-flex;align-items:center;gap:14px;padding:14px 20px;font-size:15px;border:1px solid var(--gold);transition:.2s}.btn.gold{background:var(--gold);color:#1b1109}.btn.outline{background:transparent;color:var(--cream)}.btn.dark{background:var(--black);color:var(--cream)}.btn:hover{background:var(--gold2);color:#17100b}.hero-note{position:absolute;right:7vw;top:105px;z-index:2;font:30px/1 "DM Serif Display";transform:rotate(-5deg);text-align:right}.hero-note i{color:var(--gold2);font-size:25px}
.frontier-intro{padding:78px 9vw 83px;background:linear-gradient(115deg,#25170e,#120d09 60%);border-bottom:1px solid var(--line);color:var(--cream)}.frontier-intro>div{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:end}.frontier-intro h2{font-size:clamp(46px,5.3vw,78px)}.frontier-intro p:not(.kicker){margin:0;max-width:420px;color:#ccb99a;font:19px/1.55 Georgia,serif}
.provisions-lineup{padding:100px 5vw 110px;background:#17100b;color:var(--cream)}.lineup-heading{text-align:center;max-width:680px;margin:0 auto 55px}.lineup-heading h2{font-size:clamp(48px,5vw,75px)}.lineup-heading>p:not(.kicker){margin:23px auto 0;color:#cdbd9e;font:18px/1.55 Georgia,serif}.lineup-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1200px;margin:auto;border:1px solid var(--line)}.lineup-card{min-width:0;text-align:center;padding:26px 30px 36px;border-right:1px solid var(--line);background:radial-gradient(ellipse at 50% 36%,#392518 0,#1a110c 65%)}.lineup-card:last-child{border-right:0}.cutout-wrap{height:360px;display:flex;align-items:flex-end;justify-content:center;margin-bottom:22px}.cutout-wrap img{display:block;max-width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 14px rgba(0,0,0,.55));transition:transform .3s ease}.lineup-card:hover .cutout-wrap img{transform:translateY(-7px) scale(1.025)}.product-number{margin:0 0 12px;color:var(--gold2);font:12px "Bebas Neue";letter-spacing:1.5px}.lineup-card h3{margin:0;color:var(--cream);font:36px/.95 "Rye",Georgia,serif;letter-spacing:.3px}.lineup-card span{display:block;margin-top:15px;color:#bba787;font:13px "Bebas Neue";letter-spacing:1.4px;text-transform:uppercase}
.campfire-table{padding:108px 5vw;background:#e7d6b5;color:#17110d}.campfire-table-heading{max-width:730px;margin:0 auto 56px;text-align:center}.campfire-table-heading h2{font-size:clamp(48px,5.8vw,82px)}.campfire-table-heading>p:not(.kicker){max-width:470px;margin:20px auto 0;font:18px/1.55 Georgia,serif}.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1200px;margin:auto;gap:18px}.recipe-card{background:#19110c;color:var(--cream);overflow:hidden}.recipe-image{height:270px;background-position:center;background-size:cover;transition:transform .4s ease}.recipe-card:hover .recipe-image{transform:scale(1.045)}.beans-recipe .recipe-image{
  background-image:linear-gradient(#0001,#0005),url("assets/cowboy-beans-by-the-fire.png")
}.bbq-recipe .recipe-image{background-image:linear-gradient(#0002,#0006),url("assets/fire-kissed-bbq.png")}.strips-recipe .recipe-image{background-image:linear-gradient(#0003,#0007),url("assets/trailhouse-steak-strips.png")}.recipe-copy{padding:25px 27px 28px}.recipe-copy p{margin:0 0 12px;color:var(--gold2);font:12px "Bebas Neue";letter-spacing:1.5px;text-transform:uppercase}.recipe-copy h3{margin:0;font:34px/.96 "Rye",Georgia,serif}.recipe-copy span{display:block;margin:17px 0 23px;color:#cdbb9d;font:16px/1.4 Georgia,serif}.recipe-copy a{display:flex;justify-content:space-between;border-top:1px solid #69482e;padding-top:14px;color:var(--cream);font:12px "Bebas Neue";letter-spacing:1.2px;text-transform:uppercase}.recipe-copy b{color:var(--gold2);font-size:17px}
.values{display:grid;grid-template-columns:repeat(5,1fr);background:#19100b;border-bottom:1px solid var(--line)}.values>div{text-align:center;padding:22px 10px;border-right:1px solid var(--line)}.values>div:last-child{border:0}.values b{display:block;color:var(--gold2);font-size:28px;margin-bottom:8px}.values span{font-size:13px}
.story{display:grid;grid-template-columns:30% 70%;background:var(--paper);color:#17110d;min-height:520px}.story-photo{background:url("assets/story-ranch-hand.png") center/cover no-repeat;min-height:520px}.story-text{padding:72px 6vw}.story-text>p:not(.kicker){font:17px/1.62 Georgia,serif;max-width:620px}
.life{background:#1a100b}.life-heading{display:flex;align-items:end;justify-content:space-between;padding:45px 6vw 25px}.life-heading h2{font-size:58px}.life-heading>p{color:#c7ad82;font-size:14px;max-width:600px;text-align:right}.life-image{height:330px;background:url("assets/life.jpg") center/cover no-repeat;filter:saturate(.85)}
.manifesto{text-align:center;padding:90px 7vw;background:linear-gradient(rgba(12,8,5,.28),rgba(12,8,5,.44)),url("assets/frontier-brothers-way.png") center/cover fixed}.manifesto h2{font-size:clamp(50px,6vw,88px)}.manifesto>p:not(.kicker){max-width:760px;margin:25px auto;font:18px/1.65 Georgia,serif;color:#dac9a9}
.feature{display:grid;grid-template-columns:48% 52%;background:var(--paper);color:#17110d}.grill-photo{min-height:430px;background:url("assets/shared-campfire-cooking.png") center/cover}.feature-copy{padding:75px 7vw}.feature-copy>p:not(.kicker){font:18px/1.65 Georgia,serif;max-width:600px}
.contact{display:grid;grid-template-columns:42% 58%;gap:50px;padding:90px 7vw;max-width:1300px;margin:auto}.contact>div>p:not(.kicker){font:18px/1.6 Georgia,serif;color:#cdbd9e;max-width:500px}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact input,.contact textarea{background:#20140e;border:1px solid #5b412b;padding:16px;color:white;font:15px Inter;outline:0}.contact input:focus,.contact textarea:focus{border-color:var(--gold)}.contact textarea{grid-column:1/-1;min-height:150px}.contact button{justify-self:start;cursor:pointer}
footer{background:#0c0806;border-top:1px solid var(--line);padding:45px 5vw 20px}.footer-brand{width:260px;display:grid;grid-template-columns:25px 1fr;line-height:.78}.footer-brand small{grid-column:2;color:var(--gold2);font:8px "Bebas Neue";letter-spacing:1px;margin-top:7px}.footer-nav{display:flex;justify-content:center;gap:27px;margin:35px 0;font:14px "Bebas Neue";letter-spacing:1.4px;color:#d5c3a4}.footer-nav a:hover{color:var(--gold2)}.footer-bottom{border-top:1px solid #493522;padding-top:18px;display:flex;justify-content:space-between;color:#8e7b63;font-size:11px}
.footer-badge{display:block;width:155px;height:115px}.footer-badge img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}

@media(max-width:900px){.header{padding:0 20px}.header nav,.store{display:none}.hamburger{display:block;margin-left:auto;background:none;border:0;color:var(--cream);font-size:25px}.header nav.open{position:absolute;top:88px;left:0;right:0;display:flex;flex-direction:column;background:#130e0a;padding:12px 25px;gap:0}.header nav.open a{padding:15px}.hero{min-height:650px;padding:70px 7vw}.hero-note{display:none}.frontier-intro{padding:64px 8%}.frontier-intro>div{grid-template-columns:1fr;gap:25px}.lineup-grid,.recipe-grid{grid-template-columns:1fr}.lineup-card{border-right:0;border-bottom:1px solid var(--line)}.lineup-card:last-child{border-bottom:0}.cutout-wrap{height:400px}.campfire-table{padding:80px 8%}.recipe-image{height:310px}.values{grid-template-columns:repeat(2,1fr)}.story{grid-template-columns:1fr}.story-photo{min-height:330px}.life-heading{display:block}.life-heading>p{text-align:left;margin-top:20px}.feature{grid-template-columns:1fr}.contact{grid-template-columns:1fr}.footer-nav{flex-wrap:wrap;justify-content:flex-start}}
@media(max-width:560px){.logo{width:195px}.logo-badge{width:118px;height:61px}.logo-main{font-size:25px}.logo small{font-size:6px}.hero h1{font-size:62px}.buttons{flex-direction:column;align-items:flex-start}.values{grid-template-columns:1fr 1fr}.life-heading h2{font-size:46px}.life-image{height:240px}.contact form{grid-template-columns:1fr}.contact textarea{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}}

/* Shop page */
.shop-hero{min-height:480px;position:relative;display:flex;align-items:center;overflow:hidden;padding:80px 7vw;background:linear-gradient(90deg,rgba(16,10,7,.94),rgba(16,10,7,.58) 58%,rgba(16,10,7,.25)),url("assets/hero-frontier.png") center 48%/cover no-repeat;border-bottom:1px solid var(--line)}
.shop-hero-copy{position:relative;z-index:1;max-width:760px}.shop-hero h1{font-size:clamp(56px,7vw,96px)}.shop-hero .lead{max-width:540px}
.shop-content{padding:78px 7vw 100px;background:linear-gradient(145deg,#24170f,#120d09 64%);text-align:center}
.shop-content .kicker{color:var(--gold2)}.shop-content h2{font-size:clamp(42px,5vw,68px)}.shop-content>p:not(.kicker){max-width:650px;margin:22px auto 0;color:#cdbd9e;font:18px/1.65 Georgia,serif}
.shop-contact{display:inline-flex;margin-top:32px}
.shop-badge{display:inline-block;margin-top:28px;padding:9px 14px;border:1px solid var(--gold);color:var(--gold2);font:12px "Bebas Neue";letter-spacing:1.5px;text-transform:uppercase}
.shop-header nav{gap:21px}
@media(max-width:900px){.shop-hero{min-height:420px;padding:64px 7vw}.shop-content{padding:65px 8%}}
.shop-hero-button{margin-top:6px}
.shop-products{padding:82px 5vw 70px;background:var(--paper);color:#17110d}
.shop-products-heading{max-width:780px;margin:0 auto 46px;text-align:center}
.shop-products-heading .kicker{color:var(--red)}
.shop-products-heading h2{font-size:clamp(42px,5vw,68px)}
.shop-products-heading>p:not(.kicker){max-width:650px;margin:19px auto 14px;color:#5b4934;font:18px/1.55 Georgia,serif}
.shop-price-note{display:inline-block;padding:8px 12px;border:1px solid #a8844b;color:#634721;font:12px "Bebas Neue";letter-spacing:1.4px}
.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:1320px;margin:0 auto}
.shop-card{overflow:hidden;background:#17100b;color:var(--cream);border:1px solid #63482d;box-shadow:0 12px 28px rgba(39,24,11,.13)}
.shop-card>img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;background:#24170f}
.shop-card-copy{padding:22px 22px 19px}
.shop-category{margin:0 0 10px;color:var(--gold2);font:12px "Bebas Neue";letter-spacing:1.5px}
.shop-card h3{margin:0;font:clamp(23px,2.2vw,30px)/1.05 "Rye",Georgia,serif}
.shop-description{min-height:62px;margin:13px 0 19px;color:#cdbd9e;font:15px/1.5 Georgia,serif}
.shop-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #5e432b;padding-top:15px}
.shop-price{color:var(--gold2);font:22px "Bebas Neue";letter-spacing:.8px;white-space:nowrap}
.shop-link{color:var(--cream);font:12px "Bebas Neue";letter-spacing:1.2px;white-space:nowrap}
.shop-link b{color:var(--gold2);font-size:16px;margin-left:5px}
.shop-link:hover{color:var(--gold2)}
.shop-disclaimer{max-width:900px;margin:25px auto 0;color:#67543e;text-align:center;font:13px/1.5 Inter,Arial,sans-serif}
@media(max-width:1000px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-card h3{font-size:28px}}
@media(max-width:640px){.shop-products{padding:62px 6vw}.shop-grid{grid-template-columns:1fr;gap:16px}.shop-card-copy{padding:20px}.shop-description{min-height:0}.shop-card h3{font-size:29px}}

.brand-film{display:grid;grid-template-columns:.72fr 1.28fr;align-items:center;gap:6vw;padding:88px 7vw;background:linear-gradient(120deg,#21150e,#120d09 62%);border-bottom:1px solid var(--line)}
.brand-film-copy h2{font-size:clamp(42px,4.8vw,68px)}
.brand-film-copy h2 em{color:var(--gold2);font-style:normal}
.brand-film-copy>p:not(.kicker){max-width:430px;margin:22px 0 0;color:#cdbd9e;font:18px/1.62 Georgia,serif}
.brand-film-frame{min-width:0}
.brand-film-frame video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#090705;border:1px solid #70512e;box-shadow:0 18px 45px rgba(0,0,0,.4)}
@media(max-width:900px){.brand-film{grid-template-columns:1fr;gap:28px;padding:70px 8%}.brand-film-copy>p:not(.kicker){max-width:620px}}
@media(max-width:640px){.brand-film-copy h2{font-size:clamp(31px,9vw,42px)}}
