/* ATP Concursos: vitrine de cursos e preparações, identidade azul/prata. */
.catalog-hero{background:radial-gradient(ellipse at 81% 23%,rgba(13,114,207,.38),transparent 46%),linear-gradient(130deg,#031D3B 0%,#073D76 70%,#052448 100%);color:#fff;overflow:hidden;position:relative}
.catalog-hero:before{content:"";position:absolute;inset:0;opacity:.15;background-image:linear-gradient(rgba(172,220,251,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(172,220,251,.35) 1px,transparent 1px);background-size:46px 46px;mask-image:linear-gradient(#000,transparent)}
.catalog-hero-grid{display:grid;grid-template-columns:1.1fr .65fr;gap:24px;align-items:center;min-height:410px;padding-top:57px;padding-bottom:60px;position:relative}
.catalog-eyebrow{display:block;text-transform:uppercase;letter-spacing:2px;font-weight:830;font-size:11px;color:#90D0FA}
.catalog-hero h1{font-size:clamp(38px,4.4vw,61px);line-height:1.09;letter-spacing:-2px;margin:19px 0;color:#fff}
.catalog-hero h1 em{font-style:normal;color:#94D3FC}
.catalog-hero p{color:#C7DEEF;max-width:590px;font-size:16px;margin:0 0 24px;line-height:1.65}
.catalog-actions{display:flex;gap:10px;flex-wrap:wrap}
.catalog-actions a{border-radius:12px;padding:13px 19px;font-weight:750;font-size:13px;display:inline-flex;align-items:center;gap:9px;text-decoration:none}
.catalog-actions a:first-child{background:#0873C9;color:#fff;box-shadow:0 12px 25px rgba(0,10,30,.2)}
.catalog-actions a:last-child{color:#EAF6FC;border:1px solid rgba(189,223,247,.4)}
.catalog-hero-art{display:grid;place-items:center;position:relative;min-height:300px;perspective:900px}
.catalog-hero-art:before,.catalog-hero-art:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(134,205,251,.25);width:285px;height:285px;transform:rotateX(66deg)}
.catalog-hero-art:after{width:350px;height:350px;transform:rotateY(71deg);border-color:rgba(134,205,251,.16)}
.catalog-hero-art img{position:relative;z-index:1;width:min(245px,68%);height:auto;filter:drop-shadow(0 30px 20px rgba(0,4,18,.55));animation:atp-catalog-float 7s ease-in-out infinite}
@keyframes atp-catalog-float{0%,100%{transform:translateY(4px) rotateY(-7deg)}50%{transform:translateY(-12px) rotateY(7deg)}}
.catalog-features{display:flex;gap:20px;flex-wrap:wrap;margin-top:32px;color:#E0EFF9;font-size:12px}
.catalog-features span{display:inline-flex;align-items:center;gap:7px}.catalog-features span:before{content:"✓";display:inline-grid;place-items:center;border-radius:100%;background:rgba(126,202,250,.25);width:18px;height:18px;font-size:11px}
.catalog-main{padding:45px 0 72px}
.catalog-intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:19px}
.catalog-intro h2{font-size:clamp(28px,3.1vw,38px);color:#052D61;letter-spacing:-1px;margin:8px 0}
.catalog-intro p{font-size:14px;color:#678096;margin:0}
.catalog-search{position:relative;display:flex;gap:10px;align-items:center;margin-top:12px}
.catalog-search input{width:100%;padding:14px 16px 14px 43px;background:#fff;border:1px solid #D7E3EF;border-radius:12px;color:#153C60;font:inherit}
.catalog-search input:focus{outline:3px solid #D6EBFC;border-color:#0C78BF}
.catalog-search:before{content:"⌕";color:#2375AB;position:absolute;left:16px;top:6px;font-size:27px}
.catalog-filters{display:flex;gap:9px;flex-wrap:wrap;padding:20px 0 21px}
.catalog-filter{border:1px solid #D5E4EF;background:#fff;color:#4C6C87;border-radius:100px;padding:9px 14px;font-size:12px;font-weight:780;cursor:pointer;transition:background .2s}
.catalog-filter[aria-pressed="true"],.catalog-filter:hover{color:#fff;border-color:#096EBB;background:#096EBB}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px;color:#71859A;font-size:12px}
.catalog-sort{border:1px solid #D2E2EE;background:#fff;color:#345D7B;border-radius:10px;padding:8px 11px;font:inherit;font-size:12px}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.catalog-card{min-width:0;border:1px solid #D9E4EE;border-radius:20px;overflow:hidden;background:white;box-shadow:0 8px 22px rgba(5,38,70,.04);display:flex;flex-direction:column;transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s}
.catalog-card:hover{transform:translateY(-4px);box-shadow:0 21px 41px rgba(6,40,80,.10)}
.catalog-card-visual{height:158px;background:radial-gradient(circle at 78% 23%,rgba(83,168,232,.55),transparent 44%),linear-gradient(135deg,#062C58,#0B61A6);display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden;padding:22px;color:white}
.catalog-card-visual:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;border:22px solid rgba(220,241,253,.12);right:-50px;top:-54px}
.catalog-card[data-category="tribunais"] .catalog-card-visual{background:linear-gradient(135deg,#16335A,#547792)}
.catalog-card[data-category="legislacao"] .catalog-card-visual{background:linear-gradient(135deg,#102C53,#356FA0)}
.catalog-card[data-category="simulados"] .catalog-card-visual{background:linear-gradient(135deg,#064070,#087BB5)}
.catalog-card[data-category="mentoria"] .catalog-card-visual{background:linear-gradient(135deg,#052448,#3978B4)}
.catalog-card-visual img{width:67px;height:67px;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(0,0,0,.2));z-index:1}
.catalog-visual-title{position:relative;z-index:1;text-transform:uppercase;font-size:10px;letter-spacing:2.5px;font-weight:800;color:#DBEDFA;max-width:125px;text-align:right}
.catalog-card-body{display:flex;flex-direction:column;flex:1;padding:21px}
.catalog-kicker{font-size:11px;color:#1174B8;font-weight:800;letter-spacing:.5px;text-transform:uppercase}
.catalog-card h3{font-size:19px;color:#052F58;letter-spacing:-.45px;line-height:1.28;margin:11px 0;min-height:48px}
.catalog-desc{font-size:13px;color:#5D778F;line-height:1.56;margin:0 0 14px;flex:1;max-height:86px;overflow:hidden}
.catalog-access{font-size:11px;color:#617F97;background:#F0F6FB;border-radius:9px;padding:9px 10px;margin-bottom:17px}
.catalog-card-bottom{border-top:1px solid #EDF1F5;padding-top:15px;margin-top:auto;display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap}
.catalog-price{display:flex;flex-direction:column;gap:1px}
.catalog-price small{font-size:10px;color:#8295A7}
.catalog-price strong{font-size:23px;color:#082F59;letter-spacing:-.75px;line-height:1.2}
.catalog-price strong.free{color:#127045}
.catalog-card-cta{display:inline-flex;align-items:center;gap:6px;background:#0869B4;border-radius:10px;padding:11px 14px;color:#fff;font-size:12px;font-weight:790;white-space:nowrap}
.catalog-card-cta:hover{background:#064F8A}
.catalog-empty{padding:55px 20px;text-align:center;background:#fff;border:1px dashed #B8CDE0;border-radius:18px;color:#6B8196;grid-column:1/-1}
.catalog-empty strong{display:block;font-size:19px;color:#103960;margin-bottom:6px}
.catalog-more{display:block;margin:24px auto 0;border:1px solid #B5D0E3;background:#fff;border-radius:11px;padding:13px 23px;color:#085D9F;font-weight:800;font-size:13px}
.catalog-side-note{font-size:12px;color:#748CA0;margin:20px 0 0}
.catalog-journey{padding:50px 0;background:#E9F3FA;border-top:1px solid #D9E7F2;border-bottom:1px solid #D9E7F2}
.catalog-journey h2{color:#052D61;font-size:clamp(26px,3vw,36px);letter-spacing:-1px;margin:0 0 18px}
.catalog-journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.catalog-journey-item{background:#fff;border:1px solid #DDE8F1;border-radius:16px;padding:22px}
.catalog-journey-item b{font-size:12px;color:#0A7DC6;letter-spacing:2px}
.catalog-journey-item strong{display:block;color:#092F59;font-size:17px;margin:12px 0 6px}
.catalog-journey-item p{font-size:13px;color:#688096;line-height:1.55;margin:0}
.catalog-cta-band{margin-top:30px;border-radius:19px;padding:27px 31px;background:linear-gradient(120deg,#052D61,#0868AA);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:15px}
.catalog-cta-band h3{font-size:23px;margin:0 0 5px}.catalog-cta-band p{font-size:13px;color:#CBE0F1;margin:0}
.catalog-cta-band a{color:#062E55;background:#fff;border-radius:11px;padding:12px 17px;font-size:13px;font-weight:790}
.catalog-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.catalog-mini .catalog-card-visual{height:94px}.catalog-mini .catalog-card-visual img{width:46px;height:46px}.catalog-mini .catalog-card-body{padding:16px}.catalog-mini .catalog-card h3{font-size:16px;min-height:0}.catalog-mini .catalog-desc{display:none}.catalog-mini .catalog-access{display:none}.catalog-mini .catalog-card-cta{padding:9px 11px;font-size:11px}.catalog-mini .catalog-price strong{font-size:19px}
@media(max-width:1000px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-hero-grid{grid-template-columns:1fr .5fr}.catalog-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.catalog-hero-grid{grid-template-columns:1fr;min-height:0;padding-top:46px;padding-bottom:38px}.catalog-hero h1{font-size:42px}.catalog-hero-art{display:none}.catalog-hero p{font-size:15px}.catalog-main{padding:35px 0 60px}.catalog-intro{display:block}.catalog-grid,.catalog-journey-grid,.catalog-mini-grid{grid-template-columns:1fr}.catalog-card-visual{height:135px}.catalog-card h3{min-height:0}.catalog-toolbar{align-items:start;flex-direction:column}.catalog-filters{gap:6px;padding:17px 0}.catalog-filter{padding:8px 11px;font-size:11px}.catalog-cta-band{flex-direction:column;align-items:start;padding:24px}.catalog-journey{padding:36px 0}.catalog-journey h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.catalog-card,.catalog-hero-art img{animation:none!important;transition:none!important}}
