﻿:root{--ink:#172231;--muted:#64748b;--line:#dbe5ef;--soft:#f4f8fb;--card:#fff;--blue:#1769a8;--blue2:#1f8ec4;--orange:#eb7200;--orange2:#f59b2e;--green:#16846d;--shadow:0 18px 50px rgba(15,35,55,.12);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;background:#f7fafc;line-height:1.9;letter-spacing:0}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,229,239,.8)}.header-inner{max-width:1120px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:900;text-decoration:none}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--blue2));display:grid;place-items:center;color:#fff;font-weight:900}.brand-sub{display:block;font-size:12px;color:var(--muted);font-weight:700;line-height:1.2}.header-actions{display:flex;gap:10px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:10px 16px;font-weight:800;border:1px solid transparent;text-decoration:none;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;box-shadow:0 8px 22px rgba(235,114,0,.23)}.btn-secondary{background:#eef7ff;color:var(--blue);border-color:#cae4f7}.hero{background:linear-gradient(135deg,#eaf7ff 0%,#fff 48%,#fff4e7 100%);border-bottom:1px solid var(--line)}.hero-inner{max-width:1120px;margin:0 auto;padding:54px 20px 38px}.crumbs{display:flex;flex-wrap:wrap;gap:7px;align-items:center;color:var(--muted);font-size:13px;margin-bottom:22px}.crumbs a{color:var(--muted)}.badge{display:inline-flex;align-items:center;border-radius:999px;background:#fff;border:1px solid var(--line);padding:6px 12px;color:var(--blue);font-size:13px;font-weight:800;margin-bottom:16px}.hero h1{font-size:clamp(30px,5vw,52px);line-height:1.22;margin:0 0 18px;font-weight:900;letter-spacing:0}.lead{max-width:820px;color:#334155;font-size:18px;margin:0 0 20px}.meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:13px}.layout{max-width:1120px;margin:0 auto;padding:34px 20px 70px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:34px;align-items:start}.article{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(24px,4vw,48px);min-width:0}.article>*:first-child{margin-top:0}.article p{margin:0 0 1.18em}.article h2{font-size:clamp(24px,3vw,34px);line-height:1.38;margin:2.2em 0 .9em;padding-top:.2em;border-top:3px solid #e8f1f8}.article h3{font-size:22px;line-height:1.45;margin:1.8em 0 .7em;padding-left:14px;border-left:4px solid var(--blue)}.article h4{font-size:18px;margin:1.55em 0 .55em;color:#0f4f82}.article h5{font-size:16px;margin:1.35em 0 .45em;color:var(--green)}.article ul,.article ol{padding-left:1.35em;margin:0 0 1.4em}.article li{margin:.25em 0}.article table{width:100%;border-collapse:collapse;margin:1.2em 0;border-radius:14px;overflow:hidden;border:1px solid var(--line);font-size:14px}.article th{background:#eaf5ff;color:#0f4f82;text-align:left}.article th,.article td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.article tr:last-child td{border-bottom:0}.dialogue{border-radius:16px;padding:16px 18px;margin:1.1em 0;border:1px solid var(--line);background:#f8fbff}.dialogue-naive{border-left:5px solid var(--orange)}.dialogue-sensei{border-left:5px solid var(--blue)}.dialogue-smart{border-left:5px solid var(--green)}.dialogue-label{display:block;font-weight:900;color:var(--muted);font-size:13px;margin-bottom:4px}.toc-card,.cta-card,.related-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 10px 28px rgba(15,35,55,.08)}.side{position:sticky;top:86px;display:grid;gap:16px}.toc-title,.side-title{font-weight:900;margin:0 0 10px}.toc-list{list-style:none;margin:0;padding:0;display:grid;gap:7px;font-size:14px;line-height:1.45}.toc-list a{display:block;color:#334155;padding:7px 0;border-bottom:1px dashed #e5edf5}.cta-card{background:linear-gradient(160deg,#123e66,#1769a8);color:#fff}.cta-card p{color:#dcefff;margin:.4em 0 1em;font-size:14px}.cta-card .btn{width:100%;background:#fff;color:#1769a8}.related-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:14px}.related-list a{color:#334155}.progress{position:fixed;left:0;top:0;height:3px;background:linear-gradient(90deg,var(--orange),var(--blue2));width:0;z-index:40}.footer{background:#10263a;color:#dce7f2;padding:34px 20px}.footer-inner{max-width:1120px;margin:0 auto;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.footer a{color:#fff}.backtop{position:fixed;right:18px;bottom:18px;width:44px;height:44px;border-radius:999px;border:0;background:var(--ink);color:#fff;box-shadow:var(--shadow);cursor:pointer;opacity:0;transform:translateY(8px);transition:.2s}.backtop.is-visible{opacity:1;transform:translateY(0)}@media(max-width:900px){.layout{grid-template-columns:1fr}.side{position:static;order:-1}.header-actions .btn-secondary{display:none}.article{border-radius:14px}.hero-inner{padding-top:36px}.lead{font-size:16px}}@media(max-width:560px){.header-inner{padding:12px 14px}.brand-sub{display:none}.btn{padding:9px 12px;font-size:13px}.layout{padding:22px 14px 48px}.hero-inner{padding-left:14px;padding-right:14px}.article{padding:22px 16px}.article table{font-size:13px;display:block;overflow-x:auto;white-space:nowrap}.footer-inner{display:block}}

/* Editorial parking-column components */
body{background:linear-gradient(180deg,#f2f7fb 0,#fbfcfd 320px,#f6f8fa 100%)}.hero{position:relative;overflow:hidden;background:#eaf4fb}.hero:before{content:"";position:absolute;inset:auto -6% -44px -6%;height:118px;background:repeating-linear-gradient(90deg,rgba(23,105,168,.12) 0 72px,rgba(255,255,255,.38) 72px 132px);transform:skewY(-2deg)}.hero:after{content:"P  Naha Airport  Parking Guide";position:absolute;right:24px;bottom:18px;color:rgba(23,105,168,.11);font-size:clamp(28px,7vw,92px);font-weight:900;letter-spacing:.04em;white-space:nowrap;pointer-events:none}.badge{border-radius:8px;background:#10263a;color:#fff;border:0}.layout{grid-template-columns:minmax(0,760px) 300px}.article{border-radius:6px;box-shadow:0 16px 46px rgba(20,44,65,.10);border:1px solid #d7e2ec}.article h2{border-top:0;border-left:7px solid var(--orange);padding:.1em 0 .1em 18px;background:linear-gradient(90deg,#fff7ed 0,#fff 70%)}.article h3{border-left:0;padding-left:0;display:flex;gap:10px;align-items:center}.article h3:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 5px #e5f3fb;flex:0 0 auto}.toc-card,.related-card{border-radius:6px}.cta-card{border-radius:6px;background:#11334f}.visual-block{margin:30px 0;padding:22px;border:1px solid #d8e5ee;background:linear-gradient(180deg,#ffffff 0,#f8fbfd 100%);border-radius:6px;box-shadow:0 12px 30px rgba(16,38,58,.08)}.visual-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#0f4f82;background:#e8f4fb;border:1px solid #cfe5f4;border-radius:999px;padding:4px 10px;margin-bottom:12px}.visual-title{font-size:20px;font-weight:900;line-height:1.45;margin:0 0 16px}.route-diagram{display:grid;grid-template-columns:1fr 44px 1fr 44px 1fr;align-items:center;gap:8px}.route-node{min-height:118px;border:1px solid #d5e2ec;background:#fff;border-radius:6px;padding:14px;display:grid;align-content:center;gap:5px;position:relative}.route-node strong{font-size:16px}.route-node span{font-size:13px;color:var(--muted);line-height:1.55}.route-node.is-key{border-color:#f3bc75;background:#fff8ef}.route-arrow{height:3px;background:linear-gradient(90deg,var(--blue),var(--orange));position:relative}.route-arrow:after{content:"";position:absolute;right:-1px;top:50%;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid var(--orange);transform:translateY(-50%)}.decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.decision-card{border:1px solid #d8e5ee;background:#fff;border-radius:6px;padding:15px}.decision-card b{display:block;color:#0f4f82;margin-bottom:4px}.decision-card small{display:block;color:var(--muted);line-height:1.6}.compare-rail{display:grid;grid-template-columns:1fr 1fr;gap:14px}.compare-panel{border:1px solid #d8e5ee;background:#fff;border-radius:6px;overflow:hidden}.compare-panel h3{display:block;margin:0;padding:12px 14px;background:#eaf5ff;font-size:16px;border:0}.compare-panel h3:before{display:none}.compare-panel ul{margin:0;padding:14px 18px 14px 30px}.time-diagram{display:grid;gap:12px}.time-row{display:grid;grid-template-columns:108px 1fr;gap:12px;align-items:center}.time-label{font-weight:900;color:#0f4f82}.time-track{height:42px;border-radius:999px;background:#eaf1f6;position:relative;overflow:hidden}.time-fill{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,var(--blue),var(--blue2));border-radius:999px}.time-fill.warn{background:linear-gradient(90deg,var(--orange),var(--orange2))}.time-track span{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:13px;font-weight:800;color:#fff}.season-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.season-item{border:1px solid #d8e5ee;background:#fff;border-radius:6px;padding:14px 10px;text-align:center}.season-item b{display:block;font-size:15px}.season-item span{font-size:12px;color:var(--muted)}.mini-note{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.7}.article .visual-block ul{margin-bottom:0}.side{top:74px}.toc-list .toc-l3{padding-left:12px;font-size:13px}@media(max-width:760px){.route-diagram{grid-template-columns:1fr}.route-arrow{height:32px;width:3px;margin:0 auto}.route-arrow:after{right:auto;left:50%;top:auto;bottom:-1px;border-left:7px solid transparent;border-right:7px solid transparent;border-top:10px solid var(--orange);border-bottom:0;transform:translateX(-50%)}.decision-grid,.compare-rail,.season-strip{grid-template-columns:1fr}.time-row{grid-template-columns:1fr}.hero:after{display:none}.article h2{padding-left:14px}}

/* Mobile overlap fix: keep sidebar after article and disable sticky layering */
@media(max-width:900px){
  .layout{display:flex;flex-direction:column;gap:22px;align-items:stretch;overflow:visible}
  .article{order:1;width:100%;position:relative;z-index:1}
  .side{order:2;position:static;top:auto;width:100%;display:grid;gap:14px;z-index:auto}
  .toc-card,.cta-card,.related-card{width:100%;position:static;box-shadow:0 8px 22px rgba(15,35,55,.07)}
  .toc-list{max-height:none;overflow:visible}
}
@media(max-width:560px){
  .layout{padding:22px 14px 48px;gap:18px}
  .article{padding:22px 16px;overflow:visible}
  .side{gap:12px}
  .toc-card,.cta-card,.related-card{padding:16px 14px;border-radius:6px}
}

/* E-E-A-T supervisor block */
.supervisor-box{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:start;margin:0 0 28px;padding:16px;border:1px solid #d8e5ee;background:#f8fbfd;border-radius:6px}.supervisor-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#11334f;color:#fff;font-weight:900;font-size:14px}.supervisor-name{font-weight:900;margin:0 0 4px!important;color:#10263a}.supervisor-text{font-size:14px;color:var(--muted);line-height:1.75;margin:0!important}@media(max-width:560px){.supervisor-box{grid-template-columns:1fr}.supervisor-mark{width:auto;height:auto;border-radius:999px;padding:5px 12px;display:inline-flex;justify-self:start}}

/* Mobile TOC placement and floating footer CTA */
@media(max-width:900px){
  .layout{display:flex;flex-direction:column;gap:20px;align-items:stretch;overflow:visible}
  .side{display:contents;position:static;top:auto;width:auto;z-index:auto}
  .toc-card{order:1;width:100%;position:static;margin:0;box-shadow:0 8px 22px rgba(15,35,55,.07)}
  .article{order:2;width:100%;position:relative;z-index:1}
  .cta-card{order:3;width:100%;position:static;box-shadow:0 8px 22px rgba(15,35,55,.07)}
  .related-card{order:4;width:100%;position:static;box-shadow:0 8px 22px rgba(15,35,55,.07)}
  .toc-list{max-height:none;overflow:visible}
}
.floating-cta{position:fixed;left:50%;bottom:18px;z-index:60;width:min(720px,calc(100% - 28px));transform:translate(-50%,24px);opacity:0;pointer-events:none;transition:opacity .32s ease,transform .32s ease}.floating-cta.is-visible{opacity:1;transform:translate(-50%,0);pointer-events:auto}.floating-cta-inner{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:13px 14px 13px 18px;border:1px solid rgba(255,255,255,.38);border-radius:18px;background:rgba(17,51,79,.94);box-shadow:0 18px 48px rgba(9,27,43,.28);backdrop-filter:blur(14px);color:#fff}.floating-cta-copy{display:grid;gap:2px;min-width:0}.floating-cta-kicker{font-size:12px;font-weight:900;color:#9ed8ff;letter-spacing:.08em}.floating-cta-text{font-size:15px;font-weight:900;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floating-cta-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:12px;background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;font-weight:900;text-decoration:none;box-shadow:0 10px 24px rgba(235,114,0,.28);white-space:nowrap}.floating-cta-btn:hover{text-decoration:none}.floating-cta-close{appearance:none;border:0;background:rgba(255,255,255,.14);color:#fff;width:32px;height:32px;border-radius:999px;cursor:pointer;font-size:18px;line-height:1;display:grid;place-items:center}.floating-cta-actions{display:flex;align-items:center;gap:9px}body.has-floating-cta{padding-bottom:86px}@media(max-width:560px){.layout{padding-top:18px}.toc-card{padding:16px 14px}.floating-cta{bottom:12px;width:calc(100% - 20px)}.floating-cta-inner{grid-template-columns:1fr;gap:10px;padding:13px;border-radius:16px}.floating-cta-actions{display:grid;grid-template-columns:1fr 34px;gap:8px}.floating-cta-btn{width:100%;min-height:46px}.floating-cta-text{font-size:14px;white-space:normal}.backtop{bottom:94px}}

/* Floating CTA phone action */
.floating-cta-phone{background:linear-gradient(135deg,#16a085,#1abc9c);box-shadow:0 10px 24px rgba(22,160,133,.28)}.floating-cta-actions{flex-wrap:wrap;justify-content:flex-end}@media(max-width:560px){.floating-cta-actions{grid-template-columns:1fr 1fr 34px}.floating-cta-phone{grid-column:auto}.floating-cta-btn{font-size:13px;padding:0 10px;text-align:center}}

/* Modern header and hamburger */
.site-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(215,226,236,.82)}.header-inner{max-width:1120px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand-logo{display:inline-grid;gap:1px;color:#10263a;text-decoration:none;line-height:1}.brand-main{font-weight:950;font-size:20px;letter-spacing:.02em;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;position:relative}.brand-main:after{content:"";display:block;width:100%;height:2px;margin-top:5px;background:linear-gradient(90deg,var(--blue),var(--orange));border-radius:999px}.brand-logo .brand-sub{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#64748b;font-weight:800;margin-top:7px}.desktop-nav{display:flex;align-items:center;gap:6px}.desktop-nav a{color:#213548;text-decoration:none;font-size:14px;font-weight:850;padding:9px 11px;border-radius:999px}.desktop-nav a:hover{background:#eef7ff;text-decoration:none}.desktop-nav .nav-cta{background:#11334f;color:#fff;padding:10px 15px}.desktop-nav .nav-cta:hover{background:#0f2d46}.menu-toggle{display:none;appearance:none;border:1px solid #d5e2ec;background:#fff;width:44px;height:44px;border-radius:14px;align-items:center;justify-content:center;gap:4px;flex-direction:column;box-shadow:0 8px 22px rgba(15,35,55,.08);cursor:pointer}.menu-toggle span{display:block;width:18px;height:2px;border-radius:999px;background:#10263a;transition:transform .22s ease,opacity .22s ease}.site-header.is-open .menu-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}.site-header.is-open .menu-toggle span:nth-child(2){opacity:0}.site-header.is-open .menu-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-menu{display:none}.header-actions{display:none}@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex}.header-inner{padding:10px 14px}.brand-main{font-size:18px}.brand-logo .brand-sub{font-size:9px}.mobile-menu{display:grid;grid-template-columns:1fr;gap:4px;max-height:0;overflow:hidden;padding:0 14px;border-top:1px solid transparent;background:rgba(255,255,255,.96);transition:max-height .28s ease,padding .28s ease,border-color .28s ease}.site-header.is-open .mobile-menu{max-height:420px;padding:10px 14px 14px;border-top-color:#e5edf5}.mobile-menu a{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 12px;border-radius:10px;background:#f7fafc;color:#10263a;text-decoration:none;font-weight:850}.mobile-menu a:last-child{background:linear-gradient(135deg,#16a085,#1abc9c);color:#fff}.mobile-menu a:after{content:"›";font-size:20px;color:currentColor;opacity:.65}}@media(max-width:380px){.brand-main{font-size:16px}.brand-logo .brand-sub{letter-spacing:.1em}.menu-toggle{width:42px;height:42px}}

/* Editorial text emphasis */
.article strong,.article .text-strong{font-weight:900;color:#10263a}.article .text-red{color:#c7362f;font-weight:900}.article .marker{font-weight:900;background:linear-gradient(transparent 62%,rgba(245,155,46,.34) 62%);padding:0 .08em}.article .underline{font-weight:900;text-decoration:underline;text-decoration-thickness:.16em;text-decoration-color:rgba(23,105,168,.34);text-underline-offset:.18em}.article .key-point{display:inline;font-weight:900;color:#0f4f82;background:#eaf5ff;border:1px solid #cfe5f4;border-radius:5px;padding:.08em .34em;box-decoration-break:clone;-webkit-box-decoration-break:clone}.article .danger-point{display:inline;font-weight:900;color:#b42318;background:#fff1f0;border:1px solid #ffd3cf;border-radius:5px;padding:.08em .34em;box-decoration-break:clone;-webkit-box-decoration-break:clone}

/* LINE-style dialogue blocks */
.dialogue{border:0;background:transparent;border-radius:0;padding:0;margin:1.35em 0;display:grid;gap:6px;max-width:86%;box-shadow:none}.dialogue-label{display:block;font-weight:900;font-size:12px;color:#64748b;margin:0 0 3px}.dialogue p{position:relative;margin:0!important;padding:12px 15px;border-radius:18px;line-height:1.75;box-shadow:0 8px 20px rgba(15,35,55,.08)}.dialogue-naive{justify-self:start;border-left:0}.dialogue-naive p{background:#eef2f6;color:#172231;border-top-left-radius:6px}.dialogue-naive p:before{content:"";position:absolute;left:-6px;top:12px;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:8px solid #eef2f6}.dialogue-sensei{justify-self:end;border-left:0}.dialogue-sensei .dialogue-label{text-align:right;color:#16846d}.dialogue-sensei p{background:#dff7df;color:#10263a;border-top-right-radius:6px}.dialogue-sensei p:before{content:"";position:absolute;right:-6px;top:12px;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:8px solid #dff7df}.dialogue-smart{justify-self:end;border-left:0}.dialogue-smart .dialogue-label{text-align:right;color:#0f4f82}.dialogue-smart p{background:#e8f4fb;color:#10263a;border-top-right-radius:6px}.dialogue-smart p:before{content:"";position:absolute;right:-6px;top:12px;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:8px solid #e8f4fb}@media(max-width:560px){.dialogue{max-width:94%}.dialogue p{font-size:14px;padding:11px 13px}}

/* Dialogue avatar icons */
.dialogue{position:relative}.dialogue-naive{padding-left:48px}.dialogue-sensei,.dialogue-smart{padding-right:48px}.dialogue:after{position:absolute;top:22px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:17px;font-weight:900;box-shadow:0 8px 18px rgba(15,35,55,.13);line-height:1}.dialogue-naive:after{content:"人";left:0;background:#eef2f6;color:#526173;border:1px solid #d7e0ea}.dialogue-sensei:after{content:"P";right:0;background:linear-gradient(135deg,#16a085,#1abc9c);color:#fff;border:1px solid rgba(255,255,255,.55)}.dialogue-smart:after{content:"P";right:0;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;border:1px solid rgba(255,255,255,.55)}@media(max-width:560px){.dialogue-naive{padding-left:42px}.dialogue-sensei,.dialogue-smart{padding-right:42px}.dialogue:after{width:32px;height:32px;font-size:15px;top:22px}}

/* Dialogue avatar image override */
.dialogue:after{content:""!important;background-size:cover!important;background-position:center!important;border:2px solid #fff!important}.dialogue-naive:after{background-image:url("img/parking-undecided.png")!important;background-color:#eef2f6!important}.dialogue-sensei:after,.dialogue-smart:after{background-image:url("img/parking-staff.png")!important;background-color:#dff7df!important}

/* Staff profile modal from dialogue avatar */
.dialogue-sensei:after,.dialogue-smart:after{cursor:pointer}.dialogue-sensei:before,.dialogue-smart:before{content:"";position:absolute;right:0;top:22px;width:36px;height:36px;border-radius:50%;z-index:3;cursor:pointer}.profile-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:22px;opacity:0;pointer-events:none;transition:opacity .24s ease}.profile-modal.is-open{opacity:1;pointer-events:auto}.profile-modal-backdrop{position:absolute;inset:0;background:rgba(8,22,34,.56);backdrop-filter:blur(8px)}.profile-card{position:relative;width:min(380px,100%);background:#fff;border-radius:24px;padding:30px 22px 22px;text-align:center;box-shadow:0 28px 80px rgba(0,0,0,.28);transform:translateY(12px) scale(.98);transition:transform .24s ease;overflow:hidden}.profile-modal.is-open .profile-card{transform:translateY(0) scale(1)}.profile-card:before{content:"";position:absolute;left:0;right:0;top:0;height:96px;background:linear-gradient(135deg,#e8f7ff,#fff4e6)}.profile-close{position:absolute;right:14px;top:14px;z-index:2;width:34px;height:34px;border:0;border-radius:999px;background:rgba(255,255,255,.82);color:#10263a;font-size:20px;cursor:pointer}.profile-avatar{position:relative;z-index:1;width:112px;height:112px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 12px 32px rgba(15,35,55,.18);margin:16px auto 10px}.profile-kicker{margin:0 0 2px!important;color:#16846d;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.profile-card h2{margin:0 0 10px!important;padding:0!important;border:0!important;background:none!important;font-size:24px!important;line-height:1.35}.profile-text{font-size:14px;color:#526173;line-height:1.75;margin:0 0 18px!important}.profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-btn{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;font-weight:900;text-decoration:none}.profile-phone{background:linear-gradient(135deg,#16a085,#1abc9c);color:#fff}.profile-reserve{background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff}.profile-btn:hover{text-decoration:none}@media(max-width:560px){.dialogue-sensei:before,.dialogue-smart:before{width:32px;height:32px}.profile-actions{grid-template-columns:1fr}.profile-card{border-radius:20px;padding:28px 18px 18px}.profile-avatar{width:104px;height:104px}}

/* Supervisor avatar profile trigger */
.supervisor-avatar-btn{appearance:none;border:0;background:transparent;padding:0;width:58px;height:58px;border-radius:50%;cursor:pointer;box-shadow:0 10px 22px rgba(15,35,55,.14);overflow:hidden;align-self:start}.supervisor-avatar-btn img{display:block;width:100%;height:100%;object-fit:cover}.supervisor-avatar-btn:focus-visible{outline:3px solid rgba(23,105,168,.35);outline-offset:3px}@media(max-width:560px){.supervisor-avatar-btn{width:64px;height:64px}}

/* Company footer details */
.footer-company{display:grid;gap:22px}.footer-brand-block{display:grid;gap:6px}.footer-brand-block strong{font-size:24px;line-height:1.3;color:#fff}.footer-brand-block span{color:#b9cada;font-weight:800}.footer-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.footer-info-grid>div{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);border-radius:8px;padding:14px}.footer-info-title{font-weight:900;color:#fff;margin:0 0 7px!important}.footer-info-grid p{margin:0;color:#dce7f2;font-size:13px;line-height:1.75}.footer-bottom{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.16);padding-top:16px;color:#b9cada;font-size:13px}@media(max-width:900px){.footer-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{display:grid;justify-content:start}}@media(max-width:560px){.footer-info-grid{grid-template-columns:1fr}.footer-brand-block strong{font-size:21px}}

/* Header meta supervisor icon */
.meta .meta-supervisor{display:inline-flex;align-items:center;gap:6px;color:#10263a;font-weight:900;background:#f0fbf7;border:1px solid #cbeee2;border-radius:999px;padding:3px 9px 3px 4px}.meta .meta-supervisor img{width:24px;height:24px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 3px 8px rgba(15,35,55,.14)}

/* Larger supervisor badge with tappable avatar */
.meta .meta-supervisor{font-size:14px;padding:6px 12px 6px 6px;gap:8px}.meta-supervisor-btn{appearance:none;border:0;background:transparent;padding:0;margin:0;width:34px;height:34px;border-radius:50%;cursor:pointer;box-shadow:0 6px 14px rgba(15,35,55,.16);flex:0 0 auto}.meta .meta-supervisor .meta-supervisor-btn img{display:block;width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid #fff}.meta-supervisor-btn:focus-visible{outline:3px solid rgba(22,160,133,.35);outline-offset:3px}@media(max-width:560px){.meta .meta-supervisor{font-size:13px;padding:6px 10px 6px 6px}.meta-supervisor-btn,.meta .meta-supervisor .meta-supervisor-btn img{width:38px;height:38px}}

/* Parking blog index modern layout */
.parking-blog-hero .hero-inner{padding-bottom:46px}.blog-hero-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.blog-hero-stats span{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border:1px solid rgba(12,74,110,.18);border-radius:999px;background:rgba(255,255,255,.78);color:#334155;font-size:13px;font-weight:850;box-shadow:0 8px 22px rgba(15,55,80,.08)}.blog-hero-stats b{color:#0c4a6e;font-size:15px}.blog-home{max-width:1120px;margin:0 auto;padding:34px 20px 76px;display:grid;gap:32px}.blog-featured{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:18px;align-items:stretch}.featured-card,.blog-guide-panel,.blog-bottom-cta{border:1px solid #d7e6ee;background:#fff;border-radius:12px;box-shadow:0 16px 42px rgba(15,55,80,.10)}.featured-card{position:relative;overflow:hidden;display:grid;align-content:end;min-height:310px;padding:28px;color:#fff;text-decoration:none;background:linear-gradient(135deg,rgba(12,74,110,.96),rgba(3,105,161,.9))}.parking-featured-card:after{content:"P";position:absolute;right:24px;bottom:10px;color:rgba(255,255,255,.12);font-size:150px;font-weight:950;line-height:1;pointer-events:none}.featured-card:hover{text-decoration:none;transform:translateY(-2px);transition:transform .18s ease}.card-kicker{display:inline-flex;width:max-content;align-items:center;border-radius:999px;padding:5px 10px;background:#fff7ed;color:#b85d00;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.featured-card .card-kicker{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.28)}.featured-card h2{max-width:680px;margin:16px 0 10px;font-size:clamp(26px,4vw,42px);line-height:1.28;color:#fff}.featured-card p{max-width:640px;margin:0 0 18px;color:#e8f7ff;line-height:1.8}.card-meta{font-size:13px;font-weight:900;color:#fff}.blog-guide-panel{padding:22px;display:grid;align-content:center;gap:16px;background:linear-gradient(180deg,#fff 0,#f7fbfd 100%)}.panel-title{margin:0!important;font-weight:950;font-size:20px;color:#10263a}.guide-links{display:grid;gap:10px}.guide-links a{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:0 14px;border:1px solid #dbe8ef;border-radius:10px;background:#fff;color:#10263a;font-weight:900;text-decoration:none}.guide-links a:after{content:"›";font-size:22px;color:#0369a1}.guide-links a:hover{border-color:#b7d9e5;background:#f2f9fc;text-decoration:none}.blog-section{display:grid;gap:20px}.section-heading{display:grid;gap:8px}.section-heading h2{font-size:clamp(26px,3vw,36px);line-height:1.3;margin:0;color:#10263a}.section-heading p{max-width:780px;margin:0;color:#526173;line-height:1.8}.blog-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.blog-card{position:relative;min-height:270px;display:flex;flex-direction:column;padding:20px;border:1px solid #d7e6ee;border-radius:12px;background:#fff;color:#10263a;text-decoration:none;box-shadow:0 12px 30px rgba(15,55,80,.08);overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.blog-card:before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:linear-gradient(90deg,#0c4a6e,#0284c7)}.blog-card.is-price:before{background:linear-gradient(90deg,#f08a24,#ffb347)}.blog-card.is-alert:before{background:linear-gradient(90deg,#b42318,#f04438)}.blog-card.is-reserve:before{background:linear-gradient(90deg,#16846d,#1abc9c)}.blog-card.is-time:before{background:linear-gradient(90deg,#4f46e5,#38bdf8)}.blog-card:hover{transform:translateY(-3px);border-color:#b7d9e5;box-shadow:0 18px 42px rgba(15,55,80,.12);text-decoration:none}.blog-card span{display:inline-flex;width:max-content;max-width:100%;margin-bottom:14px;padding:4px 9px;border-radius:999px;background:#eef7fb;color:#0c4a6e;font-size:12px;font-weight:950}.blog-card.is-price span{background:#fff4e6;color:#b85d00}.blog-card.is-alert span{background:#fff1f0;color:#b42318}.blog-card.is-reserve span{background:#ecfaf5;color:#16846d}.blog-card.is-time span{background:#eef2ff;color:#4f46e5}.blog-card h3{margin:0 0 10px;font-size:18px;line-height:1.5;color:#10263a}.blog-card p{margin:0;color:#526173;font-size:14px;line-height:1.75}.blog-card small{margin-top:auto;padding-top:18px;color:#0369a1;font-weight:950}.blog-bottom-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:26px;background:linear-gradient(135deg,#f7fbfd,#fff)}.blog-bottom-cta h2{margin:10px 0 8px;font-size:26px;line-height:1.35}.blog-bottom-cta p{margin:0;color:#526173}.blog-bottom-cta .btn{min-height:48px}@media(max-width:900px){.blog-featured{grid-template-columns:1fr}.blog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-card{min-height:280px}.blog-bottom-cta{grid-template-columns:1fr}.blog-bottom-cta .btn{width:100%}}@media(max-width:560px){.blog-home{padding:24px 14px 58px;gap:26px}.parking-blog-hero .hero-inner{padding-bottom:34px}.blog-hero-stats span{flex:1 1 auto;justify-content:center}.featured-card{min-height:300px;padding:22px}.featured-card h2{font-size:25px}.blog-guide-panel{padding:18px}.blog-card-grid{grid-template-columns:1fr;gap:12px}.blog-card{min-height:auto;padding:18px}.blog-card h3{font-size:17px}.blog-bottom-cta{padding:20px}.blog-bottom-cta h2{font-size:22px}}
