/* Default theme: warm paper, walnut ink and the project's signature gradient.
   Loaded only by the default public layout; shared styles retain their defaults. */
:root {
    --brand-start: #6e5f51;
    --brand-end: #41290b;
    --brand-gradient: linear-gradient(125deg, var(--brand-start), var(--brand-end));
    --accent: #6e5f51;
    --accent-bright: #efdfc5;
    --navy: #41290b;
    --navy-soft: #5a4330;
    --ink: #30281f;
    --muted: #706457;
    --line: #e4dcd1;
    --paper: #f7f4ef;
    --white: #fffdfa;
    --shadow: 0 24px 65px rgb(65 41 11 / .09);
}

body { background: var(--paper); }
.site-header {
    background: var(--brand-gradient);
    border-bottom-color: rgb(234 216 187 / .22);
    box-shadow: 0 4px 24px rgb(65 41 11 / .08);
}
.brand-mark { background: #ead8bb; box-shadow: inset 0 0 0 1px rgb(255 255 255 / .3); }
.brand-copy small, .site-nav a { color: #eee5d9; }
.header-email { color: var(--brand-end); background: #f8efe2; }
.site-nav a::after { background: #ead8bb; }

.hero, .panel.hero {
    color: #fffdfa;
    background: var(--brand-gradient);
    box-shadow: 0 24px 60px rgb(65 41 11 / .15);
}
.hero::before {
    background: radial-gradient(ellipse at 90% 5%, rgb(234 216 187 / .14), transparent 55%),
        linear-gradient(120deg, transparent 55%, rgb(255 253 250 / .035));
}
.panel.hero h1 { color: #fffdfa; }
.hero .eyebrow, .hero h1 em, .hero-aside small { color: #efdfc5; }
.hero-lead, .hero-aside p { color: #eee5d9; }
.hero-aside { border-left-color: rgb(234 216 187 / .28); }
.hero-orbit {
    border-color: rgb(234 216 187 / .65);
    box-shadow: inset 0 0 0 1rem rgb(234 216 187 / .07), 0 0 0 1rem rgb(234 216 187 / .06);
}
.hero .button, .panel.hero .button, .collection-cta {
    color: var(--brand-end);
    background: #f3e6d3;
    box-shadow: 0 3px 12px rgb(35 22 8 / .1);
}
.hero .button:hover, .panel.hero .button:hover, .collection-cta:hover { background: #fff8ed; }
.hero .text-link, .panel.hero .text-link { color: #fffdfa; }

.sidebar-card, .content-card, .calendar-card, .collection-page, .blog-card {
    border-color: var(--line);
}
.content-card, .blog-card { box-shadow: 0 2px 5px rgb(65 41 11 / .025); }
.content-card:hover, .blog-card:hover, .archive-card:hover {
    border-color: #c5b29a;
    box-shadow: var(--shadow);
}
.content-card a { color: var(--brand-end); }
.sidebar-more, .section-heading > a, .journal-links a, .content-card h3 a {
    transition: color .2s ease;
}
.sidebar-more:hover, .section-heading > a:hover, .journal-links a:hover, .content-card h3 a:hover {
    color: #805e35;
    text-decoration: underline;
}
.card-arrow { background: #efe7db; transition: background .2s ease; }
.content-card:hover .card-arrow { background: #e7d7bf; }
.conference-card::after { box-shadow: 0 0 0 .35rem rgb(110 95 81 / .1); }
.requirements-callout { background: #f0e8dc; }

.subscribe-card { background: var(--brand-gradient); border: 1px solid rgb(234 216 187 / .18); }
.subscribe-card p { color: #eee5d9; }
.sidebar-subscribe .sidebar-label { color: #efdfc5; }
.sidebar-subscribe input:not([type="hidden"]) {
    background: rgb(255 253 250 / .08);
    border-color: rgb(234 216 187 / .4);
}
.sidebar-subscribe input::placeholder { color: #e9dfd2; }
.sidebar-subscribe button { color: var(--brand-end); background: #ead8bb; }
.sidebar-subscribe button:hover { background: #fff0d9; }
.subscribe-legal { color: #e9dfd2 !important; }

.collection-hero, .collection-bottom, .archive-detail-hero, .calendar-hero, .blog-card-image {
    background: var(--brand-gradient);
}
.calendar-card > time, .event-card > time { background: var(--brand-gradient); }
.archive-card { border-color: var(--line); }
.archive-card-status.is-indexed i { background: var(--accent); box-shadow: 0 0 0 .22rem rgb(110 95 81 / .1); }
.archive-card-links .archive-file-primary, .archive-detail-file.is-primary {
    background: var(--brand-gradient);
}
.archive-detail-file.is-primary > span, .archive-detail-file.is-primary i { color: #efdfc5; }
.archive-detail-tags span {
    color: #f2dfc2;
    background: rgb(234 216 187 / .1);
    border-color: rgb(234 216 187 / .32);
}
.archive-back, .archive-detail-hero > p:not(.eyebrow), .calendar-hero > p:last-child {
    color: #eee5d9;
}
.calendar-card time span, .event-card time small { color: #eee5d9; }
.event-card:hover { box-shadow: 0 14px 35px rgb(65 41 11 / .07); }
.blog-card-image { color: #fffdfa; }

button, .button { background: var(--brand-gradient); }
button:disabled, .button[aria-disabled="true"] { cursor: default; opacity: .65; }
button:disabled:hover, .button[aria-disabled="true"]:hover { transform: none; }
input, select, textarea, .wysiwyg-editor, .wysiwyg-source { border-color: #b9ab99; }
input, select, textarea { accent-color: var(--brand-end); }
select {
    background-image: linear-gradient(45deg, transparent 50%, #6e5f51 50%),
        linear-gradient(135deg, #6e5f51 50%, transparent 50%);
}
:where(a, button, input, select, textarea, [tabindex]):focus-visible {
    outline: 2px solid #8c6740;
    outline-offset: 4px;
}
.archive-filter select:focus, .archive-filter input:focus {
    outline: 2px solid #8c6740;
    outline-offset: 2px;
}
.hero :focus-visible, .site-header :focus-visible, .subscribe-card :focus-visible,
.site-footer :focus-visible, .collection-hero :focus-visible, .archive-detail-hero :focus-visible {
    outline-color: #f3dfbf;
}
.sidebar-subscribe input:focus-visible { border-color: #f3dfbf; }
.crm-dialog::backdrop, .thanks-dialog::backdrop { background: rgb(48 33 19 / .68); }
.thanks-dialog .dialog-close { color: var(--brand-end); background: var(--paper); }
.thanks-mark { background: var(--brand-gradient); }
.blog-like-form button { background: #efe7db; }

.site-footer { background: var(--brand-gradient); border-top: 1px solid rgb(234 216 187 / .2); }
.footer-inner p { color: #e2d5c4; }

/* Preserve the mobile menu's translucent control instead of a solid CTA. */
@media (max-width: 800px) {
    .menu-toggle { background: rgb(255 253 250 / .1); border-color: rgb(234 216 187 / .4); }
}
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: 0s !important; }
    button:hover, .button:hover, .content-card:hover, .blog-card:hover,
    .archive-card:hover, .event-card:hover { transform: none; }
}
