
:root {--bg:#f4f7fc;--surface:#fff;--surface-soft:#edf3fb;--surface-strong:#dfeaf8;--ink:#172a43;--muted:#576c84;--line:#d9e3ef;--brand:#225da3;--brand-deep:#17467c;--brand-soft:#e3effc;--lime:#bfdcf9;--container:1180px;--radius:20px;}
html[data-theme="dark"] {--bg:#111e2d;--surface:#1b2c40;--surface-soft:#233a54;--surface-strong:#2c4866;--ink:#e6effb;--muted:#b3c5dc;--line:#354e6a;--brand:#9cc5f6;--brand-deep:#132d4b;--brand-soft:#2a4668;--lime:#a5c9ee;}
body {font-family:system-ui,-apple-system,'Segoe UI','Malgun Gothic',sans-serif;background:var(--bg);line-height:1.75;}.site-header {background:var(--surface);border-bottom:1px solid var(--line);box-shadow:none;}.header-inner {min-height:84px;}.brand {font-size:25px;letter-spacing:-1px;}.brand-mark {border-radius:12px;background:var(--brand-soft);}.main-nav a {font-weight:650;padding:10px 13px;border-radius:10px;}.main-nav a:hover {background:var(--brand-soft);color:var(--brand);}.hero {background:linear-gradient(140deg,var(--surface-soft),var(--surface));border-bottom:1px solid var(--line);padding-block:56px;}.hero h1 {font-family:inherit;letter-spacing:-1.8px;line-height:1.3;font-size:clamp(32px,4.4vw,54px);}.hero-copy>p {color:var(--muted);line-height:1.8;}.hero-grid {gap:44px;}.search-panel,.search-card,.quick-search {border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 14px 36px rgba(28,62,108,.08);}.eyebrow {color:var(--brand);font-weight:750;}.button {border-radius:10px;font-weight:700;}.feature-card {border:1px solid var(--line);background:var(--surface);border-radius:20px;box-shadow:none;padding:26px;}.feature-card h2,.feature-card h3 {font-family:inherit;letter-spacing:-.7px;}.feature-number {color:var(--brand);font-variant-numeric:tabular-nums;}.feature-icon {background:var(--brand-soft);color:var(--brand);border-radius:14px;}.region-card,.complex-card,.type-card {border:1px solid var(--line);border-radius:16px;background:var(--surface);}.table-wrap {border:1px solid var(--line);border-radius:16px;overflow-x:auto;}th {background:var(--surface-soft);color:var(--ink);}td,th {padding:14px 16px;}.section-header h2,.page-header h1,.region-header h1 {font-family:inherit;letter-spacing:-1px;}.site-footer {background:var(--surface);border-top:1px solid var(--line);padding-block:36px;color:var(--muted);}input,select,textarea {border-radius:10px;}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible {outline:3px solid var(--brand);outline-offset:3px;}[hidden] {display:none!important;}
@media(max-width:600px) {.hero {padding-block:32px;}.hero h1 {font-size:32px;letter-spacing:-1px;}.hero-grid {gap:26px;}.feature-card {padding:22px;}.header-inner {min-height:72px;}.brand {font-size:23px;}.table-wrap td,.table-wrap th {padding:12px;}}

@media(max-width:600px){.hero-grid{grid-template-columns:minmax(0,1fr);}.hero-copy{min-width:0;}.hero-title-line{white-space:normal;word-break:keep-all;overflow-wrap:break-word;}.hero-visual{display:none;}.hero-actions .button{max-width:100%;}main h2 span{white-space:normal!important;display:inline;word-break:keep-all;overflow-wrap:break-word;}}

.hero-visual {position:relative;}.visual-caption {position:absolute;bottom:14px;left:20px;z-index:5;background:#fff;color:#465d7c;border:1px solid #d9e3ef;border-radius:8px;padding:5px 10px;font-size:12px;font-weight:650;}
.sparkline {overflow:hidden;max-width:100%;}
.sparkline span {width:100%!important;max-width:100%;transform:none!important;}
@media(max-width:600px){.cta-card::after{display:none;}}
.section-heading h2{white-space:normal;word-break:keep-all;overflow-wrap:break-word;}

.content-header h1,.content-header h2,.section-heading p{word-break:keep-all;overflow-wrap:break-word;white-space:normal}

/* Requested home simplification. */
.hero-grid{grid-template-columns:minmax(0,1fr)}.hero-visual,.hero::before,.hero::after{display:none}.feature-card .sparkline,.feature-card .zone-sample,.feature-card .category-dots{display:none}

/* Mobile footer content inset; background remains full width. */
@media(max-width:640px){.site-footer .container{box-sizing:border-box;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(24px,env(safe-area-inset-bottom));overflow-wrap:break-word}}
