/* SandBox Society V1
   Deliberately restrained: typography, space, lines, no visual noise.
*/
:root{
  --ink:#101211;
  --ink-2:#171a18;
  --paper:#f2f0e9;
  --paper-2:#e7e1d4;
  --sand:#d4c1a1;
  --muted:#9b9d98;
  --line:rgba(16,18,17,.18);
  --line-dark:rgba(242,240,233,.17);
  --max:1260px;
  --pad:clamp(22px,5vw,72px);
  --serif: Georgia, "Times New Roman", serif;
  --sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--ink);
  color:var(--paper);
  font-family:var(--sans);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
.site-header{
  position:fixed;
  z-index:50;
  top:0; left:0; right:0;
  height:78px;
  padding:0 var(--pad);
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--line-dark);
  background:rgba(16,18,17,.88);
  backdrop-filter:blur(16px);
}
.brand{display:flex;align-items:center;gap:11px;font-weight:600;letter-spacing:-.02em}
.brand-logo{display:inline-flex;align-items:flex-end;line-height:.8}
.logo-word{
  font-size:22px;letter-spacing:-.075em;font-weight:700;text-transform:lowercase;
}
.logo-alpha{
  font-family:var(--serif);font-style:italic;font-size:29px;font-weight:400;
  margin-left:4px;line-height:.72;
}
.brand-sub{
  padding-left:10px;border-left:1px solid rgba(242,240,233,.35);
  font-family:var(--serif);font-style:italic;font-weight:400;font-size:15px;
  opacity:.8;
}
.nav{display:flex;gap:28px;font-size:12px;text-transform:uppercase;letter-spacing:.13em}
.nav a{opacity:.68;transition:opacity .2s ease}
.nav a:hover{opacity:1}
.hero{
  max-width:var(--max); margin:0 auto; padding:clamp(150px,20vh,220px) var(--pad) 90px;
  min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;
}
.hero-kicker,.eyebrow,.label{
  font-size:11px; letter-spacing:.18em; text-transform:uppercase; font-weight:600;
}
.hero-kicker{color:var(--sand);margin-bottom:28px}
h1,h2,h3,p{margin-top:0}
h1{
  margin:0;
  max-width:980px;
  font-size:clamp(64px,10.2vw,150px);
  line-height:.86;
  letter-spacing:-.065em;
  font-weight:600;
}
.serif{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.045em}
.hero-copy{
  max-width:680px;margin:42px 0 34px auto;
  font-size:clamp(19px,2vw,27px);line-height:1.42;letter-spacing:-.025em;color:#d7d7d1;
}
.hero-actions{display:flex;justify-content:flex-end;align-items:center;gap:26px}
.button{
  background:var(--paper);color:var(--ink);padding:14px 20px;
  font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
}
.quiet{font-size:12px;letter-spacing:.06em;color:var(--muted)}
.hero-rule{height:1px;background:var(--line-dark);margin:72px 0 20px}
.hero-statement{display:grid;grid-template-columns:70px 1fr;gap:22px;align-items:start}
.hero-statement span{font-size:11px;color:var(--muted)}
.hero-statement p{max-width:650px;font-family:var(--serif);font-size:clamp(23px,3vw,40px);line-height:1.15}
.section{
  position:relative;
  padding:clamp(90px,11vw,160px) var(--pad);
}
.section > *{max-width:var(--max);margin-left:auto;margin-right:auto}
.section-number{
  font-size:11px;letter-spacing:.15em;margin-bottom:55px!important;opacity:.55
}
.section-heading{display:grid;grid-template-columns:minmax(180px,.35fr) 1fr;gap:42px;align-items:start}
.section-heading .eyebrow{margin-top:11px}
.section-heading h2{
  font-size:clamp(46px,6.5vw,92px);
  line-height:.95;letter-spacing:-.055em;font-weight:600;margin-bottom:54px;
}
.section-intro{
  grid-column:2;max-width:600px;font-size:19px;line-height:1.55;margin-top:-22px;color:#c9cbc5;
}
.section-light{background:var(--paper);color:var(--ink)}
.section-dark{background:var(--ink-2);color:var(--paper)}
.section-sand{background:var(--paper-2);color:var(--ink)}
.two-col{
  display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,130px);
  border-top:1px solid var(--line);padding-top:38px;
}
.two-col p{font-size:17px;line-height:1.7;max-width:540px}
.two-col .lead,.lead{font-family:var(--serif);font-size:clamp(25px,2.7vw,37px);line-height:1.33;letter-spacing:-.022em}
.members{
  border-top:1px solid var(--line-dark);
  display:grid;grid-template-columns:repeat(5,1fr);
}
.member{
  min-height:260px;padding:28px 22px 24px 0;
  border-right:1px solid var(--line-dark);
  display:flex;flex-direction:column;justify-content:space-between;
}
.member:last-child{border-right:0}
.monogram{
  width:58px;height:58px;border:1px solid rgba(212,193,161,.5);
  border-radius:50%;display:grid;place-items:center;color:var(--sand);
  font-family:var(--serif);font-size:18px;font-style:italic;
}
.member h3{font-size:22px;letter-spacing:-.025em;margin-bottom:7px}
.member p{margin:0;color:#aeb0aa;font-size:13px;line-height:1.4}
.facilitator{
  display:grid;grid-template-columns:1fr 2fr;gap:30px;
  margin-top:70px!important;padding-top:26px;border-top:1px solid var(--line-dark);
}
.facilitator .label{color:var(--sand)}
.facilitator p{font-size:17px;line-height:1.55;color:#c8cac5}

.peer-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line-dark);
}
.peer-grid article{
  min-height:300px;padding:30px 44px 38px 0;
  border-right:1px solid var(--line-dark);
  display:flex;flex-direction:column;
}
.peer-grid article:nth-child(2),.peer-grid article:nth-child(3){padding-left:44px}
.peer-grid article:last-child{border-right:0}
.peer-grid article > span{
  font-size:10px;letter-spacing:.15em;color:var(--sand);
}
.peer-grid h3{
  margin:auto 0 18px;font-family:var(--serif);font-style:italic;
  font-size:31px;font-weight:400;line-height:1.08;
}
.peer-grid p{font-size:14px;line-height:1.6;color:#bfc1bc;max-width:340px}
.peer-note{
  margin-top:42px!important;max-width:680px!important;margin-right:0!important;
  font-size:13px;line-height:1.6;color:#888c87;
}
.subdued{opacity:.75}

.principles{
  display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);
}
.principles article{padding:36px 60px 56px 0;border-bottom:1px solid var(--line)}
.principles article:nth-child(odd){border-right:1px solid var(--line)}
.principles article:nth-child(even){padding-left:60px}
.principles span{font-size:10px;letter-spacing:.16em;font-weight:700}
.principles h3{font-family:var(--serif);font-size:34px;font-style:italic;font-weight:400;margin:35px 0 14px}
.principles p{max-width:470px;font-size:15px;line-height:1.65}
.guest-copy{
  display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,120px);
  border-top:1px solid var(--line);padding-top:38px;
}
.guest-list{border-top:1px solid var(--line)}
.guest-list div{padding:24px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:9px}
.guest-topic{font-size:10px;letter-spacing:.15em}
.guest-list strong{font-size:20px;line-height:1.35;letter-spacing:-.025em;font-weight:500}
.small-note{font-size:11px;color:#666b66;margin-top:28px!important}
.manifesto{
  padding:100px var(--pad);background:var(--sand);color:var(--ink);
}
.manifesto p{
  max-width:var(--max);margin:0 auto;
  font-size:clamp(37px,6vw,88px);line-height:1.08;letter-spacing:-.05em;
  border-bottom:1px solid rgba(16,18,17,.22);padding:13px 0;
}
.manifesto p:nth-child(even){font-family:var(--serif);font-style:italic}
.invitation-grid{
  display:grid;grid-template-columns:1fr .75fr;gap:clamp(60px,10vw,150px);
  border-top:1px solid var(--line-dark);padding-top:40px;
}
.contact-copy{padding-top:8px}
.contact-copy p{font-size:17px;line-height:1.6;color:#b9bbb6}
.text-link{
  display:inline-flex;gap:12px;align-items:center;
  font-size:22px;border-bottom:1px solid var(--sand);padding-bottom:8px;margin-top:24px;
}
.placeholder-note{font-size:10px!important;color:#777b76!important;margin-top:18px}
footer{
  padding:46px var(--pad);border-top:1px solid var(--line-dark);
  display:grid;grid-template-columns:1fr auto auto;gap:38px;align-items:center;
  background:var(--ink);font-size:11px;color:#9b9d98;text-transform:uppercase;letter-spacing:.1em;
}
.footer-brand{text-transform:none;letter-spacing:normal;color:var(--paper)}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease, transform .7s ease}
.reveal.visible{opacity:1;transform:none}

@media (max-width:900px){
  .nav{display:none}
  .hero{min-height:auto;padding-top:170px}
  .hero-copy{margin-left:0}
  .hero-actions{justify-content:flex-start;flex-wrap:wrap}
  .section-heading{grid-template-columns:1fr}
  .section-heading .eyebrow{margin-bottom:-20px}
  .section-intro{grid-column:1;margin-top:-20px}
  .members{grid-template-columns:1fr 1fr}
  .member{border-bottom:1px solid var(--line-dark);border-right:1px solid var(--line-dark)}
  .member:nth-child(even){border-right:0}
  .member:last-child{border-right:1px solid var(--line-dark)}
  .facilitator,.two-col,.guest-copy,.invitation-grid{grid-template-columns:1fr}
  .peer-grid{grid-template-columns:1fr}
  .peer-grid article,.peer-grid article:nth-child(2),.peer-grid article:nth-child(3){padding:28px 0 34px;border-right:0;border-bottom:1px solid var(--line-dark);min-height:220px}
  footer{grid-template-columns:1fr;gap:16px}
}
@media (max-width:620px){
  .site-header{height:68px}
  .logo-word{font-size:20px}.logo-alpha{font-size:26px}.brand-sub{font-size:14px}
  .hero{padding-top:135px;padding-bottom:60px}
  h1{font-size:clamp(56px,18vw,86px)}
  .hero-copy{font-size:19px;margin-top:32px}
  .quiet{width:100%;margin-top:4px}
  .hero-statement{grid-template-columns:38px 1fr}
  .section{padding-top:78px;padding-bottom:82px}
  .section-number{margin-bottom:36px!important}
  .section-heading h2{font-size:47px;margin-bottom:38px}
  .members{grid-template-columns:1fr}
  .member{min-height:190px;border-right:0!important}
  .facilitator{margin-top:45px!important}
  
.peer-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line-dark);
}
.peer-grid article{
  min-height:300px;padding:30px 44px 38px 0;
  border-right:1px solid var(--line-dark);
  display:flex;flex-direction:column;
}
.peer-grid article:nth-child(2),.peer-grid article:nth-child(3){padding-left:44px}
.peer-grid article:last-child{border-right:0}
.peer-grid article > span{
  font-size:10px;letter-spacing:.15em;color:var(--sand);
}
.peer-grid h3{
  margin:auto 0 18px;font-family:var(--serif);font-style:italic;
  font-size:31px;font-weight:400;line-height:1.08;
}
.peer-grid p{font-size:14px;line-height:1.6;color:#bfc1bc;max-width:340px}
.peer-note{
  margin-top:42px!important;max-width:680px!important;margin-right:0!important;
  font-size:13px;line-height:1.6;color:#888c87;
}
.subdued{opacity:.75}

.principles{grid-template-columns:1fr}
  .principles article,.principles article:nth-child(even),.principles article:nth-child(odd){
    padding:32px 0 40px;border-right:0
  }
  .manifesto{padding-top:70px;padding-bottom:70px}
  .manifesto p{font-size:39px;padding:11px 0}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
}
