/* Public contact page: the existing Amplified-Dreams admin palette. */
html:has(body.contact-page){background:#080706}
.contact-page{min-height:100vh;color:#eee7dc;background:radial-gradient(circle at 15% -5%,rgba(132,82,28,.15),transparent 30rem),radial-gradient(circle at 100% 35%,rgba(88,55,25,.09),transparent 34rem),#080706}
.contact-page .contact-shell{width:min(100%,780px);margin:0 auto;padding:clamp(24px,5vw,64px) clamp(20px,4vw,40px) 40px}
.contact-page .brand-link{margin-bottom:32px;color:#e4bd78;max-width:100%;overflow-wrap:anywhere}
.contact-page .site-logo{max-width:180px;max-height:64px;object-fit:contain}
.contact-page .contact-card{width:100%;padding:clamp(24px,5vw,42px);border:1px solid rgba(208,164,93,.24);border-radius:18px;background:linear-gradient(180deg,rgba(24,21,18,.98),rgba(16,14,12,.98));box-shadow:0 18px 45px rgba(0,0,0,.28)}
.contact-page .eyebrow{margin:0 0 16px;color:#d0a45d;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase}
.contact-page .contact-card h1{margin:0 0 18px;color:#f3ede4;font-size:clamp(2rem,6vw,3.4rem);line-height:1.08;letter-spacing:-.035em}
.contact-page .contact-intro{margin:0 0 28px;color:#a89d8d;line-height:1.7;max-width:52ch}
.contact-page .contact-form{display:grid;gap:12px}
.contact-page .contact-form label{margin-top:8px;color:#ddd4c9;font-size:.9rem;font-weight:650}
.contact-page .contact-form input,.contact-page .contact-form textarea{box-sizing:border-box;display:block;width:100%;min-width:0;font:inherit;font-size:1rem;padding:13px 14px;color:#eee7dc;background:#0d0c0a;border:1px solid #3c342b;border-radius:10px;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.contact-page .contact-form textarea{min-height:180px;resize:vertical;line-height:1.6}
.contact-page .contact-form input:focus,.contact-page .contact-form textarea:focus{outline:2px solid #d0a45d;outline-offset:2px;border-color:#d0a45d}
.contact-page .contact-form button{justify-self:start;min-height:48px;margin-top:12px;padding:13px 24px;font:inherit;font-weight:700;border-radius:10px;border:1px solid rgba(255,224,170,.25);background:linear-gradient(180deg,#d7ad68,#b9833e);color:#100d09;box-shadow:0 6px 18px rgba(0,0,0,.18);cursor:pointer}
.contact-page .contact-form button:hover{filter:brightness(1.08)}
.contact-page a:focus-visible,.contact-page button:focus-visible{outline:2px solid #e4bd78;outline-offset:4px}
.contact-page .hp-field{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}
.contact-page .success{color:#cdebd9;background:#10251a;border:1px solid #2f7650;border-radius:10px;padding:14px;line-height:1.5}
.contact-page .error{color:#ffd2cd;background:#2b1110;border:1px solid #8f3f38;border-radius:10px;padding:14px;line-height:1.5}
.contact-page .contact-back{margin:24px 0 0;font-size:.88rem}
.contact-page .contact-back a{color:#a89d8d;text-decoration:none}
.contact-page .contact-back a:hover{color:#e4bd78}
@media(max-width:480px){.contact-page .contact-form button{width:100%;justify-self:stretch}.contact-page .brand-link.has-logo{flex-wrap:wrap}.contact-page .contact-shell{padding-top:24px}}

/* 16.3: artwork backdrop, subject choice and clear form feedback. */
.contact-page{position:relative;isolation:isolate}
.contact-page .contact-artwork{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;pointer-events:none;opacity:.46}
.contact-page::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(8,7,6,.72),rgba(8,7,6,.35),rgba(8,7,6,.72)),linear-gradient(0deg,rgba(8,7,6,.72),transparent 60%)}
.contact-page .contact-card{background:linear-gradient(180deg,rgba(24,21,18,.94),rgba(16,14,12,.96));backdrop-filter:blur(8px)}
.contact-page .contact-intro{margin-bottom:12px;color:#c7bdaf}
.contact-page .contact-invitation{margin:0 0 24px;color:#c7bdaf;line-height:1.7;max-width:55ch}
.contact-page .contact-form select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:13px 14px;font:inherit;color:#eee7dc;background:#0d0c0a;border:1px solid #3c342b;border-radius:10px;color-scheme:dark}
.contact-page .contact-form select:focus{outline:2px solid #d0a45d;outline-offset:2px;border-color:#d0a45d}
.contact-page .contact-field-note{margin:0;color:#c0b5a6;font-size:.85rem;line-height:1.6}
.contact-page .contact-privacy{margin:8px 0 0;padding:14px 16px;border:1px solid rgba(208,164,93,.22);border-radius:10px;background:rgba(0,0,0,.18)}
.contact-page .contact-privacy summary{color:#e4bd78;cursor:pointer;font-size:.87rem;line-height:1.6}
.contact-page .contact-privacy summary:focus-visible{outline:2px solid #e4bd78;outline-offset:4px}
.contact-page .contact-privacy p{color:#c7bdaf;font-size:.85rem;line-height:1.7;margin:12px 0 0}
.contact-page .success{scroll-margin-top:24px}
.contact-page .success p{margin:8px 0 0}
@media(prefers-reduced-transparency:reduce){.contact-page .contact-card{background:#181512;backdrop-filter:none}}

.contact-page .chat-toggle{position:fixed;right:24px;bottom:24px;z-index:20;max-width:calc(100vw - 32px);min-height:48px;padding:14px 20px;background:linear-gradient(180deg,#d7ad68,#b9833e);color:#100d09;border:1px solid #d0a45d;border-radius:999px;font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;box-shadow:0 6px 24px #0008}
.contact-page .contact-shell{padding-bottom:110px}
.contact-page .art-chat[hidden]{display:none!important}
.contact-page .art-chat{box-sizing:border-box;position:fixed;right:24px;bottom:90px;z-index:21;display:flex;flex-direction:column;gap:12px;width:min(410px,calc(100vw - 32px));max-height:calc(100dvh - 115px);overflow-y:auto;padding:22px;border:1px solid #80613c;border-radius:18px;background:#15120f;box-shadow:0 20px 70px #000a;color:#eee7dc}
.contact-page .chat-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.contact-page .chat-header h2{font-size:1.35rem;margin:0}.contact-page .chat-header .eyebrow{font-size:.65rem;margin:0 0 8px}
.contact-page .chat-header button{min-width:44px;min-height:44px;background:transparent;border:1px solid #554533;border-radius:8px;color:#eee7dc;font-size:1.5rem;cursor:pointer}
.contact-page .chat-notice,.contact-page .chat-privacy{margin:0;font-size:.78rem;line-height:1.55;color:#c7bdaf}
.contact-page .chat-log{flex:1 0 130px;max-height:240px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:2px}
.contact-page .chat-bubble{padding:12px;margin:0;border-radius:10px;font-size:.88rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;background:#252019}
.contact-page .chat-user{background:#322717;border:1px solid #675032}
.contact-page .chat-form{display:grid;gap:8px}.contact-page .chat-form label{font-size:.85rem}
.contact-page .chat-form textarea{box-sizing:border-box;width:100%;padding:10px;font:inherit;background:#0d0c0a;color:#eee7dc;border:1px solid #554533;border-radius:8px;resize:vertical;min-height:64px}
.contact-page .chat-form textarea:focus{outline:2px solid #d0a45d;outline-offset:2px}
.contact-page .chat-form button,.contact-page .chat-contact{min-height:44px;font:inherit;font-size:.85rem;padding:10px 14px;border-radius:8px;border:1px solid #d0a45d;background:#d0a45d;color:#100d09;cursor:pointer}
.contact-page .chat-contact{background:transparent;color:#e4bd78}
.contact-page .chat-form button:disabled{opacity:.65;cursor:wait}
.contact-page .chat-status{margin:0;min-height:0;color:#e4bd78;font-size:.8rem;line-height:1.5}
.contact-page .chat-galleries{font-size:.8rem;line-height:1.7}.contact-page .chat-galleries summary{color:#e4bd78;cursor:pointer}.contact-page .chat-galleries a{color:#e4bd78}
@media(max-width:480px){.contact-page .chat-toggle{right:16px;bottom:16px}.contact-page .art-chat{right:16px;bottom:80px;padding:18px;max-height:calc(100dvh - 100px)}}
