/*
 * Tanıtım sayfası — "Online okul" düzeni (web/home_academy.php).
 *
 * Uygulama görünümü: sol sütunda yapışkan dersler listesi, sağda renkli
 * vitrin (kayan bantlar), iki tanıtım kartı, kurs vitrini ve beyaz kart
 * bölümler. Renk ve yazı değişkenleri school.css'te (.st-school).
 */

.ac-body main { overflow-x: clip; }
.ac-shell { max-width: 1440px; margin: 0 auto; padding: 24px 28px 8px; display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 32px; align-items: start; }

/* ── Düğmeler ─────────────────────────────────────────────────────────── */
.ac-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 52px; padding: 0 28px; border-radius: 14px; border: 0;
    font: 700 16px/1 var(--st-font); white-space: nowrap; cursor: pointer; transition: transform .15s, box-shadow .15s, background .15s; }
.ac-btn:hover { transform: translateY(-1px); }
.ac-btn-white { background: #fff; color: var(--sc-ink) !important; box-shadow: 0 6px 16px -8px rgb(0 0 0 / .3); }
.ac-btn-accent { background: var(--sc-accent); color: var(--sc-accent-ink) !important; }
.ac-btn-accent:hover { background: var(--sc-accent-dark); }
.ac-btn-block { width: 100%; }
.ac-btn-soft { background: var(--sc-g100); color: var(--sc-ink) !important; }
.ac-btn-soft:hover { background: var(--sc-g200); }

/* ── Sol sütun ────────────────────────────────────────────────────────── */
.ac-side { position: sticky; top: 100px; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-content: start; }
/* Ekrandan uzun sütun kendi içinde kayar (alt kısmı hiçbir zaman ekranın dışında kalmaz);
 * gölgeler kesilmesin diye iç boşluk, kaydırma çubuğu ince ve yalnızca gerekince. */
@media (min-width: 1024px) {
    .ac-side { max-height: calc(100vh - 112px); max-height: calc(100dvh - 112px); overflow-y: auto; overscroll-behavior: contain;
        margin: -6px -8px 0; padding: 6px 8px 12px; scrollbar-width: thin; scrollbar-color: var(--sc-g300) transparent; }
    .ac-side::-webkit-scrollbar { width: 6px; }
    .ac-side::-webkit-scrollbar-thumb { border-radius: 99px; background: var(--sc-g300); }
}

.ac-side-card { min-width: 0; background: #fff; border-radius: 28px; padding: 10px; box-shadow: 0 1px 2px rgb(20 20 30 / .04), 0 18px 40px -30px rgb(30 30 60 / .35);
    display: grid; grid-template-columns: minmax(0, 1fr); }
.ac-side-top { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 6px; }
.ac-side-tile { position: relative; overflow: hidden; display: grid; align-content: end; min-height: 112px; padding: 12px 14px; border-radius: 20px; background: var(--sc-g100); color: var(--sc-ink); isolation: isolate; transition: transform .2s, box-shadow .2s; }
.st-body .ac-side-tile { color: var(--sc-ink); }
.ac-side-tile:hover { transform: translateY(-2px); box-shadow: 0 14px 24px -16px rgb(30 30 60 / .45); }
.ac-side-tile img { position: absolute; z-index: -1; right: 8px; top: 8px; width: 48px; height: 48px; object-fit: contain; transform: rotate(10deg); transition: transform .3s; }
.ac-side-tile:hover img { transform: rotate(0) scale(1.06); }
.ac-side-tile b { font-size: 15px; font-weight: 800; letter-spacing: -.01em; }
.ac-side-tile small { margin-top: 2px; font-size: 12px; font-weight: 600; color: var(--sc-g500); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.st-body .ac-side-tile.is-accent { background: var(--sc-accent); color: var(--sc-accent-ink); }
.ac-side-tile.is-accent small { color: rgb(255 255 255 / .75); }
.ac-side-label { padding: 14px 12px 6px; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--sc-g500); }
.ac-side-item { position: relative; min-width: 0; display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 6px 12px 6px 6px; border-radius: 16px; color: var(--sc-ink); font-size: 15px; font-weight: 600; transition: background .15s; }
.st-body .ac-side-item { color: var(--sc-ink); }
.ac-side-item:hover { background: var(--sc-g100); }
.ac-side-ic { flex: none; width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; background: var(--sc-g100); transition: transform .2s; }
.ac-side-ic img { width: 30px; height: 30px; object-fit: contain; }
.ac-side-item:hover .ac-side-ic { transform: rotate(-6deg) scale(1.06); }
.ac-side-name { flex: 1; min-width: 0; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ac-side-count { flex: none; min-width: 28px; height: 24px; padding: 0 8px; border-radius: 99px; display: grid; place-items: center; background: var(--sc-g100); font-size: 12.5px; font-weight: 700; color: var(--sc-g600); transition: background .15s, color .15s; }
.ac-side-item:hover .ac-side-count { background: var(--sc-accent); color: var(--sc-accent-ink); }
.ac-side-new { flex: none; padding: 3px 8px; border-radius: 8px; background: linear-gradient(120deg, var(--sc-accent), var(--sc-violet)); color: #fff; font-size: 11px; font-weight: 800; letter-spacing: .04em; }
.ac-side-live { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 800; color: var(--sc-red); }
/* Program zeminleri (sol sütun ve telefon şeridi) */
.is-t0 { background: #efe6fc !important; } .is-t1 { background: #e6f4dc !important; } .is-t2 { background: #fdf2c9 !important; }
.is-t3 { background: #e2eafe !important; } .is-t4 { background: #ffe9d6 !important; } .is-t5 { background: #fde3ec !important; }
.ac-side-ic.is-live, .ac-rail-in.is-live { background: #fde4e4 !important; }
.st-body .ac-side-help { position: relative; display: grid; justify-items: start; gap: 4px; padding: 20px 20px 18px; border-radius: 28px; background: var(--sc-accent); color: #fff; overflow: hidden; isolation: isolate; }
.ac-side-help::before { content: ''; position: absolute; inset: 0; z-index: -1; background-image: radial-gradient(rgb(255 255 255 / .18) 1.2px, transparent 1.6px); background-size: 16px 16px;
    -webkit-mask-image: linear-gradient(120deg, #000, transparent 70%); mask-image: linear-gradient(120deg, #000, transparent 70%); }
.ac-side-help img { position: absolute; z-index: -1; right: -14px; bottom: -18px; width: 120px; transform: rotate(-12deg); transition: transform .3s; }
.ac-side-help:hover img { transform: rotate(-4deg) scale(1.05); }
.ac-side-help b { font-size: 18px; font-weight: 800; }
.ac-side-help span { max-width: 62%; font-size: 13.5px; line-height: 1.45; opacity: .86; }
.ac-side-help em { margin-top: 10px; display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 12px; background: #fff; color: var(--sc-ink); font-style: normal; font-size: 13.5px; font-weight: 700; }

/* Kısa ekranlarda (13 inç dizüstü) daha sıkı sütun. */
@media (min-width: 1024px) and (max-height: 1000px) {
    .ac-side { gap: 12px; }
    .ac-side-card { padding: 8px; border-radius: 24px; }
    .ac-side-top { gap: 6px; margin-bottom: 2px; }
    .ac-side-tile { min-height: 84px; padding: 10px 12px; border-radius: 17px; }
    .ac-side-tile img { width: 38px; height: 38px; right: 6px; top: 6px; }
    .ac-side-tile b { font-size: 14px; }
    .ac-side-label { padding: 10px 10px 4px; font-size: 11px; }
    .ac-side-item { min-height: 46px; gap: 10px; padding: 4px 10px 4px 4px; border-radius: 13px; font-size: 14px; }
    .ac-side-ic { width: 36px; height: 36px; border-radius: 11px; }
    .ac-side-ic img { width: 24px; height: 24px; }
    .ac-side-name { -webkit-line-clamp: 1; }
    .st-body .ac-side-help { padding: 14px 16px; border-radius: 22px; }
    .ac-side-help b { font-size: 16px; }
    .ac-side-help span { font-size: 12.5px; }
    .ac-side-help em { margin-top: 6px; padding: 6px 12px; font-size: 13px; }
    .ac-side-help img { width: 92px; }
}

/* Çok kısa ekranda yardım kartı gizlenir (aynı bağlantı üst bilgide ve sayfadaki formda var). */
@media (min-width: 1024px) and (max-height: 850px) { .st-body .ac-side-help { display: none; } }

/* ── Vitrin ───────────────────────────────────────────────────────────── */
.ac-main { min-width: 0; display: grid; gap: 24px; }
.ac-hero { position: relative; }
.ac-hero-track { display: grid; grid-template-columns: minmax(0, 1fr); }
.ac-slide { grid-area: 1 / 1; position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); align-items: center; min-height: 430px; padding: 44px 56px; border-radius: 28px; overflow: hidden;
    color: #fff; opacity: 0; visibility: hidden; transform: scale(.985); transition: opacity .5s ease, visibility .5s, transform .5s ease; isolation: isolate; }
.ac-slide.is-on { opacity: 1; visibility: visible; transform: none; }
.ac-slide::before { content: ''; position: absolute; z-index: -1; right: -8%; top: 50%; width: 70%; aspect-ratio: 1; transform: translateY(-50%); border-radius: 50%; background: radial-gradient(closest-side, rgb(255 255 255 / .28), transparent); }
.ac-slide.is-green { background: var(--sc-green); }
.ac-slide.is-blue { background: var(--sc-blue); }
.ac-slide.is-orange { background: var(--sc-orange); }
.ac-slide.is-violet { background: linear-gradient(120deg, var(--sc-accent), var(--sc-violet)); }
.ac-slide.is-violet .ac-tag { background: var(--sc-yellow); color: var(--sc-ink); }
.ac-slide-copy { position: relative; z-index: 2; max-width: 560px; }
.ac-tag { display: inline-block; padding: 7px 12px; border-radius: 6px; background: var(--sc-violet); color: #fff; font-size: 15px; font-weight: 700; transform: rotate(-3deg); box-shadow: 0 6px 14px -6px rgb(0 0 0 / .35); }
.ac-slide.is-blue .ac-tag { background: var(--sc-yellow); color: var(--sc-ink); }
.ac-slide.is-orange .ac-tag { background: #fff; color: var(--sc-orange); }
.ac-slide-title { margin: 22px 0 0; font-size: clamp(32px, 3.4vw, 50px); line-height: 1.05; font-weight: 800; letter-spacing: -.035em; color: #fff;
    display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.ac-slide-meta { max-width: 44ch; margin: 18px 0 0; font-size: 17px; font-weight: 500; color: rgb(255 255 255 / .82); }
.ac-slide-cta { margin-top: 34px; display: flex; align-items: center; gap: 18px; }
.ac-slide-price { font-size: 24px; font-weight: 800; }
.ac-slide-art { position: relative; align-self: stretch; margin: -44px -56px -44px 0; }
.ac-slide-art.is-person .ac-art-main { position: absolute; right: 6%; bottom: 0; height: 108%; max-height: 500px; width: auto; max-width: 112%; object-fit: contain; object-position: bottom right; filter: drop-shadow(0 24px 30px rgb(0 0 0 / .22)); }
.ac-slide-art.is-object { display: grid; place-items: center; }
.ac-slide-art.is-object .ac-art-main { position: relative; z-index: 1; width: min(360px, 90%); filter: drop-shadow(0 30px 40px rgb(0 0 0 / .3)); animation: ac-bob 6s ease-in-out infinite; }
.ac-halo { position: absolute; width: 380px; height: 380px; border-radius: 50%; background: rgb(255 255 255 / .14); box-shadow: 0 0 0 40px rgb(255 255 255 / .06); }
.ac-float-a, .ac-float-b { position: absolute; z-index: 2; filter: drop-shadow(0 14px 18px rgb(0 0 0 / .25)); }
.ac-float-a { width: 110px; left: 6%; top: 14%; transform: rotate(-22deg); }
.ac-float-b { width: 120px; right: 8%; bottom: 10%; transform: rotate(12deg); }
@keyframes ac-bob { 50% { transform: translateY(-12px) rotate(-2deg); } }
@media (prefers-reduced-motion: reduce) { .ac-slide-art.is-object .ac-art-main { animation: none; } .ac-slide { transition: none; } }
.ac-arrow { position: absolute; z-index: 3; top: 50%; width: 44px; height: 44px; margin-top: -22px; border-radius: 50%; border: 0; background: #fff; color: var(--sc-ink); display: grid; place-items: center;
    font-size: 16px; cursor: pointer; box-shadow: 0 6px 18px -6px rgb(0 0 0 / .35); transition: transform .15s; }
.ac-arrow:hover { transform: scale(1.06); }
.ac-arrow.is-prev { left: -20px; }
.ac-arrow.is-next { right: -20px; }
.ac-dots { position: absolute; z-index: 3; right: 44px; bottom: 30px; display: flex; gap: 8px; }
.ac-dots button { width: 10px; height: 10px; padding: 0; border: 0; border-radius: 99px; background: rgb(255 255 255 / .5); cursor: pointer; transition: width .3s, background .3s; }
.ac-dots button.is-on { width: 16px; height: 16px; margin-top: -3px; background: #fff; }

/* ── Tanıtım kartları ─────────────────────────────────────────────────── */
.ac-promos { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.ac-promo { position: relative; overflow: hidden; min-height: 300px; padding: 34px 32px 32px; border-radius: 28px; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; color: #fff; isolation: isolate; transition: transform .2s; }
.st-body .ac-promo { color: #fff; }
.st-body .ac-promo.is-yellow { color: var(--sc-ink); }
.ac-promo:hover { transform: translateY(-3px); }
.ac-promo.is-purple { background: var(--sc-violet); }
.ac-promo.is-yellow { background: var(--sc-yellow); }
.ac-promo::before { content: ''; position: absolute; z-index: -1; right: -10%; top: 50%; width: 60%; aspect-ratio: 1; transform: translateY(-50%); border-radius: 50%; background: radial-gradient(closest-side, rgb(255 255 255 / .3), transparent); }
.ac-promo-title { max-width: 62%; font-size: clamp(22px, 2vw, 28px); line-height: 1.2; font-weight: 600; letter-spacing: -.01em; }
.ac-promo .ac-btn { height: 56px; }
.ac-stack { position: absolute; right: 56px; top: -28px; bottom: -28px; display: flex; flex-direction: column; justify-content: center; gap: 14px; }
.ac-stack-i { position: relative; width: 82px; height: 82px; border-radius: 22px; display: grid; place-items: center; background: rgb(255 255 255 / .16); border: 1px solid rgb(255 255 255 / .22); backdrop-filter: blur(6px); }
.ac-stack-i img { width: 54px; }
.ac-stack-i.is-on { background: rgb(255 255 255 / .34); box-shadow: 0 12px 26px -10px rgb(40 0 80 / .5); }
.ac-stack-say { position: absolute; right: 100%; top: 50%; transform: translate(-16px, -50%); font-size: 28px; font-weight: 700; white-space: nowrap; }
.ac-promo-art { position: absolute; right: 22px; top: 50%; width: 220px; transform: translateY(-50%) rotate(-8deg); filter: drop-shadow(0 22px 26px rgb(120 70 0 / .3)); transition: transform .4s; }
.ac-promo:hover .ac-promo-art { transform: translateY(-50%) rotate(-2deg) scale(1.04); }

/* ── Kişisel, yapay zekâ destekli eğitim ──────────────────────────────── */
.ac-ai { scroll-margin-top: 96px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 12px; padding: 10px; border-radius: 30px; background: #fff;
    box-shadow: 0 1px 2px rgb(20 20 30 / .04), 0 22px 50px -36px rgb(30 30 60 / .45); }
.ac-ai-copy { padding: 30px 26px 30px 30px; }
.ac-ai-pill { display: inline-flex; align-items: center; gap: 7px; padding: 7px 12px; border-radius: 99px; background: var(--sc-accent-50); color: var(--sc-accent); font-size: 13.5px; font-weight: 800; }
.ac-ai-copy h2 { margin: 16px 0 0; font-size: clamp(26px, 2.4vw, 36px); line-height: 1.12; font-weight: 800; letter-spacing: -.03em; color: var(--sc-heading); }
.ac-ai-copy > p { margin: 12px 0 0; max-width: 56ch; font-size: 15.5px; line-height: 1.65; color: var(--sc-g600); }
.ac-ai-list { list-style: none; margin: 22px 0 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 16px 20px; }
.ac-ai-list li { display: flex; gap: 12px; align-items: flex-start; }
.ac-ai-ic { flex: none; display: grid; place-items: center; width: 50px; height: 50px; border-radius: 16px; }
.ac-ai-ic img { width: 34px; height: 34px; object-fit: contain; }
.ac-ai-list li > span:last-child { display: grid; gap: 3px; }
.ac-ai-list b { font-size: 15px; color: var(--sc-heading); }
.ac-ai-list small { font-size: 13.5px; line-height: 1.5; color: var(--sc-g600); }
.ac-ai-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.ac-ai-art { position: relative; overflow: hidden; min-height: 460px; border-radius: 24px; isolation: isolate;
    background: radial-gradient(90% 80% at 70% 20%, var(--sc-violet), var(--sc-accent) 70%); }
.ac-ai-art::before { content: ''; position: absolute; inset: 0; z-index: -1; background-image: radial-gradient(rgb(255 255 255 / .18) 1.2px, transparent 1.6px); background-size: 20px 20px;
    -webkit-mask-image: linear-gradient(200deg, #000 20%, transparent 80%); mask-image: linear-gradient(200deg, #000 20%, transparent 80%); }
.ac-ai-art::after { content: ''; position: absolute; z-index: -1; left: 50%; bottom: -30%; width: 90%; aspect-ratio: 1; transform: translateX(-50%); border-radius: 50%; background: radial-gradient(closest-side, rgb(255 255 255 / .28), transparent); }
.ac-ai-robot { position: absolute; right: 8%; bottom: -4px; height: 88%; max-height: 440px; width: auto; filter: drop-shadow(0 26px 30px rgb(10 0 60 / .35)); animation: ac-bob 7s ease-in-out infinite; }
.ac-ai-card { position: absolute; z-index: 2; border-radius: 18px; background: #fff; box-shadow: 0 22px 40px -22px rgb(10 0 60 / .55); color: var(--sc-ink); }
.ac-ai-card.is-path { left: 22px; top: 24px; width: 220px; padding: 14px 16px; }
.ac-ai-card.is-path > b { font-size: 13px; font-weight: 800; color: var(--sc-g500); text-transform: uppercase; letter-spacing: .06em; }
.ac-ai-card ol { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 8px; }
.ac-ai-card ol li { display: flex; align-items: center; gap: 9px; font-size: 14px; font-weight: 700; }
.ac-ai-card ol i { flex: none; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 8px; background: var(--sc-g100); font-size: 12px; font-style: normal; }
.ac-ai-card ol li.is-done { color: var(--sc-g500); text-decoration: line-through; text-decoration-color: var(--sc-g300); }
.ac-ai-card ol li.is-done i { background: #e6f4dc; color: #3f8a1d; }
.ac-ai-card ol li.is-now i { background: var(--sc-accent); color: #fff; }
.ac-ai-card ol em { margin-left: auto; padding: 2px 7px; border-radius: 7px; background: var(--sc-yellow); font-size: 11px; font-style: normal; font-weight: 800; }
.ac-ai-card.is-goal { left: 22px; bottom: 96px; display: flex; align-items: center; gap: 12px; padding: 12px 16px 12px 12px; }
.ac-ai-card.is-goal > span:last-child { display: grid; }
.ac-ai-card.is-goal b { font-size: 14px; }
.ac-ai-card.is-goal small { font-size: 12.5px; color: var(--sc-g500); }
.ac-ai-ring { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: conic-gradient(var(--sc-green) calc(var(--p) * 1%), var(--sc-g100) 0); }
.ac-ai-ring b { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #fff; font-size: 11.5px !important; font-weight: 800; }
.ac-ai-card.is-chat { left: 22px; right: 40%; bottom: 22px; display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; border-bottom-left-radius: 6px; font-size: 13.5px; line-height: 1.45; font-weight: 600; }
.ac-ai-bot { flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 9px; background: var(--sc-accent); color: #fff; font-size: 13px; }
@media (prefers-reduced-motion: reduce) { .ac-ai-robot { animation: none; } }

/* ── K-12 kademeleri ──────────────────────────────────────────────────── */
.ac-k12 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.ac-stage { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; align-items: flex-start; min-height: 300px; padding: 22px 22px 20px; border-radius: 26px; color: #fff; transition: transform .25s, box-shadow .25s; }
.st-body .ac-stage { color: #fff; }
.st-body .ac-stage.is-yellow { color: var(--sc-ink); }
.ac-stage:hover { transform: translateY(-4px); box-shadow: 0 24px 40px -26px rgb(30 30 60 / .6); }
.ac-stage.is-yellow { background: var(--sc-yellow); } .ac-stage.is-green { background: var(--sc-green); } .ac-stage.is-blue { background: var(--sc-blue); } .ac-stage.is-violet { background: var(--sc-violet); }
.ac-stage::before { content: ''; position: absolute; z-index: -1; right: -30%; top: -30%; width: 80%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(closest-side, rgb(255 255 255 / .32), transparent); }
.ac-stage-art { flex: none; width: 84px; height: 84px; object-fit: contain; margin: -10px -6px -8px 0; transform: rotate(10deg); filter: drop-shadow(0 14px 18px rgb(0 0 0 / .2)); transition: transform .35s; }
.ac-stage:hover .ac-stage-art { transform: rotate(0) scale(1.06); }
.ac-stage-grade { padding: 5px 10px; border-radius: 9px; background: rgb(255 255 255 / .22); font-size: 12.5px; font-weight: 800; }
.ac-stage.is-yellow .ac-stage-grade { background: rgb(255 255 255 / .55); }
.ac-stage > b { margin-top: 12px; font-size: 26px; font-weight: 800; letter-spacing: -.03em; }
.ac-stage ul { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 6px; }
.ac-stage li { display: flex; gap: 7px; align-items: flex-start; font-size: 14px; font-weight: 600; opacity: .92; }
.ac-stage-foot { align-self: stretch; margin-top: auto; padding-top: 14px; display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; }
.ac-stage-go { display: inline-flex; align-items: center; gap: 6px; font-size: 14.5px; font-weight: 800; }
.ac-stage-go i { transition: transform .2s; }
.ac-stage:hover .ac-stage-go i { transform: translateX(4px); }
.ac-k12-strip { list-style: none; margin: 16px 0 0; padding: 12px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; border-radius: 22px; background: #fff; }
.ac-k12-strip li { display: flex; align-items: center; gap: 10px; padding: 6px 8px; font-size: 14px; font-weight: 700; color: var(--sc-ink); }
.ac-k12-strip img { flex: none; width: 36px; height: 36px; object-fit: contain; }

/* ── Beyaz kart bölümler ──────────────────────────────────────────────── */
.ac-block { scroll-margin-top: 96px; }
.ac-block-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin: 8px 0 18px; }
.ac-block-head h2 { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 24px; font-weight: 700; letter-spacing: -.02em; color: var(--sc-heading); }
.ac-block-head h2 span { color: var(--sc-g500); font-weight: 600; }
.ac-block-head p { margin: 4px 0 0; font-size: 14.5px; color: var(--sc-g500); }
.ac-block-head a { font-size: 16px; font-weight: 600; color: var(--sc-g500); }
.ac-block-head a:hover { color: var(--sc-accent); }

/* Kurslar (kart: web/academy/_card.php, stili school.css → .st-course) */
.ac-courses { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }

/* Canlı sınıf */
.ac-live { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 22px; }
.ac-live-intro { position: relative; padding: 26px 26px 24px; border-radius: var(--sc-radius); background: #fff; box-shadow: var(--sc-sh-sm); overflow: hidden; }
.ac-live-intro img { position: absolute; right: 14px; top: 14px; width: 84px; transform: rotate(10deg); }
.ac-live-intro b { display: block; max-width: calc(100% - 100px); font-size: 20px; font-weight: 800; letter-spacing: -.02em; color: var(--sc-heading); line-height: 1.25; }
.ac-live-intro p { margin: 10px 0 0; font-size: 14.5px; line-height: 1.6; color: var(--sc-g600); }
.ac-live-intro ul { list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 8px; }
.ac-live-intro li { display: flex; gap: 9px; align-items: flex-start; font-size: 14px; font-weight: 600; color: var(--sc-g700); }
.ac-live-intro li i { color: var(--sc-green); margin-top: 1px; }
.ac-sessions { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; align-content: start; }
.ac-session { display: flex; align-items: center; gap: 16px; padding: 14px; border-radius: 20px; background: #fff; box-shadow: var(--sc-sh-sm); color: var(--sc-ink); transition: transform .2s, box-shadow .2s; }
.ac-session:hover { transform: translateY(-2px); box-shadow: var(--sc-sh-md); }
.ac-session-date { flex: none; width: 62px; height: 62px; border-radius: 16px; display: grid; place-items: center; align-content: center; background: var(--sc-green); color: #fff; }
.ac-sessions li:nth-child(2) .ac-session-date { background: var(--sc-violet); }
.ac-sessions li:nth-child(3) .ac-session-date { background: var(--sc-yellow); color: var(--sc-ink); }
.ac-sessions li:nth-child(4) .ac-session-date { background: var(--sc-blue); }
.ac-session-date b { font-size: 24px; line-height: 1; font-weight: 800; }
.ac-session-date small { font-size: 12px; font-weight: 700; }
.ac-session-body { flex: 1; min-width: 0; display: grid; gap: 4px; }
.ac-session-body b { font-size: 16px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ac-session-body small { font-size: 13.5px; color: var(--sc-g500); }
.ac-session-go { flex: none; width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; background: var(--sc-g100); font-size: 16px; }
.ac-session-go.is-live { width: auto; padding: 0 16px; background: var(--sc-red); color: #fff; font-weight: 800; font-size: 14px; }
.ac-empty { margin: 0; padding: 22px; border-radius: 20px; background: #fff; color: var(--sc-g600); font-size: 14.5px; line-height: 1.6; }

/* Öğretmenler */
.ac-teachers { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.ac-teachers li { display: grid; justify-items: center; text-align: center; gap: 4px; padding: 22px 12px 18px; border-radius: 22px; background: #fff; box-shadow: var(--sc-sh-sm); }
.ac-teachers b { margin-top: 8px; font-size: 15px; font-weight: 700; color: var(--sc-heading); }
.ac-teachers small { font-size: 12.5px; color: var(--sc-g500); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.ac-avatar { width: 64px; height: 64px; border-radius: 22px; display: grid; place-items: center; font-size: 20px; font-weight: 800; color: #fff; }
.ac-avatar.is-violet { background: var(--sc-violet); } .ac-avatar.is-green { background: var(--sc-green); } .ac-avatar.is-yellow { background: var(--sc-yellow); color: var(--sc-ink); }
.ac-avatar.is-pink { background: #ef6f9a; } .ac-avatar.is-sky { background: var(--sc-blue); } .ac-avatar.is-orange { background: var(--sc-orange); }
.ac-avatar.is-white { width: 40px; height: 40px; border-radius: 14px; font-size: 13px; background: rgb(255 255 255 / .9); color: var(--sc-ink); }

/* Görüşler */
.ac-score { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 99px; background: #fff; font-size: 15px; font-weight: 800; color: var(--sc-ink); }
.ac-score i { color: #f5a524; }
.ac-reviews { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.ac-review { margin: 0; padding: 24px; border-radius: var(--sc-radius); display: flex; flex-direction: column; gap: 14px; color: #fff; }
.ac-review.is-violet { background: var(--sc-violet); } .ac-review.is-green { background: var(--sc-green); } .ac-review.is-yellow { background: var(--sc-yellow); color: var(--sc-ink); }
.ac-stars { color: #fff; font-size: 14px; letter-spacing: 2px; }
.ac-review.is-yellow .ac-stars { color: var(--sc-ink); }
.ac-review blockquote { margin: 0; flex: 1; font-size: 18px; line-height: 1.45; font-weight: 600; }
.ac-review figcaption { display: flex; align-items: center; gap: 10px; }
.ac-review figcaption > span:last-child { display: grid; min-width: 0; }
.ac-review figcaption b { font-size: 14.5px; }
.ac-review figcaption small { font-size: 12.5px; opacity: .82; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* SSS + form */
.ac-bottom { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.ac-acc { display: grid; gap: 10px; }
.ac-acc details { border-radius: 20px; background: #fff; padding: 0 22px; box-shadow: var(--sc-sh-sm); }
.ac-acc summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 0; cursor: pointer; list-style: none; font-size: 16px; font-weight: 700; color: var(--sc-heading); }
.ac-acc summary::-webkit-details-marker { display: none; }
.ac-acc summary i { flex: none; width: 32px; height: 32px; border-radius: 10px; display: grid; place-items: center; background: var(--sc-g100); font-size: 13px; transition: transform .25s, background .25s; }
.ac-acc details[open] summary i { transform: rotate(180deg); background: var(--sc-accent); color: #fff; }
.ac-acc p { margin: -6px 0 0; padding: 0 0 20px; font-size: 14.5px; line-height: 1.65; color: var(--sc-g600); }
.ac-enquiry { padding: 26px; border-radius: 28px; background: #fff; box-shadow: var(--sc-sh-sm); }
.ac-enquiry-head { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.ac-enquiry-head img { width: 72px; flex: none; }
.ac-enquiry-head h2 { margin: 0; font-size: 22px; font-weight: 800; letter-spacing: -.02em; color: var(--sc-heading); }
.ac-enquiry-head p { margin: 4px 0 0; font-size: 14px; line-height: 1.55; color: var(--sc-g600); }
.ac-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 16px; }
.ac-field { display: grid; gap: 6px; }
.ac-field.is-wide { grid-column: 1 / -1; }
.ac-field > span { font-size: 13px; font-weight: 700; color: var(--sc-g700); }
.ac-field small { font-weight: 500; color: var(--sc-g500); }
.ac-field input, .ac-field select, .ac-field textarea { width: 100%; min-height: 48px; padding: 12px 14px; border: 1.5px solid transparent; border-radius: 14px; background: var(--sc-g100);
    font: 500 15px var(--st-font); color: var(--sc-ink); transition: border-color .15s, background .15s, box-shadow .15s; }
.ac-field textarea { resize: vertical; min-height: 88px; }
.ac-field input:focus, .ac-field select:focus, .ac-field textarea:focus { outline: none; background: #fff; border-color: var(--sc-accent); box-shadow: 0 0 0 4px var(--sc-accent-100); }
.ac-check { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 10px; font-size: 13px; line-height: 1.5; color: var(--sc-g600); cursor: pointer; }
.ac-check input { width: 18px; height: 18px; margin-top: 1px; accent-color: var(--sc-accent); flex: none; }
.ac-enquiry .ac-btn-block { margin-top: 8px; }
.ac-enquiry .alert { margin-bottom: 14px; border-radius: 14px; }
.ac-hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }

/* ── Duyarlı ──────────────────────────────────────────────────────────── */
.ac-courses > :nth-child(n+5) { display: none; }
@media (max-width: 1300px) { .ac-courses { grid-template-columns: repeat(3, minmax(0, 1fr)); } .ac-courses > :nth-child(n+4) { display: none; } }
@media (max-width: 1180px) {
    .ac-shell { grid-template-columns: 264px minmax(0, 1fr); gap: 24px; }
    .ac-side-tile { min-height: 100px; }
    .ac-teachers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ac-bottom, .ac-live { grid-template-columns: 1fr; }
    .ac-ai { grid-template-columns: 1fr; }
    .ac-ai-art { min-height: 420px; }
    .ac-k12 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ac-k12-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ac-slide { padding: 36px 40px; }
    .ac-slide-art { margin-right: -40px; }
}
/* Telefon programı şeridi masaüstünde yok (sol sütun var). */
.ac-rail { display: none; }

@media (max-width: 1023px) {
    .ac-shell { grid-template-columns: minmax(0, 1fr); padding: 14px 14px 4px; gap: 18px; }
    .ac-side { display: none; }
    .ac-main { display: contents; }
    .ac-hero { order: 1; }
    .ac-rail { order: 2; }
    .ac-promos, .ac-ai, .ac-block, .ac-bottom { order: 3; }
    .ac-reviews { grid-template-columns: 1fr; }

    /* Yuvarlak program şeridi */
    .ac-rail { display: flex; gap: 14px; margin: 0 -14px; padding: 4px 14px 6px; overflow-x: auto; scroll-snap-type: x proximity; scroll-padding-inline: 14px; scrollbar-width: none; }
    .ac-rail::-webkit-scrollbar { display: none; }
    .ac-rail-item { flex: none; width: 82px; display: grid; justify-items: center; gap: 8px; scroll-snap-align: start; color: var(--sc-ink); text-align: center; }
    .st-body .ac-rail-item { color: var(--sc-ink); }
    .ac-rail-ring { width: 78px; height: 78px; padding: 3px; border-radius: 50%; background: conic-gradient(from 200deg, var(--sc-accent), var(--sc-violet), var(--sc-accent)); }
    .ac-rail-ring.is-accent { background: conic-gradient(from 200deg, var(--sc-yellow), var(--sc-orange), var(--sc-yellow)); }
    .ac-rail-ring.is-live { background: conic-gradient(from 200deg, var(--sc-red), #ff9a8a, var(--sc-red)); }
    .ac-rail-in { width: 100%; height: 100%; border-radius: 50%; display: grid; place-items: center; background: #fff; border: 3px solid #fff; }
    .ac-rail-in img { width: 64%; height: 64%; object-fit: contain; transition: transform .25s; }
    .ac-rail-item:active .ac-rail-in img { transform: scale(.92); }
    .ac-rail-item b { font-size: 12.5px; font-weight: 700; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
}
@media (max-width: 760px) {
    /* Vitrin kenardan kenara; metin üstte, karakter altta bandın kenarına oturur */
    .ac-hero { margin: -14px -14px 0; }
    .ac-slide { display: flex; flex-direction: column; min-height: 0; padding: 30px 22px 0; border-radius: 0 0 32px 32px; }
    .ac-slide::before { right: -40%; top: auto; bottom: -30%; width: 130%; transform: none; }
    .ac-slide-copy { max-width: none; }
    .ac-tag { font-size: 13px; padding: 6px 11px; }
    .ac-slide-title { margin-top: 14px; font-size: 29px; line-height: 1.08; -webkit-line-clamp: 3; }
    .ac-slide-meta { margin-top: 10px; font-size: 14.5px; line-height: 1.45; }
    .ac-slide-cta { margin-top: 18px; gap: 14px; }
    .ac-slide-cta .ac-btn { height: 46px; padding: 0 20px; font-size: 15px; border-radius: 13px; }
    .ac-slide-price { font-size: 20px; }
    .ac-slide-art { position: relative; flex: 1 0 236px; height: 236px; margin: 8px -22px 0; }
    .ac-slide-art.is-person .ac-art-main { left: 50%; right: auto; bottom: 0; transform: translateX(-50%); height: 100%; max-height: none; width: auto; max-width: 92%; object-position: bottom center; }
    .ac-slide-art.is-object .ac-art-main { width: 170px; }
    .ac-halo { width: 210px; height: 210px; }
    .ac-float-a { width: 56px; left: 12%; top: 14%; } .ac-float-b { width: 62px; right: 12%; bottom: 10%; }
    .ac-arrow { display: none; }
    .ac-dots { right: 16px; top: 30px; bottom: auto; transform: none; align-items: center; padding: 6px 8px; border-radius: 99px; background: rgb(0 0 0 / .14); }
    .ac-dots button { width: 7px; height: 7px; }
    .ac-dots button.is-on { width: 20px; height: 7px; margin: 0; }

    .ac-promos { grid-template-columns: 1fr; gap: 14px; }
    .ac-promo { min-height: 210px; padding: 24px; border-radius: 26px; }
    .ac-promo-title { max-width: 58%; font-size: 21px; }
    .ac-stack { right: 22px; gap: 10px; }
    .ac-stack-i { width: 58px; height: 58px; border-radius: 18px; }
    .ac-stack-i img { width: 38px; }
    .ac-stack-say { font-size: 20px; }
    .ac-promo-art { width: 140px; right: 10px; }
    .ac-promo .ac-btn { max-width: 62%; height: auto; min-height: 50px; padding: 12px 18px; white-space: normal; text-align: center; line-height: 1.25; }

    /* Bölüm başlıkları ve yatay kaydırılan kurs şeridi */
    .ac-block-head { align-items: flex-end; margin-top: 14px; }
    .ac-block-head > div { min-width: 0; }
    .ac-block-head h2 { font-size: 24px; }
    .ac-block-head a { flex: none; font-size: 14.5px; color: var(--sc-ink); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 5px; text-decoration-color: var(--sc-g300); }
    .ac-courses { display: flex; gap: 14px; margin: 0 -14px -14px; padding: 2px 14px 24px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 14px; scrollbar-width: none; }
    .ac-courses::-webkit-scrollbar { display: none; }
    .ac-courses > *, .ac-courses > :nth-child(n) { display: flex; flex: 0 0 76%; scroll-snap-align: start; }
    .ac-teachers { display: flex; margin: 0 -14px; padding: 2px 14px 8px; overflow-x: auto; scrollbar-width: none; }
    .ac-teachers li { flex: 0 0 42%; }
    .ac-form-grid { grid-template-columns: 1fr; }
    .ac-enquiry { padding: 20px; }
    .ac-ai { padding: 8px; border-radius: 26px; }
    .ac-ai-copy { padding: 18px 14px 20px; }
    .ac-ai-copy h2 { font-size: 26px; }
    .ac-ai-list { grid-template-columns: 1fr; }
    .ac-ai-cta .ac-btn { flex: 1; padding: 0 16px; }
    .ac-ai-art { min-height: 400px; border-radius: 20px; }
    .ac-ai-robot { right: -2%; height: 62%; }
    .ac-ai-card.is-path { left: 14px; top: 14px; width: 200px; }
    .ac-ai-card.is-goal { left: 14px; bottom: 98px; }
    .ac-ai-card.is-chat { left: 14px; right: 30%; bottom: 14px; }
    .ac-k12 { display: flex; gap: 12px; margin: 0 -14px; padding: 2px 14px 10px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 14px; scrollbar-width: none; }
    .ac-k12::-webkit-scrollbar { display: none; }
    .ac-stage { flex: 0 0 72%; min-height: 270px; scroll-snap-align: start; }
    .ac-k12-strip { grid-template-columns: 1fr 1fr; gap: 4px; padding: 10px; }
    .ac-k12-strip li { font-size: 13px; gap: 8px; padding: 4px; }
    .ac-k12-strip img { width: 30px; height: 30px; }
}
