/* ============================================================
   Ateliere IT de vară 2026 — landing page styles
   All rules scoped under .ait-page to avoid site-wide conflicts
   ============================================================ */

.ait-page,
.ait-page *,
.ait-page *::before,
.ait-page *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.ait-page {
    --ait-cream: #F4EFE3;
    --ait-paper: #FBF8F1;
    --ait-ink: #1C1B3A;
    --ait-ink-soft: #46506B;
    --ait-muted: #6B7390;
    --ait-line: #E2DAC6;
    --ait-magenta: #C42C5E;
    --ait-magenta-dk: #9E2049;
    --ait-magenta-soft: #F8DEE7;
    --ait-green: #3B9E7A;
    --ait-green-dk: #2C7B5C;
    --ait-green-soft: #E2F2EB;
    --ait-violet: #6D4FA8;
    --ait-violet-dk: #523A82;
    --ait-violet-soft: #E8E1F3;
    --ait-gold: #E3A12C;

    font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
    background: radial-gradient(ellipse 1400px 800px at 80% 0%, rgba(196, 44, 94, .04), transparent 60%),
                radial-gradient(ellipse 1200px 700px at 0% 60%, rgba(109, 79, 168, .05), transparent 55%),
                var(--ait-cream);
    color: var(--ait-ink);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden;
    scroll-behavior: smooth;
}

.ait-page h1,
.ait-page h2,
.ait-page h3,
.ait-page h4 {
    font-family: 'Bricolage Grotesque', 'Plus Jakarta Sans', sans-serif;
    letter-spacing: -.02em;
    line-height: 1.07;
}

.ait-page a {
    color: inherit;
    text-decoration: none;
}

.ait-page a:hover {
    text-decoration: none;
}

.ait-page img {
    display: block;
    max-width: 100%;
}

.ait-page .ait-wrap {
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

.ait-page .eyebrow {
    font-weight: 700;
    font-size: 12px;
    letter-spacing: .2em;
    text-transform: uppercase;
    color: var(--ait-magenta);
}

/* reveal */
.ait-page .reveal {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity .7s cubic-bezier(.2, .7, .2, 1), transform .7s cubic-bezier(.2, .7, .2, 1);
}

.ait-page .reveal.show {
    opacity: 1;
    transform: none;
}

/* buttons */
.ait-page .ait-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 700;
    font-size: 14.5px;
    padding: 12px 22px;
    border-radius: 40px;
    border: 2px solid transparent;
    cursor: pointer;
    transition: transform .15s, box-shadow .2s, background .2s, color .2s;
    text-decoration: none;
    line-height: 1.2;
}

.ait-page .ait-btn:active { transform: scale(.97); }

.ait-page .ait-btn-primary { background: var(--ait-magenta); color: #fff; }
.ait-page .ait-btn-primary:hover { background: var(--ait-magenta-dk); color: #fff; box-shadow: 0 8px 22px rgba(196, 44, 94, .28); }

.ait-page .ait-btn-ghost { background: transparent; color: var(--ait-ink); border-color: var(--ait-ink); }
.ait-page .ait-btn-ghost:hover { background: var(--ait-ink); color: var(--ait-paper); }

.ait-page .ait-btn-light { background: var(--ait-paper); color: var(--ait-ink); }
.ait-page .ait-btn-light:hover { background: #fff; box-shadow: 0 8px 22px rgba(0, 0, 0, .12); }

/* HERO */
.ait-page .hero { position: relative; height: auto; padding: 70px 0 60px; overflow: hidden; }
.ait-page .hero-ring { position: absolute; top: -240px; right: -220px; width: 600px; height: 600px; border-radius: 50%; border: 70px solid var(--ait-magenta); opacity: .6; z-index: 0; filter: blur(1px); }
.ait-page .hero-disc { position: absolute; top: 130px; right: 90px; width: 84px; height: 84px; border-radius: 50%; background: var(--ait-green); opacity: .75; z-index: 0; box-shadow: 0 20px 50px -10px rgba(59, 158, 122, .45); }
.ait-page .hero-pix { position: absolute; top: 60px; right: 150px; z-index: 0; }
.ait-page .hero-pix span { display: block; width: 22px; height: 22px; float: left; }
.ait-page .hero .ait-wrap { position: relative; z-index: 2; display: grid; grid-template-columns: 1.05fr .95fr; gap: 54px; align-items: center; }
.ait-page .hero h1 { font-weight: 800; font-size: 54px; color: var(--ait-ink); margin: 14px 0 0; }
.ait-page .hero h1 .em { color: var(--ait-magenta); }
.ait-page .hero-age { display: inline-flex; align-items: center; gap: 12px; margin-top: 18px; font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 18px; color: var(--ait-green); }
.ait-page .hero-age::before { content: ""; width: 34px; height: 3px; background: var(--ait-green); border-radius: 2px; }
.ait-page .hero-lead { margin-top: 20px; font-size: 17px; font-weight: 500; color: var(--ait-ink-soft); max-width: 480px; }
.ait-page .hero-cta { display: flex; gap: 14px; margin-top: 30px; flex-wrap: wrap; }
.ait-page .hero-photos { position: relative; }
.ait-page .hero-photo-main { position: relative; border-radius: 24px; overflow: hidden; box-shadow: 0 30px 60px -20px rgba(28, 27, 58, .32), 0 10px 25px -10px rgba(28, 27, 58, .12); isolation: isolate; background: linear-gradient(135deg, var(--ait-magenta-soft), var(--ait-violet-soft)); }
.ait-page .hero-photo-main img { width: 100%; height: 420px; object-fit: cover; display: block; }
.ait-page .hero-photo-main::after { content: none; }
.ait-page .hero-photo-main::before { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, transparent 60%, rgba(196, 44, 94, .06) 100%); pointer-events: none; z-index: 1; }
.ait-page .hero-badge { position: absolute; left: 24px; bottom: 24px; z-index: 3; background: rgba(251, 248, 241, .95); backdrop-filter: blur(8px); border-radius: 14px; padding: 14px 20px; box-shadow: 0 12px 30px rgba(28, 27, 58, .18); display: flex; align-items: center; gap: 14px; }
.ait-page .hero-badge .n { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 26px; color: var(--ait-magenta); line-height: 1; }
.ait-page .hero-badge .t { font-size: 12px; font-weight: 600; color: var(--ait-ink-soft); line-height: 1.35; border-left: 1.5px solid var(--ait-line); padding-left: 12px; }

/* KEY FACTS */
.ait-page .kfacts { position: relative; z-index: 2; margin-top: 0; }
.ait-page .kfacts .ait-wrap { position: relative; background: linear-gradient(135deg, #1F1E40 0%, #1C1B3A 45%, #231C42 100%); border-radius: 28px; padding: 38px 44px; color: var(--ait-paper); overflow: hidden; box-shadow: 0 6px 14px rgba(28, 27, 58, .10), 0 40px 80px -30px rgba(28, 27, 58, .45); display: grid; grid-template-columns: auto 1fr auto; gap: 42px; align-items: center; }
.ait-page .kfacts::before { content: ""; position: absolute; top: -80px; right: -60px; width: 280px; height: 280px; border-radius: 50%; border: 30px solid var(--ait-magenta); opacity: .20; pointer-events: none; }
.ait-page .kfacts::after { content: ""; position: absolute; bottom: -90px; left: 38%; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, var(--ait-violet) 0%, transparent 70%); opacity: .45; pointer-events: none; }
.ait-page .kf-start { display: flex; align-items: center; gap: 18px; position: relative; z-index: 2; }
.ait-page .kf-start .kf-day { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 62px; color: var(--ait-magenta); line-height: 1; text-shadow: 0 4px 20px rgba(196, 44, 94, .4); }
.ait-page .kf-start .kf-day-info { display: flex; flex-direction: column; gap: 3px; }
.ait-page .kf-start .kf-month { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 20px; color: var(--ait-paper); text-transform: uppercase; letter-spacing: .04em; line-height: 1; }
.ait-page .kf-start .kf-year { font-size: 12px; font-weight: 600; color: #8A88A8; letter-spacing: .18em; text-transform: uppercase; }
.ait-page .kf-start .kf-eyebrow { font-size: 10.5px; font-weight: 700; color: #F0A8C0; letter-spacing: .22em; text-transform: uppercase; margin-top: 6px; }
.ait-page .kf-mid { position: relative; z-index: 2; display: flex; gap: 30px; padding: 0 30px; border-left: 1px solid rgba(255, 255, 255, .10); }
.ait-page .kf-detail { display: flex; flex-direction: column; gap: 6px; }
.ait-page .kf-detail .lbl { font-size: 10.5px; font-weight: 700; color: #8A88A8; letter-spacing: .18em; text-transform: uppercase; }
.ait-page .kf-detail .val { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 15.5px; color: var(--ait-paper); line-height: 1.35; }
.ait-page .kf-detail .val .accent { color: var(--ait-gold); }
.ait-page .kf-detail .sub { font-size: 11.5px; color: #AAA8C4; font-weight: 500; }
.ait-page .kf-cta { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: flex-end; gap: 12px; }
.ait-page .kf-cta .seats { font-size: 11.5px; font-weight: 600; color: #F0A8C0; display: flex; align-items: center; gap: 7px; }
.ait-page .kf-cta .seats::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #F0A8C0; box-shadow: 0 0 0 4px rgba(240, 168, 192, .18); animation: ait-pulse 1.8s infinite; }
@keyframes ait-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .5; } }
.ait-page .kf-cta .ait-btn { background: #fff; color: var(--ait-ink); font-weight: 700; }
.ait-page .kf-cta .ait-btn:hover { background: var(--ait-magenta); color: #fff; box-shadow: 0 10px 26px rgba(196, 44, 94, .40); }

/* SECTIONS */
.ait-page .ait-section { padding: 42px 0; }
.ait-page .ait-section-head { max-width: 680px; }
.ait-page .ait-section-head h2 { font-weight: 800; font-size: 36px; color: var(--ait-ink); margin-top: 10px; }
.ait-page .ait-section-head p { margin-top: 14px; font-size: 16px; color: var(--ait-ink-soft); font-weight: 500; }

/* ATELIERE */
.ait-page #ateliere { background: transparent; }
.ait-page .acards { display: flex; flex-direction: column; gap: 20px; margin-top: 42px; }
.ait-page .acard { display: flex; border-radius: 24px; overflow: hidden; background: #fff; box-shadow: 0 1px 2px rgba(28, 27, 58, .04), 0 14px 40px -16px rgba(28, 27, 58, .18), 0 2px 6px -2px rgba(28, 27, 58, .06); transition: transform .25s cubic-bezier(.2, .7, .2, 1), box-shadow .25s; }
.ait-page .acard:hover { transform: translateY(-6px); box-shadow: 0 4px 8px rgba(28, 27, 58, .04), 0 30px 60px -18px rgba(28, 27, 58, .28), 0 4px 12px -4px rgba(28, 27, 58, .10); }
.ait-page .acard-side { width: 220px; flex-shrink: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 30px 16px; position: relative; overflow: hidden; isolation: isolate; }
.ait-page .acard-side .aphoto { position: absolute; inset: 0; background-size: cover; background-position: center; z-index: -2; }
.ait-page .acard-side .afade { position: absolute; inset: 0; z-index: -1; }
.ait-page .acard-side .anum,
.ait-page .acard-side .aic,
.ait-page .acard-side .aage { position: relative; z-index: 1; }
.ait-page .acard-side .anum { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 64px; line-height: .8; text-shadow: 0 4px 16px rgba(0, 0, 0, .25); }
.ait-page .acard-side .aic { width: 46px; height: 46px; filter: drop-shadow(0 3px 8px rgba(0, 0, 0, .25)); }
.ait-page .acard-side .aage { font-weight: 700; font-size: 12.5px; padding: 6px 14px; border-radius: 30px; backdrop-filter: blur(8px); box-shadow: 0 4px 12px rgba(0, 0, 0, .18); }
.ait-page .acard-body { flex: 1; padding: 30px 34px; }
.ait-page .acard-kicker { font-weight: 700; font-size: 11.5px; letter-spacing: .16em; text-transform: uppercase; }
.ait-page .acard-body h3 { font-weight: 700; font-size: 24px; color: var(--ait-ink); margin: 5px 0 0; }
.ait-page .kidline { font-size: 16px; font-weight: 500; color: #2C3450; margin-top: 14px; line-height: 1.55; }
.ait-page .kidline .qm { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; }
.ait-page .chips { display: flex; gap: 10px; margin-top: 18px; flex-wrap: wrap; }
.ait-page .chip { font-weight: 600; font-size: 12.5px; padding: 8px 14px; border-radius: 30px; }

/* combine banner */
.ait-page .combina { margin-top: 30px; background: var(--ait-ink); border-radius: 24px; padding: 32px 40px; display: flex; align-items: center; gap: 36px; box-shadow: 0 3px 8px rgba(28, 27, 58, .08), 0 30px 60px -22px rgba(28, 27, 58, .30); }
.ait-page .combina-steps { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.ait-page .cstep { width: 50px; height: 50px; border-radius: 13px; display: flex; align-items: center; justify-content: center; font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 21px; }
.ait-page .carrow { color: #5A5A82; font-size: 22px; font-weight: 700; }
.ait-page .combina-txt h4 { font-weight: 700; font-size: 21px; color: var(--ait-paper); }
.ait-page .combina-txt p { font-size: 14.5px; color: #AAA8C4; margin-top: 7px; font-weight: 400; max-width: 560px; }

/* FORMAT */
.ait-page .fmt-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 42px; }
.ait-page .fmt-item { background: #fff; border-radius: 18px; padding: 26px 24px; box-shadow: 0 1px 2px rgba(28, 27, 58, .04), 0 10px 30px -14px rgba(28, 27, 58, .14); transition: transform .22s cubic-bezier(.2, .7, .2, 1), box-shadow .22s; }
.ait-page .fmt-item:hover { transform: translateY(-4px); box-shadow: 0 3px 6px rgba(28, 27, 58, .05), 0 22px 44px -16px rgba(28, 27, 58, .22); }
.ait-page .fmt-item .ic { width: 34px; height: 34px; color: var(--ait-ink); margin-bottom: 14px; }
.ait-page .fmt-item .k { font-weight: 700; font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--ait-magenta); }
.ait-page .fmt-item .v { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 20px; color: var(--ait-ink); margin-top: 6px; }
.ait-page .fmt-item .s { font-size: 13.5px; color: var(--ait-muted); margin-top: 4px; }

/* PRICING */
.ait-page #preturi { background: transparent; }
.ait-page .prices { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 42px; }
.ait-page .price { border-radius: 24px; padding: 40px 38px; position: relative; overflow: hidden; box-shadow: 0 2px 6px rgba(28, 27, 58, .06), 0 30px 60px -22px rgba(28, 27, 58, .32); transition: transform .25s, box-shadow .25s; }
.ait-page .price:hover { transform: translateY(-4px); box-shadow: 0 4px 10px rgba(28, 27, 58, .08), 0 40px 80px -24px rgba(28, 27, 58, .40); }
.ait-page .price.online { background: var(--ait-magenta); }
.ait-page .price.fizic { background: var(--ait-ink); }
.ait-page .price .pk { font-weight: 700; font-size: 12.5px; letter-spacing: .14em; text-transform: uppercase; }
.ait-page .price.online .pk { color: #F0A8C0; }
.ait-page .price.fizic .pk { color: #8A88A8; }
.ait-page .price h3 { font-weight: 800; font-size: 30px; margin: 8px 0 2px; }
.ait-page .price.online h3 { color: #fff; }
.ait-page .price.fizic h3 { color: var(--ait-paper); }
.ait-page .price .desc { font-size: 14.5px; line-height: 1.55; min-height: 66px; }
.ait-page .price.online .desc { color: #F6D9E2; }
.ait-page .price.fizic .desc { color: #AAA8C4; }
.ait-page .price .amount { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 54px; line-height: 1; margin-top: 14px; }
.ait-page .price.online .amount { color: #fff; }
.ait-page .price.fizic .amount { color: var(--ait-gold); }
.ait-page .price .amount .cur { font-size: 22px; font-weight: 700; }
.ait-page .price .per { font-size: 13px; margin-top: 8px; font-weight: 500; }
.ait-page .price.online .per { color: #F6D9E2; }
.ait-page .price.fizic .per { color: #8A88A8; }
.ait-page .price .pbtn { margin-top: 24px; }
.ait-page .price.online .pbtn { background: #fff; color: var(--ait-magenta-dk); }
.ait-page .price.online .pbtn:hover { background: var(--ait-ink); color: #fff; }
.ait-page .price.fizic .pbtn { background: var(--ait-gold); color: #3A2A06; }
.ait-page .price.fizic .pbtn:hover { background: #fff; color: var(--ait-ink); }

/* includes */
.ait-page .includes { margin-top: 40px; }
.ait-page .includes h4 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 21px; color: var(--ait-ink); margin-bottom: 22px; }
.ait-page .inc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.ait-page .inc-item { display: flex; gap: 14px; align-items: flex-start; padding: 18px 20px; background: #fff; border-radius: 14px; box-shadow: 0 1px 2px rgba(28, 27, 58, .04), 0 8px 24px -12px rgba(28, 27, 58, .14); transition: transform .2s, box-shadow .2s; }
.ait-page .inc-item:hover { transform: translateY(-2px); box-shadow: 0 2px 4px rgba(28, 27, 58, .05), 0 14px 32px -12px rgba(28, 27, 58, .22); }
.ait-page .inc-item .chk { width: 28px; height: 28px; border-radius: 50%; background: var(--ait-green); flex-shrink: 0; display: flex; align-items: center; justify-content: center; margin-top: 0; box-shadow: 0 4px 10px -2px rgba(59, 158, 122, .45); }
.ait-page .inc-item .txt { font-size: 14.5px; font-weight: 500; color: #2F3A55; line-height: 1.45; }

/* ONLINE BENEFITS */
.ait-page #online-avantaje { background: transparent; }
.ait-page .ob-head { max-width: 760px; margin: 0 auto; text-align: center; }
.ait-page .ob-head h2 { font-weight: 800; font-size: 34px; color: var(--ait-ink); margin-top: 10px; }
.ait-page .ob-head h2 .accent { color: var(--ait-magenta); }
.ait-page .ob-head p { margin-top: 14px; font-size: 15.5px; color: var(--ait-ink-soft); font-weight: 500; }
.ait-page .ob-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 48px; }
.ait-page .ob-card { background: #fff; border-radius: 18px; padding: 26px 22px; text-align: center; box-shadow: 0 1px 2px rgba(28, 27, 58, .04), 0 10px 30px -14px rgba(28, 27, 58, .14); transition: transform .2s, box-shadow .2s; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.ait-page .ob-card:hover { transform: translateY(-4px); box-shadow: 0 2px 4px rgba(28, 27, 58, .05), 0 18px 40px -14px rgba(28, 27, 58, .22); }
.ait-page .ob-icon { width: 56px; height: 56px; border-radius: 16px; display: flex; align-items: center; justify-content: center; margin-bottom: 6px; box-shadow: 0 8px 18px -6px rgba(0, 0, 0, .18); }
.ait-page .ob-icon svg { width: 28px; height: 28px; color: #fff; }
.ait-page .ob-card h4 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 17px; color: var(--ait-ink); letter-spacing: -.01em; }
.ait-page .ob-card p { font-size: 13.5px; line-height: 1.5; color: var(--ait-ink-soft); font-weight: 500; margin: 0; }
.ait-page .ob-cta { margin-top: 38px; display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; }
.ait-page .ob-note { margin-top: 14px; text-align: center; font-size: 12.5px; color: var(--ait-muted); }

/* TESTIMONIALS */
.ait-page #testimoniale { background: transparent; padding-top: 60px; }
.ait-page .tgrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 42px; }
@media (min-width: 1081px) {
    .ait-page .tgrid .tcard:nth-child(7):nth-last-child(1) { grid-column: 2; }
}
.ait-page .tcard { background: #fff; border-radius: 22px; padding: 28px 26px; position: relative; box-shadow: 0 2px 4px rgba(28, 27, 58, .04), 0 14px 40px -18px rgba(28, 27, 58, .18); transition: transform .25s, box-shadow .25s; display: flex; flex-direction: column; gap: 18px; }
.ait-page .tcard:hover { transform: translateY(-4px); box-shadow: 0 4px 8px rgba(28, 27, 58, .05), 0 24px 56px -20px rgba(28, 27, 58, .25); }
.ait-page .tcard::before { content: "\201E"; position: absolute; top: 14px; left: 24px; font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 88px; color: var(--ait-magenta); opacity: .14; line-height: 1; pointer-events: none; }
.ait-page .tcard.t-magenta::before { color: var(--ait-magenta); }
.ait-page .tcard.t-green::before { color: var(--ait-green); }
.ait-page .tcard.t-violet::before { color: var(--ait-violet); }
.ait-page .tquote { font-size: 14.5px; line-height: 1.6; color: #2C3450; font-weight: 500; position: relative; z-index: 1; padding-top: 4px; }
.ait-page .tquote em { font-style: normal; font-weight: 600; color: var(--ait-ink); }
.ait-page .tfooter { display: flex; align-items: center; gap: 14px; padding-top: 18px; border-top: 1px solid rgba(28, 27, 58, .07); margin-top: auto; }
.ait-page .tavatar { width: 46px; height: 46px; border-radius: 50%; flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 18px; color: #fff; box-shadow: 0 4px 12px rgba(0, 0, 0, .10); }
.ait-page .tname { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 15px; color: var(--ait-ink); }
.ait-page .tcourse { font-size: 12px; color: var(--ait-muted); margin-top: 2px; font-weight: 500; }
.ait-page .tcourse .tag { display: inline-block; padding: 2px 8px; border-radius: 30px; font-weight: 700; font-size: 10.5px; letter-spacing: .04em; margin-right: 6px; vertical-align: middle; }
.ait-page .tag-camp { background: var(--ait-magenta-soft); color: #8E1F44; }
.ait-page .tag-java { background: var(--ait-violet-soft); color: #4A3578; }
.ait-page .tstars { margin-left: auto; display: flex; gap: 2px; color: var(--ait-gold); font-size: 14px; flex-shrink: 0; }

/* FORM */
.ait-page #inscriere { background: var(--ait-ink); color: var(--ait-paper); position: relative; overflow: hidden; padding-top: 70px; }
.ait-page .form-ring { position: absolute; bottom: -260px; left: -200px; width: 520px; height: 520px; border-radius: 50%; border: 60px solid var(--ait-violet); opacity: .4; }
.ait-page #inscriere .ait-wrap { position: relative; z-index: 2; display: grid; grid-template-columns: .85fr 1.15fr; gap: 54px; align-items: start; }
.ait-page .form-intro .eyebrow { color: #F0A8C0; }
.ait-page .form-intro h2 { font-weight: 800; font-size: 34px; color: var(--ait-paper); margin-top: 10px; }
.ait-page .form-intro p { margin-top: 16px; font-size: 15.5px; color: #AAA8C4; }
.ait-page .form-points { margin-top: 24px; display: flex; flex-direction: column; gap: 12px; }
.ait-page .form-point { display: flex; gap: 12px; align-items: flex-start; font-size: 14.5px; color: #CFCDE0; font-weight: 500; }
.ait-page .form-point .d { width: 20px; height: 20px; border-radius: 50%; background: var(--ait-green); flex-shrink: 0; display: flex; align-items: center; justify-content: center; margin-top: 1px; }
.ait-page .form-contact { margin-top: 28px; padding-top: 22px; border-top: 1px solid #33335A; font-size: 14px; color: #AAA8C4; }
.ait-page .form-contact a { color: var(--ait-paper); font-weight: 600; }
.ait-page .form-contact .ic { color: var(--ait-magenta); margin-right: 8px; }

.ait-page .form-card { background: var(--ait-paper); border-radius: 24px; padding: 36px 36px; color: var(--ait-ink); box-shadow: 0 4px 12px rgba(0, 0, 0, .10), 0 30px 70px -20px rgba(0, 0, 0, .45); }
.ait-page .form-card h3 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 21px; }
.ait-page .form-card .sub { font-size: 13.5px; color: var(--ait-muted); margin-top: 5px; margin-bottom: 20px; }
.ait-page .fgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ait-page .field { display: flex; flex-direction: column; gap: 6px; }
.ait-page .field.full { grid-column: 1 / -1; }
.ait-page .field label { font-size: 12.5px; font-weight: 700; color: var(--ait-ink); }
.ait-page .field label .req { color: var(--ait-magenta); }
.ait-page .field input,
.ait-page .field select,
.ait-page .field textarea { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 14.5px; padding: 12px 14px; border: 1px solid rgba(28, 27, 58, .10); border-radius: 11px; background: #fff; color: var(--ait-ink); transition: border-color .15s, box-shadow .15s; width: 100%; box-shadow: 0 1px 2px rgba(28, 27, 58, .04); height: auto; }
.ait-page .field input:focus,
.ait-page .field select:focus,
.ait-page .field textarea:focus { outline: none; border-color: var(--ait-magenta); box-shadow: 0 0 0 4px rgba(196, 44, 94, .10), 0 4px 12px -4px rgba(196, 44, 94, .18); }
.ait-page .field textarea { resize: vertical; min-height: 74px; }
.ait-page .field .err { font-size: 11.5px; color: var(--ait-magenta); font-weight: 600; display: none; }
.ait-page .field.invalid input,
.ait-page .field.invalid select { border-color: var(--ait-magenta); }
.ait-page .field.invalid .err { display: block; }
.ait-page .pickgroup { display: flex; flex-direction: column; gap: 9px; }
.ait-page .pick { display: flex; align-items: center; gap: 10px; padding: 13px 15px; border: 1px solid rgba(28, 27, 58, .08); border-radius: 12px; background: #fff; cursor: pointer; box-shadow: 0 1px 2px rgba(28, 27, 58, .04); transition: border-color .15s, background .15s, box-shadow .15s, transform .15s; margin: 0; }
.ait-page .pick:hover { border-color: rgba(196, 44, 94, .30); box-shadow: 0 6px 18px -6px rgba(196, 44, 94, .18); transform: translateY(-1px); }
.ait-page .pick input { width: 17px; height: 17px; accent-color: var(--ait-magenta); cursor: pointer; flex-shrink: 0; margin: 0; }
.ait-page .pick .pl { font-size: 13.5px; font-weight: 600; color: var(--ait-ink); }
.ait-page .pick .pl span { display: block; font-size: 11.5px; font-weight: 500; color: var(--ait-muted); }
.ait-page .pick.checked { border-color: var(--ait-magenta); background: var(--ait-magenta-soft); }
.ait-page .radio-row { display: flex; gap: 10px; flex-wrap: wrap; }
.ait-page .radio-row .pick { flex: 1; min-width: 120px; }
.ait-page .consent { display: flex; gap: 9px; align-items: flex-start; margin-top: 16px; font-size: 12px; color: var(--ait-muted); }
.ait-page .consent input { width: 16px; height: 16px; accent-color: var(--ait-magenta); margin-top: 2px; flex-shrink: 0; }
.ait-page .consent a { color: var(--ait-magenta); font-weight: 600; }
.ait-page .form-submit { width: 100%; justify-content: center; margin-top: 18px; font-size: 15.5px; padding: 14px; }

/* MULTI-STEP FORM */
.ait-page .step-dots { display: flex; align-items: center; justify-content: center; gap: 8px; margin-bottom: 22px; }
.ait-page .step-dot { width: 32px; height: 32px; border-radius: 50%; background: rgba(28, 27, 58, .08); display: flex; align-items: center; justify-content: center; font-family: 'Bricolage Grotesque', sans-serif; font-size: 13px; font-weight: 800; color: var(--ait-muted); transition: all .25s; }
.ait-page .step-dot.active { background: var(--ait-magenta); color: #fff; box-shadow: 0 4px 14px rgba(196, 44, 94, .35); }
.ait-page .step-dot.done { background: var(--ait-green); color: #fff; }
.ait-page .step-line { width: 32px; height: 2px; background: rgba(28, 27, 58, .08); border-radius: 2px; }

.ait-page .step-summary { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; justify-content: center; }
.ait-page .sum-pill { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 700; padding: 5px 12px; border-radius: 30px; background: var(--ait-magenta-soft); color: var(--ait-magenta-dk); letter-spacing: .02em; }
.ait-page .sum-pill--violet { background: var(--ait-violet-soft); color: var(--ait-violet-dk); }

.ait-page .step-err { font-size: 12.5px; color: var(--ait-magenta); font-weight: 600; margin-top: 12px; display: none; }
.ait-page .step-err.show { display: block; }
.ait-page .step-next { width: 100%; justify-content: center; margin-top: 20px; font-size: 15px; padding: 14px; }

.ait-page .step-nav { display: flex; gap: 12px; margin-top: 18px; align-items: stretch; }
.ait-page .step-nav .step-next, .ait-page .step-nav .form-submit { flex: 1; margin-top: 0; }
.ait-page .step-back { background: transparent; border: 1px solid rgba(28, 27, 58, .15); color: var(--ait-ink-soft); padding: 12px 18px; border-radius: 11px; font-weight: 600; cursor: pointer; font-size: 13.5px; transition: background .15s, border-color .15s; font-family: 'Plus Jakarta Sans', sans-serif; }
.ait-page .step-back:hover { background: rgba(28, 27, 58, .04); border-color: rgba(28, 27, 58, .25); }

/* Atelier picker cards */
.ait-page .acard-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 6px; }
.ait-page .acard-pick { display: block; margin: 0; cursor: pointer; position: relative; }
.ait-page .acard-pick input { position: absolute; opacity: 0; pointer-events: none; }
.ait-page .apick-card { position: relative; border-radius: 14px; overflow: hidden; background: #fff; border: 2px solid transparent; box-shadow: 0 4px 14px rgba(28, 27, 58, .07); transition: transform .2s, box-shadow .2s, border-color .2s; height: 100%; display: flex; flex-direction: column; }
.ait-page .apick-card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px -6px rgba(28, 27, 58, .16); }
.ait-page .acard-pick input:checked + .apick-card { border-color: var(--ait-magenta); box-shadow: 0 8px 24px -6px rgba(196, 44, 94, .32); }
.ait-page .apick-photo { position: relative; width: 100%; height: 110px; background-size: cover; background-position: center; }
.ait-page .apick-fade { position: absolute; inset: 0; }
.ait-page .apick-num { position: absolute; top: 6px; left: 10px; font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 28px; color: rgba(255, 255, 255, .95); text-shadow: 0 2px 10px rgba(0, 0, 0, .35); line-height: 1; }
.ait-page .apick-body { padding: 12px 14px 14px; }
.ait-page .apick-kicker { font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.ait-page .apick-body h4 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 14.5px; color: var(--ait-ink); margin: 3px 0 6px; line-height: 1.25; }
.ait-page .apick-meta { font-size: 11.5px; color: var(--ait-muted); font-weight: 600; }
.ait-page .apick-check { position: absolute; top: 8px; right: 8px; width: 26px; height: 26px; border-radius: 50%; background: var(--ait-magenta); display: flex; align-items: center; justify-content: center; opacity: 0; transform: scale(.7); transition: opacity .2s, transform .2s; box-shadow: 0 3px 10px rgba(196, 44, 94, .35); }
.ait-page .acard-pick input:checked + .apick-card .apick-check { opacity: 1; transform: scale(1); }
.ait-page .acard-pick--disabled { opacity: .45; cursor: not-allowed; pointer-events: none; }
.ait-page .acard-pick--disabled .apick-card { filter: grayscale(.5); }

.ait-page .step-back-row { margin-bottom: 16px; }
.ait-page .ait-no-courses { padding: 22px 24px; background: var(--ait-cream); border-radius: 12px; text-align: center; color: var(--ait-ink-soft); font-size: 14px; line-height: 1.6; }
.ait-page .ait-no-courses a { color: var(--ait-magenta); font-weight: 700; }
.ait-page .atelier-form { display: none; }

/* Format picker cards */
.ait-page .fcard-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 6px; }
.ait-page .fcard-pick { display: block; margin: 0; cursor: pointer; position: relative; }
.ait-page .fcard-pick input { position: absolute; opacity: 0; pointer-events: none; }
.ait-page .fpick-card { position: relative; border-radius: 14px; padding: 22px 14px 20px; background: #fff; border: 2px solid transparent; text-align: center; box-shadow: 0 4px 14px rgba(28, 27, 58, .07); transition: transform .2s, box-shadow .2s, border-color .2s, background .2s; height: 100%; }
.ait-page .fpick-card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px -6px rgba(28, 27, 58, .16); }
.ait-page .fcard-pick input:checked + .fpick-card { border-color: var(--ait-magenta); background: #FFF6F9; box-shadow: 0 8px 24px -6px rgba(196, 44, 94, .25); }
.ait-page .fpick-icon { width: 48px; height: 48px; border-radius: 12px; margin: 0 auto 12px; display: flex; align-items: center; justify-content: center; color: #fff; }
.ait-page .f-online .fpick-icon { background: linear-gradient(135deg, #4F8BFF, #6366F1); }
.ait-page .f-chisinau .fpick-icon { background: linear-gradient(135deg, var(--ait-magenta), var(--ait-magenta-dk)); }
.ait-page .f-balti .fpick-icon { background: linear-gradient(135deg, var(--ait-gold), #9A6410); }
.ait-page .fpick-card h4 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 14.5px; color: var(--ait-ink); margin: 0 0 4px; }
.ait-page .fpick-card > p { font-size: 11.5px; color: var(--ait-muted); margin: 0 0 12px; font-weight: 500; }
.ait-page .fpick-price { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 18px; color: var(--ait-ink); }
.ait-page .fpick-price span { font-size: 10.5px; font-weight: 600; color: var(--ait-muted); display: block; margin-top: 2px; }
.ait-page .fpick-card .apick-check { position: absolute; top: 8px; right: 8px; width: 26px; height: 26px; border-radius: 50%; background: var(--ait-magenta); display: flex; align-items: center; justify-content: center; opacity: 0; transform: scale(.7); transition: opacity .2s, transform .2s; box-shadow: 0 3px 10px rgba(196, 44, 94, .35); }
.ait-page .fcard-pick input:checked + .fpick-card .apick-check { opacity: 1; transform: scale(1); }
.ait-page .fcard-pick--disabled { opacity: .45; cursor: not-allowed; pointer-events: none; position: relative; }
.ait-page .fcard-pick--disabled .fpick-card { filter: grayscale(.5); }
.ait-page .fcard-pick--disabled .fpick-card::after { content: 'Indisponibil'; position: absolute; top: 8px; left: 8px; font-size: 10px; font-weight: 700; letter-spacing: .04em; color: #fff; background: var(--ait-ink); padding: 3px 8px; border-radius: 30px; text-transform: uppercase; }

/* Bundle promo banner above atelier picker */
.ait-page .bundle-promo { display: flex; align-items: center; gap: 10px; padding: 10px 14px; margin: 0 0 14px; background: linear-gradient(135deg, #FFF6F9 0%, #FBF1F5 100%); border: 1px solid var(--ait-magenta-soft); border-radius: 12px; font-size: 13px; color: var(--ait-ink); flex-wrap: wrap; }
.ait-page .bundle-promo > div { display: inline-flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; }
.ait-page .bundle-promo strong { font-weight: 700; color: var(--ait-magenta-dk); margin-right: 4px; }
.ait-page .bundle-promo b { font-weight: 700; color: var(--ait-magenta); }
.ait-page .bundle-promo-icon { width: 28px; height: 28px; flex: 0 0 auto; border-radius: 50%; background: var(--ait-magenta); color: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; }

/* Bundle counter below atelier picker */
.ait-page .bundle-counter { display: flex; align-items: center; justify-content: space-between; margin: 14px 0 6px; padding: 10px 14px; border-radius: 10px; background: #F5F4FA; font-size: 13px; font-weight: 600; color: var(--ait-ink); gap: 10px; flex-wrap: wrap; }
.ait-page .bundle-counter-discount { display: inline-flex; padding: 4px 10px; border-radius: 30px; background: var(--ait-magenta); color: #fff; font-weight: 700; font-size: 12px; }

/* Order summary discount row */
.ait-page .os-discount { display: flex; align-items: center; justify-content: space-between; margin-top: -4px; padding-bottom: 12px; font-size: 13px; font-weight: 600; color: var(--ait-magenta-dk); }
.ait-page .os-discount-amount { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; }

/* Order summary (step 3) */
.ait-page .order-summary { background: linear-gradient(135deg, #FFF6F9 0%, #FBF1F5 100%); border: 1px solid var(--ait-magenta-soft); border-radius: 14px; padding: 18px 20px; margin: 6px 0 22px; }
.ait-page .os-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.ait-page .os-title { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 13.5px; color: var(--ait-ink); text-transform: uppercase; letter-spacing: .05em; }
.ait-page .os-edit { font-size: 12px; font-weight: 700; color: var(--ait-magenta); cursor: pointer; padding: 3px 10px; border-radius: 30px; background: rgba(196, 44, 94, .08); transition: background .15s; }
.ait-page .os-edit:hover { background: rgba(196, 44, 94, .16); }
.ait-page .os-lines { display: flex; flex-direction: column; gap: 10px; padding-bottom: 12px; border-bottom: 1px dashed rgba(196, 44, 94, .25); margin-bottom: 12px; }
.ait-page .os-line { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ait-page .os-l { display: flex; align-items: center; gap: 11px; min-width: 0; }
.ait-page .os-num { flex-shrink: 0; width: 30px; height: 30px; border-radius: 8px; background: var(--ait-magenta); color: #fff; font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 12.5px; display: flex; align-items: center; justify-content: center; }
.ait-page .os-n { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 13.5px; color: var(--ait-ink); line-height: 1.25; }
.ait-page .os-f { font-size: 11.5px; color: var(--ait-muted); margin-top: 2px; font-weight: 500; }
.ait-page .os-p { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 13.5px; color: var(--ait-ink); white-space: nowrap; flex-shrink: 0; }
.ait-page .os-total { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.ait-page .os-label { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 14px; color: var(--ait-ink); text-transform: uppercase; letter-spacing: .04em; }
.ait-page .os-amount { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 22px; color: var(--ait-magenta); }
.ait-page .os-note { font-size: 11.5px; color: var(--ait-muted); margin: 10px 0 0; line-height: 1.5; }
.ait-page .form-note { font-size: 11.5px; color: var(--ait-muted); text-align: center; margin-top: 12px; }
.ait-page .form-success { display: none; text-align: center; padding: 30px 10px; }
.ait-page .form-success .ok { width: 64px; height: 64px; border-radius: 50%; background: var(--ait-green); display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; }
.ait-page .form-success h3 { font-size: 23px; }
.ait-page .form-success p { font-size: 14.5px; color: var(--ait-muted); margin-top: 8px; }

/* WHY ATELIERE */
.ait-page .ait-why { background: var(--ait-cream); }
.ait-page .ait-why-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; }
.ait-page .ait-why-left .eyebrow { margin-bottom: 14px; }
.ait-page .ait-why-left h2 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 36px; color: var(--ait-ink); line-height: 1.2; margin-bottom: 16px; }
.ait-page .ait-why-left .ait-why-lead { color: var(--ait-ink-soft); font-size: 16px; line-height: 1.65; margin-bottom: 28px; font-weight: 500; }
.ait-page .ait-why-benefit { display: flex; gap: 16px; margin-bottom: 22px; }
.ait-page .ait-why-benefit .bicon { flex-shrink: 0; width: 44px; height: 44px; border-radius: 12px; display: flex; align-items: center; justify-content: center; }
.ait-page .ait-why-benefit .bicon svg { width: 22px; height: 22px; }
.ait-page .ait-why-benefit h4 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 17px; color: var(--ait-ink); margin: 2px 0 5px; }
.ait-page .ait-why-benefit p { font-size: 14.5px; color: var(--ait-ink-soft); line-height: 1.55; margin: 0; }
.ait-page .ait-why-right { position: relative; }
.ait-page .ait-why-photo { border-radius: 20px; overflow: hidden; box-shadow: 0 24px 50px -18px rgba(28, 27, 58, .30), 0 8px 22px -8px rgba(28, 27, 58, .12); margin-bottom: 22px; }
.ait-page .ait-why-photo img { width: 100%; height: 360px; object-fit: cover; display: block; }
.ait-page .ait-why-quote { padding: 22px 26px; background: #fff; border-left: 4px solid var(--ait-magenta); border-radius: 0 14px 14px 0; box-shadow: 0 6px 22px -10px rgba(28, 27, 58, .12); }
.ait-page .ait-why-quote p { font-size: 15.5px; font-style: italic; color: var(--ait-ink); line-height: 1.6; margin: 0 0 8px; }
.ait-page .ait-why-quote span { font-size: 13px; font-weight: 600; color: var(--ait-magenta); }

/* LOCATII / MAP */
.ait-page .ait-loc { background: #fff; overflow: hidden; }
.ait-page .ait-loc-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.ait-page .ait-loc-left .eyebrow { margin-bottom: 14px; }
.ait-page .ait-loc-left h2 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 36px; color: var(--ait-ink); line-height: 1.2; margin-bottom: 16px; }
.ait-page .ait-loc-left .ait-loc-lead { color: var(--ait-ink-soft); font-size: 16px; line-height: 1.65; margin-bottom: 30px; font-weight: 500; }
.ait-page .ait-loc-cards { display: flex; flex-direction: column; gap: 14px; margin-bottom: 26px; }
.ait-page .ait-loc-card { display: flex; align-items: flex-start; gap: 16px; padding: 18px 20px; background: var(--ait-cream); border-radius: 14px; border: 1px solid rgba(28, 27, 58, .04); transition: transform .25s, box-shadow .25s; }
.ait-page .ait-loc-card:hover { transform: translateX(6px); box-shadow: 0 8px 22px -8px rgba(28, 27, 58, .12); }
.ait-page .ait-loc-card .loc-icon { flex-shrink: 0; width: 44px; height: 44px; border-radius: 12px; display: flex; align-items: center; justify-content: center; color: #fff; }
.ait-page .ait-loc-card .loc-chisinau { background: linear-gradient(135deg, var(--ait-magenta), var(--ait-magenta-dk)); }
.ait-page .ait-loc-card .loc-balti { background: linear-gradient(135deg, var(--ait-gold), #9A6410); }
.ait-page .ait-loc-card .loc-online { background: linear-gradient(135deg, #4F8BFF, #6366F1); }
.ait-page .ait-loc-card h4 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 16px; color: var(--ait-ink); margin: 0 0 4px; }
.ait-page .ait-loc-card p { font-size: 13.5px; color: var(--ait-ink-soft); line-height: 1.55; margin: 0; }
.ait-page .ait-loc-quote { padding: 18px 22px; background: rgba(196, 44, 94, .05); border-left: 3px solid var(--ait-magenta); border-radius: 0 12px 12px 0; }
.ait-page .ait-loc-quote p { font-size: 14.5px; font-style: italic; color: var(--ait-ink); line-height: 1.6; margin: 0 0 6px; }
.ait-page .ait-loc-quote span { font-size: 12.5px; font-weight: 600; color: var(--ait-magenta); }

.ait-page .ait-map-container { position: relative; display: flex; justify-content: center; align-items: center; }
.ait-page .ait-moldova-map { width: 100%; max-width: 320px; height: auto; }
.ait-page .ait-map-country { fill: #F8DEE7; stroke: #C4749A; stroke-width: 1.8; stroke-linejoin: round; }
.ait-page .ait-city-region { fill: #C42C5E; opacity: 0.22; }
.ait-page .ait-city-connect { stroke: #C42C5E; stroke-width: 1.8; stroke-dasharray: 5, 5; stroke-opacity: 0.4; }

.ait-page .ait-pin-pulse-ring { fill: none; stroke: #C42C5E; stroke-width: 1.5; stroke-opacity: 0.3; animation: aitPingRing 3s ease-out infinite; transform-origin: center; }
.ait-page .ait-map-pin.pin-balti .ait-pin-pulse-ring { animation-delay: 1.5s; }
.ait-page .ait-pin-ring-inner { fill: rgba(196, 44, 94, 0.1); stroke: #C42C5E; stroke-width: 1.5; stroke-opacity: 0.5; }
.ait-page .ait-pin-dot { fill: #C42C5E; filter: drop-shadow(0 0 8px rgba(196, 44, 94, 0.7)); }
.ait-page .ait-pin-label { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 13px; font-weight: 600; fill: var(--ait-ink-soft); }
.ait-page .ait-pin-label-main { font-size: 14px; font-weight: 700; fill: var(--ait-ink); }
.ait-page .ait-pin-sublabel { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 10px; font-weight: 500; fill: var(--ait-muted); }

@keyframes aitPingRing {
    0% { r: 18; stroke-opacity: 0.5; }
    100% { r: 45; stroke-opacity: 0; }
}

.ait-page .ait-online-ring { fill: none; stroke: #4F8BFF; stroke-width: 0.8; stroke-dasharray: 4, 10; stroke-opacity: 0; animation: aitOnlineWave 5s ease-out infinite; }
.ait-page .ait-online-ring.r2 { animation-delay: 1.7s; }
.ait-page .ait-online-ring.r3 { animation-delay: 3.4s; }

@keyframes aitOnlineWave {
    0% { stroke-opacity: 0.12; }
    50% { stroke-opacity: 0.06; }
    100% { stroke-opacity: 0; }
}

.ait-page .ait-map-online-badge { position: absolute; top: 12px; right: 0; background: rgba(255, 255, 255, 0.92); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-radius: 50px; padding: 8px 18px 8px 12px; display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--ait-muted); box-shadow: 0 4px 20px rgba(28, 27, 58, 0.10); animation: aitFloat 3s ease-in-out infinite; }
.ait-page .ait-map-online-badge span { font-weight: 700; color: #4F8BFF; font-size: 11.5px; letter-spacing: 0.05em; }
.ait-page .ait-online-pulse { width: 10px; height: 10px; background: #4F8BFF; border-radius: 50%; position: relative; flex-shrink: 0; }
.ait-page .ait-online-pulse::after { content: ''; position: absolute; inset: -4px; border-radius: 50%; border: 2px solid #4F8BFF; animation: aitPulse 2s infinite; }

@keyframes aitFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}
@keyframes aitPulse {
    0% { transform: scale(0.9); opacity: 0.8; }
    100% { transform: scale(1.6); opacity: 0; }
}

/* VIDEO TESTIMONIALS */
.ait-page .ait-vt { background: var(--ait-cream); }
.ait-page .ait-vt-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 900px; margin: 38px auto 0; }
.ait-page .ait-vt-card { border-radius: 18px; overflow: hidden; background: #fff; box-shadow: 0 8px 28px -10px rgba(28, 27, 58, .14), 0 2px 8px rgba(28, 27, 58, .05); transition: transform .35s ease, box-shadow .35s ease; }
.ait-page .ait-vt-card:hover { transform: translateY(-4px); box-shadow: 0 16px 40px -12px rgba(28, 27, 58, .22), 0 4px 14px rgba(28, 27, 58, .08); }
.ait-page .ait-vt-wrap { position: relative; width: 100%; overflow: hidden; background: var(--ait-ink); }
.ait-page .ait-vt-wrap.portrait { padding-bottom: 177.78%; max-height: 420px; }
.ait-page .ait-vt-wrap.landscape { padding-bottom: 56.25%; }
.ait-page .ait-vt .yt-thumb { position: absolute; top: 0; left: 0; width: 100%; height: 100%; cursor: pointer; background: var(--ait-ink); overflow: hidden; }
.ait-page .ait-vt .yt-thumb img { width: 100%; height: 100%; object-fit: cover; opacity: 0.88; transition: opacity .3s ease, transform .5s ease; }
.ait-page .ait-vt .yt-thumb:hover img { opacity: 1; transform: scale(1.03); }
.ait-page .ait-vt .yt-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 68px; height: 48px; transition: transform .3s ease, filter .3s ease; filter: drop-shadow(0 4px 12px rgba(0, 0, 0, .4)); }
.ait-page .ait-vt .yt-thumb:hover .yt-play { transform: translate(-50%, -50%) scale(1.1); filter: drop-shadow(0 6px 20px rgba(0, 0, 0, .5)); }
.ait-page .ait-vt .yt-play svg { width: 100%; height: 100%; }
.ait-page .ait-vt-wrap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }
.ait-page .ait-vt-caption { padding: 18px 22px; }
.ait-page .ait-vt-caption h4 { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 700; font-size: 15.5px; color: var(--ait-ink); margin: 0 0 5px; }
.ait-page .ait-vt-caption p { font-size: 13.5px; color: var(--ait-ink-soft); line-height: 1.5; margin: 0; }

/* RESPONSIVE */
@media (max-width: 1080px) {
    .ait-page .tgrid { grid-template-columns: repeat(2, 1fr); }
    .ait-page .ob-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 880px) {
    .ait-page .ait-vt-grid { grid-template-columns: 1fr; max-width: 360px; }
    .ait-page .ait-why-layout { grid-template-columns: 1fr; gap: 40px; }
    .ait-page .ait-why-left h2 { font-size: 28px; }
    .ait-page .ait-why-photo img { height: 300px; }
    .ait-page .ait-loc-layout { grid-template-columns: 1fr; gap: 40px; }
    .ait-page .ait-loc-right { order: -1; }
    .ait-page .ait-loc-left h2 { font-size: 28px; }
    .ait-page .ait-moldova-map { max-width: 260px; }
    .ait-page .hero .ait-wrap { grid-template-columns: 1fr; gap: 48px; }
    .ait-page .hero h1 { font-size: 42px; }
    .ait-page .hero-ring { width: 380px; height: 380px; top: -180px; right: -160px; border-width: 46px; }
    .ait-page .kfacts .ait-wrap { grid-template-columns: 1fr; gap: 24px; padding: 30px 26px; }
    .ait-page .kf-mid { border-left: none; padding: 0; padding-top: 22px; border-top: 1px solid rgba(255, 255, 255, .10); flex-wrap: wrap; gap: 20px 28px; }
    .ait-page .kf-cta { align-items: flex-start; border-top: 1px solid rgba(255, 255, 255, .10); padding-top: 20px; }
    .ait-page .kf-start .kf-day { font-size: 52px; }
    .ait-page .ait-section { padding: 30px 0; }
    .ait-page .ait-section-head h2 { font-size: 28px; }
    .ait-page .acard { flex-direction: column; }
    .ait-page .acard-side { width: 100%; height: 160px; flex-direction: row; justify-content: flex-start; gap: 20px; padding: 22px 26px; }
    .ait-page .acard-side .anum { font-size: 50px; }
    .ait-page .acard-body { padding: 24px 26px; }
    .ait-page .combina { flex-direction: column; align-items: flex-start; gap: 20px; padding: 26px; }
    .ait-page .fmt-grid { grid-template-columns: 1fr 1fr; }
    .ait-page .prices { grid-template-columns: 1fr; }
    .ait-page .inc-grid { grid-template-columns: 1fr; }
    .ait-page .tgrid { grid-template-columns: 1fr; }
    .ait-page .ob-grid { grid-template-columns: 1fr; }
    .ait-page .ob-head h2 { font-size: 26px; }
    .ait-page #inscriere .ait-wrap { grid-template-columns: 1fr; gap: 38px; }
    .ait-page .acard-grid { grid-template-columns: 1fr; }
    .ait-page .fcard-grid { grid-template-columns: 1fr; }
    .ait-page .apick-photo { height: 130px; }
    .ait-page .fgrid { grid-template-columns: 1fr; }
    .ait-page .hero-badge { left: 0; }
}

@media (max-width: 480px) {
    .ait-page .hero h1 { font-size: 34px; }
    .ait-page .ait-section-head h2 { font-size: 24px; }
    .ait-page .fmt-grid { grid-template-columns: 1fr; }
    .ait-page .form-card { padding: 24px 20px; }
}
