.resource-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(34px,6vw,80px);align-items:center;padding-block:clamp(70px,9vw,120px)}
.resource-hero h1{font-size:clamp(52px,7vw,92px)}
.resource-hero-proof{margin:0;overflow:hidden;border:1px solid #285462;border-radius:14px;background:#091720;box-shadow:0 24px 70px rgba(0,0,0,.38)}
.resource-hero-proof img{display:block;width:100%;max-height:620px;object-fit:cover;object-position:top}
.resource-hero-proof figcaption{padding:14px 17px;color:#b8cbd4;font-size:13px}
.tool-section{padding-top:70px}
.tool-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:34px;align-items:start}
.tool-form{display:grid;gap:22px}
.tool-heading{display:grid;grid-template-columns:1fr minmax(250px,.65fr);gap:28px;align-items:end}
.privacy-note{margin:0;padding:14px 16px;border-left:4px solid #007c83;background:#e8f4f3;color:#29414e}
.tool-form fieldset{display:grid;gap:17px;margin:0;padding:clamp(20px,3vw,30px);border:1px solid #c8c0b3;border-radius:12px;background:#fff;box-shadow:0 9px 28px rgba(35,30,20,.06)}
.tool-form legend{padding:0 9px;color:#17313e;font-size:19px;font-weight:900}
.tool-form label{display:grid;gap:7px;color:#344d59;font-weight:800}
.tool-form input:not([type=checkbox]),.tool-form textarea{width:100%;box-sizing:border-box;border:1px solid #aab8be;border-radius:5px;background:#fff;color:#172731;padding:12px 13px;font:inherit;font-weight:500;resize:vertical}
.tool-form input:focus,.tool-form textarea:focus{outline:3px solid rgba(0,124,131,.18);border-color:#007c83}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.evidence-options{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}
.evidence-options label{display:flex;align-items:flex-start;gap:9px;padding:10px 12px;border:1px solid #d4dadd;border-radius:5px;background:#f7f9f9;font-weight:700}
.evidence-options input{width:18px;height:18px;accent-color:#007c83}
.tool-actions{display:flex;gap:12px;flex-wrap:wrap}
.tool-status{margin:0;padding:13px 15px;border-left:4px solid #007c83;background:#e8f4f3;color:#29414e;font-weight:750}
.tool-status.success{border-color:#297c4c;background:#e8f5ed;color:#194f30}
.tool-status.error{border-color:#b34747;background:#faecec;color:#7f2828}
.tool-guide{position:sticky;top:24px;padding:28px;border:1px solid #31566a;border-radius:12px;background:#0b2432;color:#c3d5dd;box-shadow:0 20px 55px rgba(0,0,0,.25)}
.tool-guide h2{font-size:clamp(30px,3.5vw,46px)}
.tool-guide ol{display:grid;gap:15px;padding-left:1.3rem}
.tool-guide li{padding-bottom:13px;border-bottom:1px solid #294b5c}
.tool-guide strong{color:#fff}
.generated-section{scroll-margin-top:20px;background:#07141d}
.generated-toolbar{display:flex;justify-content:space-between;gap:28px;align-items:end;margin-bottom:24px}
.report-output{max-width:900px;margin:auto;padding:clamp(28px,5vw,64px);background:#fff;color:#1b2a32;box-shadow:0 18px 60px rgba(0,0,0,.35)}
.report-output header{padding-bottom:20px;border-bottom:3px solid #17313e}
.report-output header h2{color:#17313e}
.report-output section{padding:22px 0;border-bottom:1px solid #cbd3d6}
.report-output h3{margin:0 0 9px;color:#17313e;font-size:21px}
.report-output p{white-space:pre-wrap}
.report-output li{margin-bottom:7px}
.output-disclaimer{max-width:900px;margin:18px auto 0;color:#9fb4be;font-size:13px}
@media(max-width:950px){.resource-hero,.tool-layout,.tool-heading{grid-template-columns:1fr}.tool-guide{position:static}.resource-hero-proof img{max-height:480px}}
@media(max-width:680px){.field-grid,.evidence-options{grid-template-columns:1fr}.generated-toolbar{display:grid}.generated-toolbar .button-row{display:grid}.tool-actions .button{width:100%}}
@media print{
  .site-header,.resource-hero,.tool-section,.final-cta,.footer,.generated-toolbar,.output-disclaimer{display:none!important}
  body,.generated-section{background:#fff!important;color:#000!important}
  .generated-section{display:block!important;padding:0!important}
  .generated-section .shell{max-width:none!important;padding:0!important}
  .report-output{max-width:none;margin:0;padding:0;box-shadow:none;color:#000}
  .report-output section{break-inside:avoid}
}
