/* Contact's social marks share one edge and one compact control geometry. */
body:is(.page-about,.page-contact,.page-careers,.page-press,.page-news){
 --page-social-inset:max(32px,env(safe-area-inset-right,0px));
 --page-social-bottom:max(18px,3svh,env(safe-area-inset-bottom,0px));
}
html body .page-social-links{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0;padding:0;flex:none}
html:root body .page-social-links .contact-social-icon{
 --social-ink:var(--public-glass-surface);--social-hover-ink:var(--public-glass-ink);
 position:relative;isolation:isolate;display:grid;place-items:center;flex:0 0 var(--public-nav-hit-size);
 width:var(--public-nav-hit-size);height:var(--public-nav-hit-size);min-width:var(--public-nav-hit-size);min-height:var(--public-nav-hit-size);
 padding:0;gap:0;border:0;border-radius:50%;background:transparent;color:var(--social-ink);text-decoration:none;touch-action:manipulation;
 transition:color .18s ease;
}
html body.page-contact .contact-screen .page-social-links .contact-social-icon{
 flex-basis:var(--public-nav-hit-size);width:var(--public-nav-hit-size);height:var(--public-nav-hit-size);
 min-width:var(--public-nav-hit-size);min-height:var(--public-nav-hit-size);
}
html body .page-social-links .contact-social-icon svg{display:block;width:22px;height:22px;fill:currentColor;pointer-events:none}
html body .page-social-links .contact-social-icon::before{
 content:"";position:absolute;inset:50% auto auto 50%;translate:-50% -50%;z-index:-1;
 width:var(--entropic-control-height);height:var(--entropic-control-height);border-radius:50%;background:var(--social-ink);
 -webkit-backdrop-filter:var(--public-glass-blur);backdrop-filter:var(--public-glass-blur);
 opacity:0;transform:scale(.28);transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .18s ease;pointer-events:none;
}
html body .page-social-links .contact-social-icon:is(:focus-visible,:active){color:var(--social-hover-ink);background:transparent}
html body .page-social-links .contact-social-icon:is(:focus-visible,:active)::before{opacity:1;transform:scale(1)}
html body .page-social-links .contact-social-icon:focus-visible{outline:2px solid var(--social-ink);outline-offset:4px}
html body.page-about .about-fixed-socials{position:fixed;right:var(--page-social-inset);bottom:var(--page-social-bottom);z-index:90;margin:0;padding:0}
/* Preserve the existing contact composition; only its final row is realigned. */
html body.page-contact #main-content .contact-screen{padding-bottom:var(--page-social-bottom)!important}
html body.page-contact .contact-screen .contact-socials{flex-direction:row;justify-content:flex-end;align-items:center;margin-right:calc(var(--page-social-inset) - var(--section-inset))}
html body .social-pills--trailing{padding-right:var(--page-social-inset);padding-bottom:var(--page-social-bottom)}
/* Retain Press's existing clearance for its floating download basket. */
html body.page-press .social-pills--trailing{padding-bottom:max(110px,var(--page-social-bottom))}
html body .social-pills--trailing .social-pill{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.2fr) auto;padding-right:0}
html body .social-pills--trailing .page-social-links{grid-column:4;grid-row:1;align-self:center}
html body .social-pills--trailing .footer-detail:nth-of-type(1){grid-column:1;grid-row:1}
html body .social-pills--trailing .footer-detail:nth-of-type(2){grid-column:2;grid-row:1}
html body .social-pills--trailing .footer-detail:nth-of-type(3){grid-column:3;grid-row:1}
html body .social-pills--trailing .contact-social-icon{--social-ink:var(--public-glass-surface);--social-hover-ink:var(--public-glass-ink)}
/* Editorial contact footers sit directly on the page, without a glass pill.
   Selected-theme ink applies to copy and marks together; retain their layout. */
html:root body:is(.page-careers,.page-news,.page-press) .social-pills--trailing .social-pill{
 background:transparent!important;border:0!important;border-radius:0!important;
 box-shadow:none!important;filter:none!important;
 -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
 color:var(--theme-ink,#191919)!important;
}
html:root body:is(.page-careers,.page-news,.page-press) .social-pills--trailing .footer-detail a{color:var(--theme-ink,#191919)!important}
html:root body:is(.page-careers,.page-news,.page-press) .social-pills--trailing :is(.footer-label,.footer-note,.footer-careers){color:var(--theme-muted,#666)!important}
html:root body:is(.page-careers,.page-news,.page-press) .social-pills--trailing .contact-social-icon{
 --social-ink:var(--public-glass-surface);--social-hover-ink:var(--public-glass-ink);
}
html.mobile-menu-open .about-fixed-socials{visibility:hidden;pointer-events:none}
@media(hover:hover) and (pointer:fine){
 html body .page-social-links .contact-social-icon:hover{color:var(--social-hover-ink);background:transparent}
 html body .page-social-links .contact-social-icon:hover::before{opacity:1;transform:scale(1)}
}
@media(max-width:900px),(hover:none),(pointer:coarse){html body .page-social-links .contact-social-icon{--public-nav-hit-size:var(--entropic-control-touch-height)}}
@media(max-width:700px){
 body:is(.page-about,.page-contact,.page-careers,.page-press,.page-news){--page-social-inset:max(20px,env(safe-area-inset-right,0px))}
 html body .social-pills--trailing .social-pill{grid-template-columns:repeat(2,minmax(0,1fr));padding-right:0}
 html body .social-pills--trailing .footer-detail:nth-of-type(1){grid-column:1;grid-row:1}
 html body .social-pills--trailing .footer-detail:nth-of-type(2){grid-column:2;grid-row:1}
 html body .social-pills--trailing .footer-detail:nth-of-type(3){grid-column:1;grid-row:2}
 html body .social-pills--trailing .page-social-links{grid-column:2;grid-row:2;justify-self:end;gap:0}
}
@media(orientation:landscape) and (max-height:550px) and (max-width:1100px){body:is(.page-about,.page-contact,.page-careers,.page-press,.page-news){--page-social-inset:var(--landscape-right,max(24px,env(safe-area-inset-right,0px)))}}
@media(prefers-reduced-motion:reduce){html body .page-social-links .contact-social-icon,html body .page-social-links .contact-social-icon::before{transition:none}}
@media print{html body.page-about .about-fixed-socials{position:static;display:flex;justify-content:flex-end}}
