/* Service guides · page-specific rules only.
   Tokens, nav, footer, .btn, .faq, .filmplate, .press and .hero-actions come from /assets/site.css (the home bundle). */
.guide{--guide-top:100px}
.guide-top{padding:clamp(14px,2.2vw,30px) 0 clamp(52px,6.5vw,104px)}
.journey-nav a[aria-current="page"]{color:var(--fg)}
.breadcrumb{display:flex;align-items:baseline;gap:12px;font-size:12px;line-height:1.6;color:var(--muted)}
.breadcrumb a{flex-shrink:0;transition:color .3s var(--ease)}.breadcrumb a:hover{color:var(--fg)}
.breadcrumb>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guide-hero{display:grid;grid-template-columns:1fr;gap:clamp(28px,4vw,58px);align-items:center;margin-top:clamp(34px,5vw,70px)}
.guide-copy{min-width:0}
.guide-hero h1{font-size:clamp(44px,5.6vw,84px);font-weight:600;line-height:1.02;letter-spacing:-.06em;text-wrap:balance}
.guide-hero .intro{max-width:38ch;font-size:clamp(18px,1.6vw,22px);line-height:1.55;letter-spacing:-.02em;color:var(--muted);margin-top:28px;text-wrap:pretty}
.guide-hero .text-links{margin-top:26px}
.filmplate.device,.filmplate.site{aspect-ratio:4/5}
.filmplate.device{background:var(--panel-2);box-shadow:var(--panel-shadow)}
.filmplate.device .inner{display:grid;place-items:center;padding:10% 7% 20%}
.filmplate.device img{width:100%;height:auto;object-fit:contain;filter:var(--dev-shadow)}
.filmplate.site img{object-position:top left}
.filmplate .cap>span:only-child{flex:1}
/* State picker: the primary action on /service-areas, lifted into the hero column. */
.state-picker{padding:clamp(24px,2.6vw,34px);border-radius:var(--r);background:var(--panel);box-shadow:var(--panel-shadow)}
.state-picker.hero-card{width:min(100%,440px);justify-self:end}
.state-picker label{display:block;font-size:19px;font-weight:550;letter-spacing:-.025em;line-height:1.3;margin-bottom:16px}
.state-picker>div{display:grid;gap:12px}
.state-picker select{min-width:0;width:100%;min-height:54px;padding:12px 44px 12px 16px;border:1px solid var(--line-2);border-radius:14px;background:var(--field) url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239A9AA0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center/16px;color:var(--fg);font:inherit;font-size:16px;letter-spacing:-.01em;appearance:none;-webkit-appearance:none;cursor:pointer;transition:border-color .3s var(--ease)}
.state-picker select:hover{border-color:var(--line-3)}
.state-picker select:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.state-picker .btn{width:100%}
.picker-note{font-size:13px;line-height:1.6;color:var(--dim);margin-top:14px;text-wrap:pretty}
/* Body: sticky outline + article. */
.guide-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(40px,6vw,90px);align-items:start;border-top:1px solid var(--line);padding-top:clamp(40px,4.5vw,64px)}
.guide-layout aside{position:sticky;top:var(--guide-top);font-size:14px;line-height:1.5}
.guide-layout aside nav>p{margin-bottom:14px}
.guide-layout aside nav a{display:block;padding:8px 0;color:var(--fg-2);transition:color .3s var(--ease),transform .4s var(--ease)}
.guide-layout aside nav a:hover{color:var(--acc-text);transform:translateX(4px)}
.byline{color:var(--dim);font-size:12px;margin-top:28px;line-height:1.8}
.guide-layout article{min-width:0}
.guide-section{padding-bottom:clamp(44px,5vw,64px);scroll-margin-top:var(--guide-top)}
.guide-section h2{font-size:clamp(28px,2.8vw,38px);line-height:1.12;letter-spacing:-.04em;font-weight:600;text-wrap:balance}
.guide-section>p,.checklist{font-size:17px;line-height:1.8;color:var(--muted);margin-top:22px;max-width:70ch;text-wrap:pretty}
.guide-section>p+p{margin-top:16px}
.checklist{padding-inline-start:22px}.checklist li{padding-inline-start:6px;margin-bottom:12px}.checklist li::marker{color:var(--acc)}
.text-links{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:22px;font-size:15px}
.text-links a{color:var(--fg-2);transition:color .3s var(--ease)}.text-links a:hover{color:var(--acc-text)}
.text-links a span{color:var(--acc-text)}
.questions .faq{max-width:none;margin:22px 0 0;border-top:1px solid var(--line)}
.state-directory{display:grid;grid-template-columns:1fr 1fr;gap:32px 40px;margin-top:32px}
.state-directory h3{font-size:19px;letter-spacing:-.025em;margin-bottom:10px;font-weight:600}
.state-directory ul{list-style:none;padding:0;margin:0}
.state-directory li a{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14.5px;padding:11px 0;border-bottom:1px solid var(--line);color:var(--fg-2);transition:color .3s var(--ease),transform .4s var(--ease),border-color .3s var(--ease)}
.state-directory li a span{color:var(--dim);transition:color .3s var(--ease)}
.state-directory li a:hover{color:var(--fg);transform:translateX(4px);border-color:var(--line-2)}
.state-directory li a:hover span{color:var(--acc-text)}
/* Closing panels. */
.next-step{margin-top:clamp(24px,3vw,40px);padding:clamp(34px,5vw,72px);border-radius:var(--r);background:var(--panel-2);box-shadow:var(--panel-shadow)}
.next-step h2{font-size:clamp(38px,4.4vw,64px);font-weight:600;line-height:1.04;letter-spacing:-.05em;margin-top:6px}
.next-step>p:not(.hero-eyebrow){color:var(--muted);max-width:52ch;line-height:1.65;font-size:18px;margin-top:22px;text-wrap:pretty}
.next-step .hero-actions{margin-top:30px}
.related{padding-block:clamp(56px,7vw,96px)}
.related h2{font-size:clamp(28px,3vw,38px);font-weight:600;letter-spacing:-.04em;margin-bottom:26px}
.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.related-grid a{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:112px;padding:24px 26px;border-radius:var(--r-sm);background:var(--panel);box-shadow:var(--panel-shadow);font-size:18px;line-height:1.35;letter-spacing:-.02em}
.related-grid .ico{width:38px;height:38px;border-radius:50%;background:color-mix(in srgb,currentColor 9%,transparent);display:grid;place-items:center;flex:0 0 auto;transition:transform .6s cubic-bezier(.18,1.35,.4,1),background .3s}
.related-grid .arr{width:14px;height:14px}
.related-grid a:hover .ico{transform:translateX(3px) rotate(-35deg);background:var(--acc-dim);color:var(--acc-text)}
/* Reveal: same blur as the home hero on wide screens. */
@media(min-width:980px){.guide-hero{grid-template-columns:minmax(0,1.1fr) auto;gap:56px}html.js .guide-hero .press:not(.is-in):not(.filmplate):not(.state-picker){filter:blur(4px)}}
@media(max-width:979px){.state-picker.hero-card{justify-self:start;margin-top:10px}}
@media(max-width:900px){.guide-layout{grid-template-columns:1fr;gap:32px}.guide-layout aside{position:static}.guide-layout aside nav{display:flex;flex-wrap:wrap;gap:4px 18px}.guide-layout aside nav>p{width:100%;margin-bottom:4px}.guide-layout aside nav a{font-size:13px}.byline{margin-top:12px}.related-grid{grid-template-columns:1fr}.state-directory{grid-template-columns:1fr 1fr;gap:24px 20px}}
@media(max-width:700px){.guide-top{padding-top:8px}.guide-hero{margin-top:30px;gap:32px}.guide-copy{text-align:center}.guide-hero h1{font-size:clamp(40px,10.5vw,52px);letter-spacing:-.055em}.guide-hero .intro{font-size:17px;margin:22px auto 0;max-width:34ch}.guide-hero .hero-actions,.guide-hero .text-links{justify-content:center}.state-picker.hero-card{width:100%;text-align:start}.filmplate.device,.filmplate.site{aspect-ratio:4/5}.guide-section h2{font-size:28px}.guide-section>p,.checklist{font-size:16px;line-height:1.75;margin-top:18px}.next-step{padding:32px 24px}.next-step h2{font-size:38px}.next-step>p:not(.hero-eyebrow){font-size:16px}.related{padding-block:48px}.related-grid a{min-height:0;font-size:17px;padding:20px 22px}}
@media(max-width:480px){.state-directory{grid-template-columns:1fr}.hero-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.state-directory li a:hover,.guide-layout aside nav a:hover{transform:none}.related-grid a:hover .ico{transform:none}}
