body.dialog-open{overflow:hidden}
#consultation-dialog{box-sizing:border-box;border:0;border-radius:24px;padding:36px 42px 24px;width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:#f5f5f1;color:#14283f;box-shadow:0 28px 100px #020d2055}
#consultation-dialog::backdrop{background:#051425b8;backdrop-filter:blur(5px)}
#consultation-dialog h2{font-size:clamp(32px,4vw,44px);line-height:1.05;margin:10px 0 12px;letter-spacing:-1px;color:#14283f}
#consultation-dialog .eyebrow{color:#766039;margin:0 45px 0 0;font-size:11px}
#consultation-intro{margin:0 0 22px;max-width:520px;color:#526071;font-size:15px}
.dialog-close{position:absolute;right:18px;top:16px;border:0;background:transparent;color:#14283f;font-size:30px;width:44px;height:44px;cursor:pointer;border-radius:50%}
.dialog-close:hover{background:#e3e9ec}
.inquiry-form{text-align:left;min-width:0;color:#14283f;font-family:Manrope,Arial,sans-serif}
.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-field{min-width:0;margin-bottom:16px}
.form-field label{display:block;font-size:13px;font-weight:650;margin-bottom:8px;color:#14283f}
.form-field label span{font-weight:400;color:#64717b;font-size:11px}
.form-field input,.form-field select,.form-field textarea{box-sizing:border-box;display:block;width:100%;border:1px solid #aab8c0;background:#ffffffb8;color:#14283f;border-radius:8px;padding:11px 12px;font:inherit;font-size:16px;line-height:1.4;min-height:46px}
.form-field textarea{resize:vertical;min-height:88px;max-height:250px}
.form-field small{display:block;font-size:11px;color:#526071;margin-top:5px;line-height:1.4}
.field-error{display:block;font-size:12px;color:#9d2637;line-height:1.4;margin-top:5px}
.field-error:empty{display:none}
.form-field [aria-invalid=true]{border-color:#a42c3e}
.inquiry-form :focus-visible,.dialog-close:focus-visible{outline:3px solid #486c98;outline-offset:3px}
.form-notice{font-size:12px!important;line-height:1.6!important;color:#526071!important;margin:0 0 16px!important;max-width:none!important}
.form-notice strong{color:#34495e}
.form-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.inquiry-form .button{margin:0;border:0;border-radius:50px;background:#d9c399;color:#14283f;font:inherit;font-size:14px;padding:14px 24px;display:inline-flex;gap:30px;align-items:center;min-height:48px}
.inquiry-form .button:disabled{opacity:.65;cursor:not-allowed}
.check-details{font:inherit;font-size:13px;background:transparent;border:0;border-bottom:1px solid #8193a1;color:#34495e;padding:12px 0;cursor:pointer;min-height:44px}
.form-status{font-size:13px;line-height:1.5;color:#34495e;margin:12px 0 0}
.form-status:empty{display:none}
.contact-form-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding-top:60px;padding-bottom:100px}
.contact-form-section h2{color:#14283f}.contact-form-section>div>p{color:#526071}
@media(max-width:700px){#consultation-dialog{padding:30px 22px 24px;width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:20px}#consultation-dialog h2{font-size:34px}.form-pair{grid-template-columns:1fr;gap:0}.form-field{margin-bottom:14px}.contact-form-section{grid-template-columns:1fr;gap:25px;padding-top:30px}.dialog-close{right:10px;top:10px}}
@media(prefers-reduced-motion:reduce){#consultation-dialog::backdrop{backdrop-filter:none}}
.book-reflection{padding-top:70px;padding-bottom:80px;max-width:1000px}.book-reflection figure{margin:28px 0 0}.book-reflection blockquote{margin:0;font-family:Georgia,serif;font-size:clamp(23px,3vw,37px);line-height:1.55;color:#172c43;letter-spacing:-.5px}.book-reflection figcaption{margin-top:28px;font-size:13px;line-height:1.8;color:#586778}.book-reflection cite{font-style:normal}
.page-index .book-reflection blockquote{color:#f3f3ef}.page-index .book-reflection figcaption{color:#bac9d7}.page-index .book-reflection .eyebrow,.page-index .book-reflection .text-link{color:#e8c98c}

/* Mobile audit: generous targets without adding visual boxes. */
@media(max-width:700px){footer nav a,footer .social-links a{display:inline-flex;align-items:center;min-height:44px;padding:10px 4px;box-sizing:border-box}footer nav,footer .social-links{row-gap:4px}}

/* Consistent decorative direction icons across operating systems. */
.mt-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex:none;color:inherit}
@media(max-width:600px){.statement-bar{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.statement-bar span{width:auto;max-width:100%}}
