@font-face{font-family:Cairo;src:url(assets/Cairo-900.ttf);font-weight:900;font-display:swap}
@font-face{font-family:Inter;src:url(assets/Inter-400.ttf);font-display:swap}
@font-face{font-family:Inter;src:url(assets/Inter-700.ttf);font-weight:700;font-display:swap}
:root{--ink:#0b0b0e;--paper:#f5f3ef;--red:#d9000b;--muted:#bbb9c2}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Inter,sans-serif}
a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}p{margin:0 0 1rem}h1,h2,h3{margin:0;font-family:Cairo,sans-serif;font-weight:900;line-height:1.01;letter-spacing:-.035em}
:focus-visible{outline:3px solid #477bff;outline-offset:4px}.skip{position:absolute;left:12px;top:-100px;z-index:5;background:white;color:black;padding:12px}.skip:focus{top:12px}
.wrap{width:min(1220px,calc(100% - 72px));margin-inline:auto}
.top,.hero,.steps,footer{color:white;background:#09090b}
.top{border-bottom:1px solid #2b2b30}
.mobile-menu { display: none; }
.nav,.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:77px}
.nav nav{display:flex;gap:30px;color:#ddd;font-size:.88rem}.nav nav a:hover,footer a:hover{text-decoration:underline}
.brand{font-family:Cairo,sans-serif;font-weight:900;font-size:1.8rem;letter-spacing:-.065em;white-space:nowrap;line-height:1}.brand span{color:#ff2832}.brand small{display:inline-block;margin-left:12px;border-left:1px solid #56535b;padding-left:12px;font:700 .65rem Inter,sans-serif;letter-spacing:.16em;vertical-align:middle}
.nav-cta{font-weight:700;font-size:.83rem;padding:10px 15px;border:1px solid #53535b;border-radius:6px}
.hero{overflow:hidden;background:radial-gradient(ellipse at 78% 70%,#30080d 0%,#09090b 58%)}
.hero-inner{position:relative;isolation:isolate;display:grid;align-items:center;min-height:570px;grid-template-columns:1.12fr 1fr}.hero-copy{z-index:1;padding:62px 0}
.eyebrow{font-size:.69rem;font-weight:700;letter-spacing:.18em;margin-bottom:18px;display:flex;align-items:center;gap:9px}.eyebrow i{width:8px;height:8px;background:#ff2430;display:inline-block;transform:rotate(45deg)}
h1{font-size:clamp(3.7rem,8vw,7.55rem);line-height:.93}h1 em{color:#ff2630;font-style:normal}.lead{max-width:425px;margin:27px 0;color:#dedbe0}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:51px;padding:10px 18px;border:1px solid transparent;border-radius:6px;font-weight:700;font-size:.88rem}.red{color:white;background:var(--red)}.red:hover{background:#b60009}
figure{margin:0;position:absolute;z-index:-1;inset:0 -40px 0 40%;overflow:hidden}
figure img{height:100%;width:100%;object-fit:cover;object-position:57% 40%;mask-image:linear-gradient(90deg,transparent 0%,#000 29%,#000 94%,transparent 100%)}
figure::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#09090b 0%,transparent 30%),linear-gradient(90deg,#09090b,transparent 46%);pointer-events:none}
figcaption{position:absolute;z-index:1;bottom:36px;right:56px;display:grid;font-size:.8rem;text-align:right}figcaption span{color:var(--muted);font-size:.72rem}
.format-band{background:var(--red);color:white}.formats{display:grid;grid-template-columns:repeat(3,1fr);font-size:.83rem;font-weight:700}.formats span{padding:15px 12px;border-right:1px solid #ffffff45}.formats span:first-child{padding-left:0}.formats span:last-child{border:none}.formats b{margin-right:10px;font-family:Cairo;font-size:1rem;color:#fff}
.catalog,.proofs{padding-block:82px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-head p:last-child{max-width:295px;color:#514d56}.section-head .eyebrow{color:var(--ink)}h2{font-size:clamp(2.6rem,5.6vw,5.05rem)}
.controls,.filters{display:flex;gap:8px;flex-wrap:wrap}.controls{justify-content:space-between}.filters button,.search{border:1px solid #ccc8c6;border-radius:6px;background:transparent;padding:9px 12px;font-size:.82rem;color:var(--ink);min-height:42px}.filters [aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}
.search{display:flex;gap:8px;align-items:center}.search input{border:0;background:transparent;width:150px;color:inherit}.search span{font-size:1.3rem;line-height:1}#count{font-size:.75rem;color:#56505b;margin:15px 0 12px}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #ded9d5;border-radius:9px;background:white}
.card-body{padding:17px;display:flex;flex:1;flex-direction:column;align-items:start}.card h3{font-size:1.55rem;line-height:1.08;margin:8px 0 10px}.card-body p{font-size:.85rem;color:#504a55;flex:1}.tag{font-size:.67rem;font-weight:700;background:#f3e8e8;color:#7b1220;padding:3px 7px;border-radius:4px}.price{font-size:.8rem;font-weight:700;margin-bottom:12px}
.steps{padding:73px 0 82px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:25px}.step-grid article{background:#17171b;border:1px solid #343138;border-radius:8px;padding:21px}.step-grid .accent{background:#320a10;border-color:#a42231}.step-grid b{color:#ff6870;font:900 1.6rem Cairo}.step-grid h3{font-size:1.65rem;margin:3px 0 10px}.step-grid p{color:#e1dce2;font-size:.88rem;margin:0}
.proofs{display:grid;grid-template-columns:.75fr 1fr;gap:35px}.proofs p:last-child{color:#504a55;margin-top:14px}.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.proof-grid button{padding:12px;border:1px solid #ded9d5;border-radius:8px;background:white;display:grid;gap:9px;align-content:start;text-align:left;color:var(--ink);font-size:.8rem;font-weight:700}.proof-grid img{width:100%;height:170px;object-fit:cover;object-position:top;border-radius:4px}
footer{padding:13px 0}.footer-links{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.8rem;color:var(--muted)}.footer-links a{padding-block:8px}
dialog{border:1px solid #d8d2ce;border-radius:12px;padding:28px;color:var(--ink);width:min(550px,calc(100% - 28px));max-height:calc(100% - 28px);background:var(--paper)}dialog::backdrop{background:#09090bd9}dialog h2{font-size:clamp(1.9rem,6vw,3.2rem);margin:9px 0 12px;padding-right:22px}.close{position:absolute;right:10px;top:10px;border:1px solid #ccc;background:white;color:var(--ink);border-radius:6px;width:38px;height:38px;font-size:1.5rem;line-height:1}.bump{margin:18px 0;padding:16px;border:1px solid #dcb9bc;border-left:5px solid var(--red);border-radius:6px;background:#fff}.bump strong{display:block;font-size:1.1rem}.bump p{margin:7px 0 0;font-size:.87rem}.availability{font-size:.85rem;color:#534950;margin:14px 0 0}.dialog-link{margin-top:12px;text-decoration:underline;font-size:.82rem;display:inline-block}#proof{width:min(730px,calc(100% - 28px));padding-top:54px}#proof img{margin:auto;max-height:75vh;object-fit:contain}
@media(max-width:1000px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-inner{min-height:500px}}
@media(max-width:650px){.wrap{width:calc(100% - 32px)}.nav{min-height:63px}.nav nav{display:none}.nav-cta{font-size:.69rem;padding:8px}.hero-inner{display:flex;flex-direction:column;align-items:stretch;min-height:0}.hero-copy{padding:38px 0 8px}.hero-copy h1{font-size:clamp(3rem,12vw,5rem)}.lead{margin:18px 0;font-size:.92rem}figure{position:relative;inset:auto;margin:0 -16px;height:230px}figure img{mask-image:linear-gradient(0deg,#000 85%,transparent);object-position:56% 39%}figure::after{background:linear-gradient(0deg,#09090b,transparent 42%)}figcaption{bottom:14px;right:16px}.formats span{font-size:.67rem;line-height:1.2;padding:11px 7px}.formats b{display:block}.catalog,.proofs{padding-block:49px}.section-head{display:block;margin-bottom:18px}.section-head p:last-child{margin-top:13px}.search{width:100%}.search input{width:100%;min-width:0}.grid,.step-grid{grid-template-columns:1fr}.steps{padding:48px 0}.proofs{grid-template-columns:1fr;gap:13px}.proof-grid img{height:125px}.footer-inner{flex-wrap:wrap;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero-photo img{object-position:49% 35%}
.live{background:#ede9e4;border-block:1px solid #d9d3cd;padding:72px 0}
.live-inner,.about-inner{display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:clamp(28px,6vw,90px)}
.live-lead{max-width:470px;margin:17px 0 20px;color:#403940}
.edition{margin:12px 0 0;font-size:.8rem;color:#534951}
.agenda{background:white;border:1px solid #d9d3cd;border-radius:9px;padding:25px}
.agenda .eyebrow{margin-bottom:7px}.agenda ol{margin:0 0 13px;padding-left:24px}
.agenda li{padding:8px 0;border-bottom:1px solid #ebe6e3;font-weight:700}
.agenda li::marker{color:#a40013}.agenda p:last-child{font-size:.78rem;color:#504a55;margin:0}.agenda a{text-decoration:underline}
.about{padding:64px 0;background:#e8e2dc}.about-inner p:not(.eyebrow){max-width:440px;color:#403940}
@media(max-width:800px){.nav nav{gap:14px;font-size:.78rem}.nav-cta{display:none}}
@media(max-width:650px){.nav{display:flex;flex-wrap:wrap;gap:13px;padding:13px 0}.nav nav{display:flex;flex-wrap:wrap;gap:7px 15px;width:100%}.nav nav a{display:inline-flex;align-items:center;min-height:30px}.hero-photo img{object-position:49% 37%}.live,.about{padding:45px 0}.live-inner,.about-inner{grid-template-columns:1fr;gap:23px}}
.brand{display:inline-flex;align-items:center}.brand img{width:110px;height:67px;object-fit:contain;mix-blend-mode:screen}
.proofs{display:block}.proofs .section-head>p{margin:0}
.proof-controls{display:flex;justify-content:flex-end;gap:8px;margin:0 0 12px}
.proof-controls button{min-height:42px;min-width:42px;border:1px solid #ccc8c6;background:white;color:var(--ink);border-radius:6px;padding:5px 12px;font-size:.8rem;font-weight:700}
.proof-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.proof-grid button{grid-template-rows:auto 1fr auto}.proof-grid img{object-fit:contain;background:#f2ede6;height:clamp(105px,15vw,190px)}
.proof-grid .proof-quote{font-size:.93rem;line-height:1.4}
.proof-status{min-height:1.2em;margin:6px 0 0;font-size:.76rem}
#proof img{max-height:65vh}#proof-transcript{font-size:.86rem;margin:10px 0 0}
.live{background:#0b090a;color:white;border:0}
.live-inner{position:relative;isolation:isolate;overflow:hidden;padding:clamp(24px,5vw,70px);border:1px solid #632020;border-radius:14px;background:radial-gradient(ellipse at 97% 36%,#6a0c13,transparent 60%),#110b0d}
.live-inner::before,.about-portrait::before{content:'';position:absolute;pointer-events:none;border:2px solid #ff4b28;border-radius:50%;box-shadow:0 0 22px #ff301b,inset 0 0 18px #ff301b}
.live-inner::before{z-index:-1;width:64%;aspect-ratio:1;right:-23%;top:-41%}
.live h2{text-transform:uppercase;font-size:clamp(2.5rem,5.8vw,5.2rem);line-height:.92}
.live h2 em{font-style:normal;color:#ff4337}
.live-lead,.edition{color:#ead7d9}
.agenda{background:#150c10eb;border-color:#824048}
.agenda li{border-color:#663039}.agenda li::marker{color:#ff695c}.agenda p:last-child{color:#d9bec1}
.about{padding:0;background:#0d090b;color:white}
.about-inner{overflow:hidden;gap:clamp(20px,4vw,56px);grid-template-columns:1.05fr .95fr}
.about-inner>p:not(.eyebrow){max-width:540px;margin:0;padding:36px 0;color:#e2d9dc;font-size:clamp(1rem,1.45vw,1.15rem);line-height:1.7}
.about-inner strong{display:block;margin-bottom:12px;color:white;font:900 clamp(1.5rem,2.7vw,2.6rem)/1.12 Cairo,sans-serif}
.about-portrait{position:relative;isolation:isolate;align-self:stretch;display:grid;align-items:end;min-height:300px;background:radial-gradient(ellipse closest-side at center,#660d16,transparent);mask-image:linear-gradient(transparent,black 12%,black 79%,transparent)}
.about-portrait::before{z-index:-1;width:min(79%,380px);aspect-ratio:1;left:50%;top:50%;transform:translate(-50%,-50%)}
.about-photo{width:min(100%,420px);height:auto;margin-inline:auto;object-fit:cover;mask-image:radial-gradient(ellipse 59% 65% at 50% 53%,black 43%,transparent 87%)}
@media(max-width:650px){
  .live-inner,.about-inner{grid-template-columns:1fr}
  .live-inner::before{width:85%;right:-44%;top:-12%}
  .about-inner{gap:0}
  .about-inner>p:not(.eyebrow){padding:38px 0 6px}
  .about-portrait{min-height:0}
  .about-photo{width:min(100%,330px)}
}
@media(max-width:650px){.brand img{width:93px;height:56px}.proof-controls{justify-content:flex-start;margin-top:15px}.proof-grid{grid-template-columns:1fr}.proof-grid button{grid-template-columns:minmax(0,112px) 1fr;grid-template-rows:auto auto;align-items:center}.proof-grid img{height:78px;grid-row:span 2}}
.about-photo{filter:grayscale(1)}
.card{position:relative}
.course-visual{--topic-color:#ffc36f;position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;aspect-ratio:16/10;align-items:center;overflow:hidden;color:var(--topic-color);background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--topic-color) 20%,#131116),transparent 76%),#131116}
.course-visual--digital{--topic-color:#78dfef}
.course-visual--sales{--topic-color:#d7b7ff}
.course-visual--academy{--topic-color:#ff706f}
.course-visual svg{width:100%;height:100%;min-height:0;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round}
.course-visual span{padding:8px 12px;border-top:1px solid #ffffff26;font-size:.72rem;font-weight:700;letter-spacing:.025em}
.course-visual:has(.course-photo){aspect-ratio:auto;grid-template-rows:auto auto}
.course-photo{width:100%;height:auto;aspect-ratio:16/9}
.card-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;margin:0 0 10px}
.card-price span,.card-availability{font-size:.71rem;color:#62575e}
.card-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}
.card-link,.card-buy{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:42px;padding:6px 9px;border-radius:5px;font-size:.81rem;font-weight:700}
.card-link{border:1px solid #d9cdd1}
.card-link::after{content:'';position:absolute;inset:0;z-index:1;border-radius:inherit}
.card-link:focus-visible::after{outline:3px solid #477bff;outline-offset:-3px}
.card-buy{position:relative;z-index:2;color:white;background:var(--red);border:1px solid transparent}
.card-buy:disabled{color:#655a61;background:#eee8eb;cursor:default}
.card-availability{margin-top:7px}
.card:hover .card-link,.course-lessons a:hover{color:var(--red)}
.nav .course-back{display:inline-flex}
.course-hero{background:radial-gradient(ellipse at 86% 45%,#4e0c12,transparent 49%),#0b090a;color:white}
.course-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,430px);gap:clamp(24px,5vw,70px);align-items:center;padding-block:clamp(32px,7vw,86px)}
.course-hero h1,#course-page h1{font-size:clamp(2.65rem,6vw,5.9rem);line-height:.98}
.course-intro{margin:22px 0 16px;max-width:650px;color:#e6d9db}
.course-scope{margin:0;font-size:.88rem;color:#eeb5b8}
.course-action{margin-top:22px}
.course-hero .course-visual{border:1px solid #ffffff26;border-radius:10px}
.course-hero .course-visual span{font-size:.9rem;padding:12px 16px}
.course-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,340px);gap:clamp(26px,6vw,80px);align-items:start;padding-block:clamp(38px,7vw,86px)}
.course-content h2{font-size:clamp(2.1rem,4.5vw,3.8rem)}
.course-details{display:grid;gap:30px}
.course-details h2{font-size:clamp(1.65rem,3vw,2.6rem);margin-bottom:12px}
.course-details p,.course-details ul{margin-block:0}
.course-details ul{padding-left:22px}
.course-details ul li+li{margin-top:8px}
.course-details .course-application{padding:20px;border-left:3px solid var(--red);background:#fff}
.course-details .module-name{margin-bottom:8px}
.module-name{font-weight:700;margin:16px 0 8px}
.course-lessons{padding-left:25px;margin:0}.course-lessons li{padding:10px 0;border-bottom:1px solid #ddd3d5}.course-lessons a{text-decoration:underline}
.course-offer{background:#fff;border:1px solid #dfd4d5;border-left:4px solid var(--red);padding:23px;border-radius:8px}.course-offer strong{display:block;font:900 2.3rem/1.15 Cairo,sans-serif}
@media(max-width:650px){
  .course-layout,.course-content{grid-template-columns:1fr}
  .course-hero .course-visual{max-width:460px}
  .nav .course-back{margin-left:auto}
}
.comparison {
  padding-block: clamp(48px, 8vw, 108px);
  background: #f5f0ed;
  color: #191719;
}
.comparison .section-head h2 { max-width: 710px; }
.compare-mobile { display: none; }
.compare-scroll {
  overflow-x: auto;
  border: 1px solid #e0d4d0;
  border-radius: 16px;
  background: white;
}
.compare-table { width: 100%; min-width: 620px; border-collapse: collapse; table-layout: fixed; }
.compare-table th, .compare-table td {
  padding: clamp(13px, 2vw, 25px);
  border-bottom: 1px solid #eee4e1;
  text-align: left;
  vertical-align: middle;
}
.compare-table thead th { background: #201b20; color: #fff; font: 900 clamp(1rem, 2vw, 1.45rem)/1.1 Cairo, sans-serif; }
.compare-table thead .compare-feature { background: #b90016; }
.compare-table tbody tr:nth-child(even) { background: #f9f5f3; }
.compare-table tbody td:last-child, .compare-table tfoot td:last-child { background: #fff0ee; }
.compare-table [data-format-price] { font-size: 1.15rem; font-weight: 700; }
.compare-table tfoot td { border-bottom: 0; }
.compare-table tfoot a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 8px 12px;
  border: 1px solid #dec7c9;
  border-radius: 6px;
  font-size: .84rem;
  font-weight: 700;
}
.compare-table tfoot td:last-child a { background: #b90016; color: #fff; border-color: #b90016; }
.compare-table tfoot a:hover { border-color: #b90016; text-decoration: underline; }
.formats a { display: flex; align-items: baseline; gap: 9px; padding: 14px 0; min-height: 44px; }
.formats a span { display: inline; margin-left: auto; padding: 0; border: 0; }
.formats a:hover { text-decoration: underline; }

@keyframes section-arrive {
  from { opacity: .48; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes photo-arrive {
  from { transform: scale(1.035); }
  to { transform: scale(1); }
}
@keyframes card-arrive {
  0% { opacity: .35; translate: 0 30px; }
  100% { opacity: 1; translate: 0 0; }
}
@keyframes title-unmask {
  from { clip-path: inset(100% -8% -12% -8%); translate: 0 12px; }
  to { clip-path: inset(-15% -8% -12% -8%); translate: 0 0; }
}
@keyframes hero-depth {
  from { translate: 0 0; }
  to { translate: 0 12%; }
}
.top nav a { position: relative; }
.top nav a::after {
  content: "";
  position: absolute;
  inset: auto 0 -4px;
  height: 2px;
  background: #ff3947;
  scale: 0 1;
  transform-origin: left;
}
.top nav a:hover::after, .top nav a:focus-visible::after { scale: 1 1; }
#count { margin-block: 14px; }
.escola-faq { max-width: 820px; padding-block: clamp(44px, 8vw, 96px); }
.escola-faq h2 { font-size: clamp(2rem, 5vw, 3.4rem); margin: 10px 0 24px; }
.escola-faq-list { display: grid; gap: 10px; }
.escola-faq details { border: 1px solid #ded8d5; border-radius: 10px; background: #fff; }
.escola-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 18px; cursor: pointer; font-weight: 750; }
.escola-faq summary::-webkit-details-marker { display: none; }
.escola-faq summary::after { content: ""; width: 8px; height: 8px; flex: 0 0 8px; border: solid #b90016; border-width: 0 2px 2px 0; rotate: 45deg; margin: 0 4px 4px 0; }
.escola-faq details[open] summary::after { rotate: 225deg; margin-bottom: 0; }
.escola-faq details p { margin: 0; padding: 0 18px 18px; color: #504a55; max-width: 68ch; }
.course-layout > *, .course-content > * { min-width: 0; }
#course-page h1 { overflow-wrap: anywhere; }
html.motion-on {
  & .hero-copy, & .course-layout > div:first-child, & .motion-enter { animation: section-arrive .62s ease-out both; }
  .hero-copy h1 em { display: inline-block; animation: title-unmask .7s .16s ease-out both; }
  .hero-copy .button { translate: var(--magnet-x, 0) var(--magnet-y, 0); transition: translate .18s ease-out, transform .2s ease; }
  .top nav a::after { transition: scale .26s ease; }
  .hero-photo img { animation: photo-arrive 1.1s ease-out both; }
  .card, .button, .card-buy, .compare-table tfoot a { transition: transform .2s ease, box-shadow .2s ease; }
  .card:hover, .card:focus-within { transform: translateY(-4px); box-shadow: 0 12px 26px #31121a24; }
  #grid .card.motion-enter { animation: card-arrive .7s cubic-bezier(.2,.65,.3,1) both; }
  #grid .card.motion-enter:nth-child(4n+2) { animation-delay: .08s; }
  #grid .card.motion-enter:nth-child(4n+3) { animation-delay: .16s; }
  #grid .card.motion-enter:nth-child(4n+4) { animation-delay: .24s; }
  .card .course-photo { transition: transform .4s ease, filter .4s ease; }
  .card:hover .course-photo, .card:focus-within .course-photo { transform: scale(1.045); }
  .button:hover, .card-buy:hover, .compare-table tfoot a:hover { transform: translateY(-2px); }
}
@media (hover: hover) and (pointer: fine) {
  html.motion-on .card .course-photo { filter: saturate(.5); }
  html.motion-on .card:hover .course-photo,
  html.motion-on .card:focus-within .course-photo { filter: saturate(1); }
}
@supports (animation-timeline: view()) {
  @media (min-width: 651px) {
    html.motion-on .hero-photo {
      animation: hero-depth linear both;
      animation-timeline: view();
      animation-range: exit 0% exit 100%;
    }
  }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .hero-copy, .course-layout > div:first-child, .motion-enter {
    animation: gentle-entrance .65s ease-out both;
  }
}
@media (prefers-reduced-motion: reduce) and (hover: hover) and (pointer: fine) {
  .card .course-photo { filter: saturate(.65); transition: filter .25s ease; }
  .card:hover .course-photo, .card:focus-within .course-photo { filter: saturate(1); }
  .top nav a::after { transition: opacity .2s ease; }
}
@keyframes gentle-entrance {
  from { opacity: .68; }
  to { opacity: 1; }
}
@media (max-width: 650px) {
  #course-page h1 { font-size: clamp(2rem, 8.8vw, 2.65rem); }
  .nav { gap: 6px; padding-block: 8px; }
  .nav > nav { display: none; }
  .mobile-menu { display: block; margin-left: auto; }
  .mobile-menu[open] { display: contents; }
  .mobile-menu summary { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 12px; border: 1px solid #53535b; border-radius: 6px; cursor: pointer; font-weight: 700; }
  .mobile-menu[open] summary { margin-left: auto; }
  .mobile-menu summary::-webkit-details-marker { display: none; }
  .mobile-menu summary::after { content: "☰"; color: #ff525b; }
  .mobile-menu[open] summary::after { content: "×"; }
  .mobile-menu nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 10px; }
  .nav nav a, .nav .course-back { min-height: 44px; align-items: center; }
  .nav .course-back { text-align: center; }
  .nav .brand { flex-shrink: 0; }
  .hero-photo { height: auto; aspect-ratio: 16 / 10; margin-top: 14px; }
  .hero-photo img { object-position: center top; mask-image: none; }
  .hero-photo::after { background: linear-gradient(0deg, #09090b 0%, transparent 28%); }
  .compare-scroll { display: none; }
  .compare-mobile { display: grid; gap: 12px; }
  .compare-mobile article { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: center; padding: 16px; background: #fff; border: 1px solid #e0d4d0; border-radius: 10px; }
  .compare-mobile article:last-child { background: #fff0ee; border-color: #e0b5b8; }
  .compare-mobile h3, .compare-mobile p { grid-column: 1 / -1; }
  .compare-mobile p { margin: 0; }
  .compare-mobile a { display: inline-flex; min-height: 44px; align-items: center; color: #a90014; font-weight: 700; }
  .filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
  .filters button, .card-link, .card-buy, .proof-controls button { min-height: 44px; }
  .search input { font-size: 16px; }
  .card-actions > * { flex: 1; }
  .course-offer .button, .course-action { width: 100%; gap: 8px; }
  #proof { padding: 54px 14px 18px; }
  #proof img { max-height: 60dvh; }
  dialog .close { width: 44px; height: 44px; }
  .formats a { flex-wrap: wrap; gap: 3px 6px; }
  .formats a span { margin-left: 0; }
}
