:root{--paper:#f4f7f9;--ink:#34434c;--muted:#59666d;--accent:#08799f;--brand-blue:#21adde;--brand-gray:#707d84;--line:#dce6eb;--wash:#f0f9fc;--white:#ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}button,input,select{font:inherit}a,button,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.masthead,main,footer{max-width:1160px;margin:auto}.masthead{padding:26px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:24px}.masthead a{text-decoration:none;font-size:13px;font-weight:600}.masthead .brand{font-family:Georgia,serif;font-size:28px;display:flex;gap:14px;align-items:center}.brand span{font:11px/1.4 -apple-system,sans-serif;max-width:100px;letter-spacing:1.4px;text-transform:uppercase}.hero{padding:72px 32px 52px;max-width:1000px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:700;color:var(--accent);margin-bottom:20px}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.08;margin:0}h1{font-size:clamp(42px,6vw,72px);letter-spacing:-2px}em{font-weight:400;color:var(--accent)}.tagline{font-size:23px;line-height:1.4;margin:28px 0 18px}.intro{max-width:590px;color:var(--muted)}.actions{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}.button,button{display:inline-flex;justify-content:center;align-items:center;gap:22px;padding:14px 22px;background:var(--accent);color:white;border:1px solid var(--accent);border-radius:3px;text-decoration:none;cursor:pointer;font-size:14px;font-weight:600}.secondary{background:transparent;color:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}.hero-note,.fine{font-size:12px;color:var(--muted)}.hero-note{margin-top:18px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:32px;background:var(--wash);border-block:1px solid var(--line)}.steps span{font-size:12px;color:var(--accent)}.steps h2{font:600 16px/1.4 -apple-system,sans-serif;margin-top:10px}.steps p{font-size:14px;color:var(--muted);margin-bottom:0}.section{padding:64px 32px}.section-heading{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:28px}h2{font-size:40px;letter-spacing:-1px}.section-heading p{font-size:13px;color:var(--muted);margin:0}.packages{display:grid;grid-template-columns:1fr 1fr;gap:24px}.package{border:1px solid var(--line);padding:32px;background:var(--white);display:flex;flex-direction:column}.package-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:28px}h3{font-size:30px}.price{font-size:42px;font-family:Georgia,serif;margin:20px 0 4px}.price span{display:block;font:600 13px/1.6 -apple-system,sans-serif}.package>p:not(.price){font-size:14px}.package ul{font-size:14px;padding-left:20px;margin-top:12px}.package li{margin-bottom:8px;padding-left:4px}.deluxe{background:var(--white)}.deluxe-note{font:32px/1.3 Georgia,serif;padding:36px 0;flex:1}.text-link{margin-top:auto;padding-top:22px;border-top:1px solid var(--line);font-size:14px;text-decoration:none;font-weight:600;display:flex;justify-content:space-between}.video-section{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;border-block:1px solid var(--line);align-items:center}.video-section p{max-width:390px}.video-frame{aspect-ratio:16/9;background:var(--ink);display:flex;align-items:center;justify-content:center;color:var(--paper);text-align:center;border-radius:3px;overflow:hidden}.video-frame video{width:100%;height:100%;object-fit:contain}.video-frame span{font-size:13px;opacity:.75}.reserve{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px}.reserve>div>p{font-size:14px;color:var(--muted)}form{min-width:0}fieldset{border:0;padding:0;margin:0 0 28px}legend{font-size:16px;font-weight:600;margin-bottom:18px}label{display:flex;flex-direction:column;gap:6px;font-size:13px;margin-bottom:16px}input,select{width:100%;min-width:0;padding:10px 12px;border:1px solid #9bafb9;border-radius:3px;background:var(--white);color:var(--ink)}.quantity-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.totals{background:var(--wash);padding:16px 20px;font-size:14px}.totals p{display:flex;justify-content:space-between;gap:16px;margin:4px 0}.totals p:last-child{font-size:12px;margin-top:10px}.upload{padding:18px;border:1px dashed #9bafb9;margin-top:20px}.upload input{border:0;padding:8px 0;font-size:12px;background:none}.upload span{font-size:11px;color:var(--muted)}.consent{flex-direction:row;gap:12px;font-size:12px;align-items:start}.consent input{width:18px;height:18px;flex-shrink:0}#submit-button{width:100%}#form-message{white-space:pre-line;font-size:14px}#form-message.error{color:#a13222}.closing{text-align:center;background:var(--wash);padding:48px 24px}.closing p{font:36px/1.3 Georgia,serif;margin:0 0 16px}.closing span{font-size:13px}footer{padding:28px 32px;display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted)}.admin-main{padding:40px 24px}.reservation{border:1px solid var(--line);padding:24px;margin:20px 0;background:var(--white)}.reservation h2{font-size:26px}.reservation img{max-width:100%;max-height:500px;object-fit:contain;display:block;margin:16px 0}.reservation select{max-width:200px}.admin-actions{display:flex;gap:12px;flex-wrap:wrap}.reservation p{overflow-wrap:anywhere}@media(max-width:700px){.masthead{padding:18px 20px}.masthead>a:last-child{font-size:11px;max-width:120px}.hero{padding:48px 20px 36px}h1{letter-spacing:-1px}.tagline{font-size:20px}.steps{grid-template-columns:1fr;gap:24px;padding:28px 20px}.steps p{margin-top:6px}.section{padding:40px 20px}.section-heading{display:block}.section-heading p{margin-top:18px}.packages,.video-section,.reserve{grid-template-columns:1fr;gap:24px}.package{padding:24px}h2{font-size:34px}.deluxe-note{padding:24px 0}.reserve{gap:32px}.closing p{font-size:30px}footer{padding:24px 20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* The supplied logo is used unchanged; this window removes its white margins. */
.masthead .brand-logo{position:relative;display:block;width:220px;aspect-ratio:1.48;overflow:hidden;flex-shrink:0}
.brand-logo img{position:absolute;display:block;width:118%;height:auto;max-width:none;left:-9%;top:-37%}
.masthead{padding-block:12px;background:var(--white);border-bottom:2px solid var(--brand-blue)}
.hero{padding-top:52px}
.hero h1 em{color:#118bb4}
.package{border-top:3px solid var(--brand-gray)}
.package.deluxe{border-top-color:var(--brand-blue)}
.text-link{color:var(--accent)}
.button:hover,button:hover:not(:disabled){background:#075c7b;color:#fff;border-color:#075c7b}
.closing{border-top:2px solid var(--brand-blue)}
@media(max-width:700px){.masthead .brand-logo{width:154px}.masthead{gap:16px;padding-block:10px}.hero{padding-top:36px}}

#reservation-form{background:var(--white);border:1px solid var(--line);padding:28px;border-radius:3px}
@media(max-width:700px){#reservation-form{padding:20px}}

.service-area{max-width:620px;font-size:14px;margin:24px 0 0;padding:12px 16px;border-left:3px solid var(--brand-blue);background:var(--white);color:var(--ink)}

.redemption-note{max-width:620px;font-size:14px;margin:20px 0 0;color:var(--ink)}
