.transport-page{background:var(--paper);color:var(--text)}
.quote-hero{padding:150px 0 72px;background:radial-gradient(circle at 78% 20%,rgba(240,207,112,.12),transparent 30%),linear-gradient(135deg,#0b0d10,#15191e);border-bottom:1px solid var(--rule)}
.quote-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:56px;align-items:end}
.quote-hero h1{font-family:Fraunces,Georgia,serif;font-size:clamp(42px,6vw,78px);line-height:.98;letter-spacing:-.04em;margin:16px 0 22px;max-width:760px}.quote-hero h1 em{color:var(--brand);font-weight:500}.quote-hero p{max-width:760px;color:var(--muted);font-size:18px;line-height:1.7;margin:0}
.quote-rate-card{border:1px solid rgba(240,207,112,.25);background:rgba(255,255,255,.035);border-radius:22px;padding:8px;backdrop-filter:blur(14px)}.quote-rate-card>div{padding:20px 22px;border-radius:16px}.quote-rate-card>div+div{border-top:1px solid var(--rule)}.quote-rate-card small{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:7px}.quote-rate-card strong{display:block;color:var(--brand);font-family:Fraunces,Georgia,serif;font-size:26px}.quote-rate-card span{display:block;color:var(--muted);font-size:13px;margin-top:3px}
.quote-section{padding-top:64px}.quote-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:36px;align-items:start}.quote-form{border:1px solid var(--rule);background:var(--panel);border-radius:24px;padding:30px;box-shadow:0 20px 70px rgba(0,0,0,.18)}
.quote-form-head{display:flex;gap:14px;align-items:flex-start}.quote-form-head h2{font-family:Fraunces,Georgia,serif;font-size:26px;letter-spacing:-.025em;margin:0}.quote-form-head p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.55}.step-pill{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(240,207,112,.35);background:rgba(240,207,112,.08);color:var(--brand);font:600 12px JetBrains Mono,monospace;border-radius:50%;flex:0 0 auto}.section-break{border-top:1px solid var(--rule);padding-top:28px;margin-top:30px}
.service-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.service-option{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--rule);background:var(--panel-2);border-radius:16px;padding:17px;cursor:pointer;transition:.2s ease}.service-option:hover,.service-option.active{border-color:rgba(240,207,112,.6);background:rgba(240,207,112,.06);transform:translateY(-1px)}.service-option input{margin-top:3px;accent-color:var(--brand)}.service-option b{display:block;font-size:14px}.service-option small{display:block;color:var(--muted);font-size:12px;line-height:1.45;margin-top:4px}
.quote-form .form-grid{margin-top:20px}.quote-form .service-fields[hidden]{display:none!important}.quote-form .field label{font-size:12px;color:var(--muted);letter-spacing:.025em}.quote-form input,.quote-form select,.quote-form textarea{width:100%;background:#0f1216;border:1px solid var(--rule);color:var(--text);border-radius:12px;padding:13px 14px;outline:none}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:rgba(240,207,112,.65);box-shadow:0 0 0 3px rgba(240,207,112,.08)}.quote-form select{appearance:auto}.route-action{display:flex;flex-direction:column}.wide{width:100%;min-height:47px}.inline-status{color:var(--muted);font-size:12.5px;line-height:1.5;margin:10px 0 0}.inline-status.error{color:#ffb1aa}.inline-status.success{color:#b9e6c3}
.autocomplete-field{position:relative}.autocomplete-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;background:#11151a;border:1px solid var(--rule);border-radius:12px;box-shadow:0 18px 42px rgba(0,0,0,.35);overflow:hidden}.autocomplete-menu button{display:block;width:100%;text-align:left;background:transparent;color:var(--text);border:0;border-bottom:1px solid var(--rule);padding:12px 14px;font-size:13px;cursor:pointer}.autocomplete-menu button:last-child{border-bottom:0}.autocomplete-menu button:hover{background:rgba(240,207,112,.08);color:var(--brand)}
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-card{display:flex!important;align-items:flex-start;gap:10px;border:1px solid var(--rule);background:var(--panel-2);padding:14px;border-radius:14px;cursor:pointer}.check-card input{width:auto;margin-top:2px;accent-color:var(--brand)}.check-card b{display:block;color:var(--text);font-size:13px}.check-card small{display:block;color:var(--muted);font-size:11.5px;margin-top:3px}.honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}.submit-wrap{border-top:1px solid var(--rule);padding-top:26px;margin-top:30px}.submit-quote{width:100%;justify-content:center;min-height:52px}
.estimate-card{position:relative}.estimate-sticky{position:sticky;top:100px;border:1px solid rgba(240,207,112,.2);background:linear-gradient(180deg,#171c22,#101317);border-radius:22px;padding:26px;box-shadow:0 22px 70px rgba(0,0,0,.23)}.estimate-sticky h2{font-family:Fraunces,Georgia,serif;font-size:25px;margin:12px 0 22px}.estimate-rate,.estimate-line{display:flex;justify-content:space-between;gap:18px;align-items:center;font-size:13px;padding:8px 0}.estimate-rate span,.estimate-line span{color:var(--muted)}.estimate-rate strong{color:var(--brand);font-size:13px}.estimate-divider{height:1px;background:var(--rule);margin:13px 0}.estimate-total{border-top:1px solid var(--rule);margin-top:14px;padding-top:18px}.estimate-total span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.estimate-total strong{display:block;color:var(--brand);font-family:Fraunces,Georgia,serif;font-size:34px;margin-top:5px}.estimate-note{color:var(--muted);font-size:11.5px;line-height:1.6;margin:20px 0}.estimate-help{display:block;color:var(--brand);font-weight:700;font-size:12.5px}.estimate-card.calculated .estimate-total strong{font-size:40px}
@media(max-width:980px){.quote-hero-grid,.quote-layout{grid-template-columns:1fr}.quote-rate-card{max-width:520px}.estimate-card{order:-1}.estimate-sticky{position:static}.quote-section{padding-top:36px}}
@media(max-width:700px){.quote-hero{padding:120px 0 54px}.quote-form{padding:20px;border-radius:18px}.service-choice,.check-grid{grid-template-columns:1fr}.quote-rate-card>div{padding:16px}.quote-form-head h2{font-size:22px}.estimate-sticky{padding:20px}.quote-layout{gap:22px}}

/* v3.19.6 mobile containment + transport header fix */
.transport-page{overflow-x:hidden}
.transport-page .header-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.quote-layout,.quote-form,.service-choice,.service-option{min-width:0;max-width:100%}
.service-option{width:100%}
.service-option input[type="radio"]{width:auto;min-width:0;flex:0 0 auto;margin-top:3px;padding:0;box-shadow:none}
.service-option>span{display:block;flex:1 1 auto;min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:700px){
  .quote-form{width:100%;max-width:100%;overflow:hidden}
  .service-choice{width:100%;max-width:100%}
  .service-option{align-items:flex-start;padding:16px 15px}
  .service-option b,.service-option small{max-width:100%;white-space:normal;overflow-wrap:anywhere}
}


/* v3.20.4 transport mobile hardening */
.quote-hero,.quote-section,.quote-layout,.quote-form,.estimate-card,.estimate-sticky,.form-grid,.field{min-width:0;max-width:100%}
.quote-form input,.quote-form select,.quote-form textarea{min-width:0;max-width:100%;font-size:16px}
.autocomplete-menu{max-width:100%;overflow-wrap:anywhere}
.autocomplete-menu button{white-space:normal;overflow-wrap:anywhere}
.submit-wrap{min-width:0}

@media(max-width:700px){
  .transport-page .header-inner{height:68px;gap:10px}
  .transport-page .brand-v319 img{width:40px;height:40px}
  .transport-page .mobile-toggle{width:46px;height:46px;flex:0 0 46px}
  .transport-page .mobile-panel.open{top:68px;max-height:calc(100dvh - 68px);overflow-y:auto}
  .quote-hero{padding-top:102px}
  .quote-hero h1{font-size:clamp(2.35rem,12vw,3.7rem);overflow-wrap:anywhere}
  .quote-hero p{font-size:16px}
  .quote-form{padding:18px 14px}
  .quote-form-head{gap:10px}
  .step-pill{width:32px;height:32px}
  .service-option,.check-card{min-width:0}
  .submit-quote{min-height:50px}
  .estimate-total strong,.estimate-card.calculated .estimate-total strong{font-size:32px}
}
