/* Premium nationwide province directory + contextual article routes · v2.3.0 */
.pv-page{background:#f5f8fb;color:#102c45;font-family:'Sarabun','Prompt',Tahoma,system-ui,sans-serif;margin:0}
.pv-page *{box-sizing:border-box}.pv-page .wrap{width:min(1240px,calc(100% - 38px));margin-inline:auto}
.pv-page a{transition:color .2s ease,background .2s ease,transform .2s ease}.pv-page a:focus-visible,.pv-directory a:focus-visible,.pv-search input:focus-visible{outline:3px solid #61d59d;outline-offset:3px}
.pv-topbar{background:#071a2c;border-bottom:1px solid rgba(255,255,255,.11);position:relative;z-index:5}.pv-topbar .wrap{min-height:68px;display:flex;gap:24px;align-items:center;justify-content:space-between}.pv-topbar .pv-logo{font-weight:900;font-size:1.27rem;color:#e9fff6;text-decoration:none}.pv-topbar nav{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.pv-topbar nav a{color:#cae1ee;text-decoration:none;font-weight:700;font-size:.94rem}
.pv-hero{background:radial-gradient(ellipse at 80% 15%,#214c6e 0%,transparent 45%),linear-gradient(140deg,#071b2e,#0c2c46 58%,#123a59);color:#fff;padding:48px 0 54px;overflow:hidden}.pv-hero-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(285px,.85fr);gap:30px;align-items:center}.pv-breadcrumb{display:flex;gap:9px;flex-wrap:wrap;align-items:center;font-size:.86rem;color:#aec7da;margin-bottom:34px}.pv-breadcrumb a{color:inherit;text-decoration:none}.pv-breadcrumb a:hover{color:#fff}
.pv-overline{display:block;font-size:.75rem;letter-spacing:.17em;font-weight:850;color:#83efac;text-transform:uppercase}.pv-hero h1{font-weight:900;font-size:clamp(2.1rem,5.1vw,4.25rem);line-height:1.12;letter-spacing:-.035em;margin:12px 0 17px;max-width:950px;color:#fff}.pv-hero h1 span{display:block;background:linear-gradient(90deg,#b7ff9d,#f4fff4);background-clip:text;-webkit-background-clip:text;color:transparent}.pv-lead{font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.95;color:#c7d8e6;max-width:810px;margin:0 0 20px}
.pv-hero-badges{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.pv-hero-badges span{border:1px solid #ffffff30;background:#ffffff0c;padding:8px 11px;border-radius:999px;font-size:.84rem;color:#dceef8}.pv-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.pv-primary-btn,.pv-secondary-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:800;border-radius:14px;padding:14px 21px}.pv-primary-btn{background:#8fee93;color:#0c2c32}.pv-secondary-btn{border:1px solid #ffffff50;color:#fff}
.pv-hero-panel{padding:28px;border:1px solid rgba(255,255,255,.17);border-radius:26px;background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.045));box-shadow:0 24px 70px #00182b54;backdrop-filter:blur(12px)}.pv-hero-panel>span{font-weight:850;font-size:.73rem;letter-spacing:.16em;color:#a1f3b3}.pv-hero-panel h2{font-size:clamp(1.45rem,2.2vw,1.9rem);color:#fff;line-height:1.32;margin:13px 0}.pv-hero-panel p{line-height:1.9;color:#d2e1ee;margin:0}.pv-panel-note{margin-top:17px;padding:14px 15px;border:1px solid #ffffff18;border-radius:12px;color:#dce9f2;font-size:.88rem;line-height:1.7}
.pv-content{padding:38px 0 22px}.pv-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:36px}.pv-info-card{background:#fff;border:1px solid #dce6ef;border-radius:22px;padding:21px;box-shadow:0 13px 34px rgba(9,41,75,.04)}.pv-info-card span{font-weight:850;color:#0c886f;letter-spacing:.1em;font-size:.74rem}.pv-info-card h2{font-size:1.18rem;margin:9px 0 6px;color:#103554}.pv-info-card p{color:#5a7287;line-height:1.8;margin:0;font-size:.95rem}
.pv-editorial-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(285px,.7fr);gap:24px;align-items:start}.pv-local-article,.pv-sidebar-card{background:#fff;border-radius:24px;border:1px solid #e2eaf1;box-shadow:0 16px 42px rgba(11,42,75,.05)}.pv-local-article{padding:clamp(20px,3vw,36px);min-width:0}.pv-local-intro h2{font-size:clamp(1.45rem,2.8vw,2.2rem);margin:10px 0 12px;color:#112c46;line-height:1.35}.pv-local-intro p{line-height:1.92;color:#526e85}.pv-original-figure{margin:22px 0 36px;background:#eff4f8;border-radius:19px;overflow:hidden;border:1px solid #dfe9f1}.pv-original-figure img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;background:#e9f2f6}.pv-original-figure figcaption{padding:12px 15px;font-size:.85rem;line-height:1.65;color:#587187}
.pv-article-body{font-size:1.055rem;line-height:1.92;color:#334e63;overflow-wrap:anywhere}.pv-article-body h2,.pv-article-body h3,.pv-article-body h4{color:#112d48;line-height:1.4;margin:28px 0 12px}.pv-article-body h2{font-size:clamp(1.32rem,2.35vw,1.83rem)}.pv-article-body h3{font-size:1.25rem}.pv-article-body p{margin:0 0 17px}.pv-article-body li{margin:7px 0}.pv-article-body a{color:#097a67}.pv-article-body table{width:100%;border-collapse:collapse}.pv-article-body td,.pv-article-body th{border:1px solid #dae5ec;padding:11px}.pv-article-body blockquote{border-left:4px solid #20b58b;margin:20px 0;padding:6px 18px;background:#effaf6}
.pv-sidebar{display:grid;gap:17px;position:sticky;top:20px}.pv-sidebar-card{padding:23px}.pv-sidebar-card h2{font-size:1.35rem;line-height:1.35;color:#0d2d48;margin:12px 0}.pv-sidebar-card p{color:#58748a;line-height:1.8}.pv-sidebar-card ul{padding-left:22px;line-height:1.8;color:#536d82}.pv-textlink{display:inline-flex;text-decoration:none;font-weight:800;color:#087960;line-height:1.7}
.pv-faq{padding:28px 0 25px}.pv-faq h2{font-size:clamp(1.4rem,2.7vw,2.1rem);line-height:1.35;margin:8px 0 20px}.pv-faq>div{display:grid;gap:11px}.pv-faq details{background:#fff;border-radius:16px;border:1px solid #e1eaf0;padding:17px 19px}.pv-faq summary{cursor:pointer;font-weight:800;color:#132f48}.pv-faq details p{line-height:1.85;color:#58758b;margin:12px 0 2px}
.pv-directory{padding:38px 0 48px;background:linear-gradient(180deg,#f0f5fa,#eaf2f8);border-top:1px solid #dce6f1;border-bottom:1px solid #d7e2ee;color:#12344f}.pv-container{background:#fff;padding:clamp(20px,3.4vw,38px);border:1px solid #d9e6ee;border-radius:30px;box-shadow:0 28px 64px #102e5013}.pv-directory-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.pv-directory-head h2{font-size:clamp(1.75rem,3.25vw,2.8rem);letter-spacing:-.026em;color:#092b45;line-height:1.18;margin:11px 0 13px}.pv-directory-head h2 em{font-style:normal;color:#0a9370}.pv-directory-head p{color:#59758c;line-height:1.8;max-width:750px;margin:0 0 17px}.pv-count{flex:0 0 auto;display:flex;align-items:center;gap:13px;background:#0d304b;color:#e8f9ff;padding:16px 21px;border-radius:20px}.pv-count strong{font-size:2.4rem;color:#a6f79a;line-height:1}.pv-count span{font-size:.81rem;line-height:1.7}
.pv-search{display:block;font-size:.88rem;font-weight:800;color:#1d405d;margin:6px 0 20px}.pv-search input{margin-top:8px;display:block;width:100%;border-radius:14px;padding:14px 16px;border:1px solid #cbdce8;background:#f7fafc;color:#102e46;font:inherit;font-weight:500}
.pv-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pv-group{border:1px solid #dbe5ef;border-radius:20px;background:#fbfdff;overflow:hidden;min-width:0}.pv-group summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:13px;padding:17px 20px;border-bottom:1px solid #e1eaf2;cursor:pointer}.pv-group summary::-webkit-details-marker{display:none}.pv-group summary strong{font-size:1.09rem;color:#0c3855}.pv-group summary span{font-size:.84rem;color:#68839b}.pv-links{padding:15px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pv-links a,.pv-links .pv-disabled{min-width:0;display:flex;gap:7px;align-items:center;justify-content:space-between;border:1px solid #dbe7ef;border-radius:12px;padding:10px 11px;background:#fff;text-decoration:none;color:#15415e;font-weight:750;font-size:.87rem}.pv-links a:hover{color:#066f59;background:#eefbf4;transform:translateY(-1px);border-color:#b6e5cf}.pv-links a span{color:#0b9274}.pv-links .pv-disabled{color:#8999a7;background:#f5f7f9;cursor:not-allowed}.pv-disabled small{font-size:.68rem;white-space:nowrap}.pv-empty{margin:16px 0;color:#8c3952}.pv-directory-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding-top:18px;border-top:1px solid #e2eaf0;color:#647b90;font-size:.89rem;line-height:1.7}.pv-directory-foot a{color:#05785e;font-weight:800;text-decoration:none;white-space:nowrap}
.pv-index-topics{margin:25px 0 36px;padding:25px;border-radius:22px;border:1px solid #dce6ef;background:#fff}.pv-index-topics h2{font-size:1.6rem;margin:11px 0 14px}.pv-index-topic-links{display:flex;gap:10px;flex-wrap:wrap}.pv-index-topic-links a{background:#eef6fb;border-radius:999px;padding:10px 14px;text-decoration:none;color:#1a4b6b;font-weight:700}.pv-index-topic-links span{color:#60798e}
.pv-bottom-cta{background:linear-gradient(110deg,#0b2c47,#124766);padding:27px 32px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;border-radius:24px;margin:36px 0 40px}.pv-bottom-cta span{font-size:.75rem;letter-spacing:.17em;font-weight:850;color:#adf39c}.pv-bottom-cta h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:10px 0}.pv-bottom-cta p{color:#c9deea;line-height:1.7}.pv-bottom-cta a{border-radius:12px;background:#a3ed90;color:#092c42;font-weight:800;padding:14px 19px;text-decoration:none;white-space:nowrap}
@media(max-width:1050px){.pv-hero-layout,.pv-editorial-grid{grid-template-columns:1fr}.pv-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.pv-group-grid{grid-template-columns:1fr}.pv-info-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.pv-page .wrap{width:min(100% - 24px,1240px)}.pv-topbar .wrap{min-height:63px;gap:15px}.pv-topbar nav{gap:14px}.pv-topbar nav a{font-size:.82rem}.pv-topbar .pv-logo{font-size:1.04rem}.pv-hero{padding:31px 0 38px}.pv-breadcrumb{margin-bottom:22px}.pv-hero h1{font-size:clamp(2rem,9vw,3.15rem)}.pv-hero-panel{padding:20px}.pv-info-grid,.pv-sidebar{grid-template-columns:1fr}.pv-content{padding-top:25px}.pv-local-article{padding:18px}.pv-directory{padding:24px 0 32px}.pv-container{border-radius:21px;padding:17px}.pv-directory-head{align-items:start;flex-direction:column}.pv-count{padding:12px 17px}.pv-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.pv-group summary{padding:14px 16px}.pv-directory-foot{align-items:start;flex-direction:column}.pv-bottom-cta{padding:23px;align-items:start;flex-direction:column}.pv-bottom-cta a{width:100%;text-align:center}}
@media(max-width:420px){.pv-links{grid-template-columns:1fr 1fr}.pv-links a,.pv-links .pv-disabled{padding:9px 8px;font-size:.78rem}.pv-hero-badges span{font-size:.76rem}.pv-actions{flex-direction:column}.pv-primary-btn,.pv-secondary-btn{width:100%}.pv-page .wrap{width:calc(100% - 22px)}}
@media(prefers-reduced-motion:reduce){.pv-page *{scroll-behavior:auto!important;transition:none!important}}
/* Explicitly honor the DOM hidden property against display:flex author rules. */
.pv-directory [hidden]{display:none!important}
