/* Project brief only: shared site colours, native controls and clear focus. */
#brief-dialog{width:min(760px,calc(100% - 36px));max-height:calc(100dvh - 40px);overscroll-behavior:contain;scrollbar-gutter:stable}
#brief-dialog .dialog-inner{padding:44px 44px 35px}
#brief-dialog h2{margin-bottom:17px}
#brief-dialog .brief-intro{max-width:540px;font-size:13px;line-height:1.85;color:var(--muted);margin:0 0 29px}
#brief-dialog .step-indicator>span{font-size:10px}
#brief-dialog .service-options>label{padding:19px 12px;gap:14px;min-height:88px}
#brief-dialog .service-options input{width:17px;height:17px;accent-color:var(--copper-dark)}
#brief-dialog .service-options strong{font-size:14px}
#brief-dialog .service-options small{font-size:11px;line-height:1.65}
#brief-dialog .service-options>label:has(input:checked){background:#e2a47b16}
#brief-dialog .brief-reassurance{display:flex;gap:12px;align-items:flex-start;border-left:2px solid #b36d42;padding-left:16px;margin:25px 0 0;font-size:12px;line-height:1.8;color:#665743}
#brief-dialog .brief-reassurance>span{color:var(--copper-dark);font-size:19px;line-height:1.25}
#brief-dialog .brief-field-hint{font-size:11px;line-height:1.75;color:#626c59;margin:0 0 17px}
#brief-dialog .field-label{font-size:13px}
#brief-dialog .field-label>span{font-size:11px;font-weight:400}
#brief-dialog input:not([type=checkbox]):not([type=radio]),#brief-dialog textarea{display:block;width:100%;min-width:0;border:1px solid #aab39c;border-radius:5px;background:#fcfcf7;color:var(--ink);padding:12px 13px;font:inherit;font-size:16px;line-height:1.6;margin:0 0 9px;box-shadow:none}
#brief-dialog input::placeholder,#brief-dialog textarea::placeholder{color:#737c68;opacity:1;font-size:13px}
#brief-dialog textarea{min-height:104px;resize:vertical}
#brief-dialog .goal-picker{margin:27px 0 24px}
#brief-dialog .goal-picker>legend{font-size:14px;margin-bottom:8px}
#brief-dialog .goal-picker>legend>span{font-size:11px;color:#626c59;font-weight:400;letter-spacing:0}
#brief-dialog .goal-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#brief-dialog .goal-option{display:flex;align-items:flex-start;gap:11px;cursor:pointer;min-width:0;min-height:99px;padding:16px 13px;border:1px solid #bac2ae;border-radius:7px;background:#f8f8f1;transition:background .2s,border-color .2s,box-shadow .2s}
#brief-dialog .goal-option:hover{border-color:#9d7356;background:#fcfaf3}
#brief-dialog .goal-option:has(input:checked){background:#e5a47520;border-color:#af6d43;box-shadow:inset 0 0 0 1px #af6d4326}
#brief-dialog .goal-option input{flex:0 0 auto;width:17px;height:17px;margin:2px 0 0;accent-color:#8c4c2a;cursor:pointer}
#brief-dialog .goal-option strong{display:block;font-size:12px;font-weight:650;line-height:1.65;letter-spacing:-.2px}
#brief-dialog .goal-option small{display:block;font-size:10px;line-height:1.7;color:#65705a;margin-top:5px}
#brief-dialog .brief-scope-note{font-size:10px;line-height:1.8;color:#66705c;margin:14px 0 0}
#brief-dialog .brief-presence{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
#brief-dialog .brief-presence h3{font-size:16px;line-height:1.5;letter-spacing:-.35px;font-weight:550;margin:0 0 8px}
#brief-dialog .brief-presence>input{margin-bottom:19px}
#brief-dialog .brief-social-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#brief-dialog .brief-social-fields>div{min-width:0}
#brief-dialog .brief-social-fields input::placeholder{font-size:11px}
#brief-dialog .form-error{font-size:12px;margin:9px 0 17px;color:#923328}
#brief-dialog [aria-invalid=true]{border-color:#a4392a!important}
#brief-dialog .goal-picker[aria-invalid=true]{border:1px solid #a4392a;border-radius:7px;padding:13px}
#brief-dialog :is(input,textarea,button,a):focus-visible{outline:2px solid #8f4b29;outline-offset:4px}
#brief-dialog .goal-option:has(input:focus-visible),#brief-dialog .service-options>label:has(input:focus-visible){outline:2px solid #8f4b29;outline-offset:3px}
#brief-dialog legend:focus{outline:none}
#brief-dialog .brief-summary{font-size:12px;max-height:360px;overflow:auto;overscroll-behavior:contain}
#brief-dialog .form-navigation{padding-top:20px;border-top:1px solid var(--line);margin-top:26px}
#brief-dialog #brief-back{min-height:44px}
#brief-dialog .summary-actions .text-link{min-height:44px}
@media(max-width:600px){
  #brief-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}
  #brief-dialog .dialog-inner{padding:35px 22px 25px}
  #brief-dialog .brief-intro{font-size:12px;margin-bottom:24px}
  #brief-dialog .step-indicator{gap:8px}
  #brief-dialog .step-indicator>span{font-size:8px;letter-spacing:0}
  #brief-dialog .service-options>label{padding:16px 6px;gap:10px}
  #brief-dialog .service-options strong{font-size:12px}
  #brief-dialog .service-options small{font-size:10px}
  #brief-dialog .field-label{font-size:12px}
  #brief-dialog .field-label>span{font-size:10px}
  #brief-dialog .goal-options{gap:8px}
  #brief-dialog .goal-option{padding:13px 10px;gap:8px;min-height:111px}
  #brief-dialog .goal-option strong{font-size:11px;line-height:1.55}
  #brief-dialog .goal-option small{font-size:10px;line-height:1.65}
  #brief-dialog .brief-social-fields{grid-template-columns:1fr;gap:9px}
  #brief-dialog .brief-social-fields input::placeholder{font-size:13px}
}
@media(max-width:380px){
  #brief-dialog .dialog-inner{padding-inline:18px}
  #brief-dialog .goal-options{grid-template-columns:1fr}
  #brief-dialog .goal-option{min-height:82px;padding:14px 12px}
  #brief-dialog .goal-option strong{font-size:12px}
}
@media(prefers-reduced-motion:reduce){#brief-dialog .goal-option{transition:none}}
