/* ============================================================
   Ana Carolina Pasturczak — shared site chrome
   Global nav, footer, buttons, container. Brand tokens come from
   styles.css (link it BEFORE this file). Used by every page so
   the site reads as one piece.
   ============================================================ */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--paper-0);color:var(--ink-0);
  font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
a{color:inherit;text-decoration:none;}
img,video{display:block;max-width:100%;}
.wrap{max-width:1180px;margin:0 auto;padding:0 40px;}

/* — global nav — */
.site-nav{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.85);
  backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--line-0);}
.site-nav .in{max-width:1180px;margin:0 auto;padding:15px 40px;display:flex;align-items:center;
  justify-content:space-between;gap:24px;}
.site-nav .wm{font-family:var(--font-display);font-weight:700;font-size:1.1rem;letter-spacing:-0.02em;color:var(--ink-0);}
.site-nav .wm .dot{color:var(--neon-0);}
.site-nav .links{display:flex;align-items:center;gap:26px;}
.site-nav .links a{font-size:.875rem;color:var(--ink-1);padding-bottom:3px;
  border-bottom:1.5px solid transparent;transition:color .18s,border-color .18s;}
.site-nav .links a:hover{color:var(--ink-0);}
.site-nav .links a.active{color:var(--ink-0);border-bottom-color:var(--ink-0);}

/* — buttons — */
.btn{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;font-family:var(--font-sans);
  font-weight:600;font-size:.8125rem;letter-spacing:.02em;padding:12px 22px;
  background:var(--ink-0);color:var(--paper-0);border:1.5px solid var(--ink-0);cursor:pointer;
  transition:background-color .18s,border-color .18s,color .18s;}
.btn:hover{background:var(--neon-1);border-color:var(--neon-1);color:#fff;}
.btn.ghost{background:transparent;color:var(--ink-0);}
.btn.ghost:hover{background:var(--ink-0);color:var(--paper-0);}
.btn.accent{background:var(--neon-0);border-color:var(--neon-0);color:#0A0A0A;}
.btn.accent:hover{background:var(--neon-1);border-color:var(--neon-1);color:#0A0A0A;}

/* — global footer — */
.site-foot{padding:30px 0 38px;border-top:1px solid rgba(255,255,255,.14);background:#0A0A0A;}
.site-foot .in{max-width:1180px;margin:0 auto;padding:0 40px;display:flex;align-items:center;
  justify-content:space-between;gap:18px;flex-wrap:wrap;}
.site-foot .c{font-size:.8125rem;color:rgba(255,255,255,.5);}
.site-foot .links{display:flex;gap:20px;flex-wrap:wrap;}
.site-foot .links a{font-size:.8125rem;color:rgba(255,255,255,.82);}
.site-foot .links a:hover{color:var(--neon-0);}

/* mobile hamburger nav (shared across all .site-nav pages; injected by site.js) */
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;
  background:none;border:0;cursor:pointer;padding:0;}
.nav-burger span{display:block;width:22px;height:2px;background:var(--ink-0);transition:transform .25s ease,opacity .2s ease;}
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-burger.open span:nth-child(2){opacity:0;}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.nav-mobile{display:none;}

@media(max-width:820px){
  /* portfolio-wide guard: fixed-format decks never scroll sideways on mobile */
  body{overflow-x:clip;}
}
@media(max-width:760px){
  .site-nav .links{display:none;}
  .wrap,.site-nav .in,.site-foot .in{padding-left:22px;padding-right:22px;}
  .site-nav .in{position:relative;}
  .nav-burger{display:flex;}
  .site-nav .in>.btn{display:none;}
  .nav-mobile{position:absolute;top:100%;left:0;right:0;z-index:60;flex-direction:column;padding:6px 22px 20px;
    background:rgba(255,255,255,.97);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);
    border-bottom:1px solid var(--line-0);box-shadow:0 14px 30px rgba(10,10,10,.08);
    transform:translateY(-8px);opacity:0;pointer-events:none;transition:transform .22s ease,opacity .22s ease;}
  .nav-mobile.open{display:flex;transform:translateY(0);opacity:1;pointer-events:auto;}
  .nav-mobile a{font-family:var(--font-display);font-weight:700;font-size:1.5rem;letter-spacing:-0.02em;
    color:var(--ink-0);padding:15px 0;border-bottom:1px solid var(--line-0);text-align:left;}
  .nav-mobile .btn{justify-content:center;margin-top:16px;border-bottom:0;font-family:var(--font-sans);font-size:.9rem;}
}
@media (prefers-reduced-motion: reduce){
  .nav-burger span,.nav-mobile{transition:none;}
}

/* embed mode — drop the shared chrome when a host page wraps this view */
html.is-embedded .site-nav,
html.is-embedded .site-foot{display:none;}
