/* ============================================================
   network2026.css: /tanning-salon-network/ only.
   Depends on shell2026.css tokens and buttons. Same padding rule:
   elements that also carry .zt-wrap use padding-top/bottom only.
   ============================================================ */
.nw-h{font-family:var(--zt-font-display);font-size:clamp(32px,4vw,52px);text-transform:uppercase;color:var(--zt-ink);margin:10px 0 0}
.nw-h--w{color:#fff;margin:0}

/* hero: salon photo behind brand purple, same energy as the homepage hero */
.nw-hero{position:relative;overflow:hidden;color:#fff;background:var(--zt-purple)}
.nw-hero-bg,.nw-hero-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nw-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(800px 500px at 85% 20%,rgba(255,155,0,.45),transparent 60%),linear-gradient(100deg,rgba(66,9,95,.95) 30%,rgba(92,15,140,.75) 60%,rgba(92,15,140,.35))}
.nw-hero-in{position:relative;z-index:1;padding-top:56px;padding-bottom:84px;max-width:1180px}
.nw-crumbs{display:flex;gap:8px;font-size:14px;color:#d9c3ef;margin-bottom:28px}.nw-crumbs a{color:#fff;text-decoration:none}.nw-crumbs a:hover{text-decoration:underline}
.nw-hero h1{font-family:var(--zt-font-display);font-size:clamp(44px,6vw,80px);line-height:1;text-transform:uppercase;margin:12px 0 18px;max-width:14ch}
.nw-lede{font-size:clamp(17px,1.6vw,19px);color:var(--zt-lilac);max-width:58ch}
.nw-logos{display:inline-flex;align-items:center;gap:16px;margin:28px 0;padding:12px 22px;border-radius:999px;background:#fff}
.nw-logos img{width:auto;flex:0 0 auto}.nw-logos .zt{height:30px}.nw-logos .sbt{height:44px}.nw-logos .bb{height:42px}
.nw-logos .plus{font-size:22px;font-weight:700;color:var(--zt-orange)}
.nw-ctas{display:flex;gap:12px;flex-wrap:wrap}.nw-ctas--c{justify-content:center}

/* stats band */
.nw-stats{background:linear-gradient(95deg,#ff8a00,#ffa61e 60%,#ffb84d);color:#fff}
.nw-stats-in{display:grid;grid-template-columns:repeat(4,1fr);padding-top:26px;padding-bottom:26px}
.nw-stats-in div{padding:0 20px;border-left:1px solid rgba(255,255,255,.35)}.nw-stats-in div:first-child{border-left:0;padding-left:0}
.nw-stats b{display:block;font-family:var(--zt-font-display);font-size:clamp(30px,3.4vw,44px);line-height:1}
.nw-stats span{font-size:14.5px;font-weight:500}

/* how it works */
.nw-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.nw-steps li{padding:28px 26px;border-radius:24px;background:#fff;border:1px solid #eee3f8;box-shadow:0 24px 48px -34px rgba(63,7,102,.5)}
.nw-ic{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:20px;color:#fff;background:linear-gradient(145deg,#8b2fd9,#5c0f8c);margin-bottom:16px}
.nw-steps li:nth-child(2) .nw-ic{background:linear-gradient(145deg,#ffb13d,#ff7a00)}.nw-steps li:nth-child(3) .nw-ic{background:linear-gradient(145deg,#c07bff,#9b5de5)}
.nw-steps h3{font-size:20px;margin-bottom:8px}.nw-steps p{color:var(--zt-body);font-size:15.5px}

/* brand cards */
.nw-brands{background:var(--zt-mist)}
.nw-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.nw-card{display:flex;flex-direction:column;gap:10px;padding:28px 26px;border-radius:24px;background:#fff;border-top:5px solid var(--c)}
.nw-card--zt{--c:var(--zt-purple)}.nw-card--sbt{--c:#0b6e8a}.nw-card--bb{--c:#e8362f}
.nw-card-logo{height:44px;width:auto;align-self:flex-start;object-fit:contain}
.nw-card h3{font-size:21px}.nw-card p{color:var(--zt-body);font-size:15.5px;flex:1}
.nw-link{font-weight:700;color:var(--zt-purple);text-decoration:none}.nw-link:hover{text-decoration:underline;text-underline-offset:4px}

/* service filter band */
.nw-filter{background:radial-gradient(700px 400px at 90% 0%,rgba(255,155,0,.4),transparent 60%),linear-gradient(160deg,#7d1fbb,var(--zt-purple) 55%,#3d0a5e);color:#fff}
.nw-filter-in{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;padding-top:64px;padding-bottom:64px}
.nw-filter p{color:var(--zt-lilac);margin-top:12px;max-width:52ch}
.nw-chips{display:flex;flex-wrap:wrap;gap:10px}
.nw-chips a{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 20px;border-radius:999px;border:1px solid rgba(255,255,255,.4);color:#fff;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s}
.nw-chips a:hover{background:rgba(255,255,255,.12);border-color:#fff}
.nw-chips .dot{width:10px;height:10px;border-radius:50%}

/* faq */
.nw-faq-in{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.nw-faq-in .zt-btn{margin-top:24px}
.nw-faqlist details{border:1px solid #eadcf7;border-radius:20px;margin-bottom:12px;background:#fff}
.nw-faqlist details[open]{border-color:#d9c3f0;box-shadow:0 20px 40px -28px rgba(92,15,140,.5)}
.nw-faqlist summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;font-weight:700;font-size:18px;color:var(--zt-ink)}
.nw-faqlist summary::-webkit-details-marker{display:none}
.nw-faqlist summary::after{content:"+";flex:0 0 32px;height:32px;border-radius:50%;display:grid;place-items:center;font-size:20px;color:var(--zt-purple);background:#f1e4fb;transition:transform .3s,background .3s,color .3s}
.nw-faqlist details[open] summary::after{transform:rotate(45deg);background:var(--zt-orange);color:#fff}
.nw-faqlist p{padding:0 22px 20px;color:var(--zt-body)}

/* final */
.nw-final{background:linear-gradient(115deg,var(--zt-purple) 0%,#8b1fd0 55%,#ff8a00 130%);color:#fff;text-align:center}
.nw-final h2{font-family:var(--zt-font-display);font-size:clamp(34px,4.6vw,58px);text-transform:uppercase;margin-bottom:12px}
.nw-final p{color:#f3e8ff;font-size:18px;margin-bottom:26px}

@media(max-width:960px){
  .nw-steps,.nw-cards{grid-template-columns:1fr}
  .nw-filter-in,.nw-faq-in{grid-template-columns:1fr;gap:24px}
  .nw-stats-in{grid-template-columns:1fr 1fr;row-gap:18px}
  .nw-stats-in div:nth-child(3){border-left:0;padding-left:0}
}
@media(max-width:560px){
  .nw-hero-in{padding-top:36px;padding-bottom:60px}
  .nw-logos{gap:10px;padding:10px 16px}.nw-logos .zt{height:22px}.nw-logos .sbt{height:34px}.nw-logos .bb{height:32px}
  .nw-ctas .zt-btn{flex:1 1 100%}
}
