:root{
    --bg:#0a0a0d;
    --panel:#131017;
    --panel-2:#1b1720;
    --ink:#f3f8ff;
    --ink-dim:#9b98a3;
    --accent:#f8440a;
    --accent-ink:#131017;
    --line:rgba(243,248,255,.16);
    --line-strong:rgba(243,248,255,.4);
    --bar-top-h:88px;
    --bar-bottom-h:42px;
    --font-display:'Unbounded',ui-sans-serif,system-ui,sans-serif;
    --font-body:'Montserrat',ui-sans-serif,system-ui,sans-serif;
    --font-mono:'Space Mono',ui-monospace,'SFMono-Regular',Menlo,monospace;
    --ease-hard:cubic-bezier(.5,0,.15,1);
    --ease-scroll:cubic-bezier(.65,0,.35,1);
    background:var(--bg);
    color-scheme:dark;
  }
  @media (max-width:720px){
    :root{ --bar-top-h:64px; --bar-bottom-h:36px; }
  }
  *,*::before,*::after{ box-sizing:border-box; }
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:'Montserrat',ui-sans-serif,system-ui,sans-serif;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  ::selection{ background:var(--accent); color:var(--accent-ink); }
  a{ color:inherit; text-decoration:none; }
  button{ font:inherit; color:inherit; background:none; border:0; cursor:pointer; }
  h1,h2,h3{ font-family:'Unbounded',ui-sans-serif,system-ui,sans-serif; text-wrap:balance; margin:0; }
  p{ margin:0; }
  img{ display:block; }
  .u-label{
    font-family:var(--font-mono); font-weight:700; text-transform:uppercase;
    letter-spacing:.1em; font-size:.72rem;
  }
  .u-num{ font-family:var(--font-mono); font-variant-numeric:tabular-nums; font-weight:700; }
  .u-slash::before{ content:"/ "; color:var(--accent); }
  :focus-visible{ outline:3px solid var(--accent); outline-offset:3px; }

  /* ---------- grain overlay ---------- */
  .grain{
    position:fixed; inset:0; z-index:60; pointer-events:none;
    opacity:.05; mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  }

  /* ---------- custom cursor (pointer:fine only) ---------- */
  .cursor-dot{
    position:fixed; top:0; left:0; width:16px; height:16px; margin:-8px 0 0 -8px;
    border-radius:50%; background:var(--accent); z-index:80; pointer-events:none;
    transform:translate(-100px,-100px); transition:width .18s var(--ease-hard), height .18s var(--ease-hard), background .18s;
    display:none;
  }
  html.has-cursor .cursor-dot{ display:block; }
  html.has-cursor{ cursor:none; }
  html.has-cursor a, html.has-cursor button{ cursor:none; }
  .cursor-dot.big{ width:64px; height:64px; margin:-32px 0 0 -32px; background:transparent; border:2px solid var(--accent); }
  .cursor-dot.invert{ background:#fff; }
  .cursor-dot.invert.big{ background:transparent; border-color:#fff; }

  /* ---------- loader ---------- */
  #loader{
    position:fixed; inset:0; z-index:100; background:var(--bg);
    display:flex; align-items:center; justify-content:center;
    transition:transform .6s var(--ease-hard), opacity .5s ease .1s;
  }
  #loader img, #loader svg{ width:min(50vw,320px); height:auto; opacity:0; transform:scale(.85);
    animation:loaderLogo 1s var(--ease-hard) .15s forwards; }
  #loader.hide{ transform:translateY(-100%); opacity:0; }
  @keyframes loaderLogo{ to{ opacity:1; transform:scale(1); } }
  @media (prefers-reduced-motion:reduce){
    #loader{ transition:none; }
    #loader img, #loader svg{ animation:none; opacity:1; transform:none; }
  }

  /* ---------- top bar ---------- */
  .bar-top{
    position:fixed; top:0; left:0; right:0; z-index:50;
    height:var(--bar-top-h);
    padding:0 clamp(16px,4vw,40px);
    padding-top:env(safe-area-inset-top,0px);
    display:flex; align-items:center; justify-content:space-between;
    background:linear-gradient(var(--bg) 60%, transparent);
  }
  .brand-btn{ position:relative; height:28px; display:block; }
  .brand-btn img, .brand-btn svg{ position:absolute; inset:0; height:28px; width:auto; transition:opacity .15s linear; }
  .brand-btn .on{ opacity:1; }
  .brand-btn .off{ opacity:0; }
  .brand-btn:hover .on{ opacity:0; }
  .brand-btn:hover .off{ opacity:1; }
  @media (max-width:720px){ .brand-btn, .brand-btn img, .brand-btn svg{ height:20px; } }

  .bar-top-right{ display:flex; align-items:center; gap:clamp(10px,2vw,20px); }
  .flower-logo{ visibility:visible; width:34px; height:34px; display:flex; align-items:center; justify-content:center; flex:none; }
  .flower-logo img, .flower-logo svg{ width:100%; height:100%; object-fit:contain; transition:transform .1s linear; will-change:transform; display:block; }
  @media (max-width:720px){ .flower-logo{ width:26px; height:26px; } }

  .menu-trigger{
    display:flex; align-items:center; gap:10px;
    border:2px solid var(--line-strong); padding:10px 18px;
    transition:background .15s var(--ease-hard), color .15s var(--ease-hard), border-color .15s;
  }
  .menu-trigger:hover{ background:var(--ink); color:var(--bg); border-color:var(--ink); }
  .menu-trigger .bars{ display:flex; flex-direction:column; gap:3px; width:18px; }
  .menu-trigger .bars span{ height:2px; background:currentColor; display:block; }

  /* ---------- index overlay ---------- */
  #indexOverlay{
    position:fixed; inset:0; z-index:65; background:var(--panel);
    display:flex; flex-direction:column;
    padding:calc(20px + env(safe-area-inset-top,0px)) clamp(16px,4vw,56px) calc(20px + env(safe-area-inset-bottom,0px));
    transform:translateY(-100%); transition:transform .5s var(--ease-hard);
  }
  #indexOverlay.open{ transform:translateY(0); }
  #indexOverlay[hidden]{ display:flex; }
  .idx-top{ display:flex; justify-content:space-between; align-items:center; }
  .idx-close{ border:2px solid var(--line-strong); width:44px; height:44px; display:flex; align-items:center; justify-content:center; font-size:1.4rem; transition:background .15s, color .15s; }
  .idx-close:hover{ background:var(--accent); border-color:var(--accent); color:var(--accent-ink); }
  .idx-list{ list-style:none; margin:auto 0; padding:0; }
  .idx-list li{ border-top:1px solid var(--line); }
  .idx-list li:last-child{ border-bottom:1px solid var(--line); }
  .idx-row{
    width:100%; display:flex; align-items:baseline; gap:clamp(14px,3vw,32px);
    padding:clamp(10px,2.4vw,22px) 4px; text-align:left; position:relative; overflow:hidden;
  }
  .idx-row::before{
    content:""; position:absolute; inset:0; background:var(--accent); transform:translateX(-101%);
    transition:transform .28s var(--ease-hard); z-index:0;
  }
  .idx-row:hover::before, .idx-row:focus-visible::before{ transform:translateX(0); }
  .idx-row > *{ position:relative; z-index:1; }
  .idx-row:hover, .idx-row:focus-visible{ color:var(--accent-ink); }
  .idx-n{ font-family:var(--font-mono); font-size:clamp(.9rem,1.6vw,1.2rem); color:var(--ink-dim); }
  .idx-row:hover .idx-n{ color:var(--accent-ink); opacity:.7; }
  .idx-t{ font-family:'Unbounded'; font-weight:700; font-size:clamp(1.8rem,6.4vw,4.6rem); line-height:1; text-transform:uppercase; }
  .idx-d{ margin-left:auto; font-size:.8rem; color:var(--ink-dim); font-weight:600; letter-spacing:.04em; display:none; }
  @media (min-width:720px){ .idx-d{ display:block; } }
  .idx-row:hover .idx-d{ color:var(--accent-ink); opacity:.85; }
  .idx-row.is-current{ cursor:default; }
  .idx-row.is-current .idx-n, .idx-row.is-current .idx-t, .idx-row.is-current .idx-d{ color:var(--accent); }
  .idx-row.is-current::before{ display:none; }
  .idx-foot{ display:flex; flex-wrap:wrap; gap:8px 28px; justify-content:space-between; padding-top:18px; border-top:1px solid var(--line); }
  .idx-foot a{ font-weight:700; border-bottom:1px solid var(--line-strong); padding-bottom:2px; }
  .idx-foot a:hover{ color:var(--accent); border-color:var(--accent); }

  /* ---------- bottom marquee bar ---------- */
  .bar-bottom{
    position:fixed; bottom:0; left:0; right:0; z-index:50; height:var(--bar-bottom-h);
    padding-bottom:env(safe-area-inset-bottom,0px);
    background:var(--bg); border-top:1px solid var(--line);
    display:flex; align-items:center; overflow:hidden;
  }
  .marquee{ display:flex; white-space:nowrap; animation:scroll 22s linear infinite; }
  @media (prefers-reduced-motion:reduce){ .marquee{ animation:none; } }
  .marquee span{ display:inline-flex; align-items:center; gap:10px; padding-right:28px;
    font-family:'Unbounded'; font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-dim); }
  .marquee span::after{ content:""; display:inline-block; width:.6rem; height:.6rem; flex:none; background:var(--accent); -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5v19M2.5 12h19M5.28 5.28l13.44 13.44M18.72 5.28 5.28 18.72' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5v19M2.5 12h19M5.28 5.28l13.44 13.44M18.72 5.28 5.28 18.72' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat; margin-left:10px; }
  @keyframes scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

/* CVUEDO · contenido propio de esta página */
html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.35;cursor:default}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;left:16px;top:-80px;z-index:120;padding:16px;background:var(--accent)}.skip-link:focus{top:12px}.bar-top{background:var(--bg);border-bottom:1px solid var(--line)}.brand-btn{width:100px}#indexOverlay[hidden]{display:none}#indexOverlay{overflow-y:auto}#app{padding:var(--bar-top-h) 0 var(--bar-bottom-h)}.container{width:min(1280px,calc(100% - 96px));margin-inline:auto}.mono{font-family:var(--font-mono);font-size:12px;line-height:1.6;letter-spacing:.07em;text-transform:uppercase}.accent{color:var(--accent)}.muted{color:var(--ink-dim)}.section-line{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:20px 0}.eyebrow{display:flex;gap:12px;align-items:center}.eyebrow::before{content:'';height:6px;width:6px;background:var(--accent);border-radius:50%}.hero{padding:34px 0 64px;position:relative}.hero-meta{display:flex;justify-content:space-between;align-items:center}.hero h1{font-size:clamp(58px,13.5vw,182px);letter-spacing:-.065em;line-height:1.05;font-weight:800;margin:42px 0 0;position:relative;z-index:2}.hero h1 span{color:var(--accent)}.hero-content{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center;margin-top:12px}.hero-copy{padding:32px 0;position:relative;z-index:2}.hero-copy h2{font-family:var(--font-body);font-size:clamp(23px,2.4vw,33px);font-weight:500;line-height:1.35;max-width:19ch;letter-spacing:-.025em}.hero-copy p{max-width:40ch;color:var(--ink-dim);line-height:1.8;font-size:15px;margin:22px 0 28px}.pill{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid var(--line-strong);padding:17px 24px;font-size:13px;font-weight:600;transition:background .2s,color .2s,border-color .2s}.pill.primary{background:var(--accent);border-color:var(--accent);color:var(--bg)}.pill:hover{background:var(--ink);border-color:var(--ink);color:var(--bg)}.hero-art{position:relative;min-height:365px;isolation:isolate}.hero-art::before{content:'';position:absolute;inset:10% 8%;border:1px solid var(--line);border-radius:50%;transform:rotate(-18deg)}.hero-card{position:absolute;width:34%;left:33%;top:0;filter:drop-shadow(0 16px 24px #0008);transform-origin:50% 90%;transition:transform .4s}.hero-card img{width:100%;height:auto}.hero-card:nth-child(1){transform:translate(-81%,35px) rotate(-20deg)}.hero-card:nth-child(2){transform:translate(-29%,4px) rotate(-7deg)}.hero-card:nth-child(3){transform:translate(31%,3px) rotate(9deg)}.hero-card:nth-child(4){transform:translate(83%,34px) rotate(23deg)}.hero-art:hover .hero-card:nth-child(1){transform:translate(-94%,25px) rotate(-25deg)}.hero-art:hover .hero-card:nth-child(4){transform:translate(96%,28px) rotate(28deg)}.art-note{position:absolute;bottom:-2px;right:0;color:var(--ink-dim);font-size:11px}.contents-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px 28px;border-top:1px solid var(--line);padding-top:22px;margin-top:30px}.contents-nav a{font-family:var(--font-mono);font-size:12px;color:var(--ink-dim);padding:8px 0}.contents-nav a:hover{color:var(--accent)}.contents-nav a b{color:var(--accent);font-weight:400;margin-right:7px}.dossier{padding:72px 0;background:#c9ae87;color:#211b16;position:relative;overflow:hidden}.dossier::before{content:'';position:absolute;inset:0;opacity:.18;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}.dossier-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;position:relative}.dossier-image{width:min(310px,85%);padding:0;transform:rotate(-6deg);box-shadow:0 20px 40px #33200a40;justify-self:center;transition:transform .3s}.dossier-image:hover{transform:rotate(-2deg)}.dossier-image img{width:100%;height:auto}.dossier-copy h2{font-size:clamp(26px,3vw,42px);line-height:1.2;margin:26px 0}.dossier-copy p{font-size:16px;line-height:1.8;max-width:40ch}.dossier-copy .crossed{text-decoration:line-through;text-decoration-thickness:5px}.dossier-details{display:flex;gap:24px;border-top:1px solid #211b1655;margin-top:30px;padding-top:20px;flex-wrap:wrap}.dossier-details strong{display:block;font-family:var(--font-display);font-size:25px;margin-bottom:5px}.board-section{padding:100px 0 95px}.section-title{font-size:clamp(30px,5vw,68px);line-height:1.1;letter-spacing:-.045em;font-weight:600}.board-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:7%;align-items:center;margin-top:32px}.board-copy p{font-size:16px;line-height:1.85;color:var(--ink-dim);max-width:32ch;margin:28px 0}.board-colors{display:flex;gap:7px;margin:28px 0}.board-colors span{height:8px;width:38px;background:var(--room)}.text-button{border-bottom:1px solid var(--accent);padding:9px 0;font-family:var(--font-mono);font-size:13px}.text-button:hover{color:var(--accent)}.board-frame{margin:0;position:relative}.board-button{padding:0;display:block;width:100%;transform:rotate(2deg);transition:transform .4s;box-shadow:0 25px 65px #0009}.board-button:hover{transform:rotate(0)}.board-button img{width:100%;height:auto}.board-frame figcaption{display:flex;justify-content:space-between;margin-top:24px;color:var(--ink-dim)}.deck-section{padding:38px 0 85px;overflow:hidden;--deck-color:var(--accent)}.deck-section:nth-of-type(even){background:#0f0e12}.deck-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin:18px 0 30px}.deck-heading p{color:var(--ink-dim);font-size:16px;line-height:1.8;max-width:40ch;justify-self:end}.deck-heading .section-title span{color:var(--deck-color)}.deck-stage{display:flex;gap:24px;overflow-x:auto;padding:30px 12px 35px;scroll-snap-type:x mandatory;min-height:390px;perspective:1200px;touch-action:pan-y}.card-item{display:block;flex:0 0 270px;width:270px;padding:0;scroll-snap-align:center;transform-style:preserve-3d}.card-item img{width:100%;height:auto;filter:drop-shadow(0 20px 18px #0007);border-radius:10px}.deck-stage.ready{height:440px;position:relative;overflow:visible;display:block;padding:0;margin-top:12px}.ready .card-item{position:absolute;left:50%;top:18px;width:260px;margin-left:-130px;transition:transform .5s cubic-bezier(.25,.8,.25,1),opacity .35s;transform:translateX(calc(var(--slot)*225px)) translateY(calc(var(--abs)*23px)) rotate(calc(var(--slot)*7deg)) scale(calc(1 - var(--abs)*.06));z-index:calc(10 - var(--abs));opacity:calc(1 - var(--abs)*.18);outline-offset:8px}.ready .card-item[data-slot='0']:hover{transform:translateY(-7px) rotateY(var(--tilt-x,0deg)) rotateX(var(--tilt-y,0deg))}.ready .card-item[data-slot='0']{opacity:1}.deck-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:5px}.nav-button{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line-strong);font-family:var(--font-mono);font-size:24px;line-height:1}.nav-button:hover{background:var(--accent);color:var(--bg);border-color:var(--accent)}.deck-counter{font-family:var(--font-mono);font-size:13px;min-width:86px;text-align:center}.deck-current{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em;text-align:center;color:var(--ink-dim);min-height:24px;margin:20px 0 4px}.deck-hint{text-align:center;color:var(--ink-dim);font-size:12px;line-height:1.6;margin-top:9px}.deck-tools{display:flex;justify-content:center;gap:26px;margin-top:14px}.deck-tools button{font-size:12px;padding:8px 0;border-bottom:1px solid var(--line)}.deck-tools button:hover{color:var(--accent)}.case-transition{padding:38px 0;color:#151217;background:var(--accent)}.case-transition p{font-family:var(--font-display);font-size:clamp(21px,3.5vw,47px);font-weight:600;letter-spacing:-.04em}.envelope-section{padding:100px 0 110px}.envelope-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;margin-top:35px}.envelope-copy h2{font-size:clamp(29px,4.2vw,57px);line-height:1.2;letter-spacing:-.04em}.envelope-copy p{font-size:16px;line-height:1.8;max-width:35ch;margin:28px 0;color:var(--ink-dim)}.envelope-wrap{text-align:center;perspective:1000px}.envelope{width:min(340px,80%);padding:0;margin:0 auto;display:block;transition:transform .45s;filter:drop-shadow(0 20px 35px #0009)}.envelope:hover{transform:rotate(-4deg) translateY(-8px)}.envelope img{width:100%;height:auto;border:1px solid #ffffff20;border-radius:15px}.envelope-note{margin-top:24px;color:var(--ink-dim)}.contact-section{padding:0 0 80px}.contact-inner{border-top:1px solid var(--line);padding-top:48px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end}.contact-inner h2{font-size:clamp(32px,5.5vw,73px);max-width:14ch;letter-spacing:-.05em;line-height:1.2;margin:20px 0 25px}.contact-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.endnote{display:flex;justify-content:space-between;gap:20px;margin-top:60px;color:var(--ink-dim)}.stamp{font-family:var(--font-mono);color:var(--accent);border:2px solid var(--accent);padding:17px 22px;transform:rotate(-8deg);font-size:13px;line-height:1.8;letter-spacing:.15em;text-align:center}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s,transform .75s}.js-motion .reveal.in-view{opacity:1;transform:none}.link-notice{position:fixed;bottom:62px;left:50%;transform:translateX(-50%);z-index:110;width:min(480px,calc(100% - 32px));background:var(--ink);color:var(--bg);padding:22px;box-shadow:0 12px 35px #0006}.link-notice p{font-size:14px;line-height:1.6}.link-notice button{font-family:var(--font-mono);font-size:12px;margin-top:12px;border-bottom:1px solid;padding:5px 0}.viewer{position:fixed;inset:0;margin:auto;width:min(1100px,96vw);max-width:none;height:min(850px,94dvh);max-height:94dvh;background:#131017;color:var(--ink);border:1px solid var(--line);padding:20px 24px;overflow:auto;z-index:100}.viewer::backdrop{background:#000d;backdrop-filter:blur(10px)}.viewer-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:15px}.viewer h2{font-family:var(--font-mono);font-size:14px;font-weight:400;line-height:1.5}.viewer-close{width:44px;height:44px;font-size:26px;border:1px solid var(--line);flex:none}.viewer-body{height:calc(100% - 142px);display:flex;justify-content:center;align-items:center;overflow:auto}.viewer-body img{max-width:100%;max-height:100%;object-fit:contain}.viewer-bottom{display:flex;justify-content:center;align-items:center;gap:18px;padding-top:14px}.viewer-position{font-family:var(--font-mono);font-size:12px}.viewer-reverse{font-size:12px;border-bottom:1px solid var(--line);padding:10px}.nojs-note{padding:20px;border:1px solid var(--line);line-height:1.7}.js-only{display:none}.is-js .js-only{display:inline-flex}
@media(min-width:1450px){.hero-content{margin-top:30px}.hero-art{min-height:415px}.hero-card{width:31%}}
@media(max-width:1000px){.container{width:calc(100% - 56px)}.hero-content{gap:28px}.hero-art{min-height:320px}.hero-copy h2{font-size:25px}.hero h1{margin-top:35px}.board-layout{gap:5%}.ready .card-item{width:235px;margin-left:-117.5px;transform:translateX(calc(var(--slot)*180px)) translateY(calc(var(--abs)*20px)) rotate(calc(var(--slot)*7deg)) scale(calc(1 - var(--abs)*.06))}.deck-stage.ready{height:390px}.dossier-grid{gap:7%}}
@media(max-width:720px){html{scroll-padding-top:84px}.container{width:calc(100% - 36px)}.hero{padding:22px 0 38px}.hero-meta{font-size:10px}.hero-meta .muted{display:none}.hero h1{font-size:clamp(50px,13.2vw,94px);margin-top:28px;letter-spacing:-.07em}.hero-content{grid-template-columns:1fr;gap:0;margin-top:10px}.hero-art{grid-row:1;min-height:330px;margin:22px 6% 0}.hero-card{width:32%;top:10px}.hero-copy{padding:16px 0 12px}.hero-copy h2{font-size:25px;max-width:23ch}.hero-copy p{margin:16px 0 22px;font-size:15px}.hero-copy .pill{width:100%}.contents-nav{gap:7px 18px;margin-top:24px;padding-top:15px}.contents-nav a{font-size:11px}.dossier{padding:50px 0}.dossier-grid{grid-template-columns:1fr;gap:45px}.dossier-image{width:210px}.dossier-copy h2{font-size:29px}.dossier-copy p{font-size:15px}.dossier-details{gap:24px}.board-section{padding:58px 0}.board-layout{grid-template-columns:1fr;gap:35px}.board-copy p{max-width:100%;margin:20px 0}.board-colors{margin:22px 0}.board-button{width:94%;margin:auto}.section-line{font-size:11px;gap:10px}.section-title{font-size:39px}.deck-section{padding:15px 0 50px}.deck-heading{grid-template-columns:1fr;gap:20px;margin-top:15px}.deck-heading p{justify-self:start;font-size:15px;max-width:38ch}.deck-stage.ready{height:370px;margin:0 -18px;overflow:hidden;min-height:0}.ready .card-item{width:222px;margin-left:-111px;top:15px;transform:translateX(calc(var(--slot)*145px)) translateY(calc(var(--abs)*24px)) rotate(calc(var(--slot)*8deg)) scale(calc(1 - var(--abs)*.1))}.deck-current{font-size:11px;padding-inline:12px}.deck-controls{gap:20px}.deck-hint{font-size:11px}.envelope-section{padding:60px 0}.envelope-grid{grid-template-columns:1fr;gap:38px}.envelope-copy h2{font-size:37px}.envelope{width:255px}.envelope-note{font-size:11px}.contact-inner{grid-template-columns:1fr;gap:25px}.contact-inner h2{font-size:42px}.stamp{justify-self:start;margin:12px}.endnote{font-size:10px;margin-top:35px}.viewer{padding:14px;width:96vw;height:92dvh}.viewer-top{margin-bottom:8px}.viewer h2{font-size:12px}.viewer-body{height:calc(100% - 146px)}.viewer-bottom{gap:10px;flex-wrap:wrap}.viewer-bottom .nav-button{width:42px;height:42px}.idx-t{font-size:clamp(23px,7.5vw,46px)}}
@media(max-width:420px){.hero-art{min-height:266px;margin-inline:5%}.art-note{font-size:10px}.hero-copy h2{font-size:23px}.dossier-details{gap:19px}.dossier-details .mono{font-size:10px}.section-title{font-size:33px}.envelope-copy h2{font-size:32px}.contact-inner h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}.hero-art:hover .hero-card{transition:none}.cursor-dot{display:none!important}}
.is-js .deck-controls,.is-js .deck-tools{display:flex}.is-js .deck-hint{display:block}.hero-art{transform:scale(.94);transform-origin:center}.viewer[open]~.cursor-dot{display:none}html.has-cursor:has(.viewer[open]){cursor:auto}html.has-cursor .viewer,html.has-cursor .viewer button{cursor:auto}.viewer button{cursor:pointer!important}

/* Asterisco vectorial (sustituye al carácter ✳, que iOS pinta como emoji verde) */
.ast{display:inline-block;width:.82em;height:.82em;vertical-align:-.06em;overflow:visible;flex:none}

/* cursor: solo el círculo (salvo con el visor abierto) */
html.has-cursor:not(:has(.viewer[open])), html.has-cursor:not(:has(.viewer[open])) *{ cursor:none !important; }
/* el círculo del cursor siempre por delante de todo (avisos, tarjetas, visores...) */
.cursor-dot{ z-index:2147483000 !important; }
