/* Additions on top of the reference stylesheet (site.css stays untouched so it can be compared with the original). */
.no-motion .reveal-on-scroll{opacity:1!important;transform:none!important;transition:none!important}
.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-msg{margin:0 0 1rem;padding:.75rem 1rem;border-radius:10px;font-size:.9rem;line-height:1.5;background:rgba(var(--accent-gold-rgb),.08);color:var(--accent-gold);border:1px solid rgba(var(--accent-gold-rgb),.25)}
.form-msg.is-error{background:#fef2f2;color:#991b1b;border-color:#fecaca}
.submit-btn:disabled{opacity:.6;cursor:wait}
.social-btn.so-instagram:hover{color:#fff;background:#d62976;border-color:#d62976}
.social-btn.so-youtube:hover{color:#fff;background:#ff0000;border-color:#ff0000}
.social-btn.so-twitter:hover,.social-btn.so-linkedin:hover{color:#fff;background:#0a66c2;border-color:#0a66c2}
/* Legal document as its own page (same look as the pop-up) */
.legal-page{padding:8rem 1rem 4rem}
.legal-modal.legal-modal--page{display:block;position:static;width:100%;max-width:820px;margin:0 auto}
.legal-modal--page .modal-content{max-height:none}
.legal-modal--page .modal-header h1{margin:0;font-size:1.35rem;line-height:1.3}
.legal-back{font-size:.875rem;color:var(--accent-gold);text-decoration:none;white-space:nowrap}
.legal-back:hover{text-decoration:underline}
.nf{text-align:center;min-height:50vh}
.nf h1{font-size:2rem;margin-bottom:.5rem}
.nf .btn-primary{display:inline-block;margin-top:1rem;text-decoration:none}
.footer-logo{display:block;width:auto;max-width:100%;margin:0 0 1.5rem;object-fit:contain}
/* Header: room for more menu items. Labels never wrap; site.js shrinks the spacing, then falls back to the menu button when they still don't fit. */
#main-header{max-width:1240px}
#main-header.scrolled{max-width:1180px}
#main-header .logo-link,#main-header .header-actions{flex-shrink:0}
#main-header .logo-text,#main-header .nav-link,#main-header .btn-apple-cta{white-space:nowrap}
#main-header .nav-link{padding:7px 14px}
@media (width>=1024px){
  #main-header .desktop-nav{min-width:0;margin:0 12px}
  #main-header.nav-tight .nav-list{gap:0}
  #main-header.nav-tight .nav-link{padding:7px 10px;font-size:.84rem}
  #main-header.nav-collapsed .desktop-nav{display:none}
  #main-header.nav-collapsed .hamburger-btn{display:flex}
}
/* Footer: agency credit */
.footer-bottom .powered-by{display:inline-flex;align-items:center;gap:6px;color:#94a3b8;font-size:.82rem;text-decoration:none;transition:color .2s}
.footer-bottom .powered-by svg{color:#fbbf24;flex-shrink:0}
.footer-bottom .powered-by strong{color:#e2e8f0;font-weight:600}
.footer-bottom .powered-by:hover,.footer-bottom .powered-by:hover strong{color:#fbbf24}
/* Footer: balanced columns, clean profile block, contact rows don't break */
.site-footer .footer-grid{align-items:start}
@media (width>=1024px){.site-footer .footer-grid{grid-template-columns:1.25fr .95fr 1fr 1.55fr;gap:28px}}
@media (width>=1280px){.site-footer .footer-grid{grid-template-columns:1.4fr 1fr 1.05fr 1.4fr;gap:40px}}
.site-footer .footer-logo{margin-bottom:1.1rem}
.site-footer .analyst-header{align-items:center;margin-bottom:14px}
.site-footer .analyst-header > div:last-child{min-width:0}
.site-footer .analyst-avatar-badge{flex-shrink:0}
.site-footer .analyst-name{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.05rem;font-weight:600;line-height:1.3;letter-spacing:0;margin:0 0 4px;color:#fff}
.site-footer .analyst-designation{display:block;color:#fbbf24;font-size:.78rem;font-weight:500;line-height:1.5}
.site-footer .analyst-designation span{display:block}
.site-footer .contact-row{padding:10px 12px;font-size:.84rem;line-height:1.35}
.site-footer .contact-row span{min-width:0;overflow-wrap:anywhere}
/* Bottom line: lines up with the columns; keeps clear of the round floating buttons only where they overlap */
.footer-bottom .footer-bottom-flex{padding-left:24px;padding-right:24px}
@media (width>=768px) and (width<1360px){.footer-bottom .footer-bottom-flex{padding-left:84px;padding-right:84px}}
@media (width<768px){.footer-bottom{padding-bottom:72px!important}}
