/* /audit/ : MADHOUSE brand kit (ink, cream, Poppins + Heebo). Magenta lives only in the wordmark dot and the keyboard focus ring. */
@font-face{font-family:"Brand";src:url(fonts/heebo-hebrew.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:"Brand";src:url(fonts/poppins-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Brand";src:url(fonts/poppins-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Brand";src:url(fonts/poppins-ExtraBold.woff2) format("woff2");font-weight:800;font-display:swap}
:root{
  --ink:#0B0A0C; --ink-2:#141215; --cream:#ECE6DC; --paper:#F5F1EA; --sheet:#FBF9F5;
  --magenta:#FF2D7E; --muted:#9A938A; --dim:#665F57; --brown:#4F4841; --edge:#8A8378;
  --line:rgba(11,10,12,.16); --line-d:rgba(236,230,220,.16);
  --font:"Brand","Heebo",system-ui,sans-serif;
  --gutter:24px; --wrap:1200px; --r:3px; --ease:cubic-bezier(.22,.61,.27,1);
}
@media(max-width:767px){:root{--gutter:20px}}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}
body{font-family:var(--font);font-size:19px;line-height:1.7;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
::selection{background:var(--ink);color:var(--cream)}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
.wrap{width:100%;max-width:calc(var(--wrap) + var(--gutter)*2);margin-inline:auto;padding-inline:var(--gutter)}
:focus-visible{outline:3px solid var(--magenta);outline-offset:3px}
.skip{position:absolute;inset-inline-start:-9999px}.skip:focus{inset-inline-start:12px;top:12px;z-index:99;background:var(--cream);padding:10px 14px}
h1,h2,h3{font-weight:800;line-height:1.1;letter-spacing:-.02em;text-wrap:balance}
h2{font-size:clamp(34px,4.4vw,62px)}
.dark{background:var(--ink);color:var(--cream)}
p{max-width:34em}

/* button */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 34px;border-radius:var(--r);font:700 18px/1 var(--font);border:0;cursor:pointer;transition:transform .2s var(--ease),background .2s}
.btn-cream{background:var(--cream);color:var(--ink)}
.btn-cream:hover{background:#fff}
.btn-ink{background:var(--ink);color:var(--cream)}
.btn-ink:hover{background:#262226}
.btn:active{transform:translateY(1px)}
.btn[disabled]{background:#9A938A;color:var(--ink);cursor:progress}

/* header: wordmark only, a landing page has nowhere to leak to */
.top{position:absolute;inset:0 0 auto;z-index:10}
.top .wrap{display:flex;align-items:center;height:96px}
.wm{height:52px;width:auto;margin-inline-start:-14px}
@media(max-width:767px){.top .wrap{height:72px}.wm{height:44px;margin-inline-start:-11px}}

/* 1 hero: the headline is the composition */
.hero{position:relative;overflow:hidden;padding:132px 0 96px}
.hero h1{font-size:clamp(54px,9vw,132px);line-height:.98;letter-spacing:-.03em;font-weight:800}
.hero h1 b{font-weight:300}
.hero-b{margin-top:44px}
.hero-t p{font-size:clamp(19px,1.6vw,22px);line-height:1.6;color:var(--muted);max-width:30em}
.hero-t .btn{margin-top:30px}
.hero-t small{display:block;margin-top:18px;color:var(--muted);font-size:15.5px;line-height:1.6;max-width:30em}
@media(max-width:900px){
  .hero{padding:96px 0 56px}
  .hero h1{font-size:clamp(50px,14.2vw,72px)}
  .hero-b{margin-top:26px}
  .hero-t .btn{width:100%}
}

/* the document: a printed page, slightly lifted. Redaction = black bars, as on a real redacted file. */
.doc{background:var(--sheet);color:var(--ink);width:100%;max-width:430px;font-size:16.5px;line-height:1.5;padding:2em 2.1em 2.2em;box-shadow:0 1px 2px rgba(0,0,0,.25),0 26px 50px -24px rgba(0,0,0,.6);border-radius:1px}
.doc .hd{display:flex;justify-content:space-between;align-items:center;font-size:.74em;color:var(--dim);padding-bottom:.9em;margin-bottom:1.4em;border-bottom:1px solid var(--line)}
.doc .hd img{height:2.5em;width:auto;margin-inline-start:-.5em}
.doc h3{font-size:1.9em;line-height:1.12;margin-bottom:.9em;font-weight:800}
.rx{display:inline-block;height:.82em;background:var(--ink);vertical-align:-.08em}
.doc .pp .rx{height:.8em}
.doc .kv{font-size:.84em;display:grid;grid-template-columns:auto 1fr;gap:.45em 1em;align-items:center;margin-bottom:1.5em}
.doc .kv dt{color:var(--dim)}
.toc{list-style:none;font-size:.88em}
.toc li{display:flex;align-items:baseline;gap:.5em;padding:.32em 0}
.toc .d{flex:1;border-bottom:1.5px dotted var(--edge);transform:translateY(-.3em)}
.toc span:last-child{font-variant-numeric:tabular-nums}
.toc-h{font-size:.8em;font-weight:800;margin-bottom:.4em;letter-spacing:.02em}
.doc .lb{font-size:.78em;font-weight:800;color:var(--dim);margin:1.2em 0 .4em;letter-spacing:.03em}
.doc.page .pp{font-size:.9em;line-height:1.75;margin:0 0 .4em;max-width:none}
.doc table{width:100%;border-collapse:collapse;font-size:.88em}
.doc th{font-weight:600;color:var(--dim);text-align:start;padding:.45em .3em;border-bottom:1.5px solid var(--ink);font-size:.86em}
.doc td{padding:.62em .3em;border-bottom:1px solid var(--line)}
@media(max-width:900px){.doc{max-width:none;font-size:14px}}

/* 2 to 5: one letter-like column, figures in the margin */
.letter{background:var(--paper);padding:128px 0 24px;isolation:isolate}
.row{display:grid;grid-template-columns:620px 1fr;grid-template-areas:"txt fig";gap:0 96px;margin-bottom:150px;align-items:start}
.row .txt{grid-area:txt}.row .fig{grid-area:fig}
.r2{position:relative}
.r2 .fig{margin-top:150px}.r4 .fig{margin-top:10px}
.r2::before{content:"";position:absolute;z-index:-1;top:-84px;bottom:-84px;left:50%;width:100vw;transform:translateX(-50%);background:var(--cream)}
.txt h2{font-size:clamp(32px,3.2vw,44px);margin-bottom:26px;line-height:1.15}
.txt h2.big{font-size:clamp(38px,4.4vw,62px)}
.txt p{font-size:20px;line-height:1.8;margin:0 0 22px;color:var(--brown);max-width:none}
.txt p b{color:var(--ink);font-weight:800}
.txt p.lead{font-size:clamp(21px,2vw,25px);line-height:1.6;color:var(--ink);margin-bottom:34px;font-weight:500}
.txt .n{font:800 20px var(--font);color:var(--ink)}
.me img{width:170px;height:auto;aspect-ratio:201/244;object-fit:cover;filter:grayscale(1)}
.me figcaption{margin-top:12px;font-size:15px;color:var(--dim);line-height:1.5}.me figcaption b{display:block;color:var(--ink);font-size:17px}
@media(max-width:900px){
  .letter{padding:64px 0 0}
  .row{grid-template-columns:1fr;grid-template-areas:"txt" "fig";gap:36px 0;margin-bottom:72px}
  .r2 .fig,.r4 .fig{margin-top:0}
  .r2::before{top:-48px;bottom:-40px}
  .r3 .fig{display:none}
  .r4{margin-bottom:64px}
  .txt p{font-size:18.5px;line-height:1.75}
  .me{display:flex;gap:16px;align-items:flex-end}.me img{width:104px}.me figcaption{margin:0}
}

/* 6 form: flat, square, on cream paper */
.cta{padding:112px 0}
.cta .wrap{display:grid;grid-template-columns:1fr 1fr;gap:88px;align-items:start}
.cta h2{margin-bottom:34px}
.after{color:var(--muted);font-size:18px;max-width:28em}
.after b{display:block;color:var(--cream);font-weight:800;font-size:19px;margin-bottom:10px}
.after ol{padding-inline-start:1.3em;display:grid;gap:10px}
form{background:var(--cream);color:var(--ink);border-radius:var(--r);padding:44px;display:grid;gap:20px}
.f label{display:block;font-size:15.5px;font-weight:700;margin-bottom:7px}
.f label span{font-weight:400;color:var(--dim)}
.f input,.f select{width:100%;min-height:54px;border:1px solid var(--edge);border-radius:var(--r);padding:0 14px;font:400 17px var(--font);color:var(--ink);background:var(--sheet)}
.f input::placeholder{color:var(--dim);opacity:1}
.f input:focus,.f select:focus{outline:0;border-color:var(--ink);box-shadow:0 0 0 3px rgba(255,45,126,.5)}
.f select{appearance:none;background-repeat:no-repeat;background-position:left 14px center;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' fill='none'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%230B0A0C' stroke-width='2'/%3E%3C/svg%3E")}
.f .err{display:none;margin-top:7px;font-size:14px;color:#B3261E;font-weight:700}
.f.bad input,.f.bad select{border-color:#B3261E;box-shadow:0 0 0 1px #B3261E}.f.bad .err{display:block}
.f input[dir=ltr]{text-align:right}
.hp{position:absolute;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}
form .btn{width:100%}
form small{font-size:14.5px;color:var(--brown);line-height:1.55}
.form-fail{display:none;font-size:15px;font-weight:700;color:#B3261E;line-height:1.55}
.form-fail.on{display:block}
.form-fail a{text-decoration:underline}
@media(max-width:900px){.cta{padding:72px 0}.cta .wrap{grid-template-columns:1fr;gap:40px}form{padding:26px 20px}}

/* 7 faq: open text */
.faq{padding:112px 0 128px;background:var(--paper)}
.faq .row{margin-bottom:0}
.faq .g{display:grid;gap:30px}
.faq h3{font-size:21px;line-height:1.35;margin-bottom:8px;font-weight:800;letter-spacing:-.01em}
.faq p{font-size:19px}
@media(max-width:900px){.faq{padding:72px 0}.faq .g{gap:26px}.faq p{font-size:18.5px}}

footer{padding:44px 0;color:var(--muted);font-size:15px}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
footer img{height:46px;width:auto;margin-inline-start:-12px}
footer nav{display:flex;gap:26px}
@media(max-width:767px){footer{padding-bottom:calc(36px + 78px)}}

/* sticky CTA bar (mobile only) */
.bar{position:fixed;inset:auto 0 0;z-index:30;display:none;background:var(--ink);border-top:1px solid var(--line-d);padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));transform:translateY(110%);transition:transform .3s var(--ease)}
.bar.on{transform:none}.bar .btn{width:100%;min-height:54px}
@media(max-width:767px){.bar{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.bar,.btn{transition:none}}

/* consent bar: same storage key and look family as the rest of the site */
.cookie{position:fixed;z-index:45;inset-inline:12px;bottom:12px;display:none;align-items:center;gap:12px;justify-content:space-between;padding:12px 14px;border-radius:var(--r);background:var(--ink-2);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line-d),0 20px 40px -20px rgba(0,0,0,.6);font-size:14px;line-height:1.5;max-width:700px}
.cookie.show{display:flex}
.cookie p{max-width:none}
.cookie a{color:var(--cream);text-decoration:underline}
.cookie .acts{display:flex;gap:8px;flex:none}
.cookie button{min-height:44px;padding:0 14px;border-radius:var(--r);border:0;font:700 14px var(--font);cursor:pointer}
.cookie .ok{background:var(--cream);color:var(--ink)}
.cookie .no{background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line-d)}
@media(min-width:768px){.cookie{inset-inline:auto;inset-inline-start:24px;bottom:24px}}
@media(max-width:767px){body:has(.bar.on) .cookie{bottom:88px}.cookie{flex-wrap:wrap}}

/* undecided operational items, visible on dev only: a PROD build refuses to ship any element with this class */
.ph{outline:2px dashed #C77700;outline-offset:2px;background:rgba(255,190,60,.28);border-radius:2px}
.dark .ph{background:rgba(255,190,60,.22);outline-color:#FFB43C}
