
    :root{
      --bg:#fbfaff;
      --card:#fff;
      --navy:#0b145b;
      --navy2:#111a68;
      --ink:#151c4f;
      --muted:#666b86;
      --violet:#7b2cbf;
      --line:#e7e7f1;
      --soft:#f1f1f8;
      --radius:30px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      background:var(--bg);
      color:var(--ink);
      -webkit-font-smoothing:antialiased;
    }
    a{color:inherit}
    img,svg{display:block;max-width:100%}
    .serif{font-family:Georgia,"Times New Roman",serif}
    .container{width:min(1180px,calc(100% - 40px));margin:auto}
    .section{padding:112px 0}
    .eyebrow{
      font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--violet)
    }
    h1,h2,h3,p{margin-top:0}
    h1{
      font-family:Georgia,"Times New Roman",serif;
      font-weight:400;
      font-size:clamp(52px,7vw,92px);
      line-height:.98;letter-spacing:-.045em;
      max-width:930px;margin:24px 0 28px;
    }
    h2{
      font-family:Georgia,"Times New Roman",serif;
      font-weight:400;
      font-size:clamp(40px,5vw,66px);
      line-height:1.02;letter-spacing:-.035em;
      margin:20px 0 24px;
    }
    h3{font-size:25px;letter-spacing:-.02em}
    p{font-size:18px;line-height:1.65;color:var(--muted)}
    .nav{
      position:sticky;top:0;z-index:30;
      background:rgba(251,250,255,.90);backdrop-filter:blur(16px);
      border-bottom:1px solid rgba(231,231,241,.72)
    }
    .nav-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
    .brand{font-family:Georgia,"Times New Roman",serif;font-size:23px;text-decoration:none;color:var(--navy)}
    .nav-links{display:flex;align-items:center;gap:30px}
    .nav-links a{font-size:14px;text-decoration:none;color:var(--muted)}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:9px;
      min-height:52px;padding:0 24px;border-radius:999px;border:1px solid transparent;
      text-decoration:none;font-weight:700;font-size:15px;transition:.25s ease
    }
    .btn-primary{background:var(--navy);color:#fff;box-shadow:0 14px 32px rgba(11,20,91,.16)}
    .btn-primary:hover{transform:translateY(-2px);background:#071047}
    .btn-outline{border-color:#c9cbdb;color:var(--navy);background:#fff}
    .btn-outline:hover{border-color:var(--navy);transform:translateY(-2px)}
    .hero{padding:96px 0 80px}
    .hero-copy{max-width:770px}
    .hero-lead{max-width:650px}
    .bullets{margin:28px 0 34px;padding:0;list-style:none;display:grid;gap:11px}
    .bullets li{display:flex;align-items:center;gap:12px;color:#343a67;font-size:16px}
    .dot{width:6px;height:6px;border-radius:50%;background:var(--violet)}
    .visual{
      margin-top:64px;border-radius:36px;overflow:hidden;
      box-shadow:0 34px 80px rgba(11,20,91,.12);background:#e8e3dc
    }
    .visual svg{width:100%;height:auto}
    .split{display:grid;grid-template-columns:1fr 1fr;gap:74px;align-items:center}
    .copy-limit{max-width:520px}
    .media-card{border-radius:32px;overflow:hidden;box-shadow:0 28px 60px rgba(11,20,91,.10)}
    .rooms{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-top:48px}
    .room{
      background:#fff;border:1px solid var(--line);border-radius:30px;overflow:hidden;
      display:flex;flex-direction:column;transition:.28s ease
    }
    .room:hover{transform:translateY(-5px);box-shadow:0 26px 55px rgba(11,20,91,.09)}
    .room-body{padding:32px;display:flex;flex-direction:column;flex:1}
    .room-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
    .pill{background:var(--soft);border-radius:999px;padding:8px 13px;font-size:12px;color:#515777;white-space:nowrap}
    .checks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0 30px}
    .check{font-size:14px;color:#3f456d}
    .check:before{content:"✓";color:var(--violet);font-weight:900;margin-right:8px}
    .uses{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:46px}
    .use{
      background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;
      min-height:170px;transition:.25s ease
    }
    .use:hover{transform:translateY(-4px);border-color:#cfc1e8}
    .use .ico{font-size:26px;margin-bottom:20px}
    .use h3{font-size:20px;margin-bottom:8px}
    .use p{font-size:15px;margin-bottom:0}
    .navy-wrap{padding:72px 0}
    .navy{
      background:linear-gradient(180deg,var(--navy),var(--navy2));
      color:#fff;border-radius:40px;padding:76px 62px
    }
    .navy .eyebrow{color:#c8a6ff}
    .navy h2{color:#fff}
    .benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 28px;margin-top:50px}
    .benefit{border-top:1px solid rgba(255,255,255,.18);padding-top:22px}
    .benefit h3{font-size:19px;color:#fff;margin:12px 0 8px}
    .benefit p{font-size:15px;color:rgba(255,255,255,.68);margin:0}
    .center{text-align:center;max-width:760px;margin:auto}
    .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:50px}
    .step{border:1px solid var(--line);background:#fff;border-radius:26px;padding:32px}
    .step .num{font-family:Georgia,"Times New Roman",serif;font-size:35px;color:var(--violet)}
    .step h3{font-size:19px;margin:19px 0 10px}
    .step p{font-size:15px;margin:0}
    .location{
      background:#fff;border:1px solid var(--line);border-radius:34px;padding:50px;
      display:flex;align-items:flex-end;justify-content:space-between;gap:34px
    }
    .location p{margin-bottom:0}
    .faq{max-width:820px;margin:auto}
    .faq-list{border-top:1px solid var(--line);margin-top:46px}
    .faq-item{border-bottom:1px solid var(--line)}
    .faq-q{
      width:100%;border:0;background:transparent;padding:24px 0;text-align:left;
      display:flex;justify-content:space-between;gap:30px;align-items:center;
      cursor:pointer;color:var(--navy);font-size:20px;font-family:Georgia,"Times New Roman",serif
    }
    .faq-q span:last-child{font:26px/1 sans-serif;transition:transform .25s}
    .faq-item.open .faq-q span:last-child{transform:rotate(45deg)}
    .faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
    .faq-a > div{overflow:hidden}
    .faq-a p{font-size:16px;padding:0 50px 0 0;margin:0}
    .faq-item.open .faq-a{grid-template-rows:1fr}
    .faq-item.open .faq-a p{padding-bottom:24px}
    .final{
      background:var(--navy);color:#fff;border-radius:40px;padding:88px 50px;text-align:center
    }
    .final h2{color:#fff;max-width:820px;margin:0 auto 36px}
    footer{padding:50px 0 90px;border-top:1px solid var(--line)}
    .footer-inner{display:flex;justify-content:space-between;gap:30px;align-items:flex-end}
    .footer-inner p{font-size:14px;margin:8px 0 0}
    .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1)}
    .reveal.in{opacity:1;transform:none}
    .sticky-mobile{display:none}
    @media(max-width:900px){
      .nav-links a:not(.btn){display:none}
      .split,.rooms,.uses,.benefits,.steps{grid-template-columns:1fr}
      .split{gap:38px}
      .section{padding:80px 0}
      .navy{padding:55px 30px}
      .location{align-items:flex-start;flex-direction:column}
      .checks{grid-template-columns:1fr}
    }
    @media(max-width:620px){
      .container{width:min(100% - 28px,1180px)}
      .nav-inner{height:70px}
      .nav-links .btn{display:none}
      h1{font-size:49px}
      h2{font-size:39px}
      p{font-size:16px}
      .hero{padding:64px 0 60px}
      .visual{margin-top:44px;border-radius:26px}
      .room-body{padding:24px}
      .navy{border-radius:28px;padding:48px 24px}
      .location{padding:30px;border-radius:26px}
      .final{border-radius:28px;padding:62px 24px}
      .sticky-mobile{
        display:block;position:fixed;z-index:50;left:12px;right:12px;bottom:12px;
        background:rgba(255,255,255,.9);backdrop-filter:blur(12px);padding:8px;border:1px solid var(--line);border-radius:999px
      }
      .sticky-mobile .btn{width:100%}
      footer{padding-bottom:110px}
    }
  


  
    
/* Shared site footer — brand left, navigation center, contact right */
.site-footer{
  background:#f7f6f4;
  color:#11175f;
  margin-top:0;
  border-top:1px solid rgba(17,23,95,.08);
}
.footer-main{
  padding:70px 24px 28px;
}
.footer-shell{
  width:min(1240px,calc(100% - 32px));
  margin:0 auto;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.25fr .68fr .82fr .78fr 1.05fr;
  gap:46px;
  align-items:start;
}
.footer-brand-block{
  max-width:440px;
}
.footer-brand{
  margin:0 0 14px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:48px;
  line-height:.95;
  letter-spacing:-.045em;
  font-weight:400;
  color:#11175f;
}
.footer-tagline{
  margin:0;
  max-width:430px;
  color:#66656d;
  font-size:18px;
  line-height:1.55;
}
.footer-socials{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:28px;
}
.footer-socials a{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#11175f;
  background:#fff;
  border:1px solid rgba(17,23,95,.12);
  text-decoration:none;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.footer-socials a:hover{
  transform:translateY(-2px);
  background:#efe8ff;
  border-color:#d7c8ee;
}
.footer-socials svg{width:19px;height:19px}
.footer-col h3,
.footer-contact h3{
  margin:0 0 18px;
  color:#11175f;
  font-size:13px;
  line-height:1;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.footer-links{
  display:flex;
  flex-direction:column;
  gap:11px;
}
.footer-links a{
  width:max-content;
  max-width:100%;
  color:#66656d;
  text-decoration:none;
  font-size:15.5px;
  line-height:1.42;
  transition:color .2s ease,transform .2s ease;
}
.footer-links a:hover{
  color:#7b2cbf;
  transform:translateX(2px);
}
.footer-contact{
  justify-self:end;
  width:min(100%,320px);
}
.footer-contact-list{
  display:grid;
  gap:12px;
}
.footer-contact-list a,
.footer-contact-list div{
  color:#66656d;
  font-size:16px;
  line-height:1.5;
  text-decoration:none;
}
.footer-contact-list a:hover{color:#7b2cbf}
.footer-bottom{
  margin-top:58px;
  padding-top:20px;
  border-top:1px solid rgba(17,23,95,.10);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  color:#8b8993;
  font-size:12px;
  line-height:1.5;
}
.footer-legal{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
}
.footer-legal a{
  color:inherit;
  text-decoration:none;
}
@media(max-width:1050px){
  .footer-grid{
    grid-template-columns:1.2fr .8fr .8fr;
  }
  .footer-contact{
    grid-column:auto;
    justify-self:start;
    width:100%;
  }
  .footer-contact-list{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
  }
}
@media(max-width:760px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand-block{grid-column:1/-1}
  .footer-contact{grid-column:1/-1}
  .footer-contact-list{grid-template-columns:1fr}
}
@media(max-width:520px){
  .footer-main{padding:54px 14px 24px}
  .footer-shell{width:min(100% - 8px,1240px)}
  .footer-grid{grid-template-columns:1fr;gap:34px}
  .footer-brand-block,.footer-contact{grid-column:auto}
  .footer-brand{font-size:42px}
  .footer-tagline{font-size:17px}
  .footer-bottom{
    margin-top:42px;
    flex-direction:column;
    align-items:flex-start;
  }
}


/* Unified premium navigation — desktop links + mobile menu */
.site-nav{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(255,255,255,.97);
  color:#11175f;
  border-top:4px solid #7b2cbf;
  border-bottom:1px solid rgba(17,23,95,.10);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.site-nav-inner{
  min-height:86px;
  max-width:1500px;
  margin:0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:30px;
}
.nav-brand{
  color:#11175f;
  text-decoration:none;
  font-family:Georgia,"Times New Roman",serif;
  font-size:30px;
  line-height:1;
  letter-spacing:-.045em;
  white-space:nowrap;
}
.desktop-nav{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:25px;
  min-width:0;
}
.desktop-nav > a,
.more-trigger{
  color:#11175f;
  text-decoration:none;
  font-size:13px;
  line-height:1;
  font-weight:750;
  white-space:nowrap;
  background:transparent;
  border:0;
  padding:14px 0;
  cursor:pointer;
  font-family:inherit;
  position:relative;
}
.desktop-nav > a::after,
.more-trigger::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:7px;
  height:1px;
  background:#7b2cbf;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .22s ease;
}
.desktop-nav > a:hover::after,
.more-wrap:hover .more-trigger::after{
  transform:scaleX(1);
}
.more-wrap{
  position:relative;
}
.more-trigger{
  display:flex;
  align-items:center;
  gap:6px;
}
.more-trigger .chev{
  font-size:11px;
  transition:transform .2s ease;
}
.more-wrap:hover .chev{
  transform:rotate(180deg);
}
.more-menu{
  position:absolute;
  top:calc(100% + 8px);
  right:-18px;
  width:240px;
  padding:10px;
  border-radius:20px;
  background:#fff;
  border:1px solid rgba(17,23,95,.10);
  box-shadow:0 22px 50px rgba(17,23,95,.14);
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
}
.more-wrap:hover .more-menu,
.more-wrap:focus-within .more-menu{
  opacity:1;
  visibility:visible;
  transform:none;
}
.more-menu a{
  display:block;
  padding:12px 13px;
  border-radius:12px;
  color:#343965;
  text-decoration:none;
  font-size:14px;
  line-height:1.35;
}
.more-menu a:hover{
  background:#f5f0fb;
  color:#7b2cbf;
}
.nav-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.nav-action{
  min-height:50px;
  padding:0 22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
}
.nav-action.primary{
  background:#11175f;
  color:#fff;
  border:1.5px solid #7b2cbf;
  box-shadow:0 8px 20px rgba(17,23,95,.12);
}
.nav-action.primary:hover{
  transform:translateY(-2px);
  background:#252c84;
}
.menu-trigger{
  display:none;
  width:max-content;
  border:0;
  background:transparent;
  color:#11175f;
  padding:8px 2px;
  align-items:center;
  gap:12px;
  font:inherit;
  font-size:14px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  cursor:pointer;
}
.hamburger{
  width:30px;
  height:22px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.hamburger span{
  display:block;
  width:100%;
  height:3px;
  border-radius:999px;
  background:#11175f;
}

/* mobile drawer */
.menu-backdrop{
  position:fixed;
  inset:0;
  z-index:1090;
  background:rgba(9,12,48,.34);
  opacity:0;
  visibility:hidden;
  transition:.28s ease;
}
.menu-panel{
  position:fixed;
  z-index:1100;
  top:0;
  left:0;
  width:min(440px,92vw);
  height:100dvh;
  background:#fbf9ff;
  color:#11175f;
  padding:28px 30px 34px;
  transform:translateX(-102%);
  transition:transform .42s cubic-bezier(.22,1,.36,1);
  box-shadow:30px 0 70px rgba(17,23,95,.14);
  overflow-y:auto;
  overscroll-behavior:contain;
}
body.menu-open .menu-backdrop{opacity:1;visibility:visible}
body.menu-open .menu-panel{transform:translateX(0)}
.menu-panel-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:42px;
}
.menu-panel-brand{
  font-family:Georgia,"Times New Roman",serif;
  font-size:29px;
  letter-spacing:-.04em;
}
.menu-close{
  width:44px;
  height:44px;
  border:1px solid rgba(17,23,95,.15);
  border-radius:50%;
  background:#fff;
  color:#11175f;
  font-size:27px;
  line-height:1;
  cursor:pointer;
}
.menu-label{
  margin:0 0 14px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#817ea8;
}
.menu-links{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.menu-links a{
  padding:14px 0;
  border-bottom:1px solid rgba(17,23,95,.10);
  color:#11175f;
  text-decoration:none;
  font-family:Georgia,"Times New Roman",serif;
  font-size:29px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.menu-small-links{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin-top:28px;
}
.menu-small-links a{
  padding:10px 0;
  color:#343965;
  text-decoration:none;
  font-size:15px;
}
.menu-mobile-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:32px;
}
.menu-mobile-actions a{
  min-height:50px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  text-decoration:none;
  text-transform:uppercase;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  background:#11175f;
  color:#fff;
}

@media(max-width:1180px){
  .desktop-nav{gap:17px}
  .desktop-nav > a,.more-trigger{font-size:12px}
  .nav-action{padding:0 18px;font-size:11px}
}
@media(max-width:980px){
  .site-nav-inner{
    min-height:74px;
    grid-template-columns:auto 1fr auto;
    gap:14px;
    padding:0 16px;
  }
  .desktop-nav{display:none}
  .menu-trigger{display:inline-flex}
  .nav-brand{
    justify-self:center;
    font-size:24px;
  }
  .nav-actions{justify-self:end}
  .nav-action.primary{
    min-height:44px;
    padding:0 15px;
    font-size:10px;
  }
}
@media(max-width:520px){
  .site-nav-inner{padding:0 12px}
  .menu-trigger{font-size:0;gap:0}
  .nav-brand{font-size:20px}
  .nav-action.primary{padding:0 12px;font-size:9.5px;letter-spacing:.04em}
  .menu-panel{padding:22px 22px 28px}
  .menu-links a{font-size:27px}
}


/* Floating WhatsApp — secondary assistance CTA */
.whatsapp-float{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:980;
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  color:#11175f;
}
.whatsapp-float-label{
  padding:11px 15px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(17,23,95,.10);
  box-shadow:0 10px 26px rgba(17,23,95,.12);
  font-size:13px;
  font-weight:700;
  white-space:nowrap;
  opacity:0;
  transform:translateX(8px);
  pointer-events:none;
  transition:opacity .22s ease,transform .22s ease;
}
.whatsapp-float:hover .whatsapp-float-label,
.whatsapp-float:focus-visible .whatsapp-float-label{
  opacity:1;
  transform:none;
}
.whatsapp-float-icon{
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#11175f;
  color:#fff;
  border:2px solid #7b2cbf;
  box-shadow:0 14px 34px rgba(17,23,95,.24);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.whatsapp-float:hover .whatsapp-float-icon{
  transform:translateY(-2px);
  background:#252c84;
  box-shadow:0 18px 38px rgba(17,23,95,.28);
}
.whatsapp-float-icon svg{
  width:26px;
  height:26px;
}
@media(max-width:620px){
  .whatsapp-float{
    right:14px;
    bottom:14px;
  }
  .whatsapp-float-label{
    display:none;
  }
  .whatsapp-float-icon{
    width:54px;
    height:54px;
  }
}


.footer-write-link{
  display:inline-flex;
  width:max-content;
  margin-top:8px;
  color:#11175f !important;
  font-weight:800;
  text-decoration:none;
  border-bottom:1px solid rgba(17,23,95,.25);
  padding-bottom:2px;
  transition:color .2s ease,border-color .2s ease,transform .2s ease;
}
.footer-write-link:hover{
  color:#7b2cbf !important;
  border-color:#7b2cbf;
  transform:translateX(2px);
}

