:root{--ink:#151515;--milk:#f8f5ef;--white:#fffdf8;--pink:#ff9fbb;--lilac:#d7d1ff;--blue:#b9e2ed;--lime:#c9e48e;--orange:#ff815e;--line:#999}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--milk);font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}.wrap{width:min(1240px,calc(100% - 48px));margin:auto}.eyebrow{font:500 11px "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 24px;border:1px solid var(--ink);border-radius:99px;background:var(--ink);color:#fff;font-size:13px;font-weight:700;transition:.2s}.button:hover{background:var(--pink);color:var(--ink);border-color:var(--pink);transform:translateY(-3px)}.button.light{background:transparent;color:var(--ink)}
header{position:absolute;width:100%;z-index:5;padding:19px 0}.nav,.foot{display:flex;align-items:center;justify-content:space-between}.logo{display:flex;width:205px}.logo img{width:100%;height:auto}nav{display:flex;gap:27px;align-items:center;font-size:12px;font-weight:700}.menu-toggle{display:none;border:0;background:none;font-size:24px}
.hero{min-height:790px;padding:139px 0 57px;position:relative;overflow:hidden;background:var(--white)}.hero:before{content:"";position:absolute;right:0;top:0;width:59%;height:100%;background:var(--pink);clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}.hero:after{content:"native english · speak freely · native english · speak freely ·";position:absolute;bottom:0;width:100%;padding:14px 0;overflow:hidden;white-space:nowrap;background:var(--ink);color:#fff;font:500 12px "DM Mono",monospace;letter-spacing:.08em}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;align-items:center}.hero-copy{padding:42px 0 65px}.hero h1{max-width:710px;margin:20px 0 28px;font:600 clamp(55px,7.3vw,105px)/.89 "Playfair Display",serif;letter-spacing:-.075em}.hero h1 em,.scribble{color:var(--orange)}.hero-text{max-width:405px;margin:0;font-size:15px;line-height:1.65}.hero-actions{display:flex;gap:11px;margin-top:33px;flex-wrap:wrap}.scribble{display:inline-block;margin:25px 0 0 35px;font:600 24px "Playfair Display";transform:rotate(-8deg)}.hero-art{min-height:520px;position:relative}.blob{position:absolute;right:11%;top:31px;width:396px;height:462px;background:var(--lilac);border-radius:48% 52% 53% 47%;transform:rotate(-10deg)}.portrait{position:absolute;right:15%;top:18px;width:344px;height:450px;overflow:hidden;border:10px solid var(--white);border-radius:175px 175px 13px 13px;transform:rotate(4deg);box-shadow:17px 19px var(--ink)}.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 18%}.note{position:absolute;bottom:8px;left:5px;width:178px;padding:17px;background:var(--lime);transform:rotate(-9deg);box-shadow:5px 6px var(--ink);font-size:12px}.note b{display:block;font:600 31px "Playfair Display"}.star{position:absolute;right:0;top:15px;font-size:85px;color:var(--orange)}.ticker{overflow:hidden;white-space:nowrap;padding:13px 0;border-block:1px solid var(--ink);background:var(--blue);font:500 12px "DM Mono",monospace}.ticker span{display:inline-block;animation:scroll 20s linear infinite}@keyframes scroll{to{transform:translateX(-50%)}}
section{padding:118px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}.section-head h2{margin:13px 0 0;font:600 clamp(41px,5vw,70px)/.92 "Playfair Display";letter-spacing:-.07em}.section-head p{max-width:360px;margin:0;font-size:14px;line-height:1.6}.cards,.format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{min-height:305px;padding:25px;position:relative;overflow:hidden;border:1px solid var(--ink)}.card:nth-child(1){background:var(--pink)}.card:nth-child(2){background:var(--blue)}.card:nth-child(3){background:var(--lime)}.card .number,.format a,.step span{font:500 11px "DM Mono",monospace}.card h3{margin:83px 0 12px;font:600 31px/1 "Playfair Display";letter-spacing:-.05em}.card p,.format p,.teacher p{font-size:13px;line-height:1.58}.card .doodle{position:absolute;right:19px;bottom:-9px;font:600 90px "Playfair Display";opacity:.25}.formats{background:var(--ink);color:var(--white)}.formats .section-head p{color:#ddd}.format{min-height:364px;padding:25px;border:1px solid #999;display:flex;flex-direction:column}.format:hover{background:var(--pink);color:var(--ink)}.format:nth-child(2){background:var(--lilac);color:var(--ink)}.format h3{margin:84px 0 13px;font:600 38px/.94 "Playfair Display";letter-spacing:-.06em}.format p{margin:0}.format a{margin-top:auto}.format a:after{content:" ↗"}
.teachers{background:var(--white)}.team{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.teacher{padding:12px;background:#f0ede6;transition:.2s}.teacher:hover{transform:translateY(-5px)}.teacher-photo{height:300px;overflow:hidden}.teacher-photo img{width:100%;height:100%;object-fit:cover;object-position:center 22%}.teacher:nth-child(4) img{object-position:center}.teacher-info{padding:18px 3px 6px}.teacher h3{margin:0 0 7px;font:600 29px "Playfair Display";letter-spacing:-.05em}.teacher p{margin:0;font-size:12px}.approach{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.approach h2{margin:14px 0;font:600 clamp(43px,5.4vw,70px)/.92 "Playfair Display";letter-spacing:-.075em}.phrase{color:var(--orange);font:600 27px "Playfair Display";transform:rotate(-5deg)}.steps{border-top:1px solid var(--ink)}.step{display:grid;grid-template-columns:73px 1fr;gap:20px;padding:28px 0;border-bottom:1px solid var(--ink)}.step h3{margin:0 0 8px;font-size:18px}.step p{margin:0;font-size:13px;line-height:1.6}
.platform{background:var(--lilac)}.platform-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.platform h2{margin:17px 0 20px;font:600 clamp(44px,5.3vw,69px)/.92 "Playfair Display";letter-spacing:-.075em}.platform p{font-size:14px;line-height:1.65}.edvibe-logo{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:#5647e9}.edvibe-logo span{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:#5647e9;color:#fff;font:700 22px Arial}.edvibe-logo b{font:800 27px Manrope;letter-spacing:-.1em}.platform-points{display:flex;gap:9px;flex-wrap:wrap;margin-top:23px}.platform-points span{padding:9px 12px;border:1px solid var(--ink);border-radius:99px;font:500 10px "DM Mono"}.screen{height:400px;padding:19px;background:var(--white);border:2px solid var(--ink);box-shadow:14px 14px var(--orange);transform:rotate(2.5deg)}.screen-top{display:flex;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid var(--line);font-size:11px;font-weight:700}.screen-logo{color:#5647e9;font:700 22px "Playfair Display"}.progress{margin:31px 0 15px;font:500 10px "DM Mono"}.bar{height:8px;border-radius:99px;background:#e3e0d9}.bar i{display:block;width:72%;height:100%;border-radius:99px;background:#5647e9}.lesson-card{margin-top:25px;padding:19px;background:var(--lime);border:1px solid var(--ink)}.lesson-card small{font:500 10px "DM Mono"}.lesson-card h3{margin:8px 0;font:600 25px "Playfair Display"}.lesson-card p{margin:0;font-size:12px}.lesson-list{display:flex;gap:8px;margin-top:17px}.lesson-list span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:#fff;font-size:11px}.edvibe-note{font-size:11px!important}.faq{background:var(--blue)}.faq-list{border-top:1px solid var(--ink)}.faq-item{border-bottom:1px solid var(--ink)}.faq-q{width:100%;display:flex;justify-content:space-between;padding:22px 0;border:0;background:transparent;text-align:left;font:700 16px Manrope}.faq-q i{font:400 27px "Playfair Display"}.faq-a{display:grid;grid-template-rows:0fr;transition:.25s}.faq-a div{overflow:hidden}.faq-a p{margin:0;font-size:13px;line-height:1.65}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-item.open .faq-a p{padding-bottom:22px}.cta{padding:112px 0;text-align:center;background:var(--pink)}.cta h2{max-width:840px;margin:17px auto 23px;font:600 clamp(51px,6.2vw,86px)/.9 "Playfair Display";letter-spacing:-.08em}.cta p{max-width:495px;margin:0 auto 30px;font-size:14px;line-height:1.65}.form{max-width:530px;display:grid;grid-template-columns:1fr auto;gap:9px;margin:auto}.form input{padding:16px 20px;border:1px solid var(--ink);border-radius:99px;background:var(--white);font:13px Manrope}.form .button{border:0}.form-note{margin-top:13px;font-size:10px}footer{padding:30px 0;background:var(--ink);color:var(--white)}.foot{gap:22px;font-size:11px}.foot .logo{filter:brightness(0) invert(1)}.socials{display:flex;gap:16px;text-decoration:underline}
@media(max-width:780px){.wrap{width:min(100% - 30px,600px)}header{padding:16px 0}.logo{width:155px}.nav nav{display:none}.menu-toggle{display:block}.hero{min-height:auto;padding:110px 0 58px}.hero:before{top:auto;bottom:0;width:100%;height:53%;clip-path:polygon(0 20%,100% 0,100% 100%,0 100%)}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:0}.hero h1{font-size:clamp(52px,15vw,79px)}.hero-art{min-height:390px}.blob{width:276px;height:338px}.portrait{width:244px;height:320px;right:14%;border-width:7px;box-shadow:10px 11px var(--ink)}.note{left:0}.star{font-size:62px}.cards,.format-grid,.platform-grid{grid-template-columns:1fr}.section-head,.approach{display:block}.section-head p{margin-top:22px}.team{grid-template-columns:1fr 1fr;gap:10px}.teacher{padding:8px}.teacher-photo{height:195px}.teacher-info{padding:13px 1px}.teacher h3{font-size:25px}.teacher p{font-size:11px}.approach>div:first-child{margin-bottom:38px}.platform-grid{gap:45px}.screen{height:350px;box-shadow:9px 9px var(--orange)}section{padding:75px 0}.cta{padding:80px 0}.form{grid-template-columns:1fr}.foot{flex-wrap:wrap}}

/* Official Edvibe brand asset */
img.edvibe-logo{display:block;width:180px;height:auto;margin-top:18px}img.screen-logo{display:block;width:88px;height:auto}.screen-top{align-items:center}
/* Hero portrait: editorial collage rather than an arched frame */
.portrait{border:0;border-radius:12px 52px 12px 52px;transform:rotate(5deg);box-shadow:18px 18px 0 var(--ink)}
.portrait:before{content:"";position:absolute;z-index:1;inset:13px;border:1px solid rgba(255,255,255,.8);border-radius:4px 40px 4px 40px;pointer-events:none}
.portrait img{object-position:center 16%}
@media(max-width:780px){.portrait{box-shadow:10px 11px 0 var(--ink)}}
/* Centre the signature line; keep the following ticker edge-to-edge. */
.hero:after{content:none}.speak-line{width:100%;padding:14px 24px;background:var(--ink);color:#fff;text-align:center;font:500 12px "DM Mono",monospace;letter-spacing:.12em;text-transform:uppercase}.ticker{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.nav .logo{width:350px}
@media(max-width:780px){.nav .logo{width:155px}}
