/* Resource request flow: keep the existing hand. visual system. */
.resource-detail-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:6%;align-items:start}
.detail-copy{padding-top:0;min-width:0}
.detail-copy h1{font-size:clamp(1.75rem,2.7vw,2.5rem);line-height:1.5;margin:20px 0}
.detail-copy>.eyebrow{font-size:.875rem;color:var(--muted)}
.detail-copy .detail-badges span{font-size:.875rem}
.detail-copy .detail-cover{margin-top:28px;padding:32px;min-height:300px}
.detail-copy .detail-cover img{width:auto;height:260px;max-width:100%;object-fit:contain;transform:rotate(-4deg)}
.download-panel{background:#fff;border:1px solid var(--line);border-top:5px solid var(--ink);padding:32px;min-width:0;box-shadow:0 14px 42px #16181506}
.download-panel [hidden]{display:none!important}
.download-panel-head .eyebrow{font-size:.875rem;color:var(--muted);letter-spacing:.1em}
.download-panel-head h2{font-size:1.75rem;line-height:1.5;margin:8px 0 12px}
.download-panel-head>p:last-child{font-size:1rem;line-height:1.8;color:var(--muted)}
.download-steps{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0;margin:24px 0 26px}
.download-steps li{font-size:.875rem;line-height:1.7;color:var(--muted);border-bottom:3px solid #e7e9e2;padding-bottom:10px}
.download-steps li b{display:inline-block;margin-right:5px;font-size:1rem}
.download-steps .is-current{border-color:var(--lime);color:var(--ink);font-weight:700}
#download-form{gap:22px}
.required-note{font-size:.875rem;color:var(--muted)}
.field-required,.field-optional{font-size:.75rem!important;line-height:1.4;padding:3px 7px;border-radius:2px;font-weight:500;white-space:nowrap}
.field-required{background:var(--lime);color:var(--ink)!important}
.field-optional{background:#f0f1ed;color:var(--muted)!important}
.download-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 18px}
.download-fields label{font-size:.9375rem;font-weight:600;gap:9px;line-height:1.7}
.download-fields label>span{top:0;right:0}
.download-fields .field-full{grid-column:1/-1}
.download-fields input{background:#fafbf8;border:1px solid #c4c9bd;border-radius:3px;min-height:52px;padding:12px;font-size:1rem;line-height:1.65}
.download-fields input::placeholder{font-size:.9375rem;color:#7c8275}
.download-fields input:focus{border-color:var(--ink);box-shadow:0 0 0 2px var(--lime)}
.download-fields input[aria-invalid=true]{border-color:#9d2828}
.download-privacy{border-top:1px solid var(--line);padding-top:20px}
.download-privacy>p{font-size:.875rem;line-height:1.85;color:var(--muted);margin-bottom:15px}
#download-form .download-consent{display:flex;flex-direction:row;gap:12px;align-items:flex-start;font-size:.875rem;line-height:1.9;cursor:pointer}
#download-form .download-consent>span{position:static;font-size:inherit;color:var(--ink);font-weight:500;min-width:0}
.download-consent input{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:3px 0 0;padding:0;accent-color:var(--ink);cursor:pointer}
.download-consent input:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.download-consent a{border-bottom:1px solid currentColor}
.download-consent .field-required{display:inline-block;margin-left:4px}
.download-submit{font-size:1rem;line-height:1.6;padding:17px 20px;gap:16px}
.download-submit:disabled{cursor:wait;opacity:.65}
.download-error{color:#982727;background:#fff4f1;border-left:3px solid #982727;padding:12px 15px;font-size:.9375rem;line-height:1.8}
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.download-success{text-align:center;padding:8px 0}
.download-complete-mark{display:grid;place-items:center;width:58px;height:58px;background:var(--lime);border-radius:50%;font-size:1.75rem;margin:0 auto 18px}
.download-success .eyebrow{font-size:.875rem;letter-spacing:.1em;color:var(--muted)}
.download-success h3{font-size:1.375rem;line-height:1.65;margin:10px 0 16px;outline:none}
.download-success>p{font-size:1rem;line-height:1.85;color:var(--muted)}
.download-ready{background:var(--paper);border:1px solid var(--line);padding:20px;margin:26px 0 22px;display:flex;flex-direction:column;gap:7px}
.download-ready span{font-size:.875rem;color:var(--muted)}
.download-ready strong{font-size:1.125rem;line-height:1.6}
.download-success .button{width:100%;font-size:1rem}
.download-success .download-expiry{font-size:.875rem;margin-top:14px}
.download-success .inline-link{font-size:.9375rem;margin-top:24px;display:inline-block}
.resource-contents{margin-top:60px}
@media(min-width:1440px){.download-panel{padding:40px}}
@media(max-width:1050px){.resource-detail-grid{gap:4%;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.download-panel{padding:26px}.download-fields{grid-template-columns:1fr}.detail-copy .detail-cover{padding:26px}.download-panel-head h2{font-size:1.5rem}}
@media(max-width:760px){.resource-detail-grid{grid-template-columns:minmax(0,1fr);gap:30px}.detail-copy h1{font-size:1.75rem;margin:15px 0}.detail-copy .detail-cover{min-height:0;padding:20px;margin-top:20px}.detail-copy .detail-cover img{height:180px}.download-panel{padding:24px 20px}.download-fields{grid-template-columns:1fr;gap:20px}.download-steps{gap:12px;margin-bottom:24px}.download-panel-head h2{font-size:1.625rem}.download-submit{padding:17px 15px;font-size:.9375rem}.resource-audience{margin-top:18px}.download-success h3{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){.detail-copy .detail-cover img{transform:none}}
