/* Center Hill Electric Co. — design tokens & signature "circuit trace" motif */
:root{
  --navy:#0F1B2D;
  --navy-2:#16273F;
  --navy-3:#1E3252;
  --amber:#F5A623;
  --amber-dark:#C97C0F;
  --slate:#5B6B7E;
  --cream:#F7F5EF;
  --ink:#171B21;
  --line:#26405f;
  --wire:#3A5470;
}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--ink);
  background:var(--cream);
}
.font-display{font-family:'Barlow Condensed','Inter',sans-serif;}
.font-mono{font-family:'JetBrains Mono',monospace;}

/* ---- circuit background pattern (hero / dark sections) ---- */
.circuit-bg{
  position:relative;
  background-color:var(--navy);
  background-image:
    radial-gradient(circle at 2px 2px, rgba(245,166,35,0.18) 1.5px, transparent 1.5px);
  background-size:34px 34px;
}
.circuit-bg::before{
  content:"";
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='420' height='420' viewBox='0 0 420 420'><g fill='none' stroke='%233A5470' stroke-width='1.5' opacity='0.55'><path d='M0 60 H120 V140 H260 V60 H420'/><path d='M0 220 H80 V300 H210 V220 H420'/><path d='M40 0 V40 H160 V160'/><path d='M320 0 V90 H380 V180'/><path d='M0 380 H140 V340 H300'/></g><g fill='%23F5A623' opacity='0.85'><circle cx='120' cy='60' r='4'/><circle cx='260' cy='140' r='4'/><circle cx='80' cy='220' r='4'/><circle cx='210' cy='300' r='4'/><circle cx='160' cy='40' r='4'/><circle cx='380' cy='90' r='4'/><circle cx='140' cy='380' r='4'/></g></svg>");
  background-repeat:repeat;
  opacity:.5;
  pointer-events:none;
}
.circuit-bg > *{position:relative; z-index:1;}

/* ---- wire divider between sections ---- */
.wire-divider{display:block; width:100%; height:28px;}
.wire-divider svg{width:100%; height:100%; display:block;}

/* ---- breaker-panel style trust badges ---- */
.panel-badge{
  display:flex; align-items:center; gap:.5rem;
  border:1px solid var(--wire);
  background:var(--navy-2);
  padding:.55rem .9rem;
  border-radius:2px;
}
.panel-badge .switch{
  width:10px; height:16px; border-radius:1px;
  background:var(--amber);
  box-shadow:0 0 0 2px rgba(245,166,35,.25);
}

/* ---- utility ---- */
.text-amber{color:var(--amber);}
.bg-amber{background:var(--amber);}
.border-amber{border-color:var(--amber);}
.link-underline{background-image:linear-gradient(var(--amber),var(--amber)); background-size:0% 2px; background-repeat:no-repeat; background-position:0 100%; transition:background-size .25s;}
.link-underline:hover{background-size:100% 2px;}

.skip-link{position:absolute;left:-999px;top:0;background:var(--amber);color:var(--navy);padding:.5rem 1rem;z-index:100;}
.skip-link:focus{left:1rem;top:1rem;}

a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{
  outline:3px solid var(--amber); outline-offset:2px;
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:.001ms !important; transition-duration:.001ms !important;}
}

.card-hover{transition:transform .2s ease, box-shadow .2s ease;}
.card-hover:hover{transform:translateY(-3px); box-shadow:0 12px 28px -8px rgba(15,27,45,.25);}

.faq-toggle[open] summary .chevron{transform:rotate(180deg);}
summary{list-style:none; cursor:pointer;}
summary::-webkit-details-marker{display:none;}
