
/* HerRide Master Final UI — unified across all service pages */
:root{
  --hr-bg:#fff9fc;--hr-card:#ffffff;--hr-card-soft:#fff2f8;--hr-card-deep:#f7e8f2;
  --hr-pink:#e94f9a;--hr-pink2:#ff76b8;--hr-berry:#a61f62;--hr-ink:#2b2030;
  --hr-shadow-1:0 10px 28px rgba(82,25,68,.10);--hr-shadow-2:0 18px 46px rgba(82,25,68,.16);--hr-shadow-3:0 26px 70px rgba(82,25,68,.22);
}
body{background:linear-gradient(180deg,#fffafd 0%,#fff 30%,#fff7fb 100%)!important;color:var(--hr-ink)}
main>section{position:relative}
/* mobile-first readability */
body,button,input,textarea,select{font-family:'Cairo',sans-serif!important}
.hero-copy p,.section-heading p,.msg,.terms-short,.location-preview,.human-note{font-weight:650!important}
.section-heading h2,.hero-copy h1,.chat-head h2,.program-card h3,.vehicle-content h3{font-weight:900!important}
/* unified card depth */
.program-card,.vehicle-showcase-card,.order-option,.airport-debug-card,.airport-terms-card,.chat-shell,.reem-stage,.location-preview,.hr-price-summary,.longtrip-discount-card,.chat-policy-consent{
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(255,244,250,.96))!important;
  border:1px solid rgba(233,79,154,.18)!important;
  box-shadow:var(--hr-shadow-2)!important;
}
.program-card,.vehicle-showcase-card,.order-option{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,filter .3s ease!important;overflow:hidden}
.program-card:hover,.vehicle-showcase-card:hover,.order-option:hover{transform:translateY(-6px) perspective(900px) rotateX(1.2deg)!important;box-shadow:var(--hr-shadow-3)!important;filter:saturate(1.04)}
.program-card:nth-child(even),.vehicle-showcase-card:nth-child(even){background:linear-gradient(145deg,#fff,#fcecf3)!important}
.program-card.featured,.featured-vehicle{background:linear-gradient(150deg,#fff,#fce7f1)!important;box-shadow:0 22px 60px rgba(166,31,98,.18)!important}
/* equal paired cards */
.vehicle-showcase{align-items:stretch!important}.vehicle-showcase-card{height:100%!important;display:flex!important;flex-direction:column!important}.vehicle-content{display:flex!important;flex-direction:column!important;flex:1!important}.vehicle-content .vehicle-ask-btn{margin-top:auto!important}.vehicle-content p,.vehicle-content ul{min-height:0}
.vehicle-showcase-card .vehicle-photo{height:clamp(220px,25vw,350px)!important;aspect-ratio:auto!important}
.vehicle-showcase-card .vehicle-content{padding:22px!important}.vehicle-showcase-card h3{min-height:2.8em!important;display:flex;align-items:center}.vehicle-showcase-card .hr-vehicle-copy{min-height:4.6em!important;line-height:1.85!important;font-weight:750!important;color:#5d4657!important}.vehicle-showcase-card .hr-vehicle-note{min-height:3.5em!important;line-height:1.7!important;color:#755d70!important;font-weight:650!important}
/* buttons: visible depth */
.primary-btn,.vehicle-ask-btn,.learn-program,.choice,.header-cta,.main-btn.small,#persistentSend,.tool-btn,.secondary-btn,.back-btn,#backBtn,.back-step-btn{
  border:1px solid rgba(255,255,255,.52)!important;
  box-shadow:0 12px 26px rgba(205,47,132,.24),inset 0 1px 0 rgba(255,255,255,.7)!important;
  position:relative;overflow:hidden;transform:translateZ(0)
}
.primary-btn,.vehicle-ask-btn,.learn-program,.main-btn.small,#persistentSend{background:linear-gradient(135deg,#d93d8b,#f867ad 58%,#b52369)!important;color:#fff!important}
.primary-btn:before,.vehicle-ask-btn:before,.learn-program:before,.main-btn.small:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.30) 45%,transparent 70%);transform:translateX(-130%);transition:transform .55s ease;pointer-events:none}.primary-btn:hover:before,.vehicle-ask-btn:hover:before,.learn-program:hover:before,.main-btn.small:hover:before{transform:translateX(130%)}
.secondary-btn,.tool-btn,.back-btn,#backBtn,.back-step-btn{background:linear-gradient(145deg,#fff,#fff1f8)!important;color:#9f2e70!important;border:1px solid rgba(217,61,139,.20)!important}
/* chat visual hierarchy */
.messages{background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,246,251,.74))!important;border-radius:18px;padding:12px!important}
.msg{box-shadow:0 9px 24px rgba(65,28,55,.08)!important;border:1px solid rgba(166,31,98,.10)!important;animation:hrMsgIn .28s ease both!important}
.msg.bot{background:linear-gradient(145deg,#fff,#fff0f7)!important;color:#362a34!important;border-bottom-right-radius:7px!important}
[dir="ltr"] .msg.bot{border-bottom-right-radius:18px!important;border-bottom-left-radius:7px!important}
.msg.user{background:linear-gradient(135deg,#9f245f,#d54586)!important;color:#fff!important;border-color:transparent!important;border-bottom-left-radius:7px!important}
[dir="ltr"] .msg.user{border-bottom-left-radius:18px!important;border-bottom-right-radius:7px!important}
@keyframes hrMsgIn{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}
/* unified consent */
.airport-terms-card,.chat-policy-consent{padding:22px!important;border-radius:22px!important;display:grid!important;gap:16px!important;background:linear-gradient(145deg,#fff,#fff1f8)!important}
.airport-terms-card>b,.chat-policy-consent h3{font-size:1.18rem!important;font-weight:900!important;color:#4b2d45!important}
.airport-terms-card label,.chat-policy-consent label,.hr-consent-row{display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;padding:14px!important;border-radius:16px!important;background:#fff!important;border:1px solid rgba(217,61,139,.16)!important;line-height:1.7!important;font-weight:750!important}
.airport-terms-card input[type=checkbox],.chat-policy-consent input[type=checkbox],.hr-consent-row input[type=checkbox]{width:26px!important;height:26px!important;min-height:26px!important;accent-color:#dc3e8e!important;margin:2px 0 0!important}
.airport-terms-card button:disabled,.chat-policy-consent button:disabled{opacity:.42!important;filter:grayscale(.25)!important;box-shadow:none!important;transform:none!important}
/* shared map modal size */
.modal-card{width:min(94vw,760px)!important;max-height:min(90vh,780px)!important;overflow:auto!important;padding:20px!important}
#map{height:clamp(250px,42vh,390px)!important;min-height:250px!important;max-height:390px!important}
.map-search input{min-height:50px!important}
.location-preview{padding:13px 15px!important}
/* neon offer */
.hr-airport-offer-wrap{max-width:1180px;margin:-6px auto 28px;padding:0 20px;position:relative;z-index:4}.hr-airport-offer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:18px 22px;border-radius:24px;color:#fff;background:linear-gradient(135deg,rgba(46,12,46,.97),rgba(116,24,88,.97) 55%,rgba(49,20,88,.97));box-shadow:0 18px 50px rgba(214,47,139,.30),0 0 28px rgba(255,61,166,.22),inset 0 1px 0 rgba(255,255,255,.18);border:1px solid rgba(255,116,188,.52);overflow:hidden;animation:hrOfferFloat 3.6s ease-in-out infinite}.hr-airport-offer:before{content:"";position:absolute;inset:-60% -30%;background:linear-gradient(105deg,transparent 36%,rgba(255,255,255,.15) 50%,transparent 64%);transform:translateX(-50%);animation:hrOfferShine 4.6s ease-in-out infinite}.hr-airport-offer .offer-percent{font-size:clamp(2rem,5vw,3.6rem);font-weight:950;color:#fff;text-shadow:0 0 18px rgba(255,104,185,.9)}.hr-airport-offer b{font-size:clamp(1.05rem,2vw,1.35rem);display:block}.hr-airport-offer span{font-weight:700;opacity:.94}.hr-airport-offer .offer-icon{font-size:2rem;filter:drop-shadow(0 0 10px rgba(255,255,255,.4))}@keyframes hrOfferFloat{50%{transform:translateY(-4px);box-shadow:0 22px 56px rgba(214,47,139,.36),0 0 36px rgba(255,61,166,.28)}}@keyframes hrOfferShine{0%,55%{transform:translateX(-70%)}85%,100%{transform:translateX(70%)}}
/* visual summary emphasis */
.hr-price-summary,.airport-debug-card,.longtrip-discount-card{border-radius:22px!important;padding:18px!important;background:linear-gradient(145deg,#fff,#fdebf3)!important}.hr-total-value,.program-price strong{color:#be377e!important;text-shadow:0 2px 10px rgba(190,55,126,.12)}
/* service hero continuity */
.service-site-header.site-header{direction:inherit!important}.footer{position:relative!important}
@media(max-width:760px){
  body{font-size:16px!important}.hero-copy p,.section-heading p{font-size:16.5px!important}.section-heading h2{font-size:clamp(26px,7.4vw,34px)!important}
  .modal{padding:8px!important}.modal-card{width:96vw!important;max-height:92vh!important;padding:14px!important;border-radius:20px!important}#map{height:280px!important;min-height:280px!important}
  .map-search{grid-template-columns:1fr!important}.map-search button{min-height:48px!important}.location-preview{font-size:15px!important}
  .vehicle-showcase{grid-template-columns:1fr!important}.vehicle-showcase-card h3,.vehicle-showcase-card .hr-vehicle-copy,.vehicle-showcase-card .hr-vehicle-note{min-height:0!important}.vehicle-showcase-card .vehicle-photo{height:250px!important}
  .hr-airport-offer-wrap{padding:0 12px;margin-top:8px}.hr-airport-offer{grid-template-columns:auto 1fr;gap:12px;padding:16px}.hr-airport-offer .offer-icon{display:none}.hr-airport-offer .offer-percent{font-size:2.2rem}
  .msg{max-width:91%!important;font-size:16px!important}.chat-shell,.reem-stage{border-radius:22px!important}
}


/* ==========================================================
   HerRide FINAL Rose/Berry Design System — no purple gradient
   Applied after all service CSS so every page uses one system.
   ========================================================== */
:root{
 --hr-rose-050:#fff8fb;--hr-rose-100:#fff0f6;--hr-rose-200:#ffd9e8;
 --hr-rose-300:#ffb8d3;--hr-pink-500:#ef4f99;--hr-pink-600:#db347f;
 --hr-berry-700:#b32369;--hr-berry-800:#8f1f58;--hr-berry-900:#681640;
 --hr-text:#2d2028;--hr-muted:#735867;
 --hr-elev-1:0 7px 18px rgba(104,22,64,.10),0 2px 6px rgba(104,22,64,.06);
 --hr-elev-2:0 16px 34px rgba(104,22,64,.16),0 5px 12px rgba(104,22,64,.08);
 --hr-elev-3:0 24px 58px rgba(104,22,64,.22),0 9px 20px rgba(104,22,64,.12);
}
body{background:linear-gradient(180deg,#fffafd 0%,#fff5f9 38%,#fff 70%,#fff6fa 100%)!important}
/* eliminate purple from gradients / accent surfaces */
.primary-btn,.vehicle-ask-btn,.learn-program,.main-btn.small,#persistentSend,.header-cta,.hr-picker-confirm{
 background:linear-gradient(135deg,var(--hr-berry-800) 0%,var(--hr-pink-600) 54%,#f86cae 100%)!important;
 color:#fff!important;border-color:rgba(255,255,255,.62)!important;
 box-shadow:0 15px 30px rgba(179,35,105,.30),0 5px 10px rgba(104,22,64,.15),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.primary-btn:hover,.vehicle-ask-btn:hover,.learn-program:hover,.main-btn.small:hover,#persistentSend:hover{
 transform:translateY(-2px)!important;box-shadow:0 20px 38px rgba(179,35,105,.35),0 7px 14px rgba(104,22,64,.16),inset 0 1px 0 rgba(255,255,255,.78)!important
}
.primary-btn:active,.vehicle-ask-btn:active,.learn-program:active,.main-btn.small:active,#persistentSend:active{transform:translateY(1px) scale(.985)!important;box-shadow:0 8px 16px rgba(179,35,105,.24),inset 0 2px 4px rgba(92,15,51,.15)!important}
.secondary-btn,.tool-btn,.back-btn,#backBtn,.back-step-btn{
 background:linear-gradient(145deg,#fff,#fff1f6)!important;color:var(--hr-berry-800)!important;
 border:1px solid rgba(179,35,105,.22)!important;box-shadow:var(--hr-elev-1)!important
}
/* chat: unmistakable hierarchy */
.chat-shell{background:linear-gradient(180deg,#fffafd,#fff4f8)!important;box-shadow:var(--hr-elev-3)!important;border:1px solid rgba(179,35,105,.15)!important}
.messages{background:linear-gradient(180deg,rgba(255,255,255,.84),rgba(255,242,247,.90))!important;border:1px solid rgba(179,35,105,.09)!important;box-shadow:inset 0 1px 0 #fff!important}
.msg{font-weight:700!important;line-height:1.85!important;box-shadow:var(--hr-elev-1)!important}
.msg.bot{background:linear-gradient(145deg,#fff9fb,#ffeaf2)!important;color:#33232c!important;border:1px solid rgba(179,35,105,.16)!important}
.msg.user{background:linear-gradient(135deg,var(--hr-berry-800),var(--hr-pink-600))!important;color:#fff!important;border:1px solid rgba(255,255,255,.24)!important;box-shadow:0 13px 26px rgba(143,31,88,.25)!important}
/* question options are cards, not flat text */
#answerArea{display:grid!important;gap:12px!important}
#answerArea .choice,.choice{
 min-height:52px!important;padding:12px 16px!important;border-radius:17px!important;
 background:linear-gradient(145deg,#fff,#fff0f6)!important;color:#5e2946!important;
 border:1px solid rgba(179,35,105,.20)!important;box-shadow:var(--hr-elev-1)!important;font-weight:800!important;
 transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important
}
#answerArea .choice:hover,.choice:hover{transform:translateY(-2px)!important;box-shadow:var(--hr-elev-2)!important;background:linear-gradient(145deg,#fff,#ffe6f0)!important}
#answerArea .choice:active,.choice:active{transform:translateY(1px) scale(.99)!important}
.order-option.selected,.choice.selected{outline:3px solid rgba(239,79,153,.20)!important;border-color:var(--hr-pink-600)!important;box-shadow:0 15px 32px rgba(179,35,105,.24)!important}
/* voice/type live in a separate control tier */
.chat-tools,.voice-tools,.input-tools,.reply-tools{background:linear-gradient(145deg,#fff,#fff5f9)!important;border:1px solid rgba(179,35,105,.12)!important;border-radius:18px!important;padding:10px!important;box-shadow:var(--hr-elev-1)!important}
#voiceBtn,#writeBtn{background:#fff!important;color:var(--hr-berry-800)!important;border:1px solid rgba(179,35,105,.18)!important;box-shadow:0 6px 14px rgba(104,22,64,.10)!important}
#backBtn,.back-step-btn{opacity:.92!important;box-shadow:0 5px 12px rgba(104,22,64,.09)!important}
/* text composer contrast */
#persistentComposer{background:linear-gradient(145deg,#fff,#fff5f8)!important;border:1px solid rgba(179,35,105,.15)!important;border-radius:18px!important;padding:9px!important;box-shadow:var(--hr-elev-1)!important}
#persistentInput,#answerArea input,#answerArea textarea{background:#fff!important;border:2px solid rgba(179,35,105,.22)!important;color:#2d2028!important;font-weight:700!important;box-shadow:inset 0 1px 2px rgba(104,22,64,.04)!important}
#persistentInput:focus,#answerArea input:focus,#answerArea textarea:focus{outline:none!important;border-color:var(--hr-pink-500)!important;box-shadow:0 0 0 4px rgba(239,79,153,.10)!important}
/* page cards: visible from the background */
.program-card,.vehicle-showcase-card,.order-option,.airport-debug-card,.airport-terms-card,.location-preview,.hr-price-summary,.longtrip-discount-card,.chat-policy-consent{
 background:linear-gradient(145deg,#fff,#fff0f5)!important;border:1px solid rgba(179,35,105,.15)!important;box-shadow:var(--hr-elev-2)!important
}
.program-card:nth-child(2n),.order-option:nth-child(2n),.vehicle-showcase-card:nth-child(2n){background:linear-gradient(145deg,#fffafd,#ffe8f1)!important}
.program-card:nth-child(3n){background:linear-gradient(145deg,#fff,#fce6ef)!important}
.program-card.featured,.featured-vehicle{background:linear-gradient(145deg,#fff7fb,#ffdfea)!important;box-shadow:var(--hr-elev-3)!important}
.program-card:hover,.vehicle-showcase-card:hover,.order-option:hover{box-shadow:var(--hr-elev-3)!important}
/* airport 10% offer MUST look like an offer, not another white block */
.hr-airport-offer{
 background:linear-gradient(125deg,var(--hr-berry-900) 0%,var(--hr-berry-700) 38%,var(--hr-pink-600) 73%,#ff75b5 100%)!important;
 border:2px solid rgba(255,188,216,.72)!important;
 box-shadow:0 24px 62px rgba(179,35,105,.40),0 0 35px rgba(239,79,153,.28),inset 0 1px 0 rgba(255,255,255,.30)!important
}
.hr-airport-offer .offer-percent{font-size:clamp(2.6rem,6vw,4.8rem)!important;color:#fff!important;text-shadow:0 0 13px #ffb4d1,0 0 30px rgba(255,105,176,.75)!important}
.hr-airport-offer b{font-size:clamp(1.15rem,2.2vw,1.55rem)!important;color:#fff!important}.hr-airport-offer span{font-size:1rem!important;color:#fff!important}
/* offer inside booking flow */
.hr-offer-card,.longtrip-discount-card{
 background:linear-gradient(125deg,var(--hr-berry-900),var(--hr-berry-700) 45%,var(--hr-pink-600))!important;color:#fff!important;
 border:2px solid rgba(255,196,219,.60)!important;box-shadow:0 20px 48px rgba(179,35,105,.38),0 0 28px rgba(239,79,153,.22)!important;
 border-radius:24px!important;padding:20px!important;animation:hrOfferFloat 3.6s ease-in-out infinite!important
}
.hr-offer-card *,.longtrip-discount-card *{color:#fff!important}.hr-offer-percent,.longtrip-discount-badge{font-weight:950!important;text-shadow:0 0 18px rgba(255,188,216,.95)!important}
/* consent: checkbox is visually one unit with text */
.airport-terms-card label,.chat-policy-consent label{box-shadow:var(--hr-elev-1)!important;background:#fff9fb!important;align-items:center!important}
.airport-terms-card input[type=checkbox],.chat-policy-consent input[type=checkbox]{appearance:none!important;width:27px!important;height:27px!important;border-radius:8px!important;border:2px solid var(--hr-pink-600)!important;background:#fff!important;display:grid!important;place-content:center!important;cursor:pointer!important}
.airport-terms-card input[type=checkbox]:checked:after,.chat-policy-consent input[type=checkbox]:checked:after{content:'✓';color:#fff;font-size:18px;font-weight:950!important}
.airport-terms-card input[type=checkbox]:checked,.chat-policy-consent input[type=checkbox]:checked{background:linear-gradient(135deg,var(--hr-berry-700),var(--hr-pink-600))!important}
/* calendar rebuild: clearer grid + hierarchy */
.hr-picker-overlay{background:rgba(45,18,32,.48)!important;backdrop-filter:blur(7px)!important}
.hr-picker-card.calendar-card{background:linear-gradient(160deg,#fff,#fff3f7)!important;border:1px solid rgba(179,35,105,.18)!important;box-shadow:0 32px 90px rgba(68,17,44,.35)!important}
.calendar-head{display:grid!important;grid-template-columns:44px 1fr 44px!important;align-items:center!important;gap:10px!important;margin-bottom:12px!important}
.calendar-head h3{text-align:center!important;font-weight:950!important;color:#4e253b!important}.calendar-head button{width:42px!important;height:42px!important;border-radius:14px!important;border:1px solid rgba(179,35,105,.16)!important;background:#fff!important;color:var(--hr-berry-800)!important;box-shadow:var(--hr-elev-1)!important;font-size:1.35rem!important}
.calendar-week{background:#ffe9f1!important;border-radius:14px!important;padding:9px 5px!important;color:#74344f!important;font-weight:900!important;gap:4px!important}
.calendar-week span{text-align:center!important;white-space:nowrap!important;font-size:.84rem!important}
.calendar-grid{gap:6px!important}.calendar-grid button{aspect-ratio:1!important;border-radius:13px!important;border:1px solid rgba(179,35,105,.08)!important;background:rgba(255,255,255,.78)!important;color:#4a3540!important;font-weight:850!important;box-shadow:0 3px 7px rgba(104,22,64,.05)!important}.calendar-grid button:hover:not(:disabled){background:#ffeaf2!important;box-shadow:var(--hr-elev-1)!important}.calendar-grid button.selected{background:linear-gradient(135deg,var(--hr-berry-800),var(--hr-pink-600))!important;color:#fff!important;border-color:transparent!important;box-shadow:0 11px 24px rgba(179,35,105,.30)!important;transform:scale(1.04)!important}.calendar-grid button:disabled{background:#f4eff2!important;color:#b7a7af!important;opacity:.62!important;box-shadow:none!important}
.date-preview,.time-preview{background:#ffe9f1!important;color:#6d2948!important;border:1px solid rgba(179,35,105,.12)!important;box-shadow:var(--hr-elev-1)!important}
/* orders must never show Reem's academy placeholder */
.orders-page .messages:empty:before{content:'هنا جاهزة تبدأ معاكي…'!important;color:#9b416d!important;font-weight:800!important}
html[lang='en'] .orders-page .messages:empty:before{content:'Hana is ready to help you…'!important}
/* academy cards need deliberate color separation */
.academy-page .program-card{background:linear-gradient(145deg,#fffafd,#ffeaf2)!important}.academy-page .program-card:nth-child(2){background:linear-gradient(145deg,#fff,#ffe2ed)!important}.academy-page .program-card:nth-child(3){background:linear-gradient(145deg,#fff8fb,#ffdce9)!important}.academy-page .program-card:nth-child(4){background:linear-gradient(145deg,#fff,#ffe7ef)!important}
/* equal height / aligned CTAs */
.program-grid,.vehicle-showcase{align-items:stretch!important}.program-card{display:flex!important;flex-direction:column!important;height:100%!important}.program-card .learn-program,.program-card .program-cta,.program-card button{margin-top:auto!important}
@media(max-width:760px){
 .msg{font-size:16px!important}.choice{font-size:16px!important}.hr-airport-offer{padding:18px!important}.hr-airport-offer .offer-percent{font-size:2.8rem!important}
 .calendar-week span{font-size:.76rem!important}.calendar-grid{gap:4px!important}.calendar-grid button{border-radius:10px!important}
}
/* extra final sweep: any legacy dark/purple-tinted summary headers use berry, not purple */
.hr3-top,.academy-payment-final .hr3-top,.airport-page .hr3-top,.longtrip-page .hr3-top,.orders-page .hr3-top{
 background:linear-gradient(145deg,#681640 0%,#a61f62 52%,#e33f86 100%)!important;
 box-shadow:0 16px 34px rgba(143,31,88,.24)!important
}
.choice-grid{display:grid!important;gap:12px!important}.choice-grid+.hr-offer-card{margin-top:14px!important}

/* USER FINAL VISUAL LOCK 2026-08-12 */
:root{
 --hr-ui-rose:#fff1f6;--hr-ui-rose2:#ffe1ec;--hr-ui-pink:#ed4f97;--hr-ui-berry:#ad2368;--hr-ui-deep:#7b194b;
 --hr-shadow-soft:0 8px 22px rgba(123,25,75,.12),0 2px 7px rgba(123,25,75,.06);
 --hr-shadow-card:0 18px 42px rgba(123,25,75,.18),0 5px 14px rgba(123,25,75,.09);
 --hr-shadow-cta:0 14px 30px rgba(173,35,104,.30),inset 0 1px 0 rgba(255,255,255,.55);
}
/* NO PURPLE: one Rose/Berry gradient language across the whole product */
.primary-btn,.vehicle-ask-btn,.learn-program,.main-btn.small,#persistentSend,.header-cta,.mtp-confirm,.period-toggle button.active,.mtp-period button.active{
 background:linear-gradient(135deg,var(--hr-ui-deep) 0%,var(--hr-ui-berry) 48%,var(--hr-ui-pink) 100%)!important;
 color:#fff!important;box-shadow:var(--hr-shadow-cta)!important;border:1px solid rgba(255,255,255,.40)!important;
}
/* Customer-service answer hierarchy */
.messages{background:linear-gradient(180deg,#fffafd 0%,#fff4f8 100%)!important;box-shadow:inset 0 0 0 1px rgba(173,35,104,.07)!important}
.msg.bot{background:linear-gradient(145deg,#fff8fb 0%,#ffe5ef 100%)!important;color:#2f2029!important;border:1px solid rgba(173,35,104,.20)!important;box-shadow:var(--hr-shadow-soft)!important;font-weight:750!important}
.msg.user{background:linear-gradient(135deg,var(--hr-ui-deep),var(--hr-ui-berry),var(--hr-ui-pink))!important;color:#fff!important;box-shadow:0 13px 28px rgba(123,25,75,.28)!important;border:1px solid rgba(255,255,255,.25)!important}
/* Choices must look different from messages and from edit/back actions */
.answer-area,#answerArea{gap:12px!important}
.answer-area .choice,#answerArea .choice,.choice-grid .choice{
 background:linear-gradient(145deg,#fff 0%,#ffeaf2 100%)!important;color:#54243d!important;border:1px solid rgba(173,35,104,.24)!important;box-shadow:var(--hr-shadow-soft)!important;border-radius:17px!important;min-height:50px!important
}
.answer-area .choice:hover,#answerArea .choice:hover,.choice-grid .choice:hover{background:linear-gradient(145deg,#fff7fa,#ffdce8)!important;box-shadow:var(--hr-shadow-card)!important;transform:translateY(-2px)!important}
.choice.selected{background:linear-gradient(135deg,#ffe7f0,#ffcfe0)!important;color:#6f1d49!important;border:2px solid var(--hr-ui-pink)!important;box-shadow:0 14px 30px rgba(173,35,104,.22)!important}
.back-step-btn,#backBtn,.back-btn{background:#fff!important;color:#8d365f!important;border:1px dashed rgba(141,54,95,.34)!important;box-shadow:0 5px 14px rgba(80,30,55,.08)!important;min-height:44px!important}
/* Voice / type controls: their own visible tier */
.chat-tools{background:linear-gradient(145deg,#fff,#ffeef4)!important;border:1px solid rgba(173,35,104,.16)!important;box-shadow:var(--hr-shadow-soft)!important;border-radius:18px!important;margin:8px 12px 12px!important}
.chat-tools .tool-btn,#voiceBtn,#writeBtn{
 background:linear-gradient(145deg,#fff,#ffdfe9)!important;color:#7b194b!important;border:1px solid rgba(173,35,104,.24)!important;box-shadow:0 8px 18px rgba(123,25,75,.13)!important;font-weight:900!important
}
.chat-tools .tool-btn:hover,#voiceBtn:hover,#writeBtn:hover{background:linear-gradient(145deg,#fff7fa,#ffcfe0)!important;box-shadow:0 12px 25px rgba(123,25,75,.18)!important}
/* Price and summary cards need color separation, not white-on-white */
.hr-price-summary,.airport-price-card,.airport-deposit-card,.academy-payment-final,.airport-debug-card{
 background:linear-gradient(145deg,#fff8fb 0%,#ffe7ef 100%)!important;border:1px solid rgba(173,35,104,.18)!important;box-shadow:var(--hr-shadow-card)!important
}
.hr-pay-grid>div,.academy-payment-final .pay-box,.payment-card,.price-box{
 background:linear-gradient(145deg,#fff 0%,#ffdfe9 100%)!important;border:1px solid rgba(173,35,104,.20)!important;box-shadow:var(--hr-shadow-soft)!important
}
.hr-pay-grid>div:nth-child(2),.academy-payment-final .pay-box:nth-child(2){background:linear-gradient(145deg,#fff9fb,#ffd4e3)!important}
.hr-total-value,.hr-pay-grid b,.airport-price-card strong,.airport-deposit-card strong{color:#a61f62!important}
/* Terms checkbox: unmistakable checked state */
.airport-terms-card label,.chat-policy-consent label{position:relative!important;background:linear-gradient(145deg,#fff,#fff0f5)!important;box-shadow:var(--hr-shadow-soft)!important}
.airport-terms-card input[type=checkbox],.chat-policy-consent input[type=checkbox],.hr-consent-row input[type=checkbox]{
 -webkit-appearance:none!important;appearance:none!important;width:28px!important;height:28px!important;min-width:28px!important;border-radius:8px!important;border:2px solid var(--hr-ui-pink)!important;background:#fff!important;display:grid!important;place-items:center!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.04)!important
}
.airport-terms-card input[type=checkbox]:checked,.chat-policy-consent input[type=checkbox]:checked,.hr-consent-row input[type=checkbox]:checked{
 background:linear-gradient(135deg,var(--hr-ui-deep),var(--hr-ui-pink))!important;border-color:transparent!important;box-shadow:0 7px 18px rgba(173,35,104,.28)!important
}
.airport-terms-card input[type=checkbox]:checked::after,.chat-policy-consent input[type=checkbox]:checked::after,.hr-consent-row input[type=checkbox]:checked::after{
 content:'✓'!important;color:#fff!important;font-size:19px!important;line-height:1!important;font-weight:1000!important
}
.airport-terms-card label:has(input:checked),.chat-policy-consent label:has(input:checked){background:linear-gradient(145deg,#fff7fa,#ffdce8)!important;border-color:rgba(173,35,104,.36)!important}
/* Academy cards: visibly separated from page background */
.programs{background:linear-gradient(180deg,#fff9fc,#fff2f7)!important}
.program-card{background:linear-gradient(145deg,#fff8fb,#ffe7ef)!important;box-shadow:var(--hr-shadow-card)!important}
.program-card:nth-child(2){background:linear-gradient(145deg,#fff,#ffdde9)!important}.program-card:nth-child(3){background:linear-gradient(145deg,#fff8fb,#ffd7e5)!important}.program-card:nth-child(4){background:linear-gradient(145deg,#fff,#ffe3ec)!important}
.program-card .popular,.program-label{background:linear-gradient(135deg,var(--hr-ui-deep),var(--hr-ui-berry),var(--hr-ui-pink))!important;color:#fff!important;box-shadow:0 9px 20px rgba(123,25,75,.20)!important}
/* Airport offer: high-contrast and impossible to miss */
.hr-airport-offer,.hr-offer-card{
 background:linear-gradient(125deg,#681640 0%,#8f1f58 28%,#b32369 58%,#ed4f97 100%)!important;color:#fff!important;border:2px solid rgba(255,196,219,.75)!important;box-shadow:0 24px 64px rgba(173,35,104,.42),0 0 34px rgba(237,79,151,.30)!important
}
.hr-airport-offer *,.hr-offer-card *{color:#fff!important}.hr-airport-offer .offer-percent,.hr-offer-percent{font-weight:1000!important;text-shadow:0 0 14px #ffc0d8,0 0 30px rgba(255,105,176,.76)!important}
/* Calendar: stronger labels and selected day */
.calendar-week{background:#ffe1ec!important;color:#642944!important;font-weight:950!important;box-shadow:var(--hr-shadow-soft)!important}.calendar-grid button{background:#fff!important;color:#49313d!important;border:1px solid rgba(173,35,104,.10)!important;box-shadow:0 4px 10px rgba(123,25,75,.07)!important}.calendar-grid button.selected{background:linear-gradient(135deg,var(--hr-ui-deep),var(--hr-ui-pink))!important;color:#fff!important;box-shadow:0 12px 26px rgba(173,35,104,.30)!important}

/* FINAL MASTER CARD LANGUAGE — based on approved Courses cards */
.service-card,.program-card,.daily-type-card,.vehicle-showcase-card{
  border-radius:25px!important;
  background:linear-gradient(150deg,#170a13,#3b102b 62%,#25101f)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 22px 55px rgba(47,10,34,.22)!important;
  color:#fff!important;
  overflow:hidden;
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important;
}
.service-card:hover,.program-card:hover,.daily-type-card:hover,.vehicle-showcase-card:hover{
  transform:translateY(-6px)!important;
  box-shadow:0 30px 72px rgba(73,17,51,.30)!important;
  border-color:rgba(255,113,187,.32)!important;
}
.service-card h3,.service-card p,.program-card h3,.program-card p,.daily-type-card h3,.daily-type-card p,.vehicle-showcase-card h3,.vehicle-showcase-card p{color:#fff!important;text-shadow:none!important}
.service-card .service-btn,.program-card button,.daily-type-card button,.vehicle-showcase-card button{border-radius:14px!important}
@media(max-width:820px){.service-card,.program-card,.daily-type-card,.vehicle-showcase-card{border-radius:18px!important}}

/* === HerRide V10 unified card polish === */
:root{
  --hr-card-bg:linear-gradient(150deg,#170a13 0%,#351025 58%,#23101d 100%);
  --hr-card-radius:24px;
  --hr-card-shadow:0 20px 52px rgba(48,12,34,.22);
}
.service-card,.program-card,.daily-type-card,.vehicle-showcase-card,
.airport-card,.trip-card,.order-card,.academy-card,.course-card{
  position:relative;
  border-radius:var(--hr-card-radius)!important;
  background:var(--hr-card-bg)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:var(--hr-card-shadow)!important;
  color:#fff!important;
  overflow:hidden!important;
  transform:translateZ(0);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important;
}
.service-card:hover,.program-card:hover,.daily-type-card:hover,.vehicle-showcase-card:hover,
.airport-card:hover,.trip-card:hover,.order-card:hover,.academy-card:hover,.course-card:hover{
  transform:translateY(-5px)!important;
  box-shadow:0 28px 68px rgba(66,17,47,.30)!important;
  border-color:rgba(255,115,187,.32)!important;
}
/* Card imagery: consistent visual window; preserve focal content rather than stretching. */
.service-card img,.program-card img,.daily-type-card img,.vehicle-showcase-card img,
.airport-card img,.trip-card img,.order-card img,.academy-card img,.course-card img{
  display:block!important;
  width:100%!important;
  height:auto;
  max-width:100%!important;
  object-position:center!important;
}
/* Known homepage/service cards use a stable media aspect ratio. */
.service-card>img,.program-card>img,.daily-type-card>img,.vehicle-showcase-card>img{
  aspect-ratio:16/10;
  object-fit:cover!important;
}
/* Where the source is poster-like, contain prevents destructive cropping. */
.service-card img[data-fit="contain"],.program-card img[data-fit="contain"],
.airport-card img[data-fit="contain"],.trip-card img[data-fit="contain"]{
  object-fit:contain!important;
  background:#f8f1f5;
}
/* Academy duration badges: high contrast and immediately scannable. */
.program-card .hours,.program-card .duration,.program-card .badge,
.academy-card .hours,.academy-card .duration,.academy-card .badge,
[class*="program"] [class*="hour"],[class*="academy"] [class*="hour"]{
  background:#3a102b!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 7px 18px rgba(42,9,30,.18)!important;
  font-weight:900!important;
}
/* Preserve legibility in dark cards. */
.service-card h3,.service-card h4,.service-card p,.program-card h3,.program-card h4,.program-card p,
.daily-type-card h3,.daily-type-card p,.vehicle-showcase-card h3,.vehicle-showcase-card p{
  color:#fff!important;
}
@media(max-width:820px){
  .service-card,.program-card,.daily-type-card,.vehicle-showcase-card,
  .airport-card,.trip-card,.order-card,.academy-card,.course-card{border-radius:18px!important}
  .service-card>img,.program-card>img,.daily-type-card>img,.vehicle-showcase-card>img{aspect-ratio:16/10}
}
