:root{
  --ink:#111;
  --paper:#f5f3ee;
  --line:#b9b5ad;
  --soft:#e7e3db;
  --accent:#c7ff00;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5}
a{color:inherit}
.site-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:18px 4vw;background:rgba(245,243,238,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{display:flex;gap:12px;align-items:baseline;text-decoration:none}
.brand-main{font-weight:900;letter-spacing:.08em;font-size:1.05rem}
.brand-sub{font-size:.65rem;letter-spacing:.16em}
nav{display:flex;gap:24px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
nav a{text-decoration:none}
nav a:hover{text-decoration:underline}
.hero{min-height:calc(100vh - 72px);max-width:var(--max);margin:auto;padding:8vw 5vw 7vw;display:grid;grid-template-columns:1.5fr .7fr;align-items:end;gap:7vw}
.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 20px}
h1{font-size:clamp(5rem,13vw,10.5rem);line-height:.76;margin:0 0 34px;letter-spacing:-.08em;font-weight:900}
h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.08em}
.lead{font-size:clamp(1.25rem,2.2vw,1.8rem);max-width:650px;font-weight:700;margin:0 0 18px}
.intro{max-width:650px;font-size:1rem;color:#444}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.button{display:inline-block;padding:13px 18px;border:1px solid var(--ink);text-decoration:none;font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}
.button.primary{background:var(--ink);color:white}
.hero-note{border-left:2px solid var(--ink);padding:0 0 4px 26px;display:flex;flex-direction:column;gap:7px}
.hero-note span{font-weight:900;letter-spacing:.14em;font-size:.75rem}
.hero-note strong{font-family:Georgia,serif;font-style:italic;font-size:2.5rem;line-height:1}
.hero-note small{font-size:.8rem;color:#555;max-width:240px}
.statement{background:var(--ink);color:white;padding:70px 7vw;text-align:center}
.statement p{margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:.72rem}
.statement h2{font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(2.5rem,6vw,5rem);margin:12px 0}
.statement span{color:#bbb}
.section{max-width:var(--max);margin:auto;padding:110px 5vw}
.section.alt{max-width:none;background:#eae7e0}
.section.alt>*{max-width:var(--max);margin-left:auto;margin-right:auto}
.section-head{max-width:850px}
.section h2{font-size:clamp(2.4rem,5vw,4.8rem);line-height:.95;letter-spacing:-.055em;margin:0 0 24px}
.section-head>p:last-child{max-width:650px;color:#555}
.two-col,.idea-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:8vw;margin-top:55px}
.big-copy{font-size:clamp(1.2rem,2vw,1.65rem);line-height:1.35;margin:0}
.facts{border-top:1px solid var(--ink)}
.facts div{padding:18px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column}
.facts b,.download-label{font-size:.7rem;letter-spacing:.14em}
.facts span{font-size:1.05rem}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px}
.project-card{min-height:300px;border:1px solid #aaa;padding:28px;display:flex;flex-direction:column;background:var(--paper)}
.project-card.featured{background:var(--ink);color:white}
.project-tag{font-size:.68rem;font-weight:800;letter-spacing:.14em}
.project-card h3{font-size:1.8rem;margin:45px 0 12px}
.project-card p{color:#666}
.featured p{color:#ccc}
.status{margin-top:auto;font-size:.68rem;font-weight:800;letter-spacing:.1em}
.download-box{margin-top:50px;border:1px solid var(--ink);padding:35px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.download-box h3{font-size:2rem;margin:8px 0}
.download-box p{max-width:650px;color:#555}
.download-mark{width:100px;height:100px;border:1px solid var(--ink);display:grid;place-content:center;text-align:center;font-weight:900;font-size:1.8rem;line-height:.8}
.download-mark small{font-size:.55rem;letter-spacing:.12em}
.dark{max-width:none;background:var(--ink);color:white}
.dark>*{max-width:var(--max);margin-left:auto;margin-right:auto}
.dark .eyebrow{color:#aaa}
.idea-grid .big-copy{max-width:650px}
.list{border-top:1px solid #555}
.list div{padding:15px 0;border-bottom:1px solid #444;font-weight:700}
.list span{display:inline-block;width:45px;color:#888}
.license{max-width:780px;font-size:1.05rem}
.license p{margin:0 0 22px}
.muted{color:#666;font-size:.85rem}
.contact{display:flex;justify-content:space-between;gap:60px;align-items:end}
.contact-data{display:flex;flex-direction:column;align-items:flex-end;gap:9px;font-size:1.25rem;font-weight:700}
footer{display:flex;justify-content:space-between;gap:30px;padding:28px 5vw;border-top:1px solid var(--line);font-size:.75rem;color:#555}
@media(max-width:800px){
  .site-header{align-items:flex-start}
  nav{display:none}
  .hero,.two-col,.idea-grid{grid-template-columns:1fr}
  .hero{min-height:auto;padding-top:70px}
  .hero-note{margin-top:25px}
  .project-grid{grid-template-columns:1fr}
  .download-box,.contact{flex-direction:column;align-items:flex-start}
  .contact-data{align-items:flex-start}
  footer{flex-direction:column}
}
