  html{ scroll-behavior:smooth; }
  body{ font-family:'Montserrat',-apple-system,sans-serif; background:#FCFAF6; color:#0A1628; -webkit-font-smoothing:antialiased; }
  .wrap{ max-width:1200px; margin:0 auto; padding-inline:clamp(1.25rem,4vw,3rem); }
  h1,h2,h3{ letter-spacing:-.02em; text-wrap:balance; }

  /* ===== i18n ===== */
  :root[data-lang="es"] [lang="en"]{ display:none; }
  :root[data-lang="en"] [lang="es"]{ display:none; }

  /* ===== NAV (reused as-is from the homepage) ===== */
  #nav{ position:fixed; top:0; left:0; right:0; z-index:200; transition:padding .45s cubic-bezier(.2,.7,.3,1); }
  #nav .bar{
    display:flex; align-items:center; justify-content:space-between;
    background:#fff; color:#0A1628; height:76px; padding-inline:clamp(1.25rem,4vw,3rem);
    border-radius:0; width:100%; max-width:none; margin:0;
    transition:background .45s cubic-bezier(.2,.7,.3,1), color .45s, border-radius .45s, box-shadow .45s, backdrop-filter .45s, max-width .45s, margin .45s;
  }
  #nav.scrolled{ padding:12px 16px 0; }
  #nav.scrolled .bar{
    background:rgba(10,22,40,.6); color:#fff; border-radius:999px; height:52px;
    max-width:920px; margin:0 auto; padding-inline:clamp(.9rem,2.4vw,1.5rem);
    backdrop-filter:blur(20px) saturate(160%); -webkit-backdrop-filter:blur(20px) saturate(160%);
    box-shadow:0 20px 40px -20px rgba(10,22,40,.35);
  }
  #nav .navlink{ position:relative; display:inline-block; color:#0A1628; font-size:.85rem; font-weight:500; text-decoration:none; opacity:.8; padding-bottom:3px; transition:opacity .3s,color .3s; }
  #nav .navlink::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:1.5px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .35s cubic-bezier(.2,.7,.3,1); }
  #nav.scrolled .navlink{ color:#fff; }
  #nav .navlink:hover{ opacity:1; color:#3A6465; }
  #nav.scrolled .navlink:hover{ color:#8FCCD7; }
  #nav .navlink:hover::after{ transform:scaleX(1); }
  #nav .cta-pill{ background:#0A1628; color:#fff; transition:background .3s,color .3s; }
  #nav.scrolled .cta-pill{ background:#fff; color:#0A1628; }

  /* ===== mobile drawer nav ===== */
  .mnav-toggle{ display:none; }
  @media (max-width:767px){
    .mnav-toggle{ display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:999px; background:#0A1628; color:#fff; border:none; cursor:pointer; flex-shrink:0; }
    #nav.scrolled .mnav-toggle{ background:rgba(255,255,255,.18); }
  }
  .mnav-overlay{ position:fixed; inset:0; background:rgba(10,22,40,.55); opacity:0; pointer-events:none; transition:opacity .4s ease; z-index:300; }
  .mnav-overlay.on{ opacity:1; pointer-events:auto; }
  .mnav-drawer{ position:fixed; top:0; right:0; bottom:0; width:min(84vw,340px); background:#FCFAF6; z-index:301; transform:translateX(100%); transition:transform .45s cubic-bezier(.2,.7,.3,1); display:flex; flex-direction:column; padding:1.5rem 1.5rem 2rem; box-shadow:-24px 0 60px -20px rgba(10,22,40,.35); }
  .mnav-drawer.on{ transform:translateX(0); }
  .mnav-drawer-head{ display:flex; justify-content:flex-end; }
  .mnav-close{ width:40px; height:40px; border-radius:999px; background:#F0F6F5; border:none; display:flex; align-items:center; justify-content:center; cursor:pointer; color:#0A1628; }
  .mnav-links{ display:flex; flex-direction:column; margin-top:1.5rem; }
  .mnav-link{ font-size:1.15rem; font-weight:600; color:#0A1628; padding:1rem .25rem; border-bottom:1px solid #E8E3DC; text-decoration:none; }
  .mnav-link[aria-current="page"]{ color:#3A6465; }
  .mnav-drawer .btn{ margin-top:1.75rem; justify-content:center; }
  #nav .logo-ondark{ display:none; }
  #nav.scrolled .logo-onlight{ display:none; }
  #nav.scrolled .logo-ondark{ display:block; }
  .lang-switch{ display:flex; align-items:center; gap:2px; padding:3px; border-radius:999px; background:rgba(10,22,40,.06); transition:background .3s; }
  #nav.scrolled .lang-switch{ background:rgba(255,255,255,.14); }
  .lang-btn{ font-size:.72rem; font-weight:600; letter-spacing:.02em; padding:.32rem .6rem; border-radius:999px; color:inherit; opacity:.55; transition:opacity .3s,background .3s,color .3s; }
  .lang-btn:hover{ opacity:.85; }
  .lang-btn.active{ opacity:1; background:#0A1628; color:#fff; }
  #nav.scrolled .lang-btn.active{ background:#fff; color:#0A1628; }
  .btn{ display:inline-flex;align-items:center;gap:.55rem;font-weight:600;font-size:.9rem;border-radius:999px;padding:.9rem 1.7rem;letter-spacing:-.005em;transition:transform .35s cubic-bezier(.2,.7,.3,1),background .3s,box-shadow .3s; }
  .btn:hover{ transform:translateY(-2px); }
  .btn-black{ background:#0A1628; color:#fff; }
  .btn-black:hover{ box-shadow:0 16px 34px -18px rgba(10,22,40,.4); }

  /* ===== gp hero (cycling category ticker) — literal translation of Figma "Frame 35" (1920x406) ===== */
  .gp-hero{ position:relative; overflow:hidden; background:#0A1628; margin:90px auto 14px; width:min(100% - 28px, 1920px); aspect-ratio:332/160; border-radius:clamp(12px, 1.25vw, 24px); }
  .gp-hero-media{ position:absolute; inset:0; background-image:url('Imagenes/hero-guia.jpg'); background-size:196.39% 229.38%; background-position:19.06% 56.52%; }
  .gp-hero-teal{ position:absolute; left:0%; top:-6.88%; width:100%; height:137.5%; background:linear-gradient(to right, #3A6465, #FFFFFF); mix-blend-mode:multiply; pointer-events:none; }
  .gp-hero-overlay{
    --frame-left: 11.14%;
    --frame-w: 14%;
    --frame-gap: 1.8%;
    --line-width: 18%;
    --line-mask-stop: 30%;
    --gp-word-h: 1.25em;
    font-size: clamp(.95rem, 1.25vw, 1.5rem);
    position:absolute; inset:0; z-index:2;
  }
  @media (max-width:767px){
    .gp-hero-overlay{ --frame-left:6%; --frame-w:12rem; --frame-gap:.6rem; --line-width:1.75rem; --line-mask-stop:20%; }
  }
  @media (max-width:479px){
    .gp-hero-overlay{ --frame-left:5%; --line-width:1.5rem; }
  }
  .gp-hero-line{
    position:absolute; left:calc(var(--frame-left) + var(--frame-w) + var(--frame-gap)); top:50%; width:var(--line-width); height:1px; background:#8FCCD7;
    transform:scaleX(0); transform-origin:left;
    -webkit-mask-image:linear-gradient(to right,#000 0%,#000 var(--line-mask-stop),transparent 100%);
            mask-image:linear-gradient(to right,#000 0%,#000 var(--line-mask-stop),transparent 100%);
  }
  .gp-hero-arrow{
    position:absolute; left:calc(var(--frame-left) - var(--frame-gap)); top:50%; width:6px; height:6px;
    border-right:1.5px solid #8FCCD7; border-bottom:1.5px solid #8FCCD7; transform:translate(calc(-100% + 10px),-50%) rotate(-45deg); opacity:0;
  }
  .gp-hero-frame{
    position:absolute; left:var(--frame-left); top:50%; width:var(--frame-w); transform:translateY(-50%); overflow:hidden; height:5em;
    -webkit-mask-image:linear-gradient(to bottom, transparent 0%, #000 20%, #000 80%, transparent 100%);
            mask-image:linear-gradient(to bottom, transparent 0%, #000 20%, #000 80%, transparent 100%);
  }
  .gp-hero-column{ transform:translateY(calc(-6 * var(--gp-word-h))); opacity:0; filter:blur(5px); will-change:transform,opacity,filter; }
  .gp-hero-word{ height:var(--gp-word-h); display:flex; align-items:center; font-weight:500; color:rgba(255,255,255,.54); white-space:nowrap; }
  .gp-hero-word[data-i="2"]{ color:#fff; }

  .gp-hero.gp-hero-play #gp-hero-image{ animation:gpHeroImg 2s cubic-bezier(.22,1,.36,1) .3s both; }
  .gp-hero.gp-hero-play .gp-hero-line{ animation:gpHeroLine 1s cubic-bezier(.22,.61,.36,1) 0s both; }
  .gp-hero.gp-hero-play .gp-hero-arrow{ animation:gpHeroArrow .3s ease-out 1.15s both; }
  .gp-hero.gp-hero-play .gp-hero-column{
    animation: gpHeroColFade .5s ease-out .9s both, gpHeroColBlur .5s ease-out .9s both, gpHeroColLoop 19.2s linear 1.9s infinite;
  }
  .gp-hero.gp-hero-play .gp-hero-word[data-i="2"]{ animation:gpHeroWord2 19.2s linear 1.9s infinite; }
  .gp-hero.gp-hero-play .gp-hero-word[data-i="3"]{ animation:gpHeroWordHL 19.2s linear calc(1.9s + 3.2s) infinite; }
  .gp-hero.gp-hero-play .gp-hero-word[data-i="4"]{ animation:gpHeroWordHL 19.2s linear calc(1.9s + 6.4s) infinite; }
  .gp-hero.gp-hero-play .gp-hero-word[data-i="5"]{ animation:gpHeroWordHL 19.2s linear calc(1.9s + 9.6s) infinite; }
  .gp-hero.gp-hero-play .gp-hero-word[data-i="0"]{ animation:gpHeroWordHL 19.2s linear calc(1.9s + 12.8s) infinite; }
  .gp-hero.gp-hero-play .gp-hero-word[data-i="1"]{ animation:gpHeroWordHL 19.2s linear calc(1.9s + 16s) infinite; }

  @keyframes gpHeroImg{ 0%{ transform:scale(1.08); filter:blur(20px); } 100%{ transform:scale(1); filter:blur(0); } }
  @keyframes gpHeroLine{ 0%{ transform:scaleX(0); } 100%{ transform:scaleX(1); } }
  @keyframes gpHeroArrow{ 0%{ opacity:0; transform:translate(calc(-100% + 10px),-50%) rotate(-45deg); } 100%{ opacity:1; transform:translate(-100%,-50%) rotate(-45deg); } }
  @keyframes gpHeroColFade{ 0%{ opacity:0; } 100%{ opacity:1; } }
  @keyframes gpHeroColBlur{ 0%{ filter:blur(5px); } 100%{ filter:blur(0); } }
  @keyframes gpHeroColLoop{
    0%{ transform:translateY(calc(-6 * var(--gp-word-h,1.5rem))); }
    12.5%{ transform:translateY(calc(-6 * var(--gp-word-h,1.5rem))); animation-timing-function:cubic-bezier(.83,0,.17,1); }
    16.67%{ transform:translateY(calc(-7 * var(--gp-word-h,1.5rem))); }
    29.17%{ transform:translateY(calc(-7 * var(--gp-word-h,1.5rem))); animation-timing-function:cubic-bezier(.83,0,.17,1); }
    33.33%{ transform:translateY(calc(-8 * var(--gp-word-h,1.5rem))); }
    45.83%{ transform:translateY(calc(-8 * var(--gp-word-h,1.5rem))); animation-timing-function:cubic-bezier(.83,0,.17,1); }
    50%{ transform:translateY(calc(-9 * var(--gp-word-h,1.5rem))); }
    62.5%{ transform:translateY(calc(-9 * var(--gp-word-h,1.5rem))); animation-timing-function:cubic-bezier(.83,0,.17,1); }
    66.67%{ transform:translateY(calc(-10 * var(--gp-word-h,1.5rem))); }
    79.17%{ transform:translateY(calc(-10 * var(--gp-word-h,1.5rem))); animation-timing-function:cubic-bezier(.83,0,.17,1); }
    83.33%{ transform:translateY(calc(-11 * var(--gp-word-h,1.5rem))); }
    95.83%{ transform:translateY(calc(-11 * var(--gp-word-h,1.5rem))); animation-timing-function:cubic-bezier(.83,0,.17,1); }
    100%{ transform:translateY(calc(-12 * var(--gp-word-h,1.5rem))); }
  }
  @keyframes gpHeroWord2{ 0%{ color:#fff; } 12.5%{ color:#fff; } 16.67%{ color:rgba(255,255,255,.5); } 100%{ color:rgba(255,255,255,.5); } }
  @keyframes gpHeroWordHL{ 0%{ color:rgba(255,255,255,.5); } 4.17%{ color:#fff; } 16.67%{ color:#fff; } 20.83%{ color:rgba(255,255,255,.5); } 100%{ color:rgba(255,255,255,.5); } }

  /* ===== gp filter/search root ===== */
  .gp-root{ position:relative; }
  .gp-sidebar{ position:sticky; top:96px; align-self:start; max-height:calc(100svh - 120px); overflow-y:auto; }
  @media (max-width:767px){ .gp-sidebar{ position:static; max-height:none; } }
  .gp-filter-label{ display:flex; align-items:center; justify-content:space-between; gap:.6rem; padding:.35rem 0; font-size:.8rem; color:#42566B; cursor:pointer; }
  .gp-filter-label input{ accent-color:#3A6465; width:16px; height:16px; }
  .gp-filter-label .cnt{ color:#8198A8; font-size:.82rem; font-variant-numeric:tabular-nums; }
  .gp-search{ position:relative; }
  .gp-search input{ width:100%; border:1px solid #E8E3DC; border-radius:999px; padding:1rem 8.5rem 1rem 2.8rem; font-size:.95rem; outline:none; transition:border-color .2s; background:#fff; }
  .gp-search input:focus{ border-color:#3A6465; }
  .gp-search svg{ position:absolute; left:1.1rem; top:50%; transform:translateY(-50%); pointer-events:none; }
  .gp-search-btn{ position:absolute; right:.35rem; top:50%; transform:translateY(-50%); background:#0A1628; color:#fff; font-weight:600; font-size:.85rem; padding:.7rem 1.4rem; border-radius:999px; border:none; cursor:pointer; transition:background .2s; }
  .gp-search-btn:hover{ background:#16283C; }
  @media (max-width:640px){
    .gp-search input{ padding-right:6.2rem; padding-left:2.6rem; font-size:.85rem; }
    .gp-search svg{ left:.9rem; }
    .gp-search-btn{ padding:.6rem 1rem; font-size:.78rem; }
  }
  mark{ background:rgba(201,220,140,.6); color:inherit; border-radius:2px; padding:0 1px; }

  .gp-chip{ display:inline-flex; align-items:center; text-align:left; max-width:100%; font-size:.85rem; font-weight:500; color:#3A6465; background:#fff; border:1px solid #3A6465; border-radius:999px; padding:.6rem 1.1rem; cursor:pointer; transition:background .15s,border-color .15s,color .15s; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; flex-shrink:0; }
  .gp-chip:hover{ background:#3A6465; color:#fff; }
  .gp-chip[aria-pressed="true"]{ background:#3A6465; border-color:#3A6465; color:#fff; }
  .gp-chip-row{ display:flex; flex-direction:column; align-items:flex-start; gap:.5rem; }

  .gp-cat-toggle{ display:flex; align-items:center; justify-content:space-between; width:100%; cursor:pointer; background:none; border:none; padding:0; text-align:left; font:inherit; }
  .gp-cat-toggle svg{ transition:transform .25s ease; flex-shrink:0; color:#8198A8; }
  .gp-cat-toggle[aria-expanded="true"] svg{ transform:rotate(180deg); }
  .gp-cat-collapse{ overflow:visible; max-height:none; }

  @media (max-width:767px){
    .gp-chip-row{ flex-direction:row; flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; padding-bottom:.2rem; align-items:stretch; }
    .gp-chip-row::-webkit-scrollbar{ display:none; }
    .gp-cat-collapse{ overflow:hidden; max-height:0; transition:max-height .35s ease; }
  }
  @media (min-width:768px){
    .gp-cat-toggle svg{ display:none; }
    .gp-cat-toggle{ cursor:default; }
  }

  .gp-cat-icon{ width:34px; height:34px; border-radius:999px; background:#E4F0F1; display:grid; place-items:center; flex-shrink:0; color:#3A6465; }
  .gp-cat-icon svg{ display:block; }
  .gp-item-link{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.9rem 0; border-bottom:1px solid #E8E3DC; font-size:.95rem; font-weight:400; color:#0A1628; text-decoration:none; }
  .gp-item-link svg{ color:#8198A8; flex-shrink:0; transition:transform .2s; }
  .gp-item-link:hover{ color:#3A6465; }
  .gp-item-link:hover svg{ color:#3A6465; transform:translateX(2px); }
  .gp-explore-cta{ display:inline-flex; align-items:center; gap:.4rem; margin-top:1.1rem; padding-left:2.85rem; font-size:.82rem; font-weight:700; color:#3A6465; text-decoration:none; }
  .gp-explore-cta svg{ transition:transform .2s; }
  .gp-explore-cta:hover{ color:#16283C; }
  .gp-explore-cta:hover svg{ transform:translateX(2px); }

  /* ===== trailing sections (structural placeholders, reused patterns) ===== */
  .gp-stats{ background:#E4F0F1; }
  .gp-read-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; margin-top:2.5rem; }
  @media (max-width:900px){ .gp-read-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:620px){ .gp-read-grid{ grid-template-columns:1fr; } }
  .gp-read-card{ display:flex; flex-direction:column; gap:.65rem; background:#fff; border:1px solid #E8E3DC; border-radius:20px; padding:1.4rem; text-decoration:none; color:#0A1628; transition:box-shadow .2s, transform .2s; }
  .gp-read-card:hover{ box-shadow:0 16px 40px -22px rgba(10,22,40,.3), 0 3px 10px -6px rgba(10,22,40,.08); transform:translateY(-2px); }
  .gp-read-meta{ display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; }
  .gp-tag{ font-size:.66rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; padding:.3rem .6rem; border-radius:999px; white-space:nowrap; }
  .gp-tag-stage{ background:#E4F0F1; color:#16283C; }
  .gp-tag-fmt{ background:#F0F6F5; color:#33606E; }
  .gp-tag-time{ background:transparent; color:#8198A8; border:1px solid #E8E3DC; font-weight:600; letter-spacing:0; text-transform:none; }
  .gp-read-card h3{ font-size:1.02rem; font-weight:700; line-height:1.35; }
  .gp-read-tldr{ font-size:.85rem; color:#42566B; line-height:1.55; flex:1; }
  .gp-reviewed{ display:inline-flex; align-items:center; gap:.4rem; font-size:.72rem; font-weight:600; color:#3A6465; }

  /* ===== ¿Qué necesitás hoy? ===== */
  .gp-need-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:2.5rem; }
  @media (max-width:900px){ .gp-need-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:520px){ .gp-need-grid{ grid-template-columns:1fr; } }
  .gp-need-card{ display:block; background:#fff; border:1px solid #E8E3DC; border-radius:20px; padding:1.5rem; text-decoration:none; transition:box-shadow .2s,border-color .2s,transform .2s; }
  .gp-need-card:hover{ box-shadow:0 16px 40px -22px rgba(10,22,40,.3), 0 3px 10px -6px rgba(10,22,40,.08); border-color:#d7d2c8; transform:translateY(-2px); }
  .gp-need-ico{ width:42px; height:42px; border-radius:12px; display:grid; place-items:center; margin-bottom:1rem; }
  .gp-need-card h3{ font-weight:700; font-size:1.02rem; color:#0A1628; }
  .gp-need-card p{ font-size:.85rem; color:#42566B; margin-top:.5rem; line-height:1.55; }

  /* ===== Cuando el camino cambia ===== */
  .gp-branch-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:.7rem; margin-top:2rem; }
  @media (max-width:860px){ .gp-branch-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:540px){ .gp-branch-grid{ grid-template-columns:1fr; } }
  .gp-branch-item{ display:flex; align-items:center; gap:.65rem; background:#fff; border:1px solid #E8E3DC; border-radius:14px; padding:.85rem 1.1rem; font-size:.85rem; font-weight:500; color:#0A1628; text-decoration:none; transition:border-color .15s,box-shadow .15s; }
  .gp-branch-item::before{ content:''; width:6px; height:6px; border-radius:999px; background:#8198A8; flex-shrink:0; }
  .gp-branch-item:hover{ border-color:#3A6465; box-shadow:0 8px 22px -16px rgba(10,22,40,.22); }
  .gp-branch-cta{ display:inline-flex; align-items:center; gap:.5rem; margin-top:1.75rem; background:#E4F0F1; color:#16283C; font-weight:600; font-size:.85rem; padding:.75rem 1.4rem; border-radius:999px; text-decoration:none; transition:background .15s; }
  .gp-branch-cta:hover{ background:#d2e4e2; }

  /* ===== Confianza editorial (franja puente) ===== */
  .gp-trust-strip{ display:flex; flex-direction:column; padding-top:2.5rem; border-top:1px solid #E8E3DC; }
  @media (min-width:640px){ .gp-trust-strip{ flex-direction:row; } }
  .gp-trust-items{ display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; flex:1; }
  @media (max-width:820px){ .gp-trust-items{ grid-template-columns:1fr; gap:1.25rem; } }
  .gp-trust-item{ display:flex; gap:.85rem; align-items:flex-start; }
  .gp-trust-ico{ width:34px; height:34px; border-radius:10px; background:#E4F0F1; color:#16283C; display:grid; place-items:center; flex-shrink:0; }
  .gp-trust-item h3{ font-size:.88rem; font-weight:700; color:#0A1628; }
  .gp-trust-item p{ font-size:.78rem; color:#8198A8; margin-top:.3rem; line-height:1.5; }

  .final-cta{ position:relative; overflow:hidden; background:radial-gradient(120% 90% at 35% 45%, #2F6E77 0%, #16323a 45%, #0e2126 75%, #0A1628 100%); }
  .final-cta::after{ content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(10,22,40,.35) 0%, rgba(10,22,40,.05) 45%); }
  .gp-sub-form{ display:flex; flex-wrap:wrap; align-items:stretch; gap:.7rem; margin-top:2.25rem; max-width:760px; }
  .gp-sub-row{ display:flex; flex-wrap:wrap; gap:.7rem; flex:1; min-width:280px; }
  .gp-sub-input, .gp-sub-select{ font-family:inherit; font-size:.92rem; color:#0A1628; background:#fff; border:1px solid rgba(255,255,255,.14); border-radius:14px; padding:.9rem 1.1rem; outline:none; }
  .gp-sub-input{ flex:1; min-width:160px; }
  .gp-sub-select{ flex:1.6; min-width:260px; }
  .gp-sub-select{ color:#42566B; cursor:pointer; }
  .gp-sub-input:focus, .gp-sub-select:focus{ outline:2px solid #8FCCD7; outline-offset:1px; }
  .gp-sub-form .btn{ white-space:nowrap; }
  @media (max-width:640px){ .gp-sub-form{ flex-direction:column; } .gp-sub-row{ flex-direction:column; } }
  #footer{ position:relative; z-index:3; background:#FCFAF6; border-radius:28px 28px 0 0; margin-top:-40px; }

  /* ===== reveal ===== */
  .reveal{ opacity:0; transform:translateY(20px); transition:opacity .7s cubic-bezier(.2,.7,.3,1), transform .7s cubic-bezier(.2,.7,.3,1); }
  .reveal.in{ opacity:1; transform:none; }
  .reveal[data-d="1"]{ transition-delay:.05s; }
  .reveal[data-d="2"]{ transition-delay:.12s; }
  .reveal[data-d="3"]{ transition-delay:.19s; }

  ::-webkit-scrollbar{ width:10px; }
  :focus-visible{ outline:2px solid #3A6465; outline-offset:2px; border-radius:4px; }

  @media (max-width:767px){
    #gp-root{ padding-top:2rem; padding-bottom:2.5rem; }
    .gp-stats{ padding-top:2.5rem; padding-bottom:3.5rem; }
    .gp-read-grid{ display:flex; flex-wrap:nowrap; overflow-x:auto; gap:1rem; margin-top:1.75rem; padding-bottom:.5rem; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
    .gp-read-grid::-webkit-scrollbar{ display:none; }
    .gp-read-card{ flex:0 0 82%; max-width:340px; }
  }
