  :root{
    --teal:#0b544a;
    --teal-deep:#083f37;
    --teal-ink:#062e28;
    --gold:#d9a441;
    --gold-soft:#e8c07a;
    --gold-line:#674C1E;
    --cream:#f7f3ea;
    --paper:#fffdf8;
    --ink:#20281f;
    --muted:#495049;
    --white:#ffffff;
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Inter',sans-serif;
    font-weight:300;
    color:var(--ink);
    background:var(--paper);
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
  }
  a{text-decoration:none;color:inherit;}
  img{max-width:100%;display:block;}
  ul{list-style:none;}
  button{font-family:inherit;}
  .h1,.h2,.h3{font-family:'Fraunces',serif;font-weight:500;color:var(--teal-deep);}
  @media (prefers-reduced-motion: reduce){
    *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
  }

  .skip-link{
    position:absolute;left:-999px;top:0;background:var(--gold);color:var(--teal-ink);
    padding:10px 16px;z-index:999;font-weight:600;
  }
  .skip-link:focus{left:10px;top:10px;}

  .eyebrow{
    font-family:'Jost',sans-serif;font-size:.98rem;letter-spacing:.28em;text-transform:uppercase;
    color:var(--gold-line);font-weight:600;
  }

  /* ===== Announcement hairline ===== */
  .hairline{
    background:var(--teal-ink);color:#cfe0da;text-align:center;font-family:'Jost',sans-serif;
    font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;padding:8px 12px;
  }
  .hairline b{color:var(--gold-soft);font-weight:600;}

  /* ===== Header ===== */
  header.site{
    background:var(--teal);
    padding:0 32px;
    position:relative;
    border-bottom:1px solid rgba(217,164,65,.35);
  }
  .header-inner{
    max-width:1440px;margin:0 auto;
    display:flex;align-items:center;justify-content:space-between;gap:24px;
    padding:6px 0;
  }
  .brand{display:flex;align-items:center;gap:16px;}
  .brand img{height:80px;width:auto; background:#fff; padding:4px; border-radius:4px;}
  .brand-text{display:flex;flex-direction:column;line-height:1.2;}
  .brand-text .line1{font-family:'Fraunces',serif;font-size:1.05rem;color:var(--white);letter-spacing:.02em;}
  .brand-text .line2{font-family:'Jost',sans-serif;font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-soft);margin-top:3px;}

  nav.main-nav ul{display:flex;gap:34px;}
  nav.main-nav a{
    font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;
    color:#e8f0ec;position:relative;padding:4px 0;
  }
  nav.main-nav a::after{
    content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--gold);
    transition:width .25s ease;
  }
  nav.main-nav a:hover::after, nav.main-nav a:focus-visible::after{width:100%;}

  .header-actions{display:flex;align-items:center;gap:18px;}
  .phone-link{
    font-family:'Jost',sans-serif;font-size:.78rem;color:var(--gold-soft);letter-spacing:.03em;
    display:flex;flex-direction:column;text-align:right;line-height:1.3;
  }
  .phone-link span{display:block;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:#a9c4bc;}
  .book-btn{
    font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
    color:var(--teal-ink);background:var(--gold);padding:11px 22px;font-weight:600;
    border:1px solid var(--gold);transition:background .25s,color .25s;
  }
  .book-btn:hover, .book-btn:focus-visible{background:transparent;color:var(--gold-soft);}

  .nav-toggle{
    display:none;background:none;border:1px solid rgba(255,255,255,.4);color:var(--white);
    font-size:1.1rem;padding:6px 12px;cursor:pointer;
  }

  /* ===== Hero slider ===== */
  .hero{
    position:relative;height:min(88vh,720px);min-height:480px;overflow:hidden;background:var(--teal-ink);
  }
  .slide{
    position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease;
  }
  .slide.active{opacity:1;}
  .slide img{
    width:100%;height:100%;object-fit:cover;
    transform:scale(1.06);
    animation:kenburns 9s ease-out forwards;
  }
  .slide.active img{animation:kenburns 9s ease-out forwards;}
  @keyframes kenburns{
    from{transform:scale(1.12);}
    to{transform:scale(1);}
  }
  .slide::before{
    content:"";position:absolute;inset:0;z-index:1;
    background:linear-gradient(180deg,rgba(6,46,40,.35) 0%,rgba(6,46,40,.15) 32%,rgba(6,46,40,.55) 72%,rgba(6,46,40,.86) 100%);
  }

  .hero-content{
    position:absolute;left:0;right:0;top:0;bottom:0;z-index:3;
    display:flex;flex-direction:column;justify-content:center;
    padding:0 6%;pointer-events:none;
  }
  .hero-content .eyebrow{color:var(--gold-soft);}
  .hero-content .h1{
    color:var(--white);font-size:clamp(2.1rem,5.2vw,4rem);font-weight:500;line-height:1.06;
    max-width:820px;margin-top:14px;
  }
  .hero-content .h1 em{color:var(--gold-soft);font-style:italic;}
  .hero-divider{width:64px;height:2px;background:var(--gold);margin:22px 0;}
  .hero-content p.tagline{
    color:#eef4f0;font-family:'Inter',sans-serif;font-weight:300;font-size:clamp(1rem,1.6vw,1.2rem);
    max-width:520px;
  }

  .slide-caption{
    position:absolute;left:6%;bottom:110px;z-index:4;color:var(--white);max-width:420px;
  }
  .slide-caption .cap-title{
    font-family:'Fraunces',serif;font-style:italic;font-size:1.6rem;color:var(--gold-soft);
  }
  .slide-caption .cap-text{
    font-family:'Inter',sans-serif;font-size:.98rem;color:#dce8e3;margin-top:4px;font-weight:300;
  }

  .slide-counter{
    position:absolute;right:6%;bottom:110px;z-index:4;color:var(--white);
    font-family:'Jost',sans-serif;font-size:.78rem;letter-spacing:.1em;display:flex;align-items:center;gap:10px;
  }
  .slide-counter .cur{font-family:'Fraunces',serif;font-size:1.1rem;color:var(--gold-soft);}
  .slide-counter .bar{width:34px;height:1px;background:rgba(255,255,255,.4);}

  .slide-nav{
    position:absolute;top:50%;transform:translateY(-50%);z-index:5;
    background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.5);
    width:48px;height:48px;border-radius:50%;font-size:1.1rem;cursor:pointer;
    display:flex;align-items:center;justify-content:center;transition:all .25s;
  }
  .slide-nav:hover, .slide-nav:focus-visible{background:var(--gold);border-color:var(--gold);color:var(--teal-ink);}
  .slide-prev{left:26px;}
  .slide-next{right:26px;}
  @media (max-width:700px){
    .slide-nav{width:38px;height:38px;font-size:.9rem;}
    .slide-prev{left:12px;}
    .slide-next{right:12px;}
    .slide-caption, .slide-counter{bottom:150px;}
  }

  /* ===== Reservation card ===== */
  .reservation-wrap{position:relative;z-index:6;max-width:1180px;margin:0 auto;padding:0 24px;}
  .reservation-box{
    margin-top:-64px;position:relative;
    background:rgba(255,253,248,.92);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-top:3px solid var(--gold);
    box-shadow:0 30px 60px rgba(6,46,40,.22);
    padding:30px 32px 26px;
    display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr auto;gap:20px;align-items:end;
  }
  .reservation-heading{
    grid-column:1/-1;display:flex;align-items:baseline;gap:14px;margin-bottom:6px;
  }
  .reservation-heading .h2{font-size:1.15rem;font-style:italic;}
  .reservation-heading span{font-family:'Jost',sans-serif;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);}
  .field{display:flex;flex-direction:column;gap:8px;}
  .field label{
    font-family:'Jost',sans-serif;font-size:.64rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);
  }
  .field input, .field select{
    border:none;border-bottom:1.5px solid #d8cfb8;padding:8px 2px;font-size:.92rem;
    background:transparent;color:var(--ink);font-family:'Inter',sans-serif;
  }
  .field input:focus, .field select:focus{outline:none;border-color:var(--gold-line);}
  .btn-search{
    background:var(--teal);color:var(--white);border:none;
    padding:14px 26px;font-family:'Jost',sans-serif;font-weight:600;letter-spacing:.14em;font-size:.72rem;text-transform:uppercase;
    cursor:pointer;transition:background .25s;white-space:nowrap;
  }
  .btn-search:hover, .btn-search:focus-visible{background:var(--teal-deep);}

  @media (max-width:1080px){
    .reservation-box{grid-template-columns:1fr 1fr;}
    .btn-search{grid-column:1/-1;}
  }
  @media (max-width:600px){
    .reservation-box{margin-top:-40px;padding:26px 20px;}
  }

  /* ===== Sections ===== */
  section{max-width:1240px;margin:0 auto;padding:80px 24px;}
  .section-head{max-width:750px;margin:0 auto 40px;text-align:center;}
  .section-head .h2{font-size:clamp(1.7rem,3.4vw,2.5rem);margin-top:12px;}
  .section-head p{color:var(--muted);margin-top:16px;font-size:1rem;}

  /* Amenities */
  .amenities-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e6ddc7;}
  .amenity-card{
    background:var(--paper);padding:44px 26px;text-align:left;
    transition:background .3s;
  }
  .amenity-card:hover{background:var(--cream);}
  .amenity-icon{width:45px;height:45px;color:var(--gold-line);margin-bottom:22px;}
  .amenity-icon svg{width:100%;height:100%;}
  .amenity-card .h3{font-size:1.02rem;font-weight:500;margin-bottom:10px;}
  .amenity-card p{color:var(--muted);font-size:.86rem;}
  @media (max-width:900px){.amenities-grid{grid-template-columns:repeat(2,1fr);}}
  @media (max-width:520px){.amenities-grid{grid-template-columns:1fr;}}

  /* ===== Rooms — slider, not cards ===== */
  .rooms-slider{position:relative;border-top:1px solid #e6ddc7;border-bottom:1px solid #e6ddc7;}
  .room-track{position:relative;min-height:460px;}
  .room-slide{
    position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;
    display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;
    padding:56px 0;transition:opacity .55s ease;
  }
  .room-slide.active{opacity:1;visibility:visible;pointer-events:auto;}
  .room-media{position:relative;height:400px;overflow:hidden;}
  .room-media img{width:100%;height:100%;object-fit:cover;}
  .room-index{
    font-family:'Fraunces',serif;font-style:italic;color:var(--gold-line);font-size:1rem;
    display:block;margin-bottom:12px;
  }
  .room-info .h3{font-size:1.55rem;line-height:1.2;margin-bottom:16px;}
  .room-specs{
    display:flex;flex-wrap:wrap;font-family:'Jost',sans-serif;font-size:.68rem;
    letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:20px;
  }
  .room-specs span{padding-right:16px;margin-right:16px;border-right:1px solid #d8cfb8;}
  .room-specs span:last-child{border-right:none;margin-right:0;padding-right:0;}
  .room-info p{color:#4b544d;font-size:.95rem;margin-bottom:22px;max-width:460px;}
  .room-link{
    font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;
    color:var(--teal);border-bottom:1px solid var(--gold);padding-bottom:5px;
    display:inline-flex;align-items:center;gap:8px;transition:gap .25s,color .25s;
  }
  .room-link:hover{gap:16px;color:var(--gold-line);}

  .room-controls{
    display:flex;align-items:center;justify-content:center;gap:22px;padding-bottom:42px;
  }
  .room-nav{
    background:transparent;border:1px solid var(--gold-line);color:var(--teal);
    width:44px;height:44px;border-radius:50%;font-size:1rem;cursor:pointer;
    display:flex;align-items:center;justify-content:center;transition:all .25s;
  }
  .room-nav:hover, .room-nav:focus-visible{background:var(--teal);border-color:var(--teal);color:var(--white);}
  .room-dots{display:flex;gap:10px;}
  .room-dots button{
    width:8px;height:8px;border-radius:50%;border:1px solid var(--gold-line);background:transparent;
    padding:0;cursor:pointer;
  }
  .room-dots button.active{background:var(--gold-line);}

  @media (max-width:860px){
    .room-slide{grid-template-columns:1fr;gap:26px;padding:32px 0;}
    .room-track{min-height:640px;}
    .room-media{height:260px;}
  }

  /* ===== Attractions — list left, image swaps right ===== */
  .attractions{background:var(--cream);}
  .attractions-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:start;}
  .attractions-list{border-top:1px solid #ddd3bb;}
  .attraction-row{
    width:100%;text-align:left;background:none;border:none;border-bottom:1px solid #ddd3bb;
    display:grid;grid-template-columns:44px 1fr auto;gap:18px;align-items:center;
    padding:22px 4px;cursor:pointer;transition:padding-left .3s ease;
  }
  .attraction-row:hover{padding-left:12px;}
  .attraction-row.active{padding-left:12px;}
  .attraction-index{font-family:'Fraunces',serif;font-style:italic;color:var(--gold-line);font-size:1.02rem;}
  .attraction-body .attraction-name{
    font-family:'Fraunces',serif;font-size:1.4rem;color:var(--teal-deep);font-weight:500;
  }
  .attraction-row.active .attraction-name{color:var(--gold-line);}
  .attraction-body .attraction-desc{
    font-family:'Inter',sans-serif;font-size:.94rem;color:var(--muted);margin-top:5px;max-width:420px;
  }
  .attraction-arrow{
    font-family:'Jost',sans-serif;font-size:1.8rem;transition:transform .25s; color:#495049;
  }
  .attraction-row:hover .attraction-arrow, .attraction-row.active .attraction-arrow{transform:translateX(4px);}

  .attraction-visual{position:sticky;top:24px;}
  .attraction-image-wrap{position:relative;height:480px;overflow:hidden;box-shadow:0 24px 50px rgba(6,46,40,.18);}
  .attraction-image-wrap img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease;
  }
  .attraction-image-wrap img.active{opacity:1;}
  .attraction-caption{
    position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px 24px;
    background:linear-gradient(0deg,rgba(6,46,40,.82) 0%,rgba(6,46,40,0) 100%);
  }
  .attraction-caption .cap-name{font-family:'Fraunces',serif;font-style:italic;color:var(--gold-soft);font-size:1.15rem;}

  @media (max-width:900px){
    .attractions-layout{grid-template-columns:1fr;}
    .attraction-visual{position:static;order:-1;}
    .attraction-image-wrap{height:280px;}
  }

  /* About */
  .about{background:var(--cream);}
  .about-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center;}
  .about-sub{display:grid;gap:2px;align-items:center;}
  .about-img-wrap{position:relative;}
  .about-img-wrap::before{
    content:"";position:absolute;top:-18px;left:-18px;right:18px;bottom:18px;
    border:2px solid var(--gold);z-index:0;
  }
  .about-img-wrap img{position:relative;z-index:1;box-shadow:0 24px 50px rgba(6,46,40,.18);}
  .about-text .eyebrow{margin-bottom:10px;display:block;}
  .about-text .h2{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.15;margin-bottom:22px;}
  .about-text p{color:#4b544d;margin-bottom:16px;font-size:.98rem;}
  .info-strip{
    display:flex;gap:36px;margin-top:30px;flex-wrap:wrap;
    border-top:1px solid #ddd3bb;padding-top:24px;
  }
  .info-strip div{display:flex;flex-direction:column;gap:4px;}
  .info-strip .k{font-family:'Jost',sans-serif;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-line);}
  .info-strip .v{font-family:'Fraunces',serif;font-size:1rem;color:var(--teal-deep);}
  @media (max-width:860px){.about-inner{grid-template-columns:1fr;}.about-img-wrap{margin-bottom:20px;}}

  /* CTA */
  .cta-strip{
    background:var(--teal-ink);color:var(--white);text-align:center;padding:100px 24px;
    position:relative;border-top:1px solid rgba(217,164,65,.4);
  }
  .cta-strip .eyebrow{color:var(--gold-soft);}
  .cta-strip .h2{color:var(--white);font-size:clamp(1.8rem,3.6vw,2.8rem);margin:16px 0 20px;font-style:italic;}
  .cta-strip p{color:#b9d0c8;margin-bottom:30px;max-width:520px;margin-left:auto;margin-right:auto;font-size:.98rem;}
  .cta-btn{
    display:inline-block;background:transparent;color:var(--gold-soft);font-family:'Jost',sans-serif;font-weight:600;
    padding:15px 34px;letter-spacing:.18em;text-transform:uppercase;font-size:.75rem;border:1px solid var(--gold-soft);
    transition:all .25s;
  }
  .cta-btn:hover{background:var(--gold-soft);color:var(--teal-ink);}

  /* Footer */
  footer{background:var(--teal);color:#cfe4dd;padding:64px 24px 28px;font-size:.86rem;}
  .footer-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;}
  .footer-brand img{height:70px;filter:brightness(0) invert(1);margin-bottom:16px;}
  .footer-brand p{color:#a9c4bc;font-size:.85rem;max-width:260px;}
  .footer-inner .h4{font-family:'Jost',sans-serif;color:var(--gold-soft);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px;font-weight:600;}
  .footer-inner ul li{margin-bottom:10px;}
  .footer-inner a{color:#cfe4dd;}
  .footer-inner a:hover{color:var(--gold-soft);}
  .footer-bottom{
    max-width:1240px;margin:44px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.75rem;color:#E2E9E9;
  }
 /* Social */
.social-icons {
    margin-top: 10px;
}

.social-icons a {
    display: inline-block;
    margin: 5px 8px 0 0;
    width: 36px; 
    height: 36px;   color: #fff !important;
    line-height: 36px;
    text-align: center;
    background: rgba(255,255,255,0.1);
    border-radius: 50%;
    transition: 0.3s;
}

.social-icons a:hover {
    background: #062e28;
    transform: translateY(-3px);
} 
  @media (max-width:820px){.footer-inner{grid-template-columns:1fr 1fr;}}
  @media (max-width:520px){.footer-inner{grid-template-columns:1fr;}}



  /* ===== Mobile nav ===== */
  @media (max-width:980px){
    .header-inner{flex-wrap:wrap;}
    .nav-toggle{display:inline-flex;}
    nav.main-nav{width:100%;max-height:0;overflow:hidden;transition:max-height .35s ease;order:5;}
    nav.main-nav.open{max-height:400px;}
    nav.main-nav ul{flex-direction:column;gap:0;background:var(--teal-deep);margin-top:14px;}
    nav.main-nav a{display:block;width:100%;padding:14px 6px;border-bottom:1px solid rgba(255,255,255,.08);}
    .header-actions{gap:12px;}
    .phone-link{display:none;}
  }
  
  
  

  /* Root Container */
  .wy-res-container {
    --wy-navy: #003366;
    --wy-blue-hover: #002244;
    --wy-gold: #d99b26;
    --wy-bg: #ffffff;
    --wy-border: #d1d5db;
    --wy-radius: 8px;
    --wy-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Arial, sans-serif;
    
  }

 

  /* Header Section */
  .wy-res-header {
    margin-bottom: 16px;
    border-bottom: 2px solid #f3f4f6;
    padding-bottom: 10px;
  }

  .wy-res-title {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--wy-navy);
    letter-spacing: -0.2px;
  }

  .wy-res-location {
    margin: 2px 0 0 0;
    font-size: 0.875rem;
    color: #4b5563;
    font-weight: 500;
  }

  /* Flex Layout for 100% Responsiveness */
  .wy-res-form {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
  }

  /* Flex Item Controls */
  .wy-res-field {
    flex: 1 1 180px; /* Grow, shrink, base width */
    min-width: 130px;
    display: flex;
    flex-direction: column;
  }

  .wy-res-field-small {
    flex: 1 1 100px;
    min-width: 90px;
  }

  .wy-res-field-btn {
    flex: 1 1 200px;
    min-width: 160px;
  }

  .wy-res-label {
       font-family: 'Jost', sans-serif;
    font-size: .74rem;
    font-weight: 600;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--teal);
    margin-bottom: 6px;
  }

  /* Universal Input Styles */
  .wy-res-input {
    width: 100%;
    height: 48px;
    padding: 0 12px;
    border: 1px solid var(--wy-border);
    border-radius: var(--wy-radius);
    font-size: 0.95rem;
    color: #111827;
    background-color: #f9fafb;
    box-sizing: border-box;
    outline: none;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
  }

  .wy-res-input:focus, 
  .wy-res-input:hover {
    border-color: var(--wy-navy);
    background-color: #ffffff;
  }

  .wy-res-input:focus {
    box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.15);
  }

  /* Dropdown Styling */
  select.wy-res-input {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("arrow.svg");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 10px auto;
    padding-right: 28px;
  }

  /* Animated Button */
  .wy-res-submit {
    background:var(--teal);color:var(--white);border:none;
    padding:14px 26px;font-family:'Jost',sans-serif;font-weight:600;letter-spacing:.14em;font-size:.72rem;text-transform:uppercase;
    cursor:pointer;transition:background .25s;white-space:nowrap;
  }
  .wy-res-submit:hover{background:var(--teal-deep);}


  .wy-res-submit:active {
    transform: translateY(0);
  }

  .wy-res-submit svg {
    transition: transform 0.2s ease;
  }

  .wy-res-submit:hover svg {
    transform: translateX(4px);
  }

  /* Mobile Optimization Breakpoints */
  @media (max-width: 640px) {
    .wy-res-container {
      padding: 16px;
    }
    .wy-res-field {
      flex: 1 1 100%; /* Full width on mobile screens */
    }
    .wy-res-field-small {
      flex: 1 1 30%; /* Side-by-side for guests on small screens */
    }
    .wy-res-field-btn {
      flex: 1 1 100%;
      margin-top: 4px;
    }
  }  
  
   .qi-faq-section {
        width: 100%; font-family: 'Inter', sans-serif !important;
        padding: 95px 20px;
        background: #043b35;
        box-sizing: border-box;
    }

    .qi-faq-container {
        width: 100%;
        max-width: 900px;
        margin: 0 auto;
    }


    /* Heading */

    .qi-faq-heading {
        text-align: center;
        margin-bottom: 50px;
    }

    .qi-faq-subtitle {
        display: block;
        margin-bottom: 25px;
        color: #e9b65b;
       font-size: 14px;
        font-weight: 700;
        letter-spacing: 4px;
        line-height: 1.4;
    }

    .qi-faq-heading h2 {
        margin: 0 0 25px;
        color: #ffffff;
        font-family: Georgia, "Times New Roman", serif;
        font-size: 46px;
        font-weight: 500;
        font-style: italic;
        line-height: 1.2;
    }

    .qi-faq-heading p {
        max-width: 650px;
        margin: 0 auto;
        color: #9dd2d9;
        font-size: 17px;
        font-weight: 400;
        line-height: 1.8;
    }


    /* FAQ List */

    .qi-faq-list {
        width: 100%;
        border-top: 1px solid rgba(233, 182, 91, 0.55);
    }

    .qi-faq-item {
        border-bottom: 1px solid rgba(233, 182, 91, 0.55);
    }


    /* Question */

    .qi-faq-question {
        width: 100%;
        padding: 25px 5px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 25px;
    font-family: 'Inter', sans-serif !important;
        border: 0;
        background: transparent;

        color: #ffffff;
        font-size: 17px;
        font-weight: 600;
        line-height: 1.5;
        text-align: left;

        cursor: pointer;
    }

    .qi-faq-question:hover {
        color: #e9b65b;
    }

    .qi-faq-question:focus-visible {
        outline: 2px solid #e9b65b;
        outline-offset: 5px;
    }


    /* Plus Icon */

    .qi-faq-icon {
        flex-shrink: 0;

        width: 32px;
        height: 32px;

        display: flex;
        align-items: center;
        justify-content: center;

        border: 1px solid #e9b65b;
        border-radius: 50%;

        color: #e9b65b;
        font-size: 22px;
        font-weight: 300;

        transition:
            transform 0.3s ease,
            background-color 0.3s ease,
            color 0.3s ease;
    }

    .qi-faq-question[aria-expanded="true"] .qi-faq-icon {
        transform: rotate(45deg);
        background: #e9b65b;
        color: #043b35;
    }


    /* Answer */

    .qi-faq-answer {
        padding: 0 60px 28px 5px;
    }

    .qi-faq-answer p {
        margin: 0;

        color: #9dd2d9;
       font-size: 16px;
        font-weight: 400;
        line-height: 1.8;
    }

    .qi-faq-answer strong {
        color: #ffffff;
        font-weight: 600;
    }

    .qi-faq-answer a {
        color: #e9b65b;
        font-weight: 600;
        text-decoration: underline;
        text-underline-offset: 3px;
    }

    .qi-faq-answer a:hover {
        color: #ffffff;
    }


    /* Book Button */

    .qi-faq-book {
        display: inline-block;
        margin-top: 22px;
        padding: 15px 28px;

        border: 1px solid #e9b65b;

        color: #e9b65b !important;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 2px;
        text-decoration: none !important;

        transition:
            background 0.3s ease,
            color 0.3s ease;
    }

    .qi-faq-book:hover {
        background: #e9b65b;
        color: #043b35 !important;
    }


    /* =========================
       TABLET
    ========================= */

    @media (max-width: 768px) {

        .qi-faq-section {
            padding: 75px 25px;
        }

        .qi-faq-heading h2 {
            font-size: 38px;
        }

        .qi-faq-heading p {
            font-size: 16px;
        }

        .qi-faq-question {
            font-size: 16px;
            padding: 22px 3px;
        }

        .qi-faq-answer {
            padding: 0 50px 25px 3px;
        }

    }


    /* =========================
       MOBILE
    ========================= */

    @media (max-width: 480px) {

        .qi-faq-section {
            padding: 60px 18px;
        }

        .qi-faq-heading {
            margin-bottom: 35px;
        }

        .qi-faq-subtitle {
            margin-bottom: 18px;
            font-size: 11px;
            letter-spacing: 2.5px;
        }

        .qi-faq-heading h2 {
            margin-bottom: 18px;
            font-size: 31px;
        }

        .qi-faq-heading p {
            font-size: 14px;
            line-height: 1.7;
        }

        .qi-faq-question {
            padding: 20px 2px;
            font-size: 15px;
            gap: 15px;
        }

        .qi-faq-icon {
            width: 27px;
            height: 27px;
            font-size: 19px;
        }

        .qi-faq-answer {
            padding: 0 38px 22px 2px;
        }

        .qi-faq-answer p {
            font-size: 14px;
            line-height: 1.7;
        }

        .qi-faq-book {
            padding: 13px 20px;
            font-size: 11px;
        }

    }

.fq{text-align:left; text-decoration: none; color:#0b544a; font-weight:normal;  font-size:21px;  line-height:34px; margin-top:6px; list-style:none;     font-family: 'Fraunces', serif;}
.fqa{font-size:16px; color:#424242; font-weight:normal; line-height:28px; text-align:left;}
.fqa a{font-size:16px; color:#0b544a; text-decoration:none; font-weight:bold;}
html {
    scroll-behavior: smooth;
  }

  #scrollTopBtn {
    position: fixed;
    bottom: 25px;
    right: 25px;
    width: 50px;
    height: 50px;
    border: none;
    outline: none;
    background:#d9a441;
    color: #000;
    font-size: 22px;
    border-radius: 50%;
    cursor: pointer;
    display: none;
    z-index: 9999;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
    transition: all 0.3s ease;
  }

  #scrollTopBtn:hover {
    background: #fff; color: #000;
    transform: translateY(-4px);
  }

  @media (max-width: 767px) {
    #scrollTopBtn {
      width: 45px;
      height: 45px;
      font-size: 20px;
      bottom: 20px;
      right: 20px;
    }
  }
  
 .amenitypg {
      width:40%; float:left; 
      margin: 10px 10px 0 60px;
      padding: 20px; 
      
    }
  
    .amenitypg ul {
      list-style: none;
      padding: 0;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 15px 30px;
    }
    .amenitypg li {
      font-size: 17px;
      color: #333; padding:8px 0;
      display: flex;
      align-items: center; text-align:left;
    }
    .amenitypg li i {
       color: #333;
      margin-right: 10px;
      font-size: 18px;
      min-width: 20px;
      text-align: center;
    }
.amenitypg-list li {
  position: relative;
  padding-left: 8px;
  margin-bottom: 10px;
}

.amenitypg-list li::before {
  content: "";
  position: absolute;
  left: 0;
   color: #333; /* Blue checkmark */
  font-size: 17px;
}
.col1 {  width:40%; float:left; text-align:left; padding: 20px;  font-size: 17px;  color: #333; margin-left:30px; }
.col1 ul li {list-style:circle; line-height:36px;}
.col1 ul li a {color: #333; text-decoration:none; list-style:none;}	
.feature-box {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    gap: 60px;
    background: none;
    margin-bottom: 15px;
}

.feature-box.reverse {
    flex-direction: row-reverse;
}

.img-side img {
    width: 100%;
    max-width: 550px;
    height: 320px;
    object-fit: cover;
    border-radius: 12px;
}

.text-side {
    max-width: 620px;
}

.text-side h3 {
    font-size: 28px; color: #002D72;
    margin-bottom: 10px;
}

.text-side p {
        font-size: 0.98rem; color:#374151;
    margin-bottom: 20px;     line-height: 1.8;
}

.title2, .title2 a {
    font-size: 36px;
    font-weight: normal;
    margin-bottom: 20px;
    color: #002D72;

/* ----- MOBILE RESPONSIVE ----- */

@media (max-width: 768px) {
    .feature-box,
    .feature-box.reverse {
        flex-direction: column;
        text-align: center;
    }

    .img-side img {
        height: 250px;
    }
}

.top20 { margin-top:5%;}
.top { margin-top:60px;}



