/* Approved offer directory, 31 October 2026. Existing glass and media stay intact. */
.services-menu{position:relative}
.services-menu>summary{display:flex;align-items:center;gap:7px;min-height:44px;padding:10px 0;list-style:none;cursor:pointer;font-size:14px;line-height:1.5;font-weight:500;color:var(--cfs-ink)}
.services-menu>summary::-webkit-details-marker{display:none}
.services-menu>summary svg{width:14px;height:14px;transition:transform 180ms ease}
.services-menu[open]>summary svg{transform:rotate(180deg)}
.services-panel{position:absolute;top:calc(100% + 12px);left:-24px;width:354px;max-height:calc(100svh - 210px);overflow-y:auto;padding:20px 24px;background:var(--cfs-tint);border:1px solid var(--cfs-separator);border-radius:16px;box-shadow:0 16px 48px rgb(32 32 36 / 16%);z-index:20}
.services-menu:not([open])>.services-panel{display:none}
.services-panel>div+div{border-top:1px solid var(--cfs-separator);padding-top:12px;margin-top:12px}
body[data-revision=warm] .services-panel p{font:500 12px/1.5 var(--cfs-font);color:var(--cfs-text-muted);margin:0 0 4px}
body[data-revision=warm] .site-header nav .services-panel a{display:flex;padding:11px 0;min-height:44px;font-size:14px;line-height:1.5;text-decoration:none}
body[data-revision=warm] .site-header nav .services-panel a:hover{text-decoration:underline}
.offer-directory a strong{display:block;font:500 22px/1.35 var(--cfs-font);color:var(--cfs-ink)}
.offer-directory a>span{font-size:13px;margin-bottom:6px}
.offer-directory a em{display:block;font-style:normal;font:400 14px/1.6 var(--cfs-body-font);margin-top:8px;color:var(--cfs-text-muted)}
.offer-format{font:500 14px/1.6 var(--cfs-font);color:var(--cfs-violet);margin:20px 0}
.offer-facts{margin:0}.offer-facts>div{padding:18px 0;border-top:1px solid var(--cfs-separator)}
.offer-facts dt{font:500 14px/1.5 var(--cfs-font);color:var(--cfs-violet);margin-bottom:8px}.offer-facts dd{margin:0;font-size:17px;line-height:1.7}
.offer-small-print{font-size:14px!important;line-height:1.65!important;color:var(--cfs-text-muted);margin-top:20px}
.learning-options{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:72px max(7.5%,calc((100vw - 1200px)/2));background:var(--cfs-paper)}
.learning-options article{min-width:0;padding-top:24px;border-top:3px solid var(--cfs-rose);scroll-margin-top:32px}
.learning-options article+article{border-top-color:var(--cfs-violet)}
body[data-revision=warm] .learning-options h2{font-size:clamp(28px,2.7vw,38px);line-height:1.2;margin:0 0 20px;color:var(--cfs-violet)}
.learning-options .offer-facts{margin-top:24px}.learning-options .underlined-link{margin-top:20px}
.format-choices{padding:56px max(7.5%,calc((100vw - 1200px)/2));background:var(--cfs-paper)}
.format-choices>h2{margin-bottom:12px}.format-choices>p{font-size:17px;line-height:1.7;max-width:65ch}
.format-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px}
.format-choice-grid article{padding:28px 0;border-top:2px solid var(--cfs-violet);min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.format-choice-grid h3{font-size:27px;line-height:1.3;margin-bottom:16px}.format-choice-grid p{font-size:16px;line-height:1.7;margin-bottom:16px}
.format-choice-grid .underlined-link{margin-top:auto;font-size:14px}
.format-choice-grid .offer-format{font-size:14px;color:var(--cfs-violet);font-weight:500}
.workshop-deep-dive{background:var(--cfs-ink);color:var(--cfs-paper)}
body[data-revision=warm] .workshop-deep-dive h2{color:var(--cfs-paper)}
.workshop-deep-dive .offer-format,.workshop-deep-dive .offer-facts dt{color:var(--cfs-rose)}
.workshop-deep-dive .offer-facts>div{border-color:rgb(255 255 255 / 24%)}
.workshop-deep-dive .offer-small-print{color:var(--cfs-tint)}
.workshop-deep-dive a:focus-visible{outline-color:var(--cfs-paper)}
.home-offer-directory .ways-intro h2{max-width:13ch}.home-offer-directory .service-choices article{scroll-margin-top:28px}
.home-offer-directory .service-choices .offer-summary{font-size:17px;line-height:1.7;margin:12px 0}
.home-offer-directory .service-choices .offer-result{font-size:15px;line-height:1.65;margin:16px 0;color:var(--cfs-tint)}
.home-offer-directory .service-choices .offer-result strong{color:var(--cfs-paper);font-weight:600}
.home-offer-directory .service-choices .offer-terms{font-size:14px;line-height:1.65;color:var(--cfs-tint);margin-top:18px}
.home-offer-directory .service-choices .flagship-offer{padding-left:24px;border-left:3px solid var(--cfs-rose)}
.home-offer-directory .service-choices h3{font-size:28px;line-height:1.3}
.scope-boundary-link{font-size:15px;line-height:1.6;margin-top:22px}
@media(max-width:1000px){
 .services-menu{width:100%}.services-menu>summary{min-height:48px;padding:12px 4px;justify-content:space-between}
 .services-panel{position:static;width:100%;max-height:none;overflow:visible;margin:4px 0 16px;padding:8px 16px 16px;box-shadow:none;border:0;border-left:2px solid var(--cfs-rose);border-radius:0;background:transparent}
 body[data-revision=warm] .site-header nav .services-panel a{min-height:48px;padding:12px 0}
}
@media(max-width:800px){
 .learning-options,.format-choice-grid{grid-template-columns:1fr;gap:40px}.learning-options,.format-choices{padding:48px 24px}
 .offer-directory a strong{font-size:20px}.offer-facts dd{font-size:16px}
 .home-offer-directory .ways-intro h2{max-width:none}.home-offer-directory .service-choices h3{font-size:27px}
}
@media(max-width:560px){
 .learning-options,.format-choices{padding:40px 16px}.format-choice-grid{gap:24px}
 .home-offer-directory .service-choices .flagship-offer{padding-left:16px}
 .format-choice-grid h3{font-size:25px}.home-offer-directory .service-choices .offer-summary{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.services-menu>summary svg{transition:none}}

/* Supplied session-sign photograph, kept in its complete portrait framing. */
.conference-context{padding-inline:max(7.5%,calc((100vw - 1200px)/2));display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,380px);gap:8%;align-items:center}
.conference-copy{min-width:0}.conference-photo{margin:0}.conference-photo img{display:block;width:100%;height:auto}.conference-photo figcaption{font-size:13px;line-height:1.6;margin-top:12px;color:var(--cfs-text-muted)}
@media(max-width:800px){.conference-context{grid-template-columns:1fr;gap:32px}.conference-photo{width:min(100%,380px);margin-inline:auto}}
