/* Scoped to pages explicitly owned by Dream Reflection. */
#dream-app a.dream-brand { color:inherit; text-decoration:none; }
#dream-app a:focus-visible, #dream-app summary:focus-visible { outline:2px solid var(--dr-accent); outline-offset:6px; }
#dream-app.dream-supporting-app { background:var(--dr-bg); min-height:80vh; }
#dream-app .dream-page-main { max-width:820px; padding:56px 50px 64px; margin:0 auto; }
#dream-app .dream-back-link { font-size:13px; color:var(--dr-muted); text-decoration:none; }
#dream-app .dream-page-heading { position:relative; padding:46px 0 32px; }
#dream-app .dream-page-heading::after { content:""; position:absolute; right:0; top:10px; width:140px; height:140px; border-radius:50%; background:radial-gradient(circle,rgba(206,148,94,.18),transparent 70%); pointer-events:none; }
#dream-app .dream-page-heading h1 { font-family:"Dream Serif",Georgia,serif; font-weight:500; font-size:clamp(40px,5vw,64px); line-height:1.1; margin:10px 0; overflow-wrap:anywhere; }
#dream-app .dream-page-content { max-width:720px; font-size:16px; line-height:1.85; overflow-wrap:anywhere; }
#dream-app .dream-page-content h2 { font-family:"Dream Serif",Georgia,serif; font-size:30px; font-weight:500; line-height:1.3; margin:36px 0 12px; }
#dream-app .dream-page-content p { margin:0 0 20px; }
#dream-app .dream-page-content ul { margin:0 0 22px; padding-left:24px; }
#dream-app .dream-page-content a { color:var(--dr-accent); text-decoration:underline; }
#dream-app .dream-operator { border-top:1px solid var(--dr-border); margin-top:40px; padding-top:20px; font-size:14px; }
#dream-app .dream-operator summary { cursor:pointer; color:var(--dr-muted); padding:10px 0; }
#dream-app .dream-operator p { margin:16px 0 0; }
#dream-app .dream-language-notice { font-size:13px; color:var(--dr-muted); margin:0 0 28px; }
#dream-app .dream-page-content aside { border:1px dashed var(--dr-border); padding:16px; margin-bottom:28px; font-size:14px; }
@media(max-width:600px) { #dream-app .dream-page-main { padding:32px 24px 44px; } #dream-app .dream-page-heading { padding:32px 0 22px; } }
html[data-dream-theme="dark"] #dream-app.dream-supporting-app { background:#09182b; }
#dream-app.dream-supporting-app::before { display:none; }
#dream-app .dream-contact-form .wpforms-container { margin:28px 0; }
#dream-app .dream-contact-form .wpforms-form label { color:var(--dr-text); font-family:"Dream Sans",sans-serif; font-size:14px; }
#dream-app .dream-contact-form .wpforms-form input:not([type=hidden]):not([type=checkbox]):not([type=radio]), #dream-app .dream-contact-form .wpforms-form textarea, #dream-app .dream-contact-form .wpforms-form select { width:100%; max-width:100%; border:1px solid var(--dr-border); border-radius:10px; padding:12px 14px; background:var(--dr-surface-strong); color:var(--dr-text); font:inherit; box-shadow:none; }
#dream-app .dream-contact-form .wpforms-form input:focus-visible, #dream-app .dream-contact-form .wpforms-form textarea:focus-visible, #dream-app .dream-contact-form .wpforms-form button:focus-visible { outline:2px solid var(--dr-accent); outline-offset:4px; }
#dream-app .dream-contact-form .wpforms-form button[type=submit] { background:var(--dr-accent); color:var(--dr-bg); border:0; border-radius:30px; padding:13px 28px; font:inherit; }
#dream-app .dream-contact-form .wpforms-field { margin-bottom:18px; }
#dream-app .dream-contact-unavailable { padding:22px 0; border-block:1px solid var(--dr-border); margin:26px 0; }
#dream-app .dream-contact-admin { font-size:12px; color:var(--dr-muted); }

