/* Platform features with individual, one-time entrance reveals. */
.platform-bento-collection {background:#fff;color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;}
.platform-bento-collection *, .platform-bento-dialog, .platform-bento-dialog * {box-sizing:border-box;}
.platform-bento-block {padding:90px 0;scroll-margin-top:76px;}
.platform-bento-layout {width:min(1500px,90vw);margin:0 auto;display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,2fr);align-items:center;gap:60px;}
.platform-bento-intro h2 {font-size:clamp(52px,5.2vw,76px);line-height:.99;letter-spacing:-.055em;font-weight:650;color:#1d1d1f;margin:0 0 28px;}
.platform-bento-intro h2 .platform-bento-brand {color:#2563eb;}
.platform-bento-brand,.platform-bento-kind {display:inline-block;}
.platform-bento-brand {display:inline-flex;align-items:center;min-height:.99em;max-width:100%;vertical-align:middle;}
.platform-bento-brand-image {width:4.4em;}
.platform-bento-logo {display:block;width:100%;height:auto;}
.platform-bento-wordmark {position:relative;display:inline-flex;align-items:center;gap:.18em;white-space:nowrap;font:800 .7em/1 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;letter-spacing:-.02em;color:#1d1d1f;}
.platform-bento-wordmark-badge {position:relative;display:inline-flex;align-items:center;justify-content:center;height:1.35em;padding:0 .25em;border-radius:.28em;background:var(--platform-brand-color,#2563eb);color:#fff;}
#features-cefrway {--platform-brand-color:#8866ff;}
#features-topikway {--platform-brand-color:#00a3b2;}
.platform-bento-coming-soon {position:absolute;right:0;bottom:calc(100% - 6px);padding:.25em .7em;border-radius:999px;background:#06c270;color:#fff;font:650 14px/1.2 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;letter-spacing:-.02em;white-space:nowrap;z-index:1;}
/* SATway's official wordmark is rendered as type with a blue WAY badge. */
.satway-wordmark {display:inline-flex;align-items:center;gap:.18em;white-space:nowrap;font:800 .7em/1 Geist,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;letter-spacing:-.01em;color:#1c2c4b;}
.satway-wordmark-badge {display:inline-flex;align-items:center;justify-content:center;height:1.35em;padding:0 .25em;border-radius:.22em;background:#2563eb;color:#fff;}
.platform-bento-kind {color:#1d1d1f;}
.platform-bento-intro.is-reveal-pending h2>span,
.platform-bento-intro.is-reveal-pending p,
.platform-bento-card.is-reveal-pending {opacity:0;}
.platform-bento-card.is-reveal-pending {transform:translate3d(0,42px,0);pointer-events:none;}
.platform-bento-intro p {font-size:20px;line-height:1.45;font-weight:500;letter-spacing:-.018em;color:#86868b;max-width:330px;margin:0;}
.platform-bento-intro p strong {color:#1d1d1f;font-weight:600;}
.platform-bento-grid {display:grid;gap:18px;padding:18px;grid-template-columns:1fr 1.15fr 1.05fr;}
.platform-bento-grid-ieltsway {grid-template-rows:repeat(3,210px);}
.platform-bento-grid-five {grid-template-rows:repeat(3,210px);}
.platform-bento-grid-five>.platform-bento-card:nth-child(1) {grid-area:1/1/3/2;}
.platform-bento-grid-five>.platform-bento-card:nth-child(2) {grid-area:1/2/2/4;}
.platform-bento-grid-five>.platform-bento-card:nth-child(3) {grid-area:2/2;}
.platform-bento-grid-five>.platform-bento-card:nth-child(4) {grid-area:2/3;}
.platform-bento-grid-five>.platform-bento-card:nth-child(5) {grid-area:3/1/4/4;}
.platform-bento-grid-satway {grid-template-rows:repeat(2,324px);}
.platform-bento-card {position:relative;min-width:0;padding:26px 24px 76px;border-radius:28px;background:#fff;box-shadow:0 12px 30px rgba(29,29,31,.08),0 2px 6px rgba(29,29,31,.025);}
.bento-tone-purple {--bento-accent:#8866ff;}.bento-tone-orange {--bento-accent:#f56300;}.bento-tone-teal {--bento-accent:#00a3b2;}.bento-tone-blue {--bento-accent:#2563eb;}.bento-tone-pink {--bento-accent:#df3677;}
.platform-bento-icon {display:block;flex:none;width:38px;height:38px;color:var(--bento-accent);margin-bottom:18px;}
.platform-bento-card h3 {font-size:clamp(24px,1.95vw,30px);font-weight:600;line-height:1.1;letter-spacing:-.035em;color:#1d1d1f;margin:0;}
.platform-bento-card h3 span {color:var(--bento-accent);}
.platform-bento-more {position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;color:transparent;font-size:0;cursor:pointer;}
.platform-bento-more::after {content:'+';position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#1d1d1f;color:#fff;font:400 31px/1 -apple-system,BlinkMacSystemFont,sans-serif;}
.platform-bento-more:hover {background:transparent;}
.platform-bento-more:hover::after {background:#424245;}
.platform-bento-more:focus-visible {outline:3px solid #2563eb;outline-offset:4px;}
.platform-bento-grid-ieltsway .bento-ai-coach {grid-area:1/1/3/2;}
.platform-bento-grid-ieltsway .bento-progress {grid-area:1/2/2/4;}
.platform-bento-grid-ieltsway .bento-entertainment {grid-area:2/2;}
.platform-bento-grid-ieltsway .bento-speakmate {grid-area:2/3;}
.platform-bento-grid-ieltsway .bento-test-library {grid-area:3/1/4/4;}
.platform-bento-grid-satway .bento-mistake-bank {grid-area:1/1/3/2;}
.platform-bento-grid-satway .bento-test-library {grid-area:1/2/2/4;}
.platform-bento-grid-satway .bento-roadmap {grid-area:2/2;}
.platform-bento-grid-satway .bento-games {grid-area:2/3;}
.bento-ai-coach h3,.bento-mistake-bank h3 {font-size:clamp(29px,2.5vw,38px);}
.platform-bento-grid-five>.platform-bento-card:first-child h3 {font-size:clamp(29px,2.5vw,38px);}
.bento-progress h3,.bento-test-library h3 {font-size:clamp(29px,2.3vw,36px);}
.platform-bento-dialog {width:min(640px,90vw);max-height:88svh;margin:auto;overflow:auto;padding:52px;border:0;border-radius:32px;background:#fff;color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;}
.platform-bento-dialog::backdrop {background:#1d1d1f66;backdrop-filter:blur(8px);}
.platform-bento-dialog-close {position:absolute;right:16px;top:16px;width:44px;height:44px;border:0;border-radius:50%;background:#f5f5f7;color:#424245;font:300 27px/1 -apple-system,BlinkMacSystemFont,sans-serif;cursor:pointer;}
.platform-bento-dialog-label {font-size:14px;line-height:1.3;font-weight:600;color:#86868b;margin:0 0 28px;}
.platform-bento-dialog h2 {font-size:42px;line-height:1.06;letter-spacing:-.04em;margin:0 0 26px;color:#1d1d1f;}
.platform-bento-dialog h2 span {color:var(--bento-accent);}
.platform-bento-dialog-body p {font-size:20px;line-height:1.5;color:#6e6e73;margin:0;}
.platform-bento-dialog-link {display:inline-flex;align-items:center;gap:10px;min-height:44px;color:#06c;font-size:17px;line-height:1.3;margin-top:28px;text-decoration:none;}
.platform-bento-dialog-link:hover {text-decoration:underline;}
.platform-bento-dialog-link[hidden] {display:none;}
.platform-bento-dialog-close:focus-visible,.platform-bento-dialog-link:focus-visible {outline:3px solid #2563eb;outline-offset:4px;}
@media(max-width:1199px) {
 .platform-bento-layout {grid-template-columns:250px minmax(0,1fr);gap:36px;}
 .platform-bento-intro h2 {font-size:58px;}
 .platform-bento-intro p {font-size:18px;}
 .platform-bento-grid {grid-template-columns:1fr 1fr;}
 .platform-bento-grid-ieltsway {grid-template-rows:repeat(3,240px);}
 .platform-bento-grid-five {grid-template-rows:repeat(3,240px);}
 .platform-bento-grid-five>.platform-bento-card:nth-child(1) {grid-area:1/1;}
 .platform-bento-grid-five>.platform-bento-card:nth-child(2) {grid-area:1/2;}
 .platform-bento-grid-five>.platform-bento-card:nth-child(3) {grid-area:2/1;}
 .platform-bento-grid-five>.platform-bento-card:nth-child(4) {grid-area:2/2;}
 .platform-bento-grid-five>.platform-bento-card:nth-child(5) {grid-area:3/1/4/3;}
 .platform-bento-grid-five>.platform-bento-card:first-child h3 {font-size:27px;}
 .platform-bento-grid-satway {grid-template-rows:repeat(2,300px);}
 .platform-bento-grid-ieltsway .bento-ai-coach {grid-area:1/1;}
 .platform-bento-grid-ieltsway .bento-progress {grid-area:1/2;}
 .platform-bento-grid-ieltsway .bento-entertainment {grid-area:2/1;}
 .platform-bento-grid-ieltsway .bento-speakmate {grid-area:2/2;}
 .platform-bento-grid-ieltsway .bento-test-library {grid-area:3/1/4/3;}
 .platform-bento-grid-satway .bento-mistake-bank {grid-area:1/1;}
 .platform-bento-grid-satway .bento-test-library {grid-area:1/2;}
 .platform-bento-grid-satway .bento-roadmap {grid-area:2/1;}
 .platform-bento-grid-satway .bento-games {grid-area:2/2;}
 .platform-bento-card h3,.bento-ai-coach h3,.bento-mistake-bank h3,.bento-progress h3,.bento-test-library h3 {font-size:27px;}
}
@media(max-width:900px) {
 .platform-bento-block {padding:64px 0;}
 .platform-bento-layout {display:block;}
 .platform-bento-intro {margin-bottom:34px;}
 .platform-bento-intro p {max-width:480px;font-size:20px;}
 .platform-bento-grid-ieltsway {grid-template-rows:repeat(3,225px);}
 .platform-bento-grid-five {grid-template-rows:repeat(3,225px);}
 .platform-bento-grid-five>.platform-bento-card:first-child h3 {font-size:29px;}
 .platform-bento-grid-satway {grid-template-rows:repeat(2,250px);}
 .platform-bento-card h3,.bento-ai-coach h3,.bento-mistake-bank h3,.bento-progress h3,.bento-test-library h3 {font-size:29px;}
}
@media(max-width:600px) {
 .platform-bento-block {padding:52px 0;scroll-margin-top:64px;}
 .platform-bento-intro h2 {font-size:54px;margin-bottom:22px;}
 .platform-bento-intro p {font-size:18px;}
 .platform-bento-grid {grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:minmax(240px,auto);padding:14px;gap:14px;}
 .platform-bento-grid .platform-bento-card {grid-area:auto;}
 .platform-bento-grid-five>.platform-bento-card:nth-child(n) {grid-area:auto;}
 .platform-bento-grid-five>.platform-bento-card:first-child h3 {font-size:30px;}
 .platform-bento-card {padding:26px 24px 80px;border-radius:24px;}
 .platform-bento-card h3,.bento-ai-coach h3,.bento-mistake-bank h3,.bento-progress h3,.bento-test-library h3 {font-size:30px;}
 .platform-bento-dialog {padding:50px 28px 32px;border-radius:28px;}
 .platform-bento-dialog h2 {font-size:34px;}
 .platform-bento-dialog-body p {font-size:18px;}
}
@media(prefers-reduced-motion:reduce) {
 .platform-bento-intro.is-reveal-pending h2>span,
 .platform-bento-intro.is-reveal-pending p,
 .platform-bento-card.is-reveal-pending {opacity:1;transform:none;pointer-events:auto;}
}
