:root{--primary-blue:#2c3e50;--accent-blue:#34495e;--border-gray:#8a9599;--success-green:#1d6b3e;--text-main:#333}
*,*::before,*::after{box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.5;color:var(--text-main);background-color:#f4f7f6;margin:0;padding:10px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:8px;top:-60px;background:#000;color:#fff;padding:10px 16px;font-weight:700;z-index:10}
.skip-link:focus{top:8px}
a{color:var(--primary-blue)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #F2BB06;outline-offset:2px}
.container,.policy-container{max-width:800px;margin:0 auto;background:#fff;padding:30px;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1)}
.policy-container{padding:50px}
.doc-header{text-align:center;border-bottom:2px solid var(--primary-blue);margin-bottom:20px;padding-bottom:10px}
.policy .doc-header{border-bottom-width:3px;margin-bottom:30px;padding-bottom:20px}
.address-block{font-size:.9em;margin-top:5px;color:#555}
h1{margin:0;font-size:22px;color:var(--primary-blue)}
.form-title{margin:5px 0;font-size:18px;font-weight:600}
.policy h1{font-size:26px;text-transform:uppercase;letter-spacing:1px}
.adoption-notice{margin-top:15px;font-weight:bold;color:#b03a2e;font-size:.95em}
.policy h2{color:var(--accent-blue);font-size:20px;border-left:5px solid var(--primary-blue);padding-left:15px;margin-top:35px;margin-bottom:15px}
.policy p{margin-bottom:15px;line-height:1.6}
.address-box{background-color:#f9f9f9;border:1px solid var(--border-gray);padding:15px;margin:20px 0;border-radius:4px;line-height:1.6}
.doc-footer{margin-top:50px;font-size:.85em;color:#5f6b6d;text-align:center;border-top:1px solid #eee;padding-top:20px}
.back-link{margin:0 0 16px;font-size:.95em}
fieldset{border:1px solid var(--border-gray);border-radius:4px;margin:0 0 20px;padding:15px}
legend{font-weight:bold;padding:0 10px;color:var(--primary-blue)}
.form-group{margin-bottom:15px;display:flex;flex-direction:column}
label{font-weight:600;margin-bottom:5px}
input[type=text],input[type=tel],input[type=email],input[type=date],textarea{width:100%;padding:12px;border:1px solid var(--border-gray);border-radius:4px;font:inherit;font-size:16px}
input:disabled{background:#eee;color:#555}
.checkbox-group{display:flex;flex-direction:column;gap:10px}
.checkbox-item{display:flex;align-items:center}
.checkbox-item input{margin:0 10px 0 0;width:22px;height:22px}
.checkbox-item label{margin:0}
.acknowledgment{background:#f9f9f9;padding:15px;border-left:4px solid var(--primary-blue);font-size:.95em;margin-bottom:20px}
.signature-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.office-use{background-color:#f1f1f1;border:1px solid #ccc;padding:15px;margin-top:25px}
.office-use .signature-row{margin-top:10px}
.actions{margin-top:30px;display:flex;flex-wrap:wrap;gap:10px}
button{flex:1;min-width:150px;min-height:44px;padding:14px;font-size:16px;font-weight:bold;cursor:pointer;border-radius:6px;border:none}
.btn-print{background-color:var(--primary-blue);color:#fff}
.btn-email{background-color:var(--success-green);color:#fff}
.print-btn{flex:none;display:inline-block;min-width:0;background:var(--primary-blue);color:#fff;padding:10px 20px;border-radius:4px;margin-bottom:20px;font-weight:normal}
@media print{.actions,.print-btn,.back-link,.skip-link{display:none!important}body{background:#fff;padding:0}.container,.policy-container{box-shadow:none;border:none;width:100%;max-width:100%;padding:0}input,textarea{border:1px solid #ccc!important}.policy h2{page-break-after:avoid}}
@media (max-width:600px){.signature-row{grid-template-columns:1fr}.policy-container{padding:20px}.policy h1{font-size:20px}.container{padding:20px}}
.org-name{margin:0;font-size:1.15em;font-weight:700;color:#7a1515}
.form-h1{margin:12px 0 0;font-size:22px;letter-spacing:.5px}
.doc-header .address-block{margin:4px 0 0}
.form-tools{margin:0 0 18px}
.form-note{margin:0;padding:10px 14px;background:#eef3f7;border:1px solid #b8c7d3;border-radius:6px;font-size:.95em}
.notice{font-style:italic;font-weight:600;text-align:center;font-size:.92em}
.warning{font-weight:700;text-align:center;font-size:.92em}
.revised{font-size:.85em;color:#555}
.hint{display:block;font-weight:400;font-size:.88em;color:#555;margin:-2px 0 5px}
.hint-block{margin:6px 0 10px;font-size:.92em;font-style:italic;color:#444}
.form-group--wide{grid-column:1/-1}
fieldset.choice{border:0;padding:0;margin:0 0 15px}
fieldset.choice legend{padding:0;margin-bottom:6px;color:var(--text-main);font-weight:600}
.checkbox-group--row{flex-direction:row;flex-wrap:wrap;gap:10px 24px}
.checkbox-item--top{align-items:flex-start}
.checkbox-item--top input{margin-top:3px;flex:none}
.checkbox-item--top label{font-weight:400}
fieldset.office-use{background:#f1f1f1;border-color:#999}
.terms,.instructions{margin:0 0 20px}
.terms h2,.instructions h2{font-size:17px;margin:20px 0 10px;color:var(--primary-blue)}
ol.plain,ul.plain-list{padding-left:0;list-style:none}
ol.plain li,ul.plain-list li{margin:0 0 10px}
.instructions table{border-collapse:collapse;margin:0 0 14px;min-width:60%}
.instructions caption{text-align:left;font-weight:700;padding:4px 0}
.instructions th,.instructions td{border:1px solid #8a9599;padding:6px 10px;text-align:left}
.email-note{font-size:.88em;color:#555;margin:12px 0 0}
@media print{.form-tools,.email-note{display:none!important}.hint{display:none}fieldset{break-inside:avoid}input:disabled{background:#fff}}
@media print{
@page{size:letter;margin:.4in}
body.records{font-size:9pt;line-height:1.25;padding:0}
.records .container{padding:0}
.records .back-link,.records .form-tools,.records .email-note,.records .actions,.records .skip-link,.records .hint{display:none!important}
.records .doc-header{margin:0 0 4px;padding:0 0 3px;border-bottom-width:1px}
.records .org-name{font-size:11pt}
.records .address-block{font-size:8.5pt;margin:0}
.records .form-h1{margin:2px 0 0;font-size:12pt}
.records .notice,.records .warning{font-size:8pt;margin:2px 0}
.records p{margin:0 0 3px}
.records form fieldset{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;margin:0 0 4px;padding:2px 8px 4px;border-radius:2px;break-inside:avoid}
.records form fieldset legend{font-size:9pt;padding:0 4px}
.records form fieldset>p,.records form fieldset>.hint-block,.records form fieldset>.checkbox-item,.records form fieldset>fieldset,.records .form-group--wide{grid-column:1/-1}
.records .signature-row{display:contents}
.records .form-group{margin:0 0 2px;flex-direction:row;align-items:flex-end;gap:5px}
.records .form-group label{margin:0;font-size:8.5pt;white-space:nowrap;flex:none;max-width:60%;white-space:normal}
.records input[type=text],.records input[type=tel],.records input[type=email],.records input[type=date],.records input[type=time],.records input[type=number]{flex:1;min-width:0;height:16px;padding:0 3px;border:0!important;border-bottom:1px solid #444!important;border-radius:0;font-size:9pt;background:#fff}
.records textarea{height:34px;padding:2px 3px;font-size:9pt}
.records fieldset.choice{display:block;margin:0 0 2px;padding:0;border:0}
.records fieldset.choice legend{float:left;margin:0 8px 0 0;padding:0;font-size:8.5pt}
.records .checkbox-group,.records .checkbox-group--row{display:flex;flex-direction:row;flex-wrap:wrap;gap:2px 14px}
.records .checkbox-item input{width:11px;height:11px;margin:0 4px 0 0}
.records .checkbox-item label{font-size:8.5pt;font-weight:400}
.records .hint-block{margin:1px 0;font-size:7.5pt}
.records .terms,.records .instructions{margin:0 0 4px;font-size:8pt;line-height:1.2;break-inside:auto}
.records .terms h2,.records .instructions h2{font-size:9pt;margin:3px 0 2px}
.records ol.plain li,.records ul.plain-list li,.records .terms li{margin:0 0 2px}
.records .terms ul{margin:0;padding-left:14px}
.records .acknowledgment{padding:3px 6px;margin:0 0 3px;font-size:8pt}
.records .instructions table{margin:0 0 3px;font-size:8pt}
.records .instructions th,.records .instructions td{padding:1px 5px}
.records .instructions caption{padding:0}
.records .revised{font-size:7pt;margin:0}
.records fieldset.office-use{background:#fff}
}
