/* TaxiStrasbourg homepage — strict reference based on approved mockup */
:root{--ts5-bg:#06121a;--ts5-panel:#0b1d28;--ts5-panel2:#102734;--ts5-line:#22414f;--ts5-text:#f7fbfd;--ts5-muted:#a5b5bf;--ts5-cyan:#22c8ff;--ts5-mint:#3ceeb4;--ts5-grad:linear-gradient(90deg,#21c5ff 0%,#3ceeb4 100%)}
body.home{background:var(--ts5-bg)!important;color:var(--ts5-text)!important}.ts5-home{background:radial-gradient(circle at 80% 0,rgba(23,128,164,.11),transparent 31%),var(--ts5-bg);color:var(--ts5-text)}.ts5-shell{width:min(1280px,calc(100% - 64px));margin:0 auto}
body.home .ts3-header{position:sticky;top:0;z-index:1000;background:#06131c!important;border-bottom:1px solid #173442!important;backdrop-filter:blur(14px)}body.home .ts3-header-inner{width:min(1320px,calc(100% - 52px));height:86px}.ts3-brand-word b,.ts3-brand-word strong{font-weight:900}.ts3-brand-word strong{color:var(--ts5-cyan)!important}.ts3-head-book{background:var(--ts5-grad)!important;color:#06121a!important}.ts3-head-wa{border-color:#27d990!important}.ts3-head-phone svg{fill:var(--ts5-cyan)!important}
.ts5-hero{position:relative;min-height:610px;overflow:hidden;border-bottom:1px solid #1a3441}.ts5-hero-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(3,12,19,.93) 0%,rgba(3,12,19,.80) 31%,rgba(3,12,19,.36) 60%,rgba(3,12,19,.60) 100%),linear-gradient(180deg,rgba(4,14,21,.05),rgba(4,14,21,.25)),url('https://taxistrasbourg.eu/wp-content/uploads/2026/09/Strasbourg-nuit-TaxiStrasbourg.jpg');background-position:center 48%;background-size:cover;background-repeat:no-repeat;filter:saturate(.98) contrast(1.04)}.ts5-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(430px,.88fr);gap:46px;align-items:center;min-height:610px;padding:34px 0 28px}.ts5-kicker,.ts5-section-head span,.ts5-region-copy>span,.ts5-seo>div:first-child>span{display:block;margin:0 0 12px;color:#40e1dc;font-size:11px;font-weight:900;letter-spacing:2.2px;text-transform:uppercase}.ts5-hero-copy h1{margin:0;max-width:720px;font-size:clamp(50px,5.05vw,75px);line-height:.98;letter-spacing:-3.6px;color:#fff;font-weight:900}.ts5-hero-copy h1 span{background:var(--ts5-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.ts5-lead{max-width:690px;margin:21px 0 0;color:#e1e9ed;font-size:18px;line-height:1.52}.ts5-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px}.ts5-benefits>div{display:flex;gap:9px;align-items:center}.ts5-benefits svg{width:27px;height:27px;fill:none;stroke:#37e3dd;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.ts5-benefits span{display:flex;flex-direction:column}.ts5-benefits b{font-size:12px;color:#fff}.ts5-benefits small{margin-top:3px;font-size:10px;color:#9fb1bb}
.ts5-booking{background:linear-gradient(180deg,rgba(12,29,40,.98),rgba(6,18,27,.99));border:1px solid #294654;border-radius:12px;padding:18px 20px 16px;box-shadow:0 24px 65px rgba(0,0,0,.35);backdrop-filter:blur(12px)}.ts5-booking-head h2{margin:0 0 14px;color:#fff;font-size:25px;letter-spacing:-.6px}.ts5-tabs{display:grid;grid-template-columns:1fr 1fr 1.15fr;border:1px solid #284453;border-radius:7px;overflow:hidden;margin-bottom:12px}.ts5-tabs button{min-height:36px;border:0;border-right:1px solid #284453;background:#0a1b26;color:#a9bbc4;font-size:11px}.ts5-tabs button:last-child{border-right:0}.ts5-tabs .is-active{background:#0f3042;color:#25d2ff;box-shadow:inset 0 -2px 0 #25d2ff}.ts5-booking .ts-public-booking{background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}.ts5-booking .ts-booking-step{gap:9px!important}.ts5-booking .ts-public-booking label{color:#b5c4cb!important;font-size:10px!important;font-weight:700!important}.ts5-booking .ts-public-booking input,.ts5-booking .ts-public-booking select,.ts5-booking .ts-public-booking textarea{min-height:48px!important;padding:10px 12px!important;background:#0f212d!important;color:#fff!important;border:1px solid #2a4452!important;border-radius:7px!important;box-shadow:none!important;font-size:14px!important}.ts5-booking .ts-public-booking input::placeholder,.ts5-booking .ts-public-booking textarea::placeholder{color:#8397a2!important;opacity:1}.ts5-booking .ts-address-field .ts-locate-button{background:#112a37!important;border:1px solid #315364!important;color:#2bdcf0!important;border-radius:7px!important}.ts5-booking :is(.ts-estimate-button,.ts-submit-button){width:100%!important;min-height:52px!important;border:0!important;border-radius:7px!important;background:var(--ts5-grad)!important;color:#06121a!important;font-weight:900!important;font-size:16px!important;box-shadow:none!important}.ts5-booking .ts-form-call{display:none!important}.ts5-booking .ts-public-row{gap:10px!important}.ts5-payment-note{margin-top:10px}.ts5-payment-note>div{display:none;padding:8px 10px;background:#091a24;border:1px solid #213b49;border-radius:7px}.ts5-payment-note>div.is-active{display:flex;flex-direction:column}.ts5-payment-note b{font-size:10px;color:#fff}.ts5-payment-note span{font-size:9px;color:#91a5af;margin-top:2px}.ts5-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.ts5-trust span{font-size:8px;line-height:1.3;color:#9db0ba;text-align:center;padding:7px 4px;border-top:1px solid #1d3440}
.ts5-services{padding:22px 0 18px}.ts5-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:12px}.ts5-section-head h2{margin:0;color:#fff;font-size:27px;line-height:1.08;letter-spacing:-.8px}.ts5-section-head a{color:#49dff3;text-decoration:none;font-size:11px;font-weight:800}.ts5-service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.ts5-service-card{position:relative;min-height:120px;padding:16px 16px 14px;color:#fff;text-decoration:none;background:linear-gradient(180deg,#0c1e29,#081720);border:1px solid #1d3947;border-radius:8px}.ts5-service-card svg{width:33px;height:33px;fill:none;stroke:#29c9ff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ts5-service-card h3{margin:10px 28px 6px 0;color:#fff;font-size:16px}.ts5-service-card p{margin:0;color:#9cb0ba;font-size:11px;line-height:1.42}.ts5-service-card>b{position:absolute;right:12px;bottom:12px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:1px solid #294756;color:#a7ddeb;font-size:16px}
.ts5-region{display:grid;grid-template-columns:.82fr 1.12fr 1.15fr;gap:14px;align-items:stretch;padding:8px 0 20px}.ts5-region-copy{padding:6px 0}.ts5-region-copy h2{margin:0;color:#fff;font-size:31px;line-height:1.03;letter-spacing:-1.1px}.ts5-region-copy p{margin:16px 0;color:#a6b7c0;font-size:13px;line-height:1.6}.ts5-region-copy a{display:inline-flex;padding:11px 15px;border-radius:7px;background:var(--ts5-grad);color:#07131b;text-decoration:none;font-size:12px;font-weight:900}.ts5-region-photo{min-height:245px;border:1px solid #1f3a48;border-radius:8px;background:linear-gradient(0deg,rgba(5,18,27,.2),rgba(5,18,27,.06)),url('https://taxistrasbourg.eu/wp-content/uploads/2026/09/Gare-de-Strasbourg-TaxiStrasbourg.jpg') center/cover no-repeat}.ts5-zones{position:relative;min-height:245px;padding:4px 0 0 0}.ts5-zone-head span{display:block;color:#eef6f9;font-size:14px;font-weight:800;margin-bottom:10px}.ts5-zone-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-width:68%}.ts5-zone-grid span{padding:7px 9px;border:1px solid #1f3b49;border-radius:6px;background:#0b1d28;color:#b9c6cc;font-size:10px}.ts5-zone-grid span:last-child{grid-column:1/-1;text-align:center}.ts5-zone-map{position:absolute;right:0;top:36px;width:29%;height:190px;border-left:1px solid #1b3441;background:radial-gradient(circle at 52% 45%,rgba(32,199,255,.18),transparent 22%)}.ts5-zone-map:before,.ts5-zone-map:after{content:"";position:absolute;border:1px solid rgba(44,197,245,.12);border-radius:45% 55% 43% 57%}.ts5-zone-map:before{inset:20px 28px 24px 22px;transform:rotate(7deg)}.ts5-zone-map:after{inset:42px 48px 44px 43px;transform:rotate(-9deg)}.ts5-zone-map i{position:absolute;left:52%;top:47%;width:12px;height:12px;border-radius:50%;background:#35e3da;box-shadow:0 0 0 8px rgba(53,227,218,.13),0 0 26px rgba(53,227,218,.55)}.ts5-zone-map b{position:absolute;left:57%;top:43%;font-size:12px}.ts5-zone-map small{position:absolute;right:4px;bottom:4px;color:#6e8793;text-transform:uppercase;font-size:8px;letter-spacing:1px}
.ts5-faq{padding:6px 0 18px;border-top:1px solid #17313e}.ts5-faq .ts5-section-head{margin-top:14px}.ts5-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.ts5-faq details{border:1px solid #1d3947;border-radius:6px;background:#091923}.ts5-faq summary{list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;color:#eef5f8;font-size:11px;cursor:pointer}.ts5-faq summary::-webkit-details-marker{display:none}.ts5-faq summary i{font-style:normal;color:#43dbe9}.ts5-faq details p{margin:0;padding:0 12px 12px;color:#95a8b2;font-size:10px;line-height:1.5}.ts5-seo{display:grid;grid-template-columns:.42fr 1.58fr;gap:26px;padding:18px 0;border-top:1px solid #17313e}.ts5-seo h2{margin:0;color:#fff;font-size:23px;line-height:1.12}.ts5-seo>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ts5-seo p{margin:0;color:#8fa4af;font-size:11px;line-height:1.65}.ts5-seo a{color:#56cfe9}.ts5-contact{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;border-top:1px solid #17313e}.ts5-contact h2{margin:0;color:#fff;font-size:20px}.ts5-contact p{margin:5px 0 0;color:#8fa4af;font-size:10px}.ts5-contact-actions{display:flex;gap:10px}.ts5-contact-actions a{min-width:160px;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:7px;text-decoration:none;padding:6px 13px}.ts5-contact-actions b{font-size:13px}.ts5-contact-actions small{font-size:8px;margin-top:3px}.ts5-phone{border:1px solid #22c8ff;color:#fff;background:#0a1c27}.ts5-phone small{color:#75afc2}.ts5-wa{border:1px solid #20d985;color:#fff;background:#0a201a}.ts5-wa small{color:#73bc9c}.ts5-primary{background:var(--ts5-grad);color:#06121a!important;font-weight:900}
@media(max-width:1100px){.ts5-shell{width:min(100% - 36px,1280px)}.ts5-hero-grid{grid-template-columns:1fr 430px;gap:28px}.ts5-benefits{grid-template-columns:repeat(2,1fr)}.ts5-service-grid{grid-template-columns:repeat(3,1fr)}.ts5-region{grid-template-columns:1fr 1fr}.ts5-zones{grid-column:1/-1}.ts5-zone-grid{max-width:72%}}
@media(max-width:820px){body.home .ts3-header-inner{width:calc(100% - 24px);height:70px}.ts5-shell{width:calc(100% - 28px)}.ts5-hero{min-height:auto}.ts5-hero-bg{background-image:linear-gradient(180deg,rgba(3,12,19,.54),rgba(3,12,19,.86) 48%,rgba(3,12,19,.98) 77%),url('https://taxistrasbourg.eu/wp-content/uploads/2026/09/Strasbourg-nuit-TaxiStrasbourg.jpg');background-position:center top}.ts5-hero-grid{grid-template-columns:1fr;min-height:auto;padding:34px 0 24px;gap:24px}.ts5-hero-copy h1{font-size:46px;letter-spacing:-2.4px}.ts5-lead{font-size:16px}.ts5-benefits{grid-template-columns:1fr 1fr}.ts5-booking{padding:18px}.ts5-service-grid{grid-template-columns:1fr 1fr}.ts5-region{grid-template-columns:1fr}.ts5-region-photo{min-height:200px}.ts5-zones{grid-column:auto}.ts5-zone-grid{max-width:66%}.ts5-faq-grid{grid-template-columns:1fr}.ts5-seo{grid-template-columns:1fr}.ts5-seo>div:last-child{grid-template-columns:1fr}.ts5-contact{align-items:flex-start;flex-direction:column}.ts5-contact-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.ts5-primary{grid-column:1/-1}.ts5-service-card{min-height:125px}}
@media(max-width:560px){.ts5-hero-copy h1{font-size:41px}.ts5-kicker{font-size:9px}.ts5-lead{font-size:15px}.ts5-benefits{grid-template-columns:1fr 1fr;gap:12px}.ts5-benefits small{display:none}.ts5-tabs{grid-template-columns:1fr 1fr}.ts5-tabs button:last-child{display:none}.ts5-trust{grid-template-columns:1fr}.ts5-service-grid{grid-template-columns:1fr}.ts5-region-copy h2{font-size:29px}.ts5-zone-grid{max-width:100%;grid-template-columns:1fr 1fr}.ts5-zone-map{display:none}.ts5-contact-actions{grid-template-columns:1fr}.ts5-primary{grid-column:auto}}
