:root{
  --ink:#132420;
  --teal-deep:#0d3536;
  --teal-mid:#155352;
  --sand:#f1e6d0;
  --sand-light:#faf4e8;
  --coral:#e2653f;
  --coral-soft:#f0a27f;
  --seafoam:#9dbfa9;
  --gold:#c9a227;
  --font-display:'Fraunces', serif;
  --font-body:'Plus Jakarta Sans', sans-serif;
  --font-script:'Caveat', cursive;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--sand-light);
  overflow-x:hidden;
}
h1,h2,h3,h4,.font-display{font-family:var(--font-display);}
.script{font-family:var(--font-script); color:#718821; font-size: 54px!important;
}

::selection{background:var(--coral); color:#fff;}

/* ---------- Scroll reveal ---------- */
.reveal{opacity:0; transform:translateY(36px); transition:opacity .9s ease, transform .9s cubic-bezier(.2,.7,.3,1);}
.reveal.in{opacity:1; transform:translateY(0);}
.reveal-scale{opacity:0; transform:scale(.92); transition:opacity .8s ease, transform .8s ease;}
.reveal-scale.in{opacity:1; transform:scale(1);}
.stagger .reveal:nth-child(1){transition-delay:.05s;}
.stagger .reveal:nth-child(2){transition-delay:.15s;}
.stagger .reveal:nth-child(3){transition-delay:.25s;}
.stagger .reveal:nth-child(4){transition-delay:.35s;}
.stagger .reveal:nth-child(5){transition-delay:.45s;}
.stagger .reveal:nth-child(6){transition-delay:.55s;}

@media (prefers-reduced-motion: reduce){
  *{animation:none !important; transition:none !important;}
}

/* ---------- Eyebrow / labels ---------- */
.eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-size:.78rem; letter-spacing:.22em; text-transform:uppercase;
  font-weight:600; color:#a8c107;
}
.eyebrow::before{
  content:""; width:26px; height:1px; background:#f13b29;
}

/* ---------- Buttons ---------- */
.btn-coral{
  background:linear-gradient(135deg, #718821, var(--teal-mid)); border:none; color:#fff;
  padding:.85rem 2.1rem; border-radius:50px; font-weight:600;
  letter-spacing:.02em; position:relative; overflow:hidden;
  transition:transform .35s ease, box-shadow .35s ease;
  box-shadow:0 10px 26px -10px rgba(226,101,63,.65);text-decoration: none;
}
.btn-coral span{position:relative; z-index:2;}
.btn-coral::before{
  content:""; position:absolute; inset:0; background:#494d2b;
  transform:translateX(-101%); transition:transform .45s cubic-bezier(.2,.7,.3,1); z-index:1;
}
.btn-coral:hover::before{transform:translateX(0);}
.btn-coral:hover{color:#fff; transform:translateY(-3px); box-shadow:0 16px 32px -10px rgba(19,36,32,.5);}

.btn-outline-cream{
  background:transparent; border:1.5px solid rgba(250,244,232,.55); color:var(--sand-light);
  padding:.8rem 2rem; border-radius:50px; font-weight:600; letter-spacing:.02em;
  transition:all .35s ease;text-decoration: none;
}
.btn-outline-cream:hover{background:var(--sand-light); color:var(--teal-deep); border-color:var(--sand-light); text-decoration: none;}

/* ---------- NAV ---------- */
.navbar-custom{
  position:fixed; top:0; left:0; right:0; z-index:1000;
  padding:22px 0; transition:all .45s cubic-bezier(.2,.7,.3,1);
  background:transparent;
}
.navbar-custom.scrolled{
  padding:12px 0; background:rgb(150 162 106);
  backdrop-filter:blur(14px); box-shadow:0 8px 30px -14px rgba(0,0,0,.4);
}
.brand-mark{display:flex; align-items:center; gap:12px;}
.brand-mark .logo-leaf{width:38px; height:38px; flex-shrink:0;}
.brand-name{font-family:var(--font-display); font-size:1.28rem; color:#fff; font-weight:600; line-height:1.05;}
.brand-name small{display:block; font-family:var(--font-body); font-size:.6rem; letter-spacing:.24em; color:var(--seafoam); text-transform:uppercase; font-weight:600; margin-top:2px;}
.nav-link-custom{
  color:rgba(255,255,255,.86) !important; font-weight: 600;
    font-size: 17px;
  margin:0 14px; position:relative; padding:6px 0 !important;
}
.nav-link-custom::after{
  content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--coral);
  transition:width .35s ease;
}
.nav-link-custom:hover::after{width:100%;}
.navbar-toggler{border:none; box-shadow:none !important;}
.navbar-toggler-icon{filter:invert(1);}

.logo {
padding: 3px;
    margin: 0;
    margin-top: 55px;
    z-index: 1000;
    position: absolute;
    max-height:181px;
   /*  background: #fff; */
}
/* ---------- HERO / SLIDER ---------- */
.hero{
  position:relative; height:100vh; min-height:640px; overflow:hidden;
  background:linear-gradient(160deg, var(--teal-deep), #0a2a2b 60%, var(--ink));
}
.hero-slide{
  position:absolute; inset:0; display:flex; align-items:center;
  opacity:0; visibility:hidden; transition:opacity 1.4s ease;
  background-size:cover;
}
.hero-slide.active{opacity:1; visibility:visible;}
.hero-slide .slide-bg{
  position:absolute; inset:-5%; z-index:0;
  background-size:cover; background-position:center;
  animation:kenburns 18s ease-in-out infinite alternate;
}
.hero-slide .slide-overlay{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(115deg, rgb(238 241 241 / 56%) 0%, rgb(13 53 54 / 41%) 42%, rgba(13, 53, 54, .42) 65%, rgba(10, 32, 33, .2) 100%), linear-gradient(to top, rgba(8, 26, 27, .75) 0%, transparent 32%);
}
@keyframes kenburns{ from{transform:scale(1) translate(0,0);} to{transform:scale(1.14) translate(-1.5%,-1.5%);} }

.hero-slide .container{position:relative; z-index:3;}
.hero-eyebrow{color:#000000; letter-spacing:.3em; text-transform:uppercase; font-size:.78rem; font-weight:700;}
.hero-title{
  color:#000000; font-size:clamp(2.4rem, 5.4vw, 4.6rem); font-weight:600; line-height:1.05;
  max-width:820px; margin:.6rem 0 1.3rem;
}
.hero-title em{font-style:italic; color:#a8c107;}
.hero-sub{color:rgba(250,244,232,.82); font-size:1.12rem; max-width:560px; margin-bottom:2.1rem; font-weight:300;}

/* Sun */
.hero-sun{
  position:absolute; right:8%; top:16%; width:180px; height:180px; border-radius:50%;
  background:radial-gradient(circle, var(--gold), var(--coral) 70%);
  box-shadow:0 0 90px 30px rgba(201,162,39,.28);
  animation:pulse-sun 6s ease-in-out infinite;
  z-index:2; mix-blend-mode:screen;
}
@keyframes pulse-sun{0%,100%{transform:scale(1);} 50%{transform:scale(1.06);}}

/* Waves */
.wave-wrap{position:absolute; left:0; right:0; bottom:0; height:180px; z-index:2; line-height:0;}
.wave-wrap svg{width:200%; height:100%;}
.wave1{animation:waveMove 18s linear infinite;}
.wave2{animation:waveMove 26s linear infinite reverse; opacity:.6;}
@keyframes waveMove{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* Foam particles */
.foam{position:absolute; bottom:120px; border-radius:50%; background:rgba(250,244,232,.55); z-index:2;
  animation:rise linear infinite;}
@keyframes rise{
  0%{transform:translateY(0) translateX(0); opacity:0;}
  10%{opacity:.8;}
  100%{transform:translateY(-320px) translateX(20px); opacity:0;}
}

.slider-controls{
  position:absolute; z-index:5; bottom:44px; left:50%; transform:translateX(-50%);
  display:flex; gap:10px;
}
.slider-controls button{
  width:34px; height:6px; border-radius:6px; border:none; background:rgba(255,255,255,.35);
  transition:all .35s ease; cursor:pointer;
}
.slider-controls button.active{background:#5a4e42; width:52px;}

.hero-arrow{
  position:absolute; z-index:5; top:50%; transform:translateY(-50%);
  width:52px; height:52px; border-radius:50%; border:1px solid rgba(255,255,255,.3);
  background:rgba(255,255,255,.06); backdrop-filter:blur(6px); color:#fff;
  display:flex; align-items:center; justify-content:center; cursor:pointer; transition:.3s;
}
.hero-arrow:hover{background:var(--coral); border-color:var(--coral);}
.hero-arrow.prev{left:26px;} .hero-arrow.next{right:26px;}
@media (max-width:767px){.hero-arrow{display:none;}}

.scroll-cue{
  position:absolute; z-index:5; left:50%; bottom:150px; transform:translateX(-50%);
  color:rgba(250,244,232,.7); font-size:.7rem; letter-spacing:.2em; text-transform:uppercase;
  display:flex; flex-direction:column; align-items:center; gap:10px;
}
.scroll-cue .line{width:1px; height:38px; background:linear-gradient(to bottom, rgba(250,244,232,.8), transparent); animation:cue 2.2s ease-in-out infinite;}
@keyframes cue{0%{transform:scaleY(.3); transform-origin:top;} 50%{transform:scaleY(1); transform-origin:top;} 51%{transform-origin:bottom;} 100%{transform:scaleY(.3); transform-origin:bottom;}}

/* ---------- Section dividers ---------- */
.tide-divider{display:block; width:100%; height:70px;}
.tide-divider path{fill:var(--sand-light);}
.tide-divider.flip path{fill:var(--teal-deep);}

/* ---------- WELCOME ---------- */
.section{padding:110px 0;}
.welcome-section{background:var(--sand-light); position:relative;}
.welcome-heading{font-size:clamp(2rem,4vw,3rem); font-weight:600; color:var(--teal-deep);}
.welcome-sub{font-family:var(--font-display); font-style:italic; font-weight:500; color:#f13505; font-size:1.3rem; margin:.6rem 0 1.4rem;}
.welcome-text{max-width:760px; color:#3d4c47; font-size:1.06rem; line-height:1.85;}

.decor-leaf{
  position:absolute; opacity:.5; animation:float 7s ease-in-out infinite;
}
@keyframes float{0%,100%{transform:translateY(0) rotate(0);} 50%{transform:translateY(-18px) rotate(6deg);}}

/* ---------- ABOUT ---------- */
.about-section{background:#454b29; color:var(--sand-light); position:relative; overflow:hidden;}
.about-section::before{
  content:""; position:absolute; width:600px; height:600px; border-radius:50%;
  background:radial-gradient(circle, rgba(226,101,63,.18), transparent 70%);
  top:-200px; right:-200px;
}
.about-art{position:relative; height:440px; border-radius:24px; overflow:hidden;
  background:linear-gradient(135deg, #123f40, #0a2a2b);
  box-shadow:0 30px 60px -20px rgba(0,0,0,.5);
}
.about-art svg{position:absolute; inset:0; width:100%; height:100%;}
.about-badge{
  position:absolute; bottom:-26px; left:-26px; background:#291a0b; color:#fff;
  border-radius:20px; padding:22px 26px; box-shadow:0 20px 40px -14px rgba(226,101,63,.6);
  font-family:var(--font-display);
}
.about-badge .num{font-size:2.1rem; font-weight:700; line-height:1;}
.about-badge .lbl{font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; font-family:var(--font-body); font-weight:600;}

.amenity-pill{
  display:flex; align-items:center; gap:12px; padding:12px 16px;
  background:rgba(250,244,232,.06); border:1px solid rgba(250,244,232,.14); border-radius:14px;
  font-size:.92rem; transition:.35s;
}
.amenity-pill:hover{background:rgba(226,101,63,.16); border-color:var(--coral); transform:translateX(6px);}
.amenity-pill svg{width:20px; height:20px; flex-shrink:0; stroke:var(--coral-soft);}

/* ---------- WHY STAY ---------- */
.why-section{background:var(--sand-light);}
.feature-card{
  background:#fff; border-radius:20px; padding:38px 30px; height:100%;
  border:1px solid rgba(19,36,32,.06); position:relative; overflow:hidden;
  transition:transform .45s cubic-bezier(.2,.7,.3,1), box-shadow .45s ease;
}
.feature-card:hover{transform:translateY(-10px); box-shadow:0 30px 50px -22px rgba(13,53,54,.25);}
.feature-card::after{
  content:""; position:absolute; right:-40px; top:-40px; width:140px; height:140px; border-radius:50%;
  background:radial-gradient(circle, rgba(226,101,63,.09), transparent 70%);
}
.feature-icon{
  width:60px; height:60px; border-radius:16px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, #718821, var(--teal-mid)); margin-bottom:20px;
  transition:transform .45s ease;
}
.feature-card:hover .feature-icon{transform:rotate(-8deg) scale(1.08);}
.feature-icon svg{width:28px; height:28px; stroke:var(--sand-light);}
.feature-card h4{font-size:1.18rem; color:var(--teal-deep); margin-bottom:10px; font-weight:600;}
.feature-card p{color:#5c6b66; font-size:.94rem; line-height:1.7; margin:0;}


/* ---------- CLOSING CTA ---------- */
.cta-section{
  position:relative; padding:130px 0; overflow:hidden;
  background:linear-gradient(120deg, #a8c107, #595f3d 46%, #241404);
  background-size:220% 220%;
  animation:gradientShift 12s ease infinite;
  color:#fff; text-align:center;
}
@keyframes gradientShift{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:0% 50%;}}
.cta-section h2{font-size:clamp(1.9rem,3.6vw,2.9rem); max-width:760px; margin:0 auto 34px;}
.call-pulse{
  display:inline-flex; align-items:center; gap:12px; background:#fff; color:var(--ink);
  padding:1rem 2.4rem; border-radius:50px; font-weight:700; font-size:1.15rem; text-decoration:none;
  position:relative;
}
.call-pulse::before{
  content:""; position:absolute; inset:-6px; border-radius:50px; border:2px solid rgba(255,255,255,.7);
  animation:ring 2s ease-out infinite;
}
@keyframes ring{0%{transform:scale(1); opacity:.8;} 100%{transform:scale(1.18); opacity:0;}}
.call-pulse svg{width:22px; height:22px; stroke:var(--coral);}
.cta-waves{position:absolute; bottom:0; left:0; right:0; opacity:.18;}

/* ---------- FOOTER ---------- */
footer{background:#251504; color:rgba(250,244,232,.78); padding:70px 0 26px; position:relative;}
footer h5{font-family:var(--font-display); color:#fff; font-size:24px; margin-bottom:18px;}
.footer-col p, .footer-col a{color:rgba(250,244,232,.72); font-size:.94rem; text-decoration:none; line-height:1.9;}
.footer-col a:hover{color:var(--coral-soft);}
.footer-icon-row{display:flex; gap:12px; margin-top:10px;}
.footer-icon-row a{
  width:42px; height:42px; border-radius:50%; border:1px solid rgba(250,244,232,.2);
  display:flex; align-items:center; justify-content:center; transition:.3s;
}
.footer-icon-row a:hover{background:rgb(113 136 33); border-color:#fff); transform:translateY(-4px);}
.footer-icon-row svg{width:18px; height:18px; stroke:#edf2fa;}
.footer-bottom{border-top:1px solid rgba(250,244,232,.1); margin-top:50px; padding-top:22px; font-size:.82rem; color:rgba(250,244,232,.5); text-align:center;}

/* Whatsapp float */
.float-call{
  position:fixed; bottom:26px; right:26px; z-index:900; width:60px; height:60px; border-radius:50%;
  background:rgb(113 136 33); display:flex; align-items:center; justify-content:center;
  box-shadow:0 14px 30px -8px rgba(226,101,63,.7); animation:floatBtn 3s ease-in-out infinite;
  color:#fff;
}
@keyframes floatBtn{0%,100%{transform:translateY(0);} 50%{transform:translateY(-8px);}}
.float-call svg{width:26px; height:26px; stroke:#fff;}

@media (max-width:991px){
  .section{padding:80px 0;}
  .about-art{margin-bottom:70px;}
  .attraction-row{flex-wrap:wrap;}
  .attraction-row .a-name{min-width:100%;}
}

.mbs{     background:linear-gradient(120deg, #3b3a38, #3b3a38 46%, #3c2d1e);
    background-size: 220% 220%;
    animation: gradientShift 12s ease infinite;
    color: #fff;}
.mbs-font-display {
  font-family: 'Fraunces', Georgia, serif;
}
 
.mbs-eyebrow {
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--mbs-rust);
}
 
.mbs-intro {
  color: var(--mbs-muted);
  max-width: 56ch;
}
 
.mbs-card {
  border: none;
  border-radius: 14px;
  transition: transform .15s ease, box-shadow .15s ease;
}
 
.mbs-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(43, 38, 32, .1) !important;
}
 
.mbs-icon-circle {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  flex: 0 0 auto;
}
 
.mbs-icon-sea, .mbs-badge-sea { background: var(--mbs-sea-tint); color: var(--mbs-sea); }
.mbs-icon-rust, .mbs-badge-rust { background: var(--mbs-rust-tint); color: var(--mbs-rust); }
.mbs-icon-olive, .mbs-badge-olive { background: var(--mbs-olive-tint); color: var(--mbs-olive); }
 
.mbs-badge-sea, .mbs-badge-rust, .mbs-badge-olive {
  font-weight: 600;
  font-size: .7rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}
 
.mbs-link {
  color: var(--mbs-ink);
  text-decoration: none;
  border-bottom: 1px solid var(--mbs-muted);
  font-size: .875rem;
  font-weight: 500;
}
 
.mbs-link:hover {
  color: var(--mbs-sea);
  border-color: var(--mbs-sea);
}
 
@media (prefers-reduced-motion: reduce) {
  .mbs-card { transition: none; }
}
 
 .navbar a:hover, .navbar .active, .navbar .active:focus, .navbar li:hover>a {
    color: #9adb05 !important;
}
.amenities-section {
      max-width: 1100px;
      margin: 0 auto;
      background: #fff;
      border-radius: 16px;
      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
      padding: 32px 24px;
    }

    .amenities-header {
      text-align: center;
      margin-bottom: 36px;
    }

    .amenities-header h2 {
      font-size: 1.85rem;
      font-weight: 700;
      color: #111;
      margin-bottom: 8px;
    }

    .amenities-header p {
      color: #666;
      font-size: 1rem;
    }

    .amenities-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      gap: 28px;
    }

    .amenity-category {
      background: #fafafa;
      border-radius: 12px;
      padding: 22px 20px;
      border: 1px solid #eee;
      transition: transform 0.2s ease, box-shadow 0.2s ease;
    }

    .amenity-category:hover {
      transform: translateY(-3px);
      box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
    }

    .category-title {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 1.15rem;
      font-weight: 600;
      color: #111;
      margin-bottom: 16px;
      padding-bottom: 12px;
      border-bottom: 2px solid #e8e8e8;
    }

    .category-title .icon {
      font-size: 1.4rem;
      width: 32px;
      height: 32px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #eef2ff;
      border-radius: 8px;
    }

    .amenity-list {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .amenity-list li {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      font-size: 0.95rem;
      color: #333;
      line-height: 1.4;
    }

    .amenity-list li::before {
      content: "✓";
      color: #10b981;
      font-weight: 700;
      font-size: 0.9rem;
      flex-shrink: 0;
      margin-top: 2px;
    }

    /* Responsive adjustments */
    @media (max-width: 768px) {
      body {
        padding: 12px;
      }

      .amenities-section {
        padding: 24px 16px;
        border-radius: 12px;
      }

      .amenities-header h2 {
        font-size: 1.5rem;
      }

      .amenities-grid {
        grid-template-columns: 1fr;
        gap: 18px;
      }

      .amenity-category {
        padding: 18px 16px;
      }
    }

    @media (max-width: 480px) {
      .amenities-header h2 {
        font-size: 1.35rem;
      }

      .category-title {
        font-size: 1.05rem;
      }

      .amenity-list li {
        font-size: 0.9rem;
      }
    }
	.attractions-section {
      max-width: 1100px;
      margin: 0 auto;
      background: #fff;
      border-radius: 16px;
      box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
      padding: 36px 28px;
    }

    .section-header {
      text-align: center;
      margin-bottom: 40px;
    }

    .section-header h2 {
      font-size: 1.9rem;
      font-weight: 700;
      color: #718821;
      margin-bottom: 8px;
    }

    .section-header p {
      color: #666;
      font-size: 1.05rem;
    }

    .attractions-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
      gap: 24px;
    }

    .attraction-card {
          background: #a8c10729;
    border: 1px solid #a8c107;
      border-radius: 14px;
      padding: 24px 22px;
      transition: transform 0.25s ease, box-shadow 0.25s ease;
      display: flex;
      flex-direction: column;
      height: 100%;
    }

    .attraction-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
      background: #fff;
    }

    .card-header {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 12px;
      margin-bottom: 14px;
    }

    .attraction-name {
      font-size: 1.2rem;
      font-weight: 650;
      color: #718821;
      line-height: 1.3;
    }

    .distance-badge {
      background: #362315;
    color: #ffffff;
      font-size: 0.8rem;
      font-weight: 600;
      padding: 5px 12px;
      border-radius: 20px;
      white-space: nowrap;
      flex-shrink: 0;
    }

    .attraction-description {
      color: #444;
      font-size: 0.95rem;
      line-height: 1.65;
      flex-grow: 1;
    }

    /* Responsive */
    @media (max-width: 768px) {
      body {
        padding: 12px;
      }

      .attractions-section {
        padding: 28px 18px;
        border-radius: 12px;
      }

      .section-header h2 {
        font-size: 1.55rem;
      }

      .attractions-grid {
        grid-template-columns: 1fr;
        gap: 18px;
      }

      .attraction-card {
        padding: 20px 18px;
      }
    }

    @media (max-width: 480px) {
      .section-header h2 {
        font-size: 1.4rem;
      }

      .attraction-name {
        font-size: 1.1rem;
      }

      .attraction-description {
        font-size: 0.92rem;
      }

      .card-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
      }
    }
	.contact-section {
    padding: 60px 20px;
    background: #f8f5f0;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  }

  .contact-container {
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
  }

  .contact-title {
    font-size: 2.2rem;
    color: #2c3e2d;
    margin: 0 0 8px;
    font-weight: 700;
  }

  .contact-subtitle {
    color: #6b7c6c;
    margin: 0 0 40px;
    font-size: 1.05rem;
  }

  .contact-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }

  .contact-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 32px 24px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
  }

  .contact-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.1);
  }

  .contact-icon {
    width: 56px;
    height: 56px;
    margin: 0 auto 18px;
    background: #e8f0e9;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #3d6b4f;
  }

  .contact-card h3 {
    margin: 0 0 12px;
    font-size: 1.15rem;
    color: #2c3e2d;
    font-weight: 600;
  }

  .contact-card p {
    margin: 0;
    color: #555;
    line-height: 1.6;
    font-size: 0.95rem;
  }

  .contact-card a {
    color: #3d6b4f;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
  }

  .contact-card a:hover {
    color: #2a4d38;
    text-decoration: underline;
  }

  /* Responsive */
  @media (max-width: 900px) {
    .contact-grid {
      grid-template-columns: 1fr;
      max-width: 420px;
      margin: 0 auto;
    }
  }

  @media (max-width: 480px) {
    .contact-section {
      padding: 40px 16px;
    }

    .contact-title {
      font-size: 1.8rem;
    }

    .contact-card {
      padding: 28px 20px;
    }
  }
  .booking-section {
    padding: 70px 20px;
    background: #ffffff;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  }

  .booking-container {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
  }

  .booking-title {
    font-size: 2.2rem;
    color: #2c3e2d;
    margin: 0 0 24px;
    font-weight: 700;
  }

  .booking-text {
    color: #555;
    font-size: 1.05rem;
    line-height: 1.7;
    margin: 0 0 40px;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
  }

  .booking-cta-box {
    background: #f8f5f0;
    border-radius: 20px;
    padding: 40px 32px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.06);
  }

  .booking-question {
    font-size: 1.15rem;
    color: #3d6b4f;
    margin: 0 0 10px;
    font-weight: 500;
  }

  .booking-call {
    font-size: 1.5rem;
    color: #2c3e2d;
    margin: 0 0 28px;
    font-weight: 700;
  }

  .booking-actions {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
  }

  .booking-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 28px;
    border-radius: 50px;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.25s ease;
  }

  .phone-btn {
    background: #3d6b4f;
    color: #ffffff;
  }

  .phone-btn:hover {
    background: #2a4d38;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(61, 107, 79, 0.3);
  }

  .website-btn {
    background: #ffffff;
    color: #3d6b4f;
    border: 2px solid #3d6b4f;
  }

  .website-btn:hover {
    background: #3d6b4f;
    color: #ffffff;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(61, 107, 79, 0.25);
  }

  /* Responsive */
  @media (max-width: 600px) {
    .booking-section {
      padding: 50px 16px;
    }

    .booking-title {
      font-size: 1.8rem;
    }

    .booking-cta-box {
      padding: 32px 20px;
    }

    .booking-call {
      font-size: 1.3rem;
    }

    .booking-actions {
      flex-direction: column;
      align-items: center;
    }

    .booking-btn {
      width: 100%;
      max-width: 280px;
      justify-content: center;
    }
  }