/* samchoksi.com v2 — Operator Navy (HNW personal brand) */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

html,body{background:#0F1A2E;color:#F2EDE4;font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.7}
body{min-height:100vh;overflow-x:hidden}
img{max-width:100%;display:block;height:auto;border-radius:4px;filter:contrast(1.05) saturate(0.9)}
a{color:#F2EDE4;text-decoration:none;transition:color .2s ease}
a:hover{color:#C37B50}

/* Layout */
.container{max-width:960px;margin:0 auto;padding:0 28px}
.container-wide{max-width:1200px;margin:0 auto;padding:0 28px}
section{padding:96px 0}
section.tight{padding:56px 0}

/* Nav */
nav.site-nav{position:sticky;top:0;z-index:50;background:rgba(15,26,46,.92);backdrop-filter:saturate(140%) blur(14px);border-bottom:1px solid rgba(242,237,228,0.08)}
.nav-inner{max-width:1200px;margin:0 auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between}
.nav-logo{font-family:'Fraunces',Georgia,serif;font-weight:600;letter-spacing:-.01em;font-size:19px;color:#F2EDE4}
.nav-logo span{color:#C37B50;font-style:italic}
.nav-links{list-style:none;display:flex;gap:32px;align-items:center}
.nav-links a{font-size:13.5px;color:#9DA8BB;letter-spacing:.02em}
.nav-links a:hover,.nav-links a.active{color:#F2EDE4}
.nav-cta{background:#C37B50;color:#F2EDE4 !important;padding:10px 20px;font-size:13px;font-weight:600;letter-spacing:.04em}
.nav-cta:hover{background:#D68F63;color:#F2EDE4 !important}
.hamburger{display:none}
@media(max-width:820px){
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#162538;flex-direction:column;padding:24px;gap:18px;border-bottom:1px solid rgba(242,237,228,0.12)}
  .nav-links.open{display:flex}
  .hamburger{display:flex;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:8px}
  .hamburger span{width:22px;height:2px;background:#F2EDE4;display:block}
}

/* Typography */
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;letter-spacing:-.01em;line-height:1.1;font-weight:600;color:#F2EDE4}
h1{font-size:clamp(40px,5.4vw,64px);font-weight:600}
h2{font-size:clamp(30px,3.8vw,44px);margin-bottom:20px;font-weight:600}
h3{font-size:22px;margin-bottom:12px;font-weight:600}
h4{font-size:14px;margin-bottom:10px;font-weight:600}
p{color:#F2EDE4;font-size:17px;line-height:1.7}
.lead{font-size:19px;color:#9DA8BB;max-width:640px;line-height:1.7}
.eyebrow{display:inline-block;font-family:'Inter',sans-serif;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#C37B50;margin-bottom:22px}
.kicker{font-size:12px;color:#9DA8BB;text-transform:uppercase;letter-spacing:.18em}

/* Hero */
.hero{padding:120px 0 80px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:-20% -20% auto -20%;height:560px;background:radial-gradient(ellipse at 50% 0%, rgba(195,123,80,.10), transparent 65%);pointer-events:none}
.hero .container{position:relative}
.hero h1{margin-bottom:28px;max-width:720px}
.hero .accent{color:#C37B50;font-style:italic}
.hero .subhead{font-size:20px;color:#9DA8BB;max-width:600px;margin-bottom:40px;line-height:1.6}

/* Stats band */
.stats-band{border-top:1px solid rgba(242,237,228,0.12);border-bottom:1px solid rgba(242,237,228,0.12);background:#162538}
.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;max-width:1200px;margin:0 auto}
.stat{padding:40px 20px;border-right:1px solid rgba(242,237,228,0.08);text-align:center}
.stat:last-child{border-right:none}
.stat-val{font-family:'Fraunces',Georgia,serif;font-size:42px;font-weight:600;color:#F2EDE4;letter-spacing:-.01em;line-height:1}
.stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:#9DA8BB;margin-top:12px}
.stats-footnote{text-align:center;color:#9DA8BB;font-size:12px;padding:18px 0;letter-spacing:.04em}
@media(max-width:820px){
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .stat{border-right:1px solid rgba(242,237,228,0.08);border-bottom:1px solid rgba(242,237,228,0.08)}
  .stat:nth-child(2n){border-right:none}
}

/* Buttons — square, deliberate */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:0;font-size:13.5px;font-weight:600;letter-spacing:.06em;transition:all .2s ease;cursor:pointer;border:1px solid transparent;font-family:'Inter',sans-serif;text-transform:uppercase}
.btn-primary{background:#C37B50;color:#F2EDE4 !important;border-color:#C37B50}
.btn-primary:hover{background:#D68F63;border-color:#D68F63;color:#F2EDE4 !important}
.btn-ghost{background:transparent;color:#C37B50 !important;border-color:#C37B50}
.btn-ghost:hover{background:#C37B50;color:#F2EDE4 !important}
.cta-row{display:flex;gap:14px;flex-wrap:wrap}

/* Cards / grids */
.grid{display:grid;gap:24px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
@media(max-width:820px){.grid-3,.grid-2{grid-template-columns:1fr}}

.card{background:#162538;border:1px solid rgba(242,237,228,0.08);border-radius:4px;padding:32px;transition:border-color .25s ease}
.card:hover{border-color:rgba(195,123,80,0.4)}
.card h3{margin-bottom:14px;font-family:'Fraunces',Georgia,serif}
.card p{font-size:15.5px;color:#9DA8BB;line-height:1.7}

/* Narrative blocks */
.narrative{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:900px){.narrative{grid-template-columns:1fr}}
.narrative .card{padding:36px 32px}
.narrative .num{font-family:'Inter',sans-serif;font-size:12px;font-weight:600;color:#C37B50;letter-spacing:.2em;text-transform:uppercase}
.narrative h3{margin-top:16px;font-size:24px}

/* Portfolio tiers */
.brand-row{display:grid;grid-template-columns:220px 1fr auto;gap:28px;align-items:center;padding:28px 32px;background:#162538;border:1px solid rgba(242,237,228,0.08);border-radius:4px;margin-bottom:14px;transition:border-color .25s ease;color:#F2EDE4}
.brand-row:hover{border-color:rgba(195,123,80,0.5)}
.brand-name{font-family:'Fraunces',Georgia,serif;font-size:21px;font-weight:600;color:#F2EDE4}
.brand-tag{font-size:10.5px;color:#C37B50;text-transform:uppercase;letter-spacing:.22em;margin-bottom:6px;font-weight:600}
.brand-pitch{color:#9DA8BB;font-size:15px;line-height:1.65}
.brand-link{font-size:12px;color:#C37B50;white-space:nowrap;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:720px){.brand-row{grid-template-columns:1fr;gap:8px;padding:24px}}

/* About */
.about-layout{display:grid;grid-template-columns:360px 1fr;gap:64px;align-items:start;max-width:1200px;margin:0 auto}
@media(max-width:900px){.about-layout{grid-template-columns:1fr;gap:36px}}
.about-photo img{border-radius:4px;border:1px solid rgba(242,237,228,0.12)}
.about-body p{margin-bottom:20px;color:#F2EDE4;font-size:17px;line-height:1.75}
.about-body p strong{color:#F2EDE4;font-weight:600}
blockquote.voice{border-left:2px solid #C37B50;padding:24px 32px;background:#162538;border-radius:0 4px 4px 0;margin:36px 0;color:#F2EDE4;font-size:17px;line-height:1.8;font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:500}

/* Press logos */
.press-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1200px;margin:0 auto}
@media(max-width:900px){.press-grid{grid-template-columns:repeat(2,1fr)}}
.press-slot{aspect-ratio:5/2;background:#162538;border:1px dashed rgba(242,237,228,0.12);border-radius:4px;display:flex;align-items:center;justify-content:center;color:#9DA8BB;font-size:11px;letter-spacing:.18em;text-transform:uppercase}

/* Forms */
.intake-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:44px;max-width:1200px;margin-left:auto;margin-right:auto}
@media(max-width:900px){.intake-grid{grid-template-columns:repeat(2,1fr)}}
.intake-pill{background:#162538;border:1px solid rgba(242,237,228,0.08);border-radius:4px;padding:22px;cursor:pointer;transition:all .2s ease;text-align:left;color:#F2EDE4;font-family:'Inter',sans-serif}
.intake-pill:hover,.intake-pill.active{border-color:#C37B50;background:#1A2C44}
.intake-pill .icon{font-size:22px;margin-bottom:10px;display:block}
.intake-pill .label{font-weight:600;font-size:14px;margin-bottom:4px;color:#F2EDE4;font-family:'Fraunces',Georgia,serif}
.intake-pill .sub{font-size:12px;color:#9DA8BB}

form.intake{background:#162538;border:1px solid rgba(242,237,228,0.08);border-radius:4px;padding:36px;max-width:720px;margin:0 auto}
form.intake .row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
@media(max-width:720px){form.intake .row{grid-template-columns:1fr}}
form.intake label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:#9DA8BB;margin-bottom:8px;font-weight:600}
form.intake input,form.intake textarea,form.intake select{
  width:100%;background:#0F1A2E;color:#F2EDE4;border:1px solid rgba(242,237,228,0.12);border-radius:4px;padding:13px 14px;font:inherit;font-family:'Inter',sans-serif;font-size:15px;transition:border-color .2s ease
}
form.intake input:focus,form.intake textarea:focus,form.intake select:focus{outline:none;border-color:#C37B50}
form.intake textarea{min-height:140px;resize:vertical}
form.intake .field{margin-bottom:16px}
form.intake button{margin-top:10px;width:100%}
.conditional{display:none}
.conditional.show{display:block}
.msg{padding:14px 16px;border-radius:4px;margin-top:16px;font-size:14px;display:none}
.msg.ok{background:rgba(195,123,80,0.1);border:1px solid #C37B50;color:#C37B50;display:block}
.msg.err{background:rgba(195,123,80,0.06);border:1px solid #9DA8BB;color:#9DA8BB;display:block}

/* Newsletter */
.news-hero{text-align:center;max-width:640px;margin:0 auto}
.news-points{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:64px 0;max-width:1200px;margin-left:auto;margin-right:auto}
@media(max-width:820px){.news-points{grid-template-columns:1fr}}
.news-point{background:#162538;border:1px solid rgba(242,237,228,0.08);border-radius:4px;padding:28px;text-align:left}
.news-point h4{color:#C37B50;font-size:11px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:12px;font-family:'Inter',sans-serif;font-weight:600}
.news-point p{font-size:14.5px;color:#9DA8BB;line-height:1.7}
.inline-form{display:flex;gap:10px;max-width:480px;margin:32px auto 0}
.inline-form input{flex:1;background:#162538;color:#F2EDE4;border:1px solid rgba(242,237,228,0.12);border-radius:4px;padding:14px 18px;font:inherit;font-family:'Inter',sans-serif;font-size:15px}
.inline-form input:focus{outline:none;border-color:#C37B50}
@media(max-width:600px){.inline-form{flex-direction:column}}

/* Footer */
footer{border-top:1px solid rgba(242,237,228,0.08);background:#0B1425;padding:72px 0 36px;margin-top:96px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;max-width:1200px;margin-left:auto;margin-right:auto;padding:0 28px}
@media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr;gap:32px}}
.foot-col h5{font-size:11px;text-transform:uppercase;letter-spacing:.22em;color:#9DA8BB;margin-bottom:16px;font-weight:600}
.foot-col a{display:block;color:#9DA8BB;font-size:14px;margin-bottom:12px}
.foot-col a:hover{color:#C37B50}
.foot-brand{font-family:'Fraunces',Georgia,serif;font-size:20px;font-weight:600;margin-bottom:12px}
.foot-brand span{color:#C37B50;font-style:italic}
.foot-blurb{color:#9DA8BB;font-size:14px;max-width:360px;line-height:1.7}
.foot-bottom{border-top:1px solid rgba(242,237,228,0.08);padding:24px 28px 0;display:flex;justify-content:space-between;color:#9DA8BB;font-size:12px;flex-wrap:wrap;gap:10px;max-width:1200px;margin:0 auto;letter-spacing:.04em}

/* Utility */
.center{text-align:center}
.muted{color:#9DA8BB}
.divider{height:1px;background:rgba(242,237,228,0.08);margin:44px 0}
.pill{display:inline-block;padding:7px 14px;border-radius:0;background:transparent;border:1px solid #C37B50;color:#C37B50;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;font-family:'Inter',sans-serif}

/* Sections that were using var(--bg-elev) should still render */
section[style*="--bg-elev"],
section[style*="bg-elev"]{background:#162538 !important}
