/* GH Custom Pages V2 */
:root{
  --gh-bg:#080808;
  --gh-panel:#0f0f10;
  --gh-line:rgba(255,255,255,.13);
  --gh-text:#fff8ee;
  --gh-muted:rgba(255,248,238,.74);
  --gh-red:#ef3d3d;
}

.ghcp-page{
  min-height:100vh;
  background:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.035) 1px, transparent 1px),
    radial-gradient(circle at 82% 4%, rgba(130,20,20,.22), transparent 34%),
    var(--gh-bg);
  background-size:72px 72px,72px 72px,100% 100%,100% 100%;
  color:var(--gh-text);
}

.ghcp-section{width:calc(100% - 96px);max-width:1800px;margin:0 auto;border-top:1px solid var(--gh-line);}
.ghcp-hero{min-height:auto;display:grid;grid-template-columns:1.18fr .82fr;gap:60px;align-items:center;padding:72px 0 54px;}
.ghcp-eyebrow{color:var(--gh-red);text-transform:uppercase;letter-spacing:.34em;font-size:13px;font-weight:800;margin-bottom:22px;}
.ghcp-title{margin:0;text-transform:uppercase;letter-spacing:-.055em;line-height:.86;font-size:clamp(56px,6vw,110px);color:var(--gh-text);white-space:pre-line;}
.ghcp-subtitle{margin-top:28px;color:var(--gh-red);text-transform:uppercase;letter-spacing:.32em;font-weight:800;font-size:13px;}
.ghcp-lead{margin:24px 0 0;max-width:860px;color:var(--gh-text);font-size:clamp(21px,1.65vw,30px);line-height:1.25;white-space:pre-line;}

.ghcp-image{position:relative;min-height:420px;border:1px solid var(--gh-line);overflow:hidden;background:rgba(255,255,255,.03);}
.ghcp-image img{width:100%;height:100%;object-fit:cover;display:block;opacity:.82;filter:saturate(.75) contrast(1.1);}
.ghcp-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--gh-bg) 0%,rgba(8,8,8,.58) 25%,rgba(8,8,8,0) 72%);pointer-events:none;}

.ghcp-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:64px 0;}
.ghcp-card{position:relative;min-height:390px;padding:48px;border:1px solid var(--gh-line);background:linear-gradient(90deg,rgba(140,20,20,.12),rgba(255,255,255,.015));overflow:hidden;}
.ghcp-card-media{position:absolute;inset:0 0 0 46%;opacity:.45;}
.ghcp-card-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) contrast(1.1);}
.ghcp-card-media:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--gh-panel) 0%,rgba(15,15,16,.82) 22%,rgba(15,15,16,.16) 72%);z-index:1;}
.ghcp-card-content{position:relative;z-index:2;max-width:720px;}
.ghcp-card h2{margin:72px 0 0;text-transform:uppercase;letter-spacing:-.045em;line-height:.9;font-size:clamp(42px,4vw,86px);white-space:pre-line;}
.ghcp-card h3{margin:36px 0 0;color:var(--gh-red);text-transform:uppercase;letter-spacing:.24em;font-size:13px;}
.ghcp-card p{margin:48px 0 0;max-width:760px;color:var(--gh-muted);font-size:20px;line-height:1.45;white-space:pre-line;}

.ghcp-personal-simple{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;padding:80px 0 104px;align-items:stretch;}
.ghcp-personal-copy{align-self:center;}
.ghcp-personal-copy h2{margin:0 0 34px;max-width:980px;text-transform:uppercase;letter-spacing:-.04em;line-height:.94;font-size:clamp(42px,4.8vw,86px);}
.ghcp-personal-copy p{margin:0 0 24px;max-width:860px;color:var(--gh-muted);font-size:20px;line-height:1.56;}

.ghcp-personal-carousel{position:relative;margin:0;min-height:620px;border:1px solid var(--gh-line);overflow:hidden;background:rgba(255,255,255,.03);}
.ghcp-personal-carousel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .7s ease;filter:saturate(.78) contrast(1.08);}
.ghcp-personal-carousel img.is-active{opacity:.86;}
.ghcp-personal-carousel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.58),rgba(8,8,8,0) 58%),linear-gradient(0deg,rgba(8,8,8,.24),rgba(8,8,8,0));pointer-events:none;}

.ghcp-carousel-btn{
  position:absolute;
  z-index:4;
  bottom:28px;
  width:58px;
  height:58px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(8,8,8,.72);
  color:var(--gh-text);
  cursor:pointer;
  font-size:22px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  backdrop-filter:blur(10px);
}

.ghcp-carousel-btn.prev{
  right:96px;
}

.ghcp-carousel-btn.next{
  right:28px;
}

.ghcp-carousel-btn:hover{
  border-color:var(--gh-red);
  color:var(--gh-red);
}

@media(max-width:980px){
  .ghcp-section{width:calc(100% - 40px);}
  .ghcp-hero,.ghcp-grid,.ghcp-personal-simple{grid-template-columns:1fr;}
  .ghcp-image{min-height:360px;}
  .ghcp-card-media{inset:0;opacity:.22;}
  .ghcp-personal-carousel{min-height:480px;}
}
