/*
Theme Name: JLN Moto Gear V2
Theme URI: https://jlnmotogear.com/
Author: JLN Horizon Commerce LLC
Description: A vibrant premium motorcycle apparel and gear storefront for JLN Moto Gear.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: jln-moto-gear
*/
:root{--black:#08090d;--ink:#11121a;--panel:#171923;--line:#343745;--white:#f8f7fb;--muted:#aaaab7;--orange:#ff6a20;--pink:#ff3d81;--cyan:#4de7ff;--yellow:#ffd84d;--violet:#8b5cff;--display:"Syne",sans-serif;--body:"Space Grotesk",sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:var(--body);font-size:16px;line-height:1.6}
a{color:inherit;text-decoration:none}
img{display:block;width:100%}
.announcement{height:34px;background:linear-gradient(90deg,var(--pink),var(--orange) 32%,var(--yellow) 61%,var(--cyan));color:#090909;display:flex;align-items:center;justify-content:center;font:700 .72rem var(--body);letter-spacing:.18em}
.announcement span{margin:0 1rem}
.nav-wrap{height:82px;padding:0 clamp(20px,4vw,72px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;background:rgba(8,9,10,.92);border-bottom:1px solid rgba(255,255,255,.12);position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;width:min(275px,27vw)}
.brand img{width:100%;height:auto}
.mark{width:39px;height:39px;background:var(--orange);color:#090909;display:grid;place-items:center;font:800 1.7rem var(--display);transform:skew(-8deg)}
nav{display:flex;gap:34px}
nav a{font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}
nav a:hover,.footer a:hover{color:var(--orange)}
.nav-cta{justify-self:end;border-bottom:1px solid var(--orange);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:8px 0}
.nav-cta span{color:var(--orange)}
.menu{display:none}
.hero{height:calc(100vh - 116px);min-height:620px;position:relative;overflow:hidden}
.hero>img{height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,5,6,.92) 0%,rgba(4,5,6,.68) 37%,rgba(4,5,6,.08) 72%),linear-gradient(0deg,rgba(4,5,6,.65),transparent 35%)}
.hero-copy{position:absolute;left:clamp(24px,7vw,120px);top:50%;transform:translateY(-50%);max-width:660px}
.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
.orange{color:var(--orange)}
h1,h2,h3,p{margin-top:0}
.hero h1{font:800 clamp(5.6rem,12vw,11rem)/.74 var(--display);letter-spacing:-.045em;margin:34px 0}
.hero h1 em,.contact h2 em{font-style:normal;color:transparent;-webkit-text-stroke:2px var(--orange)}
.hero-copy>p:not(.eyebrow){max-width:520px;color:#d5d5d3;font-size:1.05rem}
.hero-actions{display:flex;gap:12px;margin-top:34px}
.button{padding:15px 24px;text-transform:uppercase;font-size:.76rem;font-weight:700;letter-spacing:.1em}
.primary{background:var(--orange);color:#090909}
.ghost{border:1px solid rgba(255,255,255,.4)}
.hero-stat{position:absolute;right:4vw;bottom:32px;display:flex;gap:16px;align-items:center}
.hero-stat strong{font:700 2.6rem var(--display);color:var(--orange)}
.hero-stat span{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;max-width:100px;line-height:1.4}
.ticker{overflow:hidden;background:var(--white);color:#0a0a0a;white-space:nowrap;padding:14px 0;font:700 1rem var(--display);letter-spacing:.15em}
.ticker div{width:max-content;animation:tick 22s linear infinite}
.ticker span{color:var(--orange);margin:0 28px}
@keyframes tick{to{transform:translateX(-40%)}
}
.section{padding:110px clamp(22px,6vw,100px)}
.section-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:54px}
.section-head h2,.standard h2,.about h2{font:700 clamp(3.4rem,6vw,6.4rem)/.88 var(--display);letter-spacing:-.025em;text-transform:uppercase;margin:12px 0 0}
.section-head>p{max-width:470px;color:var(--muted)}
.category-grid{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:620px 330px;gap:18px}
.category{position:relative;overflow:hidden;background:var(--panel)}
.category.large{grid-row:span 2}
.category img{height:100%;object-fit:cover;transition:transform .7s ease}
.category:hover img{transform:scale(1.025)}
.category-overlay{position:absolute;inset:auto 0 0;padding:34px;background:linear-gradient(transparent,rgba(6,7,8,.94))}
.category-overlay span,.text-card span{font-size:.7rem;letter-spacing:.18em;color:var(--orange)}
.category h3{font:700 clamp(2rem,3vw,3.4rem)/1 var(--display);text-transform:uppercase;margin:8px 0}
.category p{color:#c1c1bf;max-width:470px}
.category a{font-size:.77rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.text-card{padding:40px;display:flex;align-items:end}
.outline-number{position:absolute;right:25px;top:-35px;font:800 11rem var(--display)!important;color:transparent!important;-webkit-text-stroke:1px #34363a}
.text-link{color:var(--orange)}
.catalog-note{color:#74767b;font-size:.75rem;margin:22px 0 0}
.standard{background:var(--white);color:#0c0c0d}
.standard-title{display:grid;grid-template-columns:1fr 2fr;align-items:start}
.standard h2 i{font-weight:500;color:#8f9296}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:75px;border-top:1px solid #bababa}
.principles article{padding:34px 35px 0 0;border-right:1px solid #c8c8c8;min-height:220px}
.principles article+article{padding-left:35px}
.principles b{color:var(--orange);font:700 .8rem var(--body)}
.principles h3{font:700 1.8rem var(--display);text-transform:uppercase;margin:35px 0 10px}
.principles p{color:#55585c;font-size:.92rem}
.about{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;background:#0e0f11}
.about-index{font:800 clamp(7rem,19vw,19rem)/.58 var(--display);color:#17191c;letter-spacing:-.08em;align-self:center}
.about-index span{font-size:.1em;letter-spacing:.32em;color:#5a5c60}
.about-copy>p:not(.eyebrow){color:#adafb2;font-size:1.03rem;max-width:700px}
.company-card{border-left:3px solid var(--orange);background:#17191c;padding:24px 28px;margin-top:35px;display:flex;flex-direction:column}
.company-card span{font-size:.65rem;letter-spacing:.18em;color:#85878b}
.company-card strong{font:600 1.7rem var(--display);margin:4px 0}
.policies{background:#121315}
.policy-list{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line)}
summary{list-style:none;display:grid;grid-template-columns:70px 1fr auto;align-items:center;padding:28px 4px;cursor:pointer}
summary::-webkit-details-marker{display:none}
summary span{color:var(--orange);font:600 .72rem var(--body)}
summary b{font:600 clamp(1.5rem,2.4vw,2.4rem) var(--display);text-transform:uppercase}
summary i{font:300 2rem var(--body);font-style:normal;transition:transform .25s}
details[open] summary i{transform:rotate(45deg)}
.policy-body{max-width:940px;padding:0 30px 35px 74px;color:#aeb0b4}
.policy-body h3{color:var(--white);font:600 1.25rem var(--display);text-transform:uppercase;margin:24px 0 4px}
.policy-body a{color:var(--orange)}
.contact{padding:110px clamp(22px,7vw,120px);display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;background:var(--orange);color:#0a0a0b}
.contact h2{font:800 clamp(5rem,10vw,10rem)/.74 var(--display);letter-spacing:-.04em;margin:40px 0}
.contact h2 em{-webkit-text-stroke:2px #0a0a0b}
.contact-intro>p:not(.eyebrow){max-width:490px}
.contact-details{margin-top:44px;display:flex;flex-direction:column;gap:8px;font-weight:600}
.contact-details address{font-style:normal;margin:20px 0}
.contact-details span{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
form{background:#101113;color:var(--white);padding:clamp(25px,4vw,55px);align-self:start;box-shadow:22px 22px 0 rgba(8,8,8,.18)}
.form-top{display:flex;justify-content:space-between;color:var(--orange);font-size:.7rem;letter-spacing:.17em;margin-bottom:32px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:20px}
label small{color:#777;font-size:.6rem}
input,select,textarea{width:100%;border:0;border-bottom:1px solid #494b50;background:transparent;color:var(--white);font:400 1rem var(--body);padding:12px 0;outline:none;border-radius:0}
select{color:#ddd}
select option{background:#111}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--orange)}
.consent{display:flex;gap:12px;align-items:flex-start;color:#8d8f93;text-transform:none;letter-spacing:0;line-height:1.45}
.consent input{width:16px;height:16px;accent-color:var(--orange)}
.submit{width:100%;border:0;background:var(--orange);padding:17px 20px;display:flex;justify-content:space-between;text-transform:uppercase;font-weight:800;letter-spacing:.1em;cursor:pointer}
.submit:hover{background:#ff713e}
.form-status{font-size:.8rem;color:var(--orange);margin:14px 0 0}
.invalid{border-color:#ff4b4b!important}
footer{padding:72px clamp(22px,6vw,100px) 25px;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:40px;background:#070808;border-top:1px solid #25272b}
footer h2{font:700 2.2rem var(--display);margin:15px 0 0}
footer h3{font:600 .72rem var(--body);text-transform:uppercase;color:var(--orange);letter-spacing:.14em;margin-bottom:18px}
footer a,footer p{display:block;color:#888b90;font-size:.83rem;margin:7px 0}
.footer-brand p{font:600 .72rem var(--body);text-transform:uppercase;letter-spacing:.14em}
.copyright{grid-column:1/-1;border-top:1px solid #24262a;padding-top:20px;margin-top:30px;display:flex;justify-content:space-between;color:#65676b;font-size:.72rem}
@media(max-width:900px){.nav-wrap{grid-template-columns:1fr auto}
.nav-wrap nav{display:none;position:absolute;top:82px;left:0;right:0;background:#0b0c0d;padding:25px;flex-direction:column}
.nav-wrap nav.open{display:flex}
.menu{display:block;background:transparent;color:var(--white);border:1px solid #444;padding:8px 12px}
.nav-cta{display:none}
.hero{height:760px}
.hero>img{object-position:65% center}
.hero-shade{background:linear-gradient(90deg,rgba(4,5,6,.88),rgba(4,5,6,.15)),linear-gradient(0deg,rgba(4,5,6,.8),transparent)}
.hero h1{font-size:6rem}
.category-grid{grid-template-columns:1fr;grid-template-rows:620px 500px 350px}
.category.large{grid-row:auto}
.standard-title,.about,.contact{grid-template-columns:1fr}
.principles{grid-template-columns:1fr}
.principles article{border-right:0;border-bottom:1px solid #ccc;padding:28px 0!important}
.about-index{display:none}
.section-head{align-items:start;flex-direction:column}
.contact{gap:60px}
footer{grid-template-columns:1fr 1fr}
.footer-brand{grid-column:1/-1}
}
@media(max-width:560px){.announcement{font-size:.58rem;letter-spacing:.11em}
.nav-wrap{height:70px}
.brand{font-size:1.1rem}
.mark{width:34px;height:34px}
.hero{height:690px;min-height:0}
.hero-copy{top:46%}
.hero h1{font-size:4.7rem}
.hero-stat{display:none}
.hero-actions{flex-direction:column;align-items:stretch;text-align:center}
.section{padding-top:75px;padding-bottom:75px}
.category-grid{grid-template-rows:480px 410px 390px}
.category-overlay{padding:24px}
.text-card{padding:26px}
.section-head h2,.standard h2,.about h2{font-size:3.2rem}
.standard-title{display:block}
.form-row{grid-template-columns:1fr}
form{padding:27px;box-shadow:10px 10px 0 rgba(8,8,8,.18)}
summary{grid-template-columns:45px 1fr auto}
.policy-body{padding-left:48px}
.contact h2{font-size:5rem}
footer{grid-template-columns:1fr}
.footer-brand{grid-column:auto}
.copyright{display:block}
.copyright span{display:block;margin-top:8px}
}

/* JLN Chromatic Edition */
body{background:radial-gradient(circle at 85% 18%,rgba(77,231,255,.08),transparent 24%),radial-gradient(circle at 10% 48%,rgba(139,92,255,.08),transparent 20%),var(--black)}
.nav-wrap::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--pink),var(--orange),var(--yellow),var(--cyan),var(--violet));opacity:.9}
.hero-copy{max-width:720px}
.hero h1{font-size:clamp(4.8rem,10vw,9rem);line-height:.82;letter-spacing:-.065em}
.hero h1 em,.contact h2 em{-webkit-text-stroke:2px var(--cyan)}
.eyebrow{font-size:.78rem;letter-spacing:.2em}
.orange{color:var(--pink)}
.primary,.submit{background:linear-gradient(100deg,var(--pink),var(--orange) 45%,var(--yellow));box-shadow:0 12px 38px rgba(255,61,129,.22)}
.ghost{border-color:rgba(77,231,255,.65)}
.ghost:hover{color:var(--cyan);background:rgba(77,231,255,.08)}
.ticker{background:linear-gradient(90deg,#fff 0 14%,#dffbff 35%,#fff2c5 57%,#ffe1ee 80%,#eee7ff)}
.ticker span{color:var(--violet)}
.section-head h2,.standard h2,.about h2{font-size:clamp(3rem,5.3vw,5.7rem);line-height:.94;letter-spacing:-.045em}
.shop{position:relative;overflow:hidden}
.shop::before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-140px;top:70px;background:linear-gradient(145deg,var(--cyan),var(--violet));filter:blur(2px);opacity:.13;pointer-events:none}
.category{border:1px solid rgba(255,255,255,.09);border-radius:18px}
.category.large{box-shadow:0 22px 70px rgba(139,92,255,.11)}
.category:nth-child(2){box-shadow:0 22px 70px rgba(77,231,255,.1)}
.category-overlay span{color:var(--cyan)}
.category-overlay a{color:var(--yellow)}
.text-card{background:linear-gradient(135deg,#20142f 0%,#17253a 48%,#30230e 100%)}
.text-card::after{content:"";position:absolute;width:170px;height:8px;left:40px;top:38px;border-radius:20px;background:linear-gradient(90deg,var(--pink),var(--orange),var(--yellow),var(--cyan))}
.text-link{color:var(--cyan)}
.standard{position:relative;background:linear-gradient(135deg,#fff 0%,#f2f7ff 46%,#fff5e6 100%)}
.standard::before{content:"";position:absolute;top:0;left:0;right:0;height:9px;background:linear-gradient(90deg,var(--pink),var(--orange),var(--yellow),var(--cyan),var(--violet))}
.principles article:nth-child(1) b{color:var(--pink)}.principles article:nth-child(2) b{color:var(--violet)}.principles article:nth-child(3) b{color:#008aa0}
.about{background:radial-gradient(circle at 12% 50%,rgba(139,92,255,.2),transparent 29%),radial-gradient(circle at 95% 15%,rgba(255,61,129,.13),transparent 26%),#0e0f15}
.about-index{color:#222432}.company-card{border-image:linear-gradient(var(--pink),var(--cyan)) 1;background:linear-gradient(90deg,#1b1826,#151b25)}
.policies{background:linear-gradient(145deg,#12131a,#171421 55%,#101820)}
.policy-list details:nth-child(4n+1) summary span{color:var(--pink)}.policy-list details:nth-child(4n+2) summary span{color:var(--orange)}.policy-list details:nth-child(4n+3) summary span{color:var(--cyan)}.policy-list details:nth-child(4n) summary span{color:var(--violet)}
.contact{background:linear-gradient(125deg,var(--pink) 0%,#ff6e33 34%,var(--yellow) 72%,var(--cyan) 120%)}
.contact h2{font-size:clamp(4rem,8vw,7.4rem);line-height:.83;letter-spacing:-.06em}
.contact h2 em{-webkit-text-stroke:2px #0a0a0b}
form{border-radius:20px;box-shadow:24px 24px 0 rgba(8,8,8,.18);border:1px solid rgba(255,255,255,.12)}
input:focus,select:focus,textarea:focus{border-color:var(--cyan)}
footer{background:radial-gradient(circle at 8% 20%,rgba(255,61,129,.1),transparent 26%),radial-gradient(circle at 90% 80%,rgba(77,231,255,.08),transparent 25%),#07080c}
.footer-logo{width:min(320px,100%);height:auto;margin-bottom:16px}
footer h3{color:var(--cyan)}
.footer-brand p{background:linear-gradient(90deg,var(--pink),var(--orange),var(--yellow),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent;width:max-content}
@media(max-width:900px){.brand{width:230px}.hero h1{font-size:5.5rem}}
@media(max-width:560px){.brand{width:185px}.hero h1{font-size:4rem}.contact h2{font-size:4.2rem}.category{border-radius:13px}}
.admin-bar .nav-wrap{top:32px}
@media(max-width:782px){.admin-bar .nav-wrap{top:46px}}

/* Three-color JLN Standard cards */
.standard{overflow:hidden;color:var(--white);background:radial-gradient(circle at 8% 10%,rgba(255,61,129,.15),transparent 24%),radial-gradient(circle at 90% 15%,rgba(77,231,255,.13),transparent 25%),#0d0f18}
.standard::before{height:5px}
.standard h2{color:var(--white)}
.standard h2 i{background:linear-gradient(90deg,var(--pink),var(--orange),var(--yellow),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.standard .orange{color:var(--cyan)}
.principles{gap:20px;border-top:0;margin-top:68px}
.principles article{position:relative;overflow:hidden;min-height:340px;padding:34px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.24);transition:transform .35s ease,box-shadow .35s ease}
.principles article::before{content:"";position:absolute;inset:0 0 auto;height:6px}
.principles article::after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-90px;bottom:-105px;filter:blur(4px);opacity:.32}
.principles article:nth-child(1){background:linear-gradient(145deg,#301528 0%,#191522 58%,#12131a 100%)}
.principles article:nth-child(1)::before{background:linear-gradient(90deg,var(--pink),var(--orange))}
.principles article:nth-child(1)::after{background:var(--pink)}
.principles article:nth-child(2){background:linear-gradient(145deg,#211b42 0%,#151a2d 55%,#11131b 100%)}
.principles article:nth-child(2)::before{background:linear-gradient(90deg,var(--violet),var(--cyan))}
.principles article:nth-child(2)::after{background:var(--violet)}
.principles article:nth-child(3){background:linear-gradient(145deg,#123039 0%,#132127 55%,#11151a 100%)}
.principles article:nth-child(3)::before{background:linear-gradient(90deg,var(--cyan),var(--yellow))}
.principles article:nth-child(3)::after{background:var(--cyan)}
.principles article:hover{transform:translateY(-9px);box-shadow:0 34px 90px rgba(0,0,0,.34)}
.principles b{display:grid;place-items:center;width:46px;height:46px;border:1px solid currentColor;border-radius:50%;font-size:.72rem;margin-bottom:42px}
.principles article:nth-child(1) b{color:var(--pink)}.principles article:nth-child(2) b{color:#a98cff}.principles article:nth-child(3) b{color:var(--cyan)}
.principle-kicker{display:block;color:#d9d9e1;font-size:.68rem;font-weight:700;letter-spacing:.17em;margin-bottom:12px}
.principles h3{color:var(--white);font-size:clamp(1.55rem,2.1vw,2.15rem);line-height:1.08;margin:0 0 18px}
.principles p{position:relative;z-index:1;color:#c4c6d0;font-size:.94rem;line-height:1.7;margin:0}
@media(max-width:900px){.principles{gap:16px}.principles article{min-height:0}.principles article:hover{transform:none}}
