:root{--ink:#0F2A3A;--ink-2:#16384B;--muted:#33505F;--muted-on-dark:#C9DCE4;--teal:#0B6E8A;--sky:#6EDFF9;--sky-bg:#EAF9FD;--line:#DCEFF5;--field:#A9C6D2;--accent:#FFA514;--white:#FFFFFF;--danger:#A12C1F}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:Nunito,system-ui,sans-serif;font-size:17px;line-height:1.5}a{color:var(--teal)}a:hover{color:#08536A}img{max-width:100%}.container{max-width:1200px;margin:0 auto;padding:0 24px}.site-header{border-bottom:1px solid var(--line);background:var(--white)}.header-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px}.logo{height:56px;width:auto;display:block}.nav{display:flex;flex-wrap:wrap;align-items:center;gap:22px;font-weight:600}.nav a{color:var(--ink)}.btn,.nav a{text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 26px;border-radius:999px;font-weight:800;font-size:17px;border:2px solid transparent;cursor:pointer;font-family:inherit}.btn-accent,.nav .btn-accent{background:var(--accent);color:var(--ink)}.btn-accent:hover{background:#F09600;color:var(--ink)}.btn-outline{background:var(--white);color:var(--ink);border-color:var(--ink)}.btn:disabled{opacity:.55;cursor:not-allowed}.eyebrow{margin:0;font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}.section{padding:88px 0}.section-sky{background:var(--sky-bg)}.section-dark{background:var(--ink);color:var(--white)}.section-dark .eyebrow{color:var(--sky)}.section-head{display:flex;flex-direction:column;gap:12px;max-width:760px;margin-bottom:36px}h1,h2,h3{margin:0;font-weight:800}h1{font-size:clamp(36px,5vw,56px);line-height:1.08}h2{font-size:clamp(30px,3.5vw,40px);line-height:1.15}h3{font-size:20px}.lead{font-size:19px;color:var(--muted);margin:0}.section-dark .lead{color:var(--muted-on-dark)}.hero{display:flex;flex-wrap:wrap;gap:48px;align-items:center}.hero-copy{flex:999 1 520px;flex-direction:column;gap:22px}.hero-card,.hero-copy{min-width:0;display:flex}.hero-card{flex:1 1 320px;background:var(--white);border-radius:24px;padding:28px;box-shadow:0 12px 40px rgba(15,42,58,.1);flex-direction:column;gap:14px}.actions{display:flex;flex-wrap:wrap;gap:12px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:20px;gap:20px}.card{border:1px solid var(--line);border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:12px;background:var(--white)}.card p{margin:0;color:var(--muted)}.card .grow{flex-grow:1}.card-featured{border:2px solid var(--teal);background:#F4FCFE}.section-dark .card:not(.card-dark){color:var(--ink)}.card-dark{background:var(--ink-2);border-color:var(--ink-2);color:var(--white)}.card-dark p{color:var(--muted-on-dark)}.price{font-size:32px;font-weight:800;color:var(--ink)}.card-dark .price{color:var(--white)}.tag{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--teal)}.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.chip{border:1px solid #3c6276;padding:8px 16px;font-size:15px}.chip,.step-num{border-radius:999px}.step-num{width:44px;height:44px;background:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;color:var(--ink)}.two-col{display:flex;flex-wrap:wrap;gap:48px}.two-col>*{flex:1 1 420px;min-width:0}details{border-bottom:1px solid var(--line);padding:12px 0}summary{font-size:18px;font-weight:700;cursor:pointer}.note,details p{color:var(--muted)}.note{font-size:15px;margin-top:20px}.site-footer{background:var(--ink);color:var(--muted-on-dark)}.footer-row{justify-content:space-between;gap:16px;padding-top:36px;padding-bottom:36px;font-size:15px}.footer-nav,.footer-row{display:flex;flex-wrap:wrap}.footer-nav{gap:20px}.footer-nav a{color:var(--muted-on-dark)}.booking{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start;padding:48px 0 80px}.booking-main{flex:999 1 600px;min-width:0;gap:24px}.booking-main,.panel{display:flex;flex-direction:column}.panel{background:var(--white);border-radius:20px;padding:28px;gap:16px}.panel h2{font-size:20px}.summary{flex:1 1 320px;min-width:0;position:-webkit-sticky;position:sticky;top:24px;box-shadow:0 12px 40px rgba(15,42,58,.1)}.pill{min-height:44px;padding:10px 18px;border-radius:999px;font-size:16px;font-weight:800;cursor:pointer;background:var(--white);color:var(--ink);border:2px solid var(--field);font-family:inherit}.pill[aria-pressed=true]{background:var(--ink);color:var(--white);border-color:var(--ink)}.service-opt{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:16px 20px;border-radius:16px;cursor:pointer;color:var(--ink);background:var(--white);border:1px solid var(--line);font-family:inherit;text-align:left}.service-opt[aria-pressed=true]{background:#F4FCFE;border:2px solid var(--teal)}.service-opt .name{font-size:17px;font-weight:800;display:block}.service-opt .desc{font-size:15px;color:var(--muted);display:block}.service-opt .amount{font-size:21px;font-weight:800;white-space:nowrap}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.day{min-width:66px;min-height:66px;padding:8px 10px;border-radius:14px;cursor:pointer;text-align:center;background:var(--white);color:var(--ink);border:2px solid var(--field);font-family:inherit}.day[aria-pressed=true]{background:var(--ink);color:var(--white);border-color:var(--ink)}.day .dow{display:block;font-size:13px;font-weight:700;text-transform:uppercase}.day .num{display:block;font-size:20px;font-weight:800}.stepper button{width:44px;height:44px;border-radius:999px;border:2px solid var(--ink);background:var(--white);font-size:22px;font-weight:800;cursor:pointer;font-family:inherit;color:var(--ink)}.stepper output{min-width:32px;text-align:center;font-size:20px;font-weight:800}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:14px;gap:14px}label.field{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:700}.field input,.field textarea{min-height:48px;border:1px solid var(--field);border-radius:12px;padding:10px 14px;font-size:16px;font-family:inherit;color:var(--ink)}.consent{display:flex;gap:10px;align-items:flex-start;font-size:15px;color:var(--muted)}.consent input{width:20px;height:20px;margin-top:2px;flex-shrink:0}.total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:16px}.total strong{font-size:34px}.error{color:var(--danger);font-weight:700;margin:0}.muted{color:var(--muted);margin:0;font-size:15px}.prose{max-width:760px;padding:64px 24px 88px;margin:0 auto}.prose h1{font-size:40px;margin-bottom:20px}.prose h2{font-size:22px;margin:32px 0 8px}.prose ul{padding-left:22px}.prose li{margin:4px 0}