:root{
  --ink:#101820; --ink-2:#18354a; --yellow:#ffd43b; --yellow-2:#ffbf00;
  --aqua:#39c6c2; --sky:#eaf8f7; --paper:#ffffff; --soft:#f4f7f8;
  --muted:#667581; --line:#dce5e8; --radius:22px; --shadow:0 24px 70px rgba(16,24,32,.12);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Manrope,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55} a{color:inherit;text-decoration:none} img,svg{max-width:100%} button,input,select,textarea{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px 14px;z-index:1000;border-radius:8px}
.site-header{height:82px;background:rgba(255,255,255,.95);backdrop-filter:blur(18px);position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(16,24,32,.07)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand-mark{width:40px;height:40px;border-radius:12px;background:var(--yellow);color:var(--ink);display:grid;place-items:center}.brand-mark svg{width:30px;height:30px}.brand>span:last-child{display:grid;grid-template-columns:auto auto;line-height:1}.brand b{font-size:19px}.brand em{font-size:19px;font-style:normal;color:#159a98;font-weight:800}.brand small{grid-column:1/3;margin-top:4px;font-size:8px;letter-spacing:.22em;color:#687781;font-weight:700}.main-nav{display:flex;align-items:center;gap:25px;font-size:14px;font-weight:700}.main-nav>a:not(.btn){padding:29px 0 25px;border-bottom:3px solid transparent}.main-nav>a:not(.btn):hover{border-color:var(--yellow-2)}.nav-toggle{display:none;background:none;border:0;padding:10px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:5px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:14px;border:1px solid transparent;font-weight:800;transition:.2s ease;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--yellow);color:var(--ink);box-shadow:0 12px 24px rgba(255,191,0,.18)}.btn-primary:hover{background:var(--yellow-2)}.btn-dark{background:var(--ink);color:#fff}.btn-small{min-height:42px;padding:0 18px;border-radius:12px}.btn-ghost{border-color:rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.06)}.btn-full{width:100%}
.hero{position:relative;background:var(--ink);color:#fff;overflow:hidden}.hero:before{content:"";position:absolute;right:-170px;top:-260px;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(57,198,194,.24),rgba(57,198,194,0) 65%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 87%)}.hero-content{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center;padding:84px 0 86px}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--yellow);margin-bottom:18px}.eyebrow:before{content:"";width:34px;height:2px;background:currentColor}.eyebrow.dark{color:#128c89}.hero h1{font-size:clamp(42px,5.7vw,76px);line-height:1.02;letter-spacing:-.045em;margin:0 0 24px;max-width:760px}.hero h1 span{color:var(--yellow)}.hero-copy>p{font-size:18px;color:#bfd0d8;max-width:650px;margin:0 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.trust-row{display:flex;flex-wrap:wrap;gap:22px;margin-top:32px;color:#afc0c8;font-size:13px}.trust-row span::first-letter{color:var(--aqua)}
.booking-card{background:#fff;color:var(--ink);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);position:relative}.booking-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:28px;right:-25px;bottom:-25px;border:1px solid rgba(255,212,59,.45);transform:rotate(14deg);z-index:-1}.booking-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px}.booking-head h2{font-size:27px;letter-spacing:-.04em;margin:4px 0 0}.mini-label{font-size:10px;letter-spacing:.16em;font-weight:800;color:#7a8a93}.status-dot{font-size:11px;font-weight:700;background:#eaf8f1;color:#198754;padding:7px 10px;border-radius:999px}.status-dot:before{content:"●";margin-right:5px}.booking-card label,.contact-form label{display:block;font-size:12px;font-weight:800;color:#55636b;margin-bottom:13px}.booking-card input,.booking-card select,.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);background:#fbfcfc;color:var(--ink);border-radius:11px;padding:13px 14px;margin-top:7px;outline:none}.booking-card input:focus,.booking-card select:focus,.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#28a9a6;box-shadow:0 0 0 3px rgba(57,198,194,.13)}.input-wrap{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fbfcfc;border-radius:11px;padding-left:14px;margin-top:7px}.input-wrap span{color:#17a4a0;font-size:10px}.input-wrap input{border:0!important;box-shadow:none!important;margin:0!important;background:transparent!important;padding-left:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-note{font-size:10px!important;color:#89959b!important;margin:11px 0 0!important;text-align:center;font-weight:500!important}.form-note.light{color:#aebbc1!important}.hero-ribbon{position:relative;z-index:3;border-top:1px solid rgba(255,255,255,.1);background:#0d151b}.ribbon-inner{height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#8699a3;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.12em;white-space:nowrap;overflow:hidden}.ribbon-inner i{width:4px;height:4px;background:var(--yellow);border-radius:50%;flex:0 0 auto}
.section{padding:96px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.intro-grid h2,.section-heading h2,.island-copy h2,.pro-copy h2,.business-grid h2,.faq-grid h2,.cta-grid h2{font-size:clamp(34px,4.2vw,56px);line-height:1.08;letter-spacing:-.045em;margin:0}.intro-grid p{font-size:17px;color:var(--muted);margin:0 0 18px}.section-soft{background:var(--soft)}.section-heading{max-width:760px;margin-bottom:42px}.section-heading p{color:var(--muted);font-size:17px;margin:14px 0 0}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.section-heading.centered .eyebrow{justify-content:center}.cards{display:grid;gap:18px}.cards.four{grid-template-columns:repeat(4,1fr)}.service-card{background:#fff;border:1px solid #e6ecee;border-radius:20px;padding:26px;transition:.2s ease}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(16,24,32,.08)}.icon-box{width:46px;height:46px;border-radius:13px;background:var(--sky);display:grid;place-items:center;font-size:20px;color:#138b88;margin-bottom:26px}.service-card h3{font-size:20px;letter-spacing:-.025em;margin:0 0 9px}.service-card p{font-size:14px;color:var(--muted);min-height:86px;margin:0 0 18px}.service-card a,.text-link{font-size:13px;font-weight:800;color:#128c89}
.island-section{background:#112431;color:#fff;overflow:hidden}.island-layout{display:grid;grid-template-columns:.93fr 1.07fr;align-items:center;gap:90px}.island-copy p{color:#aec0c8;font-size:17px;max-width:580px}.island-list{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 32px}.island-list span{font-size:12px;border:1px solid rgba(255,255,255,.16);padding:8px 11px;border-radius:999px;color:#c8d5da}.archipelago{height:440px;position:relative;border-radius:32px;background:radial-gradient(circle at 45% 45%,rgba(57,198,194,.18),transparent 47%),linear-gradient(135deg,rgba(255,255,255,.025),rgba(255,255,255,0));border:1px solid rgba(255,255,255,.08)}.archipelago:before{content:"ATLÁNTICO";position:absolute;left:30px;bottom:20px;font-size:10px;letter-spacing:.4em;color:#56717e}.island{position:absolute;width:58px;height:42px;background:var(--yellow);border-radius:58% 42% 64% 36%/54% 38% 62% 46%;display:grid;place-items:center;color:#17222a;font-size:11px;box-shadow:0 10px 25px rgba(0,0,0,.2)}.i1{right:70px;top:82px;transform:rotate(-12deg)}.i2{right:115px;top:190px;width:70px;height:38px;transform:rotate(18deg)}.i3{right:245px;top:222px;width:54px;height:54px}.i4{left:155px;top:188px;width:75px;height:48px;transform:rotate(9deg)}.i5{left:115px;top:250px;width:42px;height:40px}.i6{left:57px;top:120px;width:47px;height:55px}.i7{left:55px;bottom:60px;width:36px;height:46px}.route{position:absolute;border-top:1px dashed rgba(57,198,194,.55);transform-origin:left center}.r1{left:105px;top:170px;width:180px;transform:rotate(16deg)}.r2{left:206px;top:220px;width:220px;transform:rotate(-4deg)}.r3{left:275px;top:240px;width:190px;transform:rotate(-26deg)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;counter-reset:steps}.step{padding:28px 28px 34px;border-top:4px solid var(--line);background:#fff}.step:first-child{border-color:var(--yellow-2)}.step span{font-size:12px;font-weight:800;color:#18a09d}.step h3{font-size:22px;margin:18px 0 8px}.step p{font-size:14px;color:var(--muted);margin:0}.pro-section{background:linear-gradient(180deg,#fff 0,#fff 55%,#f3f7f8 55%,#f3f7f8 100%)}.split-card{background:var(--ink);color:#fff;border-radius:34px;display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;box-shadow:var(--shadow)}.pro-copy{padding:60px}.pro-copy p{color:#afc0c8;max-width:650px}.check-list{list-style:none;padding:0;margin:26px 0 32px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-list li{font-size:13px;color:#d2dde1;position:relative;padding-left:24px}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--yellow);font-weight:900}.phone-mock{background:radial-gradient(circle at 50% 30%,rgba(57,198,194,.22),transparent 60%),#172a36;display:grid;place-items:end center;padding:48px 48px 0}.phone-screen{width:min(320px,100%);height:470px;background:#f3f6f7;border-radius:32px 32px 0 0;border:10px solid #080d11;border-bottom:0;color:var(--ink);padding:24px 18px}.phone-top{position:absolute}.app-head{display:flex;align-items:center;gap:10px}.app-head>i{margin-left:auto;color:#2fb978;font-style:normal;font-size:9px}.brand-mini{width:34px;height:34px;border-radius:10px;background:var(--yellow);display:grid;place-items:center;font-size:10px;font-weight:900}.app-head div{display:flex;flex-direction:column}.app-head small{font-size:9px;color:#77868d}.app-head b{font-size:12px}.availability{display:flex;align-items:center;justify-content:space-between;margin:25px 0 15px;padding:14px;background:#e3f6ed;border-radius:13px;font-size:11px}.availability b{font-size:9px;background:#2fb978;color:white;padding:5px 7px;border-radius:999px}.ride-card{background:#fff;padding:18px;border-radius:17px;box-shadow:0 12px 30px rgba(16,24,32,.09)}.ride-card small{font-size:8px;color:#1a9e9a;letter-spacing:.1em;font-weight:900}.ride-card h4{font-size:20px;margin:8px 0 0}.ride-card p{margin:0 0 13px;font-size:13px;color:#66757c}.ride-card div{display:flex;gap:7px}.ride-card div span{font-size:8px;background:#eef3f4;padding:5px 7px;border-radius:8px}.ride-card button{width:100%;border:0;background:var(--ink);color:#fff;border-radius:10px;padding:10px;margin-top:15px;font-size:10px;font-weight:800}.app-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px}.app-stats div{background:#e9eeef;padding:11px 4px;border-radius:12px;text-align:center}.app-stats b{display:block;font-size:15px}.app-stats small{font-size:7px;color:#7b898f}
.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.business-grid>div:first-child p{color:var(--muted);font-size:17px;margin:18px 0 24px}.business-features{display:grid;grid-template-columns:1fr 1fr;gap:14px}.business-features>div{background:#fff;border:1px solid var(--line);padding:20px;border-radius:16px;display:flex;gap:13px}.business-features b{font-size:10px;color:#159a98}.business-features span{display:flex;flex-direction:column}.business-features strong{font-size:13px}.business-features small{font-size:11px;color:var(--muted);margin-top:5px}.faq-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:100px}.accordion details{border-bottom:1px solid var(--line);padding:20px 0}.accordion summary{cursor:pointer;font-weight:800;list-style:none;padding-right:30px;position:relative}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:"+";position:absolute;right:0;font-size:20px;color:#149693}.accordion details[open] summary:after{content:"−"}.accordion p{color:var(--muted);font-size:14px;max-width:760px}
.cta-section{background:#10232f;color:#fff;padding:80px 0}.cta-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.cta-grid>div>p{color:#afc0c8;font-size:17px}.contact-form{background:#fff;padding:28px;border-radius:22px;color:var(--ink)}.contact-form textarea{resize:vertical}.contact-form .consent{display:flex;align-items:flex-start;gap:8px;font-weight:500;font-size:11px}.contact-form .consent input{width:auto;margin-top:2px}.site-footer{background:#0a1217;color:#a4b2b9;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:1.6fr .8fr .8fr 1fr;gap:50px}.footer-brand{color:#fff;margin-bottom:18px}.footer-grid>div:first-child p{font-size:12px;max-width:300px}.footer-grid h3{color:#fff;font-size:12px;margin:5px 0 16px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:9px;font-size:11px}.footer-grid a:hover{color:var(--yellow)}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;font-size:10px}.toast{position:fixed;right:22px;bottom:22px;background:#fff;color:var(--ink);border-radius:14px;padding:14px 18px;box-shadow:var(--shadow);font-weight:700;font-size:13px;transform:translateY(120px);opacity:0;transition:.25s ease;z-index:300}.toast.show{transform:translateY(0);opacity:1}
@media(max-width:1000px){.main-nav{position:absolute;left:20px;right:20px;top:74px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:none;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav>a:not(.btn){padding:8px 4px;border:0}.nav-toggle{display:block}.hero-content,.island-layout,.business-grid,.faq-grid,.cta-grid{grid-template-columns:1fr}.hero-content{gap:45px}.cards.four{grid-template-columns:1fr 1fr}.intro-grid{gap:40px}.island-layout{gap:50px}.split-card{grid-template-columns:1fr}.phone-mock{min-height:520px}.pro-copy{padding:48px}.business-grid,.faq-grid,.cta-grid{gap:50px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:1/-1}}
@media(max-width:680px){.container{width:min(100% - 28px,1180px)}.site-header{height:70px}.brand-mark{width:36px;height:36px}.brand b,.brand em{font-size:17px}.main-nav{top:65px}.hero-content{padding:58px 0}.hero h1{font-size:44px}.hero-copy>p{font-size:16px}.booking-card{padding:21px}.form-grid,.cards.four,.intro-grid,.steps,.check-list,.business-features,.footer-grid{grid-template-columns:1fr}.section{padding:70px 0}.intro-grid{gap:25px}.cards.four{gap:12px}.service-card p{min-height:auto}.archipelago{height:330px;transform:scale(.95)}.i3{right:180px}.i4{left:120px}.r2{width:150px}.pro-copy{padding:34px 25px}.phone-mock{padding:35px 25px 0;min-height:500px}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{gap:15px;flex-direction:column}.ribbon-inner{justify-content:flex-start}.cta-section{padding:65px 0}.contact-form{padding:20px}}

/* Formularios conectados */
.hp-field {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

button:disabled {
  opacity: .65;
  cursor: wait;
}

.toast.error {
  background: #8f1d1d;
}

/* v3 - formulario: renderizado consistente y sin elementos antispam visibles */
.booking-card textarea,
.contact-form textarea {
  display: block;
  width: 100%;
  min-height: 96px;
  box-sizing: border-box;
  resize: vertical;
}
.booking-card .consent,
.contact-form .consent {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  line-height: 1.4;
  margin: 2px 0 4px;
}
.booking-card .consent input,
.contact-form .consent input {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin: 1px 0 0;
}
.hp-field {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
