/* Shared quiet palette, accessible controls and balanced spacing. */
:root,.inner-page,.article-page,.areas-page{--paper:#f8f6f0;--ink:#293c35;--muted:#626c63;--line:#deded3}
html,body,.inner-page,.inner-page .nav{background:#f8f6f0}
.inner-page footer{background:#efeee6;border-top:1px solid #deded3}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #7a694e;outline-offset:5px}
[hidden]{display:none!important}
.inner-page .eyebrow{color:#756246;font-size:11px}
.areas-page .pagehero{padding:28px 0 24px}
.areas-page .pagehero h1{font-size:clamp(38px,4.2vw,54px);margin:16px 0}
.areas-page .law-area,.areas-page .law-area:nth-child(n){background:#f0f1e9}
.areas-page .law-area:hover{background:#e8ede1}
.areas-page .law-area-count,.areas-page .law-area-number{font-size:12px;color:#626c58}
.areas-heading{font-size:14px}
.articles-page .published-articles article>p{display:block;font-size:14px;line-height:1.7;margin:10px 0 0;color:#626c63;max-width:700px}
.articles-page .published-articles h2{font-size:22px;line-height:1.45}
.articles-page .published-articles .eyebrow{font-size:11px}
.article-page .article-body h2{font-family:Georgia,serif;font-size:25px;line-height:1.4}
.article-page .article-body h3{font-family:Georgia,serif;font-size:21px;line-height:1.4}
.article-page .article-body blockquote{font-size:16px;line-height:1.85;padding:16px 0 16px 22px;color:#535d53}
.related-reading{width:min(700px,calc(100% - 40px));margin:0 auto 64px;padding:28px;border:1px solid #deded3;border-radius:12px;background:#f0f1e9}
.related-reading h2{font:26px/1.3 'Cormorant Garamond',Georgia,serif;margin:0 0 16px}
.related-reading a{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid #d8ddd0;font:15px/1.6 Arial,sans-serif;text-decoration:none}
.related-reading a:hover{text-decoration:underline;text-underline-offset:4px}
.related-reading a span{flex:none;color:#7a694e}
/* Opening text sequence is defined in styles.css. */
/* Home scale motion is defined in styles.css; reduced-motion remains respected. */
.opening{display:flex;flex-direction:column;justify-content:center;gap:24px}
.home-caption{font:11px/1.8 Arial,sans-serif;letter-spacing:.16em;text-align:center;color:#746a58;margin:0}
.contact-page .content{padding:48px 0 60px}
.contact-layout{max-width:1040px;gap:64px;align-items:center;padding:48px;border:1px solid #e1e2d7;background:#f0f1e9;border-radius:18px;grid-template-columns:1fr 1.15fr}
.contact-heading h1{font-size:clamp(40px,4vw,56px)}
.contact-heading p{font-size:16px;line-height:1.8;max-width:340px}
.contact-layout .contact-box{padding:0}
.contact-layout .contact-box a{padding:24px 18px;min-height:100px;transition:background .2s;border-color:#d3d9ca}
.contact-layout .contact-box a:first-child{background:#293f35;color:#faf9f2;border:0;border-radius:10px;margin-bottom:12px}
.contact-layout .contact-box a:first-child small,.contact-layout .contact-box a:first-child .contact-arrow{color:#ddd4c0}
.contact-layout .contact-box a:hover{background:#e5eadd}
.contact-layout .contact-box a:first-child:hover{background:#395342}
.contact-layout .contact-box strong{font-size:21px;overflow-wrap:anywhere}
.contact-layout .contact-box small{font-size:11px;letter-spacing:.09em}
.directory-page .pagehero{padding:36px 0 24px}
.directory-page .pagehero h1{font-size:clamp(38px,4.3vw,56px);max-width:800px}
.directory-page .content{padding-top:8px}
.directory-page .directory-search-area{background:#f0f1e9;border:1px solid #deded3;padding:28px;border-radius:14px}
.directory-page input,.directory-page select{background:#fafaf5;border:1px solid #bdc6b8;border-radius:6px;min-height:48px}
.directory-page .search button{background:#293f35;color:#fff;border-radius:6px;min-width:84px}
.directory-page .directory-filters{margin-bottom:0}
.directory-info{font-size:13px;line-height:1.8;color:#626c63;margin:20px 0}
.directory-info summary{cursor:pointer;padding:8px 0;color:#3a4e3e}
.directory-info p{max-width:760px}
.directory-welcome{text-align:center;padding:44px 24px 54px;border-bottom:1px solid #deded3}
.directory-welcome h2{font:32px/1.3 'Cormorant Garamond',Georgia,serif;margin:16px 0}
.directory-welcome p{font-size:14px;color:#626c63}
.directory-welcome button{background:none;border:0;border-bottom:1px solid #8a7657;padding:12px 0;font:14px Arial;color:#293c35;cursor:pointer}
.directory-enhanced .directory-table{display:none}
.court-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.court-card{padding:26px;border:1px solid #deded3;border-radius:12px;background:#fcfbf7;min-width:0}
.court-card h2{font:25px/1.35 'Cormorant Garamond',Georgia,serif;margin:8px 0 4px;text-transform:none}
.court-card .court-unit{font-size:14px;line-height:1.65;color:#626c63;margin:0 0 16px}
.court-card .court-line-type{font-size:12px;color:#746650;margin:0 0 12px}
.court-card .phone-entry{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;padding:6px 0;border-top:1px solid #e8e9df;margin:0}
.court-card .phone-number{font:17px/1.5 Arial,sans-serif;color:#293c35}
.court-card .phone-actions{gap:14px}
.court-card .phone-actions a,.court-card .phone-actions button{font-size:13px;min-height:44px}
.court-card details{margin-top:16px;font-size:12px;color:#626c63;line-height:1.7}
.court-card summary{cursor:pointer;padding:8px 0}
.court-card details p{margin:8px 0}
.court-card details a{display:inline-block;text-decoration:underline;text-underline-offset:3px;margin-right:12px}
#resultCount{font-size:13px;color:#626c63;margin:24px 0 16px}
#courtPager{margin:24px 0}
.directory-page .notice{background:transparent;border:0;padding:20px 0;font-size:12px;line-height:1.8;color:#626c63}
@media(max-width:760px){.contact-page .content{padding:24px 0 36px}.contact-layout{width:calc(100% - 32px);padding:26px 22px;grid-template-columns:1fr;gap:24px}.contact-heading p{max-width:none}.contact-layout .contact-box a{padding:20px 14px}.contact-layout .contact-box strong{font-size:19px}.directory-page .directory-search-area{padding:20px}.court-cards{grid-template-columns:1fr}.court-card{padding:22px}.directory-welcome{padding:32px 12px}.directory-welcome h2{font-size:29px}.related-reading{padding:22px}.areas-page .pagehero{padding:24px 0 20px}.areas-heading{font-size:12px}.home-caption{font-size:10px;letter-spacing:.1em;max-width:270px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.contact-layout .contact-box a:first-child strong{color:#faf9f2}
.directory-page .pagehero .wrap,.directory-page .content>.wrap{max-width:1080px}
.directory-page .directory-search-area{max-width:none}
.directory-page .search{gap:10px}
.phone-label{font-size:11px;color:#626c63;margin-right:8px}
/* Platform-independent vector icons: same geometry on desktop and mobile. */
.ui-arrow{display:inline-block;width:18px;height:18px;min-width:18px;vertical-align:-3px;background:currentColor;-webkit-mask:var(--arrow-image) center/contain no-repeat;mask:var(--arrow-image) center/contain no-repeat;pointer-events:none}
.ui-arrow-ne{--arrow-image:url('icons/arrow-ne.svg')}.ui-arrow-right{--arrow-image:url('icons/arrow-right.svg')}.ui-arrow-left{--arrow-image:url('icons/arrow-left.svg')}
.contact-arrow,.law-area-arrow{display:inline-flex;align-items:center;justify-content:center;line-height:1;width:20px;height:20px;flex:none}
.contact-arrow .ui-arrow,.law-area-arrow .ui-arrow{width:20px;height:20px;min-width:20px;vertical-align:0}
.contact-layout .contact-box a:first-child .contact-arrow{color:#ddd4c0!important}
.articles-page .published-articles h2 a:after{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:url('icons/arrow-ne.svg') center/contain no-repeat;mask:url('icons/arrow-ne.svg') center/contain no-repeat}
.related-reading a>.ui-arrow,.related-reading a>span{flex:none;align-self:center}
.article-pagination button .ui-arrow{width:16px;height:16px;min-width:16px;vertical-align:-3px}
.article-toc-toggle:after{content:"";width:18px;height:18px;flex:none;background:currentColor;-webkit-mask:url('icons/arrow-plus.svg') center/contain no-repeat;mask:url('icons/arrow-plus.svg') center/contain no-repeat}
.article-toc-toggle[aria-expanded="true"]:after{content:"";-webkit-mask-image:url('icons/arrow-minus.svg');mask-image:url('icons/arrow-minus.svg')}
.inner-page select{appearance:none;-webkit-appearance:none;background-image:url('icons/arrow-down.svg');background-position:right 14px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}
.directory-info summary,.court-card summary{list-style:none;display:flex;align-items:center;gap:9px}
.directory-info summary::-webkit-details-marker,.court-card summary::-webkit-details-marker{display:none}
.directory-info summary:before,.court-card summary:before{content:"";width:14px;height:14px;flex:none;background:currentColor;-webkit-mask:url('icons/arrow-down.svg') center/contain no-repeat;mask:url('icons/arrow-down.svg') center/contain no-repeat;transform:rotate(-90deg)}
.directory-info[open]>summary:before,.court-card details[open]>summary:before{transform:none}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:760px){
 .article-tools input,.article-tools select,.directory-page input,.directory-page select{font-size:16px}
 .contact-layout .contact-box a>span:first-child{min-width:0}
 .contact-layout .contact-box strong{overflow-wrap:anywhere}
 .directory-page .directory-filters{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px}
 .directory-page .directory-filters>div{min-width:0}
 .directory-page #clearFilters{grid-column:1/-1;justify-self:start}
 .law-area h2,.law-area p{min-width:0;overflow-wrap:break-word}
 .article-pagination{gap:8px}.article-pagination button{min-height:44px}
}
@media(max-width:380px){.areas-heading{flex-wrap:wrap;gap:6px}.directory-page .directory-filters{grid-template-columns:1fr}.article-pagination button{font-size:12px;padding:8px}.contact-layout{padding:24px 16px}.inner-page .links{gap:8px}.inner-page .links a{font-size:12px}}
.contact-box .contact-arrow .ui-arrow{color:inherit}

/* Question-led discovery shares the site's quiet area-card design. */
.question-entry{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 30px;margin:0 0 34px;border:1px solid #d8ddce;border-radius:14px;background:#e9ede2;text-decoration:none;color:#293c35}
.question-entry>span:first-child{display:grid;gap:8px;min-width:0}
.question-entry small{font:10px/1.6 Arial,sans-serif;letter-spacing:.13em;color:#756246}
.question-entry strong{font:400 30px/1.2 'Cormorant Garamond',Georgia,serif}
.question-entry>span>span{font:14px/1.7 Arial,sans-serif;color:#626c63}
.question-entry:hover{background:#e2e8d8}
.question-entry>.ui-arrow{flex:none;width:22px;height:22px;color:#756246}
.questions-page .pagehero{padding:28px 0 24px}
.questions-page .pagehero h1{font-size:clamp(38px,4.2vw,54px);margin:16px 0}
.question-wrap{max-width:960px}
.questions-page .content{padding-top:12px}
.question-wrap .article-tools{display:flex;align-items:end;gap:18px}
.question-wrap .article-search{flex:1}
#question-search{width:100%;font-size:16px;min-height:50px}
#questions-clear{font:14px Arial,sans-serif;min-height:48px;border:1px solid #d8ddce;border-radius:8px;padding:12px 18px;color:#293c35;background:transparent;cursor:pointer}
.question-groups{display:grid;gap:12px;margin:22px 0 34px}
.question-group{border:1px solid #d8ddce;border-radius:12px;background:#f0f1e9;overflow:hidden;scroll-margin-top:24px}
.question-group summary{display:flex;align-items:center;gap:16px;list-style:none;padding:24px 26px;cursor:pointer;font:400 25px/1.35 'Cormorant Garamond',Georgia,serif;color:#293c35}
.question-group summary::-webkit-details-marker{display:none}
.question-group summary::marker{content:''}
.question-group summary>span{flex:1;min-width:0}
.question-group summary small{white-space:nowrap;font:12px/1.6 Arial,sans-serif;color:#626c63}
.question-group summary::after{content:'';display:block;flex:none;width:18px;height:18px;background:#756246;-webkit-mask:url('icons/arrow-plus.svg') center/contain no-repeat;mask:url('icons/arrow-plus.svg') center/contain no-repeat}
.question-group[open] summary::after{-webkit-mask-image:url('icons/arrow-minus.svg');mask-image:url('icons/arrow-minus.svg')}
.question-group[open] summary{border-bottom:1px solid #d8ddce}
.question-list{padding:0 26px;background:#f8f6f0}
.question-link{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:21px 0;text-decoration:none;border-bottom:1px solid #deded3;color:#293c35}
.question-link:last-child{border-bottom:0}
.question-link>span:first-child{display:grid;gap:6px;min-width:0}
.question-link strong{font:400 16px/1.65 Arial,sans-serif;overflow-wrap:anywhere}
.question-link small{font:12px/1.6 Arial,sans-serif;color:#626c63}
.question-link .ui-arrow{flex:none;color:#756246}
.question-link:hover strong{text-decoration:underline;text-underline-offset:4px}
.question-help{font:14px/1.8 Arial,sans-serif;color:#626c63;max-width:640px}
.question-help a{color:#293c35;text-underline-offset:4px}
@media(max-width:600px){
 .question-entry{padding:22px 20px;gap:14px;margin-bottom:26px}
 .question-entry strong{font-size:27px}
 .question-group summary{padding:20px 18px;gap:10px;font-size:22px}
 .question-group summary small{font-size:11px}
 .question-list{padding:0 18px}
 .question-link{gap:14px;padding:20px 0}
 .question-link strong{font-size:15px}
 .question-wrap .article-tools{flex-wrap:wrap}
 .question-wrap .article-search{flex-basis:100%}
}

/* Directory: consistent desktop and narrow-screen controls. */
.directory-page .court-card {overflow-wrap:anywhere;}
.directory-page .court-building {font-size:13px;line-height:1.65;color:#626d65;margin:0 0 14px;}
.directory-page .court-card summary {min-height:44px;display:flex;align-items:center;gap:12px;cursor:pointer;}
.directory-page .phone-actions a,.directory-page .phone-actions button {min-width:44px;justify-content:center;}
.directory-page .directory-filters>div {min-width:0;}
.directory-page .directory-filters select {width:100%;max-width:100%;}
.directory-page #resultCount {scroll-margin-top:100px;}
.directory-page .court-card details a {overflow-wrap:anywhere;}
@media(max-width:480px){.directory-page .directory-search-area{padding:20px 16px}.directory-page .court-card{padding:22px 18px}.directory-page .phone-entry{gap:6px 12px}.directory-page .phone-actions{flex-wrap:wrap}.directory-page .article-pagination{gap:10px}.directory-page .article-pagination button{padding:10px 12px}}
.directory-page .phone-number small{display:block;font-size:11px;line-height:1.4;color:#626d65;margin-bottom:4px}
@media(max-width:480px){.directory-page #courtSearch{display:grid;grid-template-columns:1fr}.directory-page #courtSearch button{width:100%}}
.directory-page #courtSearch button{min-height:48px}
/* Progressive courthouse / clerk directory */
.directory-page .directory-filters{display:grid;grid-template-columns:1fr 1.2fr 1.2fr;gap:18px}
.directory-page #clearFilters{grid-column:1/-1;justify-self:end;min-height:44px}
.directory-page .court-group{align-self:start}
.directory-page .court-coverage,.directory-page .directory-coverage{font-size:13px;color:#657268;line-height:1.7}
.directory-page .court-group>details{border-top:1px solid #e3e4dc;margin-top:12px;padding-top:4px}
.directory-page .court-unit-row{border-top:1px solid #e3e4dc;padding:18px 0}
.directory-page .court-unit-row:first-child{border-top:0}
.directory-page .court-unit-row h3{font-family:inherit;font-size:15px;font-weight:500;line-height:1.6;margin:0 0 10px;color:#293c35}
.directory-page .court-unit-row p{font-size:12px;line-height:1.7}
.directory-page .court-unit-row .extension-label{font-size:15px;font-weight:500;color:#293c35;background:#edf0e8;border-radius:7px;padding:9px 12px;overflow-wrap:anywhere}
.directory-page .court-unit-row .phone-number{font-size:15px}
.directory-page .court-unit-row .unit-source{margin-top:8px;color:#687168}
.directory-page .unit-source summary{font-size:12px}
.directory-page .unit-more{display:block;width:100%;min-height:44px;border:1px solid #cbd2c6;border-radius:7px;background:#f0f2ea;color:#293c35;padding:12px;cursor:pointer}
.directory-page .court-official a{display:block;padding:9px 0;line-height:1.6}
.directory-page .directory-info p{max-width:80ch;line-height:1.8}
.directory-page select:disabled{opacity:.65;cursor:not-allowed}
@media(max-width:760px){.directory-page .directory-filters{grid-template-columns:1fr}.directory-page #clearFilters{justify-self:start}.directory-page .court-group .phone-actions{margin-left:0}.directory-page .court-group>details>summary{font-size:14px}}

/* Phone actions share one baseline and stay together on every viewport. */
.directory-page .court-card .phone-actions{display:inline-flex;flex-flow:row nowrap;align-items:center;gap:14px;flex-shrink:0}
.directory-page .court-card .phone-actions a,.directory-page .court-card .phone-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:6px 0;line-height:1.4;white-space:nowrap;box-sizing:border-box}
.directory-page .phone-number small{white-space:normal;max-width:100%}
/* Short articles retain a centered reading column without an empty sidebar. */
@media(min-width:761px){.article-page .reading:not(:has(.article-toc)){width:min(760px,calc(100% - 64px));grid-template-columns:minmax(0,1fr)}.reading:not(:has(.article-toc))>.article-body,.reading:not(:has(.article-toc))>.article-end,.reading:not(:has(.article-toc))>.back-to-articles{grid-column:1}}
.article-sources{border-top:1px solid var(--line);padding-top:12px;margin-top:32px;font-size:13px;overflow-wrap:anywhere}
.article-sources>summary{display:flex;align-items:center;gap:12px;min-height:44px;list-style:none;cursor:pointer;color:var(--ink)}
.article-sources>summary::-webkit-details-marker{display:none}
.article-sources>summary::before{content:"";width:14px;height:14px;flex:none;background:currentColor;-webkit-mask:url('icons/arrow-down.svg') center/contain no-repeat;mask:url('icons/arrow-down.svg') center/contain no-repeat;transform:rotate(-90deg)}
.article-sources[open]>summary::before{transform:none}
.reading>header .back-to-articles{min-height:44px;display:inline-flex;align-items:center}
/* Crawlable province index, kept behind one quiet disclosure. */
.province-links{margin:32px 0}
.province-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 20px;padding:16px 0}
.province-link-grid a{display:flex;align-items:center;min-height:44px;font-size:14px;overflow-wrap:anywhere}
.province-directory{padding-bottom:48px}
.province-directory .court-cards{align-items:start}
.province-directory .court-group h2{overflow-wrap:anywhere}
@media(max-width:760px){.province-link-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}.province-directory .pagehero h1{font-size:34px}}
@media(max-width:380px){.province-link-grid{grid-template-columns:1fr}}
