:root{
  --primary:#c9101b;
  --dark:#111318;
  --text:#111318;
  --muted:#6e737c;
  --line:#e2e4e8;
}
.quote-v2-page{background:#f4f5f7;color:#111318}
.quote-v2-page .site-header{position:sticky;top:0;z-index:1100}
.quote-v2-page .navbar-wrap{background:#fff}
.quote-v2-page .nav-menu .active{box-shadow:none}
.quote-v2-page .nav-menu a{color:#111318}
.quote-v2-page .nav-menu .btn-primary{color:#fff}

.quote-v2-hero{
  position:relative;
  overflow:hidden;
  color:#fff;
  background-image:url('../img/hero-request-quote.png');
  background-size:cover;
  background-position:center right;
  padding:64px 0 58px;
}
.quote-v2-hero:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(10,12,15,.82) 0%,rgba(14,16,19,.72) 40%,rgba(17,19,24,.45) 72%,rgba(17,19,24,.18) 100%);
}
.quote-v2-hero:before{
  content:"";
  position:absolute;
  width:420px;height:420px;border-radius:50%;
  right:-170px;top:-210px;
  border:70px solid rgba(255,255,255,.035);
  z-index:1;
}
.quote-v2-hero-inner{
  position:relative;z-index:2;
  display:grid;grid-template-columns:minmax(0,1fr) 330px;
  gap:42px;align-items:end;
}
.quote-v2-hero h1{
  max-width:790px;
  margin:0 0 16px;
  font-size:clamp(38px,4.6vw,62px);
  line-height:1.04;letter-spacing:-2px;
}
.quote-v2-hero p{
  max-width:760px;margin:0;
  color:#c9ccd2;font-size:17px;line-height:1.65;
}
.quote-v2-hero-note{
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  border-radius:18px;padding:20px 22px;
  backdrop-filter:blur(8px);
}
.quote-v2-hero-note strong{display:block;font-size:16px}
.quote-v2-hero-note span{display:block;color:#c9ccd2;font-size:12px;margin-top:5px;line-height:1.55}

.quote-v2-main{padding:54px 0 76px}
.quote-v2-heading{
  display:flex;justify-content:space-between;gap:28px;align-items:flex-start;
  margin-bottom:24px;
}
.quote-v2-heading>div{max-width:760px}
.quote-v2-heading h2{
  margin:0 0 9px;font-size:clamp(28px,3vw,40px);line-height:1.1;letter-spacing:-1px;
}
.quote-v2-heading p{margin:0;color:#6e737c;font-size:14px;line-height:1.65}
.quote-back-link{
  flex:0 0 auto;
  border:1px solid #d9dde3;background:#fff;color:#333942;
  border-radius:10px;padding:10px 13px;font-size:12px;font-weight:800;
}
.quote-back-link:hover{border-color:#c9101b;color:#c9101b}

.quote-v2-page .quote-map-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,500px);
  gap:24px;
  align-items:start;
}
.quote-v2-page .quote-v2-form{
  max-width:none!important;
  border:1px solid #e0e3e8;
  border-radius:20px!important;
  padding:24px!important;
  background:#fff;
  box-shadow:0 14px 38px rgba(17,19,24,.07);
}
.quote-v2-page #publicQuoteForm .quote-float-field>label{
  color:#232b93;
  font-weight:800;
}
.quote-v2-page .address-detail-head strong{
  color:#232b93;
  font-weight:400;
}
.quote-v2-page #publicQuoteForm .quote-float-field input,
.quote-v2-page #publicQuoteForm .quote-float-field select,
.quote-v2-page #publicQuoteForm .quote-float-field textarea{
  border-color:#d8dce3;
  color:#111318;
  background:#fff;
}
.quote-v2-page #publicQuoteForm .quote-float-field input:focus,
.quote-v2-page #publicQuoteForm .quote-float-field select:focus,
.quote-v2-page #publicQuoteForm .quote-float-field textarea:focus{
  border-color:#c9101b;
  box-shadow:0 0 0 3px rgba(201,16,27,.08);
}
.quote-v2-page #publicQuoteForm .quote-float-field[class*="quote-icon-"]:not(.location-field)::after{
  background:#c9101b;
}
.quote-v2-page #publicQuoteForm .location-field.quote-icon-location .input-with-action input{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9101b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 5-8 11-8 11S4 15 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}
.quote-v2-page #publicQuoteForm .address-detail-card{
  background:#fafafa;
  border-color:#e1e3e7;
  border-radius:16px;
}
.quote-v2-page #publicQuoteForm .address-detail-card .quote-float-field>label{background:#fafafa}
.quote-v2-page #publicQuoteForm .public-quotation-address-details{
  border-top-color:#e1e3e7;
}
.quote-v2-page #publicQuoteForm .public-quotation-address-details>summary{
  color:#a90c15;
}
.quote-v2-page #publicQuoteForm .public-quotation-address-details>summary small{
  color:#767c85;
}
.quote-v2-page .address-detail-card.address-active{
  border-color:#d45b63;
  box-shadow:0 0 0 3px rgba(201,16,27,.07);
}
.quote-v2-page .address-source-badge{
  background:#f2f3f5;border-color:#dfe2e6;color:#555b64;
}
.quote-v2-page .address-confidence-badge[data-level="needs-manual-completion"]{
  background:#fff1f2;color:#9e0b13;border-color:#f0c9cd;
}
.quote-v2-page .mini-action{
  border-color:#edc4c7;background:#fff2f3;color:#a90c15;
}
.quote-v2-page .mini-action:hover{background:#ffe5e7}
.quote-v2-page .route-summary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.quote-v2-page .route-summary-grid>div{
  border:1px solid #e0e3e8;
  border-radius:14px;
  background:#f7f7f8;
  padding:15px 16px;
}
.quote-v2-page .route-summary-grid span{
  display:block;color:#7b8088;font-size:10px;text-transform:uppercase;letter-spacing:.65px;font-weight:800
}
.quote-v2-page .route-summary-grid strong{display:block;margin-top:4px;font-size:16px;color:#111318}
.quote-v2-page #publicQuoteForm .actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.quote-v2-page #publicQuoteForm .btn{
  width:100%;
  min-height:56px;
  border-radius:14px;
  background:#c9101b;
  color:#fff;
  padding:12px 18px;
  font-weight:800;
  text-align:center;
}
.quote-v2-page #publicQuoteForm .quote-action-grid .btn{
  font-size:16px;
}
.quote-v2-page #publicQuoteForm .btn:hover{background:#9e0b13}
.quote-v2-page #publicQuoteForm .btn.secondary{
  background:#fff;color:#111318;border:1px solid #cfd3da;
}
.quote-v2-page #publicQuoteForm .btn.secondary:hover{border-color:#c9101b;color:#c9101b}
.quote-v2-page .quote-map-panel{position:sticky;top:132px}
.quote-v2-page .map-visual-card{
  border:1px solid #dedfe3;
  border-radius:20px;
  box-shadow:0 14px 38px rgba(17,19,24,.08);
}
.quote-v2-page .map-underbar{
  background:#fff;border:1px solid #e0e3e8;border-radius:14px;
  padding:10px 11px;margin-top:10px;
}
.quote-v2-page .map-adjust-btn{
  border-color:#edc4c7;background:#fff1f2;color:#9e0b13;
}
.quote-v2-page .map-adjust-btn:hover{background:#ffe3e6}
.quote-v2-page .map-open-link{color:#9e0b13;border-color:#edc4c7}
.quote-v2-page .quote-v2-footer{margin-top:0}

@media(max-width:1080px){
  .quote-v2-page .quote-map-layout{grid-template-columns:1fr}
  .quote-v2-page .quote-map-panel{position:static}
  .quote-v2-hero-inner{grid-template-columns:1fr}
  .quote-v2-hero-note{max-width:520px}
}
@media(max-width:760px){
  .quote-v2-hero{padding:48px 0 44px}
  .quote-v2-heading{flex-direction:column}
  .quote-back-link{width:100%;text-align:center}
  .quote-v2-page .quote-v2-form{padding:17px!important}
  .quote-v2-page #publicQuoteForm .actions{grid-template-columns:1fr}
  .quote-v2-page #publicQuoteForm .actions .btn{width:100%;text-align:center}
  .quote-v2-page .route-summary-grid{grid-template-columns:1fr}
}

.quote-v2-page .track-nav-link{color:var(--blue);font-weight:800;white-space:nowrap}


/* Request Quote header/footer sync with public website */
.quote-v2-page .quote-site-header .navbar{
  min-height:84px;
  display:flex;
  align-items:center;
  gap:24px;
}
.quote-v2-page .quote-site-header .header-logo{
  width:260px;
  max-width:260px;
  flex:0 0 260px;
  min-width:0;
}
.quote-v2-page .quote-site-header .header-logo img{
  display:block;
  width:260px;
  max-width:100%;
  height:auto;
  max-height:64px;
  object-fit:contain;
}
.quote-v2-page .quote-site-header .nav-menu{
  flex:1;
  min-width:0;
}
.quote-v2-page .quote-site-header .nav-links{
  gap:17px;
}
.quote-v2-page .quote-site-header .nav-actions{
  margin-left:30px;
  padding-left:24px;
}
.quote-v2-page .quote-v2-footer .footer-logo{
  width:320px;
  max-width:100%;
  display:inline-flex;
  padding:0;
  background:transparent;
  box-shadow:none;
}
.quote-v2-page .quote-v2-footer .footer-logo img{
  display:block;
  width:320px;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
@media(max-width:1250px){
  .quote-v2-page .quote-site-header .header-logo{
    width:235px;
    max-width:235px;
    flex-basis:235px;
  }
  .quote-v2-page .quote-site-header .header-logo img{width:235px}
  .quote-v2-page .quote-site-header .nav-links{gap:14px}
  .quote-v2-page .quote-site-header .nav-actions{
    margin-left:20px;
    padding-left:18px;
    gap:10px;
  }
}
@media(max-width:1050px){
  .quote-v2-page .quote-site-header .header-logo{
    width:260px;
    max-width:260px;
    flex-basis:260px;
  }
  .quote-v2-page .quote-site-header .header-logo img{width:260px}
}
@media(max-width:620px){
  .quote-v2-page .quote-site-header .header-logo{
    width:220px;
    max-width:220px;
    flex-basis:220px;
  }
  .quote-v2-page .quote-site-header .header-logo img{width:220px}
  .quote-v2-page .quote-v2-footer .footer-logo{width:280px}
  .quote-v2-page .quote-v2-footer .footer-logo img{width:280px}
}
