/* ── Arkham Escape Rooms v2 · Refresco 2026 r2 ── */
:root{
  --naranja:#ec6309;
  --naranja-claro:#ff8a3c;
  --naranja-osc:#b54a05;
  --fondo:#1b1512;
  --fondo-2:#221a15;
  --panel:#2a201a;
  --panel-2:#332720;
  --borde:#3e2f26;
  --borde-claro:#54402f;
  --texto:#f7f1ea;
  --texto-suave:#c4b6a8;
  --display:"Cinzel",serif;
  --cuerpo:"Inter","Inter Fallback",system-ui,sans-serif;
  --radio:16px;
  --sombra:0 24px 60px rgba(0,0,0,.4);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{
  background:
    radial-gradient(ellipse 90% 60% at 70% -10%,rgba(236,99,9,.10),transparent 60%),
    radial-gradient(ellipse 70% 50% at 10% 100%,rgba(236,99,9,.05),transparent 60%),
    linear-gradient(160deg,var(--fondo-2) 0%,var(--fondo) 45%,#16100d 100%);
  background-attachment:fixed;
  color:var(--texto);font-family:var(--cuerpo);line-height:1.7;font-size:16.5px;
  -webkit-font-smoothing:antialiased;min-height:100vh;
}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
img{max-width:100%;height:auto;display:block}
a{color:var(--naranja-claro);text-decoration:none;transition:color .2s}
a:hover{color:#ffb37a}
.skip{position:absolute;left:-9999px}
.skip:focus{left:10px;top:10px;background:var(--naranja);color:#fff;padding:8px 14px;z-index:99;border-radius:8px}

/* ── Barra superior ── */
.topbar{background:linear-gradient(90deg,var(--naranja-osc),var(--naranja));color:#fff;font-size:.8rem;padding:7px 0;font-weight:500}
.topbar a{color:#fff;font-weight:600}
.topbar-in{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.topbar-right{display:flex;gap:18px}

/* ── Cabecera ── */
.site-head{border-bottom:1px solid var(--borde);background:rgba(27,21,18,.82);position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}
.head-in{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:18px}
.logo img{width:190px;height:auto}
.nav{display:flex;gap:14px;align-items:center}
.nav-links{display:flex;gap:30px;align-items:center}
.nav-links a{color:var(--texto);font-size:.93rem;font-weight:500;letter-spacing:.02em;position:relative}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--naranja);transition:width .25s}
.nav-links a:hover::after{width:100%}
.nav-links a:hover{color:var(--texto)}
.nav-cta{background:linear-gradient(135deg,var(--naranja),var(--naranja-osc));color:#fff !important;padding:11px 26px;border-radius:999px;font-weight:600;font-size:.93rem;box-shadow:0 6px 22px rgba(236,99,9,.35);transition:transform .2s,box-shadow .2s;white-space:nowrap}
.nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(236,99,9,.5)}

/* ── Hero ── */
.hero{text-align:center;padding:90px 0 36px;position:relative}
.hero h1{font-family:var(--display);font-size:clamp(2rem,5vw,3.6rem);font-weight:600;letter-spacing:.01em;line-height:1.18}
.hero p{max-width:760px;margin:22px auto 0;color:var(--texto-suave);font-size:1.08rem}
.hero .stars{color:var(--naranja-claro);margin-top:18px;font-size:.92rem;font-weight:600;letter-spacing:.04em}
.hero-ctas{margin-top:34px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* ── Botones ── */
.btn{display:inline-block;background:linear-gradient(135deg,var(--naranja),var(--naranja-osc));color:#fff;padding:15px 36px;border-radius:999px;font-family:var(--cuerpo);font-weight:600;font-size:.98rem;letter-spacing:.02em;box-shadow:0 8px 26px rgba(236,99,9,.32);transition:transform .2s,box-shadow .2s;border:none;cursor:pointer}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(236,99,9,.48);color:#fff}
.btn-line{background:transparent;border:1.5px solid var(--borde-claro);box-shadow:none;color:var(--texto)}
.btn-line:hover{border-color:var(--naranja);color:var(--naranja-claro);box-shadow:none}
.btn-lg{padding:17px 44px;font-size:1.05rem}

/* ── Widget reservas ── */
.booking{padding:30px 0 70px}
.booking iframe{border:none;width:100%;min-height:400px;border-radius:var(--radio);background:transparent}

/* ── Secciones ── */
.section{padding:90px 0}
.section-alt{background:linear-gradient(180deg,rgba(42,32,26,.55),rgba(34,26,21,.35));border-top:1px solid var(--borde);border-bottom:1px solid var(--borde)}
.label{display:inline-block;color:var(--naranja-claro);font-size:.78rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;margin-bottom:14px}
.sec-head{text-align:center}
.sec-title{font-family:var(--display);font-size:clamp(1.8rem,4vw,2.7rem);font-weight:600;letter-spacing:.01em;margin-bottom:10px;line-height:1.25;text-align:center}
.sec-sub{text-align:center;color:var(--texto-suave);margin:0 auto 50px;max-width:680px}

/* ── Salas ── */
.salas{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.sala{background:linear-gradient(180deg,var(--panel),var(--fondo-2));border:1px solid var(--borde);border-radius:var(--radio);overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.sala:hover{transform:translateY(-8px);box-shadow:var(--sombra);border-color:var(--borde-claro)}
.sala .img-wrap{overflow:hidden}
.sala img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s}
.sala:hover img{transform:scale(1.045)}
.sala-body{padding:30px}
.sala h3{font-family:var(--display);font-size:1.7rem;font-weight:600;margin-bottom:12px}
.sala h3.script{font-family:var(--display);font-size:1.7rem;font-weight:600}
.sala p{color:var(--texto-suave);font-size:.95rem}
.sala-meta{display:flex;gap:18px;margin-top:18px;color:var(--naranja-claro);font-size:.85rem;font-weight:600;flex-wrap:wrap}
.sala .btn{margin-top:24px}

/* ── Hall escape ── */
.hall{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:start}
.hall .img-wrap{overflow:hidden;border-radius:var(--radio);border:1px solid var(--borde)}
.hall img{transition:transform .5s}
.hall .img-wrap:hover img{transform:scale(1.04)}
.hall h2{font-family:var(--display);font-size:clamp(1.9rem,4vw,2.8rem);font-weight:600;line-height:1.2}
.hall .sub{color:var(--naranja-claro);font-weight:600;font-size:1.05rem;margin:10px 0 18px;letter-spacing:.03em}
.hall p{color:var(--texto-suave);margin-bottom:16px}

/* ── Ventajas ── */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;text-align:center}
.feature{background:linear-gradient(180deg,var(--panel),var(--fondo-2));border:1px solid var(--borde);border-radius:var(--radio);padding:38px 28px;transition:transform .3s,border-color .3s}
.feature:hover{transform:translateY(-5px);border-color:var(--borde-claro)}
.feature h3{font-family:var(--display);font-size:1.12rem;font-weight:600;margin-bottom:12px;color:var(--naranja-claro)}
.feature p{color:var(--texto-suave);font-size:.92rem}

/* ── Experiencias Temáticas ── */
.tematicas-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
@media(min-width:921px){.tematicas-grid.tem-3{grid-template-columns:repeat(3,1fr)}}
.tematica{background:linear-gradient(180deg,var(--panel),var(--fondo-2));border:1px solid var(--borde);border-radius:var(--radio);overflow:hidden;transition:transform .3s,box-shadow .3s}
.tematica:hover{transform:translateY(-6px);box-shadow:var(--sombra)}
.tematica img{width:100%;aspect-ratio:1/1;object-fit:cover}
.tematica-body{padding:20px 22px}
.tematica h3{font-family:var(--display);font-size:1.18rem;font-weight:600;margin-bottom:8px}
.tematica p{color:var(--texto-suave);font-size:.86rem}

/* ── Reseñas ── */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.review{background:linear-gradient(180deg,var(--panel),var(--fondo-2));border:1px solid var(--borde);border-radius:var(--radio);padding:32px 28px;position:relative}
.review::before{content:"\201C";position:absolute;top:6px;left:20px;font-family:var(--display);font-size:4.4rem;color:var(--naranja);opacity:.3;line-height:1}
.review p{font-size:.94rem;color:var(--texto-suave);position:relative}
.review footer{margin-top:16px;color:var(--naranja-claro);font-size:.88rem;font-weight:600}

/* ── Blog ── */
.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.post-card{background:linear-gradient(180deg,var(--panel),var(--fondo-2));border:1px solid var(--borde);border-radius:var(--radio);overflow:hidden;transition:transform .3s,box-shadow .3s}
.post-card:hover{transform:translateY(-6px);box-shadow:var(--sombra)}
.post-card img{width:100%;aspect-ratio:16/9;object-fit:cover}
.post-body{padding:24px}
.post-body time{color:var(--naranja-claro);font-size:.78rem;font-weight:600;letter-spacing:.06em}
.post-body h2{font-size:1.08rem;margin:10px 0 10px;font-weight:600;line-height:1.45}
.post-body h2 a{color:var(--texto)}
.post-body h2 a:hover{color:var(--naranja-claro)}
.post-body p{color:var(--texto-suave);font-size:.88rem}
.post-detalle{max-width:800px;padding-left:24px;padding-right:24px}
.post-detalle h1{font-family:var(--display);font-size:clamp(1.6rem,4vw,2.3rem);font-weight:600;margin:16px 0 8px;line-height:1.3}
.post-detalle time{color:var(--naranja-claro);font-size:.88rem;font-weight:600}
.post-hero{border-radius:var(--radio);margin:26px 0;border:1px solid var(--borde)}
.post-contenido{color:var(--texto-suave)}
.post-contenido p{margin-bottom:17px}
.post-contenido h2,.post-contenido h3{font-family:var(--display);color:var(--texto);font-weight:600;margin:30px 0 14px}
.post-contenido img{border-radius:12px;margin:20px 0}
.post-contenido a{text-decoration:underline}

/* ── Ubicación ── */
.loc{display:grid;grid-template-columns:1fr 1.2fr;gap:46px;align-items:center}
.loc .sec-title{text-align:left}
.loc-line{margin-bottom:13px;color:var(--texto-suave)}
.loc iframe{width:100%;height:360px;border:none;border-radius:var(--radio);border:1px solid var(--borde)}

/* ── Pie ── */
.site-foot{border-top:1px solid var(--borde);background:rgba(22,16,13,.85);padding:54px 0;margin-top:50px;font-size:.9rem;color:var(--texto-suave)}
.foot-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.foot-grid p{margin-top:14px}
.proto-tag{color:#6b5a4a;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}

/* ── Animación de entrada ── */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}

/* ── Menú móvil ── */
.menu-btn{display:none;background:none;border:1px solid var(--borde-claro);border-radius:10px;width:46px;height:42px;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0}
.menu-btn span{display:block;width:22px;height:2px;background:var(--texto);transition:transform .25s,opacity .25s}
.menu-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn.open span:nth-child(2){opacity:0}
.menu-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:920px){
  .head-in{padding:10px 16px}
  .logo img{width:138px}
  .nav{gap:10px}
  .nav-cta{padding:10px 18px;font-size:.88rem}
  .menu-btn{display:flex}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(27,21,18,.98);border-bottom:1px solid var(--borde);flex-direction:column;gap:0;padding:8px 0;backdrop-filter:blur(12px)}
  .nav-links.open{display:flex}
  .nav-links a{padding:16px 26px;width:100%;border-bottom:1px solid var(--borde);font-size:1.02rem}
  .nav-links a::after{display:none}
  .nav-links a:last-child{border-bottom:none}
  .salas,.features,.reviews,.hall,.loc,.foot-grid,.posts-grid{grid-template-columns:1fr}
  .tematicas-grid{grid-template-columns:1fr 1fr}
  .section{padding:56px 0}
  .hero{padding:56px 0 24px}
}
@media(max-width:520px){.tematicas-grid{grid-template-columns:1fr}}

/* Banner de cookies */
.cookie-banner{position:fixed;bottom:16px;left:16px;right:16px;max-width:640px;margin:0 auto;background:var(--panel-2);border:1px solid var(--borde-claro);border-radius:var(--radio);padding:20px 24px;z-index:100;box-shadow:0 18px 50px rgba(0,0,0,.55);display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.cookie-banner p{margin:0;flex:1;min-width:240px;font-size:.88rem;color:var(--texto-suave)}
.cookie-banner a{text-decoration:underline}
.cookie-botones{display:flex;gap:10px}
.cookie-banner .btn{padding:10px 22px;font-size:.88rem}

/* Formulario contacto */
.quote-form{background:linear-gradient(180deg,var(--panel),var(--fondo-2));border:1px solid var(--borde);border-radius:var(--radio)}
.ct-label{display:block;font-size:.82rem;color:var(--texto-suave);margin-bottom:14px;font-weight:500}
.ct-label input,.ct-label textarea{width:100%;box-sizing:border-box;background:var(--fondo);border:1px solid var(--borde);border-radius:10px;color:var(--texto);padding:12px 14px;font:inherit;margin-top:6px;transition:border-color .2s,box-shadow .2s}
.ct-label input:focus,.ct-label textarea:focus{outline:none;border-color:var(--naranja);box-shadow:0 0 0 4px rgba(236,99,9,.14)}
.ct-label textarea{resize:vertical}

/* Botones de contacto */
.ct-acciones{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 14px}
@media(max-width:920px){
  .ct-acciones{justify-content:center}
  .ct-acciones .btn{flex:1 1 100%;max-width:340px;text-align:center}
}

/* Topbar centrada en movil */
@media(max-width:920px){
  .topbar-in{justify-content:center;text-align:center;gap:4px 18px}
  .topbar-right{justify-content:center;flex-wrap:wrap}
}

/* Precios: 2 columnas en movil */
@media(max-width:920px){.features.features-precios{grid-template-columns:1fr 1fr;gap:14px}.features.features-precios .feature{padding:22px 14px}}
@media(max-width:380px){.features.features-precios .feature{padding:18px 10px}.features.features-precios .feature h3{font-size:1rem}}

/* === Arkham self-hosted fonts (Cinzel+Inter, latin/latin-ext) === */
@font-face{font-family:'Cinzel';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/cinzel-500-latin-ext.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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/cinzel-500-latin.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:'Cinzel';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/cinzel-600-latin-ext.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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/cinzel-600-latin.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:'Cinzel';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/cinzel-700-latin-ext.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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Cinzel';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/cinzel-700-latin.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:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-400-latin-ext.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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-400-latin.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:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/inter-500-latin-ext.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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/inter-500-latin.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:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/inter-600-latin-ext.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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/inter-600-latin.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:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/inter-700-latin-ext.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-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/inter-700-latin.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;}

/* Fallback con metricas ajustadas para eliminar CLS por intercambio de fuente */
@font-face{font-family:'Inter Fallback';src:local('Arial');ascent-override:90.00%;descent-override:22.43%;line-gap-override:0.00%;size-adjust:107.12%;}
