/* A readable wordmark accompanies the existing logo in both themes. */
.nav .brand{gap:10px}.brand-name{display:inline-block;color:var(--ink);font-size:20px;font-weight:650;letter-spacing:-.7px;white-space:nowrap;line-height:1.2}.footer-inner .brand{gap:9px}.footer-inner .brand-name{font-size:17px;letter-spacing:-.4px}.privacy-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none}.privacy-logo .brand-name{font-size:21px}.privacy-logo img{flex-shrink:0}
@media(min-width:1101px) and (max-width:1300px){header>.nav{gap:10px}header .navlinks{gap:10px}header .navlinks>a>.icon{display:none}.nav .brand{gap:7px}.nav .brand-logo{width:59px;height:36px}.nav .brand-name{font-size:17px}}
/* Expand the floating dropdown to tablet widths to leave room for the name. */
@media(max-width:1100px){header{top:max(12px,env(safe-area-inset-top));width:calc(100% - 24px);border-radius:18px}header>.nav{height:64px;width:calc(100% - 24px);gap:10px}.nav>.menu{display:block}.nav>.theme-toggle{margin-inline-start:auto}.nav>.language-toggle{margin-inline-start:0}.nav>.navlinks{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;margin:0;padding:12px 16px;flex-direction:column;align-items:stretch;gap:0;border:1px solid var(--line);border-radius:18px;background:linear-gradient(110deg,#fff,#f7faf9);box-shadow:0 12px 30px #003d3b24;max-height:calc(100dvh - 112px - env(safe-area-inset-top));overflow-y:auto}.nav>.navlinks.open{display:flex}.navlinks a{min-height:44px;padding:12px}.navlinks .navcta{margin-top:6px;padding:12px}.nav .brand-logo{width:62px;height:36px}.nav .brand-name{font-size:18px}html[data-theme=dark] .nav>.navlinks{background:linear-gradient(110deg,#10282b,#142f32);border-color:#3b575d}}
@media(max-width:480px){header>.nav{gap:7px}.nav .brand{gap:6px}.nav .brand-logo{width:48px;height:32px}.nav .brand-name{font-size:16px;letter-spacing:-.5px}.nav>.menu{display:grid;place-items:center;width:34px;height:34px;padding:7px;font-size:0}.nav>.menu>.icon{width:18px;height:18px;margin:0}.privacy-nav{flex-wrap:wrap;gap:12px}.privacy-logo img{width:54px;height:34px}.privacy-logo .brand-name{font-size:18px}.privacy-actions{width:100%;justify-content:space-between}}
@media(max-width:350px){.nav .brand-logo{width:42px;height:30px}.nav .brand-name{font-size:14px;letter-spacing:-.45px}.nav .brand{gap:5px}.footer-inner .brand-name{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Stacked wordmark keeps the service line directly below the company name. */
.brand-wordmark{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;direction:ltr;white-space:nowrap}.brand-tagline{display:block;font:500 10px/1.2 Arial,Helvetica,sans-serif;letter-spacing:1.1px;color:var(--muted)}.footer-inner .brand-tagline{font-size:9px;letter-spacing:1px}.privacy-logo .brand-tagline{font-size:10px}
@media(max-width:480px){.nav .brand-tagline{font-size:8px;letter-spacing:.8px}.brand-wordmark{gap:2px}}

/* Keep the floating navigation aligned with the white logo in either theme. */
html header{--ink:#003d3b;--muted:#526b67;--line:#d8e5e1;--blue:#1f70d4;background:linear-gradient(110deg,#fff 0%,#f7faf9 100%);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] header{background:linear-gradient(110deg,#fff 0%,#f7faf9 100%);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] header .theme-toggle,html[data-theme=dark] header .language-toggle,html[data-theme=dark] header .menu{color:var(--ink);border-color:#cadbd5}
html[data-theme=dark] header .navlinks a:hover{color:var(--blue)}
@media(max-width:1100px){html header .nav>.navlinks,html[data-theme=dark] header .nav>.navlinks{background:linear-gradient(110deg,#fff 0%,#f7faf9 100%);border-color:var(--line)}}

/* Keep phones and tablets full width; box the canvas on desktop only. */
body{width:100%;max-width:none;margin:0}
@media(min-width:901px){
 .hero-art{inset-inline-end:max(32px,calc((100% - 1120px)/2))}
 [dir=rtl] .hero-art{left:max(32px,calc((100% - 1120px)/2));right:auto}
}
@media(min-width:1367px) and (hover:hover) and (pointer:fine){
 html{background:#e3ebe8}
 html[data-theme=dark]{background:#041214}
 body{width:calc(100% - 48px);max-width:1280px;margin:24px auto;border-radius:24px;box-shadow:0 12px 60px #003d3b18}
 footer,.privacy-footer{border-radius:0 0 24px 24px}
 .privacy-header{border-radius:24px 24px 0 0}
 html header{top:max(40px,env(safe-area-inset-top));width:min(1200px,calc(100% - 80px))}
 main>.hero.wrap,main>.contact,main>.contact-form-section{width:calc(100% - 48px);max-width:1200px;margin-inline:auto;border-radius:24px}
 main>.hero.wrap{overflow:hidden}
 main>.contact{margin-bottom:32px}
 main>.contact-form-section{padding:40px 0;margin-bottom:32px;border:1px solid var(--line)}
}

/* Give phone and tablet content more room with modest side gutters. */
@media(max-width:1366px),(hover:none),(pointer:coarse){
 main .wrap:not(.hero),.hero-top,.hero-bottom,footer>.wrap,.privacy-wrap{width:calc(100% - 32px);max-width:none}
 #service.wrap{width:100%;max-width:none;margin-inline:0;border-radius:0;padding-inline:20px}
 .contact-form-layout{gap:32px}
}
@media(max-width:600px){
 main .wrap:not(.hero),.hero-top,.hero-bottom,footer>.wrap,.privacy-wrap{width:calc(100% - 24px)}
 #service.wrap{width:100%;padding-inline:12px}
 .expertise{padding-inline:16px}
}

/* Social links sit directly beneath the logo, outside its home link. */
.brand-block{display:flex;flex-direction:column;align-items:flex-start;gap:3px;flex-shrink:0}
.brand-socials{display:flex;align-items:center;gap:4px;direction:ltr}
.brand-socials a{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;color:var(--ink);padding:3px}
.brand-socials svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.brand-socials a:hover{background:#2879e818;color:var(--blue)}
header>.nav{height:96px}
html[data-page=home] main{padding-top:128px}
@media(max-width:1100px){header>.nav{height:92px}html[data-page=home] main{padding-top:116px}}
html{scroll-padding-top:140px}

/* Compact social row beneath the navigation logo. */
header .brand-block{gap:0}
header .brand-socials{gap:0}
header .brand-socials a{width:24px;height:24px;padding:5px;border-radius:4px}
header .brand-socials svg{width:14px;height:14px}

/* AI services: readable copy beside an original generated illustration. */
.ai-services{padding:56px 0 24px}
.ai-services-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px}
.ai-services-copy{min-width:0}
.ai-services-copy h2{font-size:clamp(30px,3vw,42px);margin:16px 0 22px;max-width:540px}
.ai-services-copy p{font-size:14px;line-height:1.85;margin:0}
.ai-services-image{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:24px}
@media(max-width:900px){.ai-services-layout{gap:28px}.ai-services-copy h2{font-size:32px}}
@media(max-width:600px){.ai-services{padding:38px 0 16px}.ai-services-layout{grid-template-columns:1fr;gap:24px}.ai-services-copy h2{font-size:31px}.ai-services-image{border-radius:20px}}

.inquiry-privacy{grid-column:1/-1;margin:0;font-size:12px;line-height:1.8;color:var(--muted)}
.inquiry-privacy a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}

/* Compact Smart Taxi Booking overview and feature cards. */
.smart-taxi-section{padding:32px 0 20px;background:linear-gradient(115deg,#fff,#e7f3f3);border:1px solid var(--line);border-radius:24px}
.smart-taxi-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:28px;align-items:center;margin-bottom:18px}
.smart-taxi-intro{min-width:0}
.smart-taxi-intro h2{font-size:clamp(27px,2.5vw,34px);margin:12px 0 14px;letter-spacing:-1px}
.smart-taxi-intro>p{font-size:14px;line-height:1.7;margin:0}
.smart-taxi-image{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:18px}
.taxi-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.taxi-feature{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px 12px;align-content:start;padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(135deg,#fff,#edf6f5)}
.taxi-feature-icon{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#2879e813;color:var(--blue)}
.taxi-feature-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.taxi-feature h3{align-self:center;font-size:17px;line-height:1.3;margin:0}
.taxi-feature p{grid-column:1/-1;font-size:12px;line-height:1.65;margin:0}
html[data-theme=dark] .taxi-feature{background:linear-gradient(135deg,#15373a,#193f43)}
@media(max-width:900px){.smart-taxi-overview{grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:22px}.taxi-feature{padding:14px}}
@media(max-width:600px){
 .smart-taxi-section{padding:28px 0 18px}
 .smart-taxi-overview{grid-template-columns:1fr;gap:18px}
 .smart-taxi-image{width:min(100%,240px);justify-self:center;border-radius:16px}
 .smart-taxi-intro h2{font-size:28px}
 .taxi-features{grid-template-columns:1fr;gap:10px}
 .taxi-feature{padding:14px;gap:5px 12px}
 .taxi-feature-icon{grid-row:1/3}
 .taxi-feature p{grid-column:2}
}

.taxi-request{margin-top:20px;gap:10px;max-width:100%;font-size:12px;padding:11px 17px;line-height:1.5}
.taxi-request span{min-width:0}

html[data-theme=dark] .smart-taxi-section{background:linear-gradient(115deg,#15373a,#193f43)}

/* Center the taxi product inside its own bordered box. */
.smart-taxi-section{width:min(1200px,calc(100% - 48px));margin:32px auto}
.smart-taxi-section>.wrap{width:calc(100% - 48px);max-width:none}
@media(max-width:1366px),(hover:none),(pointer:coarse){.smart-taxi-section{width:calc(100% - 24px)}.smart-taxi-section>.wrap{width:calc(100% - 32px)}}
@media(max-width:600px){.smart-taxi-section{margin-block:24px}.smart-taxi-section>.wrap{width:calc(100% - 24px)}}

/* Accessible full-image preview for Smart Taxi Booking. */
.taxi-image-trigger{display:block;width:100%;border-radius:18px;cursor:zoom-in;justify-self:center}
#taxi-image-dialog{width:min(900px,calc(100% - 32px));max-height:90dvh;padding:18px;border:1px solid var(--line);border-radius:22px;background:var(--paper);color:var(--ink);overflow:auto;box-shadow:0 24px 90px #0005}
#taxi-image-dialog::backdrop{background:#001e27b8;backdrop-filter:blur(5px)}
.taxi-image-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.taxi-image-header h2{font-size:20px;letter-spacing:-.4px;line-height:1.3;margin:0}
.taxi-image-close{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;padding:9px;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:50%}
.taxi-image-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.taxi-popup-image{display:block;width:100%;height:auto;max-height:calc(90dvh - 108px);object-fit:contain;border-radius:12px}
@media(max-width:600px){.taxi-image-trigger{width:min(100%,240px)}#taxi-image-dialog{padding:12px;border-radius:18px}.taxi-image-header h2{font-size:16px}}

.taxi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px}
.taxi-actions .btn{margin-top:0;gap:10px;max-width:100%;font-size:12px;padding:11px 17px;line-height:1.5}
.taxi-guide{background:transparent;color:var(--blue);border-color:var(--blue)}
.taxi-guide:hover{color:#fff}
.taxi-guide span{min-width:0}

.footer-business{display:inline-flex;align-items:center;gap:6px}
.footer-business svg{flex-shrink:0;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.footer-business span{min-width:0}

/* Panoramic illustrated map links to the real Google business profile. */
.footer-map{display:block;position:relative;width:calc(100% - 48px);max-width:1200px;margin:0 auto 28px;min-height:210px;border:1px solid #cfe3e4;border-radius:22px;overflow:hidden;background:#e7f3f3;color:#073d3c!important;text-decoration:none}
.footer-map>img{display:block;width:100%;height:240px;object-fit:cover;object-position:center}
.footer-map-copy{position:absolute;inset-block:0;inset-inline-start:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:12px;padding:28px 36px;background:linear-gradient(90deg,#f5fcf9f5,#f5fcf9df 65%,#f5fcf900);width:55%}
.footer-map-copy>strong{font-size:26px;line-height:1.3;letter-spacing:-.6px}
.footer-map-action{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:24px;background:#fff;box-shadow:0 3px 12px #003d3b12;font-size:13px;color:#1764bd}
.footer-map-action svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;flex-shrink:0}
.footer-map-copy small{font-size:10px;color:#526b67;line-height:1.5}
.footer-map:hover .footer-map-action{background:#1f70d4;color:#fff}
[dir=rtl] .footer-map-copy{background:linear-gradient(270deg,#f5fcf9f5,#f5fcf9df 65%,#f5fcf900)}
@media(max-width:900px){.footer-map{width:calc(100% - 24px)}.footer-map-copy{width:70%;padding:22px}.footer-map-copy>strong{font-size:23px}}
@media(max-width:600px){.footer-map{min-height:190px;border-radius:18px}.footer-map>img{height:210px}.footer-map-copy{width:100%;padding:20px;background:linear-gradient(90deg,#f5fcf9ed,#f5fcf999)}[dir=rtl] .footer-map-copy{background:linear-gradient(270deg,#f5fcf9ed,#f5fcf999)}.footer-map-action{font-size:12px}}

.smart-taxi-intro>p+p{margin-top:12px}

.taxi-setup-guide{display:block;width:100%;height:auto;margin-top:24px;border-radius:18px;border:1px solid var(--line)}
