:root{--ink:#11151d;--bg:#fffdf8;--gold:#ffbe18;--orange:#ff7418;--muted:#6d7280;--line:#e8e8e8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.7 system-ui,-apple-system,'Segoe UI',Tahoma,Arial,sans-serif;background:var(--bg);color:var(--ink)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #fa871e;outline-offset:3px}.container{width:min(1180px,calc(100% - 36px));margin:auto}.skip{position:absolute;top:-100px;background:#fff;z-index:99}.skip:focus{top:0}.top{position:sticky;top:0;background:#11151deF;color:#fff;z-index:50;backdrop-filter:blur(15px)}.nav{min-height:78px;display:flex;align-items:center;gap:32px}.logo{font-size:29px;font-weight:1000;letter-spacing:-1.8px;white-space:nowrap;display:inline-flex;align-items:center;gap:2px;line-height:1}.logo b{color:var(--gold)}.logo-dot{background:var(--orange);width:7px;height:7px;border-radius:50%;align-self:flex-start}.nav nav{display:flex;align-items:center;gap:24px;margin-inline-start:auto;font-weight:650;font-size:14px}.nav nav a:hover,.languages a:hover{color:var(--gold)}.nav-cta{background:var(--gold);padding:9px 18px;border-radius:9px;color:#111!important}.languages{display:flex;gap:8px;font-size:12px;font-weight:800}.languages a{opacity:.65}.languages a[aria-current]{opacity:1;color:var(--gold)}.menu-toggle{display:none;background:transparent;color:#fff;border:1px solid #777;border-radius:8px;padding:4px 12px}.hero{background:radial-gradient(circle at 72% 38%,#3d2922 0,transparent 38%),linear-gradient(125deg,#11151d,#20222a);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:580px;gap:40px;padding-block:72px}.eyebrow{font-size:12px;font-weight:900;letter-spacing:2px;color:#e68b13}.hero h1{font-size:clamp(37px,5vw,70px);line-height:1.16;letter-spacing:-1px;margin:19px 0}.hero p,.inner-hero p{font-size:18px;color:#c4c7cf;max-width:600px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:11px;padding:13px 23px;font-weight:850;min-height:48px}.primary{background:linear-gradient(120deg,var(--gold),var(--orange));color:#171717}.outline{border:1px solid #8e919b;color:inherit}.stats{display:flex;flex-wrap:wrap;gap:14px;margin-top:35px;font-size:11px;letter-spacing:1px;color:#b9bbc2}.hero-art{min-height:410px;position:relative;display:grid;place-items:center}.orb{position:absolute;width:390px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffc631,#f07714 60%,#9e2b16);filter:drop-shadow(0 20px 70px #e2791240);animation:bob 6s ease-in-out infinite}.road{position:absolute;bottom:42px;width:100%;height:65px;border-radius:50%;background:#0a0c11;transform:rotate(-7deg)}.van{position:relative;width:100%;filter:drop-shadow(0 18px 18px #0008);animation:van 5s ease-in-out infinite}.float-tag{position:absolute;top:38px;right:0;background:#fff;color:#12151c;border-radius:12px;padding:10px 15px;font-weight:900;font-size:12px;box-shadow:0 14px 28px #0004;animation:bob 5s ease-in-out infinite}.float-tag.second{top:auto;bottom:30px;right:auto;left:0;animation-delay:1s}@keyframes bob{50%{transform:translateY(-12px)}}@keyframes van{50%{transform:translateY(-8px) rotate(-1deg)}}.section{padding-block:72px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:22px}.section-head h2{font-size:clamp(30px,4vw,46px);margin:6px 0}.section-head>a{font-weight:800;color:#d85e00}.searchbar{display:flex;background:#fff;border:1px solid #ddd;border-radius:14px;overflow:hidden;margin:0 0 18px;box-shadow:0 8px 24px #00000008}.searchbar input{border:0;outline:0;padding:15px 18px;flex:1;min-width:0;background:transparent}.searchbar button{border:0;background:var(--gold);padding:0 25px;font-size:30px}.chips{display:flex;gap:8px;overflow:auto;padding-bottom:15px}.chip{border:1px solid #ddd;background:#fff;border-radius:999px;padding:7px 17px;white-space:nowrap;font-size:13px;font-weight:750}.chip.selected,.chip:hover{background:#151923;color:white;border-color:#151923}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{background:#fff;border:1px solid #e9e8e5;border-radius:18px;padding:25px;min-height:260px;display:flex;flex-direction:column;box-shadow:0 12px 30px #16191d06;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px #15191d18}.card-icon{background:#fff1cf;border-radius:12px;width:48px;height:48px;display:grid;place-items:center;font-size:25px;color:#c7630c}.card-category{font-size:12px;color:#c2610d;font-weight:850;margin-top:15px}.service-card h3{font-size:19px;line-height:1.4;margin:10px 0}.service-card p{font-size:13px;color:var(--muted);margin:0 0 20px}.card-more{font-size:13px;font-weight:850;color:#cb5900;margin-top:auto}.inner-hero{background:linear-gradient(130deg,#141923,#2b2626);color:white;padding:75px 0}.inner-hero h1{font-size:clamp(30px,5vw,57px);line-height:1.25;max-width:950px;margin:16px 0}.detail-grid{display:grid;grid-template-columns:1fr 420px;gap:45px}.detail-copy{font-size:18px}.detail-copy h2{font-size:30px}.info{border-inline-start:4px solid var(--orange);background:#fff3dc;padding:15px;margin:25px 0;font-size:15px}.booking{background:#fff;border:1px solid #eee;border-radius:22px;padding:25px;box-shadow:0 18px 60px #00000012;align-self:start}.booking h2{margin:0 0 18px}.booking label{display:block;font-size:13px;font-weight:800;margin-bottom:12px}.booking input{width:100%;padding:12px;border:1px solid #d7d9df;border-radius:9px;background:#fff;margin-top:5px;min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.booking .btn{width:100%}.faq-list{max-width:950px}.faq-list details{background:white;border:1px solid #e7e7e7;border-radius:12px;padding:16px 20px;margin-bottom:10px}.faq-list summary{font-weight:850;cursor:pointer}.faq-list p{color:#515763}.faq-list p a{color:#c55300;font-weight:850}.pagination{display:flex;flex-wrap:wrap;gap:7px;margin-top:30px}.pagination a{border:1px solid #ddd;border-radius:7px;padding:6px 12px}.pagination a[aria-current]{background:#11151d;color:#fff}.footer{background:#10131a;color:#fff;padding-top:60px}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.foot-grid p{color:#aeb2bb;max-width:450px}.foot-grid h3{color:var(--gold);font-size:14px}.foot-grid a:not(.logo){display:block;color:#c3c7ce;margin:10px 0}.copyright{border-top:1px solid #34363d;padding:22px 0;margin-top:55px;color:#aeb2bb;font-size:12px}.floating{position:fixed;bottom:22px;right:20px;display:flex;flex-direction:column;gap:10px;z-index:40}.floating a{box-shadow:0 8px 22px #0003;border-radius:50px;display:flex;align-items:center;justify-content:center;font-weight:900;min-height:51px;min-width:51px}.float-wa{background:#19aa62;color:white;gap:8px;padding:0 18px}.float-call{background:#ffbd1d;color:#111;font-size:23px}@media(max-width:900px){.hero-grid{grid-template-columns:1fr;min-height:auto}.hero-art{min-height:330px;max-width:520px;width:100%;margin:auto}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}.nav{gap:15px}.nav nav{gap:12px}.orb{width:300px}}@media(max-width:680px){.nav{min-height:68px;flex-wrap:wrap;justify-content:space-between}.logo{font-size:25px}.menu-toggle{display:block;order:3}.nav nav{display:none;order:4;width:100%;padding:15px 0 22px;flex-direction:column;align-items:stretch;gap:16px}.nav nav.open{display:flex}.nav .languages{margin-inline-start:auto}.hero-grid{padding-block:45px;gap:8px}.hero h1{font-size:39px}.hero-art{min-height:265px}.orb{width:235px}.float-tag{font-size:10px}.section{padding-block:48px}.cards{grid-template-columns:1fr}.service-card{min-height:215px}.foot-grid{grid-template-columns:1fr;gap:15px}.inner-hero{padding:45px 0}.form-grid{grid-template-columns:1fr 1fr}.float-wa span{display:none}.float-wa{padding:0;font-size:22px}.floating{bottom:14px;right:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* V2: responsive image galleries */
.card-photo{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;margin-bottom:14px;background:#182438}
.detail-photo{width:100%;max-height:440px;aspect-ratio:16/9;object-fit:cover;border-radius:20px;margin-bottom:22px;background:#19243a}
@media(max-width:640px){.card-photo{aspect-ratio:16/10}.detail-photo{border-radius:12px}}

/* VIGA GO 2.0: warm orange, red and graphite identity */
:root{--gold:#f46b35;--orange:#e84b30;--bg:#faf9f7}
.nav-cta,.searchbar button,.float-call{background:#f46b35!important;color:#fff!important}
.logo b,.foot-grid h3,.languages a[aria-current]{color:#f46b35}
.hero{background:radial-gradient(circle at 72% 38%,#414b55 0,transparent 43%),linear-gradient(120deg,#202a35,#353c43)}
.orb{background:radial-gradient(circle at 35% 30%,#e8a08d,#d65a43 65%,#a13936)}
.road{background:#323b45}
.primary{background:linear-gradient(120deg,#f46b35,#d93d37);color:white}
.card-icon{background:#fff0ea;color:#dc4a32}
.card-photo{transition:transform .7s cubic-bezier(.2,.7,.2,1);transform-origin:center}
.service-card{overflow:hidden;contain:layout paint}
.service-card:hover .card-photo{transform:translateX(8px) scale(1.045)}
.wheel{transform-box:fill-box;transform-origin:center;animation:spin-wheel 1s linear infinite}
@keyframes spin-wheel{to{transform:rotate(360deg)}}
.footer .logo span,.footer .logo b{animation:logo-spacing 4s ease-in-out infinite;display:inline-block}
@keyframes logo-spacing{50%{letter-spacing:3px}}
.copyright{text-align:center}.footer-brand{font-size:15px;color:#f46b35;margin-inline-start:7px}
.social-links{display:flex;flex-wrap:wrap;gap:10px}.social-links a{margin:0!important}
.social-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid #636c75;border-radius:50%;color:#f46b35;font-size:22px;font-weight:900}
.article-layout{grid-template-columns:minmax(0,850px);justify-content:center}.article-layout .detail-copy{max-width:850px}
.rich-copy{line-height:1.95;max-width:900px}.rich-copy p{margin:0 0 1.4em}
@media(prefers-reduced-motion:reduce){.wheel,.footer .logo span,.footer .logo b{animation:none!important}}

/* Gallery and performance-aware effects */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:18px 0 30px}
.gallery-grid a{display:block;overflow:hidden;border-radius:14px;background:#e5e7eb;aspect-ratio:3/2}
.gallery-grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.gallery-grid a:hover img{transform:scale(1.04)}
.social-icon svg{width:21px;height:21px;fill:currentColor;stroke:currentColor}
.service-card{content-visibility:auto;contain-intrinsic-size:auto 390px}
@media(prefers-reduced-motion:reduce){.gallery-grid img,.service-card .card-photo{transition:none!important}}

/* VIGA GO search, booking and editorial additions */
.global-search{display:flex;align-items:center;max-width:290px;flex:1;min-width:140px;border:1px solid #454a52;border-radius:10px;overflow:hidden;background:#fff}.global-search input{border:0;background:transparent;color:#171923;min-width:0;flex:1;padding:9px;font-size:12px;outline-offset:-3px}.global-search button{background:#f56835;border:0;color:#fff;padding:9px 13px;cursor:pointer}.home-booking-panel{background:#fff;border:1px solid #e7e7e7;border-radius:22px;padding:clamp(20px,3vw,42px);box-shadow:0 14px 50px #0000000a}.home-booking-panel .booking-form{max-width:100%;display:block}.home-booking-panel .form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.home-booking-panel label{display:block;font-weight:600}.home-booking-panel input{width:100%;min-width:0;border:1px solid #d9dce0;border-radius:9px;padding:11px;background:#fff}.about-long{max-width:1050px}.about-sections{display:grid;gap:25px;margin-bottom:28px}.about-sections section{padding:24px 28px;border:1px solid #e8e8e8;border-radius:15px;background:#fff}.about-sections h2{margin:0 0 12px;font-size:clamp(20px,2.4vw,28px)}.about-sections p{line-height:2.05;margin:0}.global-search input:focus-visible,.home-booking-panel input:focus-visible{outline:2px solid #f56835}@media(max-width:900px){.global-search{order:5;max-width:100%;flex-basis:100%}.home-booking-panel .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.home-booking-panel .form-grid{grid-template-columns:1fr}}

/* Update 6: correct Latin brand direction and customer-support layout */
.logo{direction:ltr!important;unicode-bidi:isolate;display:inline-flex;flex-direction:row;align-items:baseline;white-space:nowrap;gap:0!important}.logo span,.logo b{direction:ltr;unicode-bidi:isolate}.contact-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.support-box{border:1px solid #e5e7eb;border-radius:20px;padding:28px;background:#fff}.support-box details{padding:14px 0;border-bottom:1px solid #eee}.airport-reception{background:#fff7f4;border-radius:18px;padding:28px!important;margin-bottom:30px}@media(max-width:800px){.contact-layout{grid-template-columns:1fr}.logo{flex-shrink:0}}

/* Update 7: tighter hero, contact form, readable articles */
.hero h1{font-size:clamp(32px,3.9vw,57px)!important;line-height:1.23!important;max-width:710px;text-wrap:balance}
.hero-grid{align-items:center}.hero-art{min-height:350px}.hero-art .van{width:min(100%,560px);position:relative;z-index:2;display:block}
.support-form{display:grid;gap:14px}.support-form label{display:grid;gap:6px;font-weight:700}.support-form input,.support-form textarea,.support-form select{border:1px solid #d6dce2;border-radius:10px;padding:12px;width:100%;font:inherit;background:white}.support-form button{border:0}.form-note{font-size:13px;color:#666}.contact-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form-box{grid-row:span 2}.article-body{line-height:2;max-width:76ch}.detail-copy p{line-height:2}
@media(max-width:800px){.contact-layout{grid-template-columns:1fr}.hero h1{font-size:clamp(30px,7vw,42px)!important}.hero-art{min-height:280px}}

/* Update 8: vehicle and destination media. Keep motion inside the SVG, respect reduced motion. */
.hero-art .van{object-fit:contain;max-height:390px;filter:drop-shadow(0 16px 20px #0007)}
.service-card .card-photo{background:#1a2b40;object-fit:contain;overflow:hidden}
.route-destination{margin:24px 0 30px}.route-destination img{display:block;width:100%;height:auto;border-radius:14px}.route-destination figcaption{font-size:12px;color:#66717d;padding-top:8px}
.detail-photo{background:#1a2b40;object-fit:contain}
@media(max-width:680px){.hero-art .van{max-height:245px}}

.article-section{margin:30px 0}.article-section h3{font-size:clamp(20px,2vw,26px);line-height:1.4;margin-bottom:12px}.rich-copy p{line-height:2;max-width:78ch}.article-layout .detail-copy{max-width:880px}.article-layout .detail-photo{max-height:440px;object-fit:contain}

/* VIGA GO — stable motion patch. One authoritative animation definition. */
.hero-art .van{width:100%;height:auto;max-height:none;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 14px 18px #0005);transform-origin:center center;animation:viga-hero-drive 4.6s ease-in-out infinite!important;will-change:transform}
@keyframes viga-hero-drive{0%,100%{transform:translate3d(-10px,0,0)}50%{transform:translate3d(13px,-3px,0)}}
.hero-art .road{animation:viga-road-shift 4.6s ease-in-out infinite!important}
@keyframes viga-road-shift{0%,100%{opacity:.72;transform:rotate(-7deg) scaleX(1)}50%{opacity:.54;transform:rotate(-7deg) scaleX(.96)}}
.hero-art .orb,.hero-art .float-tag{animation:none!important}
/* Keep service vehicle wheels inside the source artwork. */
.service-card .card-photo,.service-card .wheel,.hero-art .wheel{animation:none!important;transform:none!important}
.service-card .card-photo{transition:filter .25s ease!important}
.service-card:hover .card-photo{filter:brightness(1.05)}
/* Header brand: subtle but clearly visible orange accent motion, no text reordering. */
.top .logo{direction:ltr!important;unicode-bidi:isolate;isolation:isolate;overflow:visible}
.top .logo b{display:inline-block;animation:viga-logo-glow 3.2s ease-in-out infinite!important;letter-spacing:inherit!important}
@keyframes viga-logo-glow{0%,100%{filter:drop-shadow(0 0 0 transparent);opacity:1}50%{filter:drop-shadow(0 0 7px rgba(244,107,53,.85));opacity:.84}}
.top .logo-dot{display:inline-block;animation:viga-logo-dot 2.4s ease-in-out infinite!important;transform-origin:center center}
@keyframes viga-logo-dot{0%,100%{transform:scale(.85);opacity:.65}50%{transform:scale(1.4);opacity:1}}
@media(prefers-reduced-motion:reduce){.hero-art .van,.hero-art .road,.top .logo b,.top .logo-dot{animation:none!important;will-change:auto}}

/* 2026-11-11 repair: wheels inside external SVG files animate themselves. */
.hero-art .hero-spokes{transform-box:view-box;transform-origin:center;animation:viga-hero-wheel 1.25s linear infinite!important}
@keyframes viga-hero-wheel{to{transform:rotate(360deg)}}
.top .logo b{animation:viga-logo-glow 2.5s ease-in-out infinite!important}
@media(prefers-reduced-motion:reduce){.hero-art .hero-spokes,.top .logo b{animation:none!important}}
