/* ============================================================
   EasyGet shared base — design tokens + the WP-managed header/footer
   component styles. Enqueued site-wide so theme-rendered pages
   (WooCommerce, blog, account) show the SAME eg-header / eg-footer as
   the custom templates. Scoped to header.site / footer.site / .btn so
   it does not fight the theme's own page styles.
   ============================================================ */
:root{
  --navy:#16205c; --navy-2:#0c1330; --ink:#1b2140; --ink-bg:#16205c; --muted:#5b6178;
  --gold:#ffd400; --orange:#ff4f00; --line:#e7e9f1; --surf:#f6f7fb; --maxw:1240px;
  --eg-font:"DM Sans","Noto Sans TC",-apple-system,system-ui,"PingFang HK","Microsoft JhengHei",sans-serif;
}
.eg-wrap, header.site .wrap, footer.site .wrap{ max-width:var(--maxw); margin:0 auto; padding:0 24px; }

/* buttons (only where our markup uses .btn) */
header.site .btn, footer.site .btn, .eg-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; font-weight:700;
  border-radius:100px; padding:12px 24px; border:0; font-size:15px; white-space:nowrap;
  text-decoration:none; cursor:pointer; font-family:var(--eg-font);
  transition:transform .18s ease, filter .18s ease;
}
header.site .btn-primary{ background:var(--orange); color:#fff; }
header.site .btn-navy{ background:var(--navy); color:#fff; }
header.site .btn:hover{ transform:translateY(-1px); filter:brightness(1.05); }

/* header */
header.site{ position:sticky; top:0; z-index:50; background:rgba(255,255,255,.95); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line); font-family:var(--eg-font); }
header.site .nav{ display:flex; align-items:center; gap:28px; height:72px; }
header.site .logo{ flex:0 0 auto; }
header.site .logo img{ height:46px; width:auto; max-width:none; }
header.site .nav ul{ display:flex; gap:26px; list-style:none; margin:0 0 0 14px; padding:0; }
header.site .nav ul li{ position:relative; }
header.site .nav ul a{ font-weight:500; color:var(--ink); font-size:16px; padding:6px 0; text-decoration:none; }
header.site .nav ul a:hover{ color:var(--navy); }
header.site .nav .spacer{ flex:1; }
header.site .nav .acct{ display:flex; align-items:center; gap:16px; font-weight:600; font-size:15px; color:var(--navy); }
header.site .nav .acct a:not(.btn){ text-decoration:none; color:var(--navy); }
header.site .nav .acct a:not(.btn):hover{ color:var(--orange); }
/* keep button text colours readable (acct link rule must not paint the button text) */
header.site .acct .btn-navy{ color:#fff !important; }
header.site .acct .btn-primary{ color:#fff !important; }

/* footer */
footer.site{ background:var(--navy-2); color:#aab1d0; padding:64px 0 0; font-family:var(--eg-font); }
footer.site .foot-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; }
footer.site .brand img{ height:48px; margin-bottom:16px; }
footer.site .brand p{ font-size:14.5px; max-width:34ch; line-height:1.7; }
footer.site h4{ color:#fff; font-size:15px; font-weight:700; margin-bottom:16px; }
footer.site ul{ list-style:none; display:flex; flex-direction:column; gap:11px; padding:0; margin:0; }
footer.site ul a{ font-size:14.5px; color:#aab1d0; text-decoration:none; }
footer.site ul a:hover{ color:var(--gold); }
footer.site .mail{ color:var(--gold); font-weight:600; }
footer.site .foot-bottom{ border-top:1px solid rgba(255,255,255,.1); margin-top:48px; padding:22px 0;
  text-align:center; font-size:13.5px; color:#7a82a8; }

@media(max-width:980px){ header.site .nav ul{ display:none; } }
@media(max-width:680px){ footer.site .foot-grid{ grid-template-columns:1fr; gap:32px; } }

/* This member platform has no public blog — drop the leftover demo widget sidebar
   (Search / Categories / Archives) wherever the theme's standard layout shows it
   (register, login, etc.) and let the content go full-width. Redesign pages use
   their own full-width templates and have no #sidebar, so they're unaffected. */
#sidebar.sidebar{ display:none !important; }
.page-template-default #main-content.main{ width:100% !important; max-width:100% !important; float:none !important; }
