/* Newsroom v3.2: ONLY the bottom-right Share & Follow widget.
   The awards bar, independent expanders, About text and shared layout are untouched. */
.nr .nr-social {
    min-width:0; border:1px solid #27272a; border-radius:16px;
    padding:24px; background:#18181b; color:#f4f4f5;
    display:flex; flex-direction:column; justify-content:space-between;
    box-shadow:0 4px 12px rgba(0,0,0,.12);
}
.nr .nr-social [hidden] { display:none !important; }
.nr .nr-social__body { display:flex; flex-direction:column; gap:20px; min-width:0; }
.nr .nr-social__header { min-width:0; }
.nr .nr-social__kicker-row { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.nr .nr-social__kicker {
    display:flex; align-items:center; gap:8px; color:#d48b28;
    font-size:11px; font-weight:700; line-height:1.45; letter-spacing:.09em; text-transform:uppercase;
}
.nr .nr-social__kicker > span { overflow-wrap:anywhere; }
.nr .nr-social__pulse { width:8px; height:8px; flex:0 0 8px; background:#d48b28; border-radius:50%; animation:nr-social-pulse 2s ease-in-out infinite; }
.nr .nr-social h2 { font-size:20px; line-height:1.4; margin-top:10px; color:#fff; letter-spacing:-.024em; }
.nr .nr-social__intro { color:#a1a1aa; font-size:12px; line-height:1.6; margin-top:7px; }
.nr .nr-social__svg { display:inline-block; width:16px; height:16px; flex:0 0 16px; fill:none; stroke:currentColor; vertical-align:middle; }
.nr .nr-social__copybar { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; padding:10px; background:rgba(15,15,17,.9); border:1px solid #27272a; border-radius:12px; }
.nr .nr-social__url { display:flex; align-items:center; gap:8px; min-width:0; flex:1 1 auto; padding-inline:4px; color:#a1a1aa; font-size:12px; }
.nr .nr-social__url > span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nr .nr-social__url > svg { color:#71717a; }
.nr .nr-social__url:hover { color:#f4f4f5; }
.nr .nr-social__copy {
    display:inline-flex; align-items:center; justify-content:center; gap:6px; flex:0 0 auto;
    min-width:0; max-width:65%; min-height:32px; padding:6px 12px;
    border:0; border-radius:50px; background:#27272a; color:#f4f4f5;
    font-size:11px; font-weight:600; line-height:1.3; letter-spacing:.06em; text-transform:uppercase;
    cursor:pointer; transition:background .2s;
}
.nr .nr-social__copy > span { overflow-wrap:anywhere; }
.nr .nr-social__copy > svg { width:14px; height:14px; flex-basis:14px; color:#d48b28; }
.nr .nr-social__copy:hover { background:#3f3f46; }
.nr .nr-social__copy:disabled { cursor:wait; opacity:.7; }
.nr .nr-social__status { color:#e4e4e7; font-size:11px; line-height:1.5; margin-top:-10px; }
.nr .nr-social__status:empty { display:none; }
.nr .nr-social__manual { min-width:0; }
.nr .nr-social__manual label { display:block; font-size:11px; line-height:1.5; color:#a1a1aa; margin-bottom:6px; }
.nr .nr-social__manual input { width:100%; min-width:0; max-width:100%; background:#0f0f11; border:1px solid #52525b; border-radius:8px; padding:10px; color:#fff; font-size:12px; }
.nr .nr-social__channels { display:flex; flex-direction:column; gap:10px; padding-top:4px; min-width:0; }
.nr .nr-social__channel {
    display:grid; grid-template-columns:32px minmax(0,1fr) auto; gap:12px;
    align-items:center; min-width:0; padding:10px;
    border:1px solid rgba(39,39,42,.8); border-radius:12px; background:rgba(15,15,17,.6);
    color:#f4f4f5; transition:background .2s,border-color .2s;
}
.nr .nr-social__channel:hover { background:#27272a; border-color:#3f3f46; }
.nr .nr-social__icon { display:grid; place-items:center; width:32px; height:32px; border-radius:8px; color:#d48b28; background:#27272a; }
.nr .nr-social__brand-svg { width:16px; height:16px; max-width:16px; max-height:16px; fill:currentColor; stroke:none; display:block; }
.nr .nr-social__text { display:block; min-width:0; }
.nr .nr-social__name, .nr .nr-social__description { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nr .nr-social__name { color:#f4f4f5; font-size:11px; font-weight:600; line-height:1.5; transition:color .2s; }
.nr .nr-social__description { color:#a1a1aa; font-size:11px; font-weight:400; line-height:1.6; }
.nr .nr-social__channel:hover .nr-social__name { color:#d48b28; }
.nr .nr-social__cta {
    display:inline-flex; align-items:center; gap:2px; justify-self:end;
    max-width:90px; color:#d48b28; font-size:11px; font-weight:600; line-height:1.4;
    letter-spacing:.04em; text-transform:uppercase; overflow-wrap:anywhere;
}
.nr .nr-social__cta .nr-icon { width:13px; height:13px; min-width:13px; max-width:13px; flex:0 0 13px; transition:transform .2s; }
.nr .nr-social__channel:hover .nr-social__cta .nr-icon { transform:translate(2px,-2px); }
.nr .nr-social__footer { border-top:1px solid #27272a; padding-top:20px; margin-top:20px; }
.nr .nr-social__tags { display:flex; flex-wrap:wrap; gap:6px; color:#a1a1aa; font-size:11px; line-height:1.5; }
.nr .nr-social__tags > span { display:inline-block; max-width:100%; padding:2px 8px; border-radius:4px; background:#0f0f11; border:1px solid #27272a; overflow-wrap:anywhere; }
.nr .nr-social__tags > span:first-child { color:#d48b28; font-weight:600; }
.nr .nr-social__share {
    display:flex; align-items:center; justify-content:center; gap:8px; width:100%;
    padding:10px 16px; margin-top:12px; border-radius:50px; background:#d48b28; color:#0f0f11;
    font-size:11px; font-weight:600; line-height:1.5; letter-spacing:.06em; text-transform:uppercase;
    text-align:center; box-shadow:0 1px 3px rgba(0,0,0,.1); transition:background .2s;
}
.nr .nr-social__share > span:not(.nr-sr-only) { min-width:0; overflow-wrap:anywhere; }
.nr .nr-social__share > svg { width:15px; height:15px; flex-basis:15px; }
.nr .nr-social__share:hover { background:#b9751d; }
body.three-reference-page .nr .nr-social :is(a,button,input):focus-visible { outline:2px solid #e5a847; outline-offset:3px; }
@keyframes nr-social-pulse { 0%,100% {opacity:1;} 50% {opacity:.45;} }
@media(min-width:1024px) { .nr .nr-social { padding:28px; } }
/* The existing bottom grid stacks below 801px. Above that breakpoint, keep
   narrow sidebars usable without changing the white About card or its grid. */
@media(min-width:801px) and (max-width:1050px) {
    .nr .nr-social { padding:20px 14px; }
    .nr .nr-social__channel { grid-template-columns:28px minmax(0,1fr); gap:5px 8px; }
    .nr .nr-social__icon { width:28px; height:28px; }
    .nr .nr-social__cta { grid-column:2; justify-self:start; max-width:none; }
    .nr .nr-social__copybar { flex-wrap:wrap; }
    .nr .nr-social__url { flex-basis:100%; }
    .nr .nr-social__copy { max-width:100%; }
}
@media(max-width:380px) {
    .nr .nr-social { padding:20px; }
    .nr .nr-social__channel { column-gap:8px; }
    .nr .nr-social__copybar { flex-wrap:wrap; }
    .nr .nr-social__url { flex-basis:100%; }
    .nr .nr-social__copy { max-width:100%; }
}
@media(prefers-reduced-motion:reduce) {
    .nr .nr-social__pulse { animation:none; }
    .nr .nr-social a, .nr .nr-social button, .nr .nr-social__name, .nr .nr-social__cta .nr-icon { transition:none; }
}
