/* ==========================================================================
   Tekify 2026 redesign — shared stylesheet (chrome + page components)
   Loaded AFTER the legacy theme CSS. Page components are scoped under
   .site-main so they cannot clobber legacy Bootstrap pages that lack it.
   ========================================================================== */
:root{
  --t-blue:#1d59a3; --t-blue-d:#15487f; --t-blue-dd:#0e3360;
  --t-cta:#ffb000; --t-cta-d:#e89e00; --t-gain:#1ea672; --t-gain-l:#e2f5ec;
  --t-ink:#15212e; --t-slate:#5a6a7b; --t-line:#e5eaf1; --t-bg:#f4f7fb;
}

/* ---- base (global, intentionally light-touch) ---- */
body.t26{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--t-ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;}
body.t26 a{color:inherit;text-decoration:none;}

/* ---- header / navbar ---- */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(21,72,127,.97);backdrop-filter:blur(6px);font-family:Inter,sans-serif;}
.site-header .site-nav{max-width:1140px;margin:0 auto;padding:0 22px;display:flex;align-items:center;justify-content:space-between;height:74px;}
.site-header .nav-left{display:flex;align-items:center;gap:18px;}
.site-header .logo img{height:50px;display:block;}
.site-header .hstatus{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);color:#eaf2fb;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:30px;white-space:nowrap;}
.site-header .hstatus:hover{background:rgba(255,255,255,.16);}
.site-header .hstatus .dot{width:8px;height:8px;border-radius:50%;background:#43d39a;animation:t-opulse 1.8s infinite;}
@keyframes t-opulse{0%{box-shadow:0 0 0 0 rgba(67,211,154,.55);}70%{box-shadow:0 0 0 6px rgba(67,211,154,0);}100%{box-shadow:0 0 0 0 rgba(67,211,154,0);}}
.site-header .links{display:flex;align-items:center;gap:20px;}
.site-header .links a{color:#dce6f3;font-weight:600;font-size:14px;line-height:1;}
.site-header .links a:hover,.site-header .links a.active{color:#fff;}
.site-header .links a.phone{color:#fff;} .site-header .links a.phone i{color:var(--t-cta);}
.site-header .links a.cta{background:var(--t-cta);color:#1c1300;font-weight:800;font-size:13.5px;padding:10px 16px;border-radius:8px;}
.site-header .links a.cta:hover{background:var(--t-cta-d);color:#1c1300;}
.site-header .burger{display:none;background:none;border:0;color:#fff;font-size:22px;cursor:pointer;}
@media(max-width:980px){
  .site-header .hstatus{display:none;}
  .site-header .links{position:absolute;top:74px;left:0;right:0;background:var(--t-blue-dd);flex-direction:column;align-items:stretch;gap:0;padding:8px 0;display:none;}
  .site-header.open .links{display:flex;}
  .site-header .links a{padding:13px 22px;}
  .site-header .links a.cta{margin:8px 22px;text-align:center;}
  .site-header .burger{display:block;}
}

/* ---- page hero (interior pages) ---- */
.site-main .phero{position:relative;color:#fff;padding:54px 0;background-color:#0e3360;
  background-image:linear-gradient(120deg,rgba(14,51,96,.93) 30%,rgba(21,72,127,.82) 65%,rgba(29,89,163,.55)),url('../images/landing_bg.png');
  background-size:cover;background-position:center;background-repeat:no-repeat;font-family:Inter,sans-serif;}
.site-main .phero .wrap{max-width:1080px;margin:0 auto;padding:0 22px;}
.site-main .phero .crumbs{font-size:13px;color:#aecbe8;margin-bottom:12px;}
.site-main .phero .crumbs a:hover{color:#fff;}
.site-main .phero h1{font-family:'Plus Jakarta Sans',sans-serif;font-size:36px;font-weight:800;letter-spacing:-.02em;margin:0 0 10px;}
.site-main .phero p{color:#cfe0f2;font-size:17px;max-width:680px;margin:0;}
@media(max-width:600px){.site-main .phero h1{font-size:28px;}}

/* ---- page content scope ---- */
.site-main{font-family:Inter,sans-serif;color:var(--t-ink);}
/* Design tokens for ported page bodies: the page templates (from the sample
   mockups) reference unprefixed var names in inline styles. Define them here,
   scoped to .site-main so they inherit to all page content (incl. .phero)
   without leaking to legacy Bootstrap pages that have no .site-main. */
.site-main{
  --blue:#1d59a3; --blue-d:#15487f; --blue-dd:#0e3360;
  --cta:#ffb000; --cta-d:#e89e00; --gain:#1ea672; --gain-l:#e2f5ec;
  --ink:#15212e; --slate:#5a6a7b; --line:#e5eaf1; --bg:#f4f7fb;
}
.site-main .wrap{max-width:1080px;margin:0 auto;padding:0 22px;}
.site-main h1,.site-main h2,.site-main h3,.site-main h4{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.02em;margin:0;}
.site-main .band{padding:54px 0;}
.site-main .band.grey{background:var(--t-bg);}
.site-main h2.sec{font-size:26px;font-weight:800;margin:0 0 8px;text-align:center;}
.site-main p.secsub{text-align:center;color:var(--t-slate);max-width:640px;margin:6px auto 30px;}
.site-main .lead{font-size:17px;color:var(--t-slate);}
.site-main .card{background:#fff;border:1px solid var(--t-line);border-radius:14px;padding:24px;}
.site-main .grid2{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;}
.site-main .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.site-main .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
@media(max-width:820px){.site-main .grid2,.site-main .grid3,.site-main .grid4{grid-template-columns:1fr;}}
.site-main ul.checks{list-style:none;padding:0;margin:14px 0 0;}
.site-main ul.checks li{padding:6px 0 6px 26px;position:relative;font-size:14px;}
.site-main ul.checks li:before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;color:var(--t-gain);position:absolute;left:0;font-size:12px;}
.site-main .ic{width:48px;height:48px;border-radius:12px;background:#eef4fc;color:var(--t-blue);display:flex;align-items:center;justify-content:center;font-size:21px;margin-bottom:12px;}
.site-main .note{font-size:12px;color:#9aa7b5;}

/* buttons */
.site-main .btn-cta,.site-header .links a.cta{font-family:Inter,sans-serif;}
.site-main .btn-cta{display:inline-flex;align-items:center;gap:8px;background:var(--t-cta);color:#1c1300;font-weight:800;font-size:15px;border:0;border-radius:9px;padding:13px 22px;cursor:pointer;}
.site-main .btn-cta:hover{background:var(--t-cta-d);}
.site-main .btn-blue{display:inline-flex;align-items:center;gap:8px;background:var(--t-blue);color:#fff;font-weight:800;font-size:15px;border:0;border-radius:9px;padding:13px 22px;cursor:pointer;}
.site-main .btn-ghost{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--t-line);color:var(--t-ink);font-weight:700;font-size:14px;border-radius:9px;padding:12px 18px;cursor:pointer;}

/* plan cards */
.site-main .plan{background:#fff;border:1px solid var(--t-line);border-radius:16px;padding:26px;text-align:center;position:relative;}
.site-main .plan.pop{border:2px solid var(--t-blue);box-shadow:0 20px 50px -30px rgba(15,47,83,.5);}
.site-main .plan .tag{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--t-blue);color:#fff;font-size:11px;font-weight:800;padding:4px 12px;border-radius:20px;}
.site-main .plan .spd{font-family:'Plus Jakarta Sans';font-size:40px;font-weight:800;color:var(--t-blue);}
.site-main .plan .spd small{font-size:16px;color:var(--t-slate);font-weight:600;}
.site-main .plan .mt{font-size:13px;color:var(--t-slate);}
.site-main .plan ul.checks{text-align:left;display:inline-block;margin-top:16px;}
.site-main .plan .price{font-size:13px;color:var(--t-slate);margin-top:14px;}
.site-main .plan .price b{font-family:'Plus Jakarta Sans';font-size:22px;color:var(--t-ink);}

/* cta band */
.site-main .cta2{background:linear-gradient(135deg,var(--t-blue),var(--t-blue-d));color:#fff;text-align:center;border-radius:18px;padding:46px 22px;}
.site-main .cta2 h2{font-size:28px;font-weight:800;margin:0 0 10px;color:#fff;}
.site-main .cta2 p{color:#cfe0f2;margin:0 0 20px;}
.site-main .cta2 a{display:inline-block;background:var(--t-cta);color:#1c1300;font-weight:800;padding:14px 26px;border-radius:9px;}

/* faq group label + accordion */
.site-main .faqgroup{font-family:'Plus Jakarta Sans',sans-serif;font-size:27px;font-weight:800;letter-spacing:-.01em;text-transform:none;color:var(--ink);margin:40px 0 18px;}
.site-main .faq{border-radius:12px;overflow:hidden;margin-bottom:10px;background:#eef3fa;}
.site-main .faq button{width:100%;margin:0;text-align:left;background:#eef3fa;border:0;border-radius:12px;padding:17px 20px;font-family:'Plus Jakarta Sans';font-weight:700;font-size:16px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--t-ink);transition:background .15s,color .15s;box-sizing:border-box;}
.site-main .faq button:hover{background:#e2ebf8;color:var(--t-blue);}
.site-main .faq button:hover,.site-main .faq button:focus,.site-main .faq button:focus-visible,.site-main .faq button:active{outline:none !important;box-shadow:none !important;border:0 !important;}
.site-main .faq.open button{background:#e6eefb;color:var(--t-blue);border-radius:12px 12px 0 0;}
.site-main .faq .a{display:none;padding:16px 20px 18px;color:var(--t-slate);font-size:15px;background:#fff;}
.site-main .faq.open .a{display:block;}
.site-main .faq button i{flex:none;color:var(--t-blue);font-size:15px;transition:transform .2s;}
.site-main .faq.open button i{transform:rotate(180deg);}

/* forms */
.site-main .field2{margin-bottom:14px;}
.site-main .field2 label{display:block;font-size:13px;font-weight:600;margin-bottom:5px;}
.site-main .field2 input,.site-main .field2 textarea,.site-main .field2 select{width:100%;padding:12px 13px;border:1.5px solid var(--t-line);border-radius:9px;font-size:14px;font-family:inherit;}
.site-main .field2 input:focus,.site-main .field2 textarea:focus{outline:none;border-color:var(--t-blue);}
.site-main .formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;} @media(max-width:600px){.site-main .formgrid{grid-template-columns:1fr;}}
.site-main .full{grid-column:1/-1;}

/* tables */
.site-main table{width:100%;border-collapse:collapse;font-size:14px;}
.site-main th{text-align:left;color:var(--t-slate);font-size:12px;text-transform:uppercase;letter-spacing:.03em;padding:0 12px 10px;}
.site-main td{padding:12px;border-top:1px solid var(--t-line);}

/* ---- expandable detail panels (business plans + deep-dive) ---- */
.site-main .expand-toggle{text-align:center;margin:30px auto 0;max-width:fit-content;}
.site-main .expand-link{color:var(--blue);font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:11px;padding:13px 30px;border-radius:50px;border:2px solid transparent;background-image:linear-gradient(#fff,#fff),linear-gradient(135deg,var(--blue),var(--gain));background-origin:border-box;background-clip:padding-box,border-box;box-shadow:0 10px 20px rgba(29,89,163,.12);transition:transform .2s;animation:t-pulse-glow 3s infinite;}
.site-main .expand-link:hover{transform:translateY(-2px);}
.site-main .expand-link i{transition:transform .25s;}
@keyframes t-pulse-glow{0%{box-shadow:0 0 0 0 rgba(29,89,163,.4);}70%{box-shadow:0 0 0 14px rgba(29,89,163,0);}100%{box-shadow:0 0 0 0 rgba(29,89,163,0);}}
.site-main .expand-content{max-height:0;overflow:hidden;transition:max-height .8s cubic-bezier(.4,0,.2,1);background:#fff;border-radius:16px;opacity:0;transform:translateY(10px);}
.site-main .expand-content.open{max-height:2000px;border:1px solid var(--line);padding:26px;margin-top:20px;opacity:1;transform:translateY(0);box-shadow:0 30px 60px rgba(15,47,83,.08);}
.site-main .tech-data-table{width:100%;border-collapse:collapse;}
.site-main .tech-data-table th{text-align:left;padding:12px 14px;background:#eef3fa;color:var(--ink);font-size:12.5px;letter-spacing:.02em;text-transform:none;border-bottom:1px solid var(--line);}
.site-main .tech-data-table td{padding:14px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:top;color:var(--ink);}
.site-main .tech-data-table td:first-child{font-weight:700;color:var(--blue);width:32%;}

/* ---- speed-race comparison ("Tekify is FASTER") ---- */
.site-main .speed-track{background:#eef2f7;height:30px;border-radius:15px;margin:10px 0;position:relative;overflow:hidden;border:1px solid var(--line);}
.site-main .speed-bar{height:100%;width:0%;transition:width .1s linear;border-radius:15px;}
.site-main .tekify-bar{background:linear-gradient(135deg,var(--blue),var(--gain));}
.site-main .cable-bar{background:#94a3b8;}
.site-main .cellular-bar{background:#f43f5e;}
.site-main .speed-row{display:flex;justify-content:space-between;font-weight:700;font-size:14px;gap:12px;}

/* ---- footer ---- */
.site-footer{background:#07182e;color:#9fb6cf;font-size:13.5px;font-family:Inter,sans-serif;}
.site-footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px;padding:48px 22px 26px;max-width:1140px;margin:0 auto;}
@media(max-width:760px){.site-footer .cols{grid-template-columns:1fr 1fr;}}
.site-footer img{height:46px;margin-bottom:14px;}
.site-footer h4{color:#fff;font-size:12px;letter-spacing:.05em;text-transform:uppercase;margin:0 0 12px;font-family:'Plus Jakarta Sans';}
.site-footer a{display:block;color:#9fb6cf;margin-bottom:7px;}
.site-footer a:hover{color:#fff;}
.site-footer .bottom{border-top:1px solid rgba(255,255,255,.1);text-align:center;padding:16px;color:#7e95ae;font-size:12.5px;max-width:1140px;margin:0 auto;}
.site-footer .social a{display:inline;margin:0 8px;font-size:16px;}
