/* CaliforniaLaw.com — site-specific styles. Loaded after base.css. */

/* Fonts: latin subsets declared here (no css2 round trip), both files preloaded in <head>. */
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:700;font-display:optional;src:url(https://fonts.gstatic.com/s/sourceserif4/v15/vEFF2_tTDB4M7-auWDN0ahZJW3IX2iZPwg3BucvUUvukDXr4.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400 600;font-display:optional;src:url(https://fonts.gstatic.com/s/sourcesans3/v20/nwpStKy2OAdR1K-IwhWudF-R3w8aZQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

body{font-size:clamp(1.05rem,1rem + .25vw,1.15rem)}
h1,h2,h3{font-weight:700;letter-spacing:-.01em}
a{color:var(--gold-text)}
.btn{font-weight:600;border-radius:var(--radius)}
.btn:hover{transform:none}
.btn-primary{box-shadow:none}
.btn-outline{color:var(--ink)}
.btn-outline:hover{background:var(--ink);color:#fff}

/* Header */
.site-header{background:#fff;backdrop-filter:none}
.site-header .brand img{height:34px;width:auto}
@media(min-width:600px){.site-header .brand img{height:40px}}
.nav a{color:var(--ink-2)}
.nav a:hover{color:var(--ink)}
.nav .btn-primary{white-space:nowrap}
.nav .btn{min-height:44px}
.nav-toggle{min-width:44px;min-height:44px;justify-content:center;align-items:center}

/* Hero: type only. The phone number is the one loud thing on the page. */
.hero{padding-block:clamp(2.25rem,6vw,5.5rem) clamp(2.5rem,6vw,5rem);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:960px){.hero-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start}.facts{margin-top:.6rem}}
.hero h1{font-size:clamp(2rem,1.35rem + 2.6vw,3.4rem);line-height:1.08;max-width:17ch;margin-bottom:var(--s-5)}
.hero .lede{color:var(--ink-2);max-width:48ch;margin-bottom:var(--s-6)}
.call{display:inline-block;text-decoration:none;color:var(--ink);line-height:1}
.call-label{display:block;font-size:var(--fs-md);font-weight:600;color:var(--ink-2);margin-bottom:.45em}
.call-number{display:block;font-family:var(--font-display);font-weight:700;font-size:clamp(2.5rem,1.2rem + 6vw,5.75rem);letter-spacing:-.025em;white-space:nowrap;border-bottom:4px solid var(--accent);padding-bottom:.08em}
.call:hover .call-number{border-bottom-color:var(--ink)}
.call:focus-visible{outline-offset:6px}
.hero-actions{display:flex;flex-wrap:wrap;gap:var(--s-3) var(--s-5);align-items:center;margin-top:var(--s-6)}
.hero-actions .btn{min-height:48px}
.hero-actions p{margin:0;color:var(--ink-2);font-size:var(--fs-sm)}

/* Facts beside the hero: a definition list, because these are four separate facts */
.facts{margin:0;border-top:2px solid var(--ink)}
.facts div{padding:var(--s-4) 0;border-bottom:1px solid var(--line);display:grid;gap:.15em}
.facts dt{font-size:var(--fs-sm);color:var(--ink-3)}
.facts dd{margin:0;font-weight:600}
.facts dd small{display:block;font-weight:400;color:var(--ink-2);margin-top:.2em}

/* Sections */
.section h2{font-size:clamp(1.7rem,1.3rem + 1.6vw,2.5rem)}
.section-head p{color:var(--ink-2)}

/* What happens when you call: a real sequence */
.sequence{gap:var(--s-6)}
.sequence .step h3{font-size:var(--fs-lg);margin-bottom:var(--s-2)}
.sequence .step p{color:var(--ink-2);margin:0}
.sequence .step::before{color:var(--gold-text);font-size:var(--fs-xl)}

/* Cases */
.cases{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:880px){.cases{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.cases h3.group{font-family:var(--font-body);font-size:var(--fs-md);font-weight:600;color:var(--ink-3);margin-bottom:var(--s-3)}
.list-rows li{grid-template-columns:minmax(0,1fr)}
.list-rows h4{font-family:var(--font-display);font-size:var(--fs-lg);margin:0}
.list-rows p{font-size:var(--fs-md)}

/* Fees */
.fee{display:grid;gap:var(--s-5);grid-template-columns:minmax(0,1fr)}
@media(min-width:880px){.fee{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}}
.fee .pullquote{max-width:20ch;font-size:clamp(1.6rem,1.2rem + 1.8vw,2.6rem);line-height:1.15;font-weight:700}
.fee p{color:var(--ink-2)}
.fee .pullquote{color:var(--ink)}
.nowrap,.contact-lines dd a{white-space:nowrap}

/* Contact */
.contact-grid{display:grid;gap:var(--s-7);grid-template-columns:minmax(0,1fr)}
@media(min-width:880px){.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.contact-lines{margin:0;display:grid;gap:var(--s-5)}
.contact-lines dt{font-size:var(--fs-sm);color:var(--ink-3)}
.contact-lines dd{margin:.15em 0 0;font-weight:600;font-size:var(--fs-lg)}
.contact-lines a{color:var(--ink);text-decoration-color:var(--accent);text-decoration-thickness:2px}
.form input,.form textarea{border-color:#b9c0c5;min-height:48px}
.form .btn{min-height:48px;justify-self:start}
.form-success{background:var(--bg-alt);border-color:var(--line)}

/* Footer */
.site-footer{background:var(--ink)}
.footer-name{font-family:var(--font-display);font-weight:700;font-size:var(--fs-xl);color:#fff;margin-bottom:var(--s-3)}
.site-footer a{text-decoration:underline;text-decoration-color:rgba(255,255,255,.35)}
.site-footer p{max-width:60ch}
.disclaimer{color:#aab2b8;font-size:var(--fs-xs)}
