.guide-page{padding-bottom:72px}
.guide-discovery{margin:28px 0}.guide-discovery h4{font-size:1.15rem;margin:0 0 12px}
.row-sources{display:flex;gap:8px;margin-top:8px;font-weight:400}
.research-visual{margin:24px 0;border:1px solid var(--line);border-radius:16px;background:var(--soft);padding:16px}
.research-diagram{display:block;width:100%;height:auto;overflow:visible}.research-diagram rect,.research-diagram circle{fill:white;stroke:#147287;stroke-width:2}
.research-diagram text{fill:#103c49;font:16px system-ui,sans-serif;text-anchor:middle}.diagram-symbol{fill:none;stroke:#147287;stroke-width:3}
.diagram-line{fill:none;stroke:#159a96;stroke-width:3;stroke-dasharray:900;stroke-dashoffset:0;animation:research-connect 1.2s ease-out 1}
.research-visual figcaption{font-size:.88rem;margin-top:16px}.guide-body #methodology{padding:22px;background:var(--soft);border-left:4px solid #147287}
.diagram-labels{display:none}
@media(max-width:600px){.diagram-labels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding-left:18px;font-size:.85rem}.guide-body .diagram-labels li{margin:0}}
@keyframes research-connect{from{stroke-dashoffset:900}to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.diagram-line{animation:none}}
.breadcrumbs{padding:22px 0;font-size:.86rem;color:var(--muted)}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.breadcrumbs li+li::before{content:"/";margin-right:8px;color:var(--muted)}
.guide-header{padding:36px 0 46px}.guide-header h1{font-size:clamp(2rem,4vw,3.25rem)}
.byline{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:24px;font-size:.86rem;color:var(--muted)}
.guide-grid{display:grid;grid-template-columns:minmax(180px,250px) minmax(0,800px);gap:56px;align-items:start;justify-content:center}
.guide-toc{position:sticky;top:120px;border-left:3px solid var(--line);padding-left:20px;font-size:.9rem}
.guide-toc ul{list-style:none;padding:0;margin:12px 0 0}.guide-toc li{margin:10px 0}
.guide-body{min-width:0;overflow-wrap:anywhere}.guide-body section{margin-bottom:42px;scroll-margin-top:110px}
.guide-body h2,.commercial-block h2{font-size:clamp(1.55rem,2.8vw,2rem);line-height:1.25;margin:0 0 20px;letter-spacing:-.025em}
.guide-body p,.guide-body li{color:var(--muted)}.guide-body li{margin-bottom:12px}
.guide-body tbody td,.guide-body tbody th{width:auto}.guide-body th,.guide-body td{padding:16px}
.guide-body .provider-details{min-width:0;table-layout:fixed}
.guide-body .provider-details th:first-child{width:35%}
.guide-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.guide-sources{border-top:1px solid var(--line);padding-top:28px;font-size:.9rem}
.related-guides{margin:36px 0;padding:24px;background:var(--soft);border-radius:12px}.related-guides h2{font-size:1.35rem}
.commercial-block{border-top:2px solid #9bc8cc;padding-top:28px}.commercial-block h2{margin-top:0}
.disclosure{padding:16px;border-left:3px solid var(--teal);background:#e8f4f3;font-size:.9rem}
.destination-card{padding:24px 0;border-bottom:1px solid var(--line);margin:0!important}
.destination-card .text-link{display:block;margin-top:18px}.destination-card h3{font-size:1.3rem}
.content-workflow{margin:24px 0;padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.content-workflow figcaption{font-weight:700}.content-workflow ol{display:grid;gap:12px;padding-left:24px}
.content-workflow li{padding:12px;background:#fff;border-radius:8px}.content-workflow p{font-size:.85rem;margin:0}
.content-image{margin:24px 0}.content-image img{height:auto}.content-image figcaption{font-size:.9rem;margin-top:12px}
.cost-calculator{padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.cost-calculator fieldset{border:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 20px}
.cost-calculator legend{padding:0 0 20px;font-weight:700}
.cost-calculator label{display:flex;flex-direction:column;justify-content:space-between;gap:8px;font-size:.9rem}
.cost-calculator input{min-width:0;width:100%;padding:10px;border:1px solid #708e96;border-radius:6px;background:#fff;color:var(--ink)}
.calculator-result{display:block;margin-top:18px;font-weight:700}.calculator-result:empty{display:none}
@media(max-width:900px){.guide-grid{grid-template-columns:1fr;gap:28px}.guide-toc{position:static}.guide-header{padding-top:20px}.guide-toc ul{display:flex;flex-wrap:wrap;gap:8px 20px}.guide-toc li{margin:0}}
@media(max-width:520px){.guide-cards,.cost-calculator fieldset{grid-template-columns:1fr}.cost-calculator{padding:18px}.guide-body th,.guide-body td{padding:12px}.byline{display:grid}.guide-body .table-scroll{margin-top:20px}}
@media print{.site-header,.footer,.cookie-banner,.guide-toc,.commercial-block,.cost-calculator button{display:none}.guide-grid{display:block}.container{width:100%}.guide-body section{break-inside:avoid}a{color:inherit}}

.nav-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.language-switcher{position:relative;font-size:.85rem}
.language-switcher summary{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 14px;border:1px solid #ccdce0;border-radius:10px;background:#fff;color:var(--ink);font-weight:700;cursor:pointer;list-style:none}
.language-switcher summary::-webkit-details-marker{display:none}
.language-switcher summary:hover,.language-switcher[open] summary{background:#eef6f7}
.language-code{display:none}
.language-flag{display:block;width:20px;height:15px;object-fit:contain;flex-shrink:0}
.language-chevron{display:block;flex-shrink:0;transition:transform .15s}
.language-switcher[open] .language-chevron{transform:rotate(180deg)}
.language-options{position:absolute;right:0;top:calc(100% + 8px);z-index:30;min-width:170px;padding:6px;background:#fff;border:1px solid #ccdce0;border-radius:10px;box-shadow:0 8px 24px #0c354322}
.language-options a{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;border-radius:6px;color:var(--ink);text-decoration:none}
.language-options a:hover,.language-options a[aria-current=page]{background:#eef6f7}
.language-options a[aria-current=page]{font-weight:700}
@media(max-width:760px){.nav-actions{gap:8px}.language-name{display:none}.language-code{display:inline}.language-switcher summary{min-height:44px;padding:8px 10px;gap:6px}}
@media(max-width:380px){.site-header .brand-logo-image{width:140px}.language-code{display:none}}
