/* DriveMaster Pro v1.3.0 public responsive layer */
html,body{max-width:100%;overflow-x:clip}.public-site .container{width:min(1240px,calc(100% - 40px));margin-inline:auto}.public-site img,.public-site svg{max-width:100%}.public-site input,.public-site select,.public-site textarea,.public-site button{font:inherit}.public-site .topbar-inner,.footer-main,.footer-bottom{width:min(1320px,calc(100% - 40px));margin-inline:auto}.public-site .nav-actions{min-width:0}.public-site .hero-copy,.public-site .section-heading>div,.public-site .profile-columns>*{min-width:0}.public-site .card,.public-site .instructor-card,.public-site .instructor-tile{overflow-wrap:anywhere}.public-site .button{min-height:44px;justify-content:center;text-align:center}.public-site .field input,.public-site .field select,.public-site .field textarea{width:100%;max-width:100%}
@media(max-width:1100px){.public-site .home-hero{grid-template-columns:minmax(0,1fr) minmax(340px,.75fr);gap:32px;min-height:auto;padding:44px 0 58px}.public-site .hero-copy h1{font-size:clamp(3rem,7vw,5.3rem)}.public-site .hero-visual{height:520px}.public-site .confidence-section{gap:36px;padding:54px}.public-site .footer-main{grid-template-columns:minmax(220px,1.45fr) repeat(3,minmax(130px,1fr));gap:28px}}
@media(max-width:900px){.public-site.menu-open{overflow:hidden}.public-site .topbar{height:auto;min-height:72px}.public-site .topbar-inner{min-height:72px}.public-site .brand-copy small{display:none}.public-site .mobile-menu-button{display:grid;position:relative;z-index:1102}.public-site .nav-actions{position:fixed;z-index:1100;inset:0;display:flex;flex-direction:column;justify-content:flex-start;gap:18px;padding:max(92px,calc(env(safe-area-inset-top) + 82px)) 22px max(28px,env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 97%,transparent);backdrop-filter:blur(30px) saturate(150%);transform:translateX(102%);opacity:0;visibility:hidden;overflow-y:auto;transition:transform .35s var(--ease),opacity .25s ease,visibility .35s}.public-site .nav-actions.is-open{transform:none;opacity:1;visibility:visible}.public-site .nav-primary,.public-site .nav-account{display:grid;width:100%;gap:8px}.public-site .nav-primary a,.public-site .nav-account>a{display:flex;align-items:center;min-height:56px;padding:14px 16px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line);font-size:1.04rem;font-weight:750}.public-site .nav-account .button{width:100%}.public-site .theme-toggle,.public-site .notification-link{min-width:52px;min-height:52px}.public-site .home-hero{grid-template-columns:1fr;gap:28px;padding:36px 0 42px}.public-site .hero-copy{text-align:center}.public-site .hero-copy h1{max-width:760px;margin:14px auto 20px;font-size:clamp(2.75rem,9.6vw,4.5rem);line-height:.98;letter-spacing:-.055em}.public-site .hero-copy>p{margin-inline:auto;font-size:1.05rem;line-height:1.6}.public-site .hero-search{grid-template-columns:30px minmax(0,1fr);max-width:680px;margin-inline:auto;padding:10px}.public-site .hero-search select{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);padding-inline:12px}.public-site .hero-search button{grid-column:1/-1;width:100%}.public-site .hero-actions,.public-site .trust-row{justify-content:center}.public-site .hero-visual{height:440px;width:min(620px,100%);margin-inline:auto}.public-site .road-scene{inset:4% 4% 0;border-radius:36px}.public-site .floating-card{min-width:180px}.public-site .card-one{left:0}.public-site .card-two{right:0}.public-site .proof-strip{grid-template-columns:repeat(2,1fr);margin-bottom:68px}.public-site .proof-strip>div{padding:18px;border-bottom:1px solid var(--line)}.public-site .proof-strip>div:nth-child(2){border-right:0}.public-site .journey-grid,.public-site .instructor-showcase{grid-template-columns:1fr 1fr}.public-site .confidence-section{grid-template-columns:1fr;padding:48px;margin:48px 0 72px}.public-site .confidence-copy{text-align:center}.public-site .tick-list{max-width:580px;margin-inline:auto}.public-site .section-block{padding:62px 0}.public-site .section-heading{align-items:flex-start}.public-site .profile-hero,.public-site .profile-columns,.public-site .search-panel{grid-template-columns:1fr}.public-site .footer-main{grid-template-columns:1fr 1fr}.public-site .footer-brand{grid-column:1/-1}.public-site .footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:640px){.public-site .container{width:min(100% - 28px,1240px)}.public-site .topbar-inner,.footer-main,.footer-bottom{width:min(100% - 28px,1320px)}.public-site .topbar-inner{min-height:66px}.public-site .brand-mark{width:38px;height:38px}.public-site .brand-copy strong{font-size:.94rem}.public-site .home-hero{padding-top:26px}.public-site .hero-copy h1{font-size:clamp(2.35rem,12vw,3.55rem);line-height:1.01;letter-spacing:-.048em}.public-site .hero-copy>p{font-size:1rem;line-height:1.58}.public-site .hero-search{grid-template-columns:28px minmax(0,1fr);border-radius:18px;box-shadow:var(--shadow-sm)}.public-site .hero-search input,.public-site .hero-search select,.public-site .hero-search button{height:50px}.public-site .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.public-site .trust-row{display:grid;grid-template-columns:1fr 1fr;gap:11px;text-align:left}.public-site .hero-visual{height:340px}.public-site .road-scene{inset:2% 0 0;border-radius:28px;transform:none}.public-site .school-car{width:170px;height:140px;bottom:8%;transform:translateX(-50%) scale(.76)}.public-site .road-sign{right:6%;top:25%;transform:scale(.78);transform-origin:top right}.public-site .floating-card{min-width:0;max-width:170px;padding:11px 12px;border-radius:14px}.public-site .floating-card small{font-size:.62rem}.public-site .floating-card strong{font-size:.74rem}.public-site .card-one{top:6%}.public-site .card-two{bottom:4%}.public-site .proof-strip{grid-template-columns:1fr 1fr;margin-bottom:48px;padding:0}.public-site .proof-strip>div{padding:15px 10px}.public-site .proof-strip strong{font-size:1.25rem}.public-site .proof-strip span{font-size:.7rem}.public-site .section-block{padding:48px 0}.public-site .section-heading{display:block;margin-bottom:24px}.public-site .section-heading h2{font-size:clamp(2rem,9vw,2.75rem)}.public-site .section-heading .button{width:100%;margin-top:18px}.public-site .journey-grid,.public-site .instructor-showcase{grid-template-columns:1fr}.public-site .journey-card{min-height:0;padding:26px}.public-site .journey-icon{margin-bottom:28px}.public-site .step-number{font-size:4.4rem}.public-site .confidence-section{padding:30px 22px;border-radius:28px;margin:34px -4px 56px}.public-site .confidence-section h2{font-size:clamp(2rem,9vw,2.65rem)}.public-site .tick-list{grid-template-columns:1fr}.public-site .confidence-visual{min-height:310px}.public-site .confidence-visual::before{width:280px;height:280px}.public-site .dashboard-mock{padding:17px;border-radius:22px;transform:none}.public-site .instructor-tile,.public-site .instructor-card{border-radius:22px}.public-site .instructor-card{grid-template-columns:1fr!important}.public-site .instructor-card img,.public-site .instructor-card .avatar{width:100%!important;max-height:260px;object-fit:cover}.public-site .search-panel{padding:20px;border-radius:22px}.public-site .search-panel .grid{grid-template-columns:1fr}.public-site .profile-hero{padding:24px;border-radius:24px}.public-site .profile-actions{width:100%;display:grid}.public-site .profile-actions .button{width:100%}.public-site .card{padding:22px}.public-site .grid,.public-site .grid.two,.public-site .grid.three{grid-template-columns:1fr}.public-site .actions,.public-site .actions.split{align-items:stretch;flex-direction:column}.public-site .actions .button{width:100%}.public-site .footer{padding-top:50px}.public-site .footer-main{grid-template-columns:1fr;gap:30px}.public-site .footer-brand{grid-column:auto}.public-site .footer-column a,.public-site .footer-link-button{min-height:38px;display:flex;align-items:center}.public-site .cookie-panel{padding:10px}.public-site .cookie-card{max-height:calc(100dvh - 20px);overflow:auto;padding:22px;border-radius:22px}.public-site .cookie-actions{display:grid}.public-site .cookie-actions .button{width:100%}}
@media(max-width:390px){.public-site .container,.public-site .topbar-inner,.footer-main,.footer-bottom{width:calc(100% - 20px)}.public-site .hero-copy h1{font-size:2.25rem}.public-site .trust-row{grid-template-columns:1fr}.public-site .hero-visual{height:300px}.public-site .floating-card{display:none}.public-site .proof-strip{grid-template-columns:1fr}.public-site .proof-strip>div{border-right:0}.public-site .proof-strip>div:last-child{border-bottom:0}.public-site .card{padding:18px}.public-site .button{width:100%}}
@media(orientation:landscape) and (max-height:520px) and (max-width:900px){.public-site .nav-actions{padding-top:74px}.public-site .hero-visual{height:300px}.public-site .home-hero{grid-template-columns:1.05fr .95fr}.public-site .hero-copy{text-align:left}.public-site .hero-copy h1{font-size:2.7rem}.public-site .hero-copy>p{font-size:.92rem}.public-site .trust-row{display:none}}
@media(prefers-reduced-motion:reduce){.public-site .road-lines i,.public-site .school-car,.public-site .floating-card,.public-site .sky-glow{animation:none!important}.public-site .nav-actions{transition:none}}

/* v1.3.4 — public instructor availability */
.availability-hero,.availability-layout{width:min(1240px,calc(100% - 40px));margin-inline:auto}
.availability-hero{display:flex;align-items:center;justify-content:space-between;gap:clamp(20px,4vw,48px);margin:clamp(20px,4vw,48px) auto 28px;padding:clamp(24px,4vw,44px);overflow:hidden;position:relative}.availability-hero:after{content:"";position:absolute;right:-90px;top:-130px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 20%,transparent),transparent 68%);pointer-events:none}.availability-profile{display:flex;align-items:center;gap:20px;min-width:0}.availability-profile .hero-photo{width:clamp(74px,10vw,112px);height:clamp(74px,10vw,112px);flex:0 0 auto}.availability-profile h1{margin:.2rem 0 .55rem}.availability-profile p{margin:0;color:var(--muted);max-width:66ch}.availability-hero-actions{display:flex;flex-wrap:wrap;gap:10px;position:relative;z-index:1}.availability-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:clamp(20px,3vw,32px);align-items:start;margin-bottom:clamp(44px,8vw,90px)}.compact-heading{margin-bottom:18px}.availability-calendar{display:grid;gap:14px}.availability-day-card{display:grid;grid-template-columns:86px minmax(0,1fr);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.availability-day-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}.availability-date{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 10px;background:linear-gradient(150deg,color-mix(in srgb,var(--accent) 12%,var(--card)),color-mix(in srgb,var(--accent-2) 7%,var(--card)));border-right:1px solid var(--border)}.availability-date span,.availability-date small{text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--muted);font-size:.72rem}.availability-date strong{font-size:2rem;line-height:1.05;margin:3px 0}.availability-day-content{padding:18px 20px;min-width:0}.availability-day-heading{align-items:flex-start;margin-bottom:12px}.availability-day-heading>div{display:grid;gap:3px}.availability-day-heading small{color:var(--muted)}.availability-windows{display:grid;gap:9px}.availability-window{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-tint) 72%,transparent);border:1px solid color-mix(in srgb,var(--border) 80%,transparent)}.availability-window>div{display:grid;gap:2px;min-width:0}.availability-window small{color:var(--muted)}.sticky-summary{position:sticky;top:104px}.weekly-hours-list{display:grid;margin-top:14px}.weekly-hours-row{display:grid;grid-template-columns:minmax(92px,.7fr) minmax(0,1.3fr);gap:12px;padding:11px 0;border-bottom:1px solid var(--border)}.weekly-hours-row:last-child{border-bottom:0}.weekly-hours-row>span{text-align:right;overflow-wrap:anywhere}.availability-note{margin-top:20px;padding:15px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 8%,var(--card));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}.availability-note p{margin:.35rem 0 0;color:var(--muted)}.availability-empty{text-align:center;padding:clamp(34px,7vw,70px)}.empty-calendar-icon{width:58px;height:58px;margin:0 auto 16px;border:2px solid color-mix(in srgb,var(--accent) 55%,var(--border));border-radius:17px;display:grid;place-items:center;color:var(--accent);font-size:0}.empty-calendar-icon:before{content:"";width:27px;height:24px;border:2px solid currentColor;border-radius:6px;background:linear-gradient(currentColor,currentColor) 0 6px/100% 2px no-repeat}.availability-inline-empty{display:grid;gap:3px;padding:14px;border:1px dashed var(--border);border-radius:var(--radius-md)}
@media(max-width:900px){.availability-hero{align-items:flex-start;flex-direction:column}.availability-layout{grid-template-columns:1fr}.sticky-summary{position:static}.availability-sidebar{order:-1}.weekly-hours-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.availability-hero-actions{width:100%}.availability-hero-actions .button{flex:1 1 190px}}
@media(max-width:620px){.availability-hero,.availability-layout{width:calc(100% - 28px)}.availability-hero{padding:22px 18px}.availability-profile{align-items:flex-start}.availability-profile .hero-photo{width:68px;height:68px}.availability-profile h1{font-size:clamp(1.75rem,9vw,2.35rem)}.availability-day-card{grid-template-columns:64px minmax(0,1fr)}.availability-date{padding:14px 6px}.availability-date strong{font-size:1.55rem}.availability-day-content{padding:15px 13px}.availability-day-heading{display:flex;gap:10px}.availability-window{align-items:flex-start;flex-direction:column}.availability-window .button{width:100%}.weekly-hours-list{grid-template-columns:1fr}.availability-hero-actions{display:grid;grid-template-columns:1fr}.availability-hero-actions .button{width:100%}.availability-layout{gap:18px}}
@media(max-width:380px){.availability-hero,.availability-layout{width:calc(100% - 20px)}.availability-profile{display:grid;grid-template-columns:56px minmax(0,1fr);gap:13px}.availability-profile .hero-photo{width:56px;height:56px}.availability-profile p{grid-column:1/-1}.availability-day-card{grid-template-columns:1fr}.availability-date{flex-direction:row;justify-content:flex-start;gap:7px;border-right:0;border-bottom:1px solid var(--border)}.availability-date strong{font-size:1.2rem;margin:0}.availability-date span,.availability-date small{font-size:.7rem}}
\n/* v1.3.8 logo-only responsive refinements */
@media(max-width:900px){.public-site .brand.brand-logo-only{max-width:min(235px,55vw)}}
@media(max-width:640px){.public-site .brand.brand-logo-only{max-width:min(205px,58vw)}.public-site .brand-logo{max-width:100%;max-height:43px}}
@media(max-width:390px){.public-site .brand.brand-logo-only{max-width:min(170px,54vw)}.public-site .brand-logo{max-height:38px}}
