@layer destination-artifact { @scope (.destination-content) {

:scope{
  --ink:#171718;--ink-2:#3f4047;--muted:#6e7079;--line:#e7e6eb;--paper:#fff;
  --soft:#f7f6fb;--soft-2:#f1eff8;--purple:#57509d;--purple-dark:#2d2956;
  --purple-deep:#17142f;--yellow:#ffd31a;--yellow-soft:#fff5bd;--red:#d34949;
  --green:#2e8c62;--blue:#3970b7;--max:1240px;--gutter:48px;--r:22px;--r-lg:34px;
  --shadow:0 22px 60px rgba(33,29,71,.10);--shadow-sm:0 12px 34px rgba(33,29,71,.08);
  --head:"Aptos Display","Segoe UI",Inter,system-ui,-apple-system,sans-serif;
  --body:"Aptos","Segoe UI",Inter,system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:132px;max-width:100%;overflow-x:hidden}body{margin:0;max-width:100%;overflow-x:hidden;background:#fff;color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.68;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 15% 15%,rgba(87,80,157,.055),transparent 24%),radial-gradient(circle at 85% 55%,rgba(255,211,26,.06),transparent 22%)}
a{color:inherit}h1,h2,h3,h4{font-family:var(--head);letter-spacing:-.035em;line-height:1.06;margin:0}h1{font-size:clamp(48px,6vw,78px);font-weight:800}h2{font-size:clamp(34px,4vw,52px);font-weight:780}h3{font-size:21px;font-weight:750}p{margin:0 0 16px;color:var(--ink-2)}.wrap{width:min(var(--max),calc(100% - (var(--gutter)*2)));margin:auto}
.topbar{background:var(--yellow);color:var(--ink);font-size:13px;font-weight:700}.topbar .wrap{min-height:36px;display:flex;align-items:center;justify-content:center;text-align:center;gap:10px}.topbar b{font-weight:850}
.site{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.93);backdrop-filter:blur(18px);border-bottom:1px solid rgba(23,23,24,.08)}.site .wrap{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;font-family:var(--head);font-size:18px;font-weight:850;letter-spacing:.015em}.brand small{display:block;margin-top:2px;font-family:var(--body);font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;text-decoration:none;font-family:var(--head);font-weight:800;white-space:nowrap}.header-cta{background:var(--ink);color:#fff;padding:11px 18px;font-size:14px}
.jump{position:sticky;top:76px;z-index:90;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.jump::-webkit-scrollbar{display:none}.jump .wrap{display:flex;gap:4px;white-space:nowrap;width:max-content;min-width:min(var(--max),calc(100% - (var(--gutter)*2)))}.jump a{padding:11px 12px;text-decoration:none;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.065em;border-bottom:2px solid transparent}
.hero{position:relative;overflow:hidden;padding:86px 0 84px;background:linear-gradient(135deg,#f7f6fb 0%,#fff 52%,#fbf7dc 100%);border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;width:570px;height:570px;border:1px solid rgba(87,80,157,.14);border-radius:50%;right:-110px;top:-190px;box-shadow:0 0 0 70px rgba(87,80,157,.035),0 0 0 140px rgba(87,80,157,.025)}.hero:after{content:"DE";position:absolute;right:3.5%;bottom:-70px;font:900 230px/1 var(--head);letter-spacing:-.1em;color:rgba(87,80,157,.045)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center;position:relative;z-index:2}.hero .eyebrow,.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.11em;font-weight:850;color:var(--purple);margin-bottom:18px}.hero .eyebrow:before,.section:not(.video-section) .eyebrow:before{content:"";width:26px;height:3px;border-radius:999px;background:var(--yellow)}.hero h1{max-width:770px}.hero h1:after{content:"A COMPLETE GUIDE";display:block;width:max-content;margin-top:16px;padding:8px 12px;border:1px solid rgba(87,80,157,.2);border-radius:999px;background:#fff;font-size:11px;letter-spacing:.13em;color:var(--purple);font-weight:850}.hero p{max-width:720px;font-size:18px;line-height:1.65}.hero p:first-of-type{margin-top:26px}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{border:1px solid var(--ink);padding:14px 22px;font-size:14px}.btn.primary{background:var(--purple);color:#fff;border-color:var(--purple)}.btn.primary:after,.header-cta:after{content:"→";font-size:17px}.hero-note{position:relative;margin-top:18px;padding-left:18px;font-size:13px;color:var(--muted)}.hero-note:before{content:"";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 4px rgba(255,211,26,.22)}
.path-card{position:relative;background:var(--purple-deep);color:#fff;border-radius:30px;padding:30px;box-shadow:0 30px 70px rgba(34,29,75,.2);overflow:hidden}.path-card:before{content:"";position:absolute;width:180px;height:180px;border:40px solid rgba(255,255,255,.035);border-radius:50%;right:-80px;top:-70px}.path-card h3{font-size:24px;margin-bottom:18px;color:#fff}.route-step{position:relative;display:grid;grid-template-columns:44px 1fr;gap:14px;padding:15px 0;z-index:1}.route-step:not(:last-of-type):after{content:"";position:absolute;left:21px;top:49px;bottom:-5px;width:2px;background:linear-gradient(var(--yellow),rgba(255,255,255,.16))}.route-step>span{width:42px;height:42px;border-radius:13px;background:var(--yellow);color:var(--ink);display:grid;place-items:center;font:850 14px var(--head);box-shadow:0 7px 20px rgba(255,211,26,.18)}.route-step b{display:block;color:#fff;font:750 14px var(--head);margin-top:1px}.route-step small{display:block;margin-top:3px;color:rgba(255,255,255,.65);font-size:12.5px;line-height:1.5}.path-card .foot{margin-top:20px;padding:15px 16px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.06);font-size:12.5px;color:#fff;font-weight:700}
.section{position:relative;padding:90px 0;border-top:1px solid var(--line)}.section.soft{background:var(--soft)}.section:nth-of-type(4n+1):not(.video-section):not(.faq-section){background-image:linear-gradient(180deg,#fff 0,#fff 55%,#fbfaff 100%)}.sec-head{display:grid;grid-template-columns:minmax(0,1fr);max-width:920px;margin-bottom:34px}.sec-head:before{content:attr(data-index);display:inline-flex;width:max-content;margin-bottom:12px;padding:6px 9px;border-radius:8px;background:var(--yellow-soft);color:#6d5800;font-size:10px;font-weight:900;letter-spacing:.08em}.sec-head h2{max-width:900px}.prose{max-width:1100px}.prose>p:first-child{font-size:18px;max-width:900px;color:var(--ink-2)}.prose ul{padding:0;margin:24px 0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.prose li{position:relative;padding:14px 16px 14px 42px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink-2)}.prose li:before{content:"✓";position:absolute;left:14px;top:13px;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--ink);font-size:11px;font-weight:900}.micro{margin:0}.subhead{margin:0}.ui-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:30px 0}.ui-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ui-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ui-card{position:relative;min-height:180px;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}.ui-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-44px;bottom:-44px;background:var(--soft-2)}.ui-card .label{display:inline-block;margin-bottom:18px;padding:6px 9px;border-radius:999px;background:var(--soft-2);color:var(--purple);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.075em}.ui-card h3{font-size:21px;margin-bottom:11px;position:relative;z-index:1}.ui-card p{font-size:14.5px;margin:0;position:relative;z-index:1}.ui-card.warn{border-top:4px solid var(--red)}.ui-card.help{border-top:4px solid var(--yellow)}.ui-card.route{border-top:4px solid var(--purple)}.ui-card.numbered{padding-top:60px}.ui-card.numbered .num{position:absolute;top:18px;left:22px;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:11px;font-weight:900}.ui-card.numbered:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--yellow),var(--purple))}
.course-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:28px 0 10px}.course-card{position:relative;min-height:215px;padding:22px 18px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden}.course-card:before{content:attr(data-course);position:absolute;right:-5px;top:2px;font:900 58px/1 var(--head);color:rgba(87,80,157,.07)}.course-card .course-letter{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--purple);color:#fff;font:900 18px var(--head);margin-bottom:18px}.course-card h3{font-size:17px;line-height:1.22;margin-bottom:9px}.course-card p{font-size:13px;line-height:1.5;margin:0}.course-card:nth-child(2) .course-letter{background:#8d5d9d}.course-card:nth-child(3) .course-letter{background:#b84c58}.course-card:nth-child(4) .course-letter{background:#4d7da5}.course-card:nth-child(5) .course-letter{background:#5c8164}
.table-wrap{overflow:auto;margin:28px 0;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm)}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th,.data-table td{padding:18px 18px;text-align:left;vertical-align:top;border-top:1px solid var(--line);font-size:14px}.data-table thead th{border-top:0;background:var(--purple-deep);color:#fff;font-family:var(--head);font-size:13px;letter-spacing:.015em}.data-table td:first-child{font-family:var(--head);font-weight:780;color:var(--ink);background:#faf9fd}.data-table td:nth-child(2){font-weight:700;color:var(--purple-dark)}
.compare-split{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.compare-card{position:relative;padding:30px;border-radius:26px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow-sm)}.compare-card:first-child{border-top:6px solid var(--purple)}.compare-card:last-child{border-top:6px solid var(--yellow)}.compare-card .label{font-size:10px;font-weight:900;letter-spacing:.085em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}.compare-card h3{font-size:28px;margin-bottom:13px}.compare-card p{margin:0}
.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:30px 0}.process-card{position:relative;min-height:205px;padding:24px 20px;border-radius:20px;background:#fff;border:1px solid var(--line)}.process-card .num{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;color:var(--purple);font-size:11px;font-weight:900;letter-spacing:.08em}.process-card .num:after{content:"→";font-size:18px;color:#bbb}.process-card:last-child .num:after{display:none}.process-card h3{font-size:18px;margin-bottom:9px}.process-card p{font-size:13.5px;margin:0}.process-note{padding:24px 26px;border-radius:20px;background:var(--yellow-soft);border:1px solid #ead66c;margin-top:18px}.process-note h3{font-size:22px;margin-bottom:8px}.process-note p{margin:0}
.timeline{position:relative;margin:34px 0 0;padding-left:28px}.timeline:before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--purple),var(--yellow))}.timeline-item{position:relative;display:grid;grid-template-columns:190px 1fr;gap:26px;padding:0 0 30px 34px}.timeline-item:before{content:"";position:absolute;left:-28px;top:8px;width:16px;height:16px;border-radius:50%;background:var(--yellow);border:4px solid #fff;box-shadow:0 0 0 1px var(--purple)}.timeline-item .when{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--purple);padding-top:3px}.timeline-item h3{font-size:19px;margin-bottom:8px}.timeline-item p{font-size:14px;margin:0;max-width:780px}
.language-panel{position:relative;overflow:hidden;margin-top:28px;padding:34px;border-radius:28px;background:linear-gradient(130deg,var(--purple-deep),#3f397b);color:#fff;box-shadow:var(--shadow)}.language-panel:after{content:"B2";position:absolute;right:25px;bottom:-34px;font:900 150px/1 var(--head);color:rgba(255,255,255,.05)}.language-panel p{color:rgba(255,255,255,.75);max-width:760px}.level-row{display:flex;align-items:center;gap:10px;margin-top:26px;flex-wrap:wrap}.level{padding:10px 15px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);font-size:12px;font-weight:850}.level.active{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.level-arrow{color:rgba(255,255,255,.5)}
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:30px 0}.price-card{padding:28px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}.price-card.public{background:linear-gradient(160deg,#fff,#f7f6ff);border-top:6px solid var(--purple)}.price-card.private{background:linear-gradient(160deg,#fff,#fffbed);border-top:6px solid var(--yellow)}.price-card .label{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.price-card h3{font-size:38px;margin:10px 0}.price-card p{font-size:14px;margin:0}.note-card{margin:24px 0;padding:24px 26px;border-radius:20px;background:#181818;color:#fff}.note-card p{color:rgba(255,255,255,.78);margin:0}.note-card strong{color:var(--yellow)}
.cta-card{position:relative;margin:32px 0;padding:28px 30px;border-radius:26px;background:linear-gradient(120deg,var(--purple-deep),#4b4590);color:#fff;overflow:hidden;box-shadow:var(--shadow)}.cta-card:after{content:"";position:absolute;width:150px;height:150px;border:35px solid rgba(255,255,255,.04);border-radius:50%;right:-50px;top:-45px}.cta-card .cta-title{font:800 23px/1.18 var(--head);color:#fff;max-width:680px}.cta-card .cta-copy{margin-top:8px;color:rgba(255,255,255,.72);max-width:800px}.cta-card .cta-text{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:11px 16px;border-radius:999px;background:var(--yellow);color:var(--ink);font-weight:850;text-decoration:none}.cta-card .cta-text:after{content:"→"}
.video-section{background:var(--purple-deep);color:#fff;border-top:0}.video-section .sec-head:before{background:rgba(255,211,26,.13);color:var(--yellow)}.video-section h2{color:#fff}.video-section .eyebrow{color:var(--yellow)}.video-placeholder{position:relative;aspect-ratio:16/6.8;border-radius:30px;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;gap:20px;text-align:left;background:radial-gradient(circle at 18% 15%,rgba(255,211,26,.12),transparent 26%),linear-gradient(145deg,#2d2956,#11101f);overflow:hidden}.video-placeholder:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.06);border-radius:21px}.video-placeholder .play{position:relative;z-index:1;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--ink);font-size:24px;box-shadow:0 0 0 12px rgba(255,211,26,.08)}.video-placeholder strong{position:relative;z-index:1;display:block;font:780 20px var(--head);color:#fff}.video-placeholder span{position:relative;z-index:1;display:block;margin-top:4px;color:rgba(255,255,255,.58);font-size:13px}
.fsp-panel{margin-top:48px;padding:34px;border-radius:30px;background:linear-gradient(145deg,#f7f6fb,#fff);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.fsp-panel .inner-title{font:800 clamp(27px,3vw,38px)/1.08 var(--head);letter-spacing:-.03em;margin-bottom:14px}.fsp-panel>.lead{font-size:17px;max-width:840px}.fsp-panel .ui-grid{margin-bottom:0}
#can-you-apply-to-any-german-university-after-studienkolleg .prose ul{grid-template-columns:repeat(4,minmax(0,1fr))}#can-you-apply-to-any-german-university-after-studienkolleg .prose li{min-height:92px;padding:44px 14px 14px;border-radius:18px}#can-you-apply-to-any-german-university-after-studienkolleg .prose li:before{left:14px;top:14px}
.mistakes .ui-grid,.help-section .ui-grid{margin-top:30px}.help-section{background:linear-gradient(180deg,#f7f6fb,#fff)}
.faq-section{padding-bottom:100px}.faq{max-width:980px}.faq details{border:1px solid var(--line);border-radius:16px;background:#fff;margin-bottom:10px;overflow:hidden}.faq summary{cursor:pointer;list-style:none;padding:19px 58px 19px 20px;position:relative;font:760 16px/1.35 var(--head)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:16px;top:13px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--soft-2);color:var(--purple);font-size:19px}.faq details[open]{border-color:#dcd9ec;box-shadow:var(--shadow-sm)}.faq details[open] summary:after{content:"×";background:var(--yellow);color:var(--ink)}.answer{padding:0 20px 20px;max-width:880px}.answer p,.answer li{font-size:14.5px}.answer ul{display:block;margin:10px 0;padding-left:18px}.answer li{padding:0;margin:5px 0;border:0;background:none}.answer li:before{display:none}
.final-cta{position:relative;overflow:hidden;padding:80px 0;background:var(--ink);color:#fff}.final-cta:after{content:"GERMANY";position:absolute;right:-25px;bottom:-50px;font:900 120px/1 var(--head);color:rgba(255,255,255,.035)}.finalbox{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.finalbox .eyebrow{color:var(--yellow)}.finalbox h2{color:#fff;max-width:760px}.finalbox p{color:rgba(255,255,255,.65);max-width:750px;margin-top:13px}.finalbox .btn{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.finalbox .btn:after{content:"→"}
footer{padding:28px 0;background:#111;color:#fff;border-top:1px solid rgba(255,255,255,.08)}.footerline{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:rgba(255,255,255,.48);font-size:12px}.mobile-cta{display:none}
@media(max-width:1050px){:scope{--gutter:30px}.hero-grid{grid-template-columns:1fr;gap:36px}.path-card{max-width:760px}.course-grid{grid-template-columns:repeat(3,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}#can-you-apply-to-any-german-university-after-studienkolleg .prose ul{grid-template-columns:repeat(2,1fr)}.ui-grid.cols-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){:scope{--gutter:20px}.topbar .hide-sm{display:none}.site .wrap{min-height:66px}.jump{top:66px}.brand{font-size:15px}.brand small{display:none}.header-cta{font-size:12px;padding:9px 12px}.hero{padding:58px 0}.hero:after{font-size:120px;bottom:-30px}.hero h1{font-size:46px}.hero p{font-size:16px}.section{padding:64px 0}.sec-head{margin-bottom:26px}.sec-head h2{font-size:36px}.course-grid{grid-template-columns:1fr 1fr}.ui-grid,.ui-grid.cols-3,.ui-grid.cols-4,.compare-split,.price-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr}.process-card{min-height:0}.timeline-item{grid-template-columns:1fr;gap:5px;padding-left:28px}.prose ul,#can-you-apply-to-any-german-university-after-studienkolleg .prose ul{grid-template-columns:1fr}.video-placeholder{aspect-ratio:16/10;padding:28px;flex-direction:column;text-align:center}.finalbox{grid-template-columns:1fr}.mobile-cta{display:block;position:fixed;left:14px;right:14px;bottom:14px;z-index:120;padding:13px 18px;border-radius:999px;text-align:center;text-decoration:none;background:var(--yellow);color:var(--ink);font-weight:900;box-shadow:0 16px 38px rgba(0,0,0,.24)}body{padding-bottom:64px}}
@media(max-width:480px){.course-grid{grid-template-columns:1fr}.hero h1{font-size:41px}.path-card{padding:22px}.route-step{grid-template-columns:38px 1fr}.route-step>span{width:36px;height:36px}.route-step:not(:last-of-type):after{left:18px;top:43px}.table-wrap{border-radius:16px}.cta-card,.language-panel,.fsp-panel{padding:22px}.ui-card{padding:20px}}
.jump a.active{color:var(--purple);border-color:var(--yellow);background:#faf9fe}
.process-note .label{display:inline-block;margin-bottom:10px;padding:5px 8px;border-radius:999px;background:rgba(23,23,24,.07);font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#6e5b00}
.course-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:30px 0}.course-detail-card{padding:26px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}.course-detail-card:nth-child(1){border-top:5px solid var(--purple)}.course-detail-card:nth-child(2){border-top:5px solid #8d5d9d}.course-detail-card:nth-child(3){border-top:5px solid #b84c58}.course-detail-card:nth-child(4){border-top:5px solid #4d7da5}.course-detail-card:nth-child(5){border-top:5px solid #5c8164}.course-detail-head{display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:start;margin-bottom:16px}.course-detail-head>span{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--purple-deep);color:#fff;font:900 19px var(--head)}.course-detail-head h3{font-size:21px}.course-tags{margin-top:5px;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.course-detail-card>p{font-size:14.5px;margin-bottom:16px}.leads{padding:12px 14px;border-radius:14px;background:var(--soft);color:var(--ink-2);font-size:13px}.leads strong{color:var(--purple-dark)}.course-note{margin-top:12px;padding:11px 13px;border-left:3px solid var(--yellow);background:#fffbea;font-size:12.5px;color:#574a13}.decision-banner{position:relative;overflow:hidden;margin:22px 0 30px;padding:30px;border-radius:28px;background:var(--ink);color:#fff}.decision-banner:after{content:'T · W · M · G · S';position:absolute;right:20px;bottom:-16px;font:900 52px var(--head);color:rgba(255,255,255,.035)}.decision-kicker{margin-bottom:9px;color:var(--yellow);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.decision-banner h3{color:#fff;font-size:27px;max-width:760px;margin-bottom:9px}.decision-banner p{color:rgba(255,255,255,.66);max-width:850px;margin:0}.route-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.route-chip{padding:10px 13px;border-radius:12px;background:var(--soft-2);font-size:12px;font-weight:850;color:var(--purple-dark)}.route-chip:last-of-type{background:var(--yellow-soft);color:#5e4b00}.route-arrow{color:var(--purple);font-weight:900}
@media(max-width:760px){.course-detail-grid{grid-template-columns:1fr}.route-strip{gap:7px}.route-arrow{transform:rotate(90deg)}}

/* Section index badges removed */
.sec-head:before{display:none;content:none;}

.page-roadmap{padding:22px 0;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff 0%,#fbfafc 100%)}
.page-roadmap .label{display:inline-block;margin-bottom:14px;color:var(--purple);font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.roadmap-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.roadmap-item{display:grid;grid-template-columns:50px 1fr;gap:12px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-sm);text-decoration:none}
.roadmap-num{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:var(--soft-2);color:var(--purple-dark);font:900 16px var(--head)}
.roadmap-text strong{display:block;font:800 14px/1.2 var(--head);color:var(--ink);margin-bottom:3px}
.roadmap-text span{display:block;font-size:12px;line-height:1.35;color:var(--muted)}
@media(max-width:1100px){.roadmap-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.page-roadmap{padding:18px 0}.roadmap-strip{grid-template-columns:1fr 1fr}.roadmap-item{grid-template-columns:42px 1fr;padding:14px}.roadmap-num{width:42px;height:42px;border-radius:14px;font-size:14px}.roadmap-text strong{font-size:13px}.roadmap-text span{font-size:11.5px}}
@media(max-width:520px){.roadmap-strip{grid-template-columns:1fr}}

/* Studienkolleg quick facts strip */
.page-roadmap,.roadmap-strip,.roadmap-item,.roadmap-num,.roadmap-text{display:none}
.quick-facts{background:#f8f8fa;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0}
.quick-facts .wrap{width:min(var(--max),calc(100% - (var(--gutter)*2)))}
.quick-facts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.quick-fact{position:relative;display:flex;min-height:120px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 18px}
.quick-fact:not(:last-child):after{content:"";position:absolute;right:0;top:28%;bottom:28%;width:1px;background:#e6e5eb}
.quick-fact strong{display:block;margin:0;color:var(--ink);font:900 clamp(27px,2.7vw,38px)/1 var(--head);letter-spacing:-.045em}
.quick-fact span{display:block;margin-top:10px;color:var(--purple-dark);font-size:10px;font-weight:850;line-height:1.25;letter-spacing:.085em;text-transform:uppercase}
@media(max-width:820px){.quick-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-fact{min-height:104px}.quick-fact:nth-child(2):after{display:none}.quick-fact:nth-child(-n+2){border-bottom:1px solid #e6e5eb}}
@media(max-width:520px){.quick-facts .wrap{width:100%}.quick-fact{padding:20px 10px}.quick-fact strong{font-size:27px}.quick-fact span{font-size:9px;letter-spacing:.065em}}

/* Entrance exam distinction block */
.exam-distinction{margin:28px 0 34px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}
.exam-distinction-head{display:flex;align-items:center;gap:13px;padding:20px 24px;background:linear-gradient(90deg,var(--purple-deep),#2e285f);color:#fff}
.exam-distinction-head .badge{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;background:var(--yellow);color:var(--ink);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.exam-distinction-head h3{font-size:22px;color:#fff;letter-spacing:-.02em}
.exam-distinction-grid{display:grid;grid-template-columns:1fr 1fr;position:relative}
.exam-distinction-grid:after{content:"";position:absolute;left:50%;top:24px;bottom:24px;width:1px;background:var(--line)}
.exam-distinction-col{padding:26px 28px}
.exam-distinction-col .mini-label{display:block;margin-bottom:8px;color:var(--purple);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.exam-distinction-col h4{font-size:18px;margin-bottom:8px;color:var(--ink)}
.exam-distinction-col p{font-size:14.5px;line-height:1.6;margin:0;color:var(--ink-2)}
.exam-process-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:8px 0 18px}
.exam-process-title h3{font-size:24px}
.exam-process-title p{max-width:520px;margin:0;font-size:13.5px;color:var(--muted);text-align:right}
@media(max-width:760px){
  .exam-distinction-head{align-items:flex-start;flex-direction:column;gap:9px}
  .exam-distinction-grid{grid-template-columns:1fr}
  .exam-distinction-grid:after{left:24px;right:24px;top:50%;bottom:auto;width:auto;height:1px}
  .exam-distinction-col{padding:22px}
  .exam-process-title{display:block}
  .exam-process-title p{margin-top:7px;text-align:left}
}


/* official source block */
.official-ref-block{margin-top:34px;padding:28px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(135deg,#fbfaff 0%,#fffdf2 100%)}
.official-ref-head{max-width:800px;margin-bottom:20px}.official-ref-kicker{display:inline-block;margin-bottom:8px;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--purple)}
.official-ref-head h3{font-size:25px;margin-bottom:8px}.official-ref-head p{font-size:14px;color:var(--muted);margin:0}
.official-ref-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.official-ref{display:flex;flex-direction:column;gap:6px;padding:17px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none}.official-ref strong{font:800 14px var(--head);color:var(--ink)}.official-ref span{font-size:12.5px;line-height:1.45;color:var(--muted)}.official-ref b{margin-top:auto;font-size:11px;color:var(--purple);text-transform:uppercase;letter-spacing:.06em}
/* founder proof */
.founder-proof{background:linear-gradient(135deg,#f6f4fb 0%,#fff 58%,#fff8d6 100%)}.founder-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:58px;align-items:center}.founder-portrait-placeholder{aspect-ratio:4/5;border-radius:180px 180px 26px 26px;background:linear-gradient(160deg,var(--purple-dark),var(--purple-deep));border:1px solid rgba(87,80,157,.18);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:#fff;box-shadow:var(--shadow)}.founder-portrait-placeholder span{font:900 13px var(--head);letter-spacing:.09em}.founder-portrait-placeholder small{display:block;margin-top:10px;max-width:220px;color:rgba(255,255,255,.58);font-size:11px;line-height:1.5}.founder-copy h2{max-width:780px}.founder-lead{font-size:19px;color:var(--purple-dark);margin-top:16px}.founder-copy>p{max-width:820px}.founder-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0}.founder-facts div{padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff}.founder-facts strong{display:block;font:850 20px var(--head);color:var(--purple-dark)}.founder-facts span{display:block;margin-top:4px;font-size:11.5px;line-height:1.4;color:var(--muted)}.founder-quote{margin:24px 0 0;padding:20px 24px;border-left:4px solid var(--yellow);background:#fff;border-radius:0 16px 16px 0;font:650 18px/1.55 var(--head);color:var(--ink)}.founder-quote span{display:block;margin-top:10px;font:700 11px var(--body);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
/* success stories */
.section-intro{max-width:850px;margin:-8px 0 28px;color:var(--ink-2);font-size:16px}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.story-card{overflow:hidden;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm)}.story-media{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,var(--purple-deep),#4d477f);display:grid;place-items:center}.story-media:after{content:"";position:absolute;inset:auto -30px -50px auto;width:150px;height:150px;border-radius:50%;border:35px solid rgba(255,255,255,.05)}.story-badge{position:absolute;left:16px;top:16px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:9px;font-weight:900;letter-spacing:.08em}.story-play{width:54px;height:54px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;color:var(--ink);font-size:16px;padding-left:3px;box-shadow:0 8px 24px rgba(255,211,26,.2)}.story-body{padding:20px}.story-body h3{margin-bottom:8px}.story-body p{font-size:13.5px;line-height:1.55;margin-bottom:12px}.story-note{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
/* testimonials */
.video-testimonials{background:var(--purple-deep);color:#fff}.video-testimonials .eyebrow{color:var(--yellow)}.video-testimonials h2{color:#fff}.testimonial-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.testimonial-head p{max-width:720px;color:rgba(255,255,255,.66);margin-top:12px}.testimonial-link{flex:none;color:#fff;text-decoration:none;font-size:13px;font-weight:800;border-bottom:2px solid var(--yellow);padding-bottom:3px}.testimonial-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.testimonial-video{padding:0 0 16px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.055);overflow:hidden}.testimonial-thumb{position:relative;aspect-ratio:9/13;background:linear-gradient(155deg,#37315f,#211d43);display:grid;place-items:center}.testimonial-thumb>span{position:absolute;left:14px;bottom:12px;color:rgba(255,255,255,.55);font-size:9px;font-weight:900;letter-spacing:.11em}.testimonial-video h3{color:#fff;font-size:16px;padding:15px 16px 0}.testimonial-video p{color:rgba(255,255,255,.55);font-size:11.5px;padding:4px 16px 0;margin:0}
@media(max-width:980px){.official-ref-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.founder-grid{grid-template-columns:280px 1fr;gap:38px}.testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.official-ref-grid,.founder-grid,.story-grid{grid-template-columns:1fr}.founder-visual{max-width:280px}.founder-facts{grid-template-columns:1fr}.testimonial-head{display:block}.testimonial-link{display:inline-block;margin-top:14px}.testimonial-grid{grid-template-columns:1fr 1fr}.testimonial-thumb{aspect-ratio:4/5}}
@media(max-width:520px){.testimonial-grid{grid-template-columns:1fr}}

.decision-banner .strong-line{font-weight:800;color:#fff}.decision-banner p{margin:8px 0;color:rgba(255,255,255,.72)}
.exam-distinction>p{margin:14px 0 0;color:var(--ink-2);max-width:960px}
.fsp-single-card{margin:18px 0}.fsp-context{padding:16px 18px;border-left:3px solid var(--yellow);background:#fffbea;border-radius:0 14px 14px 0}.fsp-steps{margin-top:18px}.section-kicker-inline{margin:24px 0 6px;color:var(--purple);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.example-note strong{display:block;margin-bottom:6px;color:var(--ink);font-family:var(--head);font-size:18px}.faq-answer ul{margin:12px 0 0 18px}.faq-answer li{margin:6px 0}

/* public/private Studienkolleg directories */
.institution-directory{margin-top:42px}
.institution-directory+.institution-directory{margin-top:48px}
.directory-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}
.directory-head h3{font-size:30px;max-width:720px}
.directory-head p{max-width:600px;margin:0;font-size:14px;color:var(--muted)}
.directory-note{margin:14px 0 0;padding:14px 16px;border-left:3px solid var(--yellow);background:#fffbea;border-radius:0 14px 14px 0;font-size:13px;color:#5c521f}
.source-link{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:800;color:var(--purple);text-decoration:none;white-space:nowrap}
.directory-cta{margin-top:26px}
@media(max-width:760px){.directory-head{display:block}.directory-head p{margin-top:10px}.directory-head h3{font-size:25px}}

.qualification-routes{overflow:hidden}.qualification-routes .sec-head{max-width:980px}.qualification-intro{max-width:900px;font-size:18px;margin-bottom:30px}.qualification-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:30px 0 34px}.qualification-route-card{position:relative;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}.qualification-route-card:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--yellow),var(--purple))}.qualification-route-head{display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:start;padding:24px 24px 20px}.qualification-code{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:var(--purple-deep);color:#fff;font:900 14px var(--head);letter-spacing:-.02em}.qualification-type{display:block;margin-bottom:5px;color:var(--purple);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.qualification-route-head h3{font-size:22px;margin-bottom:5px}.qualification-route-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.qualification-route-body{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.qualification-route-body>div{padding:20px 22px}.qualification-route-body>div+div{border-left:1px solid var(--line);background:#fbfafc}.route-label{display:block;margin-bottom:9px;color:var(--purple-dark);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.075em}.route-label.check{color:#7b6500}.qualification-route-body p{margin:0;font-size:14px;line-height:1.62;color:var(--ink-2)}
@media(max-width:900px){.qualification-route-grid{grid-template-columns:1fr}.qualification-route-body{grid-template-columns:1fr}.qualification-route-body>div+div{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:600px){.qualification-route-head{grid-template-columns:50px 1fr;padding:20px}.qualification-code{width:50px;height:50px;border-radius:15px;font-size:12px}.qualification-route-body>div{padding:18px 20px}.qualification-route-head h3{font-size:20px}}


/* =====================================================================
   MINIMAL LAYER v1 - appended override. Copy, section order and markup
   untouched; this layer only reduces scale, spacing and decoration, and
   aligns type + colour to the AAV Design System v1.0 (Outfit / Manrope,
   grape #5953A0, amber #FECC00, lilac #C8B8DB, carbon #262626).
   PRODUCTION: if the site theme already loads Outfit + Manrope, drop the
   Google Fonts <link> in <head>.
   BUILD NOTE: section padding set to 56px desktop / 40px mobile (system
   spec is 72px) at the founder's request for a more compact page.
   ===================================================================== */
:scope{
  --ink:#262626;--ink-2:#4a4a52;--muted:#7a7a84;--line:#e4e3e9;
  --soft:#f6f6f8;--soft-2:#eeeaf5;--purple:#5953A0;--purple-dark:#3f3aa0;
  --purple-deep:#262626;--yellow:#FECC00;--yellow-soft:#fff6cf;
  --shadow:none;--shadow-sm:none;
  --head:"Outfit","Segoe UI",system-ui,-apple-system,sans-serif;
  --body:"Manrope","Segoe UI",system-ui,-apple-system,sans-serif;
}
body{font-size:16px;line-height:1.6}
body:before{display:none}
h1,h2,h3,h4{letter-spacing:-.02em;line-height:1.15}
h1{font-size:clamp(34px,4vw,50px);font-weight:800}
h2{font-size:clamp(26px,2.6vw,34px);font-weight:700}
h3{font-size:18px;font-weight:600}
p{margin:0 0 12px}

/* remove decorative watermarks, orbs and glows */
.hero:before,.hero:after,.hero h1:after,.path-card:before,.ui-card:after,.course-card:before,.language-panel:after,.cta-card:after,.final-cta:after,.decision-banner:after,.video-placeholder:before,.hero-note:before{display:none;content:none}
.eyebrow:before{display:none}

/* header + jump nav */
.topbar{font-size:12px}.topbar .wrap{min-height:32px}
.site .wrap{min-height:64px}.jump{top:64px}
.jump a{padding:10px 10px;font-size:11px;letter-spacing:.03em;text-transform:none;font-weight:700}
html{scroll-padding-top:116px}
.header-cta{padding:10px 18px;font-size:13px}
.btn,.header-cta,.cta-card .cta-text{font-family:var(--head);letter-spacing:.02em}

/* hero */
.hero{padding:48px 0 44px;background:#fff}
.hero-grid{gap:48px;grid-template-columns:1.1fr .9fr}
.hero .eyebrow,.eyebrow{font-size:11px;letter-spacing:.08em;margin-bottom:12px}
.hero p{font-size:16.5px}.hero p:first-of-type{margin-top:16px}
.hero-actions{margin-top:18px}
.hero-note{padding-left:0;margin-top:12px}
.btn{padding:0 24px;height:50px;font-size:14px}
.path-card{padding:22px 24px;border-radius:24px;box-shadow:none;background:var(--soft);color:var(--ink);border:1px solid var(--line)}
.path-card h3{color:var(--ink);font-size:18px;margin-bottom:6px}
.route-step{padding:8px 0;grid-template-columns:32px 1fr;gap:12px}
.route-step>span{width:30px;height:30px;border-radius:50%;font-size:13px;box-shadow:none}
.route-step:not(:last-of-type):after{left:14px;top:40px;background:var(--line)}
.route-step b{color:var(--ink)}.route-step small{color:var(--muted);font-size:12.5px}
.path-card .foot{margin-top:10px;padding:10px 12px;background:#fff;border-color:var(--line);color:var(--ink-2);font-size:12px}

/* quick facts */
.quick-fact{min-height:0;padding:18px 12px}
.quick-fact strong{font-size:clamp(22px,2vw,28px)}
.quick-fact span{margin-top:6px;letter-spacing:.04em}

/* sections */
.section{padding:56px 0;background-image:none}
.section.soft{background:var(--soft)}
.sec-head{margin-bottom:20px}
.prose>p:first-child,.qualification-intro{font-size:16.5px}
.prose ul{gap:6px 24px;margin:16px 0}
.prose li{padding:4px 0 4px 26px;border:0;border-radius:0;background:none}
.prose li:before{left:0;top:8px;width:16px;height:16px;font-size:9px}
#can-you-apply-to-any-german-university-after-studienkolleg .prose li{min-height:0;padding:4px 0 4px 26px;border-radius:0}
#can-you-apply-to-any-german-university-after-studienkolleg .prose li:before{left:0;top:8px}

/* cards: flat, compact */
.ui-grid{gap:12px;margin:20px 0}
.ui-card,.course-card,.process-card,.compare-card,.price-card,.course-detail-card,.qualification-route-card,.story-card,.official-ref,.exam-distinction,.fsp-panel,.official-ref-block{box-shadow:none;border-radius:16px}
.ui-card{min-height:0;padding:18px}
.ui-card .label,.compare-card .label,.price-card .label{margin-bottom:10px;padding:0;background:none;font-size:10.5px;letter-spacing:.06em}
.ui-card h3{font-size:17px;margin-bottom:6px}
.ui-card p{font-size:14px}
.ui-card.warn,.ui-card.help,.ui-card.route{border-top-width:3px}
.ui-card.numbered{padding-top:18px}
.ui-card.numbered .num{position:static;margin-bottom:10px;width:26px;height:26px;border-radius:50%}
.ui-card.numbered:before{display:none}

.course-grid{gap:10px;margin:18px 0 6px}
.course-card{min-height:0;padding:16px}
.course-card .course-letter{width:34px;height:34px;border-radius:50%;font-size:15px;margin-bottom:10px}
.course-card:nth-child(n) .course-letter{background:var(--purple)}
.course-card h3{font-size:15.5px}

.course-detail-grid{gap:12px;margin:20px 0}
.course-detail-card{padding:20px}
.course-detail-card:nth-child(n){border-top:3px solid var(--purple)}
.course-detail-head{grid-template-columns:36px 1fr;margin-bottom:10px}
.course-detail-head>span{width:34px;height:34px;border-radius:50%;font-size:15px;background:var(--purple)}
.course-detail-head h3{font-size:18px}
.course-detail-card>p{font-size:14px;margin-bottom:10px}

.qualification-route-grid{gap:12px;margin:20px 0}
.qualification-route-card:before{height:3px;background:var(--purple)}
.qualification-route-head{grid-template-columns:44px 1fr;padding:18px 18px 14px}
.qualification-code{width:44px;height:44px;border-radius:12px;font-size:12px;background:var(--purple)}
.qualification-route-head h3{font-size:18px}
.qualification-route-body>div{padding:14px 18px}
.qualification-route-body p{font-size:13.5px}

.compare-split,.price-grid{gap:12px;margin:20px 0}
.compare-card,.price-card{padding:22px}
.compare-card:first-child,.price-card.public{border-top:3px solid var(--purple);background:#fff}
.compare-card:last-child,.price-card.private{border-top:3px solid var(--yellow);background:#fff}
.compare-card h3{font-size:21px}.price-card h3{font-size:28px;margin:6px 0}

.process-grid{gap:10px;margin:20px 0}
.process-card{min-height:0;padding:18px 16px}
.process-card .num{margin-bottom:12px}
.process-card h3{font-size:16px}
.process-note{padding:18px 20px;border-radius:16px}
.process-note h3{font-size:18px}

.timeline{margin-top:20px}
.timeline-item{grid-template-columns:150px 1fr;gap:18px;padding-bottom:18px}
.timeline-item h3{font-size:17px;margin-bottom:4px}

/* tables */
.table-wrap{margin:18px 0;border-radius:14px;box-shadow:none}
.data-table th,.data-table td{padding:11px 14px;font-size:13.5px}
.data-table thead th{background:var(--soft-2);color:var(--ink);font-size:12.5px}
.data-table td:first-child{background:#fff}
.data-table td:nth-child(2){color:var(--ink-2);font-weight:600}

/* dark / brand blocks */
.language-panel,.decision-banner,.cta-card{padding:22px 26px;border-radius:20px;box-shadow:none}
.language-panel{background:var(--soft);color:var(--ink);border:1px solid var(--line)}
.language-panel p{color:var(--ink-2)}
.language-panel h3{color:var(--ink)}
.level{background:#fff;border-color:var(--line);color:var(--ink);padding:7px 12px}
.level.active{background:var(--yellow);border-color:var(--yellow)}
.level-arrow{color:var(--muted)}
.level-row{margin-top:14px}
.cta-card{margin:24px 0;background:var(--purple)}
.cta-card .cta-title{font-size:20px}
.cta-card .cta-copy{color:rgba(255,255,255,.82)}
.cta-card .cta-text{margin-top:12px;height:46px;padding:0 20px}
.note-card{margin:16px 0;padding:16px 20px;border-radius:14px;background:var(--ink)}

/* videos: contained, not full-bleed */
.video-section,.video-testimonials{background:var(--ink)}
.video-placeholder{max-width:820px;aspect-ratio:16/9;border-radius:20px;background:#1f1f1f}
.video-placeholder .play{width:60px;height:60px;font-size:20px;box-shadow:none}

/* exam distinction, FSP, refs */
.exam-distinction{margin:18px 0 22px;border-radius:16px}
.exam-distinction-head{padding:14px 20px;background:var(--soft-2);color:var(--ink)}
.exam-distinction-head h3{color:var(--ink);font-size:18px}
.exam-distinction-col{padding:18px 20px}
.fsp-panel,.official-ref-block{margin-top:28px;padding:22px;background:var(--soft)}
.official-ref{padding:14px}
.official-ref-head h3{font-size:20px}

/* directories */
.institution-directory{margin-top:28px}
.institution-directory+.institution-directory{margin-top:28px}
.directory-head{margin-bottom:10px}.directory-head h3{font-size:22px}
.dir-toggle{margin:14px 0}
.dir-toggle summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border:1px solid var(--ink);border-radius:999px;font:700 13px var(--head);letter-spacing:.02em}
.dir-toggle summary::-webkit-details-marker{display:none}
.dir-toggle summary:after{content:"+";font-size:16px;line-height:1}
.dir-toggle[open] summary:after{content:"–"}
.dir-toggle[open] summary{margin-bottom:4px}

/* founder, stories, testimonials */
.founder-portrait-placeholder{box-shadow:none}
.story-grid{gap:12px}
.testimonial-grid{gap:12px}
.testimonial-thumb{aspect-ratio:4/5}

/* FAQ */
.faq-section{padding-bottom:64px}
.faq details{border-radius:12px;margin-bottom:6px}
.faq summary{padding:14px 52px 14px 18px;font-size:15px;font-weight:600}
.faq summary:after{top:10px;width:28px;height:28px;font-size:17px}
.answer{padding:0 18px 16px}

/* final CTA */
.final-cta{padding:52px 0;background:var(--purple)}
.finalbox .btn{height:54px}
.finalbox p{color:rgba(255,255,255,.8)}
footer{background:var(--ink)}

@media(max-width:1050px){.hero-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:760px){
  .section{padding:40px 0}
  .hero{padding:32px 0}
  .hero h1{font-size:32px}
  .sec-head h2{font-size:25px}
  .site .wrap{min-height:58px}.jump{top:58px}
  .timeline-item{grid-template-columns:1fr;gap:2px}
  .video-placeholder{aspect-ratio:16/10;padding:20px}
  .course-grid{grid-template-columns:1fr 1fr}
  .final-cta{padding:40px 0}
}
@media(max-width:480px){.hero h1{font-size:29px}.course-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{}}
/* fixes after review */
.language-panel h3{color:var(--ink);font-size:20px;margin-bottom:8px}
.fsp-panel .inner-title{font-size:clamp(22px,2.2vw,26px);margin-bottom:8px}
.fsp-panel>.lead{font-size:15.5px}
#what-is-a-studienkolleg-in-germany .sk-grid{grid-template-columns:1fr 320px;gap:40px}
#what-is-a-studienkolleg-in-germany .sk-visual svg{box-shadow:none;border-radius:20px}
#what-is-a-studienkolleg-in-germany .ui-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1050px){#what-is-a-studienkolleg-in-germany .sk-grid{grid-template-columns:1fr}}
@media(max-width:560px){#what-is-a-studienkolleg-in-germany .ui-grid.cols-4{grid-template-columns:1fr}}

/* Who Can Apply section */
.who-intro{max-width:820px;font-size:16.5px}
.who-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 14px}
.who-card{padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff}
.who-card.yes{border-top:3px solid #1E7A32}.who-card.no{border-top:3px solid #C0392B}
.who-card .label{display:inline-block;margin-bottom:10px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.who-card h3{font-size:20px;margin-bottom:6px}
.who-lead{font-size:14px;color:var(--muted)}
.who-card ul{list-style:none;margin:12px 0 0;padding:0}
.who-card li{position:relative;padding:12px 0 12px 28px;border-top:1px solid var(--line);font-size:14px;line-height:1.55;color:var(--ink-2)}
.who-card li strong{color:var(--ink)}
.who-card li:before{position:absolute;left:0;top:14px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:900}
.who-card.yes li:before{content:"\2713";background:#DFF5E1;color:#1E7A32}
.who-card.no li:before{content:"\00D7";background:#FFE1E1;color:#C0392B;font-size:13px}
.who-note{padding:16px 20px;border-left:3px solid var(--yellow);background:var(--yellow-soft);border-radius:0 14px 14px 0}
.who-note strong{display:block;font-family:var(--head);font-size:16px;color:var(--ink);margin-bottom:4px}
.who-note p{margin:0;font-size:14px}
@media(max-width:760px){.who-grid{grid-template-columns:1fr}}

/* TU vs FH table */
.tufh-table .data-table{min-width:560px}
.tufh-table .data-table td:nth-child(2){font-weight:400;color:var(--ink-2)}
.yn{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12.5px;font-weight:700}
.yn.yes{background:#DFF5E1;color:#1E7A32}.yn.no{background:#FFE1E1;color:#C0392B}

/* Download CTA */
.download-cta{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin-top:28px;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:#fff}
.download-copy h3{font-size:20px;margin-bottom:4px}
.download-copy p{margin:0;font-size:14px;color:var(--ink-2);max-width:560px}
.download-actions{display:flex;gap:10px;flex-wrap:wrap}
.dl-btn{display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:8px 22px 8px 18px;border:2px solid var(--ink);border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;font:700 14px/1.2 var(--head);letter-spacing:.01em}
.dl-btn small{display:block;margin-top:2px;font:500 11.5px var(--body);color:var(--muted)}
.dl-btn svg{flex:none;color:var(--purple)}
@media(max-width:900px){.download-cta{grid-template-columns:1fr}}
@media(max-width:520px){.download-actions{flex-direction:column}.dl-btn{justify-content:flex-start}}

/* Sample papers highlight */
.sample-cta{max-width:1100px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin-top:28px;padding:24px 28px;border-radius:20px;background:var(--yellow);color:var(--ink)}
.sample-copy h3{font-size:21px;margin-bottom:4px;color:var(--ink)}
.sample-copy p{margin:0;font-size:14.5px;color:#3a3200;max-width:620px}
.sample-btn{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;background:var(--ink);color:#fff;text-decoration:none;font:700 14px var(--head);letter-spacing:.02em;white-space:nowrap}
.sample-btn svg{color:var(--yellow)}
@media(max-width:760px){.sample-cta{grid-template-columns:1fr;padding:22px}.sample-btn{justify-content:center}}

.level.goal{background:#fff;border:2px solid var(--purple);color:var(--purple)}

/* Two routes section */
.routes-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.route-card{display:flex;flex-direction:column;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:#fff}
.route-card.public{border-top:3px solid var(--purple)}.route-card.private{border-top:3px solid var(--yellow)}
.route-card h3{font-size:20px;margin-bottom:4px}
.rt-meta{font-size:13.5px;color:var(--muted);margin-bottom:14px}
.rt-steps{list-style:none;margin:0 0 16px;padding:0;flex:1}
.rt-step{position:relative;display:grid;grid-template-columns:32px 1fr;gap:14px;padding-bottom:16px}
.rt-step:not(:last-child):after{content:"";position:absolute;left:15px;top:34px;bottom:2px;width:2px;background:var(--line)}
.rt-num{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:700 14px var(--head)}
.public .rt-num{background:var(--purple);color:#fff}.private .rt-num{background:var(--yellow);color:var(--ink)}
.rt-step h4{font-size:16px;font-weight:600;margin:4px 0 3px}
.rt-step p{margin:0;font-size:13.5px;line-height:1.5;color:var(--ink-2)}
.rt-step.skipped .rt-num{opacity:.45}
.rt-step.skipped h4,.rt-step.skipped p{color:var(--muted);opacity:.75}
.rt-outcome{padding:12px 16px;border-radius:12px;font:600 14px/1.45 var(--head)}
.public .rt-outcome{background:var(--soft-2);color:#2f2a6e}
.private .rt-outcome{background:var(--yellow-soft);color:#6b5500}
@media(max-width:760px){.routes-grid{grid-template-columns:1fr}}

/* Inline reference links */
.ref-link{color:var(--purple);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(89,83,160,.35)}

/* FSP standalone section */
.fsp-body{max-width:1100px}
.fsp-body>p.fsp-lead{font-size:16.5px;max-width:820px}
.fsp-body .ui-grid{margin:16px 0 24px}
.fsp-body .subhead{margin-top:28px;margin-bottom:4px;font-size:19px}
.fsp-body .section-kicker-inline{margin-top:28px}
.fsp-body .section-kicker-inline+.subhead{margin-top:0}
.note-card.example-note strong{color:var(--yellow)}

/* Course picker (tabs). Without JS the five cards still show as a grid. */
.course-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 12px}
.course-tab{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px 0 6px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:600 14px var(--head);cursor:pointer}
.course-tab .ct-letter{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--soft-2);color:var(--purple);font-weight:700}
.course-tab small{font:500 12px var(--body);color:var(--muted)}
.course-tab[aria-selected="true"]{background:var(--purple);border-color:var(--purple);color:#fff}
.course-tab[aria-selected="true"] .ct-letter{background:#fff;color:var(--purple)}
.course-tab[aria-selected="true"] small{color:rgba(255,255,255,.8)}
.course-detail-grid.is-tabbed{display:block;margin:0 0 20px}
.is-tabbed .course-detail-card{display:none;grid-template-columns:1.1fr .9fr;gap:8px 32px;padding:22px 24px;border-top:3px solid var(--purple)}
.is-tabbed .course-detail-card.active{display:grid}
.is-tabbed .course-detail-head{grid-column:1/-1;margin-bottom:4px}
.is-tabbed .course-detail-card>p{grid-column:1;margin:0}
.is-tabbed .leads{grid-column:2;grid-row:2;align-self:start}
.is-tabbed .course-note{grid-column:1/-1;margin-top:6px}
@media(max-width:760px){.is-tabbed .course-detail-card.active{grid-template-columns:1fr}.is-tabbed .leads{grid-column:1;grid-row:auto}.course-tab small{display:none}}

/* Why AAV comparison */
.why-hook{max-width:820px;font-size:17px;color:var(--ink)}
.why-hook strong{color:var(--purple)}
.why-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:22px 0 18px;border-radius:16px;background:var(--purple);color:#fff;overflow:hidden}
.why-fact{padding:18px 20px;border-left:1px solid rgba(255,255,255,.14)}
.why-fact:first-child{border-left:0}
.why-fact strong{display:block;font:800 30px/1 var(--head);color:var(--yellow);letter-spacing:-.02em}
.why-fact span{display:block;margin-top:6px;font-size:13px;line-height:1.4;color:rgba(255,255,255,.88)}
.why-table .data-table{min-width:680px}
.why-table .data-table thead th{font-size:13px}
.why-table .data-table thead th.aav-col{background:var(--purple);color:#fff}
.why-table .data-table th[scope="row"]{width:22%;text-align:left;font:600 14px var(--head);color:var(--ink);background:#fff;border-top:1px solid var(--line);padding:12px 14px;vertical-align:top}
.why-table .data-table td.aav-col{position:relative;width:42%;padding-left:40px;background:#f7f5fc;color:var(--ink);font-weight:500}
.why-table .data-table td.other-col{color:var(--muted);font-weight:400}
.why-table .data-table td:first-child{background:inherit}
.aav-ck{position:absolute;left:14px;top:13px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--purple);color:#fff}
.aav-ck svg{width:11px;height:11px}
.why-fine{font-size:12.5px;color:var(--muted);max-width:820px}
@media(max-width:760px){.why-band{grid-template-columns:1fr 1fr}.why-fact:nth-child(3){border-left:0}.why-fact:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}}

.fsp-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 8px}
.fsp-point{padding:18px;border:1px solid var(--line);border-top:3px solid var(--purple);border-radius:14px;background:#fff}
.fsp-point h3{font-size:16px;margin-bottom:4px}
.fsp-point p{margin:0;font-size:14px}
.fsp-foot{font-size:14.5px;max-width:820px}
@media(max-width:760px){.fsp-points{grid-template-columns:1fr}}
.list-ref-card.pc-dl{margin-top:16px}
.list-ref-card{display:flex;align-items:center;gap:16px;margin:4px 0 12px;padding:16px 20px;border:1px solid var(--line);border-left:4px solid var(--purple);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink)}
.lr-icon{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--soft-2);color:var(--purple)}
.lr-text{flex:1}
.lr-text strong{display:block;font:600 15.5px/1.35 var(--head)}
.lr-text small{display:block;margin-top:3px;font-size:12.5px;color:var(--muted)}
.lr-go{flex:none;font:700 13px var(--head);color:var(--purple);white-space:nowrap}
@media(max-width:600px){.list-ref-card{flex-wrap:wrap}.lr-go{width:100%;padding-left:60px}}


/* v19: 7-step hero pathway, tighter rhythm */
.path-card .route-step{padding:6px 0}.path-card .route-step small{font-size:12px;margin-top:1px}.path-card .route-step:not(:last-of-type):after{top:36px}

/* Short answer box */
.short-answer-section{padding:32px 0 8px}
.short-answer{max-width:820px;padding:24px 28px;border:2px solid var(--purple);border-radius:18px;background:#fff}
.short-answer h2{font-size:19px;font-weight:700;margin:0 0 8px}
.short-answer p{font-size:16px;line-height:1.75;color:var(--ink-2);margin:0 0 12px}
.short-answer p:last-child{margin:0}
.short-answer strong{color:var(--ink)}
@media(max-width:760px){.short-answer{padding:20px}}

/* Download lists (v21) */
.dl-lists{margin-top:32px}
.dl-title{font-size:clamp(24px,2.4vw,30px);font-weight:800;margin:0 0 6px}
.dl-sub{font-size:16px;color:var(--ink-2);margin:0 0 18px}
.dl-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1100px}
.dl-card{display:flex;flex-direction:column;align-items:flex-start;padding:22px 24px;border:2px dashed var(--purple);border-radius:18px;background:#fff}
.dl-card h4{font:700 16px var(--head);margin:0 0 6px}
.dl-card p{font-size:14.5px;color:var(--ink-2);margin:0 0 16px;flex:1}
.dl-pill{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 22px;border-radius:999px;background:var(--purple);color:#fff;text-decoration:none;font:700 14px var(--head);letter-spacing:.01em}
@media(max-width:760px){.dl-grid{grid-template-columns:1fr}}

.en-note{max-width:1100px;margin-top:16px;padding:14px 18px;border-left:4px solid var(--purple);border-radius:0 14px 14px 0;background:var(--soft-2);font-size:15px;color:var(--ink-2)}.en-note strong{color:var(--ink)}

/* v23: C1 in green + recommendation */
.level.goal{background:#DFF5E1;border:2px solid #1E7A32;color:#1E7A32}
.c1-note{margin-top:14px;padding:12px 16px;border-left:4px solid #1E7A32;border-radius:0 12px 12px 0;background:#DFF5E1;color:#14532d;font-size:14.5px}.c1-note strong{color:#1E7A32}

/* MoU section */
.mou-intro{max-width:820px;font-size:16px;color:var(--ink-2)}
.mou-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px;max-width:1100px}
.mou-tile{margin:0;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}
.mou-logo{height:120px;display:grid;place-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}
.mou-logo img{max-width:100%;max-height:64px;width:auto;height:auto;object-fit:contain}
.mou-tile figcaption{padding:10px 14px}
.mou-tile figcaption strong{display:block;font:600 14px var(--head);color:var(--ink)}
.mou-tile figcaption span{font-size:12.5px;color:var(--muted)}
@media(max-width:900px){.mou-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Awards & Recognition */
.awards-section .sec-head .eyebrow{display:none}
.aw-intro{max-width:820px;font-size:16px;color:var(--ink-2)}
.aw-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:20px}
.aw-card{margin:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}
.aw-img{position:relative;aspect-ratio:4/5;background:var(--soft);border-bottom:1px solid var(--line);display:grid;place-items:center;overflow:hidden}
.aw-img img{width:100%;height:100%;object-fit:contain;padding:10px;background:#fff;position:relative;z-index:1}
.aw-ph{position:absolute;inset:0;display:grid;place-items:center;color:var(--purple);background:var(--soft-2)}
.aw-card figcaption{padding:12px 14px 14px}
.aw-year{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--yellow);font:700 11px var(--head);margin-bottom:6px}
.aw-card strong{display:block;font:700 14.5px/1.3 var(--head);color:var(--ink)}
.aw-by{display:block;margin-top:2px;font-size:12.5px;color:var(--purple);font-weight:600}
.aw-card p{margin:6px 0 0;font-size:12.5px;line-height:1.5;color:var(--muted)}
.aw-all{display:inline-block;margin-top:16px;font:700 14px var(--head);color:var(--purple);text-decoration:none;border-bottom:1px solid rgba(89,83,160,.35)}
@media(max-width:1050px){.aw-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.aw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* India special section */
.india-section{background:var(--purple);color:#fff}
.india-section .eyebrow{color:rgba(255,255,255,.75)}
.india-section h2{color:#fff;max-width:900px}
.in-lead{max-width:760px;font-size:16.5px;color:rgba(255,255,255,.88);margin:10px 0 18px}.in-lead strong{color:var(--yellow)}
.in-rule{max-width:760px;padding:18px 20px;border:1px solid rgba(255,255,255,.2);border-left:4px solid var(--yellow);border-radius:14px;background:rgba(255,255,255,.08)}
.in-rule h3{color:#fff;font-size:17px;margin:0 0 6px}.in-rule p{margin:0;color:rgba(255,255,255,.9);font-size:15px}.in-rule strong{color:var(--yellow)}
.in-sub{color:#fff;font-size:20px;margin:28px 0 12px}
.in-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1100px}
.in-card{padding:18px 20px;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(255,255,255,.08)}
.in-num{display:block;font:800 30px/1 var(--head);color:var(--yellow);margin-bottom:10px}
.in-card h4{color:#fff;font:700 15.5px/1.3 var(--head);margin:0 0 6px}.in-card p{margin:0;font-size:14px;line-height:1.6;color:rgba(255,255,255,.85)}
.in-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.in-btn{display:inline-flex;align-items:center;height:50px;padding:0 24px;border-radius:999px;font:700 14px var(--head);text-decoration:none;letter-spacing:.01em}
.in-btn.primary{background:var(--yellow);color:var(--ink)}.in-btn.ghost{border:2px solid rgba(255,255,255,.7);color:#fff}
@media(max-width:860px){.in-grid{grid-template-columns:1fr}}

/* Short answer v2 */
.short-answer-section{padding:40px 0}
.sa2{max-width:1100px}
.sa2-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.sa2-head h2{font-size:clamp(22px,2.2vw,28px);margin:0}
.sa2-badge{padding:4px 12px;border-radius:999px;background:var(--yellow);font:700 12px var(--head)}
.sa2-lead{font:600 18px/1.5 var(--head);color:var(--ink);max-width:820px;margin:8px 0 16px}
.sa2-flow{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.sa2-step{flex:1 1 150px;padding:12px 14px;border-radius:14px;background:var(--soft-2);border:1px solid var(--line)}
.sa2-step:nth-child(3){background:var(--purple);border-color:var(--purple)}.sa2-step:nth-child(3) b,.sa2-step:nth-child(3) span{color:#fff}
.sa2-step b{display:block;font:800 17px var(--head);color:var(--purple)}.sa2-step span{font-size:12.5px;color:var(--muted)}
.sa-arrow{align-self:center;color:var(--muted);font-weight:700}
.sa2-text{font-size:15px;color:var(--ink-2);max-width:900px;margin:0 0 16px}
.sa2-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sa2-card{padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fff}
.sa2-card.pub{border-top:3px solid var(--purple)}.sa2-card.pri{border-top:3px solid var(--yellow)}
.sa2-card h3{font-size:17px;margin:0 0 8px}
.sa2-card ul{list-style:none;margin:0;padding:0}
.sa2-card li{display:grid;grid-template-columns:22px 1fr;gap:8px;padding:6px 0;font-size:14.5px;color:var(--ink-2)}
.sa2-card li span.t{width:auto;height:auto;display:inline;font:inherit;border-radius:0}
.sa2-card li span:not(.t){width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font:800 11px var(--head)}
.ok{background:#DFF5E1;color:#1E7A32}.gate{background:#FFF0B8;color:#8A6D00}.warn{background:#FFE1E1;color:#C0392B}
.sa2-card strong{color:var(--ink)}
@media(max-width:760px){.sa2-split{grid-template-columns:1fr}.sa-arrow{display:none}.sa2-step{flex-basis:45%}}

/* Documents + intakes (v29) */
.dc-intro{max-width:820px;font-size:16.5px;color:var(--ink-2)}
.dc-list{list-style:none;margin:16px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:1100px}
.dc-list li{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:15px;color:var(--ink-2)}
.dc-list li:before{display:none}
.dc-list strong{color:var(--ink)}
.dc-n{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--purple);color:#fff;font:700 14px var(--head)}
.dc-after{max-width:820px;font-size:15px;color:var(--ink-2)}
.dc-note{max-width:820px;margin-top:14px;padding:16px 20px;border:1px solid var(--line);border-radius:14px;background:var(--soft-2)}
.dc-note h3{font-size:16px;margin:0 0 4px}.dc-note p{margin:0;font-size:15px;color:var(--ink-2)}
.it-table{max-width:1100px}
.it-table caption{caption-side:top;text-align:left;padding:10px 14px;font-size:12.5px;color:var(--muted);background:#fff}
.it-table .data-table thead th{background:var(--purple);color:#fff}
.it-table .data-table td:nth-child(2){font-weight:400;color:var(--ink-2)}
.it-notes{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:1100px}
.it-note{padding:16px 20px;border-radius:14px;border:1px solid}
.it-note h3{font-size:16px;margin:0 0 6px}.it-note p{margin:0;font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.it-note.red{background:#FFF1F0;border-color:#F3B4AE}.it-note.red h3{color:#C0392B}
.it-note.amber{background:var(--yellow-soft);border-color:#F5D774}.it-note.amber h3{color:#8A6D00}
@media(max-width:860px){.dc-list,.it-notes{grid-template-columns:1fr}}

/* v30 founder video */
.fv-intro{max-width:760px;font-size:16px;color:rgba(255,255,255,.82);margin:-6px 0 18px}
.fv-by{display:flex;align-items:center;gap:12px;max-width:820px;margin-top:14px}
.fv-av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--ink);font:800 14px var(--head)}
.fv-by strong{display:block;color:#fff;font:700 15px var(--head)}.fv-by div span{font-size:13px;color:rgba(255,255,255,.7)}

/* v31: Who Can Apply - compact layout (green card as a strip, red items in two columns) */
#who-can-apply-for-studienkolleg-in-germany .who-grid{grid-template-columns:1fr;gap:10px;max-width:1100px}
#who-can-apply-for-studienkolleg-in-germany .who-card.yes{display:grid;grid-template-columns:minmax(220px,.9fr) 1.6fr;gap:8px 28px;align-items:start;padding:18px 22px}
#who-can-apply-for-studienkolleg-in-germany .who-card.yes .label,#who-can-apply-for-studienkolleg-in-germany .who-card.yes h3,#who-can-apply-for-studienkolleg-in-germany .who-card.yes .who-lead{grid-column:1}
#who-can-apply-for-studienkolleg-in-germany .who-card.yes ul{grid-column:2;grid-row:1/span 3;margin:0;align-self:center}
#who-can-apply-for-studienkolleg-in-germany .who-card.yes li{border-top:0;padding:4px 0 4px 28px;font-size:15px}
#who-can-apply-for-studienkolleg-in-germany .who-card.yes li:before{top:6px}
#who-can-apply-for-studienkolleg-in-germany .who-card.no{padding:18px 22px}
#who-can-apply-for-studienkolleg-in-germany .who-card.no ul{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}
#who-can-apply-for-studienkolleg-in-germany .who-card h3{font-size:18px}
#who-can-apply-for-studienkolleg-in-germany .who-note{max-width:1100px}
@media(max-width:860px){#who-can-apply-for-studienkolleg-in-germany .who-card.yes{grid-template-columns:1fr}#who-can-apply-for-studienkolleg-in-germany .who-card.yes ul{grid-column:1;grid-row:auto;margin-top:8px}#who-can-apply-for-studienkolleg-in-germany .who-card.no ul{grid-template-columns:1fr}}

/* Journey CTA */
.journey-section{padding:24px 0 56px}
.jr-card{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;max-width:1100px;padding:28px 32px;border-radius:22px;background:var(--ink);color:#fff}
.jr-card .eyebrow{color:var(--yellow)}
.jr-card h2{color:#fff;font-size:clamp(22px,2.2vw,28px);margin:4px 0 8px}
.jr-card p{margin:0;color:rgba(255,255,255,.82);font-size:15px;max-width:640px}
.jr-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.jr-chips span{padding:5px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font:600 12.5px var(--head);color:rgba(255,255,255,.9)}
.jr-btn{display:inline-flex;align-items:center;height:54px;padding:0 26px;border-radius:999px;background:var(--yellow);color:var(--ink);font:700 15px var(--head);text-decoration:none;white-space:nowrap}
@media(max-width:860px){.jr-card{grid-template-columns:1fr;padding:24px}.jr-btn{justify-content:center}}

/* v33 merged public vs private */
.pvp-sub{margin-top:44px;padding-top:36px;border-top:1px solid var(--line)}
.pvp-title{font-size:clamp(22px,2.2vw,28px);font-weight:700;margin:0 0 10px}

/* v34 byline */
.byline{display:flex;align-items:center;gap:12px;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line)}
.by-av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--ink);font:800 14px var(--head);flex:none}
.by-name{display:block;font-size:15px;color:var(--ink-2)}.by-name strong{color:var(--ink);font-family:var(--head)}
.by-date{display:block;font-size:13px;color:var(--muted);margin-top:1px}

.de-key{padding:12px 16px;border-left:4px solid var(--purple);border-radius:0 12px 12px 0;background:#fff;color:var(--ink-2)}.de-key strong{color:var(--purple)}

/* v36 M-Kurs maths note */
.mk-maths{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:8px;padding:14px 18px;border-radius:12px;background:var(--soft-2);border-left:4px solid var(--purple)}
.mk-maths p{margin:0;font-size:14.5px;color:var(--ink-2);flex:1 1 360px}.mk-maths strong{color:var(--ink)}
.mk-btn{display:inline-flex;align-items:center;height:44px;padding:0 20px;border-radius:999px;background:var(--purple);color:#fff;font:700 14px var(--head);text-decoration:none;white-space:nowrap}

/* v37 FSP score */
.fsp-score{margin-top:24px;max-width:1100px}
.fsp-score p{font-size:15px;color:var(--ink-2);max-width:900px}
.fs-calc{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin:14px 0}
.fs-box{flex:1 1 160px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:center}
.fs-box span{display:block;font:600 12px var(--head);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.fs-box b{display:block;font:800 30px/1.1 var(--head);color:var(--purple);margin:4px 0}
.fs-box small{font-size:12.5px;color:var(--muted)}
.fs-box.total{background:var(--purple);border-color:var(--purple)}.fs-box.total span,.fs-box.total small{color:rgba(255,255,255,.85)}.fs-box.total b{color:var(--yellow)}
.fs-op{align-self:center;font:800 22px var(--head);color:var(--muted)}
.fs-note{font-size:13px;color:var(--muted)}
@media(max-width:600px){.fs-op{display:none}.fs-box{flex-basis:30%}}

/* v38 complete document list */
.dc-bullets{columns:2;column-gap:40px;max-width:900px;margin:14px 0 8px;padding-left:20px}
.dc-bullets li{break-inside:avoid;padding:5px 0;font-size:15.5px;color:var(--ink);list-style:disc;background:none;border:0}
.dc-bullets li:before{display:none}
.dc-bullets li::marker{color:var(--purple)}
@media(max-width:700px){.dc-bullets{columns:1}}

/* v40 cost calculator */
.sk-calc{margin:24px 0;max-width:1100px;padding:22px 24px;border:2px solid var(--yellow);border-top:5px solid var(--yellow);border-radius:18px;background:#fff}
.kc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.kc-head h3{font-size:22px;margin:2px 0 4px}.kc-head p{margin:0;font-size:14px;color:var(--muted)}
.kc-toggle{display:inline-flex;padding:4px;border-radius:999px;background:var(--soft-2)}
.kc-toggle button{border:0;background:none;height:38px;padding:0 20px;border-radius:999px;font:700 14px var(--head);color:var(--ink-2);cursor:pointer}
.kc-toggle button[aria-checked="true"]{background:var(--purple);color:#fff}
.kc-body{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;align-items:start}
.kc-group{padding:12px 0;border-top:1px solid var(--line)}.kc-group:first-child{border-top:0;padding-top:0}
.kc-group h4{font:700 13px var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--purple);margin:0 0 6px}
.kc-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:14.5px;color:var(--ink-2)}
.kc-in{display:inline-flex;align-items:center;gap:4px;flex:none;height:40px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}
.kc-in span{font-weight:700;color:var(--muted)}
.kc-in input{width:84px;border:0;background:none;font:600 15px var(--head);color:var(--ink);text-align:right;outline:none}
.kc-range{width:100%;accent-color:var(--purple);margin:2px 0 6px}
.kc-result{position:sticky;top:130px;padding:20px;border-radius:16px;background:var(--purple);color:#fff}
.kc-lab{display:block;font:600 12px var(--head);text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.8)}
.kc-total{display:block;font:800 40px/1.1 var(--head);color:var(--yellow);margin:4px 0 12px}
.kc-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.15)}
.kc-bar i{display:block;height:100%}
.kc-bar [data-bar="study"],.d.study{background:var(--yellow)}.kc-bar [data-bar="living"],.d.living{background:#C8B8DB}.kc-bar [data-bar="fly"],.d.fly{background:#fff}
.kc-break{list-style:none;margin:12px 0;padding:0;display:block;columns:auto}
.kc-break li{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:14px;color:rgba(255,255,255,.9);background:none}
.kc-break li:before{display:none}
.kc-break b{margin-left:auto;font-family:var(--head)}
.d{width:10px;height:10px;border-radius:3px;flex:none}
.kc-note{margin:0 0 8px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.12);font-size:13px;color:#fff}
.kc-fine{margin:0 0 12px;font-size:12px;color:rgba(255,255,255,.7)}
.kc-btn{display:flex;justify-content:center;align-items:center;height:48px;border-radius:999px;background:var(--yellow);color:var(--ink);font:700 14px var(--head);text-decoration:none}
@media(max-width:860px){.kc-body{grid-template-columns:1fr}.kc-result{position:static}}

/* v41 tool rows */
.tool-row{display:flex;align-items:center;gap:12px;max-width:1100px;margin-top:14px;padding:12px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink-2)}
.tr-ico{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--soft-2);color:var(--purple)}
.tr-txt{flex:1;font-size:14.5px}.tr-txt strong{color:var(--ink);font-family:var(--head)}
.tr-go{flex:none;font:700 13.5px var(--head);color:var(--purple);white-space:nowrap}
.tool-row.dark{max-width:760px;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.85)}
.tool-row.dark strong{color:#fff}.tool-row.dark .tr-ico{background:rgba(255,255,255,.12);color:var(--yellow)}.tool-row.dark .tr-go{color:var(--yellow)}
.kc-emi{margin:10px 0 0;font-size:13.5px;color:var(--muted)}.kc-emi a{color:var(--purple);font-weight:700;text-decoration:none}
@media(max-width:600px){.tool-row{flex-wrap:wrap}.tr-go{width:100%;padding-left:48px}}

/* v42 TestAS */
.in-testas{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;max-width:1100px;margin-top:14px;padding:16px 20px;border:1px dashed rgba(255,255,255,.35);border-radius:14px}
.in-testas h4{color:#fff;font:700 15.5px var(--head);margin:0 0 4px}.in-testas p{margin:0;max-width:760px;font-size:14px;line-height:1.6;color:rgba(255,255,255,.85)}
.in-tlink{flex:none;font:700 14px var(--head);color:var(--yellow);text-decoration:none;border-bottom:1px solid rgba(254,204,0,.5)}

/* v43: tools highlighted */
.tool-badge{display:inline-block;padding:2px 10px;margin-right:6px;border-radius:999px;background:var(--yellow);color:#262626;font:700 11px var(--head);letter-spacing:.02em;vertical-align:2px}
.tool-row{border:2px solid var(--yellow);background:var(--yellow-soft);padding:14px 18px}
.tool-row .tr-ico{background:var(--yellow);color:#262626}
.tool-row .tr-go{display:inline-flex;align-items:center;height:40px;padding:0 18px;border-radius:999px;background:var(--purple);color:#fff}
.tool-row.dark{border-color:var(--yellow);background:rgba(254,204,0,.12)}
.tool-row.dark .tr-go{background:var(--yellow);color:#262626}
.tool-show{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;max-width:1100px;margin-top:18px;padding:24px;border:2px solid var(--yellow);border-radius:20px;background:var(--yellow-soft)}
.ts-text h3{font-size:clamp(20px,2vw,24px);margin:8px 0 6px}.ts-text p{margin:0 0 14px;font-size:15px;color:var(--ink-2)}
.tool-btn{display:inline-flex;align-items:center;height:50px;padding:0 24px;border-radius:999px;background:var(--purple);color:#fff;font:700 15px var(--head);text-decoration:none}
.ts-preview{display:block;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;color:var(--ink);box-shadow:0 10px 30px rgba(89,83,160,.12)}
.tp-bar{display:flex;gap:5px;margin-bottom:12px}.tp-bar i{flex:1;height:5px;border-radius:999px;background:var(--soft-2)}.tp-bar i.on{background:var(--purple)}
.ts-preview strong{display:block;font:700 16px var(--head);margin-bottom:10px}
.tp-chips{display:flex;flex-wrap:wrap;gap:6px}.tp-chips span{padding:7px 12px;border:1.5px solid var(--line);border-radius:10px;font:600 13px var(--head)}
.tp-chips span:first-child{border-color:var(--purple);background:var(--soft-2)}
@media(max-width:760px){.tool-show{grid-template-columns:1fr}}


/* =====================================================================
   POLISH LAYER v1 - UI/UX pass only. No copy, no markup, no section
   order changes. Motion, states, spacing rhythm and responsiveness,
   aligned to AAV Design System v1.0 (grape #5953A0, amber #FECC00,
   lilac #C8B8DB, carbon #262626; 180ms cubic-bezier(.2,.6,.3,1);
   border-first surfaces, shadow-raised only on hover).
   ===================================================================== */
:scope{
  --pol-ease:cubic-bezier(.2,.6,.3,1);
  --pol-dur:180ms;
  --pol-dur-lg:420ms;
  --pol-grape:#5953A0;--pol-grape-700:#47417F;--pol-lilac:#C8B8DB;--pol-lilac-50:#F7F4FA;
  --pol-amber:#FECC00;--pol-carbon:#262626;--pol-line:#E3E3E6;
  --pol-raised:0 2px 8px rgba(38,38,38,.05);
  --pol-raised-hi:0 4px 14px rgba(38,38,38,.07);
  --pol-ring:0 0 0 4px rgba(200,184,219,.55);
}
::selection{background:var(--pol-lilac);color:var(--pol-carbon)}
img{max-width:100%;height:auto}

/* ---- 1. one motion contract for every interactive surface ---- */
a,button,summary,input,select,textarea,.ui-card,.course-card,.course-detail-card,.process-card,.compare-card,.price-card,.qualification-route-card,.who-card,.story-card,.official-ref,.roadmap-item,.founder-facts>div,.in-card,.route-card,.testimonial-video,.fsp-point,.dl-card,.sa2-card,.sa2-step,.exam-distinction,.table-wrap,.quick-fact,.btn,.header-cta,.cta-card .cta-text,.level,.source-link,.testimonial-link,.jump a,.faq summary,.dir-toggle summary,.data-table tbody tr td{
}

/* ---- 2. focus: a ring, never a colour swap ---- */

/* ---- 3. cards: hairline first, one soft lift on hover ---- */
.ui-card,.course-card,.course-detail-card,.process-card,.compare-card,.price-card,.qualification-route-card,.who-card,.story-card,.official-ref,.roadmap-item,.founder-facts>div,.in-card,.route-card,.testimonial-video,.fsp-point,.dl-card,.sa2-card,.sa2-step,.exam-distinction,.table-wrap,.quick-fact{will-change:auto}
/* hover tint: one ramp step toward lilac-50 on light cards, white-8% on carbon cards */
/* cards on carbon/grape bands: tint with white, never lilac-50 - the copy is white */
@media(hover:none){
}
.official-ref:active,.roadmap-item:active{transform:scale(.985)}

/* ---- 4. buttons & CTAs: consistent geometry, one ramp step on hover ---- */
.btn,.header-cta,.cta-card .cta-text,.mobile-cta,.dir-toggle summary{
  -webkit-tap-highlight-color:transparent;
  min-height:44px;
}
.btn.primary:active,.header-cta:active,.finalbox .btn:active,.cta-card .cta-text:active,.mobile-cta:active{transform:scale(.985)}
.btn:after,.header-cta:after,.cta-card .cta-text:after,.finalbox .btn:after{
}

/* ---- 5. header: hairline that earns itself on scroll ---- */
.site{}
.site.is-scrolled{box-shadow:var(--pol-raised)}
.brand{}

/* jump nav: readable active state, discoverable overflow, 44px targets */
.jump a{position:relative;border-bottom-width:2px}
.jump a:after{content:"";position:absolute;left:10px;right:10px;bottom:-2px;height:2px;border-radius:2px;
  background:var(--pol-amber);transform:scaleX(0);transform-origin:left}
.jump a.active:after{transform:scaleX(1)}
.jump a.active{background:transparent;color:var(--pol-grape)}
.jump.is-overflowing{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 18px),transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 18px),transparent 100%)}
.pol-js .jump{scroll-behavior:smooth}

/* ---- 5b. sticky restored: overflow-x:hidden on html/body made them scroll
        containers, which silently disabled position:sticky on the header and the
        section menu. clip prevents sideways scroll without creating one. ---- */
html,body{overflow-x:clip}
.site{position:sticky;top:0;z-index:100}
.jump{position:sticky;top:65px;z-index:90}
@media(max-width:760px){.jump{top:59px}}
@supports not (overflow-x:clip){html,body{overflow-x:hidden}}

/* ---- 5d. hero route picker ---- */
.hero-picker{background:var(--pol-lilac-50);border:1px solid var(--pol-lilac);
  border-radius:26px;padding:16px;box-shadow:none;display:block}
.hp-inner{background:#fff;border:1px solid var(--pol-line);border-radius:18px;padding:28px 28px 24px}
.hero-picker h3{margin:0 0 6px;font-size:24px;font-weight:800;
  letter-spacing:-.02em;color:var(--ink)}
.hp-sub{margin:0;font-size:15px;font-weight:600;color:var(--pol-grape)}
.hp-hint{margin:8px 0 0;font-size:13.5px;color:var(--muted)}
.hp-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.hp-chip{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;
  border:1.5px solid var(--pol-line);background:#fff;cursor:pointer;text-decoration:none;
  font-family:var(--head);font-size:13.5px;font-weight:600;line-height:1.2;color:var(--ink);
  -webkit-tap-highlight-color:transparent}
.hp-chip:active{transform:scale(.985)}
.hp-chip[aria-pressed="true"]{background:var(--pol-grape);border-color:var(--pol-grape);color:#fff}
.hp-results{margin-top:0}
.hp-result{margin-top:18px;padding:20px 22px;border-radius:14px;background:var(--pol-lilac-50)}
.hp-result strong{display:block;margin-bottom:6px;font-family:var(--head);font-size:17px;
  font-weight:700;letter-spacing:-.01em;color:var(--pol-grape)}
.hp-result p{margin:0;font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.hp-result a{font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px;
  text-decoration-thickness:2px;text-decoration-color:var(--pol-amber)}
.hp-result.ok{background:#EDF7EF}.hp-result.ok strong{color:#1E7A32}
.hp-result.warn{background:#FFF7D6}.hp-result.warn strong{color:#6D5800}
@media(max-width:1050px){.hero-picker{max-width:680px}}
@media(max-width:560px){
  .hero-picker{padding:12px;border-radius:22px}
  .hp-inner{padding:22px 20px 20px;border-radius:14px}
  .hero-picker h3{font-size:21px}
  .hp-chips{gap:8px;margin-top:14px}
  .hp-chip{padding:0 15px;font-size:13px}
  .hp-result{padding:16px 18px;margin-top:14px}
  .hp-result strong{font-size:16px}
  .hp-result p{font-size:14px}
}

/* ---- 5c. section menu: sticky strip, current section always marked ---- */
html.pol-js{scroll-padding-top:122px}
.jump{background:var(--pol-lilac-50);border-bottom:1px solid var(--pol-lilac);
  backdrop-filter:none}
.jump a{color:var(--ink-2)}
.jump a.active{color:var(--pol-grape);background:#fff;font-weight:800;border-radius:8px 8px 0 0}
.jump a.active:after{transform:scaleX(1)}
@media(max-width:760px){html.pol-js{scroll-padding-top:112px}}

/* ---- 5e. cost calculator hint ---- */
.kc-hint{margin:2px 0 6px;padding:10px 12px;border-radius:10px;background:var(--pol-lilac-50);
  font-size:13px;line-height:1.5;color:var(--ink-2)}
.kc-hint strong{color:var(--pol-grape)}

/* ---- 5f. print estimate: the result panel's single action ---- */
.kc-print{display:flex;width:100%;justify-content:center;align-items:center;gap:8px;margin-top:4px;
  min-height:48px;padding:0 20px;border:0;border-radius:999px;
  background:var(--pol-amber);cursor:pointer;
  font-family:var(--head);font-size:14px;font-weight:700;letter-spacing:.02em;color:var(--pol-carbon)}
.kc-print:after{content:"→";font-size:16px}
.kc-print:active{transform:scale(.985)}

@media print{
  body.kc-printing>*{display:none}
  body.kc-printing>[data-kc-host]{display:block}
  body.kc-printing [data-kc-host] *{visibility:hidden}
  body.kc-printing #studienkolleg-cost-calculator,
  body.kc-printing #studienkolleg-cost-calculator *{visibility:visible}
  body.kc-printing .pol-progress,body.kc-printing .mobile-cta{display:none}
  body.kc-printing #studienkolleg-cost-calculator{display:block;position:static;
    margin:0;border:1px solid #999;box-shadow:none;page-break-inside:avoid}
  body.kc-printing .kc-body{grid-template-columns:1.4fr 1fr}
  body.kc-printing .kc-result{position:static;background:#fff;color:#000;
    border:1px solid #999}
  body.kc-printing .kc-total{color:#000}
  body.kc-printing .kc-lab,body.kc-printing .kc-break li,body.kc-printing .kc-note,body.kc-printing .kc-fine{color:#000}
  body.kc-printing .kc-note{background:#f2f2f2}
  body.kc-printing .kc-btn,body.kc-printing .kc-print,body.kc-printing .kc-range,body.kc-printing .kc-toggle{display:none}
  body.kc-printing .kc-in{border:1px solid #999;background:#fff}
}

/* ---- 6. scroll progress ---- */
.pol-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:200;pointer-events:none;
  background:rgba(38,38,38,.06);opacity:0}
.pol-progress.is-on{opacity:1}
.pol-progress>span{display:block;height:100%;background:var(--pol-amber);transform:scaleX(0);transform-origin:0 50%}

/* ---- 7. scroll reveal (JS-gated, transform+opacity only) ---- */
[data-reveal]{opacity:0;transform:translateY(14px)}
[data-reveal].is-in{opacity:1;transform:none}

/* hero entrance: one staggered sequence, page load only */
.pol-js .hero [data-hero]{opacity:0;transform:translateY(16px)}
.pol-js .hero.is-ready [data-hero]{opacity:1;transform:none}

/* ---- 7b. stepped timeline: line draws, dots pop, steps march in ---- */
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline:before{transform:scaleY(0);transform-origin:top center}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline.is-drawn:before{transform:scaleY(1)}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item[data-reveal]{transform:translate(12px,10px)}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item[data-reveal].is-in{transform:none}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item:before{transform:scale(0)}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item.is-in:before{transform:scale(1)}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item .when{}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item:before{}

/* ---- 7c. "Check another route" list: numbered rules with body copy ---- */
.who-card.no li{padding-left:0}
.who-card.no li:before{content:none;display:none}
.who-card.no li>strong{display:block;margin-bottom:4px;font-family:var(--head);font-size:15px;color:var(--ink)}
.who-card.no li>p{margin:0 0 8px;font-size:14px;line-height:1.6;color:var(--ink-2)}
.who-card.no li>p:last-child{margin-bottom:0}
.who-card.no li>p+p{margin-top:10px}
.who-card.no li>p strong{color:var(--ink)}

/* ---- 7d. preparation steps: minimal rail ---- */
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline{margin-top:28px;padding-left:0}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline:before{left:0;top:10px;bottom:10px;width:1px;background:var(--pol-line)}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item{grid-template-columns:132px 1fr;gap:20px;padding:0 0 26px 28px;align-items:start}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item:last-child{padding-bottom:0}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item:before{left:-4px;top:9px;width:9px;height:9px;border:2px solid #fff;
  background:var(--pol-lilac);box-shadow:0 0 0 1px var(--pol-line)}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item.is-active:before{background:var(--pol-amber);box-shadow:0 0 0 1px var(--pol-amber),0 0 0 5px rgba(254,204,0,.16)}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item .when{font-family:var(--body);font-size:11px;font-weight:700;letter-spacing:.07em;
  color:var(--muted);padding-top:4px}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item.is-active .when{color:var(--pol-grape)}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item h3{font-size:16px;font-weight:600;margin-bottom:4px}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item p{font-size:14px;line-height:1.6;color:var(--ink-2);max-width:68ch}
.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item>div:last-child{position:relative}
@media(max-width:760px){
  .pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item{grid-template-columns:1fr;gap:4px;padding:0 0 22px 22px}
  .pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item .when{padding-top:0}
}

/* ---- 7e. FSP score example label ---- */
.fs-example-label{margin:18px 0 8px;font-size:11px;font-weight:800;letter-spacing:.09em;
  text-transform:uppercase;color:var(--pol-grape)}

/* ---- 8. tables: calmer rows, clear hover, no hidden overflow ---- */
.table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.data-table td:first-child{position:relative}

/* ---- 9. FAQ + disclosure micro-interaction ---- */
.faq details{}
.faq summary:after{}
.faq details[open] summary:after{transform:rotate(90deg)}
.faq details[open] .answer{}
.dir-toggle[open] .table-wrap{}

/* ---- 10. media placeholders: gentle, contained ---- */
.story-media,.testimonial-thumb,.video-placeholder{overflow:hidden}
.story-play,.video-placeholder .play{}
.video-placeholder{cursor:pointer}

/* ---- 11. rhythm: consistent block spacing inside sections ---- */
.sec-head{margin-bottom:24px}
.section-intro,.who-intro,.qualification-intro{margin-bottom:24px}
.prose>h3.subhead,.section-kicker-inline{margin-top:32px}
.cta-card,.note-card,.process-note,.who-note{margin-top:24px;margin-bottom:24px}

/* ---- 12. responsive + touch ---- */
@media(max-width:1050px){
  .jump a{padding:12px 10px}
}
@media(max-width:760px){
  html{scroll-padding-top:104px}
  .jump a{min-height:44px;display:inline-flex;align-items:center}
  .btn,.header-cta{min-height:46px}
  .sec-head{margin-bottom:18px}
  .pol-progress{height:2px}
  [data-reveal]{transform:translateY(10px)}
  .mobile-cta{min-height:48px;display:flex;align-items:center;justify-content:center}
  .pol-js .mobile-cta{opacity:0;transform:translateY(140%)}
  .pol-js .mobile-cta.is-on{opacity:1;transform:none}
  /* touch devices: no hover lift, keep the tap feedback */
}
@media(hover:none){
}

/* ---- 13. reduced motion wins over everything above ---- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{}
  [data-reveal],.pol-js .hero [data-hero]{opacity:1;transform:none}
  .pol-js #when-should-you-start-preparing-for-studienkolleg .timeline:before,.pol-js #when-should-you-start-preparing-for-studienkolleg .timeline-item:before{transform:none}
  .pol-js .mobile-cta{opacity:1;transform:none}
}

/* ============================================================
   STUDY IN GERMANY HUB LAYER - new components only.
   Everything else on this page comes from the Studienkolleg
   page's layers (base, minimal, polish), copied verbatim.
   ============================================================ */

/* ---- course switcher: four routes, one open at a time ---- */
.cs-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 22px}
.cs-tab{appearance:none;border:1.5px solid var(--line);background:#fff;color:var(--ink);font:700 15px/1 var(--head);padding:14px 22px;border-radius:999px;cursor:pointer;min-height:48px;display:inline-flex;align-items:center;gap:10px}
.cs-tab small{font:600 12px/1 var(--body);color:var(--muted)}
.cs-tab[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.cs-tab[aria-selected="true"] small{color:rgba(255,255,255,.7)}
.cs-panels{display:grid;gap:20px}
.cs-panel{border:1px solid var(--line);border-radius:26px;background:#fff;padding:34px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px}
.cs-js .cs-panel[hidden]{display:none}
.cs-panel .cs-kicker{display:block;font:800 12px/1 var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--purple);margin-bottom:10px}
.cs-panel h3{font:800 clamp(24px,2.4vw,30px)/1.15 var(--head);margin:0 0 12px;color:var(--ink)}
.cs-panel p{margin:0 0 14px;color:var(--ink-2);line-height:1.65}
.cs-panel h4{font:800 16px/1.3 var(--head);margin:20px 0 10px;color:var(--ink)}
.cs-facts{background:var(--soft);border-radius:20px;padding:8px 22px;margin:0;align-self:start}
.cs-facts div{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.cs-facts div:last-child{border-bottom:0}
.cs-facts dt{font:700 13px/1.4 var(--head);color:var(--muted)}
.cs-facts dd{margin:0;font:700 15px/1.45 var(--body);color:var(--ink)}
.cs-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:18px}
.cs-guide{font:800 15px/1 var(--head);color:var(--purple);text-decoration:none;border-bottom:2px solid var(--yellow);padding-bottom:3px}
.cs-side{display:grid;gap:16px;align-content:start}
.cs-side .tool-row{margin:0}
@media(max-width:900px){.cs-panel{grid-template-columns:1fr;padding:24px;gap:24px}.cs-facts div{grid-template-columns:104px 1fr}}

/* ---- video posters (real thumbnails, embed swapped in production) ---- */
.vid-poster{position:relative;display:block;border-radius:26px;overflow:hidden;background:var(--ink);text-decoration:none;color:#fff;box-shadow:var(--shadow-sm)}
.vid-poster img{display:block;width:100%;height:100%;object-fit:cover}
.vid-poster.wide{aspect-ratio:16/9;max-width:980px}
.vid-poster.tall{aspect-ratio:3/4;max-width:360px}
.vid-poster .vp-play{position:absolute;left:50%;top:50%;width:76px;height:76px;margin:-38px 0 0 -38px;border-radius:50%;background:var(--yellow);color:var(--ink);display:grid;place-items:center;font-size:26px;box-shadow:0 12px 30px rgba(0,0,0,.3)}
.vid-poster .vp-cap{position:absolute;left:0;right:0;bottom:0;padding:48px 24px 20px;background:linear-gradient(180deg,rgba(38,38,38,0),rgba(38,38,38,.88));display:grid;gap:4px}
.vid-poster .vp-cap strong{font:800 18px/1.25 var(--head)}
.vid-poster .vp-cap span{font:600 13px/1.4 var(--body);color:rgba(255,255,255,.75)}
.vid-split{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;align-items:center}
.vid-note{font-size:13px;color:var(--muted);margin-top:14px}
@media(max-width:900px){.vid-split{grid-template-columns:1fr}.vid-poster.tall{max-width:320px}}

/* ---- HTW agreement ---- */
.htw-grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:48px;align-items:start}
.htw-photo{margin:0}
.htw-photo img{display:block;width:100%;border-radius:26px;aspect-ratio:3/4;object-fit:cover}
.htw-photo figcaption{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.5}
.htw-seats{display:flex;gap:18px;align-items:center;background:var(--ink);color:#fff;border-radius:22px;padding:20px 24px;margin:22px 0 14px}
.htw-seats strong{font:800 44px/1 var(--head);color:var(--yellow)}
.htw-seats p{margin:0;color:rgba(255,255,255,.9);line-height:1.55}
.htw-fine{font-size:13px;color:var(--muted);line-height:1.6}
@media(max-width:900px){.htw-grid{grid-template-columns:1fr}.htw-photo{max-width:340px}}

/* ---- subject areas ---- */
.subj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:8px}
.subj-card{margin:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.subj-img{aspect-ratio:16/10;background:linear-gradient(135deg,var(--pol-lilac,#C8B8DB),var(--purple));position:relative}
.subj-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.subj-card figcaption{padding:12px 14px;font:700 15px/1.3 var(--head);color:var(--ink)}

/* ---- founder notes placed inside topic sections ---- */
.fnote{border-left:4px solid var(--yellow);background:var(--soft);border-radius:0 20px 20px 0;padding:24px 28px;margin:26px 0}
.fnote .fn-k{display:block;font:800 12px/1 var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--purple);margin-bottom:10px}
.fnote h3{font:800 20px/1.3 var(--head);margin:0 0 10px;color:var(--ink)}
.fnote p{margin:0 0 10px;line-height:1.65;color:var(--ink-2)}
.fnote .fn-sig{display:block;margin-top:6px;font:700 13px/1.4 var(--head);color:var(--ink)}
.fnote .fn-sig small{font-weight:600;color:var(--muted)}

/* ---- two columns of tables / cards ---- */
.hub-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.hub-2col h3{font:800 19px/1.3 var(--head);margin:0 0 10px}
@media(max-width:900px){.hub-2col{grid-template-columns:1fr}}

/* ---- numbered checks (visa) ---- */
.chk-list{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px;counter-reset:chk}
.chk-list li{counter-increment:chk;display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff}
.chk-list li:before{content:counter(chk);width:32px;height:32px;border-radius:50%;background:var(--purple);color:#fff;display:grid;place-items:center;font:800 14px/1 var(--head)}
.chk-list strong{display:block;font:800 15px/1.35 var(--head);color:var(--ink);margin-bottom:3px}
.chk-list span{font-size:14px;line-height:1.55;color:var(--ink-2)}
@media(max-width:760px){.chk-list{grid-template-columns:1fr}}

/* ---- tools hub ---- */
.tools-stack{display:grid;gap:12px;margin-top:10px}
.tools-stack .tool-row{margin:0}

/* ---- latest updates thumbnails ---- */
.testimonial-thumb{position:relative;overflow:hidden}
.testimonial-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.testimonial-thumb .story-play{position:relative;z-index:1}
.upd-tag{display:inline-block;font:800 11px/1 var(--head);letter-spacing:.08em;color:var(--purple);margin:14px 0 6px}

/* ---- cost-specific note ---- */
.fee-note{font-size:13px;color:var(--muted);line-height:1.6;margin-top:12px}

/* ---- footer with link columns ---- */
footer.hub-foot{background:#262626;color:rgba(255,255,255,.9);padding:56px 0 28px;margin:0}
.hf-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px}
.hf-brand strong{display:block;font:800 20px/1.2 var(--head);color:#fff}
.hf-brand p{color:rgba(255,255,255,.6);font-size:14px;line-height:1.6;margin:10px 0 0}
.hf-col h3{font:800 14px/1.2 var(--head);color:#fff;margin:0 0 14px}
.hf-col a{display:block;color:rgba(255,255,255,.72);text-decoration:none;font-size:14px;line-height:1.4;padding:5px 0}
.hf-legal{border-top:1px solid rgba(255,255,255,.14);margin-top:36px;padding-top:20px;display:grid;gap:12px;font-size:12.5px;line-height:1.6;color:rgba(255,255,255,.6)}
.hf-legal div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.hf-legal a{color:rgba(255,255,255,.72)}
@media(max-width:900px){.hf-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hf-grid{grid-template-columns:1fr}}

/* ---- v2 polish after visual review ---- */
.section.soft .fnote{background:#fff}
main .section .subhead{margin:40px 0 12px}
.cs-side .tool-row{display:grid;grid-template-columns:auto 1fr;gap:12px 14px;align-items:start}
.cs-side .tool-row .tr-go{grid-column:1/-1;justify-self:start}
.subj-img{background:linear-gradient(135deg,#f1eff8,#e2ddf1)}
#latest-germany-updates .testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#latest-germany-updates .testimonial-thumb{aspect-ratio:16/9;height:auto;min-height:0}
#latest-germany-updates .upd-tag{color:var(--yellow);margin:16px 16px 4px}
@media(max-width:900px){#latest-germany-updates .testimonial-grid{grid-template-columns:1fr}}
footer.hub-foot .hf-legal p{color:rgba(255,255,255,.6);margin:0}
.cs-panels{grid-template-columns:minmax(0,1fr)}
.cs-panel{min-width:0}
@media(max-width:560px){
  .cs-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .cs-tab{flex-direction:column;align-items:flex-start;gap:4px;padding:12px 16px;border-radius:18px;font-size:15px}
  .cs-panel{padding:20px;border-radius:20px}
  .cs-facts{padding:4px 16px}
}
.hub-2col>*{min-width:0}
@media(max-width:900px){.hub-2col{grid-template-columns:minmax(0,1fr)}}
.data-table.fit{min-width:0;width:100%}
.cs-actions .cs-guide+.cs-guide{margin-left:18px}
.course-sec .cs-panel{margin-top:4px}
#which-university-should-i-choose .institution-directory{margin-top:34px}
#which-university-should-i-choose .dl-lists{margin-top:34px}

/* ---- internal guide links: prominent cards (v3) ---- */
.guide-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;margin-top:22px}
.guide-link{position:relative;display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:16px;row-gap:14px;align-items:start;padding:20px 22px;border:1.5px solid #d9d3ec;border-radius:22px;background:#fff;text-decoration:none;color:var(--ink);box-shadow:0 1px 0 rgba(38,38,38,.04)}
.guide-link:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:4px;border-radius:0 4px 4px 0;background:var(--yellow)}
.gl-ico{width:48px;height:48px;border-radius:14px;background:#eeeaf5;color:var(--purple);display:grid;place-items:center}
.gl-txt{display:grid;gap:4px;min-width:0}
.gl-k{font:800 11px/1 var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--purple)}
.gl-txt strong{font:800 18px/1.25 var(--head);color:var(--ink)}
.gl-hook{font:500 14.5px/1.5 var(--body);color:var(--ink-2)}
.gl-go{grid-column:2;justify-self:start;display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 8px 0 16px;border-radius:999px;background:var(--ink);color:#fff;font:700 14px/1 var(--head)}
.gl-arr{width:28px;height:28px;border-radius:50%;background:var(--yellow);color:var(--ink);display:grid;place-items:center;font-size:15px}
.cs-panel .guide-links{grid-template-columns:1fr}
@media (prefers-reduced-motion:reduce){.guide-link,.gl-arr{}}
@media(max-width:560px){.guide-links{grid-template-columns:1fr}.guide-link{grid-template-columns:40px 1fr;padding:18px}.gl-ico{width:40px;height:40px}}
.cs-panel .guide-link{background:#faf9fd}

/* ---- v4: connected flow ---- */
.bridge{max-width:760px;margin:-4px 0 22px;font:500 17px/1.6 var(--body);color:var(--ink-2)}
.roadmap{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;counter-reset:none}
.roadmap a{display:flex;gap:14px;align-items:center;padding:14px 16px;border:1.5px solid var(--line);border-radius:18px;background:#fff;text-decoration:none;color:var(--ink)}
.rm-n{flex:0 0 36px;height:36px;border-radius:50%;background:var(--purple);color:#fff;display:grid;place-items:center;font:800 15px/1 var(--head)}
.rm-t strong{display:block;font:800 16px/1.2 var(--head)}
.rm-t small{display:block;margin-top:3px;font:500 13px/1.3 var(--body);color:var(--muted)}
.route-pick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.route-pick a{position:relative;display:grid;gap:6px;align-content:start;padding:20px 20px 56px;border:1.5px solid var(--line);border-radius:22px;background:#fff;text-decoration:none;color:var(--ink)}
.rp-k{font:800 11px/1 var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--purple)}
.route-pick strong{font:800 22px/1.2 var(--head)}
.route-pick span:not(.rp-k):not(.rp-go){font:500 14.5px/1.45 var(--body);color:var(--ink-2)}
.rp-go{position:absolute;left:20px;bottom:18px;width:30px;height:30px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font:800 15px/1 var(--head);color:var(--ink)}
@media(max-width:900px){.roadmap{grid-template-columns:1fr 1fr}.route-pick{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.roadmap{grid-template-columns:1fr}.route-pick{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.roadmap a,.route-pick a{}}

/* ---- v5: animated 9-step roadmap ---- */
.roadmap-section{background:linear-gradient(180deg,#fff 0%,#f7f5fc 100%)}
.rm-wrap{position:relative;margin-top:14px;--dot:52px}
.rm-track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:0;position:relative;z-index:1}
.rm-rail{position:absolute;left:calc(100%/18);right:calc(100%/18);top:calc(var(--dot)/2 - 3px);height:6px;border-radius:6px;background:#e4e0f1;z-index:0;overflow:visible}
.rm-fill{position:absolute;inset:0;border-radius:6px;background:linear-gradient(90deg,var(--purple),#8F89D6);transform-origin:left center;transform:scaleX(0)}
.rm-runner{position:absolute;top:50%;left:0;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 6px rgba(254,204,0,.25),0 0 22px rgba(254,204,0,.8);opacity:0}
.rm-step{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 6px}
.rm-step a{display:flex;flex-direction:column;align-items:center;gap:14px;text-decoration:none;color:var(--ink);border-radius:18px;padding:0 4px 8px}
.rm-dot{width:var(--dot);height:var(--dot);border-radius:50%;display:grid;place-items:center;background:#fff;border:3px solid #d9d3ec;color:var(--muted);font:800 19px/1 var(--head);transform:scale(.7);opacity:.45}
.rm-t{display:grid;gap:4px;opacity:0;transform:translateY(10px)}
.rm-t strong{font:800 15.5px/1.2 var(--head)}
.rm-t small{font:500 12.5px/1.35 var(--body);color:var(--muted)}
.rm-start{position:absolute;top:-30px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--yellow);color:var(--ink);font:800 11px/1 var(--head);letter-spacing:.04em;padding:6px 10px;border-radius:999px;opacity:0}
.rm-start:after{content:"";position:absolute;left:50%;bottom:-5px;margin-left:-5px;border:5px solid transparent;border-bottom:0;border-top-color:var(--yellow)}
/* drawn state */
.rm-wrap.is-drawn .rm-fill{transform:scaleX(1)}
.rm-wrap.is-drawn .rm-runner{left:100%;opacity:1}
.rm-wrap.is-drawn .rm-dot{transform:scale(1);opacity:1;background:var(--purple);border-color:var(--purple);color:#fff;box-shadow:0 8px 20px rgba(89,83,160,.28)}
.rm-wrap.is-drawn .rm-t{opacity:1;transform:none}
.rm-wrap.is-drawn .rm-start{opacity:1}
.rm-wrap.is-done .rm-step:first-child .rm-dot{}
.rm-wrap.is-done .rm-runner{opacity:0}
/* interaction */
/* phones and narrow tablets: vertical journey */
@media(max-width:900px){
  .rm-wrap{--dot:44px;margin-top:36px}
  .rm-track{grid-template-columns:1fr;row-gap:18px}
  .rm-rail{left:calc(var(--dot)/2 - 3px);right:auto;top:calc(var(--dot)/2);bottom:calc(var(--dot)/2);width:6px;height:auto}
  .rm-fill{transform-origin:center top;transform:scaleY(0)}
  .rm-wrap.is-drawn .rm-fill{transform:scaleY(1)}
  .rm-runner{left:50%;top:0;margin:-9px 0 0 -9px}
  .rm-wrap.is-drawn .rm-runner{top:100%}
  .rm-step{flex-direction:row;align-items:center;text-align:left;padding:0}
  .rm-step a{flex-direction:row;gap:16px;padding:0}
  .rm-start{position:static;transform:none;margin-left:auto;align-self:center}
  .rm-start:after{display:none}
}
@media(max-width:420px){.rm-start{display:none}}
/* no motion: show the finished journey */
@media (prefers-reduced-motion:reduce){
  .rm-fill,.rm-runner,.rm-dot,.rm-t,.rm-start{}
  .rm-wrap .rm-fill{transform:none}
  .rm-wrap .rm-dot{transform:none;opacity:1;background:var(--purple);border-color:var(--purple);color:#fff}
  .rm-wrap .rm-t,.rm-wrap .rm-start{opacity:1;transform:none}
  .rm-runner{display:none}
  .rm-wrap.is-done .rm-step:first-child .rm-dot{}
}
@media(min-width:901px){.rm-wrap{margin-top:52px}}

/* ---- v6: tools as cards on a grape band ---- */
.tools-band{background:var(--purple);color:#fff}
.tools-band .sec-head .eyebrow{color:var(--yellow)}
.tools-band .sec-head h2{color:#fff}
.tools-band .bridge{color:rgba(255,255,255,.88)}
.tk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:6px}
.tk-card{display:flex;flex-direction:column;background:#fff;color:var(--ink);border-radius:24px;padding:24px 22px 22px;box-shadow:0 18px 40px rgba(23,20,47,.22)}
.tk-ico{width:56px;height:56px;border-radius:16px;background:var(--yellow);color:var(--ink);display:grid;place-items:center;margin-bottom:16px}
.tk-for{font:800 11px/1.2 var(--head);letter-spacing:.08em;text-transform:uppercase;color:var(--purple);margin-bottom:8px}
.tk-card h3{font:800 21px/1.2 var(--head);margin:0 0 4px;color:var(--ink)}
.tk-name{font:600 13px/1.3 var(--body);color:var(--muted);margin-bottom:12px}
.tk-card p{font:500 14.5px/1.55 var(--body);color:var(--ink-2);margin:0 0 12px}
.tk-card .tk-get{background:#f6f6f8;border-radius:12px;padding:10px 12px;font-size:13.5px;margin-bottom:18px}
.tk-card .tk-get strong{color:var(--ink)}
.tk-btn{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:0 10px 0 20px;border-radius:999px;background:var(--yellow);color:var(--ink);font:800 15px/1 var(--head);text-decoration:none}
.tk-btn span{width:30px;height:30px;border-radius:50%;background:var(--ink);color:var(--yellow);display:grid;place-items:center;font-size:15px}
@media(max-width:1100px){.tk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.tk-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.tk-card,.tk-btn span{}}

/* ---- v7: question sections ---- */
.qa-sec{padding-top:28px;padding-bottom:28px}
.qa-card{position:relative;overflow:hidden;border:1.5px solid #d9d3ec;border-radius:26px;background:#fff;padding:30px 34px 26px;box-shadow:0 10px 30px rgba(89,83,160,.07)}
.qa-card:after{content:"?";position:absolute;right:26px;top:-18px;font:800 150px/1 var(--head);color:#eeeaf5;pointer-events:none}
.qa-card>*{position:relative;z-index:1}
.qa-badge{display:inline-block;background:var(--yellow);color:var(--ink);font:800 11px/1 var(--head);letter-spacing:.06em;text-transform:uppercase;padding:7px 12px;border-radius:999px;margin-bottom:14px}
.qa-card h2{font:800 clamp(24px,2.6vw,32px)/1.15 var(--head);margin:0 0 14px;max-width:880px;color:var(--ink)}
.qa-short{font:500 17px/1.6 var(--body);color:var(--ink);background:#f6f5fb;border-left:4px solid var(--purple);border-radius:0 14px 14px 0;padding:14px 18px;margin:0 0 16px;max-width:900px}
.qa-short strong{font-family:var(--head);color:var(--purple)}
.qa-card .dc-bullets{max-width:900px}
@media(max-width:560px){.qa-card{padding:22px 20px}.qa-card:after{font-size:110px;right:12px}}


/* USA LAYER - only what the two-route USA page needs on top of the Germany hub layers. */
.route-pick.usa-routes{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
@media(max-width:560px){.route-pick.usa-routes{grid-template-columns:1fr}}
.aw-grid.usa-aw{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1050px){.aw-grid.usa-aw{grid-template-columns:repeat(2,minmax(0,1fr))}}
.india-section .in-tlink{white-space:nowrap}
.video-section .video-placeholder{margin-top:4px}
/* USA cost calculator - Studienkolleg calculator format */
.ucalc,.ucalc *{box-sizing:border-box}
.ucalc{margin:28px 0 8px;border:2px solid #FECC00;border-radius:22px;background:#fff;padding:24px;max-width:100%}
.uc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.uc-badge{display:inline-block;background:#FECC00;color:#262626;font-weight:800;font-size:11px;border-radius:999px;padding:3px 9px}
.uc-top h3{margin:8px 0 2px;font-size:20px;line-height:1.25}
.uc-top p{margin:0;font-size:13px;color:var(--muted,#7a7a84)}
.uc-seg{display:inline-flex;background:var(--soft,#f7f6fb);border:1px solid var(--line,#e4e3e9);border-radius:999px;padding:4px;gap:2px;margin-top:22px}
.uc-seg button{border:0;background:transparent;border-radius:999px;padding:8px 16px;font:inherit;font-weight:700;font-size:13px;cursor:pointer;color:var(--ink,#262626);min-height:38px}
.uc-seg button.on{background:#5953A0;color:#fff}
.uc-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;align-items:start}
.uc-grid>*{min-width:0}
.uc-grp{margin:18px 0 8px;padding-top:16px;border-top:1px solid var(--line,#e4e3e9);font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#5953A0}
.uc-form>.uc-grp:first-child{margin-top:0;padding-top:0;border-top:0}
.uc-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:5px 0}
.uc-row label{font-size:14px;color:var(--ink,#262626)}
.uc-in{position:relative;flex:0 0 92px}
.uc-in input{width:100%;height:36px;border:1px solid var(--line,#e4e3e9);background:var(--soft,#f7f6fb);border-radius:9px;padding:0 10px;font:inherit;font-size:14px;font-weight:700;text-align:right;color:var(--ink,#262626);-moz-appearance:textfield}
.uc-in.cur input{padding-left:24px}
.uc-in.cur::before{content:"$";position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--muted,#7a7a84);pointer-events:none}
.uc-in.minus::before{content:"−$"}
.uc-in.minus input{padding-left:30px}
.uc-in input:focus{outline:2px solid #5953A0;outline-offset:1px;background:#fff}
.uc-range{width:100%;margin:2px 0 8px;accent-color:#5953A0;height:22px}
.uc-note{margin:2px 0 8px;background:var(--soft,#f7f6fb);border-radius:10px;padding:8px 12px;font-size:12px;line-height:1.5;color:#4a4a52}
.uc-out{background:#5953A0;color:#fff;border-radius:18px;padding:20px;position:sticky;top:120px}
.uc-k{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.9}
.uc-total{display:block;font-size:34px;font-weight:800;color:#FECC00;letter-spacing:-.01em;margin:2px 0 12px;line-height:1.1}
.uc-bar{display:flex;height:8px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.18);margin-bottom:14px}
.uc-bar span{display:block;height:100%}
.uc-bar .b1,.uc-leg .s1{background:#FECC00}.uc-bar .b2,.uc-leg .s2{background:#C8B8DB}.uc-bar .b3,.uc-leg .s3{background:#fff}
.uc-leg{list-style:none;margin:0 0 14px;padding:0}
.uc-leg li{display:flex;align-items:center;gap:8px;font-size:13px;padding:5px 0}
.uc-leg i{width:9px;height:9px;border-radius:2px;flex:0 0 9px}
.uc-leg span{flex:1}
.uc-info{background:rgba(255,255,255,.14);border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.5}
.uc-info b{color:#fff}
.uc-out .uc-fine{margin:10px 0 14px;font-size:11.5px;line-height:1.5;color:rgba(255,255,255,.8)}
.uc-print{width:100%;border:0;background:#FECC00;color:#262626;font:inherit;font-weight:800;font-size:14px;border-radius:999px;min-height:48px;cursor:pointer}
#uc-print-sheet{display:none}
@media(max-width:860px){.uc-grid{grid-template-columns:1fr}.uc-out{position:static}.ucalc{padding:18px}.uc-seg{margin-top:4px}}
@media print{body.uc-printing>*{display:none}body.uc-printing>#uc-print-sheet{display:block;font-family:Arial,sans-serif;color:#262626;padding:10mm}
#uc-print-sheet h1{font-size:20pt;margin:0 0 4pt}#uc-print-sheet p{font-size:10pt;margin:0 0 10pt;color:#555}
#uc-print-sheet table{width:100%;border-collapse:collapse;font-size:10.5pt}#uc-print-sheet td{padding:5pt 6pt;border-bottom:1px solid #ddd}#uc-print-sheet td:last-child{text-align:right}
#uc-print-sheet tr.grp td{font-weight:700;color:#5953A0;background:#f4f2fb}#uc-print-sheet tr.tot td{font-weight:800;font-size:12pt;border-top:2px solid #262626}}
.uc-in{flex:0 0 116px}
.uc-in input::-webkit-outer-spin-button,.uc-in input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
/* Key points (tabbed) */
.kp-section{padding-top:40px;padding-bottom:40px}
.kp{background:#faf9fd;border:1px solid var(--line,#e4e3e9);border-radius:24px;padding:28px}
.kp-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.kp-ring{position:relative;width:44px;height:44px;display:inline-block}
.kp-ring svg{transform:rotate(-90deg)}
.kp-ring circle{fill:none;stroke-width:4}
.kp-ring-bg{stroke:#ece9f6}.kp-ring-fg{stroke:#FECC00;stroke-linecap:round;stroke-dasharray:119.4;stroke-dashoffset:0}
.kp-sec{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#5953A0}
.kp-read{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5953A0}
.kp-title{margin:0 0 22px;font-size:clamp(26px,3.2vw,36px);line-height:1.15}
.kp-title mark{background:linear-gradient(transparent 58%,#FECC00 58%);color:inherit;padding:0 2px}
.kp-grid{display:grid;grid-template-columns:minmax(240px,345px) minmax(0,1fr);gap:26px;align-items:start}
.kp-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.kp-list button{width:100%;display:flex;gap:14px;align-items:center;text-align:left;background:#fff;border:1px solid var(--line,#e4e3e9);border-radius:12px;padding:12px 16px;font:inherit;font-weight:700;font-size:15px;color:var(--ink,#262626);cursor:pointer;min-height:46px}
.kp-list button span{color:#c8c4dc;font-weight:800;min-width:20px}
.kp-list button.on{background:#262626;border-color:#262626;color:#fff}
.kp-list button.on span{color:#FECC00}
.kp-card{position:relative;overflow:hidden;background:linear-gradient(160deg,#5953A0,#3f3a86);border-radius:24px;padding:40px 44px 34px;color:#fff;min-height:420px;box-shadow:0 18px 40px rgba(89,83,160,.25)}
.kp-card::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(254,204,0,.35),transparent 70%);pointer-events:none}
.kp-slide{display:none;position:relative;z-index:1}
.kp-slide.on{display:block}
.kp-ico{display:inline-flex;width:58px;height:58px;border-radius:14px;background:#FECC00;align-items:center;justify-content:center;margin-bottom:22px}
.kp-ico svg{width:26px;height:26px;fill:none;stroke:#262626;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.kp-n{display:block;font-size:13px;font-weight:800;color:#FECC00;margin-bottom:6px}
.kp-slide h3{margin:0 0 14px;font-size:clamp(28px,3.4vw,38px);line-height:1.1;color:#fff}
.kp-slide p{margin:0 0 20px;font-size:18px;line-height:1.6;color:rgba(255,255,255,.92);max-width:600px}
.kp-slide a{color:#fff;font-weight:800;font-size:14px;text-decoration:none;border-bottom:2px solid #FECC00;padding-bottom:3px}
.kp-prog{position:absolute;left:44px;right:44px;bottom:34px;height:5px;border-radius:999px;background:rgba(255,255,255,.18);z-index:1}
.kp-prog span{display:block;height:100%;width:0;border-radius:999px;background:#FECC00}
@media(max-width:860px){.kp{padding:20px}.kp-grid{grid-template-columns:1fr;gap:16px}
.kp-list{display:flex;overflow-x:auto;gap:8px;padding-bottom:4px;scroll-snap-type:x mandatory}
.kp-list li{flex:0 0 auto;scroll-snap-align:start}.kp-list button{white-space:nowrap;padding:10px 14px;font-size:14px}
.kp-card{padding:28px 24px 56px;min-height:360px}.kp-prog{left:24px;right:24px;bottom:22px}.kp-slide p{font-size:16px}}
/* Call-back banner */
.cb-section{padding-top:24px;padding-bottom:24px}
.cb{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:26px;overflow:hidden;background:#25224f;box-shadow:0 18px 40px rgba(34,31,77,.25);min-height:320px}
.cb-art{position:relative}
.cb-art svg{position:absolute;inset:0;width:100%;height:100%}
.cb-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 50%,#25224f 100%)}
.cb-copy{padding:44px 44px 40px 20px;color:#fff;display:flex;flex-direction:column;justify-content:center}
.cb-copy h2{margin:0 0 12px;color:#fff;font-size:clamp(24px,2.8vw,34px);line-height:1.15}
.cb-copy p{margin:0 0 22px;color:rgba(255,255,255,.88);font-size:16px;line-height:1.6;max-width:460px}
.cb-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:10px;background:#FECC00;color:#262626;text-decoration:none;font-weight:800;font-size:15px;border-radius:999px;padding:14px 28px;box-shadow:0 8px 20px rgba(254,204,0,.25);min-height:48px}
.cb-copy .cb-note{margin:14px 0 0;font-size:12.5px;color:rgba(255,255,255,.7)}
@media(max-width:860px){.cb{grid-template-columns:1fr}.cb-art{height:190px}.cb-art::after{background:linear-gradient(180deg,transparent 45%,#25224f 100%)}.cb-copy{padding:24px 24px 30px}}

/* Roadmap now has 8 steps */
@media(min-width:901px){.rm-track{grid-template-columns:repeat(8,minmax(0,1fr))}}

/* Route cards: short description */
.route-pick span.rp-d{display:block;margin-top:6px;padding-top:10px;border-top:1px solid var(--line,#e4e3e9);font:400 14px/1.55 var(--body);color:var(--muted,#7a7a84)}

/* One download card under each university table */
.dl-lists.dl-single{margin-top:18px}
.dl-lists.dl-single,.dl-lists.dl-single .dl-grid,.dl-lists.dl-single .dl-card{max-width:none;width:100%}
.dl-lists.dl-single .dl-grid{grid-template-columns:1fr}



.uc-row-sel .uc-in.uc-select{flex:0 0 300px}
.uc-select select{width:100%;height:38px;border:1px solid var(--line,#e4e3e9);background:var(--soft,#f7f6fb) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235953A0' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 12px center;border-radius:9px;padding:0 34px 0 12px;font:inherit;font-size:14px;font-weight:600;color:var(--ink,#262626);-webkit-appearance:none;appearance:none;cursor:pointer;text-overflow:ellipsis}
.uc-select select:focus{outline:2px solid #5953A0;outline-offset:1px;background-color:#fff}
.uc-note a{color:#5953A0;font-weight:700}
.uc-out .uc-for{display:block;margin:-6px 0 12px;font-size:13px;font-weight:700;color:rgba(255,255,255,.9)}
@media(max-width:560px){.uc-row-sel{flex-direction:column;align-items:stretch;gap:6px}.uc-row-sel .uc-in.uc-select{flex:1 1 auto}}
.ss-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:8px}
.ss-card{background:#fff;border:1px solid var(--line,#e4e3e9);border-radius:20px;overflow:hidden;display:flex;flex-direction:column}
.ss-media{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,#2c2a3a 0%,#4a4580 100%);overflow:hidden}
.ss-media::after{content:"";position:absolute;right:-50px;bottom:-70px;width:200px;height:200px;border-radius:50%;border:26px solid rgba(255,255,255,.07)}
.ss-tag{position:absolute;left:14px;top:14px;z-index:1;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:6px 10px}
.ss-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;width:54px;height:54px;border-radius:50%;background:#FECC00;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(254,204,0,.35)}
.ss-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.ss-body h3{margin:0;font-size:18px}
.ss-body p{margin:0;font-size:14.5px;line-height:1.6;color:#4a4a52}
.ss-meta{margin-top:auto;padding-top:8px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#7a7a84)}
@media(max-width:900px){.ss-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.ss-grid{grid-template-columns:1fr}}

}}