/* Web pública Free Tours Lima — mismo estilo del prototipo v3 */
:root{--red:#d71942;--red-d:#b5122f;--ink:#1f2430;--mut:#6b7280;--line:#e6e8ec;--soft:#f6f7f9;--pink:#fdecef;--r:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--red);color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:700;font-size:15px;cursor:pointer}
.btn:hover{background:var(--red-d)}.btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.block{width:100%}
.eyebrow{color:var(--red);font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
/* cabecera */
.top{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:20}
.top .wrap{display:flex;align-items:center;gap:24px;height:76px}
.logo{display:flex;align-items:center;gap:12px}.logo b{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--red);color:#fff;font-size:17px}
.logo span{display:flex;flex-direction:column;line-height:1}.logo strong{font-size:21px;color:#555;font-weight:700;letter-spacing:-.02em}.logo strong i{font-style:normal;color:var(--red)}
.logo small{font-size:9.5px;letter-spacing:.32em;color:var(--mut);margin-top:5px;font-weight:600}
.nav{margin-left:auto;display:flex;align-items:center;gap:22px;font-weight:600;font-size:14.5px}.nav a:hover{color:var(--red)}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-size:18px}
@media(max-width:900px){.nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:16px 20px;border-bottom:1px solid var(--line)}.nav.open{display:flex}.menu-btn{display:block}}
/* portada */
.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:40px;align-items:center;padding:40px 0 28px}
.hero h1{font-size:52px;line-height:1.05;letter-spacing:-.03em;margin:14px 0}.hero h1 em{font-style:normal;color:var(--red)}
.hero p{font-size:18px;color:var(--mut);max-width:330px;line-height:1.5}
.hero .ph{position:relative;border-radius:60px 18px 18px 18px;overflow:hidden;aspect-ratio:16/8.2}.hero .ph img{width:100%;height:100%;object-fit:cover}
.hero .ph span{position:absolute;left:18px;bottom:18px;background:#fff;border-radius:99px;padding:8px 14px;font-size:13px;font-weight:600}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero h1{font-size:40px}}
.search{display:grid;grid-template-columns:1.3fr 1fr .8fr auto;gap:14px;align-items:end;border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;box-shadow:0 8px 24px rgba(20,20,40,.05);background:#fff}
.search label,.field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
.search select,.search input,.field input,.field select,.field textarea{width:100%;height:44px;border:1px solid #d6d9de;border-radius:10px;padding:0 12px;font:inherit;font-size:15px;background:#fff;color:var(--ink)}
@media(max-width:800px){.search{grid-template-columns:1fr 1fr}.search .btn{grid-column:1/-1}}
.trust{display:flex;justify-content:center;flex-wrap:wrap;gap:26px;color:var(--mut);font-size:13px;padding:16px 0 26px;border-bottom:1px solid var(--line)}.trust span:before{content:"✓ ";color:var(--red)}
section.blk{padding:34px 0 8px}.blk h2{font-size:26px;letter-spacing:-.02em;margin:0 0 6px}.blk .sub{color:var(--mut);margin:0 0 20px}
.cats{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}.cats a{border:1px solid var(--line);border-radius:12px;padding:20px 8px;text-align:center;font-size:12.5px}.cats a i{display:block;font-style:normal;color:var(--red);font-size:22px;margin-bottom:10px}.cats a:hover{border-color:var(--red)}
@media(max-width:900px){.cats{grid-template-columns:repeat(4,1fr)}}
.head-row{display:flex;justify-content:space-between;align-items:end}
/* tarjetas */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.cards{grid-template-columns:1fr}}
.card{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;background:#fff}
.card .img{position:relative;display:block;aspect-ratio:16/9;overflow:hidden}.card .img img{width:100%;height:100%;object-fit:cover}
.card .img:after{content:"";position:absolute;inset:auto 0 0;height:55%;background:linear-gradient(transparent,rgba(0,0,0,.6))}
.badge{position:absolute;left:10px;top:10px;background:var(--red);color:#fff;font-size:11.5px;font-weight:700;border-radius:8px;padding:5px 9px;z-index:1}
.card .meta{position:absolute;left:10px;bottom:8px;color:#fff;font-size:12px;font-weight:700;z-index:1;line-height:1.5}
.card .body{padding:14px;display:flex;flex-direction:column;flex:1}.card h3{font-size:16px;line-height:1.3;margin:4px 0 6px}
.rate{font-size:12.5px;color:var(--mut)}.rate b{color:#b7791f}.by{font-size:12.5px;color:var(--mut);margin-bottom:12px}
.free{border-top:1px solid var(--line);padding-top:12px;margin-top:auto}.free strong{font-size:14px;display:block}.free small{color:var(--mut);font-size:11.5px}
.card .btn{margin-top:12px}
.zones{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.zones a{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:16/10.5;background:#344054;color:#fff;display:flex;align-items:flex-end;padding:14px;font-weight:700;font-size:17px}
.zones a img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.zones a span{position:relative;text-shadow:0 1px 6px rgba(0,0,0,.5)}.zones a:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.45))}.zones a span{z-index:1}
@media(max-width:900px){.zones{grid-template-columns:repeat(2,1fr)}}
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.how div{background:var(--soft);border-radius:var(--r);padding:20px}.how b{color:var(--red);font-size:22px}
@media(max-width:800px){.how{grid-template-columns:1fr}}
.cta{background:var(--pink);border-radius:18px;padding:30px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin:34px 0}.cta h3{font-size:24px;margin:10px 0}.cta p{color:var(--mut);margin:0}
@media(max-width:700px){.cta{flex-direction:column;align-items:flex-start}}
footer{border-top:1px solid var(--line);margin-top:40px}footer .wrap{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:26px 20px;font-size:13px;color:var(--mut)}footer b{color:var(--ink)}
/* catálogo */
.crumbs{font-size:13px;color:var(--mut);padding:22px 0 6px}.crumbs a{color:var(--ink);font-weight:600}
.layout{display:grid;grid-template-columns:240px 1fr;gap:26px;margin-top:22px}@media(max-width:900px){.layout{grid-template-columns:1fr}}
.filters{border:1px solid var(--line);border-radius:var(--r);padding:16px;align-self:start}.filters h4{font-size:13px;margin:14px 0 6px}.filters h4:first-child{margin-top:0}
.filters label{display:flex;gap:8px;align-items:center;font-size:14px;padding:3px 0;cursor:pointer}.filters a.clear{display:block;margin-top:14px;font-size:13px;color:var(--red);font-weight:600}
.res-cards{grid-template-columns:repeat(3,1fr)}@media(max-width:1100px){.res-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.res-cards{grid-template-columns:1fr}}
.count{color:var(--mut);font-size:14px;margin:0 0 14px}.empty{border:1px dashed var(--line);border-radius:var(--r);padding:40px;text-align:center;color:var(--mut)}
/* ficha */
.t-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.t-head h1{font-size:36px;letter-spacing:-.02em;margin:10px 0 8px}
.gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:420px;margin:22px 0;border-radius:18px;overflow:hidden}
.gallery img{width:100%;height:100%;object-fit:cover}.gallery img:first-child{grid-row:1/3}
@media(max-width:800px){.gallery{grid-template-columns:1fr;grid-template-rows:none;height:auto}.gallery img:not(:first-child){display:none}}
.t-grid{display:grid;grid-template-columns:1fr 320px;gap:30px}@media(max-width:950px){.t-grid{grid-template-columns:1fr}}
.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);font-size:14px;font-weight:700;overflow-x:auto}.tabs a{padding:12px 0;white-space:nowrap}.tabs a:first-child{color:var(--red);border-bottom:2px solid var(--red)}
.t-sec{padding:20px 0 6px;scroll-margin-top:90px}.t-sec h2{font-size:22px;margin:0 0 10px}.t-sec p,.t-sec li{color:#4b5563;line-height:1.65}
.two{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:600px){.two{grid-template-columns:1fr}}
.note{background:var(--soft);border-radius:10px;padding:12px 14px;font-size:13px;color:var(--mut)}
.box{border:1px solid var(--line);border-radius:var(--r);padding:20px;margin:16px 0}
.book{border:1px solid var(--line);border-radius:var(--r);padding:22px;position:sticky;top:96px;align-self:start;box-shadow:0 8px 24px rgba(20,20,40,.05)}
.book h3{font-size:22px;margin:0}.book .sub{color:var(--mut);font-size:13.5px;margin:6px 0 16px}
.step{display:grid;grid-template-columns:26px 1fr;gap:10px;margin-bottom:14px}.step>i{width:26px;height:26px;border-radius:50%;background:var(--pink);color:var(--red);font-style:normal;font-size:12px;font-weight:700;display:grid;place-items:center;margin-top:26px}
.days{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px}.days a{border:1px solid var(--line);border-radius:10px;text-align:center;padding:6px 2px;font-size:11px;line-height:1.35}.days a b{display:block;font-size:17px}.days a.on{background:var(--red);border-color:var(--red);color:#fff}
.slots{display:flex;flex-direction:column;gap:8px}.slots label{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer;font-weight:700}
.slots label small{font-weight:500;color:var(--mut);font-size:12px}.slots input{display:none}.slots input:checked+label{border-color:var(--red);background:#fff5f7;color:var(--red)}.slots .full{opacity:.5;cursor:not-allowed}
.ok{background:var(--soft);border-radius:10px;padding:10px 12px;font-size:12.5px;color:var(--mut);margin-top:12px;line-height:1.7}
.alert{background:#fff5f5;border:1px solid #fecaca;color:#991b1b;border-radius:10px;padding:12px 14px;margin:14px 0;font-size:14px}
.review{border-bottom:1px solid var(--line);padding:12px 0}.review b{font-size:14px}.review p{margin:6px 0 0}
details{border-bottom:1px solid var(--line);padding:12px 0}summary{font-weight:700;cursor:pointer}
/* reserva */
.co{display:grid;grid-template-columns:1fr 360px;gap:30px;padding:30px 0}@media(max-width:900px){.co{grid-template-columns:1fr}}
.co h1{font-size:40px;letter-spacing:-.03em;margin:0 0 8px;line-height:1.1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.form-grid .full{grid-column:1/-1}
@media(max-width:600px){.form-grid{grid-template-columns:1fr}}
.check{display:flex;gap:10px;font-size:13.5px;color:var(--mut);align-items:flex-start}.check input{margin-top:3px}
.sum dl{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;font-size:14px;margin:14px 0}.sum dt{color:var(--mut)}.sum dd{margin:0;font-weight:600;text-align:right}
.err{color:#b91c1c;font-size:12.5px;margin-top:4px}
.conf{max-width:640px;margin:40px auto;text-align:center}.conf .tick{width:64px;height:64px;border-radius:50%;background:#e8f7ee;color:#15803d;font-size:30px;display:grid;place-items:center;margin:0 auto 14px}
.conf .box{text-align:left}
/* idioma, menú inferior, galería, asistente (v3) */
.lang{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.lang a{padding:5px 8px;font-size:12.5px}.lang a.on{background:var(--ink);color:#fff}
.tabbar{display:none}
@media(max-width:900px){body{padding-bottom:64px}.tabbar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);z-index:30}.tabbar a{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 2px;font-size:11px;font-weight:600;color:var(--mut)}.tabbar a i{font-style:normal;font-size:18px}.tabbar a.on{color:var(--red)}}
.gallery{position:relative}.gallery img{cursor:zoom-in}.allphotos{position:absolute;right:14px;bottom:14px;background:#fff;border:0;border-radius:10px;padding:9px 13px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.15)}
@media(max-width:800px){.allphotos{display:block}}
.lightbox{display:none;position:fixed;inset:0;background:rgba(10,10,15,.92);z-index:50;align-items:center;justify-content:center}.lightbox.open{display:flex}
.lightbox img{max-width:92vw;max-height:86vh;border-radius:10px}.lightbox button{position:absolute;background:rgba(255,255,255,.15);color:#fff;border:0;font-size:34px;width:52px;height:52px;border-radius:50%;cursor:pointer}
.lightbox .x{top:18px;right:18px}.lightbox .nav-l{left:18px}.lightbox .nav-r{right:18px}
.wizard{border:1px solid var(--line);border-radius:18px;padding:26px;margin:10px 0 40px;scroll-margin-top:90px}
.wz-steps{display:flex;gap:10px;list-style:none;padding:0;margin:16px 0;counter-reset:s}.wz-steps li{flex:1;border-top:4px solid var(--line);padding-top:8px;font-size:13px;font-weight:700;color:var(--mut);counter-increment:s}.wz-steps li:before{content:counter(s) ". "}.wz-steps li.on{border-color:var(--red);color:var(--ink)}
.wz-page{display:none}.wz-page.on{display:block}.wz-nav{display:flex;justify-content:space-between;margin-top:18px}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chips label{display:flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:99px;padding:6px 12px;font-size:13.5px;font-weight:500;margin:0}

/* Web pública · octubre 2026. Conserva identidad y componentes del proyecto. */
@font-face{font-family:Inter;src:url('/fonts/filament/filament/inter/inter-latin-wght-normal-DIHYUR35.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--ink:#252735;--mut:#626876;--soft:#f7f7f8;--pink:#fff0f3}
body{line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #176e9a;outline-offset:4px}button:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{background:var(--red)}
[hidden]{display:none!important}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;top:8px;left:16px;padding:12px 20px;background:#fff;z-index:100;color:var(--red);border:2px solid var(--red);border-radius:8px}
main:focus{outline:none}h1,h2,h3{text-wrap:balance}p{overflow-wrap:anywhere}section[id],aside[id]{scroll-margin-top:100px}input[type=checkbox],input[type=radio]{accent-color:var(--red)}
.wrap{max-width:1200px;padding-inline:28px}.top .wrap{gap:24px;height:84px}.logo{flex-shrink:0;min-width:0;gap:9px}.logo b{flex:0 0 36px;width:36px;height:40px;border-radius:10px 10px 10px 3px;font-size:23px;letter-spacing:-2px}.logo small{font-size:8px;letter-spacing:.23em}.logo strong{font-size:20px;white-space:nowrap}.nav{gap:20px;font-size:13px}.nav>a[aria-current=page]{color:var(--red)}.nav .btn{padding:11px 14px;font-size:13px;white-space:nowrap}.nav .btn:hover{color:#fff}.menu-btn{cursor:pointer;min-height:44px;font-size:14px}
.hero{padding:52px 0 32px;gap:50px;grid-template-columns:1fr 1.15fr}.hero h1{font-size:clamp(42px,5.2vw,66px);line-height:1.06;letter-spacing:-.045em;margin:18px 0}.hero p{max-width:420px;font-size:17px;line-height:1.7}.hero .ph{aspect-ratio:1.3;border-radius:90px 22px 22px 22px;isolation:isolate;background:#f1f1f1}.hero .ph:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(15,25,35,.35));z-index:-1}.hero .ph span{max-width:calc(100% - 36px);padding:10px 15px;font-size:12px}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:26px}.text-link{font-size:14px;font-weight:700;color:var(--red);text-underline-offset:4px}.text-link:hover{text-decoration:underline}.hero .hero-note{font-size:12px;max-width:400px;margin:14px 0 0}
.search{padding:20px;gap:20px;border-radius:16px;box-shadow:0 10px 35px #23263508}.search>div{min-width:0}.search input,.search select{background:#fafafa;min-width:0}.search .btn{min-height:46px}.optional{font-size:11px;font-weight:400;color:var(--mut)}.trust{padding:20px 0 28px;gap:16px 30px}.trust span:before{margin-right:5px}
section.blk{padding-top:46px}.blk h2{font-size:clamp(23px,3vw,30px);letter-spacing:-.03em}.blk .sub{font-size:14px;line-height:1.6;margin-top:8px;margin-bottom:24px}.cats{gap:10px}.cats a{padding:16px 6px;background:#fff;transition:background .2s,border-color .2s}.cats a:hover{background:var(--pink)}.cats a i{font-size:24px;margin-bottom:7px}
.cards{gap:20px}.card{transition:box-shadow .2s,transform .2s}.card:hover{box-shadow:0 10px 26px #2228380d;transform:translateY(-3px)}.card .img{aspect-ratio:4/3;background:var(--soft)}.card .body{padding:17px}.card h3{font-size:17px;line-height:1.4;margin:7px 0}.card-zone{font-size:11px;letter-spacing:.02em;color:var(--mut)}.card-description{font-size:12px;line-height:1.65;color:var(--mut);margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card .by{font-size:11px;margin-bottom:18px}.card .rate{margin-top:8px}.card .btn{font-size:13px;min-height:44px}.card .free small{display:block;margin-top:4px;line-height:1.5}.badge{font-size:10px;padding:6px 10px;border-radius:5px}.card .meta{line-height:1.8;font-size:11px}
.zones a{font-size:16px;aspect-ratio:4/4.3;background:linear-gradient(135deg,#385d63,#183938)}.zones a:nth-last-child(-n+2){background:linear-gradient(140deg,#995a45,#452e39)}.zones a:hover img{transform:scale(1.035)}.zones img{transition:transform .25s}.how div{padding:26px;border:1px solid var(--line);background:#fafafa}.how b{font-size:14px;border-radius:50%;background:var(--pink);width:34px;height:34px;display:grid;place-items:center}.how h3{font-size:18px;margin:16px 0 8px}.how .sub{margin:0;font-size:13px}.cta{padding:36px;border-radius:18px;margin-top:44px}.cta p{font-size:14px}.cta .btn{flex-shrink:0}
.site-footer{margin-top:64px;background:#fafafa}.site-footer .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px;padding-block:42px}.footer-grid h2{font-size:12px;color:var(--ink);margin:0 0 14px}.footer-grid>div>a:not(.logo){display:block;font-size:12px;margin:9px 0}.footer-grid>div>a:hover{color:var(--red)}.footer-grid p{font-size:12px;margin:16px 0}.footer-grid small{font-size:11px}.footer-grid .logo strong{font-size:18px}
.page-title{font-size:clamp(28px,4vw,40px);letter-spacing:-.04em;line-height:1.2;margin:12px 0}.layout{grid-template-columns:218px minmax(0,1fr);gap:28px;margin-top:28px}.layout>div{min-width:0}.filters{padding:18px;background:#fafafa}.filters h4{font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin:24px 0 10px}.filter-choice{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:12px}.filter-choice>span{width:15px;height:15px;border:1px solid #b6bbc6;border-radius:50%;flex:0 0 15px;background:#fff}.filter-choice.selected{font-weight:700;color:var(--red)}.filter-choice.selected>span{border:4px solid var(--red)}.filter-choice:hover{color:var(--red)}.filter-toggle{display:none}.active-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.active-filters a{font-size:12px;padding:5px 10px;background:var(--pink);border:1px solid #f5ccd6;border-radius:30px;color:var(--red)}.active-filters span{margin-left:5px}.count{font-weight:700;color:var(--ink);margin:0 0 4px}.search-note{font-size:12px;color:var(--mut);margin:0 0 20px}.empty{background:#fafafa;line-height:1.8;padding:36px 22px}
.t-head h1{font-size:clamp(28px,4vw,40px);line-height:1.2}.tour-actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0;padding-top:12px}.tour-actions .btn{font-size:13px}.gallery{height:430px;gap:8px;background:var(--soft)}.gallery-item{min-height:0;overflow:hidden;display:block}.gallery-item:first-child{grid-row:1/3}.gallery .gallery-item img{height:100%;width:100%;object-fit:cover;transition:transform .25s}.gallery-item:hover img{transform:scale(1.02)}.gallery-1{grid-template-columns:1fr}.gallery-2{grid-template-columns:1.3fr 1fr;grid-template-rows:1fr}.gallery-2 .gallery-item:first-child{grid-row:auto}.allphotos{display:none}.js .allphotos{display:block}.photo-dialog:not([open]){display:none}.photo-dialog{width:96vw;max-width:1400px;height:92dvh;max-height:960px;border:0;padding:64px 64px 28px;background:#151821;color:white;border-radius:16px;overflow:hidden}.photo-dialog::backdrop{background:rgba(10,12,18,.88)}.photo-dialog[open]{display:flex;align-items:center;justify-content:center}.photo-dialog img{max-height:100%;max-width:100%;object-fit:contain}.photo-dialog button{border:1px solid #ffffff40;background:#ffffff15;color:white;cursor:pointer;border-radius:50%;width:44px;height:44px;font-size:30px;display:grid;place-items:center;line-height:1}.photo-toolbar{position:absolute;top:12px;left:22px;right:16px;display:flex;align-items:center;justify-content:space-between;font-size:13px}.photo-prev,.photo-next{position:absolute;top:50%}.photo-prev{left:10px}.photo-next{right:10px}body.photo-open{overflow:hidden}
.t-grid{grid-template-columns:minmax(0,1fr) 350px;gap:42px}.tabs{gap:22px;font-size:13px}.tabs a{padding:15px 0}.t-sec{padding:28px 0 6px}.t-sec h2{font-size:23px}.t-sec p,.t-sec li{font-size:14px;line-height:1.85}.t-sec h3{font-size:16px}.book{top:104px;padding:24px;scroll-margin-top:100px}.book .sub{font-size:12px}.book form+form{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.book .btn{font-size:13px}.slot-fieldset{border:0;margin:0;padding:0;min-width:0}.slot-fieldset legend{font-weight:700;font-size:13px;margin-bottom:8px}.slots{position:relative}.slots input{display:block;position:absolute;width:1px;height:1px;opacity:0}.slots input:focus-visible+label{outline:3px solid #176e9a;outline-offset:2px}.slots label{font-size:13px;gap:8px;flex-wrap:wrap}.slots label small{font-size:10px}.slots .full{opacity:1;background:#f6f6f6;color:#787e88}.days{gap:5px}.days a{font-size:10px}.step>div{min-width:0}.note{line-height:1.75}.book .ok{font-size:11px}
.co{grid-template-columns:minmax(0,1fr) 360px;gap:55px;padding-block:36px}.co h1{font-size:clamp(30px,4vw,44px)}.booking-progress{display:flex;gap:16px;list-style:none;padding:0;margin:0 0 26px;font-size:11px;color:var(--mut);flex-wrap:wrap}.booking-progress li{padding-bottom:8px;border-bottom:2px solid var(--line)}.booking-progress [aria-current]{color:var(--red);border-color:var(--red);font-weight:700}.sum{align-self:start;margin:0;padding:22px;position:sticky;top:108px}.summary-photo{width:100%;height:170px;object-fit:cover;border-radius:10px;margin-bottom:18px}.sum dl{font-size:13px;gap:12px}.form-grid{gap:20px 16px}.field input,.field select{min-height:46px}.check{line-height:1.6}.check input{flex-shrink:0;width:17px;height:17px}.check input[type=checkbox]{accent-color:var(--red)}.form-grid .btn{min-height:48px}.alert ul{padding-left:20px;margin-bottom:0}.co .by{font-size:14px}
.guide-page{padding-bottom:30px}.guide-intro{max-width:730px;padding:38px 0}.guide-intro h1{font-size:clamp(32px,4.7vw,52px);line-height:1.12;letter-spacing:-.04em;margin:18px 0}.guide-intro p{font-size:17px;color:var(--mut);line-height:1.8}.guide-columns{display:grid;grid-template-columns:minmax(0,1.6fr) 1fr;gap:60px;margin-top:14px}.guide-columns h2{font-size:23px}.faq-list details{padding:20px 0}.faq-list summary{font-size:15px}.faq-list p{font-size:14px;line-height:1.8;color:var(--mut)}.guide-note{align-self:start;background:var(--pink);padding:28px;border-radius:16px}.guide-note ul{padding-left:18px;color:var(--mut);font-size:14px;line-height:1.8}.guide-note li{margin:14px 0}.meeting-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:30px}.meeting-card{border:1px solid var(--line);border-radius:16px;overflow:hidden}.meeting-card img{height:190px;width:100%;object-fit:cover}.meeting-card>div{padding:24px}.meeting-card h2{font-size:21px;margin:10px 0 18px}.meeting-card h3{font-size:12px;color:var(--mut);margin:0}.meeting-card p{font-size:14px;line-height:1.8;margin:8px 0 20px}
@media(min-width:901px) and (max-width:1100px){.top .wrap{gap:16px}.nav{gap:12px;font-size:12px}.nav .btn{font-size:12px;padding:10px}.logo strong{font-size:18px}.logo small{font-size:7px}.logo b{flex-basis:32px;width:32px}.hero{gap:30px}}
@media(max-width:1000px){.t-grid{grid-template-columns:minmax(0,1fr) 310px;gap:26px}.hero{gap:26px}.hero .ph{border-top-left-radius:65px}.layout{gap:20px;grid-template-columns:200px minmax(0,1fr)}.co{gap:28px;grid-template-columns:minmax(0,1fr) 310px}.book{padding:18px}.site-footer .footer-grid{gap:24px}}
@media(max-width:900px){.wrap{padding-inline:20px}.top .wrap{height:72px}.nav{top:72px;margin:0;padding:14px 20px 22px;gap:4px;max-height:calc(100dvh - 150px);overflow:auto;box-shadow:0 16px 24px #2026340d}.nav>a{width:100%;padding:11px 4px;font-size:14px}.nav .lang{margin:10px 0}.nav .btn{width:auto;padding:12px 18px;font-size:14px}.top .logo strong{font-size:20px}.menu-btn{display:block}.hero{grid-template-columns:1fr 1fr;padding-top:32px;gap:24px}.hero h1{font-size:48px}.hero p{font-size:15px}.hero .ph{aspect-ratio:3/4}.hero .ph span{font-size:10px;left:12px;bottom:12px;max-width:calc(100% - 24px);padding:8px 10px}.hero-actions{gap:14px}.hero-actions .btn{font-size:13px}.hero-actions .text-link{font-size:13px}.trust{font-size:11px;gap:12px 20px}.layout{grid-template-columns:1fr;gap:18px}.filters{padding:16px}.js .filter-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:0;padding:0;min-height:24px;font-weight:700;color:var(--ink);font-size:14px;cursor:pointer}.js #filter-options{display:none;padding-top:20px}.js .filters.expanded #filter-options{display:block}.filter-choice{padding:8px 0;font-size:14px}.res-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.t-grid{grid-template-columns:1fr}.book{position:static;grid-row:1;margin-bottom:12px;max-width:none}.book .days{grid-template-columns:repeat(4,1fr)}.book .days a{padding:9px}.book form{max-width:560px}.book .step{grid-template-columns:26px 1fr}.tour-actions{padding:0}.t-head{display:block}.gallery{height:340px;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}.gallery-1{grid-template-columns:1fr}.gallery-2{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.gallery .gallery-item img{display:block}.co{grid-template-columns:1fr}.sum{position:static}.co>.sum{grid-row:1;display:grid;grid-template-columns:120px 1fr;column-gap:20px}.sum .summary-photo{grid-row:1/5;height:140px;margin:0}.sum>dl{grid-column:2}.sum>p,.sum>a{grid-column:1/-1}.site-footer .footer-grid{grid-template-columns:1.3fr 1fr;row-gap:30px}.zones{grid-template-columns:repeat(3,1fr)}.zones a{aspect-ratio:4/3}.tabbar{padding-bottom:env(safe-area-inset-bottom);min-height:64px}.tabbar a{min-height:60px;justify-content:center}body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.guide-columns{gap:28px;grid-template-columns:1.3fr 1fr}}
@media(max-width:600px){.wrap{padding-inline:18px}.top .wrap{height:68px}.nav{top:68px}.hero{grid-template-columns:1fr;padding:28px 0 22px;gap:24px}.hero h1{font-size:48px}.hero p{font-size:15px;max-width:none;margin:12px 0}.hero .ph{aspect-ratio:16/10;border-radius:55px 16px 16px 16px}.hero .ph span{font-size:11px;padding:9px 12px}.hero-actions{margin-top:20px;gap:22px}.hero .hero-note{font-size:11px;margin-top:12px}.eyebrow{font-size:10px;letter-spacing:.13em}.search{padding:16px;gap:14px 12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.search>div:first-of-type{grid-column:1/-1}.search label{font-size:12px}.search input,.search select{font-size:16px;padding:0 9px}.search .btn{width:100%;font-size:14px}.trust{justify-content:flex-start;display:grid;grid-template-columns:1fr 1fr;gap:12px 8px;padding:18px 0 22px;font-size:10px}section.blk{padding-top:32px}.blk h2{font-size:24px}.blk .sub{font-size:13px;margin-bottom:20px}.cats{gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.cats a{font-size:10px;line-height:1.35;padding:14px 3px;overflow-wrap:anywhere}.cats a i{font-size:23px}.head-row{display:block}.head-row>a{display:inline-block;font-size:13px}.cards,.res-cards{grid-template-columns:1fr;gap:18px}.card .img{aspect-ratio:16/10}.card .body{padding:20px}.card h3{font-size:20px}.card-description{font-size:13px}.card .btn{font-size:14px}.card .meta{font-size:12px}.card .by{font-size:12px}.zones{grid-template-columns:1fr 1fr;gap:10px}.zones a{font-size:14px;padding:12px;aspect-ratio:4/3}.how{gap:10px}.how div{padding:22px}.cta{padding:24px;gap:22px;margin:32px 0}.cta h3{font-size:23px}.cta .btn{width:100%}.site-footer{margin-top:36px}.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:28px 18px;padding-block:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid h2{line-height:1.5}.crumbs{font-size:11px;padding-top:20px}.layout{margin-top:18px}.t-head h1{font-size:30px}.t-head .by{font-size:12px}.tour-actions{margin-top:15px}.gallery{height:260px;margin-block:20px;grid-template-columns:1fr}.gallery-item:not(:first-child){display:none}.gallery .gallery-item:first-child{grid-row:1/-1}.allphotos{font-size:11px;bottom:10px;right:10px}.photo-dialog{padding:64px 44px 24px;border-radius:10px;width:100vw;height:85dvh}.photo-dialog button{width:36px;height:36px;font-size:28px}.photo-prev{left:4px}.photo-next{right:4px}.book{padding:20px;border-color:#edcbd3}.book h3{font-size:23px}.book .sub{font-size:12px}.tabs{font-size:12px;gap:18px}.t-sec h2{font-size:22px}.t-sec{padding-top:24px}.co{padding-top:24px;gap:24px}.co>.sum{padding:16px;grid-template-columns:85px 1fr;gap:0 14px}.sum .summary-photo{height:110px}.sum h3{font-size:15px}.sum dl{gap:7px 10px;font-size:11px}.sum dd{overflow-wrap:anywhere}.sum .by{font-size:12px}.co h1{font-size:34px}.booking-progress{gap:12px;font-size:10px}.form-grid{gap:18px}.field input,.field select,.field textarea{font-size:16px}.guide-intro{padding:28px 0}.guide-intro h1{font-size:36px}.guide-intro p{font-size:15px}.guide-columns,.meeting-grid{grid-template-columns:1fr}.guide-columns{gap:24px}.meeting-card img{height:200px}.meeting-card>div{padding:20px}.wizard{padding:20px}.wz-steps{gap:7px}.wz-steps li{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.card:hover{transform:none}}
@media print{.top,.tabbar,.site-footer,.btn,.nav{display:none!important}body{padding:0}.wrap{max-width:100%;padding:0}.conf{margin:0;max-width:none}}

/* Blog y artículo (recuperado de la versión del 19/10 mañana) */
.page-hero{padding:60px 0 30px;max-width:780px}
.page-hero h1{font-size:clamp(35px,4.5vw,56px);letter-spacing:-.05em;line-height:1.11;margin:15px 0}
.page-hero p{font-size:17px;line-height:1.75;color:var(--mut)}
.editorial{display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:48px;margin:12px 0 50px}
.article-copy{font-size:16px;line-height:1.85;color:#394655}
.article-copy h2{font-size:26px;line-height:1.25;color:var(--ink);margin:39px 0 13px;letter-spacing:-.03em}
.article-copy h3{font-size:18px;margin:28px 0 10px;color:var(--ink)}
.article-copy li{margin-bottom:9px}
.article-copy p{margin:0 0 16px}
.aside-panel{position:sticky;top:108px;background:var(--soft);border:1px solid var(--line);padding:24px;border-radius:18px}
.aside-panel h3{font-size:20px;letter-spacing:-.03em;margin:0 0 10px}
.aside-panel p{font-size:13px;line-height:1.75;color:var(--mut)}
.aside-panel .btn{font-size:13px}
.blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:18px 0 60px}
.blog-entry{border:1px solid var(--line);border-radius:18px;overflow:hidden}
.blog-entry img{height:240px;width:100%;object-fit:cover}
.blog-entry-content{padding:22px}
.blog-entry h2{margin:8px 0;font-size:22px;line-height:1.25;letter-spacing:-.03em}
.blog-entry p{color:var(--mut);font-size:14px;line-height:1.7}
.blog-entry .text-link{font-size:13px}
@media(max-width:900px){.editorial{grid-template-columns:1fr}.aside-panel{position:static}}
@media(max-width:700px){.page-hero{padding:36px 0 12px}.page-hero h1{font-size:36px}.page-hero p{font-size:15px}.blog-grid{grid-template-columns:1fr}}
