
:root{
  --bg:#0a0a0a;
  --panel:#111111;
  --panel-2:#171717;
  --text:#f2efe9;
  --muted:#aaa59b;
  --gold:#c7a86a;
  --gold-soft:#e2cb9d;
  --line:rgba(255,255,255,.10);
  --max:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Arial,Helvetica,sans-serif;
  line-height:1.55;
  overflow-x:hidden;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 80% 5%,rgba(199,168,106,.09),transparent 28%),
    radial-gradient(circle at 5% 80%,rgba(199,168,106,.05),transparent 24%);
  z-index:-1;
}
.grain{
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.035;
  z-index:20;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
}
a{text-decoration:none;color:inherit}
.site-header{
  width:min(calc(100% - 40px),var(--max));
  margin:22px auto 0;
  padding:14px 16px;
  border:1px solid var(--line);
  background:rgba(10,10,10,.78);
  backdrop-filter:blur(18px);
  border-radius:999px;
  position:sticky;
  top:16px;
  z-index:10;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.02em}
.brand-mark{
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--gold);
  color:#111;
  font-family:Georgia,serif;
  font-weight:700;
}
.nav{display:flex;gap:28px;align-items:center;color:#ccc7bd;font-size:.92rem}
.nav a:hover{color:white}
.nav-button{padding:10px 17px;border:1px solid var(--line);border-radius:999px}
.menu-button{display:none}
.hero{
  width:min(calc(100% - 40px),var(--max));
  margin:0 auto;
  padding:58px 0 40px;
  min-height:840px;
}
.hero-topline,.hero-footer{
  display:flex;justify-content:space-between;
  color:#807b72;text-transform:uppercase;letter-spacing:.16em;font-size:.68rem
}
.hero-grid{
  display:grid;grid-template-columns:1.08fr .92fr;gap:70px;
  align-items:center;min-height:650px
}
.eyebrow{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.2em;
  font-size:.72rem;
  font-weight:700;
  margin:0 0 22px
}
h1,h2,h3,p{margin-top:0}
h1{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(4.5rem,10vw,9rem);
  line-height:.84;
  letter-spacing:-.07em;
  margin-bottom:34px
}
h1 em,.contact-section h2 em{
  color:var(--gold-soft);
  font-weight:400
}
.intro{
  max-width:680px;
  color:var(--muted);
  font-size:1.18rem
}
.actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}
.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:0 22px;border-radius:999px;
  font-weight:700;border:1px solid transparent;cursor:pointer
}
.primary{background:var(--gold);color:#111}
.secondary{border-color:var(--line);background:rgba(255,255,255,.025)}
.hero-visual{
  aspect-ratio:1;
  border-radius:50%;
  border:1px solid var(--line);
  display:grid;place-items:center;
  position:relative;
  background:
    radial-gradient(circle at 50% 50%,rgba(199,168,106,.12),transparent 42%),
    repeating-radial-gradient(circle at 50% 50%,transparent 0 65px,rgba(255,255,255,.04) 66px 67px)
}
.monogram{
  font-family:Georgia,serif;
  font-size:clamp(7rem,15vw,13rem);
  letter-spacing:-.13em;
  color:rgba(255,255,255,.82)
}
.visual-label{
  position:absolute;
  padding:10px 15px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(10,10,10,.8);
  color:#d7d0c4;
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase
}
.visual-label.one{top:12%;right:4%}
.visual-label.two{left:-2%;top:53%}
.visual-label.three{bottom:11%;right:12%}
.hero-footer{
  border-top:1px solid var(--line);
  padding-top:24px;
  gap:20px;
  flex-wrap:wrap
}
.manifesto{
  border-block:1px solid var(--line);
  background:linear-gradient(135deg,#111,#17130d);
  padding:130px 20px
}
.manifesto-inner{max-width:1050px;margin:auto}
.manifesto h2,.section-heading h2,.about h2,.contact-section h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3.5rem,7vw,6.7rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin-bottom:28px
}
.manifesto p:last-child{
  color:#b7b0a3;
  max-width:760px;
  font-size:1.25rem
}
.section{
  width:min(calc(100% - 40px),var(--max));
  margin:0 auto;
  padding:125px 0
}
.section-heading{max-width:900px;margin-bottom:58px}
.portfolio-list{border-top:1px solid var(--line)}
.portfolio-item{
  display:grid;
  grid-template-columns:70px 1fr 220px 40px;
  gap:26px;
  align-items:center;
  padding:34px 8px;
  border-bottom:1px solid var(--line);
  transition:background .25s,padding .25s
}
.portfolio-item:hover{
  background:rgba(199,168,106,.055);
  padding-left:18px;
  padding-right:18px
}
.portfolio-item .number,.category{color:#777167;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}
.portfolio-item h3{
  font-family:Georgia,serif;
  font-size:2.2rem;
  margin-bottom:7px
}
.portfolio-item p{color:var(--muted);margin:0}
.arrow{font-size:1.5rem;color:var(--gold)}
.experience{border-top:1px solid var(--line)}
.experience-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}
.experience-copy p{color:var(--muted);font-size:1.12rem}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.stat{
  min-height:200px;padding:28px;
  border:1px solid var(--line);
  background:var(--panel);
  display:flex;flex-direction:column;justify-content:space-between
}
.stat strong{font-family:Georgia,serif;font-size:3rem;font-weight:400;color:var(--gold-soft)}
.stat span{color:var(--muted);font-size:.9rem}
.books{border-top:1px solid var(--line)}
.books-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.book-card{
  min-height:360px;
  padding:28px;
  border:1px solid var(--line);
  background:linear-gradient(160deg,#151515,#0d0d0d);
  display:flex;flex-direction:column
}
.book-card span{color:var(--gold);font-size:.75rem;letter-spacing:.14em}
.book-card h3{
  margin-top:auto;
  font-family:Georgia,serif;
  font-size:1.85rem;
  font-weight:400
}
.book-card p{color:var(--muted)}
.editorial-link{
  display:inline-block;
  margin-top:45px;
  color:var(--gold-soft);
  font-weight:700
}
.about{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:100px;
  border-top:1px solid var(--line)
}
.about-title h2{margin-bottom:0}
.about-copy{padding-top:54px}
.about-copy p{color:var(--muted);font-size:1.17rem}
.contact-section{
  padding:130px 20px;
  border-top:1px solid var(--line);
  background:linear-gradient(135deg,#13100c,#0b0b0b 65%)
}
.contact-inner{max-width:1000px;margin:auto}
.contact-section h2{font-size:clamp(4rem,9vw,8rem)}
.contact-inner>p:not(.eyebrow){color:var(--muted);font-size:1.12rem;max-width:680px}
.contact-email{
  display:inline-block;
  font-family:Georgia,serif;
  color:var(--gold-soft);
  font-size:clamp(1.5rem,3vw,2.5rem);
  margin:12px 0 50px
}
.contact-form{
  max-width:760px;
  padding:32px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.025)
}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;color:#c4beb3;font-size:.86rem;margin-bottom:17px}
input,textarea{
  width:100%;
  margin-top:8px;
  padding:14px;
  border:1px solid var(--line);
  background:#0c0c0c;
  color:white;
  font:inherit;
  outline:none
}
input:focus,textarea:focus{border-color:var(--gold)}
footer{
  width:min(calc(100% - 40px),var(--max));
  margin:auto;
  padding:38px 0 50px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:end;
  gap:30px;
  color:#807b72;
  font-size:.88rem
}
footer strong{color:white}
footer p{margin:5px 0 0}
footer>p{text-align:right}
.footer-nav{display:flex;gap:22px}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){
  .nav{
    display:none;position:absolute;top:68px;left:0;right:0;
    flex-direction:column;align-items:stretch;padding:20px;
    background:#101010;border:1px solid var(--line);border-radius:18px
  }
  .nav.open{display:flex}
  .menu-button{
    display:block;border:1px solid var(--line);background:transparent;color:white;
    border-radius:999px;padding:9px 14px
  }
  .hero-grid,.experience-grid,.about{grid-template-columns:1fr}
  .hero-grid{padding:70px 0}
  .hero-visual{max-width:650px;margin:auto}
  .books-grid{grid-template-columns:1fr 1fr}
  footer{grid-template-columns:1fr}
  footer>p{text-align:left}
}
@media(max-width:700px){
  .site-header{width:calc(100% - 24px);top:10px;margin-top:10px}
  .hero,.section{width:calc(100% - 28px)}
  .hero{min-height:auto;padding-top:38px}
  .hero-topline{display:none}
  h1{font-size:clamp(4.2rem,19vw,6.6rem)}
  .hero-footer{font-size:.62rem}
  .manifesto,.contact-section{padding:95px 18px}
  .section{padding:95px 0}
  .portfolio-item{
    grid-template-columns:42px 1fr 32px;
    gap:14px
  }
  .category{display:none}
  .portfolio-item h3{font-size:1.8rem}
  .stat-grid,.books-grid,.form-row{grid-template-columns:1fr}
  .about{gap:30px}
  .about-copy{padding-top:0}
  .contact-form{padding:22px}
  .footer-nav{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}
