/* [abroad-v2] 17 Oct 2026. Diaspora hub / city / guide pages. Loaded only by parts/abroad-v2.php, scoped to body.phwo-ab-v2.
   Tokens from style.css: --phwo-color-primary/accent/support/ink/mist, --phwo-line, --phwo-muted, --phwo-radius. Mobile first. */
.phwo-ab-v2{--ab-teal:var(--phwo-color-primary,#0D5C63);--ab-gold:var(--phwo-color-accent,#E8A33D);--ab-ink:var(--phwo-color-ink,#14262B);--ab-mist:var(--phwo-color-mist,#F5F8F8);--ab-line:var(--phwo-line,#dde5e6);--ab-muted:var(--phwo-muted,#6b7a80);--ab-r:var(--phwo-radius,12px);--ab-sh:0 1px 2px rgba(20,38,43,.05),0 8px 24px rgba(20,38,43,.07);--ab-sh2:0 2px 4px rgba(20,38,43,.06),0 16px 36px rgba(20,38,43,.13)}
.phwo-ab-v2 .phwo-lc-main,.phwo-ab-v2 .phwo-lc-side,.phwo-ab-v2 .ab-hero-copy,.phwo-ab-v2 .ab-hero-side{min-width:0}
.phwo-ab-v2 .phwo-prose a,.phwo-ab-v2 .phwo-lc-help a{overflow-wrap:anywhere}

/* ---------- hero */
.phwo-ab-v2 .ab-hero{padding:28px 0 32px;background:radial-gradient(120% 140% at 100% 0%,#14727a 0%,#0b4f55 45%,#083b40 100%)}
.phwo-ab-v2 .ab-hero.has-img{background:linear-gradient(180deg,rgba(6,34,38,.86),rgba(6,34,38,.94)),var(--lc-hero) center/cover no-repeat}
.phwo-ab-v2 .ab-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--ab-gold),#f3c97c 40%,transparent)}
.phwo-ab-v2 .ab-hero-grid{display:grid;gap:24px;align-items:center}
.phwo-ab-v2 .ab-hero h1{font-size:clamp(27px,6.4vw,46px);line-height:1.12;letter-spacing:-.01em;margin:0 0 18px;text-wrap:balance}
.phwo-ab-v2 .phwo-lc-kicker{display:inline-flex;align-items:center;gap:8px}
.phwo-ab-v2 .phwo-lc-kicker::before{content:"";width:22px;height:2px;background:var(--ab-gold);border-radius:2px}
.phwo-ab-v2 .phwo-lc-actions{gap:8px}
.phwo-ab-v2 .phwo-lc-btn{border-radius:999px;padding:10px 16px;font-size:15px;transition:background .2s,transform .2s}
.phwo-ab-v2 .phwo-lc-btn.is-gold{box-shadow:0 6px 18px rgba(232,163,61,.35);padding-inline:22px}
.phwo-ab-v2 .phwo-lc-btn:hover{transform:translateY(-1px)}
.phwo-ab-v2 .phwo-lc-note{font-size:13.5px;line-height:1.55;max-width:62ch;opacity:.85}

.phwo-ab-v2 .ab-glance{background:rgba(255,255,255,.97);color:var(--ab-ink);border-radius:16px;padding:20px;box-shadow:0 20px 50px rgba(0,0,0,.28);border-top:4px solid var(--ab-gold)}
.phwo-ab-v2 .ab-glance h2{margin:0 0 12px;font-size:18px;color:var(--ab-teal)}
.phwo-ab-v2 .ab-glance .phwo-lc-facts{gap:0}
.phwo-ab-v2 .ab-glance .phwo-lc-facts div{padding:10px 0;border-bottom:1px solid #edf1f2}
.phwo-ab-v2 .ab-glance .phwo-lc-facts div:last-child{border-bottom:0;padding-bottom:0}
.phwo-ab-v2 .ab-glance dd{font-size:15px;line-height:1.4}
.phwo-ab-v2 .ab-visual{display:none}
.phwo-ab-v2 .ab-visual svg{width:100%;height:auto;max-width:360px;display:block;margin:auto;filter:drop-shadow(0 18px 40px rgba(0,0,0,.25))}

/* ---------- step-by-step band */
.phwo-ab-v2 .ab-steps-band{background:#fff;padding:28px 0 8px}
.phwo-ab-v2 .ab-steps-band h2{margin:0 0 16px;font-size:clamp(22px,3.4vw,28px)}
.phwo-ab-v2 .ab-stepper{list-style:none;counter-reset:abs;margin:0;padding:0;display:grid;gap:12px}
.phwo-ab-v2 .ab-stepper li{counter-increment:abs;position:relative;margin:0;padding:16px 16px 16px 64px;background:var(--ab-mist);border:1px solid var(--ab-line);border-radius:var(--ab-r);line-height:1.5;font-size:15px;color:#33454a}
.phwo-ab-v2 .ab-stepper li::before{content:counter(abs);position:absolute;left:16px;top:14px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--ab-teal);color:#fff;font-weight:700;font-size:16px;box-shadow:0 0 0 4px rgba(13,92,99,.12)}
.phwo-ab-v2 .ab-stepper li:last-child::before{background:var(--ab-gold);color:#2c1d05;box-shadow:0 0 0 4px rgba(232,163,61,.2)}
.phwo-ab-v2 .ab-stepper strong{display:block;color:var(--ab-ink);font-size:16px;margin-bottom:2px}
.phwo-ab-v2 .ab-steps-band .phwo-lc-small{margin:14px 0 0;max-width:110ch}

/* ---------- body typography */
.phwo-ab-v2 .phwo-lc-body{gap:28px;padding-top:28px;padding-bottom:40px}
.phwo-ab-v2 .phwo-lc-main{font-size:17px;line-height:1.72;color:#24363b}
.phwo-ab-v2 .phwo-lc-main>p:first-child{font-size:18.5px;line-height:1.65;color:var(--ab-ink)}
.phwo-ab-v2 .phwo-lc-main h2{position:relative;margin:2.1em 0 .6em;padding-top:16px;font-size:clamp(22px,3.2vw,28px);line-height:1.22;letter-spacing:-.005em}
.phwo-ab-v2 .phwo-lc-main h2::before{content:"";position:absolute;left:0;top:0;width:44px;height:3px;border-radius:3px;background:var(--ab-gold)}
.phwo-ab-v2 .phwo-lc-main p{margin:0 0 1em}
.phwo-ab-v2 .phwo-lc-main a{color:var(--ab-teal);text-decoration-color:rgba(13,92,99,.35);text-underline-offset:3px}
.phwo-ab-v2 .phwo-lc-main a:hover{text-decoration-color:currentColor}
.phwo-ab-v2 .phwo-lc-main h2#keep-reading+p,.phwo-ab-v2 .phwo-lc-main h2#start-here+p{margin-top:0}

/* ---------- independent checks card (further reading + useful links) */
.phwo-ab-v2 .ab-checks{position:relative;margin:2.2em 0 0;padding:20px 18px;border:1px solid var(--ab-line);border-radius:16px;background:linear-gradient(180deg,#f7fbfb,#fff);box-shadow:var(--ab-sh)}
.phwo-ab-v2 .ab-checks-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(13,92,99,.1);color:var(--ab-teal);margin-bottom:10px}
.phwo-ab-v2 .ab-checks h2{margin:0 0 .4em;padding:0;font-size:21px}
.phwo-ab-v2 .ab-checks h2::before{display:none}
.phwo-ab-v2 .ab-checks h3{margin:1.2em 0 .5em;font-size:16px;color:var(--ab-teal)}
.phwo-ab-v2 .ab-checks>p{font-size:15px;color:#4a5a5f}
.phwo-ab-v2 .ab-checks ul{list-style:none;margin:0 0 .4em;padding:0;display:grid;gap:8px}
.phwo-ab-v2 .ab-checks ul:not(.phwo-lc-help) li{margin:0;padding:10px 12px 10px 36px;position:relative;border:1px solid #e6eded;border-radius:10px;background:#fff;font-size:15px;line-height:1.45}
.phwo-ab-v2 .ab-checks ul:not(.phwo-lc-help) li::before{content:"";position:absolute;left:13px;top:15px;width:10px;height:10px;border-radius:50%;border:2px solid var(--ab-support,#2A9D8F)}
.phwo-ab-v2 .ab-checks .phwo-lc-help li{border-radius:10px;background:#fff;font-size:15px}
.phwo-ab-v2 .ab-checks .phwo-lc-small{margin:.6em 0 0}

/* ---------- FAQ accordions */
.phwo-ab-v2 .ab-faq details{border:1px solid var(--ab-line);border-radius:var(--ab-r);margin:0 0 10px;background:#fff;transition:box-shadow .2s,border-color .2s}
.phwo-ab-v2 .ab-faq details[open]{border-color:rgba(13,92,99,.35);box-shadow:var(--ab-sh)}
.phwo-ab-v2 .ab-faq summary{list-style:none;position:relative;padding:15px 52px 15px 18px;font-size:16px;line-height:1.4;color:var(--ab-ink)}
.phwo-ab-v2 .ab-faq summary::-webkit-details-marker{display:none}
.phwo-ab-v2 .ab-faq summary::after{content:"";position:absolute;right:16px;top:50%;width:24px;height:24px;margin-top:-12px;border-radius:50%;background:rgba(13,92,99,.1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230D5C63' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .2s}
.phwo-ab-v2 .ab-faq details[open] summary::after{transform:rotate(180deg);background-color:var(--ab-gold)}
.phwo-ab-v2 .ab-faq summary:focus-visible{outline:3px solid var(--ab-gold);outline-offset:2px;border-radius:var(--ab-r)}
.phwo-ab-v2 .ab-faq details>div{padding:0 18px 14px;font-size:16px;color:#3a4b50}

/* ---------- sidebar */
.phwo-ab-v2 .phwo-lc-card{border-radius:16px;padding:20px;box-shadow:var(--ab-sh);border-color:var(--ab-line)}
.phwo-ab-v2 .phwo-lc-card.is-teal{background:linear-gradient(160deg,#106b73,#0a4a50);border:0}
.phwo-ab-v2 .phwo-lc-card.is-teal .phwo-lc-reach a{display:block;padding:6px 0;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.14)}
.phwo-ab-v2 .phwo-lc-card.is-teal .phwo-lc-reach li:first-child a{color:#f3c97c;font-weight:700}
.phwo-ab-v2 .phwo-lc-links{gap:2px}
.phwo-ab-v2 .phwo-lc-links a{display:block;padding:7px 10px;border-radius:8px;color:var(--ab-teal)}
.phwo-ab-v2 .phwo-lc-links a:hover{background:var(--ab-mist)}

/* ---------- hub directory */
.phwo-ab-v2 .phwo-lc-dir{padding:32px 0 12px;background:var(--ab-mist)}
.phwo-ab-v2 .phwo-lc-prov h2{font-size:clamp(21px,3vw,26px)}
.phwo-ab-v2 .phwo-lc-prov header span{background:#fff;border:1px solid var(--ab-line);border-radius:999px;padding:2px 10px;font-size:13px}
.phwo-ab-v2 .phwo-lc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.phwo-ab-v2 .phwo-lc-city{border-radius:14px;box-shadow:var(--ab-sh);transition:transform .2s,box-shadow .2s}
.phwo-ab-v2 .phwo-lc-city:hover,.phwo-ab-v2 .phwo-lc-city:focus-visible{transform:translateY(-3px);box-shadow:var(--ab-sh2)}
.phwo-ab-v2 .phwo-lc-city:focus-visible{outline:3px solid var(--ab-gold);outline-offset:2px}
.phwo-ab-v2 .phwo-lc-city-t{padding:30px 12px 10px;flex-direction:column;align-items:flex-start;gap:0}
.phwo-ab-v2 .phwo-lc-city-t strong{font-size:16px;line-height:1.25}
.phwo-ab-v2 .phwo-lc-city-t em{font-size:12.5px;opacity:.85}
.phwo-ab-v2 .ab-nophoto{background:linear-gradient(135deg,#1b8a8f 0%,#0D5C63 55%,#083b40 100%)}
.phwo-ab-v2 .ab-nophoto.ab-k-guide{background:linear-gradient(135deg,#f0b456 0%,#d98d25 45%,#0D5C63 140%)}
.phwo-ab-v2 .ab-fallback{position:absolute;inset:0;display:block;overflow:hidden}
.phwo-ab-v2 .ab-fallback::before{content:"";position:absolute;width:70%;aspect-ratio:1;right:-18%;top:-30%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 65%)}
.phwo-ab-v2 .ab-sky{position:absolute;left:0;right:0;bottom:0;width:100%;height:62%;color:rgba(255,255,255,.16)}
.phwo-ab-v2 .ab-book{left:auto;right:12px;top:12px;bottom:auto;width:38%;height:auto;color:rgba(255,255,255,.55)}
.phwo-ab-v2 .ab-flag{position:absolute;top:10px;right:10px;border-radius:3px;box-shadow:0 0 0 2px rgba(255,255,255,.85),0 2px 6px rgba(0,0,0,.25)}

/* ---------- next-step cards */
.phwo-ab-v2 .ab-next{padding:36px 0 96px;background:linear-gradient(180deg,var(--ab-mist),#eef4f4)}
.phwo-ab-v2 .ab-next h2{margin:0 0 18px;font-size:clamp(22px,3.2vw,30px);text-wrap:balance}
.phwo-ab-v2 .ab-next-cards{grid-template-columns:1fr;gap:12px}
.phwo-ab-v2 .ab-next-cards a{position:relative;display:grid;grid-template-columns:48px 1fr 22px;grid-template-areas:"ic t ar" "ic s ar";column-gap:14px;row-gap:2px;align-items:center;padding:16px;border:1px solid var(--ab-line);border-radius:16px;background:#fff;box-shadow:var(--ab-sh);color:var(--ab-ink);transition:transform .2s,box-shadow .2s,border-color .2s}
.phwo-ab-v2 .ab-next-cards a:hover{transform:translateY(-4px);box-shadow:var(--ab-sh2);border-color:rgba(13,92,99,.45)}
.phwo-ab-v2 .ab-next-cards a:focus-visible{outline:3px solid var(--ab-gold);outline-offset:3px}
.phwo-ab-v2 .ab-next-cards .ab-ic{grid-area:ic;align-self:start;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:rgba(13,92,99,.1);color:var(--ab-teal)}
.phwo-ab-v2 .ab-next-cards strong{grid-area:t;font-size:17px;color:var(--ab-teal)}
.phwo-ab-v2 .ab-next-cards strong+span{grid-area:s;font-size:14px;line-height:1.45;color:#4a5a5f}
.phwo-ab-v2 .ab-next-cards .ab-arrow{grid-area:ar;color:var(--ab-teal);transition:transform .2s}
.phwo-ab-v2 .ab-next-cards a:hover .ab-arrow{transform:translateX(4px)}
.phwo-ab-v2 .ab-next-cards a.is-primary{background:linear-gradient(150deg,#fff8ec,#fff 70%);border:1.5px solid var(--ab-gold);box-shadow:0 10px 28px rgba(232,163,61,.22)}
.phwo-ab-v2 .ab-next-cards a.is-primary .ab-ic{background:var(--ab-gold);color:#2c1d05}
.phwo-ab-v2 .ab-next-cards a.is-primary strong{color:#7a4a05}
.phwo-ab-v2 .ab-next-cards a.is-primary .ab-arrow{color:#b8740f}

@media (prefers-reduced-motion:reduce){.phwo-ab-v2 *{transition:none!important}}

/* ---------- 768+ */
@media (min-width:768px){
	.phwo-ab-v2 .ab-hero{padding:36px 0 44px}
	.phwo-ab-v2 .phwo-lc-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
	.phwo-ab-v2 .ab-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}
	.phwo-ab-v2 .ab-next-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
	.phwo-ab-v2 .ab-checks{padding:26px 28px}
}
/* ---------- 1024+ */
@media (min-width:1024px){
	.phwo-ab-v2 .ab-hero{padding:44px 0 56px}
	.phwo-ab-v2 .ab-hero-grid{grid-template-columns:minmax(0,1fr) 380px;gap:48px}
	.phwo-ab-v2 .ab-visual{display:block}
	.phwo-ab-v2 .phwo-lc-body{grid-template-columns:minmax(0,1fr) 320px;gap:48px;padding-top:40px}
	.phwo-ab-v2 .phwo-lc-side{position:sticky;top:96px;align-self:start}
	.phwo-ab-v2 .phwo-lc-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
	.phwo-ab-v2 .ab-steps-band{padding:40px 0 12px}
	.phwo-ab-v2 .ab-stepper{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
	.phwo-ab-v2 .ab-stepper li{padding:58px 18px 18px;font-size:14.5px}
	.phwo-ab-v2 .ab-stepper li::before{left:18px;top:16px}
	.phwo-ab-v2 .ab-stepper li:not(:last-child)::after{content:"";position:absolute;top:32px;left:62px;right:-16px;height:2px;background:repeating-linear-gradient(90deg,rgba(13,92,99,.3) 0 6px,transparent 6px 11px)}
	.phwo-ab-v2 .ab-next-cards{grid-template-columns:repeat(6,minmax(0,1fr))}
	.phwo-ab-v2 .ab-next-cards a{grid-column:span 2;grid-template-columns:1fr 22px;grid-template-areas:"ic ic" "t ar" "s s";grid-template-rows:auto auto 1fr;align-content:start;align-items:start;row-gap:6px;padding:20px}
	.phwo-ab-v2 .ab-next-cards .ab-arrow{align-self:center}
	.phwo-ab-v2 .ab-next-cards a:nth-child(-n+2){grid-column:span 3}
	.phwo-ab-v2 .ab-next-cards .ab-ic{margin-bottom:6px}
	.phwo-ab-v2 .ab-next{padding:48px 0 72px}
}
/* ---------- 1280+ */
@media (min-width:1280px){
	.phwo-ab-v2 .ab-hero-grid{grid-template-columns:minmax(0,1fr) 400px;gap:64px}
	.phwo-ab-v2 .phwo-lc-body{grid-template-columns:minmax(0,1fr) 340px;gap:64px}
}
@media (max-width:1023px){.phwo-ab-v2 .phwo-lc-body{grid-template-columns:1fr}}
