/* Stillwell Dental — original responsive design, built from the text contract.
   Reference media is absent. All photo roles remain explicit placeholders. */
@font-face{font-family:Inter;src:url('fonts/inter-0a48f1da.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Inter;src:url('fonts/inter-be0def27.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}

:root,[data-style="default"]{
  --ink:#172B46;--muted:#172B46;--accent:#244B76;--paper:#FFFFFF;
  --canvas:#FFFCF7;--tint:#F0F5FA;--ornament:#F0BE90;
  --button-bg:#244B76;--button-text:#FFFFFF;--button-hover:#172B46;
  --focus:#172B46;--border:#244B76;--danger:#8A2633;
  --disabled-text:#172B46;--disabled-bg:#F0F5FA;--placeholder:#172B46;
}
:root{--gutter:40px;--section-space:120px;--grid-gap:32px;--header-height:88px;--body-size:1.0625rem;--h1-size:3rem;--h2-size:2.125rem}
[data-style="white-green"]{
  --ink:#173E35;--muted:#173E35;--accent:#245941;--paper:#FFFFFF;
  --canvas:#FFFCF7;--tint:#EFF5E9;--ornament:#C7D59B;
  --button-bg:#245941;--button-text:#FFFFFF;--button-hover:#173E35;
  --focus:#173E35;--border:#245941;--danger:#8A2633;
  --disabled-text:#173E35;--disabled-bg:#EFF5E9;--placeholder:#173E35;
}
[data-style="white-lightgreen"]{
  --ink:#193C35;--muted:#193C35;--accent:#2B6255;--paper:#FFFFFF;
  --canvas:#FFFCF7;--tint:#EEF6F1;--ornament:#BBD9CC;
  --button-bg:#2B6255;--button-text:#FFFFFF;--button-hover:#193C35;
  --focus:#193C35;--border:#2B6255;--danger:#8A2633;
  --disabled-text:#193C35;--disabled-bg:#EEF6F1;--placeholder:#193C35;
}
[data-style="white-lightblue"]{
  --ink:#20384C;--muted:#20384C;--accent:#285D80;--paper:#FFFFFF;
  --canvas:#FFFCF7;--tint:#EFF5FA;--ornament:#B9D8E9;
  --button-bg:#285D80;--button-text:#FFFFFF;--button-hover:#20384C;
  --focus:#20384C;--border:#285D80;--danger:#8A2633;
  --disabled-text:#20384C;--disabled-bg:#EFF5FA;--placeholder:#20384C;
}
[data-style="white-turquoise"]{
  --ink:#173D45;--muted:#173D45;--accent:#21616B;--paper:#FFFFFF;
  --canvas:#FFFCF7;--tint:#EDF5F5;--ornament:#E6CF93;
  --button-bg:#21616B;--button-text:#FFFFFF;--button-hover:#173D45;
  --focus:#173D45;--border:#21616B;--danger:#8A2633;
  --disabled-text:#173D45;--disabled-bg:#EDF5F5;--placeholder:#173D45;
}
[data-style="white-red"]{
  --ink:#3C2933;--muted:#3C2933;--accent:#873F42;--paper:#FFFFFF;
  --canvas:#FFFCF7;--tint:#FAF1EE;--ornament:#E9B8A9;
  --button-bg:#873F42;--button-text:#FFFFFF;--button-hover:#3C2933;
  --focus:#3C2933;--border:#873F42;--danger:#8A2633;
  --disabled-text:#3C2933;--disabled-bg:#FAF1EE;--placeholder:#3C2933;
}

*,*::before,*::after{box-sizing:border-box}
html{font-family:Inter,Arial,sans-serif;font-synthesis:none;color:var(--ink);background:var(--canvas);scroll-behavior:smooth;scroll-padding-top:2rem;-webkit-text-size-adjust:100%}
body{margin:0;font-size:var(--body-size);line-height:1.6;color:var(--ink);background:var(--canvas);overflow-wrap:break-word}
main{display:block}
img,svg{display:block;max-width:100%}
img{height:auto;object-fit:cover}
svg{width:64px;height:auto;flex-shrink:0}
h1,h2,h3,h4{font-weight:500;line-height:1.2;letter-spacing:-.04em;color:inherit;text-wrap:pretty}
h1{font-size:var(--h1-size);line-height:1.16;margin:0 0 1.4rem}
h2{font-size:var(--h2-size);margin:0 0 1.2rem}
h3{font-size:1.5rem;letter-spacing:-.025em;margin:0 0 .85rem}
h4{font-size:1.15rem;letter-spacing:-.015em;margin:0 0 .75rem}
p{margin:0 0 1.2rem}
p:last-child{margin-bottom:0}
ul,ol{margin:0 0 1.3rem;padding-inline-start:1.4em}
li+li{margin-top:.4rem}
figure{margin:0}
figcaption{margin-top:.8rem;font-size:.875rem;line-height:1.5}
a{color:var(--accent);text-decoration:underline;text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{color:var(--ink);text-decoration-thickness:2px}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
button,a,input,select,textarea,summary{touch-action:manipulation}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;box-shadow:0 0 0 3px var(--paper)}
[hidden]{display:none!important}
.js-only{display:none!important}
html.enhanced .js-only:not([hidden]){display:block!important}
html.enhanced .no-js{display:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;inset:8px auto auto 8px;z-index:100;padding:.75rem 1rem;background:var(--paper);transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
.container{width:min(1280px,calc(100% - var(--gutter)*2));margin-inline:auto}
.section{padding-block:var(--section-space)}
.section-tint{background:var(--tint)}
.section-ink{color:var(--paper);background:var(--ink)}
.section-ink :is(a,.eyebrow){color:var(--paper)}
.section-heading{max-width:760px;margin-bottom:3rem}
.section-heading .eyebrow{margin-bottom:1rem}
.section-heading:has(>.ornament){position:relative;padding-right:7rem}
.section-heading>.ornament{position:absolute;right:0;top:0;width:76px;height:76px}
.section-intro{max-width:66ch;margin-bottom:3rem}
.eyebrow{display:block;margin:0 0 1.2rem;font-size:.8125rem;line-height:1.5;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}
.lead{font-size:1.1875rem;line-height:1.65;max-width:58ch}
.small,small{font-size:.875rem;line-height:1.5}
.prose{max-width:66ch}
.prose h2:not(:first-child){margin-top:2.6rem}
.prose h3:not(:first-child){margin-top:2rem}
.prose :is(ul,ol){padding-inline-start:1.4em}
.prose li{padding-inline-start:.25rem}
.prose blockquote{border-left:3px solid var(--accent);margin:2rem 0;padding:.4rem 0 .4rem 1.5rem;font-size:1.25rem}
.button,.text-link{display:inline-flex;justify-content:center;align-items:center;gap:.75rem;min-height:48px;max-width:100%;font-size:.9375rem;font-weight:600;line-height:1.45}
.button{border:1px solid var(--button-bg);padding:.875rem 1.45rem;border-radius:3px;background:var(--button-bg);color:var(--button-text);text-decoration:none;text-align:center}
.button:hover,.button:active{background:var(--button-hover);border-color:var(--button-hover);color:var(--button-text);text-decoration:none}
.button-secondary{color:var(--accent);border-color:var(--accent);background:var(--paper)}
.button-secondary:hover{color:var(--ink);background:var(--tint);border-color:var(--ink)}
.button:disabled{background:var(--disabled-bg);color:var(--disabled-text);border-style:dashed}
.button svg,.text-link svg{width:18px}
.text-link{justify-content:flex-start;text-decoration:underline}
.actions,.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:1.75rem}
.icon-button{display:inline-flex;justify-content:center;align-items:center;min-width:48px;min-height:48px;border:1px solid var(--border);background:var(--paper);color:var(--ink);border-radius:50%;padding:.65rem}
.icon-button svg{width:22px}

/* One visible navigation tree, with native disclosure fallback. */
.site-header{position:relative;z-index:20;background:var(--paper);border-bottom:1px solid var(--tint)}
.header-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem 2rem;min-height:var(--header-height);padding-block:1rem}
.brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);text-decoration:none;line-height:1.2}
.brand:hover{color:var(--ink);text-decoration:none}
.brand-mark,.brand>svg{width:40px;flex:0 0 40px}
.brand-mark svg{width:100%}
.brand-name{font-size:1.35rem;font-weight:600;letter-spacing:-.055em}
.brand-name small{display:block;font-weight:400;letter-spacing:.1em;font-size:.62rem;text-transform:uppercase;margin-top:.2rem}
.brand-name>span{display:block;font-weight:400;letter-spacing:.11em;font-size:.65rem;text-transform:uppercase;margin-top:.2rem}
.header-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}
.header-actions .button{min-height:42px;padding:.65rem 1rem}
.header-actions button:not(.button){border:0;background:transparent;padding:.7rem;color:var(--ink);min-width:44px;min-height:44px}
.nav-panel{flex:1 1 auto}
.nav-list{display:flex;align-items:flex-start;justify-content:center;gap:.3rem 1.2rem;list-style:none;margin:0;padding:0}
.nav-list>li{margin:0}
.nav-list a,.nav-group summary{font-size:.875rem;line-height:1.5;color:var(--ink)}
.nav-list a{display:inline-block;padding:.7rem 0}
.nav-group{position:relative}
.nav-group summary{padding:.7rem .4rem;cursor:pointer}
.nav-group summary::marker{font-size:.7rem}
.nav-submenu{min-width:230px;padding:.8rem 1.2rem;background:var(--paper);border:1px solid var(--border);box-shadow:0 14px 28px #0000000d;list-style:none;margin:0}
.nav-submenu li{margin:0}
.nav-submenu a{display:block;padding:.55rem 0}
.nav-group>.nav-submenu{position:absolute;z-index:22;left:0;top:100%;max-width:min(360px,85vw)}
.nav-panel a[aria-current="page"]{font-weight:600;text-decoration-thickness:2px}
.breadcrumb{display:flex;flex-wrap:wrap;gap:.4rem .6rem;list-style:none;padding:0;margin:0 0 2.2rem;font-size:.8125rem}
.breadcrumb li+li{margin:0}

/* Openings preserve asymmetric content and allow text to determine height. */
.hero,.service-opening{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(2rem,5vw,5rem)}
.hero-copy{position:relative;z-index:1;max-width:600px}
.hero-copy p{max-width:56ch}
.hero-art{position:relative;min-width:0}
.hero-art>.ornament{position:absolute;right:-1rem;bottom:-1.6rem;width:32%;z-index:1;pointer-events:none}
.hero-art .media-placeholder{position:relative;z-index:0}
.hero-home h1{max-width:11.5em}
.hero-home .hero-art{padding:1.5rem 0 1.5rem 1.5rem}
.hero-home .hero-art>.media-placeholder{border-radius:48% 48% 4px 4px}
.hero-centered{display:block;text-align:center;max-width:820px;margin-inline:auto}
.hero-centered .hero-copy{margin-inline:auto;max-width:760px}
.hero-centered p{margin-inline:auto}
.hero-centered .actions{justify-content:center}
.hero-centered .ornament{width:150px;margin:0 auto 2rem;color:var(--ornament)}
.hero-profile{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.hero-profile .hero-art{max-width:470px;justify-self:center;width:100%}
.hero-profile h1{max-width:12em}
.opening-media{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:1rem}
.opening-media>:nth-child(2){margin-top:4rem}
.hero-art>.opening-media{grid-template-columns:1.3fr .9fr}
.opening-media>.media-placeholder:only-child{grid-column:1/-1}
.ornament{color:var(--ornament);width:180px;max-width:100%;pointer-events:none}
.ornament svg{width:100%;height:100%}

/* Placeholder areas are CSS geometry, never fabricated accepted photographs. */
.media-placeholder{display:grid;align-content:center;justify-items:center;position:relative;isolation:isolate;min-width:0;width:100%;aspect-ratio:4/3;min-height:9rem;padding:1.5rem;background:var(--tint);color:var(--placeholder);border:1px solid var(--border)}
.media-placeholder::before{content:"";position:absolute;inset:14%;z-index:-1;border:1px solid var(--border);border-radius:50%;opacity:.22;pointer-events:none}
.media-label{max-width:92%;margin:0;text-align:center;background:var(--paper);color:var(--ink);padding:.65rem .8rem;font-size:.8125rem;line-height:1.5;position:relative}
.media-label strong,.media-label span{display:block}
.media-label small{font-size:inherit}
.media-label .eyebrow{font-size:.625rem;line-height:1.5;margin-bottom:.4rem;letter-spacing:.07em}
.media-oval,.media-portrait{aspect-ratio:4/5;border-radius:50% 50% 46% 46%;padding:1.5rem}
.media-square{aspect-ratio:1}
.media-landscape,.media-wide{aspect-ratio:16/10}
.media-tour{aspect-ratio:16/10}
.media-banner{aspect-ratio:16/7}
.media-placeholder img{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;object-fit:cover;object-position:var(--media-position,50% 50%)}

/* Content grids keep DOM and visual order equal at every breakpoint. */
.grid{display:grid;gap:var(--grid-gap)}
.grid>*{min-width:0}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3,.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--grid-gap)}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-card{display:flex;flex-direction:column;align-items:flex-start;padding:2rem;background:var(--paper);border:1px solid var(--border);border-radius:5px;min-width:0}
.service-card>svg,.service-card>.icon{width:64px;margin-bottom:1.6rem;color:var(--accent)}
.service-card h3{font-size:1.45rem}
.service-card>.card-copy{padding-top:0}
.service-card .text-link{margin-top:auto;padding-top:1rem}
.card-copy{padding-top:1.4rem}
.person-card{min-width:0}
.person-card>.media-placeholder{max-width:300px;margin-inline:auto}
.person-copy{padding-top:1.6rem}
.person-copy h3{margin-bottom:.45rem}
.person-copy .eyebrow{font-size:.75rem;margin-bottom:1rem}
.person-copy .text-link{margin-top:.75rem}
.grid-2>.person-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:1.5rem;align-items:center;padding-block:1rem}
.grid-2>.person-card .person-copy{padding-top:0}
.support-card .media-placeholder{aspect-ratio:1;border-radius:50%;padding:18% 10%}
.support-card h3{font-size:1.25rem}
.support-card>.media-placeholder+h3{margin-top:1.5rem}
.support-card .card-copy{padding-top:1.2rem}
.article-card{min-width:0}
.article-card .media-placeholder{aspect-ratio:3/2}
.article-card h3{font-size:1.4rem}
.article-card .eyebrow{font-size:.75rem;margin-bottom:.75rem}
.article-card .text-link{margin-top:1rem}
.principles-grid,.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 3rem}
.benefits-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.principle,.benefit{border-top:1px solid var(--border);padding-top:1.5rem}
.principle svg,.benefit svg{width:42px;margin-bottom:1rem}
.trust-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.5rem}
.trust-strip h3{font-size:1.2rem}

/* Separate service structures: ruled article, procedure and horizontal rows. */
.service-layout{display:grid;grid-template-columns:minmax(0,9fr) minmax(0,3fr);gap:4rem;align-items:stretch}
.service-main{min-width:0}
.service-sidebar{min-width:0;border-left:1px solid var(--border);padding-left:2rem}
.sidebar-inner{position:sticky;top:112px;padding-bottom:2rem}
.sidebar-inner h2,.sidebar-inner h3{font-size:1.25rem;letter-spacing:-.02em}
.sidebar-inner .button{width:100%;margin-top:1rem}
.sidebar-inner .link-list{font-size:.9375rem}
.ruled-row{padding:2.4rem 0;border-top:1px solid var(--border)}
.ruled-row:first-child{padding-top:0;border-top:0}
.ruled-row h2{font-size:1.75rem}
.ruled-row .prose{max-width:66ch}
.treatment-row,.alternating-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,5rem);align-items:center;margin-bottom:4rem}
.treatment-row:last-child,.alternating-row:last-child{margin-bottom:0}
.treatment-row:nth-child(even)>.media-placeholder,.alternating-row:nth-child(even)>.media-placeholder{grid-column:2;grid-row:1}
.treatment-row:nth-child(even)>.card-copy,.alternating-row:nth-child(even)>.card-copy,.alternating-row:nth-child(even)>.prose{grid-column:1;grid-row:1}
.treatment-row .card-copy,.alternating-row .card-copy{padding-top:0}
.step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;list-style:none;margin:0;padding:0}
.step-card{margin:0;min-width:0;padding:1.75rem;background:var(--tint)}
.step-card>svg{width:76px;margin-bottom:1.5rem;color:var(--accent)}
.step-card h3{font-size:1.25rem}
.step-number{display:block;font-size:.8rem;font-weight:600;letter-spacing:.08em;margin-bottom:.7rem}
.step-card .eyebrow{margin-bottom:.7rem}
.service-main>.media-placeholder{margin-block:2rem}
.treatment-card .media-placeholder{aspect-ratio:4/3}
.treatment-card .card-copy{padding-block:1.5rem}
.conversation-row,.role-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(0,3fr);gap:2rem;padding-block:1.6rem;border-top:1px solid var(--border)}
.conversation-row h3,.role-row h3{font-size:1.2rem}
.conversation-row:last-child,.role-row:last-child{border-bottom:1px solid var(--border)}
.conversation-rows{margin-bottom:3rem}
.conversation-rows>section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:1.5rem;padding-block:1.75rem;border-top:1px solid var(--border)}
.conversation-rows>section>p{grid-column:2}
.conversation-rows h3{font-size:1.25rem}
.promise-grid>section{padding-top:1.5rem;border-top:1px solid var(--border)}
.prose>section+section{margin-top:2.5rem}

.faq-list{max-width:880px}
.faq-list details,.procedure-disclosures details{border-top:1px solid var(--border);padding:0}
.faq-list details:last-child,.procedure-disclosures details:last-child{border-bottom:1px solid var(--border)}
.faq-list summary,.procedure-disclosures summary{cursor:pointer;padding:1.4rem 2rem 1.4rem .2rem;font-size:1.125rem;font-weight:600;line-height:1.45}
.faq-list summary::marker,.procedure-disclosures summary::marker{color:var(--accent)}
.faq-list details>div,.procedure-disclosures details>div{padding:0 2rem 1.75rem .2rem;max-width:70ch}
.faq-list details>p,.procedure-disclosures details>p{margin:.1rem 2rem 1.5rem .2rem}
.faq-list details[open] summary,.procedure-disclosures details[open] summary{padding-bottom:1rem}
.procedure-list{margin-block:2rem}
.procedure-list details{border-top:1px solid var(--border)}
.procedure-list details:last-child{border-bottom:1px solid var(--border)}
.procedure-list summary{padding:1.3rem .3rem;cursor:pointer;font-size:1.0625rem;line-height:1.5;font-weight:600}
.procedure-list details>p{padding:0 .3rem 1.5rem;margin:0;max-width:66ch}
.procedure-list details[open] summary{padding-bottom:.8rem}

/* Five identities remain available in ordinary HTML before enhancement. */
.gallery-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.gallery-trigger{display:block;width:100%;text-align:left;padding:0;border:0;background:transparent;color:var(--ink)}
.gallery-trigger .media-placeholder{aspect-ratio:1;padding:.8rem}
.gallery-trigger .media-label{font-size:.75rem;padding:.4rem}
.gallery-trigger>span{display:block;margin-top:.8rem;text-decoration:underline;text-underline-offset:.2em}
.gallery-trigger:hover .media-placeholder{box-shadow:inset 0 0 0 2px var(--accent)}
.gallery-grid>article>h3{font-size:1.1rem;margin-top:1rem;line-height:1.4}
.gallery-grid>article>.media-placeholder{padding:.65rem;aspect-ratio:1}
.gallery-grid>article>.media-placeholder .media-label{font-size:.75rem;padding:.4rem}
.gallery-grid .gallery-trigger{font-size:.875rem;text-decoration:underline;text-underline-offset:.22em;min-height:44px}
.tour-slide>h3,.lightbox-slide>h3{margin-top:1.5rem}
.practice-tour{position:relative}
.tour-slide{margin:0 0 3rem}
html.enhanced .tour-slide{margin-bottom:0}
.tour-slide figcaption{max-width:75ch;margin-block:1.2rem}
.tour-controls,.gallery-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}
.tour-thumbnails{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin-top:1.5rem}
.tour-thumbnails button{border:1px solid var(--border);padding:.7rem 1rem;background:var(--paper);color:var(--ink);font-size:.875rem;min-height:46px;line-height:1.4}
.tour-thumbnails button:has(.media-placeholder){padding:.45rem;text-align:left;align-self:start}
.tour-thumbnails button>.media-placeholder{aspect-ratio:16/10;min-height:0;padding:.35rem;margin-bottom:.7rem;border:0}
.tour-thumbnails button .media-label{max-width:100%;font-size:.6875rem;line-height:1.4;padding:.25rem}
.tour-thumbnails button .media-label .eyebrow{font-size:.5625rem;letter-spacing:.02em}
.tour-thumbnails button:has(.media-placeholder)[aria-pressed="true"],.tour-thumbnails button:has(.media-placeholder)[aria-current="true"]{padding:calc(.45rem - 2px)}
.tour-thumbnails button[aria-current="true"],.tour-thumbnails button[aria-pressed="true"]{border:3px solid var(--accent);padding:calc(.7rem - 2px) calc(1rem - 2px);font-weight:600;text-decoration:underline;text-underline-offset:.2em}

/* Practical information, full reading content and local previews. */
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 4rem}
.contact-panel,.notice,.urgent-panel{padding:2rem;background:var(--tint);border-left:3px solid var(--accent)}
.notice{font-size:.9375rem;margin-bottom:2rem}
.urgent-panel{background:var(--paper);border-color:var(--danger)}
.urgent-panel h2,.urgent-panel h3{font-size:1.35rem}
.access-diagram,.access-diagram svg{width:100%;height:auto}
.access-diagram{padding:1rem;background:var(--paper)}
.hours-table,.schedule-table,.fees-table{border-collapse:collapse;width:100%;font-size:.9375rem;text-align:left}
table caption{text-align:left;margin-bottom:1rem;font-weight:600}
th,td{padding:.85rem .8rem .85rem 0;vertical-align:top;border-bottom:1px solid var(--border);overflow-wrap:break-word}
th{font-weight:600}
thead th{padding-top:0}
.hours-table td:last-child,.schedule-table td:last-child{text-align:right}
.table-scroll{max-width:100%;overflow-x:auto}
.download-list,.link-list{list-style:none;margin:0;padding:0}
.download-list li,.link-list li{margin:0;padding:.8rem 0;border-top:1px solid var(--border)}
.download-list a{display:flex;align-items:center;gap:1rem}
.download-list svg{width:32px}
.document-list{display:grid;gap:1.5rem;margin-block:2rem}
.document-card{border-top:1px solid var(--border);padding-top:1.5rem}
.document-card>svg{width:34px;margin-bottom:1rem}
.document-card h3{font-size:1.25rem}
.document-card p{font-size:.9375rem}
.fee-list{margin-block:3rem;max-width:940px}
.fee-list dl{margin:1.5rem 0 0}
.fee-list dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:2rem;padding-block:1.5rem;border-top:1px solid var(--border)}
.fee-list dt{font-weight:600}
.fee-list dd{margin:0}
.fee-list dd p{margin-top:.65rem;font-size:.9375rem}
.access-guide>.prose{margin-top:2rem}
.hours+p,.hours-table+p{margin-top:1rem;font-size:.875rem}
.hours>.icon,.access-guide>.icon{width:36px;margin-bottom:1.2rem}
.urgent-note{margin-top:2rem;border-color:var(--danger)}
.preview-form{padding:2rem;background:var(--paper);border:1px solid var(--border);max-width:940px}
.preview-form form>.field{margin-bottom:1.5rem}
.preview-form fieldset>label{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:1rem}
.preview-form fieldset>label input{margin-top:.25rem}
.button-row>button,.tour-controls>button,.gallery-controls>button,[data-search-form] button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;max-width:100%;min-height:48px;padding:.85rem 1.25rem;border:1px solid var(--button-bg);border-radius:3px;background:var(--button-bg);color:var(--button-text);font-size:.9375rem;font-weight:600;line-height:1.45}
.button-row>button:hover,.tour-controls>button:hover,.gallery-controls>button:hover,[data-search-form] button:hover{background:var(--button-hover);border-color:var(--button-hover)}
.button-row>button[type="reset"],[data-search-form] button[type="reset"]{background:var(--paper);color:var(--accent)}
.button-row>button[type="reset"]:hover,[data-search-form] button[type="reset"]:hover{background:var(--tint);color:var(--ink)}
[data-search-form]>label{display:block;font-weight:600;font-size:.9375rem;margin-bottom:.5rem}
[data-search-status]{margin-top:1.5rem}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
.field{min-width:0}
.field label,.field legend{display:block;font-weight:600;font-size:.9375rem;margin-bottom:.5rem}
.field small,.field .hint{display:block;font-size:.875rem;margin-top:.5rem}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{display:block;width:100%;max-width:100%;min-height:48px;line-height:1.5;padding:.75rem;border:1px solid var(--border);background:var(--paper);border-radius:2px}
input::placeholder,textarea::placeholder{color:var(--placeholder);opacity:1}
input[type="checkbox"],input[type="radio"]{width:1.2rem;height:1.2rem;flex-shrink:0;accent-color:var(--accent)}
input:disabled,select:disabled{color:var(--disabled-text);background:var(--disabled-bg);opacity:1;cursor:not-allowed}
fieldset{min-width:0;margin:0 0 1.5rem;padding:0;border:0}
legend{font-weight:600;margin-bottom:.75rem}
.check-label{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:1rem}
.check-label input{margin-top:.25rem}
[aria-invalid="true"]{border-width:2px!important;border-color:var(--danger)!important}
.error-summary{background:var(--paper);color:var(--danger);padding:1.25rem;border:2px solid var(--danger);margin-bottom:1.5rem}
.error-summary a{color:var(--danger)}
.error-summary h2,.error-summary h3{font-size:1.25rem}
.field-error{color:var(--danger);font-size:.875rem;display:block;margin-top:.5rem}
.result-panel{padding:1.5rem;border:2px solid var(--accent);background:var(--tint);margin-top:1.5rem}
.result-panel h2,.result-panel h3{font-size:1.35rem}
.reading-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2rem;list-style:none;padding:0}
.reading-index li{padding:1rem 0;border-bottom:1px solid var(--border);margin:0;min-width:0}
nav.reading-index{display:block}
nav.reading-index>.link-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 2rem}
.search-form{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap;margin-bottom:2rem}
.search-form .field{flex:1 1 260px}
.search-results{list-style:none;padding:0;margin:1.5rem 0}
.search-result{display:grid;grid-template-columns:130px minmax(0,1fr);gap:1.5rem;border-top:1px solid var(--border);padding:1.5rem 0;margin:0}
.search-result>.media-placeholder{aspect-ratio:1;min-height:0;padding:.7rem}
.search-result .media-label{font-size:.7rem;padding:.35rem}
.search-result:not(:has(.media-placeholder)){grid-template-columns:1fr}
.search-result h3{font-size:1.3rem}
.search-result h2{font-size:1.4rem}
.search-result:not(:has(.media-placeholder)){gap:.2rem}
.search-result .eyebrow{font-size:.75rem;margin-bottom:.5rem}
.pagination{display:flex;align-items:center;justify-content:center;gap:.6rem;flex-wrap:wrap;margin-top:3rem}
.pagination a,.pagination button,.pagination [aria-current]{display:inline-flex;align-items:center;justify-content:center;min-width:46px;min-height:46px;padding:.55rem 1rem;border:1px solid var(--border);background:var(--paper);font-size:.9375rem}
.pagination [aria-current]{border-width:2px;background:var(--tint);font-weight:600;text-decoration:underline;text-underline-offset:.2em}
.pagination button:disabled{background:var(--disabled-bg);color:var(--disabled-text);border-style:dashed}
.article-header{max-width:840px;margin:0 auto 3rem;text-align:center}
.article-header h1{max-width:18em;margin-inline:auto}
.article-header .eyebrow{margin-bottom:1.2rem}
.article-body{max-width:1000px;margin-inline:auto}
.article-body.prose{max-width:66ch;margin-top:3rem}
.article-header>.lead{margin-inline:auto}
.article-header+.media-placeholder{max-width:1060px;margin-inline:auto;aspect-ratio:16/9}
.editorial-note{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border);font-size:.875rem}
.article-body>.media-placeholder{margin-bottom:3.5rem;aspect-ratio:16/9}
.article-body>.prose,.article-sections{max-width:66ch;margin-inline:auto}
.article-section{margin-top:2.5rem}
.article-section>.media-placeholder,.article-sections>.media-placeholder{margin-block:2.5rem}
.article-section h2{font-size:1.75rem}
.author-block{display:grid;grid-template-columns:100px minmax(0,1fr) 64px;gap:1.5rem;align-items:center;max-width:840px;margin:3.5rem auto 0;padding:2rem;background:var(--tint)}
.author-block>.media-placeholder{aspect-ratio:1;min-height:0;border-radius:50%;padding:.4rem}
.author-block .media-label{font-size:.7rem;padding:.2rem}
.author-block h2,.author-block h3{font-size:1.25rem}
.author-ornament{color:var(--ornament);width:40px;height:64px;justify-self:center;flex-shrink:0}
.author-ornament svg{width:100%;height:100%}
[data-style="white-lightgreen"] .author-ornament,[data-style="white-turquoise"] .author-ornament{width:64px;height:40px}
.author-intro{display:grid;grid-template-columns:170px minmax(0,1fr);gap:2rem;max-width:840px;margin-inline:auto;align-items:center}
.author-intro .media-placeholder{aspect-ratio:1;border-radius:50%;padding:1rem}

/* CTAs keep text on an opaque panel independently of future photo crops. */
.contact-cta{position:relative;isolation:isolate;padding:4rem;background:var(--tint);min-width:0}
.contact-cta h2{max-width:18em}
.contact-cta p{max-width:53ch}
.contact-cta .cta-copy,.contact-cta>.prose{position:relative;z-index:1;background:var(--paper);padding:2.5rem;max-width:650px}
.contact-cta .cta-panel{position:relative;z-index:1;background:var(--paper);padding:2.5rem;max-width:650px}
.contact-cta .cta-panel>.button{margin-top:1.5rem}
.photo-cta{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:center;gap:2rem;background:var(--tint)}
.photo-cta>.media-placeholder{aspect-ratio:5/4;grid-column:2;grid-row:1}
.photo-cta>.cta-copy{grid-column:1;grid-row:1}
.photo-cta>.cta-panel{grid-column:1;grid-row:1}
.geometric-cta>.ornament{position:absolute;right:2rem;top:50%;transform:translateY(-50%);width:28%;z-index:0}
.geometric-cta{overflow:hidden}
.geometric-cta::after{content:"";position:absolute;width:310px;height:310px;border:58px solid var(--ornament);border-radius:50%;right:-65px;top:calc(50% - 155px);z-index:-1;pointer-events:none}
.geometric-cta>*{position:relative;z-index:1}

.site-footer{background:var(--ink);color:var(--paper);padding-block:4.5rem 1.75rem}
.site-footer :is(a,.brand,.eyebrow){color:var(--paper)}
.site-footer .brand{margin-bottom:1.75rem}
.site-footer h2{font-size:2rem;max-width:20em;margin-bottom:2.5rem}
.footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;padding-bottom:3rem}
.footer-group h3{font-size:.8125rem;letter-spacing:.09em;text-transform:uppercase;font-weight:600;margin-bottom:1rem}
.footer-group ul{list-style:none;padding:0;margin:0}
.footer-group li{margin:.4rem 0}
.footer-group a{font-size:.9375rem;display:inline-block;padding:.3rem 0}
.footer-bottom{padding-top:1.75rem;border-top:1px solid var(--paper);display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;flex-wrap:wrap;font-size:.8125rem;line-height:1.6}
.footer-bottom p{max-width:75ch}
.site-footer .link-list li{border:0;padding:0}
.site-footer th,.site-footer td{border-color:var(--paper)}
.site-footer .contact-grid{padding-bottom:3rem}
.style-switcher{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:1.5rem;font-size:.8125rem}
.style-switcher a[aria-current="page"]{font-weight:600;text-decoration-thickness:2px}
.style-switcher a[aria-current="true"]{font-weight:600;text-decoration-thickness:2px}
.site-footer :focus-visible,.section-ink :focus-visible{outline-color:var(--paper);box-shadow:0 0 0 3px var(--ink)}

/* Native modal dialogs handle close, scroll and enlarged text without clipping. */
dialog.modal,dialog.search-dialog,dialog.lightbox-dialog{padding:0;border:1px solid var(--border);color:var(--ink);background:var(--paper);width:min(940px,calc(100% - 2rem));max-width:calc(100% - 2rem);max-height:calc(100dvh - 2rem);margin:auto;overflow:auto;overscroll-behavior:contain}
dialog::backdrop{background:#142538bf}
.modal-inner{position:relative;padding:3rem}
.modal-close{position:sticky;top:.6rem;float:right;z-index:3;display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding:.5rem .8rem;border:1px solid var(--border);background:var(--paper);color:var(--ink);margin:0 0 1rem 1rem}
.modal-close svg{width:20px}
.lightbox-slide{clear:both}
.lightbox-slide .media-placeholder{aspect-ratio:1;max-width:600px;margin-inline:auto}
.lightbox-slide figcaption{max-width:66ch;margin:1.2rem auto 0}
.search-dialog h2{padding-right:4rem}
.error-page{position:relative;isolation:isolate;display:grid;align-content:center;min-height:100svh;padding:5rem var(--gutter);text-align:center;background:var(--tint)}
.error-page .brand{justify-content:center;margin-bottom:3rem}
.error-page h1{max-width:14em;margin-inline:auto}
.error-page p{max-width:50ch;margin-inline:auto}
.error-page .actions{justify-content:center}
.error-page .ornament{width:200px;margin:0 auto 2rem}
.error-page>.section-heading{margin-inline:auto}
.error-page>.button-row{justify-content:center}
[data-route="error-404"] #error-message{padding:0}
[data-route="error-404"] #error-message>.container{width:100%;max-width:none}

@media(min-width:1200px){
  .header-inner>.nav-panel{flex:0 1 auto}
  .site-header>.nav-panel{width:auto;position:absolute;left:50%;top:22px;transform:translateX(-50%)}
  .site-header>.nav-panel .nav-list{gap:1rem}
}
@media(max-width:1199px){
  :root{--gutter:32px;--section-space:96px;--grid-gap:24px;--h1-size:2.75rem;--h2-size:2rem}
  .header-inner{gap:1rem}
  .nav-list{gap:.7rem}
  .header-actions .button{padding:.65rem .8rem}
  .service-layout{gap:2.5rem;grid-template-columns:minmax(0,8fr) minmax(0,3fr)}
  .service-sidebar{padding-left:1.5rem}
  .service-card{padding:1.5rem}
  .benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .grid-2>.person-card{grid-template-columns:1fr;align-content:start;gap:1.5rem}
  .grid-2>.person-card>.media-placeholder{max-width:270px}
  .contact-cta{padding:2.5rem}
  .contact-cta .cta-copy,.contact-cta>.prose{padding:2rem}
  .contact-cta .cta-panel{padding:2rem}
}
@media(max-width:959px){
  :root{--gutter:24px;--section-space:72px;--h1-size:2.4375rem;--h2-size:1.8125rem}
  .header-inner{min-height:80px}
  .nav-panel{flex-basis:100%;order:3}
  .site-header>.nav-panel{padding-bottom:1rem}
  .nav-list{justify-content:flex-start;flex-wrap:wrap;gap:.5rem 1.5rem}
  .nav-group>.nav-submenu{position:static;box-shadow:none;margin-top:.25rem}
  .header-actions{margin-left:auto}
  .hero,.service-opening{gap:2.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-copy h1{max-width:none}
  .hero-home{grid-template-columns:1fr}
  .hero-home .hero-copy{max-width:660px}
  .hero-home .hero-art{max-width:700px;padding:0 2rem 1.5rem 0}
  .hero-home .hero-art>.media-placeholder{aspect-ratio:16/10;border-radius:35% 35% 3px 3px}
  .hero-art>.opening-media{grid-template-columns:1fr}
  .opening-media>:nth-child(2){margin-top:0}
  .hero-profile{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
  .service-grid,.grid-3,.grid-4,.principles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-2>.person-card{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:1.5rem}
  .grid-2:has(>.person-card){grid-template-columns:1fr;gap:2rem}
  .service-layout{grid-template-columns:1fr;gap:2.5rem}
  .service-sidebar{padding:2rem 0 0;border-left:0;border-top:1px solid var(--border)}
  .sidebar-inner{position:static;max-width:66ch;padding:0}
  .sidebar-inner .button{width:auto}
  .step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .treatment-row,.alternating-row{gap:2rem;margin-bottom:3rem}
  .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tour-slide .media-tour{aspect-ratio:4/3}
  .tour-thumbnails{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tour-thumbnails button>.media-placeholder{aspect-ratio:16/10}
  .contact-grid{gap:2.5rem}
  .reading-index{grid-template-columns:repeat(2,minmax(0,1fr))}
  nav.reading-index>.link-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .author-block{grid-template-columns:90px minmax(0,1fr) 64px;padding:1.5rem;gap:1rem}
  .photo-cta{grid-template-columns:1fr}
  .photo-cta>.media-placeholder{grid-column:1;grid-row:2;aspect-ratio:16/7}
  .photo-cta>.cta-copy{grid-column:1;grid-row:1;max-width:none}
  .photo-cta>.cta-panel{grid-column:1;grid-row:1;max-width:none}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:639px){
  :root{--gutter:20px;--section-space:56px;--grid-gap:28px;--h1-size:2.125rem;--h2-size:1.6875rem}
  h3{font-size:1.375rem}
  .section-heading,.section-intro{margin-bottom:2rem}
  .section-heading:has(>.ornament){padding-right:4.5rem}
  .section-heading>.ornament{width:48px;height:48px}
  .lead{font-size:1.125rem}
  .header-inner{padding-block:.8rem;gap:.7rem}
  .brand-name{font-size:1.15rem}
  .brand-mark,.brand>svg{width:33px;flex-basis:33px}
  .header-actions{gap:0;flex-wrap:wrap}
  .header-actions .button{font-size:.75rem;min-height:42px;padding:.55rem .65rem}
  .nav-list{display:block}
  .nav-group{border-top:1px solid var(--border)}
  .nav-group summary{padding:1rem .3rem;font-size:1rem}
  .nav-group>.nav-submenu{min-width:0;max-width:none;border:0;padding:.2rem 1rem 1rem}
  .nav-submenu a{font-size:.9375rem}
  .breadcrumb{margin-bottom:1.6rem}
  .hero,.service-opening,.hero-profile{grid-template-columns:1fr;gap:2.25rem}
  .hero-home .hero-art{padding:0 .8rem 1rem 0}
  .hero-home .hero-art>.media-placeholder{aspect-ratio:4/5;border-radius:45% 45% 3px 3px}
  .hero-art>.ornament{right:-.5rem;bottom:0;width:35%}
  .hero-profile .hero-art{max-width:330px}
  .hero-centered .ornament{width:105px;margin-bottom:1.5rem}
  .opening-media{gap:.75rem}
  .hero-art>.opening-media{grid-template-columns:1.2fr 1fr}
  .opening-media>:nth-child(2){margin-top:2.5rem}
  .opening-media .media-placeholder{padding:.65rem;min-height:200px}
  .opening-media .media-label{font-size:.75rem;padding:.5rem}
  .media-placeholder{padding:1rem}
  .media-oval,.media-portrait{padding:1.5rem}
  .media-label{font-size:.8125rem}
  .grid-2,.grid-3,.grid-4,.service-grid,.principles-grid,.benefits-grid,.trust-strip{grid-template-columns:1fr}
  .service-card{padding:1.75rem}
  .service-card>svg{width:56px;margin-bottom:1.25rem}
  .grid-2>.person-card{grid-template-columns:1fr;gap:1.4rem}
  .grid-2>.person-card>.media-placeholder,.person-card>.media-placeholder{max-width:300px}
  .support-card .media-placeholder{max-width:280px;margin-inline:auto}
  .support-card .card-copy{max-width:400px}
  .treatment-row,.alternating-row{grid-template-columns:1fr;gap:1.5rem;margin-bottom:3rem}
  .treatment-row:nth-child(even)>.media-placeholder,.alternating-row:nth-child(even)>.media-placeholder,.treatment-row:nth-child(even)>.card-copy,.alternating-row:nth-child(even)>.card-copy,.alternating-row:nth-child(even)>.prose{grid-column:auto;grid-row:auto}
  .step-grid{grid-template-columns:1fr;gap:1.25rem}
  .step-card{padding:1.5rem}
  .ruled-row{padding:1.75rem 0}
  .ruled-row h2{font-size:1.55rem}
  .conversation-row,.role-row{grid-template-columns:1fr;gap:.5rem}
  .conversation-rows>section,.fee-list dl>div{grid-template-columns:1fr;gap:.5rem}
  .conversation-rows>section>p{grid-column:1}
  .faq-list summary,.procedure-disclosures summary{font-size:1rem;padding-right:.5rem}
  .faq-list details>div,.procedure-disclosures details>div{padding-right:.2rem}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem .75rem}
  .gallery-grid>:last-child{max-width:calc((100% - .75rem)/2);grid-column:1/-1}
  .gallery-trigger .media-placeholder{padding:.5rem}
  .gallery-trigger .media-label{font-size:.6875rem;padding:.35rem;max-width:100%}
  .tour-slide .media-tour{aspect-ratio:auto;min-height:300px}
  .tour-thumbnails{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}
  .tour-thumbnails button{font-size:.8125rem;flex:1 1 120px}
  .tour-thumbnails button>.media-placeholder{min-height:0;aspect-ratio:16/10}
  .contact-grid,.form-grid{grid-template-columns:1fr;gap:1.5rem}
  .contact-panel,.notice,.urgent-panel,.preview-form{padding:1.5rem}
  .access-diagram{padding:0}
  .hours-table,.schedule-table,.fees-table{font-size:.875rem}
  th,td{padding:.75rem .4rem .75rem 0}
  .reading-index{grid-template-columns:1fr}
  nav.reading-index>.link-list{grid-template-columns:1fr}
  .search-result{grid-template-columns:85px minmax(0,1fr);gap:1rem}
  .search-result>.media-placeholder{padding:.25rem;align-self:start}
  .search-result .media-label{font-size:.6rem;padding:.2rem;max-width:100%}
  .pagination{gap:.4rem;margin-top:2rem}
  .pagination a,.pagination button,.pagination [aria-current]{padding:.5rem .75rem}
  .article-header{margin-bottom:2rem}
  .article-body>.media-placeholder{margin-bottom:2.5rem;aspect-ratio:4/3}
  .article-section h2{font-size:1.55rem}
  .author-block{grid-template-columns:1fr;gap:1.25rem;padding:1.5rem}
  .author-block>.media-placeholder{max-width:110px;min-height:110px;padding:1rem}
  .author-ornament{display:none!important}
  .author-intro{grid-template-columns:1fr;text-align:left;gap:1.5rem}
  .author-intro .media-placeholder{max-width:180px}
  .contact-cta{padding:1.5rem}
  .contact-cta .cta-copy,.contact-cta>.prose{padding:1.5rem}
  .contact-cta .cta-panel{padding:1.5rem}
  .photo-cta{display:block;background:var(--tint)}
  .photo-cta>.media-placeholder{display:none}
  .geometric-cta::after{right:-160px;opacity:.65}
  .site-footer{padding-top:3rem}
  .site-footer h2{font-size:1.6875rem}
  .footer-grid{gap:2rem 1rem}
  .footer-group h3{font-size:.75rem}
  .footer-group a{font-size:.875rem}
  .footer-bottom{gap:1rem}
  .modal-inner{padding:1.25rem}
  dialog.modal,dialog.search-dialog,dialog.lightbox-dialog{width:calc(100% - 1rem);max-width:calc(100% - 1rem);max-height:calc(100dvh - 1rem)}
  .search-dialog h2{padding-right:0;clear:both}
  .modal-close{top:.25rem}
  .error-page{padding-block:3rem}
}
@media(prefers-reduced-motion:no-preference){
  .button,.icon-button,.tour-thumbnails button{transition:background-color 160ms ease,border-color 160ms ease}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
@media print{
  body{color:#172B46;background:white;font-size:11pt}
  .site-header,.site-footer,.js-only,.contact-cta,.style-switcher{display:none!important}
  .container{width:100%}
  .section{padding-block:1.5rem}
  .service-layout{display:block}
  .sidebar-inner{position:static}
  .media-placeholder{break-inside:avoid}
  .prose{max-width:none}
  a{color:inherit}
}
.source-ornament{width:6rem;height:6rem;margin:1.5rem 0 2rem auto;display:flex;align-items:center;justify-content:center;pointer-events:none}
.source-ornament>.ornament{display:block;width:100%;height:100%;margin:0}
.error-page>.source-ornament{margin-inline:auto}
@media(max-width:639px){.source-ornament{width:3rem;height:3rem;margin-block:1rem}}
.opening-media>.media-placeholder:first-child:nth-last-child(2){grid-column:1/-1}
.opening-media>.source-ornament{position:absolute;right:0;bottom:0;margin:0;z-index:1}
.hero-centered>.source-ornament{margin-inline:auto}
.contact-cta>.source-ornament{position:absolute;right:1rem;top:1rem;margin:0;z-index:0}
.service-resources{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}
.service-resources>.document-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}
.search-hours{margin-block:1.5rem}
.search-hours summary{cursor:pointer;padding-block:.6rem}
.modal-close>.icon{display:inline-block;width:1rem;vertical-align:middle;margin-right:.4rem}
:where(h1,h2,h3,h4,p,li,dt,dd,a,button,label,th,td,caption,summary,figcaption,span){overflow-wrap:anywhere}
th,td{overflow-wrap:anywhere}
@media(max-width:639px){.service-resources>.document-list{grid-template-columns:1fr}}
.site-header.header-wrap>.nav-panel,.site-header:not(.header-measured)>.nav-panel{position:static;transform:none;width:calc(100% - 2 * var(--gutter));padding-bottom:1rem}
.header-wrap .nav-list{flex-wrap:wrap}
