/* Shared identity with the account: locally hosted Rubik, sea, sand and coral. */
.public-caribbean{--sea:#198cef;--sea-deep:#164660;--sand:#f4fcff;--coral:#806016;--muted:#587181;--line:#d7eaf3;font-family:'FD Rubik',Arial,sans-serif;background:#fbfdff;color:#164660}
.public-caribbean button,.public-caribbean input,.public-caribbean select,.public-caribbean textarea{font-family:inherit}
.public-caribbean h1,.public-caribbean h2,.public-caribbean h3{color:#164660;font-weight:700}
.public-caribbean .header{background:#fff;border-color:#d7eaf3}.public-caribbean .nav a,.public-caribbean .login-link{color:#3d6276}.public-caribbean .nav a:hover{color:#198cef}.public-caribbean .locale select{color:#3d6276}
.public-caribbean .hero,.public-caribbean .public-hero{background:radial-gradient(ellipse at 95% 0%,#c5effc8c,transparent 55%),linear-gradient(130deg,#e7f8ff,#fffbd7);border-bottom:1px solid #e2efef}
.public-caribbean .hero h1{letter-spacing:-2.4px;line-height:1.08;font-weight:700}.public-caribbean .hero h1 .blue{color:#198cef}.public-caribbean .hero-sub,.public-caribbean .public-hero p{color:#557387}
.public-caribbean .eyebrow{color:#567488}.public-caribbean .hero .eyebrow,.public-caribbean .public-hero .eyebrow{color:#47762c;letter-spacing:1.5px}
.public-caribbean .booking{border-color:#cee5ef;border-radius:22px;box-shadow:0 12px 30px #163f4c08}.public-caribbean .tabs{border-color:#d7eaf3}.public-caribbean .tabs button{color:#587181;font-weight:500}.public-caribbean .tabs button.active{color:#198cef;border-bottom-color:#198cef}
.public-caribbean .location-field{background:#f5fcff;border-color:#d5e9f0;border-radius:12px}.public-caribbean .location-field small{color:#567488}.public-caribbean .location-field input{color:#164660}.public-caribbean .location-field input::placeholder{color:#798c98}
.public-caribbean .button{border-radius:12px}.public-caribbean .button.outline{color:#198cef;border-color:#baddeb;background:#fff}.public-caribbean .add-stop{color:#198cef}.public-caribbean .schedule button{border-radius:11px;color:#557387}.public-caribbean .schedule button.selected{color:#198cef;background:#e1f5fc;border-color:#c6e4f0}
.public-caribbean .hero-visual,.public-caribbean .public-photo{border-radius:26px;box-shadow:0 16px 40px #163f4c12}.public-caribbean .image-tag{border-color:#d7eaf3;border-radius:15px}.public-caribbean .tag-icon{background:#e1f5fc;color:#198cef}.public-caribbean .public-photo figcaption{color:#164660;background:#fffffff2;border:1px solid #e1e9df;border-radius:13px}
.public-caribbean .services,.public-caribbean .public-benefits,.public-caribbean .faq{background:transparent}.public-caribbean .section-top>p,.public-caribbean .section-intro p,.public-caribbean .public-feature p,.public-caribbean .service-card p{color:#587181}
.public-caribbean .service-card,.public-caribbean .public-feature{background:#fff;border-color:#d5e9f0;border-radius:22px;box-shadow:0 5px 22px #244d4605;border-top:3px solid #71cde6}
.public-caribbean .service-card:nth-child(2),.public-caribbean .public-feature:nth-child(2){border-top-color:#ffe23c}.public-caribbean .service-card:nth-child(3),.public-caribbean .public-feature:nth-child(3){border-top-color:#a6cf72}.public-caribbean .service-card:nth-child(4){border-top-color:#89d5ef}
.public-caribbean .service-card:hover{border-color:#afcfbf;box-shadow:0 12px 26px #244d4610}.public-caribbean .service-icon.blue{background:#e2f5fb;color:#198cef}.public-caribbean .service-icon.orange{background:#fff6bc;color:#806016}.public-caribbean .service-icon.green{background:#eff8db;color:#4b792d}.public-caribbean .service-icon.purple{background:#fff6bc;color:#806016}
.public-caribbean .card-link,.public-caribbean .text-link{color:#198cef}.public-caribbean .feature-number{background:#e2f5fb;color:#198cef;border-radius:13px}.public-caribbean .public-feature:nth-child(2) .feature-number{background:#fff6bc;color:#806016}.public-caribbean .public-feature:nth-child(3) .feature-number{background:#fff6bc;color:#806016}
.public-caribbean .community-card{border-radius:24px;border:1px solid #dbe9d0;background:#eaf7ff}.public-caribbean .community-card:after{background:linear-gradient(90deg,#eaf7fff7,#eaf7fff2 30%,#eaf7ffcc 50%,transparent 78%)}.public-caribbean .community-card.shop:after{background:linear-gradient(90deg,#fff6cdf7,#fff6cdf2 30%,#fff6cdcc 50%,transparent 78%)}.public-caribbean .community-content p{color:#557387}
.public-caribbean .public-callout{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(120deg,#164660,#198cef);border-radius:24px;border:1px solid #ffffff50;box-shadow:0 12px 28px #007db213}.public-caribbean .public-callout:before{content:'';position:absolute;z-index:-1;pointer-events:none;border:1px solid #ffffff20;border-radius:50%;width:340px;height:340px;right:-70px;top:-180px}.public-caribbean .public-callout h2{color:#fff}.public-caribbean .public-callout p{color:#e6f7ff}.public-caribbean .public-callout .eyebrow{color:#e7f6cc}
.public-caribbean .bonus-section{border-color:#d7eaf3}.public-caribbean .bonus-copy p,.public-caribbean details p{color:#587181}.public-caribbean details{border-color:#d7eaf3}.public-caribbean summary{color:#275673}
.public-caribbean footer,.public-caribbean .public-footer{background:#fffbd7;border-color:#eee6b9;color:#3d6276}.public-caribbean footer p,.public-caribbean .public-footer p{color:#587181}.public-caribbean .footer-bottom{border-color:#eee6b9}.public-caribbean .breadcrumbs{color:#567488}
.public-caribbean .auth-screen{background:radial-gradient(ellipse at top,#dff5ff,#fffbd7 75%)}.public-caribbean .auth-card{border-color:#d5e9f0;border-radius:24px;box-shadow:0 12px 35px #163f4c08}.public-caribbean .auth-card input{border-color:#cee5ef;background:#fbfeff;border-radius:12px;color:#164660}.public-caribbean .auth-card p,.public-caribbean .auth-card .subtle{color:#587181}.public-caribbean .auth-card .notice{background:#edf9ff;border-color:#c9e8f4;color:#355f75}.public-caribbean .auth-card .field{color:#3d6276}.public-caribbean .auth-links a{color:#198cef}
.public-caribbean input:focus-visible,.public-caribbean select:focus-visible{outline:3px solid #007db230;border-color:#198cef}
@media(max-width:760px){.public-caribbean .hero h1{font-size:clamp(38px,9vw,58px);letter-spacing:-1.6px}.public-caribbean .public-hero h1{font-size:clamp(35px,8.5vw,44px);letter-spacing:-1.2px}.public-caribbean .nav.open{background:linear-gradient(150deg,#fff,#fffaf0);color:#164660}.public-caribbean .mobile-menu-brand{border-color:#d7eaf3}.public-caribbean .mobile-menu-brand p{color:#567488}.public-caribbean .nav.open a{color:#164660}.public-caribbean .nav.open a:hover{background:#e1f5fc;color:#198cef}.public-caribbean .nav.open a:last-child{background:var(--primary);color:#fff}.public-caribbean .nav.open .menu-close{background:#e1f5fc;color:#275673}.public-caribbean .hero-visual,.public-caribbean .public-photo{border-radius:22px}.public-caribbean .service-card,.public-caribbean .public-feature{border-radius:20px}}

/* Align the visible logo artwork with the footer copy. */
.public-caribbean footer .logo{transform:translateX(-18px)}

.public-caribbean .public-callout{background:radial-gradient(circle at 95% 0%,#ffe23c70,transparent 35%),linear-gradient(115deg,#d7f2fd,#eaf8ff 62%,#fff7b8);border-color:#bce3f1}.public-caribbean .public-callout h2{color:#164660}.public-caribbean .public-callout p{color:#3d6276}.public-caribbean .public-callout .eyebrow{color:#47762c}.public-caribbean .public-callout:before{border-color:#007db21a}.public-caribbean .hero h1 .blue{color:#0076a6}.public-caribbean .hero,.public-caribbean .public-hero{background:radial-gradient(ellipse at 95% 0%,#9bddf370,transparent 55%),linear-gradient(125deg,#ebfaff,#fffbd7)}

/* Blend the original white logo canvas into the footer surface. */
.public-caribbean footer .logo{mix-blend-mode:multiply;background:transparent;box-shadow:none}

/* Shared public footer: aligned columns and generous touch targets. */
.public-caribbean .fd-footer{padding:48px 0 24px;margin-top:0;background:linear-gradient(135deg,#edf9ff 0%,#f8fcf5 65%,#fff9d5 100%);border-top:1px solid #cfe6ed}
.public-caribbean .fd-footer .fd-footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;padding-bottom:32px}
.public-caribbean .fd-footer .fd-footer-brand{display:flex;flex-direction:column;align-items:flex-start}
.public-caribbean .fd-footer .logo{width:180px;height:auto;max-width:100%;object-fit:contain;transform:translateX(-18px);mix-blend-mode:multiply}
.public-caribbean .fd-footer p{font-size:15px;line-height:1.7;margin:16px 0 0;max-width:28ch}
.public-caribbean .fd-footer .fd-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.public-caribbean .fd-footer h2{font-size:15px;line-height:1.4;margin:8px 0 14px;color:#164660;font-weight:700}
.public-caribbean .fd-footer .fd-footer-links a{display:flex;align-items:center;min-height:44px;padding:8px 0;font-size:15px;line-height:1.5;color:#3d6276;text-decoration:none;margin:0}
.public-caribbean .fd-footer a:hover{color:#198cef;text-decoration:underline;text-underline-offset:4px}
.public-caribbean .fd-footer a:focus-visible,.public-caribbean .fd-footer button:focus-visible{outline:3px solid #198cef;outline-offset:4px}
.public-caribbean .fd-footer .install-app-button{margin-top:20px;min-height:44px;background:#fff;color:#198cef;border:1px solid #a8d3e3;border-radius:12px;padding:10px 18px;font-size:15px}
.public-caribbean .fd-footer .fd-footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:22px;border-top:1px solid #cfe6ed;font-size:13px;color:#587181}
@media(max-width:900px){.public-caribbean .fd-footer .fd-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 28px}}
@media(max-width:480px){.public-caribbean .fd-footer{padding-top:32px}.public-caribbean .fd-footer .fd-footer-grid{gap:26px 18px}.public-caribbean .fd-footer .fd-footer-brand{grid-column:1/-1}.public-caribbean .fd-footer .fd-footer-links:last-child{grid-column:1/-1}.public-caribbean .fd-footer .fd-footer-links:last-child p{max-width:100%}.public-caribbean .fd-footer .fd-footer-bottom{flex-direction:column;align-items:flex-start}.public-caribbean .fd-footer h2{font-size:14px}.public-caribbean .fd-footer .fd-footer-links a{font-size:14px}}

/* Refined tropical surfaces without decorative clutter. */
.public-caribbean .hero,.public-caribbean .public-hero{background:radial-gradient(ellipse at 95% 5%,#aae2f470,transparent 55%),radial-gradient(ellipse at 5% 95%,#ffe98e40,transparent 42%),#f4fcff}
.public-caribbean .service-card,.public-caribbean .public-feature,.public-caribbean .booking{border-color:#d1e7ed;box-shadow:0 8px 26px #16466006}
.public-caribbean .service-card:nth-child(2) .service-icon{background:#fff5c9;color:#806016}
.public-caribbean .service-card:nth-child(3) .service-icon{background:#edf6df;color:#4b792d}
.public-caribbean .public-feature h2,.public-caribbean .service-card h3{line-height:1.3}
.public-caribbean .public-feature p,.public-caribbean .service-card p{line-height:1.65}
.public-caribbean .button{box-shadow:0 5px 14px #007db215}
.public-caribbean .button.outline{box-shadow:none;background:#ffffffb0}
.public-caribbean details{padding:18px 0}
.public-caribbean summary{line-height:1.5}
.public-caribbean .eyebrow{line-height:1.6}
@media(prefers-reduced-motion:reduce){.account-caribbean .button{transition:none}}

/* Match the public header logo at each viewport. */
.public-caribbean .fd-footer .logo{width:156px;height:60px;max-width:none;transform:translateX(-13px)}
@media(max-width:760px){.public-caribbean .fd-footer .logo{width:124px;height:47px}}

/* Keep the full-width hero square and the booking form rounded. */
html body.public-caribbean .hero{border-radius:0!important}
html body.public-caribbean .hero .booking{border-radius:22px!important}

/* Espacio para el campo de fecha en el formulario de reserva de inicio. */
.booking .schedule + .field {margin-bottom:18px}
.booking .schedule + .field input {margin-bottom:0}
