@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";.waiver-wrap{max-width:900px;margin:auto;padding:56px 24px 90px}.waiver-wrap h1{letter-spacing:-.035em;font-size:clamp(36px,5vw,56px)}.waiver-fields{grid-template-columns:1fr 1fr;gap:18px;display:grid}.waiver-form label{margin:12px 0;font-weight:700;display:block}.waiver-form input:not([type=checkbox]),.waiver-form select,.waiver-month input{color:#071f2a;background:#fff;border:1px solid #a8beba;border-radius:3px;width:100%;margin-top:6px;padding:12px;display:block}:is(.waiver-form input:focus-visible,.waiver-form select:focus-visible){outline-offset:2px;outline:2px solid #008f8a}.waiver-form .waiver-consent{align-items:flex-start;gap:12px;margin:20px 0;font-weight:400;display:flex}.waiver-consent input{accent-color:#006e69;flex-shrink:0;width:21px;height:21px;margin-top:3px}.waiver-terms section{margin:27px 0}.waiver-terms h3{font-size:20px}.waiver-terms p{line-height:1.7}.passenger-card{border-top:1px solid #bcd0cd;padding:20px 0}.passenger-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.passenger-heading h3{font-size:21px}.passenger-count{color:#006e69;white-space:nowrap;font-size:18px}.passenger-fieldset{border:0;min-width:0;margin:0;padding:0}.waiver-button{background:#071f2a;border:1px solid #071f2a;border-radius:3px;margin:10px 16px 10px 0;padding:12px 18px;font-weight:700;text-decoration:none;display:inline-block;color:#fff!important}.waiver-button.secondary{background:#eaf4f2;color:#071f2a!important}.waiver-month{max-width:240px;margin:20px 0;display:block}.waiver-honey{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.waiver-wrap .success-card{max-width:none}.waiver-wrap p,.waiver-wrap a,.request{overflow-wrap:anywhere}@media (max-width:600px){.waiver-fields{grid-template-columns:1fr;gap:0}.waiver-wrap{padding:36px 16px 70px}.waiver-form .admin-card{padding:22px}.passenger-heading{align-items:flex-start}}:root{--background:#f7f8f5;--foreground:#071f2a;--primary:#071f2a;--accent:#20c6bb;--coral:#fa8f80;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);color:var(--foreground);margin:0;font:16px/1.5 DM Sans,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3{font-family:Outfit,Arial,sans-serif;line-height:1.1}.booking-shell,.admin-shell{background:#f4f8f6;min-height:100vh}.booking-nav{color:#fff;background:#071f2a;justify-content:space-between;align-items:center;gap:20px;padding:10px max(24px,50vw - 580px);display:flex}.booking-nav img{width:142px;height:auto;display:block}.booking-nav a{font-weight:700;text-decoration:none}.booking-nav a:last-child{border-bottom:1px solid #20c6bb;padding-bottom:2px}.booking-wrap,.admin-wrap{max-width:1180px;margin:0 auto;padding:62px 24px 100px}.kicker{color:#008f8a;text-transform:uppercase;letter-spacing:.16em;margin:0 0 13px;font-size:13px;font-weight:800}.booking-wrap h1,.admin-wrap h1{letter-spacing:-.045em;margin:0 0 18px;font-size:clamp(38px,5vw,64px)}.lead{color:#53666b;max-width:650px;margin:0 0 38px;font-size:18px}.booking-grid{grid-template-columns:1.15fr .85fr;align-items:start;gap:26px;display:grid}.booking-main,.booking-form,.admin-card,.success-card{background:#fff;border:1px solid #dbe6e4;padding:32px;box-shadow:0 12px 32px #071f2a09}.booking-grid h2,.admin-card h2{margin:0 0 21px;font-size:27px}.booking-main h2:not(:first-child){margin-top:42px}.choice-row,.time-row{flex-wrap:wrap;gap:12px;display:flex}.choice,.time{color:#071f2a;background:#fff;border:1px solid #bcd0cd;border-radius:3px;min-height:56px;padding:12px 18px}.choice{flex:130px;justify-content:space-between;align-items:center;gap:12px;display:flex}.choice strong{font-size:17px}.choice span{color:#53666b}.selected{color:#fff;background:#071f2a;border-color:#071f2a}.selected span{color:#82e2db}.date-label,.time-heading{margin:16px 0 9px;font-weight:700;display:block}.booking-main select{color:#071f2a;background:#fff;border:1px solid #bcd0cd;border-radius:3px;width:100%;max-width:360px;padding:13px}.time-row .time{min-width:105px}.booking-form label,.add-form label{margin:0 0 15px;font-weight:700;display:block}.booking-form input,.booking-form textarea,.add-form input{color:#071f2a;background:#fff;border:1px solid #bcd0cd;border-radius:3px;width:100%;margin-top:7px;padding:12px;display:block}.booking-form input:focus,.booking-form textarea:focus,.add-form input:focus,.booking-main select:focus{outline-offset:2px;outline:2px solid #20c6bb}.submit{color:#071f2a;background:#fa8f80;border:0;border-radius:3px;width:100%;min-height:52px;padding:14px 20px;font-weight:800}.submit:disabled{opacity:.48;cursor:not-allowed}.form-note{color:#53666b;font-size:14px}.error{color:#7c231d;background:#fff0ec;border-left:4px solid #c84e42;padding:12px 15px}.empty{color:#53666b;background:#eaf4f2;padding:18px}.success-card{max-width:650px}.success-card h2{margin:0 0 10px;font-size:32px}.success-card a{color:#006e69;font-weight:700}.admin-grid{grid-template-columns:.8fr 1.2fr;gap:25px;display:grid}.admin-card{margin-bottom:25px}.add-form .submit{margin-top:5px}.admin-message{color:#175d42;background:#e1f7ed;padding:12px 15px}.slot-list{max-height:420px;overflow:auto}.admin-row,.request-head{justify-content:space-between;align-items:center;gap:15px;display:flex}.admin-row{border-top:1px solid #dbe6e4;padding:14px 0}.admin-row strong,.request-head strong{display:block}.admin-row span,.request-head span{color:#53666b;font-size:14px;display:block}.admin-row button,.request-actions button{color:#071f2a;white-space:nowrap;background:#fff;border:1px solid #071f2a;border-radius:3px;padding:8px 12px;font-weight:700}.admin-row button:hover,.request-actions button:hover{background:#eaf4f2}.admin-row button:disabled,.request-actions button:disabled{opacity:.5}.request{border-top:1px solid #dbe6e4;padding:18px 0}.request p{color:#41585d;margin:8px 0}.request-actions{flex-wrap:wrap;gap:8px;display:flex}.request-actions button:last-child{border-color:#c8a2a0}.request a{color:#007d79}.requests{margin-top:2px}@media (max-width:800px){.booking-grid,.admin-grid{grid-template-columns:1fr}.booking-wrap,.admin-wrap{padding:44px 18px 70px}.booking-main,.booking-form,.admin-card{padding:24px}.booking-nav{padding:10px 18px}.booking-nav img{width:120px}}@media (max-width:480px){.choice-row{flex-direction:column}.choice{flex:auto}.booking-wrap h1,.admin-wrap h1{font-size:40px}.request-head{flex-direction:column;align-items:flex-start}}.tip-reminder{color:#071f2a;background:#eaf4f2;border-left:4px solid #20c6bb;margin:20px 0;padding:14px 16px;font-size:16px;font-weight:700;line-height:1.45}.admin-alert-pending{color:#624b12;background:#fff5df;border-left:4px solid #d6a735;margin:0 0 28px;padding:12px 15px}.month-calendar{background:#fff;border:1px solid #dbe6e4;border-radius:4px;overflow:hidden}.month-header{background:#eaf4f2;justify-content:space-between;align-items:center;gap:12px;padding:10px 13px;display:flex}.month-header strong{font-family:Outfit,Arial,sans-serif;font-size:20px}.month-header button{color:#071f2a;background:#fff;border:1px solid #abc9c5;border-radius:3px;width:38px;height:38px;font-size:27px;line-height:1}.month-header button:disabled{opacity:.35;cursor:not-allowed}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding:8px;display:grid}.calendar-grid .weekday{text-align:center;color:#53666b;padding:6px 0;font-size:12px;font-weight:700}.calendar-day{color:#77898b;background:#f6f8f7;border:1px solid #0000;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;min-height:59px;padding:5px;display:flex}.calendar-day span{font-size:15px;font-weight:700}.calendar-day small{white-space:nowrap;font-size:10px;line-height:1.1}.calendar-day.available{color:#073d3b;background:#e5f7f1;border-color:#b4e1d5}.calendar-day.available:hover{background:#c8eee2}.calendar-day.selected{color:#fff;background:#0a5551;border-color:#0a5551}.calendar-day:disabled{cursor:default}.calendar-day:focus-visible{outline-offset:2px;outline:2px solid #0a7772}.month-header button:focus-visible{outline-offset:2px;outline:2px solid #0a7772}.month-form{gap:21px;display:grid}.month-form>label,.add-one label{gap:6px;font-weight:700;display:grid}.month-form input[type=month],.month-form input[type=time],.add-one input[type=time]{color:#071f2a;background:#fff;border:1px solid #bcd0cd;border-radius:3px;max-width:100%;padding:9px 10px}.month-form fieldset{border:0;margin:0;padding:0}.month-form legend{margin-bottom:9px;font-weight:700}.weekday-choices{flex-wrap:wrap;gap:7px;display:flex}.weekday-choices label{cursor:pointer;border:1px solid #bfd3cf;border-radius:3px;align-items:center;gap:5px;padding:7px 10px;font-size:14px;display:inline-flex}.weekday-choices input{accent-color:#087b73}.departure-times{gap:8px;display:grid}.departure-times>div{align-items:center;gap:12px;display:flex}.text-action{color:#006e69;background:0 0;border:0;padding:5px 0;font-weight:700;text-decoration:underline}.day-controls{border-top:1px solid #dbe6e4;margin-top:24px;padding-top:16px}.day-controls h3{margin:0 0 12px;font-size:21px}.add-one{border-top:1px solid #dbe6e4;gap:16px;margin-top:20px;padding-top:16px;display:grid}.add-one fieldset{border:0;margin:0;padding:0}.add-one legend{margin-bottom:9px;font-weight:700}.add-one button{background:#fff;border:1px solid #071f2a;border-radius:3px;padding:10px 14px;font-weight:700}.add-one>button{justify-self:start}.add-one .text-action{border:0;padding:6px 0}.checkout-contact{background:#eaf4f2;border-left:3px solid #20c6bb;margin:18px 0;padding:14px 16px}.checkout-contact p{margin:0 0 8px}.checkout-contact p:last-child{margin-bottom:0}.checkout-contact a{color:#006e69;overflow-wrap:anywhere;font-weight:700}@media (max-width:520px){.calendar-grid{gap:2px;padding:5px}.calendar-day{min-height:52px;padding:3px}.calendar-day small{font-size:9px}.month-header strong{font-size:18px}}.seasickness-policy{color:#49200d;background:#fff4e8;border:2px solid #a83d15;border-left-width:6px;border-radius:12px;margin:24px 0;padding:24px}.seasickness-policy h3,.waiver-terms .seasickness-policy h3{color:#7b2c10;margin:0 0 12px;font-size:clamp(1.25rem,2.5vw,1.6rem);font-weight:800;line-height:1.3}.seasickness-policy p,.waiver-terms .seasickness-policy p{color:#49200d;font-size:1.1rem;font-weight:650;line-height:1.65}.booking-form .policy-consent{align-items:flex-start;gap:12px;margin-top:18px;font-size:1rem;line-height:1.5;display:flex}.booking-form .policy-consent input{accent-color:#7b2c10;flex:0 0 22px;width:22px;height:22px;margin-top:2px}@media (max-width:600px){.seasickness-policy{padding:18px}}
