
:root{--cg-yellow:#ffc107;--cg-dark:#111214;--cg-soft:#f6f7f8;--cg-border:#e3e5e8;--cg-text:#172033;--cg-muted:#667085}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--cg-text);background:#fff;margin:0}.cg-navbar{background:#0d0f12;border-bottom:1px solid rgba(255,255,255,.08);min-height:72px}.cg-brand{display:flex;align-items:center;gap:.65rem;color:#fff;text-decoration:none;font-weight:800;letter-spacing:.2px}.cg-brand img{width:42px;height:42px;object-fit:contain;border-radius:10px}.cg-brand small{display:block;color:#aeb4bd;font-size:.68rem;font-weight:600}.cg-navbar .nav-link{color:#f5f6f7!important;font-weight:650;padding:.75rem .85rem!important}.cg-navbar .nav-link:hover,.cg-navbar .nav-link:focus{color:var(--cg-yellow)!important}.cg-menu-btn{background:var(--cg-yellow);border:0;border-radius:999px;padding:.7rem 1rem;font-weight:800}.cg-mega{width:min(1050px,calc(100vw - 30px));padding:1rem;border:0;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.18)}.cg-mega h6{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#7b8492;margin-bottom:.65rem}.cg-mega a{display:block;color:#1d2939;text-decoration:none;padding:.35rem .15rem;font-size:.9rem}.cg-mega a:hover{color:#8a6500}.cg-page-hero{background:radial-gradient(circle at 85% 15%,rgba(255,193,7,.22),transparent 35%),linear-gradient(135deg,#101216,#191b20);color:#fff;padding:68px 0}.cg-page-hero h1{font-size:clamp(2rem,4.4vw,4.2rem);line-height:1.04;font-weight:850;letter-spacing:-.035em;margin:.7rem 0 1rem}.cg-page-hero p{font-size:1.08rem;color:#d5d9df;max-width:780px}.cg-eyebrow,.cg-section-label{display:inline-block;text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;font-weight:800;color:#a97800}.cg-page-hero .cg-eyebrow{color:#ffd65a}.cg-hero-chips{display:flex;flex-wrap:wrap;gap:.5rem}.cg-hero-chips span{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);padding:.45rem .7rem;border-radius:999px;font-size:.8rem}.cg-hero-image{height:340px;border-radius:24px;overflow:hidden;background:linear-gradient(135deg,#272a31,#544400);box-shadow:0 20px 50px rgba(0,0,0,.28)}.cg-hero-image img{width:100%;height:100%;object-fit:cover}.cg-hero-image.is-fallback:before{content:"";display:block;width:100%;height:100%;background:radial-gradient(circle at 30% 30%,rgba(255,193,7,.25),transparent 28%),linear-gradient(135deg,#1b1e24,#3a310d)}.cg-section-title{font-size:clamp(1.7rem,3vw,2.7rem);font-weight:820;letter-spacing:-.02em}.cg-place-card{height:100%;border:1px solid var(--cg-border);border-radius:18px;padding:1.25rem;background:#fff;transition:.2s}.cg-place-card:hover{transform:translateY(-3px);box-shadow:0 12px 35px rgba(15,23,42,.08)}.cg-place-card i{color:#b17d00;font-size:1.2rem}.cg-place-card h3{font-size:1.05rem;margin:.7rem 0 .35rem}.cg-place-card p{font-size:.9rem;color:var(--cg-muted);margin:0}.cg-support-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.cg-support-grid>div{background:#fff;border:1px solid var(--cg-border);border-radius:18px;padding:1.25rem}.cg-support-grid i{font-size:1.35rem;color:#ad7c00}.cg-support-grid h3{font-size:1rem;margin:.8rem 0 .35rem}.cg-support-grid p{font-size:.88rem;color:var(--cg-muted);margin:0}.cg-faq .accordion-item{border:1px solid var(--cg-border);border-radius:14px!important;overflow:hidden;margin-bottom:.7rem}.cg-faq .accordion-button{font-weight:700}.cg-faq .accordion-button:not(.collapsed){background:#fff7d6;color:#2c2300;box-shadow:none}.cg-hub-hero{background:radial-gradient(circle at 88% 10%,rgba(255,193,7,.22),transparent 38%),#111214;color:#fff;padding:72px 0}.cg-hub-hero h1{font-size:clamp(2.2rem,5vw,4.8rem);font-weight:860;letter-spacing:-.045em;line-height:1}.cg-hub-hero p{color:#d6d9df;font-size:1.08rem;max-width:900px}.cg-featured-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cg-destination-card{border:1px solid var(--cg-border);border-radius:18px;overflow:hidden;background:#fff;text-decoration:none;color:inherit;display:block;height:100%;transition:.22s}.cg-destination-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(15,23,42,.1)}.cg-destination-media{height:180px;background:linear-gradient(135deg,#292c32,#554400);position:relative}.cg-destination-media img{width:100%;height:100%;object-fit:cover}.cg-destination-media.is-fallback:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,193,7,.24),transparent 34%),linear-gradient(135deg,#24272e,#40360e)}.cg-destination-card-body{padding:1rem}.cg-destination-card h3{font-size:1.05rem;margin:0 0 .4rem}.cg-destination-card p{font-size:.84rem;color:var(--cg-muted);margin:0}.cg-filter-bar{display:flex;gap:.5rem;flex-wrap:wrap}.cg-filter-bar button{border:1px solid var(--cg-border);background:#fff;border-radius:999px;padding:.5rem .8rem;font-size:.82rem;font-weight:700}.cg-filter-bar button.active{background:#111214;color:#fff;border-color:#111214}.cg-footer{background:#0e1013;color:#ced2d8;padding:50px 0 25px}.cg-footer h4{color:#fff;font-size:1rem}.cg-footer a{color:#bfc5ce;text-decoration:none;display:block;margin:.38rem 0;font-size:.88rem}.cg-footer a:hover{color:var(--cg-yellow)}.cg-socials{display:flex;gap:.5rem;flex-wrap:wrap}.cg-socials a{width:38px;height:38px;border:1px solid #353a42;border-radius:10px;display:grid;place-items:center;margin:0}.cg-desktop-actions{position:fixed;right:18px;bottom:95px;z-index:1035;display:flex;flex-direction:column;gap:10px}.cg-desktop-actions a,.cg-desktop-actions button{width:92px;border:0;border-radius:14px;padding:.72rem .55rem;color:#fff;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:.45rem;box-shadow:0 8px 25px rgba(0,0,0,.2);font-size:.76rem;font-weight:800}.cg-desktop-actions .call{background:#164b7a}.cg-desktop-actions .wa{background:#1f8c4c}.cg-desktop-actions .enquire{background:#d9a500;color:#111}.cg-mobile-actions{display:none}.cg-enquiry-modal .modal-content{border:0;border-radius:22px;overflow:hidden;box-shadow:0 24px 90px rgba(0,0,0,.24)}.cg-enquiry-modal .modal-header{background:linear-gradient(135deg,#fff8df,#fff);padding:1rem 1.1rem .5rem}.cg-enquiry-modal .modal-body{padding:1rem 1.25rem 1.25rem}.cg-enquiry-progress{display:flex;align-items:center;gap:.5rem;margin-bottom:1.2rem}.cg-enquiry-progress span{display:flex;align-items:center;gap:.35rem;color:#8a94a4;font-size:.78rem;font-weight:750}.cg-enquiry-progress span b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#eef0f3;color:#6b7280}.cg-enquiry-progress span.active{color:#111}.cg-enquiry-progress span.active b,.cg-enquiry-progress span.complete b{background:var(--cg-yellow);color:#111}.cg-enquiry-progress i{height:1px;background:#dde1e6;flex:1}.cg-enquiry-step{display:none}.cg-enquiry-step.active{display:block}.cg-counter{display:flex;border:1px solid #d7dce2;border-radius:12px;overflow:hidden}.cg-counter button{width:42px;border:0;background:#f5f6f7;font-weight:800}.cg-counter input{flex:1;border:0;text-align:center;min-width:0}.cg-choice{display:flex;gap:.45rem;flex-wrap:wrap}.cg-choice label{border:1px solid #d7dce2;border-radius:10px;padding:.55rem .8rem;font-size:.84rem;font-weight:700;cursor:pointer}.cg-choice .btn-check:checked+label{background:#111;color:#fff;border-color:#111}.cg-child-age-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.cg-enquiry-actions{display:flex;gap:.6rem}.cg-field-note{font-size:.76rem;color:#667085;margin-top:.35rem}.cg-trip-preview{background:#f7f8fa;border-radius:14px;padding:1rem}.cg-trip-preview h3{font-size:1rem}.cg-trip-preview>div>div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #e5e7eb;padding:.45rem 0;font-size:.82rem}.cg-trip-preview span{color:#667085}.cg-modal-title{font-weight:820}.cg-duration-strip{background:#fff7db;border:1px solid #ffe18a;border-radius:18px;padding:1.1rem}.cg-related-links{display:flex;flex-wrap:wrap;gap:.55rem}.cg-related-links a{border:1px solid var(--cg-border);border-radius:999px;padding:.5rem .75rem;text-decoration:none;color:#344054;font-size:.8rem;font-weight:700}.cg-related-links a:hover{border-color:#d39c00;color:#8a6500}
@media(max-width:1199px){.cg-support-grid,.cg-featured-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:991.98px){.cg-mega{width:auto;padding:.5rem;box-shadow:none}.cg-desktop-actions{display:none}.cg-mobile-actions{position:fixed;left:0;right:0;bottom:0;z-index:1035;display:grid;grid-template-columns:repeat(3,1fr);background:#111}.cg-mobile-actions a,.cg-mobile-actions button{border:0;border-right:1px solid rgba(255,255,255,.12);background:#111;color:#fff;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.55rem .2rem;font-size:.7rem;font-weight:750;min-height:54px}.cg-mobile-actions a:nth-child(2){background:#14733d}.cg-mobile-actions button{background:#c59600;color:#111}.cg-mobile-actions i{font-size:.92rem;margin-bottom:.15rem}.modal-open .cg-mobile-actions{display:none!important}.cg-hero-image{height:280px}.cg-page-hero,.cg-hub-hero{padding:48px 0 58px}body{padding-bottom:54px}.cg-navbar{min-height:64px}.cg-brand img{width:36px;height:36px}}
@media(max-width:575.98px){.cg-support-grid,.cg-featured-grid{grid-template-columns:1fr}.cg-page-hero h1,.cg-hub-hero h1{font-size:2rem}.cg-page-hero p,.cg-hub-hero p{font-size:.95rem}.cg-hero-image{height:220px}.cg-enquiry-modal .modal-dialog{margin:.45rem}.cg-enquiry-modal .modal-header{padding:.8rem .85rem .35rem}.cg-enquiry-modal .modal-body{padding:.75rem .85rem .9rem}.cg-enquiry-modal .modal-header p{font-size:.78rem}.cg-modal-title{font-size:1.12rem}.cg-enquiry-progress span{font-size:.67rem}.cg-enquiry-progress span b{width:22px;height:22px;font-size:.7rem}.cg-enquiry-actions .btn{font-size:.76rem!important;padding:.48rem .65rem!important;min-height:38px;border-radius:9px}.cg-enquiry-actions{gap:.4rem}.form-label{font-size:.78rem}.form-control,.form-select{font-size:.82rem;padding:.5rem .65rem}.cg-choice label{font-size:.76rem;padding:.48rem .65rem}.cg-counter button{width:36px}.cg-child-age-grid{grid-template-columns:repeat(2,1fr)}}

/* ---------- v4 responsive polish ---------- */
.cg-brand{font-weight:700}.cg-brand small{font-weight:500}.cg-navbar .nav-link{font-weight:560}.cg-menu-btn{font-weight:650}.cg-mega a{font-weight:500}.cg-mega .fw-bold{font-weight:650!important}
.cg-desktop-actions{top:50%;bottom:auto;transform:translateY(-50%);right:18px;z-index:1045}
.cg-desktop-actions a,.cg-desktop-actions button{width:78px;min-height:48px;padding:.58rem .45rem;border-radius:12px;font-size:.69rem;font-weight:600;letter-spacing:0}
.cg-desktop-actions i{font-size:.88rem}.cg-desktop-actions .enquire{font-weight:620}
@media(min-width:992px){.cg-desktop-actions{display:flex!important}.cg-mobile-actions{display:none!important}}

.cg-enquiry-modal .form-label{font-weight:500;color:#252b35}
.cg-enquiry-modal .form-control,.cg-enquiry-modal .form-select{border:1.35px solid #6b7280;color:#202631;background-color:#fff;min-height:44px;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}
.cg-enquiry-modal textarea.form-control{min-height:92px}
.cg-enquiry-modal .form-control:hover,.cg-enquiry-modal .form-select:hover{border-color:#3e4652}
.cg-enquiry-modal .form-control:focus,.cg-enquiry-modal .form-select:focus{border-color:#e6ad00;box-shadow:0 0 0 .2rem rgba(255,193,7,.2);outline:0}
.cg-enquiry-modal .form-control.is-invalid,.cg-enquiry-modal .form-select.is-invalid{border-color:#dc3545;box-shadow:none}
.cg-date-input{cursor:pointer}
.cg-counter{border:1.35px solid #6b7280;background:#fff}
.cg-counter:focus-within{border-color:#e6ad00;box-shadow:0 0 0 .2rem rgba(255,193,7,.18)}
.cg-counter button{font-weight:600;color:#252b35;background:#f3f4f6}.cg-counter button:active{background:var(--cg-yellow)}
.cg-choice label{border:1.35px solid #6b7280;font-weight:520;color:#252b35;background:#fff}
.cg-choice label:hover{border-color:#3e4652}
.cg-choice .btn-check:checked+label{background:var(--cg-yellow);color:#171717;border-color:#d6a100;box-shadow:0 0 0 .15rem rgba(255,193,7,.14)}
.cg-enquiry-actions .btn{font-weight:600}.cg-enquiry-actions .btn-warning{border-color:#dda900}.cg-enquiry-actions .btn-warning:active,.cg-enquiry-actions .btn-warning:focus{border-color:#b98b00;box-shadow:0 0 0 .2rem rgba(255,193,7,.22)}

@media(max-width:991.98px){
  .cg-navbar .container{max-width:none;padding-left:.85rem;padding-right:.85rem}
  .cg-navbar .navbar-collapse{max-height:calc(100vh - 64px);overflow-y:auto;overflow-x:hidden;padding:.45rem 0 .9rem}
  .cg-navbar .navbar-nav{align-items:stretch!important}
  .cg-navbar .nav-link{font-size:.88rem;font-weight:540;padding:.7rem .55rem!important}
  .cg-navbar .dropdown.position-static{position:relative!important}
  .cg-navbar .cg-mega.dropdown-menu{position:static!important;inset:auto!important;transform:none!important;width:100%!important;max-width:100%!important;margin:.15rem 0 .55rem!important;padding:.75rem!important;border-radius:14px!important;box-shadow:none!important;border:1px solid #d8dadd!important;background:#fff!important;max-height:none!important;overflow:visible!important}
  .cg-navbar .cg-mega .row{margin:0!important}
  .cg-navbar .cg-mega [class*="col-"]{width:100%!important;max-width:100%!important;padding:.25rem .15rem!important}
  .cg-navbar .cg-mega h6{margin:.4rem 0 .25rem;font-size:.68rem}
  .cg-navbar .cg-mega a{padding:.37rem .25rem;font-size:.82rem;font-weight:500;border-radius:7px}
  .cg-navbar .cg-mega a:active,.cg-navbar .cg-mega a:focus{background:#fff4c4;color:#5b4300}
  .cg-navbar .dropdown-menu:not(.cg-mega){position:static!important;transform:none!important;width:100%;margin:.1rem 0 .5rem;border-radius:12px}
  .cg-menu-btn{width:100%;border-radius:10px;padding:.62rem .8rem;font-size:.82rem;font-weight:600}
  .cg-mobile-actions a,.cg-mobile-actions button{font-weight:560;font-size:.66rem}
}

@media(max-width:575.98px){
  .cg-enquiry-modal .modal-dialog{margin:.4rem;max-width:calc(100% - .8rem)}
  .cg-enquiry-modal .modal-content{border-radius:16px}
  .cg-enquiry-modal .modal-header{padding:.72rem .78rem .28rem}
  .cg-enquiry-modal .modal-body{padding:.68rem .78rem .78rem}
  .cg-enquiry-modal .modal-header p{font-size:.72rem;line-height:1.35}
  .cg-modal-title{font-size:1.02rem!important;font-weight:650}
  .cg-enquiry-progress{margin-bottom:.85rem;gap:.32rem}.cg-enquiry-progress span{font-size:.62rem;font-weight:550}.cg-enquiry-progress span b{width:21px;height:21px;font-size:.65rem}
  .cg-enquiry-modal .form-label{font-size:.71rem;margin-bottom:.32rem;font-weight:500}
  .cg-enquiry-modal .form-control,.cg-enquiry-modal .form-select{font-size:.77rem;padding:.46rem .58rem;min-height:38px;border-width:1.2px;border-radius:8px}
  .cg-counter{border-width:1.2px;border-radius:8px}.cg-counter button{width:32px;font-size:.8rem}.cg-counter input{font-size:.76rem}
  .cg-choice{gap:.35rem}.cg-choice label{font-size:.7rem;padding:.42rem .6rem;border-radius:8px}
  .cg-enquiry-actions{gap:.35rem;align-items:center}.cg-enquiry-actions .btn{font-size:.68rem!important;line-height:1.1;padding:.42rem .58rem!important;min-height:34px;border-radius:8px;font-weight:600;white-space:nowrap}.cg-enquiry-actions .btn i{font-size:.65rem}
  .cg-trip-preview{padding:.72rem;border-radius:10px}.cg-trip-preview h3{font-size:.84rem}.cg-trip-preview>div>div{font-size:.71rem;padding:.35rem 0;gap:.55rem}.cg-trip-preview b{text-align:right;font-weight:600}
}
