/* styles/74-marketing-cohesion.css */
/* The company website keeps one light Contakt material across route changes.
   Tenant branding remains scoped to the source-rendered product assets. */
body{--ct-bg:#f7f8fa;--ct-surface:#fff;--ct-sunken:#f1f3f6;--ct-sunken-strong:#e9edf1;--ct-hairline:#e1e4e8;--ct-rule:#e3e6ea;--ct-rule-strong:#b8bfc8;--ct-text:#1f2328;--ct-text-secondary:#626a73;--ct-ring:#1f2328;--ct-control-border:#626a73;--ct-green-mid:#2fa24b;--ct-green:#1e7b33;--ct-green-deep:#1e7b33;--ct-green-soft:#e5f7e8;--ct-on-green:#fff}
body .closing[data-theme=ink]{--ct-bg:#f7f8fa;--ct-surface:#fff;--ct-sunken:#f1f3f6;--ct-sunken-strong:#e9edf1;--ct-text:#1f2328;--ct-text-secondary:#626a73;--ct-hairline:#e1e4e8;--ct-rule:#e3e6ea;--ct-rule-strong:#b8bfc8;--ct-control-border:#626a73;--ct-green:#1e7b33;--ct-green-deep:#1e7b33;--ct-green-soft:#e5f7e8;--ct-on-green:#fff;--ct-ring:#1f2328;border-top:1px solid #e1e4e8}
.site-header .lockup img,.site-footer .lockup img{content:url('brand/CONTAKT_wordmark_primary.svg')}
.site-footer h2{font-family:var(--ct-font-text);letter-spacing:0;text-transform:none;font-size:13px}
.menu__panel nav a[aria-current=page]{color:#1e7b33}
.menu__panel nav a[aria-current=page]::after{content:'';width:7px;height:7px;border-radius:50%;background:#1e7b33;margin-left:auto}
.site-nav a{padding-inline:10px}
:is(.page-home,.page-clubs,.page-programs,.page-managed){--wrap:1740px;--gutter:48px}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero{display:block;min-height:0;padding-block:clamp(56px,5.2vw,88px) 44px}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__top{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(40px,6vw,100px);align-items:center}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__title{gap:22px}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero .eyebrow{font-family:var(--ct-font-text);font-size:13px;letter-spacing:0;text-transform:none;margin:0}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1{font:500 clamp(48px,5.45vw,84px)/1.04 var(--ct-font-display);letter-spacing:-.045em;max-width:16ch;text-wrap:balance}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1>span{color:#626a73}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side{padding:0;gap:18px}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side .lede{font-size:18px;line-height:1.65;max-width:43ch}
.page-home .hero__side .actions{margin-top:4px}
.page-home .hero .home-help{margin-top:0;padding-top:16px}
.page-home .ai-stage{padding-top:44px}
.page-home .ai-heading h2{font-size:clamp(42px,4.6vw,70px)}
.page-home .ai-heading{margin-bottom:48px}
.page-home .ai-after{border-top:1px solid #e1e4e8;padding-block:56px}
.page-home .ai-after>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px 64px;align-items:center}
.page-home .ai-after .eyebrow{grid-column:1;margin:0}
.page-home .ai-after h2{grid-column:1;font-size:clamp(32px,3.4vw,50px);margin:0}
.page-home .ai-after>.wrap>p:not(.eyebrow){grid-column:2;grid-row:1/3;margin:0}
.academy-pathways{border-top:1px solid #e1e4e8}
.academy-pathways__head{display:grid;grid-template-columns:1.2fr .8fr;gap:20px 80px;align-items:end;margin-bottom:56px}
.academy-pathways__head .eyebrow{grid-column:1/-1;margin:0}
.academy-pathways__head h2{font:500 clamp(40px,4.4vw,68px)/1.08 var(--ct-font-display);letter-spacing:-.035em;max-width:16ch}
.academy-pathways__head>p{font-size:17px;line-height:1.7;color:#626a73;max-width:43ch}
.academy-pathways__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}
.academy-path{min-width:0;border-top:1px solid #b8bfc8;padding-top:28px}
.academy-path__text>h3{font:500 clamp(28px,2.7vw,42px)/1.15 var(--ct-font-display);letter-spacing:-.035em;max-width:19ch;margin:14px 0 16px}
.academy-path__text>p:not(.eyebrow){max-width:49ch;font-size:16px;line-height:1.7;color:#626a73;margin-bottom:20px}
.academy-path__asset{display:block;text-decoration:none;color:#626a73;margin-top:36px;outline-offset:8px}
.academy-path__caption:focus-visible{outline:2px solid #1f2328}
.academy-path__asset:has(a:hover,a:focus-visible) .pathway-record:first-child{border-color:#626a73}
.pathway-asset.academy-scene{--font-sans:var(--ct-font-text);--font-display:var(--ct-font-display);--font-mono:var(--ct-font-mono);--foreground:#1f2328;--muted-foreground:#626a73;--card:#fff;--background:#f7f8fa;--surface:#f1f3f6;--surface-strong:#e9edf1;--warning-soft:#fbefd9;--warning-ink:#8a5714;--border:#e1e4e8;--border-strong:#b8bfc8;--club1:var(--ai-club);--club1-ink:color-mix(in srgb,var(--ai-club) 85%,#1f2328);--club1-soft:color-mix(in srgb,var(--ai-club) 10%,#f7f8fa);border:0;background:transparent;overflow:visible;position:relative;padding:0 24px 0 0;font-family:var(--ct-font-text)}
.pathway-record{position:relative;z-index:2;border:1px solid #e1e4e8;border-radius:8px;box-shadow:0 8px 20px rgb(31 35 40 / .07);background:#fff;transition:border-color 180ms}
.pathway-record>.space-y-4{border:0!important;background:transparent!important;padding:24px}
.pathway-record h2{font-size:19px;letter-spacing:-.025em}
.pathway-record .lg\:grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.pathway-record:nth-child(2){z-index:1;position:relative;height:110px;margin:18px -24px 0 24px;overflow:hidden;pointer-events:none}
.pathway-record:nth-child(2)>.space-y-4{min-height:110px}
.academy-path__caption{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;text-decoration:none;color:#626a73;font:400 12px/1.5 var(--ct-font-text);margin-top:12px}
.academy-service-bridge{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;border-top:1px solid #b8bfc8;margin-top:72px;padding-top:32px;align-items:start}
.academy-service-bridge h3{font:500 clamp(28px,2.7vw,42px)/1.15 var(--ct-font-display);letter-spacing:-.035em;max-width:24ch}
.academy-service-bridge p:not(.eyebrow){color:#626a73;font-size:17px;line-height:1.7;max-width:43ch}
.academy-service-bridge .actions{margin-top:16px}
.academy-related{border-top:1px solid #e1e4e8}
.academy-related__head{margin-bottom:36px}
.academy-related__head h2{font:500 clamp(38px,3.7vw,56px)/1.1 var(--ct-font-display);letter-spacing:-.035em}
.academy-related nav{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.academy-related__link{display:grid;grid-template-columns:1fr 24px;gap:12px 20px;border-top:1px solid #b8bfc8;padding-block:24px;text-decoration:none;color:#1f2328}
.academy-related__link>span{font-size:13px;color:#626a73}
.academy-related__link>strong{grid-column:1;font:500 clamp(24px,2.4vw,36px)/1.2 var(--ct-font-display);letter-spacing:-.025em}
.academy-related__link>p{grid-column:1;color:#626a73;font-size:15px;line-height:1.7;max-width:45ch}
.academy-related__link>svg{grid-column:2;grid-row:2;align-self:center;width:24px;height:24px}
.academy-related__link:hover>strong,.academy-related__link:hover>svg{color:#1e7b33}
.academy-start-now{border-top:1px solid #b8bfc8;padding-top:24px}
.academy-start-now>h3{font:500 25px/1.3 var(--ct-font-display);letter-spacing:-.025em;margin-bottom:20px}
.academy-start-now .actions{margin-top:20px}
.academy-monthly-help{border-top:1px solid #b8bfc8;padding-top:8px}
.academy-monthly-help .note{margin-top:20px}
.page-home #managed .split--flip{grid-template-columns:1fr 1fr}
.page-home #managed .split__text{order:0}
.page-home #managed .home-request{padding:32px 0 0;background:transparent;border:0;border-top:1px solid #e1e4e8;border-radius:0}
.page-home .band .eyebrow,.academy-related .eyebrow{font-family:var(--ct-font-text);letter-spacing:0;text-transform:none}
.page-home #facts .facts>li{border-top:1px solid #e1e4e8;padding-top:24px}
@media(min-width:2000px){:is(.page-home,.page-clubs,.page-programs,.page-managed){--wrap:2200px;--gutter:80px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1{font-size:110px}.page-home .ai-heading h2{font-size:90px}.academy-pathways__head h2{font-size:82px}.academy-pathways__grid{gap:100px}.pathway-record>.space-y-4{padding:32px}.pathway-record h2{font-size:24px}}
@media(max-width:1179px){.site-header .wrap{--gutter:24px}}
@media(max-width:1100px){:is(.page-home,.page-clubs,.page-programs,.page-managed){--gutter:24px}.academy-pathways__grid,.academy-service-bridge,.academy-related nav{gap:32px}.academy-pathways__head{gap:20px 40px}.academy-path__text>h3{font-size:30px}}
@media(max-width:899px){:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__top{grid-template-columns:1fr;gap:28px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1{max-width:21ch}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side .lede{max-width:55ch}.academy-pathways__head,.academy-service-bridge{grid-template-columns:1fr}.academy-pathways__head h2{max-width:24ch}.academy-pathways__head>p{max-width:55ch}.academy-pathways__grid{grid-template-columns:1fr;gap:48px}.academy-path{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.academy-path__asset{margin-top:0}.page-home #managed .split--flip{grid-template-columns:1fr}}
@media(max-width:767px){:is(.page-home,.page-clubs,.page-programs,.page-managed){--gutter:16px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero{padding-block:40px 22px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__title{gap:18px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1{font-size:clamp(42px,10.5vw,64px);max-width:20ch}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side{gap:16px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side .lede{font-size:16px;line-height:1.6}.page-home .hero .home-help{font-size:12px}.page-home .ai-stage{padding-top:30px}.page-home .ai-heading h2{font-size:clamp(38px,8vw,52px)}.page-home .ai-after{padding-block:40px}.page-home .ai-after>.wrap{grid-template-columns:1fr;gap:16px}.page-home .ai-after h2{font-size:36px}.page-home .ai-after>.wrap>p:not(.eyebrow){grid-column:1;grid-row:auto;font-size:15px}.academy-pathways__head{gap:18px;margin-bottom:36px}.academy-pathways__head h2{font-size:clamp(38px,8vw,52px)}.academy-pathways__head>p{font-size:15px}.academy-path{display:block;padding-top:24px}.academy-path__text>h3{font-size:32px}.academy-path__text>p:not(.eyebrow){font-size:15px}.academy-path__asset{margin-top:28px}.pathway-asset.academy-scene{padding:0 16px 40px 0}.pathway-record>.space-y-4{padding:16px}.pathway-record:nth-child(2){height:95px;margin:14px -16px 0 16px}.pathway-record h2{font-size:18px}.academy-service-bridge{margin-top:48px;padding-top:24px;gap:20px}.academy-service-bridge h3{font-size:32px}.academy-service-bridge p:not(.eyebrow){font-size:15px}.academy-related nav{grid-template-columns:1fr;gap:12px}.academy-related__link>strong{font-size:28px}.site-header .wrap{--gutter:16px}.page-home #managed .home-request{padding-top:24px}}
@media(prefers-reduced-motion:reduce){.academy-path__asset *{transition:none!important}}

@media(max-width:767px){.page-home .hero h1>span{font-size:clamp(36px,9.5vw,64px)}.page-home .hero__side .btn{padding-inline:16px}.page-home .hero__side .actions{gap:10px}}
@media(max-width:767px){.page-product .hero__side>.actions{flex-direction:column;align-items:flex-start}}

/* pages/privacy/style.css */
/* Privacy: a title, then the legal text set as a ledger. Each heading sits
   in the left column, its paragraph in the right, with a hairline between. */

/* The hero has no lede and no action, so the title takes the full width. */
.page-privacy .hero__top {
  grid-template-columns: minmax(0, 1fr);
}
.page-privacy .hero__side:empty {
  display: none;
}

/* The band runs into the footer, which is white too: one hairline, not two. */
.privacy-band.band--white {
  border-bottom: 0;
}

.privacy-doc.prose {
  max-width: none;
  overflow-wrap: break-word;
}
.privacy-doc.prose > * + * {
  margin-top: 0;
}

/* The opening statement answers the title. */
.privacy-lead {
  max-width: 30em;
  font: 500 clamp(1.375rem, 1.1rem + 1.15vw, 1.875rem) / 1.25 var(--ct-font-display);
  letter-spacing: -0.02em;
}
.privacy-doc.prose > .privacy-lead + .privacy-item {
  margin-top: clamp(36px, 5vw, 64px);
}

.privacy-item {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
  gap: 10px clamp(32px, 6vw, 80px);
  padding-block: clamp(22px, 3vw, 32px);
  border-top: 1px solid var(--ct-hairline);
}
.privacy-item:last-child {
  border-bottom: 1px solid var(--ct-hairline);
}
.privacy-item h2 {
  margin-top: 0;
  font-size: 1.25rem;
  line-height: 1.3;
  letter-spacing: -0.015em;
}
.privacy-item__text {
  display: flex;
  flex-direction: column;
  gap: 1em;
  max-width: 68ch;
  font-size: 1rem;
  line-height: 1.65;
}

/* On a touch screen a link inside a sentence offers a finger-sized target:
   the padding of an inline box does not move the lines. With a mouse or a
   keyboard there is no padding, so the focus ring hugs the link text. */
@media (pointer: coarse) {
  .privacy-doc a {
    padding-block: 12px;
  }
}

@media (max-width: 899.98px) {
  .privacy-item {
    grid-template-columns: minmax(0, 1fr);
  }
}
