    .hero{position:relative;margin-top:0;height:62vh;min-height:380px;overflow:hidden;}
    .hero-slide{
      position:absolute;inset:0;width:100%;height:100%;
      object-fit:cover;filter:saturate(0.95);
      opacity:0;transition:opacity 2.2s ease;
    }
    .hero-slide.active{opacity:1;}
    .hero-overlay{
      position:absolute;inset:0;
      background:linear-gradient(180deg, rgba(20,19,17,0.05) 0%, rgba(20,19,17,0.55) 78%, var(--bg) 100%);
      display:flex;flex-direction:column;justify-content:flex-end;
      padding:0 0 56px;
      pointer-events:none;
    }
    .hero-overlay .wrap{width:100%;pointer-events:auto;}
    .hero h1{color:#f3efe6;font-size:clamp(2.1rem,5.6vw,4rem);margin:0 0 10px;max-width:16ch;}
    .hero p{color:#d8d2c4;font-size:1.05rem;max-width:52ch;margin:0;}

    .intro{padding:52px 0 8px;}
    .intro p{color:var(--ink-dim);max-width:70ch;font-size:1.05rem;}

    .tiles{
      display:grid;grid-template-columns:repeat(2,1fr);
      grid-auto-rows:38vw;grid-auto-flow:dense;
      gap:3px;margin-top:36px;background:transparent;
    }
    @media(min-width:640px){.tiles{grid-template-columns:repeat(4,1fr);grid-auto-rows:22vw;}}
    @media(min-width:980px){.tiles{grid-template-columns:repeat(6,1fr);grid-auto-rows:15vw;}}
    @media(min-width:1180px){.tiles{grid-auto-rows:170px;}}
    .tile{
      position:relative;background:var(--bg);overflow:hidden;
    }
    .tile.one{grid-column:span 1;grid-row:span 1;}
    .tile.large{grid-column:span 2;grid-row:span 2;}
    .tile.small{grid-column:span 2;grid-row:span 1;}
    .tile.xl{grid-column:span 2;grid-row:span 3;}
    @media(min-width:640px){.tile.xl{grid-column:span 3;grid-row:span 2;}}
    .tile img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease, transform .6s ease, filter .4s ease;filter:grayscale(0.25) brightness(0.92);}
    .tile img.loaded{opacity:1;}
    .tile:hover img{transform:scale(1.045);filter:grayscale(0) brightness(1);}
    .tile .label{
      position:absolute;left:0;right:0;bottom:0;
      padding:14px 16px;
      font-family:'Fraunces',serif;font-size:0.98rem;color:#f2eee4;
      background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.55) 100%);
    }
    .tile.large .label{font-size:1.35rem;padding:20px 22px;}
    .tile.small .label{font-size:1.1rem;padding:16px 18px;}
    .tile.one .label{font-size:0.92rem;padding:12px 14px;}
    .tile.xl .label{font-size:1.55rem;padding:24px 26px;}
    .tile.pending{cursor:default;}
    .tile.pending img{filter:grayscale(0.6) brightness(0.6);}
    .tile.pending .label{color:#c9c3b5;}
    .tile.pending .soon{
      font-family:'Work Sans',sans-serif;font-size:0.62rem;letter-spacing:0.12em;
      color:var(--accent);display:block;margin-top:2px;
    }
    .tile a{display:block;width:100%;height:100%;}

    .cta{padding:72px 0 24px;border-top:1px solid var(--line);margin-top:70px;}
    .cta h2{font-size:1.6rem;margin:0 0 12px;max-width:24ch;}
    .cta p{color:var(--ink-dim);max-width:56ch;margin:0 0 20px;}
    .cta a.btn{
      display:inline-block;border:1px solid var(--accent-dim);color:var(--accent);
      padding:11px 22px;font-size:0.9rem;letter-spacing:0.01em;
    }
    .cta a.btn:hover{background:var(--accent);color:var(--bg);border-color:var(--accent);}

    .hero-topbar{
      position:absolute;top:0;left:0;right:0;z-index:15;
      background:linear-gradient(180deg, rgba(10,9,7,0.88) 0%, rgba(10,9,7,0) 100%);
      padding-bottom:70px;
      pointer-events:none;
    }
    .hero-topbar .wrap{
      padding-top:40px;
      display:flex;flex-direction:column;align-items:flex-start;gap:16px;
      pointer-events:auto;
    }
    .hero-topbar .logo-big{height:40px;width:auto;display:block;}
    @media(max-width:640px){.hero-topbar .logo-big{height:32px;}}
    .hero-topbar nav{display:flex;gap:24px;}
    .hero-topbar nav a{
      color:#f3efe6;font-size:0.88rem;letter-spacing:0.01em;
      padding-bottom:2px;border-bottom:1px solid transparent;
    }
    .hero-topbar nav a:hover{border-bottom-color:var(--accent);}
    .hero-topbar nav a.current{color:#ffffff;border-bottom-color:var(--accent);}
    