@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@500;600;700;800&display=swap');:root{--navy:#101e32;--blue:#1362da;--cyan:#dbf5fc;--gold:#ffcd62;--muted:#53647a;--line:#dce4ee;--bg:#f5f8fc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--navy);font-family:'DM Sans',Arial,sans-serif;line-height:1.6}h1,h2,h3,.brand{font-family:Outfit,Arial,sans-serif;line-height:1.13}h1{font-size:clamp(2.5rem,5.2vw,4.7rem);margin:.25em 0}h2{font-size:clamp(1.8rem,3vw,2.65rem);margin:0 0 1rem}h3{font-size:1.25rem;margin:.2rem 0 .6rem}a{color:var(--blue)}.wrap{width:min(1160px,calc(100% - 36px));margin:auto}.topbar{background:#091526;color:#d9e6f6;font-size:.86rem;padding:7px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:16px}.topbar a{color:white}.header{background:white;position:sticky;top:0;z-index:30;box-shadow:0 2px 15px #0c27441a}.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px}.brand{text-decoration:none;font-size:1.65rem;font-weight:800;color:var(--navy);letter-spacing:-.06em}.brand span{color:var(--blue)}.links{display:flex;align-items:center;gap:19px}.links a{text-decoration:none;color:var(--navy);font-size:.93rem;font-weight:700}.links a:hover{color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:13px 20px;text-decoration:none;font-weight:800;border:0;cursor:pointer;font:inherit;font-weight:800}.btn-primary{background:var(--blue);color:#fff!important}.btn-dark{background:var(--navy);color:white!important}.btn-light{background:white;color:var(--navy)!important}.btn-outline{border:1px solid var(--line);color:var(--navy);background:white}.hero{background:linear-gradient(110deg,#0c1c33 0%,#183d68 68%,#1269a1 100%);color:white;padding:76px 0 92px;position:relative;overflow:hidden}.hero:after{content:'✦';position:absolute;right:6%;top:8%;font-size:330px;opacity:.045}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:800;color:#8de0fa}.hero p{font-size:1.12rem;color:#dce9f7;max-width:570px}.hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.pill{font-size:.82rem;border:1px solid #ffffff40;border-radius:50px;padding:6px 11px}.booking{background:white;color:var(--navy);padding:27px;border-radius:22px;box-shadow:0 20px 50px #06122240;position:relative;z-index:2}.booking h2{font-size:1.7rem}.booking .small{font-size:.85rem;color:var(--muted)}label{display:block;font-weight:700;font-size:.84rem;margin-bottom:5px}input,select,textarea{width:100%;border:1px solid #cdd8e5;border-radius:9px;padding:11px 12px;font:inherit;color:var(--navy);background:white;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #91bfff}.field{margin-bottom:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.booking button{width:100%}.section{padding:76px 0}.section-alt{background:var(--bg)}.section-head{max-width:720px;margin-bottom:29px}.section-head p,.muted{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{padding:27px;border:1px solid var(--line);border-radius:18px;background:white;box-shadow:0 5px 20px #102b4810}.card .symbol{font-size:1.8rem}.card a{font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.feature{background:#e7f4ff;border-radius:25px;padding:38px}.check{margin:13px 0}.check:before{content:'✓';color:#08764e;font-weight:900;margin-right:10px}.cta{background:var(--navy);color:white;padding:55px 0}.cta p{color:#d4e4f6}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer{background:#091526;color:#d7e1ef;padding:55px 0 20px}.footer a{color:#e6f3ff}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer ul{padding:0;list-style:none}.footer li{margin-bottom:7px}.footnote{border-top:1px solid #ffffff2a;margin-top:28px;padding-top:18px;font-size:.82rem}.pagehero{background:linear-gradient(120deg,#102139,#1d4c78);color:white;padding:66px 0}.pagehero h1{font-size:clamp(2.4rem,4.5vw,4rem)}.pagehero p{color:#e2efff;max-width:720px}.content{max-width:850px}.content h2{margin-top:30px}.content p,.content li{color:#3e5066}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:800}.mobile-cta{display:none}.menu-toggle{display:none}.notice{background:#fff8e5;padding:13px;border-radius:9px;font-size:.85rem;color:#624b12}.hp{position:absolute;left:-10000px;opacity:0}.error{background:#fff0f0;color:#8b1d1d;padding:13px;border-radius:9px}.success{background:#e6f8ed;color:#145b34;padding:13px;border-radius:9px}@media(max-width:920px){.hero-grid,.split{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}.links{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:18px;box-shadow:0 15px 30px #0002;flex-direction:column;align-items:stretch}.links.open{display:flex}.menu-toggle{display:block;background:white;border:1px solid var(--line);border-radius:9px;padding:9px 13px;font-weight:800}.hero{padding:52px 0}}@media(max-width:600px){.cards,.form-grid,.footgrid{grid-template-columns:1fr}.hero{padding:45px 0 65px}.booking{padding:21px}.section{padding:54px 0}.cta .wrap{display:block}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:50;background:white;padding:9px 14px;gap:8px;box-shadow:0 -4px 18px #0002}.mobile-cta a{flex:1;text-align:center}.footer{padding-bottom:100px}.topbar .wrap span:last-child{display:none}}
.hero-art{margin:24px 0 12px;max-width:670px}.hero-art img{width:100%;height:auto;display:block;border-radius:16px;box-shadow:0 14px 38px #0002}.hero-art figcaption{font-size:12px;color:#d5dfec;margin-top:7px;line-height:1.5}

/* v3: prominent contact number in header and hero */
.header-phone{color:#fff;background:#102c50;border-radius:12px;padding:10px 13px;text-decoration:none;font-weight:800;white-space:nowrap;font-size:1rem}.header-phone:hover{background:#174c85}.hero-phone{display:flex;flex-direction:column;align-items:flex-start;margin:20px 0 0;gap:2px}.hero-phone span{font-size:.94rem;color:#dce9f7}.hero-phone a{font-size:clamp(1.8rem,3.4vw,2.5rem);font-weight:800;color:#fff;text-decoration:none;line-height:1.3}.hero-phone a:hover{text-decoration:underline}
@media(max-width:920px){.header-phone{margin-left:auto}.header-phone span{font-size:.88rem}}
@media(max-width:410px){.brand{font-size:1.33rem}.nav{gap:8px}.header-phone{padding:8px;font-size:.83rem}.header-phone span{font-size:.82rem}.menu-toggle{padding:8px}}
