@font-face{font-family:Manrope;
src:url('fonts/manrope-400.ttf') format('truetype');
font-weight:400;
font-display:swap}
@font-face{font-family:Manrope;
src:url('fonts/manrope-500.ttf') format('truetype');
font-weight:500;
font-display:swap}
@font-face{font-family:Manrope;
src:url('fonts/manrope-600.ttf') format('truetype');
font-weight:600;
font-display:swap}
@font-face{font-family:Manrope;
src:url('fonts/manrope-700.ttf') format('truetype');
font-weight:700;
font-display:swap}
@font-face{font-family:Manrope;
src:url('fonts/manrope-800.ttf') format('truetype');
font-weight:800;
font-display:swap}

:root{--paper:#f6f7f3;
--white:#fff;
--ink:#152c35;
--muted:#435b64;
--blue:#254feb;
--navy:#142d39;
--line:#dbe1dc;
--mint:#e2eddf;
--lime:#d9f18c;
--radius:6px;
--wrap:1320px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;
scroll-padding-top:110px}
body{margin:0;
background:var(--paper);
font-family:Manrope,Arial,sans-serif;
color:var(--ink);
font-size:16px;
line-height:1.7;
-webkit-font-smoothing:antialiased}
a{color:inherit;
text-decoration:none}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:default}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--blue);
outline-offset:5px}
::selection{background:var(--lime);
color:var(--ink)}
img,svg{max-width:100%}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{line-height:1.16;
font-weight:600;
letter-spacing:-.045em}
h1{font-size:clamp(43px,5.1vw,76px);
margin-bottom:28px}
h2{font-size:clamp(32px,3.3vw,48px);
margin-bottom:22px}
h3{font-size:24px;
letter-spacing:-.035em}
p{margin-bottom:20px}
p:last-child{margin-bottom:0}
.wrap{width:min(var(--wrap),calc(100% - 104px));
margin-inline:auto}
.skip{position:fixed;
top:-90px;
left:20px;
z-index:100;
background:var(--ink);
color:white;
padding:12px 20px}
.skip:focus{top:12px}
.icon{width:24px;
height:24px;
fill:none;
stroke:currentColor;
stroke-width:1.6;
stroke-linecap:round;
stroke-linejoin:round;
flex-shrink:0}
.arrow{display:inline-block;
transition:transform .2s}
.btn:hover .arrow,.text-link:hover .arrow{transform:translate(3px,-2px)}
.btn{display:inline-flex;
align-items:center;
justify-content:center;
gap:26px;
min-height:52px;
padding:14px 23px;
border:1px solid transparent;
border-radius:4px;
font-size:14px;
font-weight:700;
letter-spacing:.005em;
line-height:1.5;
background:var(--blue);
color:white;
transition:background .2s,transform .2s;
white-space:normal;
text-align:center}
.btn:hover{background:#163bca}
.btn.ghost{border-color:#bdc9c6;
color:var(--ink);
background:transparent}
.btn.ghost:hover{background:#e8ede7}
.btn.light{background:var(--lime);
color:var(--ink)}
.btn.light:hover{background:#c8e97a}
.btn.white{background:white;
color:var(--ink)}
.btn.white:hover{background:#eaf0e6}
.btn.small{min-height:43px;
padding:10px 18px;
gap:20px}
.btn svg{width:17px;
height:17px}
.text-link{display:inline-flex;
align-items:center;
gap:18px;
font-weight:700;
font-size:14px;
padding:4px 0}
.text-link:hover{color:var(--blue)}
.eyebrow{font-size:11px;
letter-spacing:.15em;
text-transform:uppercase;
font-weight:700;
display:flex;
align-items:center;
gap:12px;
line-height:1.6;
margin-bottom:22px}
.eyebrow::before{content:'';
width:7px;
height:7px;
background:var(--blue);
display:inline-block;
flex-shrink:0}
.eyebrow.no-square::before{display:none}
.subtle{color:var(--muted)}
.accent{color:var(--blue)}
.intro{color:var(--muted);
font-size:17px;
line-height:1.9;
max-width:570px}
.section{padding:96px 0}
.section-top{display:flex;
justify-content:space-between;
gap:32px;
align-items:flex-end;
margin-bottom:42px}
.section-top h2{margin:0}
.section-top p{max-width:360px;
margin:0;
color:var(--muted)}
.section-top .text-link{flex-shrink:0;
margin-bottom:5px}
.actions{display:flex;
gap:12px;
align-items:center;
flex-wrap:wrap}
.label{font-size:11px;
letter-spacing:.12em;
text-transform:uppercase;
font-weight:700}
.number{font-size:12px;
letter-spacing:.07em}
.dot{height:5px;
width:5px;
background:currentColor;
border-radius:50%;
display:inline-block;
margin-inline:8px;
vertical-align:middle}
.rule{height:1px;
background:var(--line)}

/* Navigation */
.header{position:sticky;
top:0;
z-index:40;
background:rgba(246,247,243,.97);
border-bottom:1px solid var(--line);
backdrop-filter:blur(15px)}
.nav-row{height:97px;
display:flex;
align-items:center;
justify-content:space-between;
gap:30px}
.brand{display:inline-flex;
align-items:center;
gap:10px;
flex-shrink:0}
.brand-symbol{width:36px;
height:38px;
color:var(--blue)}
.brand-text{font-size:21px;
font-weight:800;
line-height:1.15;
letter-spacing:-.06em}
.brand-text small{display:block;
font-size:10px;
letter-spacing:.29em;
font-weight:700;
margin-top:6px}
.desktop-nav{display:flex;
align-items:center;
gap:28px;
font-size:14px;
font-weight:600}
.desktop-nav>a{padding:13px 0;
position:relative}
.desktop-nav>a:hover,.desktop-nav>a[aria-current=page]{color:var(--blue)}
.desktop-nav>a[aria-current=page]::after{content:'';
position:absolute;
height:3px;
background:var(--blue);
left:0;
right:0;
bottom:-25px}
.nav-right{display:flex;
gap:22px;
align-items:center}
.locale{font-size:12px;
font-weight:700;
display:flex;
gap:7px;
align-items:center}
.locale span{width:6px;
height:6px;
background:var(--blue);
border-radius:50%}
.menu-toggle{display:none;
align-items:center;
justify-content:center;
width:44px;
height:44px;
border:1px solid var(--line);
background:transparent;
border-radius:4px}
.mobile-nav{display:none}
.breadcrumb{padding-top:30px;
color:var(--muted);
font-size:12px;
display:flex;
align-items:center;
gap:9px;
flex-wrap:wrap}
.breadcrumb a:hover{color:var(--blue)}
.breadcrumb span[aria-current]{color:var(--ink)}

/* Homepage */
.hero{padding:56px 0 50px}
.hero-grid{display:grid;
grid-template-columns:1.06fr 1fr;
gap:64px;
align-items:center}
.hero-copy{padding:20px 0 24px}
.hero-copy h1{font-size:clamp(46px,5vw,76px);
line-height:1.09;
letter-spacing:-.058em;
margin-bottom:24px}
.hero-copy h1 span{color:var(--blue)}
.hero-copy .intro{max-width:490px;
font-size:16px;
margin-bottom:30px}
.hero-meta{margin-top:34px;
display:flex;
gap:22px;
color:var(--muted);
font-size:12px}
.hero-meta span{display:flex;
align-items:center;
gap:7px}
.hero-meta svg{width:13px;
height:13px;
stroke:var(--blue)}
.hero-art{position:relative;
min-width:0;
aspect-ratio:1.03;
background:#e6ebf7;
overflow:hidden;
border-radius:5px}
.hero-art>svg{width:100%;
height:100%;
position:absolute;
inset:0}
.art-top{position:absolute;
left:27px;
top:23px;
right:27px;
display:flex;
justify-content:space-between;
align-items:flex-start}
.art-top span{font-size:10px;
line-height:1.7;
font-weight:600;
letter-spacing:.11em}
.art-badge{font-size:10px;
width:67px;
height:67px;
border:1px solid #a4b1ce;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
line-height:1.7!important;
transform:rotate(11deg)}
.art-bottom{position:absolute;
left:25px;
right:25px;
bottom:24px;
background:rgba(255,255,255,.93);
padding:17px 20px;
display:flex;
justify-content:space-between;
align-items:center;
gap:10px;
border:1px solid rgba(255,255,255,.9);
box-shadow:0 5px 25px #2b417010;
border-radius:3px}
.art-bottom strong{font-size:12px;
font-weight:700}
.art-bottom small{display:block;
font-size:11px;
color:var(--muted);
margin-top:3px}
.art-bottom .art-steps{display:flex;
gap:9px;
align-items:center;
font-size:11px;
color:var(--muted);
white-space:nowrap}
.art-steps b{font-size:10px;
background:var(--lime);
width:23px;
height:23px;
border-radius:50%;
display:inline-flex;
align-items:center;
justify-content:center;
color:var(--ink)}
.tech-band{border-top:1px solid var(--line);
border-bottom:1px solid var(--line)}
.tech-band .wrap{display:flex;
align-items:center;
justify-content:space-between;
padding-block:24px;
gap:20px;
flex-wrap:wrap}
.tech-band .label{color:var(--muted);
font-size:11px}
.tech-names{display:flex;
gap:32px;
align-items:center;
font-size:14px;
font-weight:700;
letter-spacing:-.025em}
.tech-names span{white-space:nowrap}
.tech-names .tiny{color:var(--muted);
font-size:12px;
font-weight:500;
margin-left:4px}
.course-grid{display:grid;
grid-template-columns:repeat(3,1fr);
gap:17px}
.course-card{display:flex;
flex-direction:column;
position:relative;
border:1px solid var(--line);
background:var(--white);
border-radius:5px;
padding:26px 28px 23px;
transition:transform .2s,border-color .2s,box-shadow .2s;
min-height:315px}
.course-card:hover{transform:translateY(-5px);
border-color:#9aacec;
box-shadow:0 15px 30px #152c3507}
.course-card .card-top{display:flex;
justify-content:space-between;
align-items:flex-start;
margin-bottom:29px}
.course-card .card-icon{background:#edf0ff;
color:var(--blue);
width:44px;
height:44px;
border-radius:4px;
display:flex;
align-items:center;
justify-content:center}
.course-card[data-category=dane] .card-icon{background:#eaf2df;
color:#64852b}
.course-card[data-category=programowanie] .card-icon{background:#f3ebfa;
color:#9062aa}
.course-card[data-category=biznes] .card-icon{background:#fff2df;
color:#a97e35}
.course-card[data-category=bezpieczenstwo] .card-icon{background:#e4f3ef;
color:#388879}
.card-top .number{color:#72828a}
.course-card .label{font-size:11px;
letter-spacing:.09em;
color:var(--muted);
margin-bottom:9px}
.course-card h3{font-size:23px;
line-height:1.22;
margin-bottom:12px}
.course-card p{color:var(--muted);
font-size:16px;
line-height:1.85;
margin-bottom:23px}
.card-bottom{border-top:1px solid #e8ece7;
margin-top:auto;
padding-top:15px;
display:flex;
justify-content:space-between;
align-items:center;
font-size:14px;
font-weight:700}
.card-bottom svg{width:16px;
height:16px}
.course-card:hover .card-bottom{color:var(--blue)}
.home-paths .section-top p{font-size:16px}
.method{background:var(--navy);
color:white;
position:relative;
overflow:hidden}
.method .eyebrow{color:#b3c5c9}
.method .eyebrow::before{background:var(--lime)}
.method .section-top p{color:#b3c5c9;
font-size:16px}
.method .steps{display:grid;
grid-template-columns:repeat(3,1fr);
gap:46px;
margin-top:52px}
.method .step{border-top:1px solid #47606a;
padding-top:24px}
.step-num{display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:30px;
font-size:12px;
color:var(--lime)}
.method h3{font-size:25px;
margin-bottom:14px}
.method .step p{font-size:16px;
color:#bdcdd1;
max-width:330px}
.method .step svg{width:18px;
height:18px}
.audience-grid{display:grid;
grid-template-columns:1fr 1fr;
gap:18px}
.audience-card{background:var(--mint);
padding:40px;
border-radius:5px;
position:relative;
overflow:hidden;
min-height:338px;
display:flex;
flex-direction:column}
.audience-card.blue{background:#e7ecfa}
.audience-card .label{color:var(--muted);
margin-bottom:24px}
.audience-card h3{font-size:36px;
max-width:340px;
position:relative}
.audience-card p{font-size:16px;
color:var(--muted);
max-width:330px;
position:relative}
.audience-card .text-link{margin-top:auto;
align-self:flex-start;
position:relative}
.audience-symbol{position:absolute;
width:160px;
height:160px;
right:-30px;
bottom:20px;
color:#a5bda0;
opacity:.35;
transform:rotate(-12deg)}
.audience-card.blue .audience-symbol{color:#9baeea;
transform:rotate(10deg)}
.resources-preview{display:grid;
grid-template-columns:1fr 1fr;
gap:90px}
.resource-list{border-top:1px solid var(--line)}
.resource-row{display:flex;
justify-content:space-between;
align-items:center;
gap:20px;
padding:23px 0;
border-bottom:1px solid var(--line)}
.resource-row .row-icon{color:var(--blue);
margin-right:4px}
.resource-row strong{display:block;
font-size:16px}
.resource-row small{display:block;
color:var(--muted);
font-size:13px;
margin-top:3px}
.resource-row:hover strong{color:var(--blue)}
.resource-row>svg{width:18px;
height:18px;
flex-shrink:0}
.cta{padding:68px 0;
background:var(--blue);
color:white}
.cta-inner{display:flex;
align-items:center;
justify-content:space-between;
gap:50px}
.cta h2{font-size:40px;
max-width:700px;
margin-bottom:12px}
.cta p{color:#dde4ff;
font-size:16px}
.cta .btn{flex-shrink:0}
.cta .eyebrow{color:#dce4ff;
margin-bottom:17px}
.cta .eyebrow::before{background:var(--lime)}

/* Shared pages */
.page-hero{padding:62px 0 68px}
.page-hero-grid{display:grid;
grid-template-columns:1.3fr .7fr;
gap:80px;
align-items:center}
.page-hero h1{font-size:clamp(45px,4.7vw,68px);
margin-bottom:22px;
max-width:880px}
.page-hero .intro{font-size:16px;
max-width:630px}
.page-hero .actions{margin-top:26px}
.page-art{background:var(--blue);
color:#eef2ff;
aspect-ratio:1.2;
display:flex;
align-items:center;
justify-content:center;
position:relative;
overflow:hidden;
border-radius:5px}
.page-art::before{content:'';
position:absolute;
inset:0;
background-image:linear-gradient(#ffffff10 1px,transparent 1px),linear-gradient(90deg,#ffffff10 1px,transparent 1px);
background-size:32px 32px}
.page-art>.icon{width:125px;
height:125px;
stroke-width:.75;
position:relative}
.page-art .art-caption{position:absolute;
bottom:22px;
left:24px;
right:24px;
display:flex;
justify-content:space-between;
font-size:10px;
letter-spacing:.12em;
font-weight:600}
.page-art .orb{position:absolute;
width:210px;
height:210px;
border:1px solid #ffffff40;
border-radius:50%;
transform:rotate(-30deg)}
.page-art .orb:nth-child(2){width:280px;
height:280px}
.page-art.green{background:#deeadb;
color:var(--ink)}
.page-art.green::before{background-image:linear-gradient(#152c3508 1px,transparent 1px),linear-gradient(90deg,#152c3508 1px,transparent 1px)}
.page-art.green .orb{border-color:#152c3520}
.page-hero.compact{padding-bottom:48px}
.page-hero.compact h1{max-width:800px}
.split{display:grid;
grid-template-columns:.78fr 1.22fr;
gap:90px}
.split>.side-title{position:relative}
.side-title p{max-width:330px;
color:var(--muted);
font-size:16px}
.prose{max-width:760px}
.prose h2{font-size:33px;
margin-top:45px}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:23px;
margin-top:30px}
.prose p{color:var(--muted);
font-size:16px;
line-height:1.95}
.prose ul,.prose ol{color:var(--muted);
padding-left:22px}
.prose li{padding-left:6px;
margin-bottom:10px;
font-size:16px}
.prose a:not(.btn){color:var(--blue);
text-decoration:underline;
text-underline-offset:4px}
.pale{background:#edf0e9}
.white-section{background:white}
.info-grid{display:grid;
grid-template-columns:repeat(3,1fr);
gap:26px}
.info-item{padding:28px;
border:1px solid var(--line);
border-radius:5px;
background:#ffffff65}
.info-item>.icon{color:var(--blue);
margin-bottom:23px;
width:28px;
height:28px}
.info-item h3{font-size:23px;
margin-bottom:13px}
.info-item p{color:var(--muted);
font-size:16px}
.info-item .text-link{margin-top:16px}
.numbered-list{counter-reset:items}
.numbered-item{display:grid;
grid-template-columns:40px 1fr;
gap:20px;
border-top:1px solid var(--line);
padding:27px 0}
.numbered-item:last-child{border-bottom:1px solid var(--line)}
.numbered-item::before{counter-increment:items;
content:'0' counter(items);
font-size:12px;
color:var(--blue);
padding-top:3px}
.numbered-item h3{font-size:22px;
margin-bottom:12px}
.numbered-item p{color:var(--muted);
font-size:16px;
max-width:640px}
.quote-panel{padding:48px;
background:var(--mint);
border-radius:5px}
.quote-panel h2{font-size:38px}
.quote-panel p{font-size:16px;
color:var(--muted)}
.quote-panel .label{display:block;
margin-bottom:27px}
.notice{border-left:3px solid var(--blue);
background:#ecf0fb;
padding:22px 25px;
font-size:14px;
line-height:1.9;
color:var(--muted);
margin-top:30px}
.notice strong{color:var(--ink)}
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;
font-size:16px;
font-weight:600;
padding:23px 40px 23px 0;
cursor:pointer;
position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';
position:absolute;
right:5px;
top:17px;
font-size:22px;
font-weight:400;
color:var(--blue)}
.faq details[open] summary::after{content:'−'}
.faq details p{max-width:680px;
color:var(--muted);
font-size:16px;
line-height:1.95;
padding:0 38px 24px 0;
margin:0}
.source-note{margin-top:30px;
font-size:12px;
color:var(--muted)}
.source-note a{border-bottom:1px solid #a5b5bd}
.source-note a:hover{color:var(--blue)}
.catalog-tools{margin-bottom:34px;
display:flex;
flex-wrap:wrap;
align-items:center;
gap:21px;
justify-content:space-between}
.filters{display:flex;
gap:5px;
flex-wrap:wrap}
.filter{padding:10px 15px;
border:1px solid transparent;
background:transparent;
border-radius:4px;
font-size:14px;
color:var(--muted);
font-weight:600}
.filter[aria-pressed=true]{background:var(--ink);
color:white}
.filter:hover:not([aria-pressed=true]){background:#e4eae2}
.search{position:relative;
flex-shrink:0}
.search .icon{position:absolute;
left:13px;
top:14px;
width:16px;
height:16px;
color:var(--muted)}
.search input{padding:11px 14px 11px 40px;
width:235px;
min-height:45px;
background:white;
border:1px solid var(--line);
border-radius:4px;
font-size:16px;
color:var(--ink)}
.catalog-meta{display:flex;
justify-content:space-between;
gap:20px;
font-size:12px;
color:var(--muted);
margin-bottom:16px}
.empty-state{padding:60px 30px;
border:1px solid var(--line);
text-align:center;
border-radius:5px}
.empty-state h3{font-size:25px}
.empty-state p{font-size:16px;
color:var(--muted)}
[hidden]{display:none!important}
.learning-layout{display:grid;
grid-template-columns:1fr 330px;
gap:80px;
align-items:start}
.learning-sidebar{background:var(--navy);
color:white;
padding:29px;
border-radius:5px;
position:sticky;
top:128px}
.learning-sidebar>.icon{color:var(--lime);
width:34px;
height:34px;
margin-bottom:28px}
.learning-sidebar h3{font-size:26px}
.learning-sidebar p{color:#c2d0d3;
font-size:15px}
.learning-sidebar .meta-line{padding:13px 0;
border-top:1px solid #45606b;
display:flex;
justify-content:space-between;
gap:20px;
font-size:13px}
.learning-sidebar .meta-line span:first-child{color:#bfd0d5}
.learning-sidebar .btn{margin-top:25px;
width:100%;
font-size:14px;
gap:12px}
.learning-sidebar small{display:block;
font-size:13px;
margin-top:16px;
line-height:1.8;
color:#bfd0d5}
.project{background:var(--mint);
border-radius:5px;
padding:32px;
margin-top:40px}
.project .label{font-size:11px;
display:block;
margin-bottom:16px}
.project h3{font-size:26px;
margin-top:0}
.project p{font-size:16px}
.tags{display:flex;
gap:7px;
flex-wrap:wrap;
margin-top:22px}
.tag{border:1px solid #c2ccc4;
font-size:12px;
padding:4px 10px;
border-radius:3px;
color:var(--muted)}
.path-nav{display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
margin-top:55px;
padding-top:25px;
border-top:1px solid var(--line)}
.comparison{display:grid;
grid-template-columns:1fr 1fr;
gap:20px}
.comparison-card{padding:35px;
border-radius:5px;
border:1px solid var(--line);
background:white}
.comparison-card .label{color:var(--blue);
display:block;
margin-bottom:28px}
.comparison-card h3{font-size:30px}
.comparison-card p{font-size:16px;
color:var(--muted)}
.comparison-card .mini-label{font-size:13px;
font-weight:700;
display:block;
margin-top:20px;
margin-bottom:8px}
.comparison-card.blue{background:var(--navy);
color:white;
border-color:var(--navy)}
.comparison-card.blue .label{color:var(--lime)}
.comparison-card.blue p{color:#bdcdd1}
.resource-grid{display:grid;
grid-template-columns:repeat(2,1fr);
gap:18px}
.resource-box{padding:30px;
background:white;
border:1px solid var(--line);
border-radius:5px;
display:flex;
flex-direction:column}
.resource-box .label{font-size:11px;
color:var(--muted);
margin-bottom:20px}
.resource-box .icon{color:var(--blue);
margin-bottom:24px}
.resource-box h3{font-size:24px}
.resource-box p{font-size:16px;
color:var(--muted);
margin-bottom:25px}
.resource-box .text-link{margin-top:auto}
.principles{display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px}
.principle{padding-top:25px;
border-top:1px solid var(--line)}
.principle .number{color:var(--blue);
display:block;
margin-bottom:28px}
.principle h3{font-size:25px}
.principle p{font-size:16px;
color:var(--muted)}

/* Contact and chooser */
.contact-grid{display:grid;
grid-template-columns:.85fr 1.15fr;
gap:90px}
.contact-channels{margin-top:32px;
border-top:1px solid var(--line)}
.contact-channels a{padding:23px 0;
display:flex;
justify-content:space-between;
align-items:center;
border-bottom:1px solid var(--line)}
.contact-channels strong{display:block;
font-size:18px}
.contact-channels small{font-size:14px;
color:var(--muted)}
.contact-channels a:hover strong{color:var(--blue)}
.form-panel{background:white;
border:1px solid var(--line);
padding:36px;
border-radius:5px}
.form-panel h2{font-size:28px;
margin-bottom:12px}
.form-panel>p{color:var(--muted);
font-size:16px;
margin-bottom:30px}
.field{margin-bottom:21px}
.field label{display:block;
font-size:14px;
font-weight:700;
margin-bottom:8px}
.field input,.field select,.field textarea{width:100%;
border:1px solid #cdd6d0;
background:#f9faf7;
border-radius:3px;
padding:13px 14px;
font-size:16px;
color:var(--ink);
min-height:46px}
.field textarea{min-height:135px;
resize:vertical}
.field-row{display:grid;
grid-template-columns:1fr 1fr;
gap:16px}
.form-hint{font-size:13px;
color:var(--muted);
margin-top:17px}
.draft{margin-top:25px;
border-top:1px solid var(--line);
padding-top:25px}
.draft h3{font-size:20px}
.draft pre{white-space:pre-wrap;
word-break:break-word;
font:15px/1.8 Manrope,Arial,sans-serif;
color:var(--muted);
background:var(--paper);
padding:20px;
border-radius:4px}
.draft .actions{gap:10px}
.copy-status{min-height:24px;
font-size:14px;
margin-top:12px;
color:var(--blue)}
dialog{border:0;
border-radius:7px;
padding:0;
width:min(660px,calc(100% - 32px));
max-height:90dvh;
color:var(--ink);
background:var(--paper);
box-shadow:0 30px 100px #0004}
dialog::backdrop{background:#122c38a8;
backdrop-filter:blur(5px)}
.chooser-inner{padding:45px}
.chooser-close{position:absolute;
right:18px;
top:18px;
border:1px solid var(--line);
width:33px;
height:33px;
display:flex;
align-items:center;
justify-content:center;
background:white;
border-radius:50%}
.chooser-close .icon{width:15px;
height:15px}
.chooser-inner h2{font-size:34px;
margin-right:10px}
.chooser-inner>p{font-size:16px;
color:var(--muted)}
.chooser-grid{display:grid;
grid-template-columns:1fr 1fr;
gap:10px;
margin-top:27px}
.choice{display:flex;
gap:12px;
align-items:center;
padding:17px;
background:white;
border:1px solid var(--line);
border-radius:4px;
text-align:left;
font-size:15px;
color:var(--ink)}
.choice:hover{border-color:var(--blue);
background:#edf1ff}
.choice .icon{color:var(--blue);
width:21px;
height:21px}
.chooser-result{background:white;
padding:25px;
border:1px solid var(--line);
border-radius:5px;
margin-top:24px}
.chooser-result h3{font-size:28px}
.chooser-result p{font-size:16px;
color:var(--muted)}
.chooser-back{margin-top:21px;
border:0;
background:transparent;
color:var(--blue);
font-weight:600;
font-size:14px;
padding:0}
.chooser-result .btn{margin-top:5px}
.chooser-progress{display:flex;
gap:7px;
margin-bottom:25px}
.chooser-progress span{height:3px;
flex:1;
background:var(--line)}
.chooser-progress span.current{background:var(--blue)}

/* Footer */
.footer{background:#ebeee7;
padding:56px 0 25px}
.footer-grid{display:grid;
grid-template-columns:1.4fr .8fr .8fr 1fr;
gap:50px}
.footer-brand p{max-width:270px;
font-size:14px;
color:var(--muted);
margin-top:20px;
line-height:1.9}
.footer .brand-symbol{width:30px;
height:32px}
.footer .brand-text{font-size:19px}
.footer .brand-text small{font-size:9px}
.footer-col h3{font-size:11px;
letter-spacing:.12em;
text-transform:uppercase;
margin:7px 0 19px}
.footer-col a{display:block;
font-size:14px;
color:var(--muted);
padding:4px 0}
.footer-col a:hover{color:var(--blue)}
.footer-bottom{margin-top:45px;
padding-top:20px;
border-top:1px solid #d2dcd1;
display:flex;
justify-content:space-between;
gap:25px;
color:#60736f;
font-size:12px;
line-height:1.9}
.footer-bottom p{max-width:530px;
margin:0}
.footer-bottom span{white-space:nowrap}
.error-page{padding:100px 0 130px;
text-align:center}
.error-page .error-code{font-size:150px;
color:var(--blue);
font-weight:800;
line-height:1.2;
letter-spacing:-.1em}
.error-page h1{font-size:40px}
.error-page p{color:var(--muted)}
.error-page .actions{justify-content:center}

@media(min-width:1500px){.hero{padding-block:65px}
.hero-grid{gap:84px}
.hero-copy h1{font-size:80px}
}
@media(max-width:1200px){.wrap{width:calc(100% - 72px)}
.desktop-nav{gap:18px;
font-size:14px}
.nav-right{gap:14px}
.nav-right>.btn{padding-inline:15px;
gap:12px;
font-size:14px}
.hero-grid{gap:38px}
.hero-copy h1{font-size:61px}
.art-bottom{padding:15px}
.art-bottom .art-steps{gap:5px}
.art-steps b{width:20px;
height:20px}
.hero-meta{gap:14px}
.tech-names{gap:22px}
.learning-layout{gap:55px}
.page-hero-grid{gap:50px}
.footer-grid{gap:30px}
.course-card{padding-inline:23px}
.course-card h3{font-size:21px}
.contact-grid{gap:55px}
.split{gap:60px}
}

@media(max-width:1000px){.desktop-nav{display:none}
.menu-toggle{display:flex}
.locale{display:none}
.nav-right>.btn{display:none}
.nav-row{height:80px}
.mobile-nav.open{display:block;
padding:10px 0 25px}
.mobile-nav a,.mobile-nav button{display:block;
width:100%;
text-align:left;
padding:11px 0;
border:0;
border-bottom:1px solid var(--line);
font-size:16px;
background:transparent;
color:var(--ink)}
.mobile-nav button{color:var(--blue);
font-weight:700}
.hero-grid{gap:30px}
.hero-copy h1{font-size:52px}
.hero-copy .intro{font-size:16px}
.hero-copy .actions{gap:10px}
.hero-copy .btn{min-height:46px;
padding:12px 15px;
font-size:14px;
gap:13px}
.hero-meta{flex-wrap:wrap;
gap:8px 15px;
font-size:12px;
margin-top:24px}
.art-top{left:18px;
right:18px;
top:18px}
.art-top span{font-size:10px}
.art-badge{width:50px;
height:50px;
font-size:10px}
.art-bottom{left:15px;
right:15px;
bottom:15px;
padding:13px}
.art-bottom strong{font-size:12px}
.art-bottom small{font-size:11px}
.art-bottom .art-steps{display:none}
.tech-band .wrap{justify-content:center;
gap:14px}
.tech-band .label{width:100%;
text-align:center}
.tech-names{font-size:14px;
gap:24px}
.section{padding:72px 0}
.course-grid{gap:13px}
.course-card{padding:22px;
min-height:330px}
.course-card h3{font-size:20px}
.course-card p{font-size:16px}
.audience-card{padding:30px}
.audience-card h3{font-size:30px}
.resources-preview{gap:50px}
.page-hero-grid{grid-template-columns:1.2fr .8fr;
gap:35px}
.page-hero h1{font-size:50px}
.page-hero .intro{font-size:16px}
.page-art>.icon{width:100px;
height:100px}
.split{gap:45px;
grid-template-columns:.8fr 1.2fr}
.learning-layout{grid-template-columns:1fr 285px;
gap:35px}
.learning-sidebar{padding:25px}
.info-grid{gap:16px}
.info-item{padding:24px}
.footer-grid{grid-template-columns:1.2fr 1fr 1fr;
gap:35px}
.footer-col:last-child{grid-column:2/4;
display:flex;
gap:20px;
align-items:center}
.footer-col:last-child h3{margin:0}
.footer-col:last-child a{padding:0}
.contact-grid{grid-template-columns:.8fr 1.2fr;
gap:35px}
.form-panel{padding:28px}
.field-row{grid-template-columns:1fr;
gap:0}
.cta h2{font-size:34px}
}

@media(max-width:760px){.wrap{width:calc(100% - 40px)}
body{font-size:16px}
.nav-row{height:76px}
.brand-symbol{width:31px;
height:33px}
.brand-text{font-size:20px}
.brand-text small{font-size:9px}
.hero{padding:34px 0 32px}
.hero-grid{grid-template-columns:1fr;
gap:29px}
.hero-copy{padding:0}
.hero-copy h1{font-size:clamp(45px,8.5vw,65px);
line-height:1.1;
letter-spacing:-.055em;
margin-bottom:20px}
.hero-copy .eyebrow{font-size:11px;
margin-bottom:20px;
letter-spacing:.13em}
.hero-copy .intro{font-size:16px;
max-width:520px;
margin-bottom:24px;
line-height:1.85}
.hero-copy .btn{font-size:14px;
padding:14px 17px;
min-height:48px;
gap:17px}
.hero-meta{margin-top:23px;
gap:10px 20px}
.hero-art{aspect-ratio:1.24;
max-height:460px;
width:100%}
.hero-art>svg{height:120%;
top:-10%}
.art-top{left:23px;
right:23px;
top:22px}
.art-top span{font-size:10px}
.art-badge{width:54px;
height:54px;
font-size:10px}
.art-bottom{left:21px;
right:21px;
bottom:20px;
padding:15px 18px}
.art-bottom strong{font-size:12px}
.art-bottom small{font-size:11px}
.art-bottom .art-steps{display:flex}
.tech-band .wrap{padding-block:22px;
gap:14px}
.tech-names{justify-content:center;
gap:12px 24px;
flex-wrap:wrap;
font-size:14px}
.tech-names .tiny{font-size:12px}
.section{padding:58px 0}
.section-top{align-items:flex-start;
gap:22px;
flex-direction:column;
margin-bottom:29px}
.section-top h2{font-size:34px}
.section-top p{font-size:16px;
max-width:470px}
.section-top .text-link{margin:0;
font-size:14px}
.eyebrow{font-size:11px;
margin-bottom:18px}
h2{font-size:34px}
h3{font-size:23px}
.course-grid{grid-template-columns:1fr 1fr;
gap:12px}
.course-card{min-height:315px;
padding:22px}
.course-card .card-top{margin-bottom:25px}
.course-card h3{font-size:21px}
.course-card p{font-size:16px;
line-height:1.8}
.card-bottom{font-size:14px;
padding-top:13px}
.course-card .label{font-size:11px}
.method .steps{gap:23px;
margin-top:38px}
.method h3{font-size:20px}
.method .step p{font-size:16px}
.step-num{margin-bottom:23px}
.audience-grid{gap:13px}
.audience-card{padding:28px;
min-height:315px}
.audience-card h3{font-size:28px}
.audience-card p{font-size:16px}
.audience-symbol{width:120px;
height:120px}
.resources-preview{grid-template-columns:1fr;
gap:30px}
.resources-preview h2{font-size:34px}
.resources-preview .intro{font-size:16px}
.resource-row{padding-block:20px}
.cta{padding:45px 0}
.cta-inner{align-items:flex-start;
flex-direction:column;
gap:26px}
.cta h2{font-size:34px}
.cta p{font-size:16px}
.page-hero{padding:38px 0 44px}
.page-hero-grid{grid-template-columns:1fr;
gap:30px}
.page-hero h1{font-size:clamp(40px,7.5vw,57px);
max-width:600px}
.page-hero .intro{max-width:580px}
.page-art{aspect-ratio:2.05;
max-height:260px}
.page-art>.icon{width:90px;
height:90px}
.page-art .art-caption{font-size:10px;
bottom:18px;
left:20px;
right:20px}
.page-art .orb{width:180px;
height:180px}
.page-art .orb:nth-child(2){width:250px;
height:250px}
.page-hero .actions{gap:10px}
.page-hero .actions .btn{font-size:14px;
padding:13px 17px}
.breadcrumb{padding-top:22px;
font-size:12px;
gap:7px}
.split{grid-template-columns:1fr;
gap:30px}
.side-title h2{max-width:520px}
.side-title p{max-width:520px}
.info-grid{grid-template-columns:1fr;
gap:12px}
.info-item{padding:27px}
.info-item>.icon{margin-bottom:17px}
.info-item p{max-width:550px;
font-size:16px}
.principles{grid-template-columns:1fr;
gap:28px}
.principle p{font-size:16px;
max-width:540px}
.principle .number{margin-bottom:20px}
.comparison{gap:15px}
.comparison-card{padding:25px}
.comparison-card h3{font-size:27px}
.comparison-card p{font-size:16px}
.quote-panel{padding:30px}
.quote-panel h2{font-size:32px}
.quote-panel p{font-size:16px}
.learning-layout{grid-template-columns:1fr;
gap:30px}
.learning-sidebar{position:static}
.learning-sidebar .btn{width:auto}
.learning-sidebar>.icon{margin-bottom:20px}
.learning-sidebar .meta-line{font-size:13px}
.learning-sidebar small{font-size:13px;
max-width:470px}
.resource-grid{gap:13px}
.resource-box{padding:25px}
.resource-box h3{font-size:22px}
.resource-box p{font-size:16px}
.prose h2{font-size:31px}
.prose p{font-size:16px}
.prose h3{font-size:22px}
.numbered-item{gap:12px;
grid-template-columns:30px 1fr}
.numbered-item h3{font-size:21px}
.numbered-item p{font-size:16px}
.faq summary{font-size:16px;
padding-block:21px}
.faq details p{font-size:16px;
padding-right:18px}
.catalog-tools{gap:18px;
align-items:stretch}
.filters{gap:4px}
.filter{font-size:14px;
padding:9px 12px}
.search{width:100%}
.search input{width:100%;
font-size:16px}
.catalog-meta{font-size:12px}
.contact-grid{grid-template-columns:1fr;
gap:30px}
.contact-channels{margin-top:25px}
.form-panel{padding:27px}
.field-row{grid-template-columns:1fr 1fr;
gap:15px}
.contact-grid h2{font-size:31px}
.footer{padding-top:40px}
.footer-grid{grid-template-columns:1fr 1fr;
gap:30px 20px}
.footer-brand{grid-column:1/3}
.footer-brand p{max-width:350px;
margin-top:15px}
.footer-col:last-child{grid-column:1/3;
gap:19px;
flex-wrap:wrap}
.footer-bottom{margin-top:30px;
flex-direction:column;
gap:12px}
.footer-bottom p{max-width:100%}
.footer-bottom span{white-space:normal}
.chooser-inner{padding:35px 26px}
.chooser-inner h2{font-size:29px}
.chooser-grid{gap:9px}
.choice{font-size:15px;
padding:15px 12px}
.chooser-result{padding:22px}
.chooser-result h3{font-size:25px}
.path-nav{gap:15px}
.path-nav .text-link{font-size:14px}
.source-note{font-size:12px;
line-height:1.9}
.notice{font-size:14px}
.error-page .error-code{font-size:120px}
.error-page h1{font-size:32px}
}

@media(max-width:480px){.course-grid{grid-template-columns:1fr}
.course-card{min-height:280px;
padding:25px}
.course-card .card-top{margin-bottom:23px}
.course-card h3{font-size:25px}
.course-card p{font-size:16px;
max-width:330px}
.course-card .label{font-size:11px}
.card-bottom{font-size:14px}
.method .steps{grid-template-columns:1fr;
gap:27px}
.method .step{padding-top:19px}
.method .step p{max-width:100%;
font-size:16px}
.method h3{font-size:25px}
.step-num{margin-bottom:18px}
.audience-grid{grid-template-columns:1fr}
.audience-card{min-height:300px;
padding:30px}
.audience-card h3{font-size:33px;
max-width:270px}
.audience-card p{font-size:16px;
max-width:280px}
.audience-symbol{width:150px;
height:150px}
.comparison{grid-template-columns:1fr}
.comparison-card{padding:30px}
.resource-grid{grid-template-columns:1fr}
.resource-box{padding:28px}
.resource-box p{font-size:16px}
.field-row{grid-template-columns:1fr;
gap:0}
.art-bottom .art-steps{gap:5px;
font-size:11px}
.art-steps b{width:19px;
height:19px;
font-size:10px}
.hero-art{aspect-ratio:1.06}
.cta h2{font-size:31px}
.chooser-grid{grid-template-columns:1fr}
.chooser-inner h2{font-size:29px}
.choice{padding:14px;
font-size:15px}
.path-nav{flex-direction:column;
align-items:flex-start;
gap:15px}
.page-hero h1{font-size:42px}
.page-hero .intro{font-size:16px}
.project{padding:25px}
.project h3{font-size:24px}
.hero-copy .actions .btn{gap:12px;
padding-inline:14px}
.footer-col:last-child{gap:15px}
.footer-bottom{font-size:12px}
}

.sr-only{position:absolute;
width:1px;
height:1px;
padding:0;
margin:-1px;
overflow:hidden;
clip:rect(0,0,0,0);
white-space:nowrap;
border:0}
.comparison-card.blue .text-link:hover{color:var(--lime)}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;
transition:none!important}
}


/* Keep narrow layouts within the viewport, including long Polish words. */
h1,h2,h3{overflow-wrap:anywhere;
hyphens:auto}
.page-hero-grid>*,.split>*,.contact-grid>*,.learning-layout>*,.field-row>*,.resource-grid>*,.course-grid>*{min-width:0}
.field input,.field select,.field textarea{min-width:0;
max-width:100%}
.catalog-meta{flex-wrap:wrap}
.art-caption{gap:12px}


@media(max-width:360px){.page-hero h1{font-size:36px}
}


/* Final readability and spacing pass. */
body{line-height:1.75}

.btn{min-height:52px;
line-height:1.5}

.btn.small{min-height:46px}

.hero-copy .intro,.page-hero .intro,.intro{line-height:1.8}

.section-top p,.course-card p,.method .step p,.audience-card p,.prose p,.prose li,.info-item p,.numbered-item p,.principle p,.resource-box p,.faq details p{line-height:1.8}

.course-card{min-height:372px;
padding:30px}

.course-card .card-top{margin-bottom:24px}

.course-card h3{line-height:1.25}

.course-card .label{line-height:1.6}

.card-bottom{padding-top:18px}

.prose{max-width:72ch}

.numbered-item{padding-block:30px}

.numbered-item p{max-width:66ch}

.numbered-item h3{line-height:1.3}

.tech-band .wrap{gap:20px}

.tech-names{gap:24px;
flex-wrap:wrap}

.hero-meta{gap:12px 22px;
flex-wrap:wrap}

.hero-meta svg{width:15px;
height:15px}

.art-top{gap:18px}

.art-bottom>div:first-child{min-width:0}

.art-bottom small{line-height:1.65}

.art-bottom .art-steps{gap:7px}

.page-art .art-caption{gap:20px;
line-height:1.6;
letter-spacing:.08em}

.catalog-tools{gap:18px}

.filters{gap:6px}

.filter{min-height:46px;
padding:11px 15px}

.search input{width:255px;
min-height:48px}

.search .icon{top:16px}

.catalog-meta{line-height:1.7;
gap:8px 24px}

.field{min-width:0}

.field label{line-height:1.5;
margin-bottom:9px}

.field input,.field select,.field textarea{min-height:52px;
line-height:1.6}

.field textarea{min-height:150px}

.form-panel>p{line-height:1.8}

.form-hint,.source-note,.learning-sidebar small{line-height:1.8}

.contact-channels a{gap:20px}

.contact-channels a>div{min-width:0}

.contact-channels strong{line-height:1.6;
overflow-wrap:anywhere}

.contact-channels small{line-height:1.75}

.faq summary{line-height:1.65;
min-height:66px}

.faq summary::after{top:19px}

.resource-row strong{font-size:17px;
line-height:1.5}

.resource-row small{font-size:14px;
line-height:1.75}

.choice{min-height:64px;
line-height:1.65}

.chooser-close{width:42px;
height:42px}

.chooser-back{min-height:44px;
line-height:1.6}

.footer{padding-top:64px}

.footer-grid{grid-template-columns:1.1fr .9fr 1fr 1.15fr;
gap:35px}

.footer-brand p{max-width:280px;
line-height:1.85}

.footer-col h3{line-height:1.6;
color:#3b515a;
margin-bottom:18px}

.footer-col a{padding-block:7px;
line-height:1.7;
overflow-wrap:anywhere}

.footer-col a:hover{text-decoration:underline;
text-underline-offset:4px}

.footer-email{font-weight:700;
color:var(--ink)!important}

.footer-bottom{display:grid;
grid-template-columns:1fr 1.4fr;
align-items:start;
gap:32px;
margin-top:40px;
padding-top:24px;
color:var(--muted);
line-height:1.85}

.footer-bottom p{max-width:580px}

.footer-bottom span{white-space:normal}

@media(max-width:1200px){.desktop-nav{gap:24px}
.nav-row{gap:24px}
.nav-right{gap:16px}
.course-card{padding:26px}
.footer-grid{gap:28px;
grid-template-columns:1fr 1fr 1fr}
.footer-col:last-child{grid-column:1/-1;
display:flex;
gap:12px 28px;
align-items:center;
flex-wrap:wrap}
.footer-col:last-child h3{margin:0}
.footer-col:last-child a{padding-block:4px}
.footer-email{font-size:15px!important}
}

@media(max-width:1120px){.desktop-nav{display:none}
.menu-toggle{display:flex;
width:48px;
height:48px}
.nav-right>.btn,.locale{display:none}
.nav-row{height:84px}
.mobile-nav.open{display:block;
padding:12px 0 28px}
.mobile-nav a,.mobile-nav button{display:block;
width:100%;
text-align:left;
min-height:48px;
padding:12px 0;
border:0;
border-bottom:1px solid var(--line);
font-size:16px;
line-height:1.6;
background:transparent;
color:var(--ink)}
.mobile-nav button{color:var(--blue);
font-weight:700}
.mobile-nav{max-height:calc(100dvh - 84px);
overflow-y:auto}
.course-grid{gap:16px}
.footer-grid{grid-template-columns:1.2fr 1fr 1fr}
}

@media(max-width:1000px){.hero-grid{grid-template-columns:1.1fr .9fr;
gap:28px}
.hero-copy h1{font-size:clamp(44px,5.8vw,58px)}
.hero-copy .actions{align-items:stretch;
gap:12px}
.hero-copy .btn{font-size:14px;
min-height:50px}
.art-top span{font-size:9px}
.art-badge{font-size:9px!important}
.art-bottom .art-steps{display:none}
.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.course-card{min-height:370px}
.course-card h3{font-size:25px}
.method .steps{gap:28px}
.method h3{font-size:25px}
.audience-card{padding:32px}
.audience-card h3{font-size:31px}
.learning-layout{grid-template-columns:minmax(0,1fr) 290px;
gap:35px}
.learning-sidebar{padding:26px}
.footer-col:last-child{grid-column:1/-1}
.contact-grid{grid-template-columns:1fr 1.2fr;
gap:36px}
}

@media(max-width:760px){.wrap{width:calc(100% - 40px)}
.nav-row{height:80px}
.mobile-nav{max-height:calc(100dvh - 80px)}
.hero-grid{grid-template-columns:1fr;
gap:32px}
.hero-copy h1{font-size:clamp(45px,8.5vw,65px)}
.hero-copy .intro{max-width:560px}
.hero-copy .actions .btn{min-height:52px;
padding:14px 18px;
gap:16px}
.hero-meta{gap:10px 18px;
line-height:1.8}
.hero-art{aspect-ratio:1.17;
max-height:480px}
.art-bottom{padding:16px 18px}
.art-bottom .art-steps{display:none}
.section{padding:64px 0}
.section-top{gap:24px;
margin-bottom:32px}
.section-top p{max-width:560px}
.tech-band .wrap{gap:14px}
.tech-names{gap:14px 22px}
.course-grid{gap:16px}
.course-card{min-height:390px;
padding:26px}
.course-card h3{font-size:24px}
.course-card .label{font-size:11px}
.audience-grid{grid-template-columns:1fr;
gap:18px}
.audience-card{min-height:340px;
padding:32px}
.audience-card h3{font-size:34px;
max-width:400px}
.audience-card p{max-width:420px}
.audience-symbol{width:155px;
height:155px}
.method .steps{grid-template-columns:1fr;
gap:28px}
.method .step p{max-width:580px}
.step-num{margin-bottom:20px}
.cta h2{line-height:1.2}
.page-hero .intro{max-width:580px}
.page-art{aspect-ratio:1.9}
.page-art .art-caption{font-size:10px;
gap:20px}
.split{gap:32px}
.learning-layout{grid-template-columns:1fr;
gap:32px}
.learning-sidebar{padding:30px}
.learning-sidebar .btn{width:auto}
.contact-grid{grid-template-columns:1fr;
gap:34px}
.form-panel{padding:28px}
.field-row{grid-template-columns:1fr;
gap:0}
.footer{padding-top:48px}
.footer-grid{grid-template-columns:1fr 1fr;
gap:32px 24px}
.footer-brand{grid-column:1/-1}
.footer-brand p{max-width:420px}
.footer-col:last-child{grid-column:1/-1;
display:block}
.footer-col:last-child h3{margin:0 0 12px}
.footer-col:last-child a{padding:6px 0}
.footer-bottom{grid-template-columns:1fr;
gap:14px;
margin-top:32px}
.footer-bottom p{max-width:100%}
.chooser-inner{padding:40px 28px 30px}
.chooser-inner h2{font-size:30px;
line-height:1.2}
.chooser-grid{grid-template-columns:1fr;
gap:10px}
.choice{padding:15px 17px;
min-height:58px}
.chooser-close{right:12px;
top:12px}
.chooser-inner .eyebrow{padding-right:28px}
.source-note{overflow-wrap:anywhere}
.catalog-tools{margin-bottom:26px}
.search{width:100%}
.search input{width:100%}
.filters{gap:5px}
.filter{padding:10px 12px}
.page-hero .actions .btn{min-height:52px}
.btn.small{min-height:48px}
.catalog-meta{flex-direction:column;
gap:7px}
}

@media(max-width:540px){.course-grid,.resource-grid,.comparison{grid-template-columns:1fr}
.course-card{min-height:350px;
padding:28px}
.course-card h3{font-size:27px}
.course-card p{max-width:unset}
.course-card .card-top{margin-bottom:24px}
.comparison-card{padding:28px}
.resource-box{padding:28px}
.audience-card{padding:30px;
min-height:360px}
.footer-grid{gap:30px 20px}
.footer-col a{font-size:14px}
.contact-channels strong{font-size:17px}
.form-panel{padding:25px}
.draft .actions .btn{width:100%}
.hero-copy .actions{align-items:stretch}
.hero-copy .actions .btn{flex:1 1 auto;
padding-inline:16px;
gap:14px}
.page-art .art-caption{font-size:9px}
.art-top span{font-size:9px}
.art-badge{font-size:9px!important}
.hero-art{aspect-ratio:1.06}
.hero-art>svg{height:108%;
top:-5%}
.art-bottom{bottom:17px;
left:17px;
right:17px}
.art-bottom strong{font-size:12px}
.art-bottom small{font-size:11px}
.project{padding:28px}
.path-nav{gap:18px}
.faq details p{padding-right:0}
.notice{padding:22px}
.copy-status{overflow-wrap:anywhere}
}

@media(max-width:360px){.hero-copy .actions{flex-direction:column}
.hero-copy .actions .btn{width:100%}
.page-hero h1{font-size:36px}
.hero-copy h1{font-size:43px}
.footer-grid{grid-template-columns:1fr}
.footer-brand,.footer-col:last-child{grid-column:auto}
.form-panel{padding:22px}
.audience-card{padding:26px}
.course-card{padding:25px}
.page-art .art-caption span:last-child{display:none}
}


.inline-arrow{display:inline-block;width:13px;height:13px;vertical-align:-1px;margin-left:4px;flex-shrink:0}.text-link .inline-arrow{width:16px;height:16px;margin:0;vertical-align:middle}.text-link>.arrow{display:inline-flex;align-items:center}.footer-col a .inline-arrow{opacity:.8}

.card-top .number{color:#536b75}.field input,.field select,.field textarea,.search input{border-color:#81958e}input::placeholder,textarea::placeholder{color:#5f746d;opacity:1}.draft pre{font-size:15px;line-height:1.8}
