/* Classie site — shared chrome styles: mega-menu nav (2 styles), sticky
 * section sub-nav, full site footer. Built on the Classie design tokens. */

/* ───────── nav shell ───────── */
.snav{position:fixed;top:0;left:0;right:0;z-index:60;
  border-bottom:1px solid transparent;transition:border-color .25s var(--ease-out);}
/* frosted glass goes on the BAR (not the nav root), so the absolute mega panel
   is never inside a backdrop-filter stacking context — fixes Safari clip bug */
.snav-bar{max-width:1320px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;
  gap:24px;padding:15px clamp(20px,4vw,48px);
  transition:background .25s var(--ease-out),padding .25s var(--ease-out),backdrop-filter .25s var(--ease-out),border-color .25s var(--ease-out);}
.snav.scrolled .snav-bar,.snav.menu-open .snav-bar{
  }
.snav.scrolled{border-bottom:1px solid var(--border-quiet);background:var(--bg-chrome);backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);}
.snav.scrolled .snav-bar,.snav.menu-open .snav-bar{padding-top:11px;padding-bottom:11px;}
.snav .nav-brand{text-decoration:none;}

.snav-mid{display:flex;align-items:center;gap:6px;}
.nav-item-wrap{position:relative;}
.nav-item{display:inline-flex;align-items:center;gap:5px;font-family:var(--f-satoshi);font-size:14.5px;font-weight:500;
  color:var(--fg-tertiary);text-decoration:none;cursor:pointer;padding:9px 13px;border-radius:9px;
  transition:color .15s var(--ease-out),background .15s var(--ease-out);white-space:nowrap;}
.nav-item:hover,.nav-item-wrap.open .nav-item{color:var(--fg-primary);background:var(--bg-raised);}
.nav-item.active{color:var(--fg-primary);}
.nav-item.active::after{content:"";display:block;}
.nav-caret{opacity:.6;transition:transform .2s var(--ease-out);}
.nav-item-wrap.open .nav-caret{transform:rotate(180deg);}

.nav-actions{display:flex;align-items:center;gap:12px;}
.snav-burger{display:none;width:38px;height:38px;align-items:center;justify-content:center;border-radius:9px;
  border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--fg-secondary);cursor:pointer;}

/* ───────── mega panel (panels style) ───────── */
.mega{position:absolute;top:100%;left:0;right:0;display:flex;justify-content:center;padding:0 24px;
  animation:megaIn .18s var(--ease-out) both;}
@keyframes megaIn{from{opacity:0;transform:translateY(-8px);}to{opacity:1;transform:none;}}
.motion-off .mega{animation:none;}
.mega-card{width:min(1120px,100%);background:var(--bg-surface);border:1px solid var(--border-default);
  border-radius:var(--radius-xl,18px);box-shadow:var(--shadow-chrome);padding:26px;overflow:hidden;}
.mega-grid{display:grid;grid-template-columns:1fr 290px;gap:24px;}
.mega-grid.simple{grid-template-columns:1fr;}

/* pillar columns (Platform) */
.mega-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.mega-pillar{display:flex;flex-direction:column;gap:9px;padding:17px 16px;border-radius:13px;
  border:1px solid var(--border-default);background:var(--bg-base);text-decoration:none;
  transition:border-color .15s var(--ease-out),background .15s var(--ease-out),transform .15s var(--ease-out);}
.mega-pillar:hover{border-color:var(--brand-primary);background:var(--bg-raised);transform:translateY(-2px);}
.mega-pillar-h{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:16.5px;
  color:var(--fg-primary);letter-spacing:-.01em;}
.mega-pillar-h .mega-ic{width:30px;height:30px;}
.mega-pillar-h .arr{margin-left:auto;color:var(--brand-primary-hover);transition:transform .16s var(--ease-out);}
.mega-pillar:hover .mega-pillar-h .arr{transform:translateX(3px);}
.mega-pillar-d{font-size:13px;line-height:1.45;color:var(--fg-tertiary);}
.mega-pillar-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:4px;}
.mega-pillar-tags span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.01em;color:var(--fg-secondary);
  background:var(--bg-raised);border:1px solid var(--border-default);border-radius:6px;padding:3px 8px;white-space:nowrap;}

/* link rows (Solutions) */
.mega-links{display:flex;flex-direction:column;gap:2px;}
.mega-link{display:flex;align-items:flex-start;gap:12px;padding:9px 10px;border-radius:11px;text-decoration:none;
  transition:background .14s var(--ease-out);}
.mega-link:hover{background:var(--bg-raised);}
.mega-ic{flex:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:9px;
  background:var(--brand-primary-10);border:1px solid var(--border-default);transition:border-color .14s,background .14s;}
.mega-link:hover .mega-ic{border-color:var(--brand-primary);background:var(--brand-primary-16);}
.mega-tx{display:flex;flex-direction:column;gap:2px;min-width:0;}
.mega-l{font-family:var(--f-satoshi);font-weight:600;font-size:14.5px;color:var(--fg-primary);line-height:1.2;}
.mega-d{font-size:12.5px;line-height:1.35;color:var(--fg-tertiary);}

.mega-feat{display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-decoration:none;
  border-radius:14px;padding:22px;background:
    radial-gradient(ellipse 120% 90% at 0% 0%,rgba(0,173,255,.16),transparent 60%),
    linear-gradient(160deg,#0d2747,#0a1322);border:1px solid var(--border-default);position:relative;overflow:hidden;}
body.classie-light .mega-feat{background:radial-gradient(ellipse 120% 90% at 0% 0%,rgba(0,173,255,.16),transparent 60%),linear-gradient(160deg,#EAF2FB,#FFFFFF);}
.mega-feat-badge{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#bfe6ff;
  background:rgba(0,173,255,.18);border:1px solid rgba(0,173,255,.32);border-radius:6px;padding:4px 9px;white-space:nowrap;align-self:flex-start;}
body.classie-light .mega-feat-badge{color:#0a5a99;}
.mega-feat-title{font-family:var(--f-display);font-weight:700;font-size:18px;line-height:1.2;color:var(--fg-primary);letter-spacing:-.01em;}
.mega-feat-body{font-size:13px;line-height:1.5;color:var(--fg-secondary);}
.mega-feat-out{display:flex;flex-direction:column;gap:7px;margin-top:2px;}
.mfo{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--fg-secondary);font-weight:500;}
.mega-feat-cta{margin-top:auto;display:inline-flex;align-items:center;gap:7px;font-family:var(--f-mono);font-size:12.5px;
  letter-spacing:.04em;color:var(--brand-primary-hover);font-weight:500;white-space:nowrap;}
.mega-feat:hover .mega-feat-cta .arr{transform:translateX(3px);}

/* ───────── compact dropdown (compact style) ───────── */
.compact-pop{position:absolute;top:calc(100% + 6px);left:0;min-width:248px;background:var(--bg-surface);
  border:1px solid var(--border-default);border-radius:14px;box-shadow:var(--shadow-chrome);padding:8px;
  animation:megaIn .15s var(--ease-out) both;z-index:5;}
.compact-head{font-family:var(--f-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--fg-muted);font-weight:500;padding:10px 10px 5px;}
.compact-head:first-child{padding-top:4px;}
.compact-link{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;text-decoration:none;
  font-size:14px;font-weight:500;color:var(--fg-secondary);transition:background .13s,color .13s;}
.compact-link:hover{background:var(--bg-raised);color:var(--fg-primary);}
.compact-foot{display:flex;align-items:center;gap:7px;margin-top:6px;padding:11px 10px 7px;border-top:1px solid var(--border-quiet);
  font-family:var(--f-mono);font-size:12px;letter-spacing:.04em;color:var(--brand-primary-hover);text-decoration:none;font-weight:500;}
.compact-foot:hover .arr{transform:translateX(3px);}

/* ───────── mobile sheet ───────── */
.snav-sheet{display:none;background:var(--bg-chrome);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border-top:1px solid var(--border-quiet);border-bottom:1px solid var(--border-quiet);padding:14px clamp(20px,4vw,48px) 22px;
  max-height:calc(100vh - 70px);overflow-y:auto;}
.sheet-grp{padding:10px 0;border-bottom:1px solid var(--border-quiet);}
.sheet-head{display:block;font-family:var(--f-display);font-weight:700;font-size:16px;color:var(--fg-primary);text-decoration:none;margin-bottom:8px;}
.sheet-head.solo{margin:0;padding:14px 0;border-bottom:1px solid var(--border-quiet);}
.sheet-link{display:block;font-size:14px;color:var(--fg-tertiary);text-decoration:none;padding:7px 0 7px 2px;}
.sheet-link:hover{color:var(--fg-primary);}

@media(max-width:920px){
  .snav-mid{display:none;}
  .snav-burger{display:flex;}
  .snav-sheet{display:block;}
  .nav-actions .btn-primary{display:none;}
}

/* ───────── Apple-style sticky section sub-nav ───────── */
.subnav-sentinel{position:relative;height:0;}
.subnav{position:sticky;top:62px;z-index:40;background:transparent;transition:background .25s var(--ease-out),border-color .25s,box-shadow .25s;
  border-bottom:1px solid transparent;}
.subnav.stuck{background:var(--bg-chrome);backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);
  border-bottom:1px solid var(--border-quiet);box-shadow:0 6px 22px -16px rgba(0,0,0,.7);}
.subnav-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:18px;padding:0 var(--gutter);height:58px;}
.subnav-label{font-family:var(--f-display);font-weight:700;font-size:16px;color:var(--fg-primary);letter-spacing:-.01em;white-space:nowrap;}
.subnav-links{display:flex;gap:4px;flex:1;overflow-x:auto;scrollbar-width:none;}
.subnav-links::-webkit-scrollbar{display:none;}
.subnav-links a{font-size:13.5px;font-weight:500;color:var(--fg-tertiary);text-decoration:none;padding:8px 12px;border-radius:8px;
  white-space:nowrap;transition:color .14s,background .14s;}
.subnav-links a:hover{color:var(--fg-primary);}
.subnav-links a.on{color:var(--brand-primary-hover);background:var(--brand-primary-10);}
.subnav-cta{display:inline-flex;align-items:center;gap:6px;font-family:var(--f-mono);font-size:12.5px;letter-spacing:.03em;
  color:var(--brand-primary-hover);text-decoration:none;font-weight:500;white-space:nowrap;}
.subnav-cta:hover .arr{transform:translateX(3px);}
@media(max-width:760px){.subnav-cta{display:none;}.subnav-label{display:none;}}

/* ───────── site footer ───────── */
.sfooter{position:relative;z-index:1;border-top:1px solid var(--border-default);background:var(--bg-surface);margin-top:40px;}
.sfooter-inner{display:grid;grid-template-columns:1.1fr 2.4fr;gap:48px;padding-top:64px;padding-bottom:40px;}
.sfooter-brand .nav-brand{text-decoration:none;margin-bottom:16px;}
.sfooter-tag{font-size:14px;line-height:1.55;color:var(--fg-tertiary);max-width:300px;margin:0 0 22px;}
.sfooter-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
.sfooter-ct{font-family:var(--f-display);font-weight:700;font-size:14px;color:var(--fg-primary);margin-bottom:14px;}
.sfooter-col a{display:block;font-size:13.5px;color:var(--fg-tertiary);text-decoration:none;padding:6px 0;transition:color .13s;}
.sfooter-col a:hover{color:var(--brand-primary-hover);}
.sfooter-base{display:flex;align-items:center;justify-content:space-between;padding-top:22px !important;padding-bottom:30px !important;
  border-top:1px solid var(--border-quiet);font-size:12.5px;color:var(--fg-muted);font-family:var(--f-mono);letter-spacing:.02em;}
.sfooter-base-r{display:flex;gap:20px;}
.sfooter-base-r a{color:var(--fg-muted);text-decoration:none;}
.sfooter-base-r a:hover{color:var(--fg-secondary);}
@media(max-width:860px){
  .sfooter-inner{grid-template-columns:1fr;gap:32px;padding-top: 30px !important;padding-bottom: 40px !important;}
  .sfooter-cols{grid-template-columns:repeat(2,1fr);}
  .sfooter-base{flex-direction: column;}
  .subnav-sentinel{margin-bottom: 20px;}
}
