*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:-webkit-fill-available}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#e8e2d8;min-height:100dvh;font-family:Poppins,sans-serif;font-weight:400;overflow-x:hidden}:root{--cream:#f5f1eb;--warm-white:#fdfbf7;--dark-navy:#210d2c;--dark-surface:#2d1540;--dark-border:#4a2060;--amber:#ff6e4e;--amber-light:#ff9580;--amber-pale:#fff0ed;--text-primary:#1a1a1a;--text-muted:#6b6b6b;--text-hint:#9a9a9a;--text-light:#f0eae0;--text-light-muted:#89a;--teal:#01b8ba;--sage:#01b8ba;--border:#e0d8cc;--border-focus:#ff6e4e;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 1px 4px #0f192312;--shadow-md:0 4px 20px #0f19231a;--shadow-lg:0 12px 40px #0f192324;--ease:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.18s;--duration-base:.3s;--duration-slow:.48s;--duration-page:.38s}.app-shell{background:var(--cream);max-width:480px;min-height:100dvh;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 60px #0000002e}#app{min-height:100dvh;position:relative;overflow:hidden}.screen{-webkit-overflow-scrolling:touch;min-height:100dvh;position:absolute;inset:0;overflow-y:auto}.screen.hidden{display:none}.btn-primary{background:var(--amber);color:#fff;border-radius:var(--radius-xl);cursor:pointer;transition:background var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease-spring);text-align:center;letter-spacing:.01em;border:none;padding:16px 32px;font-family:Poppins,sans-serif;font-size:16px;font-weight:500;display:block}.btn-primary:hover{background:#c4842a}.btn-primary:active{transform:scale(.97)}.hero-screen{background:#210d2c;flex-direction:column;min-height:100dvh;display:flex}.hero-photo{object-fit:cover;object-position:center 30%;z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{z-index:1;background:linear-gradient(#210d2c4d 0%,#210d2c1a 35%,#210d2ca6 68%,#210d2cf5 100%);position:absolute;inset:0}.hero-top-bar{z-index:10;justify-content:space-between;align-items:center;padding:22px 20px 0;display:flex;position:relative}.sigvi-logo{height:30px;display:block}.sigvi-logo--sm{height:26px}.lang-toggle{color:#fff;cursor:pointer;transition:background var(--duration-fast) var(--ease);letter-spacing:.05em;background:#ffffff1f;border:1px solid #ffffff47;border-radius:100px;padding:5px 14px;font-family:Poppins,sans-serif;font-size:13px;font-weight:500}.lang-toggle:hover{background:#ffffff38}.hero-content{z-index:10;margin-top:auto;padding:0 22px 36px;position:relative}.hero-pill{color:var(--amber-light);letter-spacing:.1em;text-transform:uppercase;opacity:0;transition:opacity var(--duration-slow) var(--ease-out), transform var(--duration-slow) var(--ease-out);background:#d4943a2e;border:1px solid #d4943a73;border-radius:100px;align-items:center;gap:6px;margin-bottom:18px;padding:5px 12px;font-family:Poppins,sans-serif;font-size:11px;font-weight:600;display:inline-flex;transform:translateY(12px)}.hero-headline{color:#fff;letter-spacing:-.02em;opacity:0;transition:opacity var(--duration-slow) var(--ease-out) 80ms, transform var(--duration-slow) var(--ease-out) 80ms;margin-bottom:14px;font-family:Poppins,sans-serif;font-size:clamp(30px,8.5vw,38px);font-weight:800;line-height:1.08;transform:translateY(14px)}.hero-sub{color:#ffffffbf;opacity:0;transition:opacity var(--duration-slow) var(--ease-out) .16s;margin-bottom:22px;font-family:Poppins,sans-serif;font-size:15px;font-weight:300;line-height:1.65}.hero-features{opacity:0;transition:opacity .45s var(--ease-out) .22s, transform .45s var(--ease-out) .22s;gap:8px;margin-bottom:22px;display:flex;transform:translateY(8px)}.hero-feature{color:#ffffffd9;white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff17;border:1px solid #ffffff2e;border-radius:100px;align-items:center;gap:5px;padding:5px 11px;font-family:Poppins,sans-serif;font-size:12px;display:flex}.hero-resume-bar{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#ffffffd9;background:#ffffff1a;border:1px solid #ffffff2e;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 16px;font-family:Poppins,sans-serif;font-size:14px;display:flex}.resume-bar__cta{color:var(--amber-light);white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:0;font-family:Poppins,sans-serif;font-size:14px;font-weight:600}.resume-bar__reset{color:#fff6;cursor:pointer;background:0 0;border:none;margin-left:12px;font-family:Poppins,sans-serif;font-size:12px}.hero-cta-wrap{opacity:0;transition:opacity var(--duration-slow) var(--ease-out) .3s, transform var(--duration-slow) var(--ease-spring) .3s;transform:translateY(10px)}.hero-cta-btn{border-radius:var(--radius-xl);letter-spacing:.01em;width:100%;padding:18px 32px;font-size:17px;font-weight:600;box-shadow:0 4px 24px #d4943a59}.hero-trust{text-align:center;color:#ffffff73;margin-top:12px;font-family:Poppins,sans-serif;font-size:12px;font-weight:300}.hero-proof{color:#ffffff80;opacity:0;transition:opacity .5s var(--ease-out) .42s;justify-content:center;align-items:center;gap:8px;margin-top:14px;font-family:Poppins,sans-serif;font-size:12px;display:flex}.hero-proof__stars{color:var(--amber-light);letter-spacing:1px;font-size:11px}.hero-screen.ready .hero-pill,.hero-screen.ready .hero-headline{opacity:1;transform:translateY(0)}.hero-screen.ready .hero-sub{opacity:1}.hero-screen.ready .hero-features,.hero-screen.ready .hero-cta-wrap{opacity:1;transform:translateY(0)}.hero-screen.ready .hero-proof{opacity:1}.city-scrim{opacity:0;transition:opacity var(--duration-base) var(--ease);z-index:99;pointer-events:none;background:#00000080;max-width:480px;margin:0 auto;position:fixed;inset:0}.city-scrim.open{opacity:1;pointer-events:auto}.city-sheet{background:var(--warm-white);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;padding:12px 20px env(safe-area-inset-bottom,24px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 32px);transition:transform var(--duration-page) var(--ease-out);z-index:100;position:fixed;bottom:0;left:50%;transform:translate(-50%)translateY(100%)}.city-sheet.open{transform:translate(-50%)translateY(0)}.city-sheet__handle{background:var(--border);border-radius:2px;width:36px;height:4px;margin:0 auto 20px}.city-sheet__title{color:var(--text-primary);margin-bottom:16px;font-family:Poppins,sans-serif;font-size:20px;font-weight:300;line-height:1.2}.city-pills{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.city-pill{border:1.5px solid var(--border);color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease-spring);background:0 0;border-radius:100px;padding:8px 16px;font-family:Poppins,sans-serif;font-size:14px;font-weight:500}.city-pill.selected{background:var(--amber-pale);border-color:var(--amber);color:#7a5010}.city-pill:active{transform:scale(.96)}.quiz-screen{background:var(--cream);flex-direction:column;min-height:100dvh;display:flex}.quiz-screen--dark{background:#210d2c}@keyframes quizSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.quiz-top-bar{flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 20px 0;display:flex}.back-btn{color:#ffffff73;cursor:pointer;transition:color var(--duration-fast) var(--ease);background:0 0;border:none;padding:4px 0;font-family:Poppins,sans-serif;font-size:14px}.back-btn:hover{color:#ffffffd9}.quiz-screen:not(.quiz-screen--dark) .back-btn{color:var(--text-muted)}.quiz-screen:not(.quiz-screen--dark) .back-btn:hover{color:var(--text-primary)}.step-dots{align-items:center;gap:6px;display:flex}.step-dot{width:6px;height:6px;transition:all var(--duration-base) var(--ease);background:#fff3;border-radius:50%}.step-dot.done{background:#d4943a80}.step-dot.active{background:var(--amber);border-radius:3px;width:20px}.quiz-body{flex-shrink:0;padding:0 20px}.quiz-step-label{letter-spacing:.1em;text-transform:uppercase;color:#ffffff59;margin-top:24px;margin-bottom:8px;font-family:Poppins,sans-serif;font-size:11px;font-weight:500}.quiz-question{color:#f0ead6;letter-spacing:-.02em;margin-bottom:28px;font-family:Poppins,sans-serif;font-size:28px;font-weight:700;line-height:1.18}.quiz-screen:not(.quiz-screen--dark) .quiz-question{color:var(--text-primary)}.option-list{flex-direction:column;flex:1;gap:10px;padding:0 20px 32px;display:flex}.quiz-screen--dark .option-list{padding-top:0}.quiz-screen--dark.entered .option-btn,.quiz-screen--dark.entered .duration-tile,.quiz-screen--dark.entered .dest-card{animation:quizSlideUp .4s var(--ease-out) both}.option-btn--driver{align-items:flex-start}.option-btn--driver .option-icon{margin-top:3px}.option-btn{border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease-spring);text-align:left;background:#ffffff0d;border:1.5px solid #ffffff1a;align-items:center;gap:14px;width:100%;min-height:68px;padding:16px 18px;display:flex;position:relative;overflow:hidden}.option-btn:before{content:"";background:var(--amber);width:3px;transition:transform var(--duration-fast) var(--ease-spring);border-radius:0 2px 2px 0;position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.option-btn:hover{background:#ffffff17;border-color:#ffffff2e}.option-btn:hover:before{transform:scaleY(1)}.option-btn:active,.option-btn.selected{background:#d4943a24;border-color:#d4943a80}.option-btn.selected:before{transform:scaleY(1)}.quiz-screen:not(.quiz-screen--dark) .option-btn{background:var(--warm-white);border-color:var(--border);box-shadow:var(--shadow-sm)}.quiz-screen:not(.quiz-screen--dark) .option-btn:active{background:var(--amber-pale);border-color:var(--amber)}.option-icon{flex-shrink:0;font-size:26px;line-height:1}.option-text{flex:1;min-width:0}.option-label{color:#f0ead6;font-family:Poppins,sans-serif;font-size:15px;font-weight:500}.quiz-screen:not(.quiz-screen--dark) .option-label{color:var(--text-primary)}.option-sub{color:#ffffff61;margin-top:2px;font-family:Poppins,sans-serif;font-size:12px}.quiz-screen:not(.quiz-screen--dark) .option-sub{color:var(--text-muted)}.option-arrow{color:#ffffff40;transition:color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);flex-shrink:0;font-size:16px}.option-btn:hover .option-arrow{color:var(--amber);transform:translate(3px)}.option-rate{color:var(--amber-light);white-space:nowrap;background:#d4943a26;border:1px solid #d4943a47;border-radius:100px;margin-top:5px;padding:2px 9px;font-family:Poppins,sans-serif;font-size:11px;font-weight:600;display:inline-block}.duration-grid{flex:1;grid-template-columns:1fr 1fr;gap:10px;padding:0 20px 32px;display:grid}.duration-tile{border-radius:var(--radius-lg);cursor:pointer;transition:background var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease-spring);background:#ffffff0d;border:1.5px solid #ffffff1a;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:24px 16px;display:flex;position:relative;overflow:hidden}.duration-tile:hover{background:#ffffff17;border-color:#ffffff2e}.duration-tile:active,.duration-tile.selected{border-color:var(--amber);background:#d4943a29;transform:scale(.97)}.duration-tile__num{color:#f0ead6;letter-spacing:-.02em;font-family:Poppins,sans-serif;font-size:36px;font-weight:800;line-height:1}.duration-tile__sub{color:#ffffff73;margin-top:2px;font-family:Poppins,sans-serif;font-size:13px}.duration-tile__hint{color:var(--amber-light);background:#d4943a24;border-radius:100px;margin-top:8px;padding:2px 8px;font-family:Poppins,sans-serif;font-size:11px;font-weight:500}.quiz-screen--dest{overflow-y:auto}.quiz-body--dest{padding-bottom:0}.dest-grid{flex:1;grid-template-columns:1fr 1fr;gap:10px;padding:4px 20px 32px;display:grid}.dest-card{border-radius:var(--radius-lg);aspect-ratio:3/4;cursor:pointer;transition:transform var(--duration-fast) var(--ease-spring), box-shadow var(--duration-fast) var(--ease);position:relative;overflow:hidden;box-shadow:0 2px 12px #0006}.dest-card:hover{transform:translateY(-2px)scale(1.01);box-shadow:0 8px 28px #00000080}.dest-card:active,.dest-card.tapped{transform:scale(.95)}.dest-card__photo{object-fit:cover;background:#0e1e10;width:100%;height:100%;display:block}.dest-card__overlay{background:linear-gradient(#0000 25%,#000000d9 100%);position:absolute;inset:0}.dest-card__content{padding:10px 10px 12px;position:absolute;bottom:0;left:0;right:0}.dest-card__name{color:#fff;margin-bottom:2px;font-family:Poppins,sans-serif;font-size:15px;font-weight:600;line-height:1.2}.dest-card__teaser{color:#ffffffad;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;font-family:Poppins,sans-serif;font-size:10px;line-height:1.3;display:-webkit-box;overflow:hidden}.dest-card__badge{color:var(--amber-light);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#d4943a40;border:1px solid #d4943a73;border-radius:100px;padding:2px 7px;font-family:Poppins,sans-serif;font-size:9px;font-weight:500;display:inline-block}.calc-screen{background:var(--cream);justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.calc-bg-photo{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .3s var(--ease-out);filter:saturate(.6);z-index:0;position:absolute;inset:0}.calc-bg-photo.visible{opacity:.08}.calc-content{z-index:1;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:0 32px;display:flex;position:relative}.calc-logo{opacity:.55;height:28px;margin-bottom:80px}.calc-dots{justify-content:center;gap:8px;margin-bottom:20px;display:flex}@keyframes pulse-dot{0%,to{opacity:.3;transform:scale(.5)}50%{opacity:1;transform:scale(1)}}.calc-dot{background:var(--amber);width:8px;height:8px;animation:pulse-dot .9s var(--ease) infinite;border-radius:50%}.calc-dot:nth-child(2){animation-delay:.15s}.calc-dot:nth-child(3){animation-delay:.3s}.calc-step-text{color:var(--text-primary);text-align:center;transition:opacity 60ms var(--ease);min-height:28px;font-family:Poppins,sans-serif;font-size:20px;font-style:italic;font-weight:300}.calc-step-text.fading{opacity:0}.result-screen{background:var(--dark-navy);min-height:100dvh}.result-hero{height:260px;position:relative;overflow:hidden}.result-hero__photo{object-fit:cover;filter:brightness(.85)saturate(1.1);width:100%;height:100%;transition:transform .6s var(--ease-out);transform:scale(1.04)}.result-hero__photo.loaded{transform:scale(1)}.result-hero__overlay{background:linear-gradient(#0f192333 0%,#0f192300 40%,#0f1923d9 100%);position:absolute;inset:0}.result-top-bar{z-index:5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:absolute;top:0;left:0;right:0}.result-hero__content{opacity:0;transition:transform .4s var(--ease-out) .2s, opacity .4s var(--ease-out) .2s;position:absolute;bottom:20px;left:20px;right:20px;transform:translateY(12px)}.result-hero__content.visible{opacity:1;transform:translateY(0)}.result-hero__trip-type{letter-spacing:.07em;color:#fff;background:#ffffff26;border:1px solid #ffffff40;border-radius:100px;margin-bottom:8px;padding:4px 12px;font-family:Poppins,sans-serif;font-size:11px;display:inline-block}.result-hero__name{color:#fff;margin-bottom:6px;font-family:Poppins,sans-serif;font-size:32px;font-weight:800;line-height:1}.result-hero__route{color:#ffffffbf;font-family:Poppins,sans-serif;font-size:13px}.drive-warning{color:var(--amber-light);background:#d4943a1f;border:1px solid #d4943a4d;border-radius:8px;margin:16px 20px 0;padding:10px 14px;font-family:Poppins,sans-serif;font-size:13px;line-height:1.45}.car-card{background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-lg);margin:20px;overflow:hidden}.car-card__photo{object-fit:cover;object-position:center 60%;width:100%;height:180px;display:block}.car-card__body{padding:16px}.car-card__meta{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.car-card__name{color:var(--text-light);font-family:Poppins,sans-serif;font-size:22px;font-weight:700}.car-card__price{text-align:right}.car-card__price-from{color:var(--text-light-muted);margin-bottom:2px;font-family:Poppins,sans-serif;font-size:11px;display:block}.car-card__price-amount{color:var(--amber-light);font-family:Poppins,sans-serif;font-size:22px;font-weight:700}.car-card__price-unit{color:var(--text-light-muted);font-family:Poppins,sans-serif;font-size:12px}.car-card__highlight{color:var(--amber-light);letter-spacing:.05em;text-transform:uppercase;background:#d4943a26;border:1px solid #d4943a4d;border-radius:100px;margin-bottom:8px;padding:4px 10px;font-family:Poppins,sans-serif;font-size:11px;display:inline-block}.car-card__why{color:var(--text-light-muted);margin-bottom:12px;font-family:Poppins,sans-serif;font-size:14px;line-height:1.5}.car-card__unlimited{color:var(--amber-light);opacity:.85;margin-bottom:12px;font-family:Poppins,sans-serif;font-size:12px}.car-card__sigvi-badge{border-top:1px solid var(--dark-border);color:var(--text-light-muted);align-items:center;gap:6px;padding-top:12px;font-family:Poppins,sans-serif;font-size:12px;display:flex}.car-card__cta{text-align:center;background:var(--amber);color:#fff;border-radius:var(--radius-lg);cursor:pointer;transition:background var(--duration-fast) var(--ease);border:none;margin:12px 0 0;padding:12px;font-family:Poppins,sans-serif;font-size:14px;font-weight:500;text-decoration:none;display:block}.car-card__cta:hover{background:#c4842a}.cost-card{background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-lg);margin:0 20px 20px;padding:20px}.cost-card__title{color:var(--text-light-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px;font-family:Poppins,sans-serif;font-size:13px;font-style:italic;font-weight:300}.cost-row{border-bottom:1px solid var(--dark-border);justify-content:space-between;align-items:baseline;padding:9px 0;display:flex}.cost-row:last-of-type{border-bottom:none}.cost-row__left{align-items:baseline;gap:8px;display:flex}.cost-row__label{color:var(--text-light-muted);font-family:Poppins,sans-serif;font-size:14px}.cost-row__sub{color:var(--text-light-muted);opacity:.65;font-size:11px}.cost-row__value{color:var(--text-light);font-family:Poppins,sans-serif;font-size:15px;font-weight:500}.cost-divider{border:none;border-top:1px solid var(--dark-border);margin:4px 0 12px}.cost-total-row{justify-content:space-between;align-items:baseline;margin-bottom:4px;display:flex}.cost-total-label{color:var(--text-light-muted);font-family:Poppins,sans-serif;font-size:14px}.cost-total-value{color:var(--amber-light);font-family:Poppins,sans-serif;font-size:30px;font-weight:800}.cost-note{color:var(--text-light-muted);opacity:.6;margin-top:10px;font-family:Poppins,sans-serif;font-size:11px;line-height:1.4}.deposit-note{border-top:1px solid var(--dark-border);color:var(--text-light-muted);align-items:flex-start;gap:8px;margin-top:14px;padding-top:12px;font-family:Poppins,sans-serif;font-size:13px;line-height:1.4;display:flex}.deposit-note__arrow{color:var(--amber);flex-shrink:0;margin-top:1px;font-size:15px}.attractions-section{margin:0 20px 20px}.attractions-title{color:var(--text-light-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px;font-family:Poppins,sans-serif;font-size:13px;font-style:italic;font-weight:300}.attraction-card{background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-md);align-items:flex-start;gap:12px;margin-bottom:8px;padding:14px 16px;display:flex}.attraction-icon{flex-shrink:0;margin-top:1px;font-size:20px}.attraction-name{color:var(--text-light);margin-bottom:3px;font-family:Poppins,sans-serif;font-size:14px;font-weight:500}.attraction-desc{color:var(--text-light-muted);font-family:Poppins,sans-serif;font-size:13px;line-height:1.45}.attraction-tag{letter-spacing:.05em;text-transform:uppercase;border-radius:100px;margin-top:6px;padding:2px 8px;font-family:Poppins,sans-serif;font-size:10px;display:inline-block}.attraction-tag--free{color:#01b8ba;background:#01b8ba26;border:1px solid #01b8ba4d}.attraction-tag--paid{color:var(--amber-light);background:#d4943a26;border:1px solid #d4943a40}.unlock-section{background:linear-gradient(135deg, var(--dark-surface) 0%, #d4943a0f 100%);border-radius:var(--radius-lg);border:1.5px solid #d4943a40;margin:0 20px 20px;padding:22px 20px}.unlock-section__title{color:var(--amber-light);margin-bottom:4px;font-family:Poppins,sans-serif;font-size:20px;font-weight:300}.unlock-section__save{color:var(--text-light-muted);margin-bottom:18px;font-family:Poppins,sans-serif;font-size:14px}.email-input{border:1.5px solid var(--dark-border);border-radius:var(--radius-sm);width:100%;color:var(--text-light);transition:border-color var(--duration-fast) var(--ease);box-sizing:border-box;background:#ffffff0f;outline:none;margin-bottom:10px;padding:12px 14px;font-family:Poppins,sans-serif;font-size:15px}.email-input::placeholder{color:var(--text-light-muted);opacity:.6}.email-input:focus{border-color:var(--amber)}.email-input.error{border-color:#e05a5a}.gdpr-row{align-items:flex-start;gap:10px;margin-bottom:16px;display:flex}.gdpr-checkbox{width:18px;height:18px;accent-color:var(--amber);cursor:pointer;flex-shrink:0;margin-top:2px}.gdpr-label{color:var(--text-light-muted);cursor:pointer;font-family:Poppins,sans-serif;font-size:13px;line-height:1.45}.gdpr-label a{color:var(--amber-light);text-decoration:underline}.email-error{color:#e07070;min-height:16px;margin-bottom:10px;font-family:Poppins,sans-serif;font-size:12px}.unlock-hint{color:var(--text-light-muted);opacity:.6;text-align:center;margin-top:8px;margin-bottom:0;font-family:Poppins,sans-serif;font-size:12px}.unlock-revealed{text-align:center;padding-top:4px}.unlock-revealed__label{color:var(--text-light-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:14px;font-family:Poppins,sans-serif;font-size:12px}@keyframes revealCode{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.reveal-animate{animation:.45s cubic-bezier(.22,1,.36,1) revealCode}.code-chip{border-radius:var(--radius-sm);background:#0000004d;border:1px solid #d4943a59;align-items:center;gap:10px;margin-bottom:10px;padding:10px 14px;display:flex}.code-chip--revealed{border:2px solid var(--amber);box-sizing:border-box;background:#d4943a1a;border-radius:12px;justify-content:center;align-items:center;gap:16px;width:100%;margin-bottom:12px;padding:16px 20px;display:flex}.code-chip code{color:var(--amber-light);letter-spacing:.12em;flex:1;font-family:Courier New,monospace;font-size:18px;font-weight:700}.code-chip--revealed code{letter-spacing:.12em;flex:unset;font-size:26px}.copy-btn{color:var(--text-light-muted);border:1px solid var(--dark-border);cursor:pointer;transition:all var(--duration-fast) var(--ease);background:0 0;border-radius:6px;flex-shrink:0;padding:5px 10px;font-family:Poppins,sans-serif;font-size:12px;font-weight:500}.copy-btn:active{border-color:var(--amber);color:var(--amber-light);background:#d4943a26}.discount-sub{color:var(--text-light-muted);font-family:Poppins,sans-serif;font-size:12px}.ferry-card{border-radius:var(--radius-lg);background:#01b8ba1a;border:1px solid #01b8ba40;margin:0 20px 20px;padding:18px 20px}.ferry-card__title{letter-spacing:.08em;color:#01b8ba;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:14px;font-family:Poppins,sans-serif;font-size:11px;font-weight:500;display:flex}.ferry-row{border-bottom:1px solid #01b8ba26;justify-content:space-between;padding:7px 0;display:flex}.ferry-row:last-of-type{border-bottom:none}.ferry-row__label{color:var(--text-light-muted);font-family:Poppins,sans-serif;font-size:13px}.ferry-row__value{color:var(--text-light);text-align:right;max-width:60%;font-family:Poppins,sans-serif;font-size:13px;font-weight:500}.ferry-note{color:#01b8babf;margin-top:12px;font-family:Poppins,sans-serif;font-size:12px;line-height:1.45}.ferry-book-btn{text-align:center;border-radius:var(--radius-md);color:#01b8ba;transition:background var(--duration-fast) var(--ease);cursor:pointer;background:#01b8ba26;border:1px solid #01b8ba59;margin-top:14px;padding:11px;font-family:Poppins,sans-serif;font-size:14px;font-weight:500;text-decoration:none;display:block}.ferry-book-btn:hover{background:#01b8ba40}.final-cta-section{flex-direction:column;align-items:center;gap:16px;padding:0 20px 32px;display:flex}.final-cta-btn{background:var(--amber);color:#fff;border-radius:var(--radius-xl);cursor:pointer;text-align:center;box-sizing:border-box;width:100%;transition:background var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease-spring);border:none;padding:18px 24px;font-family:Poppins,sans-serif;font-size:17px;font-weight:600;text-decoration:none;display:block}.final-cta-btn:hover{background:#c4842a}.final-cta-btn:active{transform:scale(.97)}.restart-link{color:var(--text-light-muted);cursor:pointer;opacity:.65;transition:opacity var(--duration-fast) var(--ease);background:0 0;border:none;padding:4px 0;font-family:Poppins,sans-serif;font-size:14px}.restart-link:hover{opacity:1}.result-disclaimer{color:var(--text-light-muted);opacity:.45;margin:0 20px 40px;font-family:Poppins,sans-serif;font-size:11px;line-height:1.55}.map-block{border-radius:var(--radius-md);border:1px solid var(--dark-border);height:220px;margin:16px 20px 0;overflow:hidden}.route-map{width:100%;height:100%}.leaflet-tile-pane{filter:saturate(.9)brightness(.95)}.map-dot{border:2px solid #fff;border-radius:50%;box-shadow:0 1px 4px #0006}.map-dot--start{background:#6b7280;width:10px;height:10px;margin:-5px 0 0 -5px}.map-dot--end{background:#ff6e4e;width:14px;height:14px;margin:-7px 0 0 -7px}.map-open-link{text-align:right;color:var(--amber);opacity:.85;margin:6px 20px 0;font-family:Poppins,sans-serif;font-size:12px;text-decoration:none;display:block}.map-open-link:hover{opacity:1}.restaurants-section{margin:0 20px 20px}.restaurants-title{color:var(--text-light-muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px;font-family:Poppins,sans-serif;font-size:13px;font-style:italic;font-weight:300}.restaurant-card{background:var(--dark-surface);border:1px solid var(--dark-border);border-radius:var(--radius-md);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;padding:14px 16px;display:flex}.restaurant-card__info{flex:1;min-width:0}.restaurant-card__name{color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-family:Poppins,sans-serif;font-size:14px;font-weight:500;overflow:hidden}.restaurant-card__desc{color:var(--text-light-muted);font-family:Poppins,sans-serif;font-size:13px;line-height:1.4}.restaurant-card__right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.restaurant-rating{color:var(--amber-light);white-space:nowrap;font-family:Poppins,sans-serif;font-size:13px;font-weight:500}.restaurant-maps-link{color:var(--text-light-muted);white-space:nowrap;opacity:.7;transition:opacity var(--duration-fast) var(--ease);font-family:Poppins,sans-serif;font-size:11px;text-decoration:none}.restaurant-maps-link:hover{opacity:1;color:var(--amber-light)}.cookie-bar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--dark-border);width:100%;max-width:480px;color:var(--text-light-muted);z-index:200;transition:transform var(--duration-base) var(--ease);background:#0f1923f2;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;font-family:Poppins,sans-serif;font-size:13px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.cookie-bar.hidden{transform:translate(-50%)translateY(100%)}.cookie-bar button{background:var(--amber);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:6px 14px;font-family:Poppins,sans-serif;font-size:13px;font-weight:500}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}img{display:block}button{font:inherit}a{color:inherit}.hidden{display:none!important}@media (width>=481px){body{background:#1a0824}}
