/*
Theme Name: My WP Theme Taxi
Theme URI: https://novidademudanca.com
Author: Novidades & Mudanças, LDA
Description: Premium multilingual airport transfer landing page for EasyWP with booking, map, distance and price calculator.
Version: 2.5
License: GPLv2 or later
Text Domain: my-wp-theme-taxi
*/
:root{--black:#030303;--dark:#0b0b0b;--panel:#111;--gold:#d8a31f;--gold2:#ffcf4d;--white:#fff;--muted:#cfcfcf;--line:rgba(216,163,31,.55)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050505;color:var(--white);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,92%);margin:auto}.top{position:absolute;z-index:10;left:0;right:0;top:0;padding:22px 0}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{width:190px;max-width:38vw}.links{display:flex;gap:30px;align-items:center;font-weight:800;text-transform:uppercase;font-size:14px;letter-spacing:.5px}.links a:first-child,.gold{color:var(--gold2)}.call{border:1px solid var(--gold);border-radius:8px;padding:14px 24px;color:#fff;font-weight:800}.lang{background:#111;color:#fff;border:1px solid var(--gold);border-radius:8px;padding:10px;font-weight:700}.hero{position:relative;min-height:1040px;background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.82) 32%,rgba(0,0,0,.18) 66%,rgba(0,0,0,.58) 100%),url('assets/hero-c5.png') center 70px/contain no-repeat,radial-gradient(circle at 72% 38%,rgba(216,163,31,.28),transparent 35%),#000;padding-top:165px;border-bottom:1px solid var(--gold)}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 38%,rgba(216,163,31,.16),transparent 35%),linear-gradient(180deg,transparent 70%,#050505)}.hero>*{position:relative;z-index:2}.hero-grid{display:grid;grid-template-columns:1fr;gap:38px}.eyebrow{color:var(--gold2);text-transform:uppercase;font-weight:800;letter-spacing:2px;font-size:16px}.title{font-family:Georgia,serif;font-size:64px;line-height:1.07;margin:20px 0}.title span{color:var(--gold2)}.lead{color:#eee;max-width:470px;line-height:1.7}.badges{display:flex;gap:22px;flex-wrap:wrap;margin:30px 0}.badge{display:flex;gap:10px;align-items:center;border-right:1px solid rgba(216,163,31,.35);padding-right:18px}.badge i,.feature i{color:var(--gold2);font-size:30px}.booking{margin-top:30px;border:1px solid var(--gold);background:rgba(5,5,5,.88);backdrop-filter:blur(12px);border-radius:14px;padding:28px;box-shadow:0 0 35px rgba(0,0,0,.45)}.section-title{text-align:center;font-family:Georgia,serif;color:var(--gold2);font-size:28px;margin:0 0 24px;text-transform:uppercase}.formgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.field label{display:block;font-weight:800;margin:0 0 8px;font-size:14px}.field input,.field select,.field textarea{width:100%;background:linear-gradient(#252525,#151515);border:1px solid #444;color:#fff;border-radius:8px;padding:14px;font-size:15px}.field textarea{min-height:90px;resize:vertical}.wide{grid-column:span 2}.full{grid-column:1/-1}.btn{border:0;background:linear-gradient(135deg,#f8cf55,#c89213);color:#070707;border-radius:8px;padding:16px 26px;font-weight:900;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;display:inline-block;text-align:center}.btn.dark{background:#111;color:#fff;border:1px solid var(--gold)}.calc{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:center;border:1px solid rgba(216,163,31,.45);border-radius:12px;padding:16px;margin-top:18px;background:rgba(255,255,255,.04)}.price{font-size:30px;font-weight:900;color:var(--gold2)}.secure{text-align:center;color:#cfcfcf;margin-top:14px;font-size:14px}.features{background:#fff;color:#111;padding:28px 0}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;text-align:center}.feature{padding:16px;border-right:1px solid #ddd}.feature:last-child{border:0}.feature h3{margin:10px 0 6px;font-size:16px}.feature p{margin:0;color:#444;line-height:1.5}.services{background:#fff;color:#111;padding:70px 0}.center{text-align:center}.small-title{color:var(--gold);text-transform:uppercase;font-weight:900;letter-spacing:2px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:28px}.card{border:1px solid var(--gold);border-radius:8px;overflow:hidden;background:#070707;color:#fff;text-align:center}.card img{width:100%;height:170px;object-fit:cover;display:block}.card h3{font-family:Georgia,serif;color:var(--gold2);font-size:22px}.card p{color:#eee;line-height:1.6;padding:0 18px 24px}.fleet{background:#070707;padding:70px 0;border-top:1px solid rgba(216,163,31,.35);border-bottom:1px solid rgba(216,163,31,.35)}.fleet-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.fleet-card{background:#111;border:1px solid var(--line);border-radius:14px;overflow:hidden}.fleet-card img{width:100%;height:300px;object-fit:contain;background:#000}.fleet-card div{padding:22px}.mapsec{background:#0a0a0a;padding:70px 0}.mapgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.mapbox{min-height:420px;border:1px solid var(--gold);border-radius:14px;overflow:hidden;background:#111}.mapbox iframe{width:100%;height:420px;border:0;filter:grayscale(.25) contrast(1.1)}.pay{background:#050505;padding:40px 0;border-top:1px solid #222}.payrow{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.payicons{display:flex;gap:12px;flex-wrap:wrap}.payicons span{background:#fff;color:#111;border-radius:5px;padding:9px 13px;font-weight:900}.footer{background:#000;padding:42px 0 20px;border-top:1px solid var(--gold)}.footgrid{display:grid;grid-template-columns:1fr .8fr 1.4fr;gap:30px}.footer .logo{width:230px}.msg{padding:14px;border:1px solid var(--gold);background:rgba(216,163,31,.12);border-radius:8px;margin-bottom:18px}.mobile-menu{display:none}@media(max-width:850px){.top{position:relative;background:#000;padding:15px 0}.nav{align-items:flex-start}.links{display:none}.call{display:none}.logo{width:145px}.hero{min-height:auto;padding:28px 0 45px;background:linear-gradient(180deg,rgba(0,0,0,.35),#000 45%),url('assets/hero-c5.png') center 20px/105% auto no-repeat,#000}.hero-grid{padding-top:285px}.title{font-size:40px}.badges{gap:14px}.booking{padding:18px}.formgrid,.features-grid,.cards,.fleet-grid,.mapgrid{grid-template-columns:1fr}.wide{grid-column:1}.feature{border-right:0;border-bottom:1px solid #ddd}.card img{height:210px}.calc{grid-template-columns:1fr}.footgrid{grid-template-columns:1fr}.fleet-card img{height:auto}.lang{margin-left:auto}.payrow{display:block}.payicons{margin-top:15px}.section-title{font-size:22px}}

@media(max-width:520px){.wrap{width:min(94%,480px)}.hero-grid{padding-top:230px}.title{font-size:35px}.lead{font-size:15px}.booking{margin-top:12px;border-radius:12px}.field input,.field select,.field textarea{font-size:16px}.section-title{font-size:20px}.badges{display:grid;grid-template-columns:1fr}.badge{border-right:0;border-bottom:1px solid rgba(216,163,31,.25);padding-bottom:10px}.cards{gap:16px}.payicons span{font-size:12px}.footer .logo{width:170px}}


/* PWA install app button */
.pwa-cta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0 8px}.pwa-cta .btn{display:inline-flex}.pwa-hint{font-size:13px;color:#d8d8d8;opacity:.88}@media(max-width:700px){.pwa-cta{justify-content:center}.pwa-hint{text-align:center;width:100%}}


/* Integrated downloadable booking app section */
.appsec{background:linear-gradient(135deg,#050505,#101010);padding:70px 0;border-top:1px solid rgba(216,163,31,.45);border-bottom:1px solid rgba(216,163,31,.45)}
.appgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:34px;align-items:center}.appcopy h2{font-family:Georgia,serif;font-size:42px;margin:12px 0;color:#ffcf4d}.phonepreview{max-width:320px;margin:auto;background:linear-gradient(180deg,#111,#000);border:2px solid #d8a31f;border-radius:34px;padding:28px;text-align:center;box-shadow:0 0 45px rgba(216,163,31,.22)}.phonebar{width:80px;height:7px;border-radius:99px;background:#333;margin:0 auto 24px}.phonepreview img{width:150px;max-width:80%;margin:10px auto 18px}.phonepreview h3{font-size:26px;margin:8px 0;color:#ffcf4d}.phonepreview p{color:#ddd;margin-bottom:22px}@media(max-width:850px){.appgrid{grid-template-columns:1fr}.appcopy{text-align:center}.appcopy .lead{margin-left:auto;margin-right:auto}.appcopy h2{font-size:32px}.phonepreview{max-width:290px}}

.contactbox{border:1px solid rgba(216,163,31,.55);border-radius:14px;padding:22px;background:rgba(255,255,255,.04)}.contactform{display:grid;gap:12px}.contactform .field input,.contactform .field textarea{background:#111;border:1px solid #444;color:#fff;border-radius:8px;padding:13px;width:100%;font-size:15px}.contactform .field textarea{min-height:110px}.contactform .btn{width:100%;margin-top:4px}

/* Extra responsive polish for smartphone, tablet and desktop */
html,body{max-width:100%;overflow-x:hidden}img,iframe{max-width:100%}button,input,select,textarea{max-width:100%}.btn{white-space:normal;line-height:1.25}.top{width:100%}.booking,.contactbox,.phonepreview,.fleet-card,.card{max-width:100%}
@media (max-width:1100px){
  .wrap{width:min(94%,980px)}
  .links{gap:16px;font-size:12px}.call{padding:12px 14px;font-size:13px}.logo{width:160px}
  .hero{min-height:auto;padding-top:140px;background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.82) 38%,rgba(0,0,0,.28) 70%,rgba(0,0,0,.75) 100%),url('assets/hero-c5.png') center 90px/85% auto no-repeat,#000}
  .title{font-size:54px}.formgrid{grid-template-columns:repeat(2,1fr)}.cards,.features-grid{grid-template-columns:repeat(2,1fr)}.mapgrid,.fleet-grid,.appgrid{grid-template-columns:1fr}
}
@media (max-width:768px){
  .top{position:relative;background:#000;border-bottom:1px solid rgba(216,163,31,.35);padding:10px 0}.nav{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}.logo{width:128px;max-width:100%}.lang{justify-self:end;padding:9px}.call{display:flex;grid-column:1/-1;justify-content:center;width:100%;padding:12px 10px;border-radius:10px}.links{display:none}
  .hero{padding:0 0 34px;min-height:auto;background:linear-gradient(180deg,rgba(0,0,0,.10) 0%,rgba(0,0,0,.30) 32%,#000 68%),url('assets/hero-c5.png') center top/118% auto no-repeat,#000}.hero-grid{padding-top:58vw;gap:18px}.eyebrow{text-align:center;font-size:13px}.title{text-align:center;font-size:clamp(30px,9vw,42px);line-height:1.08;margin:12px 0}.lead{text-align:center;margin-left:auto;margin-right:auto;line-height:1.55}.pwa-cta{justify-content:center}.badges{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.badge{display:block;text-align:center;border:1px solid rgba(216,163,31,.28);padding:10px 6px;border-radius:10px}.badge i{display:block;margin-bottom:4px;font-size:22px}.badge b{font-size:12px;line-height:1.2}
  .booking{padding:16px;margin-top:10px;border-radius:14px}.formgrid{grid-template-columns:1fr;gap:12px}.wide,.full{grid-column:1}.field label{font-size:13px}.field input,.field select,.field textarea{min-height:48px;font-size:16px;padding:13px}.calc{grid-template-columns:1fr;text-align:center;padding:14px}.price{font-size:28px}.section-title{font-size:21px;line-height:1.25}.features,.services,.fleet,.mapsec,.appsec{padding:38px 0}.features-grid,.cards,.fleet-grid,.mapgrid{grid-template-columns:1fr}.feature{border-right:0;border-bottom:1px solid #ddd}.card img{height:220px}.fleet-card img{height:230px;object-fit:contain}.mapbox,.mapbox iframe{height:320px;min-height:320px}.appcopy h2{font-size:30px;text-align:center}.phonepreview{max-width:280px;border-radius:28px;padding:22px}.payrow{text-align:center}.payicons{justify-content:center}.footgrid{grid-template-columns:1fr;text-align:center}.footer .logo{width:180px}.contactform .btn{min-height:50px}
}
@media (max-width:420px){
  .wrap{width:94%}.hero{background-size:130% auto}.hero-grid{padding-top:63vw}.title{font-size:30px}.lead{font-size:14px}.badges{grid-template-columns:1fr}.badge{display:flex;text-align:left;align-items:center;gap:10px}.badge i{margin:0}.booking{padding:13px}.section-title{font-size:19px}.btn{width:100%;padding:14px 16px}.pwa-cta .btn{width:100%;justify-content:center}.card img{height:190px}.fleet-card img{height:200px}.mapbox,.mapbox iframe{height:280px;min-height:280px}.payicons span{flex:1 1 42%;text-align:center}.phonepreview{max-width:255px}.phonepreview h3{font-size:22px}
}
