/* recipes-brand — frontend subscribe (inline + popup + form polish) */

/* ============ Common ============ */
.rb-form-msg{margin-top:.5rem;font-size:.8125rem;font-family:'Inter',-apple-system,sans-serif;text-align:center}
.rb-form-msg[data-type="success"]{color:#10b981}
.rb-form-msg[data-type="error"]{color:#dc2626}

.rb-subscribe-form{display:flex;gap:6px;background:#fffefb;border:1px solid #ebe7e1;border-radius:999px;padding:6px;transition:border-color .2s, box-shadow .2s}
.rb-subscribe-form:focus-within{border-color:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.1)}
.rb-subscribe-form input[type="email"]{flex:1;border:none;background:transparent;padding:.625rem 1rem;font-size:.9375rem;color:#1a1a1a;outline:none;font-family:'Inter',-apple-system,sans-serif}
.rb-subscribe-form input[type="email"]::placeholder{color:#9a9a9a}
.rb-subscribe-form button{padding:.625rem 1.5rem;border-radius:999px;font-weight:600;font-size:.875rem;border:none;background:#1a1a1a;color:#fffefb;cursor:pointer;transition:background .2s;font-family:'Inter',-apple-system,sans-serif}
.rb-subscribe-form button:hover:not(:disabled){background:#dc2626;color:#fff}
.rb-subscribe-form button:disabled{opacity:.7;cursor:wait}

/* ============ Inline article block ============ */
.rb-inline-subscribe{
    display:flex;
    gap:1.25rem;
    align-items:flex-start;
    margin:2.5rem 0;
    padding:1.75rem 1.75rem 1.5rem;
    background:radial-gradient(ellipse at top right, rgba(220,38,38,.06), transparent 60%), #ffffff;
    border:1px solid #ebe7e1;
    border-radius:18px;
    box-shadow:0 1px 2px rgba(20,15,10,.04), 0 4px 14px rgba(20,15,10,.05);
}
.rb-inline-icon{
    flex-shrink:0;
    width:48px; height:48px;
    background:#dc2626;
    color:#fff;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:1.25rem;
    box-shadow:0 6px 14px -4px rgba(220,38,38,.45);
}
.rb-inline-body{flex:1;min-width:0}
.rb-inline-title{
    font-family:'Playfair Display','Cormorant Garamond',Georgia,serif;
    font-size:1.375rem;
    font-weight:600;
    line-height:1.2;
    margin:0 0 .25rem;
    color:#1a1a1a;
    letter-spacing:-.012em;
}
.rb-inline-desc{
    font-family:'Inter',-apple-system,sans-serif;
    font-size:.9375rem;
    line-height:1.5;
    color:#6b6b6b;
    margin:0 0 1rem;
}
.rb-inline-form{max-width:420px}

@media(max-width:600px){
    .rb-inline-subscribe{flex-direction:column;gap:1rem;padding:1.5rem}
    .rb-inline-icon{width:40px;height:40px;font-size:1.125rem}
    .rb-inline-form{max-width:none}
}

/* ============ Popup ============ */
.rb-popup-overlay{
    position:fixed;inset:0;
    background:rgba(15,12,8,.55);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
    z-index:99998;
    display:flex;align-items:center;justify-content:center;
    padding:1rem;
    opacity:0;
    transition:opacity .25s ease;
}
.rb-popup-overlay.is-visible{opacity:1}
.rb-popup-card{
    background:#fffefb;
    border-radius:24px;
    padding:2.5rem 2rem 1.75rem;
    max-width:440px; width:100%;
    text-align:center;
    box-shadow:0 30px 80px -20px rgba(20,15,10,.5), 0 4px 20px rgba(20,15,10,.15);
    position:relative;
    transform:translateY(20px) scale(.96);
    transition:transform .35s cubic-bezier(.32,.72,0,1);
    font-family:'Inter',-apple-system,sans-serif;
}
.rb-popup-overlay.is-visible .rb-popup-card{transform:translateY(0) scale(1)}
.rb-popup-close{
    position:absolute;top:14px;right:14px;
    width:32px;height:32px;
    border:none;
    background:transparent;
    color:#9a9a9a;
    font-size:1.5rem;
    cursor:pointer;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    transition:background .15s, color .15s;
}
.rb-popup-close:hover{background:#f3f0ec;color:#1a1a1a}
.rb-popup-icon{
    width:56px; height:56px;
    margin:0 auto 1.25rem;
    background:#dc2626;
    color:#fff;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    font-size:1.5rem;
    box-shadow:0 10px 24px -8px rgba(220,38,38,.5);
}
.rb-popup-title{
    font-family:'Playfair Display',serif;
    font-size:1.875rem;
    font-weight:600;
    line-height:1.1;
    margin:0 0 .5rem;
    color:#1a1a1a;
    letter-spacing:-.018em;
    text-wrap:balance;
}
.rb-popup-desc{
    font-size:.9375rem;
    line-height:1.55;
    color:#6b6b6b;
    margin:0 0 1.5rem;
    text-wrap:balance;
}
.rb-popup-form{max-width:340px;margin:0 auto}
.rb-popup-foot{
    margin:1rem 0 0;
    font-size:.6875rem;
    letter-spacing:.04em;
    color:#9a9a9a;
    text-transform:uppercase;
    font-weight:500;
}

@media(max-width:480px){
    .rb-popup-card{padding:2rem 1.5rem 1.25rem}
    .rb-popup-title{font-size:1.5rem}
}
