/* MIRO approved brand: one visual foundation, role-specific layouts retained. */
@font-face{font-family:"MIRO Jakarta";src:url("../fonts/plus-jakarta-sans-latin.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
:is(#miro-new-quote,[data-sdc-quote-host],#miro-portal-app,#miro-operations,.miro-driver-job,body.miro-driver-portal,.miro-save-dialog){--miro-ui-font:"MIRO Jakarta","Plus Jakarta Sans",sans-serif;--miro-ui-ink:#13201b;--miro-ui-yellow:#ffce00;--miro-ui-paper:#f4f4ef;--miro-ui-surface:#fff;--miro-ui-muted:#526158;--miro-ui-line:#dce3dc;--miro-ui-control-border:#becbc2;--miro-ui-radius:12px;--miro-ui-control-radius:8px;--miro-ui-overlay-radius:16px;--miro-ui-control-height:48px;--miro-ui-yellow-hover:#edbd00;--miro-ui-focus:#967500;font-family:var(--miro-ui-font);color:var(--miro-ui-ink);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
:is(#miro-new-quote,[data-sdc-quote-host],#miro-portal-app,#miro-operations,.miro-driver-job,body.miro-driver-portal,.miro-save-dialog) :is(h1,h2,h3,h4){font-family:var(--miro-ui-font);font-weight:800;letter-spacing:-.035em;line-height:1.2}
:is(#miro-new-quote,[data-sdc-quote-host],#miro-portal-app,#miro-operations,.miro-driver-job,body.miro-driver-portal,.miro-save-dialog) :is(button,input,select,textarea){font-family:var(--miro-ui-font)}
:is(#miro-new-quote,[data-sdc-quote-host],#miro-portal-app,#miro-operations,.miro-driver-job,body.miro-driver-portal,.miro-save-dialog) :is(input,select,textarea){border-radius:8px;min-height:48px;font-size:16px;line-height:1.5}
:is(#miro-new-quote,[data-sdc-quote-host],#miro-portal-app,#miro-operations,.miro-driver-job,body.miro-driver-portal) :is(input[type=checkbox],input[type=radio]){min-height:0;accent-color:#166534}
:is(#miro-new-quote,[data-sdc-quote-host],#miro-portal-app,#miro-operations,.miro-driver-job,body.miro-driver-portal) :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #967500;outline-offset:3px}
:is(#miro-new-quote,[data-sdc-quote-host],#miro-portal-app,#miro-operations,.miro-driver-job) a{text-underline-offset:4px}
/* Quote page has the same spacious introduction and white form surface as the website. */
#miro-new-quote.sdc-quote-page{max-width:1120px;margin:0 auto;padding:64px 32px 80px;background:#f4f4ef;border:0;border-radius:0}
#miro-new-quote.sdc-quote-page .sdc-entry-intro{max-width:760px;margin:0 0 36px;padding:0}
#miro-new-quote.sdc-quote-page .sdc-entry-intro h1{font-size:clamp(32px,3.5vw,48px);line-height:1.12;margin:0 0 20px;max-width:20ch;color:#13201b}
#miro-new-quote.sdc-quote-page .sdc-entry-intro p{font-size:17px;line-height:1.65;color:#526158;margin:0;max-width:58ch}
#miro-new-quote.sdc-quote-page .miro-hero-card[data-quote-hero]{max-width:760px;margin:0;padding:32px!important;border:1px solid #becbc2!important;background:#fff!important;box-shadow:0 8px 28px rgb(19 32 27 / .04)!important}
#miro-new-quote.sdc-quote-page .miro-hero-card[data-quote-hero] h3{font-size:26px!important;line-height:1.25!important;color:#13201b!important;margin:0 0 20px!important}
#miro-new-quote.sdc-quote-page .miro-hero-card[data-quote-hero] form:not([hidden]){display:grid;grid-template-columns:1fr 1fr!important;gap:20px!important}
#miro-new-quote.sdc-quote-page .miro-hero-card[data-quote-hero] form label{margin:0!important;align-self:end;min-width:0}
@media (max-width:767px){
 #miro-new-quote.sdc-quote-page .miro-hero-card[data-quote-hero] form:not([hidden]){grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
}
#miro-new-quote.sdc-quote-page .miro-hero-card[data-quote-hero] .mh-note{color:#526158!important;border-color:#dce3dc!important}
#miro-new-quote.sdc-quote-page .mh-guest{color:#526158;font-size:13px;line-height:1.6;margin:12px 0 0}
#miro-new-quote.sdc-quote-page .miro-google-rating{margin-bottom:24px!important}
#miro-sdc-demo{font-family:"MIRO Jakarta","Plus Jakarta Sans",sans-serif}
#miro-sdc-demo :is(.ms-panel,.ms-side){border-radius:12px;border-color:#becbc2}
#miro-sdc-demo .ms-side{background:#13201b;color:#fff}
#miro-sdc-demo .ms-side :is(h2,h3,p,strong){color:#fff}
#miro-sdc-demo .ms-side .ms-price{color:#ffce00}
#miro-sdc-demo :is(.ms-primary,.ms-btn.primary){border-radius:8px;background:#ffce00;color:#13201b}
#miro-sdc-demo :is(.ms-small,.ms-helper){color:#526158}
/* Existing role controls keep their semantics and density. */
#miro-portal-app.miro-portal{background:#f4f4ef;border:1px solid #becbc2;border-radius:12px}
#miro-portal-app .miro-portal__header{background:#13201b;color:#fff;border-top:0;padding:28px 32px}
#miro-portal-app .miro-portal__header :is(p,h1,h2,h3,a){color:#fff}
#miro-portal-app .miro-portal__tabs{padding:20px 32px 0;gap:8px}
#miro-portal-app .miro-portal__tabs button{min-height:48px;border-radius:8px;font-weight:700}
#miro-portal-app :is(.miro-portal__panel,.miro-portal__content){padding:28px 32px}
#miro-portal-app :is(.miro-booking-card,.miro-portal__booking){border:1px solid #becbc2;border-radius:12px;background:#fff}
#miro-portal-app :is(th,td){padding:14px 16px;border-color:#dce3dc}
#miro-operations .ops-panel{background:#fff;border:1px solid #dce3dc;border-radius:12px}
#miro-operations .ops-detail-head{padding:28px;background:#fff;border-bottom:1px solid #dce3dc}
#miro-operations .ops-ref{font-size:23px;font-weight:800;letter-spacing:-.035em}
#miro-operations .ops-card{border-color:#dce3dc;border-radius:12px}
#miro-operations .ops-btn{border-radius:8px;min-height:44px;font-weight:700}
#miro-operations .ops-btn.primary{background:#ffce00;border-color:#ffce00;color:#13201b}
#miro-operations .ops-btn.primary:hover{background:#edbd00;border-color:#edbd00}
body.miro-driver-portal .mds-header{background:#13201b;color:#fff;border-bottom:1px solid #526158}
body.miro-driver-portal :is(.mj-job,.mj-card,.driver-job-card){border-radius:12px;border-color:#becbc2;background:#fff}
body.miro-driver-portal :is(.mj-primary,.mds-primary){background:#ffce00;color:#13201b;border-radius:8px}
@media(max-width:700px){#miro-new-quote.sdc-quote-page{padding:32px 16px 48px}#miro-new-quote.sdc-quote-page .sdc-entry-intro{margin-bottom:28px}#miro-new-quote.sdc-quote-page .miro-hero-card[data-quote-hero]{padding:24px!important}#miro-new-quote.sdc-quote-page .miro-hero-card[data-quote-hero] form{grid-template-columns:1fr!important;gap:20px!important}#miro-portal-app .miro-portal__header{padding:24px 20px}#miro-portal-app .miro-portal__tabs{padding:20px 16px 0}#miro-portal-app :is(.miro-portal__panel,.miro-portal__content){padding:24px 16px}#miro-operations .ops-detail-head{padding:20px}}
@media(prefers-reduced-motion:reduce){:is(#miro-new-quote,#miro-portal-app,#miro-operations,.miro-driver-job) *{scroll-behavior:auto;transition:none}}

#miro-new-quote.sdc-quote-page .miro-hero-card form>button{grid-column:1/-1}

/* Result and hidden screens must win over entry form layout. */
#miro-new-quote.sdc-quote-page .miro-hero-card.mh-has-tier-prices form{display:none!important}
#miro-sdc-demo{background:#f4f4ef!important;color:#13201b!important}
#miro-sdc-demo .ms-head{scroll-margin-top:120px}
#miro-sdc-demo .ms-panel{border:1px solid #becbc2;border-radius:12px;box-shadow:none}
#miro-sdc-demo .ms-side{background:#13201b;border-radius:12px}
#miro-sdc-demo .ms-side .ms-price{color:#ffce00}
#miro-sdc-demo .ms-side :is(p,small,.ms-helper){color:#dce3dc}
#miro-sdc-demo .ms-recommendation:has(>p:empty){display:none}
#miro-sdc-demo :is(input,select,textarea){border-radius:8px}
#miro-sdc-demo :is(.ms-error,.ms-field-error){color:#b42318;background:#fff0ee}
.miro-hero-card[data-quote-hero] label{font-size:14px!important}

/* Legacy page-level calculator CSS must not override the shared engine surface. */
.mch-calculator:has(.miro-hero-card[data-quote-hero]){background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.mch-calculator:has(.miro-hero-card[data-quote-hero]) .mch-calc-title{display:none!important}

/* Places suggestions stay clickable above the quote overlay. */
.pac-container{z-index:2147483000!important;pointer-events:auto!important;color:#13201b;background:#fff}
