
:root{--navy:#12425f;--teal:#1b7f8c;--mist:#eef4f7;--paper:#ffffff;--ink:#1f2933;--line:#d6e2e9;--amber:#c47a0a}
*{box-sizing:border-box}
body{font-family:-apple-system,"Segoe UI",Arial,sans-serif;margin:0;line-height:1.6;color:var(--ink);background:var(--mist)}
h1,h2,h3,.brand{font-family:Georgia,"Times New Roman",serif;color:var(--navy);line-height:1.25}
h1{font-size:2.05em;margin:.4em 0 .3em}h2{font-size:1.4em;margin:1.6em 0 .5em}
a{color:#0f6a78;text-underline-offset:2px}a:hover{color:var(--navy)}
header.site{background:var(--navy);color:#fff;border-bottom:4px solid var(--teal)}
header.site .wrap{max-width:1100px;margin:0 auto;padding:14px 18px 10px}
.brand{display:flex;align-items:center;gap:12px;font-size:1.3em;font-weight:bold;margin:0 0 8px}
.brand a{color:#fff;text-decoration:none;display:flex;align-items:center;gap:12px}
nav{display:flex;flex-wrap:wrap;gap:4px 18px;padding-bottom:4px}
nav a{color:#dbeaf1;text-decoration:none;font-size:.95em;padding:3px 0;border-bottom:2px solid transparent}
nav a:hover{color:#fff;border-bottom-color:#9fd2da}
main{max-width:1100px;margin:0 auto;padding:8px 18px 24px}
.hero{background:linear-gradient(180deg,var(--navy),#1a587a);color:#fff;margin:0 -18px 8px;padding:34px 18px 30px;border-radius:0 0 18px 18px}
.hero h1{color:#fff;margin-top:0;max-width:760px}
.hero p{max-width:720px;font-size:1.1em;color:#dbeaf1;margin:.4em 0}
.hero .cta{display:inline-block;margin-top:12px;background:#f4c15d;color:#1f2933;font-weight:bold;text-decoration:none;padding:11px 20px;border-radius:999px}
.banner{background:#fff3cd;border:1px solid #e0c36a;padding:8px 12px;margin:12px 0;border-radius:8px}
.card{background:var(--paper);border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:10px;padding:12px 16px;margin:12px 0}
.card strong{font-family:Georgia,serif;font-size:1.1em;color:var(--navy)}
.card a[href^="tel:"]{display:inline-block;background:var(--navy);color:#fff;text-decoration:none;font-weight:bold;padding:4px 14px;border-radius:999px;margin:4px 0}
.muted{color:#5b6b76;font-size:.9em}
table{border-collapse:collapse;width:100%;background:var(--paper);border:1px solid var(--line)}
td,th{border-bottom:1px solid var(--line);padding:8px;text-align:left;vertical-align:top}th{background:#e3edf2;color:var(--navy)}
.cols{columns:3 200px;column-gap:18px}
.cols a{display:block;padding:7px 12px;margin:0 0 6px;background:var(--paper);border:1px solid var(--line);border-radius:8px;text-decoration:none;break-inside:avoid;color:var(--navy)}
.cols a:hover{border-color:var(--teal);background:#e6f3f5}
.problem{background:var(--paper);border:1px solid var(--line);border-left:5px solid var(--amber);padding:10px 20px;margin:20px 0;border-radius:10px}
.problem h2{margin-top:0}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin:12px 0}
.tile{display:block;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px;text-decoration:none;color:var(--ink)}
.tile:hover{border-color:var(--teal)}
.tile b{font-family:Georgia,serif;color:var(--navy);display:block}
.tile span{font-size:.9em;color:#5b6b76;line-height:1.4;display:block}
details.dd{position:relative}
details.dd summary{cursor:pointer;list-style:none;color:#dbeaf1;font-size:.95em;padding:3px 0;border-bottom:2px solid transparent}
details.dd summary::-webkit-details-marker{display:none}
details.dd summary::after{content:" \25BE"}
details.dd summary:hover,details.dd[open] summary{color:#fff;border-bottom-color:#9fd2da}
.dd-menu{position:absolute;z-index:10;top:100%;left:0;min-width:240px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 18px rgba(18,66,95,.18);padding:6px;margin-top:6px}
.dd-menu a{display:block;color:var(--navy);padding:8px 12px;border:0;border-radius:6px;white-space:nowrap}
.dd-menu a:hover{background:#e6f3f5;color:var(--navy)}
@media(max-width:600px){.dd-menu{position:static;box-shadow:none;margin-top:4px}}
footer.site{background:#dfeaf0;border-top:1px solid var(--line);margin-top:20px}
footer.site .wrap{max-width:1100px;margin:0 auto;padding:16px 18px 28px}
figure.art{margin:0 0 18px}.art svg{display:block;width:100%;height:auto;max-height:240px;border-radius:14px;border:1px solid var(--line)}
.ic{flex:none;width:44px;height:44px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center}
.ic svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ic.teal{background:var(--teal)}.ic.amber{background:var(--amber)}
.vcard h3,.step h3,.rung h3,.callout h3,.city h3{margin:0 0 4px;font-family:Georgia,serif;color:var(--navy);font-size:1.05em}
.tldr{display:flex;gap:14px;align-items:flex-start;background:linear-gradient(135deg,#e6f3f5,#fff);border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:12px;padding:14px 18px;margin:14px 0}
.tldr p{margin:0}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:12px 0}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:12px 0}
.vcard,.callout{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.callout{margin:14px 0;border-left:5px solid var(--amber)}
.vcard p,.callout p,.step p,.rung p,.city p{margin:0;font-size:.97em}
.ladder{margin:14px 0}
.rung{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:0 0 28px;position:relative}
.rung:not(:last-child)::after{content:"";position:absolute;left:35px;top:100%;height:28px;border-left:3px dashed var(--teal)}
.rung:not(:last-child)::before{content:"";position:absolute;left:29px;top:calc(100% + 18px);border:7px solid transparent;border-top:10px solid var(--teal);border-bottom:0}
.steps{display:grid;gap:12px;margin:12px 0}
.step{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.step .n{flex:none;width:34px;height:34px;border-radius:50%;background:var(--teal);color:#fff;font-weight:bold;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif}
.cta2{display:inline-block;margin-top:8px;background:var(--navy);color:#fff!important;padding:8px 16px;border-radius:999px;text-decoration:none;font-weight:bold}
.city{background:#fff;border:1px solid var(--line);border-top:5px solid var(--teal);border-radius:12px;padding:14px 16px}
.city-h{display:flex;align-items:center;gap:10px;margin-bottom:8px}.city-h .ic{width:36px;height:36px}.city-h h3{margin:0}
.tag{display:inline-block;font-size:.78em;font-weight:bold;padding:2px 9px;border-radius:999px;background:#e6f3f5;color:var(--navy);margin:2px 6px 8px 0}
.tag.warn{background:#fdf0d8;color:#7a4a05}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.chip{background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.92em}
.lic{background:#fff;border:2px dashed var(--teal);border-radius:14px;padding:16px 18px;max-width:560px;position:relative;margin:14px 0}
.lic .stamp{position:absolute;top:10px;right:12px;font-size:.72em;font-weight:bold;letter-spacing:.06em;color:#a33;border:2px solid #a33;padding:1px 8px;border-radius:6px;transform:rotate(6deg)}
.lic dl{display:grid;grid-template-columns:130px 1fr;gap:6px 12px;margin:10px 0}
.lic dt{color:#5b6b76;font-size:.9em}.lic dd{margin:0;font-weight:bold;color:var(--navy)}.lic .ok{color:#0b7a3b}
.tile.row{display:flex;gap:14px;align-items:flex-start}
.glance{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.glance div{flex:1;min-width:130px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;text-align:center}.glance b{display:block;font-size:1.6em;color:var(--navy);font-family:Georgia,serif}.glance span{font-size:.85em;color:#5b6b76}
@media(max-width:600px){h1{font-size:1.6em}.hero{padding:24px 18px}.lic dl{grid-template-columns:1fr}.lic .stamp{position:static;display:inline-block;margin-bottom:6px}}
