/* Shared paper/grid/pixel/blue vocabulary. No theme or library replacement. */
:root{--quiet-line:#cbd3d2}
main :is(.eu-card,.it-city-card,.it-note,.action-card){box-shadow:none;border-color:var(--quiet-line)}
main :is(.eu-grid,.it-grid,.action-grid){gap:24px}
main :is(.eu-tags,.it-tags) span{background:transparent;color:#4b6270;padding:3px 0;margin-right:10px;font-size:14px}
main :is(.eu-card,.it-city-card) .button:not(.primary){background:transparent;box-shadow:none}
main :is(.it-jump,.eu-nav) a{border-color:transparent;background:transparent;text-decoration:underline;text-underline-offset:5px}
main :is(.it-fold,.eu-step){border-left:0;border-right:0;background:#fffdf780}
main :is(.it-fold,.eu-step)>summary{min-height:58px}
main :is(.it-note,.eu-card) p{line-height:1.8}
main :is(.it-actions,.hero-actions)>.primary~.primary{background:transparent;color:#1764a5;box-shadow:none}
.footer-links{gap:14px 22px}.footer-links a{font-size:14px}
.directory-quick{padding:10px 20px!important;background:#fffdf8!important;border-color:#cbd3d2!important}
.directory-quick-group>summary{display:flex;align-items:center;gap:12px;min-height:58px;cursor:pointer;font-size:18px;font-weight:700;color:#1764a5}
.directory-quick-group>summary:after{content:'+';margin-left:auto}.directory-quick-group[open]>summary:after{content:'−'}
.directory-quick-group>summary small{font-size:14px;font-weight:400;color:#526875}
.directory-quick-group>div{padding-bottom:20px}.directory-quick-group+.directory-quick-group{border-top:1px solid #dbe2e4}
.directory-quick-group a{border:0!important;padding:8px 10px!important;background:transparent!important;text-decoration:underline!important;text-underline-offset:4px}
.directory-jump a{background:transparent!important;box-shadow:none!important;border-color:transparent!important}
.city-choice .button.primary{background:transparent;color:#1764a5;border:0;padding:8px 0;box-shadow:none}
:where(a,button,input,select,summary):focus-visible{outline:3px solid #1764a5;outline-offset:3px}
@media(max-width:620px){main :is(.eu-grid,.it-grid,.action-grid){gap:18px}main :is(.it-fold,.eu-step)>summary{padding:18px 12px}main .it-fold>summary h2{font-size:22px}.directory-jump{gap:6px!important}.directory-jump a{font-size:14px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Country discovery stays compact; the planner is a single full-width link. */
.directory-quick-group>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 8px}
.directory-quick-group a{display:flex;align-items:center;min-height:44px;font-size:16px;line-height:1.4}
.directory-planner{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:24px;background:#f5faff;border:1px solid #1764a5;border-radius:8px;color:#1764a5;text-decoration:none}
.directory-planner .eyebrow{margin:0;font-size:12px}.directory-planner h2{margin:0;font-size:24px;line-height:1.35;word-break:keep-all}.directory-planner p{margin:0;font-size:16px;line-height:1.6;color:#435c6b}
.directory-planner-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:2px;padding:8px 20px;background:#1764a5;color:white;border-radius:4px;font-size:16px;font-weight:700}
.directory-planner:hover{background:#eaf4ff}.directory-planner:focus-visible{outline:3px solid #1764a5;outline-offset:4px}
@media(max-width:620px){.directory-quick-group>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 4px}.directory-quick-group a{padding:8px 4px!important}.directory-planner{padding:22px 16px;gap:9px}.directory-planner h2{font-size:23px}}
