:root {
  --paper: #f1eee6;
  --ink: #151716;
  --text: #59615f;
  --line: rgba(21,23,22,.2);
  --red: #a43a32;
  --steel: #536067;
  --white: #fffdf7;
  --mono: "Cascadia Mono", "Lucida Console", monospace;
  --body: "Segoe UI", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: var(--body); overflow-x: hidden; }
body, h1, h2, p, a, span, b, label, input, button { overflow-wrap: break-word; word-break: normal; hyphens: none; }
h1,h2,p { text-wrap: pretty; }
a { color: inherit; text-decoration: none; }
img { display: block; width: 100%; max-width: 100%; }
button,input { font: inherit; }
.hero { position: relative; min-height: min(720px,100svh); display: grid; align-items: end; padding: clamp(22px,5vw,72px); overflow: hidden; border-bottom: 2px solid var(--ink); }
.hero-image { position: absolute; inset: 0; height: 100%; object-fit: cover; z-index: -2; }
.hero::after { content:""; position:absolute; inset:0; z-index:-1; background: linear-gradient(90deg, rgba(241,238,230,.94), rgba(241,238,230,.58) 56%, rgba(21,23,22,.18)); }
.hero-copy { width:min(620px,100%); }
.label { margin:0 0 12px; color:var(--red); font:700 12px/1.2 var(--mono); text-transform:uppercase; letter-spacing:.04em; }
h1,h2 { margin:0; font-family:var(--mono); line-height:1.1; }
h1 { font-size:clamp(34px,4.6vw,64px); max-width:660px; }
h2 { font-size:clamp(28px,3.1vw,46px); max-width:780px; }
.lead,p { color:var(--text); font-size:17px; line-height:1.56; max-width:680px; }
.button,button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 18px; border:0; background:var(--ink); color:var(--paper); margin-top:22px; cursor:pointer; font-family:var(--mono); }
.dossier-nav { position:sticky; top:0; z-index:20; display:grid; grid-template-columns:repeat(3,1fr); background:var(--paper); border-bottom:2px solid var(--ink); }
.dossier-nav a { padding:16px clamp(14px,5vw,72px); border-right:1px solid var(--line); font-family:var(--mono); font-size:13px; }
.samples,.risk,.decision { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:clamp(30px,5vw,72px); padding:clamp(58px,8vw,108px) clamp(20px,5vw,72px); align-items:center; }
.samples img,.decision img { border:2px solid var(--ink); }
.risk { grid-template-columns:minmax(0,1fr) minmax(0,.9fr); background:#e4dfd4; }
.risk-board { border:2px solid var(--ink); background:var(--white); }
.risk-board div { display:grid; grid-template-columns:130px 1fr; gap:18px; padding:20px; border-bottom:1px solid var(--line); }
.risk-board div:last-child { border-bottom:0; }
.risk-board b { font-family:var(--mono); color:var(--red); }
.risk-board span { color:var(--text); }
.decision { background:var(--white); align-items:start; }
.contacts { display:grid; gap:8px; margin:20px 0; }
.form { display:grid; gap:10px; padding:18px; border:2px solid var(--ink); background:var(--paper); }
label { display:grid; gap:7px; color:var(--text); font-size:13px; }
input { min-height:44px; border:1px solid var(--line); background:var(--white); color:var(--ink); padding:0 12px; }
@media (max-width:760px){ .hero{min-height:auto; padding:230px 20px 34px;} h1{font-size:clamp(32px,9.5vw,46px);} h2{font-size:clamp(25px,7.8vw,36px);} .samples,.risk,.decision{grid-template-columns:1fr; padding:56px 20px;} .risk-board div{grid-template-columns:1fr;} .dossier-nav a{padding:14px 10px;} }
