@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700;800&family=Nunito:wght@400;600;700;800;900&display=swap');
:root{--navy:#12344d;--teal:#12a7a0;--coral:#ef5d62;--gold:#f7c948;--sand:#fff8ec;--cream:#fffdf8;--ink:#193246;--muted:#657783;--line:#e7e0d6;--shadow:0 18px 50px rgba(18,52,77,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Nunito,Arial,sans-serif;background:var(--cream);line-height:1.55}h1,h2,h3,h4{font-family:'Baloo 2',sans-serif;line-height:1.05;margin:0 0 12px}h1{font-size:clamp(3rem,7vw,6.3rem);letter-spacing:-.03em}h2{font-size:clamp(2.2rem,4vw,4rem)}h3{font-size:1.6rem}p{margin:0 0 16px}.container{width:min(1160px,92%);margin:auto}.nav{position:sticky;top:0;z-index:20;background:rgba(255,253,248,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(18,52,77,.08)}.nav-inner{height:82px;display:flex;align-items:center;justify-content:space-between;width:min(1200px,94%);margin:auto}.brand img{width:88px;height:70px;object-fit:contain}.nav nav{display:flex;gap:26px;align-items:center}.nav a{color:var(--navy);text-decoration:none;font-weight:900}.menu{display:none;border:0;background:none;font-size:28px}.btn{border:0;border-radius:999px;background:var(--coral);color:#fff;padding:13px 22px;font-weight:900;font-family:Nunito;cursor:pointer;box-shadow:0 8px 20px rgba(239,93,98,.2);transition:.2s}.btn:hover{transform:translateY(-2px)}.btn.teal{background:var(--teal)}.btn.gold{background:var(--gold);color:var(--navy)}.btn.dark{background:var(--navy)}.btn-small{padding:10px 17px}.btn-lg{padding:16px 26px;font-size:1rem}.eyebrow{font-weight:900;letter-spacing:.14em;font-size:.78rem;color:var(--teal);text-transform:uppercase}.coral{color:var(--coral)}.hero{background:linear-gradient(135deg,#fff8ec 0%,#e8fbfa 55%,#fff0ed 100%);padding:70px 4% 80px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:40px;min-height:650px}.hero h1 span{color:var(--coral)}.hero-sub{font-size:1.35rem;font-weight:900;color:var(--teal)}.hero-content>p:not(.hero-sub){max-width:680px;font-size:1.08rem}.hero-art{display:flex;justify-content:center}.hero-art img{width:min(430px,80vw);filter:drop-shadow(0 24px 24px rgba(18,52,77,.15))}.trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.trust span{background:#fff;border:1px solid var(--line);padding:9px 13px;border-radius:999px;font-weight:800;font-size:.88rem}.section{padding:88px 4%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.feature-grid div{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow);text-align:center}.feature-grid b{font-size:2.7rem;display:block}.feature-grid strong{display:block;margin:10px 0 3px;font-size:1.60rem}.feature-grid span{color:var(--muted);font-size:.9rem}.packages{background:var(--sand)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}.section-head>p{max-width:460px;color:var(--muted)}.package-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.pkg{background:#fff;border:1px solid var(--line);border-radius:26px;padding:23px;display:flex;flex-direction:column;min-height:410px;box-shadow:0 10px 28px rgba(18,52,77,.07)}.pkg:nth-child(1){border-top:7px solid var(--teal)}.pkg:nth-child(2){border-top:7px solid var(--coral)}.pkg:nth-child(3){border-top:7px solid var(--gold)}.pkg:nth-child(4){border-top:7px solid #55b8d1}.pkg:nth-child(5){border-top:7px solid var(--navy)}.pkg-top{flex:0}.badge{display:inline-block;background:var(--gold);border-radius:999px;padding:5px 9px;font-size:.7rem;font-weight:900;margin-bottom:8px}.price{font-size:2.3rem;font-weight:900;color:var(--navy);margin:12px 0}.price small{font-size:.85rem;color:var(--muted)}.pkg ul{padding-left:19px;margin:5px 0 20px;color:#4b626e}.pkg .btn{margin-top:auto;width:100%}.custom-card{margin-top:20px;background:var(--navy);color:#fff;border-radius:28px;padding:30px;display:flex;justify-content:space-between;align-items:center;gap:25px}.custom-card .eyebrow{color:var(--gold)}.how{background:#fff}.centered{text-align:center;display:block}.centered p{margin-left:auto;margin-right:auto}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.steps>div{background:var(--sand);border-radius:25px;padding:28px;text-align:center}.steps i{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--teal);color:#fff;font-style:normal;font-weight:900;font-size:1.2rem;margin-bottom:12px}.about{background:linear-gradient(180deg,#e8fbfa,#fff8ec)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.about-card{background:#fff;border-radius:30px;padding:40px;box-shadow:var(--shadow)}.about-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.about-badges div{background:#fff;border-radius:25px;padding:30px;text-align:center;font-size:2.2rem;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 10px 25px rgba(18,52,77,.08)}.about-badges strong{display:block;font-size:1.60rem;margin-top:8px}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:900;font-size:1.05rem}.cta{margin:0 4% 80px;border-radius:32px;background:var(--coral);color:#fff;padding:45px;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta .eyebrow{color:var(--gold)}footer{background:var(--navy);color:#fff;padding:50px 4% 25px}.footer-main{width:min(1160px,92%);margin:auto;display:flex;align-items:center;gap:25px}.footer-main img{width:100px;height:100px;object-fit:contain;background:#fff;border-radius:18px}.footer-bottom{text-align:center;margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);font-size:.85rem;color:#d8e2e6}.modal{display:none;position:fixed;inset:0;background:rgba(10,28,40,.7);z-index:50;padding:20px;overflow:auto}.modal.show{display:block}.modal-box{width:min(900px,100%);margin:30px auto;background:#fff;border-radius:30px;box-shadow:0 30px 80px rgba(0,0,0,.3);position:relative;overflow:hidden}.close{position:absolute;right:18px;top:15px;border:0;background:#fff;border-radius:50%;width:42px;height:42px;font-size:28px;cursor:pointer;z-index:2}.booking-head{padding:35px 35px 10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px 35px}.form-grid label,.ack label{font-weight:900;font-size:.9rem}.form-grid .full{grid-column:1/-1}input,textarea,select{width:100%;margin-top:7px;border:1px solid #d7dfe2;border-radius:13px;padding:13px 14px;font:inherit;color:var(--ink);background:#fff}textarea{min-height:90px;resize:vertical}.booking-actions{padding:20px 35px 35px;display:flex;justify-content:space-between;gap:12px;align-items:center}.text-btn{border:0;background:none;color:var(--navy);font-weight:900;cursor:pointer}.select-list{padding:15px 35px}.select-card{display:flex;gap:15px;align-items:center;border:1px solid var(--line);padding:16px;border-radius:17px;margin-bottom:10px;cursor:pointer}.select-card input{width:auto;margin:0}.select-card strong{display:block}.select-card small{color:var(--muted)}.muted{background:#f6f7f6}.summary{margin:0 35px;padding:20px;background:var(--sand);border-radius:18px;display:flex;flex-direction:column;gap:5px}.agreement{margin:15px 35px}.agreement-meta{display:flex;gap:12px;flex-wrap:wrap;background:var(--navy);color:#fff;padding:15px;border-radius:16px 16px 0 0}.agreement-scroll{height:420px;overflow:auto;border:1px solid var(--line);padding:25px;background:#fff}.agreement-scroll h4{color:var(--navy);margin-top:24px}.agreement-scroll p{white-space:pre-line}.ack{padding:20px 35px}.ack label{display:block;margin:12px 0}.ack input[type=checkbox]{width:auto;margin-right:8px}.signature-label span{font-weight:600;color:var(--muted)}.success-head{padding:40px 35px 15px;text-align:center}.success-icon{width:62px;height:62px;border-radius:50%;background:#d9f7ef;color:var(--teal);display:grid;place-items:center;font-size:2rem;font-weight:900;margin:0 auto 15px}.full-btn{width:calc(100% - 70px);margin:20px 35px}.integration-note{margin:0 35px 20px;padding:14px;border-radius:14px;background:#fff8ec;color:#6b5a3e;font-size:.9rem}.notice{margin:20px 35px;padding:18px;background:#fff8ec;border-radius:15px}.admin-shell{min-height:100vh;background:#f4f7f7}.admin-nav{background:var(--navy);color:#fff;padding:15px 4%;display:flex;align-items:center;justify-content:space-between}.admin-nav img{height:50px;width:60px;object-fit:contain;background:#fff;border-radius:10px}.admin-main{width:min(1250px,94%);margin:30px auto}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:25px}.stat{background:#fff;padding:20px;border-radius:18px;box-shadow:0 8px 22px rgba(18,52,77,.06)}.stat strong{display:block;font-size:1.8rem}.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tab{border:1px solid #d9e2e4;background:#fff;border-radius:999px;padding:10px 15px;font-weight:900;cursor:pointer}.tab.active{background:var(--teal);color:#fff}.admin-panel{background:#fff;border-radius:22px;padding:22px;margin-bottom:20px;box-shadow:0 8px 22px rgba(18,52,77,.06)}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{font-size:.8rem;text-transform:uppercase;color:var(--muted)}.inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.small-input{width:110px}.item-row{display:grid;grid-template-columns:1.4fr .7fr .7fr auto;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0}.check{display:flex;align-items:center;gap:8px}.admin-note{font-size:.9rem;color:var(--muted);background:#f4f8f8;padding:12px;border-radius:12px}.danger{color:#b83d45}.hidden{display:none}@media(max-width:1050px){.package-grid{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.hero-art{order:-1}.steps{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.nav nav{display:none}.menu{display:block}.nav-open nav{display:flex;position:absolute;top:82px;left:0;right:0;background:#fff;flex-direction:column;padding:20px}.hero{padding-top:40px}.intro,.about-grid{grid-template-columns:1fr}.feature-grid,.about-badges,.steps{grid-template-columns:1fr}.section-head,.custom-card,.cta{display:block}.section-head>p{margin-top:15px}.package-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;padding:15px 20px}.form-grid .full{grid-column:auto}.booking-head,.booking-actions,.ack{padding-left:20px;padding-right:20px}.agreement{margin-left:20px;margin-right:20px}.summary{margin-left:20px;margin-right:20px}.full-btn{width:calc(100% - 40px);margin-left:20px;margin-right:20px}.integration-note,.notice{margin-left:20px;margin-right:20px}.admin-grid{grid-template-columns:1fr}.item-row{grid-template-columns:1fr 1fr}.admin-table{font-size:.86rem}.admin-table th:nth-child(n+4),.admin-table td:nth-child(n+4){display:none}}/* Reservation Details Modal */
.reservation-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
}

.reservation-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.55);
}

.reservation-modal-content{
  position:relative;
  width:min(1100px,92vw);
  max-height:90vh;
  margin:5vh auto;
  overflow:auto;
  background:#fff;
  border-radius:18px;
  padding:28px;
  box-shadow:0 20px 60px rgba(0,0,0,.3);
}

.reservation-modal-close{
  position:absolute;
  top:12px;
  right:16px;
  border:0;
  background:none;
  font-size:28px;
  cursor:pointer;
  color:var(--navy);
}
.intro p{
  font-size:1.25rem;
}
.intro .eyebrow{
  font-size:1.50rem;
}