.planner-hero{grid-template-columns:minmax(0,1fr) minmax(320px,.92fr);align-items:stretch;gap:1.25rem;display:grid}.planner-hero__copy{border-radius:var(--radius-xl);background:linear-gradient(150deg, #ffffff24, transparent 45%), linear-gradient(145deg, #d7ac563d, transparent 60%), linear-gradient(135deg, var(--navy), var(--navy-deep));color:#fff;box-shadow:var(--shadow);padding:2rem}.planner-hero__copy p{color:#ffffffd6;max-width:40rem;margin:1rem 0 0}.planner-hero__copy h1{white-space:nowrap;max-width:none;font-size:clamp(3rem,5.2vw,4.6rem)}.planner-hero__tags{flex-wrap:wrap;gap:.7rem;margin-top:1.5rem;display:flex}.planner-hero__tags a{color:#fffffff0;background:#ffffff1a;border:1px solid #ffffff29;border-radius:999px;padding:.62rem .95rem;text-decoration:none;display:inline-flex}.planner-layout{grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);align-items:start;gap:1.2rem;display:grid}.planner-sidebar{gap:1rem;display:grid}.planner-card,.trip-form-shell{border-radius:var(--radius-xl);box-shadow:var(--shadow);background:#ffffffeb;border:1px solid #0e223614;padding:1.6rem}.planner-card--soft{background:linear-gradient(#ffffffdb,#d7eef0b8)}.planner-card p{color:var(--muted);margin:1rem 0 0}.planner-form-column{min-width:0}.trip-form__notice{border-radius:1rem;margin:0 0 1rem;padding:.95rem 1rem;font-weight:700}.trip-form__notice--success{color:#124024;background:#a3d6a859;border:1px solid #31a73b3d}.trip-form__notice--error{color:#6c1e25;background:#f2b7bc5c;border:1px solid #cf2e2e33}.trip-form__notice--rate_limited{color:#5d4212;background:#d7ac563d;border:1px solid #9e701f33}.trip-form{gap:1.1rem;display:grid}.trip-form__summary{border-radius:var(--radius-lg);background:linear-gradient(135deg,#d7eef0b8,#fffdf8f2);border:1px solid #0e5b641f;padding:1.15rem}.trip-form__summary h2{color:var(--navy);font-size:clamp(1.75rem,3vw,2.4rem)}.trip-form__summary p{color:var(--muted);margin:.65rem 0 0;line-height:1.65}.trip-form__fieldset{border-radius:var(--radius-lg);background:#fffdf8ad;border:1px solid #0e223614;min-width:0;margin:0;padding:1.15rem}.trip-form__fieldset legend{color:var(--teal);letter-spacing:.14em;text-transform:uppercase;padding:0 .35rem;font-size:.82rem;font-weight:900}.trip-form__honeypot{opacity:0;pointer-events:none;position:absolute;left:-9999px}.trip-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem;display:grid}.trip-form__field{gap:.45rem;display:grid;position:relative}.trip-form__field--wide{grid-column:1/-1}.trip-form__field span{color:var(--ink);font-size:.92rem;font-weight:800}.trip-form__party-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.trip-form__subfield{gap:.45rem;display:grid;position:relative}.trip-form__field label,.trip-form__subfield label{color:var(--ink);font-size:.92rem;font-weight:800}.trip-form__subfield span{color:var(--muted);font-size:.82rem;font-weight:700}.trip-form__field input,.trip-form__field select,.trip-form__field textarea,.trip-form__subfield input,.trip-form__subfield select,.trip-form__subfield textarea{box-sizing:border-box;width:100%;min-height:3.35rem;color:var(--ink);background:#fffffffa;border:1px solid #0e22361f;border-radius:1rem;padding:.9rem 1rem;line-height:1.35;transition:background-color .16s,border-color .16s,box-shadow .16s}.trip-form__field input[type=date]{color:#34546d}.trip-form__field input[type=date]::-webkit-datetime-edit,.trip-form__field input[type=date]::-webkit-datetime-edit-fields-wrapper,.trip-form__field input[type=date]::-webkit-datetime-edit-text,.trip-form__field input[type=date]::-webkit-datetime-edit-month-field,.trip-form__field input[type=date]::-webkit-datetime-edit-day-field,.trip-form__field input[type=date]::-webkit-datetime-edit-year-field{color:#34546d}.trip-form__field select,.trip-form__subfield select{appearance:none;background:linear-gradient(45deg, transparent 50%, var(--teal) 50%) calc(100% - 1.35rem) 50% / .42rem .42rem no-repeat, linear-gradient(135deg, var(--teal) 50%, transparent 50%) calc(100% - 1.05rem) 50% / .42rem .42rem no-repeat, #fffffffa;min-height:3.35rem;padding-right:2.75rem}.trip-form__subfield select{min-height:2.95rem;padding-top:.72rem;padding-bottom:.72rem}.trip-form__native-control{clip-path:inset(50%);inset:auto auto 0 0;opacity:0!important;pointer-events:none!important;border:0!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;position:absolute!important}.trip-choice,.trip-date-picker{min-width:0;position:relative}.trip-choice__button,.trip-date-picker__button{width:100%;min-height:3.35rem;color:var(--ink);text-align:left;cursor:pointer;background:linear-gradient(#fffffffa,#fafdfcf5);border:1px solid #0e22361f;border-radius:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.88rem 1rem;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;box-shadow:0 10px 22px #07131d0d}.trip-choice__button:hover,.trip-choice.is-open .trip-choice__button,.trip-date-picker__button:hover,.trip-date-picker.is-open .trip-date-picker__button{border-color:#0e5b6457;box-shadow:0 14px 32px #07131d14}.trip-choice__button:focus-visible,.trip-date-picker__button:focus-visible,.trip-choice__option:focus-visible,.trip-date-picker__nav:focus-visible,.trip-date-picker__day:focus-visible{outline-offset:2px;outline:2px solid #0e5b643d}.trip-choice__value,.trip-date-picker__value{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.trip-choice__chevron,.trip-date-picker__icon{width:1.9rem;height:1.9rem;color:var(--teal);background:#0e5b641a;border-radius:50%;place-items:center;display:inline-grid}.trip-choice__chevron:before{content:"";border-bottom:2px solid;border-right:2px solid;width:.5rem;height:.5rem;transform:translateY(-.1rem)rotate(45deg)}.trip-date-picker__icon:before{content:"";border:2px solid;border-top-width:3px;border-radius:.22rem;width:.86rem;height:.8rem}.trip-choice__list,.trip-date-picker__panel{z-index:30;transform:translateX(var(--trip-popup-shift-x,0));background:#fffdf8;border:1px solid #0e22361f;border-radius:1.05rem;display:none;position:absolute;top:calc(100% + .45rem);left:0;right:0;overflow:hidden;box-shadow:0 22px 50px #07131d29}.trip-choice--open-up .trip-choice__list,.trip-date-picker--open-up .trip-date-picker__panel{top:auto;bottom:calc(100% + .45rem)}.trip-choice.is-open .trip-choice__list,.trip-date-picker.is-open .trip-date-picker__panel{display:block}.trip-choice__list{max-height:var(--trip-popup-max-height,min(22rem, 70vh));overscroll-behavior:contain;scrollbar-width:none;padding:.35rem;overflow-y:auto}.trip-choice__list::-webkit-scrollbar,.trip-date-picker__panel::-webkit-scrollbar{width:0;height:0}.trip-choice__option{width:100%;min-height:2.55rem;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.78rem;align-items:center;padding:.62rem .95rem;display:grid}.trip-choice__option:hover,.trip-choice__option.is-selected{color:var(--navy);background:#d7eef0b8}.trip-choice__option.is-selected{font-weight:850}.trip-date-picker__panel{width:min(21rem,100vw - 2rem);max-height:var(--trip-popup-max-height,calc(100vh - 1rem));overscroll-behavior:contain;scrollbar-width:none;padding:.75rem;right:auto;overflow-y:auto}.trip-form__grid>.trip-form__field:nth-child(2n) .trip-date-picker__panel{left:auto;right:0}.trip-date-picker__header{grid-template-columns:2.35rem minmax(0,1fr) 2.35rem;align-items:center;gap:.35rem;margin-bottom:.55rem;display:grid}.trip-date-picker__title{color:var(--navy);text-align:center;font-family:Cormorant Garamond,serif;font-size:1.35rem;line-height:1}.trip-date-picker__nav{width:2.35rem;height:2.35rem;color:var(--teal);cursor:pointer;background:#fff;border:1px solid #0e22361a;border-radius:50%;place-items:center;display:grid}.trip-date-picker__weekdays,.trip-date-picker__days{grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;display:grid}.trip-date-picker__weekdays{color:var(--muted);text-align:center;text-transform:uppercase;margin-bottom:.25rem;font-size:.72rem;font-weight:850}.trip-date-picker__day{aspect-ratio:1;min-width:0;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.trip-date-picker__day:hover{background:#d7eef0b8}.trip-date-picker__day.is-today{font-weight:850;box-shadow:inset 0 0 0 1.5px #0e5b649e}.trip-date-picker__day.is-selected{color:#fff;background:#0c4150;font-weight:850}.trip-date-picker__day.is-selected.is-today{box-shadow:inset 0 0 0 1.5px #d7ac56c7}.trip-date-picker__day--empty{pointer-events:none}.trip-form__native-control[aria-invalid=true]+.trip-choice .trip-choice__button,.trip-form__native-control[aria-invalid=true]+.trip-date-picker .trip-date-picker__button{background:#fff7f7fa;border-color:#ae363f99;box-shadow:0 0 0 3px #ae363f1a}.trip-form__field textarea{resize:vertical;min-height:9rem}.trip-form__char-count{color:var(--muted);justify-self:end;margin-top:-.2rem;font-size:.82rem;font-weight:850;line-height:1.35}.trip-form__char-count.is-near-limit{color:#8c681a}.trip-form__char-count.is-over-limit{color:#a93e46}.trip-form__field input:focus,.trip-form__field select:focus,.trip-form__field textarea:focus,.trip-form__subfield input:focus,.trip-form__subfield select:focus,.trip-form__subfield textarea:focus{border-color:#0e5b6457;outline:2px solid #0e5b6433}.trip-form__field input[aria-invalid=true],.trip-form__field select[aria-invalid=true],.trip-form__field textarea[aria-invalid=true],.trip-form__subfield input[aria-invalid=true],.trip-form__subfield select[aria-invalid=true],.trip-form__subfield textarea[aria-invalid=true],.trip-form__consent input[aria-invalid=true]{background:#fff7f7fa;border-color:#ae363f99;box-shadow:0 0 0 3px #ae363f1a}.trip-form__consent{background:#f7fafaf5;border:1px solid #0e223614;border-radius:1rem;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.35rem .7rem;padding:.95rem 1rem;display:grid}.trip-form__consent input{appearance:none;cursor:pointer;background:#fff;border:1.5px solid #0e223633;border-radius:.34rem;grid-row:1/span 3;place-content:center;width:1.2rem;height:1.2rem;min-height:0;margin:.18rem 0 0;padding:0;transition:background-color .16s,border-color .16s,box-shadow .16s;display:grid}.trip-form__consent input:before{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:.62rem;height:.38rem;transition:transform .14s;transform:translateY(-.04rem)rotate(-45deg)scale(0)}.trip-form__consent input:checked{background:#0c4150;border-color:#0c4150;box-shadow:0 8px 18px #0c41502e}.trip-form__consent input:checked:before{transform:translateY(-.04rem)rotate(-45deg)scale(1)}.trip-form__consent input:focus-visible{outline-offset:3px;outline:2px solid #0e5b643d}.trip-form__consent label{font-weight:800;line-height:1.45}.trip-form__consent span,.trip-form__privacy{margin:0;line-height:1.55}.trip-form__privacy,.trip-form__consent .trip-form__error{grid-column:2}.trip-form__privacy{color:var(--muted);font-size:.88rem}.trip-form__privacy a{color:var(--teal);text-underline-offset:.16em;font-weight:800;text-decoration:underline}.trip-form__error{color:#8b2530;min-height:1.25em;margin:0;font-size:.84rem;font-weight:800;line-height:1.45}.trip-form__field.has-error label,.trip-form__subfield.has-error label,.trip-form__consent.has-error label{color:#6c1e25}.trip-form__actions{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.trip-form__actions p{color:var(--muted);margin:0;font-size:.94rem}.trip-form__actions .trip-form__required-note{color:var(--teal);flex-basis:100%;font-weight:850;line-height:1.5}@media (width<=1100px){.planner-hero,.planner-layout,.trip-form__grid{grid-template-columns:1fr}.planner-hero__image{width:100%;min-width:0;min-height:0}.trip-form__party-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.planner-hero__copy,.planner-card,.trip-form-shell{border-radius:1.5rem;padding:1.3rem}.planner-hero__copy h1{max-width:none;font-size:clamp(2.15rem,10.5vw,3.4rem)}.planner-hero__tags{gap:.55rem}.planner-hero__tags a{padding:.55rem .78rem}.trip-form__party-grid{grid-template-columns:1fr}.trip-form__fieldset,.trip-form__summary{border-radius:1.2rem;padding:1rem}.trip-form__actions .button{width:100%}.trip-date-picker__panel,.trip-form__grid>.trip-form__field:nth-child(2n) .trip-date-picker__panel{width:min(19.5rem,100vw - 2.4rem);left:0;right:auto}}