:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#17363b;background:#f7faf8}*{box-sizing:border-box}body{margin:0;line-height:1.65}a{color:#126c67}a:focus-visible,select:focus-visible{outline:3px solid #f1aa43;outline-offset:3px}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;padding:1rem;z-index:10}.header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.2rem max(5vw,1rem);background:white;flex-wrap:wrap;border-bottom:1px solid #dce9e4}.brand{font-size:1.4rem;font-weight:800;text-decoration:none;color:#17363b}.brand span{color:#178079}nav{display:flex;flex-wrap:wrap;gap:1.5rem}nav a{text-decoration:none;font-weight:700}.hero{background:linear-gradient(125deg,#173f48,#26786d);color:white;padding:7rem 1rem}.hero-inner,.wrap{max-width:1120px;margin:auto}.hero-inner{padding:0 2vw}.hero h1{font-size:clamp(2.5rem,6vw,5rem);max-width:800px;line-height:1.1;margin:.6rem 0}.hero p{max-width:650px;font-size:1.2rem}.eyebrow{text-transform:uppercase;font-size:.8rem!important;letter-spacing:.14em;font-weight:800;color:#328e82}.hero .eyebrow{color:#bde7da}.actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button{display:inline-block;background:#f5bb68;color:#17363b!important;font-weight:800;text-decoration:none;padding:.75rem 1.15rem;border-radius:.5rem}.button.secondary{background:transparent;color:white!important;border:1px solid white}.wrap{padding:4rem 1.2rem}h1,h2,h3{line-height:1.2}h2{font-size:clamp(1.7rem,3vw,2.5rem)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:1.2rem}.card{background:white;border:1px solid #dce8e4;border-radius:1rem;padding:1.5rem;box-shadow:0 6px 20px #17363b08}.card h2{font-size:1.5rem}.number{font-size:2rem;font-weight:800;color:#27857c}.band{background:#e0efe8}.filters{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.filters label{font-weight:750;display:grid;gap:.3rem}select{font:inherit;min-width:180px;padding:.65rem;border:1px solid #709b96;border-radius:.5rem;background:white}.note{color:#506a6d;font-size:.9rem}.guide-group{margin:3rem 0}.city[hidden]{display:none}footer{padding:3rem max(5vw,1rem);background:#17363b;color:#d5e5e1}footer p{max-width:680px}@media(max-width:650px){.hero{padding:4.5rem 1rem}.header{align-items:flex-start}nav{gap:.8rem}}
/* V2 destination showcase. Original CSS-only scenery until licensed photos are ready. */
.showcase{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#e5f1eb;min-height:430px;overflow:hidden}
.showcase-content{padding:clamp(2rem,5vw,5rem) clamp(1.2rem,5vw,6rem);align-self:center}
.showcase-content h2{font-size:clamp(2.2rem,4vw,4rem);margin:.4rem 0}
.showcase-content>p{max-width:32rem}.showcase-note{font-size:.9rem;color:#45646a}
.showcase-controls{display:flex;align-items:center;gap:.8rem;margin-top:1.5rem;flex-wrap:wrap}
.showcase-controls button{border:1px solid #276c69;background:white;color:#17363b;min-width:44px;min-height:44px;border-radius:.6rem;font:inherit;font-weight:700;cursor:pointer;padding:.4rem .75rem}
.showcase-art{position:relative;min-height:390px;background:linear-gradient(#90c5c9,#d8eace);overflow:hidden;isolation:isolate}
.showcase-art[data-place="bgc"]{background:linear-gradient(#a3cae3,#d7e1d9)}
.showcase-art[data-place="dumaguete"]{background:linear-gradient(#b0c9d4,#d1dcae)}
.showcase-art[data-place="bohol"]{background:linear-gradient(#9bd7bf,#d6eaa6)}
.showcase-art[data-place="siargao"]{background:linear-gradient(#77c7d1,#b5e0c3)}
.scenery-sun{position:absolute;top:15%;right:22%;width:110px;aspect-ratio:1;background:#ffe4a0;border-radius:50%}
.scenery-hill{position:absolute;bottom:24%;left:-8%;width:118%;height:42%;background:#448875;border-radius:50% 50% 0 0}
.scenery-sea{position:absolute;bottom:0;left:0;width:100%;height:31%;background:#227e8f}
.showcase-art-label{position:absolute;bottom:.6rem;right:1rem;background:#ffffffdb;border-radius:.5rem;padding:.2rem .6rem;font-size:.75rem;color:#24505b}
@media(max-width:780px){.showcase{grid-template-columns:1fr}.showcase-art{min-height:270px}.showcase-content{padding:2rem 1.2rem}.showcase-art-label{font-size:.7rem}}

.destination-photo{display:block;width:100%;height:100%;min-height:390px;object-fit:cover;object-position:center;position:absolute;inset:0;z-index:3;background:#dce8e7}
.showcase-art-label{z-index:4;text-decoration:none;font-weight:700}
@media(max-width:780px){.destination-photo{min-height:270px}}

/* Photo-led destination finder */
.city-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr))}
.city-card{padding:0;overflow:hidden;display:flex;flex-direction:column}
.city-card-body{padding:1.3rem 1.5rem 1.6rem;flex:1}
.city-thumbnail{width:100%;height:210px;display:block;object-fit:cover;background:#cfe6e0}
.city-placeholder{height:210px;background:linear-gradient(145deg,#a9d1ca,#4b928c);color:#153f43;display:grid;place-items:center;font-weight:700}
.city-card h2{margin:.55rem 0;font-size:1.45rem}
.city-card p{margin:.55rem 0 1rem}
.clear-filters{font:inherit;align-self:end;padding:.63rem 1rem;background:#fff;border:1px solid #276c69;border-radius:.5rem;color:#17363b;cursor:pointer;min-height:44px}
.photo-footnote{font-size:.9rem;margin-top:2rem;color:#506a6d}


/* City guide editorial template */
.city-guide-top{background:linear-gradient(115deg,#e5f3ef,#f8faf4);border-bottom:1px solid #dce8e4}
.city-guide-intro{padding-top:2.2rem;padding-bottom:2.6rem}
.city-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;font-size:.95rem;color:#546c6a;margin-bottom:2rem}
.city-guide-intro h1{font-size:clamp(2.6rem,6vw,4.7rem);letter-spacing:-.035em;line-height:1.08;max-width:900px;margin:.5rem 0 1rem}
.city-guide-deck{font-size:clamp(1.1rem,2vw,1.4rem);max-width:760px;color:#3a595a}
.city-guide-tags{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}
.city-guide-tags span{background:#fff;border:1px solid #cbded8;border-radius:999px;padding:.35rem .85rem;font-size:.87rem;font-weight:700}
.city-hero-frame{max-width:1400px;margin:0 auto;background:#dce8e4;height:clamp(245px,40vw,510px);overflow:hidden}
.city-guide-photo{width:100%;height:100%;display:block;object-fit:cover}
.city-guide-main{padding-top:3rem}
.city-guide-columns{display:grid;grid-template-columns:minmax(185px,235px) minmax(0,1fr);gap:clamp(1.5rem,5vw,5rem);align-items:start}
.city-guide-aside{position:sticky;top:1.5rem}
.city-guide-sidecard{padding:1.3rem;background:white;border:1px solid #dce8e4;border-radius:.9rem;display:grid;gap:.65rem}
.city-guide-sidecard h2{font-size:1rem;margin:0 0 .3rem}
.city-guide-sidecard a{font-weight:650;text-decoration:none;padding:.3rem 0}
.city-guide-article{min-width:0}
.city-guide-section{scroll-margin-top:2rem;margin-bottom:3.3rem}
.city-guide-section>h2{margin:.4rem 0 1.1rem}
.city-guide-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:2rem}
.city-guide-facts>div{border:1px solid #d4e4dd;background:#fff;border-radius:.8rem;padding:1rem}
.city-guide-facts span{display:block;color:#586f70;font-size:.84rem;margin-bottom:.3rem}
.city-guide-facts strong{display:block;font-size:1.05rem}
.city-guide-editorial-note{background:#f0f6f2;border-left:3px solid #237a70;padding:1rem 1.2rem;font-size:.95rem}
.city-research{overflow-wrap:anywhere}
.city-research h1{font-size:1.8rem}
.city-research h2{font-size:1.55rem;margin:2rem 0 .8rem}
.city-research h3{font-size:1.25rem;margin:1.6rem 0 .7rem}
.city-research p{margin:.8rem 0}
.city-research ul{padding-left:1.35rem}
.city-research .table-wrap{overflow-x:auto;max-width:100%}
.city-research table{border-collapse:collapse;width:100%;background:#fff;font-size:.94rem}
.city-research th,.city-research td{border:1px solid #d4e4dd;padding:.7rem;text-align:left;vertical-align:top}
.city-guide-planning{background:#eaf4ed;border-radius:1rem;padding:clamp(1.3rem,3vw,2.3rem)}
.city-guide-planning .note{margin-top:1rem}
.city-guide-related{border-top:1px solid #dce8e4;padding-top:2.5rem;margin-top:1.5rem}
.city-guide-related-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem}
.city-guide-related-heading h2{margin:0}
.city-guide-related-card{text-decoration:none;color:inherit}
.city-guide-related-card h3{margin:.5rem 0}
.city-guide-related-card p{margin:.5rem 0;color:#4b6263}
@media(max-width:760px){.city-guide-columns{grid-template-columns:minmax(0,1fr)}.city-guide-aside{position:static}.city-guide-sidecard{display:flex;flex-wrap:wrap;gap:.6rem 1rem}.city-guide-sidecard h2{width:100%}.city-guide-facts{grid-template-columns:1fr}.city-guide-intro{padding-top:1.5rem}.city-guide-main{padding-top:2rem}}

.medical-facilities{margin:1.5rem 0;padding:1.3rem;background:#f3f8f5;border:1px solid #d4e4dd;border-radius:.9rem}.medical-facilities>h3{margin:0 0 .4rem}.medical-facility{padding:1rem 0;border-top:1px solid #d4e4dd}.medical-facility h4{margin:0;font-size:1.07rem}.medical-facility p{margin:.3rem 0}.medical-facilities a{font-weight:750}

/* Published rental comparison */
.city-rental-benchmark{padding:1.25rem;margin:1.5rem 0;border:1px solid #cadfd7;border-radius:1rem;background:#f5faf7}
.city-rental-benchmark h3{margin:0 0 .35rem}
.city-rental-benchmark .city-guide-facts{margin:1rem 0}

/* Before-you-go preparation hub: original timeline-based layout */
.before-guide{margin:2rem 0 3rem}
.before-intro{font-size:1.14rem;max-width:780px}
.before-topic-nav{display:flex;gap:.7rem;flex-wrap:wrap;margin:1.5rem 0 2rem}
.before-topic-nav a{background:#e7f3ed;border:1px solid #c5ddd2;border-radius:999px;padding:.5rem .9rem;font-weight:700;text-decoration:none}
.before-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.before-topic{scroll-margin-top:1.5rem}
.before-topic h2{font-size:1.45rem;margin-top:0}
.before-topic ul{padding-left:1.25rem;margin-bottom:0}
.before-topic li+li{margin-top:.7rem}
.before-official{background:#edf5f0;border-radius:1rem;padding:1.7rem;margin:2rem 0}
.before-official h2{margin-top:0}
.before-official ul{padding-left:1.4rem}
.guide-source-section{margin-top:3rem;max-width:100%;overflow-wrap:anywhere}
.guide-source-section .migrated-guide{max-width:100%;overflow-wrap:anywhere}
.guide-source-section .table-wrap{overflow-x:auto;max-width:100%}
.guide-source-section table{border-collapse:collapse;background:#fff;min-width:0}
.guide-source-section td,.guide-source-section th{border:1px solid #dce8e4;padding:.65rem;vertical-align:top}
@media(max-width:720px){.before-topic-grid{grid-template-columns:1fr}.before-topic-nav a{font-size:.93rem}}

/* Browseable guide library, with topics rather than book chapters */
.guide-library-intro{font-size:1.18rem;max-width:740px}
.guide-step-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:2rem 0 3rem}
.guide-step-strip a{display:grid;gap:.25rem;padding:1.05rem;border-radius:.8rem;background:#e6f1eb;border:1px solid #c9ded5;text-decoration:none}
.guide-step-strip strong{color:#17363b}
.guide-step-strip span{font-size:.88rem;color:#3d5d5b}
.guide-group{margin:3.5rem 0;scroll-margin-top:1rem}
.guide-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.guide-article-card{display:block;background:white;border:1px solid #dce8e4;border-radius:1rem;overflow:hidden;text-decoration:none;color:#17363b;box-shadow:0 6px 20px #17363b08;transition:transform .2s ease,box-shadow .2s ease}
.guide-article-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px #17363b17}
.guide-article-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#e6f1eb}
.guide-article-card>div{padding:1.2rem}
.guide-article-card h3{font-size:1.25rem;margin:.4rem 0}
.guide-article-card p{font-size:.95rem;margin:0 0 1rem}
.guide-read-link{font-weight:800;color:#126c67}
.guide-original-library{background:#eff5f0;padding:1.5rem;border-radius:1rem;margin:3rem 0}
.guide-original-links{display:flex;gap:.8rem;flex-wrap:wrap}
.guide-original-links a{background:white;padding:.65rem .9rem;border-radius:.55rem;border:1px solid #cadfd7;font-weight:750;text-decoration:none}
.guide-article{max-width:880px}
.guide-article-hero{display:block;width:100%;max-height:360px;object-fit:cover;border-radius:1rem;margin:1.7rem 0}
.guide-article-body{max-width:760px}
.guide-article-body li{margin:.8rem 0}
@media(max-width:900px){.guide-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-step-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:590px){.guide-topic-grid,.guide-step-strip{grid-template-columns:1fr}.guide-group{margin:2.5rem 0}}

/* Subject-first magazine guides, with full-card photography and distinct articles */
.guide-library{max-width:1180px}
.guide-library>h1{max-width:780px;font-size:clamp(2.4rem,5vw,4rem);margin:.5rem 0}
.guide-library-intro{font-size:1.18rem;max-width:760px;color:#496365;margin:.7rem 0 2rem}
.guide-step-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:2rem 0 3rem}
.guide-step-strip a{display:flex;flex-direction:column;gap:.35rem;padding:1rem;border-radius:.85rem;background:#e8f3ed;border:1px solid #cbded6;color:#17363b;text-decoration:none}
.guide-step-strip a:hover,.guide-step-strip a:focus-visible{background:#d9ede4}
.guide-step-strip strong{font-size:1rem}
.guide-step-strip span{font-size:.88rem;color:#4b6866}
.guide-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:1.4rem 0 2.5rem}
.guide-article-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce8e4;border-radius:1rem;background:white;color:#17363b;text-decoration:none;box-shadow:0 8px 25px #17363b12;transition:transform .18s,box-shadow .18s}
.guide-article-card:hover{transform:translateY(-3px);box-shadow:0 12px 29px #17363b20}
.guide-article-card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#e5efea;display:block}
.guide-article-card>div{padding:1.25rem;display:flex;flex-direction:column;flex:1}
.guide-article-card h3{font-size:1.35rem;line-height:1.25;margin:.4rem 0}
.guide-article-card p{margin:.2rem 0 1rem;color:#4b6263}
.guide-read-link{color:#13746a;font-weight:800;margin-top:auto}
.guide-group{padding-top:1rem;scroll-margin-top:1rem}
.guide-group h2{margin-bottom:.5rem}
.guide-original-library{border-top:1px solid #dce8e4;margin-top:2rem;padding-top:1.5rem}
.guide-original-links{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0}
.guide-original-links a{padding:.6rem .85rem;border:1px solid #cbddd6;border-radius:.5rem;text-decoration:none;font-weight:700;background:white}
.guide-article{max-width:1000px}
.guide-article h1{font-size:clamp(2.4rem,5vw,3.7rem);max-width:850px;margin:.5rem 0}
.guide-article-hero{display:block;width:100%;max-height:450px;object-fit:cover;border-radius:1rem;margin:1.5rem 0 2rem}
.guide-article-body{max-width:780px}
.guide-article-body h2{font-size:1.5rem;margin:2rem 0 .7rem}
.guide-article-body li{margin-bottom:.8rem}
@media(max-width:900px){.guide-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-step-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.guide-topic-grid,.guide-step-strip{grid-template-columns:1fr}.guide-article-card img{aspect-ratio:16/9}}

/* Topic articles preserve research depth without turning the library into a book */
.topic-research{margin-top:2.6rem;padding-top:1.7rem;border-top:1px solid #d4e4dd;max-width:780px}
.topic-research .migrated-guide{overflow-wrap:anywhere}
.topic-research .migrated-guide h1{font-size:1.6rem}
.topic-research .migrated-guide h2{font-size:1.4rem}
.topic-research .migrated-guide h3{font-size:1.17rem}
.topic-research .table-wrap{max-width:100%;overflow:auto}
.topic-research table{border-collapse:collapse;width:100%;background:white}
.topic-research td,.topic-research th{padding:.7rem;border:1px solid #dce8e4;vertical-align:top}

/* Keep compact checklist table headers (Done / Notes) readable on one line. */
.migrated-guide .table-wrap{max-width:100%;overflow-x:auto}
.migrated-guide table{min-width:max-content}
.migrated-guide th{white-space:nowrap}

/* Thirty-five-city cost guide: controlled horizontal scrolling on small screens */
.cost-guide-detail{max-width:100%;min-width:0}
.cost-guide-detail .table-wrap{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;border:1px solid #d3e2da;border-radius:.8rem;margin:1.5rem 0}
.rent-guide-table{width:100%;min-width:660px;border-collapse:separate;border-spacing:0;font-size:.91rem;line-height:1.4}
.rent-guide-table th,.rent-guide-table td{padding:.75rem .85rem;border-bottom:1px solid #deebe5;text-align:left;vertical-align:middle}
.rent-guide-table thead th{background:#e4f2eb;color:#17363b;font-weight:800;position:sticky;top:0}
.rent-guide-table tbody tr:nth-child(even){background:#f2f8f4}
.rent-guide-table tbody tr:last-child>*{border-bottom:0}
.rent-guide-table tbody th{position:sticky;left:0;z-index:1;background:#fff;min-width:185px;font-weight:750}
.rent-guide-table tbody tr:nth-child(even) th{background:#f2f8f4}
.rent-guide-table td:nth-child(2),.rent-guide-table td:nth-child(3){white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:700px){.rent-guide-table{font-size:.87rem;min-width:640px}.rent-guide-table th,.rent-guide-table td{padding:.65rem .7rem}.cost-guide-detail .table-wrap{margin-left:0;margin-right:0}}

/* Secondary research archive stays out of the main subject browsing path. */
.guide-archive-details{margin-top:1.5rem;border-top:1px solid #d1dfd7;padding-top:1rem}
.guide-archive-details summary{cursor:pointer;font-weight:750;color:#126c67;padding:.35rem 0}
.guide-archive-details[open] summary{margin-bottom:.75rem}
.guide-archive-details .guide-original-links a{font-size:.93rem}

/* Long-form visa research remains easy to navigate, including on narrow screens. */
.visa-contents{display:grid;gap:.45rem;background:#eff6f1;padding:1.25rem;border-radius:.8rem;margin:1.5rem 0 2rem}
.visa-contents a{font-weight:650;text-decoration:none}
.visa-research-section{padding:1.5rem 0;border-bottom:1px solid #d6e5dd;scroll-margin-top:1rem}
.visa-research-section h3{font-size:1.5rem;margin:.2rem 0 .7rem}
.visa-research-section h4{font-size:1.08rem;margin:1.2rem 0 .5rem}
.visa-research-section ol{padding-left:1.4rem}
.visa-research-section li{margin:.65rem 0}

/* Additional topic guides: clear scannable sections without replacing research with cards. */
.guide-research-detail{border-top:1px solid #d4e4dd;margin:2rem 0;padding-top:1rem}
.guide-research-detail h2{margin:1rem 0 1.4rem}
.guide-research-detail .guide-editorial-section{border-bottom:1px solid #e0ebe6;padding:.1rem 0 1.1rem;margin-bottom:1.2rem}
.guide-research-detail .guide-editorial-section h3{font-size:1.25rem;line-height:1.4;margin:.3rem 0 .6rem}
.guide-research-detail .guide-editorial-section p{line-height:1.75;margin:.4rem 0}
.related-topic-links{display:grid;gap:.8rem;margin:1.2rem 0 2rem}
.related-topic-links a{display:flex;flex-direction:column;gap:.28rem;border:1px solid #d0e2d8;border-radius:.7rem;padding:.8rem 1rem;text-decoration:none;background:#f5faf7;color:#183c3d}
.related-topic-links a span{font-size:.9rem;color:#55706a}
.related-topic-links a:hover{background:#eaf5ee}

/* Full original subject research, retained in the article instead of a separate book. */
.original-topic-article{margin:3rem 0;padding-top:2rem;border-top:2px solid #c8ded2}
.original-topic-article>h2{margin-top:0}
.original-topic-article>.migrated-guide{overflow-wrap:anywhere;line-height:1.73}
.original-topic-article .migrated-guide h1{font-size:1.55rem}
.original-topic-article .migrated-guide h2{font-size:1.4rem;margin:1.8rem 0 .7rem}
.original-topic-article .migrated-guide h3{font-size:1.2rem;margin:1.4rem 0 .6rem}
.original-topic-article .migrated-guide h4{font-size:1.08rem;margin:1.2rem 0 .5rem}
.original-topic-article .migrated-guide p{margin:.8rem 0}
.original-topic-article .table-wrap{max-width:100%;overflow-x:auto}
.original-topic-article table{border-collapse:collapse;background:#fff}
.original-topic-article td,.original-topic-article th{border:1px solid #dce8e4;padding:.65rem;vertical-align:top}

/* Search the forty-topic illustrated guide library */
.guide-search-bar{padding:1.15rem 1.3rem;border:1px solid #ccdfd3;border-radius:.9rem;background:#f0f7f3;margin:1.5rem 0 2.1rem;max-width:780px}
.guide-search-bar label{display:block;font-weight:800;margin-bottom:.5rem}
.guide-search-bar input{width:100%;border:1px solid #b2cec0;border-radius:.55rem;padding:.8rem .9rem;font-size:1rem;background:white;color:#163c3b}
.guide-search-bar p{font-size:.9rem;color:#526d61;margin:.65rem 0 0}
.guide-article-card[hidden],.guide-group[hidden]{display:none!important}

/* In-article navigation makes full source research accessible without a book-like wall. */
.guide-article-jump{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0 2rem}
.guide-article-jump a{border-radius:999px;background:#eaf4ef;border:1px solid #c7ded1;padding:.5rem .8rem;text-decoration:none;font-size:.91rem;font-weight:750;color:#1a5750}
.guide-article-jump a:hover{background:#d7eee1}
.guide-article-body [id]{scroll-margin-top:1.5rem}

/* On-page guide navigation for long original research */
.article-jump-nav{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem .75rem;padding:.9rem 1rem;margin:1rem 0 2rem;border:1px solid #d0e2d8;border-radius:.8rem;background:#eff7f1}
.article-jump-nav strong{margin-right:.3rem;color:#234e43}
.article-jump-nav a{background:white;border:1px solid #cedfd5;color:#176b61;text-decoration:none;padding:.35rem .65rem;border-radius:999px;font-size:.9rem;font-weight:650}
.article-jump-nav a:hover{background:#dbece2}
.guide-article [id]{scroll-margin-top:1.5rem}

/* Reliable filtering for city cards, even when card/grid display rules override hidden. */
.city-card[hidden],.guide-article-card[hidden],.guide-group[hidden]{display:none!important}
.city-card .city-thumbnail{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;background:#e4eee9}
.city-card .city-rent-hint{font-weight:700;font-variant-numeric:tabular-nums}

/* Tools library ported from V1 */
.pil-tools,.pil-tool-page{padding-top:2.2rem;padding-bottom:4rem}
.pil-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem;margin:2rem 0}
.pil-tool-card{display:grid;grid-template-columns:84px 1fr;gap:1rem;align-items:center;border:1px solid #c9dfd5;border-radius:1rem;padding:1.4rem;background:#f4f8f3;text-decoration:none;color:#24504a}
.pil-tool-card h2{font-size:1.5rem;margin:.1rem 0 .5rem}
.pil-tool-card p{color:#506c65}
.pil-tool-icon{font-size:3rem;font-weight:800;color:#b85d3d;text-align:center}
.pil-tool-page{max-width:1000px}
.pil-tool-panel{padding:clamp(1.2rem,3vw,2.5rem);background:#fffdf7;border:1px solid #d4e3dc;border-radius:1rem;margin:1.8rem 0}
.pil-tool-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem;margin:1.4rem 0}
.pil-tool-fields label{display:flex;flex-direction:column;gap:.5rem;font-weight:750;color:#234f47}
.pil-tool-fields input{width:100%;padding:.8rem;font-size:1.12rem;border:1px solid #adcbc1;border-radius:.65rem;color:#153d38;background:white}
.pil-fx-rate{font-size:clamp(1.35rem,3vw,2rem);margin:1.4rem 0 .5rem}
.pil-fx-rate strong{color:#0c7667}
.pil-secondary-button,.pil-milestone button{padding:.7rem 1rem;border-radius:.6rem;border:1px solid #2e7568;background:#e4f3ec;color:#155346;font-weight:750;cursor:pointer}
.pil-tool-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.3rem 0}
.pil-tool-results div{padding:1rem;background:#ebf5ef;border-radius:.7rem}
.pil-tool-results span{display:block;font-size:.88rem;color:#526a60}
.pil-tool-results strong{display:block;margin-top:.4rem;font-size:1.28rem}
.pil-visa-milestones{margin-top:1.8rem}
.pil-milestone{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1.25rem 0;border-bottom:1px solid #d6e6df}
.pil-milestone h3{margin:0 0 .35rem;font-size:1.15rem}
.pil-milestone p{margin:.35rem 0}
.pil-step{background:#1d6659;color:white;border-radius:50%;display:grid;place-items:center;width:34px;height:34px;font-weight:800}
@media(max-width:700px){.pil-tool-grid,.pil-tool-results{grid-template-columns:1fr}.pil-tool-card{grid-template-columns:58px 1fr}.pil-milestone{grid-template-columns:38px 1fr}.pil-milestone button{grid-column:2;justify-self:start}}
