@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-300i-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-300i-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: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-400i-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-400i-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: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-300-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-300-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: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/cormorant-garamond-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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/jetbrains-mono-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/jetbrains-mono-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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/jetbrains-mono-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/jetbrains-mono-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: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/manrope-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/manrope-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: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/manrope-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/manrope-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: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/manrope-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/manrope-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;
}
:root{--ink:#16140F;--paper:#F4F0E8;--paper2:#FCFAF5;--laton:#C8A25C;--brass:#86672A;
--serif:"Cormorant Garamond",Garamond,serif;--sans:Manrope,system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace;--e:cubic-bezier(.2,.7,.1,1);color-scheme:light}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:#E6ECEE;color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}button:disabled{cursor:default}
h1,h2,h3,p{margin:0}
.mono{font:400 10.5px/1.5 var(--mono);letter-spacing:.09em;text-transform:uppercase}
.dot{color:var(--laton)}
:focus-visible{outline:2px solid var(--laton);outline-offset:3px}
/* cielo y luz */
#sky{position:fixed;inset:0;z-index:-2;background:linear-gradient(180deg,#CFDCE5,#F3E9DB 70%)}
#tint{position:fixed;inset:0;z-index:6;pointer-events:none;background:#000;opacity:0}
#wx{position:fixed;inset:0;z-index:7;pointer-events:none;width:100%;height:100%}
/* mundo */
#page{position:relative}
#world{position:absolute;left:0;top:0;width:100%;z-index:0;overflow:hidden;overflow:clip}
#world svg{position:absolute;left:0;top:0;display:block}
#skwrap,#colwrap{position:absolute;left:0;top:0;width:100%}
#skwrap{height:100%}
#colwrap{overflow:hidden;overflow:clip;will-change:height;-webkit-mask-image:linear-gradient(#000 calc(100% - 80px),transparent);mask-image:linear-gradient(#000 calc(100% - 80px),transparent)}
.sprs{position:absolute;inset:0}
.spr{position:absolute;display:block;height:auto;user-select:none;-webkit-user-drag:none}
#skwrap .spr{opacity:.9;mix-blend-mode:multiply}
.stn{pointer-events:auto;cursor:pointer;transform-origin:50% 92%;filter:drop-shadow(0 18px 14px rgba(40,32,18,.18))}

.burst{position:absolute;z-index:4;pointer-events:none;width:0;height:0}
.burst i{position:absolute;left:-5px;top:-5px;width:10px;height:10px;border-radius:50%}
/* secciones */
.st{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px);align-items:center;max-width:1280px;margin:0 auto;padding:12vh clamp(20px,4vw,56px)}
.st{pointer-events:none}.st .sheet,.st .txt{pointer-events:auto}
.st .art{height:78vh;min-height:520px;position:relative}
.st.r .art{order:2}
.hero{text-align:left;grid-template-columns:1.1fr .9fr;min-height:100vh;padding-top:96px;padding-bottom:4vh;align-items:end}
.hero .txt{max-width:640px;padding-bottom:9vh}
.hero .art{height:76vh;min-height:480px}
.hero .svcs,.hero .cue{justify-content:flex-start}
.hero .sub{margin-left:0}
.hero .k{color:var(--brass)}
.hero h1{font:300 clamp(48px,7.4vw,118px)/.9 var(--serif);letter-spacing:-.035em;margin-top:18px}
.hero h1 em{font-weight:300}
.hero h1 .ln{display:block;overflow:hidden;padding-bottom:.08em}
.hero h1 .ln>span{display:block;transform:translateY(105%);animation:up 1.1s var(--e) forwards}
.hero h1 .ln:nth-child(2)>span{animation-delay:.15s}
@keyframes up{to{transform:none}}
.hero .sub{max-width:560px;margin:22px auto 0;color:#3d3a34;font-size:17px;opacity:0;animation:fade .8s .6s forwards}
.who{display:inline-flex;align-items:center;gap:10px;margin-top:18px;font-size:14px;color:#3d3a34;opacity:0;animation:fade .8s .8s forwards}
.who img{width:52px;height:52px;flex:none;border-radius:50%;object-fit:cover;border:2px solid #FCFAF5;box-shadow:0 0 0 1.5px var(--laton),0 8px 18px -10px rgba(30,24,12,.5)}
.svcs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:24px;opacity:0;animation:fade .8s 1s forwards}
.svc{display:inline-flex;align-items:center;gap:10px;padding:10px 16px 10px 10px;border-radius:999px;background:rgba(252,250,245,.92);border:1px solid rgba(22,20,15,.14);text-decoration:none;font:500 14px var(--sans);box-shadow:0 8px 20px -14px rgba(0,0,0,.4);transition:transform .25s var(--e)}
.svc:hover{transform:translateY(-2px)}
.svc b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--paper);font:500 10px var(--mono)}
.cue{display:inline-flex;flex-direction:column;align-items:center;gap:6px;margin-top:22px;color:#4a463e;opacity:0;animation:fade .8s 1.3s forwards}
.cue i{width:22px;height:34px;border:1.5px solid var(--ink);border-radius:12px;position:relative}
.cue i::after{content:"";position:absolute;left:50%;top:6px;width:4px;height:7px;margin-left:-2px;border-radius:2px;background:var(--laton);animation:wheel 1.6s infinite}
@keyframes wheel{0%{transform:none;opacity:1}100%{transform:translateY(12px);opacity:0}}
@keyframes fade{to{opacity:1}}
/* hoja */
.sheet{position:relative;background:var(--paper2);background-image:linear-gradient(rgba(70,110,160,.07) 1px,transparent 1px);background-size:100% 28px;background-position:0 14px;
 border-radius:4px 4px 12px 12px;padding:36px 30px 28px 42px;box-shadow:0 1px 0 rgba(22,20,15,.08),0 34px 60px -30px rgba(30,24,12,.55),0 6px 14px -8px rgba(30,24,12,.2);transform:rotate(-.5deg) translateY(30px);opacity:0;transition:transform .9s var(--e),opacity .7s}
.st.r .sheet{transform:rotate(.6deg) translateY(30px)}
.sheet.in{opacity:1;transform:rotate(-.5deg)}.st.r .sheet.in{transform:rotate(.6deg)}
.sheet::before{content:"";position:absolute;left:24px;top:0;bottom:0;width:1px;background:linear-gradient(var(--laton) 0 var(--rp,0%),rgba(194,57,43,.25) var(--rp,0%));transition:width .3s}
.sheet.reading::before{width:3px;margin-left:-1px}
.sheet::after{content:"";position:absolute;left:50%;top:10px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#EBD29B,#C8A25C 55%,#8E6E33);box-shadow:0 2px 3px rgba(0,0,0,.3)}
.kick{display:flex;justify-content:space-between;gap:10px;color:var(--brass);margin-bottom:12px}
.sheet h2{font:400 clamp(34px,3.4vw,50px)/.98 var(--serif);letter-spacing:-.02em}
.sheet .num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--paper);font:500 11px var(--mono);margin-bottom:12px}
.sheet .tag{font:italic 400 23px/1.25 var(--serif);color:var(--brass);margin-top:10px}
.sheet p{margin-top:12px;color:#3d3a34;font-size:15.5px}
.sheet ul{list-style:none;padding:0;margin:16px 0 0;border-top:1px solid rgba(22,20,15,.12)}
.sheet li{display:flex;gap:12px;padding:9px 0;border-bottom:1px solid rgba(22,20,15,.12);font-size:14.5px}
.sheet li::before{content:"✓";color:var(--brass);font-weight:600}
.acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.btn{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 20px;border-radius:999px;border:1px solid var(--ink);font:500 14px var(--sans);text-decoration:none;background:transparent;cursor:pointer;transition:transform .2s}
.btn:active{transform:scale(.97)}.btn.f{background:var(--ink);color:var(--paper)}.btn i{width:6px;height:6px;border-radius:50%;background:var(--laton)}
.demo{display:inline-block;font:400 9.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px dashed rgba(22,20,15,.3);border-radius:999px;padding:2px 7px;color:#6f6a60}
.note{margin-top:18px;padding:12px 14px;border:1.5px dashed rgba(22,20,15,.25);border-radius:10px;font-size:13.5px!important;color:#5a554b!important}
/* mini juegos (como en el valle) */
.play{position:relative;margin:18px 0 6px;padding:16px;border:1.5px dashed rgba(22,20,15,.28);border-radius:12px;background:rgba(255,255,255,.6)}
.play .pt{color:var(--brass);display:flex;align-items:center;gap:8px}
.play .pt::before{content:"▶";font-size:9px;color:var(--ink)}
.play .pp{margin-top:4px!important;font-size:13.5px!important}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;align-items:center}
.chip{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:999px;border:1px solid rgba(22,20,15,.35);background:#fff;font:500 13.5px var(--sans);transition:all .25s}
.chip:disabled{opacity:.35}.chip.go{background:var(--ink);color:var(--paper);border-color:var(--ink)}.chip.go:disabled{opacity:.25}
.chip.nudge{animation:nudge 1.4s 2}
@keyframes nudge{50%{box-shadow:0 0 0 6px rgba(200,162,92,.45)}}
.mini-brw{margin-top:12px;border:1px solid rgba(22,20,15,.18);border-radius:8px;overflow:hidden;background:#fff;position:relative}
.mini-brw .bar{height:22px;background:#ECE6DA;display:flex;align-items:center;gap:5px;padding:0 9px}
.mini-brw .bar i{width:6px;height:6px;border-radius:50%;background:#cfc6b6}
.mini-brw .bar span{margin:0 auto;font:400 9.5px var(--mono);color:#7a756b}
.slots{display:grid;grid-template-rows:20px 54px 34px 22px;gap:5px;padding:8px}
.slot{border:1.5px dashed rgba(22,20,15,.2);border-radius:4px;display:flex;align-items:center;justify-content:center;font:400 9.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:rgba(22,20,15,.35)}
.slot.on{border:0;color:transparent;animation:drop .55s var(--e)}
.slot.s0.on{background:linear-gradient(90deg,#16140F 0 22%,transparent 22% 60%,#D9D1C2 60% 68%,transparent 68% 72%,#D9D1C2 72% 80%,transparent 80% 84%,#C8A25C 84%)}
.slot.s1.on{background:linear-gradient(90deg,#16140F 0 55%,#C8A25C 55%);border-radius:4px}
.slot.s2.on{background:linear-gradient(90deg,#EDE8DF 0 31%,transparent 31% 34.5%,#EDE8DF 34.5% 65.5%,transparent 65.5% 69%,#EDE8DF 69%)}
.slot.s3.on{background:#C8A25C;border-radius:999px;margin:0 30%}
@keyframes drop{from{transform:translateY(-30px);opacity:0}to{transform:none;opacity:1}}
.mini-brw .ok{position:absolute;left:8px;right:8px;bottom:8px;background:var(--ink);color:#EDE8DF;border-radius:4px;padding:5px 8px;opacity:0;transition:opacity .4s}
.mini-brw.live .ok{opacity:1}.mini-brw.live{box-shadow:0 0 0 3px rgba(200,162,92,.45)}
.flow{position:relative;height:90px;margin-top:12px}.flow svg{position:absolute;inset:0;width:100%;height:100%}
.flow .lk{fill:none;stroke:rgba(22,20,15,.2);stroke-width:2;stroke-dasharray:4 4}.flow .lk.on{stroke:var(--ink);stroke-dasharray:none}
.flow .pk{fill:var(--laton);stroke:var(--ink);opacity:0}.flow .pk.on{opacity:1}
.node{position:absolute;top:14px;width:62px;height:62px;border-radius:50%;border:1.5px solid rgba(22,20,15,.35);background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .3s}
.node b{font-size:18px;line-height:1}.node span{font:400 8.5px var(--mono);letter-spacing:.05em;text-transform:uppercase;margin-top:3px}
.node.n0{left:calc(18.75% - 31px)}.node.n1{left:calc(50% - 31px)}.node.n2{left:calc(81.25% - 31px)}
.node.on{background:var(--ink);color:var(--paper);border-color:var(--ink);box-shadow:0 0 0 5px rgba(200,162,92,.4)}
.node.nudge{animation:nudge 1.4s infinite}
.kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.kpis div{background:#fff;border:1px solid rgba(22,20,15,.12);border-radius:8px;padding:8px 10px}
.kpis b{display:block;font:400 30px/1 var(--serif);font-variant-numeric:lining-nums}
.kpis span{font:400 9px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:#6f6a60}
.serp{position:relative;margin-top:12px;background:#fff;border:1px solid rgba(22,20,15,.12);border-radius:8px;padding:6px;overflow:hidden}
.res{display:flex;gap:10px;align-items:center;height:30px;padding:0 8px;margin-bottom:6px;border-radius:5px;background:#F4F0E8;font-size:13px;transition:transform .45s var(--e)}
.res:last-child{margin-bottom:0}.res .mono{width:22px;flex:none;color:#7a756b}
.res.me{background:#fff;border:1.5px solid var(--ink);font-weight:600;position:relative;z-index:2}.res.me .mono{color:var(--ink)}
.res.me.top{background:var(--laton)}
.dial{display:flex;align-items:center;gap:10px;margin-top:12px}.dial input{flex:1;accent-color:#C8A25C;height:28px}
.dial svg{width:90px;height:24px}.dial path{fill:none;stroke:var(--ink);stroke-width:2}
.aians[hidden]{display:none}.aians{display:flex;gap:10px;margin-top:10px;background:var(--ink);color:#EDE8DF;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.45}
.aians b{font:500 10px var(--mono);color:var(--laton);padding-top:2px}
.cf{position:absolute;bottom:40%;width:7px;height:7px;border-radius:50%;pointer-events:none;z-index:5}
form .fl{margin-top:12px}
form .fl label{display:block;font:400 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#6f6a60;margin-bottom:2px}
form input:not([type=checkbox]),form textarea{width:100%;border:0;border-bottom:1px solid rgba(22,20,15,.3);background:transparent;font:400 22px var(--serif);padding:2px 0 6px;outline:none;color:var(--ink);border-radius:0}
form textarea{font-size:18px;min-height:64px;resize:vertical}
.ck{display:flex;gap:10px;align-items:flex-start;margin-top:12px;font-size:13px}
.err{color:#A5442E;font-size:13px!important}
.sent .big{font:400 28px/1.15 var(--serif)!important;color:var(--ink)!important}
/* hud */
.top{position:fixed;inset:0 0 auto 0;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:14px clamp(14px,3vw,36px);pointer-events:none}
.top>*{pointer-events:auto}
.logo{display:inline-flex;align-items:baseline;font:600 27px/1 var(--serif);letter-spacing:-.015em;color:var(--ink);text-decoration:none;white-space:nowrap;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}
.ldot{display:inline-block;width:.2em;height:.2em;margin-left:.07em;border-radius:50%;background:radial-gradient(circle at 35% 30%,#EBD29B,#C8A25C 60%,#9C7A3A);box-shadow:0 0 0 .5px rgba(22,20,15,.25)}
.top::before{content:"";position:absolute;inset:0;background:rgba(250,248,243,.88);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid rgba(22,20,15,.08);opacity:0;transition:opacity .35s;pointer-events:none;z-index:-1}
.top.sc::before{opacity:1}
.top .r{display:flex;gap:6px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px;border-radius:999px;background:rgba(252,250,245,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(22,20,15,.1);font:500 13px var(--sans);text-decoration:none;white-space:nowrap}
.pill.d{background:var(--ink);color:var(--paper);border-color:var(--ink)}.pill i{width:6px;height:6px;border-radius:50%;background:var(--laton)}
#sndBtn i{background:transparent;border:1.5px solid var(--ink)}#sndBtn i.on{background:var(--laton);border-color:var(--laton)}
.eggs .d{display:flex;gap:4px}.eggs .d i{width:8px;height:8px;border-radius:50%;border:1.5px solid var(--ink);background:transparent}.eggs .d i.f{background:var(--laton)}
#alt{position:fixed;right:clamp(14px,2.4vw,30px);top:50%;transform:translateY(-50%);z-index:30;display:flex;align-items:center;gap:12px}
#alt .rail{position:relative;width:2px;height:min(52vh,420px);background:rgba(22,20,15,.18);border-radius:2px}
#alt .rail b{position:absolute;left:0;right:0;top:0;background:var(--ink);height:var(--p,0%)}
#alt .rail a{position:absolute;left:-6px;width:14px;height:14px;border-radius:50%;background:var(--paper2);border:2px solid rgba(22,20,15,.4);transform:translateY(-50%)}
#alt .rail a.v{background:var(--ink);border-color:var(--ink)}#alt .rail a.a{background:var(--laton);border-color:var(--ink);transform:translateY(-50%) scale(1.3)}
#alt .rail a span{position:absolute;right:22px;top:50%;transform:translateY(-50%);white-space:nowrap;font:400 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;background:var(--ink);color:var(--paper);padding:3px 7px;border-radius:5px;opacity:0;transition:opacity .2s;pointer-events:none}
#alt .rail a:hover span,#alt .rail a.a span{opacity:1}
#alt .m{position:absolute;right:20px;top:var(--p,0%);transform:translateY(-50%);background:var(--paper2);border:1px solid rgba(22,20,15,.15);border-radius:10px;padding:6px 10px;text-align:right;box-shadow:0 10px 20px -12px rgba(0,0,0,.4);white-space:nowrap;display:none}
#alt .lbl{background:rgba(252,250,245,.92);border:1px solid rgba(22,20,15,.12);border-radius:12px;padding:8px 12px;text-align:right;min-width:116px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
#alt .lbl b{display:block;font:400 26px/1 var(--serif);font-variant-numeric:lining-nums tabular-nums}
#alt .lbl span{font:400 9.5px var(--mono);letter-spacing:.07em;text-transform:uppercase;color:#6f6a60}
#toast{position:fixed;left:50%;top:72px;z-index:40;transform:translate(-50%,-20px);opacity:0;transition:all .5s var(--e);background:var(--ink);color:var(--paper);border-radius:16px;padding:12px 16px;width:max-content;max-width:min(420px,90vw);pointer-events:none}
#toast.on{opacity:1;transform:translate(-50%,0)}#toast b{display:block;font:400 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--laton);margin-bottom:3px}#toast p{font-size:14px;line-height:1.45}
.ft{position:relative;z-index:2;max-width:1180px;margin:0 auto 28px;padding:0 clamp(12px,3vw,40px)}
.ft-in,.ft-b{background:rgba(252,250,245,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ft-in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;padding:34px 34px 28px;border-radius:16px 16px 0 0;border:1px solid rgba(22,20,15,.08);border-bottom:0}
.ft-in p{margin-top:12px;color:#4a463e;font-size:14.5px;max-width:340px}
.ft-in b{display:block;color:var(--brass);margin-bottom:10px}
.ft-in a:not(.logo),.ft-in span{display:block;font-size:14.5px;text-decoration:none;padding:3px 0;color:#2a2722}
.ft-in a:not(.logo):hover{color:var(--brass)}
.ft-b{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;padding:14px 34px 18px;border-radius:0 0 16px 16px;border:1px solid rgba(22,20,15,.08);border-top:1px solid rgba(22,20,15,.1);font-size:12.5px;color:#6f6a60}
.ft-b nav{display:flex;flex-wrap:wrap;gap:6px 16px}.ft-b a,.ft-b button{font-size:12.5px;color:#4a463e;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(22,20,15,.25)}
.lopd{font-size:12px!important;line-height:1.5;color:#6f6a60!important;margin-top:8px!important}.lopd a{color:inherit}
/* menú del altímetro (móvil) */
#alt .menu{display:none}
#alt .lbl{cursor:pointer;color:inherit;font:inherit}
/* banner de cookies */
#ckb{position:fixed;left:12px;right:12px;bottom:12px;z-index:55;max-width:440px;background:var(--paper2);border-radius:16px;padding:18px 18px 16px;box-shadow:0 20px 50px -18px rgba(0,0,0,.55),0 0 0 1px rgba(22,20,15,.08);animation:sheetUp .5s var(--e)}
#ckb[hidden]{display:none}
#ckb b{display:block;font:400 22px/1.1 var(--serif)}
#ckb p{font-size:13.5px;color:#3d3a34;margin-top:6px}#ckb p a{color:inherit}
#ckb .row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
#ckb .btn{height:40px;padding:0 16px;font-size:13.5px}
#ckb .opt{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(22,20,15,.1);font-size:13.5px}
#ckb .opt small{display:block;color:#6f6a60;font-size:12px}
#ckb input[type=checkbox]{width:20px;height:20px;accent-color:#16140F;flex:none}
@media (min-width:761px){#ckb{left:24px;bottom:24px}}
/* móvil */
@media (max-width:760px){
 .st{display:block;padding:0 0 9vh}
 .st .art{height:54vh;min-height:360px;margin:0}
 .sheet{margin:0 12px 0 34px;padding:30px 18px 22px 40px}
 .sheet::before{left:18px}
 .sheet h2{font-size:34px}
 .hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:104px;min-height:0}
 .hero .txt{padding-bottom:0}
 .hero .svcs{justify-content:center}.hero .sub{margin-left:auto}
 .hero .txt{padding:0 18px}
 .hero h1{font-size:50px}
 .hero .sub{font-size:15.5px;margin-top:16px}
 .who{margin-top:12px;font-size:13px;text-align:left}
 .svcs{margin-top:16px}
 .cue{margin-top:12px}
 .hero .art{height:34vh;min-height:250px}
 .svcs{gap:6px}.svc{font-size:13px;padding:8px 13px 8px 8px}
 .logo{font-size:24px}
 .top{padding:12px 14px}
 .pill{height:34px;padding:0 11px;font-size:12px}
 #alt{top:62px;right:auto;left:14px;transform:none}
 #alt .rail{display:none}
 #alt{transition:opacity .35s,transform .35s var(--e)}
 #alt.hid{opacity:0;transform:translateY(-8px);pointer-events:none}
 #alt .menu{position:absolute;left:0;top:calc(100% + 8px);min-width:236px;background:var(--paper2);border-radius:14px;padding:6px;box-shadow:0 18px 40px -16px rgba(0,0,0,.5),0 0 0 1px rgba(22,20,15,.08)}
 #alt.open .menu{display:block;animation:sheetUp .3s var(--e)}
 #alt .menu a{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:11px 12px;border-radius:9px;text-decoration:none;font-size:14.5px}
 #alt .menu a span{font:400 10px var(--mono);letter-spacing:.06em;color:#6f6a60}
 #alt .menu a.a{background:#EDE8DF}#alt .menu a.v span{color:var(--brass)}
 .ft-in{grid-template-columns:1fr;gap:22px;padding:28px 22px 22px}.ft-b{padding:14px 22px 18px}
 .hero{padding-top:96px}
 .who img{width:48px;height:48px}
 #alt .lbl{display:flex;align-items:baseline;gap:8px;border-radius:999px;padding:5px 12px 6px;min-width:0;white-space:nowrap;box-shadow:0 8px 18px -12px rgba(0,0,0,.45)}
 #alt .lbl b{font-size:18px}#alt .lbl b::before{content:"▾ ";font-size:12px;color:var(--brass)}
}
/* el punto: personaje */
#dot{position:absolute;left:0;top:0;z-index:20;width:0;height:0;will-change:transform;opacity:0;transition:opacity .3s}
#dot.on{opacity:1}
#dot .sh{position:absolute;left:-15px;top:-4px;width:30px;height:8px;border-radius:50%;background:rgba(22,20,15,.25);filter:blur(1px)}
#dot .body{position:absolute;left:-15px;top:-32px;width:30px;height:30px;cursor:pointer;transform-origin:50% 100%;pointer-events:auto;--sq:0}
#dot .ball{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 36% 30%,#F3E2B8 0 10%,#D9B872 30%,#C8A25C 55%,#8E6E33 100%);box-shadow:inset 0 -3px 6px rgba(60,40,10,.35),0 0 0 3px rgba(252,250,245,.9),0 0 0 4px rgba(22,20,15,.55),0 6px 14px -4px rgba(30,24,12,.45);transform:scale(calc(1 + var(--sq)),calc(1 - var(--sq)))}
#dot .body::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid var(--laton);animation:ring 2.2s var(--e) infinite;pointer-events:none}
@keyframes ring{0%{transform:scale(1);opacity:.9}100%{transform:scale(2.1);opacity:0}}
#dot .say{position:absolute;left:20px;top:-78px;width:max-content;max-width:min(250px,64vw);background:rgba(252,250,245,.97);color:var(--ink);font:400 13.5px/1.4 var(--sans);padding:9px 13px 10px;border-radius:10px;border:1px solid rgba(22,20,15,.16);border-left:3px solid var(--laton);opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s var(--e);pointer-events:none;box-shadow:0 14px 28px -16px rgba(30,24,12,.55)}
#dot .say.on{opacity:1;transform:none}
.burst{z-index:19}
/* animales */
.egg{position:absolute;cursor:pointer;outline:none;pointer-events:auto;-webkit-tap-highlight-color:transparent}
.egg img{display:block;height:auto}
.egg:focus-visible{outline:2px solid var(--laton);outline-offset:4px;border-radius:8px}
.egg.found{filter:drop-shadow(0 0 6px rgba(200,162,92,.9))}
.mound{-webkit-clip-path:inset(-300px -80px 0 -80px);clip-path:inset(-300px -80px 0 -80px)}.mound img{position:absolute;left:50%;top:100%;transform:translate(-50%,0);animation:peek 6s 1s infinite}
.mound i{position:absolute;left:0;right:0;bottom:-6px;height:14px;border-radius:50% 50% 0 0;background:#7E6A4B;border:2px solid var(--ink)}
@keyframes peek{0%,18%{transform:translate(-50%,0)}26%,62%{transform:translate(-50%,calc(-1*var(--h)))}66%{transform:translate(-50%,calc(-.92*var(--h)))}70%,100%{transform:translate(-50%,0)}}
.isard{transform-origin:50% 100%;animation:isard 5s infinite}
@keyframes isard{0%,60%,100%{transform:none}66%{transform:translateY(-10px) rotate(-3deg)}74%{transform:none}80%{transform:rotate(2deg)}}
.eagle{left:0;width:max-content;animation:soar 22s linear infinite}
.eagle img{animation:flap 1.8s ease-in-out infinite;transform-origin:50% 40%}
@keyframes soar{0%{transform:translateX(-160px)}100%{transform:translateX(calc(var(--w) + 40px))}}
@keyframes flap{50%{transform:translateY(-8px) scaleY(.92)}}
.trout{transform-origin:50% 50%;animation:jump 6s infinite;opacity:0}
@keyframes jump{0%,68%{opacity:0;transform:translate(0,30px) rotate(40deg)}72%{opacity:1}78%{transform:translate(-30px,-46px) rotate(-10deg)}84%{opacity:1;transform:translate(-60px,6px) rotate(-60deg)}88%,100%{opacity:0;transform:translate(-60px,30px) rotate(-70deg)}}
.trout.got,.trout:hover,.trout:focus{animation-play-state:paused;opacity:1}
.mound.got img{animation:none;transform:translate(-50%,calc(-1*var(--h)))}
@media (max-width:760px){#dot .body{left:-13px;top:-28px;width:26px;height:26px}#dot .say{top:-74px}}
/* ===== multipágina ===== */
@view-transition{navigation:auto}
::view-transition-group(*){animation-duration:.55s;animation-timing-function:cubic-bezier(.2,.7,.1,1)}
::view-transition-old(root),::view-transition-new(root){animation-duration:.4s}
.top{view-transition-name:top}
.skip{position:fixed;left:12px;top:-60px;z-index:80;background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:10px;text-decoration:none}.skip:focus{top:12px}
#main{position:absolute;top:0}
.pill svg{flex:none}
.stn.go{cursor:pointer}
@media (hover:hover){.stn.go:hover{filter:drop-shadow(0 18px 14px rgba(40,32,18,.18)) drop-shadow(0 0 10px rgba(200,162,92,.55))}}
/* mapa */
#map{position:fixed;inset:0;z-index:70;background:rgba(22,20,15,.42);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:flex-end;opacity:0;transition:opacity .28s}
#map[hidden]{display:none}#map.on{opacity:1}
.mp-in{position:relative;width:min(460px,100%);height:100%;overflow:auto;-webkit-overflow-scrolling:touch;background:var(--paper2);padding:22px 20px 28px;transform:translateX(30px);transition:transform .4s var(--e);background-image:linear-gradient(rgba(70,110,160,.06) 1px,transparent 1px);background-size:100% 28px}
#map.on .mp-in{transform:none}
.mp-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.mp-h .mono{color:var(--brass)}.mp-h h2{font:400 38px/1 var(--serif);letter-spacing:-.02em;margin-top:4px}
.mp-x{width:42px;height:42px;border-radius:50%;background:#EDE8DF;font-size:26px;line-height:1;flex:none}
.mp-list{list-style:none;margin:22px 0 0;padding:0 0 0 0;position:relative}
.mp-list::before{content:"";position:absolute;left:31px;top:20px;bottom:20px;border-left:2px dotted rgba(22,20,15,.45)}
.mp-list li{position:relative}
.mp-list a,.mp-list li.soon{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:8px 8px 8px 0;border-radius:12px;text-decoration:none}
.mp-list a:hover{background:rgba(200,162,92,.12)}
.mp-list .th{width:64px;height:64px;object-fit:contain;position:relative;background:var(--paper2);border-radius:50%;border:1.5px solid rgba(22,20,15,.18);padding:4px}
.mp-list li.soon .th{display:block;border-style:dashed;background:transparent}
.mp-list .nm{font:500 22px/1.1 var(--serif)}.mp-list .nm small{display:block;font:400 12.5px/1.4 var(--sans);color:#6f6a60;margin-top:3px}
.mp-list .alt{color:#6f6a60;text-align:right;white-space:nowrap}.mp-list .alt em{display:block;font-style:normal;color:var(--paper);background:var(--ink);border-radius:999px;padding:2px 8px;margin-top:4px}
.mp-list li.here .th{border-color:var(--laton);box-shadow:0 0 0 3px rgba(200,162,92,.35)}
.mp-list li.soon{opacity:.55}
.mp-f{margin-top:22px;padding-top:16px;border-top:1px solid rgba(22,20,15,.12);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center}
.lang{display:flex;gap:6px;align-items:center}.lang .mono{color:#6f6a60;margin-right:4px}
.lang a,.lang span:not(.mono){display:inline-grid;place-items:center;min-width:38px;height:34px;border-radius:999px;border:1px solid rgba(22,20,15,.2);font:500 12px var(--mono);text-decoration:none}
.lang a[aria-current]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.lang span:not(.mono){opacity:.45}
.mp-x2{display:flex;gap:6px}
[data-snd] i{width:6px;height:6px;border-radius:50%;border:1.5px solid var(--ink);background:transparent}[data-snd] i.on{background:var(--laton);border-color:var(--laton)}
/* página interior */
.ihero h1{font:400 clamp(42px,5.2vw,80px)/.98 var(--serif);letter-spacing:-.03em;margin-top:14px}
.ihero .tag{font:italic 400 clamp(22px,2.2vw,30px)/1.2 var(--serif);color:var(--brass);margin-top:12px}
.ihero .sub{opacity:1;animation:none}
.ihero .acts{margin-top:24px}
.ihero .art{display:flex;align-items:flex-end;justify-content:center}
.place{position:absolute;left:50%;bottom:7%;width:auto;max-width:min(560px,92%);max-height:84%;height:auto;transform:translateX(-50%);filter:drop-shadow(0 18px 14px rgba(40,32,18,.18))}
.place.narrow{max-width:min(340px,60%)}
.crumbs{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;color:#6f6a60}.crumbs [aria-current]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crumbs a{color:inherit}
.k2{color:var(--brass)}
.st .art.lo{height:22vh;min-height:160px}
.sheet h2+ul,.sheet h2+p{margin-top:14px}
.pains li::before{content:"✕"!important;color:#B5523B!important}
.hint{font-style:italic;font-family:var(--serif)!important;font-size:19px!important;color:var(--brass)!important}
.steps{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:4px}
.steps li::before{content:none!important}.steps li{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:12px 0;border-top:1px solid rgba(22,20,15,.12)}
.steps b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--paper);font-size:11px}
.steps h3{font:500 22px/1.15 var(--serif)}.steps p{margin-top:4px!important;font-size:14.5px!important}
.faq{margin-top:16px;border-top:1px solid rgba(22,20,15,.14)}
.faq details{border-bottom:1px solid rgba(22,20,15,.14)}
.faq summary{list-style:none;cursor:pointer;padding:14px 34px 14px 0;font:500 21px/1.2 var(--serif);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font:400 24px var(--sans);color:var(--brass);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{margin:0 0 14px!important}
.works{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.work{display:flex;flex-direction:column;text-decoration:none;background:#fff;border:1px solid rgba(22,20,15,.12);border-radius:12px;overflow:hidden;transition:transform .25s var(--e),box-shadow .25s}
.work:hover{transform:translateY(-3px);box-shadow:0 16px 30px -18px rgba(30,24,12,.5)}
.work .ph{display:block;aspect-ratio:320/380;overflow:hidden;background:#ECE6DA;border-bottom:1px solid rgba(22,20,15,.1)}
.work .ph img{width:100%;height:auto;display:block}
.work .wt{display:flex;flex-direction:column;gap:4px;padding:10px 12px 12px}
.work b{font:500 21px/1.1 var(--serif)}.work .mono{color:#6f6a60;font-size:9.5px}.work .wd{font-size:13px;line-height:1.45;color:#3d3a34}.work .go{color:var(--brass)}
/* páginas sencillas (legales) */
body.plain #sky{background:linear-gradient(180deg,#CFDCE5,#F3E9DB 55%,#E8E2D2)}
.plain-main{padding:110px 14px 30px}
.plain-art{display:block;width:auto;max-width:min(420px,80%);max-height:300px;height:auto;margin:0 auto -28px;position:relative;z-index:1}
.sheet.legal{position:relative;z-index:2;max-width:760px;margin:0 auto 40px;padding:44px clamp(22px,5vw,56px) 40px clamp(36px,6vw,64px);opacity:1;transform:rotate(-.3deg)}
.legal h1{font:400 clamp(38px,5vw,56px)/1 var(--serif);letter-spacing:-.02em;margin-top:14px}
.legal h2{font:600 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--brass);margin:28px 0 6px}
.legal .draft{display:inline-block;margin-top:12px;font:400 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px dashed rgba(22,20,15,.35);border-radius:999px;padding:3px 9px;color:#7a6440}
.legal p{margin-top:10px}
.legal table{width:100%;border-collapse:collapse;margin-top:16px;font-size:13.5px}
.legal th,.legal td{text-align:left;padding:9px 8px;border-bottom:1px solid rgba(22,20,15,.12);vertical-align:top}
.legal th{font:500 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#6f6a60}
.legal .tw{overflow-x:auto}.legal .btn{margin-top:18px}
@media (max-width:760px){
 .dk{display:none!important}
 .pill span{display:inline}
 .ihero h1{font-size:40px}.ihero .txt{text-align:left}.ihero .crumbs{justify-content:flex-start}
 .ihero .art{height:36vh;min-height:250px;width:100%}
 .place{max-width:min(372px,86vw);max-height:90%;bottom:5%}.place.narrow{max-width:min(236px,56vw)}
 .st .art.lo{height:9vh;min-height:64px}
 .works{grid-template-columns:1fr 1fr;gap:8px}.work .wd{display:none}
 .mp-in{width:100%}
}
/* ===== contenidos nuevos ===== */
.ft-c{margin-top:14px!important}.ft-c a,.ft-c span{display:block}
.mp-side{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:8px 8px 8px 0;margin-top:10px;border-top:1px dashed rgba(22,20,15,.2);padding-top:16px;text-decoration:none;border-radius:12px}
.mp-side .th{width:64px;height:64px;object-fit:contain;background:var(--paper2);border-radius:50%;border:1.5px solid rgba(22,20,15,.18);padding:4px}
.mp-side .nm{font:500 22px/1.1 var(--serif)}.mp-side .nm small{display:block;font:400 12.5px/1.4 var(--sans);color:#6f6a60;margin-top:3px}
.mp-side .alt{color:#6f6a60;text-align:right}.mp-side .alt em{display:block;font-style:normal;color:var(--paper);background:var(--ink);border-radius:999px;padding:2px 8px;margin-top:4px}
.mp-side.here .th{border-color:var(--laton);box-shadow:0 0 0 3px rgba(200,162,92,.35)}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tg{font:400 10px var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(22,20,15,.25);border-radius:999px;padding:3px 9px;color:#4a463e}
.menu2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.menu2>div{background:#fff;border:1px solid rgba(22,20,15,.12);border-radius:10px;padding:12px 14px}
.menu2 .mono{color:var(--brass)}.menu2 b{display:block;font:500 24px/1.1 var(--serif);margin-top:2px}.menu2 em{display:block;font:italic 400 16px/1.25 var(--serif);color:var(--brass);margin-top:4px}.menu2 p{font-size:13.5px!important;margin-top:6px!important}
.me{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:center}
.me img{width:110px;height:138px;object-fit:cover;border-radius:10px;border:3px solid #fff;box-shadow:0 10px 22px -12px rgba(30,24,12,.6);transform:rotate(-2deg)}
.me.big{grid-template-columns:180px 1fr;align-items:start}.me.big img{width:180px;height:225px}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px}
.facts div{background:#fff;border:1px solid rgba(22,20,15,.12);border-radius:10px;padding:10px}
.facts b{display:block;font:400 30px/1 var(--serif)}.facts span{font:400 9.5px/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:#6f6a60}
.tl{list-style:none;padding:0;margin:16px 0 0;position:relative}
.tl::before{content:"";position:absolute;left:46px;top:8px;bottom:8px;border-left:2px dotted rgba(22,20,15,.35)}
.tl li{display:grid;grid-template-columns:92px 1fr;gap:12px;padding:10px 0}.tl li::before{content:none!important}
.tl b{position:relative;z-index:1;justify-self:start;background:var(--ink);color:var(--paper);border-radius:999px;padding:4px 10px;font-size:10.5px;height:max-content}
.tl h3{font:500 21px/1.15 var(--serif)}.tl p{margin-top:4px!important;font-size:14.5px!important}
blockquote{margin:18px 0 0;padding:14px 18px;border-left:3px solid var(--laton);font:italic 400 26px/1.2 var(--serif)}blockquote cite{display:block;margin-top:6px;font:400 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#6f6a60;font-style:normal}
.readmore{display:block;margin-top:14px;padding:14px 16px;border-radius:12px;background:#fff;border:1px solid rgba(22,20,15,.12);text-decoration:none;transition:transform .25s var(--e)}
.readmore:hover{transform:translateY(-2px)}.readmore .mono{color:#6f6a60}.readmore b{display:block;font:500 22px/1.15 var(--serif);margin:4px 0}.readmore .go{color:var(--brass)}
.case{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:start}
.case .ph{display:block;border-radius:16px;overflow:hidden;border:5px solid #16140F;aspect-ratio:320/600;box-shadow:0 16px 30px -18px rgba(30,24,12,.6)}
.case .ph img{width:100%;height:auto;display:block}
.case h2{margin-top:4px}
.price{display:flex;flex-direction:column;gap:2px;margin-top:14px!important;padding:12px 14px;border-radius:10px;background:#EDE8DF;font:500 15px var(--sans)!important;color:var(--ink)!important}.price .mono{color:var(--brass)}
h3.mini{font:600 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--brass);margin-top:16px}
/* páginas sencillas: casos, cuaderno, contacto */
.legal .lead{font:400 21px/1.45 var(--serif);color:#2a2722;margin-top:14px}
.legal .k2{color:var(--brass)}
.case-shot{margin-top:22px;border-radius:12px;overflow:hidden;border:1px solid rgba(22,20,15,.15);box-shadow:0 20px 40px -24px rgba(30,24,12,.6);max-height:560px;overflow-y:auto}
.case-shot img{display:block;width:100%;height:auto}
.pn{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-top:30px;padding-top:18px;border-top:1px solid rgba(22,20,15,.12)}
.pn a{text-decoration:none;font:500 20px/1.15 var(--serif)}.pn a .mono{display:block;color:#6f6a60}.pn .nx{text-align:right}.pn .mid{font:400 10px var(--mono);color:var(--brass);text-align:center}
.posts{display:grid;gap:10px;margin-top:22px}
.post{display:block;padding:16px 18px;border-radius:12px;background:#fff;border:1px solid rgba(22,20,15,.12);text-decoration:none;transition:transform .25s var(--e)}
.post:hover{transform:translateY(-2px)}.post .mono{color:var(--brass)}.post b{display:block;font:500 25px/1.15 var(--serif);margin:6px 0}.post .pd{display:block;font-size:14.5px;color:#4a463e}.post .go{display:block;margin-top:8px}
.post-page h2{font:500 26px/1.15 var(--serif);letter-spacing:-.01em;text-transform:none;color:var(--ink);margin:26px 0 4px}
.post-page p{font-size:16.5px;line-height:1.7}
.byline{display:flex;gap:12px;align-items:center;margin-top:28px;padding-top:18px;border-top:1px solid rgba(22,20,15,.12)}
.byline img{width:52px;height:52px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1.5px var(--laton)}.byline p{margin:0!important;font-size:14px}.byline b{display:block;font:500 19px var(--serif)}
.contact-page form{margin-top:10px}.contact-page h2{margin-top:30px}
.direct a,.direct span{display:block;padding:3px 0}
.case-page h2,.contact-page h2{font:600 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--brass)}
@media (max-width:760px){
 .menu2{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr}
 .me.big{grid-template-columns:1fr}.me.big img{width:100%;height:auto;aspect-ratio:4/5;max-width:320px;transform:rotate(-1deg)}
 .case{grid-template-columns:96px 1fr;gap:12px}
 .tl li{grid-template-columns:80px 1fr}.tl::before{left:40px}
 .pn{grid-template-columns:1fr 1fr}.pn .mid{grid-column:1/-1;order:3}
}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
/* legales */
@media (max-width:760px){
 .legal .tw table thead{display:none}
 .legal .tw table,.legal .tw tbody,.legal .tw tr,.legal .tw td{display:block;width:100%}
 .legal .tw tr{padding:10px 0;border-bottom:1px solid rgba(22,20,15,.14)}
 .legal .tw td{border:0;padding:2px 0}
 .legal .tw td[data-th]::before{content:attr(data-th);display:block;font:500 9.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:#6f6a60;margin-top:4px}
 .legal .tw td:first-child{font-weight:600}
 .legal .tw td:first-child::before{display:none}
}
.legal-page h2{font:500 24px/1.2 var(--serif)!important;letter-spacing:-.01em;text-transform:none!important;color:var(--ink)!important;margin:28px 0 4px!important;scroll-margin-top:80px}
.updated{margin-top:26px!important;color:#6f6a60!important;font-size:10px!important}
/* artículos */
.sheet .art-list,.sheet .toc ol{border-top:0}
.sheet .art-list li,.sheet .toc li{display:list-item;border-bottom:0;padding:0;gap:0}
.sheet .toc li::before,.sheet ol.art-list li::before{content:none!important}
.sheet ul.art-list li{padding-left:22px}.sheet ul.art-list li::before{content:""!important;color:transparent}
.post-page .meta{margin-top:14px}
.post-page h3{font:600 20px/1.25 var(--serif);margin:20px 0 4px;color:var(--ink)}
.post-page .rel-h{margin-top:34px}
.art-list{margin:12px 0 0;padding-left:22px}.art-list li{margin:6px 0;line-height:1.6;font-size:16px}
ul.art-list{list-style:none;padding-left:0}ul.art-list li{position:relative;padding-left:22px}ul.art-list li::before{content:"";position:absolute;left:4px;top:.7em;width:7px;height:7px;border-radius:50%;background:var(--laton)}
ol.art-list li::marker{font:500 13px var(--mono);color:var(--brass)}
.toc{margin:22px 0 6px;padding:16px 18px;border-radius:12px;background:#EDE8DF;border:1px solid rgba(22,20,15,.08)}
.toc b{display:block;color:var(--brass);margin-bottom:6px}.toc ol{margin:0;padding-left:20px}.toc li{margin:4px 0;font-size:15px}.toc a{text-decoration:none;border-bottom:1px solid rgba(22,20,15,.2)}
.note{margin:18px 0;padding:14px 16px;border-left:3px solid var(--laton);background:#fff;border-radius:0 10px 10px 0}.note b{color:var(--brass)}.note p{margin-top:4px!important}
.post-page h2{scroll-margin-top:80px}
:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}.hero h1 .ln>span{transform:none}.hero .sub,.who,.svcs,.cue{opacity:1}.sheet{opacity:1;transform:none}}
.ft-in .ft-lang{display:flex;gap:8px;margin-top:18px}
.ft-in .ft-lang a:not(.logo){display:inline-grid;place-items:center;min-width:44px;height:36px;padding:0 10px;border-radius:999px;border:1px solid rgba(22,20,15,.22);background:transparent;color:#2a2722;font:500 12.5px var(--mono);letter-spacing:.06em;line-height:1}
.ft-in .ft-lang a:not(.logo):hover{border-color:var(--brass);color:#2a2722}
.ft-in .ft-lang a[aria-current]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.ft-in .ft-lang a[aria-current]:hover{color:var(--paper)}
.lang a{line-height:1}
.btn.soon{cursor:default;border-style:dashed;border-color:rgba(22,20,15,.3);color:#6f6a60;background:transparent}.btn.soon i{background:var(--brass)}
div.work.soon{cursor:default}div.work.soon:hover{transform:none;box-shadow:none}div.work.soon .go{color:#6f6a60}.case span.ph{cursor:default}
.sheet.legal.post-page,.sheet.legal.legal-page,.sheet.legal.blog-page{transform:none}@media (max-width:700px){.sheet.legal{transform:none}}
::view-transition-group(top){animation:none}::view-transition-old(top){display:none}::view-transition-new(top){animation:none}
