/* Garuda visual polish V2 — intentionally preserves approved content, brand, and behaviour. */
/* Calm visual rhythm: maintain editorial contrast, avoid large dead zones. */
.gb-site .gb-section { padding-block: 94px; }
.gb-site .gb-section-intro { margin-bottom: 32px; }
.gb-site .gb-fleet-layout { gap: 17px; min-height: 540px; }
.gb-site .gb-classic-card { min-height: 530px; }
.gb-site .gb-secondary-vehicles { gap: 17px; }
.gb-site .gb-fleet-outro { padding-top: 18px; }
.gb-site .gb-classic-image img { object-position: 52% 53%; }
/* Keep the scooter and commuter bikes entirely visible, not cropped off at the wheel or mirror. */
.gb-site .gb-category-card { grid-template-columns: 48% 52%; }
.gb-site .gb-category-card img { display:block; object-fit: contain; object-position:center; width:100%; height:100%; mix-blend-mode:multiply; }
.gb-site .gb-category-bottom { padding: 23px 22px 23px 8px; }
.gb-site .gb-category-bottom p { max-width: 22ch; }
.gb-site .gb-hero-img-wrap img { object-position: 51% 51%; }
/* Remove the fake map-grid decoration. The location remains independently checkable on Maps. */
.gb-site .gb-location-grid-art { background: radial-gradient(circle at 50% 35%,#2b6248 0,#1d4734 33%,#15372a 72%); }
.gb-site .gb-location-grid-art > span { display:none; }
.gb-site .gb-location-grid-art:after { content:""; position:absolute; inset:25px 25px 27%; background:url('garuda-mark-light.png') center 34% / clamp(96px,13vw,170px) no-repeat; opacity:.28; }
.gb-site .gb-location-text { background: linear-gradient(0deg,#103a2bf5 10%,#153a2bd9 65%,transparent); }
.gb-site .gb-trust-asterisk { opacity:.4; }
/* Make supporting pages less stretched while keeping a comfortable reading measure. */
.gb-extra .gb-extra-section { padding-block:70px 88px; }
@media (max-width: 900px) {
 .gb-site .gb-section { padding-block:70px; }
 .gb-site .gb-section-intro { margin-bottom:25px; }
 .gb-site .gb-classic-card { min-height:440px; }
 .gb-site .gb-secondary-vehicles { gap:13px; }
 .gb-site .gb-category-card { grid-template-columns:1fr; }
 .gb-site .gb-category-card img { height:180px; }
 .gb-site .gb-category-bottom { padding:15px 17px 21px; }
}
@media (max-width: 760px) {
 .gb-site .gb-section { padding-block:61px; }
 .gb-site .gb-section-intro { gap:10px; }
 .gb-site .gb-section-intro h2 { font-size:clamp(2.55rem,8.3vw,3.45rem); }
 .gb-site .gb-section-intro>p { line-height:1.65; }
 .gb-site .gb-hero-inner { padding-top:31px; padding-bottom:42px; gap:25px; }
 .gb-site .gb-hero-display { margin-block:22px 16px!important; line-height:.95; }
 .gb-site .gb-hero-description { line-height:1.6; }
 .gb-site .gb-hero-subline { margin-top:14px!important; }
 .gb-site .gb-hero-visual { min-height:320px; }
 .gb-site .gb-hero-img-wrap { height:320px; }
 .gb-site .gb-classic-card { min-height:410px; }
 .gb-site .gb-booking { padding-block:62px; }
 .gb-site .gb-book-steps { gap:16px; margin-block:23px 21px; }
 .gb-site .gb-trust-location { min-height:325px; }
 .gb-site .gb-location-text { padding-top:75px; }
 .gb-site .gb-trust-grid { gap:13px; }
 .gb-site .gb-journey-steps article { min-height:0; }
 /* The sticky contact bar appears only after the hero; it cannot cover the first-screen photo. */
 .page-home .mobile-action-bar { opacity:0; transform:translateY(115%); pointer-events:none; transition:transform .22s ease,opacity .22s ease; }
 .page-home.gb-mobile-contact-active .mobile-action-bar { opacity:1; transform:translateY(0); pointer-events:auto; }
}
@media (max-width: 500px) {
 .gb-site .gb-hero-display { font-size:clamp(3.46rem,12.6vw,4.4rem)!important; }
 .gb-site .gb-hero-visual { min-height:290px; }
 .gb-site .gb-hero-img-wrap { height:290px; border-radius:100px 100px 7px 7px; }
 .gb-site .gb-hero-img-wrap:before { border-radius:92px 92px 4px 4px; }
 .gb-site .gb-hero-img-wrap img { object-position:51% 55%; }
 /* Remove the cartoon-like circle and unreadably tiny vehicle label on narrow screens. */
 .gb-site .gb-image-stamp, .gb-site .gb-hero-vehicle-tag { display:none; }
 .gb-site .gb-festive-lights { top:-8px; }
 .gb-site .gb-section-intro h2 { font-size:clamp(2.45rem,9vw,3.05rem); line-height:1.06; }
 .gb-site .gb-classic-card { min-height:370px; }
 .gb-site .gb-classic-bottom h3 { font-size:2.65rem; }
 .gb-site .gb-secondary-vehicles { gap:12px; }
 .gb-site .gb-category-card { grid-template-columns:42% 58%; min-height:185px; }
 .gb-site .gb-category-card img { height:100%; width:100%; object-fit:contain; padding:5px; }
 .gb-site .gb-category-bottom { padding:17px 18px 17px 5px; }
 .gb-site .gb-category-bottom>span { font-size:.52rem; }
 .gb-site .gb-category-title { gap:8px; }
 .gb-site .gb-category-title h3 { font-size:clamp(1.7rem,7vw,2.0rem); }
 .gb-site .gb-category-title a { flex-shrink:0; }
 .gb-site .gb-category-bottom p { font-size:.73rem; line-height:1.55; }
 .gb-site .gb-booking-story h2 { font-size:clamp(2.6rem,9.3vw,3rem); line-height:1.06; }
 .gb-site .gb-booking-story h2 br { display:none; }
 .gb-site .gb-book-steps > div { gap:15px; }
 .gb-site .gb-form-panel { padding:23px 18px; }
 .gb-site .gb-form-top h3 { font-size:2.15rem; }
 .gb-site .gb-trust-location { min-height:320px; }
 .gb-site .gb-location-text { padding:90px 22px 23px; }
 .gb-site .gb-location-text h3 { font-size:2.55rem; }
 .gb-site .gb-trust-quote h3 { font-size:2.45rem; }
 .gb-site .gb-journey-steps article { padding:19px 18px; }
 .gb-site .gb-faq { padding-block:61px; }
 .gb-site .gb-final { padding-block:49px 60px; }
}
@media (max-width:365px) {
 .gb-site .gb-category-card { grid-template-columns:39% 61%; }
 .gb-site .gb-category-title h3 { font-size:1.55rem; }
 .gb-site .gb-category-bottom { padding-right:10px; }
}
@media(prefers-reduced-motion:reduce) {
 .page-home .mobile-action-bar { transition:none; }
}
