/* Shared, self-hosted foundation. No external font or asset requests. */
@font-face{font-family:Outfit;src:url('../fonts/Outfit[wght].ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('../fonts/CormorantGaramond-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('../fonts/CormorantGaramond-Italic[wght].ttf') format('truetype');font-style:italic;font-weight:300 700;font-display:swap}
:root{--ui-bg:#f6f3ed;--ui-surface:#fffcf7;--ui-ink:#302b26;--ui-muted:#756655;--ui-line:#ded8ce;--ui-accent:#24211e;--ui-clay:#a28b70;--ui-serif:'Cormorant Garamond',Georgia,serif;--ui-sans:Outfit,system-ui,-apple-system,'Segoe UI',sans-serif;--font-serif:var(--ui-serif);--font-sans:var(--ui-sans);--font-script:var(--ui-serif);--bg:var(--ui-bg);--bg-card:var(--ui-surface);--paper:var(--ui-surface);--ink:var(--ui-ink);--ink-soft:#645b51;--muted:var(--ui-muted);--line:var(--ui-line);--line-strong:#c6bdb1;--accent:var(--ui-accent);--accent-hover:#453d35;--accent-soft:#eee8df;--radius:10px;--radius-sm:7px;--rail-w:236px;--ease:cubic-bezier(.22,1,.36,1)}
html{text-size-adjust:100%;scroll-padding-top:90px}
body{font-family:var(--ui-sans);text-rendering:optimizeLegibility}
body.admin-body,body.auth-body{background:var(--ui-bg)!important}
body.admin-body .silk,body.auth-body .silk{display:none!important}
body :focus-visible{outline:2px solid var(--ui-clay);outline-offset:4px}
body ::selection{background:#d7c6b1;color:var(--ui-ink)}
.ui-skip{position:fixed;left:16px;top:12px;z-index:10000;transform:translateY(-160%);padding:12px 18px;background:var(--ui-ink);color:#fffcf7;border-radius:8px;font:500 14px var(--ui-sans)}
.ui-skip:focus{transform:translateY(0);color:#fffcf7}
/* These scoped overrides retire the legacy all-caps !important controls. */
body:is(.admin-body,.auth-body,.public-site) .btn{font-family:var(--ui-sans)!important;font-size:.88rem!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;border-radius:3px!important;min-height:44px;padding:.72rem 1.15rem!important;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;line-height:1.25;transition:background .18s,border-color .18s,color .18s,box-shadow .18s}
body:is(.admin-body,.auth-body,.public-site) .btn--sm{font-size:.8rem!important;min-height:40px;padding:.6rem .95rem!important}
body:is(.admin-body,.auth-body,.public-site) .btn--solid{background:var(--ui-accent)!important;border-color:var(--ui-accent)!important;color:var(--ui-surface)!important}
body:is(.admin-body,.auth-body,.public-site) .btn--solid:hover{background:#453d35!important;border-color:#453d35!important}
body:is(.admin-body,.auth-body,.public-site) .btn--line{background:transparent!important;border-color:#cbc1b3!important;color:var(--ui-ink)!important}
body:is(.admin-body,.auth-body,.public-site) .btn--line:hover{background:#eee8df!important}
body:is(.admin-body,.auth-body) :is(label,.field label,.form-label){font-family:var(--ui-sans)!important;text-transform:none!important;letter-spacing:0!important;font-size:.82rem!important;line-height:1.5;color:#5c5249!important}
body:is(.admin-body,.auth-body) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){font-family:var(--ui-sans)!important;font-size:.94rem;min-height:44px;border-radius:3px!important;background:var(--ui-surface)!important;border-color:#d6cec3!important;box-shadow:none;color:var(--ui-ink)}
body:is(.admin-body,.auth-body) :is(input,select,textarea):focus{border-color:var(--ui-accent)!important;box-shadow:0 0 0 3px #24211e14!important}
body:is(.admin-body,.auth-body) :is(input[type=checkbox],input[type=radio]){accent-color:var(--ui-accent);min-height:18px;min-width:18px}
body:is(.admin-body,.auth-body) :is(input,textarea)::placeholder{color:#928679!important}
body:is(.admin-body,.auth-body) .eyebrow{font:500 .68rem/1.4 var(--ui-sans);letter-spacing:.13em;text-transform:uppercase;color:#8d7c69}
body.auth-body .auth-ambient,body.auth-body .auth-panel__ornament{display:none}
body.auth-body .auth-shell{min-height:100svh;padding:64px 24px;display:flex;align-items:center;justify-content:center}
body.auth-body .auth-panel{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:3px;padding:42px;width:min(100%,440px);box-shadow:0 18px 70px -48px #302b2659;backdrop-filter:none}
body.auth-body .auth-panel__title{font:400 clamp(2.5rem,6vw,3.4rem)/1 var(--ui-serif)!important;letter-spacing:-.035em!important}
body.auth-body .auth-panel__lead{font-size:.9rem;line-height:1.65;color:var(--ui-muted)}
body.auth-body .auth-form{margin-top:28px;display:grid;gap:18px}
body.auth-body .auth-panel__back{display:block;text-align:center;margin-top:30px;font:400 .82rem var(--ui-sans)}
@media(max-width:600px){body:is(.admin-body,.auth-body) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}body.auth-body .auth-shell{padding:32px 18px}body.auth-body .auth-panel{padding:30px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
