/* Source: site.css */
:root{--navy:#123856;--deep:#0b2941;--blue:#2c6386;--teal:#2f7775;--text:#1b2836;--muted:#506375;--cloud:#f3f7f9;--border:#d5e1e7;--warm:#f8f3e8;--radius:12px;--serif:'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--sans:'Hiragino Kaku Gothic ProN','Noto Sans JP',Meiryo,sans-serif;--content:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--text);background:#fff;font:16px/1.85 var(--sans);overflow-wrap:anywhere}h1,h2,h3,h4,p,ul,ol,dl{margin-top:0}h1,h2,h3,h4{color:var(--deep);line-height:1.55;word-break:normal}h1,h2{font-family:var(--serif);font-weight:700;letter-spacing:.025em}h1{font-size:clamp(30px,3.8vw,48px);margin-bottom:18px}h2{font-size:32px;margin-bottom:16px}h3{font-size:21px;margin-bottom:12px}p{margin-bottom:20px}a{color:var(--navy);text-underline-offset:5px;text-decoration-thickness:1px}a:hover{text-decoration:underline;color:#17648c}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}input,select,textarea{width:100%;max-width:100%;border:1px solid #aebfca;border-radius:8px;color:var(--text);background:#fff;padding:13px 16px;min-height:50px}textarea{display:block;resize:vertical;line-height:1.9}input::placeholder,textarea::placeholder{color:#637583;opacity:1}label{display:block}input[type=checkbox]{width:20px;min-width:20px;min-height:20px;height:20px;accent-color:var(--navy);margin:4px 0 0}fieldset{padding:0;border:0;min-width:0}fieldset:disabled{opacity:.72}legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}:focus-visible{outline:3px solid #0977b0;outline-offset:4px}a,button{touch-action:manipulation}.container{width:min(var(--content),calc(100% - 64px));margin-inline:auto}.narrow{max-width:820px}.section{padding-block:72px}.page-section{padding-block:24px 80px;min-height:55vh}.cloud{background:var(--cloud)}.icon{display:inline-block;object-fit:contain;flex:none;width:24px;height:24px;vertical-align:middle}.screen-reader-text,.skip-link:not(:focus){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:focus{position:fixed;z-index:1000;top:12px;left:12px;padding:16px 24px;background:white;color:var(--deep)}.site-header{background:#fff;border-bottom:1px solid var(--border);position:relative;z-index:30}.header-inner{width:min(1360px,calc(100% - 64px));margin:auto;min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{font:700 33px/1.5 var(--serif);white-space:nowrap;letter-spacing:.035em;text-decoration:none}.site-nav{display:flex;align-items:center;gap:24px}.site-nav a{font-weight:600;font-size:14px;text-decoration:none;white-space:nowrap;padding:30px 0 24px;border-bottom:3px solid transparent}.site-nav a:hover,.site-nav a[aria-current=page]{border-color:var(--teal)}.menu-toggle{display:none}.hero{position:relative;background:linear-gradient(90deg,rgba(255,255,255,.65),rgba(255,255,255,.12) 59%,transparent 76%),url('hero-reference.webp') center 50%/cover no-repeat;min-height:640px;display:flex;align-items:center}.hero-content{position:relative;padding-block:50px 58px}.hero-eyebrow{font-size:14px;letter-spacing:.1em;font-weight:600;margin-bottom:18px;display:block}.hero h1{font-size:clamp(38px,4vw,58px);line-height:1.55;letter-spacing:.015em;margin-bottom:20px;max-width:850px}.hero p{font-size:18px;line-height:1.85;max-width:740px;margin-bottom:32px}.mobile-break{display:none}.hero-credit{position:absolute;right:18px;bottom:8px;background:#fff9;border-radius:3px;color:var(--deep);font-size:11px;padding:1px 8px}.facility-search{background:white;border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:24px}.hero-search{max-width:790px;box-shadow:0 4px 20px #0b29410c;padding:12px 22px 22px;margin-bottom:0}.search-tabs{display:flex;gap:12px;margin-bottom:18px;border-bottom:1px solid var(--border)}.search-tabs button{border:0;border-bottom:3px solid transparent;background:white;color:var(--muted);padding:12px 16px;font-size:15px;white-space:nowrap}.search-tabs button[aria-selected=true]{border-color:#13758a;color:#08667d;font-weight:700}.facility-search form{display:flex;gap:12px}.search-pref{flex:1}.search-keyword{flex:1.4}.hero-search input,.hero-search select{min-height:56px}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;border:1px solid var(--navy);border-radius:8px;background:var(--navy);color:#fff;text-decoration:none;padding:13px 23px;font-weight:600;font-size:15px;line-height:1.6;text-align:center}.button .icon{filter:brightness(0) invert(1);width:21px;height:21px}.button:hover{background:#1b506f;color:#fff;text-decoration:none}.button-outline{background:#fff;color:var(--navy);border-color:#829fb4}.button-outline .icon{filter:none}.button-outline:hover{background:#edf5f9;color:var(--deep)}.button-small{min-height:44px;padding:9px 18px}.button-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-block:26px 0}.text-link{font-weight:600;text-decoration:none;border-bottom:1px solid #378a9b;padding-bottom:5px;display:inline-block}.quick-access{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;padding-block:28px}.quick-access a{border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px 8px 18px;gap:14px;font-weight:600;line-height:1.5;min-height:128px;transition:background .15s,border-color .15s}.quick-access .icon{width:38px;height:38px}.quick-access a:hover{background:var(--cloud);border-color:var(--blue)}.section-heading{margin-bottom:30px}.section-heading h2{font-size:36px;margin-bottom:16px}.section-heading p{color:var(--muted);font-size:17px;line-height:1.9;margin:0}.centered{text-align:center;margin-bottom:36px}.centered h2:after{content:'';display:block;width:38px;height:3px;background:#1d778b;margin:18px auto 0}.eyebrow{font-size:13px;font-family:var(--sans);font-weight:600;color:var(--teal);letter-spacing:.07em;display:inline-flex;align-items:center;gap:8px;margin-bottom:12px}.region-directory{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:16px 24px 20px}.region-intro{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--muted);padding:0 0 10px;border-bottom:1px solid var(--border)}.region-intro span:first-child{font-weight:700;color:var(--navy)}.region-row{display:grid;grid-template-columns:126px 1fr;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--border)}.region-row h3{font:700 17px/1.5 var(--sans);margin:0}.prefecture-links{display:flex;flex-wrap:wrap;gap:8px}.prefecture-link{border:1px solid #9eb8c8;border-radius:6px;background:#fff;text-decoration:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;min-height:42px;min-width:94px;flex:0 1 auto;font-size:14px;line-height:1.5}.prefecture-link small{font-size:11px;background:#eaf2f7;border-radius:10px;min-width:18px;text-align:center;color:#315c76}.prefecture-link.is-empty{border-color:#d9e3e9;color:#5b6b78}.prefecture-link[aria-current=page],.prefecture-link:hover{background:var(--navy);color:#fff}.prefecture-link[aria-current=page] small,.prefecture-link:hover small{background:#fff;color:var(--navy)}.directory-note{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;font-size:12px;color:var(--muted);margin:16px 0 0;line-height:1.7}.directory-note .icon{width:18px;height:18px}.section-subheading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-block:36px 24px}.section-subheading h2,.section-subheading h3{margin:0;font-family:var(--serif);font-size:28px}.section-subheading .section-heading{margin:0}.facility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.facility-card{display:grid;grid-template-columns:100px minmax(0,1fr) auto;gap:20px;align-items:center;border:1px solid var(--border);background:#fff;border-radius:var(--radius);padding:22px}.facility-visual{width:100px;min-height:100px;background:#edf4f8;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.facility-visual .icon{width:46px;height:46px}.facility-visual span{font-size:10px;letter-spacing:.1em;color:var(--blue)}.facility-summary h3{font:700 25px/1.5 var(--serif);margin:6px 0 10px}.facility-summary h3 a{text-decoration:none}.facility-summary p{display:flex;gap:8px;align-items:flex-start;margin:4px 0;font-size:14px;line-height:1.7}.facility-summary p .icon{width:19px;height:19px;margin-top:2px}.facility-labels{display:flex;gap:7px;font-size:12px;color:var(--teal)}.facility-labels span{background:#eaf5f3;border-radius:4px;padding:1px 7px}.facility-labels .tag-neutral{background:var(--cloud);color:var(--muted)}.facility-dates{grid-column:2/4;color:var(--muted);font-size:11px;line-height:1.7;margin:0}.facility-dates br{display:none}.facility-card-actions{display:flex;gap:10px}.facility-card-actions .button{font-size:13px;padding:11px 15px;gap:8px;min-height:46px}.facility-card.compact{grid-template-columns:1fr;padding:0;gap:0;overflow:hidden;align-items:stretch}.compact .facility-visual{width:100%;height:120px;border-radius:0;background:linear-gradient(120deg,#edf5fa,#e3eef2);flex-direction:row;gap:16px}.compact .facility-visual .icon{width:48px;height:48px;opacity:.85}.compact .facility-summary{padding:22px 24px 8px}.compact .facility-summary h3{font-size:25px}.compact .facility-card-actions{padding:8px 24px 16px}.compact .facility-card-actions .button{width:100%;min-height:44px}.compact .facility-dates{grid-column:auto;padding:0 24px 20px;font-size:11px}.compact .facility-dates br{display:initial}.source-note{font-size:13px;line-height:1.9;color:var(--muted);margin:26px 0 0}.records-feature{display:grid;grid-template-columns:35% 1fr;align-items:center;gap:36px;margin-top:20px}.records-feature>img{display:block;mix-blend-mode:multiply}.empty-state{text-align:center;background:var(--cloud);border:1px solid #e7eef1;padding:36px 28px;border-radius:10px;margin:24px 0}.empty-state>.icon{width:42px;height:42px;margin-bottom:18px;opacity:.65}.empty-state h3{font:600 21px/1.6 var(--serif);margin-bottom:12px}.empty-state p{font-size:15px;color:var(--muted);max-width:600px;margin:0 auto}.records-feature .empty-state{margin:0;background:#fafcfd;border:none}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;list-style:none;padding:0;margin:40px 0 0}.steps li{border-top:1px solid var(--border);padding-top:22px}.steps li>span{font:500 25px/1.5 var(--serif);color:#397f8a;display:block;margin-bottom:8px}.steps strong{color:var(--deep);font-size:17px}.steps p{font-size:14px;line-height:1.8;color:var(--muted);margin:8px 0 0}.guide-categories{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:30px}.guide-categories a{position:relative;padding:24px 28px 24px 76px;border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;background:#fff}.guide-categories a>.icon:first-child{position:absolute;left:24px;top:27px;width:32px;height:32px}.guide-categories h3{font:700 17px/1.6 var(--sans);margin:0 0 6px}.guide-categories p{font-size:13px;color:var(--muted);line-height:1.7;margin:0;padding-right:10px}.guide-categories .category-arrow{position:absolute;right:13px;top:50%;width:16px;height:16px}.guide-categories a:hover{border-color:var(--blue);background:#fbfdff}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:48px}.split-section>div+div{border-left:1px solid var(--border);padding-left:48px}.split-section .section-heading h2{font-size:31px}.split-section .empty-state{padding:28px 20px;margin-top:24px}.split-section .empty-state h3{font:500 16px/1.7 var(--sans)}.split-section .empty-state p{font-size:13px}.split-section>.button,.split-section .button{margin-top:8px}.home-navigator input{margin:6px 0 12px}.home-navigator .button{width:100%;margin-top:0}.notice-plain{font-size:14px;color:#5e532c;line-height:1.8;margin-top:20px}.badge{display:inline-block;border-radius:30px;background:#e0f0ee;color:#225d60;font-size:12px;font-weight:600;padding:5px 12px}.service-band{background:#eef5f8;padding-block:48px}.service-band .section-subheading{margin-top:0}.service-band .section-heading h2{font-size:36px}.service-shortcuts{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.service-shortcuts a{padding:18px 12px;border:1px solid var(--border);border-radius:8px;background:white;display:flex;align-items:center;justify-content:space-between;gap:8px;text-decoration:none;font-size:13px;font-weight:600}.service-shortcuts .icon{width:25px;height:25px}.service-shortcuts .icon:last-child{width:15px;height:15px}.check-list{list-style:none;padding:0;margin-bottom:22px}.check-list li{padding:4px 0 4px 32px;position:relative}.check-list li:before{content:'✓';position:absolute;left:0;top:7px;border-radius:50%;width:20px;height:20px;font:bold 14px/20px var(--sans);background:#367e86;color:#fff;text-align:center}.site-footer{background:var(--deep);color:#fff;padding:44px 0 30px}.site-footer .wordmark{color:#fff;font-size:27px}.footer-inner{display:grid;grid-template-columns:1fr 1.3fr;gap:26px 44px;align-items:center}.footer-inner>div:first-child p{font-size:13px;margin:9px 0 0}.site-footer nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px 18px;align-items:center}.site-footer nav a{color:#fff;text-decoration:none;font-size:12px;line-height:1.7}.footer-notice{grid-column:1/-1;border-top:1px solid #ffffff26;padding-top:18px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#dce7ed}.footer-notice p{margin:0}.back-top{position:fixed;right:20px;bottom:22px;z-index:25;padding:12px;border:1px solid var(--border);background:white;border-radius:50%;box-shadow:0 2px 12px #0b29411a}.back-top[hidden]{display:none}.toast{position:fixed;z-index:50;bottom:26px;left:50%;transform:translateX(-50%);padding:12px 24px;max-width:90%;border-radius:8px;background:var(--deep);color:white;font-size:14px;display:none}.toast.is-visible{display:block}.breadcrumbs{padding-block:22px 16px;color:var(--muted);font-size:13px}.breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px}.breadcrumbs li+li:before{content:'›';margin-right:16px;color:#7d8f9d}.breadcrumbs a{text-decoration:none}.page-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:0 0 28px}.page-heading p{margin-bottom:0;color:var(--muted)}.result-total{white-space:nowrap;font-size:14px;color:var(--muted)}.result-total strong{font-size:25px;color:var(--navy);margin-inline:6px}.filter-options{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:0 0 30px}.filter-options label{font-size:13px;color:var(--muted)}.filter-options select{min-height:42px;padding:8px 38px 8px 12px;margin-top:5px}.filter-options a{font-size:13px;margin-bottom:10px}.facility-results{display:grid;gap:16px}.count{font:500 17px var(--sans);color:var(--muted)}.panel{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:28px;margin-bottom:26px}.facility-detail{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(300px,1fr);gap:24px}.facility-detail .panel{margin-bottom:24px}.facility-illustration{height:190px;border-radius:8px;background:linear-gradient(110deg,#f0f6f9,#e9f2f6);display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:24px;color:#43687e;font-size:14px}.facility-illustration .icon{width:90px;height:90px;opacity:.65}.data-list{display:grid;grid-template-columns:160px 1fr;margin:0;border-top:1px solid var(--border)}.data-list dt,.data-list dd{border-bottom:1px solid var(--border);padding:16px 18px;margin:0;line-height:1.7}.data-list dt{background:#f0f6f9;font-size:15px;font-weight:600}.data-list dd{font-size:16px}.facility-actions{padding:24px}.facility-actions h2{font-size:25px;margin-bottom:20px}.facility-actions>.button{display:flex;width:100%;margin-bottom:12px;justify-content:space-between;text-align:left}.notice{padding:28px;background:var(--cloud);border-radius:var(--radius);border:1px solid var(--border);margin:28px 0}.notice h2,.notice h3{font-family:var(--serif);font-size:24px;line-height:1.6}.notice p:last-child{margin-bottom:0}.warm{background:var(--warm);border-color:#e6decc}.facility-actions .notice{margin:24px -12px -12px;padding:20px}.facility-actions .notice h3{font-size:23px}.facility-actions .notice p{font-size:14px;line-height:1.9}.facility-actions .notice .button{font-size:13px;padding:12px}.small{font-size:13px!important;color:var(--muted)}.source-panel{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}.source-panel h2{font-size:27px}.source-panel p{font-size:14px;margin:14px 0 0;color:var(--muted)}.source-panel>p{border-left:1px solid var(--border);padding-left:40px;margin:0}.article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:24px}.article-list article{padding:26px;border:1px solid var(--border);border-radius:12px;background:white}.article-list h3{font-family:var(--serif);font-size:23px}.article-list h3 a{text-decoration:none}.article-list p{font-size:14px;color:var(--muted)}.article-prose{max-width:820px}.article-prose h1{font-size:38px;margin-bottom:28px}.article-prose h2{font-size:27px;margin-top:46px;padding-bottom:12px;border-bottom:1px solid var(--border)}.article-prose h3{margin-top:30px}.article-prose p,.entry-content p{line-height:2.05;margin-bottom:24px}.article-prose .lead{font:600 24px/1.9 var(--serif);color:var(--navy);padding:10px 0 18px}.article-meta{font-size:13px;color:var(--muted)}.entry-content{margin:34px 0}.entry-content table{border-collapse:collapse;display:block;max-width:100%;overflow:auto}.entry-content td,.entry-content th{padding:12px;border:1px solid var(--border)}.entry-content blockquote{border-left:4px solid var(--teal);margin:32px 0;padding:20px 26px;background:var(--cloud)}.information-contact{border-top:1px solid var(--border);padding-top:24px;margin-top:40px}.source-list .panel h2{font:600 21px var(--sans);border:none;padding:0;margin-top:0}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service-item{margin-bottom:0}.service-item h2{font:700 23px/1.7 var(--serif)}.service-item p{font-size:15px}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px}.form-main h1{font-size:35px}.form-main>p{font-size:16px;color:var(--muted)}.form-aside{padding-top:80px}.form-aside h2{font-size:23px}.form-aside p{font-size:14px}.vertical-steps{padding:0;list-style:none;counter-reset:st}.vertical-steps li{padding-left:40px;position:relative;padding-bottom:24px;counter-increment:st}.vertical-steps li:not(:last-child):after{content:'';position:absolute;left:12px;top:28px;bottom:4px;width:1px;background:var(--border)}.vertical-steps li:before{content:counter(st);position:absolute;left:0;top:2px;width:26px;height:26px;border-radius:50%;background:#e9f2f7;color:var(--navy);font-weight:700;font-size:13px;line-height:26px;text-align:center}.vertical-steps p{margin:5px 0 0;color:var(--muted);font-size:13px}.private-form label{font-weight:600;margin-bottom:24px}.private-form input,.private-form textarea,.private-form select{margin-top:7px;font-weight:400}.field-help{display:block;font-size:13px;color:var(--muted);font-weight:400;line-height:1.8;margin-top:4px}.character-count{display:block;text-align:right;font-size:12px;font-weight:400;color:var(--muted);margin-top:6px}.consent-box{background:var(--cloud);padding:22px;border-radius:10px;margin-bottom:26px}.consent-box h2{font-size:22px}.consent-box p{font-size:13px;line-height:1.9}.private-form .checkbox,.checkbox{display:flex;gap:12px;align-items:flex-start;font-size:14px;font-weight:400;line-height:1.9}.private-form .checkbox input,.checkbox input{margin-top:4px}.honeypot{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.form-result{margin-top:18px;color:#9f3030;font-weight:600;font-size:14px;white-space:pre-wrap}.form-result:empty{display:none}.form-confirm h2,.receipt h2,.status-output h2,.revision-output h2{font-size:25px}.form-confirm pre,.receipt pre,.revision-output pre,.status-output pre{font:14px/1.9 var(--sans);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--cloud);padding:20px;border-radius:8px;max-height:560px;overflow:auto}.receipt code{font:14px/1.8 monospace;overflow-wrap:anywhere;display:block;background:var(--cloud);padding:14px;border:1px solid var(--border);border-radius:8px;user-select:all;margin:12px 0 20px}.status-output .button,.revision-output .button{margin-right:10px;margin-bottom:12px}.navigator-output>section{border:1px solid var(--border);padding:24px;border-radius:12px;margin:20px 0}.navigator-output h2{font:700 22px/1.6 var(--serif)}.navigator-output p{font-size:15px}.navigator-output .source-meta{font-size:12px;color:var(--muted)}[hidden]{display:none!important}
@media(min-width:1500px){.hero h1{font-size:61px}.hero{min-height:670px}}
@media(max-width:1200px){.header-inner{width:calc(100% - 40px);gap:18px}.wordmark{font-size:28px}.site-nav{gap:17px}.site-nav a{font-size:12px}.hero{min-height:590px}.hero-content{padding-block:45px}.hero h1{font-size:49px}.hero-search{max-width:710px}.hero p{font-size:16px}.region-row{grid-template-columns:100px 1fr}.prefecture-link{min-width:90px}.facility-card-actions{flex-direction:column}.facility-summary h3{font-size:23px}.guide-categories a{padding-left:62px;padding-right:20px}.guide-categories a>.icon:first-child{left:18px;width:28px;height:28px}.service-shortcuts{grid-template-columns:repeat(3,1fr)}.facility-detail{grid-template-columns:minmax(0,1.5fr) minmax(290px,1fr)}.data-list{grid-template-columns:130px 1fr}.data-list dd,.data-list dt{padding:14px}.form-layout{grid-template-columns:minmax(0,1fr) 280px;gap:26px}.form-main h1{font-size:31px}}
@media(max-width:980px){.header-inner{min-height:78px}.menu-toggle{display:flex;gap:8px;align-items:center;background:white;border:1px solid var(--border);padding:8px 12px;border-radius:6px;font-size:12px;color:var(--navy)}.menu-toggle .icon{width:20px;height:20px}.site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:12px 24px 22px;box-shadow:0 10px 16px #1238560c;border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;gap:0 24px}.site-nav.is-open{display:grid}.site-nav a{font-size:14px;padding:16px 6px;border-bottom:1px solid var(--border)}.hero{min-height:580px;background-position:62% center}.hero h1{font-size:42px;max-width:650px}.hero-search{max-width:660px}.hero p{max-width:600px}.section{padding-block:56px}.container{width:calc(100% - 48px)}.guide-categories{grid-template-columns:1fr 1fr}.facility-grid{gap:14px}.compact .facility-summary{padding:18px 18px 8px}.compact .facility-card-actions{padding-inline:18px}.compact .facility-dates{padding-inline:18px}.compact .facility-summary h3{font-size:21px}.split-section{gap:30px}.split-section>div+div{padding-left:30px}.split-section .section-heading h2{font-size:27px}.records-feature{grid-template-columns:28% 1fr;gap:20px}.section-heading h2{font-size:32px}.facility-card{grid-template-columns:80px 1fr auto;gap:16px;padding:18px}.facility-visual{width:80px}.facility-detail{grid-template-columns:1fr}.facility-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}.facility-actions h2{grid-column:1/-1}.facility-actions>.button{margin:0}.facility-actions .notice{grid-column:1/-1;margin:12px 0 0}.source-panel{gap:22px}.source-panel>p{padding-left:22px}.article-list{grid-template-columns:1fr 1fr}.form-layout{grid-template-columns:1fr}.form-aside{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-top:0}.form-aside .notice{margin:0 0 26px}.form-aside>a{align-self:start;justify-self:start}.form-main h1{font-size:36px}.footer-inner{grid-template-columns:1fr}.site-footer nav{justify-content:flex-start}}
@media(max-width:640px){body{font-size:16px}.container{width:calc(100% - 36px)}html{scroll-padding-top:30px}.header-inner{width:calc(100% - 32px);min-height:72px;gap:10px}.wordmark{font-size:25px}.menu-toggle{padding:7px 9px;gap:5px}.menu-toggle span{font-size:10px}.menu-toggle .icon{width:18px;height:18px}.site-nav{grid-template-columns:1fr;padding:10px 20px}.hero{min-height:0;background-position:70% top;background-size:auto 380px;background-repeat:no-repeat;background-color:#f2f7fa;display:block}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#ffffff0a 0,#f3f8fbd9 240px,#f3f8fb 340px)}.hero-content{padding:32px 0 28px}.hero-eyebrow{font-size:10px;margin:0 0 12px;max-width:230px;letter-spacing:.03em}.hero h1{font-size:31px;line-height:1.65;max-width:100%;margin-bottom:20px;letter-spacing:0}.mobile-break{display:initial}.hero p{font-size:13px;line-height:1.95;margin-top:22px;margin-bottom:24px;max-width:100%;text-shadow:0 0 4px #fff}.hero-search{padding:10px 14px 16px;max-width:100%;border-color:#c9dbe5}.search-tabs{gap:0;margin-bottom:14px;justify-content:space-between}.search-tabs button{font-size:12px;padding:10px 4px}.facility-search form{flex-wrap:wrap;gap:10px}.search-pref{flex-basis:100%}.search-keyword{flex-basis:100%}.facility-search .button{width:100%;min-height:48px}.facility-search select,.facility-search input{min-height:48px;font-size:16px;padding:11px 12px}.hero-credit{bottom:3px;right:10px;font-size:9px}.quick-access{grid-template-columns:repeat(3,1fr);gap:8px;padding-block:20px}.quick-access a{padding:16px 5px 12px;min-height:100px;font-size:11px;gap:10px;border-radius:8px}.quick-access .icon{width:30px;height:30px}.section{padding-block:44px}.section-heading{margin-bottom:24px}.section-heading h2,.service-band .section-heading h2{font-size:28px;line-height:1.6}.section-heading p{font-size:14px}.centered{margin-bottom:26px}.centered h2:after{margin-top:14px}.region-directory{padding:12px 14px 16px;border-radius:10px}.region-intro{align-items:flex-start;flex-direction:column;gap:3px;font-size:11px}.region-row{grid-template-columns:1fr;gap:10px;padding:14px 0}.region-row h3{font-size:15px}.prefecture-links{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.prefecture-link{min-width:0;width:100%;padding:8px 7px;font-size:12px;min-height:40px;gap:3px}.prefecture-link small{font-size:10px;min-width:15px}.directory-note{font-size:10px;justify-content:flex-start;line-height:1.85;margin-top:12px}.directory-note .icon{width:16px;height:16px;margin-top:2px}.section-subheading{margin:28px 0 18px;align-items:flex-start;flex-direction:column;gap:10px}.section-subheading h2,.section-subheading h3{font-size:24px}.section-subheading>a{font-size:13px}.facility-grid{grid-template-columns:1fr}.facility-card.compact{grid-template-columns:76px 1fr;padding:18px;gap:12px}.compact .facility-visual{width:76px;height:84px;min-height:84px;border-radius:8px;flex-direction:column;gap:5px}.compact .facility-visual .icon{width:35px;height:35px}.compact .facility-visual span{font-size:8px}.compact .facility-summary{padding:0}.compact .facility-summary h3{font-size:22px;margin:5px 0 8px}.compact .facility-summary p{font-size:12px;gap:5px}.compact .facility-summary .icon{width:15px;height:15px}.compact .facility-card-actions{grid-column:1/-1;padding:0;display:block}.compact .facility-card-actions .button{font-size:13px;min-height:42px}.compact .facility-dates{grid-column:1/-1;padding:0;font-size:10px}.compact .facility-dates br{display:none}.source-note{font-size:12px;line-height:1.9;margin-top:20px}.records-feature{grid-template-columns:1fr;gap:0}.records-feature>img{width:230px;justify-self:center;margin:0 0 10px}.records-feature .empty-state{padding:20px 14px}.empty-state h3{font-size:21px}.empty-state p{font-size:14px}.empty-state{padding:28px 20px}.button-row{display:grid;grid-template-columns:1fr;gap:12px;width:100%}.button-row .button{width:100%;font-size:14px}.steps{grid-template-columns:1fr;gap:22px;margin-top:30px}.steps li{padding:16px 0 0 48px;position:relative}.steps li>span{position:absolute;left:0;top:13px;font-size:24px}.steps p{font-size:13px}.steps strong{font-size:16px}.guide-categories{grid-template-columns:1fr;gap:10px;margin-bottom:0}.guide-categories a{padding:18px 26px 18px 70px}.guide-categories h3{font-size:16px}.guide-categories a>.icon:first-child{left:22px;top:24px}.guide-categories p{font-size:12px}.split-section{grid-template-columns:1fr;gap:38px}.split-section>div+div{padding:34px 0 0;border-left:0;border-top:1px solid var(--border)}.split-section .section-heading h2{font-size:28px}.split-section .empty-state{padding:24px 16px}.service-band .section-subheading{gap:24px}.service-band .section-subheading>.button{width:100%}.service-shortcuts{grid-template-columns:1fr;gap:9px}.service-shortcuts a{font-size:14px;padding:16px 20px;justify-content:flex-start;gap:16px}.service-shortcuts .icon:last-child{margin-left:auto}.site-footer{padding-top:34px}.site-footer .wordmark{font-size:26px}.footer-inner{gap:24px}.site-footer nav{display:grid;grid-template-columns:1fr 1fr;gap:12px}.site-footer nav a{font-size:11px}.footer-notice{flex-direction:column;gap:10px;font-size:10px}.breadcrumbs{font-size:11px;padding-block:16px}.breadcrumbs ol{gap:5px 8px}.breadcrumbs li+li:before{margin-right:8px}.page-section{padding-top:12px;padding-bottom:48px}.page-heading{align-items:flex-start;flex-direction:column;gap:16px}.page-heading h1,.article-prose h1,.form-main h1{font-size:30px;line-height:1.65;margin-bottom:12px}.page-heading p{font-size:14px}.page-heading .eyebrow{font-size:11px}.result-total{font-size:12px}.result-total strong{font-size:21px}.facility-search{padding:14px}.filter-options{gap:12px}.filter-options label{width:calc(50% - 6px);font-size:12px}.filter-options select{width:100%;font-size:13px;padding:8px}.filter-options .button{font-size:12px}.filter-options a{font-size:12px}.facility-results .facility-card{grid-template-columns:65px minmax(0,1fr);gap:12px;padding:16px}.facility-results .facility-visual{width:65px;min-height:76px}.facility-results .facility-visual .icon{width:33px;height:33px}.facility-results .facility-visual span{font-size:8px}.facility-results .facility-summary h3{font-size:23px}.facility-results .facility-summary p{font-size:12px;gap:5px}.facility-results .facility-summary p .icon{width:16px;height:16px}.facility-results .facility-card-actions{grid-column:1/-1;flex-direction:row;display:flex;gap:10px}.facility-results .facility-card-actions .button{flex:1;padding:10px;font-size:12px}.facility-results .facility-dates{grid-column:1/-1;font-size:10px}.facility-dates br{display:block}.panel{padding:20px;margin-bottom:20px}.facility-detail{gap:0}.facility-illustration{height:130px;margin-bottom:18px}.facility-illustration .icon{width:62px;height:62px}.data-list{grid-template-columns:98px minmax(0,1fr)}.data-list dt,.data-list dd{padding:12px 10px;font-size:12px;line-height:1.9}.facility-actions{display:block}.facility-actions>.button{margin-bottom:10px;font-size:14px}.facility-actions h2{font-size:24px}.facility-actions .notice{margin:20px 0 0;padding:18px}.source-panel{grid-template-columns:1fr;gap:18px}.source-panel h2{font-size:24px}.source-panel>p{border:0;border-top:1px solid var(--border);padding:18px 0 0;font-size:12px}.source-panel>div p{font-size:12px}.panel>h2{font-size:24px}.article-list{grid-template-columns:1fr;gap:14px}.article-list h3{font-size:23px}.article-prose h2{font-size:24px;margin-top:34px}.article-prose .lead{font-size:21px}.article-prose p{font-size:15px;line-height:2}.article-meta{font-size:12px!important}.notice{padding:22px;margin-block:24px}.notice h2{font-size:22px}.notice p{font-size:14px}.services-grid{grid-template-columns:1fr;gap:14px}.service-item h2{font-size:22px}.form-layout{gap:20px}.form-aside{grid-template-columns:1fr;gap:0}.private-form label{font-size:14px}.private-form input,.private-form select,.private-form textarea{font-size:16px;padding:12px}.private-form>.button,.private-form fieldset>.button{width:100%}.field-help{font-size:12px}.private-form .checkbox{font-size:13px;gap:10px}.consent-box{padding:18px}.consent-box h2{font-size:21px}.form-confirm pre,.revision-output pre{padding:14px}.back-top{right:12px;bottom:16px;padding:9px}.icon{width:23px;height:23px}.navigator-output>section{padding:20px}.navigator-output h2{font-size:21px}}
@media(max-width:350px){.wordmark{font-size:22px}.menu-toggle span{display:none}.hero h1{font-size:27px}.hero p{font-size:12px}.hero-eyebrow{font-size:9px}.search-tabs button{font-size:10px}.section-heading h2{font-size:25px}.prefecture-link{font-size:11px;padding-inline:5px}.prefecture-links{gap:5px}.quick-access a{font-size:10px}.page-heading h1,.form-main h1{font-size:27px}.facility-card-actions .button .icon{width:15px;height:15px}.data-list{grid-template-columns:88px minmax(0,1fr)}.panel{padding:16px}.site-footer nav{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.mobile-facility-actions{display:none}@media(max-width:640px){.mobile-facility-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:24px}.mobile-facility-actions .button{font-size:12px;padding:12px 8px}.data-list dd{font-size:14px}.data-list dt{font-size:13px}}

@media(max-width:640px){.facility-dates,.compact .facility-dates,.facility-results .facility-dates{font-size:12px}.source-note{font-size:13px}}

.region-intro h2{font:700 13px/1.8 var(--sans);margin:0;color:var(--navy)}
.facility-photo{margin:0;background:#f1f4f7;overflow:hidden;border-radius:10px 10px 0 0}.facility-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#edf2f6}.facility-photo figcaption{padding:8px 12px;font-size:12px;line-height:1.8;color:#4b5968;overflow-wrap:anywhere}.facility-photo a{text-decoration:underline;text-underline-offset:3px}.facility-photo.detail{border-radius:8px;margin-bottom:22px}.facility-photo.detail figcaption{padding:12px 16px}.facility-card.compact .facility-photo img{max-height:150px}.facility-card .facility-photo{width:100%}@media(max-width:600px){.facility-photo.detail figcaption{font-size:12px;padding:12px}}

@media(max-width:600px){.facility-card.has-photo{display:grid;grid-template-columns:minmax(0,1fr);padding:0;gap:0;overflow:hidden}.facility-card.has-photo>.facility-photo{grid-column:1/-1;margin:0}.facility-card.has-photo>.facility-summary{grid-column:1/-1;padding:20px 20px 0}.facility-card.has-photo>.facility-card-actions{grid-column:1/-1;padding:16px 20px 0;display:grid;grid-template-columns:1fr;margin:0}.facility-card.has-photo>.facility-dates{grid-column:1/-1;padding:16px 20px}.facility-card.has-photo .facility-photo img{max-height:190px}}

.region-switcher{border:1px solid var(--border);border-radius:10px;padding:16px 20px;margin:20px 0 28px;background:var(--cloud)}.region-switcher>summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--navy)}.region-switcher .prefecture-directory{margin-top:20px}.region-switcher .regions-panel{margin-top:20px}

/* Source: reference.css */
/* The supplied 809 x 1942 composition is the desktop reference. */
:root {
  --reference-unit: clamp(1px, .1236093943vw, 1.58px);
  --reference-blue: #084d7a;
  --reference-ink: #102d44;
  --reference-pale: #eef8fd;
}
.header-brand { display: flex; align-items: center; gap: calc(18 * var(--reference-unit)); }
.header-tagline { color: #506375; font-size: calc(7.5 * var(--reference-unit)); white-space: nowrap; }
.header-search { display: grid; place-items: center; width: calc(25 * var(--reference-unit)); height: calc(25 * var(--reference-unit)); background: var(--reference-blue); border-radius: 4px; flex: none; }
.header-search .icon { width: 17px; height: 17px; filter: brightness(0) invert(1); }
.home-heading h2 { display: flex; align-items: center; gap: calc(10 * var(--reference-unit)); font-size: calc(20 * var(--reference-unit)); line-height: 1.45; letter-spacing: .025em; margin: 0; }
.heading-icon { width: calc(35 * var(--reference-unit)); height: calc(35 * var(--reference-unit)); border-radius: 50%; display: grid; place-items: center; background: #e8f2f8; flex: none; }
.heading-icon .icon { width: 65%; height: 65%; }
.home-heading > p, .home-intro { font-size: calc(10.5 * var(--reference-unit)); line-height: 1.8; color: #506375; margin: calc(8 * var(--reference-unit)) 0 calc(12 * var(--reference-unit)); }
.home-section { padding: calc(19 * var(--reference-unit)) 0; }
.home-section-bar { display: flex; justify-content: space-between; align-items: center; gap: calc(15 * var(--reference-unit)); margin-bottom: calc(8 * var(--reference-unit)); }
.home-section-bar > a, .home-section-actions > a:not(.button) { font-size: calc(8 * var(--reference-unit)); white-space: nowrap; text-decoration: none; color: #315f81; }
.home-section-bar > .button { color: #fff; }
.home-section-actions { display: flex; align-items: center; gap: calc(18 * var(--reference-unit)); }
.home-section-actions .button { min-height: 0; padding: calc(9 * var(--reference-unit)) calc(13 * var(--reference-unit)); font-size: calc(9 * var(--reference-unit)); gap: 9px; }
.home-section-actions .icon { width: 15px; height: 15px; }
.home-facility-section { padding: calc(19 * var(--reference-unit)) 0 calc(9 * var(--reference-unit)); background: linear-gradient(100deg,#eef8fd 0%,#f7fcff 65%,#f9fcfe 100%); }
.home-facility-layout { display: grid; grid-template-columns: .96fr 1.04fr; gap: 0 calc(20 * var(--reference-unit)); }
.home-region-layout { display: grid; grid-template-columns: calc(112 * var(--reference-unit)) minmax(0,1fr); gap: calc(9 * var(--reference-unit)); align-items: start; }
.home-region-list { display: flex; flex-direction: column; gap: calc(5 * var(--reference-unit)); position: relative; z-index: 5; }
.home-region > summary { display: flex; align-items: center; gap: 5px; padding: calc(4 * var(--reference-unit)) calc(7 * var(--reference-unit)); background: #fff; border: 1px solid #d5e1e7; border-radius: 4px; font-size: calc(8.5 * var(--reference-unit)); line-height: 1.7; cursor: pointer; color: #365e7b; list-style: none; }
.home-region > summary::-webkit-details-marker { display: none; }
.home-region > summary .icon { width: calc(11 * var(--reference-unit)); height: calc(11 * var(--reference-unit)); }
.home-region > summary .icon:last-child { margin-left: auto; }
.home-region[open] > summary { background: #e1eff6; border-color: #7aabc5; }
.home-prefectures { position: absolute; left: calc(100% + 5px); top: 0; width: calc(215 * var(--reference-unit)); padding: calc(12 * var(--reference-unit)); border: 1px solid #98b5c7; background: #fff; box-shadow: 0 6px 24px #102d441a; border-radius: 6px; z-index: 6; }
.home-prefectures p { font-size: calc(9 * var(--reference-unit)); color: #506375; margin-bottom: 10px; }
.home-prefectures a { display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: calc(10 * var(--reference-unit)); min-height: calc(27 * var(--reference-unit)); padding: 4px 8px; border-top: 1px solid #e6edf1; text-decoration: none; }
.home-prefectures a:hover { background: #eef8fd; }
.home-prefectures small { color: #506375; font-size: .85em; }
.region-close { display: block; margin-left: auto; font-size: 12px; min-height: 28px; padding: 3px 10px; color: #123856; background: #eef5f8; border: 1px solid #a9c1d0; border-radius: 3px; }
.home-map { margin: calc(-40 * var(--reference-unit)) 0 0; position: relative; pointer-events: none; }
.home-map img { display: block; width: 100%; height: calc(225 * var(--reference-unit)); object-fit: contain; }
.home-map figcaption { font-size: calc(7.3 * var(--reference-unit)); color: #506375; text-align: center; }
.map-region-labels { position: absolute; inset: 0 0 16px; font-size: calc(8 * var(--reference-unit)); font-weight: 600; color: #315f81; }
.map-region-labels span { position: absolute; padding: 0 2px; background: #ffffffb8; white-space: nowrap; }
.map-north { top: 31%; right: -1%; }.map-kanto { top: 57%; right: 0; }.map-chubu { top: 49%; left: 46%; }.map-kinki { top: 68%; left: 43%; }.map-chugoku { top: 66%; left: 9%; }.map-shikoku { top: 79%; left: 28%; }.map-kyushu { top: 90%; left: 0; }
.home-facilities .home-heading h2 { font-size: calc(17 * var(--reference-unit)); gap: 7px; }
.home-facilities .heading-icon { background: none; width: calc(25 * var(--reference-unit)); height: calc(25 * var(--reference-unit)); }
.home-facilities .heading-icon .icon { width: 100%; height: 100%; }
.home-facility-grid { gap: calc(8 * var(--reference-unit)); }
.home-facility-grid .facility-card { border-radius: calc(4 * var(--reference-unit)); box-shadow: none; }
.home-facility-grid .facility-photo { border-radius: 0; background: white; padding: calc(6 * var(--reference-unit)) calc(6 * var(--reference-unit)) 0; }
.home-facility-grid .facility-photo img { height: calc(88 * var(--reference-unit)); max-height: calc(88 * var(--reference-unit)); width: 100%; object-fit: contain; background: #edf3f6; border-radius: 3px; }
.home-facility-grid .facility-photo figcaption { padding: 4px 0; font-size: calc(6.5 * var(--reference-unit)); line-height: 1.65; }
.photo-date { display: block; }
.photo-credit > summary { cursor: pointer; color: #315f81; text-decoration: underline; text-underline-offset: 3px; }
.photo-credit[open] { padding-bottom: 8px; }
.home-facility-grid .facility-summary { padding: calc(6 * var(--reference-unit)) calc(8 * var(--reference-unit)); }
.home-facility-grid .facility-labels { font-size: calc(7 * var(--reference-unit)); }
.home-facility-grid .facility-labels span { padding: 0; background: none; }
.home-facility-grid .facility-summary h3 { font-size: calc(13 * var(--reference-unit)); line-height: 1.55; margin: 2px 0 calc(5 * var(--reference-unit)); }
.home-facility-grid .facility-summary p { font-size: calc(7.3 * var(--reference-unit)); line-height: 1.7; gap: 3px; margin: 4px 0; }
.home-facility-grid .facility-summary p .icon { display: none; }
.home-facility-grid .facility-summary p + p .icon { display: block; width: 12px; height: 12px; }
.home-facility-grid .facility-card-actions { padding: calc(2 * var(--reference-unit)) calc(8 * var(--reference-unit)) calc(8 * var(--reference-unit)); gap: calc(5 * var(--reference-unit)); }
.home-facility-grid .facility-card-actions .button { min-height: 24px; padding: calc(4 * var(--reference-unit)) calc(5 * var(--reference-unit)); border-radius: 3px; font-size: calc(7.5 * var(--reference-unit)); line-height: 1.7; gap: 0; flex: 1; white-space: nowrap; }
.home-facility-grid .facility-card-actions .icon { display: none; }
.home-facility-grid .facility-dates { display: none; }
.home-facility-source { grid-column: 1/-1; color: #506375; font-size: calc(7.5 * var(--reference-unit)); line-height: 1.8; margin: calc(7 * var(--reference-unit)) 0 0; }
.home-records-content { display: grid; grid-template-columns: .85fr 1.15fr; gap: calc(24 * var(--reference-unit)); align-items: center; }
.home-records-content > img { width: 100%; max-height: calc(155 * var(--reference-unit)); object-fit: contain; }
.home-records-content .empty-state { border: 1px solid #d5e1e7; border-radius: 5px; background: #fff; padding: calc(17 * var(--reference-unit)); }
.home-records-content .empty-state > .icon { display: none; }
.home-records-content .empty-state h3 { font-size: calc(14 * var(--reference-unit)); margin-bottom: 8px; }
.home-records-content .empty-state p { font-size: calc(10.5 * var(--reference-unit)); margin: 0; line-height: 1.85; }
.home-guides { background: linear-gradient(100deg,#f8f9f8,#fdfdfd); }
.home-guides .heading-icon, .home-records .heading-icon { background: #f8edcf; }
.home-guides .guide-categories { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: calc(8 * var(--reference-unit)); margin: 0; }
.home-guides .guide-categories a { display: flex; flex-direction: column; align-items: center; padding: calc(12 * var(--reference-unit)) calc(8 * var(--reference-unit)); border-radius: calc(4 * var(--reference-unit)); text-align: center; gap: calc(7 * var(--reference-unit)); }
.home-guides .guide-categories a > .icon:first-child { position: static; width: calc(30 * var(--reference-unit)); height: calc(30 * var(--reference-unit)); margin: 0; }
.home-guides .guide-categories h3 { font-size: calc(12 * var(--reference-unit)); margin: 0; }
.home-guides .guide-categories p { font-size: calc(8 * var(--reference-unit)); line-height: 1.75; margin: 0; }
.home-guides .category-arrow { display: none; }
.home-two-columns { display: grid; grid-template-columns: 1fr 1fr; gap: calc(24 * var(--reference-unit)); }
.home-two-columns > div + div { border-left: 1px solid #dce7ed; padding-left: calc(24 * var(--reference-unit)); }
.home-two-columns .home-section-bar { gap: 6px; }
.home-two-columns .home-heading h2 { font-size: calc(20 * var(--reference-unit)); }
.home-activities .empty-state { padding: calc(25 * var(--reference-unit)) calc(18 * var(--reference-unit)); border: 1px solid #dce7ed; border-radius: 5px; background: #fbfdfe; }
.home-activities .empty-state > .icon { width: calc(24 * var(--reference-unit)); height: calc(24 * var(--reference-unit)); }
.home-activities .empty-state h3 { font-size: calc(13 * var(--reference-unit)); margin: 8px 0; }
.home-activities .empty-state p { font-size: calc(10 * var(--reference-unit)); margin: 0; }
.home-ai-content { position: relative; min-height: calc(182 * var(--reference-unit)); padding-top: calc(8 * var(--reference-unit)); }
.home-ai-content > div { z-index: 2; position: relative; width: 62%; }
.home-ai-content > div > p:first-child { font-size: calc(10 * var(--reference-unit)); margin: 0 0 8px; }
.home-ai-examples { list-style: none; padding: 0; margin: 0 0 calc(9 * var(--reference-unit)); }
.home-ai-examples li { padding: calc(4 * var(--reference-unit)) calc(8 * var(--reference-unit)); background: #f5f8fc; border: 1px solid #dae4ed; border-radius: 4px; margin: 4px 0; color: #506375; font-size: calc(8 * var(--reference-unit)); line-height: 1.5; }
.home-ai-examples a { display: block; color: #506375; text-decoration: none; }
.home-ai-examples a:hover { color: #123856; text-decoration: underline; }
.home-ai-content .button { width: 100%; min-height: 0; font-size: calc(9 * var(--reference-unit)); padding: calc(6 * var(--reference-unit)) calc(10 * var(--reference-unit)); border-radius: 4px; }
.home-ai-content .button .icon { width: 14px; height: 14px; }
.home-ai-content > img { position: absolute; right: calc(-8 * var(--reference-unit)); bottom: 0; width: 70%; height: calc(190 * var(--reference-unit)); object-fit: cover; object-position: right bottom; pointer-events: none; }
.home-ai-privacy { font-size: calc(7.3 * var(--reference-unit)); color: #506375; margin: 6px 0 0; }
.home-services { background: linear-gradient(90deg,#f4f8fc,#fbfdff); }
.home-services .heading-icon { background: #f8edcf; }
.home-services .home-section-bar > p { font-size: calc(8 * var(--reference-unit)); color: #506375; margin: 0; flex: 1; }
.home-services .home-section-bar > .button { font-size: calc(8 * var(--reference-unit)); min-height: 0; padding: calc(6 * var(--reference-unit)) calc(12 * var(--reference-unit)); gap: 10px; border-radius: 4px; }
.home-services .service-shortcuts { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: calc(8 * var(--reference-unit)); margin: calc(12 * var(--reference-unit)) 0 0; }
.home-services .service-shortcuts a { display: flex; flex-direction: column; text-align: center; align-items: center; gap: calc(7 * var(--reference-unit)); padding: calc(12 * var(--reference-unit)) calc(8 * var(--reference-unit)); border-radius: 4px; }
.home-services .service-shortcuts a > .icon:first-child { width: calc(25 * var(--reference-unit)); height: calc(25 * var(--reference-unit)); margin: 0; }
.home-services .service-shortcuts strong { font-size: calc(11 * var(--reference-unit)); }
.home-services .service-shortcuts span { font-size: calc(8 * var(--reference-unit)); color: #506375; line-height: 1.75; }
.home-services .service-chevron { display: none; }
.home-about { background: linear-gradient(#ffffffb3,#ffffffb3),url('leaves-decoration.webp') right bottom / min(55%,650px) auto no-repeat; }
.home-about .home-heading { margin-bottom: calc(9 * var(--reference-unit)); }
.home-about p { font-size: calc(10 * var(--reference-unit)); line-height: 1.85; color: #506375; margin-bottom: 10px; }
.home-about a { font-size: calc(8.5 * var(--reference-unit)); }
.home-editorial { display: grid; grid-template-columns: calc(74 * var(--reference-unit)) minmax(0,1fr); gap: calc(8 * var(--reference-unit)); margin: 0 0 8px; font-size: calc(8.5 * var(--reference-unit)); line-height: 1.7; }
.home-editorial dt { color: #123856; font-weight: 600; }
.home-editorial dd { color: #506375; margin: 0; }
.reference-hero .hero-message { position: absolute; right: 5%; top: 10%; transform: rotate(-9deg); font: 500 calc(13 * var(--reference-unit))/1.9 var(--serif); color: #123856; margin: 0; letter-spacing: .12em; }
.hero-ending { display: inline-block; white-space: nowrap; }
.hero-search .search-tabs button { display: flex; align-items: center; justify-content: center; gap: calc(5 * var(--reference-unit)); }
.hero-search .search-tabs .icon { width: calc(10 * var(--reference-unit)); height: calc(10 * var(--reference-unit)); }
.hero-search .search-tabs button[aria-selected=true] .icon { filter: brightness(0) invert(1); }
.button { transition: background-color .15s, border-color .15s, box-shadow .15s; }
.button:active { background: #0b2941; box-shadow: inset 0 2px 5px #0003; }
.button-outline:active { color: #123856; background: #e1eef5; }

@media (min-width: 761px) {
  .home-guides { padding-block: calc(14 * var(--reference-unit)); }
  .home-guides .home-intro { margin-top: calc(3 * var(--reference-unit)); margin-bottom: calc(8 * var(--reference-unit)); }
  .home-guides .guide-categories a { padding-block: calc(9 * var(--reference-unit)); gap: calc(5 * var(--reference-unit)); }
  .home-about { padding-block: calc(14 * var(--reference-unit)); }
  .home-activities { padding-block: calc(12 * var(--reference-unit)); }
  .home-activities .home-intro { margin-bottom: calc(8 * var(--reference-unit)); }
  .home-ai-content { min-height: calc(166 * var(--reference-unit)); }
  .header-inner { min-height: calc(40 * var(--reference-unit)); gap: calc(12 * var(--reference-unit)); width: min(1200px,94%); }
  .wordmark { font-size: calc(22 * var(--reference-unit)); line-height: 1.5; }
  .site-nav { display: flex; position: static; flex-direction: row; padding: 0; gap: calc(12 * var(--reference-unit)); box-shadow: none; border: 0; background: transparent; }
  .site-nav a { padding: calc(12 * var(--reference-unit)) 0 calc(8 * var(--reference-unit)); font-size: calc(8 * var(--reference-unit)); border-bottom: 2px solid transparent; line-height: 1.8; }
  .menu-toggle { display: none; }
  body.home { font-size: calc(11 * var(--reference-unit)); }
  body.home .container { width: min(1200px,94%); }
  .reference-hero { min-height: calc(278 * var(--reference-unit)); background-image: linear-gradient(90deg,#fff5,transparent 65%),url('hero-reference.webp'); background-position: center; }
  .reference-hero .hero-content { padding: calc(33 * var(--reference-unit)) calc(12 * var(--reference-unit)) calc(16 * var(--reference-unit)); }
  .reference-hero h1 { font-size: calc(28 * var(--reference-unit)); line-height: 1.28; letter-spacing: .01em; max-width: 74%; margin: 0 0 calc(12 * var(--reference-unit)); }
  .reference-hero .hero-content > p { font-size: calc(10.5 * var(--reference-unit)); line-height: 1.7; max-width: 64%; margin-bottom: calc(14 * var(--reference-unit)); }
  .hero-search { width: calc(446 * var(--reference-unit)); max-width: 65%; padding: 0 calc(8 * var(--reference-unit)) calc(8 * var(--reference-unit)); border-radius: 4px; background: #fff; box-shadow: 0 2px 5px #102d441c; }
  .hero-search .search-tabs { margin: 0 calc(-8 * var(--reference-unit)) calc(8 * var(--reference-unit)); border: 0; gap: 0; }
  .hero-search .search-tabs button { flex: 1; padding: calc(7 * var(--reference-unit)) calc(5 * var(--reference-unit)); font-size: calc(9 * var(--reference-unit)); border: 0; border-radius: 4px 4px 0 0; background: #f1f6fb; color: #123856; }
  .hero-search .search-tabs button[aria-selected=true] { background: linear-gradient(#124870,#083859); color: #fff; }
  .hero-search form { gap: calc(7 * var(--reference-unit)); flex-wrap: nowrap; }
  .hero-search input, .hero-search select { min-height: 0; height: calc(29 * var(--reference-unit)); padding: calc(5 * var(--reference-unit)) calc(9 * var(--reference-unit)); font-size: calc(8.5 * var(--reference-unit)); border-color: #d6e1e8; border-radius: 4px; }
  .hero-search .search-pref { flex: 1.15; }
  .hero-search .search-keyword { flex: 1.8; }
  .hero-search .button { min-height: 0; padding: 0 calc(13 * var(--reference-unit)); font-size: calc(9 * var(--reference-unit)); gap: 7px; border-radius: 4px; white-space: nowrap; }
  .hero-search .button .icon { width: calc(11 * var(--reference-unit)); height: calc(11 * var(--reference-unit)); }
  .hero-credit { font-size: calc(6.5 * var(--reference-unit)); }
  .home-facility-grid .facility-card-actions { flex-direction: row; }
  .home-facility-grid .facility-card-actions .button { width: auto; }
  .home-region > summary { min-height: 22px; line-height: 1.3; padding-block: calc(3 * var(--reference-unit)); }
  .quick-access { grid-template-columns: repeat(6,minmax(0,1fr)); gap: calc(7 * var(--reference-unit)); padding-block: calc(12 * var(--reference-unit)); }
  .quick-access a { position: relative; min-height: calc(78 * var(--reference-unit)); padding: calc(9 * var(--reference-unit)) calc(4 * var(--reference-unit)); gap: calc(5 * var(--reference-unit)); border-radius: 4px; }
  .quick-access a > .icon:first-child { width: calc(25 * var(--reference-unit)); height: calc(25 * var(--reference-unit)); }
  .quick-access strong { font-size: calc(10 * var(--reference-unit)); }
  .quick-access a > span { font-size: calc(7.7 * var(--reference-unit)); color: #506375; font-weight: 400; }
  .quick-access .quick-chevron { width: calc(10 * var(--reference-unit)); height: calc(10 * var(--reference-unit)); position: absolute; right: 4px; bottom: 11px; }
  .site-footer { padding: calc(18 * var(--reference-unit)) 0 calc(12 * var(--reference-unit)); background: linear-gradient(90deg,#0b2941f5,#164766ee),url('leaves-decoration.webp') center bottom / cover; }
  .footer-inner { display: grid; grid-template-columns: 1fr 2fr; gap: calc(12 * var(--reference-unit)); align-items: center; }
  .footer-inner > div:first-child > p { margin: 2px 0 0; font-size: calc(9 * var(--reference-unit)); }
  .site-footer .wordmark { font-size: calc(21 * var(--reference-unit)); }
  .site-footer p, .site-footer nav a { font-size: calc(8 * var(--reference-unit)); }
  .site-footer nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: calc(13 * var(--reference-unit)); }
  .site-footer .footer-legal { grid-column: 1/-1; justify-content: center; }
  .footer-notice { grid-column: 1/-1; display: flex; flex-direction: row; justify-content: center; gap: 24px; padding-top: calc(10 * var(--reference-unit)); border: 0; }
  .footer-notice p { margin: 0; }
}
@media (min-width: 761px) and (max-width: 1000px) {
  .home-facility-grid .facility-summary p { font-size: 8px; }
  .home-facility-grid .facility-card-actions .button { font-size: 8px; }
}
@media (max-width: 760px) {
  :root { --reference-unit: 1px; }
  .header-inner { width: calc(100% - 32px); min-height: 68px; gap: 12px; }
  .header-brand { margin-right: auto; }
  .header-tagline { display: none; }
  .wordmark { font-size: 26px; }
  .header-search { width: 36px; height: 36px; }
  .menu-toggle { display: flex; }
  .site-nav { display: none; }
  .site-nav.is-open { display: flex; }
  .reference-hero { min-height: 0; background: #f6fafc; display: block; padding-bottom: 220px; }
  .reference-hero:after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 225px; background: url('hero-reference.webp') 78% center / cover no-repeat; }
  .reference-hero .hero-content { padding: 30px 0 26px; z-index: 2; }
  .reference-hero h1 { font-size: clamp(26px,6.6vw,35px); line-height: 1.5; max-width: none; margin-bottom: 16px; }
  .reference-hero .hero-content > p { font-size: 14px; line-height: 1.9; max-width: none; margin-bottom: 20px; }
  .reference-hero .hero-content > p br { display: none; }
  .reference-hero .hero-message { top: auto; bottom: 143px; right: auto; left: 16px; font-size: 11px; transform: rotate(-5deg); z-index: 2; line-height: 1.9; letter-spacing: .06em; max-width: 60%; }
  .reference-hero .hero-credit { z-index: 3; font-size: 10px; }
  .hero-search { max-width: 100%; width: 100%; padding: 0 12px 12px; border-radius: 5px; }
  .hero-search .search-tabs { gap: 0; margin: 0 -12px 12px; border: 0; }
  .hero-search .search-tabs button { flex: 1; padding: 12px 2px; font-size: 11px; border: 0; background: #edf3f8; color: #123856; border-radius: 4px 4px 0 0; }
  .hero-search .search-tabs button[aria-selected=true] { background: #123856; color: #fff; }
  .hero-search form { display: grid; grid-template-columns: 1fr; gap: 10px; }
  .hero-search input,.hero-search select { min-height: 48px; height: auto; font-size: 16px; }
  .hero-search .button { width: 100%; min-height: 48px; font-size: 15px; }
  .quick-access { grid-template-columns: repeat(2,minmax(0,1fr)); padding-block: 18px; gap: 8px; }
  .quick-access a { min-height: 108px; padding: 14px 8px; gap: 7px; border-radius: 5px; position: relative; }
  .quick-access .icon { width: 28px; height: 28px; }
  .quick-access strong { font-size: 14px; }
  .quick-access a > span { font-size: 11px; color: #506375; font-weight: 400; }
  .quick-access .quick-chevron { position: absolute; width: 13px; height: 13px; right: 4px; bottom: 14px; }
  .home-section { padding: 32px 0; }
  .home-heading h2,.home-two-columns .home-heading h2,.home-facilities .home-heading h2 { font-size: 25px; gap: 10px; }
  .heading-icon,.home-facilities .heading-icon { width: 36px; height: 36px; }
  .home-heading > p,.home-intro { font-size: 14px; line-height: 1.85; margin: 12px 0 18px; }
  .home-section-bar { align-items: flex-start; gap: 14px; flex-wrap: wrap; margin-bottom: 12px; }
  .home-section-bar > a,.home-section-actions > a:not(.button) { font-size: 12px; }
  .home-section-actions { flex-wrap: wrap; width: 100%; gap: 12px; }
  .home-section-actions .button { padding: 12px 16px; min-height: 48px; width: 100%; font-size: 13px; }
  .home-facility-section { padding: 30px 0; }
  .home-facility-layout { grid-template-columns: 1fr; gap: 28px; }
  .home-region-layout { grid-template-columns: 43% minmax(0,1fr); gap: 8px; }
  .home-region-list { gap: 7px; }
  .home-region > summary { min-height: 40px; font-size: 12px; padding: 7px 6px; gap: 3px; }
  .home-region > summary .icon { width: 12px; height: 12px; }
  .home-prefectures { left: 0; top: 0; width: calc(232% + 8px); padding: 15px; padding-top: 18px; }
  .home-prefectures p { font-size: 14px; padding-right: 28px; }
  .home-prefectures a { font-size: 15px; min-height: 46px; }
  .home-map { margin: 0; align-self: center; }
  .home-map img { height: 265px; }
  .home-map figcaption { font-size: 10px; }
  .home-facility-grid { grid-template-columns: 1fr; gap: 16px; }
  .home-facility-grid .facility-photo { padding: 8px 8px 0; }
  .home-facility-grid .facility-photo img { height: 170px; max-height: 170px; }
  .home-facility-grid .facility-photo figcaption { padding: 8px; font-size: 12px; }
  .home-facility-grid .facility-summary { padding: 12px 18px; }
  .home-facility-grid .facility-labels { font-size: 12px; }
  .home-facility-grid .facility-summary h3 { font-size: 23px; margin: 5px 0 10px; }
  .home-facility-grid .facility-summary p { font-size: 13px; line-height: 1.9; }
  .home-facility-grid .facility-card-actions { display: flex; padding: 0 18px 18px; gap: 10px; }
  .home-facility-grid .facility-card-actions .button { min-height: 44px; font-size: 13px; padding: 8px 10px; }
  .home-facility-source { margin: 0; font-size: 12px; }
  .home-records-content { grid-template-columns: 1fr; gap: 10px; }
  .home-records-content > img { max-height: 150px; }
  .home-records-content .empty-state { padding: 22px 18px; }
  .home-records-content .empty-state h3 { font-size: 21px; }
  .home-records-content .empty-state p { font-size: 14px; }
  .home-guides .guide-categories { grid-template-columns: 1fr 1fr; gap: 10px; }
  .home-guides .guide-categories a { padding: 18px 10px; gap: 10px; }
  .home-guides .guide-categories a > .icon:first-child { width: 32px; height: 32px; }
  .home-guides .guide-categories h3 { font-size: 15px; }
  .home-guides .guide-categories p { font-size: 12px; }
  .home-two-columns { grid-template-columns: 1fr; gap: 28px; }
  .home-two-columns > div + div { border-left: 0; border-top: 1px solid #dce7ed; padding: 28px 0 0; }
  .home-activities .empty-state { padding: 24px 18px; }
  .home-activities .empty-state > .icon { width: 30px; height: 30px; }
  .home-activities .empty-state h3 { font-size: 20px; }
  .home-activities .empty-state p { font-size: 14px; }
  .home-ai-content { min-height: 235px; padding-top: 8px; }
  .home-ai-content > div { width: 65%; }
  .home-ai-content > div > p:first-child { font-size: 13px; }
  .home-ai-examples li { padding: 7px 8px; font-size: 12px; }
  .home-ai-content .button { padding: 12px 6px; min-height: 44px; font-size: 14px; gap: 5px; }
  .home-ai-content > img { height: 235px; width: 75%; right: -7px; }
  .home-ai-privacy { font-size: 11px; }
  .home-services .home-section-bar > p { font-size: 13px; flex: 1 1 100%; }
  .home-services .home-section-bar > .button { min-height: 46px; width: 100%; font-size: 13px; padding: 10px; }
  .home-services .service-shortcuts { grid-template-columns: 1fr 1fr; gap: 10px; }
  .home-services .service-shortcuts a { padding: 18px 10px; gap: 9px; }
  .home-services .service-shortcuts a > .icon:first-child { width: 30px; height: 30px; }
  .home-services .service-shortcuts strong { font-size: 15px; }
  .home-services .service-shortcuts span { font-size: 12px; }
  .home-about { background-size: 90% auto; }
  .home-about .home-heading { margin-bottom: 14px; }
  .home-about p { font-size: 14px; line-height: 1.9; }
  .home-about a { font-size: 13px; }
  .home-editorial { grid-template-columns: 1fr; gap: 5px; font-size: 14px; }
  .home-editorial dd { margin-bottom: 10px; }
  .site-footer { background: linear-gradient(90deg,#0b2941f5,#164766ee),url('leaves-decoration.webp') center bottom / cover; }
  .site-footer nav { display: grid; grid-template-columns: 1fr 1fr; }
  .footer-notice { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) { .button { transition: none; } }

/* The same illustration and crop, with a discoverable image element. */
.reference-hero { background-image: none; }
.hero-art { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; }
.reference-hero .hero-content { z-index: 1; }
.reference-hero .hero-message { z-index: 2; }
.reference-hero .hero-credit { z-index: 3; }
.hero-art > img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
.hero-art:after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,#fff5,transparent 65%); }
@media (max-width: 740px) {
  .hero-art { top: auto; height: 225px; }
  .hero-art > img { object-position: 78% center; }
  .hero-art:after, .reference-hero:after { content: none; }
}

/* Source: clarity.css */
/* Shared guidance: clear first actions, concise filters and useful next steps. */
.reference-hero .hero-content>.hero-audience{font-size:13px;font-weight:700;line-height:1.7;color:#254e67;margin:0 0 12px;max-width:75%}
.directory-views,.guide-filters{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 24px}
.directory-views a,.guide-filters a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #aac1d0;border-radius:5px;padding:8px 16px;text-decoration:none;line-height:1.6;font-weight:600;background:#fff}
.directory-views a[aria-current],.guide-filters a[aria-current]{background:#164c6d;color:#fff;border-color:#164c6d}
.search-options,.search-scope,.status-help,.legacy-status{border:1px solid var(--border);border-radius:6px;padding:18px 22px;margin:20px 0 28px;background:#fbfdfe}
.search-options>summary,.search-scope>summary,.status-help>summary,.legacy-status>summary{cursor:pointer;font-weight:600;color:var(--navy);min-height:28px}
.search-options .filter-options{margin:18px 0 0}.search-scope p,.status-help p{margin:18px 0 0}
.phone-results{display:grid;gap:16px}.phone-result{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,1fr);gap:28px;border:1px solid var(--border);border-radius:6px;padding:24px 28px;background:#fff}
.phone-result h3{font-family:var(--serif);font-size:24px;margin:0 0 8px}.phone-result p{font-size:14px;margin:0}.phone-result .eyebrow{margin-bottom:4px}
.phone-result>div:last-child{display:flex;align-items:flex-start;flex-direction:column;gap:10px}.phone-number{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:22px;min-height:44px;text-decoration:none}.phone-result .small{font-size:12px;color:var(--muted)}
.form-layout.is-closed{display:block;max-width:940px}.is-closed .form-main>p{max-width:820px}.is-closed .panel>h2{font-size:25px}
.status-help,.status-next{margin-top:30px}.legacy-status .private-form{margin-top:22px}.article-next{margin-top:40px}.article-next h2{font-size:25px;margin-top:0}
.question-examples{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0 18px;font-size:13px}.question-examples button{background:#f1f7fa;border:1px solid #b9cfdb;border-radius:5px;color:#174c6a;padding:8px 12px;min-height:40px;text-align:left}.question-examples button:hover{background:#e0edf4}
.navigator-form .field-help{margin:8px 0 16px}.search-mode{font-size:13px;color:#526779;margin:12px 0 20px}.navigator-output:empty{display:none}
.empty-state>.text-link{margin-top:16px}.home-records-content .empty-state>.text-link,.home-activities .empty-state>.text-link{font-size:12px}
.home-ai-content{min-height:calc(198 * var(--reference-unit))}
.consultation-page{max-width:1040px}.consultation-intro{max-width:900px;padding:18px 0 38px;border-bottom:1px solid var(--border)}
.consultation-page .button span{text-wrap:balance}
.consultation-intro h1{font-size:clamp(29px,3.4vw,42px);line-height:1.65;text-wrap:balance}.consultation-intro .lead{font-size:18px;line-height:2}.consultation-intro .field-help{font-size:13px;margin:16px 0 0}
.consultation-page>section{margin-top:40px;scroll-margin-top:32px}.consultation-page>section>h2{font-size:29px}.consultation-steps{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:0}
.consultation-steps>li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:22px;padding:28px 0;border-top:1px solid var(--border)}.consultation-steps>li:first-child{border-top:0;padding-top:0}.step-number{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#e5f0f6;font-weight:700;color:#174a68;font-size:20px}
.consultation-steps h3{font-family:var(--serif);font-size:25px;line-height:1.65;margin-top:4px}.consultation-steps p:last-child{margin-bottom:0}.consultation-steps strong{font-weight:700;color:#183e58}
.consultation-example{background:#f6fafc;border:1px solid var(--border);border-radius:6px;padding:18px 22px;margin-top:24px}.consultation-example>summary{font-weight:600;cursor:pointer;color:var(--navy)}.consultation-example[open]>summary{margin-bottom:18px}.consultation-example blockquote{margin:20px 0;padding:16px 20px;border-left:3px solid #7da9c1;background:#fff;font-size:15px;line-height:2}.consultation-example p{font-size:14px}
.consultation-next h2{font-size:27px}.services-consultation{margin-top:36px}.information-next{margin-top:32px}
@media(min-width:741px) and (max-width:1000px){.reference-hero .hero-content>.hero-audience{font-size:11px;margin-bottom:8px}.home-records-content .empty-state>.text-link,.home-activities .empty-state>.text-link{font-size:10px}}
@media(max-width:640px){
  .reference-hero .hero-content>.hero-audience{font-size:12px;max-width:none;margin:0 0 12px;line-height:1.8}
  .directory-views{display:grid;grid-template-columns:1fr 1fr;gap:8px}.directory-views a{font-size:12px;padding:8px}.guide-filters{gap:8px}.guide-filters a{padding:8px 12px;font-size:13px}
  .search-options,.search-scope,.status-help,.legacy-status{padding:16px;margin-block:20px}.search-options summary,.search-scope summary,.status-help summary,.legacy-status summary{font-size:14px}.search-options .filter-options label{width:100%}.search-options .button{width:100%}
  .phone-result{grid-template-columns:1fr;padding:20px;gap:16px}.phone-result h3{font-size:24px}.phone-result p{font-size:13px}.phone-number{font-size:22px}.phone-result>div:last-child{border-top:1px solid var(--border);padding-top:12px}
  .is-closed .panel>h2,.article-next h2{font-size:23px}.navigator-form{padding:18px}.question-examples{gap:8px;font-size:12px}.question-examples>span{width:100%}.question-examples button{font-size:12px;padding:8px 10px;min-height:44px}
  .home-records-content .empty-state>.text-link,.home-activities .empty-state>.text-link{font-size:13px}
  .home-ai-content{min-height:250px}
  .consultation-intro{padding-top:4px;padding-bottom:28px}.consultation-intro>.eyebrow{font-size:12px;line-height:1.8}.consultation-intro h1{font-size:28px;line-height:1.7}.consultation-intro h1 br{display:none}.consultation-intro .lead{font-size:16px}.consultation-intro .field-help{font-size:12px}.consultation-page>section{margin-top:30px}.consultation-page>section>h2{font-size:25px}
  .consultation-steps>li{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:24px 0}.step-number{width:30px;height:30px;font-size:16px}.consultation-steps h3{font-size:22px;margin-top:0}.consultation-steps p{font-size:14px;line-height:2}.consultation-example{padding:16px}.consultation-example>summary{font-size:14px}.consultation-example blockquote{padding:12px 14px;font-size:14px}.consultation-next h2{font-size:24px}
}

/* Source: experience.css */
/* Clear choices, anonymous records and grounded navigation. */
.facility-jump-links {display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 26px;padding:0 0 18px;border-bottom:1px solid var(--border)}
.facility-jump-links a {display:inline-flex;align-items:center;min-height:44px;padding:7px 15px;border:1px solid #b9cdda;border-radius:7px;background:#f4f9fc;font-size:14px;font-weight:600;text-decoration:none}
.facility-jump-links a:hover {background:#e6f1f7}
.facility-actions .button {white-space:normal}
.record-samples {margin:30px 0 42px;padding:26px;border:1px solid #c9dbe6;border-radius:12px;background:linear-gradient(145deg,#f4f9fc,#fff 65%)}
.record-samples-heading h2 {font-size:26px;margin:12px 0}
.record-samples-heading p {font-size:14px;max-width:760px;color:#405b6e}
.sample-label {display:inline-flex;align-items:center;font:700 12px/1.6 var(--sans);letter-spacing:.04em;padding:4px 10px;background:#f9f0da;border:1px solid #dfc88c;border-radius:4px;color:#665018}
.record-sample-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:22px}
.record-sample-card {background:#fff;border:1px solid #cbdbe5;border-radius:10px;padding:24px;display:flex;flex-direction:column;align-items:flex-start}
.record-sample-card h3 {font:700 23px/1.7 var(--serif);margin:22px 0 12px}
.record-sample-card h3 a {text-decoration:none}
.record-sample-card p {font-size:15px}
.record-sample-card>.text-link {margin-top:auto;min-height:44px;padding-top:8px}
.record-identity {display:flex;align-items:flex-start;gap:16px;margin:20px 0}
.record-avatar {display:grid;place-items:center;flex:none;width:68px;height:68px;background:#e8f1f6;border:1px solid #bdd0dd;border-radius:50%}
.record-avatar svg {width:48px;height:48px;fill:#658ba4;stroke:none}
.record-public-name {font-weight:700;margin:0 0 5px!important;font-size:16px!important;color:var(--deep)}
.record-profile {display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;color:#405b6e;font:14px/1.8 var(--sans)}
.record-profile>div {display:flex;gap:6px;align-items:baseline}
.record-profile dt {font-size:11px;color:#526c7e}
.record-profile dd {margin:0}
.record-identity .field-help {margin:0;font-size:13px}
.record-samples>.source-note {margin:20px 0 0}
.sample-notice {border:1px solid #d7be7e;border-left:4px solid #aa8743;border-radius:6px;padding:20px 24px;background:#fffcf4;margin-bottom:32px}
.sample-notice p {margin:12px 0 0;font-size:14px;line-height:1.9}
.record-sample-page header>.record-identity {padding-block:18px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:26px 0 12px}
.record-profile-note {font-size:13px;color:#4b6475;margin-bottom:30px}
.record-toc {padding:22px 26px;border:1px solid var(--border);background:#f6fafc;border-radius:8px;margin:28px 0 40px}
.record-toc ol {margin:10px 0 0;padding-left:24px}
.record-toc a {display:inline-block;padding:5px 0;font-size:15px}
.record-sample-page .entry-content>section {margin-bottom:44px}
.record-sample-page .entry-content h2 {font-size:28px;margin-bottom:20px}
.record-sample-page .entry-content p {font-size:17px;line-height:2.15}
.record-posting-guide {margin-block:24px}
.record-policy-list {margin:24px 0}
.record-policy-list>div {padding:17px 0;border-bottom:1px solid var(--border)}
.record-policy-list dt {font-weight:700;color:var(--deep)}
.record-policy-list dd {margin:8px 0 0;line-height:1.95}
.record-profile-fields {margin:24px 0;padding:24px;background:#f4f9fc;border:1px solid var(--border);border-radius:8px}
.record-profile-fields h2 {font-size:23px}
.record-profile-inputs {display:grid;gap:18px}
.record-profile-fields .field-help {font-size:14px;margin:20px 0 0}
.production-ai-notice {margin:32px 0 40px}
.production-ai-notice h2 {font-size:27px}
.production-ai-boundaries {display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}
.production-ai-boundaries>div {padding:22px;border:1px solid #bdd0db;border-radius:8px;background:#fff}
.production-ai-boundaries h3 {font-size:19px}
.production-ai-boundaries p {font-size:15px;margin-bottom:0}
.production-ai-notice>.source-note {font-size:14px;color:#405b6e}
.navigator-intro {max-width:850px;margin-bottom:32px}
.navigator-intro h1 {font-size:clamp(30px,3.8vw,46px)}
.navigator-mode {display:grid;gap:5px;padding:16px 20px;border-left:4px solid #508a9b;background:#eef6f8;font-size:14px}
.navigator-mode span {color:#3e596b}
.navigator-layout {display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px;align-items:start}
.navigator-form h2 {font-size:25px}
.navigator-selects {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.navigator-selects label {min-width:0}
.navigator-form select {font-size:14px;padding-inline:10px}
.navigator-form .question-examples {margin:18px 0}
.navigator-form .navigator-privacy {padding:14px 16px;border:1px solid #ccd8e1;background:#f5f8fa;border-radius:6px;font-size:14px;line-height:1.9}
.navigator-side .panel h2,.navigator-side .notice h2 {font-size:22px}
.navigator-side ul {padding-left:21px;font-size:14px}
.navigator-side li {margin-bottom:10px}
.navigator-side .notice {margin-top:20px}
.navigator-side .notice p {font-size:14px}
.navigator-output:not(:empty) {margin-top:32px;padding-top:8px}
.navigator-output h2 {font-size:28px}
.navigator-result {background:#fff;border:1px solid #bdcfdc;border-radius:9px;padding:26px;margin:18px 0}
.navigator-result h3 {font:700 23px/1.65 var(--serif)}
.navigator-result-actions {display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;margin-top:20px}
.navigator-result-actions>.text-link {font-size:13px;min-height:44px;display:inline-flex;align-items:center}
.navigator-facility-data {display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;margin:16px 0;font-size:15px}
.navigator-facility-data dt {font-size:13px;color:#526a7b}
.navigator-facility-data dd {margin:0}
.navigator-result .source-meta {line-height:1.9;margin-top:20px;font-size:12px;color:#4d6678}
.navigator-next {padding:24px;background:#f0f7fa;border-radius:8px}
.navigator-next h3 {font-size:21px}
.navigator-next ol {margin:0;padding-left:22px;font-size:15px}
.navigator-page .search-scope {margin-top:34px}
@media(max-width:1000px) {
  .navigator-layout {grid-template-columns:minmax(0,1fr)}
  .navigator-side {display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .navigator-side .notice {margin-top:0}
}
@media(max-width:740px) {
  .record-samples {padding:18px 12px;margin-block:24px 30px}
  .record-samples-heading h2 {font-size:23px}
  .record-sample-grid,.production-ai-boundaries,.navigator-selects,.navigator-side {grid-template-columns:minmax(0,1fr)}
  .record-sample-grid {gap:16px}
  .record-sample-card {padding:18px}
  .record-sample-card h3 {font-size:22px}
  .record-avatar {width:56px;height:56px}
  .record-avatar svg {width:40px;height:40px}
  .record-identity {gap:12px}
  .record-sample-card .record-identity {display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px 10px;width:100%}
  .record-sample-card .record-identity>div {display:contents}
  .record-sample-card .record-avatar {width:44px;height:44px}
  .record-sample-card .record-avatar svg {width:32px;height:32px}
  .record-sample-card .record-public-name {font-size:14px!important;align-self:center}
  .record-sample-card .record-profile {grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px}
  .record-sample-card .record-profile>div {padding:3px 8px;background:#eef5f8;border-radius:4px}
  .record-sample-card .record-profile dt {position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .record-profile {display:grid;gap:2px;font-size:13px}
  .sample-notice {padding:18px}
  .record-sample-page .entry-content h2 {font-size:24px}
  .record-sample-page .entry-content p {font-size:16px;line-height:2.05}
  .record-toc {padding:18px}
  .record-profile-fields {padding:18px}
  .production-ai-notice h2 {font-size:24px}
  .production-ai-boundaries>div {padding:18px}
  .navigator-form {padding:20px}
  .navigator-result {padding:20px}
  .navigator-result-actions {align-items:stretch;flex-direction:column}
  .navigator-result-actions>.button {width:100%}
  .navigator-mode {padding:14px;font-size:13px}
  .facility-jump-links {gap:7px}
  .facility-jump-links a {font-size:13px;padding-inline:12px}
}
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto}}

/* Readable invitation from each facility to the home recruitment guide. */
#life-records{scroll-margin-top:24px}.facility-record-invite{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0;padding:22px 26px;border:1px solid #d1e3e9;border-left:4px solid #226184;border-radius:12px;background:linear-gradient(115deg,#f1f8fb,#f5faf6)}.facility-record-invite .eyebrow{margin:0 0 6px;font-weight:700;color:#315d73}.facility-record-invite h2{margin:0 0 9px;font-size:clamp(18px,2vw,23px);line-height:1.65}.facility-record-invite p{margin:0;font-size:14px;line-height:1.9}.facility-record-invite .button{flex-shrink:0}.record-recruitment{margin:24px 0;padding:clamp(20px,3vw,36px);border:1px solid #cddfe6;border-radius:12px;background:linear-gradient(120deg,#f0f7fb,#f7faf5)}.record-recruitment h3{margin:0 0 14px;font-size:clamp(21px,2.4vw,30px);line-height:1.6}.record-recruitment p{line-height:1.95}.record-recruitment ul{padding:16px 20px 16px 36px;background:#fff;border-left:3px solid #95b7c6;line-height:1.95}.record-recruitment .button-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}#life-records:focus{outline-offset:8px}@media(max-width:700px){.facility-record-invite{align-items:stretch;flex-direction:column;gap:16px;padding:18px}.facility-record-invite .button{text-align:center}.record-recruitment .button-row{align-items:stretch;flex-direction:column}}

/* Source: reference-finish.css */
/* Reference composition: photographic trees and a restrained floral about detail. */
.site-footer {background:#0c2b42 url('footer-trees-reference.webp') center 56%/cover no-repeat}
.home-about {background:#fff;overflow:hidden}
.home-about-copy {position:relative;isolation:isolate;padding-bottom:calc(40 * var(--reference-unit))}
.home-about-copy::after {content:'';position:absolute;z-index:-1;pointer-events:none;right:calc(-10 * var(--reference-unit));bottom:calc(-22 * var(--reference-unit));width:calc(200 * var(--reference-unit));height:calc(140 * var(--reference-unit));background:url('about-flowers-reference.webp') right bottom/contain no-repeat}
.home-about-copy p {position:relative;z-index:1}
.home-editorial-status {margin-top:14px!important;font-size:max(11px,calc(8 * var(--reference-unit)))!important}
@media(min-width:741px) {
  .site-footer {background-image:url('footer-trees-reference.webp')}
  .home-about .home-two-columns {gap:calc(32 * var(--reference-unit));align-items:start}
  .home-about-copy {padding-right:calc(8 * var(--reference-unit))}
}
@media(max-width:740px) {
  .site-footer {background-image:url('footer-trees-reference.webp');background-position:70% bottom}
  .home-about-copy {padding-bottom:80px}
  .home-about-copy::after {width:220px;height:146px;right:-15px;bottom:-14px}
  .home-editorial-status {font-size:13px!important}
}

/* Dates and actions follow the reference's compact event rows. */
.event-rows{display:grid;gap:14px}.event-row{display:grid;grid-template-columns:82px minmax(0,1fr);gap:20px;border:1px solid #dce6ec;border-radius:6px;padding:20px;background:#fff}.event-calendar{display:flex;flex-direction:column;align-items:center;align-self:start;border-radius:4px;background:#edf4f8;color:#133b59;padding:10px 4px;font-size:13px;line-height:1.5}.event-calendar strong{font-size:27px;line-height:1.3;font-family:Georgia,serif}.event-row-copy{min-width:0}.event-row h3{font-size:19px;margin:8px 0;line-height:1.55}.event-row p{font-size:14px;margin:6px 0}.event-labels{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px;color:#44647c;line-height:1.6}.event-labels>span{display:inline-block}.event-state{background:#edf4fa;color:#1a4b6c;border-radius:4px;padding:1px 8px}.event-restricted{background:#fff4d9;color:#664916;border-radius:4px;padding:1px 8px}.event-place{color:#53677a}.event-row .text-link{font-size:13px}.home-event-rows{gap:8px}.home-event-rows .event-row{grid-template-columns:62px minmax(0,1fr);gap:14px;padding:12px}.home-event-rows .event-calendar{font-size:11px;padding:6px 3px}.home-event-rows .event-calendar strong{font-size:23px}.home-event-rows .event-row h3{font-size:16px;margin:5px 0}.home-event-rows .event-labels{gap:4px 7px;font-size:10px}.home-event-rows .event-place{font-size:11px}.home-event-rows .text-link{font-size:11px}.events-page .page-heading p{max-width:760px}.event-intro-note p{margin:0}.event-periods{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.event-periods a{padding:11px 20px;border:1px solid #c5d9e6;border-radius:4px;text-decoration:none}.event-periods a[aria-current=page],.event-pagination a[aria-current=page]{background:#12476e;color:#fff}.event-pagination{margin:30px 0}.event-article{max-width:980px}.event-article>header h1{font-size:clamp(26px,3.4vw,38px);line-height:1.55}.event-article>.notice,.event-article>.panel,.event-body,.event-related{margin-top:32px}.event-facts .data-list{grid-template-columns:minmax(120px,190px) minmax(0,1fr)}.event-facts dd{white-space:pre-line;overflow-wrap:anywhere}.event-body p{line-height:1.95}.event-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.event-related-grid h3{font-size:18px}.event-related .facility-photo img{max-height:240px;object-fit:contain}.event-related .facility-photo figcaption{font-size:11px}.event-source a{overflow-wrap:anywhere}
@media(max-width:600px){.event-row{grid-template-columns:61px minmax(0,1fr);gap:12px;padding:14px 10px}.event-calendar{font-size:11px}.event-calendar strong{font-size:22px}.event-row h3{font-size:17px}.event-row p{font-size:13px}.event-facts .data-list{display:block}.event-facts dt{margin-top:18px}.event-facts dd{margin:4px 0 0}.event-related-grid{grid-template-columns:1fr}.event-periods a{padding:10px 14px}.event-article .notice,.event-article .panel{padding:20px 16px}.home-event-rows .event-row{grid-template-columns:53px minmax(0,1fr);gap:10px;padding:12px 9px}.home-event-rows .event-row h3{font-size:15px}.event-article .lead{font-size:16px}}
.event-calendar strong{white-space:nowrap}.home-event-rows .event-calendar strong{font-size:20px}
@media(max-width:600px){.home-event-rows .event-calendar strong{font-size:17px}}

/* Date sorting applies to the entire selected period before pagination. */
.event-sort-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 18px;padding:20px;background:#f2f7fa;border:1px solid #dce6ec;border-radius:6px}.event-sort-form>div{flex:0 1 280px;min-width:0}.event-sort-form label{font-weight:600;font-size:14px;margin-bottom:6px}.event-sort-form select{min-height:48px}.event-sort-form .button{min-height:48px}.event-sort-form>p{flex-basis:100%;margin:0}.event-sort-form+.section-subheading{align-items:center}@media(max-width:600px){.event-sort-form{padding:16px;gap:12px}.event-sort-form>div,.event-sort-form>.button{flex-basis:100%;width:100%}.event-sort-form select{font-size:16px}.event-sort-form+.section-subheading{align-items:flex-start}}

/* Source: contact.css */
/* Dedicated contact pages and a compact, opt-in feedback doorway. */
.back-top{box-sizing:border-box;width:48px;height:48px;min-width:48px;min-height:48px;aspect-ratio:1;display:grid;place-items:center;padding:0;border-radius:50%;line-height:1;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));color:#164b70}
.back-top[hidden]{display:none}.back-top .icon{display:block;width:22px;height:22px;flex:none;margin:0}
.site-footer{padding-bottom:80px}.shn-feedback-card{position:fixed;right:max(78px,calc(env(safe-area-inset-right) + 60px));bottom:max(18px,env(safe-area-inset-bottom));z-index:25;font-family:var(--font-sans,sans-serif)}
.shn-feedback-toggle{display:flex;align-items:center;gap:6px;border:1px solid #b9cedb;border-radius:24px;min-height:48px;padding:9px 15px;background:#fff;color:#194c6b;font-size:13px;line-height:1.4;font-weight:700;box-shadow:0 3px 15px #102c4420;cursor:pointer}.shn-feedback-toggle .icon{width:19px;height:19px;margin:0;flex:none}
.shn-feedback-panel{position:absolute;right:0;bottom:60px;width:min(330px,calc(100vw - 32px));padding:24px 22px 20px;background:#fff;border:1px solid #b9cedb;border-radius:10px;box-shadow:0 12px 40px #102c4433;color:#18394f;text-align:left}.shn-feedback-panel[hidden]{display:none}.shn-feedback-panel h2{font-size:20px;margin:8px 22px 10px 0;line-height:1.5}.shn-feedback-panel p{font-size:14px;line-height:1.8;margin:8px 0}.shn-feedback-panel .eyebrow{font-size:11px;color:#35627b}.shn-feedback-panel .small{font-size:12px;color:#466074}.shn-feedback-panel .button{width:100%;font-size:14px;margin-top:8px}.shn-feedback-contact{display:block;font-size:12px;line-height:1.8;margin-top:14px;text-decoration:underline}.shn-feedback-close{position:absolute;top:8px;right:8px;width:36px;height:36px;display:grid;place-items:center;border:0;background:transparent;color:#244c64;font-size:26px;cursor:pointer;padding:0}.shn-feedback-toggle:focus-visible,.shn-feedback-close:focus-visible{outline:3px solid #1d78ac;outline-offset:3px}
html.shn-map-scroll-lock .shn-feedback-card,html.shn-map-scroll-lock .back-top,body.shn-corner-input-active .shn-feedback-card,body.shn-corner-input-active .back-top{visibility:hidden}
.shn-contact-page .page-heading{max-width:850px}.shn-contact-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:30px;align-items:start}.shn-contact-side{display:grid;gap:20px}.shn-contact-side h2{font-size:20px}.shn-contact-side p,.shn-contact-side li{font-size:14px;line-height:1.9}.shn-contact-links{padding-left:1.3em}.shn-contact-links li{margin:10px 0}.shn-contact-links a{text-decoration:underline}
.shn-contact-form-panel{padding:28px}.shn-contact-form-intro{margin-top:0}.shn-contact-page .wpcf7 form{display:grid;gap:12px}.shn-contact-page .wpcf7 form label{display:block;font-size:15px;font-weight:700;line-height:1.8}.shn-contact-page .wpcf7-form-control-wrap{display:block}.shn-contact-page .wpcf7 form .field-help{display:block;font-weight:400;font-size:13px;color:#506579;line-height:1.7;margin:4px 0 8px}.shn-contact-page .wpcf7 form input:not([type=checkbox]):not([type=submit]),.shn-contact-page .wpcf7 form select,.shn-contact-page .wpcf7 form textarea{width:100%;max-width:100%;box-sizing:border-box;font:400 16px/1.7 inherit;font-family:inherit;font-size:16px;line-height:1.7;padding:12px;border:1px solid #a9becb;border-radius:5px;background:#fff;color:#193a50}.shn-contact-page .wpcf7 form textarea{height:190px;min-height:150px;resize:vertical}.shn-contact-page .wpcf7 form input[type=submit]{width:100%;min-height:50px;padding:13px 15px;border:1px solid #164d75;border-radius:5px;background:#164d75;color:#fff;font-size:15px;font-weight:700;white-space:normal;cursor:pointer}.shn-contact-page .wpcf7 form input[type=submit]:disabled{background:#dfe7ed;color:#526778;border-color:#bacbd6;cursor:not-allowed}.shn-contact-page .wpcf7 form input:focus-visible,.shn-contact-page .wpcf7 form select:focus-visible,.shn-contact-page .wpcf7 form textarea:focus-visible{outline:3px solid #237cad;outline-offset:3px}
.shn-contact-consent{border-top:1px solid #dce6ed;padding-top:16px;font-size:13px;line-height:1.9}.shn-contact-consent a{text-decoration:underline}.shn-contact-consent .wpcf7-list-item{margin:0}.shn-contact-page .wpcf7 form .shn-contact-consent label{font-weight:400;font-size:13px;display:flex;gap:10px;align-items:flex-start}.shn-contact-consent input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin-top:4px;accent-color:#164d75}.shn-contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.shn-contact-page .wpcf7-not-valid-tip{font-size:13px;line-height:1.7;margin-top:6px;color:#a52b34}.shn-contact-page .wpcf7-response-output{margin:0!important;padding:16px!important;border-radius:5px;font-size:15px;line-height:1.9;overflow-wrap:anywhere}.shn-contact-page .wpcf7 form.sent .wpcf7-response-output{background:#edf7f1;border-color:#58896d;color:#234e3a}.shn-session-state{font-size:13px;line-height:1.7;color:#466074;margin:0}.shn-paused-fields{border:0;padding:0;margin:0;min-width:0}.shn-contact-after{padding:24px 4px}.shn-contact-after h2{font-size:23px}.shn-contact-after li{margin-bottom:14px;line-height:1.9}.shn-contact-paused h2{font-size:20px}.shn-contact-form-panel p:empty{display:none}
@media(max-width:760px){.shn-contact-layout{grid-template-columns:1fr;gap:20px}.shn-contact-form-panel{padding:20px 16px}.shn-contact-page .page-heading h1{font-size:28px;line-height:1.6}.shn-contact-page .wpcf7 form input[type=submit]{font-size:14px}.shn-contact-side{gap:16px}.back-top{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:44px;height:44px;min-width:44px;min-height:44px;padding:0}.shn-feedback-card{right:max(68px,calc(env(safe-area-inset-right) + 56px));bottom:max(12px,env(safe-area-inset-bottom))}.shn-feedback-toggle{min-height:44px;padding:8px 12px;font-size:12px}.shn-feedback-panel{position:fixed;left:12px;right:12px;bottom:max(68px,calc(env(safe-area-inset-bottom) + 56px));width:auto;max-height:calc(100dvh - 100px);overflow:auto;padding:22px 18px 18px}.shn-contact-after{padding-inline:0}}
/* Put the collapsed doorway in the desktop gutter; on phones keep it in the footer flow. */
.shn-feedback-card{right:0;bottom:max(82px,calc(env(safe-area-inset-bottom) + 70px))}.shn-feedback-toggle{writing-mode:vertical-rl;min-width:32px;min-height:96px;padding:12px 7px;border-radius:6px 0 0 6px;font-size:12px;letter-spacing:.12em;box-shadow:0 2px 10px #102c4415}.shn-feedback-toggle .icon{display:none}.shn-feedback-panel{right:44px;bottom:0}.shn-feedback-mobile-label{display:none}.site-footer .shn-feedback-panel a{color:#194c6b}.site-footer .shn-feedback-panel .button{color:#fff}
@media(max-width:760px){.shn-feedback-card{position:relative;inset:auto;display:flex;flex-direction:column;align-items:center;gap:10px;grid-column:1/-1;width:100%;margin-top:16px}.shn-feedback-mobile-label{display:block!important;color:#e0ecf3!important;font-size:12px!important;text-align:center;margin:0!important}.shn-feedback-toggle{writing-mode:horizontal-tb;min-width:140px;min-height:44px;justify-content:center;padding:9px 18px;border-radius:24px;letter-spacing:0}.shn-feedback-toggle .icon{display:block}.shn-feedback-panel{position:fixed;left:12px;right:12px;bottom:max(68px,calc(env(safe-area-inset-bottom) + 56px));width:auto}.site-footer .shn-feedback-panel p{color:#466074}}

/* Accessible native dialog: background stays inert; opening never navigates away. */
html.shn-feedback-open{overflow:hidden}
.shn-feedback-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(540px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:min(820px,calc(100dvh - 36px));padding:0;border:1px solid #a8bfcd;border-radius:12px;background:#fff;color:#193a50;text-align:left;font-family:var(--font-sans,sans-serif);box-shadow:0 16px 70px #102c4455;overflow:auto;overscroll-behavior:contain}
.shn-feedback-dialog::backdrop{background:#102c446b}.shn-feedback-dialog:not([open]){display:none}
.shn-feedback-dialog-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 24px 14px;background:#f3f9fc;border-bottom:1px solid #dce8ef}
.shn-feedback-dialog-header h2{margin:4px 0 0;font-size:24px;line-height:1.5}.shn-feedback-dialog-header .eyebrow{font-size:12px;color:#42627a}.shn-feedback-dialog .shn-feedback-close{position:static;flex:none;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid #cbdce6;display:grid;place-items:center;padding:0;line-height:1}.shn-feedback-close svg{display:block;width:20px;height:20px;pointer-events:none}
.shn-feedback-dialog-body{padding:20px 24px 26px}.shn-feedback-dialog p{font-size:14px;line-height:1.8;margin:0 0 14px}.shn-feedback-dialog .shn-feedback-context{padding:10px 12px;background:#edf5f9;border-radius:5px;font-size:12px;color:#416174}
.shn-feedback-dialog .wpcf7 form{gap:10px}.shn-feedback-dialog .wpcf7 form textarea{height:125px;min-height:100px}.shn-feedback-dialog .wpcf7 form input[type=submit]{margin:0}.shn-feedback-dialog .shn-feedback-safety{font-size:12px;color:#506579;margin-top:18px}.shn-feedback-dialog a{color:#164d75;text-decoration:underline}.shn-feedback-dialog .shn-contact-retry{font-size:14px}
@media(max-width:760px){.shn-feedback-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:10px}.shn-feedback-dialog-header{padding:12px 15px}.shn-feedback-dialog-header h2{font-size:22px}.shn-feedback-dialog-body{padding:15px}.shn-feedback-dialog p{font-size:13px}.shn-feedback-dialog .wpcf7 form textarea{height:110px}}

.shn-feedback-choices{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 22px}.shn-feedback-choices button{flex:1 1 180px;padding:12px;border:1px solid #b8d0dc;border-radius:8px;background:#fff;color:#123e58;font:inherit;font-weight:700;cursor:pointer}.shn-feedback-choices button[aria-pressed="true"]{background:#123e58;color:#fff;border-color:#123e58}.shn-question-warning h3{margin-top:0}.shn-question-warning p{font-size:14px;line-height:1.9}.shn-question-example{padding:14px 18px;border-left:3px solid #91b5c6;background:#f4f8fb;line-height:1.9}.shn-question-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}.shn-question-list h2{font-size:22px;line-height:1.6}.shn-question-answer .shn-public-question{margin:24px 0}.shn-feedback-dialog [hidden]{display:none!important}.home-questions .home-question-intro{max-width:780px;line-height:1.9}.home-questions .button-row{display:flex;gap:12px;flex-wrap:wrap}.home-questions .home-question-example{color:#47616c;font-size:14px}@media(max-width:700px){.shn-question-list{grid-template-columns:1fr}.shn-feedback-choices button{font-size:13px;padding:10px 8px;flex-basis:45%}.home-questions .button-row{flex-direction:column;align-items:stretch}}

.shn-share{margin:32px 0;padding:20px 0;border-top:1px solid #d6e1e7;border-bottom:1px solid #d6e1e7}.shn-share h2{font-size:18px;margin:0 0 12px}.shn-share-buttons{display:flex;flex-wrap:wrap;gap:10px}.shn-share-buttons a,.shn-share-buttons button{display:inline-flex;align-items:center;min-height:44px;padding:9px 16px;border:1px solid #9cb9c8;border-radius:7px;color:#123e58;background:#fff;font:inherit;font-size:14px;text-decoration:none;cursor:pointer}.shn-share-buttons a:hover,.shn-share-buttons button:hover{background:#eaf3f8}.shn-share-result{font-size:13px;overflow-wrap:anywhere}.shn-share-result:empty{display:none}
@media(max-width:360px){.shn-feedback-dialog-header h2{font-size:18px;line-height:1.6;letter-spacing:0}}

/* Source: facility-profiles.css */
.shn-facility-programmes,.shn-facility-stages{margin-block:28px;padding:clamp(20px,3vw,38px);scroll-margin-top:105px}
.shn-facility-programmes>header>p,.shn-facility-stages>p{max-width:78ch;line-height:1.9}
.shn-programme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}
.shn-programme-item{min-width:0;border-top:3px solid #7faac4;background:#f5f9fc;padding:21px 23px}
.shn-programme-item h3{margin:0 0 12px;color:#123d5d;font-size:1.13rem}
.shn-programme-item p{line-height:1.95;margin:0 0 14px;overflow-wrap:anywhere}
.shn-claim-source{font-size:.88rem;text-underline-offset:4px;line-height:1.8;color:#245b7b}
.shn-profile-sources{margin-top:24px;border:1px solid #cbdde7;border-radius:7px;padding:0 20px;background:#fff}
.shn-profile-sources summary{cursor:pointer;padding:17px 0;min-height:48px;color:#123d5d;font-weight:700;line-height:1.7}
.shn-profile-sources[open]{padding-bottom:18px}
.shn-profile-sources p,.shn-profile-sources li{line-height:1.9;overflow-wrap:anywhere}
.shn-profile-sources li+li{margin-top:16px}
.shn-profile-sources h3{font-size:1.08rem;margin-top:20px}
.shn-grade-flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:26px 0 15px}
.shn-grade-flow li{position:relative;background:#eef6fb;border:1px solid #cfdfeb;border-radius:8px;padding:18px;display:flex;flex-direction:column;gap:7px;line-height:1.7}
.shn-grade-flow li+li:before{content:'→';position:absolute;left:-17px;top:24px;background:#fff;color:#356c91}
.shn-grade-flow strong{font-family:var(--font-serif,serif);font-size:1.45rem;color:#123d5d}
.shn-facility-stages .notice{margin-top:22px;line-height:1.9}
@media(max-width:640px){.shn-programme-grid{grid-template-columns:1fr;gap:12px}.shn-programme-item{padding:18px}.shn-grade-flow{grid-template-columns:1fr;gap:16px}.shn-grade-flow li{flex-direction:row;gap:15px;align-items:center}.shn-grade-flow strong{flex:0 0 3.2em}.shn-grade-flow li+li:before{content:'↓';left:30px;top:-20px;padding-inline:6px}.shn-profile-sources{padding-inline:15px}.shn-facility-programmes,.shn-facility-stages{padding:20px 16px;scroll-margin-top:85px}}

/* Dated history and terminology, readable in narrow screens. */
.shn-history-list{list-style:none;padding:0;margin:1.5rem 0;border-left:2px solid #bed5e3}
.shn-history-list li{padding:0 0 1.4rem 1.2rem;position:relative}
.shn-history-list li:before{content:"";position:absolute;left:-6px;top:.5em;width:10px;height:10px;border-radius:50%;background:#20577c}
.shn-history-list li p{margin:.35rem 0}
.shn-term-pairs{margin:1.25rem 0}
.shn-term-pairs>div{border-top:1px solid #d5e2eb;padding:1rem 0}
.shn-term-pairs dt{font-weight:700;color:#193e5a;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.shn-term-pairs dd{margin:.6rem 0 0;line-height:1.9}
.shn-term-pairs .badge{font-size:.75rem;font-weight:400;white-space:normal}
.shn-facility-history .shn-profile-sources{margin-top:1rem}

.shn-historical-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}.shn-historical-gallery figure{margin:0;border:1px solid #d7e2e6;border-radius:8px;overflow:hidden;background:#fff}.shn-historical-gallery img{display:block;width:100%;height:auto;max-width:960px}.shn-historical-gallery figcaption{padding:18px;font-size:13px;line-height:1.85;overflow-wrap:anywhere}.shn-historical-gallery figcaption p{margin:10px 0 0}.shn-historical-gallery strong{color:#123e58;font-size:15px}@media(max-width:700px){.shn-historical-gallery{grid-template-columns:1fr}}

.shn-historical-gallery figure:only-child{grid-column:1/-1;width:100%;max-width:960px;margin-inline:auto}

/* Small, readable comparison tables for facility courses, stages and history. */
.shn-simple-table{width:100%;table-layout:fixed;border-collapse:collapse;margin:1.1rem 0 1.5rem;font-size:.96rem;line-height:1.8;background:#fff}
.shn-simple-table th,.shn-simple-table td{border:1px solid #cbdde7;padding:15px 17px;vertical-align:top;text-align:left;overflow-wrap:anywhere}
.shn-simple-table thead th{background:#e8f2f8;color:#173e5b;font-weight:700}
.shn-simple-table thead th:first-child{width:31%}
.shn-simple-table tbody th{background:#f5f9fc;color:#173e5b;font-weight:700}
.shn-simple-table td p{margin:0}
.shn-simple-table td p+p,.shn-simple-table td p+a{margin-top:.55rem}
.shn-simple-table .shn-claim-source{display:inline-block}
.shn-simple-table .course-condition{color:#244b66;font-size:.91rem}
.shn-table-code{display:block;color:#416379;font-size:.82rem;font-weight:400}
@media(max-width:640px){.shn-simple-table{font-size:.9rem}.shn-simple-table th,.shn-simple-table td{padding:11px 10px}.shn-simple-table thead th:first-child{width:36%}}
