/* everconnected: the shared shell for the inner pages.
   Tokens, type, buttons, the floating pill nav, the compact hero band on the
   royal wash and the footer are lifted verbatim from quests/ and tribes/, which
   in turn copy the home. Keep this file in step with those three. */
@font-face{font-family:'Nunito';src:url(../nunito.woff2) format('woff2');font-weight:200 1000;font-display:swap}
:root{
  color-scheme:light;
  --paper:#ffffff; --cream:#fbf7ee; --mint:#edf6ec; --lilac:#f4f3fd;
  --ink:#23223a; --ink-soft:#5d5c78; --line:rgba(35,34,58,.11);
  --peri:#5b5bd6; --grad-a:#6a5cf0; --grad-b:#3f8ef7;
  --teal:#2fbfb4; --teal-tint:#e9faf8;
  --royal:#2c2586; --royal-2:#4b3fd4;
  --shell:1120px; --gutter:clamp(20px,5vw,44px); --band:clamp(56px,6vw,88px);
  --r-xl:32px; --r-lg:24px; --r-md:16px;
  --sh:0 22px 46px -30px rgba(35,34,58,.55);
  --e:cubic-bezier(.22,1,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Nunito',ui-rounded,'SF Pro Rounded',system-ui,sans-serif;background:var(--paper);color:var(--ink);font-size:17px;line-height:1.62;font-weight:500;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto}
a:focus-visible,button:focus-visible{outline:3px solid var(--grad-b);outline-offset:3px;border-radius:8px}
section[id]{scroll-margin-top:96px}
.in{max-width:var(--shell);margin-inline:auto;padding-inline:var(--gutter)}
.band{padding-block:var(--band)}
.band-cream{background:var(--cream)}
.band-mint{background:var(--mint)}
.band-lilac{background:var(--lilac)}
h1{font-weight:900;font-size:clamp(2.3rem,1.15rem + 3.3vw,3.65rem);line-height:1.04;letter-spacing:-.032em;text-wrap:balance}
h2{font-weight:900;font-size:clamp(1.72rem,1.1rem + 1.95vw,2.5rem);line-height:1.13;letter-spacing:-.024em;text-wrap:balance}
h3{font-weight:800;font-size:1.12rem;line-height:1.3;letter-spacing:-.012em}
.lead{font-size:clamp(1.02rem,.95rem + .35vw,1.2rem);color:var(--ink-soft);line-height:1.66}
.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;text-align:center;white-space:nowrap;font-weight:800;font-size:1rem;padding:.9em 2.1em;border-radius:999px;border:0;cursor:pointer;font-family:inherit;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.btn-fill{color:#fff;background:linear-gradient(92deg,var(--grad-a),var(--grad-b));box-shadow:0 14px 30px -14px rgba(90,92,230,.8)}
.btn-fill:hover{transform:translateY(-2px)}
.btn-sm{font-size:.9rem;padding:.65em 1.5em}
.btn-light{background:#fff;color:var(--royal);box-shadow:0 16px 34px -16px rgba(10,8,40,.7)}
.btn-light:hover{transform:translateY(-2px)}
.btn-quiet{background:rgba(255,255,255,.7);color:var(--peri);box-shadow:inset 0 0 0 2px rgba(91,91,214,.22)}
.btn-quiet:hover{transform:translateY(-2px);background:#fff}
.go{display:inline-block;margin-top:1.05rem;font-weight:800;font-size:.94rem;color:var(--peri);text-decoration:none;border-bottom:2px solid transparent}
.go:hover{border-bottom-color:currentColor}

/* ---------- the floating pill nav, as on the home ---------- */
.pillnav{position:fixed;top:clamp(10px,1.6vw,18px);left:var(--gutter);right:var(--gutter);max-width:var(--shell);margin-inline:auto;z-index:40;
  display:flex;align-items:center;gap:clamp(10px,2vw,28px);padding:.5rem .55rem .5rem 1.2rem;border-radius:999px;
  background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  box-shadow:0 12px 34px -16px rgba(35,34,58,.5),inset 0 0 0 1px rgba(35,34,58,.06)}
.wordmark img{height:20px;width:auto;display:block}
.nav{display:flex;align-items:center;gap:clamp(14px,2vw,26px);margin-inline:auto}
.nav a{color:var(--ink);opacity:.78;font-weight:700;font-size:.94rem;text-decoration:none;padding-bottom:2px;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current]{opacity:1;border-bottom-color:var(--peri)}
.signin{color:var(--ink);font-weight:800;font-size:.94rem;text-decoration:none;white-space:nowrap;padding:.5em .9em}
.signin:hover{color:var(--peri)}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;font-weight:800;font-size:.86rem;padding:.55em .95em;border-radius:999px;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.menu summary::-webkit-details-marker{display:none}
.menu[open] summary{background:var(--lilac)}
.menupanel{position:absolute;right:0;top:calc(100% + 12px);min-width:210px;background:#fff;border-radius:var(--r-lg);padding:.6rem;display:grid;
  box-shadow:0 18px 44px -18px rgba(35,34,58,.5),inset 0 0 0 1px rgba(35,34,58,.06)}
.menupanel a{color:var(--ink);font-weight:700;text-decoration:none;padding:.6em .9em;border-radius:12px}
.menupanel a:hover,.menupanel a[aria-current]{background:var(--lilac)}
@media (max-width:760px){
  .pillnav{padding:.45rem .45rem .45rem 1rem;gap:.5rem}
  .wordmark img{height:18px}
  .nav,.signin{display:none}
  .menu{display:block}
  .pillnav .btn-sm{margin-left:auto}
  .btn{padding:.85em 1.6em}
  .btn-sm{padding:.6em 1.2em}
}

/* ---------- the compact hero band on the royal wash ---------- */
.wash-hero{position:relative;isolation:isolate;overflow:hidden;color:#fff;
  background:linear-gradient(160deg,var(--royal) 0%,#352c9e 55%,var(--royal-2) 100%);
  padding-top:clamp(108px,16vh,160px);padding-bottom:clamp(44px,6vw,84px)}
.wash-hero::before{content:"";position:absolute;inset:auto -10% -40% -10%;height:70%;z-index:0;pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,222,150,.16),rgba(255,222,150,0) 72%)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:clamp(24px,4vw,64px);align-items:center}
.hero-one{position:relative;z-index:1;max-width:760px}
.eyebrow{display:inline-flex;align-items:center;gap:.55em;color:#fff;text-decoration:none;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;opacity:.9;margin-bottom:clamp(14px,1.8vw,24px)}
.wash-hero h1{color:#fff;font-size:clamp(2.5rem,1rem + 4.4vw,4.6rem);line-height:.98;letter-spacing:-.04em;text-shadow:0 2px 24px rgba(20,16,70,.35)}
.wash-hero .lead{color:rgba(255,255,255,.88);max-width:52ch;margin-top:clamp(14px,1.8vw,22px)}
.wash-hero .stamp{display:inline-block;margin-top:clamp(16px,2vw,24px);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.wash-hero .cta-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:clamp(22px,2.6vw,32px)}
.hero-art{justify-self:end;width:100%;max-width:440px}
.hero-art img{display:block;width:100%;filter:drop-shadow(0 24px 40px rgba(10,8,40,.45))}
@media (max-width:760px){
  .wash-hero{padding-top:clamp(92px,14vh,120px)}
  .hero-grid{grid-template-columns:minmax(0,1fr);gap:1.4rem}
  .hero-art{justify-self:center;max-width:260px;order:-1}
}

/* ---------- running text: the legal pages, contact ---------- */
.prose{max-width:68ch}
.prose p{margin:.9em 0}
.prose a{color:var(--peri);font-weight:700}
.prose h3{margin:1.8em 0 .5em}
.prose ul{margin:.2rem 0 1rem;padding-left:1.25em}
.prose li{margin:.35em 0}
.prose b{font-weight:800}

/* ---------- the feature split, the pills, the cards ---------- */
.feat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,76px);align-items:center}
.feat .fart{display:grid;place-items:center}
.feat .fart>img{width:100%;max-width:430px;display:block}
.feat h2{max-width:18ch}
.feat .lead{max-width:46ch;margin-top:.9rem}
.kicker{display:block;font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--peri);margin-bottom:.6rem}
.pills{display:flex;flex-wrap:wrap;gap:.7rem;max-width:520px;margin-top:clamp(20px,2.6vw,28px)}
.pill{background:var(--teal-tint);border:1.5px solid #cdeeea;color:var(--ink);font-weight:700;font-size:1rem;padding:.55em 1.25em;border-radius:999px;display:inline-flex;align-items:center;gap:.45em}
.pill::before{content:"";width:.55em;height:.55em;border-radius:50%;background:var(--teal)}
.how-head{max-width:58ch}
.how-head .lead{margin-top:.8rem}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.2vw,26px);margin-top:clamp(22px,3vw,36px)}
.step{background:#fff;border-radius:var(--r-xl);box-shadow:inset 0 0 0 1px var(--line);padding:clamp(20px,2.4vw,28px);display:flex;flex-direction:column;gap:.5rem}
.step .n{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#fff;background:linear-gradient(120deg,var(--grad-a),var(--grad-b));font-size:.95rem;margin-bottom:.3rem}
.step p{color:var(--ink-soft);font-size:.98rem}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.2vw,26px);margin-top:clamp(22px,3vw,36px)}
.card{display:flex;flex-direction:column;gap:.55rem;background:var(--cream);border-radius:var(--r-xl);box-shadow:inset 0 0 0 1px var(--line);padding:clamp(20px,2.4vw,28px);transition:box-shadow .35s var(--e),transform .35s var(--e)}
.card:hover{box-shadow:var(--sh),inset 0 0 0 1px var(--line);transform:translateY(-3px)}
.card:nth-child(2){background:var(--lilac)}
.card:nth-child(3){background:var(--mint)}
.card .kicker{margin-bottom:0}
.card h3{font-size:1.32rem;font-weight:900;letter-spacing:-.02em}
.card p{color:var(--ink-soft);font-size:.98rem;line-height:1.5}
.card .go{margin-top:auto;padding-top:.6rem}
.card .cart{width:84px;height:84px;border-radius:var(--r-lg);background:rgba(255,255,255,.7);display:grid;place-items:center;margin-bottom:.5rem;box-shadow:inset 0 0 0 1px var(--line)}
.card .cart img{width:58px;height:58px;object-fit:contain;display:block}
@media (max-width:760px){
  .feat{grid-template-columns:minmax(0,1fr);gap:clamp(22px,4vw,30px);text-align:center}
  .feat .fart{order:2}
  .feat h2,.feat .lead{margin-inline:auto}
  .feat .fart>img{max-width:320px}
  .pills{justify-content:center;margin-inline:auto}
  .steps,.cards{grid-template-columns:minmax(0,1fr)}
}

/* ---------- the close ---------- */
.close-band{background:linear-gradient(160deg,var(--royal),var(--royal-2));border-radius:var(--r-xl);padding:clamp(30px,4.5vw,58px);display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(20px,3vw,44px);align-items:center;color:#fff}
.close-band h2{color:#fff}
.close-band p{color:#d9d9f7;margin:.6rem 0 1.3rem}
.close-band img{width:100%;max-width:300px;margin-inline:auto;display:block}
.close-band .row{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}
.close-band .row .btn-quiet{background:rgba(255,255,255,.12);color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}
.close-band .row .btn-quiet:hover{background:rgba(255,255,255,.22)}
@media (max-width:640px){.close-band{grid-template-columns:1fr;text-align:center}.close-band .row{justify-content:center}}

footer{background:var(--cream);border-top:1px solid var(--line);padding-block:clamp(46px,5.5vw,70px);text-align:center;color:var(--ink-soft);font-size:.9rem}
.foot-links{display:flex;justify-content:center;gap:1.3rem;margin-top:1.1rem;flex-wrap:wrap}
.foot-links a{color:var(--ink-soft);font-weight:700;text-decoration:none}
.foot-links a:hover{color:var(--peri)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---------- the legal documents (text carried verbatim from everconnected.com) ---------- */
.legal{max-width:74ch;font-size:1.02rem;line-height:1.72;color:var(--ink-soft)}
.legal p{margin:0 0 1.05em}
.legal a{color:var(--peri);font-weight:700;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:.06em}
.legal strong,.legal b{color:var(--ink);font-weight:800}
.legal-intro{margin:0 0 2.2em;padding-bottom:1.4em;border-bottom:1px solid var(--line)}
.legal-intro p:first-child{font-weight:800;color:var(--ink);letter-spacing:.02em}
.legal-h2,.legal h2{font-weight:900;font-size:clamp(1.35rem,1.1rem + 1vw,1.7rem);line-height:1.2;letter-spacing:-.02em;color:var(--ink);margin:2.4em 0 .6em;padding-top:1.1em;border-top:1px solid var(--line);scroll-margin-top:96px}
.legal-h2:first-of-type{border-top:0;padding-top:0}
.legal-h3,.legal h3{font-weight:800;font-size:1.16rem;color:var(--ink);margin:1.8em 0 .4em;scroll-margin-top:96px}
.legal-h4,.legal h4{font-weight:800;font-size:1.02rem;color:var(--ink);margin:1.4em 0 .35em;scroll-margin-top:96px}
.legal ul,.legal ol,.legal-list{margin:.4em 0 1.2em;padding-left:1.3em}
.legal li{margin:.4em 0}
.legal-toc{margin:0 0 2.6em;padding:1.2em 1.4em;background:var(--lilac);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r-md)}
.legal-toc__h{font-weight:900;color:var(--ink);margin:0 0 .5em;font-size:1.05rem}
.legal-toc ol{margin:0;padding-left:1.4em;columns:2;column-gap:2.2em;font-size:.94rem}
.legal-toc li{margin:.25em 0;break-inside:avoid}
.legal-toc a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:.06em}
.legal-toc a:hover{color:var(--peri)}
.table-wrap{overflow-x:auto;margin:1.2em 0 1.6em;-webkit-overflow-scrolling:touch}
.legal table{border-collapse:collapse;width:100%;min-width:520px;font-size:.93rem}
.legal th,.legal td{border:1px solid var(--line);padding:.6em .75em;text-align:left;vertical-align:top}
.legal th{background:var(--cream);color:var(--ink);font-weight:800}
@media (max-width:640px){.legal-toc ol{columns:1}}
