/* Homepage below the E7 hero — mirrors the live robertrotuk.com layout in the E7 palette. Prefix: hv- */
.hv-eyebrow{display:block;font:500 13px var(--f-body);letter-spacing:.09em;text-transform:uppercase;color:var(--brown)}
.hv-amber{color:var(--amber)}
.hv-link{display:inline-flex;align-items:center;gap:10px;font:600 15px var(--f-body);color:var(--brown);text-decoration:none}
.hv-arr{width:16px;height:16px;transition:transform .25s}
a:hover > .hv-link .hv-arr,.hv-link:hover .hv-arr,a:hover .hv-link .hv-arr{transform:translateX(3px)}
.hv-btn{margin-top:14px}

/* 1. Meet Robert */
.hv-meet{color:#C9C1B6}
.hv-meet-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:center;padding-block:88px 64px}
.hv-frame{border:1px solid var(--stone);padding:10px}
.hv-frame-in{background:#141312;padding-top:48px;overflow:hidden}
.hv-frame-in img{display:block;width:100%;height:auto}
.hv-meet .hv-eyebrow{color:var(--amber)}
.hv-meet h2{margin:10px 0 22px;font:700 clamp(36px,4.4vw,52px)/1 var(--f-display);letter-spacing:-.04em;color:#fff}
.hv-meet p{margin:0 0 18px;max-width:620px;font-size:17px;line-height:1.7}
.hv-meet strong{color:#fff}

/* shared light sections with a sticky side column */
.hv-sec{padding-block:112px}
.hv-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:56px;align-items:start}
.hv-split.hv-split-rev{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.hv-side{align-self:stretch}
.hv-sticky{position:sticky;top:116px}
.hv-side h2{margin:10px 0 28px;font:700 clamp(34px,3.5vw,48px)/1.02 var(--f-display);letter-spacing:-.04em;color:var(--ink)}
.hv-side p{margin:0;font-size:16.5px;line-height:1.7;color:#2B2621}
.hv-side strong{color:var(--ink)}

/* 2. Resources */
.hv-res-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:80px}
.hv-res-item{display:flex;flex-direction:column;align-items:flex-start;padding:0 28px 0 40px;border-left:1px solid var(--brown-light);text-decoration:none;color:var(--ink)}
.hv-lottie{display:block;width:140px;height:140px;margin:0 0 22px -12px}
.hv-lottie svg{display:block}
.hv-no{font:500 15px var(--f-body);color:var(--ink)}
.hv-res-item h3{margin:4px 0 22px;font:600 23px/1.2 var(--f-display);letter-spacing:-.02em}
.hv-res-item p{margin:0 0 30px;font-size:16px;line-height:1.75;color:#3B352F}
.hv-res-item .hv-link{margin-top:auto;padding-left:20px}
.hv-res-item:hover h3{color:var(--brown)}

/* 3. Thought Leadership */
.hv-tl{color:var(--stone);padding-bottom:88px}
.hv-divider{border:0;border-top:1px solid rgba(255,255,255,.14);margin:0 0 56px}
.hv-tl-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:32px}
.hv-tl-head h2{font:700 clamp(34px,4vw,50px)/1 var(--f-display);letter-spacing:-.04em;color:#fff}
.hv-tl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.hv-tl-card{display:flex;flex-direction:column;gap:12px;padding:12px 12px 20px;border-radius:18px;background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);text-decoration:none;color:#fff;transition:transform .25s,border-color .25s}
.hv-tl-card:hover{transform:translateY(-3px);border-color:rgba(214,170,120,.45)}
.hv-tl-img img,.hv-tl-img .ins-ph{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px}
.hv-tl-img img{background:var(--ink-0)}
.hv-tl-meta{display:flex;gap:12px;padding:4px 8px 0;font:500 12px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--stone-dim)}
.hv-tl-cat{color:var(--amber)}
.hv-tl-t{padding:0 8px;font:600 21px/1.25 var(--f-display);letter-spacing:-.02em}
.hv-tl-card .hv-link{padding:4px 8px 0;margin-top:auto;color:var(--amber)}

/* 4–5. Tool grids */
.hv-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;row-gap:56px}
.hv-tool{display:flex;flex-direction:column;text-decoration:none;color:var(--ink)}
.hv-tool-img{display:block;aspect-ratio:1/1;border-radius:8px;overflow:hidden;background:var(--ink-0);transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s}
.hv-tool-img img{display:block;width:100%;height:100%;object-fit:cover}
.hv-tool:hover .hv-tool-img{transform:translateY(-4px);box-shadow:0 16px 36px rgba(21,19,16,.16)}
.hv-tool-body{display:flex;flex-direction:column;gap:8px;padding:26px 22px 0}
.hv-mins{font-size:14px;color:var(--muted)}
.hv-tool-t{font:600 22px/1.25 var(--f-display);letter-spacing:-.02em}
.hv-tool .hv-link{margin-top:22px;color:var(--ink)}
.hv-more{margin:64px 0 0;text-align:center}
.hv-more .hv-link{color:var(--ink)}
.hv-toolsec + .hv-toolsec{padding-top:24px}

/* 6. Let's Chat */
.hv-chat{margin-block:12px;color:#E8E1D7}
.hv-chat .wrap{padding-block:104px}
.hv-chat .hv-eyebrow{color:var(--amber)}
.hv-chat-head{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.hv-chat h2{margin-top:10px;font:700 clamp(40px,5vw,60px)/1 var(--f-display);letter-spacing:-.04em;color:#fff}
.hv-chat hr{border:0;border-top:1px solid rgba(255,255,255,.16);margin:36px 0 30px}
.hv-chat p{margin:0;max-width:620px;font-size:18px;line-height:1.65}

@media (max-width:900px){
  .hv-meet-in{grid-template-columns:1fr;gap:40px;padding-block:64px 48px}
  .hv-frame{max-width:420px}
  .hv-sec{padding-block:80px}
  .hv-split,.hv-split.hv-split-rev{grid-template-columns:1fr;gap:40px}
  .hv-split-rev .hv-side{order:-1}
  .hv-sticky{position:static}
  .hv-res-grid{grid-template-columns:1fr;row-gap:56px}
  .hv-res-item{padding:0 0 0 24px}
  .hv-tools-grid{column-gap:20px;row-gap:40px}
  .hv-tool-body{padding:18px 4px 0}
  .hv-tool-t{font-size:19px}
  .hv-tl{padding-bottom:64px}
  .hv-divider{margin-bottom:40px}
  .hv-chat .wrap{padding-block:72px}
  .hv-tl-grid{grid-template-columns:1fr}
  .hv-more{margin-top:44px}
}
@media (max-width:560px){
  .hv-tools-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.hv-tool-img,.hv-tl-card,.hv-arr{transition:none}}
