.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.button-link { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 24px; font-size: 1rem; font-weight: 600; line-height: 1.2; text-decoration: none; background: var(--paper); color: var(--ink); border: 1px solid var(--paper); transition: background-color .25s, color .25s, border-color .25s; }
.button-link:hover { background: var(--live); border-color: var(--live); }
.button-link.btn-line { background: transparent; color: var(--paper); border-color: var(--line-strong); }
.button-link.btn-line:hover { border-color: var(--paper); background: rgba(242, 240, 233, .06); }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: clamp(26px, 4vh, 40px); }
.back-link.utility { min-height: 44px; text-decoration: none; color: var(--muted); letter-spacing: .12em; }
.back-link.utility:hover { color: var(--paper); }
.prose p + p { margin-top: 1.1em; }
.cover .actions .text-link { margin-left: 8px; }
@media (max-width: 51.25em) {
.cover .actions .text-link { margin-left: 0; }
}
@media (forced-colors: active) {
.door, .button-link { border: 1px solid CanvasText; }
}
.also li:nth-child(3) .status { rotate: 4deg; background: var(--paper); border-width: 2px; }
.menu-list a { display: flex; align-items: center; gap: 12px; min-height: 56px; border-bottom: 1px solid var(--line); font-size: 1.5rem; font-weight: 600; letter-spacing: -.015em; text-decoration: none; }
.menu-list a[aria-current] { color: var(--live); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 8px; }
.foot-links a, .foot-contact a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--paper-2); text-decoration: none; }
.foot-links a:hover, .foot-contact a:hover, .foot-links a[aria-current] { color: var(--paper); text-decoration: underline; text-underline-offset: 5px; }
.foot-colophon a { text-underline-offset: 3px; }
.foot-colophon a:hover { color: var(--paper); }
@media print {
body:has(.se-programmes)::before { margin-inline: 0; }
}
@media (max-width: 51.25em) {
.also a { min-height: 120px; padding: 16px; }
}
.back h2 { font-size: clamp(2.125rem, 4.6vw, 4.5rem); line-height: 1; letter-spacing: -.04em; font-weight: 620; max-width: 15em; }
.page-hero { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 7.2fr) minmax(0, 4.8fr); gap: clamp(24px, 4vw, 64px); align-items: center; min-height: min(calc(88svh - var(--hh)), 860px); padding-block: clamp(48px, 8vh, 104px); }
.page-hero::before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: calc(100% + (100cqw - 100%) / 2 - 31cqw); right: calc((100% - 100cqw) / 2); background: var(--page-accent); transform-origin: right; }
.page-hero::after { left: calc(100% + (100cqw - 100%) / 2 - 31cqw); right: calc((100% - 100cqw) / 2); z-index: -1; }
.page-hero > div { display: flex; flex-direction: column; align-items: flex-start; }
.page-hero .back-link { margin-bottom: 12px; }
.page-hero h1 { margin-top: 20px; font-size: clamp(2.375rem, 4.4vw, 4.25rem); line-height: 1.02; letter-spacing: -.038em; font-weight: 620; max-width: 16em; overflow-wrap: anywhere; }
.page-hero .hero-lead { margin-top: 28px; max-width: 34em; font-size: clamp(1.1875rem, 1.6vw, 1.5rem); line-height: 1.42; letter-spacing: -.008em; }
.page-hero .hero-text { margin-top: 18px; max-width: 36em; color: var(--paper-2); }
.page-hero .actions { margin-top: 36px; }
.hero-mail { display: inline-flex; align-items: center; min-height: 44px; padding-inline: 4px; font-weight: 600; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 6px; text-decoration-color: var(--sec, var(--page-accent)); }
:is(.pl .pl-on, .contact-section) .hero-mail { text-decoration-color: currentColor; }
.page-hero .page-hero-image, .page-hero .print { justify-self: end; width: min(100%, 520px); }
.section { padding-block: var(--section-space); }
.section + .section:not(.section-tinted) { padding-top: 0; }
.calm-heading, .section-heading { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.calm-heading h2, .section-heading h2, .service-situations-heading h2, .formats-block h2 { font-size: clamp(1.875rem, 3.2vw, 3rem); line-height: 1.04; letter-spacing: -.032em; font-weight: 600; max-width: 16em; }
.calm-heading p, .section-heading p { color: var(--muted); max-width: 36em; }
.section-tinted { position: relative; background: var(--paper); color: var(--ink); --route-bg: var(--paper); }
.section-tinted::before { content: ""; position: absolute; inset: 0; background: var(--grain); opacity: .12; mix-blend-mode: multiply; pointer-events: none; }
.section-tinted > .shell { position: relative; }
.section-tinted .utility, .section-tinted .utility.accent { color: var(--muted-paper); }
.section-tinted .calm-heading p, .section-tinted .section-heading p, .section-tinted p { color: #2e2d2a; }
.section-tinted .text-link, .section-tinted .plain-link { text-decoration-color: var(--ink); }
.section-tinted .button-link { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.section-tinted .button-link:hover { background: var(--page-accent); color: var(--ink); border-color: var(--page-accent); }
.section-tinted :focus-visible { outline-color: var(--ink); }
.detail-rows { border-top: 1px solid var(--line); }
.detail-rows > article { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 8px 20px; padding: 26px 0 28px; border-bottom: 1px solid var(--line); }
.detail-rows h3 { font-size: clamp(1.25rem, 1.7vw, 1.5625rem); line-height: 1.15; letter-spacing: -.018em; font-weight: 600; }
.detail-rows p { margin-top: 10px; color: var(--muted); max-width: 40em; }
.section-tinted .detail-rows, .section-tinted .detail-rows > article { border-color: rgba(7, 7, 8, .18); }
.section-tinted .row-number { color: var(--ink); }
.service-situations, .service-intro, .faq-inline, .format-experience, .content-section { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(32px, 5vw, 96px); align-items: start; }
.service-situations-heading, .service-intro > .section-heading, .faq-inline > .calm-heading, .content-section > .section-heading { position: sticky; top: calc(var(--hh) + 40px); display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.experience-block { align-self: start; position: sticky; top: calc(var(--hh) + 40px); display: flex; flex-direction: column; align-items: flex-start; gap: 16px; border-top: 2px solid var(--paper); padding-top: 18px; }
.experience-block p { font-size: 1.0625rem; line-height: 1.55; color: var(--paper-2); }
.accent-border { text-decoration-color: var(--page-accent); }
.faq-list { border-top: 1px solid var(--line); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 64px; padding: 16px 0; font-size: 1.1875rem; font-weight: 600; line-height: 1.3; letter-spacing: -.01em; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; flex: none; display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid var(--line-strong); font-weight: 400; font-size: 1.25rem; transition: transform .3s var(--ease), background-color .3s, color .3s; }
.faq-list details[open] summary::after { transform: rotate(45deg); background: var(--page-accent); color: var(--ink); border-color: var(--page-accent); }
.faq-list summary:hover::after { border-color: var(--paper); }
.faq-list details p { padding: 0 56px 26px 0; color: var(--paper-2); max-width: 44em; }
.contact-section { position: relative; isolation: isolate; color: var(--ink); padding-block: clamp(80px, 9vw, 144px); }
.contact-section::before { content: ""; position: absolute; z-index: -2; top: 0; bottom: 0; left: calc((100% - 100cqw) / 2); right: calc((100% - 100cqw) / 2); background: var(--page-accent); }
.contact-section::after { left: calc((100% - 100cqw) / 2); right: calc((100% - 100cqw) / 2); z-index: -1; }
.contact-section .utility, .contact-section .utility.accent { color: var(--ink); }
.contact-section .utility.accent::before { background: var(--ink); }
.contact-layout { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(28px, 5vw, 96px); align-items: end; margin-top: 24px; }
.contact-layout h2 { font-size: clamp(2.125rem, 4.4vw, 4.25rem); line-height: 1; letter-spacing: -.04em; font-weight: 620; max-width: 14em; }
.contact-layout p { font-size: 1.125rem; max-width: 30em; }
.contact-first-step { margin-top: 18px; max-width: 32em; font: italic 400 clamp(1.25rem, 1.7vw, 1.5625rem)/1.3 var(--serif); letter-spacing: -.01em; }
.contact-first-step a { color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.contact-links, .booking-contact-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; margin-top: 18px; }
.contact-layout .contact-answer { margin-top: 18px; font-size: clamp(1.125rem, 1.4vw, 1.3125rem); }
.contact-layout .contact-step { margin-top: 6px; font-size: clamp(1.125rem, 1.4vw, 1.3125rem); }
.contact-layout > div:not(.contact-head) > p + .contact-step,
.contact-layout p:not(.contact-answer) + .contact-step { margin-top: 12px; font-size: 1.125rem; }
.contact-tools[hidden], .contact-tools [hidden] { display: none; }
.contact-section .email-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: clamp(1.375rem, 2.4vw, 2.125rem); font-weight: 620; letter-spacing: -.025em; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 7px; overflow-wrap: anywhere; }
.contact-section .email-link:hover { text-decoration-color: var(--paper); }
.contact-section .button-link { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.contact-section .button-link:hover { background: var(--paper); color: var(--ink); border-color: var(--paper); }
.crumb { display: flex; flex-wrap: wrap; align-items: center; gap: 0 10px; font-size: 0.8125rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 600; color: var(--muted); }
.crumb a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; color: var(--muted); }
.crumb a:hover { color: var(--paper); }
.crumb a:last-child:not(:first-child) { color: var(--paper-2); }
.crumb-step { display: inline-flex; align-items: center; gap: 10px; }
.crumb-sep { color: var(--muted); }
.crumb a.back-link { margin-bottom: 0; color: var(--paper-2); }
.crumb a.back-link [aria-hidden] { display: none; }
.coaching-route > li { padding-top: 40px; padding-right: clamp(24px, 4vw, 64px); font-size: inherit; font-weight: 400; }
.coaching-route > li::before { width: 18px; height: 18px; top: -1px; }
.coaching-route > li:last-child::before { border-color: var(--ink); }
.coaching-route h3 { font-size: clamp(1.375rem, 2vw, 1.75rem); line-height: 1.1; letter-spacing: -.022em; font-weight: 600; max-width: 12em; }
.section-tinted .coaching-route p { margin-top: 12px; font-size: 1.03125rem; line-height: 1.55; color: #2e2d2a; max-width: 24em; }
@media (max-width: 51.25em) {
.coaching-route > li { padding: 0 0 36px 40px; }
.coaching-route > li:last-child { padding-bottom: 0; }
.coaching-route > li::before { top: 0; }
.coaching-route > li:last-child::after { content: ""; position: absolute; left: 4px; top: 18px; bottom: 0; width: 10px; background: var(--paper); }
}
.svc-hero .crumb, .cf-hero .crumb { margin: -10px 0 10px; }
.section.svc-spread { padding-block: clamp(80px, 8vw, 128px); }
.section.svc-spread + .section:not(.section-tinted) { padding-top: clamp(72px, 7vw, 112px); }
.svc-spread .utility.accent::before { outline: 1px solid var(--ink); outline-offset: -1px; }
.svc-spread .engagement-process > .section-heading h2,
.svc-spread .formats-block h2 { font-size: clamp(2.5rem, 5vw, 4.75rem); line-height: .98; letter-spacing: -.04em; font-weight: 620; max-width: 11em; }
.svc-route > li { position: relative; padding-right: clamp(20px, 2.6vw, 44px); display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; align-content: start; }
.svc-route h3 { margin-top: 26px; font-size: clamp(1.25rem, 1.65vw, 1.5rem); line-height: 1.16; letter-spacing: -.018em; font-weight: 600; max-width: 16em; }
.svc-route p { margin-top: 12px; font-size: 1rem; line-height: 1.5; max-width: 22em; }
.svc-spread .experience-block p { color: #2e2d2a; }
:is(.svc-spread, .svc-formats, .svc-practice) .experience-block .text-link { display: block; min-height: 44px; padding: 10px 0; line-height: 1.5; text-wrap: balance; }
@media (max-width: 51.25em) {
.svc-route > li { display: block; padding: 0 0 36px 60px; }
.svc-route > li:not(:last-child)::after { content: ""; position: absolute; left: 19px; top: 40px; bottom: 0; width: 2px; background: var(--ink); transform-origin: top; }
.svc-route > li:last-child { padding-bottom: 0; }
.svc-route h3 { margin-top: 8px; }
}
@supports (animation-timeline: view()) {
@media (prefers-reduced-motion: no-preference) {
@media (max-width: 51.25em) {
.svc-route > li:not(:last-child)::after { animation: svc-rule-y linear both; animation-timeline: view(); animation-range: cover 6vh cover 40vh; }
}
}
}
@media (max-width: 64em) {
.experience-block { position: static; }
}
@media (max-width: 51.25em) {
.mark { width: 24px; height: 24px; }
.index > summary, .nav-contact { padding: 0 12px; font-size: 0.875rem; }
.actions { margin-top: 24px; }
.actions .button-link { flex: 1 1 auto; }
.cover-art img { aspect-ratio: 4 / 4.4; object-position: 50% 12%; }
.page-hero { grid-template-columns: 1fr; min-height: 0; padding-block: 32px 0; gap: 40px; }
.page-hero::before, .page-hero::after { top: auto; left: calc(-1 * var(--gutter)); right: calc(-1 * var(--gutter)); height: 220px; }
.page-hero .page-hero-image, .page-hero .print { justify-self: stretch; width: auto; margin: 0 0 40px 12%; }
.page-hero .actions .button-link { flex: 1 1 auto; }
.service-situations, .service-intro, .faq-inline, .format-experience, .content-section, .contact-layout { grid-template-columns: 1fr; gap: 28px; }
.service-situations-heading, .service-intro > .section-heading, .faq-inline > .calm-heading, .content-section > .section-heading { position: static; }
.detail-rows > article { grid-template-columns: 44px minmax(0, 1fr); gap: 6px 14px; }
.faq-list details p { padding-right: 0; }
}
@media (max-width: 23.375em) {
.index > summary, .nav-contact { padding: 0 10px; }
}
@supports (animation-timeline: view()) {
@media (prefers-reduced-motion: no-preference) {
.adv-ring .seg { animation: draw linear both; animation-timeline: --ring; animation-range: cover calc(4vh + (var(--i) - 1) * 3vh) cover calc(20vh + (var(--i) - 1) * 3vh); }
}
}
.chapter-head,
.service-situations-heading,
.service-intro > .section-heading,
.faq-inline > .calm-heading,
.content-section > .section-heading,
.experience-block,
.aie-split-head,
.cf-working-head,
.notes-heading { position: static; }
.section-tinted { background: var(--ink); color: var(--paper); --route-bg: var(--ink); }
.section-tinted::before { content: none; }
.section-tinted .utility { color: var(--muted); }
.section-tinted .utility.accent { color: var(--paper-2); }
.section-tinted p, .section-tinted .large-prose, .section-tinted .calm-heading p, .section-tinted .section-heading p { color: var(--paper-2); }
.section-tinted .detail-rows, .section-tinted .detail-rows > article { border-color: var(--line); }
.section-tinted .row-number { color: var(--page-accent); }
.section-tinted .text-link, .section-tinted .plain-link { text-decoration-color: var(--page-accent); }
.section-tinted .button-link { background: var(--paper); color: var(--ink); border-color: var(--paper); }
.section-tinted :focus-visible { outline-color: var(--paper); }
.page-hero .editorial-image img, .page-hero .print img { rotate: -1.6deg; transition: rotate .6s var(--ease); }
.page-hero .editorial-image:hover img, .page-hero .print:hover img { rotate: 0deg; }
.page-hero .utility.accent { align-self: flex-start; padding: 6px 10px 5px; background: var(--paper); color: var(--ink); rotate: -2deg; box-shadow: 3px 3px 0 var(--page-accent); }
.page-hero .utility.accent::before { background: var(--page-accent); }
.detail-rows:not(.process-rows), .reason-list, .aie-fit-list {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: clamp(14px, 1.6vw, 22px);
  list-style: none; padding: 0; margin-left: 0; border-top: 0;
}
.detail-rows:not(.process-rows) > article, .reason-list > li, .aie-fit-list > li {
  display: flex; flex-direction: column; gap: 12px; padding: clamp(20px, 2vw, 28px) clamp(20px, 2vw, 28px) clamp(26px, 2.6vw, 34px);
  background: var(--page-accent); color: var(--ink); border: 0; rotate: -1deg;
}
.detail-rows:not(.process-rows) > article:nth-child(2n), .reason-list > li:nth-child(2n), .aie-fit-list > li:nth-child(2n) { rotate: .8deg; translate: 0 8px; }
.detail-rows:not(.process-rows) > article:nth-child(3n), .reason-list > li:nth-child(3n), .aie-fit-list > li:nth-child(3n) { rotate: -.4deg; }
.detail-rows:not(.process-rows) .row-number, .reason-list .reason-n { font: italic 400 2.5rem/.9 var(--serif); color: var(--ink); padding: 0; }
.detail-rows:not(.process-rows) h3, .reason-list h3, .aie-fit-list h3 { color: var(--ink); max-width: none; }
.detail-rows:not(.process-rows) p, .reason-list p, .aie-fit-list p { margin-top: 8px; color: rgba(7, 7, 8, .8); max-width: none; }
.svc-route::before,
.route.coaching-route::before,
.svc-route > li::before,
.route.coaching-route > li::before,
.svc-route > li::after,
.route.coaching-route > li::after { content: none; display: none; }
.svc-route > li, .route.coaching-route > li {
  display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 26px; background: var(--paper); color: var(--ink);
  box-shadow: 5px 5px 0 var(--page-accent); rotate: .7deg; font-weight: 400;
}
.svc-route > li:nth-child(2n), .route.coaching-route > li:nth-child(2n) { rotate: -.9deg; translate: 0 10px; }
.svc-route h3, .route.coaching-route h3 { color: var(--ink); }
.svc-route p, .route.coaching-route p { color: rgba(7, 7, 8, .78); }
.svc-spread .experience-block p, .section-tinted .experience-block p { color: var(--paper-2); }
section .format-list > article p,
section .svc-route > li p,
.svc-formats .format-list > article:only-child p { color: rgba(7, 7, 8, .8); }
.format-note { grid-column: 1 / -1; margin-top: 24px; font-size: 1.0625rem; color: var(--paper-2); }
.section.offer-section { padding-block: 0; margin-top: clamp(72px, 8vw, 120px); display: grid; gap: clamp(28px, 3vw, 44px); }
.offer-section .section-heading { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.section.offer-note { padding-block: 0; margin-top: clamp(64px, 7vw, 104px); }
.offer-note .experience-block { max-width: 46em; border-top: 2px solid var(--page-accent); padding-top: 18px; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.offer-note .experience-block p { font-size: clamp(1.1875rem, 1.6vw, 1.4375rem); line-height: 1.45; color: var(--paper); }
.offer-section + .contact-section, .offer-note + .contact-section { margin-top: clamp(64px, 8vw, 120px); }
.offer-section .faq-list { max-width: 52em; }
.wd-list .service-row p, .wd-list .service-row .caption,
.detail-rows:not(.process-rows) p, .reason-list p, .about-route p { color: var(--ink); }
.svc-route > li:last-child { padding-bottom: 26px; }
p .text-link, li .text-link { display: inline; min-height: 0; padding-block: 10px; margin-block: -10px; }
p .text-link::after { content: none; }
@media (prefers-reduced-motion: reduce) {
.page-hero .editorial-image img, .page-hero .print img, .wd-list .service-row { transition: none; }
}
@media (max-width: 51.25em) {
.page-hero .utility.accent { rotate: -1.5deg; }
.detail-rows:not(.process-rows) > article:nth-child(2n),
  .reason-list > li:nth-child(2n),
  .aie-fit-list > li:nth-child(2n),
  .svc-route > li:nth-child(2n),
  .route.coaching-route > li:nth-child(2n),
  .about-route .route > li:nth-child(2),
  .about-route .route > li:nth-child(4) { translate: none; }
}
.ex-n::before { content: attr(data-n); }
.pl .page-hero::after, .pl .contact-section::after, .pl .back-page-field::after { content: none; }
.pl-sec { position: relative; isolation: isolate; }
.pl-field { position: absolute; z-index: -1; top: 0; bottom: 0; left: var(--bleed); width: 100cqw; background: var(--plane); pointer-events: none; }
.pl-fold > .pl-f-cut { bottom: 50%; background: var(--ink); clip-path: polygon(0 0, 100% 0, 0 100%); }
.pl-fold > .pl-f-front { background: var(--plane); clip-path: polygon(0 50%, 100% 0, var(--fx) var(--fy)); }
.pl-fold > .pl-f-back { background: var(--flap); clip-path: polygon(0 50%, 100% 0, var(--ox) var(--oy)); }
.pl-fold.pl-r { left: auto; right: 0; scale: -1 1; }
.pl-fold.pl-join { width: 69%; --fx: 1.33%; --fy: 49.34%; --ox: 2.65%; --oy: 98.67%; }
.pl-fold.pl-full { z-index: -1; left: var(--bleed); right: auto; width: 100cqw; }
.pl-cut.pl-l { --flat: polygon(0 100%, 100% 100%, 0 100%); clip-path: polygon(0 0, 100% 100%, 0 100%); }
.pl-bend > i { position: absolute; top: 0; left: 0; width: 100%; height: 138%; background: var(--flap); border-bottom-right-radius: 100% 100%; transform-origin: 0 0; }
.pl-bend::after { content: ""; position: absolute; inset: 0; background: var(--ink); border-bottom-right-radius: 100% 100%; transform-origin: 0 0; }
.pl-bend.pl-r { left: auto; right: 0; scale: -1 1; }
.pl-bend.pl-join { width: 69%; }
.pl-bend.pl-full { z-index: -1; left: var(--bleed); right: auto; width: 100cqw; }
.pl-edge > i { flex: var(--g, 1) 1 0; background: var(--c); transform-origin: 50% 0; }
.pl :is(.offer-note, .offer-section, .cv-phase, .credibility-strip).pl-ink + .pl-sec.pl-sec.pl-on { margin-top: clamp(64px, 7vw, 104px); }
.pl section.section:has(> .pl-join) { padding-top: 0; }
.pl .pl-sec.pl-close.contact-section { padding-top: calc(var(--cut) * 2 + clamp(36px, 4vw, 64px)); }
.pl .pl-on { --page-accent: var(--ink); --live: var(--ink); --muted: var(--ink); --paper-2: var(--ink); --line: rgba(7, 7, 8, .24); --line-strong: rgba(7, 7, 8, .6); color: var(--ink); }
.pl .pl-on :is(h2, h3, h4, p, li, dt, dd, strong, time, blockquote, .utility, .caption, .record-period, .stop-proof, .cv-period, .cv-org, .a-title, a:not(.button-link)) { color: var(--ink); }
.pl .pl-on :is(.text-link, .plain-link, .a-title) { text-decoration-color: var(--ink); }
.pl .pl-on :focus-visible { outline-color: var(--ink); }
.pl .pl-on .button-link { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.pl .pl-on .button-link:hover { background: var(--paper); color: var(--ink); border-color: var(--paper); }
.pl .pl-on :is(.service-situations-heading, .coaching-reasons-head, .formats-block, .engagement-process > .section-heading, .wd-group-head, .about-record-head, .coaching-spread-title, .offer-section > .section-heading) h2 {
  font-size: clamp(2.125rem, 4.8vw, 4.5rem); line-height: .98; letter-spacing: -.042em; font-weight: 630; max-width: 12em;
}
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .aie-fit-list > li, .about-route .route > li, .wd-list .service-row) {
  --pad: clamp(22px, 2.2vw, 32px); --muted: rgba(242, 240, 233, .66); --paper-2: rgba(242, 240, 233, .86); --line: rgba(242, 240, 233, .15); --line-strong: rgba(242, 240, 233, .45);
  position: relative; rotate: none; translate: none; border: 0; box-shadow: none; background: var(--ink); color: var(--paper);
  padding: clamp(24px, 2.4vw, 32px) var(--pad) clamp(30px, 3vw, 42px);
}
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .aie-fit-list > li, .about-route .route > li, .wd-list .service-row) :is(h3, h4, strong, .record-period, .stop-proof, .service-row-arrow) { color: var(--paper); }
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .aie-fit-list > li, .about-route .route > li, .wd-list .service-row) :is(p, li, .caption) { color: var(--paper-2); }
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .aie-fit-list > li, .about-route .route > li, .wd-list .service-row):focus-visible { outline: 3px solid var(--ink); outline-offset: 4px; }
.pl-company .pl-on :is(.detail-rows:not(.process-rows) > article, .aie-fit-list > li, .about-route .route > li, .wd-list .service-row)::after {
  content: ""; position: absolute; right: -1px; bottom: -1px; width: clamp(22px, 2.4vw, 34px); height: clamp(22px, 2.4vw, 34px); background: var(--plane); clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.pl .pl-on :is(.detail-rows:not(.process-rows), .reason-list, .aie-fit-list, .about-route .route) { gap: clamp(20px, 2.2vw, 32px); }
.pl .pl-on :is(.detail-rows:not(.process-rows), .reason-list, .about-route .route):has(:is(.row-number, .reason-n, .stop-no)) { margin-top: calc(var(--coin) / 2 + 20px); row-gap: calc(var(--coin) / 2 + 36px); }
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .about-route .route > li):has(> :is(.row-number, .reason-n, .stop-no)) { padding-top: calc(var(--coin) / 2 + 26px); }
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .about-route .route > li):has(> :is(.row-number, .reason-n, .stop-no))::before {
  content: ""; display: block; position: absolute; left: calc(var(--pad) - 9px); top: calc(var(--coin) / -2 - 9px); width: calc(var(--coin) + 18px); height: calc(var(--coin) + 18px);
  border-radius: 50%; background: var(--plane); transform: none; animation: none;
}
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .about-route .route > li) > :is(.row-number, .reason-n, .stop-no) {
  --from: translateX(calc(var(--coin) * -1.2)) rotate(-145deg);
  position: absolute; z-index: 1; left: var(--pad); top: calc(var(--coin) / -2); isolation: isolate; display: grid; place-items: center; width: var(--coin); height: var(--coin); margin: 0; padding: 0 .06em .06em 0;
  color: var(--ink); font: italic 400 calc(var(--coin) * .44)/1 var(--serif); letter-spacing: -.02em; view-timeline: --pl-coin block;
}
.pl .pl-on :is(.row-number, .reason-n, .stop-no)::before { content: ""; position: absolute; z-index: -1; inset: 0; border-radius: 50%; background: var(--k, var(--k1)); }
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .about-route .route > li):nth-child(3n + 1) { --k: var(--k1); }
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .about-route .route > li):nth-child(3n + 2) { --k: var(--k2); }
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .about-route .route > li):nth-child(3n) { --k: var(--k3); }
@media (min-width: 51.3125em) {
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .aie-fit-list > li, .about-route .route > li):nth-child(3n + 2) { translate: 0 clamp(0px, 2.4vw, 36px); }
.pl .pl-on :is(.detail-rows:not(.process-rows) > article, .reason-list > li, .aie-fit-list > li, .about-route .route > li):nth-child(3n) { translate: 0 clamp(0px, .9vw, 14px); }
}
.pl .pl-on:not(.offer-note) .experience-block {
  --k: clamp(26px, 2.8vw, 42px); --muted: rgba(242, 240, 233, .66); --paper-2: rgba(242, 240, 233, .86);
  gap: 16px; padding: clamp(26px, 2.6vw, 38px) clamp(22px, 2.2vw, 32px) clamp(24px, 2.4vw, 34px); border-top: 0; background: var(--ink); color: var(--paper);
}
.pl-company .pl-on:not(.offer-note) .experience-block { clip-path: polygon(var(--k) 0, 100% 0, 100% 100%, 0 100%, 0 var(--k)); }
.pl .pl-on:not(.offer-note) .experience-block :is(p, .utility, a:not(.button-link)) { color: var(--paper-2); }
.pl .pl-on:not(.offer-note) .experience-block .utility.accent { padding-left: calc(var(--k) * .4); }
.pl .pl-on:not(.offer-note) .experience-block .utility.accent::before { background: var(--plane); }
.pl .pl-on:not(.offer-note) .experience-block .text-link { color: var(--paper); text-decoration-color: var(--plane); }
.pl .pl-on:not(.offer-note) .experience-block :focus-visible { outline-color: var(--paper); }
.pl .pl-on.offer-note .experience-block { border-top: 3px solid var(--ink); max-width: 44em; }
.pl .pl-on.offer-note .experience-block p { font-size: clamp(1.375rem, 2.2vw, 2rem); line-height: 1.3; letter-spacing: -.016em; }
@media (max-width: 35em) {
.pl .pl-on.offer-note .experience-block p { font-size: 1.1875rem; line-height: 1.45; letter-spacing: 0; }
}
.pl :is(.svc-route, .route.coaching-route) {
  position: relative; isolation: isolate; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); grid-template-columns: none; grid-template-rows: none;
  gap: clamp(28px, 3vw, 48px) clamp(20px, 2.4vw, 40px); margin-top: clamp(44px, 5vw, 80px); padding: 0; list-style: none; view-timeline: --pl-route block;
}
.pl :is(.svc-route, .route.coaching-route)::before {
  --from: translateX(-30%);
  content: ""; display: block; position: absolute; z-index: -1; top: 0; bottom: auto; left: var(--bleed); right: calc(var(--bleed) + 3vw); width: auto;
  height: calc(var(--disc) + clamp(24px, 2.4vw, 32px)); background: var(--band); border: 0; border-radius: 0; transform: none; animation: none;
  clip-path: polygon(0 0, 100% 0, calc(100% - var(--disc) * .75) 100%, 0 100%);
}
.pl :is(.svc-route, .route.coaching-route) > li { display: block; grid-row: auto; padding: 0; background: none; color: var(--paper); box-shadow: none; rotate: none; translate: none; font-weight: 400; }
.pl :is(.svc-route, .route.coaching-route) > li::before, .pl :is(.svc-route, .route.coaching-route) > li::after { content: none; display: none; }
.pl :is(.svc-route, .route.coaching-route) > li :is(h3, .svc-nw) { margin-top: clamp(24px, 2.6vw, 36px); color: var(--paper); font-size: clamp(1.25rem, 1.65vw, 1.5rem); line-height: 1.16; max-width: 14em; }
.pl :is(.svc-route, .route.coaching-route) > li p { margin-top: 12px; color: var(--paper-2); font-size: 1.03125rem; line-height: 1.55; max-width: 24em; }
.pl .pl-on :is(.svc-route, .route.coaching-route) > li :is(h3, p, .svc-nw) { color: var(--ink); }
.pl-count svg { flex: none; width: var(--disc); height: var(--disc); overflow: visible; }
.pl-count b { font: italic 400 calc(var(--disc) * .52)/1 var(--serif); letter-spacing: -.03em; color: var(--ink); }
.pl .pl-on .pl-count b { color: var(--paper); }
.pl-count.pl-num b { font-size: calc(var(--disc) * .66); }
.pl .faq-inline > .calm-heading { position: relative; top: 0; }
.pl-ask svg { display: block; width: 100%; height: auto; overflow: visible; }
@media (max-width: 68.75em) {
.pl :is(.svc-route, .route.coaching-route) { grid-auto-flow: row; grid-template-columns: minmax(0, 1fr); gap: clamp(36px, 6vw, 56px); }
.pl :is(.svc-route, .route.coaching-route)::before { display: none; }
.pl :is(.svc-route, .route.coaching-route) > li :is(h3, .svc-nw) { margin-top: 20px; max-width: 22em; }
}
@media (max-width: 51.25em) {
.pl-fold.pl-join { width: 100%; --fx: 1.42%; --fy: 49.29%; --ox: 2.84%; --oy: 98.58%; }
.pl-bend.pl-join { width: 100%; }
.pl :is(section, div).pl-sec.pl-sec.pl-on { padding-top: calc(var(--cut) * 2 + 36px); padding-bottom: calc(var(--cut) + 56px); }
.pl .pl-on + :is(section, div).pl-sec.pl-sec:not(.pl-on, .pl-close) { padding-top: 56px; }
.pl .pl-sec.pl-close.contact-section { padding-top: calc(var(--cut) * 2 + 32px); }
.pl .pl-on :is(.detail-rows:not(.process-rows), .reason-list, .about-route .route):has(:is(.row-number, .reason-n, .stop-no)) { grid-template-columns: minmax(0, 1fr); row-gap: calc(var(--coin) / 2 + 30px); }
.pl .pl-on :is(.detail-rows:not(.process-rows), .reason-list, .about-route .route) > * > :is(.row-number, .reason-n, .stop-no) { --from: translateX(-28px) rotate(-60deg); }
.pl .faq-inline > .calm-heading { padding-right: 76px; }
}
@media (max-width: 35em) {
.pl-fold.pl-join, .pl .back-page > .pl-fold.pl-full { --fx: .36%; --fy: 49.82%; --ox: .72%; --oy: 99.64%; }
.pl :is(section, div).pl-sec.pl-sec.pl-on { padding-top: calc(var(--cut) * 2 + 25px); padding-bottom: calc(var(--cut) + 33px); }
}
@supports (animation-timeline: view()) {
@media (prefers-reduced-motion: no-preference) {
.pl-fold > .pl-f-front { animation: pl-front linear both; animation-timeline: --pl-shoulder; animation-range: cover 0vh cover 22vh; }
.pl-fold > .pl-f-back { animation: pl-back linear both; animation-timeline: --pl-shoulder; animation-range: cover 18vh cover 44vh; }
.pl .pl-on :is(.row-number, .reason-n, .stop-no)::before { animation: pl-in linear both; animation-timeline: --pl-coin; animation-range: cover 0vh cover 38vh; transform-origin: 50% 50%; }
.pl :is(.svc-route, .route.coaching-route)::before { animation: pl-in linear both; animation-timeline: --pl-route; animation-range: cover 0vh cover 34vh; }
.pl-ask :is(path, .pl-qd) { animation: pl-in linear both; animation-timeline: --pl-ask; animation-range: cover 0vh cover 30vh; }
}
}
@media (prefers-reduced-motion: no-preference) {
.pl-fb .pl-fold > .pl-f-front { transition: clip-path .45s var(--ease); }
.pl-fb .pl-fold > .pl-f-back { transition: clip-path .6s var(--ease) .35s; }
.pl-fb .pl-fold.pl-pre > .pl-f-front { clip-path: polygon(0 50%, 100% 0, 0 0); }
.pl-fb .pl-fold.pl-pre > .pl-f-back { clip-path: polygon(0 50%, 100% 0, var(--fx) var(--fy)); }
.pl-fb .pl-bend.pl-pre::after { transform: scaleY(1.45); }
.pl-fb .pl-bend.pl-pre > i { transform: scaleY(.73); }
.pl-fb .pl-edge.pl-pre > i { transform: scaleY(0); }
.pl-fb :is(.row-number, .reason-n, .stop-no)::before, .pl-fb .pl-fill, .pl-fb .pl-count::before, .pl-fb .pl-ask :is(path, .pl-qd), .pl-fb .pl-pie > b::before,
  .pl-fb :is(.svc-route, .coaching-route)::before { transition: transform .9s var(--ease); }
.pl-fb .pl-pre:is(.row-number, .reason-n, .stop-no)::before, .pl-fb .pl-count.pl-pre :is(.pl-fill), .pl-fb .pl-count.pl-pre::before,
  .pl-fb .pl-ask.pl-pre :is(path, .pl-qd), .pl-fb .pl-clock.pl-pre .pl-pie > b::before, .pl-fb .pl-pre:is(.svc-route, .coaching-route)::before { transform: var(--from); }
}
.se-hero h1 { max-width: 15em; }
.se-jump { margin-top: clamp(24px, 3vw, 36px); padding-top: 10px; border-top: 1px solid var(--line-strong); font-size: 0.9375rem; line-height: 1.3; }
.se-jump-row { display: flex; flex-wrap: wrap; align-items: center; gap: 0 18px; margin: 0; padding: 0; list-style: none; }
.se-jump-pages { margin: 0 0 0 -6px; padding-left: 6px; overflow-x: clip; color: var(--muted); }
.se-jump-pages .se-jump-row { gap: 0; }
.se-jump-item { display: inline-flex; align-items: center; margin-left: -20px; }
.se-jump-dot { flex: none; width: 20px; text-align: center; }
.se-jump-label { margin-right: 8px; }
.se-jump-tag { flex: none; margin-right: 7px; padding: 2px 5px; border: 1.5px solid currentColor; font-size: 0.75rem; font-weight: 600; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; }
.se-jump-pages .se-jump-tag + a { margin-right: 0; }
.se-jump a { display: inline-flex; align-items: center; min-height: 44px; color: var(--paper); font-weight: 600; text-decoration: underline; text-decoration-color: var(--line-strong); text-decoration-thickness: 2px; text-underline-offset: 5px; }
.se-jump-pages a { margin-right: 20px; font-weight: 400; color: var(--paper-2); }
.se-jump a:hover { text-decoration-color: var(--page-accent); }
@media (min-width: 51.3125em) {
.se-jump { font-size: 0.875rem; }
}
.se-back { grid-column: 1 / -1; margin-top: clamp(28px, 3.4vw, 48px); font-size: 0.9375rem; line-height: 1.3; }
.section > .se-back { margin-top: 0; }
.se-back a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; color: var(--paper); text-decoration: underline; text-decoration-color: var(--line-strong); text-decoration-thickness: 2px; text-underline-offset: 5px; }
.se-back a:hover { text-decoration-color: var(--page-accent); }
@media print {
.se-jump, .se-back { display: none; }
}
@media (min-width: 105em) {
.se-jump-pages { width: max-content; }
}
.se-pov-hero-figure { justify-self: end; display: grid; place-items: center; width: min(100%, 440px); aspect-ratio: 4 / 5; margin: 0; background: var(--paper); outline: 1px solid rgba(7, 7, 8, .9); outline-offset: -1px; rotate: -1.6deg; }
.se-pov-hero-figure svg { display: block; width: auto; height: 84%; max-width: 88%; overflow: visible; }
.hero-sig-card { justify-self: end; display: grid; place-content: center; justify-items: center; gap: 28px; width: min(100%, 440px); aspect-ratio: 4 / 5; margin: 0; padding: 40px 34px; background: var(--paper); color: var(--ink); outline: 1px solid rgba(7, 7, 8, .9); outline-offset: -1px; rotate: -1.6deg; container-type: inline-size; }
.page-hero > .hero-sig-card { align-items: center; }
.se-puzzle-card .se-puzzle { max-width: 360px; }
.se-puzzle-card .se-puzzle-frame { stroke: rgba(7, 7, 8, .4); }
.se-stack-card .se-stack { max-width: 340px; }
.se-stack-card .se-stack-ground { stroke: var(--ink); }
.section.se-keeps { grid-template-columns: minmax(0, 8fr) minmax(0, 4fr); column-gap: clamp(28px, 4vw, 72px); align-items: start; }
.se-keeps > .section-heading { grid-column: 1 / -1; }
.se-keeps > .se-break-photo { margin: 0; }
@media (min-width: 51.3125em) {
.se-keeps > .se-checks { grid-column: 1; }
.se-keeps > .se-break-photo { grid-column: 2; grid-row: 2 / span 2; }
}
.se-design-grid > .se-design-photo { margin: 0; }
.hero-sig-card > .ex { margin: 0; }
.se-lede { margin-top: 6px; font-size: clamp(1.125rem, 1.4vw, 1.3125rem); line-height: 1.5; max-width: 40em; color: var(--paper-2); }
.section.se-split, .section.se-experience { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); column-gap: clamp(28px, 5vw, 96px); align-items: start; }
.se-split > .section-heading, .se-experience > .section-heading { grid-column: 1 / -1; }
.se-split > .se-prose, .se-experience > .se-experience-copy { grid-column: 2; }
.section.se-pair { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(48px, 6vw, 112px); align-items: start; }
.se-pair > div { display: flex; flex-direction: column; gap: clamp(22px, 2.4vw, 32px); }
.se-prose { font-size: clamp(1.125rem, 1.35vw, 1.3125rem); line-height: 1.6; max-width: 38em; color: var(--paper-2); }
.se-inline { font-weight: 600; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 5px; text-decoration-color: var(--page-accent); }
.pl .pl-on .se-lede, .pl .pl-on .se-prose { color: var(--ink); }
.pl .pl-on .se-inline { text-decoration-color: var(--ink); }
.se-sign-rows > article > div { display: flex; flex-direction: column; gap: 14px; height: 100%; }
.se-sign-rows > article p { margin-top: auto; }
.se-sign-link { display: inline-block; padding-block: 11px; font-weight: 600; line-height: 1.35; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 6px; }
.pl .pl-on .se-sign-rows .se-sign-link { color: var(--paper); text-decoration-color: var(--plane); }
.pl .pl-on .se-sign-rows .se-sign-link:focus-visible { outline-color: var(--paper); }
.se-sign-mail { align-self: flex-start; display: inline-flex; align-items: center; min-height: 44px; margin-top: -10px; font-size: 0.9375rem; color: rgba(7, 7, 8, .8); text-decoration: underline; text-underline-offset: 4px; }
.pl .pl-on .se-sign-rows .se-sign-mail { color: var(--paper-2); }
.pl .pl-on .se-sign-rows .se-sign-mail:hover { color: var(--paper); }
.pl .pl-on .se-sign-rows .se-sign-mail:focus-visible { outline-color: var(--paper); }
@media (min-width: 64.0625em) {
.detail-rows.se-sign-rows { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.section.se-puzzles { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(36px, 6vw, 112px); align-items: start; }
.se-puzzle { align-self: center; width: 100%; max-width: 480px; margin: 0; view-timeline: --se-puzzle block; }
.se-puzzle svg { display: block; width: 100%; height: auto; overflow: visible; }
.se-puzzle-frame { fill: none; stroke: rgba(242, 240, 233, .34); stroke-width: 2; stroke-dasharray: 5 9; }
.se-piece { fill: var(--c); stroke: var(--ink); stroke-width: 6; stroke-linejoin: round; transform-box: view-box; transform-origin: 50% 50%; }
.se-puzzle-hub { --from: scale(.2); fill: var(--paper); stroke: var(--ink); stroke-width: 6; transform-box: fill-box; transform-origin: 50% 50%; }
.se-puzzles-copy { display: flex; flex-direction: column; }
.se-puzzles-intro { margin-top: 26px; font-size: clamp(1.25rem, 1.6vw, 1.5rem); line-height: 1.4; color: var(--paper); max-width: 30em; }
.se-puzzle-list { list-style: none; margin: 26px 0 0; padding: 0; border-top: 1px solid var(--line-strong); }
.se-puzzle-list > li { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 18px; padding: 20px 0 22px; border-bottom: 1px solid var(--line-strong); }
.se-key { width: 38px; height: 38px; }
.se-key circle { fill: none; stroke: var(--line-strong); stroke-width: 1.5; }
.se-key path { fill: var(--c); }
.se-puzzle-list h3 { font-size: clamp(1.25rem, 1.7vw, 1.5rem); line-height: 1.15; letter-spacing: -.018em; font-weight: 620; }
.se-puzzle-list p { margin-top: 6px; font-size: 1.0625rem; line-height: 1.5; color: var(--paper-2); max-width: 36em; }
.se-puzzles-after { margin-top: 30px; font-size: 1.0625rem; line-height: 1.6; color: var(--paper-2); max-width: 38em; }
.se-credit { margin-top: 24px; padding-top: 14px; border-top: 1px solid var(--line); font-size: 0.9375rem; line-height: 1.5; color: var(--muted); max-width: 38em; }
.se-credit a { color: var(--paper); font-weight: 600; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; text-decoration-color: var(--page-accent); }
.pl .pl-on :is(.se-puzzles-intro, .se-puzzle-list p, .se-puzzles-after, .se-credit) { color: var(--ink); }
.se-stage-table { width: 100%; margin-top: clamp(28px, 3vw, 48px); border-collapse: collapse; text-align: left; }
.se-stage-table thead th { padding: 0 24px 14px 0; border-bottom: 2px solid currentColor; font-size: 0.8125rem; line-height: 1.3; letter-spacing: .14em; text-transform: uppercase; font-weight: 650; }
.se-stage-table tbody :is(th, td) { padding: 24px 24px 26px 0; border-bottom: 1px solid var(--line-strong); vertical-align: top; }
.se-stage-table tbody th { width: 25%; font-size: clamp(1.25rem, 1.7vw, 1.5625rem); line-height: 1.15; letter-spacing: -.02em; font-weight: 620; }
.se-stage-table tbody td:nth-child(2) { width: 44%; font-size: 1.0625rem; line-height: 1.5; }
.se-stage-table tbody td:last-child { padding-right: 0; }
.se-stage-n { display: block; margin-bottom: 10px; font: italic 400 1.375rem/1 var(--serif); letter-spacing: -.02em; }
.se-leaves { display: inline-block; padding: 12px 14px 13px; background: var(--ink); color: var(--paper); font-size: 1rem; font-weight: 560; line-height: 1.35; box-shadow: 5px 5px 0 var(--k1, var(--page-accent)); rotate: -.8deg; }
.se-stage-table tbody tr:nth-child(2n) .se-leaves { rotate: .7deg; box-shadow: 5px 5px 0 var(--k2, var(--page-accent)); }
.se-cell-label { display: none; }
.se-after-table { margin-top: 8px; }
.se-steps-write { margin-top: clamp(32px, 3.6vw, 52px); }
.se-groups { display: grid; gap: clamp(52px, 5.4vw, 88px); margin-top: clamp(12px, 1.6vw, 24px); }
.se-group { --g: var(--page-accent); display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(24px, 4vw, 72px); align-items: start; padding-top: 24px; border-top: 1px solid var(--line-strong); }
.se-group:nth-child(2) { --g: #4f79ff; }
.se-group:nth-child(3) { --g: #d5e800; }
.se-group:nth-child(4) { --g: #ff4f96; }
.se-group-head { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 12px 16px; align-items: center; }
.se-group-n { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--g); color: var(--ink); font: italic 400 1.75rem/1 var(--serif); }
.se-group-head h3 { font-size: clamp(1.5rem, 2.2vw, 2rem); line-height: 1.08; letter-spacing: -.026em; font-weight: 620; }
.se-group-head p { grid-column: 2; font-size: 1rem; line-height: 1.5; color: var(--paper-2); max-width: 30em; }
.se-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: clamp(18px, 2vw, 28px); align-items: start; }
@media (min-width: 51.3125em) and (max-width: 64em) {
.se-cards:has(> .se-card:nth-child(4):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.se-card { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 24px 26px 26px; background: var(--paper); color: var(--ink); box-shadow: 6px 6px 0 var(--g); rotate: -.5deg; }
.se-card:nth-child(2n) { rotate: .6deg; }
.se-card h4 { font-size: clamp(1.3125rem, 1.8vw, 1.625rem); line-height: 1.12; letter-spacing: -.02em; font-weight: 620; color: var(--ink); }
.se-card h4 a { color: var(--ink); text-decoration: underline; text-decoration-color: transparent; text-decoration-thickness: 2px; text-underline-offset: 5px; transition: text-decoration-color .25s; }
.se-card h4 a:hover, .se-card h4 a:focus-visible { text-decoration-color: var(--ink); }
.se-card :focus-visible { outline-color: var(--ink); }
.se-card p { color: var(--ink); }
.se-card-for { font-size: 0.9375rem; line-height: 1.45; color: rgba(7, 7, 8, .74); }
.se-card p.se-card-for { color: rgba(7, 7, 8, .74); }
.se-card-format { padding-left: 12px; border-left: 3px solid var(--g); font-size: 0.9375rem; line-height: 1.45; font-weight: 600; }
.se-card-learn { font-size: 1.03125rem; line-height: 1.5; }
.se-card .text-link { margin-top: auto; color: var(--ink); font-size: 0.9375rem; line-height: 1.35; text-decoration-color: var(--ink); }
.se-talks { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.se-talks li { font-size: 1rem; line-height: 1.45; color: var(--ink); }
.se-card-more { font-size: 0.9375rem; line-height: 1.45; }
.se-card-more a { color: var(--ink); font-weight: 600; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; text-decoration-color: var(--g); }
.se-card-fold { display: block; padding: 0; }
.se-card-fold > summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: minmax(0, 1fr) 32px; gap: 12px 16px; align-items: start; padding: 24px 26px 26px; }
.se-card-fold[open] > summary { padding-bottom: 0; }
.se-card-fold > summary::-webkit-details-marker { display: none; }
.se-card-fold > summary::before, .se-card-fold > summary::after { content: ""; grid-column: 2; grid-row: 1; transition: transform .3s var(--ease), background-color .3s; }
.se-card-fold > summary::after { width: 32px; height: 32px; border: 1px solid var(--ink); }
.se-card-fold > summary::before { z-index: 1; justify-self: center; width: 12px; height: 12px; margin-top: 10px; background: var(--ink); clip-path: polygon(44% 0, 56% 0, 56% 44%, 100% 44%, 100% 56%, 56% 56%, 56% 100%, 44% 100%, 44% 56%, 0 56%, 0 44%, 44% 44%); }
.se-card-fold[open] > summary::before, .se-card-fold[open] > summary::after { transform: rotate(45deg); }
.se-card-fold[open] > summary::after { background: var(--g); }
@media (forced-colors: active) {
.se-card-fold > summary::before { forced-color-adjust: none; background: CanvasText; }
}
.se-card-fold > summary > .se-card-format { grid-column: 1 / -1; }
.se-card-body { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 12px 26px 26px; }
.se-keep-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: clamp(28px, 4vw, 72px); }
.se-keep-list > li { --m: #45d2e9; display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 16px; padding: 18px 0 20px; border-top: 1px solid var(--line-strong); font-size: clamp(1.125rem, 1.5vw, 1.3125rem); line-height: 1.35; }
.se-keep-list > li::before { content: ""; width: 14px; height: 14px; margin-top: 6px; background: var(--m); clip-path: polygon(0 0, 100% 0, 100% 55%, 55% 100%, 0 100%); }
.se-keep-list > li:nth-child(4n + 2) { --m: #4f79ff; }
.se-keep-list > li:nth-child(4n + 3) { --m: #d5e800; }
.se-keep-list > li:nth-child(4n) { --m: #ff4f96; }
.pl .pl-on .se-keep-list > li { --m: var(--ink); }
.se-checks { margin-top: clamp(12px, 2.2vw, 32px); }
.se-checks h3 { margin: 0 0 clamp(14px, 1.6vw, 22px); font-size: clamp(1.5rem, 2.2vw, 2rem); line-height: 1.08; letter-spacing: -.026em; font-weight: 620; }
.se-experience-copy { font-size: clamp(1.0625rem, 1.3vw, 1.1875rem); line-height: 1.62; max-width: 40em; color: var(--paper-2); }
.se-experience-copy p:first-child { font-size: clamp(1.1875rem, 1.5vw, 1.375rem); line-height: 1.5; color: var(--paper); }
.pl .pl-on .se-experience-copy { color: var(--ink); }
.se-experience-body { grid-column: 1 / -1; }
.se-experience-links { margin-top: 1.1em; font-size: clamp(1.0625rem, 1.3vw, 1.1875rem); line-height: 1.62; color: var(--paper-2); }
.pl .pl-on .se-experience-links { color: var(--ink); }
@media (min-width: 51.3125em) {
.se-experience-body { display: contents; }
.se-experience-body > .se-experience-copy { grid-column: 2; grid-row: 2; }
.se-experience-links { grid-column: 1; grid-row: 2; margin-top: 0; max-width: 22em; }
}
.se-chain-section { --se-ground: var(--ink); --se-disc: var(--page-accent); }
.se-chain-section.pl-on { --se-ground: var(--plane); --se-disc: var(--ink); }
.se-chain { --dd: clamp(76px, 8vw, 124px); --cg: clamp(28px, 3.2vw, 48px); position: relative; list-style: none; margin: 0; padding: 0; display: grid; gap: var(--cg); max-width: 64em; }
.se-chain > li:not(:last-child)::before { content: ""; position: absolute; top: calc(var(--dd) / 2); left: calc(var(--dd) / 2 - 2px); width: 4px; height: calc(100% + var(--cg)); background: var(--se-disc); }
.se-chain > li { position: relative; display: grid; grid-template-columns: var(--dd) minmax(0, 1fr); gap: clamp(20px, 2.6vw, 44px); align-items: start; view-timeline: --se-link block; }
.se-disc { position: relative; z-index: 1; display: block; width: var(--dd); height: var(--dd); background: var(--se-ground); clip-path: circle(48% at 50% 50%); }
.se-disc-rim { fill: none; stroke: var(--se-disc); stroke-width: 3px; }
.se-disc-fill { fill: none; stroke: var(--se-disc); stroke-width: var(--w); }
.se-chain > li > div { padding-top: clamp(4px, 1vw, 14px); }
.se-chain-n { display: block; font: italic 400 1.375rem/1 var(--serif); letter-spacing: -.02em; }
.se-chain h3 { margin-top: 8px; font-size: clamp(1.5rem, 2.4vw, 2.25rem); line-height: 1.1; letter-spacing: -.024em; font-weight: 620; }
.se-chain p { margin-top: 10px; font-size: clamp(1.0625rem, 1.4vw, 1.25rem); line-height: 1.55; max-width: 38em; color: var(--paper-2); }
.pl .pl-on .se-chain p { color: var(--ink); }
.se-design-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(36px, 6vw, 112px); align-items: center; }
.se-stack { width: 100%; max-width: 440px; margin: 0; view-timeline: --se-stack block; }
.se-stack svg { display: block; width: 100%; height: auto; overflow: visible; }
.se-stack-ground { stroke: var(--line-strong); stroke-width: 3; }
.se-block { fill: var(--c); stroke: var(--ink); stroke-width: 4; stroke-linejoin: round; transform-box: fill-box; transform-origin: 50% 50%; }
.se-person { fill: var(--paper); stroke: var(--ink); stroke-width: 4; transform-box: fill-box; transform-origin: 50% 100%; }
.se-person-1 { --from: translate(-40px, -90px) scale(.5); fill: #45d2e9; }
.se-person-2 { --from: translate(0, -120px) scale(.5); fill: #d5e800; }
.se-person-3 { --from: translate(40px, -90px) scale(.5); fill: #ff4f96; }
.se-design-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line-strong); }
.se-design-list > li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 16px; padding: 18px 0 20px; border-bottom: 1px solid var(--line-strong); }
.se-swatch { display: block; width: 26px; height: 18px; margin-top: 4px; background: var(--c); clip-path: polygon(0 0, 100% 0, 100% 60%, 72% 100%, 0 100%); }
.se-design-list h3 { font-size: clamp(1.25rem, 1.7vw, 1.5rem); line-height: 1.15; letter-spacing: -.018em; font-weight: 620; }
.se-design-list p { margin-top: 6px; font-size: 1.0625rem; line-height: 1.5; color: var(--paper-2); max-width: 36em; }
.pl .pl-on .se-design-list p { color: var(--ink); }
.se-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px clamp(24px, 3vw, 48px); margin: 0; max-width: 62em; }
.se-facts > div { padding-top: 14px; border-top: 2px solid var(--page-accent); }
.se-facts dt { font-size: 0.8125rem; line-height: 1.3; letter-spacing: .14em; text-transform: uppercase; font-weight: 600; color: var(--muted); }
.se-facts dd { margin: 8px 0 0; font-size: 1.125rem; line-height: 1.45; color: var(--paper); }
.se-leading-learn { font-size: clamp(1.25rem, 1.7vw, 1.625rem); line-height: 1.4; letter-spacing: -.01em; max-width: 34em; color: var(--paper); }
.pl .pl-on .se-facts > div { border-top-color: var(--ink); }
.pl .pl-on :is(.se-facts dt, .se-facts dd, .se-leading-learn) { color: var(--ink); }
.se-remain-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: clamp(16px, 1.8vw, 24px); }
.se-remain-list > article { display: flex; flex-direction: column; gap: 10px; padding: 24px 24px 28px; background: var(--paper); color: var(--ink); box-shadow: 6px 6px 0 var(--ink); rotate: -.5deg; }
.se-remain-list > article:nth-child(2n) { rotate: .6deg; }
.se-remain-list h3 { font-size: clamp(1.25rem, 1.6vw, 1.4375rem); line-height: 1.15; color: var(--ink); }
.se-remain-list p { font-size: 1rem; line-height: 1.5; color: var(--ink); }
.se-remain-list p, .pl .pl-on .se-remain-list p { color: rgba(7, 7, 8, .8); }
.svc-faq .faq-inline .format-note { margin-top: 28px; }
.section.se-note + .section.svc-faq { padding-top: clamp(72px, 8vw, 120px); }
.section.offer-note + .section.svc-faq { padding-top: clamp(72px, 8vw, 120px); }
.se-note .experience-block .text-link { display: inline; padding-block: 10px; line-height: 1.5; }
@media (max-width: 64em) {
.detail-rows.se-sign-rows { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.se-group { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 51.25em) {
.detail-rows.se-sign-rows { grid-template-columns: minmax(0, 1fr); }
.section.se-puzzles, .section.se-split, .section.se-pair, .section.se-experience, .section.se-keeps, .se-design-grid { grid-template-columns: minmax(0, 1fr); }
.se-split > :is(.section-heading, .se-prose), .se-experience > :is(.section-heading, .se-experience-copy) { grid-column: 1 / -1; }
.se-puzzle { max-width: 300px; margin: 0; }
.se-stack { max-width: 300px; }
.se-pov-hero-figure { justify-self: stretch; width: auto; aspect-ratio: 3 / 2; margin: 0 0 40px 12%; }
.hero-sig-card { justify-self: stretch; width: auto; aspect-ratio: auto; margin: 0 0 40px 12%; padding: 28px 22px; gap: 20px; }
.se-stage-table, .se-stage-table tbody, .se-stage-table tr, .se-stage-table tbody th, .se-stage-table td { display: block; width: auto; }
.se-stage-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.se-stage-table tbody tr { padding: 22px 0 26px; border-bottom: 1px solid var(--line-strong); }
.se-stage-table tbody tr:first-child { border-top: 2px solid currentColor; }
.se-stage-table tbody :is(th, td) { padding: 0; border: 0; }
.se-stage-table tbody th, .se-stage-table tbody td:nth-child(2) { width: auto; }
.se-stage-table tbody td:nth-child(2) { margin-top: 10px; }
.se-cell-label { display: block; margin: 16px 0 10px; font-size: 0.75rem; line-height: 1.3; letter-spacing: .14em; text-transform: uppercase; font-weight: 650; }
.se-group-head { grid-template-columns: 44px minmax(0, 1fr); }
.se-group-n { width: 44px; height: 44px; font-size: 1.5rem; }
.se-group-head p { grid-column: 1 / -1; }
.se-card { padding: 22px 20px 24px; }
.se-card-fold { padding: 0; }
.se-card-fold > summary { padding: 22px 20px 24px; }
.se-card-body { padding: 12px 20px 24px; }
.se-keep-list { grid-template-columns: minmax(0, 1fr); }
.se-facts { grid-template-columns: minmax(0, 1fr); }
}
@supports (animation-timeline: view()) {
@media (prefers-reduced-motion: no-preference) {
.se-piece, .se-puzzle-hub { animation: se-in linear both; animation-timeline: --se-puzzle; animation-range: cover 0vh cover 30vh; }
.se-piece-2 { animation-range: cover 5vh cover 35vh; }
.se-piece-3 { animation-range: cover 10vh cover 40vh; }
.se-puzzle-hub { animation-range: cover 32vh cover 44vh; }
.se-disc-fill { animation: se-fill linear both; animation-timeline: --se-link; animation-range: cover 6vh cover 40vh; }
.se-block, .se-person { animation: se-in linear both; animation-timeline: --se-stack; animation-range: cover 0vh cover 16vh; }
.se-block-2 { animation-range: cover 5vh cover 21vh; }
.se-block-3 { animation-range: cover 10vh cover 26vh; }
.se-block-4 { animation-range: cover 15vh cover 31vh; }
.se-block-5 { animation-range: cover 20vh cover 36vh; }
.se-person { animation-range: cover 30vh cover 42vh; }
.se-person-2 { animation-range: cover 32vh cover 44vh; }
.se-person-3 { animation-range: cover 34vh cover 46vh; }
}
}
@media (prefers-reduced-motion: no-preference) {
.pl-fb :is(.se-piece, .se-puzzle-hub, .se-block, .se-person, .se-month-turn) { transition: transform .9s var(--ease); }
.pl-fb .se-disc-fill { transition: stroke-width .9s var(--ease); }
.pl-fb :is(.se-piece-2, .se-block-2, .se-chain > li:nth-child(2) .se-disc-fill, .se-month-2 .se-month-turn) { transition-delay: .12s; }
.pl-fb :is(.se-piece-3, .se-block-3, .se-chain > li:nth-child(3) .se-disc-fill, .se-month-3 .se-month-turn) { transition-delay: .24s; }
.pl-fb :is(.se-block-4, .se-chain > li:nth-child(4) .se-disc-fill, .se-month-4 .se-month-turn) { transition-delay: .36s; }
.pl-fb :is(.se-block-5, .se-chain > li:nth-child(5) .se-disc-fill) { transition-delay: .48s; }
.pl-fb :is(.se-puzzle-hub, .se-person) { transition-delay: .6s; }
.pl-fb [data-sig].pl-pre :is(.se-piece, .se-puzzle-hub, .se-block, .se-person, .se-month-turn) { transform: var(--from); }
.pl-fb [data-sig].pl-pre .se-disc-fill { stroke-width: var(--w0); }
}
@media print {
html:has(.se-programmes), body:has(.se-programmes) { color-scheme: light; background: none !important; }
body:has(.se-programmes) main > :is(.se-signs, .svc-faq) { display: none !important; }
body:has(.se-programmes) :is(.site-header, .site-footer, .skip, .crumb, .actions, .se-jump, .se-back, .se-print, .se-after-table, .page-hero-image, .hero-sig-card, .se-break-photo, .se-prog-head > .ex, .se-sign-mail, .se-owners, .se-key, .se-puzzles-after, .se-credit, .se-steps-write, .pl-edge, .pl-fold, .pl-field, .pl-straight, .pl-ribbon) { display: none !important; }
body:has(.se-programmes) main :is(section, .shell) { background: none !important; box-shadow: none !important; min-height: 0 !important; }
body:has(.se-programmes) main section::before, body:has(.se-programmes) main section::after { content: none; }
body:has(.se-programmes) main :is(h1, h2, h3, h4, p, li, a, span, dt, dd, .utility, .se-experience-copy) { color: #070708 !important; }
body:has(.se-programmes) main .pl-sec.pl-sec, body:has(.se-programmes) main .section { margin: 0 !important; padding-block: 14pt 6pt !important; }
body:has(.se-programmes) main .page-hero { display: block; min-height: 0; padding-block: 0 8pt !important; }
body:has(.se-programmes) main :is(.shell, .page-hero, .service-hero-copy) { padding-inline: 0 !important; margin-inline: 0 !important; }
body:has(.se-programmes) main h1 { max-width: none; font-size: 24pt !important; line-height: 1.12 !important; }
body:has(.se-programmes) main h2 { font-size: 17pt !important; line-height: 1.15 !important; }
body:has(.se-programmes) main :is(.hero-lead, p, li) { font-size: 10.5pt !important; line-height: 1.45 !important; }
body:has(.se-programmes) main .section.se-stages { display: block; }
body:has(.se-programmes) main .se-stage-table { display: table; width: 100%; margin-top: 8pt; }
body:has(.se-programmes) main .se-stage-table thead { display: table-header-group; position: static; width: auto; height: auto; overflow: visible; clip-path: none; white-space: normal; }
body:has(.se-programmes) main .se-stage-table tbody { display: table-row-group; }
body:has(.se-programmes) main .se-stage-table tr { display: table-row; padding: 0; border: 0; break-inside: avoid; }
body:has(.se-programmes) main .se-stage-table :is(th, td) { display: table-cell; margin: 0; padding: 5pt 10pt 6pt 0; border: 0; border-bottom: .5pt solid #070708; color: #070708 !important; font-size: 9.5pt !important; line-height: 1.4; }
body:has(.se-programmes) main .se-stage-table thead th { font-size: 7.5pt !important; border-bottom-width: 1pt; }
body:has(.se-programmes) main .se-stage-table tbody th { width: 22%; font-size: 10.5pt !important; }
body:has(.se-programmes) main .se-stage-table tbody td:nth-child(2) { width: 46%; }
body:has(.se-programmes) main .se-stage-n { display: inline; margin: 0 5pt 0 0; font-size: 10.5pt; }
body:has(.se-programmes) main .se-leaves { display: inline; padding: 0; background: none; box-shadow: none !important; rotate: none; font-size: 9.5pt; font-weight: 600; }
body:has(.se-programmes) main .se-cell-label { display: none; }
body:has(.se-programmes) main .se-lede { font-size: 10.5pt !important; }
body:has(.se-programmes) main .section.se-puzzles { display: block; }
body:has(.se-programmes) main .se-puzzles-intro { margin-top: 6pt; max-width: none; }
body:has(.se-programmes) main .se-puzzle-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 14pt; margin-top: 8pt; padding-top: 6pt; border-top: 1pt solid #070708; }
body:has(.se-programmes) main .se-puzzle-list > li { display: block; padding: 0; border: 0; break-inside: avoid; }
body:has(.se-programmes) main .se-puzzle-list h3 { font-size: 11.5pt !important; }
body:has(.se-programmes) main .se-puzzle-list p { margin-top: 3pt; font-size: 10pt !important; }
body:has(.se-programmes) main .se-steps .section-heading { break-after: avoid; }
body:has(.se-programmes) main .se-steps .engagement-process .svc-route { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; gap: 8pt 18pt; margin-top: 8pt; }
body:has(.se-programmes) main .se-steps .engagement-process .svc-route::before, body:has(.se-programmes) main .se-steps .engagement-process .svc-route > li::after { content: none; }
body:has(.se-programmes) main .se-steps .engagement-process .svc-route > li { display: block; grid-row: auto; padding: 5pt 0 0; border-top: .5pt solid #070708; break-inside: avoid; }
body:has(.se-programmes) main .se-steps .engagement-process .svc-route .pl-count { display: inline; height: auto; }
body:has(.se-programmes) main .se-steps .engagement-process .svc-route .pl-count b { font-size: 11pt; color: #070708; }
body:has(.se-programmes) main .se-steps .engagement-process .svc-route h3 { display: inline; margin: 0 0 0 5pt; max-width: none; font-size: 11.5pt !important; }
body:has(.se-programmes) main .se-steps .engagement-process .svc-route p { margin-top: 3pt; max-width: none; font-size: 10pt !important; }
body:has(.se-programmes) main .se-group { display: block; padding-top: 10pt; border-top: 1pt solid #070708; break-inside: auto; }
body:has(.se-programmes) main .se-group-head { margin-bottom: 8pt; break-after: avoid; break-inside: avoid; }
body:has(.se-programmes) main .se-group-head h3 { font-size: 13pt !important; }
body:has(.se-programmes) main .se-group-n { width: 26pt; height: 26pt; font-size: 15pt; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
body:has(.se-programmes) main .se-groups { display: block; }
body:has(.se-programmes) main .se-group + .se-group { margin-top: 14pt; }
body:has(.se-programmes) main .se-cards { display: block; orphans: 1; widows: 1; }
body:has(.se-programmes) main .se-card { display: inline-flex; vertical-align: top; width: calc(50% - 4pt); margin: 0 0 8pt; gap: 5pt; padding: 9pt 10pt; border: 1pt solid #070708; background: none; box-shadow: none; rotate: none; break-inside: avoid; }
body:has(.se-programmes) main .se-card:nth-child(odd) { margin-right: 8pt; }
body:has(.se-programmes) main .se-card h4 { font-size: 11.5pt !important; }
body:has(.se-programmes) main .se-card-fold { display: inline-block; }
body:has(.se-programmes) main .se-card-fold::details-content { content-visibility: visible; display: block; }
body:has(.se-programmes) main .se-card-fold > summary { display: block; padding: 0; }
body:has(.se-programmes) main .se-card-fold > summary::before, body:has(.se-programmes) main .se-card-fold > summary::after { content: none; }
body:has(.se-programmes) main .se-card-fold > summary > .se-card-format { display: block; margin-top: 5pt; }
body:has(.se-programmes) main .se-card-body { gap: 5pt; padding: 5pt 0 0; }
body:has(.se-programmes) main .section.se-programmes { display: block; }
body:has(.se-programmes) main .se-prog-head { break-after: avoid; break-inside: avoid; }
body:has(.se-programmes) main .se-group:first-child { break-before: avoid; }
body:has(.se-programmes) main .se-card :is(.se-card-for, .se-card-format, .se-card-more, .text-link) { font-size: 9.5pt !important; }
body:has(.se-programmes) main .section.se-keeps { display: block; }
body:has(.se-programmes) main .section-heading { break-after: avoid; break-inside: avoid; }
body:has(.se-programmes) main .se-keeps > .se-keep-list { break-inside: avoid; }
body:has(.se-programmes) main .se-keep-list > li { padding: 5pt 0; font-size: 10.5pt !important; break-inside: avoid; }
body:has(.se-programmes) main .se-keep-list > li::before { margin-top: 3pt; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
body:has(.se-programmes) main .se-checks h3 { font-size: 13pt !important; }
body:has(.se-programmes) main .se-checks { break-inside: avoid; }
body:has(.se-programmes) main .section.se-experience { display: block; }
body:has(.se-programmes) main .se-experience-copy p, body:has(.se-programmes) main .se-experience-links p { margin-top: 6pt; }
body:has(.se-programmes) main .se-experience-links { margin-top: 0; font-size: 10.5pt; }
body:has(.se-programmes) main .contact-section { padding-block: 14pt 0 !important; break-inside: avoid; }
body:has(.se-programmes) main .contact-section h2 { font-size: 13pt !important; }
body:has(.se-programmes) main .contact-section .email-link { font-size: 12pt !important; }
}
@media print {
html:has(.se-chain-section), body:has(.se-chain-section) { color-scheme: light; background: none !important; }
body:has(.se-chain-section) main > :is(.se-bva, .se-pair, .contact-section) { display: none !important; }
body:has(.se-chain-section) :is(.site-header, .skip, .crumb, .actions, .se-print, .ex, .se-disc, .pl-edge, .pl-fold, .pl-field, .pl-straight, .pl-ribbon) { display: none !important; }
body:has(.se-chain-section) main :is(section, .shell) { background: none !important; box-shadow: none !important; min-height: 0 !important; }
body:has(.se-chain-section) main section::before, body:has(.se-chain-section) main section::after { content: none; }
body:has(.se-chain-section) main :is(h1, h2, h3, p, li, span, .utility) { color: #070708 !important; }
body:has(.se-chain-section) main .pl-sec.pl-sec, body:has(.se-chain-section) main .section { display: block; margin: 0 !important; padding-block: 12pt 4pt !important; }
body:has(.se-chain-section) main .page-hero { display: block; min-height: 0; padding-block: 0 6pt !important; }
body:has(.se-chain-section) main :is(.shell, .page-hero, .service-hero-copy) { padding-inline: 0 !important; margin-inline: 0 !important; }
body:has(.se-chain-section) main h1 { max-width: none; font-size: 24pt !important; line-height: 1.12 !important; }
body:has(.se-chain-section) main h2 { font-size: 15pt !important; line-height: 1.15 !important; }
body:has(.se-chain-section) main :is(.hero-lead, p) { max-width: none; font-size: 10.5pt !important; line-height: 1.45 !important; }
body:has(.se-chain-section) main .se-chain { display: block; max-width: none; margin-top: 8pt; border-bottom: .5pt solid #070708; }
body:has(.se-chain-section) main .se-chain > li { display: block; padding: 5pt 0 6pt; border-top: .5pt solid #070708; break-inside: avoid; }
body:has(.se-chain-section) main .se-chain > li::before { content: none; }
body:has(.se-chain-section) main .se-chain > li > div { display: grid; grid-template-columns: 20pt minmax(0, 3fr) minmax(0, 8fr); column-gap: 8pt; align-items: baseline; padding: 0; }
body:has(.se-chain-section) main .se-chain-n { font-size: 10.5pt; }
body:has(.se-chain-section) main .se-chain h3 { margin: 0; font-size: 11.5pt !important; line-height: 1.25; }
body:has(.se-chain-section) main .se-chain p { margin: 0; }
body:has(.se-chain-section) main .se-prose { max-width: none; margin-top: 6pt; }
body:has(.se-chain-section) main .se-prose p + p { margin-top: 5pt; }
body:has(.se-chain-section)::before, body:has(.se-chain-section) .site-footer .foot-simple { margin-inline: 0; }
}
.sig, .ex { display: block; margin: 0; view-timeline: --sig block; }
.sig svg { display: block; width: 100%; height: auto; overflow: visible; }
.intro-mail p + p { margin-top: 1em; }
.intro-tools[hidden], .intro-share[hidden] { display: none; }
.photo { position: relative; margin: clamp(32px, 4vw, 56px) 0 0; --photo-c: var(--page-accent); }
.photo-frame { display: block; position: relative; }
.photo img { display: block; width: 100%; height: auto; filter: grayscale(1); }
.photo-window .photo-frame { isolation: isolate; }
.photo-window .photo-frame::before { content: ""; position: absolute; inset: 18px -18px -18px 18px; z-index: -1; background: var(--photo-c); }
.photo-diag img, .photo-diag .photo-frame::before { clip-path: polygon(9% 0, 100% 0, 91% 100%, 0 100%); }
@media (max-width: 44.9375em) {
.photo-window .photo-frame::before { inset: 10px -8px -10px 10px; }
}
.ex { container-type: inline-size; width: 100%; margin-block: clamp(28px, 4vw, 48px) 0; }
.ex-art { position: relative; --ex-narrow: ; max-width: var(--ex-wide, none) var(--ex-narrow, var(--ex-narrow-max, none)); }
:is(.ex-art, .ex-sw) svg { display: block; width: 100%; height: auto; overflow: visible; }
.ex-art > .ex-wide { display: var(--ex-wide, block) var(--ex-narrow, none); }
.ex-art > .ex-narrow { display: var(--ex-wide, none) var(--ex-narrow, block); }
.ex-l { position: absolute; left: var(--ex-wide, var(--x)) var(--ex-narrow, var(--nx)); top: var(--ex-wide, var(--y)) var(--ex-narrow, var(--ny)); width: max-content; max-width: var(--ex-wide, var(--w, 34%)) var(--ex-narrow, var(--nw, 34%)); transform: translate(var(--ex-wide, var(--tx, -50%)) var(--ex-narrow, var(--ntx, -50%)), var(--ty, -50%)); font-size: 15px; line-height: 1.25; font-weight: 600; text-align: var(--ex-wide, var(--ta, center)) var(--ex-narrow, var(--nta, center)); text-wrap: balance; }
:is(.ex-start, .exw-start) { --tx: 0%; --ta: left; }
:is(.ex-start, .exn-start) { --ntx: 0%; --nta: left; }
:is(.ex-end, .exw-end) { --tx: -100%; --ta: right; }
:is(.ex-end, .exn-end) { --ntx: -100%; --nta: right; }
.ex-l.ex-sub { font-weight: 400; }
.ex-l.ex-on-paper { color: var(--ink); }
.ex-n { display: none; }
@container (max-width: 539px) {
.ex-has-narrow .ex-art { --ex-wide: ; --ex-narrow: initial; }
.ex:not(.ex-has-narrow) .ex-art { counter-reset: list-item; }
.ex:not(.ex-has-narrow) .ex-art svg { margin-bottom: 16px; }
.ex:not(.ex-has-narrow) .ex-l { position: static; display: list-item; list-style: decimal; width: auto; max-width: none; margin: 6px 0 0 28px; transform: none; font: 400 15px/1.35 var(--sans); letter-spacing: 0; text-align: left; color: inherit; }
.ex:not(.ex-has-narrow) .ex-l::marker { font-weight: 700; }
.ex:not(.ex-has-narrow) .ex-n { position: absolute; left: var(--x); top: 0; display: inline-grid; place-items: center; min-width: 24px; height: 24px; margin-top: var(--ky); padding-inline: 4px; border: 2px solid var(--ink); border-radius: 12px; background: var(--paper); color: var(--ink); transform: translate(-50%, -50%); font-size: 14px; font-weight: 700; line-height: 1; }
}
@media print {
.ex-l { color: var(--ink); }
}
@supports (animation-timeline: view()) {
@media (prefers-reduced-motion: no-preference) {
:is(.sig, .ex) .sg-m { animation: sg-in linear both; animation-timeline: --sig; animation-range: cover 0vh cover 24vh; }
:is(.sig, .ex) .sg-n1 { animation-range: cover 3vh cover 27vh; }
:is(.sig, .ex) .sg-n2 { animation-range: cover 6vh cover 30vh; }
:is(.sig, .ex) .sg-n3 { animation-range: cover 9vh cover 33vh; }
:is(.sig, .ex) .sg-n4 { animation-range: cover 12vh cover 36vh; }
:is(.sig, .ex) .sg-n5 { animation-range: cover 15vh cover 39vh; }
:is(.sig, .ex) .sg-n6 { animation-range: cover 18vh cover 42vh; }
:is(.sig, .ex) .sg-n7 { animation-range: cover 21vh cover 45vh; }
}
}
@media (prefers-reduced-motion: no-preference) {
.pl-fb :is(.sig, .ex) .sg-m { transition: transform .9s var(--ease); }
.pl-fb :is(.sig, .ex) .sg-n1 { transition-delay: .08s; }
.pl-fb :is(.sig, .ex) .sg-n2 { transition-delay: .16s; }
.pl-fb :is(.sig, .ex) .sg-n3 { transition-delay: .24s; }
.pl-fb :is(.sig, .ex) .sg-n4 { transition-delay: .32s; }
.pl-fb :is(.sig, .ex) .sg-n5 { transition-delay: .4s; }
.pl-fb :is(.sig, .ex) .sg-n6 { transition-delay: .48s; }
.pl-fb :is(.sig, .ex) .sg-n7 { transition-delay: .56s; }
.pl-fb :is(.sig, .ex).pl-pre .sg-m { transform: var(--from); }
}
.se-owners { position: relative; align-self: center; width: 100%; max-width: 480px; }
.se-owners > .se-puzzle { position: absolute; inset: 0 auto auto 0; width: 100%; max-width: none; margin: 0; }
.se-owners > .ex { margin: 0; }
.se-owners .se-puzzle-frame { display: none; }
@media (max-width: 51.25em) {
.se-owners { max-width: 360px; }
}
.se-prog-head > .ex { max-width: 640px; }
.ex-se-ladder { --ex-narrow-max: 380px; }
@container (min-width: 500px) {
.ex.ex-se-ladder .ex-art { --ex-wide: initial; --ex-narrow: ; }
}
.ex-se-ladder .ex-on-paper { font: italic 400 19px/1 var(--serif); letter-spacing: -.02em; }
.ex-l .ex-a { pointer-events: auto; padding-block: 12px; color: inherit; text-decoration: underline; text-decoration-color: var(--line-strong); text-decoration-thickness: 2px; text-underline-offset: 4px; }
.ex-l .ex-a:hover { text-decoration-color: var(--page-accent); }
.se-print { margin-top: clamp(18px, 2vw, 28px); }
.se-print .button-link { min-height: 44px; padding: 0 18px; font: 600 0.9375rem/1.2 var(--sans); cursor: pointer; }
.se-print:has([hidden]) { display: none; }
@media (min-width: 64.0625em) {
.se-prog-head { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); column-gap: clamp(28px, 4vw, 72px); align-items: end; }
.se-prog-head > .ex { margin: 0; justify-self: end; }
}
.ex.ex-pov-hero { width: min(100%, 440px); aspect-ratio: auto; margin: 0; padding: clamp(20px, 2.6vw, 34px) 0; color: var(--ink); }
.ex-pov-hero .ex-art { width: 88%; }
.ex-pov-hero .ex-art svg { max-width: none; }
@container (min-width: 400px) {
.ex.ex-pov-hero .ex-art { --ex-wide: initial; --ex-narrow: ; }
}
.se-readers > .ex { grid-column: 1 / -1; }
.ex-pov-readers { --ex-narrow-max: 480px; }
@container (max-width: 999px) {
.ex.ex-pov-readers .ex-art { --ex-wide: ; --ex-narrow: initial; }
}
.se-bva-photo { width: min(100%, 520px); }
@media (min-width: 51.3125em) {
.se-bva > .se-bva-photo { grid-column: 1; grid-row: 2; align-self: start; margin-top: 10px; }
}
@media (max-width: 51.25em) {
.ex.ex-pov-hero { justify-self: start; margin: 0 0 40px; }
}
.se-design-list .ex-bs-agreement { margin-top: 22px; }
.se-people > .ex { grid-column: 1 / -1; }
.ex-bs-people { --ex-narrow-max: 480px; }
@container (max-width: 1099px) {
.ex.ex-bs-people .ex-art { --ex-wide: ; --ex-narrow: initial; }
}
@media print {
.site-header, .site-footer, .skip, .pl-edge, .pl-hero-stripe, .pl-field, .pl-fold, .pl-bend, .sig, .actions, .cv-ring-figure { display: none; }
.page-hero > .hero-sig-card { display: none; }
html, body, main, .pl-sec, .section-tinted, .contact-section { background: none; color: var(--ink); }
.pl .pl-sec.pl-sec { padding-block: 12pt; margin: 0; }
.page-hero { min-height: 0; padding-block: 0 12pt; }
.page-hero::before, .contact-section::before { content: none; }
body :is(h1, h2, h3, p, li, a, span, dt, dd, .utility) { color: var(--ink); }
.page-hero .hero-text { color: var(--ink); }
.contact-section .email-link { min-height: 0; }
.contact-section { break-inside: avoid; }
}
.pl .pl-on > .se-jump { border-top-color: var(--ink); }
.pl .pl-on > .se-jump a { text-decoration-color: rgba(7, 7, 8, .45); }
.pl .pl-on > .se-jump a:hover { text-decoration-color: var(--ink); }
.pl .pl-close.contact-section::before { background: var(--plane, var(--page-accent)); }
.au-photo { position: relative; margin: clamp(32px, 4vw, 56px) 0 0; max-width: 560px; }
.au-photo img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; filter: grayscale(1); outline: 1px solid rgba(7, 7, 8, .9); outline-offset: -1px; }
.au-photo { isolation: isolate; }
.au-photo-paper { padding: 10px; background: var(--paper); rotate: -1.4deg; box-shadow: 8px 8px 0 var(--page-accent); }
.au-photo-paper img { display: block; outline: 0; }
.pl .pl-on .au-photo-paper { box-shadow: 8px 8px 0 var(--ink); }
@media (max-width: 51.25em) {
.au-photo.au-photo-paper { width: calc(100% - 12px); margin-bottom: 12px; justify-self: start; }
}
@media (min-width: 51.3125em) {
.se-keeps > .se-break-photo { grid-column: 2; grid-row: 2; }
.se-keeps > .se-checks { grid-column: 1 / -1; }
}
