/*
Theme Name: JMD Car Rental
Version: 1.3.8
Author: JMD Group
Description: Professional JMD Group car rental theme with booking and portal integration.
Text Domain: jmd-car-rental
*/
:root{--navy:#061b3b;--navy2:#082d57;--blue:#0865f5;--yellow:#ffd900;--ink:#111d34;--muted:#657187}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#f7f9fc}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto}.wrap{width:min(1200px,100%);margin:auto;padding:0 22px}.topline{background:var(--navy);color:#d7e3f8;font-size:12px;padding:9px 0}.topflex{display:flex;justify-content:space-between;gap:12px}.site-header{background:#fff}.masthead{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:7px;color:var(--navy);white-space:nowrap}.brand-mark{font-size:37px;letter-spacing:-4px;font-weight:1000;font-style:italic;color:var(--blue)}.brand-text{font-size:20px;letter-spacing:-1px;font-weight:900;font-style:italic}.brand-text small{display:block;font-size:10px;letter-spacing:2px;text-align:right}.custom-logo{max-width:240px;max-height:70px;width:auto}.head-info{display:flex;align-items:center;gap:9px;font-size:13px}.head-info small{display:block;color:#6a7180}.head-info strong{display:block}.info-icon{background:var(--blue);color:#fff;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:22px}.account-button,.yellow-button{display:inline-block;border:0;border-radius:6px;background:var(--yellow);color:#0c1930;padding:14px 23px;font-weight:800;box-shadow:0 3px 10px #00000012}.nav-band{background:var(--navy);color:white}.nav-inner{min-height:48px;display:flex;align-items:center;justify-content:center}.menu{display:flex;align-items:center;justify-content:center;gap:34px;margin:0;padding:0;list-style:none}.menu a{display:block;padding:16px 0;font-size:14px;font-weight:600}.menu a:hover,.menu .current-menu-item>a{color:var(--yellow)}.menu-toggle{display:none}.hero{position:relative;background:linear-gradient(110deg,rgba(2,25,54,.94),rgba(7,76,124,.80)),linear-gradient(130deg,#084f7b,#1b83b5 48%,#74d5d2);color:#fff;padding:65px 0 0;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:start;min-height:340px}.eyebrow{font-size:12px;letter-spacing:6px;font-weight:700}.hero h1{font-size:clamp(48px,6vw,82px);line-height:.96;margin:19px 0 15px;font-weight:1000;letter-spacing:-3px}.hero h1 em{display:block;color:var(--yellow);font-style:normal}.hero-subtitle{font-size:21px;line-height:1.35;font-weight:600}.hero-points{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;font-weight:700;margin-top:28px}.hero-points span{max-width:150px}.booking-panel{background:white;color:var(--ink);border-radius:13px;padding:18px;box-shadow:0 20px 40px #00152c50}.booking-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.booking-tabs a{padding:13px 5px;border-radius:6px;background:#f1f4f9;text-align:center;font-size:12px;font-weight:800}.booking-tabs a.active{background:var(--blue);color:white}.booking-panel h2{font-size:19px;margin:22px 0 7px}.booking-panel p{font-size:13px;color:#69768a}.booking-placeholder{padding:8px 0 10px}.booking-placeholder .yellow-button{width:100%;text-align:center}.hero-cars{width:100%;max-height:240px;object-fit:cover;object-position:center 50%;display:block;margin:20px auto 0;mask-image:linear-gradient(to bottom,#000 83%,transparent 100%)}.section{padding:68px 0}.section-kicker{text-align:center;color:#7c92ae;font-size:12px;letter-spacing:5px;font-weight:800}.section h2{text-align:center;font-size:clamp(27px,3.5vw,38px);margin:10px 0 12px}.section h2 span{color:var(--blue)}.section-intro{text-align:center;color:var(--muted);max-width:650px;margin:0 auto 32px;line-height:1.6}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{background:#fff;border:1px solid #e5eaf1;border-radius:10px;padding:26px 21px;box-shadow:0 10px 25px #0d32600d;display:flex;flex-direction:column;align-items:start}.service-symbol{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;color:#fff;font-size:23px;margin-bottom:17px}.blue{background:#0c6bff}.teal{background:#06a99f}.violet{background:#7941e6}.red{background:#e12b43}.service-card h3{font-size:17px;margin:0 0 10px}.service-card p{font-size:14px;line-height:1.5;color:var(--muted);flex:1}.service-card a{border:1px solid var(--blue);color:var(--blue);border-radius:5px;padding:10px 16px;font-size:13px;font-weight:800;margin-top:14px}.fleet{background:#f0f5fb}.empty-fleet{text-align:center;background:#fff;border:1px solid #dce6f0;border-radius:12px;padding:30px}.empty-fleet p{color:var(--muted)}.trust-band{background:linear-gradient(120deg,#083459,#071b3b);color:white;padding:24px 0}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.trust-grid>div{display:flex;align-items:center;gap:14px}.trust-grid b{font-size:32px;color:var(--yellow)}.trust-grid strong,.trust-grid small{display:block}.trust-grid small{font-size:12px;line-height:1.4;color:#d4e2f1;margin-top:4px}.site-footer{background:#051832;color:#d4ddef;padding:45px 0 15px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.4fr;gap:34px}.footer-grid h3{font-size:15px;color:#fff}.footer-grid a{display:block;font-size:13px;margin:10px 0}.footer-grid p{font-size:13px}.footer-brand{font-size:34px;color:#fff;font-weight:900;font-style:italic}.footer-brand span{color:#1e8cff}.copyright{display:flex;justify-content:space-between;border-top:1px solid #ffffff25;margin-top:35px;padding-top:15px;font-size:12px}.card{background:white;border-radius:12px;padding:25px;margin:20px auto}.card img{max-width:100%}input,select,textarea{max-width:100%;padding:11px;border:1px solid #c9d4e1;border-radius:6px}button,input[type=submit]{cursor:pointer}.booking-panel input,.booking-panel select{max-width:100%}.booking-panel input[type=submit],.booking-panel button[type=submit]{background:var(--yellow);color:#0c1930;border:0;padding:12px 20px;font-weight:800}.site-footer a:hover{color:var(--yellow)}@media(max-width:900px){.head-info{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.menu{gap:17px}.hero-grid{gap:20px}}@media(max-width:680px){.topflex span:nth-child(2),.topflex span:nth-child(3){display:none}.masthead{min-height:75px}.brand-mark{font-size:30px}.brand-text{font-size:16px}.account-button{font-size:12px;padding:12px}.nav-inner{display:block;padding-top:8px;padding-bottom:8px}.menu-toggle{display:block;background:transparent;color:white;border:1px solid #ffffff55;border-radius:5px;padding:9px 13px}.nav-inner nav{display:none}.nav-inner nav.is-open{display:block}.menu{display:block}.menu a{padding:11px 0}.hero{padding-top:35px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:52px}.hero-cars{margin-top:25px;min-height:105px;object-fit:cover}.booking-tabs a{font-size:11px}.service-grid,.trust-grid,.footer-grid{grid-template-columns:1fr 1fr}.section{padding:44px 0}.copyright{display:block}.copyright span{display:block;margin-top:9px}}@media(max-width:430px){.service-grid,.trust-grid,.footer-grid{grid-template-columns:1fr}.hero-points{gap:9px}.hero h1{font-size:43px}.brand-text small{font-size:8px}}

/* Branded frontend portal sign-in: the yellow header button opens the portal page. */
.jmd-portal-login{max-width:520px;margin:48px auto 70px;padding:40px;background:#fff;border:1px solid #e1e8f1;border-radius:18px;box-shadow:0 18px 55px rgba(6,27,59,.12);color:#14233c}
.jmd-portal-login:before{content:"JMD CAR RENTAL  ·  BY JMD GROUP";display:block;font-size:12px;letter-spacing:2px;color:#0865f5;font-weight:800;margin-bottom:12px}
.jmd-portal-login h2{font-size:29px;letter-spacing:-.7px;margin:0 0 9px;color:#061b3b}
.jmd-portal-login>p{color:#64748b;margin:0 0 25px;line-height:1.6}
.jmd-portal-login form{display:grid;gap:10px}.jmd-portal-login label{font-size:14px;font-weight:700;color:#203451}
.jmd-portal-login input[type=text],.jmd-portal-login input[type=password]{display:block;width:100%;margin-top:7px;border:1px solid #cbd7e5;border-radius:8px;padding:14px;font-size:15px}
.jmd-portal-login .login-remember label{font-size:13px;font-weight:500}.jmd-portal-login .login-submit input{background:#ffd900;color:#071b3b;border:0;border-radius:8px;width:100%;font-size:16px;font-weight:800;padding:15px;cursor:pointer}
.jmd-portal-login .login-submit input:hover{background:#f1c900}.jmd-portal-login .jmd-lost-password{display:block;text-align:right;color:#0865f5;font-size:13px;font-weight:700;margin-top:5px}
@media(max-width:600px){.jmd-portal-login{margin:20px 15px 45px;padding:25px 20px}}

/* 1.2.2 supplied vehicle showcase homepage */
.showcase-section{background:#fff}.showcase-heading{text-align:center;font-size:clamp(28px,3.4vw,40px);margin:10px 0 15px}.showcase-heading span{color:var(--blue)}.jmd-showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.jmd-showcase-card{overflow:hidden;background:#fff;border:1px solid #e2e9f2;border-radius:16px;box-shadow:0 12px 30px rgba(5,30,62,.08)}.jmd-showcase-card>a{display:block;aspect-ratio:1.75;overflow:hidden;background:#f7f9fc}.jmd-showcase-card img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .25s}.jmd-showcase-card>a:hover img{transform:scale(1.025)}.jmd-showcase-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 19px}.jmd-showcase-meta h3{font-size:16px;margin:0}.jmd-showcase-meta a{font-size:13px;font-weight:800;color:var(--blue)}.jmd-showcase-note{text-align:center;color:#6d7889;font-size:12px;line-height:1.5;margin:20px auto}.jmd-showcase-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px;margin-top:20px}.jmd-outline-button{display:inline-block;padding:13px 22px;border:2px solid var(--blue);border-radius:6px;color:var(--blue);font-weight:800}.hero{padding-bottom:48px}.hero-grid{min-height:unset}@media(max-width:740px){.jmd-showcase-grid{grid-template-columns:1fr}.jmd-showcase-meta{align-items:flex-start;flex-direction:column}.jmd-showcase-card>a{aspect-ratio:1.6}}

/* 1.2.3: each supplied composite is displayed as ONE complete picture */
.jmd-showcase-grid{grid-template-columns:minmax(0,1fr);max-width:1100px;margin:0 auto;gap:30px}
.jmd-showcase-card>a{aspect-ratio:auto;overflow:visible;background:#fff}
.jmd-showcase-card img{width:100%;height:auto;max-height:none;object-fit:contain;transform:none!important}
.jmd-showcase-card>a:hover img{transform:none}
.jmd-showcase-meta{padding:17px 22px}
@media(max-width:740px){.jmd-showcase-card>a{aspect-ratio:auto}.jmd-showcase-grid{gap:20px}}

/* 1.2.4: individual supplied rear three-quarter vehicle photos */
.jmd-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1200px;gap:24px}
.jmd-showcase-card>a{aspect-ratio:1.9;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff}
.jmd-showcase-card img{display:block;width:100%;height:100%;object-fit:contain}
.jmd-showcase-meta{min-height:74px}
@media(max-width:740px){.jmd-showcase-grid{grid-template-columns:1fr}.jmd-showcase-card>a{aspect-ratio:1.8}}

/* v1.2.5: user-supplied three-car homepage visual, responsive and uncropped */
.jmd-new-home-hero{background:#f7fbff;text-align:center;padding:0 0 22px;overflow:hidden}
.jmd-new-hero-image{display:block;width:100%;height:auto;max-width:1800px;margin:0 auto;object-fit:contain}
.jmd-new-hero-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:4px}
.jmd-new-primary,.jmd-new-secondary{display:inline-block;border-radius:9px;padding:14px 25px;font-weight:800;font-size:15px}
.jmd-new-primary{background:#0865f5;color:#fff}.jmd-new-secondary{background:#fff;border:2px solid #0865f5;color:#07356a}
.jmd-home-booking{background:#f1f6fc}.jmd-home-booking-inner{max-width:980px;margin:0 auto}.jmd-home-booking-inner>div:first-child{text-align:center;margin-bottom:24px}.jmd-home-booking-inner>div:first-child p{color:#52627a}
.jmd-home-booking-form{background:#fff;border-radius:16px;padding:25px;box-shadow:0 10px 35px #0c315116}
.jmd-home-booking-form input,.jmd-home-booking-form select,.jmd-home-booking-form textarea{max-width:100%}
@media(max-width:680px){.jmd-new-hero-actions{padding:0 16px}.jmd-new-primary,.jmd-new-secondary{width:100%;max-width:360px}.jmd-home-booking-form{padding:14px}.jmd-new-home-hero{padding-bottom:18px}}

/* v1.2.6: single, accessible white top navigation */
.jmd-top-navigation{background:#fff;border-bottom:1px solid #e3e8ef;position:relative;z-index:50;box-shadow:0 1px 5px rgba(0,0,0,.05)}
.jmd-top-nav-inner{display:flex;justify-content:center;align-items:center;min-height:68px}
.jmd-top-menu{display:flex;justify-content:center;align-items:center;gap:clamp(15px,2.4vw,40px);padding:0;margin:0;list-style:none}
.jmd-top-menu li{margin:0;padding:0;list-style:none}
.jmd-top-menu a{display:block;position:relative;padding:22px 0 19px;font-size:clamp(13px,1.25vw,17px);font-weight:700;color:#243544;white-space:nowrap}
.jmd-top-menu a:hover,.jmd-top-menu a:focus-visible,.jmd-top-menu a[aria-current="page"]{color:#116ca8}
.jmd-top-menu a[aria-current="page"]:after,.jmd-top-menu a:hover:after{content:"";position:absolute;left:0;right:0;bottom:9px;height:4px;border-radius:6px;background:#2277af}
.jmd-mobile-menu-toggle{display:none;border:1px solid #cbd6e1;background:#fff;color:#243544;border-radius:6px;padding:10px 15px;font-weight:700}
@media(max-width:760px){.jmd-top-nav-inner{display:block;min-height:0;padding-top:10px;padding-bottom:10px}.jmd-mobile-menu-toggle{display:block}.jmd-top-navigation nav{display:none}.jmd-top-navigation nav.is-open{display:block}.jmd-top-menu{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 0}.jmd-top-menu a{padding:12px 3px;font-size:15px}.jmd-top-menu a[aria-current="page"]:after,.jmd-top-menu a:hover:after{bottom:4px;right:auto;width:55px}}

/* v1.2.7: contact/account masthead first; white main menu directly below */
.site-header{position:relative;z-index:51;border-bottom:1px solid #edf0f5}
.jmd-top-nav-inner{justify-content:space-between;gap:22px;min-height:70px}
.jmd-top-navigation nav{flex:1;min-width:0}
.jmd-top-menu{justify-content:flex-start;gap:clamp(12px,1.55vw,26px)}
.jmd-top-menu a{font-size:clamp(12px,1.1vw,15px)}
.jmd-nav-book{flex:none;background:#27394f;color:white;border-radius:8px;padding:14px 18px;font-weight:700;font-size:14px;white-space:nowrap}
.jmd-nav-book:hover,.jmd-nav-book:focus-visible{background:#116ca8;color:white}
@media(max-width:900px){.jmd-top-nav-inner{gap:12px}.jmd-top-menu{gap:12px}.jmd-nav-book{padding:12px;font-size:12px}}
@media(max-width:760px){.jmd-top-nav-inner{display:flex;flex-wrap:wrap;justify-content:space-between}.jmd-top-navigation nav{flex:0 0 100%;order:3}.jmd-top-navigation nav.is-open{display:block}.jmd-nav-book{margin-left:auto}.jmd-mobile-menu-toggle{order:0}.jmd-top-menu{display:flex;flex-direction:column;align-items:stretch}}

/* Keep the existing white navigation background without the removed links or button. */
.jmd-empty-navigation{background:#fff;min-height:12px;border-bottom:1px solid #e9edf3;}

/* v1.3.1 restore primary menu, no empty spacer */
.jmd-empty-navigation{display:none!important}
#jmd-primary-navigation{background:#fff;min-height:70px}

/* v1.3.2: retain the upper navigation and a clean separation above the vehicle hero. */
#jmd-primary-navigation{margin-bottom:0}
.jmd-new-home-hero{clear:both}

/* v1.3.4: centre the primary navigation links on desktop while retaining the booking action at right. */
@media (min-width: 1101px) {
  #jmd-primary-navigation .jmd-top-nav-inner {position:relative;justify-content:center;min-height:70px;padding-right:205px;padding-left:22px;}
  #jmd-primary-navigation nav {flex:0 1 auto;min-width:0;}
  #jmd-primary-navigation .jmd-top-menu {justify-content:center;gap:clamp(12px,1.4vw,25px);}
  #jmd-primary-navigation .jmd-nav-book {position:absolute;right:22px;top:50%;transform:translateY(-50%);}
}

/* v1.3.6: vehicle search immediately beneath the main navigation, inside banner area */
.jmd-banner-search{position:relative;z-index:2;background:linear-gradient(115deg,#071b3b,#104f83);padding:19px 0 22px;color:#fff}
.jmd-banner-search-form{display:grid;grid-template-columns:1.15fr repeat(2,minmax(155px,1.2fr)) repeat(3,minmax(110px,.85fr)) auto;align-items:end;gap:12px}
.jmd-banner-search-title{align-self:center}.jmd-banner-search-title strong{display:block;font-size:17px}.jmd-banner-search-title span{display:block;font-size:12px;color:#cbdcf2;margin-top:4px}
.jmd-banner-search-form label{font-size:12px;font-weight:700;display:flex;flex-direction:column;gap:7px}
.jmd-banner-search-form input,.jmd-banner-search-form select{width:100%;min-width:0;min-height:43px;background:white;color:#15243d;border:1px solid #b8c9df;border-radius:7px;padding:9px;font-size:13px}
.jmd-banner-search-form button{min-height:43px;border:0;border-radius:7px;padding:9px 18px;background:#ffd900;color:#071b3b;font-weight:800;white-space:nowrap}
.home #fleet .jmd-fs-search-top{display:none}
@media(max-width:1200px){.jmd-banner-search-form{grid-template-columns:repeat(3,minmax(0,1fr))}.jmd-banner-search-title{grid-column:1/-1}}
@media(max-width:650px){.jmd-banner-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.jmd-banner-search-title,.jmd-banner-search-form button{grid-column:1/-1}}
@media(max-width:380px){.jmd-banner-search-form{grid-template-columns:1fr}.jmd-banner-search-form label{grid-column:1/-1}}

/* Chauffeuring search immediately below the navigation */
.jmd-banner-chauffeur{padding:12px 0 16px}.jmd-banner-chauffeur h2{margin:0 0 6px}.jmd-banner-chauffeur p{margin:4px 0 12px}.jmd-chauffeur-search-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end}.jmd-chauffeur-search-form label{display:flex;flex-direction:column;gap:5px;font-weight:600}.jmd-chauffeur-search-form input,.jmd-chauffeur-search-form select{width:100%;min-height:43px;border:1px solid #cbd5e1;border-radius:7px;padding:8px}.jmd-chauffeur-search-form button,.jmd-chauffeur-request{border:0;border-radius:7px;background:#ef6925;color:white!important;font-weight:700;padding:12px 18px;text-decoration:none;cursor:pointer;display:inline-block}.jmd-chauffeur-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin:18px 0 8px}.jmd-chauffeur-result{background:white;border:1px solid #dce3ec;border-radius:12px;padding:20px;color:#14233b}.jmd-chauffeur-result h3{margin:0 0 8px}.jmd-chauffeur-request-status{color:#13623b;font-size:14px}.jmd-chauffeur-prices{margin:12px 0}.jmd-chauffeur-prices>div{display:flex;justify-content:space-between;gap:15px;padding:7px 0;border-bottom:1px solid #e5e7eb}.jmd-chauffeur-disclaimer{font-size:13px}@media(max-width:900px){.jmd-chauffeur-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.jmd-chauffeur-search-form{grid-template-columns:1fr}}

/* Airport transfer search in the banner below the navigation */
.jmd-banner-airport{padding:12px 0 16px}.jmd-banner-airport h2{margin:0 0 6px}.jmd-banner-airport>p{margin:4px 0 12px}.jmd-airport-search-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.jmd-airport-search-form label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:13px}.jmd-airport-search-form input,.jmd-airport-search-form select{width:100%;min-height:43px;border:1px solid #cbd5e1;border-radius:7px;padding:8px;color:#15243d;background:#fff}.jmd-airport-search-form button,.jmd-airport-request{border:0;border-radius:7px;background:#ef6925;color:white!important;font-weight:700;padding:12px 18px;text-decoration:none;cursor:pointer;display:inline-block}.jmd-airport-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:18px 0 8px}.jmd-airport-result{background:#fff;border:1px solid #dce3ec;border-radius:12px;padding:20px;color:#14233b}.jmd-airport-result h3{margin:0 0 8px}.jmd-airport-request-status{color:#13623b;font-size:14px}.jmd-airport-price{font-size:21px;font-weight:800;margin:12px 0}.jmd-airport-note{font-size:13px}.jmd-airport-disclaimer{font-size:13px}@media(max-width:900px){.jmd-airport-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.jmd-airport-search-form{grid-template-columns:1fr}}
