/* Theme toggle and alternate palette for Brightwater Plumbing, Essential.
   Generated by _design-system/builder/gallery_theme/apply.py; edit themes.py there, not this file. */
/* Theme toggle button. It inherits the header's text colour, so it reads correctly over
   footage and on solid bars alike. Hidden until the head script has set a theme (no-JS visitors
   keep the designed palette and never see a dead control). */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;margin:0;padding:0;border:1px solid color-mix(in srgb,currentColor 28%,transparent);border-radius:50%;background:transparent;color:inherit;line-height:0;cursor:pointer;transition:border-color .2s,background-color .2s}
.theme-toggle:hover{border-color:currentColor;background:color-mix(in srgb,currentColor 8%,transparent)}
.theme-toggle:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.theme-toggle .theme-toggle__icon{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle .theme-toggle__sun{display:none}
html[data-theme="dark"] .theme-toggle .theme-toggle__sun{display:block}
html[data-theme="dark"] .theme-toggle .theme-toggle__moon{display:none}
html:not([data-theme]) .theme-toggle{display:none}
@media (prefers-reduced-motion:reduce){.theme-toggle{transition:none}}
/* Toggle placement in this header. */
.site-header{grid-template-columns:auto minmax(0,1fr) auto auto minmax(0,1fr) auto}
.site-header>.brand{grid-column:1}
.site-header>.site-nav{grid-column:3}
.site-header>.theme-toggle{grid-column:4;margin-left:-14px}
.site-header>.header-phone{grid-column:6}
@media (max-width:1180px){
.site-header{grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:auto auto;row-gap:0;column-gap:10px;padding-bottom:0;min-height:0}
.site-header>.brand{grid-column:1;grid-row:1;padding-block:12px}
.site-header>.theme-toggle{grid-column:2;grid-row:1;justify-self:end;align-self:center;width:34px;height:34px;margin:0}
.site-header>.header-phone{grid-column:3;grid-row:1;justify-self:end}
.site-header>.site-nav{grid-column:1/-1;grid-row:2;justify-self:stretch;min-width:0;display:flex;flex-wrap:wrap;column-gap:14px;row-gap:2px;overflow:visible;padding:0 0 10px}
.site-header>.site-nav a{white-space:nowrap}
}
@media (max-width:420px){
.site-header>.site-nav{column-gap:6px;justify-content:space-between}
.site-header>.site-nav a{font-size:13.5px}
}
/* Alternate palette. The designed palette stays the default. */
html[data-theme="dark"]{color-scheme:dark;--bg:#0D1320;--paper:#0D1320;--surface:#121A2B;--ink:#E8EDF7;--muted:#A3AEC2;--line:#26314A;--accent:#3D6AE8;--accent-dark:#93ACF7;--accent-light:#1A2850;--accent-ink:#FFFFFF}
html[data-theme="dark"] :is(.site-top,.badge,.service-card,.job,.review,.area-list li:not(.is-home),.faq-list details,.crew-list li,.credentials .trust-list li){background:#151E31}
html[data-theme="dark"] .field :is(input,select,textarea){background:#151E31;color:var(--ink)}
html[data-theme="dark"] .area-map{background:#18233A}
html[data-theme="dark"] .skip-link{color:var(--bg)}
html[data-theme="dark"] .cta{background:#1A2540}
html[data-theme="dark"] .btn:hover{background:#2F58D0}
html[data-theme="dark"] :is(.btn--white,.job-label){color:#173FAE}
html[data-theme="dark"] :is(.promise,.guarantee){background:#1F4FD8}
html[data-theme="dark"] :is(.eyebrow,.place,.site-nav a[aria-current="page"]){color:var(--accent-dark)}
html[data-theme="dark"] :is(.promise,.guarantee) p.eyebrow{color:#C9D7FF}
