/* V4.68 · Sistema editorial de exploración — componentes nuevos, sin alterar datos ni rutas.
   Referencias: paisaje enmarcado, galería de experiencias, marketplace y guías de tareas.
   Tipografía: Georgia (títulos) + Poppins (interfaz), definido en V4.67.
   No se simulan fotografías ni verificaciones comerciales. */
:root{--journey-forest:#143f39;--journey-deep:#10322f;--journey-mint:#e8f2ee;--journey-paper:#f8f7f3;--journey-clay:#b96643;--journey-line:#e3e6e1;--journey-radius:22px}

/* Portada: foto panorámica enmarcada, búsqueda y acciones por encima del decorado. */
.journey-design{background:#fff}
.journey-design .visit-hero.journey-hero{width:min(100% - 36px,1460px);margin:16px auto 0;border-radius:30px;min-height:510px;box-shadow:0 20px 65px rgba(9,33,33,.14);isolation:isolate}
.journey-design .journey-hero .visit-hero__picture{z-index:0}
.journey-design .journey-hero .visit-hero__overlay{z-index:1}
.journey-design .journey-hero .visit-hero__inner{z-index:2}
.journey-design .journey-hero:after{content:"";pointer-events:none;position:absolute;inset:17px;border:1px solid rgba(255,255,255,.60);border-radius:22px;z-index:0}
.journey-design .journey-hero .visit-hero__inner{width:min(calc(100% - 130px),1170px);padding:75px 0 87px}
.journey-design .journey-hero .visit-hero__overlay{background:linear-gradient(90deg,rgba(9,35,34,.94) 0%,rgba(12,44,43,.80) 44%,rgba(13,47,46,.21) 100%)}
.journey-design .journey-hero h1{font-family:var(--display,Georgia,serif);font-size:clamp(2.8rem,5vw,4.8rem);font-weight:700;max-width:760px;letter-spacing:-.048em}
.journey-design .journey-hero .visit-hero__search{border-radius:999px;min-height:64px;max-width:690px}
.journey-design .journey-hero .market-search button{border-radius:999px;background:var(--journey-forest);color:#fff}
.journey-design .visit-paths{margin-top:-35px;max-width:1100px}
.journey-design .visit-path{border-radius:18px;border:1px solid #e2e6e0;box-shadow:0 14px 35px rgba(7,36,32,.09)}
.journey-design .visit-path__copy strong{font-family:var(--body,'Poppins',sans-serif)}

/* Destinos — una grilla intencionalmente irregular, distinta de las fichas funcionales. */
.journey-gallery{padding-top:20px;padding-bottom:64px}
.journey-gallery__head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:0 0 24px}
.journey-gallery__head h2{font-family:var(--display,Georgia,serif);font-size:clamp(1.85rem,3.2vw,3rem);line-height:1.07;max-width:710px;margin:0;letter-spacing:-.037em}
.journey-gallery__head p{margin:12px 0 0;font-size:.88rem;line-height:1.65;color:#596864;max-width:720px}
.journey-gallery__head>a{display:inline-flex;align-items:center;white-space:nowrap;gap:7px;font-size:.78rem;font-weight:650;color:var(--journey-forest);border-bottom:1px solid;padding:7px 0}
.journey-gallery__grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:14px}
.journey-gallery__card{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:.88;border-radius:18px;background:var(--journey-forest);color:#fff;min-width:0}
.journey-gallery__card--wide{aspect-ratio:1.3}
.journey-gallery__card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.journey-gallery__card:hover img{transform:scale(1.04)}
.journey-gallery__card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(3,20,20,.87),transparent 67%)}
.journey-gallery__label{position:absolute;left:24px;right:18px;bottom:25px;z-index:1;display:grid;gap:8px}
.journey-gallery__label strong{font-family:var(--display,Georgia,serif);font-size:clamp(1.35rem,2.2vw,2.2rem);line-height:1.12;letter-spacing:-.03em;color:white}
.journey-gallery__label small{font:500 .78rem/1.4 var(--body,'Poppins',sans-serif);display:flex;align-items:center;gap:7px;color:#fff}
.journey-gallery__note{font-size:.68rem;color:#64716c;line-height:1.5;margin:10px 0 0}

/* Guía turística — hero de editorial de viajes, imagen protagonista sin tapar la lectura. */
.journey-travel-guide .journey-travel-hero{position:relative;overflow:hidden;border-radius:26px;margin:22px 0 38px;padding:clamp(28px,4vw,60px);min-height:360px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:35px;align-items:center;background:linear-gradient(120deg,#edf5ef,#f9faf7 66%);border:1px solid #e0e7e0}
.journey-travel-guide .journey-travel-hero h1{font-family:var(--display,Georgia,serif);font-size:clamp(2.5rem,4.4vw,4.5rem);line-height:1.06;letter-spacing:-.05em;color:#113d35;margin-bottom:19px}
.journey-travel-guide .journey-travel-hero p{max-width:530px;color:#485e58;font-size:.9rem;line-height:1.75}
.journey-travel-guide .guide-hero__visual{border-radius:19px;overflow:hidden;box-shadow:0 20px 36px rgba(17,61,53,.12);margin:0;align-self:stretch;min-height:250px}
.journey-travel-guide .guide-hero__visual img{height:100%;width:100%;object-fit:cover}
.journey-travel-guide .guide-hero__visual figcaption{padding:5px 9px;background:#fff;font-size:.66rem;color:#5d6b66}
.journey-travel-guide .guide-visual-grid{gap:16px}
.journey-travel-guide .guide-visual-card{overflow:hidden;border-radius:18px;border:1px solid #dfe8e2;background:#fff;box-shadow:0 8px 20px rgba(18,56,45,.055)}
.journey-travel-guide .guide-visual-card figure{overflow:hidden}
.journey-travel-guide .guide-visual-card img{height:220px;width:100%;object-fit:cover}
.journey-travel-guide .guide-card{border-radius:16px;background:#fff;border:1px solid #e0e6e0}

/* Categorías de lugares: páginas del mismo ecosistema pero sin la cabecera turística genérica. */
.journey-places-hero{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:clamp(24px,4vw,60px);background:#f0f6f2;align-items:center;border-radius:25px;padding:clamp(25px,4vw,60px);margin-top:24px;margin-bottom:38px;border:1px solid #e3ebe4}
.journey-places-hero h1{font-size:clamp(2.4rem,4vw,4.4rem);max-width:750px;color:#1a463f;line-height:1.08}
.journey-places-hero .page-hero__copy p{font-size:.91rem;line-height:1.7;color:#50635e}
.journey-places-hero .page-hero__visual{margin:0;overflow:hidden;border-radius:20px;min-height:260px;box-shadow:0 20px 30px rgba(19,60,54,.1)}
.journey-places-hero .page-hero__visual img{width:100%;height:100%;min-height:260px;object-fit:cover}
.journey-places-hero .segmented-nav{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.journey-places-hero .segmented-nav a{border:1px solid #d2e0d7;border-radius:99px;padding:8px 13px;font-size:.76rem;background:#fff;color:#214d46}
.journey-places-hero .segmented-nav a.is-active{background:#18483f;color:#fff}

/* Directorio — marketplace utilitario con zonas claras de búsqueda y filtros. */
.journey-directory-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(25px,4vw,60px);padding:clamp(28px,4vw,60px);border-radius:25px;margin-top:24px;margin-bottom:29px;background:#f4f8f6;border:1px solid #e0eae4}
.journey-directory-hero h1{font-family:var(--display,Georgia,serif);font-size:clamp(2.25rem,4vw,4rem);line-height:1.07;letter-spacing:-.045em;color:#173d37;max-width:730px}
.journey-directory-hero .directory-kicker{display:none}
.journey-directory-hero .directory-hero__copy>p:not(.directory-kicker){font-size:.88rem;line-height:1.7;color:#52625e;max-width:630px}
.journey-directory-hero .directory-hero__visual{position:relative;min-width:0}
.journey-directory-hero .directory-hero__visual figure{margin:0;border-radius:19px;overflow:hidden;box-shadow:0 15px 32px rgba(12,47,36,.11)}
.journey-directory-hero .directory-hero__visual img{width:100%;aspect-ratio:1.45;object-fit:cover}
.journey-directory-hero .directory-hero__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border-radius:12px;background:rgba(255,255,255,.96);padding:13px;margin:-25px 20px 0;position:relative;box-shadow:0 7px 20px rgba(7,36,32,.08)}
.journey-directory-hero .directory-hero__stats>div{display:grid;gap:3px;text-align:center}
.journey-directory-hero .directory-hero__stats strong{font-size:1.35rem;font-family:var(--body,'Poppins',sans-serif)}
.journey-directory-hero .directory-hero__stats span{font-size:.65rem;color:#53655f}
.directory-browse__grid>a,.directory-card{border-radius:16px}
.directory-controls .directory-filter-form{border-radius:18px}
.directory-card__media{border-radius:13px 13px 0 0}

/* Trámites — funcionalidad primera, documentación sin decorado ficticio. */
.journey-procedures-hero{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:300px;padding:clamp(28px,4.4vw,60px)!important;margin-top:23px;margin-bottom:30px;background:linear-gradient(115deg,#e9f1f8,#f7fbff);border:1px solid #dce8f2;border-radius:24px;overflow:hidden}
.journey-procedures-hero:after{content:"";position:absolute;width:250px;height:250px;right:-85px;top:-95px;transform:rotate(-25deg);border:35px solid rgba(62,124,175,.08);border-radius:55px;pointer-events:none}
.journey-procedures-hero h1{font-family:var(--display,Georgia,serif);color:#163c59;font-size:clamp(2.5rem,4.5vw,4.7rem);line-height:1.02;letter-spacing:-.055em;margin-bottom:15px}
.journey-procedures-hero h1 em{font-style:normal;background:none;color:inherit}
.journey-procedures-hero p{font-size:.91rem;line-height:1.7;color:#405e71;max-width:610px;margin:0 0 21px}
.journey-procedures-hero form{max-width:720px;width:100%;background:#fff;border-radius:16px;box-shadow:0 10px 20px rgba(18,52,85,.07)}
.procedure-hub-priorities{padding:30px!important;margin-bottom:25px;border:1px solid #dfe7f1;border-radius:20px;background:#fff}
.procedure-hub-priorities .procedure-hub-grid>a{border-radius:14px}
.journey-procedure-detail{background:linear-gradient(125deg,#f4f8fc,#fff);border:1px solid #e5edf4;border-radius:22px;padding:clamp(20px,3vw,35px);margin-top:16px}
.journey-procedure-detail h1{color:#1b405c;line-height:1.08}
.journey-procedure-detail .detail-summary{border-radius:16px}

/* Servicios profesionales — tarjetas funcionales con variación sin inventar profesionales. */
.journey-services-hero{border-radius:24px;padding:clamp(25px,4vw,58px)!important;margin-top:25px;background:linear-gradient(115deg,#eaf2eb,#f7faf7);border:1px solid #e0e9e0}
.journey-services-hero h1{font-size:clamp(2.5rem,4.8vw,4.6rem);color:#16483b;max-width:780px;line-height:1.07}
.journey-services-hero h1 em{font-style:normal;background:none;color:inherit}
.journey-services-hero>p{max-width:680px;line-height:1.65;color:#4a645a}
.service-card-large{border-radius:18px}
.service-card-large--accent{background:#e8f3ee}

/* Salud — información de confianza, foco en acciones y estado de fuentes. */
.journey-health-hero{position:relative;background:linear-gradient(120deg,#eaf4f0,#f6fbf8);border-bottom:1px solid #dae9e2}
.journey-health-hero .health-hero__inner{max-width:1140px;padding-top:clamp(42px,5vw,76px);padding-bottom:clamp(42px,5vw,76px)}
.journey-health-hero h1{font-size:clamp(2.5rem,4.8vw,4.8rem);line-height:1.08;color:#144539}
.journey-health-hero .market-eyebrow{display:none}
.journey-health-hero p{color:#466157;line-height:1.7;max-width:740px}
.health-card{border-radius:17px;overflow:hidden}
.health-card--featured{background:#f3faf6}
.journey-pharmacy-page .utility-intro{background:#edf7f1;border:1px solid #daeade;border-radius:22px;padding:clamp(22px,4vw,50px);margin-top:22px;margin-bottom:24px}
.journey-pharmacy-page .utility-intro h1{font-size:clamp(2.3rem,4.3vw,4.2rem);line-height:1.08;color:#164d3c}
.journey-pharmacy-page .utility-intro p{color:#4a675b;max-width:760px;line-height:1.68}
.journey-pharmacy-page .pharmacy-card{border-radius:18px;box-shadow:0 8px 23px rgba(21,63,45,.06)}

/* Accesibilidad y comportamiento móvil común. */
.journey-gallery a:focus-visible,.journey-design a:focus-visible,.journey-places-hero a:focus-visible,.journey-directory-hero a:focus-visible{outline:3px solid #e39453;outline-offset:4px}
@media(max-width:900px){
 .journey-design .journey-hero .visit-hero__inner{width:calc(100% - 70px)}
 .journey-gallery__grid{grid-template-columns:1fr 1fr}
 .journey-gallery__card--wide{grid-column:1/-1;aspect-ratio:2.1}
 .journey-travel-guide .journey-travel-hero,.journey-places-hero,.journey-directory-hero{grid-template-columns:1fr;gap:18px}
 .journey-travel-guide .journey-travel-hero .guide-hero__visual,.journey-places-hero .page-hero__visual{max-height:360px}
}
@media(max-width:600px){
 .journey-design .visit-hero.journey-hero{width:calc(100% - 16px);margin-top:7px;border-radius:18px;min-height:450px}
 .journey-design .journey-hero:after{inset:7px;border-radius:13px}
 .journey-design .journey-hero .visit-hero__inner{width:calc(100% - 48px);padding:94px 0 57px}
 .journey-design .journey-hero h1{font-size:clamp(2.2rem,8.6vw,3.5rem)}
 .journey-design .visit-paths{margin-top:-21px}
 .journey-gallery{padding:14px 0 40px}
 .journey-gallery__head{display:block}
 .journey-gallery__head h2{font-size:2rem}
 .journey-gallery__head>a{margin-top:8px}
 .journey-gallery__grid{gap:9px}
 .journey-gallery__card--wide{aspect-ratio:1.6}
 .journey-gallery__card{aspect-ratio:.72;border-radius:12px}
 .journey-gallery__label{left:13px;bottom:14px;right:9px;gap:5px}
 .journey-gallery__label strong{font-size:clamp(1.1rem,5vw,1.5rem)}
 .journey-gallery__label small{font-size:.65rem}
 .journey-travel-guide .journey-travel-hero,.journey-places-hero,.journey-directory-hero{padding:21px;margin-top:12px;border-radius:17px;gap:20px}
 .journey-travel-guide .journey-travel-hero h1,.journey-places-hero h1,.journey-directory-hero h1,.journey-procedures-hero h1,.journey-health-hero h1{font-size:clamp(2.15rem,8vw,3rem)}
 .journey-places-hero .page-hero__visual,.journey-travel-guide .guide-hero__visual{min-height:210px}
 .journey-directory-hero .directory-hero__stats{margin:-15px 8px 0;padding:10px 5px}
 .journey-directory-hero .directory-hero__stats strong{font-size:1.1rem}
 .journey-procedures-hero,.journey-services-hero,.journey-pharmacy-page .utility-intro{padding:23px!important;margin-top:13px;border-radius:17px}
 .procedure-hub-priorities{padding:20px!important}
 .journey-travel-guide .guide-visual-card img{height:170px}
}
@media(prefers-reduced-motion:reduce){.journey-gallery__card img{transition:none}}
