/* Shared chrome and controls. Article typography and content layouts stay local. */
:root {
  --ds-green:#175c4b;
  --ds-green-hover:#114838;
  --ds-ink:#24312f;
  --ds-rust:#aa4635;
  --ds-line:#d6dfdf;
  --ds-soft:#edf4f2;
  --ds-border:#748578;
  --ds-radius:4px;
  --ds-control-height:44px;
  --ds-action-height:48px;
  --ds-gutter:48px;
  --ds-font:'Segoe UI',Arial,sans-serif;
}
.site-header {
  position:sticky;top:0;z-index:10;background:#fff;backdrop-filter:none;
  border-top:4px solid var(--ds-rust);border-bottom:1px solid var(--ds-line);
  font:400 17px/1.65 var(--ds-font);color:var(--ds-ink);
}
.site-header .container {width:calc(100% - var(--ds-gutter) * 2);max-width:1200px;}
.site-header .navwrap {display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem 0;}
.site-header .brand {gap:.8rem;flex:none;min-width:0;color:var(--ds-ink);}
.site-header .brand>span {font:700 1.08rem/1.15 Georgia,'Times New Roman',serif;}
.site-header .mark {width:49px;height:45px;flex:none;}
.site-header #site-navigation {display:flex;flex-wrap:wrap;align-items:center;gap:.1rem .65rem;max-width:790px;}
.site-header #site-navigation a {
  display:flex;align-items:center;position:relative;min-height:44px;
  border-radius:0;padding:.4rem .15rem;background:none;color:var(--ds-ink);
  font:400 .86rem/1.2 var(--ds-font);white-space:nowrap;text-decoration:none;
}
.site-header #site-navigation a:hover,.site-header #site-navigation a.active {background:none;color:var(--ds-green);}
.site-header #site-navigation a.active:after {content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--ds-green);}
.site-header .menu-toggle {border:1px solid var(--ds-border);border-radius:var(--ds-radius);width:44px;height:44px;min-height:44px;padding:0;background:#fff;color:var(--ds-ink);font:20px/1 var(--ds-font);}
.site-header a:focus-visible,.site-header button:focus-visible {outline:3px solid var(--ds-green);outline-offset:4px;}

body .btn.btn {
  min-height:var(--ds-action-height);padding:.75rem 1.05rem;
  border:1px solid var(--ds-green);border-radius:var(--ds-radius);box-shadow:none;
  background:var(--ds-green);color:#fff;font:600 .95rem/1.4 var(--ds-font);
  text-align:center;white-space:normal;overflow-wrap:anywhere;
}
body .btn.btn:hover {background:var(--ds-green-hover);border-color:var(--ds-green-hover);color:#fff;}
body .btn.btn.secondary {background:#fff;border-color:var(--ds-border);color:var(--ds-green);}
body .btn.btn.secondary:hover {background:var(--ds-soft);border-color:var(--ds-green);color:var(--ds-green-hover);}
.container :is(select,textarea,input[type="number"],input[type="text"],input[type="search"]),
.container #law-selectors select {
  min-height:var(--ds-control-height);max-width:100%;padding:.6rem .7rem;
  border:1px solid var(--ds-border);border-radius:var(--ds-radius);
  background:#fff;color:var(--ds-ink);font:400 1rem/1.5 var(--ds-font);
}
.container input:is([type="checkbox"],[type="radio"]) {accent-color:var(--ds-green);}
.provider-picker label,.funding-modes label {min-height:44px;}
.container :is(input,select,textarea):focus-visible,.container #law-selectors select:focus-visible,
body .btn.btn:focus-visible {outline:3px solid var(--focus-ring,var(--ds-green));outline-offset:3px;}
.container :is(.provider-table-scroll,.tool-panel):focus-visible {outline:3px solid var(--focus-ring,var(--ds-green));outline-offset:3px;}
.container :is(input,textarea)[readonly] {background:#f7f9f8;}
body .btn.btn:disabled,.container :is(input,select,textarea):disabled {cursor:not-allowed;opacity:.6;}
.container .reset-control {min-height:44px;padding:.5rem .6rem;border:0;border-radius:var(--ds-radius);background:transparent;color:var(--ds-green);font:400 .9rem/1.5 var(--ds-font);text-decoration:underline;text-underline-offset:3px;}
.provider-picker button,.provider-question button {min-height:44px;padding:.6rem .8rem;border:1px solid var(--ds-border);border-radius:var(--ds-radius);background:#fff;color:var(--ds-green);font:600 .9rem/1.4 var(--ds-font);}
.provider-picker button:hover,.provider-question button:hover {background:var(--ds-soft);border-color:var(--ds-green);}
.tool-tabs button,.comparison-tabs button {min-height:48px;font-family:var(--ds-font);font-size:.9rem;line-height:1.4;}
.tool-tabs button[aria-selected="true"],.comparison-tabs button[aria-selected="true"] {background:var(--ds-soft);border-bottom-color:var(--ds-green);color:var(--ds-green);}

/* Search remains one combined control, rather than two separately framed fields. */
.legal-search-form .search-row {border:1px solid var(--ds-border);border-radius:var(--ds-radius);box-shadow:none;}
.container .legal-search-form .search-row input {min-height:48px;border:0;border-radius:0;padding:.75rem 1rem;outline-offset:-3px;}
.legal-search-form .search-row button {min-width:48px;min-height:48px;background:var(--ds-green);outline-offset:-4px;}
.legal-search-form .search-row button:hover {background:var(--ds-green-hover);}
.legal-search-form .search-row button:focus-visible {outline:3px solid #fff;}
.legal-search-form .search-row:focus-within {outline:3px solid var(--ds-green);outline-offset:3px;}
@media(max-width:1120px) {
  :root {--ds-gutter:32px;}
  .site-header .navwrap {flex-wrap:wrap;}
  .site-header #site-navigation {max-width:none;gap:.2rem .85rem;}
}
@media(max-width:900px) {
  :root {--ds-gutter:24px;}
  .site-header #site-navigation {gap:.1rem .6rem;}
}
@media(max-width:840px) {
  .site-header {position:relative;font-size:16px;}
  .site-header .navwrap {flex-wrap:nowrap;}
  .site-header .brand {flex:1;}
  .site-header #site-navigation {display:none;}
  .nav-open .site-header #site-navigation {
    display:grid;grid-template-columns:minmax(0,1fr);gap:0;position:absolute;
    top:100%;left:var(--ds-gutter);right:var(--ds-gutter);max-height:70vh;overflow-y:auto;
    padding:.65rem;background:#fff;border:1px solid var(--ds-line);border-radius:var(--ds-radius);
    box-shadow:0 8px 24px #24312f1f;
  }
  .nav-open .site-header #site-navigation a {padding:.6rem .75rem;white-space:normal;}
  .nav-open .site-header #site-navigation a.active {background:var(--ds-soft);}
  .nav-open .site-header #site-navigation a.active:after {display:none;}
  .container.container {width:calc(100% - var(--ds-gutter) * 2);}
}
@media(max-width:420px) {
  :root {--ds-gutter:20px;}
  .site-header .brand>span {font-size:.94rem;}
  .site-header .mark {width:43px;height:40px;}
}
@media print {.site-header {display:none;}.container.container {width:100%;}}

/* Approved affiliate marks and disclosures; no third-party requests. */
.affiliate-brand{display:block;width:15.625rem;max-width:100%;height:auto;margin:0 0 1rem;}
.affiliate-note{font-size:1rem;line-height:1.6;max-width:65ch;}
.affiliate-option>a{display:inline-flex;align-items:center;min-height:44px;padding-block:.5rem;}
@media(min-width:801px){.estate-online-options.has-form-option{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* Small, purpose-sized crops of the original guide illustration sheet. */
.library-art img[data-guide-tile],.matter-art img[data-guide-tile],
.guide-art img[data-guide-tile],.business-art img[data-guide-tile],
.traffic-art img[data-guide-tile],.news-art img[data-guide-tile]{width:100%;height:100%;left:0;top:0}

/* Editorial text follows Home and Wills; compact tools retain their local scale. */
:root {
  --read-font:'Segoe UI',Arial,sans-serif;
  --read-heading:Georgia,'Times New Roman',serif;
  --read-ink:#26312f;
  --read-muted:#51616a;
  --read-copy-size:17px;
  --read-title-size:2.6rem;
  --read-section-size:1.7rem;
  --read-subhead-size:1.25rem;
  --read-note-size:.875rem;
}
body.reading-page {font-family:var(--read-font);font-size:var(--read-copy-size);line-height:1.65;color:var(--read-ink);letter-spacing:0;}
.reading-page main :is(h1,h2,h3) {font-family:var(--read-heading);font-weight:400;letter-spacing:0;}
body.reading-page .reading-title {font-size:var(--read-title-size);font-family:var(--read-heading);font-weight:400;line-height:1.15;color:var(--ds-ink);overflow-wrap:anywhere;}
body.reading-page .reading-section {font-size:var(--read-section-size);font-family:var(--read-heading);font-weight:400;line-height:1.25;color:var(--ds-ink);overflow-wrap:anywhere;}
body.reading-page .reading-subhead {font-size:var(--read-subhead-size);font-family:var(--read-heading);font-weight:400;line-height:1.35;color:var(--ds-ink);overflow-wrap:anywhere;}
body.reading-page .reading-copy {font-family:var(--read-font);font-size:var(--read-copy-size);line-height:1.65;max-width:75ch;overflow-wrap:anywhere;}
body.reading-page .state-heading-copy>p:not(.breadcrumb):not(.eyebrow):not(.review-date),
.reading-page .provider-profile-body .provider-background {font-size:var(--read-copy-size);line-height:1.65;}
/* Older citation components force 12.8px; only the shared note size overrides that. */
body.reading-page .reading-note {font-family:var(--read-font);font-size:var(--read-note-size)!important;font-weight:400;line-height:1.65;color:var(--read-muted);max-width:90ch;overflow-wrap:anywhere;}
/* Coverage and scope explanations are reading text, not citation metadata. */
body.reading-page .matter-note.reading-note:not([role="status"]),
body.reading-page .guide-scope.reading-note,
body.reading-page .provider-reading-note.reading-note,
body.reading-page .divorce-safety .divorce-note {
  font-size:var(--read-copy-size)!important;line-height:1.65;
  color:var(--read-ink);max-width:75ch;
}
.reading-page .guide-risk .reading-subhead {color:#963d2a;}
.reading-page .callout :is(.reading-section,.reading-subhead) {color:#fff;}
.reading-page .callout .reading-note {color:#d4e0da;}

/* Preserve compact labels and numerical presentations instead of enlarging them. */
table,form {font-size:1rem;}
table {line-height:1.6;}
:where(.law-row,.law-column-head,.law-facts,.law-profiles,.estate-law-row,.estate-profiles,.estate-column-head,.traffic-law-row,.traffic-profiles,.traffic-column-head,.tool-panel,.comparison-panel,.state-preview) {font-size:1rem;}
.reading-page .topic-card h3,.reading-page .search-results h2 {font-family:var(--read-font);font-weight:600;}
.reading-page .topic-title-row h1 {font-weight:400;}
.reading-page .topic-page:has(.focused-guide:target) .topic-title-row h1 {font-size:1.3rem;}
@media(max-width:720px) {
  :root {--read-title-size:2rem;--read-section-size:1.5rem;--read-subhead-size:1.2rem;--read-copy-size:16px;}
}
@media print {body.reading-page {font-size:11pt;}.reading-page .reading-copy {font-size:11pt;max-width:none;}}
