/* ====================================================================
   Index / Landing — UNISSASI v4
   ==================================================================== */

/* Milonga: la fuente de aire fileteado porteño (self-hosted) — SOLO Argentina */
@font-face{font-family:"Milonga";font-weight:400;font-display:swap;
  src:url(../fonts/milonga.woff2) format("woff2");}
/* Fuentes display por país (self-hosted OFL) — para el título de cada ficha, igual que en su página. */
@font-face{font-family:"Cormorant Garamond";font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond.woff2) format("woff2");} /* España */
@font-face{font-family:"Cinzel";font-weight:400 600;font-display:swap;src:url(../fonts/cinzel.woff2) format("woff2");}                    /* Italia */
@font-face{font-family:"Uncial Antiqua";font-weight:400;font-display:swap;src:url(../fonts/uncial-antiqua.woff2) format("woff2");}         /* Irlanda */
@font-face{font-family:"Zilla Slab";font-weight:600;font-display:swap;src:url(../fonts/zilla-slab.woff2) format("woff2");}                 /* Norte de Irlanda */
@font-face{font-family:"PT Serif";font-weight:700;font-display:swap;src:url(../fonts/pt-serif-latin.woff2) format("woff2");}               /* Serbia */

/* ── Scroll Progress Bar ── */
.scroll-progress{position:fixed;top:0;left:0;z-index:100;width:0;height:2px;background:var(--teal);transition:width 60ms linear;pointer-events:none;}

/* ── Nav ── */
.idx-nav{position:fixed;top:0;left:0;right:0;z-index:70;padding:16px 0;background:linear-gradient(to bottom,rgba(var(--bg-rgb),.92),rgba(var(--bg-rgb),0));backdrop-filter:blur(2px);transition:background .3s var(--ease),border-color .3s var(--ease);border-bottom:1px solid transparent;}
.idx-nav.is-stuck{background:rgba(var(--bg-rgb),.95);border-bottom:1px solid var(--line);backdrop-filter:blur(8px);}
.idx-nav__inner{max-width:var(--maxw);margin:0 auto;width:100%;padding:0 clamp(18px,4vw,48px);display:flex;align-items:center;justify-content:space-between;}
.idx-nav__left{display:flex;align-items:center;gap:clamp(10px,2vw,18px);}
.idx-nav__logo{display:flex;flex-direction:column;gap:1px;flex-shrink:0;}
.idx-nav__name{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:1.2rem;letter-spacing:.22em;color:var(--gold);text-transform:lowercase;}
.idx-nav__sub{font-family:"Share Tech Mono",monospace;font-size:.55rem;letter-spacing:.18em;color:var(--teal);text-transform:lowercase;}

/* Burger */
.idx-nav__burger{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 8px 2px;cursor:pointer;background:none;border:none;transition:opacity .2s;}
.idx-nav__burger span:not(.idx-nav__burger-label){display:block;width:20px;height:1.5px;background:var(--off);transition:transform .3s var(--ease),opacity .2s;}
.idx-nav__burger.is-active span:nth-child(1){transform:translateY(5.5px) rotate(45deg);}
.idx-nav__burger.is-active span:nth-child(2){opacity:0;}
.idx-nav__burger.is-active span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg);}
.idx-nav__burger-label{font-family:"Share Tech Mono",monospace;font-size:.45rem;letter-spacing:.14em;color:var(--muted);text-transform:uppercase;margin-top:2px;line-height:1;}

/* Search */
.idx-nav__search{display:flex;align-items:center;justify-content:center;width:30px;height:30px;color:var(--muted);cursor:pointer;background:none;border:1px solid var(--line);transition:all .2s var(--ease);}
.idx-nav__search:hover,.idx-nav__search.is-active{color:var(--off);border-color:var(--teal);background:rgba(var(--teal-rgb),.08);}
.idx-nav__right{display:flex;align-items:center;gap:clamp(10px,2vw,20px);}

/* Duck in nav */
.idx-nav__duck-wrap{width:30px;height:30px;overflow:visible;position:relative;}
.idx-nav__duck{width:30px;height:30px;object-fit:contain;opacity:.25;transition:opacity .4s ease,transform .5s ease;cursor:default;}
.idx-nav__duck:hover{opacity:1;}
.idx-nav__duck.peek{animation:duckPeek 1.6s ease-in-out;}
@keyframes duckPeek{0%,100%{transform:translateY(0) rotate(0);}25%{transform:translateY(10px) rotate(3deg);}50%{transform:translateY(12px) rotate(-2deg);}85%{transform:translateY(2px) rotate(0);}}

/* ── Mobile Menu ── */
.menu-overlay{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;}
.menu-overlay.is-open{opacity:1;visibility:visible;}
.mobile-menu{position:fixed;top:0;left:0;bottom:0;z-index:85;width:clamp(260px,70vw,320px);background:var(--surface);border-right:1px solid var(--line);transform:translateX(-100%);transition:transform .35s var(--ease);display:flex;flex-direction:column;}
.mobile-menu.is-open{transform:translateX(0);}
.mobile-menu__head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--line);}
.mobile-menu__brand{display:flex;flex-direction:column;gap:2px;}
.mobile-menu__name{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:1.1rem;letter-spacing:.2em;color:var(--gold);text-transform:lowercase;}
.mobile-menu__sub{font-family:"Share Tech Mono",monospace;font-size:.5rem;letter-spacing:.16em;color:var(--teal);}
.mobile-menu__close{font-size:.9rem;color:var(--muted);cursor:pointer;background:none;border:none;padding:4px;transition:color .2s;}
.mobile-menu__close:hover{color:var(--off);}
.mobile-menu__nav{flex:1;display:flex;flex-direction:column;padding:24px 0;}
.mobile-menu__link{font-family:"Share Tech Mono",monospace;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:14px 24px;text-decoration:none;border-left:2px solid transparent;transition:all .2s var(--ease);}
.mobile-menu__link:hover{color:var(--off);border-left-color:var(--teal);background:rgba(var(--teal-rgb),.04);}

/* Language selector in burger menu */
.mobile-menu__lang{padding:16px 24px;border-top:1px solid var(--line);}
.mobile-menu__lang-label{font-family:"Share Tech Mono",monospace;font-size:.55rem;letter-spacing:.16em;color:var(--muted-2);text-transform:uppercase;display:block;margin-bottom:10px;}

.mobile-menu__footer{padding:16px 24px;border-top:1px solid var(--line);}
.mobile-menu__copy{font-family:"Share Tech Mono",monospace;font-size:.6rem;letter-spacing:.1em;color:var(--muted-2);}

/* ── Search Dropdown ── */
.search-dd{position:fixed;top:60px;left:0;right:0;z-index:75;pointer-events:none;opacity:0;transform:translateY(-8px);transition:opacity .25s var(--ease),transform .25s var(--ease);}
.search-dd.is-open{pointer-events:all;opacity:1;transform:translateY(0);}
.search-dd__inner{max-width:480px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-top:2px solid var(--teal);display:flex;flex-direction:column;box-shadow:0 16px 48px rgba(0,0,0,.6);}
.search-dd__item{display:flex;align-items:center;gap:14px;padding:16px 22px;font-family:"Share Tech Mono",monospace;color:var(--off);border-bottom:1px solid var(--line-2);cursor:pointer;background:none;border-left:none;border-right:none;transition:all .2s var(--ease);text-align:left;}
.search-dd__item:last-child{border-bottom:none;}
.search-dd__item:hover{background:rgba(var(--teal-rgb),.06);}
.search-dd__code{font-size:.7rem;letter-spacing:.18em;color:var(--teal);border:1px solid var(--teal-dim);padding:4px 8px;flex-shrink:0;min-width:40px;text-align:center;}
.search-dd__name{font-family:"Rajdhani",sans-serif;font-weight:600;font-size:1.05rem;letter-spacing:.04em;flex:1;}
.search-dd__arrow{color:var(--muted-2);font-size:.8rem;transition:transform .2s var(--ease),color .2s;}
.search-dd__item:hover .search-dd__arrow{transform:translateX(4px);color:var(--teal);}

/* ── Hero ── */
.idx-hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:80px clamp(18px,4vw,48px) 0;}
.idx-hero__bg{position:absolute;inset:0;z-index:0;background-color:var(--black);background-image:url('../images/indexheader.webp');background-size:cover;background-position:center 35%;}
/* Light mode uses its own hero photo (the dark one washes out on a light bg) */
[data-theme="light"] .idx-hero__bg{background-image:url('../images/indexheader-light.webp');}
/* Light mode scrim: the inline scrim is hardcoded dark (built for the dark
   photo + white text) and reads as a dark vignette over the bright photo.
   Replace it with a soft cream wash — lifts the centre so the dark title
   stays legible, and fades top/bottom into the cream page. */
[data-theme="light"] .idx-hero__scrim{
  background:
    radial-gradient(ellipse 78% 62% at 50% 46%, rgba(244,242,236,.50), transparent 70%),
    linear-gradient(to top, var(--black) 7%, transparent 40%),
    linear-gradient(to bottom, rgba(244,242,236,.42), transparent 28%) !important;
}
.idx-hero__scrim{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse 80% 60% at 30% 50%,rgba(var(--teal-rgb),.08),transparent 70%),radial-gradient(ellipse 60% 50% at 70% 60%,rgba(var(--gold-rgb),.04),transparent 60%),linear-gradient(to top,var(--black) 3%,transparent 40%);}
.idx-hero__content{position:relative;z-index:2;flex:1;max-width:780px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;}
.idx-hero__content .klabel{letter-spacing:.28em;margin-bottom:4px;}
.idx-hero__title{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:clamp(2.2rem,6vw,4.2rem);line-height:1.05;letter-spacing:.01em;color:var(--off);text-wrap:balance;}
.idx-hero__title .gold{color:var(--gold);}
.idx-hero__sub{font-size:clamp(1rem,2vw,1.25rem);color:var(--muted);font-weight:400;max-width:44ch;line-height:1.5;text-wrap:balance;}

/* AI assistants line */
.idx-hero__ai-line{
  font-family:"Share Tech Mono",monospace;font-size:.76rem;
  letter-spacing:.08em;color:var(--teal);
  margin-top:4px;
}
.idx-hero__cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:"Share Tech Mono",monospace;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;background:#EF9F27;color:#1A1A18;padding:14px 22px;margin-top:10px;text-decoration:none;transition:all .25s var(--ease);animation:ctaPulse 3s ease-in-out infinite;}
.idx-hero__cta:hover{background:#f5b340;transform:translateY(-2px);box-shadow:0 10px 30px rgba(var(--gold-rgb),.3);animation:none;}
@keyframes ctaPulse{0%,100%{box-shadow:0 0 0 0 rgba(var(--teal-rgb),0);}40%{box-shadow:0 0 0 14px rgba(var(--teal-rgb),.15);}80%{box-shadow:0 0 0 0 rgba(var(--teal-rgb),0);}}

/* ── Route Bar ── */
.route-bar{position:relative;z-index:2;width:100%;margin-top:auto;padding:0 clamp(18px,4vw,48px) clamp(18px,3vh,32px);}
.route-bar__inner{position:relative;height:72px;max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;}
.route-bar__stop{position:absolute;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;z-index:2;text-decoration:none;padding:6px;}
.route-bar__stop:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.route-bar__stop:focus-visible .route-bar__icon,.route-bar__stop:hover .route-bar__icon{border-color:var(--gold);}
.route-bar__stop:focus-visible .route-bar__label{color:var(--gold);}
.route-bar__icon{width:38px;height:38px;border:1px solid rgba(var(--teal-rgb),.4);background:var(--surface);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;line-height:1;transition:all .35s var(--ease);}
.route-bar__stop:hover .route-bar__icon{border-color:var(--gold);box-shadow:0 0 18px rgba(var(--gold-rgb),.25),0 0 6px rgba(var(--gold-rgb),.15);transform:scale(1.1);animation:iconBounce .45s ease;}
@keyframes iconBounce{0%,100%{transform:scale(1.1);}40%{transform:scale(1.25) translateY(-4px);}70%{transform:scale(1.05) translateY(1px);}}
.route-bar__label{font-family:"Share Tech Mono",monospace;font-size:.62rem;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;transition:color .3s;}
.route-bar__stop:hover .route-bar__label{color:var(--gold);}
/* Endpoints — home (start) & beach (end) terminals; decorative, gold-tinted */
.route-bar__endpoint{position:absolute;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:6px;z-index:1;pointer-events:none;}
.route-bar__endpoint .route-bar__icon{border-color:rgba(var(--gold-rgb),.4);}
.route-bar__duck{position:absolute;top:50%;z-index:3;transform:translate(-50%,-50%);pointer-events:none;transition:left .15s linear;}
.route-bar__duck.is-running{transition:left .6s cubic-bezier(.16,.84,.36,1);}
.route-bar__duck img{width:26px;height:26px;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(var(--teal-rgb),.2));transition:opacity .4s ease;}

/* ── Destinations ── */
.idx-dest{position:relative;max-width:var(--maxw);margin:0 auto;padding:clamp(32px,6vh,64px) clamp(18px,4vw,48px) clamp(40px,6vh,80px);}
.idx-dest__head{margin-bottom:clamp(28px,5vh,48px);text-align:center;}
.idx-dest__head .klabel{font-size:.78rem;letter-spacing:.24em;}
/* Peregrinaciones set apart from the country grid */
.idx-dest__feature{margin-bottom:clamp(28px,5vh,48px);}
.idx-dest__split{display:flex;align-items:center;gap:18px;margin:clamp(30px,5vh,52px) auto clamp(22px,4vh,34px);max-width:900px;}
.idx-dest__split::before,.idx-dest__split::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--line-rgb),.22),transparent);}
.idx-dest__split-label{font-size:.72rem;letter-spacing:.24em;color:var(--muted-2);white-space:nowrap;}
/* fotos de cada destino (las usa la capa .door-card__img::before vía background:inherit) */
.dest-card__img--arg{background-image:url('../images/argcard.webp');background-size:cover;background-position:center;}
.dest-card__img--es{background-image:url('../images/escard.webp');background-size:cover;background-position:center;}
.dest-card__img--it{background-image:url('../images/itcard.webp');background-size:cover;background-position:center;}
.dest-card__img--ni{background-image:url('../images/nicard.webp');background-size:cover;background-position:center;}
.dest-card__img--ie{background-image:url('../images/iecard.webp');background-size:cover;background-position:center;}
.dest-card__img--rs{background-image:url('../images/serbiacard.webp');background-size:cover;background-position:center;}
.dest-card__img--peregri{background-image:url('../images/peregricard.webp');background-size:cover;background-position:center;}

/* ── Route-bar branch: a dotted detour off the line of life ───────── */
.route-bar__branch{position:absolute;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:6px;z-index:3;text-decoration:none;padding:6px 8px;min-width:44px;}
.route-bar__branch:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.route-bar__branch-icon{width:34px;height:34px;border:1px solid rgba(var(--gold-rgb),.55);background:var(--surface);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.95rem;line-height:1;transition:all .35s var(--ease);}
.route-bar__branch:hover .route-bar__branch-icon{border-color:var(--gold);box-shadow:0 0 18px rgba(var(--gold-rgb),.3);transform:scale(1.12);}
.route-bar__branch-label{font-family:"Share Tech Mono",monospace;font-size:.5rem;letter-spacing:.18em;color:var(--gold);text-transform:uppercase;}
@media (max-width:700px){.route-bar__branch-label{display:none;}}

/* ── Special accents in search dropdown + mobile menu ─────────────── */
.search-dd__item--special .search-dd__code{color:var(--gold);border-color:rgba(var(--gold-rgb),.6);font-size:.9rem;}
.search-dd__item--special:hover{background:rgba(var(--gold-rgb),.08);}
.mobile-menu__link--special{color:var(--gold);}

/* ── Why ── */
.idx-why{border-top:1px solid var(--line);max-width:var(--maxw);margin:0 auto;padding:clamp(56px,9vh,96px) clamp(18px,4vw,48px);}
.idx-why__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,48px);}
.idx-why__col h3{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:1.2rem;letter-spacing:.02em;color:var(--off);margin-bottom:12px;}
.idx-why__col p{font-size:.92rem;color:var(--muted);font-weight:400;line-height:1.6;max-width:34ch;}

/* ── Footer ── */
.idx-footer{max-width:var(--maxw);margin:0 auto;padding:32px clamp(18px,4vw,48px) 44px;border-top:1px solid var(--line);background:rgba(var(--surface-rgb),.55);display:flex;align-items:center;justify-content:space-between;}
.idx-footer__copy{font-family:"Share Tech Mono",monospace;font-size:.7rem;letter-spacing:.12em;color:var(--muted-2);}
.idx-footer__duck-link{display:block;text-decoration:none;line-height:0;}
.idx-footer__duck{width:54px;height:54px;object-fit:contain;opacity:.12;transition:opacity .5s ease,transform .5s ease;cursor:pointer;}
.idx-footer__duck:hover{opacity:.85;transform:rotate(-4deg) scale(1.05);}

/* ===== CONTACTO ===== */
.idx-contact{border-top:1px solid var(--line);max-width:var(--maxw);margin:0 auto;padding:clamp(56px,9vh,96px) clamp(18px,4vw,48px);}
.idx-contact__inner{max-width:640px;}
.idx-contact__eyebrow{font-family:"Share Tech Mono",monospace;font-size:.7rem;letter-spacing:.2em;color:var(--teal);text-transform:uppercase;}
.idx-contact__title{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:clamp(1.6rem,4vw,2.3rem);letter-spacing:.02em;color:var(--txt-bright);margin:10px 0 6px;line-height:1.1;}
.idx-contact__sub{font-size:.92rem;color:var(--muted);line-height:1.6;max-width:48ch;margin:0 0 24px;}
.idx-contact__form{display:flex;flex-direction:column;gap:12px;}
.idx-contact__row{display:flex;gap:12px;flex-wrap:wrap;}
.idx-contact__row .idx-contact__input{flex:1;min-width:220px;}
.idx-contact__input{background:var(--surface);border:1.5px solid rgba(var(--teal-rgb),.4);border-radius:14px;padding:14px 18px;font-family:"Rajdhani",sans-serif;font-size:1rem;color:var(--desc-text);outline:none;transition:border-color .15s;width:100%;box-sizing:border-box;}
.idx-contact__input:focus{border-color:var(--teal);}
.idx-contact__textarea{resize:vertical;min-height:110px;line-height:1.5;}
.idx-contact__hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;}
.idx-contact__foot{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:4px;}
.idx-contact__status{font-family:"Share Tech Mono",monospace;font-size:.72rem;letter-spacing:.04em;color:var(--muted);line-height:1.4;}
.idx-contact__status.is-ok{color:#3ddc84;}
.idx-contact__status.is-err{color:#e0533d;}
.idx-contact__send{font-family:"Share Tech Mono",monospace;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;background:#EF9F27;color:#1A1A18;border:none;padding:14px 30px;border-radius:12px;cursor:pointer;transition:all .2s var(--ease);}
.idx-contact__send:hover{background:#f5b340;transform:translateY(-2px);}
.idx-contact__send:disabled{opacity:.5;cursor:default;transform:none;}
@media (max-width:560px){.idx-contact__row{flex-direction:column;gap:12px;}.idx-contact__row .idx-contact__input{min-width:0;}.idx-contact__input{font-size:16px;}}

/* ── Back to Top ── */
.back-top{position:fixed;bottom:28px;right:28px;z-index:60;background:var(--surface);border:1px solid rgba(var(--teal-rgb),.35);padding:8px 14px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .35s ease,visibility .35s ease,transform .35s ease,border-color .2s ease,background .2s ease;box-shadow:0 4px 16px rgba(0,0,0,.4);}
.back-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);}
.back-top:hover{border-color:var(--teal);background:rgba(var(--teal-rgb),.1);}
.back-top__text{font-family:"Share Tech Mono",monospace;font-size:.65rem;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;pointer-events:none;white-space:nowrap;}
.back-top:hover .back-top__text{color:var(--off);}



/* ── Responsive ── */
@media (max-width:860px){.idx-why__grid{grid-template-columns:1fr;gap:32px;}}
@media (max-width:700px){.idx-hero__title{font-size:clamp(1.8rem,7vw,2.8rem);}.route-bar__label{display:none;}}
@media (max-width:480px){.idx-nav__inner{padding:0 16px;}.idx-nav__name{font-size:1rem;letter-spacing:.16em;}.idx-nav__sub{font-size:.5rem;}.route-bar__icon{width:32px;height:32px;font-size:.85rem;}.route-bar__duck img{width:22px;height:22px;}}

/* Smooth theme transition — hub surfaces (shared body rule lives in styles.css; .idx-hero__cta is a fixed brand button, excluded) */
.idx-nav,.idx-nav__name,.idx-nav__sub,.idx-nav__search,.idx-nav__burger,
.door-card__name,.door-card__desc,
.idx-footer,.idx-why,.idx-hero__scrim,
.mobile-menu,.mobile-menu__head,.mobile-menu__footer,.mobile-menu__close,.mobile-menu__link,
.search-dd__inner,.search-dd__item,.search-dd__code,
.back-top,.route-bar__icon,.route-bar__line
{transition:background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease);}

/* Pilgrimage scallop (vieira) sizing inside the index badges */
.search-dd__item--special .search-dd__code .i-shell{width:1.4em;height:1.4em;}
.route-bar__branch-icon .i-shell{width:18px;height:18px;color:var(--gold);}

/* ── Hero: doble CTA ── */
.idx-hero__ctas{display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
/* en pantallas angostas los CTAs se apilan a ancho completo (en EN/GA los textos largos rompían la fila) */
@media (max-width:760px){.idx-hero__ctas{flex-direction:column;align-items:stretch;gap:10px;}.idx-hero__cta{width:100%;}}
.idx-hero__cta--ways{background:var(--gold);border-color:var(--gold);color:#1A1A18;}
.idx-hero__cta--ways:hover{filter:brightness(1.08);}
.idx-hero__cta--ghost{background:transparent;color:#EDEAE0;border:1.5px solid rgba(237,234,224,.55);animation:none;}
.idx-hero__cta--ghost:hover{background:rgba(237,234,224,.12);color:#fff;box-shadow:none;}


/* ── Pilgrim duck (SVG) — waddle, footprints, shell nod, beach shades ── */
.pduck{overflow:visible;display:block;}
.pduck__body{animation:pduckWaddle .55s ease-in-out infinite;transform-origin:22px 34px;}
.route-bar__duck.is-running .pduck__body{animation-duration:.26s;}
@keyframes pduckWaddle{0%,100%{transform:rotate(-3.5deg) translateY(0);}50%{transform:rotate(3.5deg) translateY(-1.4px);}}
.pduck__foot--a{animation:pduckStepA .55s ease-in-out infinite;transform-origin:17px 39px;}
.pduck__foot--b{animation:pduckStepB .55s ease-in-out infinite;transform-origin:26px 39px;}
.route-bar__duck.is-running .pduck__foot--a,.route-bar__duck.is-running .pduck__foot--b{animation-duration:.26s;}
@keyframes pduckStepA{0%,100%{transform:translate(0,0);}50%{transform:translate(-2px,-2.4px);}}
@keyframes pduckStepB{0%,100%{transform:translate(0,-2.4px);}50%{transform:translate(2px,0);}}
.pduck__shades{opacity:0;transition:opacity .35s ease;}
.route-bar__duck.is-cool .pduck__shades{opacity:1;}
.pduck__head{transform-origin:12px 16px;transition:transform .3s ease;}
.route-bar__duck.is-pondering .pduck__head{transform:rotate(-10deg);}
.route-bar__duck.is-pondering .pduck__body{animation-play-state:paused;}
.route-bar__duck.is-pondering .pduck__foot--a,.route-bar__duck.is-pondering .pduck__foot--b{animation-play-state:paused;}
.route-bar__duck.is-pondering .pduck__shell{animation:pduckShellGlow 1.2s ease-in-out;}
@keyframes pduckShellGlow{0%,100%{filter:none;}50%{filter:drop-shadow(0 0 5px rgba(var(--gold-rgb),.9));}}
/* footprints left on the line of life */
.route-bar__print{position:absolute;top:calc(50% + 9px);width:9px;height:4px;pointer-events:none;z-index:1;
  background:radial-gradient(circle 1.6px at 2px 2px,var(--gold) 98%,transparent),radial-gradient(circle 1.6px at 7px 2px,var(--gold) 98%,transparent);
  opacity:.5;transition:opacity 1.2s ease;}
.route-bar__print.is-gone{opacity:0;}

/* ── Line of life draw-in: route traces home→beach, icons sprout as it passes ── */
.route-bar--intro .route-bar__stop,.route-bar--intro .route-bar__endpoint,.route-bar--intro .route-bar__branch{animation:stopSprout .5s cubic-bezier(.2,1.4,.4,1) both;}
@keyframes stopSprout{from{opacity:0;transform:translate(-50%,-50%) scale(.3);}to{opacity:1;transform:translate(-50%,-50%) scale(1);}}
.route-bar--intro .route-bar__branch{animation-name:branchSprout;}
@keyframes branchSprout{from{opacity:0;transform:translate(-50%,-50%) scale(.3);}to{opacity:1;transform:translate(-50%,-50%) scale(1);}}
/* delays ≈ 24ms per % of left position, matching the 2.4s trace */
.route-bar--intro .route-bar__endpoint--home{animation-delay:.05s;}
.route-bar--intro .route-bar__stop[data-stop="0"]{animation-delay:.37s;}
.route-bar--intro .route-bar__stop[data-stop="1"]{animation-delay:.65s;}
.route-bar--intro .route-bar__stop[data-stop="2"]{animation-delay:.92s;}
.route-bar--intro .route-bar__branch{animation-delay:1.2s;}
.route-bar--intro .route-bar__stop[data-stop="3"]{animation-delay:1.48s;}
.route-bar--intro .route-bar__stop[data-stop="4"]{animation-delay:1.75s;}
.route-bar--intro .route-bar__stop[data-stop="5"]{animation-delay:2.03s;}
.route-bar--intro .route-bar__endpoint--beach{animation-delay:2.28s;}

@media (prefers-reduced-motion:reduce){
  .route-bar--intro .route-bar__stop,.route-bar--intro .route-bar__endpoint,.route-bar--intro .route-bar__branch{animation:none;}
  .pduck__body,.pduck__foot--a,.pduck__foot--b{animation:none;}
  .route-bar__print{display:none;}
  .idx-hero__cta{animation:none;}
}

/* ── door-card: la card-puerta grande, acciones integradas (prototipo Argentina;
      cuando cierre, este es el patrón que reemplaza al grid + hub) ── */
.door-card{position:relative;display:flex;border:1px solid var(--surface-2);background:var(--surface);border-radius:20px;overflow:hidden;margin-bottom:clamp(28px,5vh,48px);box-shadow:0 10px 30px rgba(0,0,0,.18);--door:var(--teal);transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .3s ease;}
.door-card[data-dest="arg"]{--door:#5AA6D8;}   /* Floralis: cielo porteño */
/* fileteado porteño en el título de Argentina (regla de diseño regional: solo acá) */
.door-card[data-dest="arg"] .door-card__name{font-family:"Milonga","Rajdhani",cursive;font-weight:400;font-size:clamp(1.9rem,3.4vw,2.4rem);letter-spacing:.01em;line-height:1.15;}
.door-card[data-dest="es"]{--door:#BE6B42;}    /* Plaza de España: ladrillo terracota */
.door-card[data-dest="it"]{--door:#61764C;}    /* Coliseo: pino / ciprés romano */
.door-card[data-dest="ie"]{--door:#A63A34;}    /* Temple Bar: rojo pub */
.door-card[data-dest="ni"]{--door:#6E8AA8;}    /* Belfast: piedra fría / cielo */
.door-card[data-dest="rs"]{--door:#5E5C88;}    /* San Sava: índigo malva bizantino */
/* cada ficha con la fuente display de su país (misma identidad que su página) */
.door-card[data-dest="es"] .door-card__name{font-family:"Cormorant Garamond","Rajdhani",serif;font-weight:500;font-size:clamp(2rem,3.6vw,2.6rem);letter-spacing:0;line-height:1.08;}
.door-card[data-dest="it"] .door-card__name{font-family:"Cinzel","Rajdhani",serif;font-weight:600;font-size:clamp(1.65rem,2.9vw,2.1rem);letter-spacing:.02em;line-height:1.12;}
.door-card[data-dest="ie"] .door-card__name{font-family:"Uncial Antiqua","Rajdhani",serif;font-weight:400;font-size:clamp(1.6rem,2.9vw,2.05rem);letter-spacing:0;line-height:1.14;}
.door-card[data-dest="ni"] .door-card__name{font-family:"Zilla Slab","Rajdhani",serif;font-weight:600;font-size:clamp(1.7rem,3vw,2.15rem);letter-spacing:0;line-height:1.1;}
.door-card[data-dest="rs"] .door-card__name{font-family:"PT Serif","Rajdhani",serif;font-weight:700;font-size:clamp(1.75rem,3vw,2.2rem);letter-spacing:0;line-height:1.1;}
.door-card[data-dest="peregri"]{--door:var(--gold);}
/* foto a la derecha en cards alternas — ritmo editorial (en desktop) */
.door-card--flip{flex-direction:row-reverse;}
.door-cards{margin-bottom:clamp(28px,5vh,48px);}
/* umbral + filo de luz (mismo lenguaje que .door-card) */
.door-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--door);opacity:.82;z-index:6;pointer-events:none;transition:height .3s var(--ease),opacity .3s ease,box-shadow .3s ease;}
.door-card::before{content:"";position:absolute;inset:0;z-index:5;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(var(--gold-rgb),0),inset 0 16px 44px -14px rgba(var(--gold-rgb),0);transition:box-shadow .35s ease;}
.door-card:hover,.door-card:focus-within{transform:translateY(-4px);box-shadow:0 22px 60px rgba(0,0,0,.4);border-color:rgba(var(--teal-rgb),.5);}
.door-card:hover::after,.door-card:focus-within::after{height:5px;opacity:1;box-shadow:0 0 14px -2px var(--door);}
.door-card:hover::before,.door-card:focus-within::before{box-shadow:inset 0 0 0 1px rgba(var(--gold-rgb),.24),inset 0 18px 48px -12px rgba(var(--gold-rgb),.20);}
/* la ventana: foto clickeable en capa con zoom lento + penumbra que se aclara */
.door-card__photo{display:block;width:44%;flex-shrink:0;position:relative;overflow:hidden;cursor:pointer;}
.door-card__img{position:absolute;inset:0;display:block;}
.door-card__img::before{content:"";position:absolute;inset:0;background-image:inherit;background-size:cover;background-position:center;will-change:transform;transition:transform 3s var(--ease),filter .5s ease;}
.door-card__img::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(10,10,9,.30) 0%,rgba(10,10,9,.04) 45%,rgba(10,10,9,.26) 100%);transition:opacity .5s ease;}
.door-card:hover .door-card__img::before,.door-card:focus-within .door-card__img::before{transform:scale(1.045);filter:brightness(1.08) contrast(1.03);}
.door-card:hover .door-card__img::after,.door-card:focus-within .door-card__img::after{opacity:.42;}
/* el cuerpo: flujo de lectura nombre → frase → saludo → acciones */
.door-card__body{flex:1;display:flex;flex-direction:column;justify-content:center;gap:9px;padding:clamp(22px,3.2vw,36px) clamp(20px,3vw,36px);min-height:250px;}
.door-card__code{font-family:"Share Tech Mono",monospace;font-size:.66rem;letter-spacing:.2em;color:var(--door);}
.door-card__code::before{content:"// ";opacity:.5;}
.door-card__name{font-family:"Rajdhani",sans-serif;font-weight:700;font-size:clamp(1.6rem,3vw,2rem);letter-spacing:.02em;color:var(--off);line-height:1.05;margin:0;transition:color .3s ease;}
.door-card:hover .door-card__name,.door-card:focus-within .door-card__name{color:var(--txt-bright);}
.door-card__desc{font-size:.9rem;color:var(--muted);line-height:1.55;max-width:58ch;margin:0;}
/* el anfitrión: siempre visible (mobile sin hover), se ilumina al acercarse */
.door-card__host{font-family:"Rajdhani",sans-serif;font-size:1rem;font-style:italic;color:var(--muted);line-height:1.4;margin:2px 0 0;max-width:52ch;opacity:.85;transition:opacity .4s ease,color .4s ease;}
.door-card__sig{font-style:normal;font-weight:600;color:var(--gold);white-space:nowrap;margin-left:6px;}
.door-card:hover .door-card__host,.door-card:focus-within .door-card__host{opacity:1;color:var(--desc-text);}
/* acciones: 1 primario lleno (color de la puerta) + 2 links discretos */
.door-card__actions{display:flex;align-items:center;gap:20px;margin-top:12px;flex-wrap:wrap;}
.door-card__enter{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:12px;background:var(--door);color:#14202b;text-decoration:none;font-family:"Rajdhani",sans-serif;font-weight:700;font-size:1rem;letter-spacing:.02em;box-shadow:0 4px 16px rgba(0,0,0,.25);transition:filter .2s ease,transform .2s var(--ease),box-shadow .2s ease;}
.door-card__enter .arr{transition:transform .25s var(--ease);}
.door-card__enter:hover{filter:brightness(1.08);transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.3);}
.door-card__enter:hover .arr{transform:translateX(4px);}
.door-card__enter:focus-visible{outline:2px solid var(--door);outline-offset:3px;}
.door-card__alt{display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-family:"Rajdhani",sans-serif;font-weight:600;font-size:.92rem;color:var(--muted);padding:6px 2px;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease;}
.door-card__alt:hover{color:var(--txt-bright);border-color:rgba(var(--line-rgb),.6);}
.door-card__alt:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px;}
/* peregrinaciones: la door-card destacada, dorada, con badge y línea de rutas */
.door-card--feature{border-color:rgba(var(--gold-rgb),.5);box-shadow:0 0 0 1px rgba(var(--gold-rgb),.16),0 12px 34px rgba(0,0,0,.24);}
.door-card--feature:hover,.door-card--feature:focus-within{border-color:var(--gold);box-shadow:0 22px 60px rgba(0,0,0,.4),0 0 26px rgba(var(--gold-rgb),.2);}
.door-card__badge{position:absolute;top:12px;left:12px;z-index:6;font-family:"Share Tech Mono",monospace;font-size:.5rem;letter-spacing:.18em;text-transform:uppercase;color:#1A1A18;background:var(--gold);padding:5px 9px;border-radius:2px;box-shadow:0 4px 14px rgba(0,0,0,.3);}
.door-card__code--shell::before{content:none;}
.door-card__code--shell .i-shell{width:1.4em;height:1.4em;color:var(--gold);}
.door-card__ways{font-family:"Share Tech Mono",monospace;font-size:.66rem;letter-spacing:.08em;color:var(--gold);margin:2px 0 0;display:block;}
@media(max-width:760px){
  .door-card,.door-card--flip{flex-direction:column;}
  .door-card__photo{width:100%;aspect-ratio:16/9;}
  .door-card__body{min-height:0;padding:18px 18px 24px;}
  .door-card__actions{gap:14px;}
  .door-card__enter{width:100%;justify-content:center;}
}
@media (prefers-reduced-motion:reduce){
  .door-card,.door-card::after,.door-card::before,.door-card__img::before{transition-duration:.01ms;}
  .door-card:hover,.door-card:focus-within{transform:none;}
  .door-card:hover .door-card__img::before,.door-card:focus-within .door-card__img::before{transform:none;filter:brightness(1.08) contrast(1.03);}
}
