
:root{--ink:#17313c;--navy:#12374b;--blue:#217b9b;--aqua:#dff3f2;--mist:#f2f8f7;--sand:#f3ead9;--cream:#fbfaf6;--line:#d6e2df;--white:#fff;--muted:#5f747b;--shadow:0 18px 50px rgba(19,55,75,.11)}
html{scroll-behavior:smooth}body{font-family:"DM Sans",sans-serif;background:var(--cream);color:var(--ink);font-size:16px;line-height:1.65}.wrap{width:min(1160px,calc(100% - 40px))}h1,h2,.masthead-title{font-family:"Newsreader",serif;color:var(--navy);letter-spacing:-.02em}a{color:#176d8c}.trust-strip{background:var(--navy);color:#edf9f8;font-size:.84rem;letter-spacing:.02em}.trust-strip .wrap{display:flex;justify-content:center;gap:34px;padding:8px 0}.trust-strip span{display:flex;align-items:center;gap:8px}.trust-strip i{width:5px;height:5px;background:#72d0c8;border-radius:50%}
.site-header{background:rgba(251,250,246,.96);border-bottom:1px solid var(--line);box-shadow:none;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.masthead{padding:13px 0 10px}.brand{display:flex;align-items:center;gap:15px}.brand-main{display:flex;align-items:center;gap:12px}.brand-emblem{width:86px!important;height:58px!important;object-fit:contain}.masthead-title{font-size:1.7rem;font-weight:700}.masthead-subtitle{font-size:.78rem;color:var(--muted);max-width:490px;line-height:1.35}.nav-shell{border-top:1px solid var(--line);background:transparent}.nav{min-height:52px}.menu{justify-content:center;gap:30px}.menu a{font-size:.91rem;font-weight:700;color:var(--ink);padding:15px 0;text-decoration:none}.menu a:hover,.menu a[aria-current="page"]{color:var(--blue)}
.home-hero{padding:54px 0 70px;background:linear-gradient(135deg,#f9fcfa 0%,#eef8f6 100%)}.hero-grid{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);overflow:hidden;padding:0!important;display:grid;grid-template-columns:1.05fr .95fr}.hero-grid>div{padding:64px 54px}.home-hero h1{font-size:clamp(3.1rem,5vw,5rem);line-height:.98;margin:.15em 0 .35em;max-width:760px}.standfirst{font-size:1.08rem;color:#526a72;max-width:660px}.eyebrow{color:var(--blue-dark);font-weight:800;letter-spacing:.12em}.button{border-radius:999px;background:var(--blue);border-color:var(--blue);padding:13px 20px;font-weight:700;box-shadow:none}.button:hover{background:#176783}.button.secondary{background:white;color:var(--navy)}.trust-note{color:var(--muted);font-size:.9rem}.home-start{border:0;border-radius:0;padding:50px 34px;background:linear-gradient(rgba(16,49,63,.08),rgba(16,49,63,.36)),url('assets/photos/hero-kitchen-water.jpg') center/cover;display:flex;flex-direction:column;justify-content:flex-end;min-height:540px}.home-start h2,.home-start>p{color:white;text-shadow:0 2px 12px rgba(0,0,0,.35)}.start-list a{background:rgba(255,255,255,.92);border:0;border-radius:15px;margin-top:10px;padding:16px 17px;box-shadow:0 6px 24px rgba(10,38,50,.12)}.start-list a:hover{transform:translateY(-2px)}
.safety-band{background:#fff6e7;border-block:1px solid #ead7b0;color:#5a482d}.safety-grid{padding:34px 0}.safety-band h2{color:#543e20}.section,.guidance-section,.photo-story,.well-section,.source-section,.page-photo-band{padding-block:70px}.section-head h2,.photo-story-head h2,.source-grid h2,.well-copy h2{font-size:clamp(1.6rem,2.8vw,2.45rem);line-height:1.16;font-weight:600}.guidance-grid,.card-grid,.topic-grid,.problem-grid{gap:18px}.guidance-item,.card,.topic-card,.problem-card,.quick-card,.result-card{background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 9px 28px rgba(19,55,75,.06)}.guidance-item:hover,.card:hover,.topic-card:hover,.problem-card:hover{border-color:#a8cfcc;box-shadow:0 13px 34px rgba(19,55,75,.1)}.guidance-item{border-top:1px solid var(--line);border-color:var(--line);border-radius:12px;padding:26px 28px}.guidance-item:nth-child(2),.guidance-item:nth-child(3){border-color:var(--line)}.soft,.muted-section{background:var(--mist)}.photo-story{background:white}.photo-story figure,.page-photo{border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}.photo-story img,.page-photo img{object-fit:cover}.source-section{background:#e9f4f2}.source-grid{background:white;border:1px solid var(--line);border-radius:24px;padding:38px}.drawing{border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}
.page-hero{background:linear-gradient(135deg,#e8f5f2,#f9fbf7);padding:58px 0 54px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.1rem,3.6vw,3.4rem);line-height:1.12;margin:.28em 0 .18em;font-weight:600;letter-spacing:-.012em}.page-hero p{font-size:1.12rem;color:#50676f;max-width:780px}.breadcrumbs{font-size:.82rem;color:var(--muted)}.content-grid{gap:52px}.prose{font-size:1.04rem}.prose h2{font-size:2rem;margin-top:2.1em}.prose h3{color:var(--navy)}.prose .lead{font-size:1.2rem;color:#3d5862}.notice,.callout,.warning,.tip{border-radius:16px;border:1px solid var(--line);box-shadow:none}.notice{background:#f0f8f6}.sidebar,.toc,.side-card{border-radius:18px;border:1px solid var(--line);background:#fff}.page-photo-band{background:#fff}.page-photo{max-width:920px;margin-inline:auto}.page-photo img{width:100%;max-height:580px;object-fit:cover}.finder-shell,.tool-panel{border-radius:24px;border:1px solid var(--line);box-shadow:var(--shadow)}
.site-footer{background:#0d2b3a;color:#dbe9ea;padding-top:58px}.footer-logo{max-width:300px}.footer-principle{color:white;font-family:"Newsreader",serif;font-size:1.2rem}.site-footer a{color:#cbe0e2}.site-footer p{color:#a9c0c5}.footer-bottom{border-top-color:#31505c;color:#8ca8ae}
@media(max-width:900px){.site-header{position:relative}.hero-grid{grid-template-columns:1fr}.hero-grid>div{padding:48px 34px}.home-start{min-height:440px}.masthead-subtitle{display:none}.menu{gap:16px}.content-grid{gap:30px}.trust-strip .wrap{gap:18px}.page-hero{padding-block:44px}}
@media(max-width:650px){.wrap{width:min(100% - 28px,1160px)}.trust-strip .wrap span:nth-child(3){display:flex}.trust-strip{font-size:.76rem}.site-header{position:relative}.brand-emblem{width:70px!important;height:50px!important}.masthead-title{font-size:1.4rem}.menu-button{border-radius:999px}.home-hero{padding:20px 0 42px}.hero-grid{border-radius:20px}.hero-grid>div{padding:38px 24px}.home-hero h1{font-size:3.2rem}.home-start{min-height:380px}.section,.guidance-section,.photo-story,.well-section,.source-section,.page-photo-band{padding-block:52px}.source-grid{padding:26px}.page-hero h1{font-size:2.08rem;line-height:1.15;font-weight:600}.footer-grid{gap:28px}}

/* Refined sitewide image and identity system */
.brand-emblem{width:38px!important;height:46px!important;object-fit:contain}.masthead-title{white-space:nowrap}.footer-logo{display:none}.colophon-title:before{content:"Well Water Clarity";font:700 1.65rem "Newsreader",serif;color:white}
.page-photo-band{background:transparent;padding:30px 0 0}.page-photo{width:min(100%,680px);margin-inline:auto;display:grid;grid-template-columns:minmax(220px,42%) 1fr;align-items:stretch;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(19,55,75,.08)}.page-photo img{width:100%;height:100%;min-height:230px;max-height:330px;object-fit:cover}.page-photo figcaption{padding:22px;display:flex;align-items:center}.page-photo-caption{font-size:.93rem}.page-photo-credit{display:none}body.finder-page .page-photo-band{display:none}
@media(max-width:650px){.brand-emblem{width:34px!important;height:42px!important}.page-photo-band{padding:24px 0 0}.page-photo{display:block;width:100%}.page-photo img{height:220px;min-height:0}.page-photo figcaption{padding:16px}}

/* Unified header brand lockup */
.masthead{padding:12px 0}.brand{display:inline-flex!important;align-items:center!important;gap:12px!important;width:auto!important}.brand-emblem{width:40px!important;height:48px!important;flex:none}.brand-copy{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:max-content}.masthead-title{display:block;font-family:"DM Sans",sans-serif!important;font-size:1.72rem!important;font-weight:700!important;line-height:1.05!important;letter-spacing:-.035em!important;color:var(--navy)!important;white-space:nowrap}.masthead-subtitle{display:block!important;font-family:"DM Sans",sans-serif;font-size:.75rem!important;font-weight:500;color:var(--muted);line-height:1.15!important;letter-spacing:.01em;white-space:nowrap!important;max-width:none!important}
@media(max-width:650px){.brand{gap:9px!important}.brand-emblem{width:32px!important;height:39px!important}.masthead-title{font-size:1.38rem!important}.masthead-subtitle{font-size:.64rem!important}}
.brand-logo{display:block;height:62px;width:auto;min-width:0;flex:none;object-fit:contain}@media(max-width:650px){.brand-logo{height:84px}}

/* Desktop header: brand left, navigation right */
@media(min-width:901px){.site-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:30px!important;padding:0 max(20px,calc((100vw - 1160px)/2))!important;min-height:86px!important}.site-header>.masthead{width:auto!important;max-width:none!important;margin:0!important;padding:10px 0!important;flex:none!important}.site-header>.nav-shell{width:auto!important;flex:1!important;border:0!important;background:transparent!important}.site-header>.nav-shell>.nav{width:auto!important;max-width:none!important;margin:0!important;min-height:86px!important;justify-content:flex-end!important}.site-header .menu{justify-content:flex-end!important;gap:clamp(15px,1.45vw,27px)!important;flex-wrap:nowrap!important}.site-header .menu a{white-space:nowrap!important;font-size:clamp(.78rem,.78vw,.91rem)!important;padding:29px 0!important}.brand{flex-direction:row!important;justify-content:flex-start!important;text-align:left!important}.brand-copy{align-items:flex-start!important}}

/* Tagline belongs with the trust points; the main brand stays vertically centered. */
.trust-strip .wrap{column-gap:34px!important;row-gap:2px!important;flex-wrap:wrap!important;padding:6px 0 7px!important}.brand-copy{height:48px;justify-content:center!important}
.tagline-bar{box-sizing:border-box;width:min(1160px,calc(100% - 40px));margin:0 auto;padding:12px 0 14px;text-align:center;color:var(--muted);font-size:.82rem;line-height:1.45;border-top:1px solid var(--line)}
@media(max-width:650px){.tagline-bar{font-size:.72rem;padding:10px 0 12px}}

/* Balance display copy so a final word never hangs on its own line. */
h1,h2,h3{text-wrap:balance}.home-hero h1{max-width:20ch!important;font-size:clamp(2.2rem,3.6vw,3.5rem)!important;line-height:1.15!important;font-weight:600!important;letter-spacing:-.012em!important}
@media(max-width:650px){.trust-strip .wrap{column-gap:16px!important;row-gap:3px!important}.home-hero h1{font-size:clamp(2rem,9vw,2.6rem)!important;max-width:16ch!important;line-height:1.16!important;font-weight:600!important}}

/* Keep the navigation as a compact group beside the brand. */
@media(min-width:901px){.site-header{justify-content:space-between!important;gap:clamp(26px,2.25vw,42px)!important}.site-header>.nav-shell{flex:1 1 auto!important;max-width:none!important}.site-header>.nav-shell>.nav{min-height:86px!important}.site-header .menu{gap:clamp(12px,1vw,19px)!important}.site-header .menu a{font-size:clamp(.75rem,.72vw,.84rem)!important}}

/* Colon-led page titles use two intentional lines. */
.page-hero h1 .heading-prefix{display:inline-block;white-space:nowrap}.page-hero h1 .heading-detail{display:inline-block}@media(max-width:650px){.page-hero h1 .heading-prefix{white-space:normal}}

/* Mobile brand lockup: droplet and name stay side by side. */
@media(max-width:900px){.masthead{min-height:68px!important;padding:10px 0!important}.brand{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;text-align:left!important}.brand-emblem{display:block!important;width:32px!important;height:40px!important;margin:0!important;flex:0 0 32px!important}.brand-copy{display:flex!important;height:40px!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important}.masthead-title{font-size:1.38rem!important;line-height:1!important;white-space:nowrap!important}}

/* Short desktop labels and restrained spacing keep navigation inside the content grid. */
@media(min-width:901px){.site-header{gap:28px!important}.site-header>.nav-shell{max-width:760px!important}.site-header .menu{gap:clamp(8px,.75vw,14px)!important}.site-header .menu a{font-size:.8rem!important}}

/* Desktop header scale-up: bigger logo + menu so they match the page weight. */
@media(min-width:901px){
.site-header{min-height:132px!important}.site-header>.masthead{padding:20px 0!important}
.brand-logo{height:88px!important}
.site-header>.nav-shell{max-width:none!important}.site-header>.nav-shell>.nav{min-height:132px!important}
.site-header .menu{gap:clamp(16px,1.7vw,28px)!important}
.site-header .menu a{font-size:clamp(.9rem,.95vw,.98rem)!important;line-height:1.1!important}
}

/* ---- NAV DROPDOWNS (2026-09-30) ---- */
.menu-group{position:relative}
.menu-group .menu-parent{background:none;border:0;padding:15px 0;color:var(--ink);font:inherit;font-weight:700;font-size:.91rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.menu-group .menu-parent:hover{color:var(--blue)}
.menu-group .menu-parent .caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;margin-top:2px}
.menu-group .menu-panel{position:absolute;top:100%;left:0;min-width:236px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 24px rgba(20,45,60,.12);padding:8px;display:none;z-index:40}
.menu-group:hover .menu-panel,.menu-group:focus-within .menu-panel{display:block}
.menu-group .menu-panel a{display:block;padding:10px 12px;color:var(--ink);text-decoration:none;font-weight:600;font-size:.9rem;border-radius:8px;white-space:nowrap}
.menu-group .menu-panel a:hover,.menu-group .menu-panel a[aria-current="page"]{color:var(--blue);background:#eef4f8}
.menu-group.active > .menu-parent{color:var(--blue)}
@media(max-width:900px){
  .menu-group .menu-panel{position:static;transform:none;display:block;background:none;border:0;box-shadow:none;padding:2px 0 6px 16px;min-width:0}
  .menu-group .menu-panel a{white-space:normal;padding:10px 4px}
  .menu-group .menu-parent{padding:12px 0 4px;width:100%}
}
/* ---- SITE-MAP FOOTER (2026-09-30) ---- */
.site-map{border-top:1px solid var(--line);margin-top:26px;padding-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:22px 26px}
.site-map h2{font-size:1.05rem;margin:0 0 4px;grid-column:1/-1}
.site-map h3{font-size:.95rem;margin:0 0 6px}
.site-map h3 a{color:var(--ink);text-decoration:none}
.site-map h3 a:hover{color:var(--blue)}
.site-map a{display:block;padding:3px 0;color:var(--muted);font-size:.86rem;text-decoration:none}
.site-map a:hover{color:var(--blue)}
