/* B2B service pages — Brands & Agencies division. Reuses tokens from styles.css. */
.b2b a{color:inherit}
.b2b a.b2b-link{color:var(--terra);border-bottom:1px solid currentColor;padding-bottom:1px;cursor:pointer}
.b2b a.b2b-link:hover{color:var(--crimson)}
.b2b-dark a.b2b-link:hover{color:var(--ivory)}
.b2b-sec{padding:120px 0}
.b2b-sec.tight{padding:88px 0}
.b2b-ivory{background:var(--ivory);color:var(--ink)}
.b2b-sand{background:var(--sand);color:var(--ink)}
.b2b-dark{background:var(--ink);color:var(--ivory)}
.b2b-black{background:var(--black);color:var(--ivory)}
.b2b-eyebrow{font-family:var(--sans);font-size:11px;letter-spacing:.38em;text-transform:uppercase;font-weight:500;color:var(--terra)}
.b2b-h1{font-family:var(--serif);font-weight:400;font-size:clamp(40px,5.4vw,76px);line-height:1.04;letter-spacing:-.018em;margin-top:26px;max-width:980px;text-wrap:balance}
.b2b-h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,3.8vw,50px);line-height:1.1;letter-spacing:-.012em;text-wrap:balance;max-width:860px}
.b2b-h3{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.25;letter-spacing:-.004em}
.b2b-em{font-style:italic;color:var(--terra)}
.b2b-ivory .b2b-em,.b2b-sand .b2b-em{color:var(--crimson)}
.b2b-lede{font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.55;max-width:720px;text-wrap:pretty}
.b2b-body{font-size:16px;line-height:1.75;font-weight:300;max-width:680px;text-wrap:pretty}
.b2b-body p+p{margin-top:16px}
.b2b-dark .b2b-body,.b2b-black .b2b-body,.b2b-dark .b2b-lede,.b2b-black .b2b-lede{color:rgba(248,243,237,.82)}
.b2b-ivory .b2b-body,.b2b-sand .b2b-body{color:rgba(27,21,15,.78)}
.b2b-muted{font-size:13px;line-height:1.65;font-weight:300;opacity:.8}

/* hero */
.b2b-hero{position:relative;overflow:hidden;padding:56px 0 110px}
.b2b-ghost{position:absolute;right:-4%;bottom:-12%;font-family:var(--serif);font-style:italic;font-size:clamp(160px,24vw,360px);line-height:1;color:rgba(166,111,83,.08);pointer-events:none;white-space:nowrap}
.b2b-crumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:rgba(248,243,237,.55);margin-bottom:64px}
.b2b-crumbs a{cursor:pointer}
.b2b-crumbs a:hover{color:var(--terra)}
.b2b-crumbs [aria-current]{color:rgba(248,243,237,.85)}
.b2b-hero-sub{margin-top:30px;display:grid;gap:14px;max-width:720px}
.b2b-hero-sub p:first-child{font-family:var(--serif);font-size:21px;line-height:1.5;color:rgba(248,243,237,.88)}
.b2b-hero-sub p+p{font-size:15px;line-height:1.75;font-weight:300;color:rgba(248,243,237,.7)}
.b2b-ctas{margin-top:42px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}

/* section head */
.b2b-head{display:grid;gap:22px;margin-bottom:56px}
.b2b-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:80px;align-items:start}

/* cards — hairline grid */
.b2b-cards{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:1px;background:rgba(27,21,15,.16);border:1px solid rgba(27,21,15,.16)}
.b2b-dark .b2b-cards,.b2b-black .b2b-cards{background:rgba(248,243,237,.14);border-color:rgba(248,243,237,.14)}
.b2b-card{background:var(--ivory);padding:40px 34px 44px;display:flex;flex-direction:column;gap:14px;min-width:0}
.b2b-sand .b2b-card{background:var(--sand)}
.b2b-dark .b2b-card{background:var(--ink)}
.b2b-black .b2b-card{background:var(--black)}
.b2b-card-num{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--terra)}
.b2b-card p{font-size:14.5px;line-height:1.7;font-weight:300;color:rgba(27,21,15,.74);text-wrap:pretty}
.b2b-dark .b2b-card p,.b2b-black .b2b-card p{color:rgba(248,243,237,.74)}
.b2b-card .b2b-for{margin-top:auto;padding-top:14px;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--terra);font-weight:500}
.b2b-note{margin-top:26px;font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.6;opacity:.75;max-width:760px}

/* list grid */
.b2b-list{display:grid;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:0 40px;list-style:none}
.b2b-list li{padding:20px 0;border-top:1px solid rgba(27,21,15,.16);font-family:var(--serif);font-size:18px;line-height:1.35;display:flex;gap:14px;align-items:baseline}
.b2b-dark .b2b-list li,.b2b-black .b2b-list li{border-color:rgba(248,243,237,.16)}
.b2b-list li::before{content:'';flex:none;width:14px;height:1px;background:var(--terra);transform:translateY(-5px)}

/* process diagram */
.b2b-steps{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));gap:0;list-style:none;counter-reset:s;position:relative}
.b2b-steps li{position:relative;padding:0 28px 0 0}
.b2b-step-dot{display:flex;align-items:center;gap:0;margin-bottom:26px}
.b2b-step-dot span{flex:none;width:44px;height:44px;border:1px solid var(--terra);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;color:var(--terra)}
.b2b-step-dot i{flex:1;height:1px;background:rgba(166,111,83,.45)}
.b2b-steps li:last-child .b2b-step-dot i{background:transparent}
.b2b-steps li:first-child .b2b-step-dot span{background:var(--terra);color:var(--ivory)}
.b2b-steps p{margin-top:10px;font-size:14.5px;line-height:1.7;font-weight:300;opacity:.8;text-wrap:pretty}

/* diagrams */
.b2b-diagram{border:1px solid rgba(27,21,15,.18);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.b2b-dark .b2b-diagram{border-color:rgba(248,243,237,.18)}
.b2b-diagram > div{padding:34px 32px}
.b2b-diagram .mid{display:flex;align-items:center;justify-content:center;padding:0 22px;background:var(--terra);color:var(--ivory)}
.b2b-diagram .mid span{font-family:var(--mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;writing-mode:vertical-rl}
.b2b-diagram h3{font-size:10px;letter-spacing:.32em;text-transform:uppercase;font-weight:500;margin-bottom:12px;font-family:var(--sans)}
.b2b-diagram ul{list-style:none}
.b2b-diagram li{padding:11px 0;border-top:1px solid rgba(27,21,15,.12);font-family:var(--serif);font-size:16.5px}
.b2b-dark .b2b-diagram li{border-color:rgba(248,243,237,.12)}
.b2b-funnel{display:grid;gap:8px}
.b2b-funnel div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:16px 22px;border:1px solid rgba(248,243,237,.2);font-family:var(--serif);font-size:17px;margin:0 auto;width:100%}
.b2b-funnel div span{flex:1 1 auto;min-width:0}
.b2b-funnel div small{font-family:var(--sans);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgba(248,243,237,.55);text-align:right;flex:0 1 auto;line-height:1.5}
.b2b-funnel div:last-child{background:var(--terra);border-color:var(--terra);color:var(--ivory)}
.b2b-funnel div:last-child small{color:rgba(248,243,237,.85)}

/* compare */
.b2b-compare{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px;background:rgba(27,21,15,.16);border:1px solid rgba(27,21,15,.16)}
.b2b-compare > div{background:var(--ivory);padding:40px 36px;display:grid;gap:14px;align-content:start}
.b2b-compare > div.ours{background:var(--ink);color:var(--ivory)}
.b2b-compare > div.ours p{color:rgba(248,243,237,.8)}
.b2b-compare p{font-size:15px;line-height:1.72;font-weight:300;color:rgba(27,21,15,.75)}

/* faq */
.b2b-faq{border-top:1px solid rgba(27,21,15,.18)}
.b2b-faq details{border-bottom:1px solid rgba(27,21,15,.18)}
.b2b-faq summary{list-style:none;cursor:pointer;padding:26px 0;display:flex;justify-content:space-between;gap:24px;align-items:baseline;font-family:var(--serif);font-size:20px;line-height:1.35}
.b2b-faq summary::-webkit-details-marker{display:none}
.b2b-faq summary::after{content:'+';font-family:var(--sans);font-weight:300;font-size:24px;color:var(--terra);flex:none;transition:transform .2s}
.b2b-faq details[open] summary::after{transform:rotate(45deg)}
.b2b-faq summary:focus-visible{outline:2px solid var(--terra);outline-offset:4px}
.b2b-faq .a{padding:0 0 28px;max-width:760px;font-size:15.5px;line-height:1.78;font-weight:300;color:rgba(27,21,15,.78)}
.b2b-faq .a p+p{margin-top:12px}

/* team strip */
.b2b-team{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:64px;align-items:center}
.b2b-team-people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.b2b-team-people figure{display:grid;gap:12px}
.b2b-team-people img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:grayscale(.15)}
.b2b-team-people figcaption{font-family:var(--serif);font-size:16px;line-height:1.3}
.b2b-team-people figcaption small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--terra);margin-top:6px;font-weight:500}

/* directory */
.b2b-dir{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(248,243,237,.14);border:1px solid rgba(248,243,237,.14)}
.b2b-dir a{background:var(--black);padding:34px 30px;display:grid;gap:10px;align-content:start;cursor:pointer;transition:background .18s;text-decoration:none}
.b2b-dir a:hover{background:#17120d}
.b2b-dir a[aria-current]{background:#1f1913;cursor:default}
.b2b-dir a span{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--terra);font-weight:500}
.b2b-dir a b{font-family:var(--serif);font-weight:400;font-size:21px;line-height:1.25}
.b2b-dir a i{font-style:normal;font-size:13.5px;line-height:1.6;font-weight:300;color:rgba(248,243,237,.66)}

/* inquiry form */
.b2b-form{display:grid;gap:40px}
.b2b-fieldset{border:none;display:grid;gap:26px}
.b2b-legend{font-size:11px;letter-spacing:.3em;text-transform:uppercase;font-weight:600;padding-bottom:14px;border-bottom:1px solid rgba(27,21,15,.18);width:100%;margin-bottom:6px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.b2b-legend small{font-weight:400;letter-spacing:.16em;opacity:.6}
.b2b-grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px 30px}
.b2b-field label,.b2b-field .lbl{display:block;font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--terra);font-weight:500;margin-bottom:10px}
.b2b-field input,.b2b-field textarea,.b2b-field select{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(27,21,15,.3);padding:10px 0;font-family:var(--serif);font-size:18px;color:var(--ink);outline:none;border-radius:0}
.b2b-field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--terra) 50%),linear-gradient(135deg,var(--terra) 50%,transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}
.b2b-field textarea{resize:vertical;min-height:110px;line-height:1.5}
.b2b-field input:focus,.b2b-field textarea:focus,.b2b-field select:focus{border-bottom-color:var(--terra);box-shadow:0 1px 0 var(--terra)}
.b2b-field[data-invalid] input,.b2b-field[data-invalid] textarea,.b2b-field[data-invalid] select{border-bottom-color:var(--crimson)}
.b2b-err{margin-top:8px;font-size:12.5px;color:var(--crimson);font-weight:400}
.b2b-chips{display:flex;flex-wrap:wrap;gap:10px}
.b2b-chip{position:relative}
.b2b-chip input{position:absolute;opacity:0;inset:0;cursor:pointer}
.b2b-chip span{display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border:1px solid rgba(27,21,15,.28);font-size:13.5px;font-weight:400;line-height:1.2;transition:all .15s;cursor:pointer}
.b2b-chip input:checked + span{background:var(--ink);color:var(--ivory);border-color:var(--ink)}
.b2b-chip input:focus-visible + span{outline:2px solid var(--terra);outline-offset:2px}
.b2b-chip:hover span{border-color:var(--ink)}
.b2b-more{border:1px solid rgba(27,21,15,.18);padding:0 26px}
.b2b-more > summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.b2b-more > summary::-webkit-details-marker{display:none}
.b2b-more > summary b{font-family:var(--serif);font-weight:400;font-size:19px}
.b2b-more > summary small{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--terra);white-space:nowrap}
.b2b-more[open] > summary{border-bottom:1px solid rgba(27,21,15,.12);margin-bottom:26px}
.b2b-more[open]{padding-bottom:30px}
.b2b-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.b2b-submit{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.b2b-privacy{font-size:12.5px;line-height:1.65;font-weight:300;color:rgba(27,21,15,.65);max-width:620px}
.b2b-alert{padding:20px 22px;border:1px solid rgba(101,0,25,.35);background:rgba(101,0,25,.05);font-size:14px;line-height:1.65;color:var(--crimson)}
.b2b-alert a{text-decoration:underline}
.b2b-preview-flag{display:inline-block;margin-bottom:18px;padding:6px 10px;border:1px dashed var(--terra);font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--terra)}
.b2b-done{padding:56px 48px;background:var(--ink);color:var(--ivory);display:grid;gap:18px}
.b2b-done:focus{outline:none}
.b2b-form-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:start}
.b2b-form-aside{position:sticky;top:110px;display:grid;gap:22px}
.b2b-form-aside ol{list-style:none;display:grid;gap:0;counter-reset:n}
.b2b-form-aside li{counter-increment:n;padding:16px 0;border-top:1px solid rgba(27,21,15,.16);font-size:14.5px;line-height:1.6;font-weight:300;display:grid;grid-template-columns:34px 1fr}
.b2b-form-aside li::before{content:'0' counter(n);font-family:var(--mono);font-size:11px;color:var(--terra);padding-top:3px}

.btn:focus-visible,.nav-cta:focus-visible{outline:2px solid var(--terra);outline-offset:3px}

@media (max-width:1100px){
  .b2b-split,.b2b-team,.b2b-form-wrap{grid-template-columns:1fr !important;gap:48px !important}
  .b2b-form-aside{position:static}
  .b2b-cards{--cols:2 !important}
  .b2b-steps{--cols:2 !important;gap:44px 0}
  .b2b-steps li:nth-child(2n) .b2b-step-dot i{background:transparent}
}
@media (max-width:768px){
  .b2b-sec{padding:68px 0 !important}
  .b2b-sec.tight{padding:56px 0 !important}
  .b2b-hero{padding:28px 0 72px}
  .b2b-crumbs{margin-bottom:40px}
  .b2b-cards,.b2b-list,.b2b-steps,.b2b-dir,.b2b-compare{--cols:1 !important;grid-template-columns:1fr !important}
  .b2b-grid2{grid-template-columns:1fr !important}
  .b2b-card{padding:30px 24px 34px}
  .b2b-steps{gap:30px !important}
  .b2b-steps li{padding:0;display:grid;grid-template-columns:44px 1fr;gap:0 18px}
  .b2b-step-dot{margin:0;grid-row:span 2}
  .b2b-step-dot i{display:none}
  .b2b-steps p{grid-column:2}
  .b2b-diagram{grid-template-columns:1fr !important}
  .b2b-diagram .mid{padding:12px}
  .b2b-diagram .mid span{writing-mode:horizontal-tb}
  .b2b-team-people{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important}
  .b2b-faq summary{font-size:17px}
  .b2b-hero-sub p:first-child{font-size:18px}
  .b2b-done{padding:36px 26px}
  .b2b-funnel div{width:100% !important;flex-direction:column;gap:4px}
  .b2b-funnel div small{text-align:left}
  .b2b-more{padding:0 18px}
}
