
/* HerRide V13 — mobile-priority UX layer */
html{overflow-x:hidden;-webkit-text-size-adjust:100%}
body{overflow-x:hidden}
img,video,canvas,svg{max-width:100%;height:auto}
button,a,input,select,textarea{touch-action:manipulation}
input,select,textarea{font-size:16px!important} /* prevents iOS zoom */
button,.btn,.primary-btn,.choice,.service-btn{min-height:46px}
:focus-visible{outline:3px solid rgba(217,79,147,.34);outline-offset:2px}

/* Install prompt */
.hr-install-prompt{
 position:fixed;z-index:99999;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));
 display:grid;grid-template-columns:52px 1fr;gap:10px 12px;align-items:center;
 padding:12px;border-radius:18px;background:rgba(27,9,22,.97);color:#fff;
 border:1px solid rgba(255,255,255,.14);box-shadow:0 20px 60px rgba(35,8,25,.38);
 transform:translateY(24px);opacity:0;transition:.22s ease;backdrop-filter:blur(18px)
}
.hr-install-prompt.show{transform:none;opacity:1}
.hr-install-icon img{width:52px;height:52px;border-radius:14px;display:block;background:#fff}
.hr-install-copy{display:grid;gap:3px;min-width:0}.hr-install-copy strong{font-size:14px}.hr-install-copy span{font-size:12px;line-height:1.45;opacity:.82}
.hr-install-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:8px}
.hr-install-actions button{border:0;border-radius:12px;padding:10px 13px;font-weight:900}
.hr-install-main{background:linear-gradient(135deg,#ff4da6,#c53280);color:#fff}
.hr-install-later{background:rgba(255,255,255,.1);color:#fff}
.hr-install-launcher{display:flex;position:fixed!important;z-index:2147483646!important;right:24px!important;bottom:92px!important;left:auto!important;top:auto!important;border:1px solid rgba(255,255,255,.38);border-radius:999px;padding:9px 14px 9px 9px;background:linear-gradient(135deg,#3a172d,#c53280);color:#fff;box-shadow:0 16px 38px rgba(72,20,53,.38);align-items:center;gap:8px;font-weight:900;cursor:pointer;pointer-events:auto!important;visibility:visible;opacity:1;isolation:isolate;transform:none!important}
.hr-install-launcher img{width:30px;height:30px;border-radius:9px;background:#fff}.hr-install-launcher[hidden]{display:none!important}
@media(min-width:720px){.hr-install-prompt{left:auto;right:22px;max-width:410px;grid-template-columns:56px 1fr}.hr-install-icon img{width:56px;height:56px}}
@media(max-width:719px){.hr-install-launcher{right:14px!important;bottom:82px!important;max-width:calc(100vw - 28px)}}

/* Dedicated scroll-to-top button on every service page. */
.hr-service-to-top{position:fixed!important;z-index:2147483645!important;right:24px!important;bottom:24px!important;width:50px;height:50px;border:1px solid rgba(255,255,255,.45);border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#d94f93,#7b234f);color:#fff;font-size:25px;font-weight:900;line-height:1;box-shadow:0 14px 34px rgba(72,20,53,.34);cursor:pointer;pointer-events:auto!important;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.hr-service-to-top.show{opacity:1;visibility:visible;transform:none}
@media(max-width:719px){.hr-service-to-top{right:14px!important;bottom:18px!important;width:48px;height:48px}}

/* Mobile priority */
@media(max-width:820px){
 .container,.wrap,.section-inner,.hero,.airport-hero,.orders-hero,.academy-hero,.daily-hero,.courses-hero{max-width:100%!important}
 .hero,.airport-hero,.orders-hero,.academy-hero,.daily-hero,.courses-hero{
   grid-template-columns:1fr!important;gap:18px!important;padding-left:16px!important;padding-right:16px!important
 }
 .hero-copy{max-width:100%!important;text-align:start!important}
 .hero-actions,.hero-buttons{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;width:100%!important}
 .hero-actions>a,.hero-actions>button,.hero-buttons>a,.hero-buttons>button{width:100%!important;justify-content:center!important}
 .hero-visual,.airport-hero-visual,.orders-hero-visual,.daily-hero-visual,.courses-hero-visual{width:100%!important;margin:0 auto!important}
 .service-grid,.program-grid,.course-card-grid,[class*="cards-grid"],[class*="card-grid"]{grid-template-columns:1fr!important;gap:14px!important}
 .service-card,.program-card,.daily-type-card,.vehicle-showcase-card,.course-card{width:100%!important;max-width:100%!important;margin-inline:auto!important}
 .chat-section{padding-left:10px!important;padding-right:10px!important}
 .chat-stage{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important;min-width:0!important;gap:14px!important}
 .chat-stage>.reem-stage,.chat-stage>.chat-shell{grid-column:1!important;width:100%!important;max-width:100%!important;min-width:0!important;position:relative!important;top:auto!important}
 .chat-shell{grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
 .chat-person{max-width:280px!important;margin-inline:auto!important}
 .chat-stage{min-width:0!important;width:100%!important}
 .messages,.answer-area,.persistent-composer,.chat-head{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
 .msg{overflow-wrap:anywhere!important;word-break:normal!important}
 .chat-tools{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
 .modal-card{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;max-height:88vh!important;overflow:auto!important}
 .map-modal,.google-map-modal{max-width:100vw!important}
 #map,#googleMap{min-height:320px!important}
 .map-paste-row{display:grid!important;grid-template-columns:1fr!important}
 .map-paste-row button{width:100%!important}
 table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

/* Small phones */
@media(max-width:480px){
 body{font-size:15px}
 h1{font-size:clamp(28px,9vw,42px)!important;line-height:1.08!important}
 h2{font-size:clamp(24px,7vw,34px)!important}
 .service-card,.program-card,.daily-type-card,.vehicle-showcase-card,.course-card{border-radius:18px!important}
 .card-body{padding:14px!important}
 .chat-tools{grid-template-columns:1fr!important}
 .choice{width:100%!important}
 .day-grid{grid-template-columns:1fr 1fr!important}
 .courses-schedule-row{grid-template-columns:1fr!important}
 .courses-request-id-box{grid-template-columns:1fr!important}
 .courses-copy-id{width:100%!important}
 .chat-stage>.reem-stage{height:300px!important;min-height:300px!important;max-height:300px!important}
 .chat-stage>.reem-stage>img,.chat-stage>.reem-stage #nourAvatar,.chat-stage>.reem-stage #reemAvatar{height:300px!important;min-height:0!important;max-height:300px!important;object-fit:contain!important}
}

/* Safe areas on modern phones */
@supports(padding:max(0px)){
 body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
}
