.hero{background:var(--color-bg-main);isolation:isolate;padding:112px 0 72px;position:relative}.hero:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 16% 20%, color-mix(in srgb, var(--color-accent-cream) 85%, transparent), transparent 60%), radial-gradient(ellipse at 88% 78%, color-mix(in srgb, var(--color-secondary) 7%, transparent), transparent 56%);position:absolute;inset:0}.hero-layout{grid-template-columns:1.05fr 1fr;align-items:center;gap:88px;display:grid}.hero-content{min-width:0}.hero-brandline{color:var(--color-text-muted);margin-bottom:36px;font-size:.8rem;font-weight:500}.hero-title{letter-spacing:-.055em;margin-bottom:26px;font-size:clamp(3rem,5.7vw,5rem);font-weight:500;line-height:1.12}.hero-title>span{display:block}.hero-title-accent{color:var(--color-secondary)}.hero-subtitle{max-width:360px;color:var(--color-text-muted);font-size:1rem;line-height:1.8}.hero-primary-actions{margin:36px 0 0}.hero-plan-link{letter-spacing:0;border-radius:999px;gap:20px;min-height:54px;padding:17px 25px;font-size:.88rem}.hero-crew{min-width:0;margin:0}.hero-crew-photo{aspect-ratio:1.03;background:var(--color-accent-cream);border-radius:120px 120px 24px 24px;width:100%;position:relative;overflow:hidden}.hero-crew-photo img{object-fit:cover;object-position:center 60%}.hero-crew-link{background:var(--color-bg-main);width:48px;height:48px;color:var(--color-primary);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:22px;right:22px}.hero-crew-caption{color:var(--color-text-muted);text-align:center;margin-top:18px;font-size:.75rem}.hero-booking-widget{border:1px solid var(--color-border);background:var(--color-bg-alt);border-radius:24px;max-width:470px;margin-top:32px;padding:24px}.widget-title{color:var(--color-primary);font-size:1rem}.widget-subtitle{color:var(--color-text-muted);margin:8px 0 18px;font-size:.8rem}.zip-label{margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.zip-input-row{gap:10px;display:flex}.zip-input{border:1px solid var(--color-text-muted);background:var(--color-bg-main);width:100%;min-width:0;min-height:48px;font-family:var(--font-body);color:var(--color-primary);border-radius:12px;flex:1;padding:12px;font-size:1rem}.zip-input::placeholder{color:var(--color-text-muted)}.btn-zip{letter-spacing:0;border-radius:12px;flex-shrink:0;gap:8px;padding:12px 17px;font-size:.8rem}.hero-zip-feedback{color:var(--color-accent-deep);margin-top:10px;font-size:.8rem}.hero-full-form{color:var(--color-text-muted);text-underline-offset:4px;align-items:center;gap:8px;min-height:44px;margin-top:8px;font-size:.75rem;text-decoration:underline;display:inline-flex}@media (max-width:1100px){.hero-layout{gap:48px}}@media (max-width:800px){.hero{padding:64px 0 48px}.hero-layout{grid-template-columns:1fr;gap:48px}.hero-brandline{margin-bottom:28px;font-size:.76rem}.hero-title{margin-bottom:20px;font-size:clamp(2.7rem,10.5vw,4.5rem)}.hero-subtitle{max-width:360px;font-size:.95rem}.hero-primary-actions{margin-top:28px}.hero-booking-widget{max-width:none}.hero-crew-photo{aspect-ratio:1.2;border-radius:88px 88px 20px 20px}}@media (max-width:380px){.hero-brandline{font-size:.7rem}.hero-booking-widget{padding:16px}.btn-zip{gap:5px;padding:11px}}@media (hover:hover) and (pointer:fine){.hero-crew-link:hover{background:var(--color-accent-cream)}}@media (prefers-reduced-motion:no-preference){@keyframes hero-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-wash-enter{0%{opacity:.35}to{opacity:1}}.hero:before{animation:.85s ease-out backwards hero-wash-enter}.hero-brandline{animation:hero-enter .56s var(--ease-premium) backwards}.hero-title{animation:hero-enter .65s var(--ease-premium) 70ms backwards}.hero-subtitle{animation:hero-enter .65s var(--ease-premium) .14s backwards}.hero-primary-actions{animation:hero-enter .65s var(--ease-premium) .21s backwards}.hero-booking-widget{animation:hero-enter .65s var(--ease-premium) .28s backwards}.hero-crew{animation:hero-enter .76s var(--ease-premium) .16s backwards}.hero-crew-photo img{transition:transform 1s var(--ease-premium)}.hero-plan-link svg,.hero-crew-link svg,.hero-full-form svg,.btn-zip svg{transition:transform .3s var(--ease-premium)}}@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){.hero-crew-photo:hover img{transform:scale(1.035)}.hero-plan-link:hover svg,.hero-full-form:hover svg,.btn-zip:hover svg{transform:translate(3px)}.hero-crew-link:hover svg{transform:translate(2px,-2px)}}
