/* Approved A: shared UI only. No production body reset, fonts or dependencies. */
html.sui-page { --sui-paper:#f7faf8; --sui-ink:#193e48; --sui-blue:#21677a; --sui-deep:#103f4e; --sui-mint:#e8f2eb; --sui-line:#b6cfc8; --sui-safe-top:env(safe-area-inset-top,0px); --sui-safe-bottom:env(safe-area-inset-bottom,0px); background:var(--sui-paper); scroll-padding-top:7rem; }
html.sui-page main { position:relative; }
html.sui-page main.service-main { padding-bottom:0; }
:is(.sui-header,.sui-menu,.sui-footer,.sui-review) { color:var(--sui-ink,#193e48); font-family:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; font-weight:500; font-size:1rem; line-height:1.8; letter-spacing:.035em; text-align:left; }
:is(.sui-header,.sui-menu,.sui-footer,.sui-review) *, :is(.sui-header,.sui-menu,.sui-footer,.sui-review) *::before, :is(.sui-header,.sui-menu,.sui-footer,.sui-review) *::after { box-sizing:border-box; }
:is(.sui-header,.sui-menu,.sui-footer,.sui-review) :is(a,button,summary) { -webkit-tap-highlight-color:transparent; touch-action:manipulation; }
:is(.sui-header,.sui-menu,.sui-footer,.sui-review) a { color:inherit; text-decoration:none; }
:is(.sui-header,.sui-menu,.sui-footer,.sui-review) button { font-family:inherit; font-weight:inherit; color:inherit; cursor:pointer; }
:is(.sui-header,.sui-menu,.sui-footer,.sui-review) :is(h2,h3,p) { margin:0; }
:is(.sui-header,.sui-menu,.sui-footer) :is(h2,h3,strong) { font-weight:700; color:inherit; }
:is(.sui-header,.sui-menu,.sui-footer,.sui-review) :focus-visible { outline:3px solid #21677a; outline-offset:5px; border-radius:5px; }
.sui-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.sui-header { position:absolute; top:0; left:0; right:0; display:flex; align-items:center; gap:1.1rem; padding:calc(18px + env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-right,0px)) 12px max(24px,env(safe-area-inset-left,0px)); z-index:60; pointer-events:none; background:none; border:none; }
.sui-header > * { pointer-events:auto; }
.sui-brand { display:inline-flex; align-items:center; gap:.65rem; min-width:0; flex-shrink:1; }
.sui-brand img { width:44px; height:44px; object-fit:contain; flex:none; }
.sui-brand > span { display:block; min-width:0; }
.sui-brand strong { display:block; font-size:1.05rem; letter-spacing:.045em; line-height:1.5; }
.sui-brand small { display:block; font-size:.55rem; letter-spacing:.065em; line-height:1.6; }
.sui-header .sui-brand { padding:.35rem .7rem .35rem .3rem; border-radius:8px 22px 15px 8px; background:rgba(255,255,255,.88); }
.sui-desktop-nav { display:flex; align-items:center; gap:clamp(12px,1.8vw,32px); margin-left:auto; padding:.5rem .8rem; border-radius:16px; background:rgba(255,255,255,.9); }
.sui-desktop-nav > a:not(.sui-button) { font-size:.875rem; min-height:44px; display:flex; align-items:center; position:relative; }
.sui-desktop-nav > a:not(.sui-button)::after { content:""; position:absolute; left:0; right:0; bottom:5px; height:2px; background:#6da89d; transform:scaleX(0); transform-origin:left; transition:transform .24s; }
.sui-desktop-nav .sui-arrow { display:none; }
.sui-menu-trigger { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:4px; border:1px solid #b6cfc8; border-radius:18px 18px 22px 10px; padding:12px 14px 9px; min-width:64px; min-height:62px; background:#e8f2eb; box-shadow:0 4px 0 #8dab9d; font-size:.65rem; letter-spacing:.1em; line-height:1.4; flex:none; }
.sui-menu-trigger[hidden] { display:none; }
.sui-menu-lines { display:block; width:24px; height:16px; border-top:2px solid #21677a; border-bottom:2px solid #21677a; position:relative; }
.sui-menu-lines::after { content:""; position:absolute; height:2px; background:#21677a; top:5px; left:0; right:5px; }
.sui-header.sui-compact { position:fixed; justify-content:flex-end; padding-top:calc(12px + env(safe-area-inset-top,0px)); }
.sui-header.sui-compact > :is(.sui-brand,.sui-desktop-nav) { display:none; }
.sui-kicker { font-size:.75rem; font-weight:700; letter-spacing:.15em; color:#21677a; line-height:1.7; }
.sui-actions { display:grid; align-content:center; gap:1.2rem; min-width:0; }
.sui-button { --button-face:#21677a; --button-edge:#103f4e; display:flex; align-items:center; justify-content:space-between; gap:1.2rem; min-height:62px; padding:1rem 1.5rem; border:1px solid transparent; border-radius:13px 20px 16px 13px; background:var(--button-face); box-shadow:0 6px 0 var(--button-edge),0 11px 22px #21677a1a; color:#fff !important; font-weight:700; line-height:1.6; transition:transform .24s,box-shadow .24s; }
.sui-button--mint { --button-face:#e8f2eb; --button-edge:#8dab9d; color:#193e48 !important; border-color:#d0e2d7; }
.sui-button--compact { min-height:44px; padding:.5rem 1.2rem; border-radius:10px; font-size:.875rem; }
.sui-arrow { display:inline-block; position:relative; width:20px; height:20px; flex:none; transform:rotate(-35deg); transition:transform .24s; }
.sui-arrow::before { content:""; position:absolute; top:9px; left:1px; width:17px; height:1.5px; background:currentColor; }
.sui-arrow::after { content:""; position:absolute; top:5px; right:2px; width:9px; height:9px; border-top:1.5px solid; border-right:1.5px solid; transform:rotate(45deg); }
.sui-arrow--up { transform:rotate(-90deg); }
.sui-button:active,.sui-menu-trigger:active { transform:translateY(4px); box-shadow:0 2px 0 var(--button-edge,#8dab9d); }
.sui-button:focus-visible { outline-color:#408b9c; outline-offset:7px; }
.sui-phone { display:flex; gap:.8rem; align-items:center; padding:.75rem .25rem; min-height:44px; }
.sui-phone strong { font-size:clamp(1.2rem,2.1vw,1.65rem); letter-spacing:.06em; overflow-wrap:anywhere; }
.sui-phone small { display:block; font-size:.8125rem; letter-spacing:0; line-height:1.8; }
.sui-phone-icon { position:relative; width:18px; height:26px; border-left:4px solid; border-radius:12px; transform:rotate(-35deg); flex:none; margin:0 3px; }
.sui-phone-icon::before,.sui-phone-icon::after { content:""; position:absolute; left:-4px; width:10px; height:6px; border-radius:3px; background:currentColor; }
.sui-phone-icon::before { top:0; }.sui-phone-icon::after { bottom:0; }
.sui-note { font-size:.875rem; color:#49666d; line-height:1.9; }
/* Native dialog supplies inert background, focus containment and Escape behavior. */
.sui-menu { width:100%; max-width:none; height:100%; height:100dvh; max-height:none; margin:0; padding:0; border:0; background:#f7faf8; overscroll-behavior:contain; }
.sui-menu:not([open]) { display:none; }
.sui-menu::backdrop { background:#193e4855; }
.sui-menu[open] { animation:sui-menu-in .26s ease-out both; }
.sui-menu::before { content:""; position:absolute; top:0; left:0; width:20%; height:140px; border-radius:0 0 100% 0; background:#dcece5; pointer-events:none; }
.sui-menu-top { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:calc(18px + env(safe-area-inset-top,0px)) max(32px,env(safe-area-inset-right,0px)) 18px max(32px,env(safe-area-inset-left,0px)); background:#f7faf8f5; }
.sui-close { display:flex; align-items:center; gap:1rem; border:1px solid #b6cfc8; border-radius:50px; padding:.4rem 1rem; min-height:48px; background:#fff; flex:none; }
.sui-close span:last-child { font-size:1.6rem; line-height:1; }
.sui-menu-body { position:relative; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr); gap:clamp(40px,8vw,140px); max-width:1200px; margin:auto; padding:24px 32px calc(48px + env(safe-area-inset-bottom,0px)); }
.sui-menu-nav > .sui-kicker { margin-bottom:1.4rem; }
.sui-menu-link { display:flex; justify-content:space-between; align-items:center; min-height:52px; gap:1rem; border-bottom:1px solid #c9dad5; padding:.6rem .25rem; }
.sui-menu-consult { align-self:start; position:sticky; top:130px; padding:2.2rem; background:#e8f2f3; border-radius:70px 18px 60px 18px; }
.sui-menu-consult h2 { font-size:1.6rem; line-height:1.7; margin:1rem 0; }
.sui-menu-consult > p:not(.sui-kicker) { margin:1rem 0; }
.sui-menu-consult .sui-actions { margin-top:2rem; }
/* Footer A: white organic panel, aqua / mint supporting planes, sparse tools. */
.sui-footer { position:relative; isolation:isolate; background:#fff; width:100%; margin-block-start:0; }
/* Inside main's stacking context: above its trailing background, below fixed controls. */
.sui-footer-entry-wave { position:absolute; z-index:1; bottom:-1px; left:0; display:block; width:100%; height:clamp(44px,5vw,72px); max-width:none; pointer-events:none; }
.sui-contact { position:relative; isolation:isolate; padding:clamp(64px,6vw,96px) max(24px,env(safe-area-inset-right,0px)) clamp(40px,4vw,64px) max(24px,env(safe-area-inset-left,0px)); background:#e8f3f7; overflow:hidden; }
.sui-contact-wave { position:absolute; z-index:2; bottom:0; left:0; width:100%; height:clamp(64px,10vw,150px); pointer-events:none; }
.sui-contact::after { content:""; position:absolute; z-index:3; left:-5%; right:-5%; bottom:-55px; height:95px; border-radius:50% 45% 0 0; background:#fff; transform:rotate(1deg); pointer-events:none; }
.sui-contact-decor { position:absolute; z-index:-1; left:0; bottom:0; width:48%; height:75%; object-fit:cover; object-position:left bottom; opacity:.66; mix-blend-mode:multiply; filter:brightness(.6) contrast(5) saturate(.65); mask-image:linear-gradient(90deg,#000 45%,transparent); pointer-events:none; }
.sui-wrench { position:absolute; z-index:0; right:-44px; bottom:-12px; width:auto; height:clamp(215px,20vw,295px); max-width:none; color:#81968d; opacity:.95; pointer-events:none; }
.sui-contact-panel { position:relative; isolation:isolate; max-width:1280px; min-height:420px; margin:auto; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); align-items:center; gap:clamp(36px,4.7vw,68px); padding:70px 150px 80px 118px; }
.sui-contact-shape { position:absolute; z-index:-1; inset:0; width:100%; height:100%; pointer-events:none; }
.sui-contact-copy,.sui-contact-panel > .sui-actions { position:relative; z-index:1; min-width:0; }
.sui-contact h2 { font-size:clamp(1.65rem,2.55vw,2.375rem); line-height:1.55; letter-spacing:.035em; margin:0; }
.sui-contact-copy > p { margin-top:0; font-size:.9375rem; line-height:1.9; letter-spacing:.015em; }
.sui-stroke { display:block; width:64px; height:3px; border-radius:50%; background:#91b8aa; transform:rotate(-2deg); margin:1.4rem 0; }
.sui-contact .sui-actions { gap:20px; }
.sui-contact .sui-button--footer { --button-face:#dceff8; --button-edge:#87afc2; --button-glow:#4279921a; justify-content:center; min-height:70px; gap:20px; padding:16px 22px; border-radius:8px; font-size:clamp(1rem,1.35vw,1.25rem); color:#20556d !important; border-color:#c7e2ef; box-shadow:0 6px 0 var(--button-edge),0 11px 22px var(--button-glow); }
.sui-contact .sui-button--line { --button-face:#dcefe2; --button-edge:#8eaf9b; --button-glow:#3e75521a; color:#29553c !important; border-color:#cce4d3; }
.sui-contact .sui-button--phone { --button-face:#fff; --button-edge:#a3b8bf; --button-glow:#375c6815; color:#244b59 !important; border-color:#d6e2e6; text-align:left; cursor:pointer; }
.sui-phone-label { display:block; font-size:.8125rem; font-weight:700; line-height:1.5; }
.sui-mail-icon { display:block; position:relative; width:28px; height:21px; border:1.7px solid currentColor; border-radius:3px; flex:none; }
.sui-mail-icon::after { content:""; position:absolute; width:16px; height:16px; left:4px; top:-7px; border-right:1.7px solid; border-bottom:1.7px solid; transform:scaleY(.7) rotate(45deg); }
.sui-line-icon { width:30px; height:27px; flex:none; position:relative; display:grid; place-items:center; font-size:9px; line-height:1; letter-spacing:0; border:1.5px solid; border-radius:50%; }
.sui-line-icon::after { content:""; position:absolute; bottom:-4px; left:5px; width:7px; height:7px; border-left:1.5px solid; transform:skewY(-40deg); }
.sui-button--line .sui-line-icon { color:#fff; background:#278450; border-color:#278450; }
.sui-button--line .sui-line-icon::after { border-color:#278450; }
.sui-contact .sui-phone { margin-top:0; justify-content:center; }
.sui-contact .sui-phone strong { font-size:clamp(1.2rem,1.95vw,1.7rem); }
.sui-footer .sui-outline { border-color:#6b9ebf; color:#0a63aa; }
.sui-footer-inner { max-width:1440px; margin:auto; padding:40px max(56px,env(safe-area-inset-right,0px)) calc(28px + env(safe-area-inset-bottom,0px)) max(56px,env(safe-area-inset-left,0px)); }
.sui-footer-overview { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.8fr); gap:clamp(32px,3vw,48px); }
.sui-company { border-right:1px solid #b6cfc8; padding-right:32px; }
.sui-company > p { margin:1.2rem 0; font-size:.9375rem; }
.sui-outline { display:inline-flex; justify-content:space-between; align-items:center; gap:2rem; padding:.6rem 1.2rem; border:1px solid #91b8aa; border-radius:40px; min-height:44px; font-size:.875rem; }
.sui-social { display:flex; gap:1.4rem; margin-top:.9rem; }
.sui-social a { min-height:44px; display:flex; align-items:center; gap:.4rem; font-size:.8125rem; }
.sui-company .sui-brand strong { font-size:clamp(1.05rem,1.5vw,1.375rem); }
.sui-quick-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.25rem 1.5rem; align-content:start; }
.sui-quick-col { min-width:0; }
.sui-quick-links a { display:flex; justify-content:space-between; align-items:center; gap:.5rem; padding:.6rem .2rem; min-height:44px; border-bottom:1px solid #dbe8e3; font-size:.9375rem; }
.sui-reception { border-top:1px solid #b6cfc8; margin-top:32px !important; padding:1.4rem 0; font-size:.875rem; }
.sui-directory { margin-top:16px; border-top:1px solid #dbe8e3; padding-top:32px; scroll-margin-top:6rem; }
.sui-directory-title { margin-bottom:24px; }
.sui-directory-title h2 { font-size:1.2rem; margin-top:.5rem; }
.sui-directory-title > p:last-child { font-size:.875rem; color:#49666d; margin-top:.5rem; }
.sui-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:0 2rem; }
.sui-disclosure { border-bottom:1px solid #b6cfc8; min-width:0; }
.sui-disclosure summary,.sui-map-details summary { display:flex; justify-content:space-between; align-items:center; gap:1rem; cursor:pointer; list-style:none; padding:1rem .2rem; min-height:52px; font-weight:700; line-height:1.7; }
.sui-disclosure summary::-webkit-details-marker,.sui-map-details summary::-webkit-details-marker { display:none; }
.sui-plus { width:15px; height:15px; position:relative; flex:none; }
.sui-plus::before,.sui-plus::after { content:""; position:absolute; left:0; top:7px; width:15px; height:1.5px; background:currentColor; }
.sui-plus::after { transform:rotate(90deg); transition:transform .2s; }
details[open] > summary .sui-plus::after { transform:rotate(0); }
.sui-disclosure-links { display:grid; padding:0 .2rem .75rem; }
.sui-disclosure-links a { display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:44px; padding:.5rem .65rem; border-radius:7px; font-size:.9375rem; line-height:1.7; }
.sui-area-title { margin:32px 0 12px; }
.sui-area-title h3 { font-size:1.05rem; }
.sui-area-title p { font-size:.875rem; color:#49666d; margin-top:.5rem; }
.sui-city-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); align-items:start; gap:0 1.5rem; }
.sui-wide { margin-top:16px; }
.sui-wide .sui-disclosure-links { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sui-directory > .sui-note { margin-top:12px; }
.sui-map-details { margin-top:16px; border-bottom:1px solid #b6cfc8; }
.sui-map-details summary { font-size:.9375rem; font-weight:500; }
.sui-map-details img { display:block; width:min(100%,600px); height:auto; margin:20px auto; }
.sui-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; margin-top:32px; padding-bottom:72px; font-size:.75rem; }
.sui-top { min-height:44px; display:inline-flex; align-items:center; gap:1rem; }
.sui-review { background:#f7faf8; margin:0; }
.sui-review main { padding:clamp(24px,5vw,72px); max-width:1400px; margin:auto; }
.sui-review h1 { font-size:clamp(1.6rem,4vw,2.8rem); line-height:1.7; }
.sui-review-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:24px; margin-top:32px; }
.sui-review-grid article { background:#fff; border:1px solid #b6cfc8; border-radius:28px 12px 24px 12px; padding:24px; box-shadow:0 5px 0 #d3e5dd; }
.sui-review-grid h2 { font-size:1.1rem; margin-bottom:16px; }
.sui-review-grid a { display:flex; justify-content:space-between; min-height:44px; align-items:center; border-bottom:1px solid #d3e5dd; }
@media (hover:hover) and (pointer:fine) {
 .sui-button:hover:not(:active) { transform:translateY(-2px); box-shadow:0 8px 0 var(--button-edge),0 14px 25px #21677a20; }
 .sui-contact .sui-button--footer:hover:not(:active) { box-shadow:0 8px 0 var(--button-edge),0 14px 25px var(--button-glow); }
 .sui-button:hover:not(:active) .sui-arrow { transform:translate(2px,-2px) rotate(-35deg); }
 .sui-desktop-nav > a:hover::after { transform:scaleX(1); }
 :is(.sui-quick-links,.sui-disclosure-links,.sui-menu-nav) a:hover { background:#e8f2eb; }
}
.sui-contact .sui-button--footer:active { transform:translateY(4px); box-shadow:0 2px 0 var(--button-edge); }
@media (max-width:1199px) {
 .sui-desktop-nav { display:none; }
 .sui-menu-trigger { margin-left:auto; }
 .sui-contact-panel { gap:32px; padding:56px 78px 70px; min-height:380px; }
 .sui-contact .sui-button--footer { padding-inline:16px; gap:14px; }
 .sui-wrench { height:210px; right:-32px; }
 .sui-footer-inner { padding-inline:32px; }
 .sui-footer-overview { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); }
 .sui-quick-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sui-corporate { display:none; }
}
@media (max-width:767px) {
 .sui-header { padding:calc(12px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 8px max(16px,env(safe-area-inset-left,0px)); gap:10px; }
 .sui-header .sui-brand { padding:.35rem .55rem .35rem .2rem; }
 .sui-brand { gap:8px; }
 .sui-brand img { width:34px; height:34px; }
 .sui-brand strong { font-size:.875rem; letter-spacing:.02em; }
 .sui-brand small { font-size:.43rem; letter-spacing:.03em; }
 .sui-menu-trigger { min-width:54px; min-height:54px; padding:10px; font-size:.6rem; border-radius:16px 16px 20px 8px; }
 .sui-menu-top { padding:calc(12px + env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) 12px max(20px,env(safe-area-inset-left,0px)); }
 .sui-close { font-size:.8125rem; padding:.5rem .7rem; gap:.5rem; }
 .sui-menu-body { display:block; padding:16px max(24px,env(safe-area-inset-right,0px)) calc(36px + env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px)); }
 .sui-menu .sui-disclosure summary { font-size:1.15rem; min-height:68px; }
 .sui-menu-consult { margin-top:32px; position:static; padding:26px 22px; border-radius:42px 12px 34px 12px; }
 .sui-menu-consult h2 { font-size:1.25rem; }
 .sui-menu-consult > .sui-kicker { display:none; }
 .sui-menu-consult .sui-actions { margin-top:1.5rem; }
 .sui-contact { padding:56px 16px 48px; }
 .sui-contact-panel { grid-template-columns:minmax(0,1fr); min-height:0; padding:36px 28px 50px; gap:28px; background:#fff; border-radius:18% 13% 20% 16% / 6% 7% 8% 12%; }
 .sui-contact-shape { display:none; }
 .sui-contact h2 { font-size:clamp(1.25rem,6vw,1.65rem); }
 .sui-contact-copy > p:not(.sui-kicker) { font-size:.9375rem; }
 .sui-contact-copy .sui-kicker { font-size:.65rem; }
 .sui-contact-decor { width:90%; left:0; height:48%; opacity:.55; }
 .sui-wrench { width:auto; height:175px; right:-42px; bottom:-35px; }
 .sui-contact .sui-button--footer { min-height:62px; font-size:1rem; padding:15px 18px; gap:16px; }
 .sui-contact .sui-phone { justify-content:center; padding-inline:14px; }
 .sui-contact .sui-phone strong { font-size:1.3rem; }
 .sui-phone strong { font-size:1.35rem; }
 .sui-phone small { font-size:.75rem; }
 .sui-button { min-height:58px; padding:1rem 1.15rem; font-size:1rem; }
 .sui-footer-inner { padding:32px max(24px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(24px,env(safe-area-inset-left,0px)); }
 .sui-footer-overview { grid-template-columns:minmax(0,1fr); gap:26px; }
 .sui-company { border:0; padding:0; }
 .sui-company .sui-brand strong { font-size:1rem; }
 .sui-company .sui-brand img { width:40px; height:40px; }
 /* One mobile directory, not two competing lists of the same services. */
 .sui-quick-links { display:none; }
 .sui-directory-grid,.sui-city-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
 .sui-directory .sui-disclosure,.sui-map-details { border:1px solid #bdd5dc; border-radius:16px; background:#fff; box-shadow:0 3px 0 #d5e7ec; }
 .sui-directory .sui-disclosure > summary,.sui-map-details > summary { min-height:64px; padding:17px 20px; border-radius:15px; background:#eef6f8; font-size:1rem; font-weight:700; }
 .sui-directory details[open] > summary { border-radius:15px 15px 0 0; border-bottom:1px solid #d1e2e7; }
 .sui-directory summary:active { background:#e1eff3; }
 .sui-directory .sui-plus { width:28px; height:28px; border-radius:50%; background:#d8e9ec; color:#21677a; }
 .sui-directory .sui-plus::before,.sui-directory .sui-plus::after { width:14px; left:7px; top:13px; }
 .sui-directory .sui-disclosure-links { padding:6px 18px 10px; }
 .sui-directory .sui-disclosure-links a { min-height:48px; padding:12px 6px; border-bottom:1px solid #e1ebe8; border-radius:0; }
 .sui-directory .sui-disclosure-links a:last-child { border-bottom:0; }
 .sui-wide .sui-disclosure-links { grid-template-columns:minmax(0,1fr); }
 .sui-bottom { padding-bottom:88px; }
}
@media (max-width:374px) { .sui-header .sui-brand small { display:none; } .sui-header .sui-brand strong { font-size:.8125rem; } .sui-contact-panel { padding:30px 20px; } .sui-contact h2 { font-size:1.5rem; } }
@media (prefers-reduced-motion:reduce) { .sui-menu[open] { animation:none; } :is(.sui-header,.sui-menu,.sui-footer) * { transition:none !important; scroll-behavior:auto; } }
@media (forced-colors:active) { .sui-button,.sui-menu-trigger { border:2px solid ButtonText; box-shadow:none; } .sui-menu-lines,.sui-menu-lines::after,.sui-plus::before,.sui-plus::after { border-color:ButtonText; background:ButtonText; } }
@keyframes sui-menu-in { from { opacity:.4; transform:translateY(-6px); } to { opacity:1; transform:none; } }
