/* High Cap Ventures — self-contained responsive site */
:root{
  --ink:#15221d;--forest:#10241c;--forest-2:#19382c;--sage:#a7b8a8;
  --cream:#f3efe6;--paper:#fbfaf6;--gold:#c49a57;--line:#d8d4c9;
  --muted:#66716b;--white:#fff;--shadow:0 20px 50px rgba(16,36,28,.12);
  --radius:20px;--max:1180px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}
img{max-width:100%;display:block}
a{color:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin:auto}
.narrow{max-width:850px}
.section{padding:105px 0}
.eyebrow{margin:0 0 18px;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:800;color:#50705f}
.eyebrow.light{color:#c9d8cc}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;margin:0;color:var(--forest)}
h1{font-size:clamp(3.3rem,7vw,6.6rem);max-width:900px;letter-spacing:-.045em}
h2{font-size:clamp(2.5rem,4.5vw,4.4rem);letter-spacing:-.035em}
h3{font-size:1.75rem}
p{margin:0 0 1rem}
.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:15px 24px;background:var(--gold);color:#15221d;text-decoration:none;font-weight:800;cursor:pointer;transition:.2s transform,.2s background}
.button:hover{transform:translateY(-2px);background:#d4ad6b}
.button-small{padding:10px 17px}
.text-link{font-weight:800;text-decoration:none;border-bottom:1px solid #6f8077;padding-bottom:4px}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;z-index:999;background:#fff;padding:10px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;padding:22px 0;color:#fff}
.nav-wrap{display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.brand span{display:flex;flex-direction:column;line-height:1}
.brand strong{letter-spacing:.12em;font-size:.92rem}
.brand small{letter-spacing:.3em;font-size:.56rem;margin-top:7px;opacity:.8}
#main-nav{display:flex;align-items:center;gap:28px}
#main-nav>a:not(.button){text-decoration:none;font-size:.93rem;font-weight:700}
.nav-toggle{display:none;border:0;background:none}
.nav-toggle span:not(.sr-only){display:block;width:24px;height:2px;background:#fff;margin:5px}

.hero{min-height:920px;background:var(--forest);position:relative;overflow:hidden;color:#fff;padding:190px 0 105px}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(transparent,rgba(0,0,0,.13))}
.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 310px;gap:70px;align-items:end}
.hero h1{color:#fff}
.hero-lead{font-size:1.27rem;max-width:680px;color:#d9e2dc;margin:30px 0}
.hero-actions{display:flex;align-items:center;gap:27px}
.hero-note{display:flex;gap:12px;align-items:center;margin-top:50px;color:#b9c9bf;font-size:.92rem}
.hero-note p{margin:0}.dot{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 6px rgba(196,154,87,.14)}
.hero-card{background:rgba(246,242,232,.96);color:var(--ink);padding:28px;border-radius:var(--radius);box-shadow:var(--shadow)}
.hero-card>p{text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:900;color:#66766d}
.hero-card ul{list-style:none;padding:0;margin:15px 0 0}
.hero-card li{padding:15px 0;border-top:1px solid var(--line);font-weight:750}
.hero-card li span{color:var(--gold);font-size:.73rem;margin-right:12px}

.intro{text-align:center;background:var(--cream)}
.intro h2{margin-bottom:25px}.intro p:last-child{font-size:1.18rem;color:#48554f}

.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:45px}
.section-heading>p{font-size:1.08rem;color:var(--muted);max-width:520px}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.focus-card{background:#fff;border:1px solid #e3dfd5;border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 35px rgba(17,34,26,.06);transition:.25s transform,.25s box-shadow}
.focus-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.focus-card img{width:100%;aspect-ratio:1.45;object-fit:cover;background:#e9eee8}
.focus-card>div{padding:28px}.focus-card h3{margin:8px 0 12px}.focus-card p{color:var(--muted)}
.card-number{font-weight:900;font-size:.72rem;letter-spacing:.14em;color:var(--gold)}

.approach{background:#e8ede8}
.approach-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center}
.approach-visual img{border-radius:28px;box-shadow:var(--shadow)}
.approach-copy>p:not(.eyebrow){color:#526159;font-size:1.08rem;margin:25px 0 30px}
.steps>div{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:17px 0;border-top:1px solid #cad4cc}
.steps span{font-size:.7rem;color:var(--gold);font-weight:900}.steps p{margin:0}.steps strong{color:var(--forest)}

.criteria{padding-top:0;background:#e8ede8}
.criteria-panel{background:var(--forest);color:#fff;border-radius:28px;padding:60px;display:grid;grid-template-columns:.65fr 1.35fr;gap:60px;box-shadow:var(--shadow)}
.criteria-panel h2{color:#fff}
.criteria-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px;align-content:center}
.criteria-grid p{margin:0;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.12);color:#d6e1da}
.criteria-grid span{color:var(--gold);margin-right:9px}

.contact{background:var(--paper)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;align-items:start}
.contact-copy>p:not(.eyebrow){font-size:1.1rem;color:var(--muted);margin:25px 0 35px}
.contact-detail{padding-top:20px;border-top:1px solid var(--line);display:flex;flex-direction:column}
.contact-detail span{font-size:.73rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}
.contact-form{background:#fff;padding:36px;border:1px solid #e4e0d6;border-radius:24px;box-shadow:var(--shadow)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;font-size:.82rem;font-weight:800;margin-bottom:15px;color:#394840}
input,select,textarea{width:100%;margin-top:7px;border:1px solid #cfd5cf;border-radius:10px;padding:13px 14px;background:#fbfcfa;color:var(--ink);font:inherit}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(196,154,87,.25);border-color:var(--gold)}
textarea{resize:vertical}.honeypot{position:absolute;left:-9999px}.form-note{font-size:.77rem;color:var(--muted);margin:14px 0 0}

footer{background:#0a1712;color:#aab8b0;padding:40px 0}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:center}
.footer-grid p{margin:0;font-size:.82rem}.footer-grid p:last-child{text-align:right}.brand-footer{justify-self:start}

.reveal{opacity:0;transform:translateY(18px);transition:.7s opacity,.7s transform}
.reveal.visible{opacity:1;transform:none}

@media(max-width:900px){
  .section{padding:78px 0}.hero{min-height:auto;padding-top:155px}
  .hero-grid,.approach-grid,.contact-grid,.section-heading,.criteria-panel{grid-template-columns:1fr}
  .hero-card{max-width:500px}.card-grid{grid-template-columns:1fr}.focus-card{display:grid;grid-template-columns:40% 60%}
  .focus-card img{height:100%;aspect-ratio:auto}.criteria-panel{padding:38px;gap:30px}.approach-grid,.contact-grid{gap:45px}
  #main-nav{position:absolute;top:74px;left:20px;right:20px;padding:20px;border-radius:16px;background:#fff;color:var(--ink);display:none;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}
  #main-nav.open{display:flex}.nav-toggle{display:block}
}
@media(max-width:620px){
  .container{width:min(calc(100% - 28px),var(--max))}.hero{padding-top:130px}.hero-grid{gap:45px}
  h1{font-size:3.25rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}
  .focus-card{display:block}.focus-card img{aspect-ratio:1.55}.criteria-grid,.form-row,.footer-grid{grid-template-columns:1fr}
  .criteria-panel,.contact-form{padding:28px}.footer-grid p:last-child{text-align:left}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
