/* Smart Driving School product page, scoped to this page and its translations. */
.sds-page { color:#172854; background:#fff; }
.sds-page *, .sds-page *::before, .sds-page *::after { box-sizing:border-box; }
.sds-page main { overflow-x:clip; }
.sds-page [id] { scroll-margin-top:32px; }
.sds-page .sds-container { width:min(1240px,100% - 96px); margin-inline:auto; }
.sds-page .sds-section { padding-block:78px; }
.sds-page .sds-tint { background:#f2f8fc; }
.sds-page .eyebrow { margin:0 0 18px; color:#537da5; font-size:11px; line-height:1.6; font-weight:500; letter-spacing:.15em; }
.sds-page h1,.sds-page h2,.sds-page h3 { color:#172854; font-weight:500; letter-spacing:-.035em; }
.sds-page h2 { font-size:clamp(28px,3.2vw,43px); line-height:1.15; margin:0; max-width:800px; }
.sds-page h3 { font-size:21px; line-height:1.35; margin:0 0 12px; }
.sds-page p { margin-top:0; }
.sds-page .sds-hero { background:#f2f8fc; padding-block:72px 76px; }
.sds-page .sds-hero-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:56px; align-items:center; }
.sds-page h1 { font-size:clamp(38px,4.5vw,64px); line-height:1.06; margin:0 0 20px; }
.sds-page .sds-badge { display:inline-block; padding:7px 11px; border:1px solid #b7d6eb; color:#326a96; font-size:11px; line-height:1.6; }
.sds-page .sds-tagline { font-size:clamp(23px,2.35vw,32px); line-height:1.24; letter-spacing:-.025em; margin:25px 0 16px; max-width:540px; }
.sds-page .sds-lead,.sds-page .sds-copy,.sds-page .sds-prose p { color:#526e90; font-size:16px; line-height:1.85; }
.sds-page .sds-lead { margin:0; }
.sds-page .sds-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px 24px; margin-top:28px; }
.sds-page .sds-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; padding:14px 20px; background:#172e58; border:1px solid #172e58; border-radius:6px; color:white; text-decoration:none; font-size:13px; font-weight:500; line-height:1.5; text-align:center; min-height:48px; transition:background .16s; }
.sds-page .sds-button:hover { background:#284f7d; }
.sds-page .sds-text-link { font-size:13px; color:#245d87; text-decoration:none; border-bottom:1px solid #a8c9de; padding-block:8px; }
.sds-page .sds-text-link span { margin-left:10px; }
.sds-page .sds-platform { font-size:12px; color:#59738d; margin:18px 0 0; }
.sds-page .sds-visual { margin:0; min-width:0; }
.sds-page .sds-visual img { display:block; width:100%; height:auto; aspect-ratio:1672/941; object-fit:contain; border-radius:12px; background:#eaf3fa; }
.sds-page .sds-hero .sds-visual img { box-shadow:0 18px 52px #18385b12; }
.sds-page .sds-visual figcaption { margin-top:10px; color:#68809a; font-size:11px; line-height:1.5; }
.sds-page .sds-intro { display:grid; grid-template-columns:1fr 1.15fr; gap:78px; }
.sds-page .sds-prose p { margin:0 0 18px; }
.sds-page .sds-prose p:last-child { margin-bottom:0; }
.sds-page .sds-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:36px; }
.sds-page .sds-card { display:flex; flex-direction:column; align-items:flex-start; padding:28px; border:1px solid #d6e6f2; border-radius:14px; background:white; text-decoration:none; transition:border-color .16s,box-shadow .16s; min-width:0; }
.sds-page .sds-card:hover { border-color:#8ebbd6; box-shadow:0 8px 24px #173c5c0a; }
.sds-page .sds-number { color:#5790b5; font-size:12px; margin-bottom:22px; }
.sds-page .sds-card h3 { font-size:21px; }
.sds-page .sds-card p,.sds-page .sds-audiences p,.sds-page .sds-steps p { color:#526e90; font-size:15px; line-height:1.8; margin:0 0 18px; }
.sds-page .sds-card-arrow { display:block; margin-top:auto; color:#3581af; font-size:22px; }
.sds-page .sds-feature { display:grid; grid-template-columns:1.12fr 1fr; gap:64px; align-items:center; }
.sds-page .sds-feature-reverse { grid-template-columns:1fr 1.12fr; }
.sds-page .sds-feature-reverse>.sds-visual { order:2; }
.sds-page .sds-copy { margin:23px 0; }
.sds-page .sds-points { list-style:none; padding:0; margin:0; display:grid; gap:12px; }
.sds-page .sds-points li { position:relative; padding-left:21px; font-size:14px; line-height:1.7; color:#324f72; }
.sds-page .sds-points li::before { content:""; width:6px; height:6px; border-radius:50%; position:absolute; left:0; top:.65em; background:#e5a344; }
.sds-page .sds-progress-heading { max-width:900px; margin-bottom:40px; }
.sds-page .sds-progress-heading h2 { max-width:900px; }
.sds-page .sds-audiences article+article { border-top:1px solid #dbe7f0; margin-top:26px; padding-top:26px; }
.sds-page .sds-audiences p { margin-bottom:0; }
.sds-page .sds-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; list-style:none; padding:0; margin:38px 0 0; }
.sds-page .sds-step-number { display:inline-flex; width:43px; height:43px; align-items:center; justify-content:center; background:#fff; border:1px solid #caddEC; color:#315f87; border-radius:50%; font-size:17px; margin-bottom:20px; }
.sds-page .sds-steps p { margin-bottom:0; }
.sds-page .sds-faq-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:64px; }
.sds-page .sds-faq details { border-bottom:1px solid #d8e5ef; }
.sds-page .sds-faq details:first-child { border-top:1px solid #d8e5ef; }
.sds-page .sds-faq summary { position:relative; padding:22px 32px 22px 0; cursor:pointer; font-size:17px; line-height:1.45; list-style:none; }
.sds-page .sds-faq summary::-webkit-details-marker { display:none; }
.sds-page .sds-faq summary::after { content:"+"; position:absolute; right:1px; top:20px; font-size:23px; color:#467c9f; font-weight:400; }
.sds-page .sds-faq details[open] summary::after { content:"−"; }
.sds-page .sds-faq p { color:#526e90; font-size:15px; line-height:1.8; margin:0; padding:0 28px 24px 0; }
.sds-page .sds-contact { padding-block:82px; text-align:center; background:radial-gradient(at 50% 115%,#235584,#162951 75%); color:#fff; }
.sds-page .sds-contact .eyebrow { color:#a9cbe7; }
.sds-page .sds-contact h2 { color:white; max-width:850px; margin-inline:auto; }
.sds-page .sds-contact p:not(.eyebrow) { max-width:620px; margin:24px auto 30px; color:#c7d9eb; font-size:16px; line-height:1.85; }
.sds-page .sds-button-light { background:#fff; color:#172e58; border-color:white; }
.sds-page .sds-button-light:hover { background:#e4f1fa; }
.sds-page .sds-email { display:block; width:fit-content; margin:22px auto 0; font-size:14px; color:#c7e6fa; text-underline-offset:5px; }
.sds-page a:focus-visible,.sds-page summary:focus-visible { outline:3px solid #e5a344; outline-offset:5px; }
@media(max-width:1000px) {
 .sds-page .sds-container { width:calc(100% - 64px); }
 .sds-page .sds-hero-grid { gap:32px; }
 .sds-page .sds-feature,.sds-page .sds-intro,.sds-page .sds-faq-grid { gap:36px; }
 .sds-page .sds-card { padding:23px; }
}
@media(max-width:800px) {
 .sds-page .sds-section { padding-block:50px; }
 .sds-page .sds-hero { padding-block:44px 48px; }
 .sds-page .sds-container { width:calc(100% - 40px); }
 .sds-page .sds-hero-grid,.sds-page .sds-intro,.sds-page .sds-feature,.sds-page .sds-feature-reverse,.sds-page .sds-faq-grid { grid-template-columns:1fr; gap:30px; }
 .sds-page .sds-feature-reverse>.sds-visual { order:0; }
 .sds-page h1 { font-size:clamp(34px,7.5vw,52px); }
 .sds-page .sds-tagline { max-width:600px; }
 .sds-page .sds-cards { grid-template-columns:1fr; gap:16px; margin-top:28px; }
 .sds-page .sds-card { position:relative; padding:24px 50px 24px 24px; }
 .sds-page .sds-card-arrow { position:absolute; right:24px; top:24px; }
 .sds-page .sds-number { margin-bottom:14px; }
 .sds-page .sds-card p { margin-bottom:0; }
 .sds-page .sds-steps { grid-template-columns:1fr; gap:28px; margin-top:30px; }
 .sds-page .sds-steps li { padding-left:61px; position:relative; }
 .sds-page .sds-step-number { position:absolute; left:0; top:0; }
 .sds-page .sds-progress-heading { margin-bottom:30px; }
 .sds-page .sds-contact { padding-block:58px; }
}
@media(prefers-reduced-motion:reduce) {
 .sds-page .sds-button,.sds-page .sds-card { transition:none; }
}

