/* Rental Mobil Matic Tangsel — Frontend v5.4 CMS branding + readability */
.front-body{--v54-text:#17243a;--v54-muted:#66758a;--v54-navy:#10233f;--v54-blue:#0b5cff}

/* Dynamic logo */
.front-body .brand-logo-image{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:13px;background:#fff;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 5px 14px rgba(20,45,80,.06)}
.front-body .brand-logo-image img{width:100%;height:100%;object-fit:contain;padding:4px}
.front-body .public-brand .brand-copy{min-width:0;display:block}.front-body .public-brand .brand-copy b,.front-body .public-brand .brand-copy small{display:block}
.front-body .mobile-menu-brand{display:flex;align-items:center;gap:10px;min-width:0}.front-body .mobile-menu-brand>img{width:42px;height:42px;object-fit:contain;border-radius:10px;background:#fff;border:1px solid #e3e9f0;padding:3px}.front-body .mobile-menu-brand span{min-width:0}.front-body .mobile-menu-brand b,.front-body .mobile-menu-brand small{display:block}.front-body .mobile-menu-brand b{font-size:13px;color:#10233f}.front-body .mobile-menu-brand small{font-size:10px;color:#728095;margin-top:2px}

/* CMS hero image: image fills the header while a light readability veil protects text */
.front-body .app-home-hero.has-cms-hero{background:#edf5ff!important;isolation:isolate;padding-right:47%!important}
.front-body .app-home-hero.has-cms-hero:before{content:""!important;position:absolute!important;inset:0!important;height:auto!important;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.92) 33%,rgba(255,255,255,.58) 56%,rgba(255,255,255,.12) 78%,rgba(255,255,255,0) 100%)!important;z-index:1!important}
.front-body .app-home-hero.has-cms-hero:after{content:""!important;position:absolute!important;inset:0!important;width:auto!important;height:auto!important;right:auto!important;top:auto!important;border-radius:0!important;background:linear-gradient(0deg,rgba(18,42,77,.08),transparent 35%)!important;filter:none!important;z-index:1!important}
.front-body .cms-hero-media{position:absolute;inset:0;z-index:0;display:block}.front-body .cms-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center right;display:block}
.front-body .app-home-hero.has-cms-hero .app-home-hero-copy{z-index:3;max-width:600px}
.front-body .app-home-hero.has-cms-hero .app-home-kicker{color:#3d587d!important}.front-body .app-home-hero.has-cms-hero h1{color:#10233f!important;text-shadow:0 1px 0 rgba(255,255,255,.3)}.front-body .app-home-hero.has-cms-hero h1 span{color:#0b5cff!important}.front-body .app-home-hero.has-cms-hero p{color:#526783!important}.front-body .app-home-hero.has-cms-hero .app-ready-pill{z-index:3}

/* Readability fixes: legacy white text must not leak into white cards */
.front-body .public-main .page-head h1,.front-body .public-main .public-page-head h1,.front-body .public-main .section-head h1,.front-body .public-main .section-head h2,.front-body .public-main .content-page-card h1,.front-body .public-main .content-page-card h2,.front-body .public-main .content-page-card h3,.front-body .public-main .contact-side-card h1,.front-body .public-main .contact-side-card h2,.front-body .public-main .announcement-card h1,.front-body .public-main .announcement-card h2,.front-body .public-main .car-card h3,.front-body .public-main .fleet-row h3,.front-body .public-main .detail-card h1,.front-body .public-main .detail-card h2{color:var(--v54-navy)!important}
.front-body .public-main .page-head p,.front-body .public-main .public-page-head p,.front-body .public-main .section-head p,.front-body .public-main .rich-text,.front-body .public-main .content-page-card p,.front-body .public-main .contact-side-card p,.front-body .public-main .announcement-card p,.front-body .public-main .description,.front-body .public-main .muted-line{color:var(--v54-muted)!important}
.front-body .public-main label>span,.front-body .public-main .app-field>span,.front-body .public-main .form-help{color:#53647a!important}
.front-body .public-main input,.front-body .public-main select,.front-body .public-main textarea{color:#17243a!important;background:#fff!important}
.front-body .public-main input::placeholder,.front-body .public-main textarea::placeholder{color:#9aa5b4!important;opacity:1}
/* intentional text on colored surfaces */
.front-body .btn-primary,.front-body .btn-primary *,.front-body .chip.active,.front-body .chip.active *,.front-body .booking-code,.front-body .booking-code *,.front-body .home-feature-banner,.front-body .home-feature-banner h2,.front-body .home-feature-banner p,.front-body .home-feature-banner small{color:#fff!important}
.front-body .home-feature-banner p{color:#dce9ff!important}.front-body .home-feature-banner small{color:#cfe0ff!important}

/* Contact */
.front-body .modern-contact-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.front-body .modern-contact-list>div{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;border:1px solid #e5eaf1;background:#f8fafc;border-radius:14px;padding:12px}.front-body .modern-contact-list .contact-icon{width:42px;height:42px;border-radius:12px;background:#eaf2ff;color:#0b5cff;display:grid;place-items:center}.front-body .modern-contact-list small,.front-body .modern-contact-list b{display:block}.front-body .modern-contact-list small{font-size:10px;color:#7b8798}.front-body .modern-contact-list b{font-size:12px;color:#21324b;margin-top:2px;line-height:1.4}.front-body .contact-actions{display:flex;gap:9px;flex-wrap:wrap}

/* Footer */
.front-body .public-footer{max-width:1180px;margin:8px auto 0;padding:24px 28px 105px;border-top:1px solid #e2e8f0;display:flex;align-items:flex-start;justify-content:space-between;gap:30px;background:#fff}.front-body .public-footer b{font-size:14px;color:#17243a}.front-body .public-footer p{font-size:11px!important;color:#7a8798!important;margin:5px 0 0;max-width:520px}.front-body .public-footer-links{display:flex;gap:16px;flex-wrap:wrap}.front-body .public-footer-links a{font-size:11px;font-weight:800;color:#52627a}.front-body .public-footer-links a:hover{color:#0b5cff}

@media(max-width:760px){
  .front-body .brand-logo-image{width:34px!important;height:34px!important;flex-basis:34px!important;border-radius:9px!important}.front-body .brand-logo-image img{padding:2px!important}
  .front-body .mobile-site-header .public-brand .brand-copy{max-width:170px}.front-body .mobile-site-header .public-brand .brand-copy b{overflow:hidden;text-overflow:ellipsis}.front-body .mobile-site-header .public-brand .brand-copy small{overflow:hidden;text-overflow:ellipsis;max-width:160px}
  .front-body .app-home-hero.has-cms-hero{min-height:206px!important;padding:18px 38% 18px 16px!important}.front-body .app-home-hero.has-cms-hero:before{background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.91) 44%,rgba(255,255,255,.43) 70%,rgba(255,255,255,.06) 100%)!important}.front-body .cms-hero-media img{object-position:center right}.front-body .app-home-hero.has-cms-hero h1{font-size:22px!important}.front-body .app-home-hero.has-cms-hero p{font-size:10px!important;line-height:1.5!important;-webkit-line-clamp:4!important}.front-body .app-home-hero.has-cms-hero .app-home-kicker{font-size:9px!important}
  /* improve text that had become too tiny on mobile */
  .front-body .public-page-head p,.front-body .page-head p{font-size:11px!important;line-height:1.55!important}.front-body .section-head p{font-size:10.5px!important}.front-body .section-head>a{font-size:10.5px!important}.front-body .app-field>span{font-size:10px!important}.front-body .modern-car-card .muted-line{font-size:9px!important}.front-body .modern-car-card .price-mini{font-size:8.5px!important}.front-body .app-trust-item b{font-size:9px!important}.front-body .app-trust-item small{font-size:7.5px!important}.front-body .announcement-mini-grid small{font-size:9px!important}
  .front-body .modern-contact-list{grid-template-columns:1fr!important}.front-body .modern-contact-list>div{padding:11px!important}.front-body .modern-contact-list b{font-size:11px!important}.front-body .contact-actions{display:grid;grid-template-columns:1fr}.front-body .public-footer{display:none!important}
}
