/* Shared motion, course views and learner components. No framework dependencies. */
:root{--teal:#e6a8b5;--champagne:#f092a0;--navy:#0d0d0f}
.hero{background:radial-gradient(ellipse at 10% 30%,#322e2f55,transparent 60%),var(--paper)}
.hero-photo{filter:saturate(.8) brightness(.92)}
.academy-seal>svg:first-child{animation:seal-orbit 38s linear infinite;transform-origin:center}
.academy-seal:hover>svg:first-child{animation-play-state:paused}
@keyframes seal-orbit{to{transform:rotate(360deg)}}
.button{position:relative;isolation:isolate;overflow:hidden;transition:background .35s,border-color .35s,box-shadow .35s,transform .35s cubic-bezier(.2,.8,.2,1)}
.button:before{content:"";position:absolute;pointer-events:none;inset:-40% auto -40% -60%;width:45%;background:linear-gradient(90deg,transparent,#ffffff8a,transparent);transform:skewX(-24deg);transition:left .65s cubic-bezier(.2,.7,.3,1)}
.button:hover:before,.button:focus-visible:before{left:135%}
.button:hover{box-shadow:0 8px 28px #f092a024;transform:translateY(-3px)}
.button .icon{transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.button:hover .icon{transform:translateX(4px)}
.text-link .icon,.image-arrow,.image-arrow .icon{transition:transform .35s,color .35s,background .35s}
.text-link:hover .icon{transform:translate(3px,-2px)}
.course-card:hover .image-arrow{background:var(--champagne);color:var(--navy)}
.course-card:hover .image-arrow .icon{transform:translate(2px,-2px)}
.course-card:hover{border-color:#a19296;box-shadow:0 15px 35px #0003}
.header-account{white-space:nowrap;gap:12px}
.header-account .icon{height:18px;width:18px}
.social-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:24px}
.social-links a{display:inline-flex;justify-content:center;align-items:center;width:42px;height:42px;background:#2b2728;border:1px solid #534c4e;border-radius:50%;color:#e1dcdd;transition:background .25s,color .25s,transform .3s,border-color .25s}
.social-links a:hover{background:var(--champagne);border-color:var(--champagne);color:var(--navy);transform:translateY(-4px)}
.social-links .icon{width:19px;height:19px;stroke-width:1.4}
.social-links a:has(span){width:auto;border-radius:4px;padding-inline:13px;gap:9px;font-size:12px}
.contact-social{padding-top:7px}.footer-address{line-height:1.8}
.whatsapp-float{position:fixed;right:25px;bottom:25px;z-index:40;display:grid;place-items:center;width:53px;height:53px;border-radius:50%;border:1px solid #f5b1bd;background:#e88c9b;color:#201116;box-shadow:0 6px 26px #0004;transition:transform .3s,background .3s}
.whatsapp-float>.icon{width:27px;height:27px;stroke-width:1.4}.whatsapp-float:hover{transform:translateY(-5px);background:#f4a7b3}
.testimonials-section{background:linear-gradient(150deg,#292526,#1d1a1b);border-block:1px solid #453f40}
.sample-disclosure{font-size:14px!important;max-width:390px!important;line-height:1.85!important}
.preview-pill,.demo-badge{display:inline-flex;align-items:center;justify-content:center;background:#353031;border:1px solid #655d5f;color:#d6d0d1;font-size:10px;font-weight:500;line-height:1.6;letter-spacing:1.1px;padding:7px 11px;border-radius:3px}
.preview-pill{display:block;width:max-content;margin-bottom:12px}
.testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin-top:42px}
.testimonial-card{display:flex;flex-direction:column;min-width:0;padding:28px;background:#2c2829;border:1px solid #4d4648;border-radius:4px}
.testimonial-card:first-child,.testimonial-card:last-child{grid-column:span 2;background:linear-gradient(130deg,#343031,#2f2b2c)}
.testimonial-top{display:flex;justify-content:space-between;align-items:center;gap:15px;color:#f0a9b6}
.testimonial-top>.icon{width:27px;height:27px;stroke-width:1.1}.testimonial-top>span{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#c0b5b8}
.testimonial-card h3{font-size:29px;line-height:1.15;margin-top:20px;letter-spacing:-.3px}
.testimonial-card blockquote{font-family:var(--serif);font-size:24px;font-weight:400;line-height:1.45;color:#e0dcdd;margin:16px 0 27px}
.testimonial-card:first-child blockquote,.testimonial-card:last-child blockquote{font-size:30px;max-width:650px}
.testimonial-person{margin-top:auto;display:flex;align-items:center;gap:12px;border-top:1px solid #59515388;padding-top:21px}
.testimonial-avatar{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;border:1px solid #907d82;color:#e2dedf;font-family:var(--serif);font-size:23px}
.testimonial-person>div{flex:1}.testimonial-person strong{display:block;font-size:13px;font-weight:500;line-height:1.6}.testimonial-person small{display:block;font-size:11px;color:#c1b6b9;margin-top:3px}.testimonial-person>.icon{width:22px;height:22px;color:#f0a9b6;stroke-width:.8}
.detail-hero{background:radial-gradient(ellipse at 78% 15%,#3e383a99,transparent 60%),var(--paper);padding-block:38px 85px;border-bottom:1px solid var(--line)}
.detail-hero-copy{max-width:calc(100% - 405px)}.detail-hero h1{font-size:clamp(47px,4.6vw,67px);letter-spacing:-1.8px;line-height:1.06;margin-top:22px;text-wrap:balance}.detail-hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.85;margin-top:24px;max-width:650px}
.detail-meta{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:26px;font-size:13px;color:#d3ccce}
.teacher-meta{display:flex;align-items:center;gap:11px}.teacher-meta img{width:38px;height:38px;border-radius:50%;object-position:center 15%;filter:saturate(.6)}
.detail-meta .course-rating{margin-top:0}.detail-body{padding-block:0 85px}
.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:55px;align-items:start}
.detail-main{padding-top:30px;min-width:0}.course-tablist{display:flex;gap:27px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:33px}
.course-tablist [role=tab]{position:relative;background:transparent;color:#c7bec0;font-size:14px;padding:15px 0;white-space:nowrap;border-bottom:2px solid transparent}
.course-tablist [role=tab][aria-selected=true]{color:var(--champagne);border-bottom-color:var(--champagne)}
.course-tabpanel h2{font-size:43px;letter-spacing:-1.1px;line-height:1.1;margin-bottom:24px}.course-tabpanel>p{font-size:16px;line-height:1.9;margin-top:19px}
.course-tabpanel h3{font-size:31px;line-height:1.15;margin-top:32px;margin-bottom:20px}
.outcomes{padding:0;margin:0;list-style:none}.outcomes li{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.85;margin-block:12px;color:#d7d1d2}.outcomes .icon{height:19px;width:19px;color:var(--teal);margin-top:4px}
.course-guidance{display:flex;gap:16px;border:1px solid #544d4f;background:#272425;padding:23px;margin-top:31px}.course-guidance>.icon{width:26px;height:26px;color:var(--teal)}.course-guidance p{font-size:14px;line-height:1.9}.course-guidance strong{display:block;font-weight:500;color:#e7e3e4;margin-bottom:5px}
.course-sidebar{margin-top:-205px;background:var(--surface);border:1px solid #665d5f;border-radius:5px;overflow:hidden;position:sticky;top:122px;box-shadow:0 15px 35px #0003}
.sidebar-cover{height:219px;background:#322e2f;overflow:hidden}.sidebar-cover>img{height:100%;filter:saturate(.75) brightness(.9)}.detail-book{height:100%;overflow:hidden}.detail-book .book-art{height:110%;width:49%;margin-top:27%}
.sidebar-info{padding:27px}.course-price{font-family:var(--serif);font-size:37px;line-height:1.1;color:var(--ink);margin-top:13px}.sidebar-description{font-size:14px;margin-top:12px}
.course-facts{margin-block:24px}.course-facts>div{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;border-top:1px solid #4c4547;padding-block:15px}.course-facts>div:last-child{border-bottom:1px solid #4c4547}
.course-facts dt{display:flex;gap:8px;align-items:center;font-size:12px;color:#c2b9bb;max-width:47%}.course-facts dt .icon{height:16px;width:16px}.course-facts dd{text-align:right;font-size:12px;color:#e7e3e4;margin:0;max-width:49%;line-height:1.65}
.enrol-button{width:100%;font-size:14px;padding-inline:16px;gap:17px}.sidebar-whatsapp{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:#cec5c7;margin-top:19px}.sidebar-whatsapp .icon{height:18px;width:18px}
.sidebar-note{font-size:11px;line-height:1.9;text-align:center;margin-top:15px;color:#c0b6b8}.sidebar-social{border-top:1px solid #4c4547;margin-top:24px;padding-top:18px}.sidebar-social>span{font-size:11px;color:#c2b9bb}.sidebar-social .social-links{margin-top:12px;justify-content:space-between}.sidebar-social .social-links a{width:37px;height:37px}
.curriculum-group{background:#262223;border:1px solid #4d4748;margin-block:14px;padding:0;border-radius:3px;overflow:hidden}.curriculum-group summary{font-size:15px;gap:15px;padding:20px}.curriculum-group summary>span{display:flex;gap:14px;align-items:center;line-height:1.65}.curriculum-group summary small{font-family:var(--serif);font-size:23px;color:var(--champagne)}.curriculum-group>ul{list-style:none;padding:0 22px 20px;margin:0}.curriculum-group li{display:flex;gap:12px;font-size:14px;color:#cdc5c7;line-height:1.8;padding-block:10px;border-top:1px solid #4d4748}.curriculum-group li>.icon{width:16px;height:16px;margin-top:4px;color:#a09094}.curriculum-group>p{padding:0 20px 23px;font-size:15px;line-height:1.9}
.educator-profile{display:grid;grid-template-columns:145px 1fr;gap:25px;align-items:start}.educator-profile>img{height:190px;object-position:50% 20%;border-radius:70px 70px 0 0}.educator-profile h3{margin-top:15px;font-size:34px}.educator-profile p:not(.eyebrow){font-size:15px;line-height:1.9}.educator-profile .text-link{margin-top:15px;font-size:13px}
.reviews-empty{padding:25px 0}.reviews-empty>.icon{width:40px;height:40px;color:var(--champagne)}.reviews-empty h2{margin-top:24px}.reviews-empty p{font-size:16px;line-height:1.9;max-width:530px}
.related-courses{background:#1f1c1d;border-top:1px solid var(--line)}.related-courses .section-heading h2{font-size:47px}.related-courses .section-heading>.text-link{flex-shrink:0}
.account-intro{padding-block:35px 46px;background:radial-gradient(ellipse at 95% 20%,#39343588,transparent 60%),var(--paper);border-bottom:1px solid var(--line)}.account-heading{display:flex;align-items:center;justify-content:space-between;gap:35px}.account-heading h1{font-size:74px;line-height:1.08;letter-spacing:-1.8px;margin-top:18px}.account-intro-note{font-size:15px;line-height:1.9;max-width:730px;margin-top:22px}
.account-section{padding-block:48px 85px}.account-grid{display:grid;grid-template-columns:228px minmax(0,1fr);gap:44px;align-items:start}
.account-nav{position:sticky;top:123px;border:1px solid #4d4748;background:#252122;border-radius:4px;padding:25px 19px}
.learner-identity{display:flex;align-items:center;gap:12px;border-bottom:1px solid #4d4748;padding-bottom:23px;margin-bottom:17px}.learner-identity>span{display:grid;place-items:center;flex-shrink:0;background:#3f3a3b;border:1px solid #806e72;width:45px;height:45px;border-radius:50%;font-family:var(--serif);font-size:30px;color:#e4e0e1}.learner-identity strong{display:block;font-weight:500;font-size:16px;line-height:1.6}.learner-identity small{display:block;font-size:12px;color:#bbb1b3;margin-top:2px}
.account-nav nav{display:flex;flex-direction:column;gap:7px}.account-nav nav a{display:flex;align-items:center;gap:11px;font-size:14px;padding:12px 10px;border:1px solid transparent;border-radius:3px;color:#d6cfd1}.account-nav nav a>.icon{width:19px;height:19px;color:#c0b6b8}.account-nav nav a[aria-current=page]{background:#3a3536;border-color:#665d5f;color:#ece9ea}.account-nav nav a[aria-current=page]>.icon{color:var(--teal)}.account-nav nav a:hover{border-color:#7f6d71}.account-browse{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--champagne);padding:22px 8px 0;margin-top:14px;border-top:1px solid #4d4748}.account-browse .icon{width:15px;height:15px}
.account-content{min-width:0}.account-content-heading h2{font-size:43px;line-height:1.1;letter-spacing:-1px}.account-content-heading p{font-size:15px;margin-top:16px;margin-bottom:30px}
.account-section-label{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:23px}.account-section-label h3{font-size:32px;line-height:1.1}.account-section-label>.text-link{font-size:12px}
.downloads-list{border:1px solid #4e4749;background:#262223;border-radius:4px;overflow:hidden}.download-row{display:flex;align-items:center;gap:17px;padding:24px 22px;border-bottom:1px solid #4e4749}.download-row:last-child{border-bottom:0}.download-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:48px;background:#3c3638;border:1px solid #665d5f;color:#dad4d5}.download-icon .icon{width:23px;height:23px}.download-row>div{flex:1;min-width:0}.download-row strong{display:block;font-size:15px;font-weight:500;line-height:1.7}.download-row p{font-size:12px;line-height:1.9;margin-top:5px}.download-row small{display:block;font-size:11px;color:#bbb1b3;margin-top:5px}.download-link{display:inline-flex;gap:9px;align-items:center;font-size:12px;color:var(--champagne);white-space:nowrap}.download-link>.icon{height:20px;width:20px}.download-link:hover{color:#d8d1d3}
.reveal-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.3,1),border-color .25s,box-shadow .25s}.reveal-ready .reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-ready .course-card.is-visible:hover{transform:translateY(-5px)}
@media(max-width:1100px){
 .detail-grid{grid-template-columns:minmax(0,1fr) 315px;gap:35px}.detail-hero-copy{max-width:calc(100% - 355px)}.sidebar-info{padding:23px}.course-tablist{gap:20px}.course-tablist [role=tab]{font-size:12px}.course-sidebar{margin-top:-180px}.course-facts dt,.course-facts dd{font-size:11px}.sidebar-whatsapp{font-size:11px}.sidebar-description{font-size:13px}
 .account-grid{grid-template-columns:205px minmax(0,1fr);gap:30px}.account-nav{padding-inline:15px}.owned-course{grid-template-columns:160px minmax(0,1fr);gap:22px}.owned-copy{padding-right:23px}.owned-copy h3{font-size:29px}.continue-banner{flex-direction:column;align-items:flex-start;gap:22px}.learning-stats{gap:13px}.learning-stats>div{padding:22px 16px}.learning-stats>div>span{right:13px;top:20px}.learning-stats .icon{width:20px;height:20px}.learning-stats strong{font-size:51px}.learning-stats p{font-size:11px}
}
@media(max-width:900px){
 .site-header{height:84px}.header-inner{position:relative;justify-content:space-between}.wordmark{order:0}.header-account{order:2;margin-left:auto;display:flex;width:43px;height:43px;padding:0;min-height:43px;gap:0;background:transparent;border-color:#806e72;color:var(--champagne)}.header-account>span{display:none}.header-account:hover{background:#3e393a;color:#ded9da}.header-account .icon{width:19px;height:19px}
 .menu-toggle{order:3;display:flex;width:42px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:7px;z-index:32}.menu-toggle>span{width:24px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .main-nav{position:absolute;left:-24px;right:-24px;top:84px;background:#262223;padding:19px 25px 26px;box-shadow:0 15px 20px #0003;border-top:1px solid var(--line);flex-direction:column;align-items:stretch;gap:2px;display:none}.main-nav.open{display:flex}.main-nav a{font-size:16px;padding:12px 0}
 .testimonial-grid{gap:20px;grid-template-columns:1fr 1fr}.testimonial-card:first-child,.testimonial-card:last-child{grid-column:span 2}.testimonial-card:nth-child(6){grid-column:span 2}.testimonial-card{padding:25px}.testimonial-card h3{font-size:28px}.testimonial-card blockquote{font-size:23px}.testimonial-card:first-child blockquote,.testimonial-card:last-child blockquote{font-size:28px}
 .detail-hero-copy{max-width:100%}.detail-hero{padding-bottom:48px}.detail-hero h1{max-width:740px}.detail-grid{grid-template-columns:1fr;gap:40px}.course-sidebar{position:static;grid-row:1;margin-top:34px;display:grid;grid-template-columns:.8fr 1fr}.sidebar-cover{height:100%;min-height:350px}.sidebar-cover>img{height:100%;min-height:350px;object-position:55% center}.sidebar-info{padding:28px}.course-sidebar .detail-book{min-height:100%}.detail-main{padding-top:0}.course-facts dt,.course-facts dd{font-size:12px}.course-tablist{gap:30px}.course-tablist [role=tab]{font-size:14px}.detail-hero h1{font-size:60px}
 .account-grid{grid-template-columns:1fr;gap:32px}.account-nav{position:static;padding:20px}.learner-identity{padding-bottom:17px;margin-bottom:15px}.account-nav nav{flex-direction:row;flex-wrap:wrap;gap:8px}.account-nav nav a{font-size:13px;padding:11px 13px}.account-nav nav a>.icon{width:17px;height:17px}.account-browse{margin-top:17px;padding-top:17px}.owned-course{grid-template-columns:210px minmax(0,1fr)}.continue-banner{flex-direction:row;align-items:center}.learning-stats p{font-size:13px}.learning-stats strong{font-size:56px}.account-intro .breadcrumbs{margin-bottom:33px}.account-content-heading h2{font-size:41px}
}
@media(max-width:650px){
 .testimonial-grid{grid-template-columns:1fr;gap:20px}.testimonial-card:first-child,.testimonial-card:last-child,.testimonial-card:nth-child(6){grid-column:auto}.testimonial-card{padding:26px}.testimonial-card:first-child blockquote,.testimonial-card:last-child blockquote{font-size:27px}.sample-disclosure{font-size:13px!important;margin-top:26px!important}.testimonials-section .section-heading h2{font-size:46px}.testimonials-section .sample-disclosure{max-width:440px!important}
 .detail-hero{padding-top:28px}.detail-hero h1{font-size:49px;letter-spacing:-1.3px}.detail-hero-copy>p:not(.eyebrow){font-size:16px}.detail-meta{gap:18px}.course-sidebar{display:block;max-width:480px;width:100%;justify-self:center}.sidebar-cover{height:230px;min-height:0}.sidebar-cover>img{min-height:0;height:100%}.sidebar-cover>.detail-book{height:100%}.sidebar-info{padding:28px}.course-tablist{gap:20px;margin-bottom:30px}.course-tablist [role=tab]{font-size:13px}.course-tabpanel h2{font-size:39px}.course-tabpanel>p{font-size:16px}.outcomes li{font-size:15px}.course-guidance{padding:20px;gap:12px}.course-guidance p{font-size:13px}.curriculum-group summary{font-size:14px;padding:18px}.curriculum-group li{font-size:13px}.educator-profile{grid-template-columns:1fr}.educator-profile>img{width:130px;height:168px}.educator-profile h3{font-size:33px}.related-courses .section-heading h2{font-size:43px}.related-courses .section-heading>.text-link{margin-top:22px}
 .account-heading{align-items:flex-start;flex-direction:column;gap:22px}.account-heading h1{font-size:61px}.account-intro-note{font-size:14px}.account-content-heading h2{font-size:37px}.account-grid{gap:28px}.account-nav nav{gap:7px}.account-nav nav a{padding:10px;font-size:12px}.learning-stats{gap:11px;grid-template-columns:1fr 1fr}.learning-stats>div:last-child{grid-column:1 / -1;display:flex;align-items:center;gap:20px;padding-block:19px}.learning-stats>div:last-child>span{position:static;order:2;margin-left:auto}.learning-stats>div:last-child p{max-width:none;margin-top:0}.learning-stats strong{font-size:49px}.learning-stats p{font-size:12px}
 .whatsapp-float{right:18px;bottom:18px;width:48px;height:48px}.whatsapp-float>.icon{width:25px;height:25px}.site-footer{padding-bottom:35px}.header-inner{gap:13px}.main-nav{left:-20px;right:-20px}
}
@media(max-width:370px){.wordmark>span{font-size:27px}.wordmark small{font-size:8px}.header-inner{gap:9px}.header-account{width:38px;min-height:38px;height:38px}.menu-toggle{width:36px}.course-tablist{gap:16px}.course-tablist [role=tab]{font-size:12px}.sidebar-info{padding:24px}.detail-hero h1{font-size:44px}.account-nav nav a{font-size:11px}.testimonial-card{padding:23px}}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready .reveal{opacity:1;transform:none}
}
