/* Shared nav, footer and accessibility rules. Keep this linked in the same position the inline block occupied: after the inline styles, before the other css/ links. */
    @media (min-width: 768px) { .nav-menu .nav-home { display: none; } }
  
    /* ── MAIN NAV: Work With Me dropdown (hover desktop / tap mobile) ── */
    .nav-menu .nav-dropdown-toggle { display:block; width:100%; background:none; border:none; cursor:pointer; font-family:'Montserrat',sans-serif; font-size:clamp(1.2rem,2.6vw,2rem); font-weight:400; letter-spacing:0.04em; text-transform:uppercase; color:rgba(240,240,237,0.28); line-height:1.25; padding:0.18em 0; transition:color 0.2s ease; text-align:center; -webkit-tap-highlight-color:transparent; }
    .nav-menu .nav-dropdown-toggle:hover, .nav-has-dropdown:hover .nav-dropdown-toggle, .nav-has-dropdown.is-open .nav-dropdown-toggle { color:var(--text); }
    .nav-menu .nav-dropdown-toggle.active { color:var(--orange); }
    .nav-dropdown { list-style:none; overflow:hidden; max-height:0; opacity:0; transition:max-height 0.35s ease, opacity 0.25s ease; }
    .nav-has-dropdown:hover .nav-dropdown, .nav-has-dropdown.is-open .nav-dropdown { max-height:420px; opacity:1; }
    .nav-dropdown a { display:block; font-family:'Montserrat',sans-serif; font-size:clamp(0.85rem,1.5vw,1.05rem); font-weight:400; letter-spacing:0.06em; text-transform:uppercase; color:rgba(240,240,237,0.4); text-decoration:none; line-height:1.2; padding:0.34em 0; transition:color 0.2s ease; }
    .nav-dropdown a:hover, .nav-dropdown a.active { color:var(--orange); }

    /* ── FOOTER: three columns + utility bar ── */
    .site-footer { display:block; align-items:initial; text-align:left; border-top:1px solid var(--border); padding:3rem 2.5rem 2rem; }
    .footer-grid { max-width:var(--max); margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:2.5rem; }
    .footer-col h4 { font-family:'Montserrat',sans-serif; font-size:0.68rem; font-weight:800; letter-spacing:0.18em; text-transform:uppercase; color:var(--text); margin-bottom:1rem; }
    .footer-col a { display:block; font-size:0.82rem; color:var(--muted-mid); text-decoration:none; padding:0.28rem 0; transition:color 0.2s; }
    .footer-col a:hover { color:var(--orange); }
    .footer-social { display:flex; gap:1.1rem; margin-top:1.1rem; }
    .footer-social a { display:inline-flex; padding:0; color:var(--muted-mid); }
    .footer-social a:hover { color:var(--orange); }
    .footer-social a { transition: color 0.2s ease; }
    .footer-social .soc-ig  { color:#E4405F; } .footer-social .soc-ig:hover  { color:#F77BA0; }
    .footer-social .soc-yt  { color:#FF0000; } .footer-social .soc-yt:hover  { color:#FF5252; }
    .footer-social .soc-sub { color:#FF6719; } .footer-social .soc-sub:hover { color:#FF9254; }
    .footer-social .soc-li  { color:#0A66C2; } .footer-social .soc-li:hover  { color:#3B8FE0; }
    .footer-social svg { width:20px; height:20px; fill:currentColor; }
    .footer-utility { max-width:var(--max); margin:2.25rem auto 0; padding-top:1.5rem; border-top:1px solid var(--border); font-size:0.72rem; color:var(--muted); display:flex; flex-wrap:wrap; gap:0.4rem 0.7rem; align-items:center; }
    .footer-utility a { color:var(--muted); text-decoration:none; transition:color 0.2s; }
    .footer-utility a:hover { color:var(--orange); }
    .footer-utility .sep { color:var(--border); }
    @media (max-width:700px) { .footer-grid { grid-template-columns:1fr; gap:2rem; } .site-footer { padding:2.5rem 1.5rem 1.5rem; } }
    /* ── ACCESSIBILITY: skip link, focus-visible, reduced motion ── */
    .skip-link { position:absolute; left:-9999px; top:0; z-index:100000; background:var(--orange,#FF6B35); color:#fff; padding:0.7rem 1.1rem; font-family:'Montserrat',sans-serif; font-size:0.8rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; text-decoration:none; border-radius:0 0 4px 0; }
    .skip-link:link, .skip-link:visited { color: #fff; }
    .skip-link:focus { left:0; }
    a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, [tabindex]:focus-visible, summary:focus-visible { outline:2px solid var(--orange,#FF6B35); outline-offset:2px; }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important; }
      .fade-in-section { opacity:1 !important; transform:none !important; }
    }
