/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/font-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-2.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-3.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-6.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-7.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-8.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/font-9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-6.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-7.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-8.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/font-9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/font-6.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/font-7.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/font-8.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/font-9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Shared editorial system: readable columns and concrete working examples. */
.editorial-page{width:min(1200px,calc(100% - 80px));margin:auto;padding-bottom:96px}
.editorial-page .page-crumb{width:100%;padding-top:26px;font-size:13px;color:#b3adbd}
.editorial-page .page-hero{padding:64px 0 52px;margin-bottom:0;border-bottom:1px solid #302c3a}
.editorial-page h1{font:400 clamp(46px,5.1vw,74px)/1.08 var(--font-display);letter-spacing:-.035em;margin:0 0 28px;max-width:1000px;text-wrap:balance;overflow-wrap:break-word}
.editorial-page h1 em{color:var(--violet-light)}
.editorial-page .page-intro{font-size:18px;line-height:1.7;max-width:720px;color:#c4becd;margin:0}
.editorial-page .eyebrow{font-size:13px;line-height:1.5;letter-spacing:.11em;margin:0 0 20px;color:#b79de5;display:block}
.editorial-page h2{font:400 clamp(32px,3.3vw,44px)/1.18 var(--font-display);letter-spacing:-.025em;color:#f4f1f8;margin:0 0 24px;text-wrap:balance}
.editorial-page h3{font:500 20px/1.4 var(--font-body);margin:0 0 14px;color:#f4f1f8}
.editorial-page p,.editorial-page li{font-size:18px;line-height:1.75;color:#c8c2d0}
.editorial-page p{margin:0 0 22px}.editorial-page li{margin:8px 0}.editorial-page ul,.editorial-page ol{padding-left:22px;margin:20px 0 28px}
.editorial-page a{color:#c3a7f5;text-underline-offset:4px;text-decoration-thickness:1px}
.editorial-page a:hover{color:#e3d5fc}.editorial-page strong{color:#eee9f4;font-weight:600}
.editorial-page .reading-column{width:min(100%,740px);margin:0 auto}.editorial-page.article-page .page-hero{max-width:740px;margin:auto}
.editorial-section{margin:64px 0}.editorial-section>:last-child{margin-bottom:0}
.editorial-page .split-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;border:0;padding-bottom:40px}
.editorial-page .split-hero h1{font-size:clamp(44px,4.5vw,66px)}
.editorial-page .work-example{padding:28px;background:#15121d;border:1px solid #393041;border-radius:12px;margin:32px 0}
.editorial-page .split-hero .work-example{margin:0}.editorial-page .work-example p,.editorial-page .work-example li{font-size:16px}
.editorial-page .work-example .eyebrow{font-size:12px}
.editorial-page .work-example ol{padding-left:22px;margin-bottom:0}.editorial-page .work-example li{padding:10px 0;border-top:1px solid #322a40}
.editorial-page .next-step{background:#17121f;border:1px solid #463157;border-radius:12px;padding:36px;margin-top:64px}
.editorial-page .button{display:inline-flex;align-items:center;gap:16px;background:#8050dc;border:1px solid #976ae9;border-radius:7px;color:white;text-decoration:none;font:500 15px/1.5 var(--font-body);min-height:50px;padding:12px 22px;cursor:pointer}
.editorial-page .button:hover{background:#9061e6;color:white}
.editorial-page .table-scroll{margin:28px 0;max-width:100%;overflow-x:auto;border:1px solid #39323f;border-radius:8px}
.editorial-page table{border-collapse:collapse;width:100%;font-size:15px;text-align:left;background:#100e17;min-width:540px}
.editorial-page caption{text-align:left;padding:18px;color:#bba7d4;font-size:14px;caption-side:top}
.editorial-page th,.editorial-page td{padding:16px;vertical-align:top;border-bottom:1px solid #312c3b;color:#c8c2d0;line-height:1.6;font-weight:400}
.editorial-page thead th{color:#f2edf8;background:#1a1522;font-weight:600}.editorial-page tbody th{color:#f2edf8;min-width:135px}
.editorial-page tr:last-child>*{border-bottom:0}.editorial-page code{font-size:.9em;color:#d5bdf5;overflow-wrap:anywhere}
.editorial-page .article-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:#b4adbe;margin:26px 0 0}
.editorial-page .article-lead{padding:28px 0;border-bottom:1px solid #312a39;font-size:20px;color:#ebe5f2}
.editorial-page .article-toc{margin:32px 0;padding:24px;border:1px solid #39313f;border-radius:8px;background:#100e16}
.editorial-page .article-toc p{font-size:14px;margin:0}.editorial-page .article-toc ol{margin:12px 0 0}.editorial-page .article-toc li{font-size:15px;margin:8px 0}
.editorial-page .source-note{font-size:14px;line-height:1.7;color:#aca4b8}.editorial-page .source-note a{color:#bda0e8}
.editorial-page .faq-item{border-bottom:1px solid #332c3d}.editorial-page .faq-item summary{font-size:18px;padding:22px 0;display:flex;justify-content:space-between;gap:20px;cursor:pointer;list-style:none}.editorial-page .faq-item summary::-webkit-details-marker{display:none}.editorial-page .faq-item summary span{flex:none;color:#be9cef}
.editorial-page .faq-item[open] summary span{transform:rotate(45deg)}
.editorial-page .card-grid,.editorial-page .blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;width:100%;max-width:none;padding:0;margin:32px 0}
.editorial-page .editorial-card{padding:26px;border:1px solid #342c3f;border-radius:9px;background:#121019;display:flex;flex-direction:column;text-decoration:none}
.editorial-page .editorial-card p{font-size:16px}.editorial-page .editorial-card h2,.editorial-page .editorial-card h3{font:400 27px/1.25 var(--font-display);letter-spacing:-.015em;text-wrap:pretty}
.editorial-page .editorial-card .card-meta{font-size:13px;color:#b5a9c1;margin-top:auto;padding-top:16px;border-top:1px solid #302a39}
.editorial-page .editorial-card .eyebrow{font-size:12px}.editorial-page .editorial-card:hover{border-color:#8b63b7}
.editorial-page .featured-article{margin:48px 0 36px;padding:36px;border:1px solid #58436c;background:#191322;border-radius:12px;display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:center}
.editorial-page .featured-article p{margin:0}.editorial-page .featured-article h2{margin-bottom:0}
.blog-filters{display:flex;gap:10px;flex-wrap:wrap;margin:32px 0}.blog-filters button{font:500 14px/1.5 var(--font-body);padding:11px 16px;min-height:44px;border:1px solid #483a55;border-radius:30px;background:#15111c;color:#c8bdd5;cursor:pointer}.blog-filters button[aria-pressed="true"]{background:#302044;color:#eee4ff;border-color:#a280d3}
.editorial-page [hidden]{display:none!important}.editorial-page .filter-count{font-size:14px;color:#b8adc6}
.calculator-layout{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin:48px 0 64px;align-items:start}.calculator-inputs,.calculator-results{min-width:0;border:1px solid #3a2e49;background:#14101d;border-radius:12px;padding:32px}.calculator-results{position:sticky;top:116px}.calculator-results dl{margin:24px 0}.calculator-results dl>div{display:flex;justify-content:space-between;gap:22px;padding:16px 0;border-bottom:1px solid #352c41}.calculator-results dt{color:#c3b9cf;font-size:15px}.calculator-results dd{margin:0;font-size:21px;color:#e2ccff;white-space:nowrap;font-variant-numeric:tabular-nums}.calculator-results .calc-total{display:block}.calculator-results .calc-total dd{font:400 clamp(32px,3.5vw,48px)/1.2 var(--font-display);margin-top:8px}.calculator-results[data-outcome="loss"] #difference{color:#ecb4bc}
.calc-field{display:grid;grid-template-columns:1fr 110px;gap:10px 16px;margin:28px 0 36px}.calc-field label{font-size:16px;align-self:center;color:#eee5f7}.calc-field input[type="number"]{width:100%;padding:10px;min-height:44px;background:#09070e;color:#efebf5;border:1px solid #69527d;border-radius:6px;font:500 16px var(--font-body)}.calc-field input[type="range"]{grid-column:1/-1;width:100%;height:30px;accent-color:#b190e4}.calc-field .field-note{grid-column:1/-1;font-size:13px;line-height:1.6;color:#b9aec7;margin:0}
.funnel-figure{margin:28px 0}.funnel-figure ol{list-style:none;padding:0;margin:0;display:grid;gap:12px}.funnel-figure li{display:flex;justify-content:space-between;gap:16px;background:#251a34;border-left:3px solid #a982da;padding:16px;margin:0}.funnel-figure li:nth-child(2){margin-left:7%}.funnel-figure li:nth-child(3){margin-left:14%}.funnel-figure li:nth-child(4){margin-left:21%}.funnel-figure figcaption{font-size:13px;color:#b5a8c2;margin-top:16px}
.logo-previews{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:32px 0}.logo-preview{border:1px solid #473653;border-radius:10px;overflow:hidden}.logo-preview figure{margin:0;min-height:200px;display:flex;align-items:center;justify-content:center;padding:30px;background:#0b0911}.logo-preview.light figure{background:#eeebf5}.logo-preview img{max-width:100%;height:auto;max-height:110px}.logo-preview .downloads{padding:20px;display:flex;gap:22px;flex-wrap:wrap}.company-facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#342c3c;border:1px solid #342c3c;border-radius:8px;overflow:hidden;margin:32px 0}.company-facts>div{padding:24px;background:#120e19}.company-facts dt{font-size:13px;color:#bca6d3}.company-facts dd{margin:8px 0 0;font-size:18px}
@media(max-width:900px){.editorial-page .split-hero{gap:32px}.editorial-page .card-grid,.editorial-page .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-layout{gap:24px}.calculator-inputs,.calculator-results{padding:24px}}
@media(max-width:680px){.editorial-page{width:calc(100% - 40px);padding-bottom:64px}.editorial-page .page-crumb{font-size:12px;padding-top:20px}.editorial-page .page-hero{padding:40px 0 32px}.editorial-page h1,.editorial-page .split-hero h1{font-size:clamp(38px,10.5vw,48px);line-height:1.12;letter-spacing:-.025em;margin-bottom:22px}.editorial-page h2{font-size:32px}.editorial-page p,.editorial-page li,.editorial-page .page-intro{font-size:17px}.editorial-page .eyebrow{font-size:12px;margin-bottom:16px}.editorial-section{margin:48px 0}.editorial-page .split-hero,.editorial-page .featured-article,.calculator-layout{grid-template-columns:1fr;gap:28px}.editorial-page .card-grid,.editorial-page .blog-grid,.logo-previews,.company-facts{grid-template-columns:1fr}.editorial-page .work-example,.editorial-page .next-step,.editorial-page .featured-article{padding:24px}.calculator-results{position:static}.calculator-inputs,.calculator-results{padding:22px}.calculator-layout{margin-top:32px}.calc-field{grid-template-columns:1fr 95px}.editorial-page .article-meta{font-size:13px;gap:6px 12px}.editorial-page .article-lead{font-size:18px}.editorial-page .next-step{margin-top:48px}.editorial-page .editorial-card h2,.editorial-page .editorial-card h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.editorial-page *{scroll-behavior:auto!important;transition:none!important}}
.agency-checklist fieldset{padding:0;border:0;min-width:0}.agency-checklist legend{font-size:17px;margin-bottom:22px}.checklist-item{display:flex;align-items:flex-start;gap:16px;border-top:1px solid #3a2c47;padding:20px 0;cursor:pointer}.checklist-item input{width:20px;height:20px;accent-color:#b69af3;margin-top:3px;flex:none}.checklist-item small{display:block;font-size:15px;line-height:1.7;color:#bdb1c9;margin-top:8px}.knowledge-links{font-size:15px;line-height:2}

.checklist-note-label{display:block;color:#bdb1c9;font-size:14px;margin:0 0 8px 36px}.checklist-row textarea{display:block;width:calc(100% - 36px);margin:0 0 24px 36px;padding:12px;color:#eee8f5;background:#15111c;border:1px solid #594766;border-radius:6px;font:16px/1.6 var(--font-body);resize:vertical}
@media print{body{background:white!important;color:black!important}.site-header,.site-footer,.site-menu,.skip-link,.page-crumb,.next-step,.agency-checklist button{display:none!important}.editorial-page{width:100%;padding:0}.editorial-page .page-hero{padding:0 0 20px}.editorial-page h1,.editorial-page h2,.editorial-page p,.checklist-item small,.checklist-note-label{color:black!important}.reading-column{max-width:none}.checklist-row{break-inside:avoid}.checklist-row textarea{background:white;color:black;border-color:#888}.editorial-section{margin:24px 0}}

.editorial-page .split-hero>*{min-width:0}.editorial-page .table-scroll{max-width:100%}.editorial-page .work-example h2{font:400 30px/1.25 var(--font-display);letter-spacing:-.02em}

.editorial-page:not(.article-page)>.reading-column{margin-left:0;margin-right:0}

@media(max-width:680px){.editorial-page .editorial-card h2,.editorial-page .editorial-card h3{font-size:25px;line-height:1.28;text-wrap:balance}}

.case-portrait{margin:0 0 2.5rem}.case-portrait img{width:180px;height:198px;object-fit:cover;border-radius:12px}.case-portrait figcaption{color:var(--muted);font-size:.85rem;margin-top:.75rem}.reading-column>.downloads,.scenario-comparison .downloads{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:28px 0 36px}.downloads .button.secondary{background:transparent;color:inherit;border:1px solid #423a51}.downloads .button.secondary:hover{background:#21182e}.downloads button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:520px){.reading-column>.downloads>*{width:100%}}@media print{.global-header,.global-footer,.downloads,.next-step,.page-crumb{display:none!important}body,main,.editorial-page{background:white!important;color:black!important}.table-scroll{overflow:visible!important}table{min-width:0!important}h1,h2,h3,p,th,td{color:black!important}tr{break-inside:avoid}}

/* Shared brand, navigation and footer. Loaded last on every page. */
:root {
  --bg: #09090f; --bg2: #111118; --surface: #111118;
  --white: #f5f3f9; --muted: #b2afbd; --border: #2c2936;
  --violet: #8150e6; --violet-light: #b69af3; --violet-dim: #594278;
  --lavender: #d3c1ef;
  --font-display: 'Playfair Display', Georgia, serif;
  --font-body: 'DM Sans', system-ui, sans-serif;
}
html { scroll-padding-top: 112px; scroll-behavior: smooth; }
/* Vector arrows cannot be substituted with mobile emoji glyphs. */
.ui-arrow { display: inline-block; width: 1em; height: 1em; vertical-align: -0.125em; flex-shrink: 0; }
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--violet-light); outline-offset: 5px;
}
.global-skip { position: fixed; top: -100px; left: 24px; z-index: 300; padding: 12px 20px; background: var(--white); color: var(--bg); border-radius: 6px; }
.global-skip:focus { top: 12px; }
.global-header { position: sticky; top: 0; z-index: 100; width: 100%; padding: 0; margin: 0; background: #09090ff5; border: 0; border-bottom: 1px solid #ffffff0e; backdrop-filter: blur(16px); text-align: left; }
.global-header *, .global-footer * { box-sizing: border-box; }
.global-header a, .global-footer a { text-decoration: none; }
.global-shell { width: min(1200px, calc(100% - 80px)); height: 88px; margin: auto; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.global-brand { display: flex; flex-shrink: 0; align-items: center; min-height: 44px; }
.global-brand img { display: block; width: 160px; height: auto; max-width: none; }
.global-links { display: flex; align-items: center; justify-content: center; gap: 26px; padding: 0; margin: 0 0 0 auto; width: auto; max-width: none; position: static; }
.global-links a { color: #c5c1ce; font: 400 14px/1.5 var(--font-body); white-space: nowrap; padding-block: 10px; }
.global-links a:hover, .global-links a[aria-current] { color: var(--violet-light); }
.global-actions { display: flex; align-items: center; gap: 24px; }
.global-language { display: flex; align-items: center; gap: 6px; font: 500 12px/1 var(--font-body); white-space: nowrap; }
.global-language a { display: flex; align-items: center; min-height: 44px; padding: 2px; color: #9b95a7; }
.global-language span { color: #595363; }
.global-language a[aria-current], .global-language a:hover { color: var(--white); }
.global-apply { display: inline-flex; align-items: center; justify-content: center; gap: 16px; min-height: 44px; padding: 10px 18px; background: var(--violet); border: 1px solid var(--violet); border-radius: 7px; color: #fff; font: 500 13px/1.4 var(--font-body); white-space: nowrap; transition: background .2s; }
.global-apply:hover { background: #9162ef; }
.global-apply-short { display: none; }
.global-toggle { display: none; position: relative; width: 44px; height: 44px; padding: 0; border: 1px solid #39333f; border-radius: 7px; background: transparent; color: var(--white); cursor: pointer; flex-shrink: 0; }
.global-toggle span { position: absolute; left: 12px; width: 18px; height: 1.5px; border-radius: 2px; background: currentColor; transition: transform .2s, top .2s; }
.global-toggle span:first-child { top: 17px; }
.global-toggle span:last-child { top: 24px; }
.global-toggle[aria-expanded=true] span:first-child { top: 21px; transform: rotate(45deg); }
.global-toggle[aria-expanded=true] span:last-child { top: 21px; transform: rotate(-45deg); }
.global-drawer[hidden] { display: none; }
.global-drawer { position: fixed; top: 88px; left: 0; right: 0; height: calc(100dvh - 88px); overflow-y: auto; overscroll-behavior: contain; background: var(--bg); padding: 28px max(24px, calc((100% - 720px) / 2)) 36px; }
.global-mobile-links { display: grid; gap: 0; max-width: none; padding: 0; margin: 0; position: static; }
.global-mobile-links a { display: flex; align-items: center; gap: 20px; padding: 17px 0; border-bottom: 1px solid var(--border); color: var(--white); font: 400 28px/1.2 var(--font-display); }
.global-mobile-links a > span:first-child { min-width: 24px; color: #8e819f; font: 400 11px/1 var(--font-body); }
.global-mobile-links a > span:last-child { margin-left: auto; font: 400 20px/1 var(--font-body); color: var(--violet-light); }
.global-mobile-links a:hover { color: var(--violet-light); }
.global-drawer .global-apply { display: flex; margin-top: 28px; min-height: 50px; }
.global-menu-email { display: block; color: var(--muted); font: 400 13px/1.7 var(--font-body); margin-top: 20px; text-align: center; }
.global-footer { width: min(1200px, calc(100% - 80px)); margin: 0 auto; padding: 56px 0 30px; border: 0; border-top: 1px solid var(--border); color: var(--muted); background: transparent; font: 400 14px/1.7 var(--font-body); text-align: left; }
.global-footer-main { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 80px; }
.global-footer p { margin: 20px 0 0; max-width: 300px; font: 400 14px/1.7 var(--font-body); color: var(--muted); }
.global-footer .global-social { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.global-social a { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid #332d3d; border-radius: 7px; background: #14111b; transition: color .2s, border-color .2s, background .2s; }
.global-social a:hover { border-color: #75608e; background: #1c1627; }
.global-social svg { display: block; width: 20px; height: 20px; }
.global-footer a { color: inherit; }
.global-footer a:hover { color: var(--violet-light); }
.global-footer h2 { color: var(--violet-light); font: 500 12px/1.6 var(--font-body); letter-spacing: .12em; text-transform: uppercase; margin: 0 0 20px; }
.global-footer-links { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 9px 24px; margin: 0; padding: 0; }
.global-footer-contact { overflow-wrap: anywhere; }
.global-footer-contact .global-footer-apply { display: block; margin-top: 18px; color: var(--violet-light); }
.global-resources { margin-top: 36px; border-block: 1px solid var(--border); }
.global-resources summary { display: flex; align-items: center; gap: 24px; padding: 18px 0; cursor: pointer; font-size: 12px; list-style: none; }
.global-resources summary::-webkit-details-marker { display: none; }
.global-resources summary > span:first-child { color: var(--violet-light); }
.global-resources summary::after { content: '+'; margin-left: auto; font-size: 20px; color: var(--violet-light); }
.global-resources[open] summary::after { content: '−'; }
.global-resource-links { display: flex; flex-wrap: wrap; gap: 12px 28px; padding-bottom: 24px; font-size: 13px; }
.global-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 25px; font-size: 11px; }
.global-legal { display: flex; flex-wrap: wrap; gap: 16px 22px; }
@media (max-width: 1150px) {
  .global-shell { height: 80px; }
  .global-links { display: none; }
  .global-toggle { display: block; }
  .global-drawer { top: 80px; height: calc(100dvh - 80px); }
}
@media (max-width: 850px) {
  .global-shell, .global-footer { width: calc(100% - 48px); }
  .global-footer-main { grid-template-columns: 1fr 1fr; gap: 36px; }
  .global-footer-contact { grid-column: 2; }
}
@media (max-width: 600px) {
  html { scroll-padding-top: 92px; }
  .global-shell { width: calc(100% - 32px); height: 72px; gap: 10px; }
  .global-brand img { width: 132px; }
  .global-actions { gap: 10px; }
  .global-language { font-size: 10px; gap: 4px; }
  .global-apply { font-size: 12px; padding: 10px 12px; min-height: 40px; gap: 0; }
  .global-apply-long, .global-shell .global-apply-arrow { display: none; }
  .global-apply-short { display: inline; }
  .global-toggle { width: 38px; height: 40px; }
  .global-toggle span { left: 10px; width: 16px; }
  .global-toggle span:first-child { top: 15px; }
  .global-toggle span:last-child { top: 22px; }
  .global-toggle[aria-expanded=true] span { top: 18.5px; }
  .global-drawer { top: 72px; height: calc(100dvh - 72px); padding: 18px 24px 30px; }
  .global-mobile-links a { padding: 16px 0; font-size: 26px; }
  .global-drawer .global-apply { gap: 24px; font-size: 14px; }
  .global-footer { padding-top: 40px; }
  .global-footer-main { grid-template-columns: 1fr; gap: 30px; }
  .global-footer-contact { grid-column: auto; }
  .global-footer-bottom { align-items: flex-start; flex-direction: column; gap: 18px; }
  .global-resources summary { gap: 12px; }
  .global-resources summary > span:nth-child(2) { max-width: 175px; }
}
@media (max-width: 365px) {
  .global-brand img { width: 112px; }
  .global-actions { gap: 6px; }
  .global-apply { padding-inline: 9px; font-size: 11px; }
  .global-language { gap: 2px; }
}
/* Gentle entrances and restrained feedback, shared by every page. */
@keyframes menu-enter {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes menu-link-enter {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: no-preference) {
  [data-reveal="pending"] { opacity: 0; transform: translateY(8px); }
  [data-reveal="visible"] { opacity: 1; transform: none; transition: opacity .85s ease-out, transform 1s cubic-bezier(.2, .65, .3, 1); }
  [data-reveal]:focus-within { opacity: 1; transform: none; transition: none; }
  .global-drawer:not([hidden]) { animation: menu-enter .5s cubic-bezier(.25, .1, .25, 1) both; }
  .global-drawer:not([hidden]) .global-mobile-links a { animation: menu-link-enter .75s cubic-bezier(.25, .1, .25, 1) both; animation-delay: var(--menu-delay, 0s); }
  .global-mobile-links a:nth-child(2) { --menu-delay: .055s; }
  .global-mobile-links a:nth-child(3) { --menu-delay: .11s; }
  .global-mobile-links a:nth-child(4) { --menu-delay: .165s; }
  .global-mobile-links a:nth-child(5) { --menu-delay: .22s; }
  .global-mobile-links a:nth-child(6) { --menu-delay: .275s; }
  .button, .btn-primary, .apply-continue-btn, .blog-cta-btn, .global-apply, .story-play, .global-social a {
    transition: background .35s ease, border-color .35s ease, color .35s ease, transform .4s cubic-bezier(.25, .1, .25, 1);
  }
  .story, .service, .blog-card { transition: border-color .45s ease, background .45s ease, transform .55s cubic-bezier(.25, .1, .25, 1); }
  .ui-arrow { transition: transform .4s ease; }
  .global-links a { position: relative; }
  .global-links a::after { content: ''; position: absolute; bottom: 4px; left: 0; width: 100%; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: left; transition: transform .4s ease; }
  .global-links a:hover::after, .global-links a[aria-current]::after { transform: scaleX(1); }
  .button:active, .apply-continue-btn:active, .global-apply:active { transform: scale(.98); }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .button:hover, .btn-primary:hover, .apply-continue-btn:hover, .global-apply:hover, .global-social a:hover,
  body[data-page] .btn-primary:hover, body[data-page] .blog-cta-btn:hover { transform: translateY(-2px); }
  .story:hover, .service:hover, .blog-card:hover { transform: translateY(-3px); border-color: #6b518b; }
  .text-link:hover .ui-arrow, .global-mobile-links a:hover .ui-arrow, .blog-card:hover .ui-arrow,
  .global-footer-apply:hover .ui-arrow { transform: translate(2px, -2px); }
}
@media (prefers-reduced-motion: reduce) {
  [data-reveal] { opacity: 1; transform: none; }
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Shared reset also applies to generated editorial pages. */
*,*::before,*::after{box-sizing:border-box}body{margin:0}html{color-scheme:dark}body[data-page]{margin:0}
