/* Reveal-on-scroll */
  
  
  

  /* ---------- NAV ---------- */
  
  
  
  
  
  
  
  /* Dropdown */
  
  
  
  .dd-menu{
    position:absolute;top:100%;left:-14px;
    min-width:180px;padding:8px;margin-top:14px;
    background:#fff;border:1px solid var(--line);
    border-radius:12px;
    box-shadow:0 12px 40px rgba(12,55,77,.10),0 4px 12px rgba(12,55,77,.06);
    opacity:0;visibility:hidden;transform:translateY(-6px);
    transition:opacity .22s ease, transform .22s ease, visibility .22s;
    z-index:60;list-style:none;display:block;gap:0;
  }
  .has-dd:hover .dd-menu,
  .has-dd:focus-within .dd-menu{opacity:1;visibility:visible;transform:translateY(0)}
  
  
  .dd-menu a{
    display:block;padding:9px 14px;border-radius:8px;
    color:var(--ink) !important;font-size:14px;font-weight:500;
    transition:background .18s ease;
  }
  

  
  .btn{padding:11px 22px;border-radius:999px;font-weight:600;font-size:14px;transition:all .2s;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
  
  
  
  
  

  /* ---------- COMMON ---------- */
  .section{max-width:1320px;margin:0 auto;padding:64px 32px;position:relative}
  .kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);font-weight:700;margin-bottom:18px;display:inline-block}

  /* ---------- HERO ---------- */
  .sw-hero{
    position:relative;width:100%;
    padding:160px 32px 56px;
    text-align:center;
    background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);
    overflow:hidden;
  }
  .sw-hero::after{
    content:"";position:absolute;left:50%;top:0;
    transform:translateX(-50%);
    width:1100px;height:560px;
    background:radial-gradient(ellipse at center,rgba(79,166,192,.14) 0%,transparent 60%);
    pointer-events:none;z-index:0;
  }
  .sw-hero-inner{position:relative;z-index:1;max-width:880px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:22px}
  .sw-pill{
    display:inline-flex;align-items:center;gap:10px;
    padding:8px 14px;border-radius:999px;
    background:#fff;border:1px solid var(--line-soft);
    font-size:12px;letter-spacing:.14em;text-transform:uppercase;
    color:var(--ink);font-weight:600;
    box-shadow:0 2px 12px rgba(12,55,77,.04);
  }
  .sw-pill .dot{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px rgba(52,211,153,.25)}
  .sw-h1{font-size:clamp(44px,5.4vw,76px);line-height:1.02;letter-spacing:-.03em;font-weight:700;color:var(--ink);max-width:900px;text-wrap:balance}
  .sw-lede{font-size:18px;line-height:1.55;color:var(--muted);max-width:620px;font-weight:400}

  /* ---------- GUIDES GRID ---------- */
  .gd-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(340px,1fr));
    gap:22px;margin-top:8px;
  }
  .gd-card{
    position:relative;
    display:flex;flex-direction:column;gap:14px;
    background:var(--card);
    border:1px solid var(--line);
    border-radius:20px;
    padding:28px 28px 24px;
    transition:box-shadow .25s ease, transform .25s ease, border-color .25s ease;
    min-height:240px;
  }
  .gd-card:hover{
    border-color:rgba(79,166,192,.30);
    box-shadow:0 18px 50px -16px rgba(12,55,77,.12),0 4px 12px rgba(12,55,77,.04);
    transform:translateY(-3px);
  }
  .gd-icon{
    width:44px;height:44px;border-radius:12px;
    background:var(--teal);
    display:inline-flex;align-items:center;justify-content:center;
    color:#fff;
    box-shadow:0 6px 16px rgba(79,166,192,.28);
  }
  .gd-icon svg{width:22px;height:22px}
  .gd-title{font-size:20px;font-weight:700;letter-spacing:-.015em;color:var(--ink);line-height:1.2}
  .gd-blurb{font-size:14px;color:var(--muted);line-height:1.55;flex:1}
  .gd-tag{
    display:inline-flex;align-items:center;gap:6px;
    align-self:flex-start;
    padding:5px 11px;border-radius:999px;
    background:rgba(79,166,192,.08);
    border:1px solid rgba(79,166,192,.18);
    color:var(--teal-ink);font-size:12px;font-weight:600;
    letter-spacing:.02em;
  }
  .gd-tag::before{content:"";width:6px;height:6px;border-radius:2px;background:var(--teal)}
  .gd-cta{
    display:inline-flex;align-items:center;gap:6px;
    align-self:flex-end;
    margin-top:auto;
    font-size:14px;font-weight:600;color:var(--teal-ink);
    transition:gap .2s ease;
  }
  .gd-cta svg{width:14px;height:14px;transition:transform .2s ease}
  .gd-card:hover .gd-cta{gap:10px}
  .gd-card:hover .gd-cta svg{transform:translateX(2px)}

  /* ---------- FOOTER ---------- */
  footer{background:#fff;border-top:1px solid var(--line-soft);padding:72px 32px 36px}
  
  
  
  
  
  
  
  
  
  

  /* ---------- RESPONSIVE ---------- */
  @media (max-width:1024px){
    .foot-grid{grid-template-columns:1fr 1fr}
  }
  @media (max-width:768px){
    .section{padding:48px 20px}
    .sw-hero{padding:120px 20px 48px}
    nav ul{display:none}
    .nav-inner{padding:14px 20px}
    .gd-grid{grid-template-columns:1fr}
    .gd-card{padding:24px}
    .foot-grid{grid-template-columns:1fr;gap:32px}
  }
