/* FCD Landing Pages — full-bleed front-end template
   Brand: orange #EE7423 / black #363636 / Sniglet headers / Quicksand body */

:root {
    --fcd-orange: #EE7423;
    --fcd-orange-dark: #c75d18;
    --fcd-black: #363636;
    --fcd-text: #2a2a2a;
    --fcd-muted: #6b6b6b;
    --fcd-bg: #fff;
    --fcd-soft: #fff8f3;
    --fcd-border: #e8d9c9;
    --fcd-error: #c0392b;
}

@import url('https://fonts.googleapis.com/css2?family=Sniglet:wght@400&family=Quicksand:wght@400;500;600;700&display=swap');

body.fcd-landing-body {
    margin: 0;
    padding: 0;
    background: var(--fcd-bg);
    color: var(--fcd-text);
    font-family: 'Quicksand', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 17px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

.fcd-landing { max-width: 100%; overflow-x: hidden; }
.fcd-landing img { max-width: 100%; height: auto; display: block; }

.fcd-landing-header {
    padding: 18px 24px;
    border-bottom: 1px solid var(--fcd-border);
    background: var(--fcd-bg);
    text-align: center;
}
.fcd-landing-logo {
    display: inline-block;
    text-decoration: none;
    line-height: 0;
}
.fcd-landing-logo img {
    display: block;
    height: 60px;
    width: auto;
    max-width: 260px;
}
@media (max-width: 600px) {
    .fcd-landing-logo img {
        height: 48px;
    }
}

.fcd-hero {
    background: var(--fcd-orange);
    overflow: hidden;
    max-height: 70vh;
    display: flex;
    justify-content: center;
}
.fcd-hero-img {
    width: 100%;
    max-width: 900px;
    object-fit: cover;
    object-position: center;
}

.fcd-intro {
    text-align: center;
    padding: 48px 24px 16px;
    max-width: 800px;
    margin: 0 auto;
}
.fcd-headline {
    font-family: 'Sniglet', sans-serif;
    font-weight: 400;
    font-size: clamp(28px, 5vw, 44px);
    color: var(--fcd-black);
    margin: 0 0 12px;
    line-height: 1.2;
}
.fcd-subheadline {
    font-size: clamp(18px, 2.5vw, 22px);
    color: var(--fcd-orange);
    font-weight: 600;
    margin: 0;
}

.fcd-body-grid {
    max-width: 1100px;
    margin: 0 auto;
    padding: 32px 24px;
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 48px;
    align-items: center;
}
@media (max-width: 800px) {
    .fcd-body-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}
.fcd-body-copy { font-size: 17px; }
.fcd-body-copy h2, .fcd-body-copy h3 {
    font-family: 'Sniglet', sans-serif;
    font-weight: 400;
    color: var(--fcd-black);
}
.fcd-body-copy ul { padding-left: 20px; }
.fcd-body-copy li { margin-bottom: 6px; }
.fcd-body-copy a { color: var(--fcd-orange); }

.fcd-dates {
    background: var(--fcd-soft);
    border-left: 4px solid var(--fcd-orange);
    padding: 14px 16px;
    border-radius: 4px;
    margin-top: 16px;
}

.fcd-body-image img {
    border-radius: 12px;
    box-shadow: 0 12px 32px rgba(0,0,0,.12);
}

.fcd-form-section {
    background: var(--fcd-soft);
    padding: 56px 24px 64px;
}
.fcd-form-heading {
    font-family: 'Sniglet', sans-serif;
    font-weight: 400;
    font-size: clamp(24px, 4vw, 34px);
    color: var(--fcd-black);
    text-align: center;
    margin: 0 0 28px;
}

.fcd-form {
    max-width: 520px;
    margin: 0 auto;
    background: #fff;
    padding: 32px;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0,0,0,.06);
}
.fcd-field { margin-bottom: 18px; }
.fcd-field label {
    display: block;
    font-weight: 600;
    margin-bottom: 6px;
    font-size: 15px;
    color: var(--fcd-black);
}
.fcd-req { color: var(--fcd-orange); }
.fcd-field input {
    width: 100%;
    padding: 12px 14px;
    border: 2px solid var(--fcd-border);
    border-radius: 8px;
    font-size: 16px;
    font-family: inherit;
    box-sizing: border-box;
    transition: border-color .15s ease;
    background: #fff;
    color: var(--fcd-text);
}
.fcd-field input:focus {
    outline: none;
    border-color: var(--fcd-orange);
}

.fcd-input-with-prefix {
    position: relative;
}
.fcd-input-prefix {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--fcd-orange);
    font-weight: 700;
    font-size: 18px;
    pointer-events: none;
    line-height: 1;
}
.fcd-input-prefixed {
    padding-left: 32px !important;
}

/* Honeypot — visible to bots, invisible to humans. Don't use display:none
   (some bots specifically skip those). Off-screen + zero opacity is the
   industry standard. */
.fcd-hp-wrap {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

.fcd-field-no-bottom { margin-bottom: 8px; }

.fcd-consent {
    margin: 22px 0;
    padding: 14px 0 4px;
    border-top: 1px solid var(--fcd-border);
}
.fcd-checkbox {
    display: flex;
    gap: 10px;
    margin-bottom: 14px;
    cursor: pointer;
    align-items: flex-start;
    font-size: 14px;
    line-height: 1.5;
}
.fcd-checkbox input[type=checkbox] {
    margin-top: 3px;
    width: 18px;
    height: 18px;
    accent-color: var(--fcd-orange);
    flex-shrink: 0;
}
.fcd-checkbox span a { color: var(--fcd-orange); }

.fcd-actions { margin-top: 20px; }
.fcd-submit {
    width: 100%;
    background: var(--fcd-orange);
    color: #fff;
    border: none;
    padding: 16px 24px;
    border-radius: 999px;
    font-family: 'Sniglet', sans-serif;
    font-weight: 400;
    font-size: 18px;
    cursor: pointer;
    transition: background .15s ease, transform .05s ease;
    letter-spacing: .02em;
}
.fcd-submit:hover { background: var(--fcd-orange-dark); }
.fcd-submit:active { transform: translateY(1px); }
.fcd-submit:disabled {
    background: #ccc;
    cursor: wait;
}

.fcd-form-error {
    color: var(--fcd-error);
    margin: 14px 0 0;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
}

.fcd-success {
    max-width: 520px;
    margin: 0 auto;
    background: #fff;
    padding: 40px 32px;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 8px 24px rgba(0,0,0,.06);
}
.fcd-success h2 {
    font-family: 'Sniglet', sans-serif;
    font-weight: 400;
    color: var(--fcd-orange);
    margin-top: 0;
}

/* Inline call-to-action link (e.g. the giveaway-ended state) — sized to its
   text, unlike the full-width form .fcd-submit button. */
.fcd-link-btn {
    display: inline-block;
    background: var(--fcd-orange);
    color: #fff;
    text-decoration: none;
    padding: 14px 32px;
    border-radius: 999px;
    font-family: 'Sniglet', sans-serif;
    font-weight: 400;
    font-size: 17px;
    letter-spacing: .02em;
    transition: background .15s ease;
}
.fcd-link-btn:hover { background: var(--fcd-orange-dark); color: #fff; }

.fcd-landing-footer {
    text-align: center;
    padding: 24px;
    font-size: 13px;
    color: var(--fcd-muted);
    border-top: 1px solid var(--fcd-border);
    background: #fff;
}
.fcd-landing-footer a { color: var(--fcd-muted); }
