@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--green:#008b59;--green2:#00a66c;--dark:#101b1f;--ink:#132124;--muted:#6a777d;--line:#e6ebeb;--soft:#f5f8f8;--radius:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:15px/1.55 'DM Sans',Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}p{margin:.6em 0 1em}h1,h2,h3,h4{font-family:Manrope,Arial,sans-serif;line-height:1.17;letter-spacing:-.045em;margin:0 0 .5em}h1{font-size:clamp(34px,4.5vw,58px);font-weight:800}h2{font-size:clamp(26px,2.7vw,36px);font-weight:800}h3{font-size:19px}small,.small-note{font-size:12px;color:var(--muted)}.container{max-width:1180px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}.site-header{height:74px;background:#0b171a;color:white;position:relative;z-index:20}.nav{height:100%;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;width:169px;flex-shrink:0}.brand img{max-width:160px;width:100%;height:43px;object-fit:contain;filter:brightness(0) invert(1)}.navigation{display:flex;align-items:center;justify-content:center;gap:29px;flex:1;font-size:13px;font-weight:600}.navigation a:hover,.navigation a:focus{color:#65dca5}.nav-cta{display:flex;align-items:center;gap:9px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;border:1px solid transparent;border-radius:8px;padding:12px 19px;font-weight:700;font-size:13px;min-height:44px;white-space:nowrap;transition:transform .2s,background .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 22px #101b1f18}.btn-green{color:white;background:linear-gradient(135deg,#008454,#00a468);box-shadow:0 4px 14px #008b5922}.btn-white{background:white;border-color:var(--line);color:var(--ink)}.btn-outline{color:white;border-color:#415457;background:transparent}.mobile-toggle{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.hero{height:425px;position:relative;background:#b9d5e1;overflow:hidden}.hero-picture{position:absolute;inset:0;background:linear-gradient(90deg,#e6f0f4ef 0%,#eaf0f7c9 36%,#ffffff00 85%),url('../img/marseille.jpg') center 54%/cover}.hero-content{position:relative;padding-top:84px}.hero h1{color:#101b1e;max-width:620px;font-size:clamp(43px,5.5vw,70px);line-height:1.05}.hero h1 em{color:var(--green);font-style:normal}.hero p{max-width:530px;font-size:17px;font-weight:500}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.09em}.hero-line{background:var(--green);height:3px;width:55px;margin-top:20px}.booking-float{position:relative;z-index:3;margin-top:-66px}.booking-tabs{display:flex;gap:5px;margin-left:16px}.booking-tabs button{border:0;background:#102024;color:#fff;padding:17px 23px;border-radius:12px 12px 0 0;font-weight:700}.booking-tabs button.active{background:white;color:#142326}.quick-book{display:grid;grid-template-columns:1.2fr 32px 1.2fr 1fr .7fr auto;align-items:end;gap:12px;padding:21px;background:white;border-radius:14px;box-shadow:0 12px 34px #0b16231c;border:1px solid #ebefef}.quick-book label,.booking-panel label,.auth-card label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.quick-book input,.quick-book select,.booking-panel input,.booking-panel select,.booking-panel textarea,.auth-card input{width:100%;height:44px;border:1px solid #dfe7e7;background:white;border-radius:8px;outline:0;padding:10px 12px;color:var(--ink);font-size:13px}.booking-panel textarea{height:auto}.quick-book input:focus,.booking-panel input:focus,.booking-panel select:focus,.auth-card input:focus{border-color:var(--green);box-shadow:0 0 0 3px #008b5918}.swap-locations{border:0;border-radius:9px;color:var(--green);background:#e8f7ef;height:44px;font-size:21px}.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:32px 0 12px;border-bottom:1px solid var(--line);font-size:12px;font-weight:700}.trust-grid span{text-align:center}.section-space{padding-top:66px;padding-bottom:76px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:23px}.section-head h2{margin:.1em 0}.section-head p,.inner-heading p{color:var(--muted)}.kicker{font-size:11px;font-weight:800;letter-spacing:.07em;color:var(--green)}.link-green{color:var(--green);font-weight:800}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.service-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white;transition:transform .2s,box-shadow .2s}.service-card:hover,.service-row:hover{transform:translateY(-3px);box-shadow:0 12px 28px #20373714}.service-image{height:147px;display:flex;justify-content:center;align-items:center;font-size:64px;color:white;text-shadow:0 2px 18px #0005}.image-air{background:linear-gradient(135deg,#246eaa88,#8ed6f3aa),url('../img/marseille.jpg') center/cover}.image-train{background:linear-gradient(120deg,#214252,#c0d9df)}.image-business{background:linear-gradient(135deg,#0b2930,#a4babb)}.image-provence{background:linear-gradient(135deg,#205b63aa,#28ab8b66),url('../img/provence.jpg') center/cover}.image-phone{background:linear-gradient(130deg,#1e746b,#c5e5df)}.service-label{display:flex;justify-content:space-between;align-items:center;padding:18px;font-weight:800;font-size:14px;min-height:70px}.service-label span,.circle-arrow{display:flex;align-items:center;justify-content:center;height:32px;width:32px;flex-shrink:0;border:1px solid #e0e8e7;border-radius:50%;font-size:20px}.highlight-band{background:#eff9f4;border-radius:15px;padding-top:35px;padding-bottom:35px;display:flex;align-items:center;justify-content:space-between;margin-bottom:55px}.highlight-band h2{margin:9px 0 0}.inner-heading{padding-top:72px;padding-bottom:30px}.inner-heading h1{font-size:clamp(34px,4vw,50px);margin:8px 0 12px}.inner-heading p{font-size:17px;max-width:590px}.services-list{max-width:1100px;display:grid;gap:14px;padding-bottom:45px}.service-row{display:grid;grid-template-columns:230px 1fr auto;gap:26px;align-items:center;border:1px solid var(--line);padding:12px 22px 12px 12px;border-radius:16px;transition:all .2s}.service-thumb{height:126px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:white;font-size:56px}.service-row h2{font-size:21px;margin:0 0 8px}.service-row p{color:var(--muted);margin:0;font-size:14px;max-width:590px}.values-band{display:flex;justify-content:space-around;padding-top:30px;padding-bottom:30px;margin-bottom:65px;border-radius:14px;background:#eaf8f0;font-weight:800;color:#216b53}.narrow{max-width:890px;padding-bottom:85px}.filter-tabs,.auth-tabs{display:flex;padding:5px;background:#f3f6f6;border:1px solid var(--line);border-radius:12px;gap:4px}.filter-tabs button,.auth-tabs button{flex:1;background:transparent;border:0;border-radius:8px;padding:14px 12px;font-weight:750;color:#536363}.filter-tabs button.active,.auth-tabs button.active{background:var(--green);color:white}.fare-list{margin-top:17px;border:1px solid var(--line);border-radius:15px;overflow:hidden}.fare-row{display:grid;grid-template-columns:40px 1fr auto 20px;gap:20px;align-items:center;padding:22px 23px;border-bottom:1px solid var(--line)}.fare-row:last-child{border:0}.fare-row:hover{background:#f7fbf9}.fare-row strong{display:block;font-size:14px}.fare-row small{display:block;margin-top:5px}.fare-row b{color:#00794e;font-size:20px}.fare-icon{font-size:24px}.faded-arrow{color:#9ba6a7;margin:0 5px}.simple-fare{display:flex;justify-content:space-between;padding:24px;border-bottom:1px solid var(--line)}.simple-fare b{color:var(--green)}.note-box{margin-top:22px;background:#edf8f3;border-radius:13px;padding:25px;display:flex;align-items:center;justify-content:space-between}.note-box p{font-size:13px}.about-banner{padding:95px 0;background:linear-gradient(90deg,#ffffff 0%,#ffffffdd 54%,#ffffff40 100%),url('../img/provence.jpg') right center/cover}.about-banner h1{font-size:clamp(32px,4vw,48px)}.about-banner p{max-width:580px;font-size:16px}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.values-grid>div{text-align:center;padding:25px 18px;border:1px solid var(--line);border-radius:13px}.values-grid i{font-style:normal;font-size:34px;color:var(--green)}.values-grid h3{margin:8px 0}.values-grid p{font-size:13px;color:var(--muted)}.about-feature{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center;margin-top:60px}.about-photo{height:310px;border-radius:16px;background:url('../img/provence.jpg') center/cover}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:100px}.contact-card{padding:28px;border:1px solid var(--line);border-radius:16px;min-height:260px}.contact-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:13px;width:55px;height:55px;color:var(--green);background:#eaf8f0;font-size:32px;margin-bottom:20px}.contact-card a{color:var(--green);font-weight:700;overflow-wrap:anywhere}.contact-card p{color:var(--muted)}.booking-page{padding-top:35px;padding-bottom:100px}.steps{display:flex;justify-content:center;gap:52px;margin-bottom:39px}.step{display:flex;align-items:center;gap:8px;font-size:12px;color:#8b9698}.step b{display:flex;align-items:center;justify-content:center;height:28px;width:28px;border-radius:50%;background:#e7eded;color:#77858a}.step.active b,.step.done b{background:var(--green);color:white}.step.active{color:#0c7850}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:25px}.booking-layout h1{font-size:38px;margin-top:10px}.booking-layout>div>p{color:var(--muted);max-width:650px}.booking-panel{border:1px solid var(--line);border-radius:15px;padding:28px;margin-top:25px;box-shadow:0 10px 30px #14222208}.booking-panel h3{font-size:22px}.booking-panel>div>label:not(.privacy){margin-bottom:10px}.pills{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 24px}.pills button{border:1px solid var(--line);background:white;border-radius:7px;padding:10px 12px;font-size:12px}.pills button.selected{background:var(--green);color:white;border-color:var(--green)}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:18px}.field-row.cols-3{grid-template-columns:1fr 1fr 1fr}.transport-extra{border-top:1px solid var(--line);margin-top:12px;padding-top:19px}.btn-wide{width:100%;margin-top:22px}.stage-actions{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.booking-aside{border:1px solid var(--line);border-radius:16px;padding:16px 20px;align-self:start;position:sticky;top:18px}.map-illustration{height:150px;border-radius:11px;background:repeating-linear-gradient(22deg,transparent 0 23px,#d7e8e7 24px 25px),linear-gradient(130deg,#e8f0e8,#d8eaf2);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--green);margin-bottom:23px}.map-route{font-size:25px}.itinerary>div{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px;display:flex;gap:9px}.info-blue{background:#eff8f3;border-radius:11px;padding:17px;margin-top:20px;font-size:13px}.booking-aside>small{display:block;margin-top:21px}.summary-list>div{display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--line)}.summary-list span{color:var(--muted)}.privacy{display:flex!important;flex-direction:row!important;align-items:flex-start;margin-top:20px;gap:10px!important}.privacy input{width:auto;height:auto;margin-top:4px}.form-status{color:#a73333;font-weight:700;font-size:13px}.hidden{display:none!important}.success-view{text-align:center;padding:30px 5px}.success-icon{width:70px;height:70px;border-radius:50%;background:#e1f8eb;color:var(--green);display:grid;place-items:center;margin:0 auto 20px;font-size:38px}.client-page{padding-top:45px;padding-bottom:90px}.client-layout{display:grid;grid-template-columns:1fr 385px 250px;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 12px 40px #172f3210;min-height:560px}.client-promo{background:linear-gradient(180deg,#d9eef400,#103a47e8),url('../img/marseille.jpg') center/cover;display:flex;flex-direction:column;justify-content:space-between;color:white;padding:34px}.client-promo h1{font-size:35px;margin-top:20px}.client-promo p{max-width:290px}.promo-icons{display:flex;flex-direction:column;gap:12px;font-size:12px;font-weight:700}.auth-card{padding:27px;background:white}.auth-card h2{font-size:19px;letter-spacing:-.04em}.auth-tabs{margin-bottom:18px}.auth-tabs button{padding:10px}.oauth-btn{display:flex;width:100%;min-height:43px;align-items:center;justify-content:center;gap:12px;border:1px solid var(--line);background:white;border-radius:8px;margin:9px 0;font-size:13px;font-weight:750}.google-mark{font-size:20px;color:#4285f4}.or-divider{display:flex;align-items:center;gap:15px;color:#8e999a;font-size:12px;margin:16px 0}.or-divider:before,.or-divider:after{content:'';height:1px;flex:1;background:var(--line)}.auth-card label{margin-bottom:13px}.login-extra{text-align:right;font-size:12px}.login-extra a{color:var(--green)}.client-benefits{background:#f0f8f5;padding:27px 18px}.client-benefits h3{font-size:16px}.client-benefits>div{display:flex;gap:14px;align-items:center;padding:19px 9px;border-radius:11px;background:white;margin-top:13px;color:var(--green);font-size:28px}.client-benefits b,.client-benefits small{display:block;color:var(--ink);font-size:13px}.client-benefits small{font-size:11px;font-weight:400;color:var(--muted)}.account-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.client-dashboard h1{font-size:40px}.dashboard-card{padding:28px;border:1px solid var(--line);border-radius:15px;margin-top:20px}.my-booking{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-top:1px solid var(--line)}.my-booking small{display:block}.status-chip{border-radius:20px;background:#e5f5ed;color:#007e54;font-size:12px;padding:6px 12px}.empty-state{background:var(--soft);padding:40px;border-radius:10px}.empty-state a{color:var(--green);font-weight:700}.footer{background:#101c1f;color:#d9e3e3;margin-top:20px;padding-top:58px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px;padding-bottom:50px}.footer-grid p{max-width:330px;font-size:13px;color:#acbdbf}.footer-grid h4{color:white;font-size:15px}.footer-grid a:not(.footer-logo){display:block;color:#acbdbf;font-size:13px;margin-bottom:10px}.footer-logo{font-size:27px;color:white;font-weight:900}.footer-logo span{color:#38cf8f}.footnote{border-top:1px solid #344345;padding-top:20px;padding-bottom:25px;display:flex;justify-content:space-between;font-size:12px;color:#8da5a8}
@media(max-width:1050px){.navigation{gap:14px}.nav{gap:14px}.nav-cta .btn-outline{display:none}.quick-book{grid-template-columns:1fr 28px 1fr;gap:10px}.quick-book>.btn{grid-column:1/-1}.client-layout{grid-template-columns:1fr 1fr}.client-benefits{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.client-benefits h3{grid-column:1/-1}.client-benefits>div{margin:0}.client-promo{min-height:480px}}@media(max-width:760px){.container{padding-left:18px;padding-right:18px}.site-header{height:68px}.brand{width:120px}.brand img{height:37px}.nav{justify-content:space-between}.mobile-toggle{display:block;background:transparent;color:white;font-size:27px;border:0;margin-left:auto}.navigation{display:none;position:absolute;top:68px;left:0;right:0;background:#101b1f;padding:25px;flex-direction:column;align-items:flex-start;z-index:30}.navigation.open{display:flex}.nav-cta .btn-green{font-size:11px;padding:10px}.hero{height:410px}.hero-content{padding-top:65px}.hero h1{font-size:42px}.hero p{font-size:14px}.booking-float{margin-top:-40px}.quick-book{grid-template-columns:1fr 30px 1fr}.quick-book label:nth-of-type(3),.quick-book label:nth-of-type(4){grid-column:span 1}.quick-book label{font-size:11px}.booking-tabs button{font-size:11px;padding:12px}.trust-grid{grid-template-columns:repeat(2,1fr);gap:18px}.trust-grid span:last-child{grid-column:1/-1}.section-space{padding-top:45px;padding-bottom:45px}.services-grid,.values-grid,.contact-grid{grid-template-columns:repeat(2,1fr)}.service-row{grid-template-columns:110px 1fr 26px;gap:12px}.service-thumb{height:110px}.service-row h2{font-size:16px}.service-row p{font-size:12px}.section-head{align-items:flex-start}.highlight-band{flex-direction:column;align-items:flex-start;gap:20px}.about-feature{grid-template-columns:1fr}.booking-layout{grid-template-columns:1fr}.booking-aside{position:static}.steps{gap:10px;justify-content:space-between}.step{font-size:10px}.booking-layout h1{font-size:32px}.client-layout{grid-template-columns:1fr}.client-promo{min-height:370px}.client-benefits{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:26px}.footer-grid>div:first-child{grid-column:1/-1}.footnote{gap:10px;flex-direction:column}}@media(max-width:480px){.nav-cta .btn-green{padding:10px;font-size:10px}.hero h1{font-size:38px}.hero-content{padding-top:55px}.quick-book{grid-template-columns:1fr;gap:10px}.swap-locations{display:none}.quick-book label:nth-of-type(3),.quick-book label:nth-of-type(4){grid-column:auto}.booking-tabs{margin:0}.booking-tabs button{padding:11px 8px;font-size:10px}.services-grid,.values-grid,.contact-grid{grid-template-columns:1fr 1fr}.service-image{height:110px}.service-label{font-size:12px;padding:11px}.service-row{grid-template-columns:90px 1fr 20px;padding:8px}.service-thumb{height:100px}.service-row p{font-size:11px}.contact-grid{grid-template-columns:1fr}.field-row,.field-row.cols-3{grid-template-columns:1fr}.booking-panel{padding:18px}.steps span{display:none}.note-box,.account-heading{flex-direction:column;gap:15px;align-items:flex-start}.fare-row{grid-template-columns:20px 1fr auto 10px;gap:8px;padding:16px 8px}.fare-row strong{font-size:11px}.fare-row b{font-size:16px}.client-benefits{grid-template-columns:1fr}.client-dashboard h1{font-size:27px}}

/* Language switch - desktop and mobile */
.lang-switch{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px;font-weight:800;padding:5px 8px;border:1px solid #dce8e3;border-radius:9px;background:#fff;color:#7f938c}.lang-switch a{color:#637972;text-decoration:none;padding:4px}.lang-switch a.active{color:#008758;background:#e7f5ec;border-radius:5px}@media(max-width:920px){.lang-switch{margin-right:4px}}

/* AIXCAB v1.2 — live map, international phone, floating iPhone */
.map-shell{overflow:hidden;border-radius:12px;margin-bottom:18px;background:#e3efed}.real-map{height:220px;position:relative}.map-empty{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;text-align:center;gap:9px;color:#078b57;background:repeating-linear-gradient(24deg,#e0eeea 0 26px,#d6e6e4 27px 28px)}.map-empty small{font-size:11px;color:#667a75}.route-detail{font-weight:700;font-size:12px;color:#126e4d;padding:0 10px}.route-detail:not(:empty){padding:11px}.international-phone{display:flex;gap:8px}.international-phone select{flex:0 0 47%;width:47%;min-width:0;font-size:12px}.international-phone input[type=tel]{min-width:0;width:53%}.international-phone input[type=hidden]{display:none}.aixcab-chat{position:fixed;bottom:22px;right:22px;z-index:9998}.chat-trigger{display:flex;align-items:center;gap:9px;background:#079866;border:0;border-radius:999px;color:white;padding:14px 21px;font-weight:800;cursor:pointer;box-shadow:0 8px 28px #063c2b4f;font-size:14px}.chat-iphone{position:absolute;right:0;bottom:66px;width:min(350px,calc(100vw - 26px));filter:drop-shadow(0 13px 22px #12221d50)}.chat-iphone[hidden]{display:none}.iphone-bezel{border-radius:43px;background:#14191b;border:5px solid #14191b;padding:5px;box-shadow:inset 0 0 0 2px #6d7679}.iphone-island{position:absolute;top:15px;left:50%;transform:translateX(-50%);width:92px;height:21px;border-radius:16px;background:#080d0e;z-index:2}.iphone-screen{height:480px;background:#f6f2ec;border-radius:34px;overflow:hidden;display:flex;flex-direction:column}.iphone-status{padding:13px 20px 5px;font-size:12px;font-weight:800;background:white}.iphone-status span{float:right}.chat-head{display:flex;align-items:center;gap:11px;padding:11px 14px;background:#fff;border-bottom:1px solid #e8e8e8}.chat-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#132021;color:#3acb91;font-weight:900;font-size:24px}.chat-head strong,.chat-head small{display:block}.chat-head small{font-size:11px;color:#75948a}.chat-head button{margin-left:auto;border:0;background:none;font-size:28px;cursor:pointer}.chat-conversation{background:#efeae2;flex:1;padding:25px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:15px}.chat-bubble{padding:13px;background:white;border-radius:13px 13px 13px 3px;line-height:1.55;font-size:14px;box-shadow:0 1px 2px #0001}.chat-conversation>small{color:#6b7b75;font-size:11px}.chat-iphone form{background:#f6f2ec;padding:10px;display:flex;flex-direction:column;gap:8px}.chat-iphone textarea{border:1px solid #dee6e2;border-radius:16px;padding:11px;font-size:13px;resize:none;width:100%}.chat-send{border:0;background:#048e5c;color:#fff;font-weight:800;border-radius:12px;padding:12px;cursor:pointer}.iphone-home{height:18px;background:#f6f2ec;position:relative}.iphone-home:after{content:"";position:absolute;bottom:8px;left:35%;width:30%;height:4px;background:#131b1b;border-radius:9px}@media(max-width:480px){.aixcab-chat{right:12px;bottom:12px}.chat-iphone{bottom:64px}.iphone-screen{height:min(480px,calc(100dvh - 135px))}}

/* AIXCAB GLASS 1.3 — luminous, accessible, motion-aware */
:root{--glass-edge:rgba(255,255,255,.75);--aix-glow:#17cf90}body{background:radial-gradient(ellipse 1100px 540px at 88% -6%,rgba(22,208,148,.13),transparent 62%),radial-gradient(ellipse 700px 520px at -10% 25%,rgba(46,178,207,.11),transparent 70%),#f7faf9} .site-header{background:rgba(11,24,26,.93)!important;box-shadow:0 8px 28px rgba(13,37,36,.16);border-bottom:1px solid rgba(255,255,255,.13);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.hero{position:relative;isolation:isolate}.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 54%,rgba(255,255,255,.15) 68%,transparent 80%);mix-blend-mode:screen}.btn-green,.chat-trigger,.chat-send,button.selected,.booking-tabs .active{background:linear-gradient(115deg,#07855c 2%,#12c68c 55%,#07885a 100%)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 9px 23px rgba(1,147,99,.24),inset 0 1px rgba(255,255,255,.25);transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}.btn-green:hover,.chat-trigger:hover,.chat-send:hover{transform:translateY(-2px);box-shadow:0 15px 33px rgba(1,147,99,.37),inset 0 1px rgba(255,255,255,.38);filter:saturate(1.1)}.booking-panel,.booking-aside,.booking-float,.service-card,.service-row,.contact-card,.about-feature,.client-benefits,.login-card,.fare-card,.highlight-band{background:linear-gradient(150deg,rgba(255,255,255,.98),rgba(243,251,248,.87))!important;border:1px solid rgba(210,234,226,.87)!important;box-shadow:0 16px 45px rgba(20,78,70,.07),inset 0 1px rgba(255,255,255,.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.service-card,.service-row,.fare-row,.contact-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.service-card:hover,.service-row:hover,.contact-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(11,96,76,.16);border-color:rgba(24,194,136,.43)!important}.booking-panel input,.booking-panel select,.booking-panel textarea,.quick-book input,.quick-book select,.login-card input{background:rgba(255,255,255,.94)!important;border-color:#d9e7e2!important;transition:border-color .2s,box-shadow .2s}.booking-panel input:focus,.booking-panel select:focus,.booking-panel textarea:focus,.quick-book input:focus,.login-card input:focus{outline:none!important;border-color:#13b981!important;box-shadow:0 0 0 4px rgba(19,185,129,.14)!important}.chat-iphone{transform-origin:bottom right;animation:aixGlassOpen .28s cubic-bezier(.2,.8,.2,1) both}.iphone-bezel{background:linear-gradient(110deg,#080e10,#677b7c 35%,#101819 57%,#8b9997 75%,#111719)!important;box-shadow:0 0 0 2px #b0b9b8,0 18px 55px rgba(7,30,25,.32),inset 0 0 0 2px #182223!important}.iphone-screen{background:#f8f8f5}.chat-conversation{background:radial-gradient(circle at 60% 20%,#f8f6ed,#eeeae1)}.chat-trigger{outline:2px solid rgba(255,255,255,.6);outline-offset:2px}.chat-trigger:focus-visible,.chat-send:focus-visible{outline:3px solid #172c29;outline-offset:3px}.aixcab-chat{z-index:100000}.map-shell{border:1px solid #d2e9e2;box-shadow:0 12px 28px rgba(9,89,75,.1)}.footer{background:linear-gradient(145deg,#0a171a,#132c28)!important}.glass-shine{background:linear-gradient(120deg,transparent,rgba(255,255,255,.3),transparent)}@keyframes aixGlassOpen{from{opacity:0;transform:translateY(16px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.chat-iphone{animation:none!important}.btn-green,.chat-trigger,.chat-send,.service-card,.service-row{transition:none!important}}

/* AIXCAB v1.3.1 — original full-color logo, inverted light navigation and bright glossy palette */
:root{--green:#089b64;--green2:#25c887;--dark:#151c1e;--ink:#151f23;--soft:#f8fbfa;--line:#dae9e3;--glass-edge:rgba(255,255,255,.92)}
body{background:radial-gradient(ellipse 850px 400px at 85% 2%,rgba(39,199,143,.10),transparent 75%),linear-gradient(#fff,#f5faf8 65%,#fff)!important;color:#152126}
.site-header{background:rgba(255,255,255,.97)!important;color:#172124!important;border-bottom:1px solid #e2eae7!important;box-shadow:0 8px 28px rgba(15,49,40,.08)!important}
.site-header .navigation a{color:#1b292c!important}.site-header .navigation a:hover,.site-header .navigation a:focus{color:#078d5d!important}
.brand{width:190px}.brand img{filter:none!important;max-width:185px;width:100%;height:auto;max-height:57px;object-fit:contain;display:block;mix-blend-mode:multiply}
.mobile-toggle{color:#142524!important}.navigation.open{background:#fff!important;box-shadow:0 16px 30px #13251b15!important}
.hero-picture{background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.78) 40%,rgba(255,255,255,.12) 100%),url('../img/marseille.jpg') center 54%/cover!important}
.hero h1{color:#111c20!important}.hero:after{background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.26) 59%,transparent 75%)}
.booking-tabs button{background:#eaf3ef!important;color:#243631!important;box-shadow:inset 0 1px #ffffff}.booking-tabs button.active{background:linear-gradient(110deg,#04865a,#10b47a)!important;color:white!important}
.quick-book,.service-card,.service-row,.booking-panel,.booking-aside,.contact-card,.auth-card,.client-benefits,.fare-list{background:linear-gradient(140deg,#fff 0%,#f6fcf9 100%)!important;border-color:#dae9e3!important;box-shadow:0 12px 30px rgba(28,86,69,.07),inset 0 1px #fff!important}
.footer{background:linear-gradient(145deg,#fff,#eaf6f0)!important;color:#172725!important;border-top:1px solid #d9e8e0!important}.footer h4,.footer-grid h4{color:#152625!important}.footer-grid a:not(.footer-logo),.footer-grid p,.footnote{color:#50645d!important}.footer-logo{display:inline-block;max-width:190px}.footer-logo img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.btn-outline{color:#182c24!important;border-color:#a8c7b9!important;background:rgba(255,255,255,.65)!important}.btn-outline:hover{background:#effaf5!important}
.lang-switch{border-color:#deebe5!important}.chat-trigger{background:linear-gradient(110deg,#04794f,#14bf82)!important}
@media(max-width:760px){.brand{width:145px}.brand img{max-width:140px}.navigation.open a{color:#142524!important}}

/* 1.4.0 - accessible address suggestions */
.aixcab-suggest-parent{position:relative;min-width:0}
.aixcab-suggest-list{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:99999;background:#fff;border:1px solid #d6e7df;border-radius:13px;box-shadow:0 18px 42px rgba(8,40,27,.17);max-height:290px;overflow-y:auto;padding:5px;color:#172423}
.aixcab-suggest-list[hidden]{display:none!important}
.aixcab-suggest-choice{display:block;width:100%;text-align:left;background:#fff!important;color:#172423!important;border:0!important;border-radius:9px;padding:11px 12px;cursor:pointer;font:inherit;font-size:13px;line-height:1.35;white-space:normal}
.aixcab-suggest-choice:hover,.aixcab-suggest-choice:focus{background:#eaf7f0!important;outline:2px solid #0b9563;outline-offset:-2px}
.aixcab-suggest-choice::before{content:'⌖';margin-right:9px;color:#06865b}
.aixcab-suggest-message{padding:11px;color:#62746a;font-size:12px}
.aixcab-attribution{font-size:10px;color:#64756e;padding:6px 12px;border-top:1px solid #e5eeea}

/* AIXCAB interactive free route map */
#aixcab-live-map.real-map{height:230px!important;min-height:230px!important;position:relative;overflow:hidden;border-radius:13px;background:#e9f1ec;}
#aixcab-live-map .map-empty{position:relative;z-index:1} #aixcab-live-map:has(.leaflet-container) .map-empty{display:none}
#aixcab-live-map .leaflet-container{height:100%;width:100%;font-family:inherit;z-index:1;border-radius:13px;}
#aixcab-live-map .leaflet-control-attribution{font-size:9px!important;}
#aixcab-route-detail{padding:8px 2px;font-size:12px;line-height:1.45;color:#17654d;min-height:24px;}
.aixcab-map-pin{background:#fff;border:3px solid #079667;border-radius:50%;height:17px;width:17px;box-shadow:0 2px 10px #143a3033;}
.aixcab-map-pin.end{border-color:#19282a;}

/* AIXCAB indicative fares on actual road routing */
.aixcab-fare-card{margin:18px 0;padding:20px;border:1px solid rgba(0,142,96,.22);border-radius:20px;background:linear-gradient(135deg,#fff 0%,#eaf9f1 100%);box-shadow:0 12px 30px rgba(9,81,56,.07)}
.aixcab-fare-card .fare-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.aixcab-fare-card .fare-estimate-tag{font-size:11px;font-weight:700;color:#08764f;background:#d6f4e5;padding:5px 10px;border-radius:99px}
.aixcab-fare-card label{display:block;margin-bottom:6px;font-size:13px;font-weight:650}
.aixcab-fare-card select{width:100%;padding:12px;background:#fff;border:1px solid #c5d9d0;border-radius:12px;color:#17262a}
.aixcab-fare-card .fare-amount{font-weight:800;font-size:clamp(29px,4vw,39px);letter-spacing:-.035em;color:#087b56;margin-top:13px}
.aixcab-fare-card p{margin:4px 0 10px}.aixcab-fare-card small{display:block;line-height:1.45;color:#53645d}

/* AIXCAB Premium UI v1.7.0 */
:root{--green:#008d5c;--green2:#00b973;--dark:#142026;--ink:#152328;--muted:#63747a;--line:#dae9e5;--soft:#f7fbfa;--radius:18px}
body{background:radial-gradient(ellipse at 90% 0%,#eafaf4 0,transparent 48%),#fbfdfc;color:var(--ink)}
.container{max-width:1190px}
.site-header{background:rgba(255,255,255,.95)!important;box-shadow:0 5px 28px rgba(23,75,60,.07);backdrop-filter:blur(14px)}
.site-header .brand img{max-height:43px!important;filter:none!important;object-fit:contain}
.site-header .nav{min-height:80px}
.navigation a{color:#24383c!important;font-weight:650}.navigation a:hover{color:#008f5a!important}
.btn-green{background:linear-gradient(110deg,#008652,#00ba70)!important;border:1px solid #00a86a!important;color:white!important;box-shadow:0 10px 22px rgba(0,135,80,.17)!important}.btn-green:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(0,135,80,.23)!important}
.btn,.premium-arrow,.round-icon{transition:all .22s ease}.btn-white{color:#16362d!important;background:white!important;box-shadow:0 5px 20px rgba(0,0,0,.05)}
.premium-hero{min-height:560px;position:relative;overflow:hidden;display:flex;align-items:center;background:#e7f3f1}
.premium-hero-photo{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(245,252,250,.96) 0%,rgba(246,252,250,.77) 38%,rgba(240,250,246,.05) 80%),url('../img/marseille.jpg');background-size:cover;background-position:center 40%;filter:saturate(1.1) contrast(1.04)}
.premium-hero:after{content:'';inset:auto 0 0;position:absolute;height:65px;background:linear-gradient(0deg,rgba(251,253,252,.5),transparent);pointer-events:none}
.premium-hero-content{position:relative;z-index:1;padding-top:84px;padding-bottom:95px;width:100%}
.pill-kicker{display:inline-block;background:#e3f8ee;border:1px solid #cbecdd;color:#0b8c57;font-size:12px;font-weight:800;border-radius:40px;padding:7px 15px;letter-spacing:.015em}
.premium-hero h1{font-size:clamp(46px,5.5vw,76px);line-height:1.08;letter-spacing:-.052em;color:#172429;max-width:690px;margin:28px 0 22px;font-weight:800}
.premium-hero h1 em{font-style:normal;color:#008f60}.premium-hero p{color:#35474c;font-size:18px;max-width:520px;line-height:1.7}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.hero-buttons .btn{padding:13px 23px}
.premium-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative;z-index:2;margin-top:-38px!important;background:rgba(255,255,255,.94);padding:21px 26px;border:1px solid #e5f0ec;border-radius:17px;box-shadow:0 18px 35px rgba(20,65,54,.09)}
.premium-trust>div{display:grid;grid-template-columns:30px 1fr;column-gap:5px;align-items:center;color:#008d5c;font-size:22px}.premium-trust strong{font-size:12px;color:#17272b}.premium-trust small{grid-column:2;font-size:11px;color:#6b7d80}
.premium-section{padding-top:65px!important}.premium-section h2,.premium-banner h2{font-size:clamp(26px,3vw,40px);letter-spacing:-.035em}.premium-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:20px}.premium-feature,.premium-service-card{background:#fff;border:1px solid #e3ece9;border-radius:19px;overflow:hidden;box-shadow:0 9px 28px rgba(24,70,57,.06);transition:transform .2s,box-shadow .2s}.premium-feature:hover,.premium-service-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(24,70,57,.12)}
.premium-feature-photo{height:220px;background-size:cover;background-position:center}.airport-photo{background-image:linear-gradient(135deg,rgba(0,80,78,.08),rgba(0,31,39,.25)),url('../img/marseille.jpg');background-position:25% 40%}.station-photo{background-image:linear-gradient(135deg,rgba(0,80,78,.06),rgba(0,31,39,.27)),url('../img/provence.jpg')}.business-photo{background-image:url('../img/marseille.jpg')}.provence-photo{background-image:url('../img/provence.jpg')}.marseille-photo{background-image:url('../img/marseille.jpg')}
.premium-feature-body{padding:23px;position:relative}.premium-feature-body h3{margin:12px 0 6px;color:#13282a;font-size:19px}.premium-feature-body p{font-size:13px;color:#6d797a;margin:0}.round-icon{display:inline-flex;align-items:center;justify-content:center;width:37px;height:37px;border-radius:50%;background:#e0f5e9;color:#008c58;font-size:18px}.premium-arrow{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#e7f7ee;color:#008a56;font-weight:800}.premium-feature-body .premium-arrow{position:absolute;right:20px;top:24px}.premium-banner{margin-top:45px!important;margin-bottom:50px!important;background:linear-gradient(100deg,#eef9f4,#d9f2e7);border:1px solid #cfe8dc;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:36px!important;border-radius:20px}.premium-banner p{color:#53716a}
.premium-inner{padding-top:65px!important;padding-bottom:22px!important}.premium-inner h1{font-size:clamp(36px,4vw,56px);letter-spacing:-.055em;line-height:1.12}.premium-inner p{max-width:700px;color:#6b777b}
.premium-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:36px}.premium-service-image{height:208px;background-size:cover;background-position:center}.premium-service-detail{padding:22px;position:relative}.premium-service-detail h2{font-size:21px;margin:8px 0}.premium-service-detail p{color:#68797b;margin:0 0 12px}.premium-service-detail ul{list-style:none;padding:0;margin:0}.premium-service-detail li{font-size:13px;color:#127a57;margin:6px 0}.premium-service-detail .premium-arrow{position:absolute;right:22px;bottom:22px}.banner-provence{background:linear-gradient(95deg,rgba(11,65,60,.80),rgba(0,91,68,.24)),url('../img/provence.jpg') center/cover;color:white}.banner-provence h2,.banner-provence p,.banner-provence .kicker{color:white!important}
.premium-rate-section{padding-bottom:45px}.premium-rate-section .fare-row{background:#fff;border:1px solid #e4ece9;border-radius:13px;margin-bottom:10px;padding:14px 20px;box-shadow:0 5px 14px rgba(15,60,46,.035)}.premium-rate-section .fare-price{display:flex;flex-direction:column;align-items:flex-end}.premium-rate-section .fare-price small{font-size:10px}.premium-rate-section .fare-price b{color:#078a56;font-size:21px}.premium-rate-section .fare-icon{background:#e9f7ef;border-radius:10px;padding:13px}
.inner-heading,.booking-page,.auth-layout,.account-page{position:relative}.booking-card,.auth-card,.contact-card,.fare-list,.premium-feature{backdrop-filter:blur(8px)}input:focus,select:focus,textarea:focus{outline-color:#00ae6d!important;box-shadow:0 0 0 3px rgba(0,175,105,.1)}
@media(max-width:800px){.premium-hero{min-height:520px}.premium-hero-photo{background-image:linear-gradient(90deg,rgba(245,252,250,.93),rgba(245,252,250,.55)),url('../img/marseille.jpg')}.premium-hero-content{padding:70px 20px 80px}.premium-trust{grid-template-columns:repeat(2,1fr);margin:0 15px!important}.premium-feature-grid,.premium-service-grid{grid-template-columns:1fr}.premium-banner{flex-direction:column;align-items:flex-start;padding:25px!important}}
@media(prefers-reduced-motion:reduce){.premium-feature,.premium-service-card,.btn{transition:none!important}}


/* AIXCAB Premium update v1.8.0 */
:root{--route-svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='260' viewBox='0 0 900 260'%3E%3Cpath d='M34 173 C 146 83, 225 216, 346 129 S 561 56, 676 136 S 799 226, 864 118' fill='none' stroke='%2300a86c' stroke-width='4' stroke-linecap='round' stroke-dasharray='10 14' opacity='.16'/%3E%3Ccircle cx='34' cy='173' r='10' fill='white' stroke='%2300a86c' stroke-width='4' opacity='.34'/%3E%3Ccircle cx='864' cy='118' r='10' fill='white' stroke='%2300a86c' stroke-width='4' opacity='.34'/%3E%3Cpath d='M864 102c6.8 0 12.2 5.1 12.2 11.7 0 7.7-8.9 19.3-12.2 23.3-3.3-4-12.2-15.6-12.2-23.3 0-6.6 5.4-11.7 12.2-11.7z' fill='%2300a86c' opacity='.24'/%3E%3C/svg%3E");}
body::before{content:'';position:fixed;inset:80px 0 0 0;pointer-events:none;background-image:var(--route-svg),var(--route-svg);background-repeat:no-repeat,no-repeat;background-size:min(980px,92vw) auto,min(820px,86vw) auto;background-position:right -60px top 140px,left -60px bottom 240px;opacity:.8;z-index:0}
body > *{position:relative;z-index:1}
.premium-hero-photo{background-image:linear-gradient(90deg,rgba(246,252,250,.97) 0%,rgba(248,252,250,.76) 40%,rgba(240,250,246,.10) 82%),url('../img/marseille.jpg');background-position:center 42%;filter:saturate(1.18) contrast(1.06) brightness(1.03)}
.route-signed{position:relative;overflow:hidden}
.route-signed::after{content:'';position:absolute;inset:16px 0 auto auto;width:min(520px,60%);height:160px;background-image:var(--route-svg);background-repeat:no-repeat;background-size:contain;opacity:.45;pointer-events:none}
.trust-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#ebfaf2,#d4f3e5);box-shadow:inset 0 1px 1px rgba(255,255,255,.8),0 8px 16px rgba(0,135,80,.08);font-size:16px}
.premium-trust>div{grid-template-columns:38px 1fr;column-gap:10px}
.premium-service-card,.premium-feature,.booking-panel,.auth-card,.dashboard-card,.fare-list,.contact-card,.note-box,.aixcab-fare-card{background:rgba(255,255,255,.92);backdrop-filter:blur(10px);box-shadow:0 12px 32px rgba(18,66,51,.08)}
.round-icon{box-shadow:0 10px 22px rgba(0,137,86,.12);font-size:17px}
.premium-arrow{box-shadow:0 10px 18px rgba(0,137,86,.12)}
.booking-page .booking-panel,.booking-page .booking-aside,.client-layout>div,.premium-rate-section .fare-row{border-radius:20px}
.aixcab-suggest-list{backdrop-filter:blur(10px);background:rgba(255,255,255,.98);border-color:#cfe5dc}
.aixcab-suggest-choice{padding:12px 13px}
.aixcab-suggest-choice:hover,.aixcab-suggest-choice:focus{background:#eefaf4!important}
#aixcab-live-map.real-map{height:280px!important;min-height:280px!important;border:1px solid #d9ece4;box-shadow:inset 0 0 0 1px rgba(255,255,255,.6),0 10px 24px rgba(8,54,42,.06)}
.booking-aside .itinerary div{padding:12px 0;border-bottom:1px solid #e7efec}
.airport-photo{background-image:linear-gradient(135deg,rgba(0,80,78,.04),rgba(0,31,39,.18)),url('../img/marseille.jpg');background-position:20% 40%}
.station-photo{background-image:linear-gradient(135deg,rgba(0,80,78,.06),rgba(0,31,39,.20)),url('../img/provence.jpg');background-position:center}
.business-photo{background-image:linear-gradient(135deg,rgba(0,80,78,.06),rgba(0,31,39,.18)),url('../img/marseille.jpg');background-position:60% 42%}
.provence-photo{background-image:linear-gradient(135deg,rgba(0,80,78,.02),rgba(0,31,39,.16)),url('../img/provence.jpg')}
.marseille-photo{background-image:linear-gradient(135deg,rgba(0,80,78,.02),rgba(0,31,39,.16)),url('../img/marseille.jpg')}
@media(max-width:900px){body::before{background-size:88vw auto,78vw auto;background-position:right -140px top 180px,left -120px bottom 240px;opacity:.5}.route-signed::after{width:72%;height:110px;opacity:.32}}


/* AIXCAB v2.0.0 - route progress and animated car */
.steps.route-progress{position:relative;display:flex;justify-content:space-between;gap:0;max-width:700px;margin:0 auto 39px;padding:0 8px}
.steps.route-progress::before{content:'';position:absolute;left:44px;right:44px;top:18px;height:3px;background:repeating-linear-gradient(90deg,#d7e6df 0 10px,transparent 10px 20px);z-index:0}
.steps.route-progress .step{position:relative;z-index:1;display:flex;flex:1;flex-direction:column;align-items:center;gap:10px;text-align:center;font-size:12px;color:#8b9698}
.steps.route-progress .step b{position:relative;display:block;flex-shrink:0}
.steps.route-progress .step-mid b{width:28px;height:28px;border-radius:50%;background:#ffffff;border:3px solid #d5e5de;box-shadow:0 8px 18px rgba(19,48,38,.06)}
.steps.route-progress .step-mid b::after{content:'';position:absolute;inset:7px;border-radius:50%;background:#c4d6ce}
.steps.route-progress .step-start b,.steps.route-progress .step-end b{width:26px;height:26px;background:#dff5eb;border:3px solid #b8dfd0;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 10px 18px rgba(19,48,38,.08)}
.steps.route-progress .step-start b::after,.steps.route-progress .step-end b::after{content:'';position:absolute;inset:5px;border-radius:50%;background:#ffffff;transform:rotate(45deg)}
.steps.route-progress .step.active,.steps.route-progress .step.done{color:#0c7850}
.steps.route-progress .step.active.step-mid b,.steps.route-progress .step.done.step-mid b{border-color:#00a86c;background:#e8faf1}
.steps.route-progress .step.active.step-mid b::after,.steps.route-progress .step.done.step-mid b::after{background:#00a86c}
.steps.route-progress .step.active.step-start b,.steps.route-progress .step.done.step-start b,.steps.route-progress .step.active.step-end b,.steps.route-progress .step.done.step-end b{background:#00a86c;border-color:#00a86c}
.steps.route-progress .step.active.step-start b::after,.steps.route-progress .step.done.step-start b::after,.steps.route-progress .step.active.step-end b::after,.steps.route-progress .step.done.step-end b::after{background:#ffffff}
.steps.route-progress .step span{font-weight:700}
.aixcab-car-marker{background:transparent!important;border:0!important;overflow:visible!important}
.aixcab-car-icon{width:54px;height:93px;display:block;transform-origin:27px 46px;will-change:transform;filter:drop-shadow(0 3px 5px rgba(0,0,0,.38));transition:transform .09s linear;pointer-events:none}
.aixcab-car-svg{display:block;width:54px;height:93px;overflow:visible}
@media (prefers-reduced-motion:reduce){.aixcab-car-icon{transition:none}}
@media(max-width:760px){.steps.route-progress{padding:0;gap:6px}.steps.route-progress::before{left:28px;right:28px;top:14px}.steps.route-progress .step span{font-size:10px}.steps.route-progress .step-start b,.steps.route-progress .step-end b{width:22px;height:22px}.steps.route-progress .step-mid b{width:22px;height:22px}.steps.route-progress .step-mid b::after{inset:5px}}
@media(max-width:480px){.steps.route-progress .step span{display:none}.steps.route-progress{margin-bottom:26px}.steps.route-progress::before{top:12px}}

/* AIXCAB v2.1.0 — premium coherent line icons */
.aixcab-icon{display:inline-block;width:22px;height:22px;stroke:currentColor;stroke-width:1.8;vertical-align:middle;flex-shrink:0}
.trust-icon .aixcab-icon{width:19px;height:19px}
.round-icon .aixcab-icon{width:23px;height:23px}
.contact-icon .aixcab-icon{width:28px;height:28px}
.fare-icon .aixcab-icon{width:24px;height:24px}
.premium-service-detail .round-icon{width:44px;height:44px}
.premium-trust>div{color:#068b58}
.client-benefits .aixcab-icon{color:#008d5c;width:27px;height:27px}
.itinerary>div>.aixcab-icon{width:17px;height:17px;color:#008e5d;margin-top:2px}
.premium-service-card .round-icon,.premium-feature .round-icon,.contact-card .contact-icon{background:linear-gradient(145deg,#f0fcf5,#d7f4e5);box-shadow:0 8px 18px rgba(0,130,70,.1);border:1px solid #ccebdc}

/* Filled green pictograms matching supplied AIXCAB screenshot references */
.aixcab-icon{fill:currentColor!important;stroke:none!important;width:22px;height:22px}
.premium-service-card .round-icon{background:transparent!important;box-shadow:none!important;border:none!important;width:34px!important;height:34px!important;justify-content:flex-start}
.premium-service-card .round-icon .aixcab-icon{width:27px;height:27px;color:#078d57}
.premium-feature .round-icon{background:transparent!important;box-shadow:none!important;border:none!important;width:32px!important;height:32px!important}
.premium-feature .round-icon .aixcab-icon{width:23px;height:23px;color:#078d57}
.premium-trust .trust-icon{background:transparent!important;box-shadow:none!important;width:28px;height:28px}
.premium-trust .trust-icon .aixcab-icon{width:21px;height:21px;color:#078d57}
.premium-rate-section .fare-icon .aixcab-icon{fill:#078d57}


/* AIXCAB MOBILE STABILITY v2.3.0 — layout, overflow and touch */
html{width:100%;max-width:100%;overflow-x:clip}
body{width:100%;min-width:0;max-width:100%;overflow-x:clip}
main,header,footer,section,article,.container{min-width:0}
img,svg,video,iframe{max-width:100%}
img{height:auto}
button,a,input,select,textarea{touch-action:manipulation}
input,textarea,select{max-width:100%;min-width:0}
a,button{ -webkit-tap-highlight-color:transparent}
.booking-panel,.booking-aside,.auth-card,.client-promo,.client-benefits,.premium-feature,.premium-service-card,.premium-service-detail{min-width:0}
.premium-feature-body h3,.premium-service-detail h2,.fare-row strong,.my-booking strong{overflow-wrap:anywhere}
.map-shell,.aixcab-suggest-parent{min-width:0}
.leaflet-container{max-width:100%;touch-action:pan-x pan-y}
@media(max-width:1100px){
 .nav{gap:12px}
 .navigation{gap:12px}
 .nav-cta{gap:6px}
 .nav-cta .btn{padding:10px 12px}
 .nav-cta .lang-switch{white-space:nowrap}
 .booking-layout{grid-template-columns:minmax(0,1fr) minmax(260px,32%)}
}
@media(max-width:900px){
 .site-header{height:auto;min-height:68px;position:relative;z-index:999}
 .site-header .nav{height:68px;min-height:68px;display:flex;flex-wrap:nowrap;gap:10px;padding-inline:16px}
 .brand{width:140px;max-width:38vw;min-width:0;flex:0 0 auto}
 .brand img{max-height:39px;max-width:100%;width:100%;object-fit:contain}
 .mobile-toggle{display:flex!important;align-items:center;justify-content:center;border:0;background:transparent!important;color:#172629!important;font-size:26px;width:42px;height:42px;order:3;margin:0 0 0 auto;flex:0 0 42px}
 .nav-cta{order:2;margin-left:auto}
 .nav-cta .btn-outline{display:none!important}
 .nav-cta .btn-green{min-height:37px;padding:8px 12px!important;font-size:11px!important}
 .nav-cta .lang-switch{font-size:11px}
 .navigation{display:none!important;position:absolute!important;top:100%!important;left:10px!important;right:10px!important;width:auto!important;border:1px solid #dceee5!important;border-radius:16px!important;background:rgba(255,255,255,.98)!important;padding:14px!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;box-shadow:0 18px 40px #102c2430!important;max-height:calc(100dvh - 90px);overflow-y:auto;z-index:1000}
 .navigation.open{display:flex!important}
 .navigation a{display:block;padding:12px 13px;font-size:14px!important;border-radius:9px;color:#16362e!important}
 .navigation a:hover,.navigation a:focus-visible{background:#eaf9f0}
 .booking-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
 .booking-layout>div,.booking-aside{width:100%;min-width:0}
 .booking-aside{position:relative!important;top:auto!important;max-width:100%;order:2}
 #aixcab-live-map.real-map{height:280px!important;min-height:280px!important}
 .client-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .client-benefits{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}
 .premium-service-grid,.premium-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .premium-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-grid{gap:20px}
}
@media(max-width:640px){
 .container{padding-inline:16px!important}
 .site-header .nav{padding-inline:12px}
 .brand{width:118px}
 .nav-cta .btn-green{font-size:10px!important;padding:7px 9px!important;min-height:34px}
 .nav-cta .lang-switch{font-size:10px}
 .mobile-toggle{width:36px;flex-basis:36px;font-size:23px}
 .premium-hero{min-height:490px}
 .premium-hero-content{padding:55px 16px 75px}
 .premium-hero h1{font-size:clamp(36px,9vw,49px);overflow-wrap:break-word}
 .premium-hero p{font-size:15px;line-height:1.55}
 .hero-buttons{display:flex;flex-wrap:wrap;gap:9px}
 .hero-buttons .btn{font-size:12px;padding:12px 15px;white-space:normal}
 .premium-trust{grid-template-columns:repeat(2,minmax(0,1fr));padding:15px!important;margin:0 14px!important;gap:14px}
 .premium-trust>div{grid-template-columns:26px minmax(0,1fr);gap:4px}
 .premium-trust strong{font-size:11px;line-height:1.3}
 .premium-trust small{font-size:10px}
 .premium-feature-grid,.premium-service-grid,.contact-grid,.values-grid{grid-template-columns:minmax(0,1fr)}
 .premium-feature-photo,.premium-service-image{height:175px}
 .section-head{flex-wrap:wrap;gap:12px}
 .section-head h2{font-size:clamp(25px,7vw,34px)}
 .premium-banner{flex-direction:column;align-items:stretch;gap:16px;padding:22px!important}
 .premium-banner .btn{align-self:flex-start;max-width:100%;white-space:normal}
 .inner-heading{padding-top:45px!important}
 .inner-heading h1{font-size:clamp(31px,8vw,42px)}
 .booking-page{padding-top:24px;padding-bottom:55px}
 .booking-layout h1{font-size:clamp(28px,7.5vw,38px)}
 .booking-panel{padding:18px 15px!important;margin-top:18px}
 .booking-panel h3{font-size:19px}
 .field-row,.field-row.cols-3{grid-template-columns:minmax(0,1fr);gap:12px}
 .booking-panel input,.booking-panel select,.booking-panel textarea,.auth-card input{font-size:16px;min-height:44px}
 .pills{gap:6px}
 .pills button{font-size:11px;line-height:1.2;padding:10px 11px}
 .booking-aside{padding:15px!important}
 #aixcab-live-map.real-map{height:245px!important;min-height:245px!important}
 .stage-actions{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
 .stage-actions .btn{flex:1 1 auto;min-width:0;white-space:normal;text-align:center}
 .steps.route-progress{width:100%;max-width:100%;padding-inline:0!important;margin-bottom:22px}
 .steps.route-progress .step{min-width:0;flex:1;gap:7px}
 .steps.route-progress::before{left:12%;right:12%}
 .steps.route-progress .step span{display:block!important;font-size:9px;line-height:1.15;overflow-wrap:anywhere}
 .filter-tabs{display:flex;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;max-width:100%}
 .filter-tabs button{flex:0 0 auto;white-space:nowrap;font-size:12px;padding:11px 13px}
 .fare-row{grid-template-columns:30px minmax(0,1fr) auto;gap:8px;padding:14px 12px!important}
 .fare-row .premium-arrow{display:none}
 .fare-row strong{font-size:12px}
 .fare-row b{font-size:17px}
 .fare-row .fare-price{white-space:nowrap}
 .note-box{display:flex;flex-direction:column;align-items:stretch;gap:12px}
 .note-box .btn{white-space:normal}
 .client-layout{grid-template-columns:minmax(0,1fr);border-radius:16px}
 .client-promo{min-height:270px;padding:23px}
 .client-promo h1{font-size:30px}
 .auth-card{padding:20px}
 .client-benefits{grid-template-columns:minmax(0,1fr);padding:20px}
 .client-benefits h3{grid-column:auto}
 .account-heading{align-items:flex-start;gap:12px}
 .dashboard-card{padding:18px}
 .my-booking{align-items:flex-start;gap:10px;flex-wrap:wrap}
 .footer-grid{grid-template-columns:minmax(0,1fr)}
 .footer-grid>div:first-child{grid-column:auto}
 .footnote{display:flex;flex-direction:column;gap:9px}
 #chat-iphone{max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 95px)!important}
 .aixcab-suggest-list{max-height:min(270px,40dvh)}
}
@media(max-width:380px){
 .brand{width:99px}
 .nav-cta .btn-green{font-size:9px!important;padding-inline:7px!important}
 .nav-cta .lang-switch{font-size:9px}
 .premium-trust{grid-template-columns:minmax(0,1fr)}
 .steps.route-progress .step span{font-size:8px}
}
