/* DDSRF — Website W2 (local static build). Editorial-clinical. No JS. No tracking. */

:root{
  --paper:#f7f4ee; --paper-2:#efeae0; --ink:#1b1a17; --ink-soft:#4a463f;
  --rule:#d8d2c6; --accent:#3a5560; --accent-deep:#26414b;
  --maxw:64rem;
  --serif:Georgia,"Iowan Old Style","Palatino Linotype",Palatino,"Times New Roman",serif;
  --sans:"Helvetica Neue",Helvetica,"Segoe UI",system-ui,sans-serif;
}
*{box-sizing:border-box;}
html{font-size:17px;-webkit-text-size-adjust:100%;}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);
  line-height:1.62;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.6rem;}
main{animation:rise .6s ease-out both;padding:2.4rem 0 1rem;}
@keyframes rise{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){main{animation:none;}}

/* header / wordmark + mark */
header.site{border-bottom:1px solid var(--rule);background:var(--paper);}
.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding-top:1rem;padding-bottom:1rem;flex-wrap:wrap;}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink);}
.brand .mark{width:30px;height:30px;display:block;}
.brand .wordmark{font-family:var(--sans);font-weight:700;letter-spacing:.3em;font-size:1rem;}
nav.top{font-family:var(--sans);font-size:.82rem;letter-spacing:.04em;}
nav.top a{color:var(--ink-soft);text-decoration:none;margin-left:1.2rem;}
nav.top a:hover,nav.top a:focus{color:var(--accent-deep);text-decoration:underline;}

/* hero */
.hero{padding:3.4rem 0 2.4rem;border-bottom:1px solid var(--rule);}
.hero .mark-lg{width:104px;height:104px;display:block;margin:0 0 1.3rem;}
.hero .lockup{font-family:var(--sans);font-weight:700;letter-spacing:.4em;font-size:1.45rem;margin:0 0 .7rem;}
.hero .expansion{font-style:italic;color:var(--ink-soft);font-size:1.12rem;margin:0 0 .3rem;}
.hero .lang{font-size:1.22rem;margin:0 0 1.5rem;max-width:34ch;}
.pain{font-size:1.7rem;line-height:1.3;margin:0;max-width:22ch;color:var(--accent-deep);}

/* sections */
section{padding:1.7rem 0;border-bottom:1px solid var(--rule);}
section:last-of-type{border-bottom:none;}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.22;}
h1.page{font-size:2.05rem;margin:.2rem 0 1.1rem;}
h2{font-size:1.28rem;margin:0 0 .7rem;}
h3{font-size:1.06rem;margin:1.1rem 0 .4rem;}
.eyebrow{font-family:var(--sans);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--accent);margin:0 0 .5rem;}
p{margin:0 0 1rem;max-width:64ch;color:var(--ink-soft);}
p.lead{color:var(--ink);font-size:1.14rem;}
em.q{font-style:italic;color:var(--ink);}

/* idea cards / lists */
ul.ideas{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.9rem;}
ul.ideas li{padding:1rem 1.15rem;background:var(--paper-2);border:1px solid var(--rule);border-left:3px solid var(--accent);}
ul.ideas li b{font-family:var(--sans);font-size:.9rem;}
ol.beats{margin:.6rem 0 0;padding-left:1.2rem;} ol.beats li{margin:0 0 .7rem;color:var(--ink-soft);max-width:62ch;}
ul.plain{margin:.4rem 0 0;padding-left:1.1rem;} ul.plain li{margin:0 0 .5rem;color:var(--ink-soft);max-width:62ch;}

/* boundary / source / guard */
.boundary{background:var(--paper-2);border:1px solid var(--rule);padding:1rem 1.15rem;
  font-family:var(--sans);font-size:.92rem;color:var(--ink);}
.source{font-family:var(--sans);font-size:.8rem;letter-spacing:.04em;color:var(--accent);margin-top:1.1rem;}

/* CTAs */
.ctas{display:flex;gap:.8rem;flex-wrap:wrap;margin:1.5rem 0 .3rem;align-items:center;}
a.cta{font-family:var(--sans);font-size:.9rem;letter-spacing:.03em;text-decoration:none;
  padding:.7rem 1.15rem;border:1px solid var(--accent-deep);color:var(--paper);background:var(--accent-deep);}
a.cta:hover,a.cta:focus{background:var(--accent);border-color:var(--accent);}
a.cta.secondary{background:transparent;color:var(--accent-deep);}
a.cta.secondary:hover,a.cta.secondary:focus{background:var(--paper-2);}
a.cta.tertiary{background:transparent;color:var(--accent);border:none;text-decoration:underline;padding:.7rem .3rem;}

/* guarded inert CTA */
.cta-guarded{font-family:var(--sans);font-size:.9rem;letter-spacing:.03em;padding:.7rem 1.15rem;
  border:1px dashed #b9aa86;color:#7a6f57;background:#f2ecdd;display:inline-block;cursor:not-allowed;}
.guard-note{font-family:var(--sans);font-size:.78rem;color:#8a7f66;margin:.5rem 0 0;max-width:60ch;}

/* method: go-deeper divider + layer */
.go-deeper{margin:2rem 0 .5rem;padding-top:1.6rem;border-top:2px solid var(--rule);}
.go-deeper .eyebrow{color:var(--ink-soft);}
.formula{font-family:var(--sans);background:var(--paper-2);border:1px solid var(--rule);
  padding:1rem 1.15rem;font-size:1.05rem;letter-spacing:.01em;color:var(--ink);margin:.6rem 0;}
.gloss{font-family:var(--sans);font-size:.86rem;color:var(--ink-soft);margin:.2rem 0 0;}

/* book windows */
.window{background:var(--paper-2);border:1px solid var(--rule);border-left:3px solid var(--accent);
  padding:1.1rem 1.25rem;margin:1rem 0;}
.window h3{margin:0 0 .5rem;font-family:var(--serif);}
.window p{margin:0;color:var(--ink);}

/* participate form (inert in build) */
.form{background:var(--paper-2);border:1px solid var(--rule);padding:1.2rem 1.25rem;margin:1rem 0;}
.form label{display:block;font-family:var(--sans);font-size:.82rem;color:var(--ink);margin:.7rem 0 .25rem;}
.form input,.form select{width:100%;max-width:30rem;font-family:var(--serif);font-size:1rem;
  padding:.5rem .6rem;border:1px solid var(--rule);background:var(--paper);color:var(--ink);}
.form .hard{font-family:var(--sans);font-size:.82rem;color:var(--accent-deep);margin:.9rem 0 .3rem;font-weight:700;}

/* about */
.author{display:grid;grid-template-columns:200px 1fr;gap:1.6rem;align-items:start;margin:.4rem 0 1.4rem;}
.author img{width:200px;height:200px;object-fit:cover;border:1px solid var(--rule);}
.method-frame{font-style:italic;color:var(--ink-soft);}
.method-frame .lock{font-style:normal;font-family:var(--sans);font-weight:700;letter-spacing:.3em;}
.ru{margin-top:2.4rem;padding-top:1.8rem;border-top:2px solid var(--rule);}
.ru .eyebrow{color:var(--ink-soft);}

/* footer */
footer.site{border-top:1px solid var(--rule);background:var(--paper-2);margin-top:1.5rem;}
footer .wrap{padding-top:1.6rem;padding-bottom:2.2rem;}
footer nav{font-family:var(--sans);font-size:.84rem;letter-spacing:.03em;margin-bottom:.6rem;}
footer nav a{color:var(--ink-soft);text-decoration:none;} footer nav a:hover{color:var(--accent-deep);text-decoration:underline;}
footer .src{font-family:var(--sans);font-size:.8rem;color:var(--accent);margin:.2rem 0;}
footer .copy{font-family:var(--sans);font-size:.8rem;color:var(--ink-soft);margin:.2rem 0 0;}

/* ===== responsive: tablet ~960 + phone ~640 ===== */
@media (max-width:960px){
  :root{--maxw:48rem;}
  .hero .pain{font-size:1.5rem;}
  .author{grid-template-columns:170px 1fr;gap:1.2rem;}
  .author img{width:170px;height:170px;}
}
@media (max-width:640px){
  html{font-size:16px;}
  .site .wrap{padding-top:.8rem;padding-bottom:.8rem;}
  nav.top a{margin-left:0;margin-right:1rem;display:inline-block;}
  .hero{padding:2.4rem 0 1.8rem;}
  .hero .mark-lg{width:80px;height:80px;}
  .hero .lockup{font-size:1.2rem;letter-spacing:.3em;}
  .hero .lang,.hero .pain{font-size:1.2rem;}
  .author{grid-template-columns:1fr;}
  .author img{width:160px;height:160px;}
  .ctas{gap:.6rem;}
}
