/* ALT theme layer - 14 Nov 2026 (Claude).
   Brand typography from the ALT brand system (Fraunces for headings, Hanken Grotesk for text), self-hosted
   (SIL Open Font License, from Google Fonts), plus readability/contrast overrides.
   Roll back: remove the alt-theme.css <link> in header.php and point it back to style_custom.css / media.css. */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:500 700;font-display:swap;src:url('../fonts/alt/fraunces-latin-ext-normal.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:500 700;font-display:swap;src:url('../fonts/alt/fraunces-latin-normal.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url('../fonts/alt/hanken-grotesk-latin-ext-normal.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url('../fonts/alt/hanken-grotesk-latin-normal.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
body{font-family:'Hanken Grotesk','Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
input,select,textarea,button{font-family:inherit}
h1,h2,h3{font-family:'Fraunces',Georgia,'Times New Roman',serif;font-weight:600;letter-spacing:-0.005em;font-optical-sizing:auto}
h4,h5,h6{font-family:'Hanken Grotesk','Helvetica Neue',Arial,sans-serif}
p{line-height:1.7}
/* contrast: text on the yellow nav tab, cookie button, grey links */
li.back_yellow a{color:#16181C !important}
a.btn-aceptar{color:#16181C !important;font-weight:600}
.all_blog a{color:#595959}
/* stretched photos: crop instead of squash (same box size) */
li.world_destinations figure img, img.wttheme, figure.blog_img img, figure.blog-img img{object-fit:cover}
/* r3: package-card titles sit in a fixed 40px box; clamp to 2 lines so 3-line titles no longer overlap the duration line */
.package-content > div:not([class]) > h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* r3: theme tile titles asked for Montserrat 800, which fails to load (fallback font shown); use the display serif */
h2.alt-theme-title{font-family:'Fraunces',Georgia,'Times New Roman',serif !important;font-weight:700 !important;letter-spacing:.03em}
/* r3: branded tile shown only when a package has no image at all (see include/alt_img.php) */
.alt-noimg{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:647/410;background:linear-gradient(135deg,#0E6FA0 0%,#16181C 100%);color:#fff;font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:clamp(20px,3vw,34px);line-height:1.2;text-align:center;padding:24px;box-sizing:border-box}
.alt-noimg--thumb{width:193px;max-width:100%;aspect-ratio:193/142;padding:0}
/* r4: blog card category label sits on a dark photo; use the bright brand gold there */
.blog-sec .blog-content h3{color:#FFB504;text-shadow:0 1px 3px rgba(0,0,0,.55)}
/* r4: WhatsApp button (phones and tablets) */
.alt-wa-fab{display:none}
@media (max-width:991px){
.alt-wa-fab{display:flex;align-items:center;gap:8px;position:fixed;right:14px;bottom:86px;z-index:99990;background:#0E7A43;color:#fff;border-radius:999px;padding:10px 16px 10px 12px;box-shadow:0 6px 18px rgba(0,0,0,.28);font:600 15px/1 'Hanken Grotesk',Arial,sans-serif;text-decoration:none;animation:altwa 1.6s ease-out 2s 2}
.alt-wa-fab:hover,.alt-wa-fab:focus{color:#fff;text-decoration:none;background:#0b6e3c}
.alt-wa-fab:focus-visible{outline:3px solid #16181C;outline-offset:2px}
@keyframes altwa{0%{box-shadow:0 0 0 0 rgba(37,211,102,.6)}100%{box-shadow:0 0 0 16px rgba(37,211,102,0)}}
}
@media (max-width:360px){.alt-wa-fab__txt{display:none}.alt-wa-fab{padding:12px}}
/* r4: "Subscribe to travel offers" */
.alt-nl-title{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:20px;color:#fff;margin:0 0 10px}
.alt-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.alt-nl{position:fixed;inset:0;z-index:2147483000;background:rgba(22,24,28,.62);display:flex;align-items:center;justify-content:center;padding:16px}
.alt-nl__box{position:relative;display:flex;max-width:760px;width:100%;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.alt-nl__img{flex:0 0 42%;background:#0E6FA0 url(/include/images/alt-dest/himalaya-647x410.jpg) center/cover no-repeat;min-height:320px}
.alt-nl__body{flex:1;padding:34px 30px 26px}
.alt-nl__body h2{font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:30px;line-height:1.15;margin:0 0 10px;color:#16181C}
.alt-nl__body p{font:400 16px/1.55 'Hanken Grotesk',Arial,sans-serif;color:#3b3f46;margin:0 0 16px}
.alt-nl__f{display:flex;gap:8px;flex-wrap:wrap}
.alt-nl__f input{flex:1 1 200px;height:48px;border:1px solid #c8ccd2;border-radius:8px;padding:0 14px;font:16px 'Hanken Grotesk',Arial,sans-serif}
.alt-nl__f button{height:48px;border:0;border-radius:8px;padding:0 20px;background:#0E6FA0;color:#fff;font:600 16px 'Hanken Grotesk',Arial,sans-serif;cursor:pointer}
.alt-nl__f button:hover{background:#0b5a82}
.alt-nl__msg{min-height:22px;margin:10px 0 0!important;font-weight:600;color:#0E6FA0!important}
.alt-nl__fine{font-size:13px!important;color:#6b7078!important;margin:6px 0 0!important}
.alt-nl__x{position:absolute;top:8px;right:10px;width:40px;height:40px;border:0;background:transparent;font-size:30px;line-height:1;color:#16181C;cursor:pointer;z-index:2}
@media (max-width:640px){.alt-nl__box{flex-direction:column}.alt-nl__img{min-height:150px;flex-basis:auto}.alt-nl__body{padding:22px 18px 18px}.alt-nl__body h2{font-size:24px}.alt-nl__x{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6)}}
/* r4: contact page office maps (circle shows the map; clicking opens Google Maps directions) */
.map__circle.alt-map{overflow:hidden;position:relative;background:#e8eef2}
.map__circle.alt-map iframe{position:absolute;left:50%;top:50%;width:260px;height:260px;margin:-130px 0 0 -130px;border:0;pointer-events:none}
.alt-map-link{display:inline-block;border-radius:50%}
.alt-map-link:focus-visible{outline:3px solid #0E6FA0;outline-offset:4px}
.alt-dir{display:inline-block;margin-top:6px;font-weight:600;color:#0E6FA0}
