:root{
    --ink:#0c1410;--moss:#0f3d2e;--green:#1f7a4d;--green-bright:#34c77b;--green-soft:#8fe3b4;
    --cream:#f3f6ef;--paper:#e9efe3;--line:rgba(15,61,46,.16);--gold:#cfa64e;
    --shadow:0 24px 60px -28px rgba(12,40,28,.5);
    --display:'Fraunces',Georgia,serif;--body:'Outfit',system-ui,sans-serif;--mono:'JetBrains Mono',monospace;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:var(--body);background:var(--cream);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  a{color:inherit;text-decoration:none}
  img{display:block;max-width:100%}
  ::selection{background:var(--green-bright);color:#04130b}
  .wrap{max-width:1080px;margin:0 auto;padding:0 28px}

  nav{position:sticky;top:0;z-index:60;background:rgba(243,246,239,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
  nav .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
  .brand{font-family:var(--display);font-weight:600;font-size:1.12rem;letter-spacing:-.01em;display:flex;align-items:center;gap:.55rem}
  .brand .dot{width:11px;height:11px;border-radius:50%;background:var(--green-bright);box-shadow:0 0 0 4px rgba(52,199,123,.22)}
  .navlinks{display:flex;gap:1.6rem;font-size:.82rem;font-weight:500;letter-spacing:.02em}
  .navlinks a{color:var(--moss);opacity:.72;transition:opacity .2s}
  .navlinks a:hover{opacity:1}
  .nav-cta{font-family:var(--mono);font-size:.74rem;border:1px solid var(--moss);padding:.4rem .85rem;border-radius:999px;color:var(--moss);transition:all .2s}
  .nav-cta:hover{background:var(--moss);color:var(--cream)}
  @media(max-width:680px){.navlinks{display:none}}

  header.hero{position:relative;padding:90px 0 70px;overflow:hidden}
  header.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(1100px 520px at 78% -8%, rgba(52,199,123,.20), transparent 60%),radial-gradient(760px 460px at 6% 108%, rgba(15,61,46,.12), transparent 60%);z-index:0}
  .hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.55fr 1fr;gap:54px;align-items:center}
  .eyebrow{font-family:var(--mono);font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--green);margin-bottom:1.3rem;display:flex;align-items:center;gap:.7rem}
  .eyebrow::before{content:"";width:34px;height:1px;background:var(--green)}
  h1.title{font-family:var(--display);font-weight:600;font-size:clamp(2.7rem,6vw,4.5rem);line-height:.98;letter-spacing:-.025em;color:var(--moss)}
  h1.title em{font-style:italic;color:var(--green)}
  .lede{margin-top:1.5rem;font-size:1.07rem;max-width:34rem;color:#28392f}
  .hero-meta{margin-top:2rem;display:flex;flex-wrap:wrap;gap:.6rem}
  .chip{font-family:var(--mono);font-size:.72rem;letter-spacing:.03em;padding:.4rem .8rem;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.5);color:var(--moss)}
  .hero-actions{margin-top:2.3rem;display:flex;gap:.9rem;flex-wrap:wrap}
  .btn{font-weight:600;font-size:.9rem;padding:.78rem 1.5rem;border-radius:999px;transition:transform .15s,box-shadow .2s,background .2s,color .2s,border-color .2s;display:inline-flex;align-items:center;gap:.5rem}
  .btn-primary{background:var(--moss);color:var(--cream);box-shadow:var(--shadow)}
  .btn-primary:hover{transform:translateY(-2px)}
  .btn-ghost{border:1px solid var(--moss);color:var(--moss)}
  .btn-ghost:hover{background:var(--moss);color:var(--cream)}
  .portrait{position:relative}
  .portrait .frame{aspect-ratio:4/5;border-radius:20px;overflow:hidden;background:linear-gradient(155deg,var(--moss),var(--green) 60%,var(--green-bright));box-shadow:var(--shadow);display:flex;align-items:flex-end;justify-content:center;position:relative}
  .portrait .frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
  .portrait .frame::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to top, rgba(12,20,16,.28), transparent 45%);pointer-events:none}
  .monogram{font-family:var(--display);font-weight:600;font-size:8rem;color:rgba(255,255,255,.9);line-height:1;letter-spacing:-.04em;margin-bottom:.4rem;text-shadow:0 8px 24px rgba(0,0,0,.2);position:relative;z-index:1}
  .portrait .tagcard{position:absolute;bottom:-22px;left:-22px;background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:.85rem 1.05rem;box-shadow:var(--shadow)}
  .tagcard .k{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--green);opacity:.8}
  .tagcard .v{font-family:var(--display);font-weight:600;font-size:1.15rem;color:var(--moss);margin-top:.15rem}
  @media(max-width:820px){.hero .wrap{grid-template-columns:1fr;gap:60px}.portrait{max-width:300px}}

  .strip{background:var(--moss);color:var(--cream)}
  .strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:0}
  .stat{padding:30px 22px;position:relative}
  .stat:not(:last-child)::after{content:"";position:absolute;right:0;top:24px;bottom:24px;width:1px;background:rgba(255,255,255,.14)}
  .stat .num{font-family:var(--display);font-weight:600;font-size:2.1rem;color:var(--green-soft);line-height:1}
  .stat .lab{font-size:.8rem;opacity:.78;margin-top:.45rem}
  @media(max-width:680px){.strip .wrap{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2)::after{display:none}}

  section{padding:84px 0}
  .sec-head{display:flex;align-items:baseline;gap:1rem;margin-bottom:2.6rem}
  .sec-head .idx{font-family:var(--mono);font-size:.8rem;color:var(--green);letter-spacing:.1em}
  .sec-head h2{font-family:var(--display);font-weight:600;font-size:clamp(1.8rem,3.6vw,2.6rem);letter-spacing:-.02em;color:var(--moss)}
  .sec-head .rule{flex:1;height:1px;background:var(--line);align-self:center}
  .about-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:48px}
  .about-grid p{font-size:1.05rem;color:#27372e;margin-bottom:1.1rem}
  .about-grid p strong{color:var(--moss);font-weight:600}
  .about-grid p:first-child{font-family:var(--display);font-size:1.32rem;line-height:1.45;color:var(--moss)}
  .panel{background:rgba(255,255,255,.55);border:1px solid var(--line);border-radius:16px;padding:1.6rem 1.7rem;height:fit-content}
  .panel h3{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--green);margin-bottom:1rem}
  .skill-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.4rem}
  .skill-row span{font-size:.82rem;padding:.35rem .7rem;border-radius:8px;background:var(--paper);color:var(--moss);font-weight:500}
  .panel .meta-line{display:flex;justify-content:space-between;font-size:.88rem;padding:.5rem 0;border-top:1px solid var(--line)}
  .panel .meta-line .k{color:#5a6b60}
  .panel .meta-line .v{font-weight:600;color:var(--moss)}
  @media(max-width:820px){.about-grid{grid-template-columns:1fr;gap:32px}}

  .game{background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:22px;overflow:hidden;margin-bottom:42px;box-shadow:0 18px 50px -34px rgba(12,40,28,.45)}
  .game-header{padding:30px 36px 26px;border-bottom:1px solid var(--line)}
  .game-body{display:grid;grid-template-columns:1fr 1.1fr}
  @media(max-width:820px){.game-body{grid-template-columns:1fr}}
  .game-foot{padding:24px 36px 28px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:1rem}
  .carousel{position:relative;background:var(--moss);overflow:hidden;height:100%;min-height:280px}
  .slides{display:flex;transition:transform .5s cubic-bezier(.65,.05,.36,1);height:100%}
  .slide{min-width:100%;position:relative;overflow:hidden;background:var(--moss)}
  .slide img{width:100%;height:100%;object-fit:cover;display:block}
  @media(max-width:820px){.carousel{min-height:0}.slide{aspect-ratio:16/10}}
  .slide .ph,.slide .ph2{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;text-align:center;padding:1.4rem;color:#fff}
  .slide .ph{background:linear-gradient(135deg,#0f3d2e,#1f7a4d)}
  .slide .ph2{background:linear-gradient(135deg,#16513a,#34c77b)}
  .slide .ph .big,.slide .ph2 .big{font-family:var(--display);font-weight:600;font-size:1.45rem;line-height:1.15}
  .slide .ph .sm,.slide .ph2 .sm{font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;opacity:.8}
  @media(max-width:780px){.carousel{min-height:0}.slide{aspect-ratio:16/10}}
  .slide.video::after{content:"▶";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;background:rgba(15,61,46,.82);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;padding-left:5px;pointer-events:none;transition:transform .2s,background .2s}
  .slide.video:hover::after{transform:translate(-50%,-50%) scale(1.08);background:var(--green)}
  .slide .vtag{position:absolute;bottom:12px;left:12px;font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;background:rgba(15,61,46,.8);color:#fff;padding:.3rem .6rem;border-radius:6px;z-index:2}
  .car-btn{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:none;background:rgba(255,255,255,.85);color:var(--moss);font-size:1.1rem;cursor:pointer;z-index:4;display:flex;align-items:center;justify-content:center;transition:background .2s}
  .car-btn:hover{background:#fff}
  .car-btn.prev{left:12px}.car-btn.next{right:12px}
  .dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:7px;z-index:4}
  .dots button{width:8px;height:8px;border-radius:50%;border:none;background:rgba(255,255,255,.45);cursor:pointer;padding:0;transition:background .2s,width .2s}
  .dots button.active{background:#fff;width:20px;border-radius:4px}
  .game-role{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--green);margin-bottom:.7rem}
  .game-header h3{font-family:var(--display);font-weight:600;font-size:1.85rem;letter-spacing:-.02em;color:var(--moss);line-height:1.05}
  .game-years{font-size:.85rem;color:#5a6b60;margin-top:.3rem;margin-bottom:1.1rem}
  .pub{display:flex;align-items:center;gap:.7rem;margin-bottom:1.2rem;flex-wrap:wrap}
  .pub .pub-lab{font-family:var(--mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:#5a6b60;margin-right:.1rem}
  .pub .logo{display:inline-flex;align-items:center;height:30px;padding:0 .7rem;border:1px solid var(--line);border-radius:7px;background:rgba(255,255,255,.7);font-weight:700;letter-spacing:-.01em;font-size:.78rem;color:var(--moss);gap:.35rem}
  .pub .logo .mk{width:13px;height:13px;border-radius:3px;display:inline-block}
  .pub .logo.imp .mk{background:linear-gradient(135deg,#c8a24a,#8a6a1f)}
  .io-logo-badge{height:18px;width:auto;display:block}
  .pub .logo.sf .mk{background:linear-gradient(135deg,#1f7a4d,#0f3d2e)}
  .pub .logo.sf{padding:0 .7rem}
  .sf-logo-badge{height:17px;width:auto;display:block}
  .pub .plus{color:#9aa89f;font-size:.85rem}
  .game-desc{font-size:.97rem;color:#2a3a30;margin-bottom:1.3rem}
  /* platform stats */
  .pstats{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:1.4rem}
  @media(max-width:480px){.pstats{grid-template-columns:1fr}}
  .pstats-3{grid-template-columns:repeat(3,1fr)}
  @media(max-width:560px){.pstats-3{grid-template-columns:1fr}}
  .pcard{border:1px solid var(--line);border-radius:11px;padding:.7rem .85rem;background:rgba(255,255,255,.55)}
  .pcard .head{display:flex;align-items:center;gap:.4rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#5a6b60;margin-bottom:.4rem}
  .pcard .head .ic{width:14px;height:14px;border-radius:4px;flex:none}
  .pcard .head .ic.gp{background:linear-gradient(135deg,#34c77b,#1f7a4d)}
  .pcard .head .ic.ap{background:linear-gradient(135deg,#3a3a3c,#0c1410)}
  .pcard .head .ic.st{background:linear-gradient(135deg,#3b5d7a,#16212b)}
  .pcard .figs{display:flex;align-items:baseline;gap:.8rem}
  .pcard .rt{font-family:var(--display);font-weight:600;font-size:1.25rem;color:var(--moss);line-height:1}
  .pcard .rt .star{color:var(--gold);font-size:.85rem}
  .pcard .dl{font-size:.78rem;color:#3a4a40}
  .pcard .dl b{color:var(--moss);font-weight:600}
  .specs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.4rem}
  .specs span{font-family:var(--mono);font-size:.7rem;padding:.32rem .65rem;border:1px solid var(--line);border-radius:7px;background:rgba(255,255,255,.6);color:var(--moss)}
  .ratings{display:flex;gap:1.6rem;margin-bottom:1.4rem;flex-wrap:wrap}
  .rate .score{font-family:var(--display);font-weight:600;font-size:1.5rem;color:var(--moss)}
  .rate .score .star{color:var(--gold);font-size:1.1rem}
  .rate .src{font-size:.72rem;color:#5a6b60;letter-spacing:.02em}
  .links{display:flex;gap:.6rem;flex-wrap:wrap}
  .lk{font-size:.82rem;font-weight:600;padding:.55rem 1rem;border-radius:9px;display:inline-flex;align-items:center;gap:.45rem;transition:all .18s}
  .lk svg{width:15px;height:15px;flex:none}
  .lk-store{background:var(--moss);color:var(--cream)}
  .lk-store:hover{background:var(--green)}
  .lk-trailer{border:1px solid var(--moss);color:var(--moss)}
  .lk-trailer:hover{background:var(--moss);color:var(--cream)}
  .contrib{padding:30px 34px;background:rgba(233,239,227,.55)}
  .contrib h4{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--green);margin-bottom:1.1rem}
  .contrib ul{list-style:none;display:flex;flex-direction:column;gap:.85rem}
  .contrib li{font-size:.93rem;color:#2a3a30;padding-left:1.4rem;position:relative;line-height:1.5}
  .contrib li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:2px;background:var(--green-bright)}
  .contrib li b{color:var(--moss);font-weight:600}
  .note{font-size:.78rem;color:#6a7a70;font-style:italic;margin-top:1.2rem}

  .exp-groups{display:flex;flex-direction:column;gap:2.6rem}
  .exp-co{display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap;margin-bottom:1.2rem;padding-bottom:.8rem;border-bottom:1px solid var(--line)}
  .exp-co-name{font-family:var(--display);font-weight:600;font-size:1.4rem;letter-spacing:-.01em;color:var(--moss)}
  .exp-co-loc{font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;color:#5a6b60;display:inline-flex;align-items:center;gap:.35rem}
  .sf-logo{height:1.4rem;width:auto;display:inline-block;vertical-align:middle;position:relative;top:-1px}
  .timeline{position:relative;margin-top:.5rem;padding-left:28px}
  .timeline::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:2px;background:var(--line)}
  .tl-item{position:relative;padding:0 0 26px}
  .tl-item:last-child{padding-bottom:0}
  .tl-item::before{content:"";position:absolute;left:-25px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--cream);border:2px solid var(--green)}
  .tl-item.cur::before{background:var(--green-bright);border-color:var(--green-bright);box-shadow:0 0 0 4px rgba(52,199,123,.2)}
  .tl-role{font-family:var(--display);font-weight:600;font-size:1.12rem;color:var(--moss)}
  .tl-when{font-family:var(--mono);font-size:.72rem;color:#6a7a70;margin-top:.15rem;margin-bottom:.6rem;letter-spacing:.02em}
  .tl-game{font-size:1rem;color:var(--green);font-weight:500;margin-top:.3rem;padding-left:.9rem}
  .tl-gdate{font-family:var(--mono);font-size:.68rem;font-weight:400;color:#8a9890;letter-spacing:.02em;margin-left:.35rem}

  /* blog */
  .blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
  @media(max-width:820px){.blog-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.blog-grid{grid-template-columns:1fr}}
  .post{display:flex;flex-direction:column;background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:transform .18s,box-shadow .2s;cursor:pointer}
  .post:hover{transform:translateY(-4px);box-shadow:0 22px 48px -30px rgba(12,40,28,.5)}
  .post .cover{aspect-ratio:16/9;position:relative;overflow:hidden}
  .post .cover .tagline{position:absolute;bottom:10px;left:12px;font-family:var(--mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(15,61,46,.78);padding:.28rem .55rem;border-radius:6px}
  .post .cover.c1{background:linear-gradient(135deg,#0f3d2e,#1f7a4d)}
  .post .cover.c2{background:linear-gradient(135deg,#16513a,#34c77b)}
  .post .cover.c3{background:linear-gradient(135deg,#1f7a4d,#8fe3b4)}
  .post .cover.c4{background:linear-gradient(135deg,#0c2c22,#2f6f4f)}
  .post .cover.c5{background:linear-gradient(135deg,#14463a,#3aa46e)}
  .post .cover.c6{background:linear-gradient(135deg,#0f3d2e,#34c77b)}
  .post-body{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1}
  .post-date{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--green);margin-bottom:.55rem}
  .post h3{font-family:var(--display);font-weight:600;font-size:1.18rem;line-height:1.15;letter-spacing:-.01em;color:var(--moss);margin-bottom:.55rem}
  .post p{font-size:.9rem;color:#2a3a30;flex:1}
  .post .read{margin-top:1rem;font-size:.82rem;font-weight:600;color:var(--green);display:inline-flex;align-items:center;gap:.35rem}
  .post:hover .read{gap:.6rem}
  .blog-foot{margin-top:2.4rem;text-align:center}

  /* speaking */
  .talks{display:flex;flex-direction:column;gap:20px}
  .talk{display:grid;grid-template-columns:auto 1fr auto;gap:1.4rem;align-items:center;background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:16px;padding:1.5rem 1.7rem;transition:transform .18s,box-shadow .2s}
  .talk:hover{transform:translateY(-3px);box-shadow:0 20px 46px -30px rgba(12,40,28,.5)}
  .talk-year{font-family:var(--display);font-weight:600;font-size:1.6rem;color:var(--green);line-height:1;min-width:3.4rem}
  .talk-year .mo{display:block;font-family:var(--mono);font-size:.6rem;letter-spacing:.1em;color:#5a6b60;margin-top:.3rem;text-transform:uppercase}
  .talk-main .role{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin-bottom:.4rem}
  .talk-main h3{font-family:var(--display);font-weight:600;font-size:1.2rem;letter-spacing:-.01em;color:var(--moss);line-height:1.2;margin-bottom:.35rem}
  .talk-main .event{font-size:.9rem;color:#2a3a30}
  .talk-main .event b{color:var(--moss);font-weight:600}
  .talk-main .meta{font-size:.82rem;color:#5a6b60;margin-top:.3rem}
  .talk-link{font-size:.82rem;font-weight:600;padding:.55rem 1rem;border-radius:9px;display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--moss);color:var(--moss);transition:all .18s;white-space:nowrap}
  .talk-link:hover{background:var(--moss);color:var(--cream)}
  .talk-link svg{width:14px;height:14px;flex:none}
  @media(max-width:680px){.talk{grid-template-columns:1fr;gap:.8rem}.talk-year{font-size:1.3rem;display:flex;align-items:baseline;gap:.6rem}.talk-year .mo{margin-top:0}}

  .contact{background:var(--moss);color:var(--cream);border-radius:26px;padding:60px 48px;text-align:center;position:relative;overflow:hidden}
  .contact::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 360px at 80% 120%, rgba(52,199,123,.3), transparent 60%)}
  .contact > *{position:relative;z-index:1}
  .contact .eyebrow{color:var(--green-soft);justify-content:center}
  .contact .eyebrow::before{background:var(--green-soft)}
  .contact h2{font-family:var(--display);font-weight:600;font-size:clamp(2rem,5vw,3.2rem);letter-spacing:-.02em;line-height:1.02}
  .contact p{max-width:32rem;margin:1.1rem auto 2rem;opacity:.85}
  .contact-links{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap}
  .btn-light{background:transparent;border:1px solid var(--cream);color:var(--cream)}
  .btn-light:hover{background:var(--cream);color:var(--moss)}
  .btn-outline{border:1px solid rgba(255,255,255,.5);color:var(--cream)}
  .btn-outline:hover{background:rgba(255,255,255,.12)}
  footer{padding:40px 0 56px;text-align:center;color:#5a6b60;font-size:.82rem}
  footer .brand{justify-content:center;margin-bottom:.6rem;color:var(--moss)}
  @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
  :focus-visible{outline:2px solid var(--green-bright);outline-offset:3px;border-radius:4px}

  /* lightbox */
  .lightbox{position:fixed;inset:0;z-index:200;background:rgba(8,16,12,.94);display:none;align-items:center;justify-content:center;padding:4vh 2vw}
  .lightbox.open{display:flex}
  .lightbox img{max-width:94vw;max-height:88vh;object-fit:contain;border-radius:10px;box-shadow:0 30px 80px -20px rgba(0,0,0,.7);user-select:none}
  .lb-btn{position:absolute;border:none;background:rgba(243,246,239,.14);color:var(--cream);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;backdrop-filter:blur(4px)}
  .lb-btn:hover{background:rgba(243,246,239,.28)}
  .lb-close{top:20px;right:22px;width:46px;height:46px;border-radius:50%;font-size:1.5rem;line-height:1}
  .lb-nav{top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;font-size:1.8rem;line-height:1}
  .lb-prev{left:18px}.lb-next{right:18px}
  .lb-count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;color:var(--cream);background:rgba(8,16,12,.55);padding:.4rem .8rem;border-radius:999px}
  .slide:not(.video){cursor:zoom-in}
  @media(max-width:600px){.lb-nav{width:42px;height:42px;font-size:1.4rem}.lb-prev{left:8px}.lb-next{right:8px}}