:root{
  --gie-primary:#0c2d57;
  --gie-secondary:#188de1;
  --gie-accent:#ff6b00;
  --gie-light:#f5f9ff;
  --gie-border:#e5edf7;
  --gie-text:#425466;
  --gie-heading:#102a43;
  --gie-shadow:0 18px 50px rgba(16,42,67,.08);
  --gie-radius:22px;
  --gie-success:#16803c;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:Arial,Helvetica,sans-serif;color:var(--gie-text);background:#fff;overflow-x:hidden;margin:0;}
a{color:var(--gie-secondary);text-decoration:none;}
a:hover{color:var(--gie-primary);}
img{display:block;max-width:100%;height:auto;}
.section-space{padding:72px 0;}
.bg-soft{background:linear-gradient(180deg,#f8fbff 0%,#f4f8fd 100%);}
.anchor-offset{scroll-margin-top:120px;}

.section-title{max-width:980px;margin:0 auto 42px;}
.eyebrow,.section-title .eyebrow{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gie-secondary);margin-bottom:12px;}
.section-title h2,.quick-rate-card h2{color:var(--gie-heading);font-size:34px;font-weight:800;line-height:1.22;margin-bottom:14px;}
.section-title p{font-size:16px;line-height:1.8;margin:0;}

.gie-breadcrumb-bar{background:linear-gradient(180deg,#f8fbff 0%,#f3f8fe 100%);border-bottom:1px solid #e6eef8;}
.gie-breadcrumb{margin:0;padding:13px 0;list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.gie-breadcrumb li{display:inline-flex;align-items:center;font-size:14px;color:#64748b;}
.gie-breadcrumb li a{color:var(--gie-primary);font-weight:700;padding:6px 9px;border-radius:999px;}
.gie-breadcrumb li a:hover{background:#eaf4ff;color:var(--gie-secondary);}
.gie-breadcrumb .separator{color:#94a3b8;font-weight:800;}
.gie-breadcrumb .active{color:var(--gie-accent);font-weight:800;background:rgba(255,107,0,.08);border:1px solid rgba(255,107,0,.16);padding:6px 12px;border-radius:999px;}

.hero-section{position:relative;min-height:660px;display:flex;align-items:center;overflow:hidden;background:#071d36;border-radius:0 0 28px 28px;}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,29,54,.97) 0%,rgba(7,29,54,.84) 48%,rgba(7,29,54,.40) 100%);}
.hero-inner{position:relative;z-index:2;}
.hero-content{max-width:900px;color:#fff;padding:96px 0 108px;}
.hero-badge{display:inline-flex;align-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);color:#fff;font-size:13px;font-weight:800;padding:10px 16px;border-radius:999px;margin-bottom:18px;backdrop-filter:blur(8px);}
.hero-content h1{font-size:50px;line-height:1.13;font-weight:800;color:#fff;margin:0 0 18px;}
.hero-content p{font-size:17px;line-height:1.82;color:rgba(255,255,255,.95);max-width:850px;margin-bottom:22px;}
.hero-trust{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;}
.hero-trust span{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.20);font-size:13px;font-weight:700;color:#fff;}
.hero-btns{display:flex;flex-wrap:wrap;gap:13px;}

.btn-main{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 23px;border-radius:999px;font-weight:800;border:1px solid transparent;transition:.25s ease;}
.btn-red{background:var(--gie-accent);border-color:var(--gie-accent);color:#fff;}
.btn-red:hover{background:#e35f00;border-color:#e35f00;color:#fff;transform:translateY(-1px);}
.btn-outline-light2{background:transparent;border-color:rgba(255,255,255,.48);color:#fff;}
.btn-outline-light2:hover{background:rgba(255,255,255,.12);border-color:#fff;color:#fff;}
.btn-outline-dark{background:#fff;border-color:#c9dff4;color:var(--gie-primary);}
.btn-outline-dark:hover{background:var(--gie-primary);border-color:var(--gie-primary);color:#fff;}

.quick-rate-section{padding-top:48px;}
.quick-rate-card,.content-card,.compare-card,.toc-card,.service-card,.info-card,.doc-card,.area-card{background:#fff;border:1px solid var(--gie-border);border-radius:var(--gie-radius);padding:28px;box-shadow:var(--gie-shadow);}
.quick-rate-card{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);}
.quick-rate-card p,.content-card p,.compare-card p,.service-card p,.info-card p,.doc-card p,.area-card p{font-size:16px;line-height:1.8;margin-bottom:14px;}
.content-card h3,.compare-card h3,.service-card h3,.info-card h3,.doc-card h3,.area-card h3{color:var(--gie-heading);font-size:22px;font-weight:800;line-height:1.3;margin-bottom:14px;}
.content-card ul,.compare-card ul,.service-card ul,.doc-card ul{padding-left:19px;margin-bottom:0;}
.content-card li,.compare-card li,.service-card li,.doc-card li{line-height:1.7;margin-bottom:9px;}
.check-list{list-style:none;padding-left:0!important;}
.check-list li{position:relative;padding-left:30px;border-bottom:1px solid #edf2f7;padding-top:8px;padding-bottom:9px;}
.check-list li::before{content:'✓';position:absolute;left:0;top:8px;color:var(--gie-success);font-weight:900;}
.check-list li:last-child{border-bottom:0;}
.rate-review-note{display:inline-flex;background:#eaf4ff;color:var(--gie-primary);font-weight:800;padding:9px 14px;border-radius:999px;font-size:13px!important;}

.toc-card h2{color:var(--gie-heading);font-weight:800;margin-bottom:18px;}
.toc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;}
.toc-grid a{display:block;padding:11px 14px;border:1px solid #d9e7f7;border-radius:14px;background:#f8fbff;color:var(--gie-primary);font-weight:700;}
.toc-grid a:hover{background:#eaf4ff;color:var(--gie-secondary);}

.icon-point{width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;border-radius:16px;background:#eef6ff;color:var(--gie-primary);font-size:22px;font-weight:900;margin-bottom:15px;box-shadow:inset 0 0 0 1px #d9e7f7;}
.service-card,.compare-card,.info-card,.doc-card{height:100%;}
.info-card h3{font-size:19px;}
.info-card p{font-size:15px;margin-bottom:0;}

.gie-carrier-rates-empty{padding:24px;border:1px solid #f0d6bf;border-radius:16px;background:#fff8f2;color:#6e3d17;font-weight:700;text-align:center;}

.cta-strip{border-radius:28px;padding:34px;background:linear-gradient(135deg,var(--gie-primary),var(--gie-secondary));box-shadow:var(--gie-shadow);}
.cta-strip h2{font-size:30px;font-weight:800;color:#fff;margin-bottom:10px;}
.cta-strip p{color:rgba(255,255,255,.94);line-height:1.75;}

.process-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;}
.process-card{background:#fff;border:1px solid var(--gie-border);border-radius:18px;padding:20px;box-shadow:var(--gie-shadow);}
.process-card span{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:13px;background:#eef6ff;color:var(--gie-primary);font-weight:900;margin-bottom:13px;}
.process-card h3{font-size:17px;font-weight:800;color:var(--gie-heading);line-height:1.35;margin-bottom:9px;}
.process-card p{font-size:14px;line-height:1.65;margin:0;}

.notice-card{padding:18px 20px;border:1px solid #f0d6bf;border-left:5px solid var(--gie-accent);border-radius:16px;background:#fffaf5;line-height:1.75;color:#5d472f;}
.location-pills{display:flex;flex-wrap:wrap;gap:9px;}
.location-pills span{display:inline-flex;padding:9px 13px;border-radius:999px;background:#f8fbff;border:1px solid #d9e7f7;color:var(--gie-primary);font-size:14px;font-weight:700;}

.faq-accordion{max-width:1020px;margin:0 auto;}
.faq-accordion .accordion-item{border:1px solid var(--gie-border);border-radius:16px!important;overflow:hidden;margin-bottom:12px;box-shadow:0 10px 25px rgba(16,42,67,.05);}
.faq-accordion .accordion-button{font-weight:800;color:var(--gie-heading);font-size:16px;padding:18px 20px;background:#fff;box-shadow:none;}
.faq-accordion .accordion-button:not(.collapsed){background:#f4f9ff;color:var(--gie-primary);}
.faq-accordion .accordion-body{font-size:15px;line-height:1.8;color:var(--gie-text);padding:0 20px 20px;background:#f4f9ff;}

@media (max-width:1199px){
  .process-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}

@media (max-width:991px){
  .section-space{padding:62px 0;}
  .section-title h2,.quick-rate-card h2{font-size:30px;}
  .hero-section{min-height:640px;}
  .hero-content{padding:85px 0 95px;}
  .hero-content h1{font-size:39px;}
  .toc-grid{grid-template-columns:1fr;}
  .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (max-width:767px){
  .section-space{padding:52px 0;}
  .quick-rate-section{padding-top:34px;}
  .section-title{margin-bottom:30px;}
  .section-title h2,.quick-rate-card h2{font-size:26px;}
  .hero-section{min-height:730px;align-items:flex-start;}
  .hero-content{padding:72px 0 86px;}
  .hero-content h1{font-size:31px;}
  .hero-content p{font-size:15px;line-height:1.75;}
  .hero-btns{display:grid;grid-template-columns:1fr;}
  .btn-main{width:100%;}
  .quick-rate-card,.content-card,.compare-card,.toc-card,.service-card,.info-card,.doc-card,.area-card{padding:21px;border-radius:18px;}
  .cta-strip{padding:25px;border-radius:20px;}
  .cta-strip h2{font-size:25px;}
  .process-grid{grid-template-columns:1fr;}
  .gie-breadcrumb{padding:10px 0;gap:5px;}
  .gie-breadcrumb li{font-size:12px;}
  .gie-breadcrumb li a,.gie-breadcrumb .active{padding:5px 8px;}
}
