﻿/* A desktop-only teddy introduction; the live form remains normal HTML. */
.sa-demo-card--teddy {
    gap: 0;
    grid-template-columns: minmax(0, 1fr);
    position: relative;
}
.sa-demo-card--teddy .sa-form-grid { gap: 15px; }
.sa-demo-card--teddy .sa-demo-form input:not([type="checkbox"]),
.sa-demo-card--teddy .sa-demo-form select { height: 44px; padding-inline: 11px; }
.sa-demo-card--teddy .sa-demo-form select {
    background-position: calc(100% - 17px) 19px, calc(100% - 12px) 19px;
    padding-right: 32px;
}
.sa-teddy-visual, .sa-teddy-scene, .sa-demo-skip { display: none; }
.sa-demo-skip[hidden] { display: none; }
.hp-hero--smooth .sa-demo-wrap:has(.sa-demo-card--teddy) {
    animation: none; opacity: 1; transform: none;
}
@media (min-width: 992px) {
    .sa-demo-card--teddy {
        align-items: center;
        border: 1px solid #e3eaff;
        border-radius: 28px;
        gap: 40px;
        grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
        min-height: 630px;
        padding: 48px 42px;
    }
    .sa-teddy-visual { align-self: center; display: block; min-width: 0; position: relative; }
    .sa-teddy-stage {
        background: radial-gradient(ellipse at 45% 55%, #edf3ff, rgba(237, 243, 255, 0) 68%);
        height: 430px; position: relative;
    }
    .sports-academy-page .sa-teddy-caption {
        color: #000; font-size: 1rem; line-height: 1.6; margin: 0; text-align: center;
    }
    .sa-teddy-caption strong, .sa-teddy-caption span { display: block; }
    .sa-teddy-caption span { font-size: 0.875rem; margin-top: 5px; }
    .sa-teddy-scene {
        display: block; inset: 0; overflow: hidden; pointer-events: none; position: absolute; z-index: 2;
    }
    .sa-teddy-scene canvas { display: block; height: 100%; width: 100%; }
    .sa-demo-panel { min-width: 0; position: relative; }
    .sa-demo-card--teddy .sa-demo-card__intro {
        background: none; display: block; margin-bottom: 24px; padding: 0; text-align: left;
    }
    .sa-demo-card--teddy .sa-demo-card__label { font-size: 0.8125rem; margin-bottom: 12px; }
    .sa-demo-card--teddy .sa-demo-card__intro h2 {
        font-size: clamp(1.75rem, 2.55vw, 2.3rem); line-height: 1.18; margin-bottom: 15px;
    }
    .sa-demo-card--teddy .sa-demo-card__intro > p:last-child { color: #000; font-size: 1rem; line-height: 1.65; }
    .sa-demo-card--teddy .sa-field label { font-size: 0.875rem; }
    .sa-demo-skip {
        align-items: center; background: #fff; border: 0; border-radius: 8px; color: #33416a; cursor: pointer;
        display: inline-flex; font-family: inherit; font-size: 0.75rem; gap: 6px; min-height: 32px;
        padding: 6px 10px; position: absolute; right: 18px; top: 10px; z-index: 3;
    }
    .sa-demo-skip:focus-visible { outline: 3px solid var(--sa-blue); outline-offset: 3px; }
    .sa-teddy-pending .sa-demo-panel, .sa-teddy-pending .sa-demo-panel .sa-teddy-reveal-item { opacity: 0; }
    .sa-teddy-unavailable { grid-template-columns: minmax(0, 1fr); max-width: 850px; margin-inline: auto; }
    .sa-teddy-unavailable .sa-teddy-visual { display: none; }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .sa-demo-card--teddy { gap: 28px; grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr); padding: 40px 30px; }
    .sa-teddy-stage { height: 400px; }
    .sa-demo-card--teddy .sa-phone-field { grid-template-columns: 100px minmax(0, 1fr); }
}
@media (max-width: 991px) {
    .sa-demo-card--teddy .sa-demo-card__intro { margin-bottom: 24px; }
}
@media (max-width: 767px) {
    .sa-demo-card--teddy .sa-demo-form input, .sa-demo-card--teddy .sa-demo-form select { font-size: 1rem; }
    .sa-demo-card--teddy .sa-demo-form select { padding-left: 32px; }
}
@media (prefers-reduced-motion: reduce) {
    .sa-teddy-pending .sa-demo-panel, .sa-teddy-pending .sa-demo-panel .sa-teddy-reveal-item {
        clip-path: none; opacity: 1; transform: none;
    }
    .sa-demo-skip { display: none; }
}
