/* =============================================================
   LAGO CALIMA TRAVEL — PLANES PAGE  v2.0
   ============================================================= */

:root {
  --lct-deep:   #0D2B3E;
  --lct-blue:   #1A5F7A;
  --lct-lake:   #2E86AB;
  --lct-gold:   #C9A84C;
  --lct-white:  #FFFFFF;
  --lct-warm:   #F7F4EE;
  --lct-text:   #2C3E50;
  --lct-muted:  #6B7280;
  --lct-radius: 16px;
  --lct-shadow: 0 8px 40px rgba(13,43,62,.12);
  --lct-trans:  .35s cubic-bezier(.4,0,.2,1);
}

/* ── RESET ON PLANES PAGE ── */
.page-id-912 .entry-title,
.page-id-912 .page-header,
.page-id-912 .woocommerce-breadcrumb { display:none !important; }
.page-id-912 .entry-content { padding:0 !important; margin:0 !important; max-width:100% !important; }
body.page-id-912 { background:#F7F4EE; }

/* ── HELPERS ── */
.lct-label {
  display:inline-block;
  font-size:.72rem; font-weight:700;
  letter-spacing:.2em; text-transform:uppercase;
  color:var(--lct-gold); margin-bottom:.8rem;
}
.lct-divider {
  width:44px; height:3px;
  background:linear-gradient(90deg,var(--lct-gold),var(--lct-lake));
  border-radius:2px; margin:1rem auto 2rem;
}
.lct-divider.left { margin-left:0; }

/* ══════════════════════════════════════════
   HERO
   ══════════════════════════════════════════ */
.lct-hero {
  position:relative; min-height:100vh;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden; background:var(--lct-deep);
}
.lct-hero-bg {
  position:absolute; inset:0;
  background-image:url('https://lagocalimatravel.com/wp-content/uploads/2026/04/kitesurf_lago-calima_darien3.jpg');
  background-size:cover; background-position:center 40%;
  transform:scale(1.06); transition:transform 9s ease;
}
.lct-hero:hover .lct-hero-bg { transform:scale(1); }
.lct-hero-overlay {
  position:absolute; inset:0;
  background:linear-gradient(155deg,rgba(13,43,62,.74) 0%,rgba(13,43,62,.42) 55%,rgba(13,43,62,.70) 100%);
}
.lct-hero-content {
  position:relative; z-index:2;
  text-align:center; padding:2rem 1.5rem;
  max-width:860px; margin:0 auto;
}
.lct-hero-eyebrow {
  font-size:.72rem; font-weight:700;
  letter-spacing:.24em; text-transform:uppercase;
  color:var(--lct-gold); margin-bottom:1.6rem; opacity:.9;
}
.lct-hero h1 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size:clamp(2.2rem,5.5vw,4rem);
  font-weight:400; color:#fff;
  line-height:1.2; margin:0 0 1.4rem;
  text-shadow:0 2px 28px rgba(0,0,0,.28);
}
.lct-hero-sub {
  font-size:clamp(1rem,2vw,1.18rem);
  color:rgba(255,255,255,.82); margin-bottom:2.6rem;
  font-weight:300; line-height:1.75; letter-spacing:.02em;
}
.lct-hero-cta {
  display:inline-flex; align-items:center; gap:.7rem;
  background:transparent;
  border:1.5px solid rgba(201,168,76,.85);
  color:var(--lct-gold);
  font-size:.85rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase;
  padding:.75rem 2.2rem; border-radius:100px;
  text-decoration:none; transition:all var(--lct-trans);
}
.lct-hero-cta:hover {
  background:var(--lct-gold); color:#fff;
  transform:translateY(-2px);
  box-shadow:0 14px 44px rgba(201,168,76,.38);
}
.lct-hero-scroll {
  position:absolute; bottom:2rem; left:50%;
  transform:translateX(-50%);
  z-index:2; text-align:center;
  color:rgba(255,255,255,.45);
  font-size:.68rem; letter-spacing:.14em; text-transform:uppercase;
  animation:lct-bob 2.4s infinite;
}
.lct-hero-scroll svg { width:20px; display:block; margin:0 auto .3rem; }
@keyframes lct-bob {
  0%,100%{ transform:translateX(-50%) translateY(0); }
  50%{ transform:translateX(-50%) translateY(7px); }
}

/* ══════════════════════════════════════════
   STICKY CATEGORY NAV
   ══════════════════════════════════════════ */
.lct-cat-nav {
  background:var(--lct-white);
  box-shadow:0 3px 20px rgba(13,43,62,.09);
  position:sticky; top:0; z-index:200;
}
body.admin-bar .lct-cat-nav { top:var(--wp-admin--admin-bar--height, 32px); }
@media screen and (max-width:782px) { body.admin-bar .lct-cat-nav { top:46px; } }
.lct-cat-inner {
  display:flex; align-items:center; gap:.4rem;
  padding:.8rem 2rem;
  overflow-x:auto; scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  max-width:1260px; margin:0 auto;
}
.lct-cat-inner::-webkit-scrollbar { display:none; }
.lct-cat-pill {
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.48rem 1.3rem; border-radius:100px;
  font-size:.78rem; font-weight:600; letter-spacing:.04em;
  white-space:nowrap; text-decoration:none;
  color:var(--lct-muted); background:var(--lct-warm);
  border:1.5px solid transparent;
  transition:all .22s ease; flex-shrink:0;
}
.lct-cat-pill:hover, .lct-cat-pill.is-active {
  background:var(--lct-deep); color:#fff;
  border-color:var(--lct-deep); transform:translateY(-1px);
}

/* ══════════════════════════════════════════
   SECTION LAYOUT
   ══════════════════════════════════════════ */
.lct-section {
  padding:6rem 2rem;
  max-width:1280px; margin:0 auto;
}
.lct-section.full { max-width:100%; padding:0; }
.lct-sec-head { text-align:center; margin-bottom:3.5rem; }
.lct-sec-head h2 {
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.8rem,3.5vw,2.8rem);
  font-weight:400; color:var(--lct-deep);
  margin:.5rem 0 0; line-height:1.25;
}
.lct-sec-head.light h2 { color:#fff; }
.lct-sec-head p {
  font-size:1.02rem; color:var(--lct-muted);
  max-width:580px; margin:1rem auto 0; line-height:1.78;
}
.lct-sec-head.light p { color:rgba(255,255,255,.7); }

/* ══════════════════════════════════════════
   PRODUCT CARDS
   ══════════════════════════════════════════ */
.lct-products ul.products {
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(290px,1fr));
  gap:1.8rem; list-style:none; padding:0; margin:0;
}
.lct-products ul.products li.product {
  background:var(--lct-white); border-radius:var(--lct-radius);
  overflow:hidden; box-shadow:var(--lct-shadow);
  transition:transform var(--lct-trans), box-shadow var(--lct-trans);
  display:flex; flex-direction:column; position:relative;
}
.lct-products ul.products li.product:hover {
  transform:translateY(-7px);
  box-shadow:0 24px 64px rgba(13,43,62,.18);
}
.lct-products ul.products li.product a.woocommerce-loop-product__link {
  display:flex; flex-direction:column; height:100%; text-decoration:none; color:inherit;
}
.lct-products ul.products li.product img {
  width:100%; height:240px; object-fit:cover;
  transition:transform .55s ease; display:block;
}
.lct-products ul.products li.product:hover img { transform:scale(1.05); }
.lct-products ul.products li.product .woocommerce-loop-product__title {
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.08rem; font-weight:400; color:var(--lct-deep);
  padding:1.3rem 1.4rem .35rem; margin:0; line-height:1.35;
}
.lct-products ul.products li.product .price {
  font-size:.98rem; font-weight:700; color:var(--lct-lake);
  padding:0 1.4rem .55rem; margin:0; display:block;
}
.lct-products ul.products li.product .price del { color:var(--lct-muted); font-weight:400; font-size:.83rem; }
.lct-products ul.products li.product .price ins { text-decoration:none; }
.lct-products ul.products li.product .woocommerce-product-details__short-description {
  font-size:.83rem; color:var(--lct-muted);
  padding:0 1.4rem .8rem; line-height:1.65;
  display:-webkit-box; -webkit-line-clamp:2;
  -webkit-box-orient:vertical; overflow:hidden;
}
.lct-products ul.products li.product a.button,
.lct-products ul.products li.product .button {
  margin:auto 1.4rem 1.4rem;
  display:inline-flex; align-items:center; justify-content:center; gap:.4rem;
  padding:.5rem 1.4rem;
  background:transparent; border:1.5px solid var(--lct-lake);
  color:var(--lct-lake); border-radius:100px;
  font-size:.72rem; font-weight:700;
  letter-spacing:.07em; text-transform:uppercase;
  text-decoration:none; transition:all .22s ease;
  width:auto; align-self:flex-start;
}
.lct-products ul.products li.product a.button:hover,
.lct-products ul.products li.product .button:hover {
  background:var(--lct-lake); color:#fff;
}

/* ══════════════════════════════════════════
   PROPERTY HEADER (SPLIT CARD)
   ══════════════════════════════════════════ */
.lct-prop-card {
  display:grid; grid-template-columns:1fr 1fr;
  border-radius:var(--lct-radius); overflow:hidden;
  box-shadow:var(--lct-shadow); margin-bottom:3rem;
}
.lct-prop-card.reverse { direction:rtl; }
.lct-prop-card.reverse > * { direction:ltr; }
.lct-prop-photo {
  background-size:cover; background-position:center;
  min-height:420px;
  transition:transform .55s ease;
}
.lct-prop-card:hover .lct-prop-photo { transform:scale(1.03); }
.lct-prop-info {
  background:var(--lct-deep); color:#fff;
  display:flex; flex-direction:column; justify-content:center;
  padding:3.5rem;
}
.lct-prop-info h3 {
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.5rem,2.6vw,2.2rem);
  font-weight:400; color:#fff;
  margin:0 0 1.1rem; line-height:1.25;
}
.lct-prop-info p { color:rgba(255,255,255,.74); line-height:1.82; font-size:.95rem; margin:0 0 1.6rem; }
.lct-prop-badge {
  display:inline-flex; align-items:center; gap:.45rem;
  background:rgba(201,168,76,.14); border:1px solid rgba(201,168,76,.38);
  color:var(--lct-gold); font-size:.76rem; font-weight:700;
  letter-spacing:.09em; text-transform:uppercase;
  padding:.36rem .95rem; border-radius:100px;
  margin-bottom:1.1rem; width:fit-content;
}
.lct-prop-link {
  display:inline-flex; align-items:center; gap:.5rem;
  color:#fff; font-size:.83rem; font-weight:600;
  letter-spacing:.09em; text-transform:uppercase;
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.28);
  padding-bottom:.2rem; width:fit-content;
  transition:color .22s, gap .22s, border-color .22s;
}
.lct-prop-link:hover { color:var(--lct-gold); gap:.8rem; border-color:var(--lct-gold); }

/* ══════════════════════════════════════════
   FEATURED PLAN (FULL-WIDTH HIGHLIGHT)
   ══════════════════════════════════════════ */
.lct-featured {
  display:grid; grid-template-columns:1fr 1fr;
  gap:4rem; align-items:center;
  padding:6rem 2rem; max-width:1100px; margin:0 auto;
}
.lct-feat-badge {
  display:inline-flex; align-items:center; gap:.45rem;
  background:rgba(46,134,171,.11); color:var(--lct-lake);
  border:1px solid rgba(46,134,171,.22);
  font-size:.7rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase;
  padding:.33rem .9rem; border-radius:100px; margin-bottom:.9rem;
}
.lct-featured h3 {
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.8rem,3vw,2.6rem);
  font-weight:400; color:var(--lct-deep);
  margin:0 0 .9rem; line-height:1.2;
}
.lct-feat-price { font-size:1.45rem; font-weight:700; color:var(--lct-lake); margin-bottom:1rem; }
.lct-featured p { color:var(--lct-muted); line-height:1.82; margin-bottom:1.8rem; }
.lct-feat-img {
  border-radius:var(--lct-radius); overflow:hidden;
  box-shadow:var(--lct-shadow);
}
.lct-feat-img img { width:100%; height:440px; object-fit:cover; display:block; transition:transform .55s ease; }
.lct-feat-img:hover img { transform:scale(1.04); }
.lct-feat-cta {
  display:inline-flex; align-items:center; gap:.55rem;
  background:var(--lct-deep); color:#fff;
  font-size:.82rem; font-weight:700;
  letter-spacing:.09em; text-transform:uppercase;
  padding:.65rem 1.8rem; border-radius:100px;
  text-decoration:none; transition:all .22s ease;
}
.lct-feat-cta:hover { background:var(--lct-lake); transform:translateY(-2px); }

/* ══════════════════════════════════════════
   EXPERIENCE CALLOUT
   ══════════════════════════════════════════ */
.lct-experience {
  display:grid; grid-template-columns:1.3fr 1fr;
  min-height:560px; overflow:hidden;
}
.lct-exp-photo {
  background-image:url('https://lagocalimatravel.com/wp-content/uploads/2026/04/WhatsApp-Image-2026-03-25-at-12.05.07-1.jpeg');
  background-size:cover; background-position:center; position:relative;
}
.lct-exp-photo::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(90deg,rgba(13,43,62,0) 55%,var(--lct-deep) 100%);
}
.lct-exp-body {
  background:var(--lct-deep);
  display:flex; flex-direction:column; justify-content:center;
  padding:5rem 4rem;
}
.lct-exp-body h2 {
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.8rem,3vw,2.8rem);
  font-weight:400; color:#fff; line-height:1.2;
  margin:0 0 1.2rem;
}
.lct-exp-body p { color:rgba(255,255,255,.72); line-height:1.88; font-size:1rem; margin:0 0 2rem; }
.lct-exp-cta {
  display:inline-flex; align-items:center; gap:.55rem;
  background:var(--lct-gold); color:#fff;
  font-size:.82rem; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase;
  padding:.65rem 1.8rem; border-radius:100px;
  text-decoration:none; width:fit-content;
  transition:all .22s ease;
}
.lct-exp-cta:hover { background:#b8943d; transform:translateY(-2px); box-shadow:0 12px 32px rgba(201,168,76,.38); }

/* ══════════════════════════════════════════
   CLOSING HERO
   ══════════════════════════════════════════ */
.lct-closing {
  position:relative; min-height:68vh;
  display:flex; align-items:center; justify-content:center; overflow:hidden;
}
.lct-closing-bg {
  position:absolute; inset:0;
  background-image:url('https://lagocalimatravel.com/wp-content/uploads/2026/04/WhatsApp-Image-2026-03-25-at-12.05.07-1.jpeg');
  background-size:cover; background-position:center;
  transform:scale(1.05); transition:transform 9s ease;
}
.lct-closing:hover .lct-closing-bg { transform:scale(1); }
.lct-closing-overlay {
  position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(13,43,62,.52) 0%,rgba(13,43,62,.78) 100%);
}
.lct-closing-body {
  position:relative; z-index:2;
  text-align:center; padding:2rem 1.5rem;
  max-width:680px; margin:0 auto;
}
.lct-closing-body h2 {
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(2rem,4.5vw,3.2rem);
  font-weight:400; color:#fff; margin:0 0 1rem;
  line-height:1.22; text-shadow:0 2px 22px rgba(0,0,0,.3);
}
.lct-closing-body p { font-size:1.1rem; color:rgba(255,255,255,.78); margin:0 0 2.5rem; font-weight:300; }
.lct-closing-cta {
  display:inline-flex; align-items:center; gap:.6rem;
  background:var(--lct-gold); color:#fff;
  font-size:.84rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase;
  padding:.72rem 2.2rem; border-radius:100px;
  text-decoration:none; transition:all .22s ease;
}
.lct-closing-cta:hover { background:#b8943d; transform:translateY(-2px); box-shadow:0 14px 44px rgba(201,168,76,.42); }

/* ══════════════════════════════════════════
   CONTACT STRIP
   ══════════════════════════════════════════ */
.lct-contact {
  background:var(--lct-deep); padding:3.5rem 2rem;
}
.lct-contact-inner {
  max-width:1100px; margin:0 auto;
  display:flex; align-items:center;
  justify-content:space-between; gap:2rem; flex-wrap:wrap;
}
.lct-contact-brand {
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.35rem; color:#fff; font-weight:400;
}
.lct-contact-brand span { color:var(--lct-gold); }
.lct-contact-links {
  display:flex; align-items:center;
  gap:1.6rem; flex-wrap:wrap;
}
.lct-contact-links a {
  display:flex; align-items:center; gap:.45rem;
  color:rgba(255,255,255,.72); text-decoration:none;
  font-size:.86rem; transition:color .2s;
}
.lct-contact-links a:hover { color:var(--lct-gold); }
.lct-contact-links a svg { width:16px; flex-shrink:0; }
.lct-legal {
  width:100%; text-align:center;
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:2rem; padding-top:1.5rem;
  color:rgba(255,255,255,.32); font-size:.73rem; letter-spacing:.04em;
}

/* ══════════════════════════════════════════
   VIEW-ALL LINK
   ══════════════════════════════════════════ */
.lct-view-all {
  text-align:center; margin-top:2.8rem;
}
.lct-view-all a {
  display:inline-flex; align-items:center; gap:.55rem;
  color:var(--lct-lake); font-size:.83rem; font-weight:700;
  letter-spacing:.08em; text-transform:uppercase;
  text-decoration:none;
  border-bottom:1.5px solid var(--lct-lake); padding-bottom:.18rem;
  transition:gap .22s, color .22s;
}
.lct-view-all a:hover { gap:.9rem; color:var(--lct-deep); border-color:var(--lct-deep); }
.lct-view-all a svg { width:16px; }

/* ── FADE IN ── */
@media (prefers-reduced-motion: no-preference) {
  .lct-fade { opacity:0; transform:translateY(26px); transition:opacity .72s ease, transform .72s ease; }
  .lct-fade.on { opacity:1; transform:translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .lct-fade { opacity:1 !important; transform:none !important; }
}

/* ── RESPONSIVE ── */
@media (max-width:960px) {
  .lct-prop-card { grid-template-columns:1fr; }
  .lct-prop-card.reverse { direction:ltr; }
  .lct-prop-photo { min-height:300px; }
  .lct-prop-info { padding:2.5rem 2rem; }
  .lct-experience { grid-template-columns:1fr; }
  .lct-exp-photo { min-height:320px; }
  .lct-exp-photo::after { background:linear-gradient(180deg,rgba(13,43,62,0) 55%,var(--lct-deep) 100%); }
  .lct-exp-body { padding:3.5rem 2rem; }
  .lct-featured { grid-template-columns:1fr; gap:2.5rem; }
  .lct-feat-img { order:-1; }
  .lct-feat-img img { height:300px; }
}
@media (max-width:640px) {
  .lct-hero { min-height:100svh; }
  .lct-section { padding:4rem 1.2rem; }
  .lct-products ul.products { grid-template-columns:1fr; }
  .lct-cat-inner { padding:.6rem 1rem; }
  .lct-contact-inner { flex-direction:column; text-align:center; }
  .lct-featured { padding:4rem 1.2rem; }

  /* ── MOBILE BUTTON OVERRIDES — NUCLEAR SPECIFICITY ── */
  body.page-id-912 .lct-products ul.products li.product a.button,
  body.page-id-912 .lct-products ul.products li.product a.button.wp-element-button,
  body.page-id-912 .lct-products ul.products li.product .button,
  .lct-products ul.products li.product > a.button,
  .lct-products ul.products li.product > .button {
    display:inline-flex !important;
    width:auto !important;
    min-width:unset !important;
    min-height:unset !important;
    max-width:fit-content !important;
    padding:.28rem .9rem !important;
    font-size:.63rem !important;
    line-height:1.3 !important;
    letter-spacing:.05em !important;
    margin:auto 1rem 1rem !important;
    align-self:flex-start !important;
    height:auto !important;
    box-sizing:border-box !important;
  }

  body.page-id-912 .lct-hero-cta,
  .lct-hero-cta {
    padding:.44rem 1.3rem !important;
    font-size:.68rem !important;
    letter-spacing:.06em !important;
    gap:.35rem !important;
  }

  body.page-id-912 .lct-feat-cta,
  .lct-feat-cta {
    padding:.38rem 1.1rem !important;
    font-size:.65rem !important;
    letter-spacing:.05em !important;
    gap:.3rem !important;
  }

  body.page-id-912 .lct-exp-cta,
  .lct-exp-cta {
    padding:.38rem 1.1rem !important;
    font-size:.65rem !important;
    letter-spacing:.05em !important;
    gap:.3rem !important;
  }

  body.page-id-912 .lct-closing-cta,
  .lct-closing-cta {
    padding:.42rem 1.3rem !important;
    font-size:.68rem !important;
    letter-spacing:.06em !important;
    gap:.35rem !important;
  }

  .lct-prop-link {
    font-size:.72rem !important;
    letter-spacing:.05em !important;
  }

  .lct-cat-pill {
    padding:.26rem .7rem !important;
    font-size:.65rem !important;
  }
}
  .lct-section { padding:4rem 1.2rem; }
  .lct-products ul.products { grid-template-columns:1fr; }
  .lct-cat-inner { padding:.6rem 1rem; }
  .lct-contact-inner { flex-direction:column; text-align:center; }
  .lct-featured { padding:4rem 1.2rem; }

  /* ── MOBILE BUTTON OVERRIDES ── */
  .page-id-912 .lct-products ul.products li.product a.button,
  .page-id-912 .lct-products ul.products li.product .button,
  .lct-products ul.products li.product a.button,
  .lct-products ul.products li.product .button {
    padding:.32rem .95rem !important;
    font-size:.65rem !important;
    letter-spacing:.05em !important;
    margin:auto 1rem 1rem !important;
    line-height:1.4 !important;
    min-height:unset !important;
    height:auto !important;
  }
  .lct-hero-cta {
    padding:.48rem 1.4rem !important;
    font-size:.7rem !important;
    letter-spacing:.07em !important;
    gap:.4rem !important;
  }
  .lct-feat-cta {
    padding:.42rem 1.2rem !important;
    font-size:.68rem !important;
    letter-spacing:.06em !important;
  }
  .lct-exp-cta {
    padding:.42rem 1.2rem !important;
    font-size:.68rem !important;
    letter-spacing:.06em !important;
  }
  .lct-closing-cta {
    padding:.46rem 1.4rem !important;
    font-size:.7rem !important;
    letter-spacing:.07em !important;
    gap:.4rem !important;
  }
  .lct-prop-link {
    font-size:.72rem !important;
    letter-spacing:.06em !important;
  }
  .lct-cat-pill {
    padding:.28rem .75rem !important;
    font-size:.67rem !important;
  }
}