/* Capango 2.0 web brand (S319) — mirrors the deck's Template A "Signature" (D-S302-1).
   Deck fonts are Geomanist + Lato; the web uses Outfit (free, near-identical geometry) + Lato.
   Shared by capango.com and joblaunchpad.com — keep the two copies identical. */
:root{
  --purple:#6817FF; --blue:#3B7AE4; --sky:#1C8FD1; --mint:#05FEC1; --turq:#2CCACE;
  --slate:#343E47; --deep:#16093F; --lavl:#F3F0FF; --lav:#DCDCEF; --gray:#5B6573; --muted:#8A93A3; --hair:#E3E1EE;
  --grad:linear-gradient(118deg,#6817FF 0%,#3B7AE4 42%,#1C8FD1 68%,#05FEC1 100%);
  --grad-soft:linear-gradient(118deg,rgba(104,23,255,.10),rgba(5,254,193,.10));
  --shadow:0 18px 40px -18px rgba(22,9,63,.28),0 2px 6px rgba(22,9,63,.06);
  --radius:18px; --max:1180px;
  --fh:'Outfit',system-ui,sans-serif; --fb:'Lato',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:var(--fb);color:var(--slate);background:#fff;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
section{position:relative;padding:96px 0}
h1,h2,h3,h4{font-family:var(--fh);color:var(--slate);line-height:1.08;letter-spacing:-.01em}
h1{font-size:clamp(2.6rem,5.4vw,4.3rem);font-weight:700}
h2{font-size:clamp(2rem,3.6vw,3rem);font-weight:700}
h3{font-size:1.3rem;font-weight:700}
.accent{color:var(--purple)}
.pill{background:var(--purple);color:#fff;border-radius:.18em;padding:0 .14em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.eyebrow{font-family:var(--fb);font-weight:700;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--purple);margin-bottom:14px;display:block}
.lede{font-size:1.15rem;color:var(--gray);max-width:640px;margin-top:18px}
.center{text-align:center}.center .lede{margin-left:auto;margin-right:auto}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:.5em;font-family:var(--fh);font-weight:600;font-size:1rem;border-radius:999px;padding:14px 24px;text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--purple);color:#fff;box-shadow:0 10px 24px -10px rgba(104,23,255,.7)}
.btn-primary:hover{background:#5a0fe6}
.btn-ghost{background:#fff;color:var(--purple);border-color:var(--purple)}
.btn-white{background:#fff;color:var(--purple)}
.btn-line-white{color:#fff;border-color:rgba(255,255,255,.7)}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
/* nav */
.nav{position:sticky;top:0;z-index:300;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--hair)}
.nav .wrap{display:flex;align-items:center;gap:16px;height:72px}
.nav .logo img{height:46px;width:auto}
.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav-links>a,.dd>button{font-family:var(--fh);font-weight:500;font-size:.95rem;color:var(--slate);text-decoration:none;padding:10px 9px;border-radius:10px;background:none;border:0;cursor:pointer}
.nav-links>a,.dd>button{white-space:nowrap}
.nav-links>a:hover,.dd>button:hover{background:var(--lavl);color:var(--purple)}
.dd{position:relative}
.dd-menu{position:absolute;top:100%;left:0;min-width:250px;background:#fff;border:1px solid var(--hair);border-radius:14px;box-shadow:var(--shadow);padding:8px;display:none}
.dd:hover .dd-menu,.dd.open .dd-menu{display:block}
.dd-menu a{display:block;padding:10px 12px;border-radius:10px;text-decoration:none;font-size:.95rem}
.dd-menu a small{display:block;color:var(--muted);font-size:.8rem}
.dd-menu a:hover{background:var(--lavl)}
.nav-cta{display:flex;align-items:center;gap:8px;margin-left:8px}
.nav-cta .btn{padding:9px 15px;font-size:.92rem}
.lang-select{font-family:var(--fb);font-size:.85rem;border:1.5px solid var(--hair);border-radius:999px;padding:8px 12px;cursor:pointer;background:#fff;color:var(--slate)}
.burger{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;cursor:pointer}
.burger span{display:block;height:2px;background:var(--slate);margin:6px 10px;border-radius:2px}
/* collapsed menu: toggled by fitNav() when the links don't fit (any language) */
.nav.collapsed .burger{display:block}
.nav.collapsed .nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:12px 20px 24px;border-bottom:1px solid var(--hair);box-shadow:var(--shadow);max-height:calc(100vh - 72px);overflow:auto}
.nav.collapsed .nav-links.open{display:flex}
.nav.collapsed .dd-menu{position:static;box-shadow:none;border:0;display:none;padding-left:10px}
.nav.collapsed .dd:hover .dd-menu{display:none}.nav.collapsed .dd.open .dd-menu{display:block}
.nav.collapsed .nav-cta{margin:10px 0 0;flex-wrap:wrap}
@media(max-width:760px){.nav:not(.fitted) .burger{display:block}.nav:not(.fitted) .nav-links{display:none}}
/* gradient band + blobs */
.band{background:var(--grad);color:#fff;overflow:hidden}
.band h2,.band h3,.band .eyebrow{color:#fff}
.band .card h3{color:var(--slate)}
.band .lede{color:rgba(255,255,255,.88)}
.blob{position:absolute;pointer-events:none;z-index:0}
.soft{background:var(--lavl)}
.rel{position:relative;z-index:1}
/* cards */
.card{background:#fff;border:1px solid var(--hair);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px}
.card p{color:var(--gray);font-size:.98rem;margin-top:8px}
.card .kicker{font-weight:700;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gray)}
.icon{width:52px;height:52px;border-radius:50%;background:var(--purple);display:grid;place-items:center;margin-bottom:18px}
.icon svg{width:24px;height:24px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.grid{display:grid;gap:22px}
.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:960px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}section{padding:72px 0}}
/* screenshots */
.shot{border-radius:14px;border:1px solid var(--hair);box-shadow:var(--shadow);background:#fff;overflow:hidden}
.phone{border-radius:22px;border:1px solid var(--hair);box-shadow:var(--shadow);overflow:hidden;background:#fff}
.phones{display:flex;gap:14px;justify-content:center}
.phones .phone{flex:1 1 0;min-width:0;max-width:190px;height:auto}
.split{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:center}
.split>*{min-width:0}
.split.rev{grid-template-columns:7fr 5fr}.split.rev>:first-child{order:2}
@media(max-width:900px){.split,.split.rev{grid-template-columns:1fr;gap:36px}.split.rev>:first-child{order:0}}
.checks{list-style:none;margin-top:22px}
.checks li{position:relative;padding-left:30px;margin:10px 0;color:var(--slate)}
.checks li:before{content:"";position:absolute;left:0;top:.45em;width:16px;height:9px;border-left:2.5px solid var(--purple);border-bottom:2.5px solid var(--purple);transform:rotate(-45deg)}
.band .checks li{color:#fff}.band .checks li:before{border-color:var(--mint)}
.caption{font-size:.85rem;color:var(--muted);margin-top:10px}
/* step chips */
.step{display:inline-flex;align-items:center;gap:10px;font-family:var(--fh);font-weight:600;color:var(--slate)}
.step b{width:32px;height:32px;border-radius:50%;background:var(--purple);color:#fff;display:grid;place-items:center;font-size:.95rem}
/* sticky app bar (mobile) */
.appbar{display:none}
@media(max-width:760px){
  .appbar{position:fixed;left:0;right:0;bottom:0;z-index:250;display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--deep);color:#fff;font-family:var(--fh);font-size:.9rem;overflow:hidden}
  .appbar.hide{display:none}.appbar span{flex:1}.appbar img{height:34px;width:auto}
  .appbar button{background:none;border:0;color:#fff;font-size:1.1rem;cursor:pointer;opacity:.7}
  body.has-appbar{padding-bottom:64px}
}
/* footer + consent (injected by footer.js / consent.js) pick up the brand fonts */
.cap-foot-grid,.cap-foot-bottom,.cap-foot-brand,.cap-foot-col{font-family:var(--fb)!important}
.cap-foot-h{font-family:var(--fh)!important}
.cap-cc,.cap-cc *{font-family:var(--fb)!important}
:focus-visible{outline:3px solid var(--mint);outline-offset:2px;border-radius:6px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* ── S319 round 2: shared components for every page ── */
.nav .wrap{height:80px}
.nav.collapsed .nav-links{top:80px}
@media(max-width:1280px){.nav .logo img{height:40px}}
.btn-seek{background:var(--sky);color:#fff;box-shadow:0 10px 24px -10px rgba(28,143,209,.7)}
.btn-seek:hover{background:#1679b3}
.dd-seek>button{color:var(--sky)!important;font-weight:600!important}
.hero-sub{font-size:1.2rem;color:var(--gray);margin-top:22px;max-width:560px}
.hero-meta{margin-top:22px;font-size:.92rem;color:var(--muted)}
.hero-meta a{color:var(--purple);font-weight:700;text-decoration:none}
.hero-slim{padding:72px 0 48px}
.badges{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:28px}
.badges img{height:48px;width:auto}
.badges .gp{height:70px;margin:-11px -6px}
/* two-path chooser in the homepage hero */
.paths{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px}
.path{background:#fff;border:1px solid var(--hair);border-radius:18px;padding:16px 18px;box-shadow:0 10px 26px -18px rgba(22,9,63,.35)}
.path .kicker{display:block;font-weight:700;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--purple);margin-bottom:10px}
.path-seek{background:#EEF8FD;border-color:#bfe3f4}
.path-seek .kicker{color:var(--sky)}
.path-btns{display:flex;flex-wrap:wrap;gap:8px}
.path-btns .btn{padding:11px 18px;font-size:.95rem}
.path small{display:block;margin-top:10px;color:var(--gray);font-size:.85rem}
.path small a{color:var(--sky);font-weight:700;text-decoration:none}
@media(max-width:560px){.paths{grid-template-columns:1fr}}
/* contact */
.contact-card{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px;background:var(--lavl);border-radius:18px;padding:20px 22px}
.contact-card .kicker{display:block;font-weight:700;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--purple);margin-bottom:6px}
.contact-card p{font-size:.95rem;color:var(--slate)}
.contact-card a{color:var(--purple);font-weight:700}
@media(max-width:560px){.contact-card{grid-template-columns:1fr}}
.form-support{margin-top:-10px!important;font-size:.85rem!important}
.form-support a{color:var(--purple);font-weight:700}
/* inner pages */
.card .kicker{display:block;margin-bottom:6px}
.card .checks{margin-top:14px}
.linkcard{text-decoration:none;display:block;transition:transform .15s}
.linkcard:hover{transform:translateY(-3px)}
.stepchip{display:inline-block;font-family:var(--fh);font-weight:600;font-size:.8rem;color:var(--purple);background:var(--lavl);border-radius:999px;padding:4px 12px;margin-bottom:12px}
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:34px auto 6px;max-width:900px}
.chips span{background:#fff;border:1px solid #d9ccff;color:var(--slate);border-radius:999px;padding:9px 16px;font-weight:700;font-size:.92rem}
/* resources */
.filter-bar{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.ftab{font-family:var(--fh);font-weight:600;font-size:.95rem;border:1.5px solid var(--hair);background:#fff;color:var(--slate);border-radius:999px;padding:9px 18px;cursor:pointer}
.ftab.active,.ftab:hover{background:var(--purple);border-color:var(--purple);color:#fff}
.resources-wrap{max-width:900px;margin:0 auto;padding:0 24px}
.res-section-title{display:flex;align-items:center;gap:12px;margin:40px 0 14px}
.res-section-title h2{font-size:1.6rem}
.res-section-title .pill{font-family:var(--fb);font-size:.75rem;font-weight:700;border-radius:999px;padding:4px 10px}
.res-divider{display:none}
.article-card{background:#fff;border:1px solid var(--hair);border-radius:16px;box-shadow:0 10px 26px -20px rgba(22,9,63,.35);margin:12px 0;overflow:hidden}
.card-header{display:flex;gap:16px;align-items:flex-start;padding:20px 22px;cursor:pointer}
.card-meta{flex:1}
.card-tag{font-weight:700;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--purple);margin-bottom:6px}
.card-meta h3{font-size:1.15rem}
.card-summary{color:var(--gray);font-size:.95rem;margin-top:6px}
.card-toggle{color:var(--purple);transition:transform .2s;margin-top:4px}
.article-card.open .card-toggle{transform:rotate(180deg)}
.card-body{display:none;padding:0 22px 22px;border-top:1px solid var(--hair)}
.article-card.open .card-body{display:block}
.art-content{padding-top:16px}
.art-content p,.art-content li{color:var(--slate);margin:10px 0;font-size:1rem}
.art-content h3,.art-content h4{margin:22px 0 6px;font-size:1.1rem}
.art-content ul,.art-content ol{padding-left:22px}
.art-content blockquote{border-left:4px solid var(--purple);background:var(--lavl);padding:14px 18px;border-radius:0 12px 12px 0;margin:18px 0;font-style:italic}
.art-cta{display:inline-block;margin-top:14px;background:var(--purple);color:#fff;text-decoration:none;font-family:var(--fh);font-weight:600;border-radius:999px;padding:11px 20px}
/* legal */
.legal-meta{display:flex;gap:22px;flex-wrap:wrap;margin-top:14px;color:var(--muted);font-size:.9rem}
.legal-body{font-size:1rem;color:var(--slate)}
.legal-body h2{font-size:1.45rem;margin:34px 0 10px;scroll-margin-top:100px}
.legal-body h3{font-size:1.15rem;margin:22px 0 8px}
.legal-body p,.legal-body li{margin:10px 0;line-height:1.7}
.legal-body ul,.legal-body ol{padding-left:24px}
.legal-body a{color:var(--purple)}
.legal-body hr{border:0;border-top:1px solid var(--hair);margin:28px 0}
.legal-body table{border-collapse:collapse;width:100%;margin:16px 0;font-size:.92rem;display:block;overflow-x:auto}
.legal-body th,.legal-body td{border:1px solid var(--hair);padding:10px;text-align:left;vertical-align:top}
.legal-body th{background:var(--lavl)}
.legal-body blockquote,.legal-body .callout{background:var(--lavl);border-radius:12px;padding:14px 18px;margin:16px 0}
@media(max-width:560px){ /* hero-order: seekers see their path before the long subhead */
  .hero .rel{display:flex;flex-direction:column}
  .hero .rel .eyebrow{order:1}.hero .rel h1{order:2}.hero .rel .paths{order:3}.hero .rel .hero-sub{order:4;font-size:1.05rem}
  .path-btns .btn{padding:10px 16px}
}
.nav .logo{flex:0 0 auto}.nav .logo img{flex-shrink:0;max-width:none}
/* lang-compact: globe + 2-letter code */
.lang-select{appearance:none;-webkit-appearance:none;padding:8px 26px 8px 32px;font-weight:700;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235B6573' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c3 3.5 3 14.5 0 18M12 3c-3 3.5-3 14.5 0 18'/%3E%3C/svg%3E") no-repeat 10px center/16px,#fff}
.lang-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235B6573' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c3 3.5 3 14.5 0 18M12 3c-3 3.5-3 14.5 0 18'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%235B6573' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat,no-repeat;background-position:10px center,right 9px center;background-size:16px,11px}
.cvimg{border-radius:10px;border:1px solid var(--hair);box-shadow:var(--shadow);background:#fff}
.cv-pair{display:flex;gap:16px;align-items:center;justify-content:center}
.cv-pair .phone{flex:0 0 32%;min-width:0;max-width:190px}
.cv-pair a{flex:1 1 0;min-width:0;max-width:340px;display:block}
.cv-pair .cvimg{width:100%}
.nav .wrap{max-width:1320px}
/* long labels (es/fr) on small screens */
.cap-foot-bottom,.cap-foot-bottom-links{flex-wrap:wrap!important;row-gap:8px}
.cvwrap a,.cv-pair a{display:block}.cvimg{width:100%;height:auto}
@media(max-width:560px){.btn{white-space:normal;text-align:center;justify-content:center}}
