/* Application dialog only: all rules stay inside this modal. */
#brief-dialog{width:680px;max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:26px 34px 30px;border:1px solid #d6ccba;border-radius:18px;background:#fcfaf6;box-shadow:0 28px 100px #07141e33;scrollbar-width:thin;scrollbar-color:#c8b898 transparent}
#brief-dialog .dialog-top{gap:20px;margin-bottom:13px}
#brief-dialog .brief-brand{font-size:17px;font-weight:800;letter-spacing:-.055em;line-height:1}
#brief-dialog .brief-brand>span{color:#b68a35}
#brief-dialog .close-button{display:grid;place-items:center;width:36px;height:36px;min-width:36px;min-height:36px;border:1px solid #e2dacb;border-radius:50%;background:#f5f2eb;color:#776b55}
#brief-dialog .close-button:hover{background:#eee6d6;color:#111}
#brief-dialog .close-button>span{font-size:26px;line-height:1}
#brief-dialog .serif-heading{font-size:clamp(42px,4.5vw,56px);font-weight:400;line-height:1.08;letter-spacing:-.035em;margin:0}
#brief-dialog .serif-heading>em{color:#a17b36}
#brief-dialog .brief-explanation{max-width:460px;margin:12px 0 23px;font-size:12px;line-height:1.75;color:#7c7466}
#brief-dialog #brief-form{gap:16px}
#brief-dialog .brief-fields{display:grid;gap:18px;min-width:0;margin:0;padding:0;border:0}
#brief-dialog .project-type{min-width:0;margin:0;padding:0;border:0}
#brief-dialog .project-type>legend{margin:0 0 11px;padding:0;font-size:12px;font-weight:600;color:#494337}
#brief-dialog .required-mark{color:#a17b36}
#brief-dialog .project-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#brief-dialog .project-option{position:relative;display:block;min-width:0;cursor:pointer}
#brief-dialog .project-option>input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%)}
#brief-dialog .project-option>span{position:relative;display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:66px;padding:13px 35px 13px 15px;border:1px solid #ded5c5;border-radius:8px;background:#f5f2eb;transition:background .25s var(--ease),border-color .25s var(--ease),box-shadow .25s var(--ease)}
#brief-dialog .project-option strong{font-size:12px;font-weight:600;line-height:1.3;color:#423d33}
#brief-dialog .project-option small{font-size:9px;line-height:1.5;color:#8b816f}
#brief-dialog .project-option:hover>span{border-color:#b99c69;background:#f1ebdf}
#brief-dialog .project-option>input:checked+span{border-color:#aa8341;background:#f0e5ce;box-shadow:inset 0 0 0 1px #aa834126}
#brief-dialog .project-option>input:checked+span:after{content:"";width:15px;height:15px;background:currentColor;-webkit-mask:url("assets/icons/check.svg") center/contain no-repeat;mask:url("assets/icons/check.svg") center/contain no-repeat;position:absolute;right:14px;top:50%;translate:0 -50%;font-size:15px;color:#98722f}
#brief-dialog .project-option>input:focus-visible+span{outline:2px solid #b68a35;outline-offset:3px}
#brief-dialog .project-option>input[aria-invalid=true]+span{border-color:#b97958}
#brief-dialog .brief-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#brief-dialog .brief-field{display:grid;gap:7px;min-width:0}
#brief-dialog .brief-field>label{display:block;gap:0;font-size:11px;font-weight:500;line-height:1.5;color:#5f5748}
#brief-dialog .brief-field>input,#brief-dialog .brief-field>textarea{width:100%;min-width:0;margin:0;padding:12px 13px;border:1px solid #ded5c5;border-radius:7px;background:#fffdf9;color:#302c26;font-size:12px;line-height:1.6;box-shadow:none;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
#brief-dialog .brief-field>input{min-height:45px}
#brief-dialog .brief-field>textarea{min-height:88px;max-height:240px;resize:vertical}
#brief-dialog .brief-field>input::placeholder,#brief-dialog .brief-field>textarea::placeholder{color:#a19786}
#brief-dialog .brief-field>input:focus,#brief-dialog .brief-field>textarea:focus{outline:none;border-color:#b28a48;box-shadow:0 0 0 3px #b68a3514}
#brief-dialog .brief-field>[aria-invalid=true]{border-color:#b97958}
#brief-dialog .field-error{margin:0;font-size:10px;line-height:1.5;color:#985b3d}
#brief-dialog .project-type>.field-error{margin-top:8px}
#brief-dialog .brief-fields:disabled{opacity:.65}
#brief-dialog .brief-privacy{max-width:520px;font-size:9px;line-height:1.7;color:#938979}
#brief-dialog #brief-submit{width:100%;min-height:52px;justify-content:space-between;gap:18px;padding:15px 19px;border-radius:7px;font-size:10px}
#brief-dialog #brief-submit-label{font:inherit;line-height:inherit;color:inherit;translate:none}
#brief-dialog .brief-submit-symbol{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;line-height:1}
#brief-dialog .brief-submit-symbol>svg{display:block}
#brief-dialog #brief-submit:disabled{cursor:wait;opacity:.75}
#brief-dialog #brief-submit:disabled>span{translate:none}
#brief-dialog #brief-submit[data-pending=true] .brief-submit-symbol>svg{display:none}
#brief-dialog #brief-submit[data-pending=true] .brief-submit-symbol:after{content:'';width:16px;height:16px;border:1.5px solid #ffffff40;border-top-color:#d7b568;border-radius:50%;animation:brief-spin .9s linear infinite}
#brief-dialog .brief-feedback{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid #cbd2b6;border-radius:9px;background:#f0f3e8;color:#465638}
#brief-dialog .brief-feedback strong{display:block;font-size:13px;font-weight:600;line-height:1.5}
#brief-dialog .brief-feedback p{margin:4px 0 0;font-size:11px;line-height:1.65;color:#6e7863}
#brief-dialog .brief-feedback-icon{display:grid;place-items:center;flex:0 0 25px;width:25px;height:25px;border:1px solid currentColor;border-radius:50%;font-size:14px}
#brief-dialog .brief-feedback[data-state=error]{border-color:#e1c4ae;background:#fff3eb;color:#905b3a}
#brief-dialog .brief-feedback[data-state=error] p{color:#946e56}
@keyframes brief-spin{to{rotate:360deg}}
@media(max-width:540px){
 #brief-dialog{max-width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:21px 20px 24px;border-radius:15px}
 #brief-dialog .brief-brand{font-size:15px}
 #brief-dialog .serif-heading{font-size:43px}
 #brief-dialog .brief-explanation{font-size:11px;margin-bottom:19px}
 #brief-dialog .project-type>legend{font-size:11px}
 #brief-dialog .project-option>span{padding:11px 24px 11px 11px;min-height:65px}
 #brief-dialog .project-option strong{font-size:11px}
 #brief-dialog .project-option small{font-size:8px}
 #brief-dialog .project-option>input:checked+span:after{right:9px;font-size:12px}
 #brief-dialog .brief-contact-grid{grid-template-columns:1fr;gap:15px}
 #brief-dialog .brief-field>input,#brief-dialog .brief-field>textarea{font-size:16px}
 #brief-dialog .brief-field>input::placeholder,#brief-dialog .brief-field>textarea::placeholder{font-size:11px}
 #brief-dialog .brief-privacy{font-size:8px}
}
