/* ===== Houston Mobile Tire — shared styles ===== */
:root{
  --navy:#0D223F;--navy-deep:#081730;--navy-soft:#13294C;
  --red:#E63946;--red-dark:#C32430;
  --slate:#6B7280;--off:#F2F2F2;--white:#FFFFFF;--ink:#0D223F;
  --line:#e3e7ee;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:var(--white);color:#26303f;line-height:1.65;overflow-x:hidden}
h1,h2,h3,h4,.disp{font-family:'Oswald',sans-serif;text-transform:uppercase;line-height:1.04;letter-spacing:.01em;font-weight:700;color:var(--navy)}
.bebas{font-family:'Bebas Neue',sans-serif;letter-spacing:.02em}
a{color:var(--red)}
img{max-width:100%;display:block}

/* mobile sticky call */
.callbar{position:fixed;bottom:0;left:0;right:0;z-index:200;background:var(--red);display:flex;align-items:center;justify-content:center;gap:10px;padding:13px;box-shadow:0 -4px 20px rgba(0,0,0,.25)}
.callbar a{color:#fff;text-decoration:none;font-family:'Bebas Neue',sans-serif;font-size:1.7rem;letter-spacing:.04em;display:flex;align-items:center;gap:9px}
.callbar .pulse{width:10px;height:10px;border-radius:50%;background:#fff;animation:pulse 1.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.7)}70%{box-shadow:0 0 0 11px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@media(min-width:880px){.callbar{display:none}}

/* ===== HEADER (white) ===== */
.site-head{position:sticky;top:0;z-index:150;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 14px rgba(13,34,63,.06)}
.head-top{background:var(--navy);color:#cdd6e4;font-size:.82rem}
.head-top .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:7px;padding-bottom:7px;gap:14px;flex-wrap:wrap}
.head-top .ht-l{display:flex;gap:18px;flex-wrap:wrap}
.head-top .ht-l span{display:inline-flex;align-items:center;gap:6px}
.head-top .ht-l svg{width:14px;height:14px;color:var(--red)}
.head-top .ht-r{font-weight:600;color:#fff}
.head-main{display:flex;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px;gap:20px}
.head-main .logo img{height:54px;width:auto}
@media(max-width:600px){.head-main .logo img{height:42px}}
.head-nav{display:none}
@media(min-width:980px){
  .head-nav{display:flex;align-items:center;gap:28px}
  .head-nav a{color:var(--navy);text-decoration:none;font-family:'Oswald',sans-serif;font-weight:600;font-size:.96rem;text-transform:uppercase;letter-spacing:.03em;transition:color .18s;position:relative;padding:4px 0}
  .head-nav a:hover{color:var(--red)}
  .head-nav a.has::after{content:"▾";font-size:.6rem;margin-left:5px;opacity:.6}
  .drop{position:relative}
  .drop-menu{position:absolute;top:130%;left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 50px rgba(13,34,63,.18);padding:10px;min-width:230px;opacity:0;visibility:hidden;transition:.2s}
  .drop:hover .drop-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
  .drop-menu a{display:block;padding:9px 14px;border-radius:8px;font-size:.9rem}
  .drop-menu a:hover{background:var(--off);color:var(--red)}
}
.head-cta{display:none}
@media(min-width:880px){.head-cta{display:inline-flex;align-items:center;gap:9px;background:var(--red);color:#fff;text-decoration:none;font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:.03em;padding:10px 24px;border-radius:8px;transition:background .2s;white-space:nowrap}.head-cta:hover{background:var(--red-dark)}.head-cta svg{width:20px;height:20px}}

/* ===== shared layout ===== */
section{position:relative}
.wrap{max-width:1180px;margin:0 auto;padding:0 6vw}
.sec-pad{padding:80px 0}
.sec-head{text-align:center;max-width:760px;margin:0 auto 50px}
.sec-head .kick{font-family:'Oswald',sans-serif;color:var(--red);font-weight:700;letter-spacing:.2em;font-size:.85rem;text-transform:uppercase;margin-bottom:12px}
.sec-head h2{font-size:clamp(1.9rem,4.6vw,3rem);margin-bottom:14px}
.sec-head p{color:#5a667a;font-size:1.05rem}
.bg-off{background:var(--off)}
.bg-navy{background:var(--navy);color:#dbe2ee}
.bg-navy h2,.bg-navy h3{color:#fff}
.bg-navy .sec-head p{color:#b9c3d4}

/* buttons */
.btn-primary{display:inline-flex;align-items:center;gap:11px;background:var(--red);color:#fff;text-decoration:none;font-family:'Bebas Neue',sans-serif;font-size:1.85rem;letter-spacing:.03em;padding:14px 32px;border-radius:9px;box-shadow:0 8px 26px rgba(230,57,70,.32);transition:transform .15s,box-shadow .15s,background .2s}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(230,57,70,.45);background:var(--red-dark)}
.btn-primary svg{width:22px;height:22px}
.btn-ghost{display:inline-flex;align-items:center;gap:8px;color:var(--navy);text-decoration:none;font-family:'Oswald',sans-serif;font-weight:600;font-size:1.02rem;text-transform:uppercase;letter-spacing:.03em;padding:14px 22px;border:2px solid var(--navy);border-radius:9px;transition:.2s}
.btn-ghost:hover{background:var(--navy);color:#fff}
.btn-ghost.light{color:#fff;border-color:rgba(255,255,255,.5)}
.btn-ghost.light:hover{background:#fff;color:var(--navy)}

/* ===== HERO ===== */
.hero{position:relative;min-height:84vh;display:flex;align-items:center;padding:70px 6vw;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(8,23,48,.95) 0%,rgba(8,23,48,.86) 40%,rgba(8,23,48,.5) 72%,rgba(8,23,48,.3) 100%)}
.hero-inner{position:relative;z-index:2;max-width:660px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;background:rgba(230,57,70,.16);border:1px solid rgba(230,57,70,.5);color:#fff;padding:7px 15px;border-radius:40px;font-family:'Oswald',sans-serif;font-weight:600;letter-spacing:.13em;font-size:.8rem;text-transform:uppercase;margin-bottom:22px}
.eyebrow .dot{width:8px;height:8px;border-radius:50%;background:var(--red);animation:pulse 1.4s infinite}
.hero h1{font-size:clamp(2.5rem,6.2vw,4.7rem);color:#fff;margin-bottom:10px}
.hero h1 .red{color:var(--red)}
.hero .tag{font-family:'Bebas Neue',sans-serif;font-size:clamp(1.3rem,3vw,2rem);color:var(--off);letter-spacing:.04em;margin-bottom:20px}
.hero p.lede{font-size:clamp(1rem,2.1vw,1.2rem);color:#d6dce6;max-width:48ch;margin-bottom:28px}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.badge{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff;padding:8px 14px;border-radius:8px;font-family:'Oswald',sans-serif;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.03em}
.badge svg{width:17px;height:17px;color:var(--red)}
.cta-group{display:flex;flex-wrap:wrap;gap:13px;align-items:center}

/* trust strip */
.strip{background:var(--red)}
.strip .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 48px;padding-top:18px;padding-bottom:18px}
.strip .item{display:flex;align-items:center;gap:10px;color:#fff}
.strip .item svg{width:23px;height:23px}
.strip .item .t{font-family:'Oswald',sans-serif;font-weight:700;font-size:1.1rem;text-transform:uppercase;letter-spacing:.03em}

/* services grid */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.svc{background:#fff;border:1px solid var(--line);border-radius:15px;padding:30px;transition:border-color .25s,transform .25s,box-shadow .25s}
.svc:hover{border-color:var(--red);transform:translateY(-4px);box-shadow:0 16px 40px rgba(13,34,63,.1)}
.svc .ic{width:56px;height:56px;border-radius:13px;background:rgba(230,57,70,.1);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.svc .ic svg{width:29px;height:29px;color:var(--red)}
.svc h3{font-size:1.45rem;margin-bottom:8px}
.svc p{color:#5a667a;font-size:.95rem}
.svc a.more{display:inline-block;margin-top:12px;font-family:'Oswald',sans-serif;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;text-decoration:none}

/* photo cards */
.serve-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.serve-card{position:relative;border-radius:16px;overflow:hidden;min-height:300px;display:flex;align-items:flex-end;border:1px solid var(--line)}
.serve-card .bg{position:absolute;inset:0}
.serve-card .bg img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.serve-card:hover .bg img{transform:scale(1.05)}
.serve-card .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,23,48,.96) 5%,rgba(8,23,48,.45) 55%,rgba(8,23,48,.12) 100%)}
.serve-card .body{position:relative;z-index:2;padding:28px}
.serve-card h3{font-size:1.7rem;color:#fff;margin-bottom:6px}
.serve-card p{color:#cdd6e4;font-size:.95rem}

/* steps */
.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px}
.step{background:#fff;border:1px solid var(--line);border-radius:15px;padding:32px 26px;text-align:left}
.step .num{font-family:'Bebas Neue',sans-serif;font-size:3.2rem;color:var(--red);line-height:.9}
.step h3{font-size:1.4rem;margin:6px 0 9px}
.step p{color:#5a667a;font-size:.94rem}

/* tire size tables */
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#fff}
table.tires{width:100%;border-collapse:collapse;min-width:520px}
table.tires th,table.tires td{padding:13px 16px;text-align:left;border-bottom:1px solid var(--line);font-size:.93rem}
table.tires th{background:var(--navy);color:#fff;font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.85rem;position:sticky;top:0}
table.tires tr:last-child td{border-bottom:none}
table.tires tr:nth-child(even) td{background:var(--off)}
table.tires td.size{font-family:'Oswald',sans-serif;font-weight:600;color:var(--navy)}

/* chip list */
.chips{display:flex;flex-wrap:wrap;gap:9px}
.chips span{background:#fff;border:1px solid var(--line);color:var(--navy);padding:8px 15px;border-radius:30px;font-family:'Oswald',sans-serif;font-weight:600;font-size:.92rem;letter-spacing:.02em}
.bg-navy .chips span,.bg-off .chips span{background:#fff}
.bg-navy .chips span{background:var(--navy-soft);border-color:rgba(255,255,255,.14);color:#dbe2ee}

/* fleet band */
.fleet{background:linear-gradient(120deg,var(--navy-soft),var(--navy-deep));border-top:3px solid var(--red);border-bottom:3px solid var(--red);color:#dbe2ee}
.fleet .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:30px;padding-top:58px;padding-bottom:58px}
.fleet .ft{max-width:640px}
.fleet h2{color:#fff;font-size:clamp(1.8rem,4.4vw,2.8rem);margin-bottom:13px}
.fleet h2 .red{color:var(--red)}
.fleet p{color:#c8cfdb;font-size:1.04rem;margin-bottom:10px}
.fleet ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:13px}
.fleet li{display:flex;align-items:center;gap:9px;color:#dfe5ee;font-weight:600;font-size:.96rem}
.fleet li svg{width:18px;height:18px;color:var(--red);flex-shrink:0}

/* brands */
.brands{display:flex;flex-wrap:wrap;gap:14px 30px;justify-content:center;align-items:center}
.brands span{font-family:'Oswald',sans-serif;font-weight:700;font-size:1.5rem;color:var(--navy);opacity:.55;letter-spacing:.02em}

/* coverage */
.cov-tags{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:880px;margin:0 auto}
.cov-tags a{background:#fff;border:1px solid var(--line);color:var(--navy);padding:9px 18px;border-radius:40px;font-family:'Oswald',sans-serif;font-weight:600;font-size:1rem;letter-spacing:.02em;text-decoration:none;transition:.2s}
.cov-tags a:hover{background:var(--red);color:#fff;border-color:var(--red)}

/* faq */
.faq-list{max-width:820px;margin:0 auto}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 24px;margin-bottom:12px}
.faq-item h3{font-size:1.22rem;margin-bottom:7px;text-transform:none;font-family:'Oswald',sans-serif;font-weight:600}
.faq-item p{color:#5a667a;font-size:.97rem}

/* content prose (for service/city pages) */
.prose{max-width:820px;margin:0 auto}
.prose p{color:#3c4757;font-size:1.04rem;margin-bottom:18px}
.prose h2{font-size:clamp(1.6rem,4vw,2.3rem);margin:36px 0 16px}
.prose h3{font-size:1.4rem;margin:26px 0 12px}
.prose ul{margin:0 0 18px 22px;color:#3c4757}
.prose li{margin-bottom:8px}
.prose strong{color:var(--navy)}

/* final */
.final{text-align:center;padding:92px 6vw;background:radial-gradient(circle at 50% 0%,rgba(230,57,70,.16),transparent 60%),var(--navy)}
.final h2{color:#fff;font-size:clamp(2.1rem,5.6vw,3.7rem);margin-bottom:14px;max-width:18ch;margin-inline:auto}
.final h2 .red{color:var(--red)}
.final p{color:#c8cfdb;font-size:1.1rem;margin-bottom:28px;max-width:48ch;margin-inline:auto}
.final .phone{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.4rem,8vw,4rem);color:#fff;text-decoration:none;display:inline-block;margin-top:16px;letter-spacing:.03em}
.final .phone:hover{color:var(--red)}

/* footer */
footer{background:var(--navy-deep);padding:50px 6vw 110px;border-top:1px solid rgba(255,255,255,.08);color:#9aa6bd}
.foot-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr;gap:28px}}
footer .flogo img{height:64px;background:#fff;padding:8px 12px;border-radius:10px;margin-bottom:14px}
footer p{font-size:.9rem;max-width:36ch}
footer h4{color:#fff;font-size:1.05rem;margin-bottom:14px;letter-spacing:.04em}
footer .fcol a{display:block;color:#aeb9cd;text-decoration:none;font-size:.92rem;margin-bottom:9px;transition:color .18s}
footer .fcol a:hover{color:#fff}
footer .phone-lg{font-family:'Bebas Neue',sans-serif;font-size:2rem;color:#fff;text-decoration:none;letter-spacing:.03em}
.disclaimer{max-width:1180px;margin:30px auto 0;color:#56607a;font-size:.74rem;border-top:1px solid rgba(255,255,255,.08);padding-top:20px}
@media(min-width:880px){footer{padding-bottom:50px}}

*:focus-visible{outline:3px solid var(--red);outline-offset:2px;border-radius:4px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}}

/* ===== mobile menu (multi-page) ===== */
.burger{display:none;background:none;border:none;cursor:pointer;padding:6px}
.burger svg{width:30px;height:30px;color:var(--navy)}
.mobile-menu{display:none;position:fixed;inset:0;z-index:300;background:var(--navy);flex-direction:column;padding:26px 8vw;gap:2px;overflow-y:auto}
.mobile-menu.open{display:flex}
.mobile-menu .mm-close{align-self:flex-end;background:none;border:none;color:#fff;font-size:2.6rem;cursor:pointer;line-height:1;margin-bottom:6px}
.mobile-menu a{color:#fff;text-decoration:none;font-family:'Oswald',sans-serif;font-weight:600;font-size:1.25rem;text-transform:uppercase;letter-spacing:.03em;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.mobile-menu .mm-call{margin-top:20px;background:var(--red);text-align:center;border-radius:9px;border-bottom:none;font-family:'Bebas Neue',sans-serif;font-size:1.9rem;padding:14px}
@media(max-width:979px){.burger{display:block}}

/* two-column feature for service pages */
.feature-row{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
@media(max-width:820px){.feature-row{grid-template-columns:1fr;gap:26px}}
.feature-row img{border-radius:16px;width:100%;height:100%;object-fit:cover;max-height:420px}
.feature-row .ft-body h2{font-size:clamp(1.7rem,4vw,2.5rem);margin-bottom:14px}
.feature-row .ft-body p{color:#3c4757;font-size:1.04rem;margin-bottom:14px}
.feature-row .ft-body ul{margin:0 0 16px 20px;color:#3c4757}
.feature-row .ft-body li{margin-bottom:7px}

/* brand grid */
.brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.brand-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 18px;text-align:center;transition:.2s}
.brand-card:hover{border-color:var(--red);transform:translateY(-3px);box-shadow:0 12px 30px rgba(13,34,63,.1)}
.brand-card .bn{font-family:'Oswald',sans-serif;font-weight:700;font-size:1.2rem;color:var(--navy);letter-spacing:.02em}
.brand-card .bt{font-size:.8rem;color:var(--slate);margin-top:4px}

/* city quicklinks */
.city-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.city-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;text-decoration:none;transition:.2s}
.city-card:hover{border-color:var(--red);background:var(--off)}
.city-card svg{width:22px;height:22px;color:var(--red);flex-shrink:0}
.city-card span{font-family:'Oswald',sans-serif;font-weight:600;color:var(--navy);font-size:1.02rem}

/* breadcrumb */
.crumb{background:var(--off);padding:12px 0;font-size:.85rem;border-bottom:1px solid var(--line)}
.crumb a{color:var(--slate);text-decoration:none}
.crumb a:hover{color:var(--red)}
.crumb span{color:var(--navy);font-weight:600}

/* ===== text button + dual CTA ===== */
.head-actions{display:none}
@media(min-width:880px){.head-actions{display:flex;gap:8px;align-items:center}}
.head-text{display:none}
@media(min-width:880px){.head-text{display:inline-flex;align-items:center;gap:7px;background:var(--navy);color:#fff;text-decoration:none;font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:.03em;padding:10px 20px;border-radius:8px;transition:background .2s;white-space:nowrap}.head-text:hover{background:var(--navy-soft)}.head-text svg{width:19px;height:19px}}
.btn-text{display:inline-flex;align-items:center;gap:9px;background:var(--navy);color:#fff;text-decoration:none;font-family:'Bebas Neue',sans-serif;font-size:1.85rem;letter-spacing:.03em;padding:14px 32px;border-radius:9px;box-shadow:0 8px 26px rgba(13,34,63,.25);transition:transform .15s,box-shadow .15s,background .2s}
.btn-text:hover{transform:translateY(-2px);box-shadow:0 12px 34px rgba(13,34,63,.4);background:var(--navy-soft)}
.btn-text svg{width:22px;height:22px}
.btn-text.onnavy{background:#fff;color:var(--navy);box-shadow:0 8px 26px rgba(0,0,0,.25)}
.btn-text.onnavy:hover{background:var(--off)}

/* mobile call/text split bar */
.callbar{padding:0}
.callbar .cb-call,.callbar .cb-text{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 8px;text-decoration:none;font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:.03em;color:#fff}
.callbar .cb-call{background:var(--red)}
.callbar .cb-text{background:var(--navy)}
.callbar .cb-call svg,.callbar .cb-text svg{width:20px;height:20px}

/* ===== request service form ===== */
.req{background:linear-gradient(120deg,var(--navy-soft),var(--navy-deep));color:#dbe2ee}
.req .wrap{max-width:760px}
.req h2{color:#fff;text-align:center;font-size:clamp(1.9rem,4.5vw,2.8rem);margin-bottom:8px}
.req .sub{text-align:center;color:#c8cfdb;margin-bottom:30px;font-size:1.05rem}
.req form{background:#fff;border-radius:18px;padding:30px;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.req .grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:600px){.req .grid2{grid-template-columns:1fr}}
.req label{display:block;font-family:'Oswald',sans-serif;font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--navy);margin-bottom:6px}
.req input,.req select,.req textarea{width:100%;padding:13px 14px;border:1.5px solid var(--line);border-radius:9px;font-family:'Montserrat',sans-serif;font-size:1rem;color:#26303f;background:#fff;margin-bottom:16px;transition:border-color .2s}
.req input:focus,.req select:focus,.req textarea:focus{outline:none;border-color:var(--red)}
.req textarea{min-height:90px;resize:vertical}
.req .full{grid-column:1/-1}
.req button{width:100%;background:var(--red);color:#fff;border:none;cursor:pointer;font-family:'Bebas Neue',sans-serif;font-size:1.9rem;letter-spacing:.03em;padding:16px;border-radius:10px;transition:background .2s,transform .15s;box-shadow:0 8px 26px rgba(230,57,70,.32)}
.req button:hover{background:var(--red-dark);transform:translateY(-2px)}
.req .formnote{text-align:center;color:#8a93a5;font-size:.82rem;margin-top:12px}
.req .or{text-align:center;color:#fff;margin:22px 0 0;font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:.9rem}
.req .quickcall{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.form-success{display:none;background:#e8f7ee;border:1.5px solid #34c759;color:#1a7a3e;border-radius:12px;padding:20px;text-align:center;font-weight:600;margin-top:16px}
.form-success.show{display:block}

/* ===== answer box (AI/snippet optimized) ===== */
.answer-box{background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);border-radius:12px;padding:24px 26px;margin:0 auto 22px;max-width:820px;box-shadow:0 6px 20px rgba(13,34,63,.05)}
.answer-box .q{font-family:'Oswald',sans-serif;font-weight:700;color:var(--navy);font-size:1.15rem;margin-bottom:8px;display:flex;gap:9px;align-items:flex-start}
.answer-box .q::before{content:"Q";background:var(--red);color:#fff;width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}
.answer-box .a{color:#3c4757;font-size:1rem;padding-left:33px}
.answer-box .a strong{color:var(--navy)}

/* ===== comparison table ===== */
.compare{overflow-x:auto}
table.cmp{width:100%;border-collapse:collapse;min-width:560px;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 10px 30px rgba(13,34,63,.08)}
table.cmp th,table.cmp td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--line)}
table.cmp thead th{background:var(--navy);color:#fff;font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.03em;font-size:.85rem}
table.cmp thead th.us{background:var(--red)}
table.cmp td.feat{font-family:'Oswald',sans-serif;font-weight:600;color:var(--navy);font-size:.95rem}
table.cmp td.us{text-align:center;background:rgba(230,57,70,.05);font-weight:600;color:var(--navy)}
table.cmp td.them{text-align:center;color:var(--slate)}
table.cmp .yes{color:#2e9e4f;font-weight:700;font-size:1.2rem}
table.cmp .no{color:#c0392b;font-weight:700;font-size:1.2rem}
table.cmp tr:last-child td{border-bottom:none}

/* ===== reviews ===== */
.rev-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}
.rev-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 6px 20px rgba(13,34,63,.05)}
.rev-stars{color:#f5a623;font-size:1.1rem;letter-spacing:2px;margin-bottom:12px}
.rev-card p{color:#3c4757;font-style:italic;margin-bottom:16px;font-size:.98rem}
.rev-who{display:flex;align-items:center;gap:12px}
.rev-av{width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Oswald',sans-serif;font-weight:700;font-size:1.15rem}
.rev-who .rn{font-weight:700;color:var(--navy);font-size:.95rem;line-height:1.2}
.rev-who .rl{color:var(--slate);font-size:.82rem}
.rev-placeholder{background:#fff;border:2px dashed var(--line);border-radius:16px;padding:30px;text-align:center;color:var(--slate);max-width:620px;margin:20px auto 0}

/* ===== blog ===== */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.blog-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;transition:.25s;display:flex;flex-direction:column}
.blog-card:hover{border-color:var(--red);transform:translateY(-4px);box-shadow:0 16px 40px rgba(13,34,63,.1)}
.blog-card .bimg{height:170px;overflow:hidden}
.blog-card .bimg img{width:100%;height:100%;object-fit:cover}
.blog-card .bbody{padding:22px;flex:1;display:flex;flex-direction:column}
.blog-card .btag{font-family:'Oswald',sans-serif;color:var(--red);font-weight:600;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.blog-card h3{font-size:1.2rem;color:var(--navy);margin-bottom:8px;text-transform:none;font-family:'Oswald',sans-serif;font-weight:600;line-height:1.2}
.blog-card p{color:#5a667a;font-size:.9rem;flex:1}
.blog-card .bread{margin-top:12px;font-family:'Oswald',sans-serif;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--red)}
.blog-cat{font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--navy);font-size:1.5rem;margin:14px 0 18px;padding-bottom:10px;border-bottom:2px solid var(--red)}

/* ===== READABILITY FIX: force light text on all dark sections ===== */
/* Dark sections: .bg-navy, .fleet, .req, .final, .hero, .strip, .serve-card */
.bg-navy h2, .bg-navy h3, .bg-navy h4, .bg-navy .sec-head h2,
.fleet h2, .fleet h3, .fleet h4,
.req h2, .req h3,
.final h2, .final h3,
.hero h1, .hero h2, .hero h3{color:#fff}

.bg-navy .sec-head .kick,
.fleet .kick,
.req .kick{color:#ff6b78}

.bg-navy p, .bg-navy li,
.fleet p, .fleet li{color:#dbe2ee}

.bg-navy .sec-head p,
.fleet .sec-head p,
.req .sub{color:#c4ccd8}

/* serve-card text already white via gradient; ensure it stays */
.serve-card h3{color:#fff}
.serve-card p{color:#d2dae6}

/* Make sure normal (light-background) sections keep dark headings - explicit */
.sec-pad:not(.bg-navy):not(.fleet):not(.req):not(.final) .sec-head h2{color:var(--navy)}
.sec-pad:not(.bg-navy):not(.fleet):not(.req):not(.final) .sec-head p{color:#5a667a}

/* Forms inside dark req: labels stay dark (they're on white form card) - already correct */
.req form label{color:var(--navy)}

/* Comparison header readability already fine (navy/red headers, dark text in cells) */

/* honest trust band */
.trust-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px}
.trust-item{text-align:center;padding:24px}
.trust-item .ti-ic{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:var(--off);display:flex;align-items:center;justify-content:center}
.trust-item .ti-ic svg{width:30px;height:30px;color:var(--red)}
.trust-item h3{font-family:'Oswald',sans-serif;font-weight:600;color:var(--navy);font-size:1.2rem;margin-bottom:8px}
.trust-item p{color:#5a667a;font-size:.95rem}


/* case study job meta */
.job-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.job-meta .jm{background:#fff;padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.job-meta .jl{font-family:'Oswald',sans-serif;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--red)}
.job-meta .jv{font-family:'Oswald',sans-serif;font-weight:600;color:var(--navy);font-size:1.1rem}
