@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=Rubik:wght@500;600&display=swap";
.hero-video{pointer-events:none;border:0;border-radius:64px;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.35)}.hero-shade{z-index:0;pointer-events:none;background:#082b366b;border-radius:64px;position:absolute;inset:0}.operator-marquee{margin-top:30px;padding:12px 0;position:relative;overflow:hidden}.operator-marquee:before,.operator-marquee:after{content:"";z-index:2;pointer-events:none;width:120px;position:absolute;top:0;bottom:0}.operator-marquee:before{background:linear-gradient(90deg,#fff 35%,#fff0);left:0}.operator-marquee:after{background:linear-gradient(270deg,#fff 20%,#fff0);right:0}.operator-track{width:max-content;animation:28s linear infinite operator-marquee;flex-wrap:nowrap!important;justify-content:flex-start!important;gap:70px!important;margin:0!important;display:flex!important}.operator-track img{flex:none}.operator-marquee:hover .operator-track{animation-play-state:paused}@keyframes operator-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.operator-track{animation:none}}@media (max-width:720px){.hero-video{border-radius:28px;transform:scale(2)}.hero-shade{border-radius:28px}.operator-marquee:before,.operator-marquee:after{width:48px}.operator-track{animation-duration:18s;gap:36px!important}}.entity-page{background:var(--soft);padding:42px 0 110px}.breadcrumbs{color:var(--muted);gap:10px;margin:20px 0 32px;font-size:13px;display:flex}.entity-page article{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:28px;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);align-items:start;gap:56px;padding:28px;display:grid}.entity-hero{background:#dfeff3;border-radius:20px;min-height:560px;position:relative;overflow:hidden}.entity-hero img{object-fit:cover}.entity-placeholder{color:#fff;background:linear-gradient(145deg,#1e95b9,#67c6da);place-items:center;height:560px;font:italic 700 160px Rubik;display:grid}.entity-copy{padding:28px 20px}.entity-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--brand);font-size:12px;font-weight:800}.entity-copy h1{margin:12px 0 18px;font:600 clamp(38px,5vw,64px) Rubik}.entity-copy>p,.entity-copy section p{color:var(--muted);line-height:1.8}.entity-meta{font-weight:700;color:#334c52!important}.entity-copy section{border-top:1px solid var(--line);margin-top:28px;padding-top:20px}.entity-copy h2{font-size:20px}.facility-list{flex-wrap:wrap;gap:9px;padding:0;list-style:none;display:flex}.facility-list li{background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:13px}.entity-copy>.button{margin-top:24px}@media (max-width:900px){.entity-page article{grid-template-columns:1fr;gap:10px}.entity-hero,.entity-placeholder{height:380px;min-height:380px}.entity-copy{padding:20px 6px}}@media (max-width:600px){.entity-page{padding-top:24px;padding-bottom:56px}.entity-page article{border-radius:20px;padding:16px}.entity-hero,.entity-placeholder{height:280px;min-height:280px}.entity-copy{padding:20px 2px}.entity-copy h1{font-size:30px}}.hero-media-bg{z-index:0;pointer-events:none;background:#256b7a;border-radius:64px;position:absolute;inset:0;overflow:hidden}.hero-media-bg>img,.hero-media-bg .hero-image{object-fit:cover;object-position:center 58%}.hero-media-bg .hero-video{border-radius:0;width:100%;min-width:100%;height:100%;min-height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(1.35)}.hero-media-bg .hero-shade{z-index:1;background:#082b367a;border-radius:0;position:absolute;inset:0}.site-header{z-index:50;position:relative}.hero{z-index:1;position:relative}@media (max-width:720px){.hero-media-bg{border-radius:24px}.hero-media-bg .hero-video{display:none!important}.hero-media-bg>img,.hero-media-bg .hero-image{object-fit:cover;object-position:center;display:block!important}}.location-dropdown{margin-top:6px;position:relative}.location-trigger{border:1px solid var(--line);background:var(--soft);width:100%;height:54px;color:var(--text);cursor:pointer;text-align:left;border-radius:9px;align-items:center;gap:12px;padding:0 14px 0 16px;display:flex}.location-trigger>svg{width:18px;height:18px;color:var(--brand);flex:none}.location-trigger>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;letter-spacing:normal;flex:1;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.location-trigger .placeholder{color:#8a9395;font-weight:400}.location-chevron{color:var(--muted);font-size:19px;transition:transform .18s}.location-chevron.open{transform:rotate(180deg)}.location-menu{z-index:30;border:1px solid var(--line);background:#fff;border-radius:14px;width:max(100%,350px);max-height:440px;padding:0 0 8px;position:absolute;top:calc(100% + 8px);left:0;overflow-y:auto;box-shadow:0 18px 45px #0f38432e}.location-search{z-index:2;border-bottom:1px solid var(--line);background:#fff;border-radius:14px 14px 0 0;align-items:center;gap:10px;height:52px;padding:0 16px;display:flex;position:sticky;top:0}.location-search>svg{width:18px;height:18px;color:var(--brand);flex:none}.location-search input,.search-fields .location-search input{width:100%!important;height:48px!important;color:var(--text)!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;outline:0!important;padding:0!important;font-size:15px!important;font-weight:500!important}.location-mode{color:var(--brand);background:#eef8fb;border-radius:8px;align-items:center;gap:10px;margin:10px 14px 4px;padding:8px 12px;display:flex}.location-mode>svg{width:18px;height:18px;color:var(--brand);flex:none}.location-mode>span{flex-direction:column;display:flex}.location-mode strong{color:var(--brand-dark);font-size:12px;font-weight:700}.location-mode small{color:#567276;font-size:11px}.location-mode-ferry{background:#e7f6fa}.location-menu section{padding:2px 10px}.location-menu section+section{border-top:1px solid var(--line);margin-top:4px;padding-top:6px}.location-menu h4{color:var(--brand);letter-spacing:.06em;text-transform:uppercase;margin:0;padding:8px 10px 4px;font-size:11px;font-weight:700}.location-menu button{width:100%;min-height:46px;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;padding:8px 10px;transition:background .15s;display:flex}.location-menu button>span:nth-child(2){text-align:left;flex-direction:column;min-width:0;display:flex}.location-menu button:hover{background:#eef8fb}.location-menu button.active{color:var(--brand-dark);background:#e8f4fb;font-weight:600}.location-kind{width:22px;color:var(--brand);flex:0 0 22px;place-items:center;display:grid}.location-kind svg{width:18px;height:18px;color:var(--brand)}.location-menu strong{color:var(--text);font-size:14px;font-weight:600;line-height:1.2;display:block}.location-menu small{color:var(--muted);margin-top:2px;font-size:11px;line-height:1.3;display:block}.location-check{color:var(--brand);margin-left:auto;font-size:14px;font-weight:800}.location-empty{text-align:center;color:var(--muted);padding:18px;font-size:13px}@media (max-width:720px){.location-menu{z-index:100;border-radius:16px;width:auto;max-height:min(72vh,520px);position:fixed;inset:auto 12px 12px}.location-search input,.search-fields .location-search input{font-size:15px!important}}:root{--brand:#0284c7;--brand-hover:#0369a1;--brand-dark:#075985;--text:#191c1d;--muted:#3b4949;--muted-soft:#94a3b8;--surface:#fff;--soft:#f8f9fa;--line:#e1e3e4;--radius-card:16px;--section:112px;--shadow:0 12px 34px #00ced11f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);background:#fff;margin:0;font-family:Plus Jakarta Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}button,select,input{font:inherit}button,a{outline-offset:3px}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #ffcf4a}.container{width:min(1632px,100% - 40px);margin-inline:auto}.site-header{background:#fff;align-items:center;height:96px;display:flex}.header-inner{justify-content:space-between;align-items:center;display:flex}.brand,.footer-brand{color:#137d9d;align-items:center;gap:8px;font-weight:700;line-height:.8;display:flex}.brand small,.footer-brand small{letter-spacing:2px;margin-top:5px;font-size:7px;display:block}.brand-mark{color:var(--brand);font:italic 700 36px Rubik}.header-right{align-items:center;gap:26px;display:flex}.header-nav{align-items:center;gap:22px;font-size:14px;font-weight:600;display:flex}.header-nav a{color:var(--text);transition:color .15s}.header-nav a:hover{color:var(--brand)}.locale{align-items:center;gap:6px;display:flex}.locale button,.menu{background:0 0;border:0;padding:12px}.menu{font-size:24px;display:none}.locale-item{position:relative}.locale-item>button{cursor:pointer;color:var(--text);border-radius:8px;align-items:center;gap:5px;font-size:14px;font-weight:600;display:inline-flex}.locale-item>button:hover{background:var(--soft)}.locale-backdrop{z-index:9;position:fixed;inset:0}.locale-menu{z-index:10;border:1px solid var(--line);min-width:170px;box-shadow:var(--shadow);background:#fff;border-radius:12px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0}.locale-menu li button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;padding:9px 12px;font-size:14px;display:block}.locale-menu li button:hover{background:var(--soft)}.locale-menu li button.active{color:var(--brand);font-weight:700}.hero-media{background:#256b7a;border-radius:64px;min-height:830px;position:relative;overflow:visible}.hero-media>img{object-fit:cover;object-position:center 58%;filter:brightness(.72);border-radius:64px}.hero-copy{z-index:1;text-align:center;color:#fff;padding-top:145px;position:relative}.hero-logo{display:none!important}.hero h1{margin:40px 0 14px;font:500 clamp(40px,4.15vw,80px) Rubik}.hero-copy>p{margin:0;font-size:24px}.search-card{z-index:2;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);width:min(1304px,100% - 80px);box-shadow:var(--shadow);background:#fffffff2;border-radius:27px;padding:27px;position:absolute;bottom:118px;left:50%;transform:translate(-50%)}.transport-tabs{border-bottom:1px solid var(--line);gap:28px;margin-bottom:18px;display:flex}.transport-tabs button,.trip-tabs button,.chips button{color:var(--muted);background:0 0;border:0;align-items:center;gap:7px;padding:0 5px 15px;font-weight:600;display:inline-flex}.transport-tabs .active{color:var(--brand);border-bottom:2px solid var(--brand)}.trip-tabs{gap:26px;margin-bottom:18px;display:flex}.trip-tabs button{border:1px solid #0003;border-radius:9px;justify-content:center;min-width:154px;padding:13px 26px}.trip-tabs .active{background:var(--brand);border-color:var(--brand);color:#fff}.search-fields{grid-template-columns:1fr 46px 1fr 195px 195px 150px 140px;align-items:end;gap:16px;display:grid}.search-fields label{letter-spacing:.05em;color:var(--muted);font-size:12px;font-weight:700}.field-input{margin-top:6px;position:relative}.field-input svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.search-fields select,.search-fields input{border:1px solid var(--line);background:var(--soft);color:#667;border-radius:9px;width:100%;height:54px;padding:0 15px 0 40px;display:block}.search-fields input:disabled{opacity:.55;cursor:not-allowed}.swap{border:1px solid var(--line);background:var(--soft);width:45px;height:45px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;margin-bottom:5px;display:flex}.search-submit,.button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 22px;font-weight:600;display:inline-flex}.search-submit{height:54px}.passenger-trigger{cursor:pointer;text-align:left;letter-spacing:.05em;color:var(--muted);background:0 0;border:0;flex-direction:column;align-items:stretch;gap:6px;padding:0;font-size:12px;font-weight:700;display:flex}.passenger-trigger span{border:1px solid var(--line);background:var(--soft);color:#667;letter-spacing:normal;white-space:nowrap;text-overflow:ellipsis;border-radius:9px;align-items:center;height:54px;padding:0 15px;font-size:14px;font-weight:400;display:flex;overflow:hidden}.section{padding-top:var(--section)}.section>.container{width:min(1200px,100% - 48px)}.why{text-align:center;padding-top:170px}.section h2{margin:0 0 10px;font-size:30px}.benefit-grid{grid-template-columns:repeat(3,1fr);gap:60px;margin-top:50px;display:grid}.benefit-grid img{object-fit:contain;width:210px;height:210px}.benefit-grid h3{margin:10px 0;font-size:20px}.benefit-grid p{max-width:390px;color:var(--muted);margin:auto;line-height:1.6}.section-heading{justify-content:space-between;align-items:end;margin-bottom:30px;display:flex}.section-heading p,.operators>div>p,.news-intro p{color:var(--muted);margin:0}.section-heading>a{font-size:14px;font-weight:600}.chips{gap:16px;margin-bottom:26px;display:flex}.chips button{border:1px solid var(--line);border-radius:999px;padding:10px 23px;font-size:12px}.chips .active{background:var(--brand);border-color:var(--brand);color:#fff}.route-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:16px;display:grid}.route-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;flex-direction:column;padding:40px 22px 22px;display:flex;position:relative}.promo{color:#0f2a1e;letter-spacing:.02em;background:#b4e584;border-radius:0 15px 0 14px;padding:8px 18px;font-size:12px;font-weight:700;position:absolute;top:0;right:0}.route-head{grid-template-columns:1fr auto 1fr;align-items:start;gap:12px;display:grid}.route-place{flex-direction:column;gap:2px;min-width:0;display:flex}.route-place strong{letter-spacing:-.01em;font-size:17px;line-height:1.2}.route-place small{color:var(--muted);margin-top:0;font-size:10.5px}.route-place-end{text-align:right}.route-mid{color:var(--brand);flex-direction:column;align-items:center;gap:2px;padding-top:7px;display:flex}.route-mid svg{width:14px;height:14px}.route-body{justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;padding-top:18px;display:flex}.route-meta{gap:10px;margin:0;padding:0;list-style:none;display:grid}.route-meta li{color:var(--muted);grid-template-columns:16px 1fr;align-items:center;gap:9px;font-size:12.5px;display:grid}.route-meta svg{color:#3b4949}.route-trip{color:var(--muted-soft);font-style:normal;font-weight:500}.route-more{color:var(--brand);white-space:nowrap;align-items:center;gap:6px;padding-bottom:2px;font-size:13px;font-weight:600;display:inline-flex}.route-more svg{width:15px;height:15px}.route-more:hover{color:var(--brand-hover)}.route-empty{color:var(--muted);padding:28px 2px}.boat-grid,.port-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.boat-grid{grid-auto-rows:1fr}.boat-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.boat-media{aspect-ratio:4/3;background:#dfeff3;position:relative}.boat-media img{object-fit:cover}.boat-info{flex-direction:column;flex:1;padding:22px 26px 26px;display:flex}.boat-info h3{margin:0 0 10px;font-size:18px;line-height:1.25}.boat-specs{gap:9px;margin:0;padding:0;list-style:none;display:grid}.boat-specs li{color:var(--muted);grid-template-columns:18px 1fr;align-items:start;gap:11px;font-size:14px;line-height:1.35;display:grid}.boat-specs svg{color:var(--brand);margin-top:1px}.boat-cap{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.boat-cap svg{width:16px;height:16px;color:var(--brand);flex:none}.boat-facil{flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px;display:flex}.boat-facil-tag{background:var(--soft);border:1px solid var(--line);height:21px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:9.5px;font-weight:600;display:inline-flex}.boat-facil-more{border:1px solid var(--line);height:21px;color:var(--brand);cursor:default;background:#eef8fb;border-radius:999px;align-items:center;padding:0 8px;font-size:9.5px;font-weight:700;display:inline-flex;position:relative}.boat-facil-pop{z-index:20;border:1px solid var(--line);opacity:0;visibility:hidden;pointer-events:none;text-align:left;background:#fff;border-radius:12px;width:210px;padding:12px 14px;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 18px 45px #0f38432e}.boat-facil-more:hover .boat-facil-pop,.boat-facil-more:focus-visible .boat-facil-pop{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.boat-facil-pop:after{content:"";border:6px solid #0000;border-top-color:#fff;position:absolute;top:100%;left:50%;transform:translate(-50%)}.boat-facil-pop strong{color:var(--text);margin-bottom:8px;font-size:12px;display:block}.boat-facil-pop ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.boat-facil-pop li{color:var(--muted);padding-left:16px;font-size:12.5px;line-height:1.4;position:relative}.boat-facil-pop li:before{content:"";background:var(--brand);border-radius:50%;width:5px;height:5px;position:absolute;top:7px;left:2px}.boat-footer{justify-content:space-between;align-items:flex-end;gap:12px;margin-top:auto;padding-top:20px;display:flex}.boat-footer small{letter-spacing:.04em;color:var(--muted);text-transform:uppercase;font-size:12px;display:block}.boat-footer b{color:var(--brand);margin-top:4px;font:700 25px Rubik;display:block}.boat-footer a{white-space:nowrap;align-items:center;gap:6px;padding-bottom:4px;font-size:14px;font-weight:600;display:inline-flex}.port-slider{position:relative}.port-track{scroll-snap-type:x mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:calc(25% - 13.5px);grid-auto-flow:column;padding-bottom:4px;overflow-x:auto}.port-track::-webkit-scrollbar{display:none}.port-track>.port-card{scroll-snap-align:start}.port-nav{z-index:2;border:1px solid var(--line);width:44px;height:44px;color:var(--text);cursor:pointer;box-shadow:var(--shadow);background:#fff;border-radius:50%;justify-content:center;align-items:center;padding:0 0 3px;font-size:24px;line-height:1;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.port-nav:disabled{opacity:0;pointer-events:none}.port-nav-prev{left:-22px}.port-nav-next{right:-22px}.port-card{background:#dfeff3;border-radius:20px;height:340px;position:relative;overflow:hidden}.port-card>img{object-fit:cover;object-position:center}.port-card>div{color:#fff;z-index:2;background:linear-gradient(#0000,#000000c7);flex-direction:column;justify-content:flex-end;align-items:center;gap:14px;padding:24px 16px;display:flex;position:absolute;inset:45% 0 0}.port-card h3{text-align:center;color:#fff;text-shadow:0 1px 3px #0006;margin:0;font-size:19px;font-weight:700}.port-card a{white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;padding:10px 22px;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 2px 6px #00000026;color:#0284c7!important;background:#fff!important}.port-card a:hover{transform:translateY(-1px);color:#0369a1!important;background:#f8fafc!important}.operators{text-align:center}.operators>div>div{flex-wrap:wrap;justify-content:center;align-items:center;gap:55px;margin-top:30px;display:flex}.operators img{object-fit:contain;mix-blend-mode:multiply}.news{padding-bottom:112px}.news-grid{grid-template-columns:.85fr repeat(3,1fr);gap:22px;display:grid}.news-track{display:contents}.news-intro{flex-direction:column;justify-content:center;align-items:flex-start;padding-right:25px;display:flex}.news-intro .button{margin-top:25px}.article-card{border:1px solid var(--line);border-radius:14px;padding-bottom:20px;overflow:hidden}.article-card>div{height:250px;position:relative}.article-card img{object-fit:cover}.article-card h3{padding:0 18px;font-size:16px;line-height:1.5}.article-card>a{color:var(--brand);padding:0 18px;font-size:12px;font-weight:600}footer{color:#fff;background:#249bbb;border-radius:58px;margin:0 36px 26px;padding:70px 0 30px}.footer-top{justify-content:center;align-items:center;gap:70px;display:flex}.footer-brand .brand-mark,.footer-brand{color:#fff}.support{border-left:1px solid #fff9;align-items:center;gap:20px;padding-left:50px;display:flex}.support>span{font-size:30px}.support p,.support strong{margin:0;display:block}.footer-about{text-align:center;max-width:900px;margin:35px auto;font-size:13px;line-height:1.7}footer nav,.social{justify-content:center;gap:24px;margin:20px 0;font-size:12px;display:flex}.social a{color:#fff;background:#ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;transition:background .15s;display:inline-flex}.social a:hover{background:#ffffff3d}.support-icon{color:#fff;background:#ffffff24;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.footer-payments{justify-content:center;max-width:760px;margin:22px auto 0;display:flex}.footer-payments img{object-fit:contain;background:#fff;border-radius:14px;width:100%;height:auto;max-height:130px;padding:14px 18px}.copyright-secure{opacity:.85}.copyright{border-top:1px solid #ffffff4d;justify-content:space-between;padding-top:22px;font-size:11px;display:flex}.search-hero{text-align:center;color:#fff;border-radius:36px;justify-content:center;align-items:center;min-height:300px;margin-top:20px;display:flex;position:relative;overflow:hidden}.search-hero-media{position:absolute;inset:0}.search-hero-media img{object-fit:cover;filter:brightness(.55)}.search-hero-body{z-index:1;padding:40px 20px;position:relative}.search-hero-body h1{margin:0 0 14px;font:600 clamp(30px,3.4vw,50px) Rubik}.search-hero-body p{flex-wrap:wrap;justify-content:center;gap:26px;margin:0 0 22px;font-size:16px;display:flex}.search-hero-body p span{align-items:center;gap:8px;display:inline-flex}.search-hero-modify{border:1px solid #ffffffd9;border-radius:10px;padding:11px 24px;font-size:14px;font-weight:600;display:inline-block}.search-results{padding-top:56px;padding-bottom:96px}.search-lead{margin:0 0 30px;font:600 30px Rubik}.trip-rail{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:24px}.trip-rail-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px;display:flex}.trip-rail-head h3{margin:0}.trip-reset{color:var(--brand);border-bottom:1px solid #0000;font-size:12.5px;font-weight:600;transition:border-color .15s}.trip-reset:hover{border-bottom-color:var(--brand)}.trip-intro{color:var(--muted);margin:0 0 16px;font-size:13px;line-height:1.55}.trip-form{gap:13px;display:grid}.trip-search-card{flex-direction:column;gap:12px;width:100%;display:flex}.trip-search-card .mobile-location-group{border:1px solid var(--line);background:#fff;border-radius:14px;position:relative;overflow:visible}.trip-search-card .mobile-location-row{position:relative}.trip-search-card .mobile-location-from{border-bottom:1px solid var(--line)}.trip-search-card .mobile-location-row .location-dropdown{margin-top:0}.trip-search-card .mobile-location-row .location-trigger{background:0 0;border:0;border-radius:14px;align-items:center;gap:10px;width:100%;height:52px;padding:0 14px;display:flex}.trip-search-card .mobile-location-row .location-trigger>svg{color:var(--text);flex-shrink:0;width:18px;height:18px}.trip-search-card .mobile-location-row .location-trigger>span:nth-child(2){color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.trip-search-card .mobile-location-row .location-trigger .placeholder{color:#8a9395;font-weight:400}.trip-search-card .mobile-location-row .location-chevron{display:none}.trip-search-card .mobile-swap{border:1px solid var(--line)!important;z-index:10!important;width:36px!important;height:36px!important;color:var(--brand)!important;cursor:pointer!important;background:#fff!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;margin:0!important;display:flex!important;position:absolute!important;top:50%!important;right:14px!important;transform:translateY(-50%)!important;box-shadow:0 3px 10px #00000017!important}.trip-search-card .mobile-swap svg{color:var(--brand);transform:rotate(90deg)}.trip-search-card .mobile-date-group{border:1px solid var(--line);background:#fff;border-radius:14px;height:54px}.trip-search-card .mobile-date-group.one-way{justify-content:space-between;align-items:center;padding:0 16px;display:flex}.trip-search-card .mobile-date-group.has-return{grid-template-columns:1fr 1fr;padding:0;display:grid;overflow:hidden}.trip-search-card .mobile-date-btn{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.trip-search-card .mobile-date-btn svg{width:18px;height:18px;color:var(--text);flex-shrink:0}.trip-search-card .mobile-date-num{color:var(--text);letter-spacing:-.02em;font-family:Rubik,sans-serif;font-size:22px;font-weight:600;line-height:1}.trip-search-card .mobile-date-meta{color:var(--muted);flex-direction:column;font-size:11px;font-weight:600;line-height:1.15;display:flex}.trip-search-card .mobile-return-prompt{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:14.5px;font-weight:600}.trip-search-card .mobile-date-group.has-return .depart-btn{border-right:1px solid var(--line);height:100%;padding:0 12px}.trip-search-card .mobile-date-group.has-return .return-btn{height:100%;padding:0 12px;position:relative}.trip-search-card .mobile-date-clear{width:22px;height:22px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;margin-left:auto;display:flex}.trip-search-card .mobile-date-clear:hover{background:var(--soft);color:var(--text)}.trip-search-card .mobile-passenger-row{border:1px solid var(--line);height:54px;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:12px;width:100%;padding:0 16px;font-size:14.5px;font-weight:600;display:flex}.trip-search-card .mobile-passenger-row svg{color:var(--text);flex-shrink:0;width:18px;height:18px}.trip-search-card .mobile-search-submit{cursor:pointer;background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:12px!important;justify-content:center!important;align-items:center!important;gap:8px!important;width:100%!important;height:50px!important;font-size:15px!important;font-weight:700!important;display:flex!important;box-shadow:0 6px 18px #1e95b952!important}.trip-rail h3{margin:0 0 18px;font-size:19px}.trip-step{border-top:1px solid var(--line);grid-template-columns:32px 1fr;gap:12px;padding:14px 0;display:grid}.trip-step:first-of-type{border-top:0;padding-top:0}.trip-step-no{background:var(--soft);width:28px;height:28px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.trip-step-active .trip-step-no{background:var(--brand);color:#fff}.trip-step-done .trip-step-no{color:#0f2a1e;background:#b4e584}.trip-step strong{font-size:15px;display:block}.trip-meta,.trip-picked{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.5}.trip-picked{color:var(--brand);font-weight:600}.trip-change{color:var(--brand);border:1px solid var(--line);border-radius:8px;margin-top:10px;padding:7px 12px;font-size:12px;font-weight:600;display:inline-block}.results-layout{grid-template-columns:300px minmax(0,1fr);align-items:stretch;gap:24px;display:grid}.results-side{align-content:start;gap:18px;display:grid}.results-main{flex-direction:column;display:flex}.results-main .results-empty{flex:1}.results-side .filter-block{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:22px}.filter-block-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.filter-block h3{align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.filter-active-pill{background:var(--brand);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.filter-reset-inline{color:var(--brand);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 6px;font-size:12.5px;font-weight:600}.filter-reset-inline:hover{background:var(--soft);text-decoration:underline}.filter-controls-inner{flex-direction:column;gap:18px;display:flex}.filter-group{border-bottom:1px solid #f1f5f9;padding-bottom:16px}.filter-group:last-child{border-bottom:0;padding-bottom:0}.filter-label{color:var(--text);text-transform:none;letter-spacing:-.01em;margin:0 0 10px;font-size:13px;font-weight:700}.filter-check{color:var(--text);cursor:pointer;align-items:center;gap:10px;padding:4px 0;font-size:13px;display:flex}.filter-check input{width:16px;height:16px;accent-color:var(--brand);flex-shrink:0}.filter-check-perk{justify-content:space-between;align-items:center;padding:6px 0;display:flex}.filter-perk-badge{color:#fff;border-radius:4px;align-items:center;gap:6px;padding:6px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.filter-range{width:100%;accent-color:var(--brand)}.filter-price-labels{color:var(--muted);justify-content:space-between;align-items:center;margin-top:6px;font-size:12px;display:flex}.filter-price-max{color:var(--brand);font-weight:600}.filter-amenities-list{gap:4px;max-height:240px;padding-right:4px;display:grid;overflow-y:auto}.filter-amenity-item{color:var(--text);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;transition:background .15s;display:flex}.filter-amenity-item:hover{background:var(--soft)}.filter-amenity-item.is-selected{background:#eef8fb;font-weight:600}.filter-amenity-item input{width:15px;height:15px;accent-color:var(--brand);flex-shrink:0}.filter-amenity-icon{width:20px;height:20px;color:var(--brand);flex-shrink:0;place-items:center;display:inline-grid}.filter-amenity-icon svg{width:15px;height:15px}.filter-amenity-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.filter-count-badge{color:var(--muted);flex-shrink:0;margin-left:auto;font-size:11px}.filter-reset{border:1px solid var(--line);width:100%;height:38px;color:var(--brand);cursor:pointer;background:#fff;border-radius:6px;margin-top:16px;padding:0;font-size:13px;font-weight:600;transition:all .15s}.filter-reset:hover{border-color:var(--brand);background:#f0fdfa}.mobile-bottom-bar,.mobile-filter-overlay{display:none}.mobile-filter-drawer{border-radius:12px 12px 0 0!important}.mobile-filter-close-btn{border-radius:8px!important}.filter-perk-badge{border-radius:4px!important}.filter-perk-free-cancel{color:#fff!important;background:#10b981!important;border:0!important}.filter-perk-instant-conf{color:#fff!important;background:#2563eb!important;border:0!important}.filter-perk-instant-conf svg{color:#fff!important}@keyframes filterFadeIn{0%{opacity:0}to{opacity:1}}@keyframes filterSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.results-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:16px;display:flex}.results-toolbar p{color:var(--muted);margin:0;font-size:14px}.results-sort{color:var(--muted);align-items:center;gap:9px;font-size:13px;display:inline-flex}.results-sort select{border:1px solid var(--line);background:#fff;border-radius:9px;height:42px;padding:0 12px}.results-empty{text-align:center;min-height:320px;color:var(--muted);border:1px dashed var(--line);background:var(--soft);border-radius:16px;place-content:center;gap:6px;padding:40px 24px;display:grid}.results-empty strong{color:var(--text);font-size:17px;display:block}.result-card{border:1px solid var(--line);box-shadow:var(--shadow);z-index:1;background:#fff;border-radius:16px;grid-template-columns:200px minmax(0,1fr) 180px;align-items:stretch;gap:24px;margin-bottom:16px;padding:0;display:grid;position:relative}.result-card:has(.times.is-open){z-index:40}.result-badge{letter-spacing:.03em;z-index:2;border-radius:0 15px 0 12px;padding:7px 16px;font-size:11px;font-weight:700;position:absolute;top:0;right:0}.result-badge-cheapest{color:#fff;background:#d9a441}.result-badge-fastest{color:#0f2a1e;background:#b4e584}.result-thumb{background:#dfeff3;border-radius:15px 0 0 15px;align-self:stretch;min-height:160px;position:relative;overflow:hidden}.result-thumb img{object-fit:cover}.result-middle{flex-direction:column;justify-content:space-between;gap:16px;min-width:0;padding:22px 0;display:flex}.result-middle-top{align-items:center;gap:28px;display:flex}.result-boat{flex:none;min-width:130px;max-width:180px}.result-boat h3{color:var(--text);margin:0;font-size:18px;font-weight:700;line-height:1.3}.result-rating{color:#c98a00;align-items:center;gap:5px;margin:6px 0 0;font-size:12.5px;font-weight:600;display:flex}.result-rating span{color:var(--muted);font-weight:400}.result-leg{flex:1;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;max-width:380px;padding:0;display:grid}.result-time strong{letter-spacing:-.01em;font-size:21px;line-height:1.2;display:block}.result-time small{color:var(--muted);margin-top:6px;font-size:12.5px;display:block}.result-time-end{text-align:right}.result-track{flex-direction:column;align-items:center;gap:6px;min-width:0;display:flex}.result-duration{color:var(--muted);font-size:12px}.result-line{background:#c9d3d6;width:100%;min-width:60px;height:2px;display:block;position:relative}.result-line:before,.result-line:after{content:"";background:var(--brand);border-radius:50%;width:8px;height:8px;position:absolute;top:-3px}.result-line:before{left:0}.result-line:after{right:0}.result-direct{color:var(--brand);font-size:11.5px;font-weight:600}.result-middle-bottom{border-top:1px solid #f1f5f9;flex-direction:column;gap:10px;padding-top:14px;display:flex}.result-side-action{text-align:right;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:46px 24px 22px 0;display:flex}.result-fare{text-align:right;padding:0}.result-was{color:var(--muted);margin-bottom:4px;font-size:13.5px;text-decoration:line-through;display:block}.result-fare b{color:var(--brand);letter-spacing:-.01em;font:700 25px/1.2 Rubik;display:block}.result-child{color:var(--muted);margin-top:6px;font-size:12.5px;display:block}.result-action-buttons{justify-content:flex-end;align-items:center;gap:8px;width:100%;display:flex}.result-detail-btn{color:#475569;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:8px 16px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.result-detail-btn:hover{border-color:var(--brand);color:var(--brand);background:#f0fdfa}.result-choose{white-space:nowrap;border-radius:8px;justify-content:center;min-height:42px;padding:8px 20px;font-size:13.5px;font-weight:700}.included-row{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.included-label{color:var(--muted);font-size:13px;font-weight:600}.included-items{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.included-chip{border:1px solid var(--line);width:30px;height:30px;color:var(--brand);background:#f7fbff;border-radius:5px;place-items:center;display:grid}.included-more{font-size:12px;font-weight:700}.included-perk{color:#1f8a4c;align-items:center;gap:5px;font-size:13px;font-weight:600;display:inline-flex}.included-perk svg{color:#1f8a4c}.times{margin-top:10px;position:relative}.times-toggle{border:1px solid var(--line);min-height:38px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:8px;padding:6px 14px;font-size:13.5px;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.times-toggle:hover{border-color:var(--brand);color:var(--brand)}.times.is-open .times-toggle{border-color:var(--brand);color:var(--brand);box-shadow:0 0 0 3px #1e95b91f}.times.is-open .times-toggle svg{transform:rotate(180deg)}.times-toggle svg{transition:transform .18s}.times-backdrop{z-index:45;background:#00000014;position:fixed;inset:0}.times-panel{z-index:50;border:1px solid var(--line);background:#fff;border-radius:16px;width:480px;max-width:min(90vw,540px);padding:18px 20px 14px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 16px 48px #0f2a3633,0 2px 8px #0000000f}.times-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.times-title{color:var(--text);margin:0;font-size:16px;font-weight:600}.times-head-actions{align-items:center;gap:10px;display:flex}.times-close-btn{color:#64748b;cursor:pointer;background:#f1f5f9;border:0;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:700;transition:all .15s;display:flex}.times-close-btn:hover{color:#0f172a;background:#e2e8f0}.times-tabs{border:1px solid var(--brand);border-radius:999px;display:inline-flex;overflow:hidden}.times-tabs button{color:var(--text);cursor:pointer;background:#fff;border:0;padding:6px 16px;font-size:13px;font-weight:600}.times-tabs button.is-active{background:var(--brand);color:#fff}.times-head{letter-spacing:.06em;color:var(--muted);grid-template-columns:70px 1fr 70px;gap:14px;margin:16px 0 0;padding:0 0 8px;font-size:11px;font-weight:700;display:grid}.times-head span:last-child{grid-column:3}.times-row{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:70px 1fr 70px 18px auto 18px;align-items:center;gap:14px;width:100%;padding:12px 0;display:grid}.times-list .times-row{cursor:pointer}.times-list .times-row:hover{color:var(--brand)}.times-list.is-readonly .times-row{cursor:default;opacity:.72}.times-row strong{font-size:17px}.times-line{background:var(--line);height:1px}.times-instant{color:#3d5afe;place-items:center;width:18px;display:inline-grid}.times-price{white-space:nowrap;font-size:13.5px;font-weight:600}.times-price small{color:var(--muted);margin-left:2px;font-weight:400}.times-go{color:var(--brand);font-weight:700}.times-note{color:var(--muted);margin:10px 0 2px;font-size:12.5px}.review-modal{width:min(620px,100%)}.review-leg{margin-bottom:18px}.review-leg-head{align-items:flex-start;gap:12px;display:flex}.review-step{background:var(--brand);color:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:flex}.review-leg-head strong{font-size:15px;display:block}.review-leg-head small{color:var(--muted);margin-top:3px;font-size:12.5px;display:block}.review-leg-body{grid-template-columns:minmax(90px,1fr) auto minmax(60px,auto) auto;align-items:center;gap:12px;margin:12px 0 0 40px;display:grid}.review-boat{font-size:14px;font-weight:600}.review-time strong{font-size:17px;display:block}.review-time small{color:var(--muted);font-size:11.5px;display:block}.review-time-end{text-align:right}.review-track{color:var(--muted);flex-direction:column;align-items:center;font-size:11px;display:flex}.review-track em{color:var(--brand);font-style:normal;font-weight:600}.review-totals{margin:0 0 22px}.review-totals div{justify-content:space-between;gap:16px;padding:7px 0;font-size:14px;display:flex}.review-totals dt{color:var(--muted);margin:0}.review-totals dd{margin:0;font-weight:600}.review-grand{border-top:1px solid var(--line);margin-top:8px;padding-top:14px!important;font-size:16px!important}.review-grand dd{color:var(--brand);font:700 20px Rubik}.upsell-return-card{background:linear-gradient(135deg,#f0fdf4,#e0f2fe);border:1.5px solid #bae6fd;border-radius:16px;margin-top:16px;padding:18px 20px}.upsell-return-head{margin-bottom:12px}.upsell-return-badge{color:#0369a1;background:#fff;border:1px solid #e0f2fe;border-radius:999px;align-items:center;gap:6px;margin-bottom:8px;padding:4px 10px;font-size:11.5px;font-weight:700;display:inline-flex}.upsell-return-badge svg{width:12px;height:12px}.upsell-return-head h4{color:#0f2a36;margin:0 0 4px;font:700 16px Rubik}.upsell-return-head p{color:#475569;margin:0;font-size:13px;line-height:1.45}.upsell-return-form{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.upsell-date-field{background:#fff;border:1px solid #cbd5e1;border-radius:10px;flex:1;align-items:center;gap:8px;min-width:200px;padding:6px 14px;display:flex}.upsell-date-field svg{color:var(--brand);flex-shrink:0;width:18px;height:18px}.upsell-date-field label{flex-direction:column;gap:2px;width:100%;display:flex}.upsell-date-field label span{color:#64748b;text-transform:uppercase;font-size:11px;font-weight:700}.upsell-date-field label input{color:#0f172a;cursor:pointer;background:0 0;border:0;outline:none;padding:0;font-size:14px;font-weight:600}.upsell-return-btn{white-space:nowrap;color:#fff;cursor:pointer;background:#0284c7;border:0;border-radius:10px;min-height:48px;padding:0 18px;font-size:13.5px;font-weight:700;transition:all .15s}.upsell-return-btn:hover{background:#0369a1}.modal-dual-actions{flex-direction:column;gap:10px;width:100%;display:flex}.modal-oneway-btn{border:1.5px solid var(--line);color:#475569;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:100%;height:46px;font-size:14px;font-weight:700;transition:all .15s;display:flex}.modal-oneway-btn:hover{border-color:var(--brand);color:var(--brand);background:var(--soft)}.plan-ride-modal{background:#fff;border:1px solid #e2e8f0;border-radius:16px;width:min(440px,94vw);padding:24px 22px;position:relative;box-shadow:0 12px 36px #0f172a1f}.plan-ride-container{flex-direction:column;display:flex}.plan-ride-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.plan-ride-head h2{color:#0f172a;letter-spacing:-.01em;margin:0;font:700 22px Rubik,sans-serif}.plan-ride-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:0;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;transition:all .15s;display:flex}.plan-ride-close:hover{color:#0f172a;background:#e2e8f0}.plan-ride-body{flex-direction:column;gap:16px;display:flex}.plan-section{flex-direction:column;gap:7px;display:flex}.plan-label{color:#475569;margin:0;font-size:13px;font-weight:600}.plan-input-row{grid-template-columns:1fr 1fr;align-items:center;gap:10px;display:grid}.plan-date-box{color:#1e293b;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:space-between;align-items:center;height:44px;padding:0 12px;font-size:14px;font-weight:500;display:flex;position:relative}.plan-date-box svg{color:#64748b;flex-shrink:0;width:16px;height:16px}.plan-date-input-wrap input.plan-hidden-date-input{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute;inset:0}.plan-select-wrap{background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;align-items:center;height:44px;display:flex;position:relative}.plan-select{color:#1e293b;appearance:none;cursor:pointer;background:0 0;border:0;outline:none;width:100%;height:100%;padding:0 30px 0 12px;font-size:14px;font-weight:600}.plan-select-wrap svg{pointer-events:none;color:#64748b;width:15px;height:15px;position:absolute;right:10px}.plan-add-return-btn{color:#0284c7;cursor:pointer;background:0 0;border:0;align-self:flex-start;margin-top:2px;padding:2px 0;font-size:13.5px;font-weight:600}.plan-add-return-btn:hover{text-decoration:underline}.plan-return-section{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;flex-direction:column;gap:8px;margin-top:4px;padding:12px;display:flex}.plan-return-head-row{justify-content:space-between;align-items:center;display:flex}.plan-remove-return-btn{color:#ef4444;cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:600}.plan-no-return-note{color:#64748b;align-items:center;height:44px;font-size:12px;display:flex}.plan-other-return-link{color:#0284c7;cursor:pointer;text-align:left;background:0 0;border:0;padding:2px 0;font-size:12.5px;font-weight:600}.plan-other-return-link:hover{text-decoration:underline}.plan-pax-category-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.plan-cat-btn{color:#475569;cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;gap:8px;height:44px;font-size:14px;font-weight:600;transition:all .15s;display:flex}.plan-cat-btn.is-active{color:#0284c7;background:#f0f9ff;border-color:#0284c7;font-weight:700}.plan-pax-dropdown-container{position:relative}.plan-pax-trigger{color:#1e293b;cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:space-between;align-items:center;width:100%;height:44px;padding:0 14px;font-size:14px;font-weight:600;display:flex}.plan-pax-trigger svg{color:#64748b;width:15px;height:15px}.plan-pax-popover{z-index:50;background:#fff;border:1px solid #cbd5e1;border-radius:10px;flex-direction:column;gap:12px;padding:14px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 10px 25px #0000001a}.plan-pax-row{justify-content:space-between;align-items:center;display:flex}.plan-pax-row strong{color:#1e293b;font-size:13.5px;display:block}.plan-pax-row small{color:#64748b;font-size:11.5px;display:block}.plan-counter-ctrl{align-items:center;gap:10px;display:flex}.plan-counter-ctrl button{color:#1e293b;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:flex}.plan-counter-ctrl button:disabled{opacity:.35;cursor:not-allowed}.plan-counter-ctrl span{text-align:center;color:#0f172a;width:18px;font-size:14px;font-weight:700}.plan-pax-done-btn{color:#fff;cursor:pointer;background:#0284c7;border:0;border-radius:6px;height:34px;margin-top:4px;font-size:13px;font-weight:700}.plan-fares-list{flex-direction:column;gap:8px;display:flex}.plan-fare-card{cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 14px;transition:all .15s;display:flex}.plan-fare-card.is-selected{background:#f8fafc;border-color:#0284c7;box-shadow:inset 0 0 0 1px #0284c7}.plan-fare-info strong{color:#0f172a;align-items:center;gap:4px;font-size:14px;font-weight:700;display:flex}.plan-info-icon{color:#64748b;cursor:help;font-size:13px;font-weight:400}.plan-fare-info p{color:#64748b;margin:3px 0 0;font-size:11.5px}.plan-fare-price{text-align:right}.plan-fare-price b{color:#0f172a;font-family:Rubik,sans-serif;font-size:15.5px;font-weight:700;display:block}.plan-fare-price small{color:#94a3b8;margin-top:1px;font-size:11px;display:block}.plan-continue-btn{color:#fff;cursor:pointer;background:#0284c7;border:0;border-radius:8px;width:100%;height:48px;margin-top:4px;font-size:15px;font-weight:700;transition:background .15s}.plan-continue-btn:hover{background:#0369a1}.plan-instant-confirmation{color:#0284c7;justify-content:center;align-items:center;gap:6px;margin-top:4px;font-size:13px;font-weight:600;display:flex}.plan-instant-confirmation svg{color:#0284c7;width:14px;height:14px}.breakdown-edit{color:var(--brand);cursor:pointer;background:0 0;border:0;font-size:11.5px;font-weight:700}.breakdown-edit:hover{text-decoration:underline}.breakdown-list{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.breakdown-list li{color:#334155;justify-content:space-between;font-size:13px;display:flex}.breakdown-list li b{color:#0f172a;font-weight:600}.modal-overlay{z-index:100;background:#0f191c99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-panel{background:#fff;border-radius:12px;width:min(480px,100%);padding:28px 30px;box-shadow:0 20px 40px -15px #00000040,0 0 0 1px #0000000d}.modal-head{align-items:center;gap:12px;margin-bottom:20px;display:flex}.modal-head h3{color:#0f172a;margin:0;font:600 20px Rubik}.modal-back{color:#475569;cursor:pointer;background:#f1f5f9;border:0;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:all .15s;display:flex}.modal-back:hover{color:#0f172a;background:#e2e8f0}.modal-continue{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:8px;width:100%;height:48px;margin-top:8px;font-size:14px;font-weight:700}.modal-divider{border-top:1px solid var(--line);margin:16px 0}.modal-total{color:#1e293b;justify-content:space-between;align-items:center;font-size:15px;font-weight:600;display:flex}.modal-total b{color:#0f172a;font-size:18px}.mobile-nav-panel{background:#fff;border-radius:20px 0 0 20px;flex-direction:column;gap:18px;width:min(320px,86vw);padding:24px 20px;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-8px 0 32px #00000026}.mobile-nav-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.mobile-nav-close{background:var(--soft);width:36px;height:36px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:flex}.mobile-nav-panel nav{flex-direction:column;gap:6px;display:flex}.mobile-nav-panel nav a{color:var(--text);border-radius:10px;align-items:center;padding:12px 14px;font-size:15px;font-weight:600;transition:background .15s,color .15s;display:flex}.mobile-nav-panel nav a:hover,.mobile-nav-panel nav a:active{background:var(--soft);color:var(--brand)}.mobile-nav-divider{border-top:1px solid var(--line);margin:2px 0}.mobile-nav-panel .locale{gap:10px;padding:4px 6px;display:flex}.mobile-nav-panel .header-login{text-align:center;border-radius:10px;justify-content:center;align-items:center;width:100%;height:48px;margin-top:auto;font-size:15px;font-weight:700;display:flex}@media (max-width:1250px){.result-card{grid-template-columns:160px minmax(0,1fr) 160px;gap:18px}.result-middle-top{grid-template-columns:1fr;gap:14px}.result-leg{gap:12px}}@media (max-width:1100px){:root{--section:80px}.section>.container{width:calc(100% - 72px)}.header-right,.header-nav{gap:16px}.search-card{margin-top:280px;position:relative;bottom:auto}.hero-media{min-height:1120px}.search-fields{grid-template-columns:1fr 44px 1fr}.search-fields label:nth-of-type(3),.search-fields label:nth-of-type(4),.passenger-trigger,.search-submit{grid-column:auto}.route-grid{grid-template-columns:repeat(2,1fr)}.boat-grid,.port-grid{grid-template-columns:repeat(3,1fr)}.port-track{grid-template-columns:none;grid-auto-columns:calc(33.3333% - 12px)}.port-nav-prev{left:-16px}.port-nav-next{right:-16px}.news-grid{grid-template-columns:repeat(2,1fr)}.boat-info{padding:20px 20px 22px}.boat-info h3{font-size:18px}.boat-footer b{font-size:22px}.results-layout{grid-template-columns:250px minmax(0,1fr)}.route-card{padding:30px 26px 26px}.route-place strong{font-size:20px}.route-place small{font-size:15px}.route-place{gap:6px}.route-meta li{font-size:15px}.news-intro{min-height:0}.hero-copy>p{padding-inline:30px;font-size:18px}}.search-fields-mobile{display:none}@media (max-width:720px){:root{--section:56px}.container{width:min(100% - 20px,1632px)}.section>.container{width:calc(100% - 36px)}.section h2{margin:0 0 8px;font-size:22px;line-height:1.3}.section-heading{margin-bottom:20px}.section-heading p,.operators>div>p,.news-intro p{font-size:13.5px;line-height:1.6}.site-header{height:62px}.header-nav,.menu{display:none!important}.header-right{align-items:center;gap:6px;display:flex}.locale{align-items:center;gap:4px;display:flex}.locale button{padding:6px}.locale-item>button{color:var(--text);border-radius:6px;align-items:center;gap:3px;padding:6px;font-size:12.5px;font-weight:600;display:inline-flex}.locale-item>button svg{width:14px;height:14px}.locale-menu{min-width:140px;top:calc(100% + 4px);left:auto;right:0}.header-login{border-radius:8px;justify-content:center;align-items:center;padding:6px 12px;font-size:13px;font-weight:600;line-height:1.2;display:inline-flex!important}.brand-mark{font-size:26px}.brand small{font-size:6px}.hero-media{background:#174b56;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;min-height:90vh;padding:28px 12px 20px;display:flex;position:relative;overflow:hidden}.hero-media-bg{border-radius:24px;position:absolute;inset:0;overflow:hidden}.hero-media-bg>img,.hero-media-bg .hero-image{object-fit:cover;object-position:center;display:block!important}.hero-media-bg .hero-video{display:none!important}.hero-media-bg .hero-shade{background:linear-gradient(#082b3673 0%,#082b36b3 100%);position:absolute;inset:0}.hero-copy{z-index:1;text-align:center;margin-bottom:18px;padding:0;position:relative}.hero h1{margin:0 0 8px;font-size:clamp(22px,6.5vw,30px);line-height:1.15}.hero-copy>p{opacity:.92;max-width:340px;margin:0 auto;padding:0 4px;font-size:13px;line-height:1.5}.search-card{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border-radius:18px;width:100%;margin:0;padding:16px 12px;position:relative;bottom:auto;left:auto;transform:none;box-shadow:0 8px 30px #0003}.transport-tabs{white-space:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:14px;margin-bottom:14px;padding-bottom:2px;overflow-x:auto}.transport-tabs::-webkit-scrollbar{display:none}.transport-tabs button{flex-shrink:0;padding:0 3px 10px;font-size:12.5px}.trip-tabs{gap:10px;margin-bottom:14px}.trip-tabs button{flex:1;min-width:0;padding:9px 12px;font-size:12.5px}.desktop-only-fields{display:none!important}.search-fields-mobile{flex-direction:column;width:100%;display:flex!important}.mobile-location-group{border:1px solid var(--line);background:#fff;border-radius:14px;position:relative;overflow:visible}.mobile-location-row{position:relative}.mobile-location-from{border-bottom:1px solid var(--line)}.mobile-location-row .location-dropdown{margin-top:0}.mobile-location-row .location-trigger{background:0 0;border:0;border-radius:14px;height:52px;padding:0 14px}.mobile-location-row .location-trigger>svg{color:var(--text);width:18px;height:18px}.mobile-location-row .location-trigger>span:nth-child(2){color:var(--text);font-size:14.5px;font-weight:500}.mobile-location-row .location-trigger .placeholder{color:#8a9395;font-weight:400}.mobile-location-row .location-chevron{display:none}.mobile-swap{border:1px solid var(--line)!important;z-index:10!important;width:36px!important;height:36px!important;color:var(--brand)!important;cursor:pointer!important;background:#fff!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;margin:0!important;display:flex!important;position:absolute!important;top:50%!important;right:14px!important;transform:translateY(-50%)!important;box-shadow:0 3px 10px #00000017!important}.mobile-swap svg{color:var(--brand);transform:rotate(90deg)}.mobile-date-group{border:1px solid var(--line);background:#fff;border-radius:14px;height:54px;margin-top:10px}.mobile-date-group.one-way{justify-content:space-between;align-items:center;padding:0 16px;display:flex}.mobile-date-group.has-return{grid-template-columns:1fr 1fr;padding:0;display:grid;overflow:hidden}.mobile-date-btn{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.mobile-date-btn svg{width:18px;height:18px;color:var(--text);flex-shrink:0}.mobile-date-num{color:var(--text);letter-spacing:-.02em;font-family:Rubik,sans-serif;font-size:22px;font-weight:600;line-height:1}.mobile-date-meta{color:var(--muted);flex-direction:column;font-size:11px;font-weight:600;line-height:1.15;display:flex}.mobile-return-prompt{color:var(--brand);cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:15px;font-weight:600}.mobile-date-group.has-return .depart-btn{border-right:1px solid var(--line);height:100%;padding:0 12px}.mobile-date-group.has-return .return-btn{height:100%;padding:0 12px;position:relative}.mobile-date-clear{width:22px;height:22px;color:var(--muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;margin-left:auto;display:flex}.mobile-date-clear:hover{background:var(--soft);color:var(--text)}.mobile-passenger-row{border:1px solid var(--line);height:54px;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:14px;align-items:center;gap:12px;width:100%;margin-top:10px;padding:0 16px;font-size:14.5px;font-weight:600;display:flex}.mobile-passenger-row svg{color:var(--text);flex-shrink:0;width:18px;height:18px}.mobile-search-submit{background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:12px!important;justify-content:center!important;align-items:center!important;width:100%!important;height:50px!important;margin-top:12px!important;font-size:15.5px!important;font-weight:700!important;display:flex!important;box-shadow:0 6px 18px #1e95b952!important}.why{padding-top:56px}.benefit-grid{grid-template-columns:1fr;gap:34px;margin-top:28px}.benefit-grid img{width:90px;height:90px}.benefit-grid h3{font-size:17px}.benefit-grid p{font-size:13px;line-height:1.5}.section-heading{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:16px}.section-heading>a{font-size:13px}.chips{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;margin-bottom:18px;padding-bottom:2px;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chips button{flex-shrink:0;padding:7px 16px;font-size:11px}.route-grid{grid-template-columns:repeat(2,1fr);gap:10px}.route-card{border-radius:14px;padding:30px 16px 16px}.promo{color:#0f2a1e;letter-spacing:.02em;z-index:2;background:#b4e584;border-radius:0 13px 0 10px;padding:3px 7px;font-size:9px;font-weight:700;position:absolute;top:0;right:0}.route-head{grid-template-columns:1fr auto 1fr;align-items:start;gap:8px;display:grid}.route-mid{flex-direction:column;align-items:center;padding-top:4px}.boat-facil{gap:2px 8px;margin-top:8px}.boat-facil-tag{height:auto;color:var(--muted);background:0 0;border:0;border-radius:0;padding:0;font-size:10px;font-weight:500}.boat-facil-tag:not(:last-of-type):after{content:"·";color:var(--muted-soft);margin-left:8px}.boat-facil-more{height:auto;color:var(--brand);background:0 0;border:0;border-radius:0;padding:0;font-size:10px;font-weight:600}.route-place strong{font-size:13.5px;line-height:1.15}.route-place small{font-size:10.5px}.route-place{gap:2px}.route-mid{gap:1px;padding-top:2px}.route-mid svg{width:10px;height:10px}.route-body{border-top:1px solid var(--soft);flex-direction:column;align-items:stretch;gap:8px;margin-top:auto;padding-top:8px}.route-meta li{grid-template-columns:13px 1fr;gap:5px;font-size:11px}.route-meta svg{width:12px;height:12px}.route-more{padding-bottom:0;font-size:12px}.boat-grid{grid-template-columns:repeat(2,1fr);gap:10px}.boat-card{border-radius:14px}.boat-media{aspect-ratio:4/3}.boat-info{padding:14px 16px 16px}.boat-info h3{margin-bottom:6px;font-size:13px;line-height:1.2}.boat-specs{gap:4px}.boat-specs li{grid-template-columns:13px 1fr;gap:5px;font-size:10.5px;line-height:1.2}.boat-specs li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.boat-specs svg{width:12px;height:12px}.boat-footer{border-top:1px solid var(--soft);flex-direction:row;justify-content:space-between;align-items:flex-end;gap:4px;margin-top:auto;padding-top:8px}.boat-footer small{font-size:7.5px;display:block}.boat-footer b{font-size:13.5px;display:block}.boat-footer a{white-space:nowrap;color:var(--brand);align-items:center;gap:2px;padding-bottom:1px;font-size:10.5px;font-weight:600;display:inline-flex}.port-track{scroll-snap-type:x mandatory;padding-inline:2px;grid-template-columns:none;grid-auto-columns:min(250px,72vw);grid-auto-flow:column;gap:12px;padding-bottom:4px;overflow-x:auto}.port-track::-webkit-scrollbar{display:none}.port-card{scroll-snap-align:start;border-radius:14px;height:270px}.port-nav{display:none}.port-card>div{padding:16px 14px;inset:50% 0 0}.port-card h3{font-size:15px}.port-card a{padding:7px 14px;font-size:11px}.operators{padding:56px 0 0}.operators h2{margin-bottom:6px;font-size:22px}.operators p{font-size:13px}.operator-marquee{margin-top:18px;padding:8px 0}.operators>div>div{gap:16px 20px;margin-top:16px}.operators img{width:86px;height:44px}.news{padding-bottom:56px}.news-grid{flex-direction:column;gap:14px;display:flex!important}.news-intro{text-align:center;align-items:center;margin-bottom:2px;padding-right:0}.news-intro h2{margin-bottom:8px;font-size:22px;line-height:1.3}.news-intro p{max-width:320px;font-size:13px;line-height:1.5}.news-intro .button{width:100%;height:44px;margin-top:14px;font-size:14px;font-weight:700}.news-track{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:6px;grid-auto-columns:calc(50% - 5px);grid-auto-flow:column;gap:10px;padding-inline:1px;overflow-x:auto;display:grid!important}.news-track::-webkit-scrollbar{display:none}.article-card{scroll-snap-align:start;border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;height:auto;padding-bottom:16px;display:flex;overflow:hidden}.article-card>div{aspect-ratio:16/10;height:auto;position:relative}.article-card h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;padding:10px 10px 6px;font-size:12.5px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.article-card>a{color:var(--brand);margin-top:auto;padding:0 10px;font-size:11px;font-weight:600}.search-hero{border-radius:18px;min-height:180px;margin-top:10px}.search-lead{font-size:20px}.results-layout{grid-template-columns:1fr}.result-card{border-radius:14px;grid-template-columns:1fr;gap:0;padding:0}.result-thumb{min-height:160px}.result-middle{padding:18px 18px 12px}.result-middle-top{grid-template-columns:1fr;gap:12px}.result-side-action{border-top:1px solid #f1f5f9;flex-direction:row;justify-content:space-between;align-items:center;width:100%;padding:12px 18px 18px}.result-fare{text-align:left}.result-choose{width:auto;min-width:120px;max-width:none}.results-empty{min-height:220px;padding:28px 18px}.trip-rail-head{margin-bottom:14px}.results-toolbar{margin-bottom:16px;padding-bottom:12px}.search-results{padding-bottom:100px!important}.results-side .filter-block{display:none!important}.mobile-bottom-bar{z-index:95;-webkit-backdrop-filter:blur(16px);padding:10px 16px max(12px,env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid #00000014;gap:12px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #0f2a361a;display:flex!important}.mobile-bottom-btn{cursor:pointer;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;height:48px;font-size:14px;font-weight:700;text-decoration:none;transition:all .15s;display:flex}.mobile-bottom-filter-btn{color:#1e293b;background:#fff;border:1.5px solid #cbd5e1;box-shadow:0 2px 6px #0000000a}.mobile-bottom-filter-btn:active{background:#f1f5f9;transform:scale(.98)}.mobile-filter-badge{background:var(--brand);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:800;display:flex}.mobile-bottom-booking-btn{background:var(--brand);border:1.5px solid var(--brand);color:#fff;box-shadow:0 4px 14px #1e95b959}.mobile-bottom-booking-btn:active{opacity:.9;transform:scale(.98)}.mobile-filter-overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;flex-direction:column;justify-content:flex-end;animation:.2s ease-out filterFadeIn;display:flex;position:fixed;inset:0}.mobile-filter-drawer{background:#fff;border-radius:24px 24px 0 0;flex-direction:column;width:100%;max-height:85vh;animation:.25s cubic-bezier(.16,1,.3,1) filterSlideUp;display:flex;box-shadow:0 -10px 40px #0003}.mobile-filter-header{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.mobile-filter-header-left{align-items:center;gap:8px;display:flex}.mobile-filter-header-left h3{color:var(--text);margin:0;font:700 18px Rubik,sans-serif}.mobile-filter-active-tag{color:var(--brand);background:#eef8fb;border-radius:6px;padding:3px 8px;font-size:12px;font-weight:600}.mobile-filter-header-right{align-items:center;gap:12px;display:flex}.mobile-filter-reset-text{color:var(--brand);cursor:pointer;background:0 0;border:0;font-size:13.5px;font-weight:600}.mobile-filter-close-btn{background:var(--soft);width:32px;height:32px;color:var(--muted);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;display:flex}.mobile-filter-body{-webkit-overflow-scrolling:touch;flex:1;padding:16px 20px 24px;overflow-y:auto}.mobile-filter-body .filter-amenities-list{max-height:none}.mobile-filter-footer{padding:14px 20px max(14px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;flex-shrink:0}.mobile-filter-apply-btn{background:var(--brand)!important;color:#fff!important;border:0!important;border-radius:12px!important;justify-content:center!important;align-items:center!important;width:100%!important;height:50px!important;font-size:15px!important;font-weight:700!important;display:flex!important;box-shadow:0 6px 18px #1e95b952!important}.times-panel{padding:14px 12px 10px}.times-panel-head{gap:10px}.times-row{grid-template-columns:56px 1fr 56px 16px auto;gap:10px}.times-row .times-go{display:none}.times-row strong{font-size:15px}.result-time strong{font-size:16px}.result-fare b{font-size:20px}.review-leg-body{grid-template-columns:1fr;gap:8px;margin-left:0}.review-time-end{text-align:left}footer{border-radius:24px;margin:0 8px 14px;padding:36px 16px 20px}.footer-top{text-align:center;flex-direction:column;gap:18px}.support{border-top:1px solid #ffffff40;border-left:0;justify-content:center;padding:14px 0 0}.footer-about{margin:18px auto;font-size:12.5px;line-height:1.55}footer nav{flex-wrap:wrap;justify-content:center;gap:10px 16px;margin:14px 0;font-size:12px}.copyright{text-align:center;flex-direction:column;gap:8px;padding-top:14px}.modal-panel{border-radius:18px;padding:20px 16px}.nationality-choices,.passenger-fields{grid-template-columns:1fr}}.datepicker-overlay{z-index:9999;-webkit-overflow-scrolling:touch;background:#fff;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.datepicker-panel{background:#fff;flex-direction:column;width:100%;max-width:540px;min-height:100%;margin:0 auto;display:flex}.datepicker-header{z-index:10;border-bottom:1px solid var(--line);background:#fff;align-items:center;padding:14px 16px;display:flex;position:sticky;top:0}.datepicker-back{cursor:pointer;color:var(--text);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:6px;display:flex}.datepicker-header h2{color:var(--text);text-align:center;flex:1;margin:0 24px 0 0;font-family:Rubik,sans-serif;font-size:18px;font-weight:700}.datepicker-weekdays{z-index:9;text-align:center;color:#8a9395;border-bottom:1px solid var(--line);background:#fff;grid-template-columns:repeat(7,1fr);padding:10px 16px;font-size:13px;font-weight:600;display:grid;position:sticky;top:53px}.datepicker-body{flex:1;padding:10px 16px 40px}.datepicker-month h3{text-align:center;color:var(--text);margin:24px 0 14px;font-family:Rubik,sans-serif;font-size:16px;font-weight:700}.datepicker-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.datepicker-cell{height:44px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;font-size:15px;font-weight:500;transition:background .15s;display:flex;position:relative}.datepicker-cell:disabled{color:#cbd5e1;cursor:not-allowed}.datepicker-cell.selected{background:var(--brand)!important;color:#fff!important;font-weight:700!important}.datepicker-cell.today{font-weight:700}.datepicker-today-dot{background:var(--brand);border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px}.header-login{background:var(--brand);color:#fff;border-radius:9px;padding:9px 16px}.auth-page{background:var(--soft);grid-template-columns:minmax(420px,46%) 1fr;min-height:100vh;display:grid}.auth-panel{padding:42px clamp(24px,6vw,110px)}.auth-brand{color:var(--brand);align-items:center;font:italic 700 36px Rubik;display:flex}.auth-brand span{font:700 16px/.8 Plus Jakarta Sans}.auth-brand small{letter-spacing:2px;margin-top:5px;font-size:6px;display:block}.auth-card{border:1px solid var(--line);max-width:480px;box-shadow:var(--shadow);background:#fff;border-radius:24px;margin:12vh auto 0;padding:42px}.auth-card h1{margin:0 0 10px;font:600 36px Rubik}.auth-card>p{color:var(--muted);line-height:1.6}.auth-form{gap:18px;margin-top:28px;display:grid}.auth-form label{font-size:14px;font-weight:600}.auth-form input{border:1px solid var(--line);background:var(--soft);border-radius:10px;width:100%;height:50px;margin-top:7px;padding:0 14px;display:block}.auth-form button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:10px;height:50px;font-weight:700}.auth-form button:disabled{opacity:.65;cursor:not-allowed}.form-message{border-radius:8px;min-height:20px;padding:8px 12px;font-size:13.5px;font-weight:600;margin:0!important}.form-message-success{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0}.form-message-error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.auth-footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);margin-top:24px;padding-top:20px}.auth-footer a,.auth-link{color:var(--brand);font-weight:700}.auth-link{text-align:right;font-size:13px;display:block}.auth-visual{color:#fff;background:linear-gradient(#0750681a,#0750686b),url(/images/home/hero-bg.png) 50%/cover;border-radius:40px 0 0 40px;margin:18px 18px 18px 0;position:relative}.auth-visual>div{position:absolute;bottom:8%;left:8%}.auth-visual strong{text-transform:uppercase;font:600 clamp(38px,4vw,70px) Rubik}.auth-visual p{font-size:20px}@media (max-width:850px){.auth-page{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{padding:28px 18px}.auth-card{margin-top:8vh;padding:28px}.auth-card h1{font-size:30px}}.account-page-wrapper{background:var(--soft);min-height:100vh;color:var(--text);padding-bottom:80px}.account-top-header{border-bottom:1px solid var(--line);z-index:40;background:#fff;position:sticky;top:0;box-shadow:0 1px 3px #00000005}.account-header-content{justify-content:space-between;align-items:center;height:72px;display:flex}.account-header-nav{align-items:center;gap:16px;display:flex}.account-header-link{color:var(--muted);border-radius:9px;align-items:center;gap:7px;padding:8px 14px;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.account-header-link:hover{background:var(--soft);color:var(--brand)}.account-user-pill{background:var(--soft);border:1px solid var(--line);border-radius:999px;align-items:center;gap:9px;padding:5px 14px 5px 6px;display:inline-flex}.account-user-avatar{background:linear-gradient(135deg,var(--brand),var(--brand));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-family:Rubik,sans-serif;font-size:14px;font-weight:700;display:flex}.account-user-pill-name{color:var(--text);font-size:14px;font-weight:700}.account-dashboard-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:28px;margin-top:32px;display:grid}.account-sidebar{flex-direction:column;gap:20px;display:flex}.account-nav-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:26px 20px;box-shadow:0 2px 8px #00000005}.account-nav-header{border-bottom:1px solid var(--line);padding-bottom:18px}@media (max-width:1100px){.trip-rail{display:none}.trip-rail.is-open{margin-bottom:16px;display:block}}.account-greeting{color:var(--text);letter-spacing:-.01em;margin:0 0 4px;font:700 22px Rubik}.account-subgreeting{color:var(--muted);margin:0;font-size:14px}.account-menu-list{flex-direction:column;gap:4px;margin-top:16px;display:flex}.account-menu-item{width:100%;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;padding:13px 14px;font-size:14px;font-weight:600;transition:all .15s;display:flex}.account-menu-item:hover{background:var(--soft);color:var(--text)}.account-menu-item.active{color:var(--brand-dark);background:#e8f4fb;font-weight:700}.account-menu-left{align-items:center;gap:12px;display:flex}.account-menu-icon{color:var(--muted);justify-content:center;align-items:center;transition:color .15s;display:flex}.account-menu-item.active .account-menu-icon{color:var(--brand)}.account-menu-chevron{color:var(--muted-soft);flex-shrink:0;transition:transform .15s}.account-menu-item:hover .account-menu-chevron{transform:translate(2px)}.account-menu-right{align-items:center;gap:8px;display:flex}.account-menu-badge{color:var(--brand);background:#e0f2fe;border-radius:10px;padding:2px 8px;font-size:12px;font-weight:700}.account-menu-tag{color:#c2410c;letter-spacing:.02em;text-transform:uppercase;background:#ffedd5;border-radius:9px;padding:2px 7px;font-size:11px;font-weight:700}.account-nav-footer{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.account-signout-btn{border:1.5px solid var(--brand);width:100%;height:46px;color:var(--brand);cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;font-size:14px;font-weight:700;transition:all .15s;display:flex}.account-signout-btn:hover{background:#fff5f2;box-shadow:0 2px 8px #ff572226}.account-app-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:24px 20px;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000005}.account-app-card:before{content:"";background:linear-gradient(180deg,var(--brand),#1e95b9);width:6px;position:absolute;top:0;bottom:0;left:0}.account-app-card-head h3{color:var(--text);margin:0 0 3px;font:700 17px Rubik}.account-app-card-head p{color:var(--muted);margin:0 0 16px;font-size:13px}.account-qr-showcase{border:1px solid var(--line);background:#fafbfc;border-radius:16px;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;display:flex}.account-qr-frame{border:1px solid var(--line);background:#fff;border-radius:10px;justify-content:center;align-items:center;width:82px;height:82px;padding:6px;display:flex;box-shadow:0 2px 6px #0000000a}.account-qr-code{width:100%;height:100%;color:var(--text)}.account-scan-callout{color:var(--text);flex-direction:column;align-items:center;gap:2px;display:flex}.account-arrow-curved{color:var(--text)}.account-scan-text{color:var(--text);font-family:Rubik,sans-serif;font-size:13px;font-weight:700}.account-main-content{flex-direction:column;gap:24px;display:flex}.account-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:34px 38px;box-shadow:0 2px 10px #00000005}.account-card-title{color:var(--text);letter-spacing:-.01em;margin:0 0 6px;font:700 22px Rubik}.account-card-desc{color:var(--muted);margin:0 0 24px;font-size:14px;line-height:1.5}.account-profile-form{flex-direction:column;gap:18px;margin-top:20px;display:flex}.account-form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.account-input-group{flex-direction:column;gap:6px;display:flex}.account-input-label{color:var(--muted);font-size:12px;font-weight:600}.account-input-field{border:1px solid var(--line);width:100%;height:48px;color:var(--text);background:#fff;border-radius:10px;outline:none;padding:0 16px;font-size:14px;transition:border-color .15s,box-shadow .15s}.account-input-field:focus{border-color:var(--brand);box-shadow:0 0 0 3px #1e95b91f}.account-input-field.readonly{background:var(--soft);color:var(--muted);cursor:not-allowed}.account-input-with-icon{align-items:center;display:flex;position:relative}.account-input-with-icon input{padding-right:90px}.account-verified-tag{color:#059669;background:#ecfdf5;border-radius:9px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;right:12px}.account-dob-grid{grid-template-columns:1fr 1.15fr 1.15fr;gap:8px;display:grid}.account-select-field{border:1px solid var(--line);width:100%;height:48px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;outline:none;padding:0 12px;font-size:14px;transition:border-color .15s}.account-select-field:focus{border-color:var(--brand);box-shadow:0 0 0 3px #1e95b91f}.account-checkbox-row{margin:6px 0 10px}.account-checkbox-label{color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:14px;display:inline-flex}.account-checkbox{width:18px;height:18px;accent-color:var(--brand);cursor:pointer;border-radius:9px}.account-personal-info-section{border-top:1px solid var(--line);margin-top:20px;padding-top:24px}.account-section-top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.account-sub-heading{color:var(--text);margin:0;font:700 17px Rubik}.account-privacy-link{color:var(--brand);font-size:14px;font-weight:600;text-decoration:underline}.account-privacy-link:hover{color:var(--brand-hover)}.account-info-box{border:1px solid var(--line);background:#fafbfc;border-radius:10px;margin-bottom:14px;padding:18px 22px}.account-delete-box{justify-content:space-between;align-items:center;gap:16px;display:flex}.account-box-text{color:var(--text);font-size:14px;font-weight:600}.account-btn-danger{color:#fff;cursor:pointer;white-space:nowrap;background:#dc2626;border:0;border-radius:9px;padding:10px 20px;font-size:14px;font-weight:700;transition:background .15s}.account-btn-danger:hover{background:#b91c1c}.account-activity-box{background:#fafbfc}.account-activity-title{color:var(--text);margin:0 0 4px;font:700 14.5px Rubik}.account-activity-text{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.account-support-link{color:var(--brand);font-weight:600;text-decoration:underline}.account-form-actions{justify-content:flex-end;margin-top:26px;display:flex}.account-btn-save{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;padding:14px 40px;font-size:15px;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 4px 14px #0284c74d}.account-btn-save:hover{background:var(--brand-hover);transform:translateY(-1px);box-shadow:0 6px 18px #ff572261}.account-btn-save:disabled{opacity:.65;cursor:not-allowed;transform:none}.account-toast{border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 20px;font-size:14px;font-weight:600;animation:.2s ease-out slideDown;display:flex}.toast-success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.toast-error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.account-bookings-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.account-btn-refresh{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#fff;border-radius:9px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.account-btn-refresh:hover{background:var(--soft)}.account-filter-row{border-bottom:1px solid var(--line);align-items:center;gap:8px;margin-bottom:22px;padding-bottom:12px;display:flex;overflow-x:auto}.account-filter-chip{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:9px;padding:7px 14px;font-size:14px;font-weight:600;transition:all .15s}.account-filter-chip:hover{background:var(--soft);color:var(--text)}.account-filter-chip.active{color:#c2410c;background:#ffedd5;font-weight:700}.account-cart-banner{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border:1.5px solid #bfdbfe;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:18px 22px;display:flex}.account-cart-banner.guest-mode{background:linear-gradient(135deg,#f0fdf4 0%,#e0f2fe 100%);border-color:#bae6fd}.account-cart-banner-info{flex:1}.account-cart-banner-info h3{color:var(--text);margin:6px 0 4px;font:700 17px Rubik,sans-serif}.account-cart-banner-info p{color:#334155;margin:0;font-size:13px;line-height:1.5}.account-cart-banner-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.account-cart-banner-btn{background:var(--brand);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:9px 18px;font-size:13px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.account-cart-banner-btn:hover{background:var(--brand-hover)}.account-cart-banner-btn.outline{color:var(--text);border:1px solid var(--line);background:#fff}.account-cart-banner-btn.outline:hover{background:var(--soft);border-color:var(--muted-soft)}.account-btn-remove{color:var(--muted-soft);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:4px 8px;font-size:12px;font-weight:500;transition:all .15s}.account-btn-remove:hover{color:#ef4444;background:#fef2f2}.account-guest-nudge{background:var(--soft);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding:18px 22px;display:flex}.account-guest-nudge-text strong{color:var(--text);margin-bottom:2px;font-size:14px;display:block}.account-guest-nudge-text p{color:var(--muted);margin:0;font-size:12px}.account-guest-nudge-btns{align-items:center;gap:8px;display:flex}.account-cart-tag{color:var(--brand);letter-spacing:.06em;font-size:11px;font-weight:800;display:inline-block}.account-booking-cart-action{background:#fefce8;border:1px solid #fef08a;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;display:flex}.cart-action-notice{color:#854d0e;align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:flex}.cart-action-notice svg{color:#ca8a04;flex-shrink:0}.account-btn-pay{background:var(--brand);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:9px;align-items:center;gap:6px;height:38px;padding:0 16px;font-size:13px;font-weight:700;transition:background .15s;display:inline-flex}.account-btn-pay:hover:not(:disabled){background:var(--brand-hover)}.account-btn-pay:disabled{opacity:.65;cursor:not-allowed}.account-booking-list{flex-direction:column;gap:16px;display:flex}.account-booking-item{border:1px solid var(--line);background:#fff;border-radius:16px;padding:20px 22px;box-shadow:0 2px 6px #00000005}.account-booking-item-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.account-booking-code-group{align-items:center;gap:8px;display:flex}.booking-code-sub{color:var(--muted);letter-spacing:.04em;font-size:11px;font-weight:700}.booking-code-main{color:var(--text);font-family:Rubik,sans-serif;font-size:16px;font-weight:700}.booking-pill{border-radius:20px;padding:4px 12px;font-size:12px;font-weight:700}.account-booking-item-details{grid-template-columns:repeat(3,1fr);gap:16px;padding:16px 0;display:grid}.booking-item-col{flex-direction:column;gap:3px;display:flex}.booking-item-sub{color:var(--muted);font-size:12px;font-weight:500}.booking-item-val{color:var(--text);font-size:14px;font-weight:600}.booking-item-price{color:var(--brand);font-family:Rubik,sans-serif;font-size:16px;font-weight:700}.account-booking-tickets{border-top:1px dashed var(--line);margin-top:4px;padding-top:12px}.ticket-details-summary{cursor:pointer;color:var(--brand);justify-content:space-between;align-items:center;font-size:14px;font-weight:600;list-style:none;display:flex}.ticket-details-summary::-webkit-details-marker{display:none}.ticket-details-accordion[open] .ticket-chevron{transform:rotate(180deg)}.ticket-list-cards{flex-direction:column;gap:8px;margin-top:12px;display:flex}.ticket-passenger-card{border:1px solid var(--line);background:#fafbfc;border-radius:10px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;display:flex}.ticket-pass-info{align-items:center;gap:10px;display:flex}.ticket-pass-icon{color:#0284c7;background:#e0f2fe;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.ticket-pass-name{color:var(--text);font-size:13.5px;display:block}.ticket-pass-num{color:#64748b;font-size:11px;display:block}.ticket-pass-code{flex-direction:column;gap:2px;display:flex}.ticket-pass-code span{color:#64748b;font-size:10.5px}.ticket-pass-code code{border:1px solid var(--line);background:#fff;border-radius:4px;padding:2px 6px;font-family:monospace;font-weight:600}.ticket-badge{border-radius:12px;padding:3px 10px;font-size:11.5px;font-weight:600}.ticket-badge.issued{color:#166534;background:#dcfce7}.ticket-badge.checked_in{color:#3730a3;background:#e0e7ff}.refer-container{flex-direction:column;gap:24px;display:flex}.refer-header{margin-bottom:2px}.refer-tab-content{flex-direction:column;gap:20px;display:flex}.refer-loading-wrap{min-height:240px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.refer-subtabs-nav{border-bottom:1.5px solid var(--line);scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:center;gap:4px;padding-bottom:0;display:flex;overflow-x:auto}.refer-subtabs-nav::-webkit-scrollbar{display:none}.refer-subtab-btn{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2.5px solid #0000;align-items:center;gap:8px;margin-bottom:-1.5px;padding:10px 18px 12px;font-size:13.5px;font-weight:600;transition:all .15s;display:inline-flex}.refer-subtab-btn:hover{color:var(--text)}.refer-subtab-btn.active{border-bottom-color:var(--brand);color:var(--brand);font-weight:700}.refer-subtab-chip{color:#475569;background:#f1f5f9;border-radius:20px;padding:1px 7px;font-size:11px;font-weight:700}.refer-subtab-btn.active .refer-subtab-chip{color:#0284c7;background:#e0f2fe}.refer-subtab-badge{color:#15803d;letter-spacing:.02em;background:#dcfce7;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:700}.refer-link-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:22px 24px}.refer-link-top{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.refer-link-kicker{letter-spacing:.06em;color:#0284c7;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.refer-link-sub{color:var(--muted);margin:0;font-size:13px}.refer-code-pill{text-align:right;white-space:nowrap;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;flex-shrink:0;padding:6px 14px}.refer-code-pill small{color:#64748b;font-size:10px;font-weight:700;display:block}.refer-code-pill strong{color:#0f172a;font-family:monospace;font-size:15px}.refer-input-group{align-items:center;gap:8px;margin-bottom:16px;display:flex}.refer-url-input{color:#0f172a;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:8px;flex:1;height:42px;padding:0 14px;font-family:monospace;font-size:13px}.refer-btn{cursor:pointer;white-space:nowrap;box-sizing:border-box;border:0;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:42px;padding:0 18px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.refer-btn-primary{background:var(--brand);box-shadow:0 2px 6px #0284c740;color:#fff!important}.refer-btn-primary:hover:not(:disabled){background:var(--brand-hover);box-shadow:0 4px 10px #0284c759}.refer-btn-outline{background:#fff;color:#1e293b!important;border:1.5px solid #cbd5e1!important}.refer-btn-outline:hover{background:#f8fafc;border-color:#94a3b8!important}.refer-share-row{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding-top:14px;display:flex}.refer-share-lbl{color:var(--muted);margin-right:4px;font-size:12.5px;font-weight:600}.refer-share-btn{border-radius:6px;align-items:center;padding:5px 12px;font-size:12px;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-flex}.refer-share-btn:hover{opacity:.88}.refer-share-btn.wa{color:#fff;background:#25d366}.refer-share-btn.tg{color:#fff;background:#08c}.refer-share-btn.tw{color:#fff;background:#0f172a}.refer-share-btn.fb{color:#fff;background:#1877f2}.refer-stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.refer-stat-card{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:flex-start;gap:14px;padding:18px 20px;display:flex;box-shadow:0 2px 4px #00000005}.refer-stat-card.highlight{background:#f0fdf4;border-color:#bbf7d0}.refer-stat-icon-wrap{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.refer-stat-icon-wrap.blue{color:#0284c7;background:#e0f2fe}.refer-stat-icon-wrap.green{color:#16a34a;background:#dcfce7}.refer-stat-icon-wrap.orange{color:#ea580c;background:#ffedd5}.refer-stat-icon-wrap.emerald{color:#059669;background:#d1fae5}.refer-stat-body{flex-direction:column;gap:2px;display:flex}.refer-stat-label{color:var(--muted);font-size:12px;font-weight:600}.refer-stat-value{color:#0f172a;font-family:Rubik,sans-serif;font-size:18px;font-weight:700}.refer-stat-sub{color:#64748b;font-size:11px}.refer-btn-withdraw-small{color:#fff;cursor:pointer;background:#059669;border:0;border-radius:5px;align-items:center;margin-top:6px;padding:3px 8px;font-size:11.5px;font-weight:700;transition:background .15s;display:inline-flex}.refer-btn-withdraw-small:hover{background:#047857}.refer-guide-card{border:1px solid var(--line);background:#fafbfc;border-radius:12px;padding:24px}.refer-guide-card h3{color:#0f172a;margin:0 0 18px;font:700 16px Rubik,sans-serif}.refer-guide-steps{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.refer-guide-step{flex-direction:column;gap:8px;display:flex}.refer-guide-step .step-num{color:#fff;background:#0284c7;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;font-weight:700;display:flex}.refer-guide-step h4{color:#0f172a;margin:0;font:700 14.5px Rubik,sans-serif}.refer-guide-step p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.55}.refer-analytics-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.refer-analytics-header h3{color:#0f172a;margin:0 0 4px;font:700 17px Rubik,sans-serif}.refer-analytics-header p{color:var(--muted);margin:0;font-size:13px}.refer-badge-ctr{color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:6px 14px;font-size:13px}.refer-table-wrap{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;overflow-x:auto}.refer-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.refer-table th{color:#475569;letter-spacing:.05em;border-bottom:1px solid var(--line);white-space:nowrap;background:#f8fafc;padding:12px 16px;font-size:11px;font-weight:700}.refer-table td{border-bottom:1px solid var(--line);color:#1e293b;vertical-align:middle;padding:14px 16px}.refer-table tr:last-child td{border-bottom:0}.refer-empty-cell{text-align:center;color:var(--muted);padding:36px 16px!important}.device-chip{color:#475569;background:#f1f5f9;border-radius:6px;padding:3px 8px;font-size:11.5px;font-weight:500;display:inline-block}.booking-code-chip{background:#f8fafc;border:1px solid #e2e8f0;border-radius:5px;padding:3px 7px;font-family:monospace;font-weight:700}.ref-badge{white-space:nowrap;border-radius:20px;padding:3px 9px;font-size:11.5px;font-weight:700;display:inline-block}.ref-status-pending{color:#c2410c;background:#ffedd5}.ref-status-available{color:#0369a1;background:#e0f2fe}.ref-status-paid{color:#15803d;background:#dcfce7}.ref-status-cancelled{color:#b91c1c;background:#fee2e2}.refer-balance-strip{color:#fff;background:linear-gradient(135deg,#0c4a6e 0%,#0284c7 100%);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex;box-shadow:0 8px 20px -4px #0284c759}.balance-lbl{letter-spacing:.08em;opacity:.85;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.balance-val{margin:4px 0 6px;font:700 28px Rubik,sans-serif}.balance-note{opacity:.9;font-size:12px}.marketing-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.marketing-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.marketing-preview-wrap{background:#0f172a;height:180px;position:relative}.marketing-tag{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;z-index:1;background:#0f172acc;border-radius:6px;padding:3px 8px;font-size:10.5px;font-weight:700;position:absolute;top:10px;left:10px}.marketing-body{flex-direction:column;flex:1;justify-content:space-between;gap:8px;padding:16px;display:flex}.marketing-body h4{color:#0f172a;margin:0;font:700 14.5px Rubik,sans-serif}.marketing-meta{color:var(--muted);font-size:12px}.marketing-actions{margin-top:6px}.copywriting-list{flex-direction:column;gap:14px;display:flex}.copywriting-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;padding:18px}.copywriting-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.copywriting-head strong{color:#0f172a;font-size:14.5px}.copywriting-text{color:#334155;white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:0;padding:14px;font-family:inherit;font-size:12.5px;line-height:1.55}.refer-qr-modal,.refer-payout-modal{box-sizing:border-box;background:#fff;border-radius:12px;width:100%;max-width:440px;padding:28px}.refer-qr-content{text-align:center}.refer-qr-content h3{color:#0f172a;margin:0 0 6px;font:700 18px Rubik,sans-serif}.refer-qr-content p{color:var(--muted);margin:0 0 18px;font-size:13px}.refer-qr-img-box{background:#fff;border:1px solid #e2e8f0;border-radius:10px;justify-content:center;align-items:center;margin-bottom:12px;padding:16px;display:inline-flex}.refer-qr-meta{color:#475569;margin-bottom:20px;font-size:13px}.refer-qr-actions{flex-direction:column;gap:8px;display:flex}.refer-payout-content h3{color:#0f172a;margin:0 0 6px;font:700 18px Rubik,sans-serif}.refer-payout-content p{color:var(--muted);margin:0 0 20px;font-size:13px}.payout-form{text-align:left;flex-direction:column;gap:14px;display:flex}.payout-form label{color:#334155;flex-direction:column;gap:5px;font-size:12.5px;font-weight:600;display:flex}.payout-form input,.payout-form select{color:#0f172a;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;height:40px;padding:0 12px;font-size:13px}.payout-form input:focus,.payout-form select:focus{border-color:#0284c7;outline:none}.payout-actions{grid-template-columns:1fr 1.6fr;gap:10px;margin-top:10px;display:grid}.payout-success-alert{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:12px;padding:16px;font-size:13.5px;font-weight:600;line-height:1.45;display:flex}@media (max-width:1024px){.refer-stats-grid{grid-template-columns:repeat(2,1fr);gap:14px}}@media (max-width:960px){.marketing-grid{grid-template-columns:repeat(2,1fr);gap:14px}.refer-balance-strip{flex-direction:column;align-items:flex-start;gap:16px}.refer-link-top{flex-direction:column;align-items:stretch;gap:12px}.refer-code-pill{text-align:left;align-self:flex-start}.refer-guide-steps{grid-template-columns:1fr;gap:16px}}@media (max-width:640px){.refer-container{gap:20px}.refer-tab-content{gap:16px}.refer-subtabs-nav{gap:0}.refer-subtab-btn{padding:8px 14px 10px;font-size:13px}.refer-link-card{padding:18px 16px}.refer-input-group{flex-direction:column;align-items:stretch;gap:8px}.refer-url-input{box-sizing:border-box;width:100%}.refer-btn{width:100%}.refer-stats-grid{grid-template-columns:1fr;gap:12px}.marketing-grid{grid-template-columns:1fr}.refer-analytics-header{flex-direction:column;align-items:flex-start;gap:10px}.refer-badge-ctr{align-self:flex-start}}.rewards-vouchers-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.reward-voucher-card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;justify-content:space-between;gap:16px;padding:22px;display:flex;box-shadow:0 2px 6px #00000005}.voucher-tag{color:#c2410c;letter-spacing:.04em;background:#ffedd5;border-radius:9px;margin-bottom:8px;padding:3px 8px;font-size:11px;font-weight:800;display:inline-block}.voucher-tag-blue{color:var(--brand);background:#e0f2fe}.voucher-left h3{color:var(--text);margin:0 0 6px;font:700 16px Rubik}.voucher-left p{color:var(--muted);margin:0 0 8px;font-size:13px;line-height:1.45}.voucher-left small{color:#94a3b8;font-size:12px}.voucher-right{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;padding-top:14px;display:flex}.voucher-code{border:1px solid var(--line);color:var(--text);background:#fafbfc;border-radius:9px;padding:4px 10px;font-family:monospace;font-size:14px;font-weight:700}.voucher-copy-btn{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:9px;padding:8px 16px;font-size:12px;font-weight:700;transition:background .15s}.voucher-copy-btn:hover{background:var(--brand-hover)}.account-empty-state{text-align:center;flex-direction:column;align-items:center;padding:48px 20px;display:flex}.account-empty-icon{background:var(--soft);width:72px;height:72px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.account-empty-state h3{color:var(--text);margin:0 0 6px;font:700 18px Rubik}.account-empty-state p{color:var(--muted);max-width:380px;margin:0 0 22px;font-size:14px;line-height:1.5}.account-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.account-modal-card{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:440px;padding:32px;animation:.2s ease-out modalPop;box-shadow:0 20px 40px #0003}@keyframes modalPop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.account-modal-icon.danger{color:#dc2626;background:#fee2e2;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;display:flex}.account-modal-card h3{color:var(--text);margin:0 0 8px;font:700 20px Rubik}.account-modal-card p{color:var(--muted);margin:0 0 24px;font-size:14px;line-height:1.55}.account-modal-actions{grid-template-columns:1fr 1fr;gap:12px;display:grid}.account-modal-btn{cursor:pointer;border-radius:10px;height:46px;font-size:14px;font-weight:700;transition:all .15s}.account-modal-btn.cancel{background:var(--soft);border:1px solid var(--line);color:var(--muted)}.account-modal-btn.cancel:hover{background:var(--line)}.account-modal-btn.delete{color:#fff;background:#dc2626;border:0}.account-modal-btn.delete:hover{background:#b91c1c}.account-loading-wrap{min-height:70vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.account-spinner{border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}.account-auth-required{background:#f8fafc;justify-content:center;align-items:center;min-height:calc(100vh - 280px);padding:48px 20px;display:flex}.auth-prompt-card{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;width:100%;max-width:460px;padding:36px 28px;box-shadow:0 10px 25px -5px #0f172a0f,0 8px 10px -6px #0f172a0a}.auth-prompt-icon{width:52px;height:52px;color:var(--brand);background:#e0f2fe;border-radius:10px;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.auth-prompt-card h2{color:#0f172a;letter-spacing:-.01em;margin:0 0 8px;font-family:Rubik,sans-serif;font-size:20px;font-weight:700}.auth-prompt-card p{color:#64748b;margin:0 0 24px;font-size:13.5px;line-height:1.55}.auth-prompt-actions{flex-direction:column;gap:10px;display:flex}.account-btn{cursor:pointer;box-sizing:border-box;border:0;border-radius:8px;justify-content:center;align-items:center;width:100%;height:42px;padding:0 18px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.account-btn-primary{background:var(--brand);box-shadow:0 2px 6px #0284c740;color:#fff!important}.account-btn-primary:hover{background:var(--brand-hover);box-shadow:0 4px 12px #0284c759}.account-btn-outline{background:#fff;color:#1e293b!important;border:1.5px solid #cbd5e1!important}.account-btn-outline:hover{background:#f8fafc;color:#0f172a!important;border-color:#94a3b8!important}.account-btn-subtle{background:#f1f5f9;color:#475569!important;border:1px solid #e2e8f0!important}.account-btn-subtle:hover{background:#e2e8f0;color:#0f172a!important}.guest-cart-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.guest-cart-kicker{letter-spacing:.08em;color:#0369a1;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.guest-cart-clear{color:#94a3b8;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 6px;font-size:12px;font-weight:600;transition:all .15s}.guest-cart-clear:hover{color:#dc2626;background:#fee2e2}.guest-cart-route{color:#0f172a;margin:0 0 4px;font-size:15px;font-weight:700;display:block}.guest-cart-note{line-height:1.5;color:#64748b!important;margin:10px 0 14px!important;font-size:12px!important}.guest-cart-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.guest-cart-actions .account-btn{border-radius:7px;height:36px;font-size:12.5px}@media (max-width:960px){.account-dashboard-layout{grid-template-columns:1fr;gap:20px}.account-card{padding:24px 20px}.account-form-grid{grid-template-columns:1fr}.refer-banner-card{flex-direction:column;align-items:flex-start}.refer-steps-grid,.rewards-vouchers-grid{grid-template-columns:1fr}.account-booking-item-details{grid-template-columns:1fr;gap:10px}.ticket-passenger-card{flex-direction:column;align-items:flex-start;gap:8px}}.port-detail-page{background:#f8fafc;padding-bottom:120px}.port-hero-section{padding-top:24px}.port-breadcrumbs{color:#64748b;align-items:center;gap:8px;margin-bottom:20px;font-size:13.5px;display:flex}.port-breadcrumbs a:hover{color:#0284c7}.port-breadcrumbs .current{color:#0f172a;font-weight:700}.port-hero-card{color:#fff;border-radius:28px;align-items:center;min-height:380px;padding:48px;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 36px #0000001f}.port-hero-bg{z-index:0;position:absolute;inset:0}.port-hero-bg img{object-fit:cover}.port-hero-overlay{background:linear-gradient(135deg,#082b36e0 0%,#0f172aa6 100%);position:absolute;inset:0}.port-hero-content{z-index:1;max-width:720px;position:relative}.port-hero-tag{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.04em;text-transform:uppercase;background:#fff3;border-radius:999px;margin-bottom:14px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-block}.port-hero-content h1{color:#fff;margin:0 0 12px;font-family:Rubik,sans-serif;font-size:clamp(32px,4.5vw,52px);font-weight:700;line-height:1.15}.port-hero-location{color:#e2e8f0;align-items:center;gap:8px;margin:0 0 28px;font-size:16px;display:flex}.port-quick-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.btn-book-port{color:#fff;background:#0284c7;border-radius:12px;align-items:center;gap:10px;padding:14px 28px;font-size:15px;font-weight:700;transition:background .15s;display:inline-flex}.btn-book-port:hover{background:#0369a1}.btn-directions-hero{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#ffffff26;border:1px solid #ffffff59;border-radius:12px;align-items:center;gap:8px;padding:14px 22px;font-size:14.5px;font-weight:600;transition:background .15s;display:inline-flex}.btn-directions-hero:hover{background:#ffffff40}.port-section-header{margin-bottom:28px}.port-section-header h2{color:#0f172a;margin:0 0 8px;font-family:Rubik,sans-serif;font-size:28px;font-weight:700}.port-section-header p{color:#64748b;margin:0;font-size:15px}.port-location-grid{grid-template-columns:1.15fr 1fr;gap:24px;display:grid}.port-info-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:32px;box-shadow:0 8px 24px #0f172a0a}.port-icon-banner{gap:18px;margin-bottom:20px;display:flex}.port-harbor-icon{color:#0284c7;background:#e0f2fe;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:58px;display:flex}.port-icon-banner h3{color:#0f172a;margin:0 0 6px;font-family:Rubik,sans-serif;font-size:20px;font-weight:700}.port-address-text{color:#475569;margin:0;font-size:14px;line-height:1.5}.port-desc-paragraph{color:#334155;margin:0 0 20px;font-size:14.5px;line-height:1.7}.port-boarding-box{background:#f8fafc;border-left:4px solid #0284c7;border-radius:0 12px 12px 0;margin-bottom:24px;padding:16px 18px}.port-boarding-box strong{color:#0f172a;margin-bottom:4px;font-size:13.5px;display:block}.port-boarding-box p{color:#64748b;margin:0;font-size:13px;line-height:1.55}.port-directions-link{color:#0284c7;align-items:center;gap:8px;font-size:14.5px;font-weight:700;display:inline-flex}.port-directions-link:hover{text-decoration:underline}.port-map-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;overflow:hidden;box-shadow:0 8px 24px #0f172a0a}.port-map-visual{background:#dbeafe;flex-direction:column;justify-content:space-between;height:100%;min-height:380px;padding:24px;display:flex;position:relative}.port-map-graphic{flex:1;justify-content:center;align-items:center;display:flex;position:relative}.port-map-pin{flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.pin-icon{color:#fff;z-index:2;background:#0284c7;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:relative;box-shadow:0 8px 20px #0284c766}.pin-pulse{background:#0284c740;border-radius:50%;width:56px;height:56px;animation:2s infinite mapPulse;position:absolute;top:-6px;left:50%;transform:translate(-50%)}@keyframes mapPulse{0%{opacity:.8;transform:translate(-50%)scale(.9)}to{opacity:0;transform:translate(-50%)scale(1.6)}}.pin-label{color:#fff;white-space:nowrap;background:#0f172a;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:700}.nearby-stations-widget{z-index:5;background:#fff;border-radius:16px;padding:18px;position:relative;box-shadow:0 10px 25px #00000014}.nearby-stations-widget h4{color:#0f172a;margin:0 0 12px;font-size:13.5px;font-weight:700}.nearby-stations-list{flex-direction:column;gap:8px;display:flex}.nearby-station-item{color:#1e293b;background:#f8fafc;border-radius:9px;align-items:center;gap:10px;padding:9px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.nearby-station-item:hover{color:#0284c7;background:#e0f2fe}.station-pin-icon{color:#0284c7;flex-shrink:0}.station-name{flex:1}.station-arrow{color:#94a3b8}.port-operators-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.port-operator-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;flex-direction:column;gap:14px;padding:24px;display:flex;box-shadow:0 6px 18px #0f172a08}.operator-card-header{align-items:center;height:52px;display:flex}.operator-fallback-badge{color:#0f172a;font-size:15px;font-weight:700}.operator-card-rating{align-items:center;gap:6px;display:flex}.operator-card-rating .stars{color:#f59e0b;letter-spacing:1px;font-size:14px}.rating-num{color:#0f172a;font-size:13.5px;font-weight:700}.review-count{color:#64748b;font-size:12px}.operator-card-footer{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;display:flex}.operator-lines-tag{color:#0284c7;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.operator-verified{color:#10b981;background:#ecfdf5;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700}.port-routes-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.port-route-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;justify-content:space-between;align-items:center;padding:22px 24px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;box-shadow:0 6px 18px #0f172a08}.port-route-card:hover{border-color:#0284c7;transform:translateY(-3px);box-shadow:0 12px 30px #0284c71f}.route-card-main strong{color:#0f172a;margin-bottom:4px;font-size:16px;display:block}.route-duration{color:#64748b;font-size:13px}.route-card-fare{text-align:right;align-items:center;gap:8px;display:flex}.fare-label{color:#64748b;font-size:12px}.fare-price{color:#0284c7;font-size:16px;font-weight:700}.route-arrow-icon{color:#0284c7;font-size:16px;transition:transform .15s}.port-route-card:hover .route-arrow-icon{transform:translate(4px)}.port-routes-empty{text-align:center;color:#64748b;background:#fff;border:1px dashed #cbd5e1;border-radius:16px;grid-column:1/-1;padding:40px}.destination-ports-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.destination-port-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden;box-shadow:0 8px 24px #0f172a0a}.destination-port-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px #0f172a17}.port-card-cover{background:#cbd5e1;height:180px;position:relative}.port-card-cover img{object-fit:cover}.port-card-badge{color:#fff;letter-spacing:.05em;background:#0284c7;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700;position:absolute;top:12px;left:12px}.port-card-info{flex-direction:column;flex:1;padding:22px;display:flex}.port-card-info h3{color:#0f172a;margin:0 0 8px;font-family:Rubik,sans-serif;font-size:18px;font-weight:700}.port-card-info p{color:#64748b;margin:0 0 16px;font-size:13.5px;line-height:1.55}.port-card-link{color:#0284c7;margin-top:auto;font-size:13.5px;font-weight:700}.faq-layout{grid-template-columns:1fr 1.8fr;align-items:start;gap:48px;display:grid}.faq-lead-title{color:#0f172a;margin:0 0 14px;font-family:Rubik,sans-serif;font-size:clamp(28px,3.5vw,42px);font-weight:400;line-height:1.2}.faq-lead-title strong{font-weight:700}.faq-lead-col p{color:#64748b;font-size:15px;line-height:1.6}.faq-accordion-col{flex-direction:column;gap:16px;display:flex}.faq-card-item{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px;box-shadow:0 4px 12px #0f172a05}.faq-card-q{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.faq-badge-q{color:#0284c7;flex-shrink:0;margin-top:2px}.faq-card-q h3{color:#0f172a;margin:0;font-size:16px;font-weight:700;line-height:1.35}.faq-card-a p{color:#475569;margin:0;font-size:14px;line-height:1.65}@media (max-width:1024px){.port-location-grid,.faq-layout{grid-template-columns:1fr;gap:32px}.port-operators-grid,.port-routes-grid,.destination-ports-grid{grid-template-columns:repeat(2,1fr)}}.boat-page-wrap,.bookaway-page-wrap{background:#f8fafc;min-height:100vh;padding:20px 0 80px}.boat-page-container,.boat-breadcrumbs{color:#64748b;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px;font-size:13px;display:flex}.boat-breadcrumbs a{color:#64748b;text-decoration:none;transition:color .15s}.boat-breadcrumbs a:hover{color:var(--brand)}.boat-breadcrumbs .current{color:#0f172a;font-weight:600}.boat-unified-grid,.bookaway-content-grid{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:32px;display:grid}.boat-unified-left{flex-direction:column;gap:28px;min-width:0;display:flex}.boat-header-meta{flex-direction:column;gap:8px;display:flex}.boat-badges-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.boat-tag{color:#0369a1;letter-spacing:.02em;text-transform:uppercase;background:#e0f2fe;border-radius:6px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.boat-verified-tag{color:#15803d;background:#dcfce7;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.boat-verified-tag svg{width:14px;height:14px}.boat-main-title{color:#0f172a;letter-spacing:-.01em;margin:4px 0 2px;font:700 32px Rubik,-apple-system,sans-serif}.boat-submeta-row{color:#475569;flex-wrap:wrap;align-items:center;gap:16px;font-size:14px;display:flex}.boat-rating-badge{color:#0f172a;align-items:center;gap:5px;display:inline-flex}.boat-rating-badge svg{color:#eab308;width:16px;height:16px}.boat-rating-badge strong{font-weight:700}.boat-rating-badge span{color:#64748b;font-size:13px}.boat-location-meta{color:#64748b;align-items:center;gap:5px;display:inline-flex}.boat-location-meta svg{color:var(--brand);width:16px;height:16px}.boat-gallery-block{flex-direction:column;gap:12px;display:flex}.boat-main-photo-wrap{aspect-ratio:16/9;background:#e2e8f0;border-radius:16px;width:100%;max-height:480px;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000000f}.boat-main-photo{object-fit:cover;transition:transform .3s}.boat-photo-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#0f172abf;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;position:absolute;bottom:16px;right:16px}.boat-photo-nav{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#0f172a;cursor:pointer;background:#ffffffe6;border:1px solid #00000014;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:24px;transition:all .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 12px #00000026}.boat-photo-nav:hover{background:#fff;transform:translateY(-50%)scale(1.05)}.boat-photo-prev{left:16px}.boat-photo-next{right:16px}.boat-slider-dots{justify-content:center;align-items:center;gap:6px;display:flex}.slider-dot{cursor:pointer;background:#cbd5e1;border:0;border-radius:50%;width:8px;height:8px;padding:0;transition:all .2s}.slider-dot.is-active{background:var(--brand);border-radius:999px;width:24px}.boat-nav-tabs{scrollbar-width:none;background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:8px;padding:6px;display:flex;overflow-x:auto}.boat-nav-tabs::-webkit-scrollbar{display:none}.tab-btn{color:#475569;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 16px;font-size:13.5px;font-weight:600;transition:all .15s}.tab-btn:hover{color:var(--brand);background:#f1f5f9}.tab-btn.is-active{background:var(--brand);color:#fff}.boat-section{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:20px;padding:28px 32px;display:flex;box-shadow:0 2px 10px #00000005}.boat-section h2{color:#0f172a;margin:0;font:700 22px Rubik,sans-serif}.boat-lead-desc{color:#475569;margin:0;font-size:14.5px;line-height:1.65}.boat-highlights-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.highlight-card{background:#f8fafc;border:1px solid #f1f5f9;border-radius:12px;align-items:center;gap:14px;padding:16px;display:flex}.highlight-icon{color:#0284c7;background:#e0f2fe;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.highlight-icon svg{width:20px;height:20px}.highlight-card strong{color:#0f172a;font-size:14.5px;display:block}.highlight-card p{color:#64748b;margin:2px 0 0;font-size:12.5px}.timetable-header{border-bottom:1px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:16px;display:flex}.timetable-header p{color:#64748b;margin:4px 0 0;font-size:13.5px}.date-quick-picker{align-items:center;gap:8px;display:flex}.date-quick-picker label{color:#475569;font-size:12.5px;font-weight:600}.date-quick-picker input{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;height:38px;padding:0 10px;font-size:13.5px}.timetable-list{flex-direction:column;gap:12px;display:flex}.timetable-item-card{cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;grid-template-columns:minmax(260px,1.4fr) minmax(180px,1fr) auto;align-items:center;gap:20px;padding:16px 20px;transition:all .15s;display:grid}.timetable-item-card:hover{border-color:var(--brand);background:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 14px #0000000a}.timetable-item-card.is-selected{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand);background:#f0f9ff}.timetable-time-col{align-items:center;gap:14px;display:flex}.time-block{flex-direction:column;display:flex}.time-block strong{color:#0f172a;font:700 18px Rubik,sans-serif}.time-block span{color:#64748b;white-space:nowrap;font-size:12px}.time-arrow{flex-direction:column;flex:1;align-items:center;min-width:90px;display:flex}.duration-tag{color:#64748b;font-size:11px;font-weight:700}.arrow-line{color:var(--brand);justify-content:center;align-items:center;width:100%;display:flex}.arrow-line svg{width:18px;height:18px}.direct-tag{color:#059669;font-size:10.5px;font-weight:600}.timetable-boat-col{flex-direction:column;gap:2px;display:flex}.boat-vessel-name{color:#0f172a;font-size:14.5px;font-weight:700}.boat-operator-label{color:#64748b;font-size:12.5px}.boat-rating-tiny{color:#0284c7;font-size:11.5px;font-weight:600}.timetable-price-col{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.price-label{color:#64748b;font-size:11px}.price-num{color:#0f172a;font:700 17px Rubik,sans-serif}.btn-select-schedule{background:var(--brand);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:6px;height:34px;padding:0 14px;font-size:12.5px;font-weight:700;transition:background .15s}.btn-select-schedule:hover{background:#0369a1}.timetable-empty{text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:36px 20px}.timetable-empty p{color:#64748b;margin:0 0 16px;font-size:14px}.boat-map-card{border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.map-view-container{background:#f1f5f9;width:100%;height:380px;position:relative}.map-info-footer{background:#fff;border-top:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.map-loc-details strong{color:#0f172a;font-size:13px;display:block}.map-loc-details p{color:#475569;margin:2px 0 0;font-size:13.5px}.btn-google-maps{color:#0f172a;white-space:nowrap;background:#f1f5f9;border-radius:8px;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn-google-maps:hover{color:var(--brand);background:#e2e8f0}.boarding-sop-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;flex-direction:column;gap:14px;padding:20px;display:flex}.boarding-sop-box h3{color:#166534;align-items:center;gap:8px;margin:0;font:700 16px Rubik,sans-serif;display:flex}.sop-step{padding-left:36px;position:relative}.step-badge{color:#fff;background:#22c55e;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:flex;position:absolute;top:0;left:0}.nearby-ports-wrap{flex-direction:column;gap:10px;margin-top:10px;display:flex}.nearby-ports-wrap h3{color:#0f172a;margin:0;font:700 15px Rubik,sans-serif}.nearby-ports-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.nearby-port-pill{color:#1e293b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 14px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .15s;display:flex}.nearby-port-pill:hover{border-color:var(--brand);color:var(--brand);background:#fff;box-shadow:0 2px 8px #0000000a}.facilities-detail-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.facility-pill-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:flex-start;gap:12px;padding:14px;display:flex}.fac-icon{width:28px;height:28px;color:var(--brand);background:#e0f2fe;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.fac-icon svg{width:14px;height:14px}.facility-pill-card strong{color:#0f172a;font-size:14px;display:block}.facility-pill-card p{color:#64748b;margin:2px 0 0;font-size:12.5px;line-height:1.4}.operator-deck-card:hover{border-color:var(--brand);box-shadow:0 4px 12px #0000000a}.op-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.op-logo-wrap{align-items:center;display:flex}.op-badge-box{color:#0f172a;font-size:14.5px;font-weight:700}.op-verified-badge{color:#166534;background:#dcfce7;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.op-specs{color:#64748b;align-items:center;gap:10px;font-size:12px;display:flex}.op-specs .star-rating{color:#f59e0b;font-weight:700}.op-action-link{color:var(--brand);margin-top:auto;font-size:13px;font-weight:700;text-decoration:none}.op-action-link:hover{text-decoration:underline}.boat-sticky-col{width:100%;position:sticky;top:24px}.boat-booking-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 30px #0f172a14}.booking-card-header{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);flex-direction:column;gap:6px;padding:18px 20px;display:flex}.book-badge{letter-spacing:.04em;text-transform:uppercase;color:#bae6fd;font-size:11px;font-weight:700}.book-price-row{justify-content:space-between;align-items:baseline;display:flex}.price-tag-start{opacity:.9;font-size:12px}.price-val{align-items:baseline;gap:4px;display:flex}.price-val strong{color:#fff;font:700 24px Rubik,sans-serif}.price-val small{opacity:.85;font-size:12px}.booking-form-body{flex-direction:column;gap:16px;padding:20px;display:flex}.widget-field-group{flex-direction:column;gap:6px;display:flex;position:relative}.widget-field-group label{color:#475569;font-size:12.5px;font-weight:600}.route-select-box{background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.port-route-display{align-items:center;gap:8px;display:flex}.route-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.route-dot.origin{background:#0284c7}.route-dot.destination{background:#10b981}.port-name-label{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;overflow:hidden}.route-swap-divider{justify-content:flex-end;align-items:center;padding:0 6px;display:flex}.swap-icon-btn{color:var(--brand);align-items:center;display:flex}.swap-icon-btn svg{width:14px;height:14px}.date-input-with-controls{align-items:center;gap:6px;display:flex}.date-shift-btn{color:#475569;cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;width:38px;height:42px;font-size:18px;font-weight:700;transition:all .15s;display:flex}.date-shift-btn:hover:not(:disabled){color:#0f172a;background:#f1f5f9}.date-shift-btn:disabled{opacity:.35;cursor:not-allowed}.date-display-box{background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;flex:1;align-items:center;gap:8px;height:42px;padding:0 10px;display:flex;position:relative}.date-display-box svg{color:#64748b;flex-shrink:0;width:16px;height:16px}.date-text{flex-direction:column;display:flex}.date-text strong{color:#0f172a;font-size:13px}.date-text small{color:#64748b;font-size:10.5px}.invisible-date-picker{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.return-ride-toggle-wrap{flex-direction:column;display:flex}.add-return-ride-btn{color:var(--brand);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:2px 0;font-size:13px;font-weight:700}.add-return-ride-btn:hover{text-decoration:underline}.return-date-active-box{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;flex-direction:column;gap:6px;padding:10px;display:flex}.return-header-row{justify-content:space-between;align-items:center;display:flex}.return-header-row label{color:#475569;font-size:12px;font-weight:600}.remove-return-btn{color:#ef4444;cursor:pointer;background:0 0;border:0;font-size:11.5px;font-weight:700}.nationality-segmented{grid-template-columns:1fr 1fr;gap:8px;display:grid}.nat-btn{color:#475569;cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:40px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.nat-btn.is-active{border-color:var(--brand);color:var(--brand);background:#f0f9ff;font-weight:700}.pax-trigger-btn{cursor:pointer;color:#0f172a;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:space-between;align-items:center;height:42px;padding:0 12px;font-size:13.5px;font-weight:600;display:flex}.pax-trigger-left{align-items:center;gap:8px;display:flex}.pax-trigger-btn svg{color:#64748b;width:15px;height:15px}.pax-counter-row{justify-content:space-between;align-items:center;display:flex}.pax-counter-info strong{color:#0f172a;font-size:13.5px;display:block}.pax-counter-info small{color:#64748b;font-size:11.5px;display:block}.pax-counter-actions{align-items:center;gap:8px;display:flex}.counter-btn{color:#0f172a;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:flex}.counter-btn:disabled{opacity:.35;cursor:not-allowed}.counter-val{text-align:center;width:18px;font-size:14px;font-weight:700}.fare-options-grid{flex-direction:column;gap:8px;display:flex}.fare-card{cursor:pointer;text-align:left;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;flex-direction:column;gap:3px;padding:10px 12px;transition:all .15s;display:flex}.fare-card.is-selected{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:#f8fafc}.fare-card-top{justify-content:space-between;align-items:center;display:flex}.fare-card-top strong{color:#0f172a;font-size:13px}.fare-price-tag{color:#059669;background:#d1fae5;border-radius:4px;padding:2px 6px;font-size:10.5px;font-weight:700}.fare-card small{color:#64748b;font-size:11.5px}.widget-price-summary{border-top:1px solid #e2e8f0;flex-direction:column;gap:6px;padding-top:10px;display:flex}.summary-row{color:#475569;justify-content:space-between;align-items:center;font-size:13px;display:flex}.summary-row strong{color:#0f172a;font:700 17px Rubik,sans-serif}.summary-row.promo{color:#059669;font-size:12px;font-weight:600}.btn-book-primary{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;height:48px;font-size:14.5px;font-weight:700;transition:background .15s;display:flex;box-shadow:0 4px 14px #0284c740}.btn-book-primary:hover{background:#0369a1}.btn-book-primary svg{width:16px;height:16px}.booking-guarantees{flex-direction:column;gap:6px;padding-top:6px;display:flex}.guarantee-item{color:#475569;align-items:center;gap:6px;font-size:11.5px;display:flex}.guarantee-item svg{color:#10b981;flex-shrink:0;width:14px;height:14px}@media (max-width:1024px){.boat-unified-grid,.bookaway-content-grid{grid-template-columns:1fr;gap:24px}.boat-sticky-col{position:static}}@media (max-width:720px){.boat-page-container{padding:0 16px}.boat-section{padding:20px 16px}.boat-highlights-grid,.facilities-detail-grid,.port-operators-deck,.sop-steps-grid,.nearby-ports-grid{grid-template-columns:1fr}.timetable-item-card{grid-template-columns:1fr;gap:12px}.timetable-price-col{border-top:1px solid #f1f5f9;flex-direction:row;justify-content:space-between;align-items:center;padding-top:10px}}.bookaway-inner-container{box-sizing:border-box;width:min(1200px,100% - 48px);margin:0 auto;padding:0}.bookaway-content-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:40px;display:grid}.bookaway-left-unified{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;padding:32px 36px;display:flex;box-shadow:0 2px 12px #0f172a08}.bookaway-breadcrumbs-text{color:#64748b;letter-spacing:.03em;margin-bottom:14px;font-size:11.5px;font-weight:600}.bookaway-breadcrumbs-text a{color:#64748b;text-decoration:none}.bookaway-breadcrumbs-text a:hover{color:var(--brand)}.bookaway-route-top-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.route-from-to{color:#475569;font-size:13.5px}.highlight-loc{color:var(--brand);font-weight:600}.switch-direction-btn{color:var(--brand);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:13.5px;font-weight:600;transition:opacity .15s;display:inline-flex}.switch-direction-btn:hover{opacity:.85}.switch-direction-btn svg{width:18px;height:18px}.bookaway-vessel-title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.vessel-title-left h1{color:#0f172a;margin:0 0 6px;font:700 28px Rubik,-apple-system,BlinkMacSystemFont,sans-serif}.vessel-operator-sub{color:#64748b;align-items:center;gap:8px;font-size:13px;display:flex}.vessel-operator-sub .op-name{color:#059669;font-weight:600}.top-op-badge{color:#0369a1;background:#e0f2fe;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.vessel-rating-right{align-items:center;gap:4px;display:flex}.stars-cluster{color:#f59e0b;gap:1px;display:flex}.stars-cluster svg{fill:#f59e0b;width:14px;height:14px}.review-count-text{color:#64748b;margin-left:2px;font-size:12.5px}.bookaway-slider-wrap{width:100%;margin-bottom:24px;position:relative}.bookaway-slider-main{background:#f1f5f9;border-radius:12px;width:100%;height:420px;position:relative;overflow:hidden}.slider-hero-image{object-fit:cover}.slider-nav-arrow{width:38px;height:38px;color:var(--brand);cursor:pointer;z-index:10;background:#ffffffeb;border:0;border-radius:50%;justify-content:center;align-items:center;font-size:24px;line-height:1;transition:all .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 8px #00000026}.slider-nav-arrow.prev{left:14px}.slider-nav-arrow.next{right:14px}.slider-nav-arrow:hover{background:#fff;transform:translateY(-50%)scale(1.08)}.unified-sub-block{border-top:1px solid #f1f5f9;margin-top:32px;padding-top:32px}.unified-sub-block:first-of-type{border-top:none;margin-top:16px;padding-top:0}.unified-sub-block h3{color:#0f172a;margin:0 0 16px;font:700 18px Rubik,-apple-system,BlinkMacSystemFont,sans-serif}.amenities-row{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.amenity-pill-item{align-items:center;gap:10px;display:flex}.amenity-glyph-circle{color:#475569;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.amenity-glyph-circle svg{width:16px;height:16px}.amenity-pill-label strong{color:#0f172a;font-size:13.5px;line-height:1.2;display:block}.amenity-pill-label small{color:#64748b;font-size:11.5px;display:block}.useful-info-item{align-items:center;gap:12px;display:flex}.useful-glyph-circle{color:#475569;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.useful-glyph-circle svg{width:16px;height:16px}.useful-info-item strong{color:#0f172a;font-size:13.5px;line-height:1.2;display:block}.useful-info-item p{color:#64748b;margin:0;font-size:12px}.please-note-box{background:#f3f6fc;border-radius:6px;padding:18px 22px}.please-note-list{flex-direction:column;gap:8px;margin:0;padding-left:18px;display:flex}.please-note-list li{color:#334155;font-size:13px;line-height:1.5}.please-note-list li b{color:#0f172a}.schedule-station-header{color:#0f172a;align-items:center;gap:10px;margin-bottom:14px;font-size:14px;display:flex}.station-icon-tag{color:var(--brand);background:#e0f2fe;border-radius:4px;align-items:center;gap:2px;padding:4px 8px;font-size:12px;display:inline-flex}.station-icon-tag svg{width:14px;height:14px}.unified-date-switcher{justify-content:center;align-items:center;gap:24px;margin-bottom:16px;display:flex}.date-arrow-btn{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;line-height:1;transition:opacity .15s;display:flex}.date-arrow-btn:hover{opacity:.9}.date-center-text{flex-direction:column;align-items:center;display:flex}.date-main{color:#0f172a;font:700 15px Rubik,sans-serif}.date-sub{color:#64748b;font-size:12px}.unified-table-wrap{width:100%;overflow-x:auto}.unified-timetable{border-collapse:collapse;text-align:left;width:100%}.unified-timetable th{color:#475569;border-bottom:1px solid #e2e8f0;padding:10px 12px;font-size:12.5px;font-weight:700}.unified-timetable th.th-action{width:110px}.unified-timetable td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:12px;font-size:13.5px}.cell-time strong{color:#0f172a;font-size:14.5px}.cell-dur{color:#475569;font-size:13px}.cell-price{color:#0f172a;white-space:nowrap}.cell-price .lightning-icon{color:#0284c7;margin-right:4px;font-size:12px}.cell-price b{font-size:14px}.table-action-btn{cursor:pointer;text-align:center;border-radius:4px;width:100%;padding:6px 16px;font-size:13px;font-weight:600;transition:all .15s}.table-action-btn.btn-active{background:var(--brand);color:#fff;border:1px solid var(--brand)}.table-action-btn.btn-active:hover{background:var(--brand-hover)}.table-action-btn.btn-outline{color:var(--brand);border:1px solid var(--brand);background:#fff}.table-action-btn.btn-outline:hover{background:#f0fdfa}.table-empty-notice{text-align:center;color:#64748b;padding:24px}.timetable-footer-notes{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.instant-approval-badge{color:var(--brand);align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.timetable-footer-notes .time-note{color:#64748b;font-size:11.5px}.route-map-split-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:1fr 1fr;gap:20px;padding:20px;display:grid}.route-endpoints-col{align-items:center;gap:14px;display:flex}.route-point-item{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.route-point-item.dropoff{text-align:right;justify-content:flex-end}.point-marker{border-radius:50%;flex:0 0 12px;width:12px;height:12px}.route-point-item.dropoff .point-marker{order:2}.pickup-marker{background:#ea580c;box-shadow:0 0 0 3px #ea580c2e}.dropoff-marker{border:2.5px solid var(--brand);background:#fff}.route-connector{color:#cbd5e1;flex:none;align-items:center;gap:4px;display:flex}.route-connector-line{background:repeating-linear-gradient(90deg,#cbd5e1 0 5px,#0000 5px 9px);width:34px;height:2px;display:block}.route-connector-arrow{color:var(--brand);font-size:14px;line-height:1}.point-text .point-type{color:#64748b;text-transform:uppercase;font-size:11px;font-weight:600;display:block}.point-text .point-name{color:#0f172a;margin-top:2px;font-size:14px;display:block}.highlight-pickup{color:#ea580c!important}.switch-direction-btn:disabled{opacity:.45;cursor:not-allowed}.helpful-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:7px;padding:6px 13px;font-size:13px;font-weight:600;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.helpful-btn svg{width:15px;height:15px}.helpful-btn:hover{color:#e11d48;border-color:#f43f5e}.helpful-btn.is-liked{color:#e11d48;background:#fff1f2;border-color:#f43f5e}.helpful-btn.is-liked svg{fill:currentColor}.helpful-btn b{font-variant-numeric:tabular-nums}.reviews-like-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:0 0 12px;padding:9px 12px;font-size:13px}@media (max-width:640px){.route-endpoints-col{flex-direction:column;align-items:stretch;gap:10px}.route-point-item.dropoff{text-align:left;justify-content:flex-start}.route-point-item.dropoff .point-marker{order:0}.route-connector{align-self:center;transform:rotate(90deg)}}.route-map-preview-col{border:1px solid #cbd5e1;border-radius:8px;width:100%;height:200px;position:relative;overflow:hidden}.osm-route-map-wrapper{width:100%;height:100%;position:relative}.osm-route-map-canvas{z-index:1;width:100%;height:100%}.osm-custom-marker{background:0 0;border:none}.osm-pin{filter:drop-shadow(0 3px 6px #0000004d);transition:transform .2s}.osm-pin:hover{transform:scale(1.15)}.osm-attribution-badge{color:#64748b;z-index:500;pointer-events:none;background:#ffffffd9;border-radius:3px;padding:2px 6px;font-size:9.5px;position:absolute;bottom:4px;right:6px}.osm-attribution-badge a{color:#475569;text-decoration:none}.operator-description-text{color:#334155;margin:0;font-size:13.5px;line-height:1.6}.reviews-title-block h3{color:#0f172a;margin:0 0 4px;font:700 18px Rubik,sans-serif}.reviews-subtitle{color:#64748b;margin:0 0 16px;font-size:13px}.reviews-tabs-nav{border-bottom:1px solid #e2e8f0;gap:20px;margin-bottom:12px;display:flex}.reviews-tabs-nav .tab-btn{color:#64748b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:8px 4px;font-size:13.5px;font-weight:600;transition:all .15s;display:flex}.reviews-tabs-nav .tab-btn.active{color:var(--brand);border-bottom-color:var(--brand)}.reviews-tabs-nav .tab-count{font-size:12px;font-weight:400}.trusted-reviews-badge{color:#64748b;margin-bottom:16px;font-size:12px}.trusted-reviews-badge b{color:var(--brand)}.review-summary-split-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;grid-template-columns:1fr 1fr;align-items:center;gap:24px;margin-bottom:20px;padding:20px;display:grid}.summary-left-col{flex-direction:column;gap:12px;display:flex}.stars-aggregate-row{align-items:center;gap:10px;display:flex}.stars-cluster.large svg{width:18px;height:18px}.stars-aggregate-row b{color:#0f172a;font-size:15px}.summary-ai-btn{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:6px;width:fit-content;padding:8px 14px;font-size:12.5px;font-weight:600;transition:all .15s;display:inline-flex}.summary-ai-btn:hover{border-color:var(--brand);color:var(--brand);background:#f0fdfa}.summary-right-col{flex-direction:column;gap:6px;display:flex}.star-dist-row{align-items:center;gap:8px;font-size:11.5px;display:flex}.star-dist-stars{color:#f59e0b;letter-spacing:-1px;width:60px}.star-dist-count{color:#64748b;width:24px}.star-dist-bar-track{background:#f1f5f9;border-radius:999px;flex:1;height:7px;overflow:hidden}.star-dist-bar-fill{background:var(--brand);border-radius:999px;height:100%}.reviews-sort-bar{color:#64748b;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:16px;font-size:12.5px;display:flex}.reviews-sort-bar select{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:4px;padding:4px 8px;font-size:12px}.reviews-stream-list{flex-direction:column;display:flex}.review-stream-item{border-bottom:1px solid #e2e8f0;padding:24px 0}.review-stream-item:last-child{border-bottom:none}.review-main-content{gap:16px;display:flex}.reviewer-avatar-col{flex-shrink:0}.reviewer-avatar-wrap{width:42px;height:42px;position:relative}.avatar-circle.brand-avatar{background:var(--brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:14px;font-weight:700;display:flex}.verified-check-badge{color:#fff;background:#10b981;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;display:flex;position:absolute;bottom:-2px;right:-2px}.reviewer-body-col{flex:1}.reviewer-header-line{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.name-and-badge{align-items:center;gap:8px;display:flex}.reviewer-name-brand{color:var(--brand);font-size:14px;font-weight:700}.verified-buyer-tag,.review-date-text{color:#64748b;font-size:12px}.review-star-rating-row{gap:2px;margin-bottom:8px;display:flex}.review-star-char{font-size:15px;line-height:1}.review-star-char.filled{color:#f59e0b}.review-star-char.empty{color:#cbd5e1}.review-headline{color:#0f172a;margin:0 0 6px;font-size:14px;font-weight:700}.review-paragraph{color:#334155;margin:0 0 12px;font-size:13.5px;line-height:1.55}.review-photo-thumb{border:1px solid #e2e8f0;border-radius:6px;width:100px;height:75px;margin-bottom:12px;overflow:hidden}.review-thumb-img{object-fit:cover;width:100%;height:100%}.review-operator-clean-box{background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;margin-bottom:14px;padding:14px 16px}.reply-brand-title strong{color:var(--brand);font-size:13px;font-weight:700}.reply-text-clean{color:#475569;margin:6px 0 0;font-size:13px;line-height:1.5}.review-card-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:6px;font-size:12.5px;display:flex}.reviewed-on-tag{color:#64748b}.reviewed-boat-link{color:var(--brand);font-weight:600}.helpful-action-group{color:#64748b;align-items:center;gap:8px;font-size:12px;display:flex}.bookaway-right-sidebar{position:sticky;top:85px}.plan-ride-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:24px;box-shadow:0 2px 12px #0000000a}.plan-ride-card h2{color:#0f172a;margin:0 0 18px;font:700 18px Rubik,-apple-system,BlinkMacSystemFont,sans-serif}.ride-form-group{margin-bottom:16px}.ride-form-group label{color:#475569;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.date-time-row{grid-template-columns:1fr 100px;gap:8px;display:grid}.input-with-icon{background:#fff;border:1px solid #cbd5e1;border-radius:6px;align-items:center;padding:8px 12px;display:flex;position:relative}.input-with-icon input,.input-with-icon select{color:#0f172a;cursor:pointer;background:0 0;border:0;outline:none;width:100%;font-size:13.5px;font-weight:500}.input-with-icon svg{color:#64748b;pointer-events:none;width:16px;height:16px;margin-left:6px}.add-return-link{color:var(--brand);cursor:pointer;background:0 0;border:0;margin-top:6px;padding:0;font-size:12.5px;font-weight:600;display:inline-block}.add-return-link:hover{text-decoration:underline}.nat-pill-toggle{grid-template-columns:1fr 1fr;gap:6px;display:grid}.nat-pill-toggle button{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:7px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.nat-pill-toggle button.active{border-color:var(--brand);color:var(--brand);background:#f0fdfa}.pax-selector-container{width:100%;position:relative}.pax-trigger-btn{cursor:pointer;text-align:left;background:#fff;justify-content:space-between;align-items:center;width:100%;display:flex}.pax-trigger-btn span{color:#0f172a;font-size:13.5px;font-weight:500}.pax-trigger-btn .dropdown-arrow{color:#64748b;font-size:10px;transition:transform .15s}.pax-trigger-btn .dropdown-arrow.open{transform:rotate(180deg)}.pax-popover-menu{z-index:50;background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex-direction:column;gap:14px;padding:16px;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 10px 25px #0000001f}.pax-popover-row{justify-content:space-between;align-items:center;display:flex}.pax-popover-label strong{color:#0f172a;font-size:13.5px;line-height:1.2;display:block}.pax-popover-label small{color:#64748b;font-size:11.5px;display:block}.pax-stepper{align-items:center;gap:12px;display:flex}.stepper-btn{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;font-weight:600;transition:all .15s;display:flex}.stepper-btn:hover:not(:disabled){border-color:var(--brand);color:var(--brand);background:#f0fdfa}.stepper-btn:disabled{opacity:.4;cursor:not-allowed}.stepper-count{color:#0f172a;text-align:center;min-width:18px;font-size:14px;font-weight:700}.pax-popover-done-btn{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:6px;width:100%;margin-top:4px;padding:8px;font-size:13px;font-weight:600;transition:background .15s}.pax-popover-done-btn:hover{background:var(--brand-hover)}.fare-options-stack{flex-direction:column;gap:8px;display:flex}.fare-card{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:space-between;align-items:center;padding:12px 14px;transition:all .15s;display:flex}.fare-card.selected{border-color:var(--brand);background:#f0fdfa}.fare-card-left strong{color:#0f172a;font-size:13px;line-height:1.2;display:block}.fare-card-left small{color:#64748b;margin-top:2px;font-size:11px;display:block}.fare-card-right{text-align:right}.fare-card-right b{color:#0f172a;white-space:nowrap;font-size:13.5px;display:block}.fare-card-right span{color:#64748b;font-size:11px;display:block}.return-ride-form-group{border-top:1px dashed #e2e8f0;margin-top:12px;padding-top:12px}.return-header-line{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.return-header-line label{margin-bottom:0!important}.remove-return-link{color:#ef4444;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600;text-decoration:underline}.remove-return-link:hover{color:#dc2626}.plan-cta-btn,button.plan-cta-btn,.button.plan-cta-btn{color:#fff!important;cursor:pointer!important;opacity:1!important;visibility:visible!important;background:#0284c7!important;border:1px solid #0284c7!important;border-radius:8px!important;justify-content:center!important;align-items:center!important;width:100%!important;height:48px!important;margin-top:10px!important;margin-bottom:12px!important;font-size:15px!important;font-weight:700!important;text-decoration:none!important;transition:all .2s!important;display:flex!important;box-shadow:0 4px 12px #0284c740!important}.plan-cta-btn:hover,button.plan-cta-btn:hover,.button.plan-cta-btn:hover,.plan-cta-btn:focus,.plan-cta-btn:active{color:#fff!important;background:#0369a1!important;border-color:#0369a1!important;box-shadow:0 6px 16px #0284c759!important}.instant-confirm-line{color:var(--brand);text-align:center;justify-content:center;align-items:center;gap:4px;font-size:12px;font-weight:600;display:flex}.boarding-sop-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:16px;margin-top:24px;padding:24px}.boarding-sop-box h3{color:#166534;align-items:center;gap:8px;margin-top:0;margin-bottom:16px;font-size:18px;font-weight:700;display:flex}.sop-steps-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.sop-step{background:#fff;border:1px solid #dcfce7;border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.sop-step .step-badge{color:#fff;background:#16a34a;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:flex}.sop-step h4{color:#0f172a;margin:0;font-size:14px;font-weight:700}.sop-step p{color:#475569;margin:0;font-size:12.5px;line-height:1.45}.nearby-ports-wrap{margin-top:28px}.nearby-ports-wrap h3{color:#1e293b;margin-bottom:14px;font-size:17px;font-weight:700}.nearby-ports-grid{flex-wrap:wrap;gap:10px;display:flex}.nearby-port-pill{color:#1e293b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.nearby-port-pill:hover{border-color:var(--brand);color:var(--brand);background:#f0f9ff;transform:translateY(-1px)}.port-operators-deck{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.operator-deck-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:12px;padding:18px;transition:box-shadow .15s;display:flex}.operator-deck-card:hover{box-shadow:0 4px 14px #0000000f}.operator-deck-card .op-top{justify-content:space-between;align-items:center;display:flex}.operator-deck-card .op-verified-badge{color:#16a34a;background:#f0fdf4;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.operator-deck-card .op-specs{color:#64748b;align-items:center;gap:12px;font-size:12.5px;display:flex}.operator-deck-card .op-action-link{color:var(--brand);margin-top:auto;font-size:13px;font-weight:600;text-decoration:none}.faq-cards-stack{flex-direction:column;gap:12px;display:flex}.faq-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:18px 20px}.faq-box h3{color:#0f172a;margin:0 0 8px;font-size:15px;font-weight:700}.faq-box p{color:#475569;margin:0;font-size:13.5px;line-height:1.5}.checkout-page-wrap{background:#f8fafc;min-height:80vh;padding:40px 0 80px}.checkout-container{max-width:1200px;margin:0 auto;padding:0 24px}.checkout-stepper-wrap{justify-content:center;margin-bottom:36px;display:flex}.checkout-stepper{align-items:center;gap:16px;width:100%;max-width:600px;display:flex}.step-item{color:#94a3b8;align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.step-num{color:#64748b;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:flex}.step-item.active{color:#0f172a}.step-item.active .step-num{background:var(--brand);color:#fff}.step-item.completed .step-num{color:#fff;background:#10b981}.step-divider{background:#e2e8f0;flex:1;height:2px}.checkout-content-grid{grid-template-columns:1fr 380px;align-items:start;gap:32px;display:grid}.checkout-forms-col{flex-direction:column;gap:20px;display:flex}.checkout-passenger-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000008}.pax-card-header{border-bottom:1px solid var(--soft);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.pax-card-title{align-items:center;gap:12px;display:flex}.pax-card-title .pax-icon{width:32px;height:32px;color:var(--brand);background:#f0f9ff;border-radius:9px;justify-content:center;align-items:center;display:flex}.pax-card-title h3{color:var(--text);margin:0;font:700 17px Rubik,-apple-system,sans-serif}.verified-glyph{color:#166534;vertical-align:middle;align-items:center;margin-left:4px;display:inline-flex}.plus-circle-icon{width:22px;height:22px;color:var(--brand);background:#f0f9ff;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.remove-pax-btn{color:#ef4444;cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:600;text-decoration:underline}.remove-pax-btn:hover{color:#dc2626}.pax-form-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.checkout-field-group{flex-direction:column;gap:6px;display:flex}.checkout-field-group label{color:#475569;font-size:12px;font-weight:600}.checkout-field-group input,.checkout-field-group select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;height:44px;padding:0 14px;font-size:13.5px;transition:border-color .15s}.checkout-field-group input:focus,.checkout-field-group select:focus{border-color:var(--brand)}.custom-phone-picker-wrap{flex-shrink:0;position:relative}.custom-phone-trigger{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;align-items:center;gap:8px;height:44px;padding:0 12px;transition:all .15s;display:flex}.custom-phone-trigger:hover,.custom-phone-trigger.is-open{border-color:var(--brand)}.custom-phone-trigger .trigger-chevron{color:#64748b;align-items:center;font-size:13px;transition:transform .2s;display:flex}.custom-phone-trigger.is-open .trigger-chevron{transform:rotate(180deg)}.phone-country-popover{z-index:100;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;width:320px;padding:12px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 12px 30px #0000001f}.popover-search-box{position:relative}.popover-search-box input{color:#0f172a!important;background:#fff!important;border:1.5px solid #cbd5e1!important;border-radius:8px!important;outline:none!important;width:100%!important;height:40px!important;padding:0 12px!important;font-size:14px!important;transition:border-color .15s!important}.popover-search-box input:focus{border-color:#f97316!important}.popover-country-list{flex-direction:column;gap:2px;max-height:260px;display:flex;overflow-y:auto}.country-item-btn{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;width:100%;padding:9px 12px;transition:background .12s;display:flex}.country-item-btn:hover{background:#fff7ed}.country-item-btn.is-active{background:#ffedd5}.item-flag-wrap{flex-shrink:0;align-items:center;display:flex}.item-country-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;font-weight:500;overflow:hidden}.item-dial-code{color:#0f172a;flex-shrink:0;font-size:14px;font-weight:700}.country-empty-result{text-align:center;color:#94a3b8;padding:18px;font-size:13px}.phone-input-group{align-items:center;gap:8px;width:100%;display:flex}.phone-input-group input.phone-field-input,.phone-input-group input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;flex:1;height:44px;padding:0 14px;font-size:14px;font-weight:500;transition:border-color .15s,box-shadow .15s}.phone-input-group input.phone-field-input:focus,.phone-input-group input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #0284c71f}.checkbox-custom-label{color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:13px;display:flex}.checkbox-custom-label input[type=checkbox]{width:17px;height:17px;accent-color:var(--brand);cursor:pointer}.add-passenger-button{color:var(--brand);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;width:fit-content;padding:6px 0;font-size:14.5px;font-weight:700;display:inline-flex}.add-passenger-button:hover{text-decoration:underline}.checkout-footer-disclaimer{margin-top:10px}.checkout-footer-disclaimer p{color:#64748b;margin-bottom:12px;font-size:12px;line-height:1.5}.promo-checkbox{color:var(--muted)!important;font-size:12px!important}.extras-selection-list{flex-direction:column;gap:14px;margin-top:16px;display:flex}.extra-item-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:16px;display:flex}.extra-item-info strong{color:#0f172a;font-size:14px;display:block}.extra-item-info p{color:#64748b;margin:4px 0 6px;font-size:12px}.extra-item-info b{color:var(--brand);font-size:13px}.payment-intro-text{color:#475569;margin-top:14px;font-size:13.5px;line-height:1.6}.checkout-summary-col{flex-direction:column;gap:16px;display:flex;position:sticky;top:90px}.tickets-summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px;box-shadow:0 2px 10px #00000008}.tickets-summary-card h2{color:#111827;margin:0 0 8px;font:700 19px Rubik,-apple-system,sans-serif}.summary-route-header strong{color:#1e293b;margin-bottom:4px;font-size:14.5px;font-weight:600;line-height:1.4;display:block}.summary-fare-badge{color:#64748b;align-items:center;gap:4px;margin-bottom:22px;font-size:13px;display:inline-flex}.summary-vessel-info{margin-bottom:22px}.summary-vessel-info strong{color:#111827;margin-bottom:3px;font-size:15px;font-weight:700;display:block}.summary-vessel-info .vessel-operator-line{color:#334155;align-items:center;gap:6px;font-size:13.5px;display:flex}.summary-vessel-info .thumbs-up-icon{color:#15803d;display:inline-flex}.summary-trip-row{margin-bottom:18px}.trip-loc-title{color:#111827;font-size:14.5px;font-weight:700;line-height:1.35}.trip-date-time{color:#334155;margin:3px 0 6px;font-size:13px}.trip-pax-and-price{color:#334155;justify-content:space-between;align-items:center;font-size:13.5px;display:flex}.trip-pax-and-price b{color:#111827;font-size:14.5px;font-weight:700}.summary-trips-tally{color:#334155;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-top:20px;padding-top:18px;font-size:13.5px;display:flex}.summary-trips-tally b{color:#111827;font-size:14.5px;font-weight:700}.checkout-total-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;padding:22px 24px;display:flex;box-shadow:0 2px 10px #00000008}.checkout-total-card .total-title{color:#111827;font-size:18px;font-weight:700}.checkout-total-card .total-amount{color:#111827;font-size:20px;font-weight:800}.checkout-cta-btn{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;width:100%;height:48px;margin-top:4px;font-size:15px;font-weight:700;transition:all .15s;display:flex;box-shadow:0 4px 12px #0284c740}.checkout-cta-btn:hover:not(:disabled){background:var(--brand-hover);box-shadow:0 6px 16px #0284c759}.checkout-cta-btn:disabled{box-shadow:none;cursor:not-allowed;background:#cbd5e1}.pay-groups{margin-top:18px}.pay-group{border-top:1px solid #eef2f6;padding:18px 0}.pay-group:first-child{border-top:0;padding-top:4px}.pay-group-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pay-group-head h4{color:#0f172a;margin:0;font-size:15px;font-weight:700}.pay-networks{align-items:center;gap:6px;display:flex}.pay-group-blurb{color:#64748b;margin:6px 0 12px;font-size:13px;line-height:1.5}.pay-tiles{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.pay-tile{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.pay-tile:hover{border-color:var(--brand);background:#f8fbfe}.pay-tile.is-selected{border-color:var(--brand);background:#f4faff;box-shadow:0 0 0 2px #0284c726}.pay-tile-logo{background:#f8fafc;border:1px solid #eef2f6;border-radius:6px;flex:0 0 52px;place-items:center;height:34px;display:grid;overflow:hidden}.brand-logo{object-fit:contain;width:auto;max-width:44px;height:auto;max-height:20px}.brand-fallback{letter-spacing:.03em;color:#475569;text-transform:uppercase;white-space:nowrap;padding:0 4px;font-size:9.5px;font-weight:800}.pay-networks .brand-fallback{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;padding:3px 6px}.pay-tile-name{color:#1e293b;font-size:13.5px;font-weight:600;line-height:1.3}.pay-groups-note{color:#64748b;margin:14px 0 0;font-size:12.5px;line-height:1.5}@media (max-width:560px){.pay-tiles{grid-template-columns:1fr}}.review-invite{background:#f0f9ff;border:1px solid #bae6fd;border-radius:9px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;padding:13px 16px;display:flex}.review-invite-text strong{color:#0f172a;font-size:13.5px;display:block}.review-invite-text span{color:#64748b;font-size:12.5px}.review-invite-btn{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:7px;padding:8px 16px;font-size:13px;font-weight:600}.review-composer{background:#fff;border:1px solid #e2e8f0;border-radius:9px;margin-top:12px;padding:16px}.review-composer>strong{margin-bottom:10px;font-size:14px;display:block}.review-stars{align-items:center;gap:3px;margin-bottom:12px;display:flex}.review-stars .star{color:#cbd5e1;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:26px;line-height:1;transition:color .12s,transform .12s}.review-stars .star.is-on{color:#f59e0b}.review-stars .star:hover{transform:scale(1.12)}.review-stars-label{color:#64748b;margin-left:8px;font-size:12.5px}.review-composer textarea{width:100%;font:inherit;resize:vertical;border:1px solid #cbd5e1;border-radius:7px;padding:10px 12px;font-size:13.5px}.review-composer-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.review-composer-note{color:#94a3b8;flex:1;min-width:180px;font-size:12px}.review-cancel,.review-submit{cursor:pointer;border-radius:7px;padding:8px 16px;font-size:13px;font-weight:600}.review-cancel{color:#475569;background:#fff;border:1px solid #cbd5e1}.review-submit{background:var(--brand);color:#fff;border:0}.review-submit:disabled{opacity:.6;cursor:not-allowed}.review-composer-error{color:#b91c1c;margin:10px 0 0;font-size:12.5px}.review-thanks{color:#15803d;background:#dcfce7;border-radius:8px;margin:10px 0 0;padding:10px 14px;font-size:13px}.bookaway-content-grid.is-single{grid-template-columns:minmax(0,1fr)}.bookaway-content-grid.is-single .bookaway-left-unified{max-width:none}.bookaway-content-grid.is-single .unified-sub-block>p,.bookaway-content-grid.is-single .please-note-list,.bookaway-content-grid.is-single .harbor-overview-text{max-width:78ch}.port-tabs-nav,.unified-table-wrap{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.port-tabs-nav::-webkit-scrollbar{display:none}.unified-table-wrap::-webkit-scrollbar{display:none}.unified-timetable{min-width:620px}@media (max-width:900px){.bookaway-inner-container{width:calc(100% - 32px)}.route-map-split-card{grid-template-columns:1fr}}@media (max-width:600px){.bookaway-page-wrap{padding-top:12px}.bookaway-content-grid.is-single .unified-sub-block{padding-left:0;padding-right:0}.bookaway-slider-main{border-radius:12px}.harbor-quick-facts{grid-template-columns:1fr!important}}.ticket-page{background:var(--soft);min-height:60vh;padding:40px 20px 80px}.ticket-card{border:1px solid var(--line);max-width:560px;box-shadow:var(--shadow);background:#fff;border-radius:16px;margin:0 auto;overflow:hidden}.ticket-banner{color:#b45309;text-align:center;background:#fef3c7;padding:12px 20px;font-size:13px;font-weight:700}.ticket-banner.is-paid{color:#15803d;background:#dcfce7}.ticket-code-block{text-align:center;border-bottom:1px dashed var(--line);padding:24px 20px 18px}.ticket-code-block span{letter-spacing:.09em;color:#64748b;font-size:10.5px;font-weight:700;display:block}.ticket-code-block strong{letter-spacing:.04em;margin-top:6px;font:600 28px Rubik,sans-serif;display:block}.ticket-warning{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin:16px 20px;padding:10px 12px;font-size:12.5px}.ticket-rows{padding:16px 20px}.ticket-row{justify-content:space-between;padding:5px 0;font-size:13.5px;display:flex}.ticket-row span{color:var(--muted)}.ticket-addons{padding:0 20px 16px}.ticket-addons h3,.ticket-list h3{text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin:0 0 10px;font-size:12px}.ticket-addons ul{margin:0;padding:0;list-style:none}.ticket-addons li{justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.ticket-list{border-top:1px dashed var(--line);padding:16px 20px}.ticket-stub{border:1px solid var(--line);border-radius:10px;align-items:center;gap:14px;margin-bottom:10px;padding:12px;display:flex}.ticket-stub-body{flex:1;min-width:0}.ticket-stub-body strong{font-size:14px;display:block}.ticket-stub-body code{letter-spacing:.04em;background:var(--soft);border:1px solid var(--line);border-radius:5px;margin-top:5px;padding:3px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;display:inline-block}.ticket-qr{border:1px solid var(--line);background:#fff;border-radius:8px;flex:0 0 120px;width:120px;height:120px}.ticket-actions{flex-direction:column;align-items:center;gap:10px;padding:8px 20px 20px;display:flex}.ticket-secondary{color:var(--brand);font-size:13px;font-weight:600}.ticket-note{color:#94a3b8;text-align:center;margin:0;padding:0 20px 22px;font-size:11.5px;line-height:1.6}.extras-empty{text-align:center;color:var(--muted);padding:18px;font-size:13px}.extra-item-card.is-picked{border-color:var(--brand);background:#f4faff}.extra-item-info small{color:var(--muted);margin-top:2px;font-weight:500;display:block}@media print{.site-header,footer,.ticket-actions,.ticket-note{display:none!important}.ticket-page{background:#fff;padding:0}.ticket-card{box-shadow:none;border:0;max-width:100%}}.account-btn-cancel{border:1px solid var(--line);color:#b91c1c;cursor:pointer;white-space:nowrap;background:#fff;border-radius:9px;align-items:center;height:40px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.account-btn-cancel:hover:not(:disabled){background:#fef2f2;border-color:#fecaca}.account-btn-cancel:disabled{opacity:.55;cursor:not-allowed}.catalog-index{background:var(--soft);min-height:60vh;padding:48px 0 96px}.catalog-index-head{margin-bottom:34px}.catalog-index-kicker{letter-spacing:.12em;color:var(--brand);font-size:12px;font-weight:800}.catalog-index-head h1{margin:10px 0 8px;font:600 clamp(30px,3.4vw,50px) Rubik,sans-serif}.catalog-index-head p{color:var(--muted);max-width:640px;margin:0;font-size:15px}.catalog-index-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;display:grid}.catalog-index-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.catalog-index-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px #00ced129}.catalog-index-media{aspect-ratio:4/3;background:#dfeff3;position:relative}.catalog-index-media img{object-fit:cover}.catalog-index-placeholder{color:#fff;background:linear-gradient(145deg,#1e95b9,#67c6da);place-items:center;font:italic 700 72px Rubik,sans-serif;display:grid;position:absolute;inset:0}.catalog-index-body{padding:16px 18px 20px}.catalog-index-body strong{color:var(--text);font-size:17px;line-height:1.25;display:block}.catalog-index-meta{color:var(--brand);margin-top:5px;font-size:12.5px;font-weight:600;display:block}.catalog-index-body p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.catalog-index-empty{text-align:center;color:var(--muted);padding:40px}.article-page,.static-page{background:var(--soft);min-height:60vh;padding:40px 0 96px}.article-body{border:1px solid var(--line);max-width:820px;box-shadow:var(--shadow);background:#fff;border-radius:16px;margin:20px auto 0;padding:36px}.article-body h1{margin:0 0 8px;font:600 clamp(26px,3vw,40px)/1.2 Rubik,sans-serif}.article-date{color:var(--muted-soft);margin:0 0 20px;font-size:13px}.article-cover{aspect-ratio:16/9;background:#dfeff3;border-radius:12px;margin-bottom:24px;position:relative;overflow:hidden}.article-cover img{object-fit:cover}.article-body p{color:var(--text);margin:0 0 18px;font-size:15.5px;line-height:1.8}.article-page .button{margin:24px auto 0;display:inline-flex}.static-inner{border:1px solid var(--line);max-width:780px;box-shadow:var(--shadow);background:#fff;border-radius:16px;margin:0 auto;padding:40px}.static-inner h1{margin:0 0 6px;font:600 clamp(28px,3vw,44px) Rubik,sans-serif}.static-updated{color:var(--muted-soft);margin:0 0 24px;font-size:13px}.static-prose h2{color:var(--text);margin:26px 0 8px;font-size:19px}.static-prose p{color:var(--muted);max-width:70ch;margin:0 0 14px;font-size:15px;line-height:1.75}.static-prose a{color:var(--brand);font-weight:600}.account-ticket-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.account-ticket-btn{border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:9px;align-items:center;gap:7px;padding:9px 15px;font-size:13px;font-weight:600;display:inline-flex}.account-ticket-btn.is-ghost{color:var(--brand);background:#fff}.account-ticket-btn svg{flex:none}.account-btn-resume{border:1px solid var(--line);height:40px;color:var(--text);white-space:nowrap;background:#fff;border-radius:9px;align-items:center;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.account-cart-tag{align-items:center;gap:6px;display:inline-flex}@media (max-width:560px){.account-booking-cart-action{flex-direction:column;align-items:stretch}.account-booking-cart-action>div{flex-direction:column}.account-btn-pay,.account-btn-resume{justify-content:center;width:100%}.account-ticket-actions{flex-direction:column}.account-ticket-btn{justify-content:center}}.guest-cart{text-align:left;background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;margin-bottom:22px;padding:16px 18px}.guest-cart-kicker{letter-spacing:.07em;color:#0369a1;font-size:10.5px;font-weight:700;display:block}.guest-cart-route{color:#0f172a;margin:6px 0 4px;font-size:16px;display:block}.guest-cart-meta{color:#475569;font-size:12.5px;line-height:1.5;display:block}.guest-cart-note{color:#64748b;margin:10px 0 14px;font-size:12.5px;line-height:1.55}.guest-cart-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.guest-cart-clear{color:#94a3b8;cursor:pointer;background:0 0;border:0;padding:6px 4px;font-size:12.5px}.guest-cart-clear:hover{color:#dc2626}.results-empty-dates{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;display:flex}.results-date-chip{border:1px solid var(--brand);color:var(--brand);background:#fff;border-radius:10px;flex-direction:column;gap:2px;padding:10px 16px;text-decoration:none;transition:background .15s,color .15s;display:flex}.results-date-chip:hover{background:var(--brand);color:#fff}.results-date-chip small{opacity:.8;font-size:12px}.results-empty-reset{border:1px solid var(--brand);color:var(--brand);cursor:pointer;background:#fff;border-radius:8px;margin-top:14px;padding:9px 18px;font-weight:600}.results-empty-reset:hover{background:var(--brand);color:#fff}.booking-confirmed-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;max-width:640px;margin:32px auto;padding:32px;box-shadow:0 8px 24px #0f172a0f}.booking-confirmed-badge{color:#15803d;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.booking-confirmed-card h1{margin:16px 0 8px;font-size:24px}.booking-confirmed-lead{color:#475569;margin:0 0 20px;font-size:14px;line-height:1.6}.booking-confirmed-leg{border:1px solid #e2e8f0;border-radius:10px;margin-bottom:12px;padding:16px}.booking-confirmed-row{justify-content:space-between;gap:12px;padding:4px 0;font-size:14px;display:flex}.booking-ticket-list{border-top:1px dashed #e2e8f0;margin:12px 0 0;padding:12px 0 0;list-style:none}.booking-ticket-list li{color:#475569;justify-content:space-between;gap:12px;padding:3px 0;font-size:13px;display:flex}.booking-ticket-list code{color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.booking-confirmed-total{background:#f1f5f9;border-radius:10px;justify-content:space-between;padding:14px 16px;font-size:16px;display:flex}.booking-confirmed-note{color:#64748b;margin:16px 0 0;font-size:13px;line-height:1.6}.checkout-submit-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:8px 0 0;padding:10px 12px;font-size:13px;line-height:1.5}.reviews-empty-notice{color:#64748b;text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;margin:0;padding:20px;font-size:14px}.checkout-fare-warning{color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;margin:8px 0 0;padding:10px 12px;font-size:13px;line-height:1.5}.checkout-fare-warning a{color:inherit;font-weight:700}@media (max-width:1024px){.bookaway-content-grid,.checkout-content-grid{grid-template-columns:1fr;gap:32px}.bookaway-right-sidebar,.checkout-summary-col{position:static}}@media (max-width:768px){.bookaway-inner-container{padding:0 20px}.bookaway-slider-main{height:260px}.amenities-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.date-time-row,.pax-form-grid{grid-template-columns:1fr}}
