/* cmlocals site.css. One stylesheet for every page.
   Layer "base": structure consolidated from the old per-page styles.
   Layer "skin": the design system (type, cards, widths, motion). Skin wins.
   Each page keeps only its own colour tokens inline. */
@layer base, skin;
:root{--c-body:#111827;--c-border:#E5E7EB;--c-dark:#0D1117;--c-dark-2:#141922;--c-muted:#4B5563;--c-off-white:#F8F7FF;--c-primary:#4F46E5;--c-wa:#25D366;--c-wa-h:#1aaa55;--c-white:#FFFFFF}
@layer base{
*{box-sizing:border-box;margin:0;padding:0}
*::before{box-sizing:border-box;margin:0;padding:0}
*::after{box-sizing:border-box;margin:0;padding:0}
[id]{scroll-margin-top:90px}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:0.9rem;line-height:1.65;color:var(--c-body);background:var(--c-white);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
ul{list-style:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
h1{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
h2{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
h3{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
h4{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
h5{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
h6{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.btn-outline{background:transparent;color:var(--c-primary);border-color:var(--c-primary)}
.btn-outline:hover{background:var(--c-primary);color:var(--c-white)}
.container{width:100%;max-width:var(--max-w);margin-inline:auto;padding-inline:var(--edge)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.text-muted{color:var(--c-muted)}
.btn{display:inline-flex;align-items:center;gap:.5em;padding:.65em 1.4em;font-family:var(--font-body);font-size:.9rem;font-weight:600;line-height:1.3;text-decoration:none;border:1.5px solid transparent;transition:background .18s, box-shadow .18s, border-color .18s, transform .12s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-dark{background:rgb(20,25,34);color:var(--c-white);border-color:rgb(20,25,34)}
.btn-primary{background:var(--c-primary);color:var(--c-white);border-color:var(--c-primary)}
.btn-dark:hover{background:#141110;border-color:#141110}
.btn-outline-light{background:transparent;color:var(--c-white);border-color:rgba(255,255,255,.35)}
.btn-primary:hover{background:var(--c-primary-h);border-color:var(--c-primary-h)}
.btn-outline-light:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.6)}
.btn-wa{background:var(--c-wa);color:var(--c-white);border-color:var(--c-wa)}
.btn-fb{background:var(--c-fb);color:var(--c-white);border-color:var(--c-fb)}
.btn-wa:hover{background:#125f2d;border-color:#125f2d}
.btn-fb:hover{background:var(--c-fb-h);border-color:var(--c-fb-h)}
.btn-lg{padding:.8em 1.75em;font-size:1rem}
.search-box{max-width:600px;margin:2rem auto;padding:0}
.search-box input{width:100%;padding:1rem;font-size:1rem;border:2px solid var(--c-border);font-family:var(--font-body)}
.label-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-primary);background:var(--c-subtle);padding:.2em .75em;margin-bottom:.9rem}
.btn-sm{padding:.45em 1em;font-size:.82rem}
.resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}
.search-box input:focus{outline:none;border-color:var(--c-primary)}
.label-tag--light{color:rgba(255,255,255,.9);background:rgba(255,255,255,.12)}
.resource-card{border:1px solid var(--c-border);padding:1.5rem;background:var(--c-off-white);transition:box-shadow 0.2s}
.category-filter{display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:center;margin:2rem 0}
.site-header{background:white;border-bottom:1px solid rgba(0,0,0,.1);position:sticky;top:0;z-index:1000}
.header-inner{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 1.5rem;height:70px}
.btn-ghost{background:transparent;color:var(--c-muted);border-color:transparent;padding-inline:.6em}
.header-logo{text-decoration:none;display:flex;align-items:center}
.btn-ghost:hover{color:#7f0652;background:var(--c-subtle);transform:none}
.resource-card h3{margin-top:0;color:var(--c-dark);font-size:1.1rem}
.header-logo img{height:40px;width:auto;display:block}
.header-logo-mark{display:none}
.resource-card p{margin-bottom:1rem;font-size:0.9rem}
.header-logo-text{display:none}
.primary-nav{display:flex;gap:2.4rem;flex-wrap:nowrap;flex:1;justify-content:center;align-items:center}
#glossary-container{display:block;width:100%;max-width:var(--article-w);margin:0 auto;padding:0 var(--edge)}
.resource-card a{display:inline-block;padding:0.5rem 1rem;background:var(--c-primary);color:white;margin-top:0.5rem;font-weight:600}
.primary-nav a{position:relative;color:#111827;text-decoration:none;font-size:0.85rem;font-weight:600;padding:0;transition:all 0.2s ease;display:flex;align-items:center;line-height:1}
.glossary-section{margin-bottom:3rem}
.primary-nav a:hover{color:var(--c-primary, #4F46E5)}
.resource-card a:hover{text-decoration:none;opacity:0.9}
.header-ctas{display:flex;align-items:center;gap:0.6rem;flex-shrink:0}
.glossary-section-title{font-size:1.3rem;color:var(--c-dark);margin:2rem 0 1.5rem 0;padding-left:1rem;border-left:4px solid var(--c-primary)}
.header-hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;gap:5px;cursor:pointer;background:transparent}
.header-ctas .btn-wa{padding:0.4rem 0.9rem;font-size:0.9rem}
.header-hamburger span{display:block;width:22px;height:2px;background:#0D1117;transition:transform .25s, opacity .25s}
.glossary-term{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--c-border)}
.article-wrap{width:100%;max-width:var(--article-w);margin-inline:auto;padding-inline:var(--edge)}
.header-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.header-fb-link{display:none}
.glossary-term:last-child{border-bottom:none}
.header-hamburger.open span:nth-child(2){opacity:0}
.header-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.term-title{font-size:1.1rem;font-weight:800;color:var(--c-dark);margin-bottom:0.5rem;font-family:var(--font-display);text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.term-definition{color:var(--c-body);margin-bottom:0.75rem;line-height:1.6}
.mobile-nav{display:none;position:fixed;inset:64px 0 0 0;z-index:99;background:#FFFFFF;overflow-y:auto;padding:1.5rem clamp(1.25rem, 4vw, 2.5rem) 3rem;border-top:1px solid #E5E7EB}
.mobile-nav.open{display:block !important}
.term-links{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:0.75rem}
.mobile-nav a{display:block;padding:.9rem 0;font-size:0.9rem;font-weight:500;color:#0D1117;text-decoration:none;border-bottom:1px solid #E5E7EB}
.mobile-nav a:last-of-type{border-bottom:none}
.term-link{display:inline-block;padding:0.4rem 0.8rem;background:var(--c-off-white);border:1px solid var(--c-border);font-size:0.85rem;color:var(--c-primary);transition:all 0.2s}
.mobile-nav a:hover{color:var(--c-primary, #4F46E5)}
.term-link:hover{background:var(--c-primary);color:white;text-decoration:none;border-color:var(--c-primary)}
.mobile-nav-ctas{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}
.mobile-nav-ctas .btn{justify-content:center}
.no-results{text-align:center;padding:2rem;color:#999;font-style:italic}
.alert-primary{background:rgba(79,70,229,0.12);border-left-color:var(--c-primary)}
.nav-item{position:relative;display:inline-flex;align-items:center}
.nav-item > a.nav-link{position:relative;color:#111827;text-decoration:none;font-size:1.2rem;font-weight:500;padding:0 0.85rem;transition:all 0.2s ease;display:inline-flex;align-items:center;height:70px;line-height:1}
.alert-warm{background:rgba(245,158,11,0.12);border-left-color:#F59E0B}
.nav-item > a.nav-link:hover{text-decoration:underline;text-decoration-color:var(--c-primary, #4F46E5);text-underline-offset:4px;color:var(--c-primary, #4F46E5)}
.nav-item > a.nav-link.has-dropdown{cursor:pointer}
.dropdown-menu{position:absolute;top:100%;left:0;background:white;border:1px solid rgba(0,0,0,.1);padding:1.75rem 2rem;width:350px;display:none;opacity:0;pointer-events:none;transition:opacity 0.15s ease-out;margin-top:0;z-index:101}
.dropdown-menu[style*="display: block"]{display:grid !important;grid-template-columns:1fr 1fr !important;gap:2rem}
.hero{background:var(--c-dark);overflow:hidden;position:relative;padding-top:100px;padding-bottom:0;min-height:600px}
.hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 80% 60% at 75% 30%,rgba(79,70,229,.22) 0%,transparent 70%),radial-gradient(ellipse 50% 50% at 20% 80%,rgba(124,58,237,.14) 0%,transparent 65%)}
.mega-menu{display:grid !important;grid-template-columns:1fr 1fr !important}
.hero::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.025'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;position:relative;z-index:1}
.mega-menu:has( > .dropdown-section:nth-child(2)){width:600px !important}
.hero-content{padding-bottom:clamp(4rem,8vw,7rem)}
.dropdown-section{display:flex;flex-direction:column;gap:0.5rem;margin-bottom:0.5rem;flex:1;min-width:200px}
.hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:0.9rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.90);margin-bottom:1.5rem}
.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.alert-primary strong{color:var(--c-primary)}
.hero-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--c-primary);animation:pulse-dot 2.5s ease-in-out infinite;will-change:transform,opacity}
.dropdown-section:last-child{margin-bottom:0}
.alert-warm strong{color:#D97706}
.hero h1{font-family:var(--font-display);font-size:clamp(2.88rem,6vw,4.56rem);font-weight:800;line-height:1.1;color:var(--c-white);letter-spacing:-0.02em;margin-bottom:1.4rem;text-transform:uppercase;font-style:normal}
.filter-btn{padding:0.5rem 1rem;border:2px solid var(--c-border);background:white;cursor:pointer;font-family:var(--font-body);font-size:0.9rem;transition:all 0.2s;color:var(--c-body)}
.dropdown-section h3{font-size:0.9rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--c-primary, #4F46E5);font-weight:600;margin:0 0 0.5rem 0;padding:0;border:none}
.hero h1 .subtitle{font-size:1.4rem;display:block}
.hero h1 em{font-style:italic;font-weight:300;color:rgba(255,255,255,.88)}
.dropdown-section ul{list-style:none;padding:0;margin:0}
.filter-btn.active{background:var(--c-primary);color:white;border-color:var(--c-primary)}
.hero-sub{font-size:clamp(1.1rem,1.6vw,1.1rem);color:rgba(255,255,255,.88);max-width:520px;line-height:1.65;contain:layout paint;margin-bottom:2.25rem}
.filter-btn:hover{border-color:var(--c-primary);color:var(--c-primary)}
.dropdown-section li a{color:#374151;text-decoration:none;font-size:0.9rem;line-height:1.6;transition:color 0.2s;display:block;padding:0.1rem 0}
.hero-ctas{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:0.5rem}
.hero-trust{font-size:0.9rem;color:rgba(255,255,255,.85);margin-top:1.25rem}
.mobile-menu-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;gap:4px;padding:0.5rem}
.dropdown-section li a:hover{color:var(--c-primary, #4F46E5)}
.hero-link{font-size:0.9rem;color:rgba(255,255,255,.80);text-decoration:none;transition:color .18s}
.cta-section h3{color:white}
.hero-link:hover{color:rgba(255,255,255,.95)}
.mobile-menu-toggle span{width:24px;height:2px;background:#111827;transition:all 0.3s}
.hero-link svg{display:inline;vertical-align:middle;margin-left:.2em}
.mobile-menu-toggle.active span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.hero-visuals-stack{display:flex;flex-direction:column;gap:2rem}
.hero-visual{position:relative}
.mobile-menu-toggle.active span:nth-child(2){opacity:0}
.hero-visual-frame{position:relative;overflow:hidden;background:linear-gradient(135deg,#1a2035 0%,#0d1520 50%,#150d2a 100%);border:1px solid var(--c-border-dark);padding:1.25rem;min-height:180px;display:flex;align-items:center;justify-content:center}
.hero-visual:first-child .hero-visual-frame{background:linear-gradient(135deg,#313649 0%,#252c36 50%,#2c2540 100%);padding:0.3rem;min-height:45px}
.mobile-menu-toggle.active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.hero-img-placeholder{display:none}
.hero-skyline{width:100%;opacity:.35;position:absolute;bottom:60px;left:0;right:0}
.article-body ul li a:hover{text-decoration-color:var(--c-primary)}
.hero-floating-cards{position:relative;z-index:2;width:100%;display:flex;flex-direction:column;gap:.6rem}
.nav-accordion{border-bottom:1px solid var(--c-border);cursor:pointer;margin:0}
.hero-stat-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:.78rem 1.08rem;display:flex;align-items:center;gap:.84rem}
.hero-stat-card--accent{background:rgba(79,70,229,.2);border-color:rgba(79,70,229,.35)}
.alert-box{border-left:4px solid;padding:1.5rem;margin:2rem 0}
.mobile-menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hero-stat-icon{width:34px;height:34px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0}
.hero-stat-icon--primary{background:var(--c-primary)}
.hero-stat-body{flex:1}
.mobile-menu-toggle.open span:nth-child(2){opacity:0}
.hero-stat-val{font-size:0.9rem;font-weight:700;color:var(--c-white);line-height:1.2}
.hero-stat-desc{font-size:0.9rem;color:rgba(255,255,255,.7);margin-top:.2rem}
.trust-ribbon{background:rgba(255,255,255,.04);border-top:1px solid rgba(255,255,255,.08);position:relative;z-index:1;margin-top:0}
.mobile-menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.trust-ribbon-inner{display:flex;flex-wrap:wrap;gap:.5rem 2.5rem;align-items:center;justify-content:center;padding:1.1rem 0}
.hub-hero{background:var(--c-dark);overflow:hidden;position:relative;padding-block:clamp(4rem, 7vw, 6.5rem)}
.trust-item{display:flex;align-items:center;gap:.45rem;font-size:0.9rem;color:rgba(255,255,255,.85)}
.article-layout{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start;padding-block:var(--section-py)}
.trust-item-dot{width:5px;height:5px;border-radius:50%;background:var(--c-primary);flex-shrink:0}
.hub-hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 90% at 100% 20%, rgba(255,255,255,.05) 0%, transparent 65%), radial-gradient(ellipse 55% 70% at 0% 100%, rgba(124,58,237,.16) 0%, transparent 65%)}
.nav-mobile{position:fixed;inset:64px 0 0 0;background:var(--c-white);border-bottom:1px solid var(--c-border);flex-direction:column;max-height:calc(100vh - 4rem);overflow-y:auto;z-index:99}
.hub-hero-inner{position:relative;z-index:1;max-width:var(--article-w);padding-inline:var(--edge);margin-inline:auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.paths{background:var(--c-white);padding-block:var(--section-py)}
.nav-accordion li{border-bottom:1px solid rgba(0,0,0,0.05);margin:0}
.article-sidebar{position:sticky;top:74px}
.hub-hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.75);margin-bottom:1.25rem}
.page-hero-meta{font-size:.82rem;color:rgba(255,255,255,.55);display:flex;gap:1.5rem;flex-wrap:wrap}
.nav-accordion li a{display:block;padding:0.75rem 1rem 0.75rem 2rem;color:var(--c-body);text-decoration:none;font-size:0.9rem}
.hub-hero h1{font-family:var(--font-display);font-size:clamp(2.2rem, 4.5vw, 3.5rem);font-weight:800;line-height:1.12;color:var(--c-white);letter-spacing:-0.02em;margin-bottom:1.25rem;text-transform:uppercase;font-style:normal}
.article-body h2:first-child{margin-top:0;border-top:none}
.hub-hero h1 em{font-style:italic;font-weight:300;color:rgba(255,255,255,.82)}
.page-hero h1 em{font-style:italic;font-weight:300;color:rgba(255,255,255,.82)}
.nav-accordion summary{padding:1rem;font-weight:600;color:var(--c-dark);list-style:none;display:flex;justify-content:space-between;align-items:center;user-select:none;font-size:0.9rem}
.hub-hero-lead{font-size:clamp(.95rem, 1.5vw, 1.1rem);color:rgba(255,255,255,.82);line-height:1.75;max-width:54ch;margin-bottom:2rem}
.info-strip p a{color:var(--c-primary)}
.hub-hero-ctas{display:flex;gap:.75rem;flex-wrap:nowrap;align-items:center}
.page-hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 65% 80% at 90% 30%, rgba(255,255,255,.12) 0%, transparent 65%), radial-gradient(ellipse 50% 70% at 0% 90%, rgba(124,58,237,.24) 0%, transparent 65%), radial-gradient(ellipse 80% 60% at 50% 50%, rgba(99,102,241,.08) 0%, transparent 70%)}
.page-hero-sub{font-size:clamp(.95rem,1.5vw,1.08rem);color:rgba(255,255,255,.85);max-width:580px;line-height:1.7;margin-bottom:2rem}
.paths-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.article-body p a{color:var(--c-primary);text-decoration:underline;text-decoration-color:rgba(79,70,229,.3);text-underline-offset:2px;transition:text-decoration-color .15s}
.nav-accordion summary::-webkit-details-marker{display:none}
.why-band{background:var(--c-off-white);border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);padding-block:clamp(2rem, 3.5vw, 3rem)}
.hub-hero-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.article-body p a:hover{text-decoration-color:var(--c-primary)}
.page-hero-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.75);margin-bottom:1.25rem}
.why-band-inner{max-width:1090px;padding-inline:var(--edge);margin-inline:auto}
.stat-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:1.25rem 1.5rem}
.mobile-nav-section{margin-bottom:1.5rem}
.path-card:hover{border-color:transparent;transform:translateY(-3px)}
.nav-accordion summary::after{content:'▼';font-size:0.9rem;transition:transform 0.3s;color:var(--c-primary)}
.why-band h2{font-family:var(--font-display);font-size:clamp(1.3rem, 2vw, 1.65rem);font-weight:800;color:#202A6C;letter-spacing:-0.02em;margin-bottom:1.25rem;text-transform:uppercase;font-style:normal}
.path-card:hover::before{opacity:1}
.stat-card__value{font-family:var(--font-display);font-size:1.65rem;font-weight:800;color:var(--c-white);letter-spacing:-0.02em;margin-bottom:.2rem;text-transform:uppercase;font-style:normal}
.mobile-nav-section-title{font-size:0.9rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);padding:.5rem 0 .75rem 0;border-bottom:1px solid var(--c-border)}
.path-card__icon-wrap{width:48px;height:48px;background:var(--c-subtle);margin-bottom:1.25rem;display:flex;align-items:center;justify-content:center;font-size:1.0rem;transition:background .2s}
.why-items{display:flex;flex-direction:column;gap:.85rem}
.page-hero{background:linear-gradient(135deg, #202A6C 0%, #2D3A8C 100%);overflow:hidden;position:relative;padding-block:clamp(5rem, 9vw, 7.5rem);min-height:600px;display:flex;align-items:center}
.stat-card__label{font-size:.78rem;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.nav-accordion[open] summary::after{transform:rotate(180deg)}
.path-card:hover .path-card__icon-wrap{background:var(--c-violet-l)}
.mobile-nav-section a{display:block;padding:.75rem 0;font-size:0.9rem;font-weight:400;color:var(--c-dark);text-decoration:none;transition:color .15s}
.article-body ul li a{color:var(--c-primary);text-decoration:underline;text-decoration-color:rgba(79,70,229,.3);text-underline-offset:2px}
.page-hero-ctas{display:flex;flex-wrap:wrap;gap:.75rem}
.why-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;background:var(--c-white);border:1px solid var(--c-border)}
.path-card__title{font-size:1.3rem;font-weight:400;color:var(--c-dark);margin-bottom:.5rem;letter-spacing:-.01em}
.workspace-card{border:1px solid var(--c-border);border-left:4px solid var(--c-page-accent);padding:1.4rem 1.5rem;margin:1.5rem 0;background:var(--c-white)}
.cta-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75em 1.5em;background:#7f0652;color:white;border:none;cursor:pointer;font-family:var(--font-body);font-size:.9rem;font-weight:600;text-decoration:none;transition:background .18s, transform .18s;margin-top:1rem}
.mobile-nav-section a:hover{color:var(--c-primary)}
.why-item__icon{font-size:0.9rem;flex-shrink:0;margin-top:.1rem}
.article-body ol{margin-bottom:1rem;padding-left:1.4rem;list-style:decimal}
.path-card__desc{font-size:0.9rem;color:#5A6B7A;line-height:1.65;margin-bottom:1.5rem;flex:1}
.nav-accordion ul{list-style:none;padding:0;margin:0;background:rgba(79,70,229,0.02)}
.workspace-card h3{font-family:var(--font-display);font-size:1.0rem;font-weight:800;letter-spacing:-0.02em;color:#101585;margin-top:0;margin-bottom:.3rem;text-transform:uppercase;font-style:normal}
.path-card__list{margin-bottom:1.6rem;display:flex;flex-direction:column;gap:.4rem}
.why-item__title{font-weight:700;font-size:.95rem;color:#202A6C;margin-bottom:.25rem}
.cta-btn:hover{background:var(--c-dark-2);color:white;transform:translateY(-2px)}
.article-body ol li{margin-bottom:.45rem;color:var(--c-body);line-height:1.7}
.workspace-card .wc-meta{font-size:.78rem;color:var(--c-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.85rem}
.path-card__list li{font-size:0.9rem;color:#2D3E4F;display:flex;align-items:baseline;gap:.5rem}
.tool-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.why-item__desc{font-size:.88rem;color:var(--c-body);line-height:1.6}
.path-card__list li::before{content:'';width:5px;height:5px;border-radius:50%;flex-shrink:0;background:var(--c-primary);margin-top:.05em}
.article-body{padding-block:clamp(2.5rem, 4vw, 4rem)}
.section--dark{background:var(--c-dark-2);position:relative;overflow:hidden}
.workspace-card p{margin-bottom:.8rem;font-size:.95rem;line-height:1.7}
.neighbourhood-card{border:1px solid var(--c-border);border-left:4px solid var(--c-page-accent);padding:1.5rem;margin:2rem 0;background:var(--c-white)}
.path-card__list li a{color:var(--c-primary);text-decoration:none}
.page-hero h1{font-family:var(--font-display);font-size:clamp(2rem, 4.5vw, 3.2rem);font-weight:800;line-height:1.15;color:var(--c-white);letter-spacing:-0.02em;margin-bottom:1.25rem;text-transform:uppercase;font-style:normal}
.dropdown-section ul li{margin-bottom:.45rem}
.section--dark::before{content:'';position:absolute;right:-10%;top:-30%;width:60%;height:160%;background:radial-gradient(ellipse,rgba(79,70,229,.15) 0%,transparent 65%);pointer-events:none}
.workspace-card p:last-child{margin-bottom:0}
.path-card__list li a:hover{text-decoration:underline}
.neighbourhood-card h3{font-family:var(--font-display);font-size:0.9rem;font-weight:800;letter-spacing:-0.02em;color:#101585;margin-top:0;margin-bottom:.75rem;text-transform:uppercase;font-style:normal}
.tool-card::after{content:'';position:absolute;top:0;left:0;right:0;z-index:1;background:linear-gradient(90deg,var(--c-primary),var(--c-violet));opacity:0;transition:opacity .2s}
.article-body h2{font-family:var(--font-display);font-size:clamp(1.45rem,2.5vw,1.9rem);font-weight:800;line-height:1.2;color:var(--c-dark);letter-spacing:-0.02em;margin-top:2.75rem;margin-bottom:.9rem;padding-top:.25rem;border-top:2px solid var(--c-border);text-transform:uppercase;font-style:normal}
@keyframes pulse-dot{0%, 100% { box-shadow: 0 0 8px var(--c-primary); } 50% { box-shadow: 0 0 16px var(--c-primary), 0 0 24px rgba(79, 70, 229, 0.4); }}
.visa-finder{background:var(--c-subtle);border:1px solid var(--c-border);padding:2rem;margin-bottom:2rem}
.section-inner{position:relative;z-index:1}
.page-hero-lead{font-size:clamp(.95rem, 1.5vw, 1.1rem);color:rgba(255,255,255,.82);line-height:1.75;max-width:62ch;margin-bottom:2rem}
.hub-intro{padding-block:clamp(2.5rem, 4vw, 4rem);background:var(--c-white)}
.page-hero-inner{position:relative;z-index:1;max-width:var(--article-w);padding-inline:var(--edge);margin-inline:auto}
.neighbourhood-card .nc-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.8rem;color:var(--c-muted);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--c-border)}
.path-card__cta:hover{gap:.6em}
.cost-table th:not(:first-child){text-align:right}
.filter-group{margin-bottom:2rem}
.hub-intro-inner{max-width:var(--article-w);padding-inline:var(--edge);margin-inline:auto}
.dropdown-section ul li a{font-size:0.9rem;color:var(--c-body);text-decoration:none;transition:color .15s}
.neighbourhood-card .nc-meta span strong{color:var(--c-dark);font-weight:600}
.path-card[style*="rgba(255,255,255,.05)"] .path-card__cta{color:var(--c-white)}
.tool-card:hover::after{opacity:1}
.transport-card{border-left:4px solid var(--c-page-accent);background:var(--c-off-white);padding:1.25rem 1.5rem;margin:1.75rem 0;max-width:680px}
.article-body h3{font-family:var(--font-display);font-size:1.15rem;font-weight:800;color:var(--c-dark);margin-top:1.75rem;margin-bottom:.6rem;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.data-table tr:hover td{background:var(--c-off-white)}
.filter-group h3{margin-top:0;margin-bottom:1rem;font-size:0.9rem;color:var(--c-body)}
.section-sub{font-size:0.9rem;color:#5A6B7A;max-width:600px;line-height:1.65}
.path-card__disclaimer{font-size:0.9rem;color:#5A6B7A;line-height:1.5;margin-bottom:1.2rem;padding:.75rem;background:var(--c-subtle);border-left:3px solid var(--c-primary)}
.hub-intro-text{max-width:720px}
.neighbourhood-card p{margin-bottom:.9rem;font-size:.95rem}
.data-table{width:100%;border-collapse:collapse;margin:1.25rem 0 1.5rem;font-size:.9rem}
.transport-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.6rem}
.provider-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin:1.5rem 0;max-width:640px}
.activity-card{border:1px solid var(--c-border);border-left:4px solid var(--c-page-accent);padding:1.4rem 1.5rem;margin:1.5rem 0;background:var(--c-white)}
.cost-table td:not(:first-child){text-align:right;font-weight:600;color:#111827}
.article-body p{margin-bottom:1.25rem;line-height:1.75;color:var(--c-body);max-width:68ch}
.section-title em{font-style:italic;font-weight:300;color:#6B7A8A}
.page-hero-badge{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.2em .85em}
.filter-buttons{display:flex;flex-wrap:wrap;gap:1rem}
.neighbourhood-card p:last-child{margin-bottom:0}
.callout-dark{background:var(--c-dark);padding:1.5rem;margin:2rem 0;max-width:68ch}
.hub-intro-text .section-title{font-family:var(--font-display);font-size:clamp(1.5rem, 2.5vw, 2rem);font-weight:800;letter-spacing:-0.02em;color:#101585;margin-bottom:1.1rem;text-transform:uppercase;font-style:normal}
.data-table th{text-align:left;font-weight:600;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--c-muted);background:var(--c-off-white);padding:.65rem 1rem;border-bottom:2px solid var(--c-border)}
.transport-card__icon{font-size:1.0rem}
.provider-card{border:1px solid var(--c-border);padding:1.25rem 1.4rem;background:var(--c-off-white)}
.dropdown-section ul li a:hover{color:var(--c-primary)}
.activity-card h3{font-family:var(--font-display);font-size:1.0rem;font-weight:800;letter-spacing:-0.02em;color:#101585;margin-top:0;margin-bottom:.3rem;text-transform:uppercase;font-style:normal}
.warning-strip{background:#FFF7ED;border-left:4px solid #F97316;padding:1.25rem 1.75rem;margin:1.5rem 0}
.callout-dark p{margin:0;color:rgba(255,255,255,.80);font-size:.95rem;line-height:1.65}
.hub-intro-text p{font-size:1rem;line-height:1.75;color:var(--c-body);margin-bottom:1.1rem;max-width:68ch}
.data-table td{padding:.65rem 1rem;border-bottom:1px solid var(--c-border);vertical-align:top;line-height:1.55}
.transport-card__title{font-weight:700;font-size:1rem;color:#101585}
.provider-card__name{font-weight:700;font-size:1rem;color:#101585;margin-bottom:.3rem}
.page-hero-badge--alert{background:rgba(220,38,38,.25);color:#FCA5A5;border:1px solid rgba(220,38,38,.4)}
.article-body ul{list-style:none;margin:1rem 0 1.5rem 0;display:flex;flex-direction:column;gap:.6rem}
.cost-table tr.total td:not(:first-child){color:var(--c-page-accent)}
.activity-card .ac-meta{font-size:.78rem;color:var(--c-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.85rem}
.warning-strip p{color:#431407;font-size:.95rem;margin-bottom:0}
.callout-dark strong{color:var(--c-white)}
.article-body figure{margin:2rem 0}
.articles-section{background:var(--c-off-white);padding-block:clamp(2.5rem, 4vw, 4rem)}
.transport-card__meta{font-size:.78rem;color:var(--c-muted);margin-top:.1rem}
.provider-card__tag{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-page-accent);background:var(--c-page-accent-l);padding:.15em .6em;margin-bottom:.75rem}
.tool-card__desc{font-size:.875rem;color:#5A6B7A;line-height:1.65;margin-bottom:1.5rem;flex:1}
.data-table tr:last-child td{border-bottom:none}
.cost-table tr.section-header td{background:var(--c-page-accent-l);color:#101585;font-weight:700;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;padding:.5rem .8rem}
.activity-card p{margin-bottom:.8rem;font-size:.95rem;line-height:1.7}
.article-body ul li{padding-left:1.25rem;position:relative;line-height:1.65;color:var(--c-body)}
.article-body h2:first-of-type{border-top:none;padding-top:0;margin-top:0}
.page-hero-badge--pending{background:rgba(253,186,116,.15);color:#FCD34D;border:1px solid rgba(253,186,116,.3)}
.section-title--light{color:var(--c-white)}
.transport-card p{font-size:.9rem;line-height:1.65;color:var(--c-body);margin:0}
.provider-card p{font-size:.87rem;line-height:1.6;color:var(--c-body);margin:0}
.articles-section-inner{max-width:1090px;padding-inline:var(--edge);margin-inline:auto}
.summary-cards{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.25rem;margin:2rem 0}
.req-card{border-left:4px solid var(--c-page-accent);background:var(--c-off-white);padding:1.25rem 1.5rem;margin:1.75rem 0;max-width:680px}
.breadcrumb{background:var(--c-off-white);border-bottom:1px solid var(--c-border);padding:.65rem 0}
.activity-card p:last-child{margin-bottom:0}
.article-body figure img{width:100%;height:auto;display:block}
.visa-results{display:none;margin-top:2rem}
.bank-cards{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0;max-width:640px}
.articles-header{margin-bottom:2.5rem}
.tool-card__cta:hover{gap:.6em}
.summary-card{border:1px solid var(--c-border);padding:1.5rem;background:var(--c-off-white);text-align:center}
.tz-table{width:100%;max-width:600px;border-collapse:collapse;font-size:.88rem;margin:1.5rem 0}
.req-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.6rem}
.breadcrumb-inner{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--c-muted);max-width:var(--article-w);padding-inline:var(--edge);margin-inline:auto}
.visa-results.show{display:block}
.bank-card{border-left:4px solid var(--c-page-accent);padding:1.1rem 1.4rem;background:var(--c-off-white)}
.section--off{background:var(--c-off-white)}
.checklist-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.summary-card__label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);margin-bottom:.5rem}
.article-body figcaption{font-size:.82rem;color:var(--c-muted);margin-top:.5rem}
.info-strip{background:var(--c-subtle);border-left:4px solid var(--c-primary);padding:1.25rem 1.75rem;margin:1.5rem 0}
.articles-header .section-title{font-family:var(--font-display);font-size:clamp(1.4rem, 2.5vw, 1.85rem);font-weight:800;letter-spacing:-0.02em;color:#101585;margin-bottom:.5rem;text-transform:uppercase;font-style:normal}
.section-sub--light{color:rgba(255,255,255,.85)}
.tz-table th{text-align:left;padding:.55rem .8rem;background:#101585;color:rgba(255,255,255,.95);font-weight:600;font-size:.76rem;letter-spacing:.04em;text-transform:uppercase}
.req-card__icon{font-size:1.0rem}
.visa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.sidebar-card + .sidebar-card{margin-top:1.25rem}
.culture-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:2.5rem 0}
.sidebar-stat{display:flex;justify-content:space-between;align-items:baseline;padding:.5rem 0;border-bottom:1px solid var(--c-border);font-size:.9rem}
.bank-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;flex-wrap:wrap;gap:.4rem}
.results-heading{font-size:0.9rem;margin-bottom:1.5rem;color:var(--c-body)}
.summary-card__amount{font-family:var(--font-display);font-size:1.85rem;font-weight:800;color:#101585;letter-spacing:-0.02em;margin-bottom:.25rem;text-transform:uppercase;font-style:normal}
.tz-table td{padding:.6rem .8rem;border-bottom:1px solid var(--c-border);color:var(--c-body)}
.info-strip p{color:var(--c-body);font-size:.95rem;margin-bottom:0}
.articles-header p{font-size:.9rem;color:var(--c-muted);max-width:52ch}
.req-card__title{font-weight:700;font-size:1rem;color:#202A6C}
.breadcrumb a{color:var(--c-muted);text-decoration:none}
.sidebar-card-title{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);margin-bottom:1rem}
.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.visa-category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.img-float-right{float:right;width:45%;margin:0 0 1.5rem 2rem}
.sidebar-stat:last-child{border-bottom:none}
.culture-card{background:var(--c-off-white);border:1px solid var(--c-border);padding:1.75rem;text-decoration:none;color:var(--c-body);transition:all .2s}
.bank-card__name{font-weight:700;font-size:1rem;color:#101585}
.visa-cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:1.5rem;margin-bottom:2rem}
.summary-card__sub{font-size:.8rem;color:var(--c-muted)}
.tz-table tr:last-child td{border-bottom:none}
.req-card__meta{font-size:.78rem;color:var(--c-muted);margin-top:.1rem}
.articles-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:2rem}
.checklist-card::after{content:'';position:absolute;top:0;left:0;right:0;z-index:1;background:linear-gradient(90deg,var(--c-primary),var(--c-violet));opacity:0;transition:opacity .2s}
.visa-card::after{content:'';position:absolute;top:0;left:0;right:0;z-index:1;background:linear-gradient(90deg,var(--c-primary),var(--c-violet));opacity:0;transition:opacity .2s}
.program-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.bank-card__difficulty{font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:.2em .7em}
.sidebar-stat-label{color:var(--c-muted)}
.summary-card--highlight{border-color:var(--c-page-accent);background:var(--c-page-accent-l)}
.tz-table td:first-child{font-weight:600;color:#101585}
.req-card p{font-size:.9rem;line-height:1.65;color:var(--c-body);margin:0}
.culture-card:hover{border-color:var(--c-page-accent);transform:translateY(-2px)}
.article-body ul li::before{content:'';position:absolute;left:0;top:.7em;width:5px;height:5px;border-radius:50%;background:var(--c-page-accent)}
.img-float-left{float:left;width:45%;margin:0 2rem 1.5rem 0}
.cost-table tr:last-child td:last-child{color:var(--c-page-accent)}
.topic-card::after{content:'';position:absolute;top:0;left:0;right:0;z-index:1;background:linear-gradient(90deg,var(--c-primary),var(--c-violet));opacity:0;transition:opacity .2s}
.visa-category-card::after{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--c-primary),var(--c-violet));opacity:0;transition:opacity .2s;z-index:1}
.bank-card__difficulty--easy{background:#D1FAE5;color:#065F46}
.sidebar-stat-value{font-weight:600;color:var(--c-dark);text-align:right}
.summary-card--highlight .summary-card__amount{color:var(--c-page-accent)}
.cost-table th:last-child{text-align:right}
.checklist-card:hover::after{opacity:1}
.visa-card:hover::after{opacity:1}
.cost-table{width:100%;max-width:640px;border-collapse:collapse;font-size:.9rem;margin:1.5rem 0}
.culture-card h3{margin:0 0 .6rem;font-size:1.1rem;color:#7f0652}
.bank-card__difficulty--moderate{background:#FEF3C7;color:#92400E}
.program-card::after{content:'';position:absolute;top:0;left:0;right:0;z-index:1;background:linear-gradient(90deg,var(--c-primary),var(--c-violet));opacity:0;transition:opacity .2s}
.visa-card h4{font-size:0.9rem;margin-bottom:0.5rem;color:var(--c-body);font-weight:500}
.service-ticker{background:#DC2626;overflow:hidden;white-space:nowrap;margin:1.5rem 0}
.article-card__category{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-page-accent);background:var(--c-page-accent-l);display:inline-block;padding:.25em .8em;margin-bottom:1.25rem;align-self:flex-start}
.breadcrumb a:hover{color:var(--c-primary)}
.cost-table th{text-align:left;padding:.6rem .8rem;background:#202A6C;color:rgba(255,255,255,.95);font-weight:600;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}
.checklist-card__icon{width:44px;height:44px;background:var(--c-subtle);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.2rem;transition:background .2s}
.visa-card__icon{width:44px;height:44px;background:var(--c-subtle);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.2rem;transition:background .2s}
.bank-card__difficulty--hard{background:#FEE2E2;color:#991B1B}
.topic-card:hover::after{opacity:1}
.visa-category-card:hover::after{opacity:1}
.breadcrumb-sep{color:var(--c-border)}
.culture-card p{font-size:.9rem;color:var(--c-muted);margin:0}
.visa-card .meta{font-size:0.9rem;color:var(--c-muted);margin-bottom:1rem}
.sidebar-links{display:flex;flex-direction:column;gap:.6rem}
.article-card__title{font-family:var(--font-display);font-size:1.15rem;font-weight:800;color:#101585;line-height:1.35;letter-spacing:-0.02em;margin-bottom:1rem;text-transform:uppercase;font-style:normal}
.bank-card p{font-size:.87rem;line-height:1.6;color:var(--c-body);margin:0}
.legal-hero{background:#0D1117;padding-block:clamp(6rem, 9vw, 9rem);position:relative;overflow:hidden}
.visa-card:hover .visa-card__icon{background:var(--c-violet-l)}
.checklist-card:hover .checklist-card__icon{background:var(--c-violet-l)}
.service-ticker-track{display:inline-flex;width:max-content;animation:service-ticker-scroll 26s linear infinite}
.program-card:hover::after{opacity:1}
.cost-table tr.total td{border-bottom:none;font-weight:700;background:var(--c-off-white)}
.topic-card__icon{width:44px;height:44px;background:var(--c-subtle);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.2rem;transition:background .2s}
.visa-category-card__icon{width:50px;height:50px;background:var(--c-subtle);display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:1.25rem;transition:background .2s}
.visa-card p{margin-bottom:1rem;font-size:0.95rem}
.sidebar-links a{font-size:.88rem;color:var(--c-primary);text-decoration:none;display:flex;align-items:center;gap:.4em;transition:gap .15s}
.cost-table td{padding:.65rem .8rem;border-bottom:1px solid var(--c-border);color:var(--c-body);vertical-align:top}
.culture-card-arrow{display:inline-block;margin-left:.3rem}
.article-card__desc{font-size:.9rem;line-height:1.7;color:var(--c-muted);margin-bottom:1.75rem;flex:1}
.visa-card__title{font-family:var(--font-display);font-size:1.25rem;font-weight:800;color:var(--c-dark);margin-bottom:.5rem;letter-spacing:-0.02em;text-transform:uppercase;font-style:normal}
.checklist-card__title{font-family:var(--font-display);font-size:1.25rem;font-weight:800;color:var(--c-dark);margin-bottom:.5rem;letter-spacing:-0.02em;text-transform:uppercase;font-style:normal}
.program-card__icon{width:44px;height:44px;background:var(--c-subtle);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:1.2rem;transition:background .2s}
.topic-card:hover .topic-card__icon{background:var(--c-violet-l)}
.visa-category-card:hover .visa-category-card__icon{background:var(--c-violet-l)}
.legal-hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 80% 60% at 75% 30%, rgba(79, 70, 229, 0.22) 0%, transparent 70%), radial-gradient(ellipse 50% 50% at 20% 80%, rgba(124, 58, 237, 0.14) 0%, transparent 65%)}
.visa-card a{display:inline-block;padding:0.6rem 1rem;background:var(--c-page-accent);color:var(--c-white);text-decoration:none;transition:all 0.2s}
.clearfix::after{content:'';display:table;clear:both}
.service-ticker-track span{display:inline-block;padding:.65rem 0;color:#fff;font-weight:700;font-size:.82rem;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}
.sidebar-links a:hover{gap:.65em}
.cost-table tr.total td:last-child{color:var(--c-page-accent)}
.visa-card__duration{font-size:.8rem;color:var(--c-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}
.cost-table td:last-child{text-align:right;font-weight:600;color:#202A6C}
.checklist-card__desc{font-size:.875rem;color:#5A6B7A;line-height:1.65;margin-bottom:1.5rem;flex:1}
.program-card:hover .program-card__icon{background:var(--c-violet-l)}
.topic-card__title{font-family:var(--font-display);font-size:1.25rem;font-weight:800;color:var(--c-dark);margin-bottom:.5rem;letter-spacing:-0.02em;text-transform:uppercase;font-style:normal}
.visa-category-card__title{font-family:var(--font-display);font-size:1.35rem;font-weight:800;color:var(--c-dark);margin-bottom:.6rem;letter-spacing:-0.02em;text-transform:uppercase;font-style:normal}
.visa-card a:hover{background:var(--c-primary-h);color:var(--c-white);text-decoration:none}
.legal-hero::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.025'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.article-card__link::after{content:'\2192';transition:transform .2s}
@keyframes service-ticker-scroll{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
.visa-card__desc{font-size:.875rem;color:#5A6B7A;line-height:1.65;margin-bottom:1.5rem;flex:1}
.faq-item:first-child{border-top:1px solid var(--c-border)}
.program-card__title{font-family:var(--font-display);font-size:1.25rem;font-weight:800;color:var(--c-dark);margin-bottom:.5rem;letter-spacing:-0.02em;text-transform:uppercase;font-style:normal}
.topic-card__desc{font-size:.875rem;color:#5A6B7A;line-height:1.65;margin-bottom:1.5rem;flex:1}
.visa-category-card__meta{font-size:.82rem;color:var(--c-muted);font-weight:500;margin-bottom:1rem}
.article-card:hover .article-card__link::after{transform:translateX(4px)}
.legal-hero-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding-inline:var(--edge)}
.checklist-card__cta:hover{gap:.6em}
.program-card__desc{font-size:.875rem;color:#5A6B7A;line-height:1.65;margin-bottom:1.5rem;flex:1}
.visa-category-card__desc{font-size:.9rem;color:#5A6B7A;line-height:1.65;margin-bottom:1.75rem;flex:1}
.visa-section{background:var(--c-dark);padding-block:clamp(2.5rem, 4vw, 3.5rem);margin-block:0;position:relative;overflow:hidden}
.article-body h4{font-size:1rem;font-weight:600;color:var(--c-dark);margin:1.5rem 0 .5rem;font-family:var(--font-body)}
.callout-band{background:var(--c-page-accent-l);border-left:3px solid var(--c-page-accent);padding:1.25rem 1.5rem;margin:2rem 0 0 0;max-width:68ch}
.visa-card__cta:hover{gap:.6em}
.visa-section::before{content:'';position:absolute;right:-10%;top:-50%;width:50%;height:200%;background:radial-gradient(ellipse, rgba(99,102,241,.12) 0%, transparent 65%);pointer-events:none}
.legal-hero-eyebrow{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.85rem;font-weight:600;letter-spacing:0.07em;text-transform:uppercase;color:rgba(255, 255, 255, 0.90);margin-bottom:1.5rem}
.topic-card__cta:hover{gap:.6em}
.callout-band p{margin:0;color:#202A6C;font-size:.95rem;line-height:1.65}
.visa-section-inner{max-width:1090px;padding-inline:var(--edge);margin-inline:auto;position:relative;z-index:1}
.visa-category-card__cta:hover{gap:.6em}
.program-card__cta:hover{gap:.6em}
.immigration-highlight{background:var(--c-dark-2);padding-block:var(--section-py);position:relative;overflow:hidden}
.legal-hero-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--c-primary);animation:pulse-dot 2.5s ease-in-out infinite}
.immigration-highlight::before{content:'';position:absolute;right:-10%;top:-30%;width:60%;height:160%;background:radial-gradient(ellipse,rgba(79,70,229,.15) 0%,transparent 65%);pointer-events:none}
.visa-section h2{font-family:var(--font-display);font-size:clamp(1.4rem, 2.5vw, 1.85rem);font-weight:800;color:var(--c-white);letter-spacing:-0.02em;margin-bottom:1rem;text-transform:uppercase;font-style:normal}
.callout-band strong{color:var(--c-page-accent)}
.nav-accordion ul li{padding:.35rem 0}
.immigration-inner{display:grid;grid-template-columns:1.15fr 1fr;gap:5rem;align-items:center;position:relative;z-index:1}
.visa-section p{color:rgba(255,255,255,.88);line-height:1.7;margin-bottom:1.25rem;max-width:64ch}
.section-title{font-family:var(--font-display);font-size:clamp(1.4rem, 2.5vw, 1.85rem);font-weight:800;letter-spacing:-0.02em;color:#202A6C;margin-bottom:.4rem;text-transform:uppercase;font-style:normal}
.section-footer{background:#7f0652;padding-block:var(--section-py);position:relative}
.immigration-content .section-title{color:var(--c-white)}
.cost-table tr:last-child td{border-bottom:none;background:var(--c-off-white)}
.visa-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.immigration-content .section-sub{color:rgba(255,255,255,.88);max-width:480px;font-size:0.9rem}
.legal-hero h1{font-size:clamp(2.4rem, 5vw, 3.8rem);font-weight:400;color:var(--c-white);margin:0;line-height:1.1;letter-spacing:-0.02em}
.section-footer-inner{max-width:var(--article-w);padding-inline:var(--edge);margin-inline:auto;z-index:1}
.immigration-meta{display:flex;align-items:center;gap:.6rem;margin-top:1.25rem;margin-bottom:.75rem}
.nav-accordion ul li a{font-size:0.9rem;color:var(--c-body);text-decoration:none}
.visa-links a{font-size:.85rem;font-weight:600;color:rgba(255,255,255,.90);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:.45em 1em;text-decoration:none;transition:background .18s, border-color .18s}
.article-body a{color:var(--c-primary);text-decoration:none}
.immigration-meta-badge{font-size:0.9rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:.2em .8em;background:rgba(79,70,229,.25);color:rgba(255,255,255,.92);border:1px solid rgba(79,70,229,.5)}
.info-strip a{color:var(--c-primary)}
.legal-hero-lead{font-family:var(--font-body);font-size:clamp(1rem, 1.6vw, 1.1rem);color:rgba(255, 255, 255, 0.88);margin:1.4rem 0 0 0;max-width:600px;line-height:1.65}
.faq-answer p:last-child{margin-bottom:0}
.visa-links a:hover{background:rgba(99,102,241,.28);border-color:var(--c-page-accent);color:#fff}
.section{padding-block:var(--section-py)}
.section-footer h2{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,1.85rem);font-weight:800;color:#fff;margin-bottom:1rem;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.immigration-cta-wrap{margin-top:0.75rem;display:flex;gap:.75rem;align-items:center}
.cta-section{background:var(--c-dark);padding:clamp(3rem,5vw,4.5rem) 0;text-align:center;position:relative;overflow:hidden}
.article-body a:hover{text-decoration:underline}
.immigration-panel{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);overflow:hidden}
.legal-content{max-width:900px;margin:0 auto;padding-inline:var(--edge);padding-block:var(--section-py)}
.nav-accordion ul li a:hover{color:var(--c-primary)}
.checklist-section{padding-block:clamp(3rem, 5vw, 4.5rem)}
.tools-section{background:var(--c-white);padding-block:clamp(2.5rem, 4vw, 3.5rem);border-top:1px solid var(--c-border)}
.comparison-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.88rem}
.article-body strong{font-weight:700}
.legal-intro{background:var(--c-subtle);padding:2rem;margin-bottom:3rem;font-family:var(--font-body);font-size:1.05rem;line-height:1.75;color:var(--c-dark)}
.disclaimer-box{background:var(--c-off-white);border:1px solid var(--c-border);padding:1.75rem 2rem;margin-top:3rem}
.immigration-panel-title{font-size:0.9rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.90)}
.tools-section-inner{max-width:1090px;padding-inline:var(--edge);margin-inline:auto}
.checklist-wrap{width:100%;max-width:var(--article-w);margin-inline:auto;padding-inline:var(--edge)}
.comparison-table th{text-align:left;font-weight:600;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--c-muted);background:var(--c-off-white);padding:.75rem 1rem;border-bottom:2px solid var(--c-border)}
.hero-404{background:var(--c-dark);position:relative;overflow:hidden;padding:clamp(5rem, 12vw, 9rem) 0 clamp(4rem, 8vw, 7rem);text-align:center}
.disclaimer-box h2{font-family:var(--font-body);font-size:.8rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-muted);border-top:none;margin-top:0;padding-top:0}
.immigration-topic-list{padding:.5rem 0}
.legal-section{margin-bottom:clamp(2.5rem, 4vw, 3.5rem)}
.tools-header{margin-bottom:1.5rem}
.explore-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2rem}
.immigration-topic-item{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06);transition:background .15s}
.comparison-table td{padding:.75rem 1rem;border-bottom:1px solid var(--c-border);vertical-align:top;line-height:1.55}
.section-footer p{color:rgba(255,255,255,.88)}
.disclaimer-box p{font-size:.88rem;color:var(--c-muted);line-height:1.7;margin-bottom:.75rem}
.checklist-container{background:var(--paper-cream);padding:clamp(2rem, 5vw, 3.5rem);border:1px solid rgba(0,0,0,.04);background-image:repeating-linear-gradient( 0deg, transparent, transparent 24px, rgba(99,102,241,.04) 24px, rgba(99,102,241,.04) 25px );background-position:0 0;position:relative;overflow:hidden}
.legal-section h2{font-size:1.75rem;font-weight:400;color:var(--c-primary);margin:0 0 1.5rem 0;line-height:1.3}
.immigration-topic-item:last-child{border-bottom:none}
.alert-box--red{background:var(--c-alert-bg);border:1px solid var(--c-alert-border);border-left:4px solid var(--c-alert)}
.disclaimer-box p:last-child{margin-bottom:0}
.comparison-table tr:hover td{background:var(--c-off-white)}
.immigration-topic-item:hover{background:rgba(255,255,255,.04)}
.hero-404::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 80% 60% at 60% 30%, rgba(79,70,229,.22) 0%, transparent 70%), radial-gradient(ellipse 50% 50% at 20% 80%, rgba(124,58,237,.14) 0%, transparent 65%)}
.checklist-container::before{content:'';position:absolute;top:0;left:0;right:0;height:20px;background:linear-gradient(180deg, rgba(0,0,0,.02) 0%, transparent 100%);pointer-events:none}
.legal-section p{font-family:var(--font-body);font-size:1rem;line-height:1.75;color:var(--c-body);margin:0 0 1.25rem 0;max-width:75ch}
.immigration-topic-label{font-size:0.9rem;font-weight:500;color:rgba(255,255,255,.95);display:flex;align-items:center;gap:.6rem}
.last-verified{font-size:.8rem;color:var(--c-muted);margin-top:2rem;padding-top:1rem;border-top:1px solid var(--c-border)}
.comparison-table tr:last-child td{border-bottom:none}
.alert-box--amber{background:var(--c-warn-bg);border:1px solid var(--c-warn-border);border-left:4px solid var(--c-warn)}
.guides-row{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.25rem}
.immigration-topic-label::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--c-primary);flex-shrink:0}
.figure{margin:2rem 0;text-align:center}
.checklist-title{font-family:var(--font-display);font-size:clamp(1.75rem, 4vw, 2.5rem);font-weight:800;color:var(--c-dark);margin-bottom:1.25rem;letter-spacing:-0.02em;text-transform:uppercase;font-style:normal}
.legal-section p:last-child{margin-bottom:0}
.immigration-topic-arrow{font-size:0.9rem;color:rgba(255,255,255,.70);transition:color .15s}
.alert-box--blue{background:#EFF6FF;border:1px solid #BFDBFE;border-left:4px solid #3B82F6}
.hero-404-watermark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0;font-family:var(--font-display);font-size:clamp(10rem, 30vw, 22rem);font-weight:800;color:rgba(255,255,255,.03);letter-spacing:-0.02em;user-select:none;text-transform:uppercase;font-style:normal}
.tool-card__icon{width:40px;height:40px;background:var(--c-page-accent-l);display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0;transition:background .18s}
.immigration-topic-item:hover .immigration-topic-arrow{color:rgba(255,255,255,.90)}
.checklist-items{display:flex;flex-direction:column;gap:1.2rem}
.legal-section ul{margin:1.25rem 0;padding:0}
.tool-card:hover .tool-card__icon{background:var(--c-violet-l)}
.compliance-preview{background:var(--c-off-white);padding-block:var(--section-py)}
.alert-box__icon{font-size:1.25rem;flex-shrink:0;line-height:1.5}
.compliance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.5rem}
.checklist-item input[type="checkbox"]{appearance:none;-webkit-appearance:none;-moz-appearance:none}
.checklist-item{display:flex;align-items:flex-start;gap:1rem;padding:0.75rem 0;cursor:pointer;transition:opacity .2s;position:relative;animation:slideIn 0.5s ease-out backwards}
.related-card-label{font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-muted);margin-bottom:.5rem}
.legal-section ol{margin:1.25rem 0;padding:0}
.hero-404-content{position:relative;z-index:1}
.comp-card{background:var(--c-white);border:1px solid var(--c-border);padding:1.4rem 1.25rem;text-decoration:none;color:var(--c-body);display:flex;flex-direction:column;gap:.6rem;transition:border-color .18s,box-shadow .18s,transform .18s}
.tool-card__body{flex:1}
.alert-box__body{flex:1}
.comp-card:hover{border-color:var(--c-primary);transform:translateY(-2px)}
.related-card-title{font-family:var(--font-display);font-size:0.9rem;color:var(--c-dark);text-decoration:none;display:block;margin-bottom:.4rem;font-weight:800;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.cta-section::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 70% at 50% 50%,rgba(79,70,229,.22) 0%,transparent 70%)}
.legal-section li{font-family:var(--font-body);font-size:1rem;line-height:1.75;color:var(--c-body);margin-left:1.5rem;margin-bottom:0.75rem}
.tool-card__title{font-size:.88rem;font-weight:600;color:#202A6C;line-height:1.3}
.comp-card__risk{font-size:0.9rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:.15em .65em;display:inline-block;align-self:flex-start}
.tool-card__type{font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-page-accent)}
.checklist-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;flex-shrink:0;width:24px;height:24px;border:2px solid var(--c-accent);background:var(--c-white);cursor:pointer;margin:0;margin-top:2px;transition:all .3s cubic-bezier(.34,.1,.68,.55)}
.related-card-desc{font-size:.82rem;color:var(--c-muted);line-height:1.55}
.cta-section-inner{position:relative;z-index:1}
.alert-box__title{font-weight:700;margin-bottom:.35rem;font-size:.95rem}
.comp-card__risk--high{background:#FEE2E2;color:#DC2626}
.hero-404-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:0.9rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:rgba(255,255,255,.75);margin-bottom:1.5rem}
.legal-section li:last-child{margin-bottom:0}
.comp-card__risk--med{background:#FEF3C7;color:#D97706}
.cta-section h2{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;color:var(--c-white);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.checklist-input:checked{background:var(--c-accent);border-color:var(--c-accent);animation:scaleCheck .4s cubic-bezier(.34,.1,.68,.55)}
.alert-box--red .alert-box__title{color:var(--c-alert)}
.comp-card__risk--low{background:var(--c-subtle);color:var(--c-primary)}
.cta-section p{color:rgba(255,255,255,.85);margin-bottom:1.75rem;max-width:500px;margin-inline:auto}
.legal-section strong{font-weight:600;color:var(--c-dark)}
.comp-card__title{font-size:0.9rem;font-weight:600;color:var(--c-dark);line-height:1.4}
.checklist-input:checked::after{content:'✓';display:flex;align-items:center;justify-content:center;color:var(--c-white);font-size:16px;font-weight:bold}
.hero-404-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--c-primary)}
.alert-box--amber .alert-box__title{color:var(--c-warn)}
.cta-btns{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}
.comp-card__desc{font-size:0.9rem;color:#5A6B7A;line-height:1.5;flex:1}
.legal-questions{background:var(--c-off-white);border:1px solid var(--c-border);padding:2.5rem;margin-top:4rem;text-align:center}
.section-footer::before{content:'';position:absolute;right:-10%;top:-50%;width:50%;height:200%;background:radial-gradient(ellipse, rgba(255,255,255,.08) 0%, transparent 65%);pointer-events:none}
.comp-card__link{font-size:0.9rem;font-weight:600;color:var(--c-primary);display:flex;align-items:center;gap:.3em;margin-top:auto;padding-top:.5rem;transition:gap .15s}
.comp-card:hover .comp-card__link{gap:.55em}
.alert-box--blue .alert-box__title{color:#1D4ED8}
.legal-questions h3{font-size:0.9rem;font-weight:400;color:var(--c-dark);margin:0 0 1.75rem 0;line-height:1.3}
.hero-404 h1{font-family:var(--font-display);font-size:clamp(2.4rem, 5vw, 3.8rem);font-weight:800;line-height:1.1;color:var(--c-white);letter-spacing:-0.02em;margin-bottom:1.25rem;text-transform:uppercase;font-style:normal}
.faq-list{margin-top:1rem}
.guides-tools{background:var(--c-white);padding-block:var(--section-py)}
.checklist-item:nth-child(1){animation-delay:0.05s}
.alert-box p{margin:0;font-size:.95rem}
.legal-questions-text{font-family:var(--font-body);font-size:1rem;line-height:1.65;color:var(--c-body);margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto}
.faq-item{border-bottom:1px solid var(--c-border)}
.checklist-item:nth-child(2){animation-delay:0.1s}
.footer-brand{grid-column:1}
.hero-404-sub{font-size:1.05rem;color:rgba(255,255,255,.80);max-width:520px;margin:0 auto 2.25rem;line-height:1.65}
.data-table-wrap{overflow-x:auto;margin:1.75rem 0;border:1px solid var(--c-border)}
.legal-questions-links{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:1.5rem;flex-wrap:wrap}
.tool-card{border:1px solid var(--c-border);padding:1.25rem 1.4rem;background:var(--c-off-white);color:var(--c-body);display:flex;align-items:center;gap:1rem;transition:border-color .18s, box-shadow .18s;position:relative;text-decoration:none}
.checklist-item:nth-child(3){animation-delay:0.15s}
.faq-question{width:100%;text-align:left;background:none;border:none;padding:1rem 0;font-family:var(--font-body);font-size:.98rem;font-weight:600;color:var(--c-dark);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:color .15s}
@keyframes slideIn{from { opacity: 0; transform: translateX(-12px); } to { opacity: 1; transform: translateX(0); }}
.guide-card--featured{background:linear-gradient(135deg,var(--c-dark) 0%,#1a1f35 100%);border-color:transparent;color:var(--c-white)}
.footer-top{display:grid;grid-template-columns:1.6fr repeat(4, 1fr);gap:3rem;padding-bottom:3rem;border-bottom:1px solid var(--c-border-dark)}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:1.5rem}
.footer-social{display:flex;gap:.6rem;margin-top:1.25rem}
.legal-questions-links a{font-family:var(--font-body);font-size:0.95rem;font-weight:600;padding:0.65em 1.4em;background:var(--c-primary);color:var(--c-white);text-decoration:none;transition:all 0.3s ease;border:2px solid var(--c-primary);display:inline-block}
.faq-question:hover{color:var(--c-primary)}
.checklist-item:nth-child(4){animation-delay:0.2s}
.hero-404-ctas{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:center}
.footer-social a{width:32px;height:32px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.88);display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;text-decoration:none;transition:background .18s, color .18s}
.guide-card__type{font-size:0.9rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-primary)}
.footer-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;margin-bottom:.8rem}
.legal-questions-links a:hover{background:transparent;color:var(--c-primary);transform:translateY(-2px)}
.guide-card--featured .guide-card__type{color:rgba(255,255,255,.90)}
.faq-question svg{flex-shrink:0;transition:transform .2s}
.footer-social a:hover{background:var(--c-primary);color:var(--c-white)}
.checklist-item:nth-child(5){animation-delay:0.25s}
.footer-logo-mark{width:30px;height:30px;background:linear-gradient(135deg,var(--c-primary) 0%,var(--c-violet) 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font-display);font-size:.95rem;font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:-0.02em}
.guide-card__title{font-size:0.9rem;font-weight:400;color:inherit;line-height:1.35;letter-spacing:-.01em}
.legal-updated{font-family:var(--font-body);font-size:0.85rem;color:var(--c-muted);margin-top:3rem;padding-top:2rem;border-top:1px solid var(--c-border);text-align:center}
.site-footer{padding-top:clamp(3.5rem,6vw,5.5rem);padding-bottom:2.5rem;background:var(--footer-bg, #0D1117);color:rgba(255, 255, 255, 0.92);padding:3.6rem 0 0}
.faq-item.open .faq-question svg{transform:rotate(180deg)}
.suggestions{padding:var(--section-py) 0;background:var(--c-off-white)}
.guide-card__desc{font-size:0.9rem;color:#5A6B7A;line-height:1.55;flex:1}
.footer-logo-text{font-family:var(--font-body);font-weight:700;font-size:.95rem;color:var(--c-white)}
.checklist-item:nth-child(6){animation-delay:0.3s}
.guide-card--featured .guide-card__desc{color:rgba(255,255,255,.90);font-size:0.9rem}
.faq-answer{height:0;overflow:hidden;transition:height 0.3s ease, padding-bottom 0.3s ease;padding-bottom:0}
.comp-table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.9rem}
.guide-card--featured .guide-card__cta{color:rgba(255,255,255,.95)}
.checklist-item:nth-child(7){animation-delay:0.35s}
.faq-item.open .faq-answer{height:auto !important;padding-bottom:1rem}
.guide-card:hover .guide-card__cta{gap:.6em}
.suggestions-heading{text-align:center;margin-bottom:2.5rem}
.comp-table th{background:#693aef;color:rgba(255,255,255,.95);padding:.8rem;text-align:left;font-weight:600;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}
.data-table tr:nth-child(even) td{background:#FAFAFA}
.checklist-item:nth-child(8){animation-delay:0.4s}
.faq-answer p{font-size:.92rem;color:var(--c-body);line-height:1.7;margin-bottom:.5rem}
.comp-table td{padding:.75rem .8rem;border-bottom:1px solid var(--c-border);color:var(--c-body)}
.data-table .td-label{font-weight:600;color:var(--c-dark)}
.checklist-item:nth-child(9){animation-delay:0.45s}
.suggestions-heading h2{font-family:var(--font-display);font-size:clamp(1.75rem, 3vw, 2.4rem);font-weight:800;color:var(--c-dark);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.faq-answer a{color:var(--c-primary);text-decoration:underline;text-decoration-color:rgba(79,70,229,.3)}
.comp-table tr:nth-child(even){background:rgba(243, 244, 246, 0.5)}
.data-table .badge{display:inline-block;padding:.15em .65em;font-size:.75rem;font-weight:700}
.checklist-item:nth-child(10){animation-delay:0.5s}
.footer-legal{display:flex;gap:1.5rem}
.checklist-item:nth-child(11){animation-delay:0.55s}
.checklist-item:hover{opacity:.75}
.footer-col ul{display:flex;flex-direction:column;gap:.55rem}
.comp-table tr:last-child td{border-bottom:none}
.footer-legal a{font-size:.8rem;color:rgba(255,255,255,.75);text-decoration:none;transition:color .15s}
.footer-tagline{max-width:240px;font-size:0.9rem;line-height:1.6;margin:0;color:rgba(255, 255, 255, 0.75)}
.suggestions-heading p{color:var(--c-muted);font-size:0.95rem}
.experience-strip{background:var(--c-dark);padding-block:var(--section-py);position:relative;overflow:hidden}
.footer-col ul a{font-size:.83rem;color:rgba(255,255,255,.88);text-decoration:none;transition:color .15s}
.badge-red{background:#FEE2E2;color:#DC2626}
.checklist-item:nth-child(12){animation-delay:0.6s}
.checklist-text{background-color:rgba(255, 235, 59, .3);padding:0.2em 0.4em;font-size:0.9rem;color:var(--c-body);transition:all .3s ease;flex:1;line-height:1.5}
.footer-col h4{margin:0;font-size:0.9rem;font-weight:700;color:rgba(255, 255, 255, 0.7);text-transform:uppercase;letter-spacing:0.06em}
.experience-strip::before{content:'';position:absolute;left:-5%;top:-40%;width:55%;height:160%;background:radial-gradient(ellipse,rgba(124,58,237,.13) 0%,transparent 65%);pointer-events:none}
.footer-legal a:hover{color:var(--c-white)}
.footer-col ul a:hover{color:var(--c-white)}
.experience-inner{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;position:relative;z-index:1}
.badge-amber{background:#FEF3C7;color:#D97706}
.checklist-item.checked .checklist-text{color:rgba(107, 114, 128, .7);background-color:transparent}
.experience-content .section-title{color:var(--c-white)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:2rem;gap:1rem;flex-wrap:wrap}
.suggestions-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem}
.checklist-progress .progress-bar{width:100%;height:8px;background:rgba(0,0,0,.08);overflow:hidden}
.experience-content .section-sub{color:rgba(255,255,255,.88);max-width:none;margin-top:1rem;margin-bottom:2rem;font-size:0.9rem}
.badge-green{background:#D1FAE5;color:#059669}
.footer-copy{font-size:.8rem}
.checklist-meta{font-size:.85rem;color:var(--c-muted);margin-top:.25rem;display:block}
.experience-quote{font-size:1.0rem;font-style:italic;color:rgba(255,255,255,.95);line-height:1.6;border-left:3px solid var(--c-primary);padding-left:1.25rem;margin-top:1.5rem}
.footer-col li a{color:rgba(255, 255, 255, 0.88);text-decoration:none;font-size:0.9rem;transition:color 0.2s}
.experience-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.related-card{position:relative;z-index:2;text-decoration:none}
.badge-blue{background:#DBEAFE;color:#2563EB}
.suggestion-card{background:var(--c-white);border:1px solid var(--c-border);padding:1.5rem;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:.6rem;transition:box-shadow .2s, transform .2s, border-color .2s}
.checklist-progress{margin-top:2.5rem;padding-top:2rem;border-top:1px dashed rgba(0,0,0,.12)}
.path-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.experience-stat{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);padding:1.5rem}
.footer-col li a:hover{color:rgba(255, 255, 255, 1)}
.experience-stat__num{font-size:2.3rem;font-weight:300;color:var(--c-white);line-height:1;letter-spacing:-.04em;margin-bottom:.4rem}
.timeline{margin:2rem 0;display:flex;flex-direction:column;gap:0}
.progress-label{font-size:.9rem;font-weight:600;color:var(--c-dark);margin-bottom:.75rem;display:flex;justify-content:space-between;align-items:center}
.article-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.experience-stat__num span{font-size:0.9rem;color:var(--c-white)}
.footer-col-title{margin-bottom:1.1rem;font-size:0.85rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:rgba(255, 255, 255, 0.95);margin:0}
.suggestion-card:hover{transform:translateY(-2px);border-color:var(--c-primary)}
.experience-stat__label{font-size:0.9rem;color:rgba(255,255,255,.85);line-height:1.4}
.explore-card{background:white;overflow:hidden;transition:transform 0.2s,box-shadow 0.2s;cursor:pointer;text-decoration:none;color:inherit;display:flex;flex-direction:column}
.tool-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.timeline-item{display:flex;gap:1.25rem;position:relative}
.explore-card img{aspect-ratio:16/9;object-fit:cover;width:100%}
.experience-stat--accent{background:rgba(79,70,229,.15);border-color:rgba(79,70,229,.3)}
.guide-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.section-header{margin-bottom:clamp(2.5rem,5vw,4rem)}
.experience-stat--accent .experience-stat__num{color:rgba(255,255,255,.95)}
.explore-card:hover{transform:translateY(-4px)}
.timeline-item:not(:last-child)::before{content:'';position:absolute;left:14px;top:32px;bottom:0;width:2px;background:var(--c-border)}
.explore-card-body{padding:1.5rem;flex:1;display:flex;flex-direction:column}
.visa-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.contact-cta{background:var(--c-subtle);border-top:1px solid var(--c-border);padding-block:clamp(1.5rem,3vw,2.5rem)}
.suggestion-card-icon{width:40px;height:40px;background:var(--c-subtle);display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.section-header.centered{text-align:center}
.progress-fill{height:100%;background:linear-gradient(90deg, var(--c-accent) 0%, var(--c-primary) 100%);transition:width .4s cubic-bezier(.34,.1,.68,.55)}
.contact-cta-inner{max-width:680px;margin-inline:auto;text-align:center}
.visa-category-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.timeline-dot{width:30px;height:30px;border-radius:50%;background:var(--c-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;font-size:.7rem}
.explore-card-title{font-size:1.1rem;font-weight:600;margin-bottom:0.75rem;color:var(--c-dark);line-height:1.4}
.contact-cta .section-title{margin-bottom:.75rem}
.section-header.centered .section-sub{margin-inline:auto}
.program-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.reset-btn{margin-top:1.5rem;padding:.6em 1.2em;background:var(--c-off-white);color:var(--c-dark);border:1.5px solid var(--c-border);font-family:var(--font-body);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none}
.contact-cta .section-sub{margin-inline:auto;margin-bottom:2.25rem}
.tool-card:hover{border-color:var(--c-page-accent);background:var(--c-white);text-decoration:none}
.suggestion-card h3{font-family:var(--font-display);font-size:1.1rem;font-weight:800;color:var(--c-dark);text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.explore-card-meta{font-size:0.82rem;color:var(--c-muted);display:flex;gap:0.75rem;margin-bottom:0.75rem}
.timeline-dot--red{background:var(--c-alert);color:white}
.contact-cta-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem}
.topic-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.reset-btn:hover{background:var(--c-white);border-color:var(--c-accent);color:var(--c-accent)}
.contact-disclaimer{font-size:0.9rem;color:#5A6B7A;margin-top:1.5rem;font-style:italic}
.checklist-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.explore-card-desc{font-size:0.9rem;color:var(--c-body);line-height:1.6;flex:1}
.timeline-dot--amber{background:var(--c-warn);color:white}
.visa-card{position:relative;text-decoration:none}
.article-card{position:relative;text-decoration:none}
.related-card::before{content:'';position:absolute;inset:0;z-index:1;cursor:pointer}
.suggestion-card p{font-size:0.85rem;color:var(--c-muted);line-height:1.55}
.path-card{position:relative}
.dropdown-menu[style*="display:block"]{display:grid !important;grid-template-columns:1fr 1fr !important;gap:2rem}
.explore-card-pills{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1rem}
.timeline-dot--blue{background:#3B82F6;color:white}
.visa-category-card{position:relative;text-decoration:none}
.pill{display:inline-block;background:#E5E7EB;color:#7f0652;padding:0.25rem 0.75rem;font-size:0.8rem;font-weight:600}
.timeline-dot--grey{background:#9CA3AF;color:white}
.suggestion-card-arrow{margin-top:auto;font-size:0.85rem;font-weight:600;color:var(--c-primary)}
.guide-card{position:relative;text-decoration:none}
.program-card{position:relative;text-decoration:none}
.topic-card{position:relative;text-decoration:none}
.timeline-content{padding-bottom:1.75rem;flex:1}
.checklist-card{position:relative;text-decoration:none}
.sidebar-card{text-decoration:none}
.timeline-date{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--c-muted);margin-bottom:.25rem}
.timeline-title{font-weight:600;color:var(--c-dark);margin-bottom:.35rem}
.timeline-body{font-size:.9rem;color:var(--c-muted)}
.path-card__cta{position:relative;z-index:2}
.article-card__link{position:relative;z-index:2}
.tool-card__cta{position:relative;z-index:2}
.visa-card__cta{position:relative;z-index:2}
.related-section{background:var(--c-off-white);border-top:1px solid var(--c-border);padding-block:clamp(2.5rem, 4vw, 3.5rem);margin-top:3rem}
.guide-card__cta{position:relative;z-index:2}
.visa-category-card__cta{position:relative;z-index:2}
.program-card__cta{position:relative;z-index:2}
.topic-card__cta{position:relative;z-index:2}
.checklist-card__cta{position:relative;z-index:2}
figure img{max-width:100%;width:100%;margin-inline:auto;display:block;height:auto}
.fade-up{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}
.related-card__type{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-primary)}
.fade-up.in-view{opacity:1;transform:translateY(0)}
.fade-up-delay-1{transition-delay:.1s}
.related-card__title{font-size:.95rem;font-weight:600;color:var(--c-dark);line-height:1.35}
.footer-container{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1.2fr 0.9fr 0.9fr 0.9fr 0.9fr;gap:2rem;padding:0 1.8rem 1.8rem;width:100%}
.fade-up-delay-2{transition-delay:.2s}
.fade-up-delay-3{transition-delay:.3s}
.footer-col{display:flex;flex-direction:column;gap:0.9rem}
.related-card__desc{font-size:.85rem;color:var(--c-muted);line-height:1.5;flex:1}
.fade-up-delay-4{transition-delay:.4s}
.fade-up-delay-5{transition-delay:.5s}
.footer-col-cmlocals{gap:1.8rem}
.footer-logo a{font-size:0.9rem;font-weight:bold;color:white;text-decoration:none;display:inline-flex;align-items:center}
.footer-logo img{height:43.2px;width:auto;display:block}
.footer-socials{display:flex;gap:1.35rem}
.blog-explore{background:var(--c-off-white);padding:var(--section-py) var(--edge)}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:28.8px;height:28.8px;color:rgba(255, 255, 255, 0.75);text-decoration:none;transition:filter 0.2s ease, color 0.2s ease;filter:grayscale(100%)}
.related-card:hover{text-decoration:none}
.social-icon:hover{color:currentColor;filter:grayscale(0%)}
.blog-explore-inner{max-width:var(--max-w);margin:0 auto}
.culture-explore{padding-block:clamp(2.5rem,4vw,3.5rem);background:#f8f4ff;border-top:1px solid #e9e3f8}
.progress-bar{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg, #4F46E5, #6366F1, #4F46E5);width:0;min-width:0;z-index:10001;transition:width 0.1s linear}
.culture-explore-inner{max-width:1400px;margin-inline:auto;padding-inline:var(--edge)}
.blog-explore h2{font-size:2rem;font-weight:400;margin-bottom:2rem;color:var(--c-dark)}
.social-icon.social-whatsapp:hover{color:#25D366}
.culture-explore h2{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,1.9rem);font-weight:800;color:#5a0a3a;margin-bottom:1.5rem;text-align:center;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.explore-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem}
.social-icon.social-facebook:hover{color:#1877F2}
.culture-explore-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.social-icon.social-messenger:hover{color:#0084FF}
.social-icon svg{width:100%;height:100%}
.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.6rem}
.explore-card::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom, rgba(0,0,0,.2), rgba(0,0,0,.6));z-index:-1}
.footer-bottom-bar{max-width:1400px;margin:0 auto;padding:1.8rem;display:flex;justify-content:space-between;align-items:center;gap:1.8rem;width:100%}
.explore-card h3{font-family:var(--font-display);font-size:1.1rem;font-weight:800;margin:0 0 .5rem;color:#fff;position:relative;z-index:2;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.footer-links a{color:rgba(255, 255, 255, 0.75);text-decoration:none;font-size:0.85rem;line-height:1.4;transition:color 0.2s}
.explore-card p{font-size:.85rem;color:rgba(255,255,255,.82);margin:0;position:relative;z-index:2}
.nav-link{position:relative;color:var(--c-body);text-decoration:none;font-size:0.9rem;font-weight:500;padding:0 0.85rem;transition:border-color 0.2s,color 0.15s;display:inline-flex;align-items:center;height:70px}
.footer-bottom-bar p{font-size:0.9rem;color:rgba(255, 255, 255, 0.6);margin:0}
.footer-links a:hover{color:white}
.footer-legal-links{display:flex;gap:1.8rem}
.immigration-panel-header{padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:.5rem}
.footer-legal-links a{font-size:0.9rem;color:rgba(255, 255, 255, 0.6);text-decoration:none;transition:color 0.2s}
.nav-link:hover{color:var(--c-primary)}
.immigration-panel-header-dot{width:8px;height:8px;border-radius:50%;background:var(--c-primary)}
.footer-legal-links a:hover{color:rgba(255, 255, 255, 0.9)}
.nav-link.active{color:var(--c-primary)}
.pro-tip-bubble{cursor:pointer}
.pro-tip-bubble:hover{opacity:0.9}
.pro-tip-modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:2000}
.guides-tools-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:2.5rem;gap:1rem}
.related-guide-card:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}
.special-programs-grid{grid-template-columns:repeat(2,1fr)}
.related-guides-section{padding:clamp(3rem, 5vw, 4.5rem) 0;background:var(--c-off-white);border-top:1px solid var(--c-border)}
.pro-tip-modal-buttons{display:flex;gap:1rem;margin-top:1.5rem}
.pro-tip-modal.active{opacity:1;pointer-events:auto}
.related-guides-header{margin-bottom:2rem}
.visa-card *{text-decoration:none}
.guides-tools-header .section-sub{margin-bottom:0}
.pro-tip-modal-buttons button{flex:1;padding:0.8em 1rem;border:none;font-weight:600;cursor:pointer;transition:all 0.2s;font-size:0.9rem}
.related-guides-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));gap:1.25rem}
.pro-tip-modal-content{background:linear-gradient(135deg,#0D1117 0%,#141922 100%);border:1px solid rgba(255,255,255,.1);padding:2rem;max-width:420px;width:90%}
.article-card *{text-decoration:none}
.pro-tip-modal-buttons .btn-google{background:rgba(255, 255, 255, 0.25);color:white;border:1px solid rgba(255, 255, 255, 0.3)}
.related-guide-card{display:flex;flex-direction:column;gap:0.5rem;padding:1.5rem;background:var(--c-white);border:1.5px solid var(--c-border);text-decoration:none;color:var(--c-body);transition:box-shadow .2s, transform .2s}
.tool-card *{text-decoration:none}
.pro-tip-modal-buttons .btn-google:hover{background:rgba(255, 255, 255, 0.35)}
.pro-tip-modal-close{position:absolute;top:1rem;right:1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.1);border:none;color:#fff;cursor:pointer;font-size:1.5rem;transition:background .15s}
.related-guide-card:hover{transform:translateY(-2px)}
.guide-card *{text-decoration:none}
.pro-tip-modal-buttons .btn-ics{background:rgba(255, 255, 255, 0.15);color:white;border:1px solid rgba(255, 255, 255, 0.25)}
.inline-grid-3col{grid-template-columns:repeat(3,1fr)}
.pro-tip-modal-close:hover{background:rgba(255,255,255,.2)}
.visa-category-card *{text-decoration:none}
.section-link{color:var(--c-primary) !important;font-weight:600;padding-top:0.5rem;margin-top:0.5rem;border-top:1px solid rgba(0,0,0,0.1);display:block}
.related-guide-tag{font-size:0.72rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--c-primary)}
.visa-card:hover{text-decoration:none}
.pro-tip-modal-buttons .btn-ics:hover{background:rgba(255, 255, 255, 0.25)}
.faq-item:last-child{border-bottom:none}
.guides-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:2rem;margin-top:2rem}
.program-card *{text-decoration:none}
.related-guide-title{font-weight:600;color:var(--c-dark);font-size:0.95rem}
.pro-tip-modal-icon{display:block;font-size:2rem;margin-bottom:1rem;text-align:center}
.topic-card *{text-decoration:none}
.related-guide-arrow{font-weight:600;color:var(--c-primary);margin-top:0.5rem}
.checklist-card *{text-decoration:none}
.pro-tip-modal-label{font-size:1.1rem;font-weight:600;color:#fff;margin-bottom:.5rem;text-align:center}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.5rem 0}
.related-card *{text-decoration:none}
.article-card:hover{text-decoration:none}
.guide-card:hover{text-decoration:none}
.pro-tip-modal-description{font-size:.9rem;color:rgba(255,255,255,.85);line-height:1.6;text-align:center;margin-bottom:1.5rem}
.sidebar-card *{text-decoration:none}
.table-scroll table{margin:0}
.pro-tip-modal-button{background:var(--c-primary);color:#fff;border:none;padding:.8em 1.5em;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .2s}
.visa-category-card:hover{text-decoration:none}
.guide-card h3{font-family:var(--font-display);font-size:1.3rem;font-weight:800;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
.program-card:hover{text-decoration:none}
.topic-card:hover{text-decoration:none}
.guide-card p{color:#5A6B7A;margin-bottom:1rem;flex:1}
.checklist-card:hover{text-decoration:none}
.guide-card .cta{color:var(--c-primary);font-weight:600;display:flex;align-items:center;gap:.3em;margin-top:auto}
.sidebar-card:hover{text-decoration:none}
.pro-tip-modal-button:hover{background:#4338CA}
.pro-tip-modal-inner{position:relative}
.faq-answer a:hover{color:var(--c-primary)}
.article-figure img{width:100%;height:auto;max-height:none}
.search-page{min-height:100vh;padding:100px 0 6rem;background:var(--c-white)}
.nav-link.has-dropdown{cursor:pointer}
.search-hero{text-align:center;margin-bottom:3rem}
.mobile-nav-search-icon{display:flex;align-items:center;justify-content:center;height:60px;padding:20px 24px;border-top:1px solid var(--c-border);color:var(--c-primary);text-decoration:none;transition:background-color 0.2s,opacity 0.2s;width:100%;position:sticky;bottom:0;z-index:100;background:var(--c-white)}
.breadcrumb-meta{color:var(--c-muted)}
.dropdown-section li{margin:0}
.search-hero h1{font-size:clamp(2rem, 5vw, 3rem);color:var(--c-dark);margin-bottom:0.75rem}
.mobile-nav-search-icon:hover{opacity:0.8;background:rgba(79,70,229,0.05)}
.search-hero p{color:var(--c-muted);font-size:1.05rem}
.header-hamburger.active span:nth-child(1){transform:translateY(6px) rotate(45deg)}
#search-box{max-width:720px;margin:0 auto}
.mobile-nav-search-icon svg{display:block;pointer-events:none}
.search-input{width:100%;background:var(--c-off-white);color:var(--c-body);border:1px solid var(--c-border);font-size:1.1rem;padding:1rem 1.5rem;font-family:var(--font-body);outline:none;transition:border-color 0.2s}
.header-hamburger.active span:nth-child(2){opacity:0}
.search-input:focus{border-color:var(--c-primary)}
.header-search-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--c-body);text-decoration:none;transition:color 0.2s,opacity 0.2s;border:none;background:none;flex-shrink:0}
.search-input::placeholder{color:var(--c-muted)}
.header-hamburger.active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.search-results{margin-top:2rem}
.header-search-icon:hover{color:var(--c-primary);opacity:0.8}
.search-result{display:block;padding:1.5rem 0;border-bottom:1px solid var(--c-border);color:inherit;text-decoration:none;transition:opacity 0.2s}
#visa-expiry-input::placeholder{color:rgba(255,255,255,.8)}
.header-search-icon svg{display:block;pointer-events:none}
.search-result:last-child{border-bottom:none}
.search-result:hover{opacity:0.8}
.search-result-title{color:var(--c-primary);font-family:var(--font-display);font-weight:800;margin-bottom:0.5rem;font-size:1.1rem;text-transform:uppercase;letter-spacing:-0.02em;font-style:normal}
#pro-tip-modal.active{display:flex !important}
.search-result-title mark{background:rgba(79,70,229,0.15);color:var(--c-primary)}
.search-result-excerpt{color:var(--c-muted);font-size:0.95rem;margin-bottom:0.5rem;line-height:1.5}
.article-figure{margin:1.75rem 0}
.search-result-excerpt mark{background:rgba(79,70,229,0.15);color:var(--c-primary)}
.search-result-url{color:#999;font-size:0.85rem}
.search-empty{color:var(--c-muted);padding:2rem 0;text-align:center}
.search-tips{max-width:720px;margin:3rem auto 0;padding-top:2rem;border-top:1px solid var(--c-border)}
.article-figure--small{max-width:500px}
.search-tips h3{color:var(--c-muted);font-size:0.8rem;text-transform:uppercase;letter-spacing:0.1em;margin-bottom:1rem}
.search-tips-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));gap:0.75rem}
.article-figure figcaption{font-size:.85rem;color:var(--c-muted);margin-top:.5rem}
.search-tip-link{padding:0.75rem 1rem;border:1px solid var(--c-border);color:var(--c-muted);font-size:0.875rem;display:block;text-decoration:none;transition:border-color 0.2s, color 0.2s}
.search-tip-link:hover{border-color:var(--c-primary);color:var(--c-primary)}
@media (min-width: 641px){
.explore-grid{width:140%;max-width:140%;margin-left:-20%;margin-right:-20%}
.related-grid{width:140%;max-width:140%;margin-left:-20%;margin-right:-20%}
}
@media (max-width: 1100px){
.culture-cards{grid-template-columns:repeat(2,1fr)}
.footer-top{grid-template-columns:1fr 1fr 1fr}
.footer-brand{grid-column:1/-1}
.article-layout{grid-template-columns:1fr 260px;gap:2rem}
}
@media (max-width: 1024px){
.footer-container{grid-template-columns:repeat(2, 1fr);gap:3rem}
.footer-bottom-bar{flex-direction:column;text-align:center}
.mobile-menu-toggle{display:flex}
.suggestions-grid{grid-template-columns:repeat(2, 1fr)}
}
@media (max-width: 1023px){
.site-header{padding:0.5rem 1.5rem;position:sticky;top:0;z-index:1001}
.header-inner{height:60px}
.dropdown-menu{display:none}
.mobile-menu-toggle{display:flex}
.nav-mobile{position:fixed;inset:64px 0 0 0;left:0;right:0;background:white;border-bottom:1px solid rgba(0,0,0,.1);flex-direction:column;max-height:calc(100vh - 70px);overflow-y:auto;z-index:999}
.primary-nav{display:none}
.nav-accordion summary::after{content:'▼';font-size:0.9rem;transition:transform 0.3s}
.nav-accordion{border-bottom:1px solid rgba(0,0,0,.1);cursor:pointer;margin:0}
.nav-accordion[open] summary::after{transform:rotate(180deg)}
.nav-accordion summary{padding:1rem;font-weight:600;color:#111827;list-style:none;display:flex;justify-content:space-between;align-items:center;user-select:none;font-size:0.9rem}
.nav-dropdown-item{padding:.75rem .85rem;margin-left:1.5rem;font-size:0.9rem}
.nav-submenu-item{padding:.65rem .85rem;margin-left:3rem;font-size:0.9rem}
.nav-accordion li a{display:block;padding:0.75rem 1rem;padding-left:2rem;color:#374151;text-decoration:none;font-size:0.9rem}
.nav-accordion ul{list-style:none;padding:0;margin:0;background:rgba(79, 70, 229, 0.02)}
.nav-accordion li a:active{background:rgba(79, 70, 229, 0.1);color:var(--c-primary, #4F46E5)}
.nav-accordion li{border-bottom:1px solid rgba(0,0,0,.05)}
.nav-accordion summary::before{content:'+ ';margin-right:0.5rem}
.nav-accordion[open] summary::before{content:'- '}
.nav-accordion a{color:#374151;text-decoration:none;font-size:0.9rem;transition:color 0.2s}
.nav-accordion a:hover{color:var(--c-primary)}
.nav-accordion summary::-webkit-details-marker{display:none}
.footer-container{grid-template-columns:repeat(2, 1fr);gap:3rem}
.footer-bottom-bar{flex-direction:column;text-align:center}
.related-grid{grid-template-columns:1fr 1fr}
.header-hamburger{display:flex}
.nav-accordion summary:hover{background:rgba(79,70,229,0.05)}
}
@media (max-width: 960px){
.tool-grid{grid-template-columns:1fr}
.summary-cards{grid-template-columns:1fr}
.topic-grid{grid-template-columns:1fr 1fr}
.checklist-grid{grid-template-columns:1fr}
.provider-cards{grid-template-columns:1fr}
.visa-category-grid{grid-template-columns:1fr}
.program-grid{grid-template-columns:1fr 1fr}
.guides-row{grid-template-columns:1fr}
.visa-grid{grid-template-columns:1fr 1fr}
.footer-top{grid-template-columns:1fr 1fr;gap:2rem}
.article-layout{grid-template-columns:1fr}
.article-sidebar{position:static}
.related-grid{grid-template-columns:1fr 1fr}
.primary-nav{display:none}
.header-hamburger{display:flex}
.legal-hero h1{font-size:1.75rem}
.legal-section h2{font-size:0.9rem;margin-bottom:1.25rem}
.legal-questions{padding:1.5rem;margin-top:3rem}
.legal-questions h3{font-size:1.25rem;margin-bottom:1.5rem}
.legal-questions-links{gap:1rem}
.site-header{padding:0.75rem 1.5rem}
.legal-intro{padding:1.5rem;margin-bottom:2rem}
.hub-hero-stats{grid-template-columns:1fr 1fr}
.header-inner{height:60px}
.comparison-table{font-size:.80rem}
.comparison-table th{padding:.5rem .75rem}
.comparison-table td{padding:.5rem .75rem}
.hero-grid{grid-template-columns:1fr}
.hero-visual{display:none}
.hero-content{padding-bottom:clamp(3rem,6vw,5rem)}
.paths-grid{grid-template-columns:1fr 1fr}
.immigration-inner{grid-template-columns:1fr;gap:2.5rem}
.compliance-grid{grid-template-columns:repeat(2,1fr)}
.experience-inner{grid-template-columns:1fr;gap:2.5rem}
.experience-stats{grid-template-columns:repeat(2,1fr)}
.header-ctas .header-fb-link{display:none}
.header-search-icon{display:none}
}
@media (max-width: 900px){
.culture-explore-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 768px){
.term-links{flex-direction:column}
.hero{min-height:420px}
.page-hero{min-height:420px}
.footer-bottom-bar{flex-direction:column;gap:1rem;text-align:center}
.explore-cards{grid-template-columns:1fr}
.footer-container{gap:2rem;width:100%;padding:0 1.2rem 1.2rem;grid-template-columns:1fr}
.footer-legal{flex-direction:column;text-align:center;width:100%;padding:1.2rem}
.footer-legal-links{flex-direction:column;gap:0.5rem}
.page-hero h1{font-size:1.75rem}
.guides-grid{grid-template-columns:1fr}
.breadcrumb-inner{font-size:0.75rem}
}
@media (max-width: 640px){
.img-float-right{float:none;width:100%;margin:1.5rem 0}
.img-float-left{float:none;width:100%;margin:1.5rem 0}
.culture-cards{grid-template-columns:1fr}
.topic-grid{grid-template-columns:1fr}
#chaty-trigger-btn{width:40px;height:40px}
.program-grid{grid-template-columns:1fr}
.tz-table{font-size:.78rem}
.neighbourhood-card .nc-meta{flex-direction:column;gap:.3rem}
.tz-table th{padding:.45rem .55rem}
.tz-table td{padding:.45rem .55rem}
.page-hero-ctas{flex-direction:column}
.cost-table{font-size:.82rem}
.cost-table th{padding:.5rem .6rem}
.cost-table td{padding:.5rem .6rem}
.container{padding-inline:20px}
.footer-bottom{flex-direction:column;align-items:flex-start}
.visa-grid{grid-template-columns:1fr}
.page-hero h1{font-size:1.75rem}
.footer-top{grid-template-columns:1fr}
.cta-btns{flex-direction:column}
.related-grid{grid-template-columns:1fr}
.comp-table{font-size:.8rem}
.comp-table th{padding:.6rem}
.comp-table td{padding:.6rem}
.hub-hero h1{font-size:1.9rem}
.articles-grid{grid-template-columns:1fr}
.legal-section h2{font-size:1.35rem}
.legal-questions-links{flex-direction:column;gap:0.75rem}
.legal-questions-links a{width:100%;text-align:center}
.comparison-table{font-size:.75rem}
.comparison-table th{padding:.4rem .5rem}
.comparison-table td{padding:.4rem .5rem}
.path-card{padding:15px}
.comp-card{padding:15px}
.guide-card{padding:15px}
.tool-card{padding:15px}
.immigration-panel{padding:15px}
.paths-grid{grid-template-columns:1fr}
.compliance-grid{grid-template-columns:1fr 1fr}
.guides-row{grid-template-columns:1fr}
.hero-ctas{flex-direction:column;align-items:flex-start}
.special-programs-grid{grid-template-columns:1fr}
.site-footer{padding:3rem 1.5rem 0}
.footer-col-title{font-size:0.85rem}
.inline-grid-3col{grid-template-columns:1fr}
.pro-tip-modal-content{padding:2rem;max-width:95%}
.footer-links a{font-size:0.85rem}
.footer-container{grid-template-columns:1fr;gap:2rem;padding-bottom:1.5rem}
.pro-tip-modal-label{font-size:1.2rem}
.footer-bottom-bar p{font-size:0.9rem}
.footer-bottom-bar{padding:1.5rem;flex-direction:column;gap:1rem}
.footer-legal-links{gap:1rem}
.footer-legal-links a{font-size:0.9rem}
.guides-tools-header{flex-direction:column;align-items:flex-start}
.suggestions-grid{grid-template-columns:1fr}
}
@media (max-width: 480px){
.culture-explore-grid{grid-template-columns:1fr}
}
@media (max-width: 400px){
.footer-top{grid-template-columns:1fr}
.compliance-grid{grid-template-columns:1fr}
.experience-stats{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
.service-ticker-track{animation:none}
.progress-bar{transition:none}
}
}

/* ============================================================
   FONTS (local, variable)
   ============================================================ */
@font-face { font-family: "Archivo Black"; src: url("/fonts/archivo-black.woff2") format("woff2"); font-weight: 400 900; font-style: normal; font-display: swap; }
@font-face { font-family: "Archivo"; src: url("/fonts/archivo.woff2") format("woff2"); font-weight: 400 800; font-style: normal; font-display: swap; }
@font-face { font-family: "Archivo"; src: url("/fonts/archivo-italic.woff2") format("woff2"); font-weight: 400 800; font-style: italic; font-display: swap; }

/* ============================================================
   SYSTEM TOKENS. Colour tokens live per page and are never set here.
   ============================================================ */
:root {
  --font-display: "Archivo Black", "Arial Black", Impact, "Segoe UI", sans-serif;
  --font-body: "Archivo", "Segoe UI", Arial, sans-serif;
  --font-handwrite: var(--font-body);
  --max-w: 1200px;
  --article-w: 1200px;
  --measure: 48rem;
  --edge: clamp(1rem, 4vw, 3rem);
  --section-py: clamp(3.5rem, 7vw, 6rem);
  --radius-sm: 0px;
  --radius-md: 0px;
  --radius-lg: 0px;
  --shadow-sm: none;
  --shadow-md: none;
  --shadow-lg: none;
  --line: 2px;
  --card-pad: clamp(1.25rem, 2.4vw, 1.75rem);
  --ease: cubic-bezier(0.19, 1, 0.22, 1);
  --accent: var(--c-page-accent, var(--c-primary));
  --header-h: 71px;
}
@media (max-width: 960px) { :root { --header-h: 85px; } }

/* Lowest-priority fallbacks, so a card that never had a border colour gets the keyline tone. */
@layer base {
  .explore-card, .related-card, .topic-card, .tool-card, .visa-card, .visa-category-card, .checklist-card,
  .article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card, .summary-card,
  .provider-card, .bank-card, .card, .sidebar-card, .path-card, .why-item { border-color: var(--c-border); }
}

@layer skin {

/* ============================================================
   BASE
   ============================================================ */
html { scroll-behavior: smooth; overflow-x: clip; max-width: 100%; }
body {
  font-family: var(--font-body); font-size: 1rem; line-height: 1.6;
  overflow-x: clip; max-width: 100%;
  padding-top: var(--header-h);
  -webkit-font-smoothing: antialiased;
}
[id] { scroll-margin-top: calc(var(--header-h) + 1rem); }
a:focus-visible, button:focus-visible, input:focus-visible, summary:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--accent); outline-offset: 3px;
}
img { border-radius: 0; }
picture { display: contents; }
button, input, select, textarea { font-family: inherit; }

/* ============================================================
   TYPE. One display voice, one body voice, one scale.
   ============================================================ */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display); font-weight: 800; font-style: normal;
  text-transform: uppercase; text-wrap: balance;
}
h1 { font-size: clamp(2.2rem, 5.4vw, 4.4rem); line-height: 0.95; letter-spacing: -0.04em; }
h2 { font-size: clamp(1.6rem, 3.3vw, 2.6rem); line-height: 1; letter-spacing: -0.035em; }
h3 { font-size: clamp(1.05rem, 1.5vw, 1.25rem); line-height: 1.15; letter-spacing: -0.015em; }
h4, h5, h6 { font-size: 1rem; line-height: 1.2; letter-spacing: -0.01em; }
h1 em, h2 em, h3 em { font-style: normal; font-weight: 800; }
h1 em { -webkit-text-fill-color: transparent; -webkit-text-stroke: 1.5px currentColor; }
p { text-wrap: pretty; }
[style*="--font-display"] { font-weight: 800; text-transform: uppercase; letter-spacing: -0.02em; }

/* small uppercase labels: eyebrows, tags, meta */
.page-hero-eyebrow, .hero-eyebrow, .hub-hero-eyebrow, .legal-hero-eyebrow, .hero-404-eyebrow,
.label-tag, .sidebar-card-title, .related-card-label, .related-card__type, .article-card__category,
.explore-card-meta, .req-card__meta, .transport-card__meta, .wc-meta, .ac-meta, .nc-meta, .stat-card__label,
.summary-card__label, .experience-stat__label, .progress-label, .page-hero-meta, .visa-card__duration,
.visa-category-card__meta, .provider-card__tag, .immigration-meta-badge, .page-hero-badge, .badge, .pill {
  font-family: var(--font-body); font-size: 0.72rem; font-weight: 700; line-height: 1.4;
  text-transform: uppercase; letter-spacing: 0.16em;
}
.page-hero-eyebrow, .hero-eyebrow, .hub-hero-eyebrow, .legal-hero-eyebrow, .hero-404-eyebrow { letter-spacing: 0.26em; margin-bottom: 1.4rem; }
.label-tag, .provider-card__tag, .page-hero-badge, .badge, .pill, .immigration-meta-badge { padding: 0.35em 0.8em; letter-spacing: 0.12em; }

/* ============================================================
   WIDTHS. One page width and one gutter for every wrapper.
   ============================================================ */
.container, .header-inner, .footer-container, .page-hero-inner, .hub-hero-inner, .legal-hero-inner,
.breadcrumb-inner, .why-band-inner, .visa-section-inner, .section-footer-inner, .hub-intro-inner,
.articles-section-inner, .tools-section-inner, .article-wrap, .checklist-wrap, .legal-content,
.culture-explore-inner, .blog-explore-inner, .related-guides-section, .search-page, #glossary-container,
.hero-404-content, .suggestions, .footer-bottom-bar {
  width: 100%; max-width: var(--max-w); margin-inline: auto; padding-inline: var(--edge);
}
/* a wrapper nested inside another wrapper does not add a second gutter */
:is(.container, .header-inner, .footer-container, .page-hero-inner, .hub-hero-inner, .legal-hero-inner, .breadcrumb-inner, .why-band-inner, .visa-section-inner, .section-footer-inner, .hub-intro-inner, .articles-section-inner, .tools-section-inner, .article-wrap, .checklist-wrap, .legal-content, .culture-explore-inner, .blog-explore-inner, .related-guides-section, .search-page, #glossary-container, .hero-404-content, .suggestions, .footer-bottom-bar, .article-layout) :is(.container, .header-inner, .footer-container, .page-hero-inner, .hub-hero-inner, .legal-hero-inner, .breadcrumb-inner, .why-band-inner, .visa-section-inner, .section-footer-inner, .hub-intro-inner, .articles-section-inner, .tools-section-inner, .article-wrap, .checklist-wrap, .legal-content, .culture-explore-inner, .blog-explore-inner, .related-guides-section, .search-page, #glossary-container, .hero-404-content, .suggestions, .footer-bottom-bar) { padding-inline: 0; max-width: none; }
.section, .paths, .why-band, .visa-section, .cta-section, .section-footer, .hub-intro, .articles-section,
.culture-explore, .blog-explore, .contact-cta, .experience-strip, .immigration-highlight, .checklist-section {
  padding-block: var(--section-py);
}
.section-header { margin-bottom: clamp(2rem, 4vw, 3rem); }
.section-sub, .hub-intro-text p, .page-hero-lead, .page-hero-sub, .hub-hero-lead, .legal-hero-lead, .hero-sub {
  max-width: 58ch; font-size: clamp(1rem, 1.4vw, 1.125rem); line-height: 1.6;
}

/* ============================================================
   HEADER
   ============================================================ */
.site-header { position: fixed; top: 0; left: 0; right: 0; width: 100%; z-index: 1001; border-bottom-width: var(--line); }
.desktop-only { display: flex; }
.mobile-only, .nav-mobile { display: none; }
.nav-mobile {
  position: fixed; inset: var(--header-h) 0 auto 0; flex-direction: column; overflow-y: auto; z-index: 999;
  max-height: calc(100vh - var(--header-h)); max-height: calc(100dvh - var(--header-h));
}
@media (max-width: 1023px) {
  .desktop-only { display: none; }
  .mobile-menu-toggle { display: flex; }
  .nav-mobile.open, .nav-mobile.active { display: flex; }
}
.primary-nav { gap: clamp(0.5rem, 1.6vw, 1.6rem); }
.primary-nav a, .nav-item > a.nav-link {
  font-family: var(--font-body); font-size: 1.1rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.05em; padding-inline: 0.5rem;
}
.nav-item > a.nav-link:hover { text-decoration-thickness: 3px; }
.dropdown-menu { border-width: var(--line); padding: 1.5rem 1.75rem; }
.dropdown-section h3 { font-family: var(--font-body); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.2em; }
.dropdown-section li a, .dropdown-section ul li a {
  font-size: 0.9rem; font-weight: 500; text-transform: none; letter-spacing: 0; padding: 0.2rem 0; line-height: 1.5;
}
.header-ctas .btn-wa { padding: 0.6rem 1rem; font-size: 0.72rem; }
.nav-accordion summary { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: -0.01em; font-size: 1rem; padding: 1.1rem var(--edge); }
.nav-accordion li a { font-size: 0.95rem; padding: 0.8rem var(--edge) 0.8rem calc(var(--edge) + 1rem); }

/* ============================================================
   BUTTONS
   ============================================================ */
.btn, .cta-btn, .reset-btn, .filter-btn, .pro-tip-modal-button, .resource-card a, .term-link {
  font-family: var(--font-display); font-weight: 800; text-transform: uppercase;
  font-size: 0.82rem; letter-spacing: 0.02em; line-height: 1.2;
  border-width: var(--line); border-style: solid; border-radius: 0;
  padding: 0.95em 1.5em;
  transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease), background-color 0.2s ease-out, border-color 0.2s ease-out, color 0.2s ease-out;
}
.btn-lg { font-size: 0.95rem; padding: 1.15em 2em; }
.btn-sm, .filter-btn, .term-link { font-size: 0.72rem; padding: 0.7em 1.1em; }
@media (hover: hover) and (pointer: fine) {
  .btn:hover, .cta-btn:hover, .reset-btn:hover, .pro-tip-modal-button:hover, .resource-card a:hover {
    transform: translateY(-3px) rotate(-1deg);
    box-shadow: 0 9px 0 color-mix(in srgb, currentColor 22%, transparent);
  }
}
.btn:focus-visible { transform: translateY(-3px); }
.hero-ctas, .page-hero-ctas, .hub-hero-ctas, .cta-btns, .cta-buttons, .contact-cta-btns, .hero-404-ctas, .visa-links { gap: 0.9rem; flex-wrap: wrap; }
@media (max-width: 640px) { .btn, .cta-btn { white-space: normal; text-align: center; justify-content: center; } }

/* ============================================================
   HEROES
   ============================================================ */
.page-hero, .hub-hero, .legal-hero, .hero-404 {
  min-height: min(72svh, 640px); display: flex; align-items: flex-end;
  padding-block: clamp(4.5rem, 9vw, 7rem) clamp(2.5rem, 5vw, 4rem);
}
.page-hero h1, .hub-hero h1, .legal-hero h1, .hero-404 h1 { max-width: 1000px; margin-bottom: 1.5rem; }
.page-hero-lead, .page-hero-sub, .hub-hero-lead, .legal-hero-lead { margin-bottom: 1.75rem; }
.hero { min-height: 0; padding-top: clamp(3rem, 7vw, 6rem); }
.hero-grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); }
.hero-grid > * { min-width: 0; }
.hero-content { padding-bottom: clamp(3rem, 6vw, 5rem); }
.hero-visual-frame .btn { white-space: normal !important; text-align: center; justify-content: center; max-width: 100%; }
.hero h1 { font-size: clamp(2.6rem, 6.9vw, 6.2rem); line-height: 0.9; letter-spacing: -0.045em; }
.hero h1 .subtitle {
  font-size: clamp(1.05rem, 1.9vw, 1.5rem); line-height: 1.1; letter-spacing: -0.02em; margin-top: 0.9rem; max-width: 22ch;
}
.hero-grid { align-items: center; gap: clamp(2rem, 4vw, 4rem); }
.hero-visual-frame, .hero-stat-card, .stat-card { border-width: var(--line); }
.hero-stat-val, .stat-card__value, .experience-stat__num, .summary-card__amount {
  font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: -0.03em; font-variant-numeric: tabular-nums;
}
.stat-card__value, .experience-stat__num, .summary-card__amount { font-size: clamp(1.8rem, 3.6vw, 2.8rem); line-height: 1; }
.hero-stat-val { font-size: 1rem; }
.trust-ribbon { border-top-width: var(--line); }
.trust-item { font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.14em; }

/* breadcrumb */
.breadcrumb { border-bottom-width: var(--line); padding: 0.85rem 0; }
.breadcrumb-inner { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.14em; flex-wrap: wrap; row-gap: 0.25rem; }

/* marquee band */
.service-ticker { margin: 0; border-radius: 0; transform: rotate(-1.2deg) scale(1.02); }
.service-ticker-track span { font-family: var(--font-display); font-weight: 800; font-size: clamp(0.95rem, 1.8vw, 1.35rem); letter-spacing: -0.01em; padding: 0.8rem 0; }

/* ============================================================
   ARTICLE. Heading rail on wide screens, one reading measure.
   ============================================================ */
.article-body { padding-block: var(--section-py); }
.article-body h2 { font-size: clamp(1.45rem, 2.5vw, 2.05rem); margin-top: 3.5rem; margin-bottom: 1.1rem; padding-top: 1.4rem; border-top-width: var(--line); }
.article-body h2:first-child, .article-body h2:first-of-type { margin-top: 0; }
.article-body h3 { margin-top: 2.25rem; margin-bottom: 0.7rem; }
.article-body p, .article-body li { font-size: 1.0625rem; line-height: 1.7; }
.article-body p, .article-body ul, .article-body ol, .callout-band, .req-card, .transport-card, .provider-cards,
.callout-dark, .info-strip, .warning-strip, .alert-box { max-width: var(--measure); }
.article-body table p, .article-body table li, .article-body [class*="card"] p, .article-body [class*="card"] li,
.callout-band p, .info-strip p, .warning-strip p, .alert-box p, .disclaimer-box p, .faq-answer p { font-size: 0.95rem; line-height: 1.6; }
.article-body ul li::before { border-radius: 0; }
.article-body figure { margin: 2.5rem 0; max-width: var(--measure); }
.article-body figure img, .article-body > .article-wrap > img, .article-body > .article-wrap > picture > img { margin-inline: auto; }
.article-figure img, .article-body figure img { border-width: 0; }
.last-verified { border-top-width: var(--line); font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; }

@media (min-width: 1024px) {
  .article-body > .article-wrap, .article-body.article-wrap {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, var(--measure)); column-gap: 0; align-content: start;
  }
  .article-body > .article-wrap > *, .article-body.article-wrap > *,
  .article-body > .article-wrap > picture > img, .article-body.article-wrap > picture > img { grid-column: 2; min-width: 0; }
  .article-body > .article-wrap > h2, .article-body.article-wrap > h2 {
    grid-column: 1; padding-right: clamp(1.5rem, 4vw, 3.5rem); margin-bottom: 0; align-self: start;
    font-size: clamp(1.25rem, 1.9vw, 1.7rem); overflow-wrap: break-word; hyphens: auto;
  }
  .article-body > .article-wrap > h2 + *, .article-body.article-wrap > h2 + * {
    margin-top: 3.5rem; padding-top: 1.4rem; border-top: var(--line) solid var(--c-border);
  }
  .article-body > .article-wrap > h2:first-child + *, .article-body.article-wrap > h2:first-child + * { margin-top: 0; }
  .article-body > .article-wrap > .article-wrap, .article-body.article-wrap > .article-wrap,
  .article-body > .article-wrap > section, .article-body > .article-wrap > .faq-list,
  .article-body > .article-wrap > .related-guides-section { grid-column: 1 / -1; }
}

/* sidebar layout: quick facts lock beside the article */
.article-layout { grid-template-columns: minmax(0, 1fr) 320px; gap: clamp(2rem, 4vw, 4rem); padding-block: var(--section-py); }
.article-layout .article-body { padding-block: 0; min-width: 0; }
.article-sidebar { position: sticky; top: calc(var(--header-h) + 1.25rem); align-self: start; }
.sidebar-card { border-width: var(--line); border-style: solid; padding: var(--card-pad); }
.sidebar-card + .sidebar-card { margin-top: -2px; }
.sidebar-stat { border-bottom-width: var(--line); padding: 0.7rem 0; gap: 1rem; }
.sidebar-stat-label { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; }
.sidebar-stat-value { font-family: var(--font-display); font-weight: 800; font-size: 0.95rem; letter-spacing: -0.01em; text-align: right; }
@media (max-width: 1023px) {
  .article-layout { grid-template-columns: 1fr; }
  .article-sidebar { position: static; }
}

/* ============================================================
   CARDS. One card: square, keyline, same padding, same lift.
   ============================================================ */
.path-card, .explore-card, .related-card, .topic-card, .tool-card, .visa-card, .visa-category-card, .checklist-card,
.article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card, .summary-card,
.provider-card, .bank-card, .card, .why-item {
  border-width: var(--line); border-style: solid; border-radius: 0; box-shadow: none;
  transition: transform 0.4s var(--ease), box-shadow 0.4s var(--ease), border-color 0.2s ease-out;
}
.path-card, .related-card, .topic-card, .tool-card, .visa-card, .visa-category-card, .checklist-card,
.article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card, .summary-card,
.provider-card, .bank-card, .card { padding: var(--card-pad); }
.explore-card-body { padding: var(--card-pad); }
.path-card, .explore-card, .related-card, .topic-card, .visa-card, .visa-category-card, .checklist-card, .article-card,
.program-card, .guide-card, .culture-card, .suggestion-card, .tool-grid > .tool-card { display: flex; flex-direction: column; align-items: stretch; }
.path-card__cta, .topic-card__cta, .tool-grid .tool-card__cta, .visa-card__cta, .visa-category-card__cta, .checklist-card__cta,
.article-card__link, .program-card__cta, .guide-card .cta { display: inline-flex; align-items: center; gap: 0.4em; align-self: flex-start; margin-top: auto; }
.why-item { padding: 1.1rem 1.25rem; }
.why-items { gap: 0; }
.why-item + .why-item { margin-top: -2px; }
@media (hover: hover) and (pointer: fine) {
  a.path-card:hover, .path-card:hover, .explore-card:hover, .related-card:hover, .topic-card:hover, .tool-card:hover,
  .visa-card:hover, .visa-category-card:hover, .checklist-card:hover, .article-card:hover, .program-card:hover,
  .guide-card:hover, .resource-card:hover, .culture-card:hover, .suggestion-card:hover {
    transform: translateY(-6px) rotate(-0.5deg);
    box-shadow: 0 10px 0 color-mix(in srgb, var(--accent) 22%, transparent);
    border-color: var(--accent);
  }
}
.path-card::before, .tool-card::after, .topic-card::before, .topic-card::after { height: 0; display: none; }
.path-card__title, .explore-card-title, .related-card-title, .related-card__title, .topic-card__title, .tool-card__title,
.visa-card__title, .visa-category-card__title, .checklist-card__title, .article-card__title, .program-card__title,
.req-card__title, .transport-card__title, .provider-card__name, .bank-card__name, .why-item__title, .term-title,
.immigration-panel-title, .checklist-title, .results-heading, .suggestions-heading, .footer-col-title,
.guide-card h3, .resource-card h3, .culture-card h3, .card h3, .suggestion-card h3, .summary-card h3 {
  font-family: var(--font-display); font-weight: 800; text-transform: uppercase;
  font-size: 1.15rem; line-height: 1.15; letter-spacing: -0.02em;
}
.why-item__title, .req-card__title, .transport-card__title, .provider-card__name, .bank-card__name, .term-title { font-size: 1rem; }
.path-card__desc, .explore-card-desc, .related-card-desc, .related-card__desc, .topic-card__desc, .tool-card__desc,
.visa-card__desc, .visa-category-card__desc, .checklist-card__desc, .article-card__desc, .program-card__desc,
.why-item__desc, .path-card__list li { font-size: 0.95rem; line-height: 1.6; }
.path-card__cta, .topic-card__cta, .tool-card__cta, .visa-card__cta, .visa-category-card__cta, .checklist-card__cta,
.article-card__link, .program-card__cta, .immigration-topic-label, .guide-card .cta, .sidebar-links a {
  font-size: 0.78rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em;
  text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 3px;
}
.path-card__icon-wrap, .topic-card__icon, .tool-card__icon, .visa-card__icon, .visa-category-card__icon,
.checklist-card__icon, .program-card__icon, .req-card__icon, .hero-stat-icon, .suggestion-card-icon { border-radius: 0; }

/* card grids share one gap and one column logic */
.paths-grid, .special-programs-grid, .related-grid, .explore-cards, .explore-grid, .topic-grid, .tool-grid, .visa-grid,
.visa-cards, .visa-category-grid, .checklist-grid, .articles-grid, .program-grid, .guides-grid, .resource-grid,
.culture-cards, .culture-explore-grid, .suggestions-grid, .summary-cards, .provider-cards, .bank-cards, .card-row,
.hub-hero-stats, .search-tips-grid, .inline-grid-3col {
  gap: clamp(1rem, 2vw, 1.5rem); width: 100%; max-width: none; margin-inline: 0;
}
.article-body .provider-cards { max-width: var(--measure); }
:is(.paths-grid, .special-programs-grid, .related-grid, .explore-cards, .explore-grid, .topic-grid, .tool-grid, .visa-grid,
.visa-cards, .visa-category-grid, .checklist-grid, .articles-grid, .program-grid, .guides-grid, .resource-grid,
.culture-cards, .culture-explore-grid, .suggestions-grid, .summary-cards, .provider-cards, .bank-cards, .card-row,
.hub-hero-stats, .search-tips-grid, .inline-grid-3col, .article-layout) > * { min-width: 0; }

/* callouts: one accent bar */
.info-strip, .warning-strip, .callout-band, .alert-box, .req-card, .transport-card, .workspace-card, .activity-card,
.neighbourhood-card, .path-card__disclaimer, .glossary-section-title {
  border-left-width: 6px; border-left-style: solid; border-radius: 0; padding: 1.25rem 1.5rem;
}
.workspace-card, .activity-card, .neighbourhood-card { border-top-width: var(--line); border-right-width: var(--line); border-bottom-width: var(--line); }
.disclaimer-box { border-width: var(--line); padding: var(--card-pad); max-width: var(--measure); }
.disclaimer-box h2 { font-family: var(--font-body); font-size: 0.72rem; letter-spacing: 0.2em; line-height: 1.4; }

/* ============================================================
   TABLES
   ============================================================ */
.table-scroll, .data-table-wrap, .table-wrap { overflow-x: auto; max-width: 100%; }
table { border-radius: 0; }
.data-table th, .cost-table th, .comparison-table th, .comp-table th, .tz-table th, .article-body table th {
  font-family: var(--font-display); font-weight: 800; text-transform: uppercase; font-size: 0.74rem;
  letter-spacing: 0.04em; padding: 0.9rem 0.85rem; border-bottom-width: 3px; border-bottom-style: solid;
}
.data-table td, .cost-table td, .comparison-table td, .comp-table td, .tz-table td, .article-body table td {
  padding: 0.9rem 0.85rem; font-size: 0.93rem; line-height: 1.5; font-variant-numeric: tabular-nums;
}

/* ============================================================
   FAQ
   ============================================================ */
.faq-item { border-bottom-width: var(--line); }
.faq-item:first-child { border-top-width: var(--line); }
.faq-question {
  font-family: var(--font-display); font-weight: 800; text-transform: uppercase;
  font-size: clamp(0.98rem, 1.5vw, 1.15rem); letter-spacing: -0.01em; line-height: 1.2; padding: 1.4rem 0.25rem;
}
.faq-question svg { width: 1.4em; height: 1.4em; transition: transform 0.4s var(--ease); }
.faq-answer { padding-inline: 0.25rem; max-width: var(--measure); }

/* ============================================================
   BANDS
   ============================================================ */
.cta-section h2, .contact-cta h2 { font-size: clamp(2rem, 6vw, 4.4rem); line-height: 0.92; letter-spacing: -0.045em; max-width: 16ch; margin-inline: auto; margin-bottom: 1.5rem; }
.cta-section p, .contact-cta p { font-size: 1.05rem; }
.visa-section h2, .section-footer h2, .why-band h2 { margin-bottom: 1.5rem; }
.why-band { border-top-width: var(--line); border-bottom-width: var(--line); }
.experience-quote { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: -0.02em; line-height: 1.1; font-style: normal; }

/* checklists */
.checklist-container { border-width: var(--line); border-style: solid; }
.checklist-text { font-size: 1rem; }
.checklist-progress, .progress-fill { border-radius: 0; }

/* forms and search */
.search-input, .search-box input, #search-box, input[type="text"], input[type="search"], input[type="email"], input[type="date"], select, textarea {
  border-width: var(--line); border-radius: 0; font-family: var(--font-body); font-size: 1rem;
}
.pro-tip-modal-content { border-width: var(--line); border-style: solid; }

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer { padding-top: clamp(3.5rem, 6vw, 5.5rem); }
.footer-col-title { font-size: 0.95rem; margin-bottom: 1.1rem; }
.footer-links a { font-size: 0.92rem; }
.footer-bottom-bar, .footer-legal-links a { font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.12em; }
.social-icon { border-radius: 0; }

/* reading progress */
.progress-bar { height: 4px; z-index: 10001; }

/* ============================================================
   MOTION. Hidden states exist only when site.js has confirmed motion is welcome.
   ============================================================ */
.kword { display: inline-block; overflow: hidden; vertical-align: bottom; padding-bottom: 0.06em; margin-bottom: -0.06em; }
.kword > span { display: inline-block; }
.js-motion .ksplit .kword > span { transform: translateY(110%); transition: transform 0.8s var(--ease); transition-delay: calc(var(--i, 0) * 60ms); }
.js-motion .ksplit.kshow .kword > span { transform: translateY(0); }
.js-motion .rise { opacity: 0; transform: translateY(28px); transition: opacity 0.6s var(--ease), transform 0.6s var(--ease); transition-delay: calc(var(--i, 0) * 70ms); }
.js-motion .rise.up { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
  .service-ticker { transform: none; }
}

/* ============================================================
   SMALL SCREENS
   ============================================================ */
@media (max-width: 640px) {
  .hero-grid, .paths-grid, .guides-row, .guides-grid, .compliance-grid, .immigration-inner, .experience-inner,
  .experience-stats, .related-grid, .related-guides-grid, .culture-explore-grid, .culture-cards, .explore-cards,
  .explore-grid, .topic-grid, .visa-grid, .visa-cards, .visa-category-grid, .hub-hero-stats, .hub-hero-inner,
  .blog-explore-grid, .suggestions-grid, .articles-grid, .provider-cards, .program-grid, .summary-cards,
  .checklist-grid, .tool-grid, .resource-grid, .footer-container, .footer-top, .special-programs-grid,
  .inline-grid-3col, .article-layout, .bank-cards, .card-row, .search-tips-grid { grid-template-columns: 1fr; }
  table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  img, video, iframe, table, pre, .container, .section, article, .alert-box, .cta-section, .hero-content, .page-hero { max-width: 100%; box-sizing: border-box; }
  .page-hero, .hub-hero, .legal-hero, .hero-404 { min-height: 0; }
}

}

/* ============================================================
   ACTIVE LAYER (added after the first restyle pass)
   Tilted marquee bands, keyline card grids that fill on hover,
   numbered cards, outlined scroll track, livelier FAQ.
   ============================================================ */
@layer skin {

/* ---------- hero entrance: pure CSS, so the title never flashes ---------- */
@keyframes krise { from { transform: translateY(46px); opacity: 0; } to { transform: none; opacity: 1; } }
@media (prefers-reduced-motion: no-preference) {
  .hero h1, .page-hero h1, .hub-hero h1, .legal-hero h1, .hero-404 h1 { animation: krise 0.9s var(--ease) both; }
  .hero-eyebrow, .page-hero-eyebrow, .hub-hero-eyebrow, .legal-hero-eyebrow, .hero-404-eyebrow, .page-hero .label-tag { animation: krise 0.7s var(--ease) both; }
  .hero-sub, .page-hero-lead, .page-hero-sub, .hub-hero-lead, .legal-hero-lead, .hero-404-sub { animation: krise 0.9s var(--ease) 0.12s both; }
  .hero-ctas, .page-hero-ctas, .hub-hero-ctas, .hero-404-ctas, .hero-trust, .page-hero-meta { animation: krise 0.9s var(--ease) 0.22s both; }
  .hero-visuals-stack, .hub-hero-stats { animation: krise 1s var(--ease) 0.18s both; }
}

/* ---------- tilted marquee pair at the foot of every hero ---------- */
.hero, .page-hero, .hub-hero, .legal-hero, .hero-404 { position: relative; overflow: hidden; }
.page-hero, .hub-hero, .legal-hero, .hero-404 { padding-bottom: clamp(9.5rem, 15vw, 12rem); }
.hero { padding-bottom: clamp(8.5rem, 13vw, 10.5rem); }
.kbands { position: absolute; left: 0; right: 0; bottom: 1.6rem; z-index: 3; }
.kband {
  overflow: hidden; white-space: nowrap; padding: 0.75rem 0;
  background: var(--c-white); color: var(--c-dark);
  border-top: 3px solid var(--c-dark); border-bottom: 3px solid var(--c-dark);
  transform: rotate(-1.2deg) scale(1.03);
}
.kband--rev {
  background: var(--c-dark); color: var(--c-white); border-color: var(--c-white);
  transform: rotate(1.2deg) scale(1.03); margin-top: -3px;
}
.kband-skew { display: block; will-change: transform; }
.kband-track { display: inline-block; will-change: transform; animation: kmarq 38s linear infinite; }
.kband--rev .kband-track { animation-duration: 46s; animation-direction: reverse; }
.kbands:hover .kband-track { animation-play-state: paused; }
.kband-track > * {
  font-family: var(--font-display); font-weight: 800; text-transform: uppercase;
  font-size: clamp(0.95rem, 2vw, 1.55rem); letter-spacing: -0.01em; margin-right: 2.5rem;
}
.kband-track > *::after { content: "//"; margin-left: 2.5rem; opacity: 0.45; }
.kband-track a { color: inherit; text-decoration: none; }
.kband-track a::after { display: inline-block; text-decoration: none; }
@media (hover: hover) and (pointer: fine) {
  .kband-track a:hover { text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 5px; }
}
.kband-track { animation-duration: 90s; }
.kband--rev .kband-track { animation-duration: 105s; }
/* cards carry no icon tile: number, title, text, link */
.path-card__icon-wrap, .topic-card__icon, .tool-grid .tool-card__icon, .visa-card__icon, .visa-category-card__icon,
.checklist-card__icon, .program-card__icon, .suggestion-card-icon { display: none; }
.path-card__title, .topic-card__title, .tool-grid .tool-card__title, .visa-card__title, .visa-category-card__title,
.checklist-card__title, .program-card__title, .article-card__title, .guide-card h3, .resource-card h3, .culture-card h3,
.suggestion-card h3, .related-card-title, .related-card__title { padding-right: 3rem; margin-top: 0; }
@keyframes kmarq { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ---------- section headings react to scroll speed ---------- */
.kvel { transform-origin: left center; will-change: transform; }

/* ---------- keyline card grids: shared borders, numbered, fill on hover ---------- */
.paths-grid, .special-programs-grid, .related-grid, .explore-cards, .explore-grid, .topic-grid, .tool-grid, .visa-grid,
.visa-cards, .visa-category-grid, .checklist-grid, .articles-grid, .program-grid, .guides-grid, .resource-grid,
.culture-cards, .culture-explore-grid, .suggestions-grid {
  gap: 0; counter-reset: kcard; padding: 0 2px 2px 0;
}
:is(.paths-grid, .special-programs-grid, .related-grid, .explore-cards, .explore-grid, .topic-grid, .tool-grid, .visa-grid,
.visa-cards, .visa-category-grid, .checklist-grid, .articles-grid, .program-grid, .guides-grid, .resource-grid,
.culture-cards, .culture-explore-grid, .suggestions-grid) > * { margin: 0 -2px -2px 0; counter-increment: kcard; }

.path-card, .explore-card, .related-card, .topic-card, .tool-grid > .tool-card, .visa-card, .visa-category-card,
.checklist-card, .article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card, .hero-stat-card {
  position: relative; overflow: hidden; isolation: isolate;
  transition: color 0.35s ease-out, border-color 0.35s ease-out;
}
:is(.path-card, .explore-card, .related-card, .topic-card, .tool-grid > .tool-card, .visa-card, .visa-category-card,
.checklist-card, .article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card, .hero-stat-card)::before {
  content: ""; display: block; position: absolute; inset: 0; width: auto; height: auto; z-index: -1; opacity: 1;
  background: var(--accent); border-radius: 0;
  transform: translateY(101%); transition: transform 0.45s var(--ease);
}
:is(.paths-grid, .special-programs-grid, .related-grid, .topic-grid, .tool-grid, .visa-grid, .visa-cards, .visa-category-grid,
.checklist-grid, .articles-grid, .program-grid, .guides-grid, .resource-grid, .culture-cards, .suggestions-grid)
> :is(.path-card, .related-card, .topic-card, .tool-card, .visa-card, .visa-category-card, .checklist-card, .article-card,
.program-card, .guide-card, .resource-card, .culture-card, .suggestion-card)::after {
  content: "/" counter(kcard, decimal-leading-zero); display: block; position: absolute; inset: auto;
  top: var(--card-pad); right: var(--card-pad); width: auto; height: auto; background: none; opacity: 1;
  font-family: var(--font-display); font-weight: 800; font-size: 0.85rem; line-height: 1; color: var(--accent);
  transition: color 0.35s ease-out;
}
.path-card *, .explore-card *, .related-card *, .topic-card *, .tool-card *, .visa-card *, .visa-category-card *,
.checklist-card *, .article-card *, .program-card *, .guide-card *, .resource-card *, .culture-card *, .suggestion-card * {
  transition: color 0.35s ease-out, background-color 0.35s ease-out, border-color 0.35s ease-out;
}
@media (hover: hover) and (pointer: fine) {
  :is(.path-card, .explore-card, .related-card, .topic-card, .tool-grid > .tool-card, .visa-card, .visa-category-card,
  .checklist-card, .article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card, .hero-stat-card):hover {
    transform: none !important; box-shadow: none !important; border-color: var(--accent); color: var(--c-white);
  }
  :is(.path-card, .explore-card, .related-card, .topic-card, .tool-grid > .tool-card, .visa-card, .visa-category-card,
  .checklist-card, .article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card, .hero-stat-card):hover::before { transform: translateY(0); }
  :is(.path-card, .explore-card, .related-card, .topic-card, .tool-grid > .tool-card, .visa-card, .visa-category-card,
  .checklist-card, .article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card):hover :is(h2, h3, h4, p, li, a, span, div, strong, small) { color: var(--c-white) !important; }
  :is(.path-card, .related-card, .topic-card, .tool-card, .visa-card, .visa-category-card, .checklist-card, .article-card,
  .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card):hover::after { color: var(--c-white); }
  :is(.path-card, .explore-card, .related-card, .topic-card, .tool-card, .visa-card, .visa-category-card, .checklist-card,
  .article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card):hover
  :is([class*="icon"], .pill, .label-tag, .path-card__disclaimer, .resource-card a) { background: rgba(255, 255, 255, 0.16) !important; border-color: var(--c-white) !important; }
  :is(.path-card, .topic-card, .visa-card):hover li::before { background: var(--c-white); }
}
:is(.path-card, .explore-card, .related-card, .topic-card, .tool-grid > .tool-card, .visa-card, .visa-category-card,
.checklist-card, .article-card, .program-card, .guide-card, .resource-card, .culture-card, .suggestion-card):focus-within { border-color: var(--accent); }

.path-card__desc, .topic-card__desc, .visa-card__desc, .visa-category-card__desc, .checklist-card__desc, .article-card__desc, .program-card__desc, .tool-grid .tool-card__desc { flex: 0 0 auto; }

/* why-items and callouts get a nudge instead of a fill */
@media (hover: hover) and (pointer: fine) {
  .why-item { transition: transform 0.35s var(--ease), border-color 0.2s ease-out; }
  .why-item:hover { transform: translateX(10px); border-color: var(--accent); z-index: 1; position: relative; }
  .sidebar-stat { transition: transform 0.3s var(--ease); }
  .sidebar-stat:hover { transform: translateX(6px); }
  .data-table tr, .cost-table tr { transition: background-color 0.2s ease-out; }
}

/* ---------- outlined, scroll-linked track above the footer ---------- */
.ktrack { overflow: hidden; padding: clamp(2.5rem, 6vw, 4.5rem) 0; border-top: var(--line) solid var(--c-border); background: var(--c-white); }
.ktrack-inner { display: flex; white-space: nowrap; width: max-content; will-change: transform; }
.ktrack-inner span {
  font-family: var(--font-display); font-weight: 800; text-transform: uppercase;
  font-size: clamp(1.8rem, 5.2vw, 4.2rem); line-height: 1; letter-spacing: -0.02em; padding: 0 1.5rem;
  color: transparent; -webkit-text-stroke: 1.5px color-mix(in srgb, var(--c-dark) 38%, transparent);
  transition: color 0.3s ease-out, -webkit-text-stroke-color 0.3s ease-out;
}
.ktrack-inner span:hover { color: var(--accent); -webkit-text-stroke-color: var(--accent); }

/* ---------- FAQ: the question moves when you point at it ---------- */
.faq-item { overflow: hidden; }
.faq-question { padding-right: 1.25rem; transition: color 0.25s ease-out, transform 0.35s var(--ease); }
@media (hover: hover) and (pointer: fine) {
  .faq-question:hover { transform: translateX(14px); color: var(--accent); }
}
.faq-question svg { color: var(--accent); width: 1.6em; height: 1.6em; }

/* ---------- buttons and links ---------- */
.breadcrumb-inner a, .footer-links a, .visa-links a { transition: transform 0.3s var(--ease), color 0.2s ease-out; display: inline-block; }
@media (hover: hover) and (pointer: fine) {
  .footer-links a:hover { transform: translateX(6px); }
  .visa-links a:hover { transform: translateY(-3px) rotate(-1deg); }
}

@media (prefers-reduced-motion: reduce) {
  .kband, .kband--rev { transform: none; }
  .kband-track { animation: none; }
}
@media (max-width: 640px) {
  .kbands { bottom: 1.1rem; }
  .page-hero, .hub-hero, .legal-hero, .hero-404, .hero { padding-bottom: 8.5rem; }
}

}
