:root{--bg:#090c0f;--panel:#12181e;--panel2:#171f26;--text:#f6f8f9;--muted:#a9b5bf;--blue:#168cff;--mint:#55e6c1;--line:#2a3540;--danger:#ff6868}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Montserrat,Arial,sans-serif;line-height:1.55}button,input,select,textarea{font:inherit}button{color:inherit}.container{width:min(1180px,92%);margin:auto}a{text-decoration:none;color:inherit}
.site-header{position:sticky;top:0;z-index:100;background:rgba(9,12,15,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-wrap{height:80px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand-mark{width:48px;height:48px;border:2px solid var(--mint);display:grid;place-items:center;color:var(--mint);font-family:Oswald;font-weight:700;transform:skew(-6deg)}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-text strong{font-size:18px}.brand-text small{font-size:10px;letter-spacing:2px;color:var(--muted);text-transform:uppercase}.main-nav{display:flex;gap:22px;margin-left:auto;font-size:13px;font-weight:700}.main-nav a:hover{color:var(--mint)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border:0;border-radius:9px;background:linear-gradient(135deg,var(--blue),#49a6ff);font-weight:800;cursor:pointer;color:white}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.btn-small{min-height:42px;padding:0 15px;font-size:12px}.btn-outline,.btn-ghost{background:transparent;border:1px solid var(--mint);color:var(--mint)}.btn-ghost{border-color:#42515e;color:#d5dde3}.full{width:100%}
.hero{padding:100px 0 90px;background:radial-gradient(circle at 75% 25%,rgba(22,140,255,.24),transparent 25%),radial-gradient(circle at 78% 75%,rgba(85,230,193,.10),transparent 23%),linear-gradient(120deg,#080a0d,#101923)}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.eyebrow,.section-kicker{font-size:11px;font-weight:800;letter-spacing:2px;color:var(--blue)}.mint{color:var(--mint)}.hero h1,.section h2,.builder-section h2,.checkout-section h2{font-family:Oswald;text-transform:uppercase;line-height:1.02}.hero h1{font-size:clamp(52px,7vw,88px);margin:15px 0}.hero h1 span{color:var(--mint)}.hero p{color:var(--muted);font-size:17px;max-width:720px}.hero-actions{display:flex;gap:12px;margin:28px 0}.tagline{font-size:13px!important;color:#e2e7ea!important;font-weight:700}.hero-card{background:rgba(11,16,21,.8);border:1px solid #30404d;border-radius:18px;padding:22px;box-shadow:0 25px 60px rgba(0,0,0,.3)}.hero-card-top{font-size:11px;letter-spacing:2px;color:var(--mint);font-weight:800;margin-bottom:12px}.hero-step{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid #27323c}.hero-step:last-child{border-bottom:0}.hero-step>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#17232c;color:var(--blue);font-weight:800}.hero-step div{display:flex;flex-direction:column}.hero-step small{color:var(--muted)}
.section,.builder-section,.checkout-section{padding:88px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.section-heading h2{font-size:clamp(36px,5vw,58px);margin:12px 0}.section-heading p{color:var(--muted)}.center{justify-content:center;text-align:center}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-tile{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:0 20px 22px;overflow:hidden;cursor:pointer;transition:.2s}.product-tile:hover{transform:translateY(-4px);border-color:#446078}.tile-photo{height:150px;margin:0 -20px 18px;background-size:cover;background-position:center}.shirt-photo{background-image:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.2)),url('shirt-example.jpeg')}.tile-icon{height:90px;display:grid;place-items:center;font-size:36px;color:var(--mint)}.product-tile h3{margin:0 0 7px}.product-tile p{font-size:12px;color:var(--muted);min-height:57px}.product-tile span{color:var(--mint);font-weight:800;font-size:12px}
.builder-section{background:#0e1318;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.builder-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}.builder-panel,.cart-panel,.checkout-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px}.cart-panel{position:sticky;top:104px}.builder-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:28px}.progress-step{background:#0c1115;border:1px solid #29343e;border-radius:8px;padding:10px 8px;color:#7f8d98;font-size:11px;font-weight:800}.progress-step span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#17212a;margin-right:5px}.progress-step.active{border-color:var(--blue);color:#fff}.progress-step.active span{background:var(--blue)}.builder-step{display:none}.builder-step.active{display:block}.builder-step h3{font-size:22px;margin:0 0 20px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice{border:1px solid #2d3944;background:#0d1217;border-radius:10px;padding:15px;text-align:left;cursor:pointer}.choice strong{display:block}.choice small{color:var(--muted)}.choice.selected{border-color:var(--mint);box-shadow:inset 0 0 0 1px var(--mint)}.builder-actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.builder-actions.right{justify-content:flex-end}
.options-grid,.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.field-label,.form-grid label{display:block;font-size:12px;font-weight:800;color:#cbd5dc}.field-full{grid-column:1/-1}input,select,textarea{width:100%;margin-top:7px;padding:12px 13px;background:#0a0f13;border:1px solid #2e3b46;border-radius:8px;color:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--blue)}.checkbox-row{display:flex;gap:9px;align-items:flex-start;font-size:12px;color:#cbd4db;margin-top:14px}.checkbox-row input{width:auto;margin-top:3px}
.upload-box{border:1px dashed #3b4e5e;border-radius:12px;padding:18px;background:#0c1115;margin-bottom:18px}.upload-box input{display:none}.upload-box label{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px;cursor:pointer}.upload-box label strong{color:var(--mint)}.upload-box label span{font-size:11px;color:var(--muted);margin-top:5px}#filePreview{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}#filePreview img{max-width:160px;max-height:140px;border-radius:9px;border:1px solid var(--line)}
.review-card{background:#0b1014;border:1px solid #2d3944;border-radius:12px;padding:18px}.review-row{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #1f2a32;font-size:12px}.review-row:last-child{border-bottom:0}.review-row span{color:var(--muted)}.review-row strong{text-align:right}.estimated{color:var(--mint)}
.cart-head{display:flex;justify-content:space-between;align-items:center}.cart-head h3{margin:0}.cart-head span{font-size:11px;color:var(--muted)}.cart-items{margin:18px 0}.empty-cart{font-size:12px;color:var(--muted);text-align:center;padding:22px}.cart-item{padding:13px 0;border-bottom:1px solid #28333d}.cart-item-head{display:flex;justify-content:space-between;gap:10px}.cart-item h4{margin:0;font-size:13px}.cart-item small{display:block;color:var(--muted);margin-top:4px}.cart-item button{background:none;border:0;color:var(--danger);cursor:pointer;font-size:11px}.price-disclaimer{background:#0c1115;border:1px solid #26323c;border-radius:10px;padding:13px;margin-bottom:14px}.price-disclaimer strong{font-size:12px;color:var(--mint)}.price-disclaimer p{font-size:10px;color:var(--muted);margin:5px 0 0}
.checkout-section{background:linear-gradient(130deg,#101821,#0c1518)}.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.checkout-card h2{font-size:38px}.hidden{display:none!important}.agreement{background:#0c1115;padding:13px;border:1px solid #2a3640;border-radius:9px;margin:18px 0}#submissionMessage{margin-top:14px;font-size:12px}.success{padding:14px;background:rgba(85,230,193,.09);border:1px solid rgba(85,230,193,.4);border-radius:9px;color:var(--mint)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.steps>div{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:23px}.steps span{font-family:Oswald;color:var(--blue);font-size:34px}.steps h3{font-size:15px}.steps p{font-size:12px;color:var(--muted)}.center-copy{text-align:center}.contact p{color:var(--muted)}footer{padding:35px 0;background:#06080a;border-top:1px solid #192027}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-row p{font-size:12px;color:var(--muted)}
@media(max-width:1000px){.main-nav{display:none}.hero-grid,.builder-layout,.checkout-grid{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(2,1fr)}.cart-panel{position:static}.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.site-header .btn-small{display:none}.hero{padding:70px 0}.hero-actions{flex-direction:column}.product-grid,.choice-grid,.options-grid,.form-grid,.steps{grid-template-columns:1fr}.builder-progress{grid-template-columns:repeat(2,1fr)}.section,.builder-section,.checkout-section{padding:62px 0}.section-heading{align-items:flex-start;flex-direction:column}.footer-row{align-items:flex-start;flex-direction:column}}
.quote-note{margin-top:18px;padding:13px;border-left:3px solid var(--blue);background:#0c1217;color:var(--muted);font-size:11px}
.shirt-price-box{margin-top:18px;padding:15px;background:#0c1217;border:1px solid #2b3944;border-radius:10px;display:grid;gap:5px}
.shirt-price-box strong{color:var(--mint);font-size:12px}.shirt-price-box span{font-size:12px}.shirt-price-box small{color:var(--muted);margin-top:4px}

.customization-overview{padding:82px 0;background:linear-gradient(130deg,#0b1116,#101a20);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.customization-overview h2{font-family:Oswald;text-transform:uppercase;line-height:1.02;font-size:clamp(36px,5vw,58px);margin:12px 0}
.overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.overview-card{background:#11181e;border:1px solid #2a3741;border-radius:12px;padding:21px}
.overview-card h3{margin:0 0 8px;color:var(--mint)}
.overview-card p{margin:0;color:var(--muted);font-size:12px}
@media(max-width:900px){.overview-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.overview-grid{grid-template-columns:1fr}}

.pricing-policy{padding:72px 0;background:linear-gradient(100deg,#103758,#0f4a52,#145447);border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.pricing-policy-inner{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.pricing-policy h2{font-family:Oswald;text-transform:uppercase;line-height:1.04;font-size:clamp(34px,5vw,54px);margin:12px 0}
.pricing-policy p{color:#d8e3e8;max-width:680px}
.policy-points{display:grid;gap:11px}.policy-points>div{background:rgba(5,12,16,.24);border:1px solid rgba(255,255,255,.13);border-radius:10px;padding:15px}
.policy-points strong{display:block;color:var(--mint);font-size:13px}.policy-points span{display:block;margin-top:4px;color:#d5e0e6;font-size:11px}
.quote-price-box{margin-top:18px;padding:15px;background:#0c1217;border:1px solid #2b3944;border-radius:10px;display:grid;gap:6px}
.quote-price-box strong{color:var(--mint);font-size:12px}.quote-price-box span{color:#dce4e9;font-size:11px}.quote-price-box small{color:var(--muted);margin-top:3px}
@media(max-width:850px){.pricing-policy-inner{grid-template-columns:1fr}}

.required-mark{color:#ff7a7a;font-weight:800}
.field-error{border-color:#ff6b6b!important;box-shadow:0 0 0 2px rgba(255,107,107,.15)!important}


.confirmation-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  background:rgba(2,8,14,.82);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
  overflow:auto;
}

.confirmation-overlay[hidden]{display:none!important}

.confirmation-card{
  width:min(100%,620px);
  background:linear-gradient(180deg,#101a23 0%,#0c141c 100%);
  border:1px solid rgba(72,232,199,.35);
  border-radius:24px;
  padding:30px 24px;
  box-shadow:0 24px 80px rgba(0,0,0,.45);
  text-align:center;
}

.confirmation-icon{
  width:72px;
  height:72px;
  margin:0 auto 18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(72,232,199,.12);
  border:2px solid #48e8c7;
  color:#48e8c7;
  font-size:38px;
  font-weight:900;
}

.confirmation-kicker{
  margin:0 0 8px;
  color:#48e8c7;
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
}

.confirmation-card h2{
  margin:0;
  font-size:clamp(32px,8vw,48px);
}

.confirmation-copy{
  max-width:470px;
  margin:12px auto 22px;
  color:#b8c1ca;
  line-height:1.55;
}

.confirmation-reference{
  padding:18px;
  margin:18px 0 24px;
  border-radius:16px;
  background:#071019;
  border:1px solid rgba(72,232,199,.28);
}

.confirmation-reference span{
  display:block;
  color:#8d9aa7;
  font-size:13px;
  margin-bottom:6px;
}

.confirmation-reference strong{
  display:block;
  color:#48e8c7;
  font-size:clamp(24px,7vw,36px);
  letter-spacing:.04em;
}

.confirmation-next{
  text-align:left;
  padding:20px;
  border-radius:16px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.08);
}

.confirmation-next h3{
  margin:0 0 12px;
  font-size:19px;
}

.confirmation-next ol{
  margin:0;
  padding-left:22px;
  color:#c1c8cf;
  line-height:1.6;
}

.confirmation-next li+li{margin-top:8px}

.confirmation-note{
  margin:18px auto 0;
  color:#8d9aa7;
  font-size:13px;
  line-height:1.5;
}

.confirmation-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:22px;
}

.confirmation-actions .btn{
  width:100%;
}

.modal-open{
  overflow:hidden;
}

@media(max-width:520px){
  .confirmation-card{padding:26px 18px}
  .confirmation-actions{grid-template-columns:1fr}
}

.quote-status-section{background:#0d1318}
.quote-status-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px}
.quote-status-form{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end}
.quote-lookup-result{margin-top:18px}
.status-loading,.status-error{padding:14px;border-radius:9px;background:#0b1116;border:1px solid #2b3943;font-size:12px}
.status-error{color:#ff9d9d;border-color:#6b3a3a;background:#261515}
.status-quote{background:#0b1116;border:1px solid #2b3943;border-radius:14px;padding:18px}
.status-top{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.status-top>div{background:#111920;border:1px solid #26333d;border-radius:10px;padding:14px}
.status-top span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}
.status-top strong{font-size:15px}
.status-notes{margin-top:14px;padding:14px;border-left:3px solid var(--mint);background:#10171d}
.status-notes p{margin:5px 0 0;color:var(--muted)}
.status-actions{display:flex;gap:12px;margin-top:18px}
.status-help{color:var(--muted);font-size:12px;margin:16px 0 0}
@media(max-width:720px){
  .quote-status-form{grid-template-columns:1fr}
  .status-top{grid-template-columns:1fr}
  .status-actions{flex-direction:column}
}

.btn-danger{background:#3a1719!important;border:1px solid #7d3438!important;color:#ffb1b5!important}.status-actions{flex-wrap:wrap}

.payment-box{
  margin-top:18px;padding:18px;border:1px solid #285348;border-radius:14px;
  background:#0e201c;
}
.payment-box strong{display:block;color:#48e8c7;font-size:18px;margin-bottom:5px}
.payment-box p{margin:0 0 14px;color:#b8c3cb}
.payment-btn{display:inline-flex;text-decoration:none;justify-content:center;align-items:center}
