*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;color:#123d49;background:#fbf8f3}a{text-decoration:none;color:inherit}
.topbar{height:150px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4%;position:sticky;top:0;z-index:30;border-bottom:1px solid #eee}.brand{width:560px;height:148px;display:flex;align-items:center;overflow:visible}.brand img{width:535px;height:145px;object-fit:contain;object-position:left center}.topbar nav{display:flex;gap:38px;align-items:center;font-weight:700}.clarity{border:1px solid #bd9660;padding:13px 20px;border-radius:10px}.menu{display:none}
.hero{height:650px;position:relative;background:url('assets/hero.jpg') center/cover no-repeat;color:#fff;display:flex;align-items:center;padding:0 4%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,49,58,.98) 0%,rgba(4,49,58,.83) 36%,rgba(4,49,58,.20) 70%,rgba(4,49,58,.03) 100%)}.hero-copy{position:relative;z-index:2;width:min(650px,55%);margin-top:-40px}.eyebrow{color:#d5a34b;letter-spacing:.1em;font-size:14px;font-weight:800}.hero h1{font:72px Georgia,serif;line-height:1.02;margin:18px 0 8px}.hero h1 span{color:#d8a54b}.gold-rule{color:#d8a54b;font-size:18px;letter-spacing:.3em;margin:4px 0 12px}.hero p{font-size:19px;line-height:1.6;max-width:560px}.actions{display:flex;gap:16px;margin-top:25px}.btn{padding:16px 27px;border-radius:8px;font-weight:800}.gold{background:#d8a54b;color:#123d49}.outline{border:1px solid #d8a54b;color:#fff}
.benefits{position:absolute;left:4%;right:8%;bottom:-48px;z-index:3;background:rgba(3,54,62,.95);border:1px solid #ffffff55;border-radius:18px;display:grid;grid-template-columns:repeat(4,1fr);padding:22px 28px;box-shadow:0 10px 30px #0004}.benefits article{display:flex;gap:15px;align-items:center;padding:0 16px;border-right:1px solid #ffffff33}.benefits article:last-child{border:0}.benefits .ico{color:#d8a54b;font-size:34px}.benefits strong,.benefits span{display:block}.benefits span{font-size:12px;color:#d3e2e3;margin-top:6px;line-height:1.5}
.destinations{padding:110px 4% 70px}.section-title{text-align:center}.section-title small{color:#c8943e;letter-spacing:.14em;font-weight:800}.section-title h2{font:38px Georgia,serif;margin:10px 0 35px}.dest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.dest-grid article{height:280px;border-radius:15px;background-image:linear-gradient(0deg,rgba(3,48,57,.88),rgba(3,48,57,.08)),var(--bg);background-size:cover;background-position:center;position:relative;color:#fff;overflow:hidden}.dest-grid article div{position:absolute;left:20px;right:20px;bottom:20px}.dest-grid h3{font:30px Georgia;margin:0}.dest-grid p{font-size:18px;margin:6px 0}.dest-grid span{font-size:12px}.dest-grid a{display:inline-block;margin-top:14px;background:#d8a54b;padding:9px 14px;border-radius:5px;color:#123d49;font-weight:700}
.services{padding:85px 4%;background:#fff}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:35px}.service-grid article{padding:32px;border:1px solid #dfe7e5;border-radius:15px;font-size:28px}.service-grid h3{font:26px Georgia;margin:24px 0 8px}.service-grid p{font-size:15px;line-height:1.6;color:#6b7d80}
.about{padding:90px 6%;background:#073640;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:80px}.about small,.contact small{color:#d8a54b;letter-spacing:.13em}.about h2,.contact h2{font:48px Georgia;margin:12px 0}.about p{font-size:17px;line-height:1.7;color:#c7d9da}.about-list{display:grid}.about-list span{padding:22px 0;border-bottom:1px solid #ffffff22;font-size:18px}.about-list b{color:#d8a54b;margin-right:18px}
.contact{padding:90px 6%;background:#187583;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-copy p{line-height:1.7;max-width:520px}.contact-copy a{display:block;margin:12px 0}.contact form{background:#fff;padding:28px;border-radius:18px;display:grid;gap:12px}.contact input,.contact textarea{padding:14px;border:1px solid #d7e0df;border-radius:8px;font:inherit}.contact button{padding:15px;border:0;background:#d8a54b;border-radius:8px;font-weight:800;color:#123d49}.wa{position:fixed;right:24px;bottom:24px;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-weight:900;z-index:40;box-shadow:0 8px 22px #0004}
footer{background:#061f25;color:#9ab0b3;padding:24px 4%;display:flex;align-items:center;justify-content:space-between}footer img{width:210px;height:120px;object-fit:contain;filter:brightness(1.4)}
@media(max-width:1100px){.brand{width:430px}.brand img{width:410px}.topbar nav{gap:20px;font-size:14px}.benefits{grid-template-columns:1fr 1fr}.benefits article:nth-child(2){border-right:0}.dest-grid,.service-grid{grid-template-columns:1fr 1fr}.hero-copy{width:70%}.hero h1{font-size:56px}}
@media(max-width:760px){.topbar{height:110px}.brand{width:280px;height:108px}.brand img{width:270px;height:105px}.menu{display:block;border:0;background:transparent;font-size:24px}.topbar nav{display:none;position:absolute;top:110px;left:14px;right:14px;background:#fff;padding:20px;border-radius:12px;flex-direction:column;align-items:flex-start;box-shadow:0 12px 35px #0003}.topbar nav.open{display:flex}.hero{height:760px;padding:0 6%}.hero-copy{width:100%;margin-top:-120px}.hero h1{font-size:48px}.benefits{left:6%;right:6%;bottom:-145px;grid-template-columns:1fr;padding:16px}.benefits article{border-right:0;border-bottom:1px solid #ffffff22;padding:10px}.destinations{padding-top:190px}.dest-grid,.service-grid,.about,.contact{grid-template-columns:1fr}.actions{flex-direction:column;align-items:flex-start}.about,.contact{gap:35px}footer{flex-direction:column;gap:10px;text-align:center}}
/* =====================================================
   FORMULARIO DE COTIZACIÓN - RESORT PREMIUM
   ===================================================== */

#quoteForm {
  display: grid;
  gap: 15px;
}

#quoteForm input,
#quoteForm select,
#quoteForm textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 16px 18px;
  border: 1px solid #d5dfe1;
  border-radius: 11px;
  background: #ffffff;
  color: #183c45;
  font-family: inherit;
  font-size: 17px;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}

#quoteForm input:focus,
#quoteForm select:focus,
#quoteForm textarea:focus {
  border-color: #0e7480;
  box-shadow: 0 0 0 3px rgba(14, 116, 128, .10);
}

#quoteForm select {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;

  background-image:
    linear-gradient(45deg, transparent 50%, #315963 50%),
    linear-gradient(135deg, #315963 50%, transparent 50%);

  background-position:
    calc(100% - 21px) 50%,
    calc(100% - 15px) 50%;

  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 45px;
}

#quoteForm label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #526b71;
  font-size: 14px;
  font-weight: 600;
}

#quoteForm label input {
  font-weight: 400;
  color: #183c45;
}

#quoteForm textarea {
  resize: vertical;
  min-height: 130px;
}

#quoteForm button {
  width: 100%;
  border: 0;
  border-radius: 11px;
  padding: 18px 22px;
  background: #dfa945;
  color: #073b46;
  font-family: inherit;
  font-size: 17px;
  font-weight: 700;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease;
}

#quoteForm button:hover {
  background: #e7b552;
  transform: translateY(-1px);
}

@media (max-width: 700px) {
  #quoteForm input,
  #quoteForm select,
  #quoteForm textarea,
  #quoteForm button {
    font-size: 16px;
  }
}

/* Estado del formulario */

.form-status {
  display: none;
  padding: 14px 16px;
  border-radius: 10px;
  font-size: 15px;
  line-height: 1.5;
}

.form-status.sending {
  display: block;
  background: #edf6f7;
  color: #185964;
  border: 1px solid #bcdde1;
}

.form-status.success {
  display: block;
  background: #edf8f0;
  color: #24653a;
  border: 1px solid #b9ddc3;
}

.form-status.error {
  display: block;
  background: #fff0f0;
  color: #8a3131;
  border: 1px solid #e5b9b9;
}

#quoteForm button:disabled {
  opacity: 0.65;
  cursor: wait;
  transform: none;
}

.visit-counter {
  color: #9ab0b3;
  font-size: 14px;
  white-space: nowrap;
}

.visit-counter span {
  color: #d8a54b;
  font-weight: 700;
}

/* ===== FOOTER PREMIUM WOODEN NEST ===== */

/* ===== FOOTER PREMIUM WOODEN NEST ===== */

footer {
  background: #062f38;
  color: #ffffff;
  padding: 40px 6% 20px;

  display: grid;
  grid-template-columns: 260px 1fr auto;
  grid-template-areas:
    "logo copyright social"
    "counter clarity clarity";

  column-gap: 60px;
  row-gap: 20px;

  align-items: center;
  position: relative;
}

footer img {
  grid-area: logo;
  width: 220px;
  height: auto;
  object-fit: contain;
}

footer > span {
  grid-area: copyright;
  color: #c7d6d8;
  font-size: 14px;
  line-height: 1.5;
  justify-self: start;
}

.social-links {
  grid-area: social;
  display: flex;
  gap: 12px;
  justify-self: end;
}

.social-links a {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid #1b7f8b;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #d8a54b;
  font-size: 0;
}

.social-links a[aria-label="Facebook"]::before {
  content: "f";
  font-family: Arial, sans-serif;
  font-size: 24px;
  font-weight: bold;
}

.social-links a[aria-label="Instagram"]::before {
  content: "◎";
  font-size: 25px;
  font-weight: bold;
}

footer > a[href="/app/"] {
  grid-area: clarity;
  color: #d8a54b;
  font-size: 14px;
  font-weight: 600;
  justify-self: end;
}

.visit-counter {
  grid-area: counter;

  color: #d8e5e6;
  font-size: 15px;

  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.12);

  justify-self: start;
  min-width: 230px;
}

.visit-counter span {
  color: #d8a54b;
  font-weight: 700;
  font-size: 18px;
}

@media (max-width: 800px) {
  footer {
    grid-template-columns: 1fr;
    grid-template-areas:
      "logo"
      "copyright"
      "social"
      "counter"
      "clarity";

    gap: 20px;
    text-align: left;
  }

  .social-links,
  footer > a[href="/app/"],
  .visit-counter {
    justify-self: start;
  }
}


/* ===== AJUSTE FINAL FOOTER ===== */

footer {
  grid-template-columns: 340px 1fr auto;
  column-gap: 90px;
  padding-top: 50px;
  padding-bottom: 28px;
}

footer img {
  width: 290px;
  max-height: 150px;
}

footer > span {
  padding-left: 10px;
  font-size: 15px;
}

.visit-counter {
  margin-top: 10px;
  min-width: 260px;
}

.social-links {
  margin-top: 4px;
}

footer > a[href="/app/"] {
  margin-top: 8px;
}

/* Ajuste visual tarjetas de destinos */
.dest-grid article {
    background-size: cover, cover !important;
    background-position: center center, center center !important;
    background-repeat: no-repeat, no-repeat !important;
    overflow: hidden !important;
}


/* ===== DESTINOS PREMIUM - TARJETAS ALTAS ===== */

.dest-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    align-items: stretch;
}

.dest-grid article {
    height: 500px !important;
    border-radius: 16px !important;
    background-size: cover, cover !important;
    background-position: center center, center center !important;
}

.dest-grid article > div {
    left: 22px;
    right: 22px;
    bottom: 24px;
}

.dest-grid h3 {
    font-size: 30px;
    margin-bottom: 4px;
}

.dest-grid p {
    font-size: 17px;
    margin: 3px 0 10px;
}

.dest-grid span {
    font-size: 14px;
}

.dest-grid a {
    display: inline-block;
    margin-top: 16px;
    padding: 11px 18px;
    border-radius: 7px;
}

@media (max-width: 900px) {
    .dest-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .dest-grid article {
        height: 440px !important;
    }
}

@media (max-width: 600px) {
    .dest-grid {
        grid-template-columns: 1fr;
    }

    .dest-grid article {
        height: 430px !important;
    }
}


/* Integración destinos dinámicos en la misma cuadrícula */
#destinosDinamicos {
  display: contents;
}


/* ===== CARRUSEL HORIZONTAL DE DESTINOS ===== */

.destinations {
  position: relative;
}

.dest-grid {
  display: flex !important;
  gap: 18px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  padding-bottom: 12px;

  scrollbar-width: none;
}

.dest-grid::-webkit-scrollbar {
  display: none;
}

.dest-grid article {
  flex: 0 0 calc((100% - 54px) / 4);
  min-width: calc((100% - 54px) / 4);
  scroll-snap-align: start;
}

.dest-carousel-btn {
  position: absolute;
  top: 55%;
  transform: translateY(-50%);
  z-index: 20;

  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: none;

  background: #073c46;
  color: #e1aa43;

  font-size: 28px;
  font-weight: bold;
  cursor: pointer;

  box-shadow: 0 6px 18px rgba(0,0,0,.25);
}

.dest-carousel-btn:hover {
  background: #0b5260;
}

.dest-carousel-prev {
  left: 8px;
}

.dest-carousel-next {
  right: 8px;
}

@media (max-width: 1000px) {
  .dest-grid article {
    flex: 0 0 calc((100% - 18px) / 2);
    min-width: calc((100% - 18px) / 2);
  }
}

@media (max-width: 600px) {
  .dest-grid article {
    flex: 0 0 88%;
    min-width: 88%;
  }
}


/* ======================================================
   ASESOR INTELIGENTE - ETAPA 1
====================================================== */

.travel-advisor{
  padding:80px 6%;
  background:#f7f3eb;
}

.travel-advisor-card{
  max-width:1100px;
  margin:0 auto;
  background:#fff;
  border:1px solid #e8dfd2;
  border-radius:24px;
  padding:42px;
  display:grid;
  grid-template-columns:1.5fr .7fr;
  gap:40px;
  align-items:center;
  box-shadow:0 18px 45px rgba(68,53,35,.08);
}

.travel-advisor-copy small{
  color:#b28a4a;
  font-weight:800;
  letter-spacing:1.6px;
  font-size:12px;
}

.travel-advisor-copy h2{
  margin:8px 0 14px;
  font-size:36px;
  color:#2c3f38;
}

.travel-advisor-copy p{
  margin:0 0 20px;
  color:#68756f;
  line-height:1.7;
}

.travel-advisor-copy ul{
  margin:0;
  padding-left:20px;
  color:#4e5c56;
  line-height:1.8;
}

.travel-advisor-action{
  display:grid;
  gap:16px;
  text-align:center;
}

.travel-advisor-action span{
  font-size:13px;
  color:#7b857f;
}

.advisor-start-btn{
  border:0;
  border-radius:12px;
  padding:15px 24px;
  background:#b78a45;
  color:white;
  font-weight:800;
  font-size:16px;
  cursor:pointer;
}

.advisor-start-btn:hover{
  filter:brightness(.96);
}

@media(max-width:800px){
  .travel-advisor-card{
    grid-template-columns:1fr;
    padding:28px;
  }

  .travel-advisor-copy h2{
    font-size:30px;
  }
}


/* ======================================================
   ASESOR INTELIGENTE - PASOS
====================================================== */

.travel-advisor-card.advisor-active{
  display:block;
}

.advisor-step{
  max-width:900px;
  margin:0 auto;
}

.advisor-progress{
  margin-bottom:26px;
}

.advisor-progress > span{
  display:block;
  font-size:12px;
  font-weight:800;
  color:#8b7960;
  margin-bottom:8px;
}

.advisor-progress-bar{
  width:100%;
  height:6px;
  background:#eee7dc;
  border-radius:20px;
  overflow:hidden;
}

.advisor-progress-bar div{
  height:100%;
  background:#b78a45;
  border-radius:20px;
}

.advisor-eyebrow{
  display:block;
  color:#b28a4a;
  font-weight:800;
  letter-spacing:1.5px;
  font-size:11px;
}

.advisor-step h2{
  margin:8px 0 8px;
  color:#263c35;
  font-size:30px;
}

.advisor-question-help{
  margin:0 0 26px;
  color:#748079;
}

.advisor-options{
  display:grid;
  grid-template-columns:
    repeat(3,minmax(0,1fr));
  gap:14px;
}

.advisor-option{
  background:#fff;
  border:1px solid #e6ded2;
  border-radius:14px;
  padding:20px 16px;
  cursor:pointer;
  text-align:left;
  display:grid;
  gap:5px;
  transition:
    transform .15s ease,
    border-color .15s ease,
    box-shadow .15s ease,
    background .15s ease;
}

.advisor-option:hover{
  transform:translateY(-2px);
  border-color:#c5a36d;
  box-shadow:0 8px 20px rgba(71,53,29,.07);
}

.advisor-option.selected{
  border:2px solid #b78a45;
  background:#fffaf2;
}

.advisor-option-icon{
  font-size:25px;
  margin-bottom:5px;
}

.advisor-option strong{
  color:#2c4039;
  font-size:15px;
}

.advisor-option small{
  color:#7a857f;
  line-height:1.4;
}

.advisor-nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:30px;
  gap:12px;
}

.advisor-back-btn,
.advisor-next-btn{
  border-radius:10px;
  padding:12px 20px;
  font-weight:800;
  cursor:pointer;
}

.advisor-back-btn{
  background:#fff;
  border:1px solid #ded6cb;
  color:#59665f;
}

.advisor-next-btn{
  border:0;
  background:#b78a45;
  color:#fff;
}

.advisor-next-btn:disabled{
  opacity:.4;
  cursor:not-allowed;
}

@media(max-width:800px){

  .advisor-options{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}

@media(max-width:520px){

  .advisor-options{
    grid-template-columns:1fr;
  }

  .advisor-step h2{
    font-size:25px;
  }

}

.advisor-extra-field{
  margin-top:20px;
  padding:18px;
  background:#fffaf2;
  border:1px solid #eadcc7;
  border-radius:12px;
}

.advisor-extra-field label{
  display:grid;
  gap:8px;
  font-weight:700;
  color:#46554e;
}

.advisor-extra-field input{
  width:100%;
  border:1px solid #d9d1c5;
  border-radius:10px;
  padding:12px 14px;
  font:inherit;
  background:#fff;
  outline:none;
}

.advisor-extra-field input:focus{
  border-color:#b78a45;
}

.advisor-date-grid{
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.advisor-inline-error{
  margin-top:12px;
  padding:10px 12px;
  border-radius:9px;
  background:#fff1f1;
  color:#b14b4b;
  font-size:13px;
  font-weight:700;
}

@media(max-width:600px){
  .advisor-date-grid{
    grid-template-columns:1fr;
  }
}

.advisor-travelers-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:18px;
}

.advisor-number-field{
  display:grid;
  gap:8px;
  padding:18px;
  background:#fffaf2;
  border:1px solid #eadcc7;
  border-radius:12px;
  color:#46554e;
  font-weight:700;
}

.advisor-number-field input{
  width:100%;
  border:1px solid #d9d1c5;
  border-radius:10px;
  padding:12px 14px;
  font:inherit;
  background:#fff;
}

.advisor-ages-grid{
  display:grid;
  grid-template-columns:
    repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}

.advisor-ages-grid input{
  width:100%;
  border:1px solid #d9d1c5;
  border-radius:10px;
  padding:11px 12px;
  font:inherit;
}

@media(max-width:650px){

  .advisor-travelers-grid{
    grid-template-columns:1fr;
  }

  .advisor-ages-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }
}

@media(max-width:420px){

  .advisor-ages-grid{
    grid-template-columns:1fr;
  }
}

.advisor-preferences-box{
  margin-top:22px;
  padding:20px;
  background:#fffaf2;
  border:1px solid #eadcc7;
  border-radius:14px;
}

.advisor-preferences-box > strong{
  display:block;
  color:#374b43;
  margin-bottom:4px;
}

.advisor-preferences-box > small{
  display:block;
  color:#7a857f;
  margin-bottom:14px;
}

.advisor-preferences{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.advisor-preferences button{
  border:1px solid #ddd4c7;
  background:#fff;
  color:#536159;
  border-radius:20px;
  padding:9px 13px;
  cursor:pointer;
  font-weight:700;
  font-size:12px;
}

.advisor-preferences button.selected{
  background:#fff1dc;
  border-color:#b78a45;
  color:#765525;
}

/* ======================================================
   ASESOR INTELIGENTE - PASO FINAL
====================================================== */

.advisor-contact-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:20px 0;
}

.advisor-contact-grid label,
.advisor-comments{
  display:grid;
  gap:7px;
  color:#46554e;
  font-size:13px;
  font-weight:700;
}

.advisor-contact-grid input,
.advisor-comments textarea{
  width:100%;
  border:1px solid #ddd4c7;
  border-radius:10px;
  padding:12px 13px;
  background:#fff;
  font:inherit;
  outline:none;
}

.advisor-contact-grid input:focus,
.advisor-comments textarea:focus{
  border-color:#b78a45;
}

.advisor-comments{
  margin-bottom:22px;
}

.advisor-summary{
  border:1px solid #e6ded2;
  background:#fbfaf7;
  border-radius:16px;
  padding:22px;
}

.advisor-summary-title{
  display:flex;
  gap:10px;
  align-items:center;
  margin-bottom:18px;
}

.advisor-summary-title > span{
  font-size:25px;
}

.advisor-summary-title strong,
.advisor-summary-title small{
  display:block;
}

.advisor-summary-title strong{
  color:#30463e;
}

.advisor-summary-title small{
  color:#7a857f;
  margin-top:3px;
}

.advisor-summary-grid{
  display:grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap:12px;
}

.advisor-summary-grid > div{
  padding:12px;
  background:#fff;
  border-radius:10px;
  border:1px solid #eee8de;
}

.advisor-summary-grid small,
.advisor-summary-grid strong,
.advisor-summary-grid span{
  display:block;
}

.advisor-summary-grid small,
.advisor-summary-preferences small{
  color:#8a918d;
  font-size:11px;
  margin-bottom:4px;
}

.advisor-summary-grid strong,
.advisor-summary-preferences strong{
  color:#344a42;
}

.advisor-summary-grid span{
  margin-top:4px;
  font-size:11px;
  color:#78837d;
}

.advisor-summary-preferences{
  margin-top:12px;
  padding:13px;
  background:#fff8ed;
  border-radius:10px;
}

.advisor-send-status{
  margin-top:16px;
  padding:12px 14px;
  border-radius:10px;
  font-size:13px;
  font-weight:700;
}

.advisor-send-status.sending{
  background:#f4f1e9;
  color:#725f43;
}

.advisor-send-status.success{
  background:#edf7f0;
  color:#39734f;
}

.advisor-send-status.error{
  background:#fff0f0;
  color:#ad4545;
}

.advisor-complete{
  max-width:680px;
  margin:0 auto;
  text-align:center;
  padding:30px 10px;
}

.advisor-complete-icon{
  width:68px;
  height:68px;
  margin:0 auto 16px;
  border-radius:50%;
  background:#edf7f0;
  color:#38754e;
  display:grid;
  place-items:center;
  font-size:32px;
  font-weight:900;
}

.advisor-complete small{
  color:#b28a4a;
  letter-spacing:1.4px;
  font-weight:800;
}

.advisor-complete h2{
  margin:8px 0 12px;
  color:#2d433b;
}

.advisor-complete p{
  color:#6e7b75;
  line-height:1.7;
}

.advisor-complete-actions{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:25px;
}

.advisor-complete-actions a{
  text-decoration:none;
}

@media(max-width:750px){

  .advisor-contact-grid{
    grid-template-columns:1fr;
  }

}

@media(max-width:550px){

  .advisor-summary-grid{
    grid-template-columns:1fr;
  }

}

/* ===== ENLACES INTERNOS SEO DE DESTINOS ===== */

.seo-destination-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:28px auto 0;
  padding:0 20px;
  font-size:13px;
}

.seo-destination-links span{
  color:#74817b;
  font-weight:700;
}

.seo-destination-links a{
  text-decoration:none;
  color:#365148;
  background:#fffaf2;
  border:1px solid #eadcc7;
  border-radius:20px;
  padding:7px 11px;
  font-weight:700;
  transition:
    transform .2s ease,
    border-color .2s ease;
}

.seo-destination-links a:hover{
  transform:translateY(-1px);
  border-color:#b78a45;
}

@media(max-width:600px){

  .seo-destination-links{
    gap:8px;
    margin-top:22px;
  }

  .seo-destination-links span{
    width:100%;
    text-align:center;
  }
}

/* =====================================================
   GUIAS DE VIAJE - HOME
===================================================== */

.travel-guides{
  width:min(1180px,92%);
  margin:0 auto;
  padding:80px 0;
}

.guides-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:34px;
}

.guide-card{
  background:#fff;
  border:1px solid #e6ece8;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(24,58,45,.06);
  transition:
    transform .2s ease,
    box-shadow .2s ease;
}

.guide-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 36px rgba(24,58,45,.10);
}

.guide-card img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  display:block;
}

.guide-card-content{
  padding:20px;
}

.guide-card small{
  color:#b78a45;
  font-weight:800;
  letter-spacing:1.4px;
}

.guide-card h3{
  margin:9px 0 10px;
  font-family:Georgia,serif;
  font-size:24px;
  line-height:1.2;
  color:#073c46;
}

.guide-card p{
  margin:0 0 16px;
  color:#5c6f72;
  line-height:1.65;
}

.guide-card a{
  text-decoration:none;
  color:#073c46;
  font-weight:800;
}

.guides-empty{
  margin-top:25px;
  text-align:center;
  color:#7a8781;
}

@media(max-width:900px){
  .guides-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:620px){
  .guides-grid{
    grid-template-columns:1fr;
  }

  .travel-guides{
    padding:60px 0;
  }
}
