/* Custom Hugo theme. No JavaScript or external font dependencies. */
/* Improve line endings in headings and reading text where supported. */
h1,h2,h3,p,li,figcaption,blockquote,.faq summary{text-wrap:pretty}
:root{--ink:#21343a;--teal:#116879;--teal-dark:#0c4c59;--gold:#b18a2b;--line:#dce3e5;--soft:#f4f7f8;--muted:#596a70;--serif:Georgia,"Times New Roman",serif;--sans:"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;color:var(--ink);background:#fff;font:1.0625rem/1.75 var(--sans)}img{max-width:100%;height:auto;display:block}a{color:var(--teal-dark);text-decoration-thickness:1px;text-underline-offset:.22em}a:hover{color:#8a6716}a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.2;margin:0 0 1.25rem}h1{font-size:clamp(2.3rem,4.8vw,4.4rem);letter-spacing:-.035em}h2{font-size:clamp(1.65rem,2.4vw,2.1rem)}p{margin:0 0 1.4rem}figure{margin:0}figcaption{font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:.75rem}.shell{max-width:1200px;width:calc(100% - 5rem);margin-inline:auto}.brand-row{display:flex;align-items:center;justify-content:space-between;padding:0}.brand img{width:140px;height:140px;object-fit:contain}.header-contact{display:flex;flex-direction:column;align-items:flex-end;line-height:1.5;font-size:.875rem;color:var(--muted)}.header-contact a{font-size:1.35rem;font-weight:600;text-decoration:none;color:var(--teal-dark)}.main-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.nav-inner{display:flex;justify-content:space-between;gap:1.5rem}.main-nav a{display:block;padding:1.1rem 0 .85rem;font-size:.9375rem;text-decoration:none;color:var(--ink);border-bottom:3px solid transparent}.main-nav a[aria-current]{color:var(--teal-dark);border-bottom-color:var(--gold);font-weight:600}.main-nav a:hover{border-bottom-color:var(--teal)}.eyebrow{text-transform:uppercase;color:var(--teal);letter-spacing:.16em;font-size:.8rem;font-weight:600;margin-bottom:1.1rem}.gold-rule{width:65px;height:3px;background:var(--gold);margin:1.7rem 0 2rem}.profile-hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:5rem;padding-block:4.5rem 4rem}.lead{font-size:1.15rem;line-height:1.8}.profile-focus{font-size:1rem;color:var(--teal-dark);margin-top:2rem;margin-bottom:0;font-weight:600}.profile-focus span{font-size:.9rem;color:var(--muted);font-weight:400}.portrait{position:relative;padding:0 0 14px 14px}.portrait:before{content:"";position:absolute;inset:18px 18px 0 0;background:var(--teal);z-index:-1}.portrait img{width:100%;aspect-ratio:1.03;object-fit:cover;object-position:50% 45%}.biography{display:grid;grid-template-columns:minmax(0,760px) 1fr;gap:5rem;border-top:1px solid var(--line);padding-block:3.5rem 5rem}.profile-aside{padding-top:.5rem}.profile-aside img{width:100%;max-height:420px;object-fit:cover}.prose{max-width:760px;overflow-wrap:break-word}.prose h2{margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}.prose h2:first-child{margin-top:0;border-top:0;padding-top:0}.prose ul{padding-left:1.2rem}.prose li{margin-bottom:.4rem}.page-heading{padding-block:3.8rem 2rem}.page-heading h1{max-width:970px}.article-layout{display:grid;grid-template-columns:250px minmax(0,760px);gap:4rem;padding-bottom:5rem}.contents{padding-top:.2rem;font-size:.875rem;line-height:1.6;align-self:start}.contents-title{font-weight:600;text-transform:uppercase;font-size:.75rem;letter-spacing:.1em;color:var(--muted);margin-bottom:1.2rem}.contents ul{list-style:none;padding:0;margin:0}.contents li{margin-bottom:1rem}.contents a{text-decoration:none;color:var(--muted)}.contents a:hover{color:var(--teal)}.article-layout:has(.faq-list){display:block}.faq-list{max-width:1000px}.faq{border-top:1px solid var(--line);margin:0}.faq:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;position:relative;list-style:none;padding:1.4rem 3.2rem 1.4rem 0;font-size:1.05rem;line-height:1.6}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:.7rem;top:1.2rem;color:var(--teal);font-size:1.7rem;font-weight:400}.faq[open] summary:after{content:"−"}.faq[open] summary{color:var(--teal-dark)}.faq-answer{max-width:850px;padding:0 2rem 1.7rem 0}.faq-answer p:last-child{margin-bottom:0}.resources a[href$=".pdf"]:after{content:"PDF";font-size:.68rem;font-weight:600;letter-spacing:.04em;color:var(--muted);margin-left:.55rem;display:inline-block;vertical-align:middle;text-decoration:none}.contact-top{display:grid;grid-template-columns:1fr 1.45fr;gap:4.5rem;padding-bottom:3rem}.contact-details h2{font-size:1.5rem}.contact-details address{font-style:normal;margin-bottom:1.5rem}.phone-list{margin:0 0 1.2rem}.phone-list div{display:flex;gap:1rem}.phone-list dt{width:2.6rem;color:var(--muted)}.phone-list dd{margin:0}.small-note{font-size:.875rem;color:var(--muted)}.building img{width:100%;aspect-ratio:1.5;object-fit:cover}.contact-middle{display:grid;grid-template-columns:1.45fr 1fr;gap:4.5rem;border-top:1px solid var(--line);padding-top:3.5rem;padding-bottom:3.5rem}.contact-middle figure{margin-top:2rem}.contact-middle img{width:100%;aspect-ratio:1.5;object-fit:cover}.hours table{width:100%;border-collapse:collapse;font-size:.9375rem}.hours th,.hours td{text-align:left;padding:.65rem .2rem;border-bottom:1px solid var(--line)}.hours th{font-weight:600}.map-section{padding-bottom:4rem}.map-section iframe{width:100%;height:420px;border:1px solid var(--line);display:block;margin-bottom:1rem}.site-footer{border-top:1px solid color-mix(in srgb,var(--teal) 45%,transparent);background:var(--soft);padding:2.6rem 0 1.8rem}.footer-top{display:flex;justify-content:space-between;gap:2rem;font-size:.875rem;margin-bottom:1.5rem;font-weight:600}.disclaimer{font-size:.8125rem;line-height:1.7;color:#4e5e64;max-width:1080px}.copyright{font-size:.75rem;color:var(--muted);margin-bottom:0}.visually-hidden,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link:focus{position:absolute;z-index:10;background:white;padding:1rem}
@media(max-width:1000px){.shell{width:calc(100% - 3rem)}.profile-hero{gap:2.5rem}.biography{gap:2.5rem;grid-template-columns:2.2fr 1fr}.article-layout{gap:2.2rem;grid-template-columns:210px minmax(0,1fr)}.contact-top,.contact-middle{gap:2.5rem}.main-nav a{font-size:.85rem}.nav-inner{gap:1rem}}
@media(max-width:700px){body{font-size:1rem}.shell{width:calc(100% - 2.5rem)}.brand img{width:112px;height:112px}.header-contact a{font-size:1.1rem}.header-contact span{font-size:.8rem}.nav-inner{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:0 1.6rem;padding-block:.5rem}.main-nav a{font-size:.82rem;padding:.55rem 0 .4rem}.profile-hero{grid-template-columns:1fr;padding-block:2.7rem 2.5rem;gap:2rem}.profile-opening h1{font-size:3.3rem}.profile-focus{margin-top:1rem}.portrait{max-width:520px}.biography{grid-template-columns:1fr;gap:2rem;padding-block:2.5rem 3rem}.profile-aside{max-width:330px}.page-heading{padding-block:2.7rem 1rem}.article-layout{display:block;padding-bottom:3rem}.contents{margin-bottom:2.2rem;border-bottom:1px solid var(--line);padding-bottom:1rem}.contents ul{display:flex;gap:.6rem 1.4rem;flex-wrap:wrap}.contents li{margin-bottom:.4rem}.contact-top,.contact-middle{grid-template-columns:1fr;gap:2rem}.contact-middle{padding-top:2.5rem}.map-section iframe{height:340px}.footer-top{display:block}.footer-top span{display:block;margin-bottom:.5rem}.faq summary{font-size:1rem}.faq-answer{padding-right:0}.prose h2{margin-top:2.7rem}.site-footer{padding-top:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Firm-name header and logo signature in the footer. */
.site-header .brand-row{padding-block:2rem;gap:2rem}.site-header .brand{text-decoration:none;color:var(--teal-dark);line-height:1.2;flex:1;min-width:0}.brand-name{font:400 clamp(1.8rem,3.3vw,2.8rem)/1.2 var(--serif);letter-spacing:-.025em;display:block}.brand-legal{font-size:.48em;letter-spacing:.025em;white-space:nowrap}.header-contact{flex-shrink:0}.site-footer{background:#fff}.footer-layout{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:2rem}.footer-logo svg{width:130px;height:130px;object-fit:contain}.footer-top{display:block;margin-bottom:1rem}.footer-top span{display:block}.footer-top span+span{font-weight:400;color:var(--muted);margin-top:.25rem}
@media(max-width:700px){.site-header .brand-row{padding-block:1.4rem;gap:1rem}.brand-name{font-size:1.75rem}.brand-legal{display:block;margin-top:.4rem;font-size:.5em}.header-contact{max-width:130px}.header-contact a{font-size:1.02rem}.header-contact span{font-size:.75rem}.footer-layout{grid-template-columns:85px minmax(0,1fr);align-items:start;gap:1rem}.footer-logo svg{width:85px;height:85px}.footer-copy .footer-top{font-size:.8125rem}.footer-copy .disclaimer{font-size:.8125rem}}

:root{--canvas:#fff;color-scheme:light}body,.site-footer{background:var(--canvas)}.disclaimer{color:var(--muted)}a:hover{color:var(--gold)}.theme-toggle{appearance:none;border:1px solid var(--line);border-radius:3px;background:var(--canvas);color:var(--teal-dark);font:500 .8rem/1.3 var(--sans);padding:.4rem .65rem;margin-top:.7rem;cursor:pointer}.theme-toggle:hover{border-color:var(--gold)}.theme-toggle:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.footer-logo{background:transparent;border-radius:3px}
:root[data-theme="dark"]{--canvas:#151515;--ink:#f1f1f1;--teal:#dedede;--teal-dark:#eeeeee;--gold:#d9b657;--line:#686868;--soft:#303030;--muted:#d0d0d0;color-scheme:dark}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--canvas:#151515;--ink:#f1f1f1;--teal:#dedede;--teal-dark:#eeeeee;--gold:#d9b657;--line:#686868;--soft:#303030;--muted:#d0d0d0;color-scheme:dark}}

@media(max-width:700px){.brand-comma{display:none}}

.profile-aside .profile-extra{margin-top:2rem}.profile-aside .profile-extra img{width:100%;max-width:240px;max-height:none;height:auto;margin-inline:auto;object-fit:contain}
/* A continuous biography with photographs surrounded by text. */
.profile-flow{max-width:1200px;display:flow-root;padding-block:4rem 5rem}
.profile-flow .profile-photo{float:right;clear:right;width:260px;margin:0 0 2rem 2.5rem}
.profile-flow .profile-main-photo{width:380px}
.profile-flow .profile-extra{width:220px}
.profile-flow .profile-photo img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.profile-flow h2{border:0;padding-top:0;margin-top:2rem}
@media(max-width:700px){.profile-flow{padding-block:2.7rem 3rem}.profile-flow .profile-photo{float:none;clear:none;width:min(100%,280px);margin:1.5rem auto 2rem}.profile-flow .profile-main-photo{width:min(100%,420px)}.profile-flow .profile-extra{width:min(100%,220px)}}

/* Framed photos, readable captions, and varied biography placement. */
:root{--photo-frame:#87979b;--caption:#43555b}
:root[data-theme="dark"]{--photo-frame:#8c8c8c;--caption:#dedede}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--photo-frame:#8c8c8c;--caption:#dedede}}
/* Consistent soft matted frames for photographs across all pages. */
main .photo-frame{width:100%;padding:8px;border:1px solid var(--line);border-radius:13px;background:var(--soft);box-shadow:0 2px 5px #00000008,0 8px 20px #0000000d}
main .photo-frame img{border-radius:4px}
.footer-logo{border:0;padding:0}
/* Inline logo lettering follows the site theme; the heart keeps its colors. */
:root{--footer-logo-ink:#000}
:root[data-theme="dark"]{--footer-logo-ink:#f1f1f1}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--footer-logo-ink:#f1f1f1}}
.footer-logo svg{display:block;max-width:100%}
.footer-logo :is(#carlson-lettering,#family-law-lettering){fill:var(--footer-logo-ink)}
/* Let the larger desktop logo use the footer's existing vertical space. */
@media(min-width:701px){
 .footer-layout{grid-template-columns:260px minmax(0,1fr);gap:1.5rem}
 .footer-logo{position:relative;align-self:stretch}
 .footer-logo svg{position:absolute;top:50%;left:0;transform:translateY(-50%);width:260px;height:260px}
}
figcaption{font-size:1rem;line-height:1.65;color:var(--caption);margin-top:.85rem}
.portrait{padding:0}.portrait:before{display:none}
.profile-chapter{display:flow-root}
.profile-chapter+.profile-chapter{margin-top:2.5rem;padding-top:2.5rem;border-top:0}
.profile-flow .profile-dog{float:left;clear:none;width:290px;margin:0 2.5rem 1.5rem 0}
.profile-flow .profile-dinner{width:240px;margin-left:2.5rem}
.profile-flow .profile-working{float:left;clear:none;width:380px;margin:0 2.5rem 1.5rem 0}
.contact-middle>div{display:flex;flex-direction:column}
.contact-middle figure{margin-top:auto;padding-top:2rem;display:flex;flex-direction:column}
.contact-middle img{aspect-ratio:1.5;object-fit:cover}
.contact-middle figcaption{min-height:1.65em}
.contact-portrait:after{content:"";display:block;height:1.65rem;margin-top:.85rem}
@media(max-width:700px){
 .profile-flow .profile-photo,.profile-flow .profile-dog,.profile-flow .profile-dinner,.profile-flow .profile-working{float:none;clear:none;width:min(100%,360px);margin:0 auto 1.8rem}
 .profile-flow .profile-main-photo{width:min(100%,420px)}
 .profile-flow .profile-dinner{width:min(100%,260px)}
 .profile-chapter+.profile-chapter{margin-top:1.8rem;padding-top:1.8rem}
 .contact-middle figure{margin-top:0}.contact-portrait:after{display:none}
}
/* Comfortable supporting text and a persistent desktop contents menu. */
.small-note,.contents{font-size:1rem;line-height:1.65}
.contents-title{font-size:.875rem}
@media(min-width:701px){.contents{position:sticky;top:1.5rem;max-height:calc(100vh - 3rem);overflow-y:auto;padding-bottom:1rem}}
.coverage-map{margin:2rem 0 2.5rem;padding:1rem;border:1px solid var(--line);background:var(--soft);max-width:520px;width:100%;box-sizing:border-box}
.county-map-canvas{width:100%;max-width:100%;overflow:visible}
.coverage-map svg{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:740/721.6}
.coverage-map .county{fill:#e7e7e7;stroke:#888;stroke-width:1.1;vector-effect:non-scaling-stroke}
.coverage-map .primary{fill:#246a72}.coverage-map .occasional{fill:#e5c978}.coverage-map .referral{fill:url(#referral-hatch)}
.coverage-map .county-label{fill:#333;font:600 22px "Segoe UI",Arial,sans-serif;paint-order:stroke;stroke:#e7e7e7;stroke-width:3px;stroke-linejoin:round}
.coverage-map .primary-label{fill:#fff;stroke:#246a72}
.coverage-map .occasional-label{fill:#292929;stroke:#e5c978}
.coverage-map .map-background{fill:#f7f7f7}
.coverage-map .map-title{fill:#444;font:600 20px "Segoe UI",Arial,sans-serif}
.map-legend{display:flex;flex-wrap:wrap;gap:.75rem 1.4rem;font-size:1rem;line-height:1.5;margin-top:1rem}
.map-legend span{display:flex;align-items:center;gap:.6rem}
.map-key{display:inline-block;width:1.1rem;height:1.1rem;border:1px solid #666;flex-shrink:0}
.map-key.primary{background:#246a72}.map-key.occasional{background:#e5c978}.map-key.referral{background:repeating-linear-gradient(45deg,#eee 0px,#eee 3px,#aaa 3px,#aaa 4px)}
:root[data-theme="dark"] .coverage-map .map-background{fill:#303030}
:root[data-theme="dark"] .coverage-map .map-title{fill:#eee}
@media(max-width:700px){.coverage-map{padding:.6rem;width:100%;max-width:100%}.coverage-map svg{min-width:0;width:100%;height:auto}.map-legend{display:block}.map-legend span{margin-bottom:.65rem}}
/* A compact theme icon that does not affect the header layout. */
/* Pair the firm's symbol with its name without crowding the phone number. */
.site-header .brand{display:flex;align-items:center;gap:1rem}
.site-header .brand-logo{width:72px;height:72px;flex-shrink:0;object-fit:contain}
:root{--brand-title:#127889;--brand-title-shadow:0 1px 1px #003c4226}
:root[data-theme="dark"]{--brand-title:#1694a8;--brand-title-shadow:0 0 2px #ffffff30,0 0 6px #1694a830}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--brand-title:#1694a8;--brand-title-shadow:0 0 2px #ffffff30,0 0 6px #1694a830}}
.site-header .brand-name{min-width:0;color:var(--brand-title);text-shadow:var(--brand-title-shadow)}
@media(max-width:700px){
 .site-header .brand-row{flex-wrap:wrap;gap:.75rem}
 .site-header .brand{flex-basis:100%;gap:.75rem}
 .site-header .brand-logo{width:48px;height:48px}
 .site-header .header-contact{max-width:none;margin-left:auto;flex-direction:row;align-items:center;gap:.75rem}
}
.theme-toggle{position:fixed;top:.5rem;right:.5rem;z-index:20;width:44px;height:44px;padding:11px;margin:0;border-radius:50%;display:grid;place-items:center;box-shadow:0 1px 4px #0002}
.theme-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle .theme-sun{display:none}
:root[data-theme="dark"] .theme-toggle .theme-sun{display:block}
:root[data-theme="dark"] .theme-toggle .theme-moon{display:none}
.site-header .brand-row{padding-right:1.5rem}
@media(max-width:700px){.site-header .brand-row{padding-right:1.5rem}}
/* Larger FAQ questions and answers at every screen size. */
.faq summary{font-size:1.2rem;line-height:1.65}
.faq-answer{font-size:1.125rem;line-height:1.8}
@media(max-width:700px){.faq summary{font-size:1.125rem}.faq-answer{font-size:1.0625rem}}
/* Phone navigation stays compact until the menu is opened. */
.mobile-menu-toggle{display:none}
/* Larger desktop labels scale down smoothly on narrower screens. */
@media(min-width:701px){.main-nav a{font-size:clamp(.9375rem,1.6vw,1.2rem);line-height:1.5}}
@media(max-width:700px){
 .theme-toggle{display:none}
 .site-header .brand-row{padding-right:0}
 .main-nav{position:sticky;top:0;z-index:100;background:var(--canvas)}
 .mobile-menu-toggle{display:flex;align-items:center;justify-content:flex-end;min-height:48px;padding:.65rem 0;border:0;background:var(--canvas);color:var(--ink);cursor:pointer}
 .mobile-menu-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 .mobile-menu-toggle:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
 .main-nav .nav-inner{display:none;padding-block:0 .75rem;flex-direction:column;gap:0}
 .main-nav.is-open{max-height:100vh;overflow-y:auto}
 .main-nav.is-open .nav-inner{display:flex}
 .main-nav a{font-size:1rem;padding:.65rem 0;min-height:44px}
 .practice-areas-contents{display:none}
}
/* Preserve the original phone profile photo scale and reading order. */
@media(max-width:700px){
 .profile-flow .profile-photo{width:min(100%,280px);margin:1.5rem auto 2rem}
 .profile-flow .profile-main-photo{width:min(100%,420px)}
 .profile-flow .profile-extra{width:min(100%,220px)}
 .profile-chapter+.profile-chapter{border:0;margin-top:0;padding-top:0}
}
/* Professional lists share a row and stack in reading order on phones. */
.profile-credentials-chapter{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:2.5rem;align-items:start}
.profile-flow .profile-credentials-chapter .profile-working{float:none;width:100%;margin:0}
.profile-credentials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
@media(min-width:701px){.profile-credential+.profile-credential{position:relative}.profile-credential+.profile-credential:before{content:"";position:absolute;left:-1.5rem;top:0;bottom:0;width:1px;background:var(--line)}}
.profile-flow .profile-credential h2{margin-top:0;padding-top:0}
.profile-credential ul{margin-block:0}
@media(max-width:1000px){.profile-credentials-chapter{grid-template-columns:1fr;gap:1.5rem}.profile-flow .profile-credentials-chapter .profile-working{max-width:380px}}
@media(max-width:700px){.profile-credentials{grid-template-columns:1fr;gap:1.75rem}.profile-flow .profile-credentials-chapter .profile-working{width:min(100%,220px);margin:1.5rem auto 0}}
/* Separate professional credentials from the biography. */
.profile-chapter:has(.profile-working){border-top:1px solid var(--line)}
/* Reduce the space above the first heading on all five pages by half. */
.page-heading .contact-title{max-width:none}
.page-heading{padding-top:1.9rem}
.profile-flow{padding-top:2rem}
@media(max-width:700px){.page-heading,.profile-flow{padding-top:1.35rem}}
/* Stronger hover contrast on white backgrounds. */
:root{--hover-ink:#684b0b;--hover-surface:#eef2f3}
:root[data-theme="dark"]{--hover-ink:#d9b657;--hover-surface:#353535}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--hover-ink:#d9b657;--hover-surface:#353535}}
a:hover,.contents a:hover,.main-nav a:hover{color:var(--hover-ink)}
.main-nav a:hover{border-bottom-color:var(--hover-ink)}
.theme-toggle:hover{color:var(--hover-ink);background:var(--hover-surface);border-color:var(--hover-ink)}
.faq summary:hover,.mobile-menu-toggle:hover{color:var(--hover-ink);background:var(--hover-surface)}
.faq summary:hover:after{color:var(--hover-ink)}
/* Tighter spacing between biography sections. */
.profile-chapter+.profile-chapter{margin-top:1.25rem;padding-top:1.25rem}
.profile-flow .profile-photo{margin-bottom:1rem}
@media(max-width:700px){.profile-chapter+.profile-chapter{margin-top:0;padding-top:0}.profile-flow .profile-photo{margin-bottom:1.25rem}}
/* Inline after-hours notice above the weekly hours. */
.office-notice{padding:1rem 1.25rem;border-left:3px solid var(--gold);background:var(--soft);color:var(--ink)}
/* Resources use topic navigation, clear subheadings, and compact link lists. */
.resources-intro{max-width:760px;margin-bottom:0;color:var(--muted)}
.resources h3{font:600 1.125rem/1.45 var(--sans);color:var(--teal-dark);margin:2rem 0 .85rem}
.resources h2+h3{margin-top:1.25rem}
.resources ul{margin:0 0 1.5rem;padding-left:1.2rem}
.resources li{padding-left:.2rem;margin-bottom:.75rem}
.resources li::marker{color:var(--muted)}
.resources-layout .contents a{display:block}
/* Only the parenting-history quotation gets a subtle themed background. */
.resources blockquote:has(> #history){background:color-mix(in srgb,var(--canvas) 95%,var(--ink));padding:1.5rem;margin-inline:0;border-radius:4px}
.resources blockquote:has(> #history)>:last-child{margin-bottom:0}
.resources blockquote>h3#history{font-size:1.35rem}
@media(max-width:700px){.resources-layout .contents ul{display:block}.resources-layout .contents li{margin-bottom:.65rem}.resources h3{margin-top:1.75rem}}
