/* MicroHom style layer, Oct 17 2026: USWDS conventions (public domain, designsystem.digital.gov) on the California navy/gold palette.
   MicroHom is an independent project, not a government website: no .gov banner, seals or state logos are used. */
@font-face{font-family:"Public Sans";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/public-sans-latin-wght-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/public-sans-latin-wght-italic.woff2) format("woff2")}
@font-face{font-family:"Merriweather";font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/merriweather-latin-wght-normal.woff2) format("woff2")}
:root{
 --sans:"Public Sans",-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
 --serif:"Merriweather",Georgia,Cambria,"Times New Roman",serif;
 --mh-navy:#035376;--mh-navy-deep:#023a53;--mh-blue:#046b99;--mh-blue-dark:#035d85;--mh-gold:#fdb81e;--mh-gold-deep:#e4a317;
 --mh-ink:#1b1b1b;--mh-text:#3d4551;--mh-muted:#565c65;--mh-line:#dfe1e2;--mh-line-strong:#a9aeb1;--mh-surface:#f9f9f9;--mh-paper:#fff;--mh-mist:#eef8fb;
 --mh-focus:#2491ff;
 /* USWDS spacing units (8px base) */
 --u1:.5rem;--u2:1rem;--u3:1.5rem;--u4:2rem;--u5:2.5rem;--u6:3rem;--u8:4rem;
 /* blueprint grid */
 --grid-minor:rgba(3,83,118,.045);--grid-major:rgba(3,83,118,.09);
 --grid-minor-dark:rgba(255,255,255,.05);--grid-major-dark:rgba(255,255,255,.10);
}
/* Typography: USWDS type scale (sm 16/17, lg 22, xl 32, 2xl 40) */
html{-webkit-text-size-adjust:100%}
body,button,input,select,textarea{font-family:var(--sans)!important}
body{font-size:1.0625rem;line-height:1.55;color:var(--mh-text);background:var(--mh-surface)}
h1,h2,.market h1,.gsec h2,.sw h1,.hero h1{font-family:var(--serif)!important;color:var(--mh-ink);letter-spacing:-.01em;font-weight:700}
h3,h4,.path h3{font-family:var(--sans)!important;font-weight:700}
.market h1,.sw h1,.hero h1{font-size:clamp(1.85rem,1.2rem + 2.2vw,2.5rem)!important;line-height:1.2!important}
h2,.gsec h2{font-size:clamp(1.4rem,1.1rem + 1vw,1.95rem)!important;line-height:1.25}
.lede{font-size:1.25rem;line-height:1.5;color:var(--mh-muted);max-width:44rem}
p{max-width:68ch}
.kick,.eyebrow{font-family:var(--sans)!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.875rem}
a{color:var(--mh-blue);text-underline-offset:.15em}
/* Focus: USWDS 0.25rem focus ring */
:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:.25rem solid var(--mh-focus)!important;outline-offset:0!important}
.gbar :focus-visible,.disclaimer :focus-visible{outline-color:#85cbf9!important}
/* Banner (independent-project notice, styled like the USWDS banner, NOT the official .gov banner) */
.gbar{background:var(--mh-navy-deep);font-size:.9375rem}
.disclaimer{background:var(--mh-navy);font-size:.875rem;letter-spacing:.01em;padding:.5rem 1rem}
/* Header / nav */
.site-nav{border-bottom:1px solid var(--mh-line);padding:.75rem clamp(1rem,4vw,4rem);gap:.25rem 1.25rem;min-height:4rem;box-sizing:border-box}
.site-nav a{color:var(--mh-blue);font-weight:600;font-size:1rem;padding:.5rem 0;border-bottom:.25rem solid transparent}
.site-nav a:hover{color:var(--mh-navy);border-bottom-color:var(--mh-gold)}
.site-nav a[aria-current=page]{border-bottom-color:var(--mh-blue)}
.site-nav a.nav-brand{border-bottom:0;display:inline-flex;align-items:center;gap:.55rem;padding:0;margin-right:.75rem}
.site-nav a.nav-brand:before{content:"";width:2.25rem;height:2.25rem;flex:none;background:url(/brand/microhom-mark.svg) center/contain no-repeat}
.nav-brand .wordmark{font-family:var(--sans)!important;font-weight:800;font-size:1.3rem;letter-spacing:-.02em;color:var(--mh-navy)}
.nav-brand .wordmark em{font-style:normal;color:var(--mh-blue);font-weight:400}
/* Buttons: USWDS .usa-button shape */
.btn,.nav-signin,.hero-form .btn,.find-search .btn,.gbar .gact a,.cta a,.invite-banner a{border-radius:.25rem!important;font-weight:700!important;line-height:1.1}
.btn,.hero-form .btn,.find-search .btn,.cta .p{background:var(--mh-blue);color:#fff;padding:.75rem 1.25rem;border:0}
.btn:hover,.hero-form .btn:hover,.cta .p:hover{background:var(--mh-blue-dark)}
.btn:active{background:var(--mh-navy-deep)}
.nav-signin{border:2px solid var(--mh-blue)!important;padding:.55rem 1rem!important;border-bottom-width:2px!important}
.nav-signin:hover{background:var(--mh-blue);color:#fff!important}
.gbar .gact .join{background:var(--mh-gold);color:var(--mh-ink)}
.chip{border-radius:.25rem!important;font-weight:600}
/* Forms: USWDS inputs */
.hero-form,.find-search{border-radius:.25rem!important;border:1px solid var(--mh-muted)!important;box-shadow:none!important;background:#fff}
input[type=text],input[type=search],input[type=email],input[type=tel],select,textarea,.field input,.field select{border-radius:0!important;border:1px solid var(--mh-muted)!important;min-height:2.5rem;font-size:1.0625rem}
/* Cards: USWDS card (1px base-lighter border, 0.25rem radius) */
.info-card,.result-card,.profile-card,.program-card,.pro-card,.site-card,.finding-card,.ask-card,.invite-panel,.nearby-card,.path li,.eco a,.eco button,.sup,.note,.mt-note{border-radius:.25rem!important;border:1px solid var(--mh-line)!important;box-shadow:none}
.path li{border-top:.5rem solid var(--mh-navy)!important}
.path li:last-child{border-top-color:var(--mh-gold)!important}
.info-card:hover,.result-card:hover,.program-card:hover,.eco a:hover,.eco button:hover,.sup:hover{border-color:var(--mh-line-strong)!important;box-shadow:0 1px 4px rgba(0,0,0,.12)}
.photo img,.info-card .photo img,.hero img{border-radius:.25rem!important}
/* Blueprint grid: 8px minor / 64px major, static (no motion) */
.bp-grid,.hero-search,.gsec,.sw,.hero,.globe-band,.brand-hero{
 background-image:
  linear-gradient(var(--grid-major) 1px,transparent 1px),
  linear-gradient(90deg,var(--grid-major) 1px,transparent 1px),
  linear-gradient(var(--grid-minor) 1px,transparent 1px),
  linear-gradient(90deg,var(--grid-minor) 1px,transparent 1px);
 background-size:64px 64px,64px 64px,8px 8px,8px 8px;background-position:-1px -1px}
.gbar,.disclaimer{
 background-image:linear-gradient(var(--grid-major-dark) 1px,transparent 1px),linear-gradient(90deg,var(--grid-major-dark) 1px,transparent 1px),linear-gradient(var(--grid-minor-dark) 1px,transparent 1px),linear-gradient(90deg,var(--grid-minor-dark) 1px,transparent 1px);
 background-size:64px 64px,64px 64px,8px 8px,8px 8px}
.hero-search{max-width:none!important;padding-left:max(clamp(1rem,4vw,4rem),calc((100% - 1120px)/2))!important;padding-right:max(clamp(1rem,4vw,4rem),calc((100% - 1120px)/2))!important}
.gsec,.sw{max-width:none!important;padding-left:max(1rem,calc((100% - 70rem)/2))!important;padding-right:max(1rem,calc((100% - 70rem)/2))!important}
.globe-band{background-color:var(--mh-mist)}
/* Cards and text sit on solid surfaces so the grid never sits behind body text */
.path li,.eco a,.eco button,.sup,.note,.invite-panel,.hero-form{background-color:#fff}
.site-footer{border-top:.25rem solid var(--mh-navy)}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (prefers-contrast:more),(forced-colors:active){.bp-grid,.hero-search,.gsec,.sw,.hero,.globe-band,.brand-hero,.gbar,.disclaimer{background-image:none!important}}
@media print{.bp-grid,.hero-search,.gsec,.sw,.hero,.globe-band,.gbar,.disclaimer{background-image:none!important}}
.nav-brand .wordmark{gap:0!important;display:inline-flex}
@media (max-width:720px){.site-nav{gap:0 1rem;padding:.5rem 1rem}.site-nav a{padding:.35rem 0;font-size:.95rem}.site-nav a.nav-brand{width:100%;margin:0 0 .15rem}.gbar{gap:.3rem .75rem}}
