:root{
  --ink:#182220;
  --paper:#F4F6F3;
  --card:#FFFFFF;
  --green:#103B33;
  --green-soft:#1C5A4E;
  --brass:#A98445;
  --brass-soft:#C9A96A;
  --line:#DCE1DB;
  --radius:14px;
  --shadow:0 12px 35px rgba(16,59,51,.10);
}

html{scroll-padding-top:90px}
body{min-height:100vh;display:flex;flex-direction:column}
body>main{flex:1}

body>header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(16,59,51,.98);
  box-shadow:0 2px 14px rgba(0,0,0,.16);
  backdrop-filter:blur(10px);
}

body>header .nav{
  min-height:70px;
  position:relative;
  max-width:1080px;
  margin:0 auto;
  padding-inline:20px;
}

body>header .logo{letter-spacing:.01em}
body>header .nav-links a{position:relative}
body>header .nav-links a::after{
  content:"";
  position:absolute;
  inset-inline:0;
  bottom:-8px;
  height:2px;
  background:var(--brass-soft);
  transform:scaleX(0);
  transition:transform .2s ease;
}
body>header .nav-links a:hover::after,
body>header .nav-links a:focus-visible::after{transform:scaleX(1)}

.menu-toggle{
  display:none;
  width:42px;
  height:42px;
  padding:0;
  border:1px solid rgba(255,255,255,.24);
  border-radius:10px;
  background:transparent;
  color:#fff;
  cursor:pointer;
  align-items:center;
  justify-content:center;
}
.menu-toggle svg{width:23px;height:23px}

a,button,input,select,textarea{transition:box-shadow .18s,border-color .18s,background-color .18s,color .18s}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid var(--brass-soft);
  outline-offset:3px;
}

.card,.step,.spec,.cities a,.join{box-shadow:0 1px 0 rgba(16,59,51,.03)}
.card:hover,.spec:hover{box-shadow:var(--shadow)}

.whatsapp-nav,
.hero-whatsapp,
.cities-whatsapp,
.join-whatsapp{
  border:0;
  font-family:inherit;
  font-weight:700;
  cursor:pointer;
}
.whatsapp-nav{background:#167E45;color:#fff}
.whatsapp-nav:hover{background:#106837}
.hero-whatsapp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:13px 30px;
  border-radius:10px;
  background:#167E45;
  color:#fff;
  font-size:1.03rem;
  box-shadow:0 10px 24px rgba(22,126,69,.22);
}
.hero-whatsapp:hover,
.cities-whatsapp:hover,
.join-whatsapp:hover{background:#106837}
.cities span{
  display:inline-flex;
  align-items:center;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:99px;
  padding:9px 22px;
  color:#4A554F;
}
.cities-whatsapp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:22px;
  padding:12px 24px;
  border-radius:9px;
  background:#167E45;
  color:#fff;
}
.join-whatsapp{
  display:inline-block;
  padding:12px 34px;
  border-radius:9px;
  background:#167E45;
  color:#fff;
  font-size:1rem;
}

body>footer{margin-top:auto}
body>footer .foot{align-items:center}
body>footer nav{flex-wrap:wrap}

.trust-note{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:14px 16px;
  border:1px solid #D7E4DD;
  border-radius:12px;
  background:#EDF5F1;
  color:#2E5148;
  font-size:.93rem;
}
.trust-note svg{width:20px;height:20px;flex:0 0 auto;margin-top:4px;color:var(--green-soft)}

.credibility-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.credibility-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:22px;
}
.credibility-card strong{
  display:block;
  color:var(--green);
  font-family:'Amiri',serif;
  font-size:1.2rem;
  margin-bottom:4px;
}
.credibility-card p{color:#5A655F;font-size:.92rem}
.credibility-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.credibility-links a,.editorial-note a{color:var(--brass);font-weight:700;text-decoration:underline}
.editorial-note{
  background:#EDF5F1;
  border:1px solid #D7E4DD;
  border-inline-start:4px solid var(--green-soft);
  border-radius:12px;
  padding:14px 18px;
  color:#2E5148;
  font-size:.92rem;
  margin:0 0 24px;
}

.tg-float{
  position:fixed;
  bottom:22px;
  inset-inline-start:22px;
  z-index:90;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 17px;
  border-radius:999px;
  background:#229ED9;
  color:#fff;
  font-weight:700;
  font-size:.9rem;
  box-shadow:0 8px 24px rgba(34,158,217,.34);
  transition:background-color .18s,transform .18s,box-shadow .18s;
}
.tg-float:hover{background:#1789BD;transform:translateY(-2px)}
.tg-float svg{width:20px;height:20px;flex:0 0 auto}

.wa-referral-float{
  position:fixed;
  bottom:22px;
  inset-inline-end:22px;
  z-index:95;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:11px 16px;
  border-radius:999px;
  background:#167E45;
  color:#fff!important;
  border:0;
  font:inherit;
  font-weight:700;
  font-size:.9rem;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(22,126,69,.34);
  transition:background-color .18s,transform .18s,box-shadow .18s;
}
.wa-referral-float:hover{background:#106837;transform:translateY(-2px)}
.wa-referral-float:focus-visible,.quick-whatsapp-button:focus-visible{outline:3px solid var(--brass-soft);outline-offset:3px}
.wa-referral-float svg{width:21px;height:21px;flex:0 0 auto}

.quick-whatsapp-option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  margin:0 0 24px;
  padding:18px 19px;
  border:1px solid #BFDCCB;
  border-inline-start:4px solid #167E45;
  border-radius:12px;
  background:#EDF8F1;
}
.quick-whatsapp-option h3{margin:0 0 4px;font-size:1.2rem;color:var(--green)}
.quick-whatsapp-option p{margin:0;color:#365B4D;font-size:.92rem}
.quick-whatsapp-option small{display:block;margin-top:4px;color:#5A655F;font-size:.78rem}
.quick-whatsapp-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex:0 0 auto;
  padding:11px 17px;
  border-radius:9px;
  background:#167E45;
  color:#fff!important;
  border:0;
  font:inherit;
  font-weight:700;
  white-space:nowrap;
  cursor:pointer;
}
.quick-whatsapp-button:hover{background:#106837}
.quick-whatsapp-button svg{width:21px;height:21px;flex:0 0 auto}

.contact-choice{
  display:grid;
  justify-items:start;
  gap:12px;
  padding-block:34px!important;
}
.contact-choice h2{margin:0!important;font-size:clamp(1.55rem,3vw,2rem)!important}
.contact-choice>p{max-width:680px;color:#53615A}
.contact-kicker{
  display:inline-flex;
  padding:4px 11px;
  border-radius:999px;
  background:#EDF8F1;
  color:#167E45;
  font-size:.82rem;
  font-weight:700;
}
.contact-whatsapp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:52px;
  padding:13px 22px;
  border:0;
  border-radius:10px;
  background:#167E45;
  color:#fff;
  font:inherit;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(22,126,69,.22);
}
.contact-whatsapp:hover{background:#106837}
.contact-whatsapp svg{width:22px;height:22px;flex:0 0 auto}
.contact-note{font-size:.84rem!important;color:#66736C!important}

.article-quick-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:22px 0 30px;
  padding:17px 19px;
  border:1px solid #D7E4DD;
  border-inline-start:4px solid var(--brass);
  border-radius:12px;
  background:#EDF5F1;
  color:#2E5148;
}
.article-quick-cta p{margin:0!important;color:inherit!important;font-size:.94rem}
.article-quick-cta strong{color:var(--green)}
.article-quick-cta small{display:block;margin-top:4px;color:#5A655F;font-size:.8rem}
.article-quick-cta a,
.article-quick-cta button{
  flex:0 0 auto;
  padding:9px 17px;
  border-radius:9px;
  background:var(--green);
  color:#fff;
  border:0;
  font:inherit;
  font-weight:700;
  white-space:nowrap;
  cursor:pointer;
}
.article-quick-cta a:hover,.article-quick-cta button:hover{background:var(--green-soft)}
.article-sticky-cta{display:none}

@media(max-width:760px){
  body>header .nav{min-height:64px;padding-block:10px}
  .menu-toggle{display:inline-flex;margin-inline-start:auto}
  body>header .nav-links{
    display:none;
    position:absolute;
    top:calc(100% + 1px);
    inset-inline:16px;
    flex-direction:column;
    gap:0;
    padding:10px;
    border:1px solid rgba(201,169,106,.32);
    border-radius:12px;
    background:#0C2B25;
    box-shadow:0 18px 35px rgba(0,0,0,.24);
  }
  body>header .nav-links.is-open{display:flex}
  body>header .nav-links a{display:block;padding:11px 12px;border-radius:8px}
  body>header .nav-links a:hover{background:rgba(255,255,255,.06)}
  body>header .nav-links a::after{display:none}
  body>header .nav-actions{margin-inline-start:8px;gap:7px}
  body>header .nav-actions .tg-btn{display:none}
  body>header .nav-cta{padding:8px 11px;font-size:.82rem}
  body>header .lang-btn{width:38px;height:38px;padding:0;justify-content:center}
  body>header .lang-btn svg{display:none}
  section{scroll-margin-top:76px}
  .credibility-grid{grid-template-columns:1fr}
  .quick-whatsapp-option{align-items:stretch;flex-direction:column;gap:13px}
  .quick-whatsapp-button{width:100%;white-space:normal;text-align:center}
  .contact-whatsapp{width:100%}
  .article-quick-cta{align-items:stretch;flex-direction:column;gap:12px}
  .article-quick-cta a,.article-quick-cta button{width:100%;text-align:center}
  .article-sticky-cta{
    position:fixed;
    inset-inline:16px;
    bottom:max(12px, env(safe-area-inset-bottom));
    z-index:95;
    display:block;
    padding:12px 18px;
    border:1px solid rgba(255,255,255,.28);
    border-radius:11px;
    background:var(--green);
    color:#fff;
    border:0;
    font:inherit;
    font-weight:700;
    text-align:center;
    cursor:pointer;
    box-shadow:0 10px 28px rgba(16,59,51,.3);
  }
  body.has-article-cta{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  body.has-article-cta .tg-float{bottom:calc(76px + env(safe-area-inset-bottom))}
  body.has-article-cta .wa-referral-float{bottom:calc(76px + env(safe-area-inset-bottom))}
}

@media(max-width:420px){
  body>header .logo{font-size:1.18rem}
  body>header .logo svg{width:24px;height:24px}
  body>header .nav-actions .nav-cta:not(.tg-btn){display:none}
  .tg-float{bottom:14px;inset-inline-start:14px;padding:11px}
  .tg-float span{display:none}
  .wa-referral-float{bottom:14px;inset-inline-end:14px;padding:11px}
  .wa-referral-float span{display:none}
  body.has-article-cta .tg-float,
  body.has-article-cta .wa-referral-float{bottom:calc(76px + env(safe-area-inset-bottom))}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}

@media print{
  body>header,body>footer,.tg-float,.wa-referral-float,.menu-toggle,.article-sticky-cta,.article-quick-cta{display:none!important}
  body{background:#fff;color:#000}
  a{text-decoration:underline}
}
