/* ═══════════════════════════════════════════════════════════════
   Per-country IPRN pages — extends the "Signal Ops" marketing system.
   Inherits every token from .mkt-page (--m-wine / --m-gold / --m-ink …)
   and the mkt-hero / mkt-section / mkt-cta scaffold. Adds only the
   country-specific signature pieces: coverage badge, dial/exit strip,
   and the wine/gold OPERATOR CONSTELLATION grid.
   ═══════════════════════════════════════════════════════════════ */

/* Coverage badge — sits in the hero topbar status slot */
.mkt-page .ctry-badge{
    display:inline-flex;align-items:center;gap:9px;
    padding:6px 14px;border:1px solid rgba(255,215,0,.45);
    font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
    color:var(--m-gold);background:rgba(133,12,62,.32);
}
.mkt-page .ctry-badge .dot{
    width:7px;height:7px;border-radius:50%;background:#22c55e;
    box-shadow:0 0 10px rgba(34,197,94,.8);
    animation:mkt-blink 1.6s ease-in-out infinite;
}

/* Flag chip beside the H1 */
.mkt-page .ctry-flag{
    font-size:40px;line-height:1;display:inline-block;
    margin-bottom:22px;filter:drop-shadow(0 4px 14px rgba(0,0,0,.5));
}

/* Hero meta strip values that should read as "fact" not "rate" */
.mkt-page .mkt-hero__meta dd.ctry-dial{
    font-size:18px;font-weight:700;color:var(--m-gold);letter-spacing:-.01em;
}

/* ═══════════════════ OPERATOR CONSTELLATION (signature) ═══════════════════ */
.mkt-page .ctry-ops{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:26px;margin-top:8px;
}
.mkt-page .ctry-op-group{
    border:1px solid var(--m-rule);background:#fff;
    padding:26px 26px 28px;position:relative;overflow:hidden;
}
.mkt-page .ctry-op-group::before{
    content:'';position:absolute;top:0;left:0;width:100%;height:3px;
    background:linear-gradient(90deg,var(--m-wine),var(--m-gold));
}
.mkt-page .ctry-op-group__head{
    display:flex;align-items:baseline;justify-content:space-between;
    margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--m-rule);
}
.mkt-page .ctry-op-group__label{
    font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;
    color:var(--m-wine);
}
.mkt-page .ctry-op-group__count{
    font-size:12px;font-weight:700;color:var(--m-mute);
    font-variant-numeric:tabular-nums;
}
.mkt-page .ctry-op-chips{display:flex;flex-wrap:wrap;gap:9px}
.mkt-page .ctry-op-chip{
    display:inline-flex;align-items:center;gap:8px;
    padding:8px 13px 8px 11px;
    border:1px solid var(--m-rule);background:var(--m-paper);
    font-size:13px;font-weight:600;color:var(--m-body);line-height:1.1;
    transition:border-color .18s,transform .18s,box-shadow .18s;
}
.mkt-page .ctry-op-chip::before{
    content:'';width:6px;height:6px;border-radius:50%;
    background:var(--m-gold);box-shadow:0 0 0 3px rgba(255,215,0,.16);
    flex:none;
}
.mkt-page .ctry-op-chip:hover{
    border-color:var(--m-wine);transform:translateY(-1px);
    box-shadow:0 6px 18px rgba(133,12,62,.12);
}

/* Distinct-operator headline number (in the section head) */
.mkt-page .ctry-opcount{
    color:var(--m-wine);font-variant-numeric:tabular-nums;
}

/* ═══════════════════ EDITORIAL + REGULATION ═══════════════════ */
.mkt-page .ctry-prose{max-width:760px}
.mkt-page .ctry-prose p{
    font-size:16.5px;line-height:1.78;color:var(--m-body);margin:0 0 1.15em;
}
.mkt-page .ctry-reg{
    margin-top:30px;padding:24px 26px;background:#fff;
    border:1px solid var(--m-rule);border-left:3px solid var(--m-gold);
    max-width:760px;
}
.mkt-page .ctry-reg__label{
    font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
    color:var(--m-wine);margin-bottom:10px;
}
.mkt-page .ctry-reg p{font-size:14.5px;line-height:1.7;color:var(--m-mute);margin:0}
/* Quiet "Source: {regulator}" authority link under the note (verified countries only) */
.mkt-page .ctry-reg__source{font-size:12.5px;line-height:1.6;color:var(--m-mute);opacity:.9;margin:12px 0 0}
.mkt-page .ctry-reg__source a{color:var(--m-wine);text-decoration:none;border-bottom:1px solid var(--m-gold)}
.mkt-page .ctry-reg__source a:hover{color:var(--m-gold)}

/* Internal-link rail under the editorial */
.mkt-page .ctry-links{
    display:flex;flex-wrap:wrap;gap:14px;margin-top:34px;
}
.mkt-page .ctry-links a{
    font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--m-wine);
    text-decoration:none;border-bottom:1px solid rgba(133,12,62,.35);
    padding-bottom:2px;transition:color .18s,border-color .18s;
}
.mkt-page .ctry-links a:hover{color:var(--m-gold-soft);border-color:var(--m-gold-soft)}

/* Globe signature: country node pulse */
.mkt-page .ctry-globe-node{
    fill:var(--m-gold);
    animation:mkt-dot-pulse 2.2s ease-in-out infinite;
}

@media (max-width:720px){
    .mkt-page .ctry-ops{grid-template-columns:1fr}
    .mkt-page .ctry-flag{font-size:34px}
}
/* Option-B note: coverage exists for unnamed network types */
.mkt-page .ctry-also{
    margin-top:22px;max-width:760px;
    font-size:14px;line-height:1.65;color:var(--m-mute);
    padding-left:16px;border-left:2px solid rgba(133,12,62,.3);
}

/* ═══════════════════ COUNTRY HUB (/iprn/countries) ═══════════════════ */
.mkt-page .ctry-hub-grid{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
    gap:14px;
}
.mkt-page .ctry-hub-card{
    display:flex;align-items:center;gap:14px;
    padding:16px 18px;background:#fff;border:1px solid var(--m-rule);
    text-decoration:none;color:var(--m-ink);
    transition:border-color .16s,transform .16s,box-shadow .16s;
}
.mkt-page .ctry-hub-card:hover{
    border-color:var(--m-wine);transform:translateY(-2px);
    box-shadow:0 8px 22px rgba(133,12,62,.12);
}
.mkt-page .ctry-hub-card__flag{font-size:26px;line-height:1;flex:none}
.mkt-page .ctry-hub-card__main{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
.mkt-page .ctry-hub-card__name{font-size:15px;font-weight:700;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mkt-page .ctry-hub-card__meta{font-size:12px;color:var(--m-mute);font-variant-numeric:tabular-nums}
.mkt-page .ctry-hub-card__arrow{color:var(--m-wine);font-weight:700;flex:none;transition:transform .16s}
.mkt-page .ctry-hub-card:hover .ctry-hub-card__arrow{transform:translateX(3px)}

@media (max-width:720px){
    .mkt-page .ctry-hub-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
    .mkt-page .ctry-badge .dot,
    .mkt-page .ctry-globe-node{animation:none}
}
