:root{--navy:#0f254b;--navy-2:#0a355e;--navy-3:#12417a;--ink:#24356e;--ink-soft:#5a6792;--pink:#ff7bac;--pink-deep:#e4578f;--teal:#65cac3;--gold:#e8c574;--sheet:#ffffff;--cream:#f6f1e7;--line:#d9dcea;--err:#b4173f;--t-presenting:#0871b7;--t-pillar:#263a98;--t-premier:#3b3fa8;--t-star:#642b91;--t-host:#952d8d;--t-corporate:#d11f5a;--t-friend:#989899;--t-premium:#e8c574;--t-general:#65cac3;--deco:"Limelight","Infinity Geometric",Impact,sans-serif;--cond:"Antonio","Oswald","Arial Narrow",sans-serif;--sans:"Source Sans 3","Myriad Pro","Avenir Next","Segoe UI",Helvetica,Arial,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}body,html{margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--sans);font-size:16px;color:var(--ink);background:var(--navy);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}img{max-width:100%;display:block;height:auto}button{font:inherit}:focus-visible{outline:3px solid var(--teal);outline-offset:3px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem clamp(1rem,4vw,2.75rem);background:var(--navy)}.topbar img{height:40px;width:auto}.topbar a.reserve-link{color:var(--teal);text-decoration:none;font-family:var(--cond);font-size:1.05rem;letter-spacing:.18em;text-transform:uppercase}.hero{position:relative;color:#fff;overflow:hidden;background:linear-gradient(180deg,rgba(15,37,75,.6),rgba(15,37,75,.38) 45%,rgba(15,37,75,.94)),url(/hero-skyline.jpg) center 62% /cover no-repeat;background-color:var(--navy)}.hero.compact{background-position:center 70%}.hero-inner{position:relative;max-width:68rem;margin:0 auto;padding:clamp(2rem,6vw,4.5rem) clamp(1rem,4vw,2.75rem) clamp(2.5rem,7vw,5rem);display:grid;grid-gap:1.1rem;gap:1.1rem;justify-items:center;text-align:center}.hero.compact .hero-inner{padding-block:clamp(1.5rem,4vw,2.75rem)}.hero-frame{position:absolute;inset:14px;pointer-events:none;border:1.5px solid rgba(232,197,116,.75)}.hero-frame:after,.hero-frame:before{content:"";position:absolute;inset:8px;border:1px solid rgba(232,197,116,.45)}.hero-frame:after{inset:14px;border-width:.5px;border-color:rgba(232,197,116,.3)}.hope-logo{width:clamp(180px,34vw,300px)}.hero .presents{margin:0;font-family:var(--cond);letter-spacing:.26em;text-transform:uppercase;font-size:clamp(.8rem,1.6vw,1rem);color:#fff;opacity:.95}.hero h1{margin:0;font-family:var(--deco);font-weight:400;color:var(--pink);font-size:clamp(2.3rem,7vw,4.6rem);line-height:.98;letter-spacing:.02em;text-wrap:balance;text-shadow:0 2px 18px rgba(15,37,75,.6)}.hero h1.small{font-size:clamp(1.7rem,4.5vw,2.8rem)}.hero .join{margin:.25rem 0 0;font-family:var(--cond);font-size:1.05rem;letter-spacing:.3em;text-transform:uppercase}.hero .date{font-family:var(--cond);color:var(--teal);font-size:clamp(1.4rem,3.6vw,2.2rem);line-height:1.1}.hero .date,.hero .meta{margin:0;letter-spacing:.12em;text-transform:uppercase}.hero .meta{font-weight:600;font-size:clamp(.78rem,1.5vw,.95rem)}.hero .meta span{display:block}.hero .meta .venue{color:var(--teal)}.hero-cta{margin:.75rem 0 0}.deco-rule{display:flex;align-items:center;gap:.9rem;color:var(--gold);margin:0 0 1.5rem;font-size:1.2rem;line-height:1}.deco-rule:after,.deco-rule:before{content:"";flex:1 1;height:1px;background:var(--gold)}.stage{background:var(--navy)}.stage-inner{max-width:68rem;margin:0 auto;padding:0 0 clamp(1.5rem,4vw,3rem)}.layout{display:grid;grid-template-columns:1fr}.sheet{background:var(--sheet);color:var(--ink);padding:clamp(1.25rem,4vw,2.75rem) clamp(1rem,4vw,2.75rem) 0;min-width:0}.sheet-foot{margin:1.5rem calc(-1 * clamp(1rem, 4vw, 2.75rem)) 0}.sheet-foot img{width:100%}.rail{position:relative;color:#fff;min-width:0;padding:clamp(1.25rem,4vw,2rem) clamp(1rem,4vw,1.75rem) clamp(1.75rem,4vw,2.5rem);background:var(--navy-2) url(/rail-palms.jpg) center bottom /cover no-repeat;isolation:isolate}.rail:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,53,94,1),rgba(10,53,94,.96) 45%,rgba(10,53,94,.55))}.rail h3{margin:0 0 .35rem;font-family:var(--cond);font-weight:400;font-size:1.55rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.05}.rail h3.deco{font-family:var(--deco);font-size:1.6rem;letter-spacing:.01em;text-transform:none}.rail h4{margin:0 0 .25rem;font-family:var(--cond);font-weight:400;letter-spacing:.14em;text-transform:uppercase;font-size:.95rem}.rail p{margin:0 0 .8rem;font-size:.95rem}.rail .venue{color:var(--teal);font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.82rem;line-height:1.6}.rail .accent{color:var(--pink);font-weight:700}.rail hr{border:0;border-top:1px solid rgba(255,255,255,.75);margin:1.25rem 0}.rail .mark{width:150px;margin:1.5rem auto 0}.rail .placeholder{border:1px dashed rgba(255,255,255,.45);padding:.75rem;font-size:.85rem;border-radius:4px}@media (min-width:900px){.layout{grid-template-columns:minmax(0,1fr) 300px}.sheet{border-radius:0 0 24px 0}}.section{padding:0 0 1.5rem}.section+.section{border-top:1.5px solid var(--gold);padding-top:1.5rem}.section h2{margin:0 0 .35rem;color:var(--pink);font-family:var(--sans);font-weight:500;font-size:clamp(1.15rem,2.4vw,1.45rem);letter-spacing:.08em;text-transform:uppercase}.section .lead{margin:0 0 1rem;color:var(--ink-soft);font-size:.95rem;max-width:60ch}.section p{max-width:65ch}.fields{display:grid;grid-gap:.9rem 1.5rem;gap:.9rem 1.5rem}@media (min-width:640px){.fields.two{grid-template-columns:1fr 1fr}.fields .span{grid-column:1/-1}}.field{display:grid;grid-gap:.15rem;gap:.15rem;min-width:0;align-content:start}.field label{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);font-weight:600}.field small{font-size:.8rem;color:var(--ink-soft)}input,select,textarea{width:100%;min-width:0;font:inherit;color:var(--ink);background:transparent;border:0;border-bottom:1.5px solid var(--ink);border-radius:0;padding:.55rem .1rem .45rem;font-size:1rem;outline:none}input:focus,select:focus,textarea:focus{border-bottom-color:var(--pink);box-shadow:0 1.5px 0 0 var(--pink)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}textarea{min-height:5rem;resize:vertical;border:1.5px solid var(--line);border-radius:6px;padding:.6rem .7rem;background:#fbfbfd}textarea:focus{border-color:var(--pink);box-shadow:none}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:2rem;cursor:pointer;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'><path d='M1 1l6 6 6-6' fill='none' stroke='%2324356e' stroke-width='2'/></svg>") right .35rem center /14px no-repeat}input[type=number]{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sku-grid{display:grid;grid-gap:.6rem;gap:.6rem}@media (min-width:720px){.sku-grid{grid-template-columns:1fr 1fr}}.sku{display:grid;grid-template-columns:6px 1fr auto;align-items:center;grid-gap:0 .85rem;gap:0 .85rem;text-align:left;cursor:pointer;width:100%;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:.75rem .9rem .75rem 0;color:var(--ink);transition:border-color .12s,box-shadow .12s;overflow:hidden}.sku .tier{align-self:stretch;width:6px;border-radius:10px 0 0 10px;background:var(--tier,var(--ink))}.sku .name{font-weight:600;font-size:1rem;line-height:1.2}.sku small{display:block;color:var(--ink-soft);font-size:.8rem;margin-top:.1rem}.sku strong{font-family:var(--cond);font-weight:400;font-size:1.35rem;letter-spacing:.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sku:hover{border-color:var(--ink)}.sku.on{border-color:var(--pink);box-shadow:0 0 0 2px rgba(255,123,172,.35),0 8px 20px rgba(36,53,110,.1)}.sku.on strong{color:var(--pink-deep)}.sku-group{margin:1.1rem 0 .5rem;font-family:var(--cond);letter-spacing:.16em;text-transform:uppercase;font-size:.95rem;color:var(--ink-soft)}.qty{max-width:14rem;margin-top:1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.95rem 1.6rem;border-radius:999px;border:2px solid transparent;cursor:pointer;font-weight:700;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;min-height:48px;transition:background .12s}.btn.primary{background:var(--pink);color:var(--navy);box-shadow:0 8px 22px rgba(255,123,172,.35)}.btn.primary:hover{background:#ff8fb9}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn.ghost:hover{background:rgba(36,53,110,.06)}.btn.on-navy{background:var(--pink);color:var(--navy)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.row-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0 0}@media (max-width:520px){.row-actions .btn{width:100%}}.check{display:flex;gap:.7rem;align-items:flex-start;margin-top:1.1rem;font-size:.95rem}.check input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;margin-top:.15rem;flex:none;border:1.5px solid var(--ink);border-radius:3px;display:grid;place-content:center;cursor:pointer;padding:0}.check input:before{content:"";width:10px;height:10px;background:var(--pink);transform:scale(0);transition:transform .1s}.check input:checked:before{transform:scale(1)}.check input:focus{box-shadow:none}.note{color:var(--ink-soft);font-size:.88rem;margin:.6rem 0 0}.err{color:var(--err);font-weight:600;margin:.75rem 0 0}.pay-grid{display:grid;grid-gap:.9rem 1.5rem;gap:.9rem 1.5rem;align-items:start}@media (min-width:640px){.pay-grid{grid-template-columns:minmax(0,20rem) 1fr}}.pill{display:inline-block;padding:.3rem .8rem;border-radius:999px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.pill.paid{background:#dff5f2;color:#0a5d56}.pill.pledged{background:#efe7f7;color:#4b2170}.pill.started{background:#fff0f5;color:#9c2d5e}.pill.abandoned{background:#eeeeee;color:#555}.summary{display:grid;grid-gap:.35rem 1.25rem;gap:.35rem 1.25rem;grid-template-columns:auto 1fr;margin:.75rem 0 1rem;font-size:1rem}.summary dt{font-family:var(--cond);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-size:.85rem;padding-top:.15rem}.summary dd{margin:0;font-weight:600;min-width:0}.summary dd.big{font-family:var(--cond);font-size:1.6rem;font-weight:400;color:var(--pink-deep);letter-spacing:.04em}@media (max-width:480px){.summary{grid-template-columns:1fr;gap:.1rem}.summary dd{margin-bottom:.6rem}}footer{background:var(--navy);color:#d7dcee;padding:1.5rem clamp(1rem,4vw,2.75rem) 2.25rem;font-size:.82rem}footer .inner{max-width:68rem;margin:0 auto;display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center;justify-content:space-between}footer img{height:34px;width:auto}footer p{margin:0}.qty-row{display:grid;grid-gap:.6rem 1.5rem;gap:.6rem 1.5rem;align-items:end;margin-top:1rem}@media (min-width:640px){.qty-row{grid-template-columns:9rem auto}.qty-row .nudge{grid-column:1/-1}}.qty-row .qty{margin-top:0;max-width:none}.running-total{margin:0;display:flex;align-items:baseline;gap:.75rem;font-size:.95rem;color:var(--ink-soft)}.running-total strong{font-family:var(--cond);font-weight:400;font-size:1.5rem;color:var(--ink);letter-spacing:.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nudge{margin:0;font-size:.9rem;color:var(--ink-soft);padding:.55rem .8rem;border-left:3px solid var(--gold);background:#fffaf0;border-radius:0 6px 6px 0}.nudge.hot{color:var(--navy);border-left-color:var(--pink);background:#fff0f5;font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.benefits-grid{display:none}.benefits-list{display:grid;grid-gap:.5rem;gap:.5rem}.benefits-list details{border:1.5px solid var(--line);border-radius:10px;background:#fff}.benefits-list details[open]{border-color:var(--tier,var(--ink))}.benefits-list summary{display:flex;align-items:center;gap:.7rem;padding:.75rem .9rem;cursor:pointer;list-style:none;font-weight:600}.benefits-list summary::-webkit-details-marker{display:none}.benefits-list summary:after{content:"+";margin-left:auto;font-family:var(--cond);font-size:1.3rem;color:var(--ink-soft)}.benefits-list details[open] summary:after{content:"–"}.benefits-list .tier-chip{width:10px;height:10px;border-radius:50%;background:var(--tier,var(--ink));flex:none}.benefits-list .tier-price{font-family:var(--cond);font-weight:400;font-size:1.15rem;letter-spacing:.04em;color:var(--ink-soft);margin-left:.25rem}.benefits-list ul{margin:0;padding:0 1rem .9rem 2.5rem;font-size:.93rem;display:grid;grid-gap:.35rem;gap:.35rem}@media (min-width:900px){.benefits-list{display:none}.benefits-grid{display:block;overflow-x:auto;border-radius:10px;border:1.5px solid var(--gold);background:var(--navy);color:#fff}.benefits-grid table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:.8rem}.benefits-grid col.benefit{width:27%}.benefits-grid td,.benefits-grid th{border:1px solid rgba(232,197,116,.55);padding:.55rem .5rem;vertical-align:middle}.benefits-grid thead th{background:var(--tier,var(--navy));color:#fff;text-align:center;font-family:var(--cond);font-weight:400;letter-spacing:.02em;text-transform:uppercase;font-size:.8rem;line-height:1.1;padding:.55rem .2rem;overflow-wrap:anywhere}.benefits-grid thead th:first-child{background:var(--navy)}.benefits-grid thead .tier-name{display:block}.benefits-grid thead .tier-price{display:block;font-family:var(--sans);font-size:.72rem;letter-spacing:0;text-transform:none;opacity:.9;margin-top:2px}.benefits-grid tbody th{text-align:left;font-weight:400;color:#fff;line-height:1.3}.benefits-grid td{text-align:center}.benefits-grid .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold)}}.steps{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:5;display:flex;gap:.25rem;margin:0 calc(-1 * clamp(1rem, 4vw, 2.75rem)) 1.25rem;padding:.5rem clamp(1rem,4vw,2.75rem);background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}.steps a{flex:1 1;display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.5rem .4rem;text-decoration:none;color:var(--ink-soft);font-family:var(--cond);letter-spacing:.1em;text-transform:uppercase;font-size:.92rem;border-radius:999px}.steps a:hover{background:rgba(36,53,110,.06);color:var(--ink)}.steps b{display:inline-grid;place-content:center;width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--sans);font-size:.75rem;font-weight:700}.step-label{margin:0 0 .15rem;font-family:var(--cond);letter-spacing:.2em;text-transform:uppercase;font-size:.85rem;color:var(--gold)}.section{scroll-margin-top:72px}.linklike{background:none;border:0;padding:0;font:inherit;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.linklike:hover{color:var(--pink-deep)}.sku-card{display:grid;min-width:0}.sku-card .sku{border-radius:10px}.sku-card.expanded .sku{border-radius:10px 10px 0 0;border-bottom-color:transparent}.sku-more{grid-column:1/-1;justify-self:start;margin:.35rem 0 0 1.1rem;background:none;border:0;padding:.15rem 0;font:inherit;font-size:.85rem;color:var(--ink-soft);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.sku-more:hover{color:var(--pink-deep)}.sku-card.expanded .sku-more{margin-top:0;padding:.5rem 0 .35rem}.sku-benefits{border:1.5px solid var(--tier,var(--line));border-top:0;border-radius:0 0 10px 10px;padding:.25rem 1rem 1rem;background:#fbfbfd;display:grid;grid-gap:.75rem;gap:.75rem}.sku-card.expanded{grid-column:1/-1}.sku-card.expanded .sku{border-color:var(--tier,var(--ink))}.tier-benefits{margin:0;padding:0 0 0 1.1rem;font-size:.92rem;display:grid;grid-gap:.35rem;gap:.35rem;columns:auto}@media (min-width:720px){.sku-card.expanded .tier-benefits{grid-template-columns:1fr 1fr;column-gap:1.5rem}}.tier-benefits li::marker{color:var(--gold)}.btn.small{padding:.65rem 1.1rem;min-height:40px;font-size:.78rem;justify-self:start}.optional-block{margin-top:1.25rem;display:grid;grid-gap:.9rem;gap:.9rem}.sheet{padding-bottom:0}form#reservation{padding-bottom:4.5rem}.summary-bar{position:-webkit-sticky;position:sticky;bottom:0;z-index:6;margin:1rem calc(-1 * clamp(1rem, 4vw, 2.75rem)) 0;padding:.7rem clamp(1rem,4vw,2.75rem) calc(.7rem + env(safe-area-inset-bottom, 0px));background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:1rem;box-shadow:0 -8px 24px rgba(15,37,75,.25)}.summary-text{display:flex;flex-direction:column;min-width:0}.summary-sel{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-total{font-family:var(--cond);font-size:1.5rem;letter-spacing:.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.summary-bar .btn.small{flex:none}dialog.compare{border:0;border-radius:16px 0 0 16px;padding:0;width:min(100vw,980px);max-width:100vw;height:100dvh;max-height:100dvh;margin:0 0 0 auto;background:var(--sheet);color:var(--ink);box-shadow:-12px 0 40px rgba(15,37,75,.35);overflow:auto}dialog.compare::-webkit-backdrop{background:rgba(15,37,75,.55)}dialog.compare::backdrop{background:rgba(15,37,75,.55)}.compare-head{position:-webkit-sticky;position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem clamp(1rem,3vw,1.5rem);background:var(--sheet);border-bottom:1.5px solid var(--gold);z-index:1}.compare-head h2{margin:0;color:var(--pink);font-weight:500;font-size:1.2rem;letter-spacing:.08em;text-transform:uppercase}dialog.compare .benefits-grid,dialog.compare .benefits-list{margin:1rem clamp(1rem,3vw,1.5rem) 1.5rem}@media (max-width:760px){dialog.compare{border-radius:0}}h3.sub{margin:1.25rem 0 .25rem;font-family:var(--cond);font-weight:400;letter-spacing:.14em;text-transform:uppercase;font-size:.95rem;color:var(--ink-soft)}.summary dd.pre{white-space:pre-wrap;font-weight:400}.summary dd.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;font-size:.9rem}@media print{.deco-rule,.hero,.no-print,.rail,.sheet-foot,.topbar,footer{display:none!important}.sheet,.stage,body{background:#fff!important;color:#000!important}.sheet{padding:0!important;border-radius:0!important}.layout{display:block!important}.section h2{color:#000!important}.pill{border:1px solid #000}}