:root{
    --navy:#13151f;
    --navy-soft:#1d2030;
    --coral:#e5534d;
    --coral-dark:#c73f3a;
    --cream:#faf8f5;
    --line:#e9e5df;
    --ink:#1c1e26;
    --gray:#6b7078;

    /* Reskin Bootstrap's theme variables to the SandBox palette */
    --bs-primary:#e5534d;
    --bs-primary-rgb:229,83,77;
    --bs-body-font-family:'Inter',sans-serif;
    --bs-body-color:#1c1e26;
    --bs-body-bg:#faf8f5;
    --bs-link-color:#e5534d;
    --bs-link-hover-color:#c73f3a;
    --bs-border-color:#e9e5df;
  }
  body{-webkit-font-smoothing:antialiased;}
  h1,h2,h3,h4,h5,.navbar-brand{font-family:'Poppins',sans-serif;letter-spacing:-0.01em;}
  a{text-decoration:none;}
  .text-primary{color:var(--coral) !important;}
  .bg-primary{background-color:var(--coral) !important;}
  .btn-primary{
    --bs-btn-bg:var(--coral);--bs-btn-border-color:var(--coral);
    --bs-btn-hover-bg:var(--coral-dark);--bs-btn-hover-border-color:var(--coral-dark);
    --bs-btn-active-bg:var(--coral-dark);--bs-btn-active-border-color:var(--coral-dark);
    --bs-btn-focus-shadow-rgb:229,83,77;font-weight:600;border-radius:8px;
  }
  .btn-outline-primary{
    --bs-btn-color:var(--coral);--bs-btn-border-color:var(--coral);
    --bs-btn-hover-bg:var(--coral);--bs-btn-hover-border-color:var(--coral);
    font-weight:600;border-radius:8px;
  }
  .btn-outline-light{font-weight:600;border-radius:8px;--bs-btn-border-color:rgba(255,255,255,.4);}
  .btn-outline-secondary{font-weight:600;border-radius:8px;}
  .btn-lg{border-radius:9px;}
  .eyebrow{
    text-transform:uppercase;font-size:12.5px;font-weight:700;letter-spacing:.14em;color:var(--coral);
    display:inline-flex;align-items:center;gap:8px;
  }
  .eyebrow::before{content:"";width:22px;height:2px;background:var(--coral);display:inline-block;}

  /* NAV */
  .navbar{background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
  .navbar-brand img{height:50px;}
  .nav-link{font-weight:500;color:#3c3f47 !important;}
  .nav-link:hover, .nav-link.dropdown-toggle:hover{color:var(--coral) !important;}
  .dropdown-item.active,.dropdown-item:active{background:var(--coral);}
  .dropdown-item:hover{background:#f5f2ec;color:var(--coral);}
  .dropdown-menu{border-radius:12px;border:1px solid var(--line);box-shadow:0 24px 44px -16px rgba(20,20,30,.28);padding:8px;}
  .dropdown-item{border-radius:8px;font-weight:600;font-size:14px;padding:9px 14px;}
  @media (min-width:992px){
    .navbar .dropdown:hover > .dropdown-menu{display:block;margin-top:0;}
  }

  /* HERO */
  .hero-section{
    background:radial-gradient(120% 140% at 15% 10%, #23273a 0%, var(--navy) 55%);
  }
  .hero-section .lead{color:#c7c9d4;max-width:480px;}
  .hero-photo{border-radius:18px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.08);}
  .hero-photo img{height:420px;object-fit:cover;}
  .float-card{
    position:absolute;left:-8px;bottom:-24px;max-width:250px;
    box-shadow:0 20px 40px -12px rgba(0,0,0,.35);
  }
  .float-card .icon-chip{width:42px;height:42px;border-radius:10px;background:#fdece9;color:var(--coral);font-size:19px;flex-shrink:0;}

  /* STATS */
  .stats-section{
    background:radial-gradient(80% 140% at 50% -20%, rgba(229,83,77,.16) 0%, rgba(229,83,77,0) 60%), var(--navy);
  }
  .stat-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);border-radius:16px;transition:transform .18s ease, background .18s ease;}
  .stat-card:hover{transform:translateY(-3px);background:rgba(255,255,255,.07);}
  .stat-card .stat-n{font-family:'Poppins',sans-serif;font-weight:800;font-size:42px;color:#fff;line-height:1;}
  .stat-card .stat-l{font-size:13.5px;color:#a7aab6;margin-top:8px;}

  /* GALLERY (about section) */
  .gallery-wrap{position:relative;min-height:420px;}
  .gallery-wrap img{position:absolute;box-shadow:0 24px 48px -20px rgba(20,20,30,.25);}
  .gallery-wrap .g1{width:78%;height:340px;top:0;left:0;object-fit:cover;}
  .gallery-wrap .g2{width:56%;height:230px;bottom:0;right:0;object-fit:cover;border:6px solid #fff;}
  .amenity-badge{background:#f5f2ec;color:var(--ink);font-weight:600;font-size:13.5px;}
  .amenity-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--coral);display:inline-block;margin-right:8px;}

  /* PRICING */
  .plan-card{border-radius:16px;border:1.5px solid var(--line);transition:transform .18s ease, box-shadow .18s ease;}
  .plan-card:hover{transform:translateY(-4px);box-shadow:0 24px 40px -22px rgba(20,20,30,.2);}
  .plan-card.popular{border-color:var(--coral);box-shadow:0 24px 44px -20px rgba(229,83,77,.25);}
  .icon-badge{width:46px;height:46px;border-radius:12px;background:#fdece9;color:var(--coral);font-size:21px;}
  .plan-price-tag{font-size:12px;font-weight:700;color:var(--coral);}
  .plan-price{font-family:'Poppins',sans-serif;font-weight:800;font-size:32px;}
  .plan-card ul li{border-bottom:1px dashed #eee;padding:8px 0;font-size:14px;color:#464a52;}
  .plan-card ul li:last-child{border-bottom:none;}

  /* TESTIMONIALS */
  .testi-card{background:var(--cream);border-radius:16px;}
  .testi-card .quote-mark{font-family:'Poppins',sans-serif;font-size:52px;color:var(--coral);opacity:.25;line-height:1;}
  .testi-card p.quote-text{font-style:italic;font-size:15px;color:#3a3d44;}
  .testi-card img{width:46px;height:46px;object-fit:cover;}

  /* LOCATIONS */
  .loc-card{border-radius:18px;overflow:hidden;height:330px;box-shadow:0 24px 44px -24px rgba(20,20,30,.3);}
  .loc-card img{transition:transform .35s ease;object-fit:cover;height:100%;width:100%;}
  .loc-card:hover img{transform:scale(1.05);}
  .loc-overlay{background:linear-gradient(180deg,rgba(19,21,31,0) 30%,rgba(19,21,31,.88) 100%);}
  .loc-tag{background:rgba(255,255,255,.15);backdrop-filter:blur(6px);font-size:11.5px;font-weight:700;letter-spacing:.06em;}

  /* FAQ (bootstrap accordion reskin) */
  .accordion-button{font-family:'Poppins',sans-serif;font-weight:600;font-size:15.5px;}
  .accordion-button:not(.collapsed){color:var(--coral);background-color:#fdece9;box-shadow:none;}
  .accordion-button:focus{box-shadow:0 0 0 .2rem rgba(229,83,77,.2);}
  .accordion-item{border-color:var(--line);}

  /* CTA BAND */
  .cta-band-eyebrow{color:#ffb648;}
  .cta-band-eyebrow::before{background:#ffb648;}

  /* BLOG */
  .blog-card{border-radius:16px;overflow:hidden;border:1px solid var(--line);transition:box-shadow .18s ease, transform .18s ease;}
  .blog-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px rgba(20,20,30,.22);}
  .blog-thumb{height:170px;position:relative;}
  .blog-thumb .tlabel{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.18);backdrop-filter:blur(4px);font-size:11px;font-weight:700;color:#fff;}
  .blog-thumb .ticon{font-size:44px;opacity:.9;}
  .blog-thumb.t1{background:linear-gradient(135deg,#e5534d,#8a2e2b);}
  .blog-thumb.t2{background:linear-gradient(135deg,#2b2f45,#111320);}
  .blog-thumb.t3{background:linear-gradient(135deg,#3c7f6e,#1c3f37);}

  /* FOOTER */
  footer{background:var(--navy);color:#c7c9d4;}
  footer a{color:#c7c9d4;}
  footer a:hover{color:#fff;}
  footer h5{color:#fff;font-family:'Poppins',sans-serif;font-size:14.5px;}
  footer .social-icon{width:36px;height:36px;border:1px solid rgba(255,255,255,.2);color:#fff;}
  footer .form-control{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15);color:#fff;}
  footer .form-control::placeholder{color:#7d8093;}

  /* MODAL */
  .modal-content{border-radius:18px;border:none;}
  .form-label{font-size:12.5px;font-weight:600;}
  .form-control,.form-select{border-radius:8px;border-color:var(--line);padding:11px 14px;}
  .form-control:focus,.form-select:focus{border-color:var(--coral);box-shadow:0 0 0 .2rem rgba(229,83,77,.15);}