/* /tuesday -- visual treatment matching the "Frustration & Fascination"
   book cover: warm parchment, warm-charcoal ink, copper/gold accents,
   serif typography. Scoped entirely to .tuesday-page so it can never leak
   into the rest of the site's look. Reuses this site's existing --copper/
   --gold/--forest custom properties from style.css rather than inventing a
   parallel palette. */

.tuesday-page {
    --tuesday-ink: #281e14;
    --tuesday-paper: #f4ecd8;
    --tuesday-paper-strong: #ece0c2;
    --tuesday-card: #fffcf3;
    --tuesday-line: #d9c9a3;
    background: var(--tuesday-paper);
    color: var(--tuesday-ink);
    font-family: Georgia, "Times New Roman", serif;
}

.tuesday-page h1,
.tuesday-page h2,
.tuesday-page h3 {
    color: var(--tuesday-ink);
    font-weight: 400;
    letter-spacing: 0.01em;
}

.tuesday-hero {
    background:
        linear-gradient(180deg, rgba(244, 236, 216, 0.4), rgba(244, 236, 216, 0.94) 65%),
        var(--tuesday-paper-strong);
    border-bottom: 1px solid var(--tuesday-line);
    padding: 64px 0 48px;
}

.tuesday-hero-inner {
    display: flex;
    align-items: center;
    gap: 40px;
    max-width: 900px;
}

.tuesday-hero-text {
    flex: 1 1 auto;
    min-width: 0;
}

.tuesday-hero-inner::after {
    content: "";
    flex: 0 0 220px;
    aspect-ratio: 2 / 3;
    background: url("/assets/images/tuesday-cover-sm.jpg") center / cover no-repeat;
    border: 1px solid var(--tuesday-line);
    border-radius: 4px;
    box-shadow: 0 18px 40px rgba(40, 30, 20, 0.25);
}

.tuesday-hero .eyebrow {
    color: var(--copper, #b9813f);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.tuesday-hero h1 {
    font-size: clamp(28px, 4vw, 40px);
    line-height: 1.25;
    margin: 12px 0 20px;
}

.tuesday-lede {
    font-size: 18px;
    line-height: 1.7;
    margin: 0 0 16px;
}

.tuesday-signoff {
    font-style: italic;
    margin-top: 24px;
}

.tuesday-hero-compact {
    padding: 40px 0 28px;
}

.tuesday-hero-compact .tuesday-hero-inner::after {
    display: none;
}

.tuesday-byline {
    color: #6b5a3f;
    font-style: italic;
}

.tuesday-promise-section {
    padding: 36px 0 0;
}

.tuesday-promise {
    background: var(--tuesday-card);
    border: 1px solid rgba(185, 129, 63, 0.35);
    border-radius: 10px;
    margin: 0 auto;
    max-width: 620px;
    padding: 30px 36px;
    text-align: center;
}

.tuesday-promise-lead {
    color: #6b5a3f;
    font-size: 15px;
    font-style: italic;
    margin: 0 0 16px;
}

.tuesday-promise-list {
    display: grid;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: left;
}

.tuesday-promise-list li {
    color: var(--tuesday-ink);
    font-size: 16px;
    line-height: 1.6;
    padding-left: 26px;
    position: relative;
}

.tuesday-promise-list li::before {
    color: var(--copper, #b9813f);
    content: "\2022";
    font-size: 22px;
    left: 0;
    position: absolute;
    top: -3px;
}

.tuesday-form-section {
    padding: 36px 0 48px;
}

.tuesday-form-card {
    background: var(--tuesday-card);
    border: 1px solid var(--tuesday-line);
    border-radius: 10px;
    box-shadow: 0 20px 50px rgba(40, 30, 20, 0.1);
    margin: 0 auto;
    max-width: 720px;
    padding: 36px;
}

.tuesday-form label > span {
    color: var(--tuesday-ink);
    display: block;
    font-weight: 700;
    margin-bottom: 6px;
}

.tuesday-form label > span em {
    color: #7a6a4e;
    font-style: italic;
    font-weight: 400;
}

.tuesday-form input[type="text"],
.tuesday-form input[type="email"],
.tuesday-form textarea {
    background: #fffefb;
    border: 1px solid var(--tuesday-line);
    border-radius: 6px;
    font: inherit;
    font-family: Georgia, "Times New Roman", serif;
    padding: 11px 12px;
    width: 100%;
}

.tuesday-form input:focus,
.tuesday-form textarea:focus {
    border-color: var(--copper, #b9813f);
    outline: 2px solid rgba(185, 129, 63, 0.25);
    outline-offset: 1px;
}

.tuesday-form .field-note {
    color: #7a6a4e;
    font-size: 14px;
    font-style: italic;
    margin: -10px 0 18px;
}

.tuesday-privacy,
.tuesday-public-fields fieldset {
    border: 1px solid var(--tuesday-line);
    border-radius: 8px;
    margin: 0 0 20px;
    padding: 16px 18px;
}

.tuesday-privacy legend,
.tuesday-public-fields legend {
    color: var(--tuesday-ink);
    font-weight: 700;
    padding: 0 6px;
}

.tuesday-public-fields {
    background: rgba(185, 129, 63, 0.07);
    border-radius: 8px;
    margin: 0 0 20px;
    padding: 4px 4px 18px;
}

/* Deliberately a different tint than .tuesday-public-fields above (gold vs
   copper) -- this section is independent of the public/private choice, and
   the color shift is a small visual cue that it's a separate kind of
   decision, not a sub-option of sharing publicly. */
.tuesday-future-use {
    background: rgba(224, 177, 90, 0.14);
    border: 1px solid rgba(224, 177, 90, 0.4);
    border-radius: 8px;
    margin: 0 0 20px;
    padding: 16px 18px;
}

.tuesday-future-use legend {
    color: var(--tuesday-ink);
    font-weight: 700;
    padding: 0 6px;
}

.tuesday-form .tuesday-future-use-note {
    margin: 10px 0 0;
}

.tuesday-form .form-check {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    margin: 10px 0;
}

/* The site-wide `input, select, textarea { width: 100%; min-height: 46px;
   padding: 11px 12px; }` rule (assets/css/style.css) is meant for text
   fields. Checkboxes already get a targeted override there
   (`.form-check input[type="checkbox"]`, width: 20px) -- radio buttons
   never did, because this form introduces the first ones on the site. */
.tuesday-form .form-check input[type="radio"] {
    accent-color: var(--copper, #b9813f);
    height: 20px;
    margin-top: 4px;
    min-height: 0;
    padding: 0;
    width: 20px;
}

.tuesday-form .form-check input[type="checkbox"] {
    margin-top: 4px;
}

/* The site-wide `label span { display: block; margin-bottom: 7px; ... }`
   rule (assets/css/style.css) targets the label-above-input pattern used by
   text fields elsewhere. Radio/checkbox labels here put the span *beside*
   the input instead, so that rule needs to be explicitly undone. */
.tuesday-form .form-check span {
    color: inherit;
    display: inline;
    font-size: inherit;
    font-weight: 400;
    margin-bottom: 0;
}

.tuesday-page .btn-primary {
    background: var(--forest, #21473b);
    border: 0;
    border-radius: 999px;
    color: #fff;
    cursor: pointer;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 17px;
    font-weight: 700;
    padding: 13px 32px;
}

.tuesday-page .btn-primary:hover {
    background: var(--forest-dark, #143129);
}

.tuesday-page .notice.success {
    background: #e7f3eb;
    border: 1px solid rgba(37, 104, 61, 0.3);
    border-radius: 8px;
    padding: 14px 18px;
}

.tuesday-page .notice.error {
    background: #faeaea;
    border: 1px solid rgba(159, 47, 47, 0.3);
    border-radius: 8px;
    padding: 14px 18px;
}

.tuesday-stories-section {
    padding: 12px 0 64px;
}

.tuesday-stories-section h2 {
    font-size: 26px;
    margin-bottom: 24px;
    text-align: center;
}

.tuesday-stories-grid {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}

.tuesday-story-card {
    background: var(--tuesday-card);
    border: 1px solid var(--tuesday-line);
    border-radius: 8px;
    box-shadow: 0 12px 30px rgba(40, 30, 20, 0.08);
    color: inherit;
    display: block;
    padding: 22px;
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.tuesday-story-card:hover {
    box-shadow: 0 18px 40px rgba(40, 30, 20, 0.14);
    transform: translateY(-2px);
}

.tuesday-story-card h3 {
    font-size: 19px;
    margin: 0 0 10px;
}

.tuesday-story-card p {
    color: #4a3f2e;
    font-size: 15px;
    line-height: 1.6;
    margin: 0 0 14px;
}

.tuesday-story-section {
    padding: 8px 0 64px;
}

.tuesday-story-full {
    background: var(--tuesday-card);
    border: 1px solid var(--tuesday-line);
    border-radius: 10px;
    box-shadow: 0 20px 50px rgba(40, 30, 20, 0.1);
    font-size: 18px;
    line-height: 1.8;
    margin: 0 auto 28px;
    max-width: 720px;
    padding: 40px;
}

.tuesday-story-full h2 {
    font-size: 20px;
    margin-top: 32px;
}

.tuesday-cta {
    text-align: center;
}

@media (max-width: 760px) {
    .tuesday-hero-inner {
        flex-direction: column;
        text-align: center;
    }

    .tuesday-hero-inner::after {
        flex-basis: 160px;
        order: -1;
        width: 160px;
    }

    .tuesday-form-card,
    .tuesday-story-full {
        padding: 24px;
    }
}
