/*
 * Newsletterus24 — JayCPatsson24 compatibility layer.
 * Uses the theme tokens when present, with identical fallbacks when used elsewhere.
 */
.newsletterus24-form{
    --nl-width:90%;
    --nl-max-width:1600px;
    --nl-margin:0 auto;
    --nl-container-pad:32px;
    --nl-field-gap:16px;
    --nl-input-pad-v:14px;
    --nl-input-pad-h:18px;
    --nl-font-size:15px;
    --nl-title-size:28px;
    --nl-desc-size:16px;
    --nl-radius:14px;
    --nl-input-radius:999px;
    --nl-button-radius:999px;
    --nl-btn-pad-v:14px;
    --nl-btn-pad-h:24px;

    --jcp-bg:#0d0c0b;
    --jcp-bg-2:#141210;
    --jcp-text:#efe7d8;
    --jcp-muted:#a79c8b;
    --jcp-accent:#c8a24a;
    --jcp-line:rgba(239,231,216,.14);
    --jcp-ink:#100e0c;

    box-sizing:border-box;
    position:relative;
    isolation:isolate;
    width:min(var(--nl-width), 100%);
    max-width:var(--nl-max-width);
    margin:var(--nl-margin);
    padding:var(--nl-container-pad);
    color:var(--jcp-text);
    background:
        radial-gradient(circle at 12% 0%, rgba(200,162,74,.10), transparent 34%),
        linear-gradient(145deg,var(--jcp-bg-2),var(--jcp-ink));
    border:1px solid var(--jcp-line);
    border-radius:var(--nl-radius);
    box-shadow:0 30px 80px rgba(0,0,0,.40), inset 0 1px 0 rgba(255,255,255,.025);
    font-family:"Helvetica Neue",Helvetica,Arial,"Segoe UI",system-ui,sans-serif;
    font-size:var(--nl-font-size);
}
.newsletterus24-form:before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0;
    border-radius:inherit;
    padding:1px;
    background:linear-gradient(135deg,rgba(200,162,74,.75),transparent 35%,rgba(200,162,74,.28));
    -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
    -webkit-mask-composite:xor;
    mask-composite:exclude;
    pointer-events:none;
}
.newsletterus24-form *,
.newsletterus24-form *::before,
.newsletterus24-form *::after{box-sizing:inherit}

.newsletterus24-form__header{text-align:left;margin:0 0 clamp(1rem,2vw,1.5rem)}
.newsletterus24-form__title{
    margin:0 0 .5rem;
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
    font-size:var(--nl-title-size);
    line-height:1.18;
    font-weight:700;
    color:var(--jcp-text);
    background:linear-gradient(180deg,#fbf3e2,#d9b563);
    -webkit-background-clip:text;background-clip:text;color:transparent;
}
.newsletterus24-form__desc{margin:0;color:var(--jcp-muted);font-size:var(--nl-desc-size);line-height:1.65}
.newsletterus24-form__row{margin-bottom:var(--nl-field-gap)}
.newsletterus24-form__row--honey{position:absolute;left:-10000px;height:0;overflow:hidden}
.newsletterus24-form__input{
    width:100%;
    min-height:48px;
    padding:var(--nl-input-pad-v) var(--nl-input-pad-h);
    border:1px solid var(--jcp-line);
    border-radius:var(--nl-input-radius);
    color:var(--jcp-text);
    font:inherit;
    background:rgba(13,12,11,.72);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.newsletterus24-form__input::placeholder{color:var(--jcp-muted);opacity:.82}
.newsletterus24-form__input:focus{
    outline:2px solid var(--jcp-accent);
    outline-offset:3px;
    border-color:var(--jcp-accent);
    background:rgba(20,18,16,.96);
    box-shadow:0 0 0 5px rgba(200,162,74,.12);
}
.newsletterus24-form__button{
    min-height:48px;
    padding:var(--nl-btn-pad-v) var(--nl-btn-pad-h);
    border:1px solid var(--jcp-accent);
    border-radius:var(--nl-button-radius);
    background:var(--jcp-accent);
    color:#12100e;
    font:700 var(--nl-font-size)/1.2 "Helvetica Neue",Helvetica,Arial,"Segoe UI",system-ui,sans-serif;
    text-transform:uppercase;
    letter-spacing:.16em;
    cursor:pointer;
    box-shadow:0 10px 24px rgba(200,162,74,.14);
    transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.newsletterus24-form__button:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 14px 30px rgba(200,162,74,.25)}
.newsletterus24-form__button:focus-visible{outline:2px solid var(--jcp-accent);outline-offset:3px}
.newsletterus24-form__message{margin-top:12px;color:var(--jcp-muted);font-size:14px;min-height:1em}
.newsletterus24-form__message.is-success{color:#d9b563}
.newsletterus24-form__message.is-error{color:#f1a19a}

.newsletterus24-form--btn-full .newsletterus24-form__button{display:block;width:100%;text-align:center}
.newsletterus24-form--btn-align-left .newsletterus24-form__button{display:block;margin-right:auto}
.newsletterus24-form--btn-align-center .newsletterus24-form__button{display:block;margin-left:auto;margin-right:auto}
.newsletterus24-form--btn-align-right .newsletterus24-form__button{display:block;margin-left:auto}

@media (min-width:900px){
    .newsletterus24-form--cols-2{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--nl-field-gap);row-gap:var(--nl-field-gap)}
    .newsletterus24-form--cols-2 .newsletterus24-form__row{margin-bottom:0}
    .newsletterus24-form--cols-2 .newsletterus24-form__header,
    .newsletterus24-form--cols-2 .newsletterus24-form__button,
    .newsletterus24-form--cols-2 .newsletterus24-form__message{grid-column:1 / -1}
}
@media (max-width:900px){
    .newsletterus24-form{width:100%;max-width:100%;padding:clamp(1.25rem,5vw,2rem)}
}
@media (max-width:480px){
    .newsletterus24-form{padding:1.1rem;border-radius:12px}
    .newsletterus24-form__header{text-align:center}
    .newsletterus24-form__title{font-size:clamp(1.45rem,8vw,var(--nl-title-size))}
    .newsletterus24-form__button{width:100%;letter-spacing:.12em}
}
@media (prefers-reduced-motion:reduce){
    .newsletterus24-form__input,.newsletterus24-form__button{transition:none}
}
