/* =========================================================
   COVERINSTANTLY — POLISHED UI LAYER
   Loaded last on every page. Keeps existing functionality,
   while modernising layout, imagery, cards and mobile UI.
========================================================= */

:root{
  --navy-950:#071524;
  --navy-900:#0b1d31;
  --navy-800:#112b47;
  --navy-700:#1a4167;
  --red-600:#c92738;
  --red-500:#e13a4a;
  --red-100:#fff0f2;
  --ink:#0a1728;
  --ink-2:#304057;
  --muted:#68778b;
  --line:#e7ecf2;
  --line-dark:#cad3de;
  --surface:#ffffff;
  --surface-2:#f6f8fb;
  --surface-3:#edf1f6;
  --shadow-sm:0 10px 30px rgba(7,21,36,.07);
  --shadow-md:0 22px 60px rgba(7,21,36,.11);
  --shadow-lg:0 38px 100px rgba(7,21,36,.18);
  --radius-sm:12px;
  --radius:20px;
  --radius-lg:30px;
}

html{background:#f6f8fb}
body{
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  line-height:1.65;
  background:
    radial-gradient(circle at 100% 0,rgba(225,58,74,.045),transparent 24rem),
    linear-gradient(180deg,#fff 0%,#fbfcfe 40%,#f6f8fb 100%);
}

.container{width:min(var(--page-width),calc(100% - 56px))}

/* Header and footer are controlled exclusively by styles.css. */
/* Shared type and actions */
.section-title{letter-spacing:-.055em;line-height:1.02}
.section-lead{line-height:1.75}
.primary-action,.secondary-action,.submit-btn,.large-action{
  border-radius:14px!important;
  min-height:54px;
  padding-inline:21px;
}
.primary-action,.submit-btn{
  box-shadow:0 14px 30px rgba(225,58,74,.19);
}
.primary-action:hover,.submit-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 36px rgba(225,58,74,.25);
}
.secondary-action:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}

/* Page heroes */
.page-hero,.quote-hero-v2,.pricing-hero,.payment-hero{
  position:relative;
  overflow:hidden;
}
.page-hero{
  background:
    radial-gradient(circle at 84% 16%,rgba(225,58,74,.25),transparent 27rem),
    radial-gradient(circle at 10% 10%,rgba(53,99,145,.2),transparent 24rem),
    linear-gradient(135deg,#061321 0%,#0c2036 55%,#102c49 100%)!important;
}
.page-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,#000,transparent 94%);
  pointer-events:none;
}
.page-hero>.container{position:relative;z-index:1}
.breadcrumb{color:#b6c4d4}
.breadcrumb a{color:#fff}

/* Modern image cards — no 2005 outline */
.content-card,.hero-photo-card,.cover-hero-card,.how-hero-card,.mission-visual,.hero-card-photo{
  position:relative;
  overflow:hidden;
  border:0!important;
  outline:0!important;
  border-radius:30px!important;
  background:#0b1d31!important;
  box-shadow:0 28px 75px rgba(4,15,27,.25)!important;
  isolation:isolate;
}
.hero-photo-card,.cover-hero-card,.how-hero-card{min-height:520px}
.hero-photo-card>img,.cover-hero-card>img,.how-hero-card>img{
  position:absolute;
  inset:0;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:scale(1.015);
  transition:transform .65s cubic-bezier(.2,.75,.25,1),filter .45s ease;
}
.hero-photo-card::after,.cover-hero-card::after,.how-hero-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(4,13,24,.02) 25%,rgba(4,13,24,.2) 52%,rgba(4,13,24,.94) 100%);
  pointer-events:none;
}
.hero-photo-card .card-copy,.cover-hero-card .card-copy,.how-hero-card .card-copy{
  position:absolute!important;
  z-index:2;
  left:0;right:0;bottom:0;
  padding:30px 30px 28px!important;
  background:transparent!important;
  border:0!important;
}
.hero-photo-card .card-copy small,.cover-hero-card .card-copy small,.how-hero-card .card-copy small{color:#ff9da7!important}
.hero-photo-card .card-copy strong,.cover-hero-card .card-copy strong,.how-hero-card .card-copy strong{color:#fff!important;font-size:27px!important;line-height:1.12!important}
.hero-photo-card .card-copy p,.cover-hero-card .card-copy p,.how-hero-card .card-copy p{color:#d8e1eb!important;line-height:1.7!important;margin-top:10px!important}
.mission-visual img,.hero-card-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
@media(hover:hover){
  .hero-photo-card:hover>img,.cover-hero-card:hover>img,.how-hero-card:hover>img{transform:scale(1.055);filter:saturate(1.05)}
}

/* Premium card system */
.principle-card,.cover-overview-card,.use-card,.step-card,.check-item,.support-options>div,.support-card,.sidebar-card,.stats-panel>div,.story-wrap,.cover-summary,.status-panel,.checklist,.surface-panel,.vehicle-summary-card,.side-support-card,.surface-card,.summary-box,.legal-card,.legal-side,.payment-card,.summary-card,.document-card,.success-summary,.failed-card{
  border:0!important;
  outline:0!important;
  box-shadow:var(--shadow-sm)!important;
}
.principle-card,.cover-overview-card,.use-card,.step-card,.check-item,.support-options>div,.summary-box{
  border-radius:22px!important;
  background:rgba(255,255,255,.96)!important;
}
.principle-card,.cover-overview-card,.step-card,.support-options>div,.check-item{padding:28px!important}
.principle-card p,.cover-overview-card p,.step-card p,.support-options p,.check-item span{line-height:1.72}
.principle-card i,.cover-overview-card i{
  width:52px!important;height:52px!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,#fff0f2,#f6f8fb)!important;
  color:var(--red-500)!important;
}
@media(hover:hover){
  .principle-card,.cover-overview-card,.use-card,.step-card,.support-options>div,.check-item,.summary-box{
    transition:transform .25s ease,box-shadow .25s ease;
  }
  .principle-card:hover,.cover-overview-card:hover,.use-card:hover,.step-card:hover,.support-options>div:hover,.check-item:hover,.summary-box:hover{
    transform:translateY(-5px);
    box-shadow:var(--shadow-md)!important;
  }
}

/* About */
.about-section{padding-block:108px}
.stats-panel{
  display:grid!important;
  grid-template-columns:repeat(2,1fr)!important;
  gap:15px!important;
  background:transparent!important;
  border:0!important;
  overflow:visible!important;
  box-shadow:none!important;
}
.stats-panel>div{padding:26px!important;border-radius:20px}
.stats-panel strong{font-size:20px!important;line-height:1.25!important;color:var(--navy-950)}
.stats-panel span{font-size:14px!important;line-height:1.65!important}
.story-wrap{padding:40px!important;border-radius:28px!important;background:#fff!important}
.story-step{gap:24px!important;padding-block:23px!important}
.story-step b{border-radius:16px!important;box-shadow:none!important}
.cta-panel{border-radius:30px!important;box-shadow:var(--shadow-lg)!important}
.cta-points{gap:14px!important;padding:24px!important}
.cta-points>div{border:0!important;background:rgba(255,255,255,.075)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}

/* Cover */
.cover-section{padding-block:108px}
.cover-overview-grid,.use-grid{gap:20px!important}
.use-card{padding:0!important;overflow:hidden;background:#fff!important}
.use-card img{height:220px!important;border-radius:0!important;margin:0!important;object-fit:cover!important;object-position:center center!important}
.use-card h3{padding:22px 22px 0!important}
.use-card p{padding:0 22px 24px!important}
.cover-summary{padding:38px!important;border-radius:28px!important;background:#fff!important}
.summary-item{padding:18px 0!important;gap:18px!important}
.policy-table-wrap{border:0!important;border-radius:24px!important;box-shadow:var(--shadow-sm)!important}
.policy-table th{background:#f2f5f9!important}
.policy-table th,.policy-table td{padding:20px!important}
.warning-panel{border:0!important;border-radius:30px!important;box-shadow:var(--shadow-md)!important}

/* How it works */
.how-section{padding-block:108px}
.steps-grid{gap:22px!important}
.steps-grid::before{opacity:.35}
.step-card{padding:30px!important}
.step-number{width:58px!important;height:58px!important;border:0!important;border-radius:18px!important;background:var(--navy-950)!important;color:#fff!important;box-shadow:0 13px 25px rgba(7,21,36,.17)!important}
.status-panel,.checklist{padding:38px!important;border-radius:28px!important;background:#fff!important}
.status-flow{gap:14px!important}
.status-flow>div{border:0!important;border-radius:18px!important;padding:18px!important;box-shadow:0 7px 24px rgba(7,21,36,.055)!important}
.status-flow b{border-radius:12px!important}
.how-cta-panel{border:0!important;border-radius:30px!important;box-shadow:var(--shadow-md)!important;gap:0!important}
.how-cta-points{padding:30px!important}
.how-cta-points>div{padding:18px!important;border-radius:18px!important;background:#f7f9fc!important}

/* Support */
.support-hero{padding-block:66px!important}
.support-hero-grid{gap:50px!important}
.hero-card-photo{min-height:500px!important}
.hero-card-photo img{position:absolute;inset:0;height:100%!important}
.hero-card-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(4,13,24,.92) 100%);z-index:1}
.hero-card-photo .hero-card-body{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:30px!important;color:#fff}
.hero-card-photo .hero-card-body h2{color:#fff!important}
.hero-card-photo .hero-card-body p{color:#d8e1eb!important}
.hero-card-photo .hero-points span{color:#fff!important}
.support-options{gap:18px!important;margin-block:30px!important}
.support-card,.sidebar-card{border-radius:24px!important}
.support-card{padding:30px!important}
.checks-grid{gap:16px!important}
.checks-grid>div{padding:24px!important;border:0!important;background:#f7f9fc!important;border-radius:18px!important}

/* Quote */
.quote-hero-v2{padding-block:46px!important;background:linear-gradient(180deg,#fff 0%,#f7f9fc 100%)!important}
.quote-hero-note{border:0!important;border-radius:22px!important;box-shadow:var(--shadow-sm)!important;padding:24px!important}
.journey-pill{border:0!important;box-shadow:0 7px 20px rgba(7,21,36,.07)!important}
.quote-main-grid{gap:32px!important;padding-top:42px!important}
.vehicle-summary-card,.side-support-card,.surface-panel,.extra-driver-box{border-radius:24px!important}
.vehicle-summary-top{border-radius:24px 24px 0 0!important;padding:25px!important}
.surface-panel,.extra-driver-box{padding:28px!important}
.field-group input,.field-group select,.phone-shell{
  border-color:#dfe6ee!important;
  border-radius:14px!important;
  background:#fbfcfe!important;
}
.field-group input:hover,.field-group select:hover,.phone-shell:hover{border-color:#b9c6d4!important}
.duration-picker-wrap,.date-card-v2{border:0!important;background:#f7f9fc!important;border-radius:20px!important}
.duration-chip{border:0!important;box-shadow:inset 0 0 0 1px #dfe6ee}
.mobile-submit-bar{border-top:0!important;box-shadow:0 -18px 45px rgba(7,21,36,.12)!important}

/* Pricing */
.pricing-hero{padding-block:48px!important}
.pricing-grid{gap:32px!important;padding-top:42px!important}
.quote-price-card,.pricing-content .surface-card{border-radius:26px!important}
.quote-price-card{padding:28px!important;background:linear-gradient(155deg,#071524,#102c49)!important;color:#fff}
.quote-price-card .price-label{background:rgba(255,255,255,.11)!important;border:0!important;color:#ffb2ba!important}
.quote-price-card .price-amount{color:#fff}
.quote-price-card .price-note,.quote-price-card .price-meta span{color:#c9d5e2}
.quote-price-card .price-meta div{border-color:rgba(255,255,255,.12)!important}
.summary-grid{gap:18px!important}
.summary-box{padding:22px!important;background:#f8fafc!important;box-shadow:none!important}

/* Payment */
body.payment-page{
  background:linear-gradient(180deg,#f8fafc 0%,#fff 48%,#f4f7fa 100%)!important;
}
.payment-hero{
  border:0!important;
  background:
    radial-gradient(circle at 84% 18%,rgba(225,58,74,.22),transparent 25rem),
    linear-gradient(135deg,#071524,#102c49)!important;
  color:#fff!important;
}
.payment-hero::after{opacity:.35}
.payment-hero h1{color:#fff!important}
.payment-hero p{color:#d5e0eb!important}
.payment-badge{background:rgba(255,255,255,.1)!important;border:0!important;color:#ffb5bd!important}
.payment-stepper{border:0!important;border-radius:24px!important;box-shadow:var(--shadow-md)!important}
.pay-step.complete span,.pay-step.active span{background:var(--navy-950)!important;color:#fff!important;box-shadow:none!important}
.pay-line.complete,.pay-line.active{background:linear-gradient(90deg,var(--red-500),var(--navy-700))!important}
.payment-layout{gap:30px!important}
.payment-card,.summary-card{border-radius:26px!important}
.payment-card{padding:30px!important}
.checkout-brandbar{border:0!important;background:#f6f8fb!important;border-radius:26px 26px 0 0!important}
.checkout-brand-lock{color:var(--red-500)!important;background:var(--red-100)!important;border:0!important}
.payment-card-heading span,.summary-title span{background:var(--red-100)!important;border:0!important;color:var(--red-600)!important}
.price-box{border:0!important;background:#f6f8fb!important;border-radius:22px!important}
.pay-btn,.elements-pay-btn{background:linear-gradient(135deg,var(--red-500),var(--red-600))!important;color:#fff!important;box-shadow:0 17px 36px rgba(225,58,74,.24)!important;border-radius:16px!important}
.discount-drop{border:0!important;background:#f6f8fb!important;border-radius:18px!important}
.discount-drop summary::after{background:#fff!important;color:var(--red-500)!important;border:0!important}
.discount-row button{background:var(--navy-950)!important}
.summary-card{padding:30px!important}
.summary-list div{padding-block:17px!important}
.wallet-checkout-section{border:0!important;background:#f7f7ff!important}

/* Success */
body.success-page{background:#f6f8fb!important}
.success-hero{background:#071524!important}
.success-bg{
  background:
    radial-gradient(circle at 82% 15%,rgba(225,58,74,.26),transparent 28%),
    radial-gradient(circle at 15% 5%,rgba(47,92,137,.32),transparent 31%),
    linear-gradient(135deg,#071524,#0c2036 56%,#112f4f)!important;
}
.status-pill{background:rgba(255,255,255,.1)!important;border:0!important;color:#d9f7e9!important}
.success-hero p{color:#d7e2ed!important}
.policy-ticket{border:0!important;border-radius:28px!important;background:rgba(255,255,255,.095)!important}
.ticket-top{color:#cad6e2!important}
.ticket-check{background:linear-gradient(135deg,#13a36b,#087d52)!important;box-shadow:0 18px 42px rgba(13,128,84,.25)!important}
.ticket-meta div{border:0!important;background:rgba(255,255,255,.08)!important}
.ticket-meta span{color:#c4d2df!important}
.success-stepper{border:0!important;border-radius:24px!important;box-shadow:var(--shadow-md)!important}
.step.complete span,.step.active span{background:var(--navy-950)!important;box-shadow:none!important}
.line.complete,.line.active{background:linear-gradient(90deg,#13a36b,var(--navy-700))!important}
.document-card,.success-summary{border-radius:28px!important}
.doc-icon{border-radius:18px!important;background:#eaf7f1!important;color:#0d8054!important}
.document-progress,.timeline-item,.next-actions{border:0!important;background:#f6f8fb!important}
.timeline-item{border-radius:18px!important}
.download{background:linear-gradient(135deg,#0f9563,#087d52)!important;box-shadow:0 18px 38px rgba(13,128,84,.22)!important;border-radius:16px!important}

/* Failed */
body.failed-page{background:linear-gradient(180deg,#f8fafc,#fff 48%,#f5f7fa)!important}
.failed-bg{background:radial-gradient(circle at 80% 10%,rgba(225,58,74,.13),transparent 27rem),linear-gradient(180deg,#fff,#f6f8fb)!important}
.failed-bg::after{opacity:.35}
.failed-card{border-radius:30px!important;padding:44px!important}
.failed-icon{border-radius:24px!important;background:linear-gradient(135deg,#f05a68,#c92738)!important;box-shadow:0 18px 42px rgba(201,39,56,.22)!important}
.status-box{gap:16px!important}
.status-box div{border:0!important;background:#f6f8fb!important;border-radius:18px!important;padding:19px!important}
.failed-page .primary-action{background:linear-gradient(135deg,var(--red-500),var(--red-600))!important;color:#fff!important}
.failed-page .secondary-action{border:0!important;box-shadow:inset 0 0 0 1px var(--line-dark)}
.help-grid{gap:14px!important}
.help-grid div{border:0!important;background:#f7f9fc!important;border-radius:18px!important;padding:17px!important}
.help-grid i{color:var(--red-500)!important}

/* Legal */
.legal-page .page-hero{padding-block:72px 54px!important}
.legal-page .legal-layout{gap:32px!important}
.legal-page .legal-card,.legal-page .legal-side{border-radius:26px!important}
.legal-page .legal-card{padding:40px!important}
.legal-page .legal-side{padding:28px!important}
.legal-page .legal-meta{gap:16px!important}
.legal-page .legal-meta>div,.legal-page .side-list>div{border:0!important;background:#f6f8fb!important;border-radius:18px!important}
.legal-page .placeholder-alert{border:0!important;border-left:4px solid var(--red-500)!important;background:#fff4f5!important;border-radius:16px!important;padding:20px 22px!important}

/* Footer */







/* Animation refinement */
.reveal{transform:translateY(24px)!important;transition:opacity .6s ease,transform .6s cubic-bezier(.2,.75,.25,1)!important}
.reveal.is-visible{transform:translateY(0)!important}

@media(max-width:980px){
  .container{width:min(var(--page-width),calc(100% - 36px))}
  .hero-photo-card,.cover-hero-card,.how-hero-card{min-height:480px}
  .about-section,.cover-section,.how-section{padding-block:86px}
  .cta-points{padding:18px!important}
}

@media(max-width:680px){
  .container{width:min(var(--page-width),calc(100% - 24px))}
  
  .page-hero{padding-block:44px 56px!important}
  .hero-photo-card,.cover-hero-card,.how-hero-card{min-height:420px;border-radius:24px!important}
  .hero-photo-card .card-copy,.cover-hero-card .card-copy,.how-hero-card .card-copy{padding:24px!important}
  .hero-photo-card .card-copy strong,.cover-hero-card .card-copy strong,.how-hero-card .card-copy strong{font-size:23px!important}
  .about-section,.cover-section,.how-section{padding-block:72px}
  .principle-card,.cover-overview-card,.step-card,.support-options>div,.check-item{padding:23px!important}
  .stats-panel{grid-template-columns:1fr!important}
  .cta-points{grid-template-columns:1fr!important}
  .story-wrap,.cover-summary,.status-panel,.checklist{padding:26px!important}
  .use-card img{height:210px!important}
  .support-card,.sidebar-card{padding:23px!important}
  .surface-panel,.extra-driver-box{padding:21px!important}
  .payment-card,.summary-card{padding:22px!important}
  .failed-card{padding:28px 22px!important}
  .legal-page .legal-card{padding:26px!important}
  .legal-page .legal-side{padding:24px!important}
  
}
