/* Approach completion. Scoped to new sections; approved route/header/footer are unchanged. */
.ap-section-label{display:flex;justify-content:space-between;gap:24px;padding-bottom:24px;font-size:11px;letter-spacing:.045em;color:#73766a}.ap-section-label>span:first-child{color:var(--ink);font-weight:600}.ap-section-kicker{display:block;font-size:11px;letter-spacing:.07em;text-transform:uppercase;line-height:1.5}
.ap-system{margin-top:clamp(90px,9vw,155px);scroll-margin-top:115px}.ap-system-panel{display:grid;grid-template-columns:1.08fr 1fr;gap:44px 6%;background:#f0f1e8;border-radius:20px;padding:clamp(30px,4.1vw,72px);isolation:isolate;overflow:hidden}
.ap-system-copy h2{font-size:clamp(58px,6.8vw,112px);font-weight:600;line-height:.94;letter-spacing:-.065em}.ap-system-copy h2 em{font-family:Georgia,serif;font-weight:400;color:#ac145f}.ap-system-copy>p{max-width:470px;margin-top:35px;font-size:clamp(16px,1.32vw,21px);line-height:1.55;color:#626858;letter-spacing:-.015em}
.ap-system-art{min-height:430px;position:relative;align-self:center;aspect-ratio:1.08;isolation:isolate}.ap-system-art img{position:absolute;left:16%;top:13%;width:72%;height:72%;object-fit:contain;transform:rotate(-16deg);filter:drop-shadow(0 24px 25px #ad836323)}
.ap-art-orbit{position:absolute;left:8%;top:12%;width:84%;height:76%;border:1px solid #b8bea766;border-radius:50%;transform:rotate(-28deg)}.ap-art-orbit-b{transform:rotate(38deg);height:49%;top:27%;width:112%;left:-6%}
.ap-art-word{position:absolute;font-size:clamp(28px,3.1vw,53px);font-weight:500;letter-spacing:-.055em;line-height:1;background:#f0f1e8;padding:7px 11px}.ap-art-word-a{top:5%;left:5%}.ap-art-word-b{top:44%;right:-3%}.ap-art-word-c{left:3%;bottom:10%}.ap-art-caption{position:absolute;bottom:0;right:6%;font-size:10px;color:#737b65;letter-spacing:.04em}
.ap-system-bottom{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbd0bd;gap:30px;padding-top:26px}.ap-system-bottom p{font-size:13px;color:#757c68;line-height:1.5}.ap-system-bottom strong{font-size:18px;font-weight:500;letter-spacing:-.02em;color:var(--ink)}
/* The readable base layout is also the no-JavaScript/reduced-motion layout. */
.ap-card-scene{position:relative;background:#f7f6f2;margin-top:clamp(95px,10vw,170px);padding:clamp(70px,7vw,110px) 0;scroll-margin-top:85px}.ap-card-layout{position:relative}.ap-card-heading{padding-bottom:55px}.ap-card-heading .ap-section-kicker{color:#707568;margin-bottom:32px}
.ap-card-heading h2{font-size:clamp(68px,10.2vw,176px);font-weight:600;letter-spacing:-.067em;line-height:.95;max-width:12ch}.ap-card-heading h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.075em;color:#a80d63}.ap-card-heading>p{margin-top:32px;font-size:clamp(20px,2vw,31px);line-height:1.2;letter-spacing:-.025em;max-width:530px}.ap-card-hint{display:none;font-size:11px;letter-spacing:.02em;color:#737568;gap:28px;align-items:center;margin-top:28px}.ap-card-hint>span{font-size:20px}
.ap-card-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;position:relative}.ap-card-slot{min-width:0}.ap-principle-card{position:relative;display:flex;flex-direction:column;min-height:510px;height:100%;border-radius:18px;padding:clamp(26px,2.1vw,40px);box-shadow:0 10px 34px #33351808;transform-origin:50% 85%;border:1px solid #292d1712}
.ap-principle-clarity{background:#e9eddb}.ap-principle-direction{background:#fff}.ap-principle-craft{background:#f5e6e8}.ap-principle-momentum{background:#eae7f1}.ap-principle-kicker{font-size:10px;letter-spacing:.018em;line-height:1.5;color:#737568;min-height:29px;display:block}.ap-principle-card h3{font-size:clamp(38px,4.2vw,72px);line-height:1.02;letter-spacing:-.06em;font-weight:600;margin-top:11px}.ap-principle-text{margin-top:auto;padding-top:22px}.ap-principle-text p{font-size:clamp(16px,1.2vw,20px);letter-spacing:-.025em;line-height:1.35;font-weight:500}.ap-principle-text>span{display:block;border-top:1px solid #41433324;margin-top:22px;padding-top:15px;font-size:11px;line-height:1.5;color:#707466}
/* Original circular studies echo the brand without reusing the route animation. */
.ap-card-symbol{position:relative;width:144px;height:145px;margin:32px auto 20px;flex:none}.ap-card-symbol i{position:absolute;display:block;border-radius:50%;border:1px solid #91977a;background:transparent}.ap-symbol-focus i:nth-child(1){inset:0}.ap-symbol-focus i:nth-child(2){inset:23px}.ap-symbol-focus i:nth-child(3){inset:47px;background:#cbd35c;border:0}
.ap-symbol-direction i{width:84px;height:84px;top:30px}.ap-symbol-direction i:nth-child(1){left:0;border-color:#c7bdaa}.ap-symbol-direction i:nth-child(2){left:30px;border-color:#e382ab}.ap-symbol-direction i:nth-child(3){left:60px;background:#f4d9e6;border-color:#de87ad}
.ap-symbol-craft i{width:94px;height:94px;border-color:#ce8fa6}.ap-symbol-craft i:nth-child(1){top:0;left:25px}.ap-symbol-craft i:nth-child(2){bottom:0;left:0}.ap-symbol-craft i:nth-child(3){bottom:0;right:0;background:#e5c0cd55}
.ap-symbol-momentum i{width:96px;height:96px;border-color:#aba4bf;transform:rotate(-35deg)}.ap-symbol-momentum i:nth-child(1){left:0;top:0}.ap-symbol-momentum i:nth-child(2){left:24px;top:24px}.ap-symbol-momentum i:nth-child(3){left:48px;top:48px;background:#cdc6df80}
/* Native sticky positioning; JS only fans the cards sideways as the user scrolls. */
.ap-cards-enhanced{--ap-card-height:clamp(470px,62svh,640px);--ap-card-top:calc(var(--header) + max(30px,(100svh - var(--header) - var(--ap-card-height))/2))}
.ap-cards-enhanced .ap-card-heading{position:sticky;top:calc(var(--header) + 55px);height:calc(100svh - var(--header) - 100px);min-height:610px;padding-bottom:0;pointer-events:none}.ap-cards-enhanced .ap-card-hint{display:flex}.ap-cards-enhanced .ap-card-heading h2{max-width:none}.ap-cards-enhanced .ap-card-heading h2 em{white-space:nowrap}
.ap-cards-enhanced .ap-card-track{display:flex;flex-direction:column;align-items:center;gap:clamp(95px,14svh,165px);margin-top:-16svh;padding-bottom:13svh}.ap-cards-enhanced .ap-card-slot{position:sticky;top:var(--ap-card-top);height:var(--ap-card-height);width:min(22.7vw,350px);flex-shrink:0}.ap-cards-enhanced .ap-principle-card{min-height:0;height:100%;will-change:transform}
.ap-cards-enhanced .ap-principle-card h3{font-size:clamp(38px,3.75vw,63px)}.ap-cards-enhanced .ap-card-symbol{width:132px;height:132px;margin-block:clamp(20px,3.1svh,35px)}.ap-cards-enhanced .ap-principle-text p{font-size:clamp(16px,1.2vw,19px)}
/* A quiet finish after the card sequence. */
.ap-together{padding-block:clamp(100px,10vw,175px);scroll-margin-top:110px}.ap-together-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:25px 10%;align-items:end}.ap-together-heading>.ap-section-kicker{grid-column:1/-1;color:#72766a}.ap-together-heading h2{font-size:clamp(62px,7.5vw,126px);line-height:.96;letter-spacing:-.066em;font-weight:600}.ap-together-heading h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em;color:#a80d63}.ap-together-heading>p{font-size:clamp(18px,1.6vw,25px);line-height:1.4;letter-spacing:-.03em;color:#717568;max-width:430px;padding-bottom:4px}
.ap-together-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5%;margin-top:65px}.ap-together-grid article{border-top:1px solid #cdd0c4;padding-top:27px}.ap-together-grid h3{font-size:clamp(24px,2.3vw,38px);font-weight:500;letter-spacing:-.045em;line-height:1.06}.ap-together-grid p{font-size:16px;line-height:1.6;letter-spacing:-.015em;color:#717568;margin-top:19px;max-width:430px}.ap-together-link{display:inline-flex;gap:25px;align-items:center;margin-top:42px;padding-bottom:12px;border-bottom:1px solid #c5c9ba;font-size:13px}.ap-together-link span{font-size:23px;transition:transform .25s}.ap-together-link:hover span{transform:translate(3px,-3px)}
.ap-closing{padding-bottom:0;gap:14px}.ap-closing .close-block{min-height:clamp(430px,43vw,680px);border-radius:18px;padding:clamp(27px,3.2vw,54px)}.ap-closing .close-block small{font-size:clamp(14px,1.7vw,25px);letter-spacing:-.035em;margin-bottom:28px}.ap-closing .close-block h2{font-size:clamp(50px,6.1vw,106px);line-height:.96;max-width:10ch}.ap-closing .ap-close-dark{background:#25251f;color:#fff}.ap-closing .ap-close-dark:hover{background:#303326}.ap-closing .ap-close-dark small{color:#ff60b6}
@media(min-width:2100px){.ap-system-art{min-height:500px}.ap-card-scene{padding-top:120px}.ap-cards-enhanced .ap-card-heading h2{font-size:176px}}
@media(max-width:1050px){.ap-system-panel{gap:30px;padding:36px}.ap-system-copy h2{font-size:6.8vw}.ap-system-art{min-height:300px}.ap-art-word{font-size:30px}.ap-card-heading h2{font-size:10.4vw}.ap-card-track{gap:18px}.ap-principle-card{min-height:500px}.ap-principle-card h3{font-size:54px}.ap-together-heading{gap:25px 7%}.ap-together-heading h2{font-size:7.7vw}.ap-together-grid{gap:28px}.ap-together-grid h3{font-size:26px}}
@media(max-width:760px){.ap-section-label>span:last-child{max-width:180px;text-align:right}.ap-system-panel{grid-template-columns:1fr;padding:30px}.ap-system-copy h2{font-size:clamp(55px,10vw,76px)}.ap-system-copy>p{max-width:100%;margin-top:26px}.ap-system-art{width:100%;max-width:480px;justify-self:center;min-height:300px;max-height:390px}.ap-art-word{font-size:38px}.ap-system-bottom{gap:15px}.ap-system-bottom p{font-size:11px}.ap-system-bottom strong{font-size:14px}.ap-card-heading h2{font-size:12vw}.ap-principle-card{padding:25px;min-height:475px}.ap-principle-card h3{font-size:41px}.ap-card-symbol{width:126px;height:126px;margin-block:30px}.ap-principle-text p{font-size:16px}.ap-together-heading{grid-template-columns:1fr;gap:24px}.ap-together-heading h2{font-size:12vw}.ap-together-heading>p{max-width:520px}.ap-together-grid{gap:22px;margin-top:45px}.ap-together-grid h3{font-size:23px}.ap-together-grid p{font-size:15px}.ap-closing .close-block{min-height:380px;padding:26px}.ap-closing .close-block h2{font-size:6.3vw}}
@media(max-width:540px){.ap-system{margin-top:75px}.ap-section-label{font-size:10px;gap:22px;align-items:start}.ap-section-label>span:last-child{max-width:155px}.ap-system-panel{padding:27px 24px;border-radius:14px;gap:30px}.ap-system-copy h2{font-size:clamp(47px,12.4vw,65px)}.ap-system-copy>p{font-size:16px;line-height:1.55}.ap-system-art{min-height:270px;max-height:330px}.ap-art-word{font-size:31px}.ap-system-bottom{grid-template-columns:1fr;gap:19px;padding-top:24px}.ap-system-bottom p{font-size:12px;display:flex;justify-content:space-between;gap:16px}.ap-system-bottom br{display:none}.ap-system-bottom strong{font-size:14px;text-align:right}
.ap-card-scene{margin-top:76px;padding-block:60px}.ap-card-heading{padding-bottom:37px}.ap-card-heading .ap-section-kicker{font-size:9px;margin-bottom:25px}.ap-card-heading h2{font-size:clamp(52px,14.1vw,77px)}.ap-card-heading>p{font-size:21px;margin-top:26px}.ap-card-track{grid-template-columns:1fr;gap:18px}.ap-principle-card{min-height:465px;padding:30px}.ap-principle-kicker{font-size:11px}.ap-principle-card h3{font-size:clamp(48px,14vw,64px)}.ap-card-symbol{margin-block:28px}.ap-principle-text p{font-size:18px}.ap-principle-text>span{font-size:12px}
.ap-together{padding-block:78px}.ap-together-heading>.ap-section-kicker{font-size:9px}.ap-together-heading h2{font-size:clamp(52px,14vw,72px)}.ap-together-heading>p{font-size:18px}.ap-together-grid{grid-template-columns:1fr;gap:29px;margin-top:38px}.ap-together-grid article{padding-top:22px}.ap-together-grid h3{font-size:29px}.ap-together-grid p{font-size:16px;margin-top:13px}.ap-together-link{font-size:12px;gap:15px;margin-top:30px;line-height:1.5}.ap-together-link span{flex:none}
.ap-closing{grid-template-columns:1fr;gap:12px}.ap-closing .close-block{min-height:370px;padding:30px;border-radius:14px}.ap-closing .close-block h2{font-size:clamp(50px,14vw,76px)}.ap-closing .close-block small{font-size:17px;margin-bottom:23px}}
@media(prefers-reduced-motion:reduce){.ap-principle-card,.ap-together-link span{transform:none!important;transition:none!important;will-change:auto!important}.ap-card-hint{display:none!important}}
@media print{.ap-card-scene{background:white}.ap-card-heading,.ap-card-slot{position:static!important;height:auto!important}.ap-card-track{display:grid!important;grid-template-columns:1fr 1fr!important;margin:0!important;padding:0!important;gap:20px!important}.ap-card-slot{width:auto!important}.ap-principle-card{transform:none!important;min-height:360px!important;break-inside:avoid}.ap-card-hint,.ap-system-art{display:none}.ap-closing{display:none}}
/* Long card title is sized to its content area, including small phones and wide monitors. */
.ap-cards-enhanced .ap-principle-momentum h3{font-size:clamp(32px,3.1vw,48px)}
@media(max-width:540px){.ap-principle-card.ap-principle-momentum h3{font-size:clamp(39px,11.8vw,60px)}}
@media(min-width:1051px) and (max-height:820px){.ap-cards-enhanced .ap-card-symbol{width:112px;height:112px;margin-block:16px}.ap-cards-enhanced .ap-principle-text{padding-top:14px}.ap-cards-enhanced .ap-principle-text>span{margin-top:16px;padding-top:12px}}

/* Slow 3D sway starts partway through its loop so movement is visible immediately. */
.js .ap-system-art img{animation:ap-system-ring-drift 32s ease-in-out -4s infinite;animation-play-state:paused;transform-origin:50% 50%;will-change:transform}
.js .ap-system-art.is-motion-visible img{animation-play-state:running}
@keyframes ap-system-ring-drift{
 0%,100%{transform:perspective(850px) translate3d(-3px,0,0) rotateX(6deg) rotateY(-20deg) rotate(-18deg) scale(var(--ap-ring-scale,1));filter:drop-shadow(5px 25px 25px #ad836323)}
 25%{transform:perspective(850px) translate3d(0,-9px,0) rotateX(-7deg) rotateY(0deg) rotate(-10deg) scale(var(--ap-ring-scale,1));filter:drop-shadow(0 32px 29px #ad836328)}
 50%{transform:perspective(850px) translate3d(3px,-3px,0) rotateX(-3deg) rotateY(20deg) rotate(-2deg) scale(var(--ap-ring-scale,1));filter:drop-shadow(-5px 27px 26px #ad836323)}
 75%{transform:perspective(850px) translate3d(0,5px,0) rotateX(8deg) rotateY(0deg) rotate(-10deg) scale(var(--ap-ring-scale,1));filter:drop-shadow(0 21px 23px #ad836320)}
}
/* Give the tilted ring room between its fixed labels on narrow screens. */
@media(max-width:760px){.ap-system-art{--ap-ring-scale:.9}}
@media(prefers-reduced-motion:reduce){.js .ap-system-art img{animation:none!important;will-change:auto;transform:rotate(-16deg)}}

/* Keep Make clear of the drifting ring, without a rectangular background patch. */
.ap-art-word-b{background:transparent;right:-6%}
@media(max-width:1050px){.ap-art-word-b{top:0;right:0}}
