/* The background belongs to the page, not to individual section rectangles. */
.chromatic-section{color-scheme:dark;--chapter-bg:#101113;--chapter-active:#101113;--text:#f5f5f4;--muted:#bdc2c9;--border:#383c43;--page:#101113;--surface:#171a1f;--red:#ff4658;--focus:#ffb4bc;background:var(--chapter-bg);color:var(--text)}
.chromatic-section::before{display:none}
.chromatic-section.seasonal-feature{--chapter-bg:#1b0c10;--action:#c91830;--action-hover:#ae1228}
.seasonal-feature .button-primary{color:#fff}
.seasonal-feature .seasonal-copy>small{color:var(--muted)}
.pathfinder-options button:hover,.pathfinder-options button[aria-pressed=true],.pathfinder-result{background:var(--surface)}
.flow-backdrop{display:none}
.flow-enabled body{isolation:isolate;background:var(--flow-bg,#1b0c10)}
.flow-enabled .flow-backdrop{display:block;position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:var(--flow-bg,#1b0c10)}
.flow-pattern{position:absolute;inset:-680px -16px;background:url('assets/projur-pattern-clean.webp') repeat;background-size:640px 640px;opacity:.20;transform:translate3d(0,var(--flow-y,0px),0);will-change:transform}
.flow-enabled .chromatic-section{
  --text:var(--flow-ink,#fff);--muted:var(--flow-muted,#bdc2c9);--red:var(--flow-accent,#ff4658);
  --border:var(--flow-border,#7e4753);--surface:var(--flow-panel,#440d1a);--page:var(--flow-bg,#4c0e1d);--focus:var(--flow-ink,#fff);
  color:var(--text);background:transparent;transition:none;overflow:visible;
}
.flow-enabled .chromatic-section::before{display:none}
.flow-enabled .hero{border-top:0}
.flow-enabled .hero-proof{background:transparent}
.flow-enabled .seasonal-copy>small{color:var(--muted)}
.flow-enabled .seasonal-feature{--action:#c91830;--action-hover:#ae1228}
.flow-enabled .seasonal-feature .button-primary{color:#fff}
.flow-enabled .pathfinder-options button:hover,.flow-enabled .pathfinder-options button[aria-pressed=true],.flow-enabled .pathfinder-result{background:var(--flow-panel)}
.flow-enabled .pathfinder-options button[aria-pressed=true]{box-shadow:inset 0 -3px 0 var(--flow-accent)}
.flow-enabled .pathfinder-result .button-primary{--focus:var(--flow-ink)}
.flow-enabled .method-card{border-color:var(--border)}
/* Stable panels protect forms, documents, and photographs as the canvas changes. */
.flow-enabled .trust-location{--text:#f5f5f4;--muted:#bfc7d0;--border:#414850;--red:#ff6c7c;--focus:#ffb4bc;color:var(--text)}
.flow-enabled .trust-certificate{--text:#1b1e23;--muted:#555c65;--border:#c7ccd1;--red:#ab1830;--focus:#ab1830;color:var(--text)}
.flow-enabled .programs-section .program{--text:#f5f5f4;--muted:#bfc7d0;--border:#414850;--red:#ff6c7c;--focus:#ffb4bc;color:var(--text)}
.flow-enabled .diagnostic-form{--text:#f5f5f4;--muted:#bdc5cf;--page:#0d1115;--surface:#171c22;--border:#48525e;--red:#ff6073;--action:#c91830;--focus:#ffb4bc;color:var(--text);background:var(--surface)}
.chromatic-section p{max-width:70ch}
.seasonal-copy .button-primary{gap:12px}
.pathfinder-result{scroll-margin-block:calc(var(--header-height) + 20px) 110px}
.pathfinder-options button{touch-action:manipulation}
.pathfinder-options button b{transition:transform 280ms cubic-bezier(.2,.75,.25,1)}
.pathfinder-options button[aria-pressed=true] b{transform:rotate(45deg)}
.button:active,.nav-cta:active,.whatsapp-toggle:active{transform:translateY(1px) scale(.985)}
.button site-icon,.program summary site-icon,.faq-list summary site-icon{transition:transform 350ms cubic-bezier(.2,.75,.25,1)}
.button:hover site-icon[name='arrow-right']{transform:translateX(3px)}
.program[open] .program-body,.faq-list details[open]>p{animation:disclosure-in 320ms ease-out}
.main-nav a{border-radius:2px}
.form-feedback:not(:empty){padding:12px;border:1px solid var(--border);border-radius:4px}
@keyframes disclosure-in{from{opacity:.75;transform:translateY(-5px)}to{opacity:1;transform:none}}
@media(max-width:700px){
  .flow-pattern{background-size:480px 480px}
  .chromatic-section{scroll-margin-top:8px}
  .pathfinder-options button{min-height:180px}
  .pathfinder-result{scroll-margin-bottom:110px}
  .diagnostic-form textarea{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  .flow-backdrop{display:none!important}
  .flow-pattern{transform:none;will-change:auto}
  .button:active,.nav-cta:active,.whatsapp-toggle:active{transform:none}
}

.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.recognition-film{min-width:0;width:100%;align-self:center;background:#080909;color:#f5f5f4;isolation:isolate}
.recognition-stage{display:grid;place-items:center;min-height:0;aspect-ratio:1;height:auto;overflow:hidden;background:#080909}
.recognition-opening{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 24px 32px}
.recognition-opening>img{width:min(75%,360px);aspect-ratio:1;object-fit:contain;filter:none!important;mask-image:radial-gradient(ellipse at center,#000 55%,transparent 74%)}
.recognition-seven{text-align:center;margin-top:-20px;color:#d4b87d}
.recognition-seven>span{font-size:9px;word-spacing:12px;letter-spacing:2px}
.recognition-seven p{font-size:18px;letter-spacing:.04em;margin-top:10px}
.recognition-start{display:inline-flex;gap:20px;align-items:center;justify-content:center;min-height:48px;background:none;border-bottom:1px solid #8c7750;margin-top:24px;padding:8px 0;font-size:14px;color:#f5f5f4}
.recognition-start:hover{color:#e9cf99}
.recognition-video{width:100%;height:100%;object-fit:contain;background:#080909;transition:filter 900ms linear;max-height:700px}
.recognition-caption{display:flex;justify-content:space-between;gap:16px;padding:18px 20px;border-top:1px solid #35342f;font-size:12px;letter-spacing:.07em;color:#c6c4be}
.recognition-error{padding:16px;font-size:14px}.recognition-error a{text-decoration:underline}
.location-editorial{width:100%;margin:0;padding:0;background:#15191d!important;overflow:hidden}
.location-editorial>img{display:block;width:100%;height:auto;aspect-ratio:680/450;max-height:880px;object-fit:contain;object-position:center;background:#101214;filter:grayscale(1);transition:filter 1.5s ease}
.location-editorial>img.is-photo-visible{filter:grayscale(0)}
.location-editorial-copy{padding:clamp(32px,5vw,72px) max(var(--gutter),calc((100% - 1184px)/2));color:#f5f5f4}
.location-editorial-copy h2{font-size:clamp(24px,3vw,42px);max-width:28ch;line-height:1.2;margin-bottom:20px}
.location-editorial-copy p{color:#c0c5ca}.location-editorial-copy a{display:inline-flex;align-items:center;gap:12px;min-height:48px;margin-top:20px}
@media(max-width:820px){.hero-grid{grid-template-columns:1fr}.recognition-film{max-width:640px;justify-self:center}}
@media(max-width:700px){.recognition-opening{padding:12px 16px 20px}.recognition-opening>img{width:72%}.recognition-seven{margin-top:-8px}.recognition-seven p{font-size:16px}.recognition-start{margin-top:12px}.recognition-caption{font-size:11px;padding:16px 12px}.location-editorial>img{height:auto;aspect-ratio:16/9}.location-editorial-copy{padding:32px 24px 40px}.history-close-photo img{aspect-ratio:16/9}}
@media(prefers-reduced-motion:reduce){.recognition-video,.location-editorial>img{transition:none;filter:none!important}}

/* Editorial hierarchy: fewer containers; the institution supplies the character. */
.flow-pattern{mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.22) 30%,rgba(0,0,0,.22) 70%,#000)}
main h2{font-weight:600;letter-spacing:-.03em}
.section-index{display:none}
.button,.nav-cta{border-radius:4px}
.seasonal-art{border-radius:2px;box-shadow:none}
.hero-grid{padding-block:48px}
.hero h2{font-size:clamp(32px,3vw,42px)}
.pathfinder{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px 72px;align-items:start}
.pathfinder-heading{grid-column:1;grid-row:1/span 3;max-width:360px}
.pathfinder-heading h2{font-size:clamp(32px,3.2vw,44px);max-width:13ch}
.pathfinder-heading>p:last-child{font-size:16px;max-width:36ch}
.pathfinder-options{grid-column:2;display:block;margin:0;border-bottom:0}
.pathfinder-options button{display:grid;grid-template-columns:28px minmax(0,1fr) 20px;gap:6px 16px;width:100%;min-height:0;padding:24px 12px;border:0;border-bottom:1px solid var(--border);border-radius:0}
.pathfinder-options button:nth-child(n){border-right:0;border-bottom:1px solid var(--border)}
.pathfinder-options button>span{grid-column:1;grid-row:1/3;padding-top:5px}
.pathfinder-options strong{grid-column:2;grid-row:1;font-size:22px;max-width:none}
.pathfinder-options small{grid-column:2;grid-row:2}
.pathfinder-options b{position:static;grid-column:3;grid-row:1/3;align-self:center}
.flow-enabled .pathfinder-options button[aria-pressed=true],.pathfinder-options button[aria-pressed=true]{box-shadow:inset 2px 0 0 var(--red)}
.pathfinder-result{grid-column:2;display:block;border:0;border-top:1px solid var(--border);border-radius:0;padding:24px 0 0;margin:0}
.flow-enabled .pathfinder-result,.pathfinder-result{background:transparent}
.pathfinder-result .button{margin-top:20px}
.pathfinder-result>small{display:block;margin-top:12px}
.pathfinder-unsure{grid-column:2;margin:0}
.brand-dilemma{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:64px}
.dilemma-copy h2{font-size:clamp(30px,3vw,42px)}
.dilemma-photo img,.chapter img{border-radius:2px}
.method-head h2,.programs-head h2,.history-head h2{font-size:clamp(32px,3.5vw,46px)}
.method-grid{display:block;margin-top:40px}
.method-card{display:grid;grid-template-columns:40px 220px minmax(0,1fr);align-items:start;gap:24px;padding:24px 0}
.method-card:hover{transform:none}
.method-card h3{margin:0;font-size:22px}
.method-card p{margin:0;max-width:68ch}
.method-number{padding-top:4px}
.film-intro h2{font-size:36px}
.film-intro>div{gap:16px}
.flow-enabled .programs-section .program,.programs-section .program{background:transparent;border:0;border-top:1px solid var(--border);border-radius:0;padding:0;margin:0}
.flow-enabled .programs-section .program[open],.programs-section .program[open]{background:transparent}
.programs-section .program summary{grid-template-columns:128px minmax(0,1fr) 180px 24px;gap:24px;padding-block:28px}
.program summary h3{font-size:28px;font-weight:600}
.program-body{grid-template-columns:1fr;max-width:860px;gap:20px;padding:0 0 32px 152px}
.history-head{display:grid;grid-template-columns:1fr .9fr;gap:16px 64px;align-items:end}
.history-head .eyebrow{grid-column:1/-1;margin-bottom:4px}
.history-head>p:last-child{margin:0;max-width:52ch}
.chapter-origin{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.chapter-classroom{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.history-close h3{font-weight:600}
.history-close{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:center}
.history-close-photo{margin:0;min-width:0}.history-close-photo img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;filter:grayscale(1);transition:filter 500ms ease}.history-close-photo:hover img{filter:grayscale(0) contrast(1.025)}.history-close-photo figcaption{margin-top:12px;color:var(--muted);font-size:10px;letter-spacing:.1em}.history-close-copy{min-width:0}
.flow-enabled .diagnostic-form,.conversion-section .diagnostic-form{background:transparent;border:0;border-top:1px solid #626975;border-radius:0;box-shadow:none;padding:28px 0}
/* A tighter editorial rhythm, without compressing the reading areas. */
.method-section,.film-section,.programs-section,.history-section,.faq-section{padding-block:clamp(48px,5vw,72px)}
.pathfinder,.brand-dilemma,.conversion-section{padding-block:clamp(48px,5vw,64px)}
.seasonal-feature{padding-bottom:40px}
.history-section{padding-bottom:48px}
.chromatic-section[id]{scroll-margin-top:16px}
h1,h2,h3{text-wrap:balance}
.seasonal-copy>p,.hero-lede,.chapter-copy>p{ text-wrap:pretty }
.form-feedback:empty{margin:0;padding:0}
#diagnostic-form{scroll-margin-top:16px;scroll-margin-bottom:110px}
@media(max-width:700px){
  .flow-pattern{opacity:.20;background-size:640px 640px;mask-image:none!important;-webkit-mask-image:none!important}
  .conversion-section{gap:28px}
  .diagnostic-form{min-width:0}
}
.recognition-caption,.history-close-photo figcaption{font-size:12px}
.recognition-start:focus-visible,.location-editorial-copy a:focus-visible{outline:2px solid var(--focus);outline-offset:6px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .location-editorial-copy a site-icon,.history-close a site-icon{transition:transform 220ms ease}
  .location-editorial-copy a:hover site-icon,.history-close a:hover site-icon{transform:translate(2px,-2px)}
}
@media(max-width:700px){
  .location-editorial>img{aspect-ratio:680/450}
  .method-section,.film-section,.programs-section,.history-section,.faq-section,.pathfinder,.brand-dilemma,.conversion-section{padding-block:48px}
  .hero-grid{padding-block:32px}
}
@media(max-width:1024px){
  .pathfinder{gap:24px 40px}
  .method-card{grid-template-columns:32px 180px minmax(0,1fr)}
  .programs-section .program summary{grid-template-columns:96px minmax(0,1fr) 140px 24px}
  .program-body{padding-left:120px}
  .brand-dilemma{gap:40px}
}
@media(max-width:700px){.history-close{grid-template-columns:1fr;gap:28px}.history-close-photo{order:0}.history-close-copy{order:1}}
@media(prefers-reduced-motion:reduce){.history-close-photo img{transition:none;filter:none}}
@media(max-width:820px){
  .pathfinder{grid-template-columns:1fr;gap:28px}
  .pathfinder-heading,.pathfinder-options,.pathfinder-result,.pathfinder-unsure{grid-column:1;grid-row:auto}
  .pathfinder-heading{max-width:640px}
  .pathfinder-heading h2{max-width:22ch}
  .pathfinder-heading>p:last-child{max-width:60ch}
  .programs-section .program summary{grid-template-columns:96px minmax(0,1fr) 24px}
  .programs-section .program summary>p{grid-column:2;grid-row:2}
  .programs-section .program summary>site-icon{grid-column:3;grid-row:1/3}
}
@media(max-width:700px){
  .flow-pattern{mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.20) 25%,rgba(0,0,0,.20) 75%,#000)}
  .pathfinder-heading h2{font-size:34px;max-width:15ch}
  .pathfinder-options button{padding:22px 8px;gap:6px 12px;grid-template-columns:22px minmax(0,1fr) 18px}
  .pathfinder-options strong{font-size:20px}
  .pathfinder-result{padding-top:22px}
  .brand-dilemma,.chapter-origin,.chapter-classroom,.history-head{grid-template-columns:1fr;gap:28px}
  .method-card{grid-template-columns:24px minmax(0,1fr);gap:12px 16px}
  .method-card h3{grid-column:2}
  .method-card p{grid-column:2}
  .programs-section .program summary{grid-template-columns:minmax(0,1fr) 24px;gap:8px 16px}
  .programs-section .program summary>p{grid-column:1;grid-row:auto}
  .programs-section .program summary>site-icon{grid-column:2;grid-row:1/4}
  .program-body{padding-left:0}
  .program summary h3{font-size:24px}
  .history-head .eyebrow{margin:0}
  .flow-enabled .diagnostic-form,.conversion-section .diagnostic-form{padding:24px 0}
}
