/*
Theme Name: ElectricitySuppliers Design
Theme URI: https://electricitysuppliers.com
Description: Custom Kadence child theme for ElectricitySuppliers.com. Implements the approved redesign (08 Templates/Design-Systems/electricitysuppliers/DESIGN.md): electric-blue + gold-spark + savings-green, Plus Jakarta Sans / Inter, light fintech-comparison chrome. Global nav/footer + article typography + homepage front-page.php.
Author: Jared OS
Template: kadence
Version: 1.0.0
*/

/* ============ TOKENS (global) ============ */
:root{
  --canvas:#F6F8FB; --surface:#FFFFFF; --alt:#EEF3FA;
  --ink:#0D1B2A; --soft:#4A5A6E; --muted:#8090A0;
  --blue:#1B5CFF; --blue-dk:#1247D6; --blue-tint:#E7EEFF;
  --gold:#FFB323; --gold-dk:#F59E0B;
  --green:#12B76A; --green-tint:#DEF7EC;
  --line:#E5EAF1;
  --grad:linear-gradient(135deg,#0B2A6B 0%,#1B5CFF 100%);
  --sh-sm:0 2px 8px rgba(13,27,42,.05);
  --sh:0 16px 40px -20px rgba(13,27,42,.18);
  --sh-blue:0 16px 36px -14px rgba(27,92,255,.45);
  --r:14px; --r-lg:20px;
}

/* ============ GLOBAL TYPE + CANVAS ============ */
body{font-family:'Inter',system-ui,sans-serif;background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6,.entry-title,.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4{
  font-family:'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:-.015em;color:var(--ink);
}

/* ============ BUTTONS (shared nav + homepage) ============ */
.es-home .btn,.es-nav .btn{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:15px;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;border-radius:12px;transition:transform .15s,box-shadow .2s,background .2s;text-decoration:none;line-height:1.1}
.es-home .btn-blue,.es-nav .btn-blue{background:var(--blue);color:#fff;padding:13px 22px;box-shadow:var(--sh-blue)}
.es-home .btn-blue:hover,.es-nav .btn-blue:hover{background:var(--blue-dk);transform:translateY(-2px);color:#fff}
.es-home .btn-ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:13px 22px}
.es-home .btn-ghost:hover{border-color:var(--blue);color:var(--blue)}

/* ============ LOGO LOCKUP (shared) ============ */
.es-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.es-logo-tile{width:36px;height:36px;border-radius:10px;background:var(--grad);display:grid;place-items:center;box-shadow:var(--sh-blue);flex:none}
.es-wordmark{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:18px;letter-spacing:-.02em;color:var(--ink);white-space:nowrap}
.es-wordmark .tld{font-weight:700;font-size:.72em;color:var(--blue);letter-spacing:0}

/* ============ GLOBAL NAV CHROME ============ */
.es-nav{position:sticky;top:0;z-index:120;background:rgba(246,248,251,.82);backdrop-filter:saturate(160%) blur(12px);-webkit-backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--line)}
.es-nav-in{max-width:1180px;margin:0 auto;padding:0 26px;display:flex;align-items:center;justify-content:space-between;height:72px;gap:20px}
.es-nav-links{display:flex;gap:28px;align-items:center;list-style:none;margin:0;padding:0}
.es-nav-links li{margin:0;padding:0}
.es-nav-links a{color:var(--soft);font-weight:500;font-size:15px;transition:.2s;text-decoration:none}
.es-nav-links a:hover{color:var(--ink)}
.es-nav .btn-blue{padding:11px 20px}
.es-nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--ink)}
@media(max-width:900px){
  .es-nav-links{position:absolute;top:72px;left:0;right:0;flex-direction:column;background:var(--surface);border-bottom:1px solid var(--line);padding:14px 26px;gap:14px;display:none;box-shadow:var(--sh)}
  .es-nav-links.open{display:flex}
  .es-nav-toggle{display:inline-flex}
}

/* ============ GLOBAL FOOTER CHROME ============ */
.es-foot{background:#0B2A6B;color:#C7D6FF;padding:56px 0 30px;margin-top:10px}
.es-foot-in{max-width:1180px;margin:0 auto;padding:0 26px}
.es-foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:30px;margin-bottom:36px}
.es-foot .es-wordmark{color:#fff}
.es-foot .es-wordmark .tld{color:var(--gold)}
.es-foot h5{font-family:'Plus Jakarta Sans',sans-serif;color:#fff;font-size:14px;margin:0 0 14px 0}
.es-foot a{display:block;color:#9DB2E8;font-size:14px;margin-bottom:9px;transition:.2s;text-decoration:none}
.es-foot a:hover{color:#fff}
.es-foot-brand p{font-size:14px;color:#9DB2E8;max-width:280px;margin-top:13px}
.es-foot-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:22px;font-size:12.5px;color:#7E94CC;line-height:1.7}
@media(max-width:900px){.es-foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.es-foot-grid{grid-template-columns:1fr}}

/* ============ ARTICLE / SINGLE + PAGE TYPOGRAPHY ============ */
.single .entry-content,
.single .content-container .entry-content,
.page:not(.home) .entry-content{
  max-width:720px;margin-left:auto;margin-right:auto;
  font-family:'Inter',system-ui,sans-serif;font-size:17px;line-height:1.7;color:var(--soft);
}
.single .entry-content p{margin:0 0 1.15em 0;color:var(--soft)}
.single .entry-title,.single .entry-header .entry-title{font-family:'Plus Jakarta Sans',sans-serif;color:var(--ink)}
.single .entry-content h2,.page:not(.home) .entry-content h2{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:1.7em;color:var(--ink);margin:1.6em 0 .5em;letter-spacing:-.015em}
.single .entry-content h3,.page:not(.home) .entry-content h3{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.3em;color:var(--ink);margin:1.3em 0 .4em}
.single .entry-content a:not(.btn):not([style]){color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.single .entry-content ul,.single .entry-content ol{color:var(--soft);margin:0 0 1.2em 1.1em;line-height:1.7}
.single .entry-content li{margin-bottom:.5em}
.single .entry-content strong{color:var(--ink)}
.single .entry-content blockquote{border-left:4px solid var(--blue);background:var(--blue-tint);padding:16px 22px;border-radius:0 12px 12px 0;margin:1.6em 0;color:var(--ink)}

/* Styled rate / comparison tables inside articles */
.single .entry-content table,.page:not(.home) .entry-content table{
  width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;
  margin:1.8em 0;font-size:15.5px;background:var(--surface);box-shadow:var(--sh-sm)
}
.single .entry-content thead th,.single .entry-content table tr:first-child th,
.page:not(.home) .entry-content thead th{
  background:var(--blue-tint);color:var(--ink);font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;
  text-align:left;padding:13px 16px;font-size:14.5px;border-bottom:1px solid var(--line)
}
.single .entry-content td,.page:not(.home) .entry-content td{padding:12px 16px;border-bottom:1px solid var(--line);color:var(--soft);vertical-align:top}
.single .entry-content tbody tr:nth-child(even),.page:not(.home) .entry-content tbody tr:nth-child(even){background:var(--canvas)}
.single .entry-content tbody tr:last-child td{border-bottom:none}
/* right-align numeric rate columns when marked */
.single .entry-content td.rate,.single .entry-content th.rate{text-align:right;font-variant-numeric:tabular-nums}
/* green "best value" badge helper */
.single .entry-content .best-value,.single .entry-content td .badge-best{display:inline-block;background:var(--green-tint);color:var(--green);font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:12px;padding:3px 9px;border-radius:999px;margin-left:6px}
.single .entry-content tr.best-value td{background:var(--green-tint) !important}

/* Callout helper class (for future on-system callouts; legacy inline-styled callouts unaffected) */
.single .entry-content .es-callout{background:var(--blue-tint);border-left:4px solid var(--blue);border-radius:0 12px 12px 0;padding:18px 22px;margin:1.6em 0;color:var(--ink)}

/* Related-guide cards */
.es-related{max-width:720px;margin:40px auto 0;border-top:1px solid var(--line);padding-top:28px}
.es-related h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:18px;margin:0 0 16px}
.es-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.es-related-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--sh-sm);transition:.2s;text-decoration:none;display:block}
.es-related-card:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.single .entry-content a.es-related-card,.single .entry-content a.es-related-card:hover{text-decoration:none}
.es-related-card .chip{display:inline-block;background:var(--blue-tint);color:var(--blue);font-weight:600;font-size:11px;padding:3px 9px;border-radius:999px;margin-bottom:8px}
.es-related-card h4{font-family:'Plus Jakarta Sans',sans-serif;font-size:15px;color:var(--ink);margin:0;line-height:1.35}

/* ============ STANDARD FIXES ============ */
input,textarea,select{font-size:16px}
.wp-block-button__link,.kb-button{min-height:44px}
body{overflow-x:hidden}
/* Hide leftover Kadence site title text if it ever renders */
.site-title,.site-tagline,.site-branding-text{display:none !important}
p:has(a[href*="kadencewp.com"]){display:none !important}
