/* Shared, final mobile presentation. Desktop layouts and booking logic stay intact. */
@media(max-width:800px){
 html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-block:16px 160px}
 body{min-width:0!important;font-size:16px!important;line-height:1.6!important}
 *,*::before,*::after{box-sizing:border-box}
 main,main section,main article,main form,main fieldset,main nav,main div{min-width:0;max-width:100%}
 main{overflow-wrap:break-word}
 main p,main li,main label,main legend,main .lead,main .explain,main .field-hint,main .page-note{font-size:16px!important;line-height:1.65!important}
 main p{margin-block:12px 16px}
 main h1,body:not(.vd-home) main h1{font-size:clamp(28px,7vw,36px)!important;line-height:1.2!important;letter-spacing:-.65px!important;overflow-wrap:break-word}
 main h2{font-size:23px!important;line-height:1.3!important;letter-spacing:-.25px!important}
 main h3,main h4{font-size:20px!important;line-height:1.4!important}
 main h1,main h2,main h3,main h4{scroll-margin-top:18px}
 main img,main video,main canvas{max-width:100%;height:auto}
 main figure{max-width:100%;margin-inline:0}
 main figcaption{font-size:14px!important;line-height:1.5!important}
 main input:not([type=radio]):not([type=checkbox]):not([type=hidden]):not([type=file]),main select,main textarea{max-width:100%;min-width:0;font:inherit!important;font-size:16px!important;line-height:1.5!important;min-height:50px}
 main input[type=date]{width:100%;min-width:0;min-height:56px;appearance:none;-webkit-appearance:none}
 main input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.5em}
 main input[type=radio],main input[type=checkbox]{width:22px!important;height:22px!important;min-height:22px!important;flex-shrink:0;accent-color:#176b52}
 main button,main .vd-button,main .primary,main .secondary,main .office-booking,main .office-reason-next,main .game-primary,main .game-option,main .upload,main .stage-office-button{max-width:100%;min-height:48px!important;font-size:16px!important;line-height:1.4!important;white-space:normal;touch-action:manipulation;overflow-wrap:break-word}
 main summary{min-height:48px;font-size:17px!important;line-height:1.5!important;padding-block:14px;cursor:pointer}
 main a,main button,main label{touch-action:manipulation}
 a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b47716;outline-offset:3px}
 main .step-actions,main .vd-actions,main .trajectory-actions,main .scan-photo-actions,main .scan-main-actions,main .uploadbuttons,main .actions,main .exam-next-choices{gap:12px!important;flex-wrap:wrap}
 main .step-actions>*,main .scan-photo-actions>*,main .uploadbuttons>*{max-width:100%;min-width:0}
 main .step-actions>a,main .step-actions>button{white-space:normal!important;text-align:center}
 main .attest-inline-button{font-size:14px!important;min-height:44px;padding:9px 10px;margin:5px 4px;white-space:normal}
 main .stage-vdvl-policy,main .stage-office-required,main .simple-advice{padding:16px!important;overflow-wrap:break-word}
 main .stage-policy-label,main .step-label,main .vd-kicker,main .package-kicker,main .eyebrow{font-size:13px!important;line-height:1.5!important;letter-spacing:.055em}
 main .rules-card,main .exam-option,main .trajectory-wizard{padding:18px 15px!important}
 .vd-service,.compact-menu{padding-inline:16px!important}
 body header.site-masthead{margin-inline:16px!important;max-width:calc(100% - 32px);padding-block:12px!important}
 body header.site-masthead address strong{font-size:18px!important;line-height:1.4!important}
 body header.site-masthead .masthead-back{display:inline-flex!important;font-size:15px!important;min-height:44px!important;line-height:1.4}
 .site-breadcrumbs{font-size:14px!important;line-height:1.5!important;flex-wrap:wrap;gap:8px!important}
 main .vd-page-nav{gap:10px!important}
 main .vd-page-nav a{font-size:14px!important;min-height:46px!important;padding:10px 8px!important;line-height:1.4!important;white-space:normal!important;overflow-wrap:normal}
 main .sign-choices,main .compact-choices,main .licence-choices,main .exam-options,main .office-reason-options,main .exam-package-grid,main .builder-grid{grid-template-columns:minmax(0,1fr)!important;gap:14px!important;grid-auto-rows:auto!important}
 #main-content .sign-choices{grid-auto-rows:auto!important}
 main .sign-choices .sign-choice,main .exam-options .exam-choice{min-height:0!important;height:auto!important;aspect-ratio:auto!important;padding:18px!important;gap:12px!important;overflow:visible}
 main .sign-choice h2,main .exam-choice h2{font-size:21px!important;line-height:1.35!important}
 main .sign-choice p,main .exam-choice p,main .sign-choice .lesson-guide-topics{font-size:16px!important;line-height:1.6!important}
 main .sign-choice>strong,main .sign-choice .licence-start-button,main .exam-choice-next{font-size:16px!important;line-height:1.5!important;white-space:normal!important}
 main .exam-choice-copy{display:block!important}
 main .sign-choice .office-card-photo{max-height:150px!important;height:130px!important;overflow:hidden}
 main .sign-choice .office-card-photo img{height:130px!important;max-height:150px!important;object-fit:cover}
 main .sign-choice.route-road-choice{padding:0!important;overflow:hidden;min-height:200px!important}
 main .route-road-caption{padding:18px!important}
 main .office-reason-option{flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;min-height:64px!important;padding:14px!important;font-size:16px!important;line-height:1.5!important;gap:12px!important}
 main .office-reason-form fieldset>p,main .start-person-hero .lead{font-size:16px!important;line-height:1.6!important}
 main .lights-photo-note{font-size:15px!important;line-height:1.6!important}
 main .help-note{font-size:16px!important;line-height:1.6!important}
 main .exam-tile{min-width:0;max-width:100%;white-space:normal!important;overflow-wrap:break-word}
 main .exam-tile strong{font-size:19px!important;line-height:1.4!important;max-width:100%;min-width:0}
 main .exam-tile-grid,main .start-route-choices{grid-template-columns:1fr!important;gap:14px!important}
 main .exam-tile,main .start-route-choices a{min-height:100px!important;padding:18px!important}
 main .exam-tile span,main .start-route-choices span{font-size:16px!important;line-height:1.5!important}
 main .exam-tile .tile-new-customer{font-size:14px!important}
 main .start-route-choices strong{font-size:18px!important;line-height:1.4!important}
 main .office-action-options{display:grid;grid-template-columns:1fr;gap:12px}
 main .office-action-options button{width:100%;padding:16px}
 main .office-action-options button span{font-size:15px!important;line-height:1.5}
 main .office-selected,main .office-attest{padding:18px 15px!important}
 main .office-booking{display:flex;align-items:center;justify-content:center;width:100%;padding:14px 16px!important;text-align:center}
 main .compact-info>summary{font-size:17px!important;min-height:56px!important;padding-block:16px!important}
 main .compact-info>p{font-size:16px!important}
 main .builder-stepnav,main .builder-stepnav.builder-stepnav-six{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 main .builder-stepnav button{padding:12px 8px;align-items:flex-start;font-size:14px!important}
 main .builder-choice{font-size:16px!important;line-height:1.5!important;padding:16px!important;gap:12px!important}
 main .builder-exam-line>span,main .builder-slot-price,main .package-small,main .planning-month-status,main .planning-color-hint{font-size:15px!important;line-height:1.5!important}
 main .builder-exam-line>strong,main .amanda-slot strong{font-size:17px!important;line-height:1.5!important}
 main [data-amanda-kind]{grid-template-columns:1fr!important}
 main .amanda-slot{padding:16px!important;gap:12px!important;margin-block:12px!important}
 main .amanda-slot-date{font-size:19px!important;line-height:1.4!important;white-space:normal!important}
 main .amanda-slot-time,main .amanda-slot-teacher,main .amanda-stamp,main .teacher-label{font-size:14px!important;line-height:1.5!important}
 main .amanda-vehicle-badge,main .builder-vehicle-badge{font-size:15px!important;line-height:1.4!important;padding:8px 10px!important;white-space:normal}
 main .planning-month-buttons{gap:10px}
 main .planning-month-buttons button{flex:1 1 130px;padding:12px}
 main .exam-package-card .sub,main .exam-package-card .package-dates p,main .exam-package-card ul,main .exam-package-card .choose{font-size:16px!important;line-height:1.6!important}
 main .types label{min-height:94px;font-size:16px!important}
 main .types label strong{font-size:20px!important;line-height:1.3}
 main .types label span{font-size:14px!important;line-height:1.45!important}
 main .method-options label{padding:16px;font-size:16px!important;line-height:1.55}
 main .progress{gap:8px;padding:16px!important;flex-wrap:wrap}
 main .progress>span,main .wizard-meter,main .scan-steps li,main .sectiontitle p{font-size:14px!important;line-height:1.45!important}
 main .wizard-nav{padding-inline:16px!important}
 main .question-page>h2{font-size:24px!important}
 main .result-whatsapp-main,main .result-whatsapp-alternative,main .result-whatsapp-tools button{font-size:16px!important;min-height:50px!important;padding:14px!important;white-space:normal!important}
 main .whatsapp-preview,main pre{font-size:15px!important;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
 .site-footer{padding:24px 16px max(24px,env(safe-area-inset-bottom))!important;font-size:14px!important}
 .site-footer nav{gap:10px 14px!important}
 .site-footer nav a{min-height:46px!important;font-size:14px!important;line-height:1.5!important}
 body.vd-home .vd-main{padding-inline:16px!important}
 body.vd-home .vd-hero--school h1{font-size:32px!important;line-height:1.2!important}
 body.vd-home .vd-hero--school .vd-hero-copy>p{font-size:17px!important;line-height:1.6!important}
 body.vd-home .vd-hero-top .vd-home-booking-actions>a{height:auto!important;min-height:74px!important;padding:14px 12px!important;font-size:16px!important;line-height:1.4!important}
 body.vd-home .vd-home-booking-actions .vd-exam-label{font-size:16px!important;line-height:1.4!important}
 body.vd-home .vd-hero--school .vd-scan-cta{font-size:17px!important;line-height:1.5!important;min-height:72px!important;padding:16px!important}
 body.vd-home .vd-scan-cta small{font-size:14px!important;line-height:1.5!important}
 body.vd-home .vd-simple-menu h2{font-size:23px!important;line-height:1.3!important;margin-block:8px 16px!important}
 body.vd-home .vd-simple-menu nav{grid-template-columns:1fr!important;gap:12px!important}
 body.vd-home .vd-simple-menu nav>a{min-height:78px!important;padding:16px!important;gap:12px!important;height:auto!important}
 body.vd-home .vd-simple-menu strong{font-size:17px!important;line-height:1.45!important}
 body.vd-home .vd-simple-menu small{font-size:15px!important;line-height:1.5!important}
 body.vd-home .vd-simple-help{font-size:15px!important;line-height:1.5!important;gap:10px!important}
 body.vd-home .vd-simple-help a{min-height:44px!important;display:inline-flex;align-items:center}
 body.vd-home .vd-rules-news strong{font-size:16px!important;line-height:1.5}
 body.vd-home .vd-brand-banner>img{height:150px!important}
 body.vd-home .vd-header--banner .vd-header-identity{max-width:66%;left:16px}
 body.vd-home .vd-header--banner .vd-brandmark{font-size:32px!important}
 body.vd-home .vd-header--banner .vd-brandmark>span{font-size:10px!important;line-height:1.5!important;letter-spacing:1px}
 body.vd-home .vd-header--banner .vd-kicker{font-size:11px!important;line-height:1.5!important}
 body.vd-home .vd-header--banner .vd-banner-partner{font-size:12px!important;line-height:1.4!important}
 body.vd-home .vd-banner-links a{font-size:14px!important;min-height:44px!important}
 body.vd-home .vd-simple-footer{flex-wrap:wrap!important;gap:12px!important}
 body.vd-home .vd-simple-footer>div,body.vd-home .vd-simple-footer nav a{font-size:14px!important;line-height:1.5!important}
 dialog{box-sizing:border-box;max-width:calc(100vw - 28px)!important;max-height:calc(100dvh - 32px);padding:20px!important;overflow:auto;border-radius:14px}
 dialog p,dialog li{font-size:16px!important;line-height:1.6!important}
 dialog h2,dialog h3{font-size:23px!important;line-height:1.35!important}
 dialog button{display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;min-height:48px!important;padding:14px!important;margin-block:10px;font-size:16px!important;line-height:1.45!important;white-space:normal}
 dialog .actions{display:flex;flex-direction:column;gap:10px}
}
@media(max-width:380px){
 body.vd-home .vd-hero-top .vd-home-booking-actions{grid-template-columns:1fr!important}
 main .lesson-vehicle-options,main .trajectory-types{grid-template-columns:1fr!important}
 main .step-actions{align-items:stretch;flex-direction:column}
 main .step-actions>*{width:100%}
 .site-footer nav{grid-template-columns:1fr!important}
 .site-footer nav a{overflow-wrap:break-word}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
