#pu-combined .pu-philosophy{color:#252823;padding:40px 0 34px;border-top:1px solid #bec5c0;scroll-margin-top:70px}
#pu-combined .ph-quote{text-align:center;padding:22px 0 104px}
#pu-combined .ph-label{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#5c655f}
#pu-combined .ph-quote blockquote{margin:24px 0 0;font-size:clamp(27px,3.3vw,47px);line-height:1.2;letter-spacing:-.04em;font-weight:400;font-style:italic}
#pu-combined .ph-quote blockquote span{display:block;font-style:italic}
#pu-combined .ph-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:76px;row-gap:32px;align-items:center;padding:48px 0;border-top:1px solid #bec5c0;min-height:360px}
#pu-combined .ph-title{grid-column:1/-1;grid-row:1;text-align:center;font-size:clamp(30px,4.1vw,59px);font-weight:400;line-height:1.12;letter-spacing:-.045em;white-space:nowrap;margin:0;color:#263c36}
#pu-combined .ph-visual{grid-column:1;grid-row:2;min-width:0}
#pu-combined .ph-copy{grid-column:2;grid-row:2;font-size:18px;line-height:1.75;color:#454d47;margin:0;max-width:none}
#pu-combined .ph-reverse .ph-visual{grid-column:2}
#pu-combined .ph-reverse .ph-copy{grid-column:1}
#pu-combined .ph-art{font:14px/1.4 Arial,sans-serif;letter-spacing:normal;position:relative;height:230px;color:#263c36;isolation:isolate;min-width:0}
#pu-combined .ph-chip{position:absolute;display:flex;align-items:center;gap:10px;background:#f7f7f7;border:1px solid #bfc7c1;border-radius:9px;padding:12px 15px;font-size:14px;box-shadow:0 3px 10px #263c3607;z-index:1}
#pu-combined .ph-chip span{display:block}
#pu-combined .ph-chip small{display:block;font-size:11px;color:#68756c}
#pu-combined .ph-chip b{font-size:22px;font-weight:400}
#pu-combined .ph-chip-a{top:10px;left:8%;transform:rotate(-7deg)}
#pu-combined .ph-chip-b{top:86px;right:3%;transform:rotate(6deg)}
#pu-combined .ph-chip-c{top:166px;left:4%;transform:rotate(-4deg)}
#pu-combined .ph-route{position:absolute;inset:0;width:100%;height:100%;z-index:0;overflow:visible}
#pu-combined .ph-route-draw{stroke-dasharray:1;stroke-dashoffset:0}
#pu-combined .ph-steps{display:flex;justify-content:space-between;position:absolute;inset:36px 0 30px;gap:12px;align-items:center}
#pu-combined .ph-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:12px;font-size:13px;position:relative;z-index:1}
#pu-combined .ph-icon{display:grid;place-items:center;width:64px;height:76px;background:#f7f7f7;border:1px solid #aebcb3;border-radius:10px;font-size:27px}
#pu-combined .ph-step:last-child .ph-icon{background:#263c36;color:#fff}
#pu-combined .ph-straight{position:absolute;left:15%;right:15%;top:109px;border-top:1px solid #97a99c;transform-origin:left center}
#pu-combined .ph-caption{position:absolute;bottom:2px;left:0;right:0;text-align:center;font-size:12px;color:#53665a}
#pu-combined .ph-price{position:absolute;left:9%;top:62px;display:flex;flex-direction:column;align-items:center;gap:13px;font-size:13px}
#pu-combined .ph-coin{width:84px;height:84px;display:grid;place-items:center;font-size:40px;line-height:1;background:#f7f7f7;border:1px solid #879e8f;border-radius:50%;transform-origin:center}
#pu-combined .ph-business{position:absolute;right:6%;top:42px;width:49%;height:156px;background:#263c36;border-radius:13px;padding:23px;color:#fff;display:flex;flex-direction:column;justify-content:space-between}
#pu-combined .ph-business strong{font-size:24px;line-height:1.15;letter-spacing:-.025em;font-weight:400}
#pu-combined .ph-case{display:block;position:relative;width:25px;height:17px;border:1.5px solid currentColor;border-radius:3px;margin-top:5px}
#pu-combined .ph-case::before{content:"";position:absolute;width:11px;height:5px;border:1.5px solid currentColor;border-bottom:0;border-radius:3px 3px 0 0;top:-6px;left:5px}
#pu-combined .ph-room-line{position:absolute;left:22%;right:55%;top:104px;border-top:1px solid #879e8f;transform-origin:left center}
#pu-combined .ph-room-line::after{content:"";position:absolute;right:0;top:-4px;width:7px;height:7px;border-right:1px solid #879e8f;border-top:1px solid #879e8f;transform:rotate(45deg)}
.pu-home-scroll-pending #pu-combined .ph-quote{opacity:0;transform:translateY(32px)}
.pu-philosophy-motion-ready #pu-combined .ph-quote{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.pu-philosophy-motion-ready #pu-combined .ph-row:not(.ph-entered) .ph-title,.pu-philosophy-motion-ready #pu-combined .ph-row:not(.ph-entered) .ph-copy,.pu-philosophy-motion-ready #pu-combined .ph-row:not(.ph-entered) .ph-art{visibility:hidden}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-title{animation:ph-rise 0.975s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-copy{animation:ph-rise 1.05s 0.525s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-chip-a{animation:ph-card-a 0.675s 0.9s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-chip-b{animation:ph-card-b 0.675s 2.55s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-chip-c{animation:ph-card-c 0.675s 4.2s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-route-draw-a{animation:ph-route-draw 0.65s 1.575s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-route-draw-b{animation:ph-route-draw 0.65s 3.225s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-straight{animation:ph-line-grow 1.95s 1.275s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-step{animation:ph-step-enter 0.75s 0.9s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-step:nth-child(2){animation-delay:1.8s}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-step:nth-child(3){animation-delay:2.7s}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-caption{animation:ph-rise 0.75s 3.3s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-price{animation:ph-price-pop 0.975s 0.9s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-room-line{animation:ph-line-grow 0.9s 1.875s both}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-business{animation:ph-step-enter 0.975s 2.775s both}
@keyframes ph-rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes ph-card-a{from{opacity:0;transform:translateY(20px) rotate(-7deg)}to{opacity:1;transform:rotate(-7deg)}}
@keyframes ph-card-b{from{opacity:0;transform:translateY(20px) rotate(6deg)}to{opacity:1;transform:rotate(6deg)}}
@keyframes ph-card-c{from{opacity:0;transform:translateY(20px) rotate(-4deg)}to{opacity:1;transform:rotate(-4deg)}}
@keyframes ph-route-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes ph-step-enter{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:translateX(0)}}
@keyframes ph-line-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ph-price-pop{from{opacity:0;transform:scale(1.28)}to{opacity:1;transform:scale(1)}}
@media(max-width:850px){#pu-combined .ph-row{column-gap:32px}#pu-combined .ph-copy{font-size:16px}#pu-combined .ph-title{font-size:clamp(29px,4.3vw,40px)}#pu-combined .ph-business strong{font-size:20px}#pu-combined .ph-business{padding:18px}#pu-combined .ph-chip{font-size:12px;padding:10px;gap:6px}#pu-combined .ph-chip small{font-size:10px}}
@media(max-width:650px){#pu-combined .pu-philosophy{padding-top:24px}#pu-combined .ph-row{grid-template-columns:1fr;gap:24px;padding:34px 0}#pu-combined .ph-title{white-space:normal;font-size:32px}#pu-combined .ph-visual,#pu-combined .ph-reverse .ph-visual{grid-column:1;grid-row:2}#pu-combined .ph-copy,#pu-combined .ph-reverse .ph-copy{grid-column:1;grid-row:3}#pu-combined .ph-art{max-width:500px;margin:auto}#pu-combined .ph-business strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){#pu-combined .pu-philosophy *,#pu-combined .pu-philosophy *::after{animation:none!important;transition:none!important;visibility:visible!important}.pu-home-scroll-pending #pu-combined .ph-quote{opacity:1;transform:none}}

#pu-combined .ph-title,#pu-combined .ph-quote blockquote span{text-wrap:balance}
/* One reading surface at a time: green slides in from the left and returns left. */
#pu-combined .ph-row{position:relative;isolation:isolate}
#pu-combined .ph-row::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:calc(50% - 50vw);width:100vw;background:#263c36;transform:translateX(-101%);transition:transform .7s cubic-bezier(.25,.7,.25,1);pointer-events:none}
#pu-combined .ph-row.ph-surface-active::before{transform:translateX(0)}
#pu-combined .ph-title{font-weight:700}
#pu-combined .ph-title,#pu-combined .ph-copy,#pu-combined .ph-caption,#pu-combined .ph-price{transition:color .35s ease}
#pu-combined .ph-surface-active .ph-title,#pu-combined .ph-surface-active .ph-copy,#pu-combined .ph-surface-active .ph-caption,#pu-combined .ph-surface-active .ph-step,#pu-combined .ph-surface-active .ph-price{color:#fff}
#pu-combined .ph-surface-active .ph-chip,#pu-combined .ph-surface-active .ph-chip small,#pu-combined .ph-surface-active .ph-coin{color:#263c36}
#pu-combined .ph-surface-active .ph-business,#pu-combined .ph-surface-active .ph-step:last-child .ph-icon{background:#f7f7f7;color:#263c36;border-color:#f7f7f7}
#pu-combined .ph-surface-active .ph-route>path{stroke:#c7d7cc}
#pu-combined .ph-surface-active .ph-straight,#pu-combined .ph-surface-active .ph-room-line,#pu-combined .ph-surface-active .ph-room-line::after{border-color:#c7d7cc}
/* The circle and connecting arrow share the business card's vertical center. */
#pu-combined .ph-price{top:78px}
#pu-combined .ph-room-line{top:120px}
#pu-combined .pu-solutions-heading{padding:46px 0 34px;text-align:center;border-top:1px solid #bec5c0}
#pu-combined .pu-solutions-heading h2{font-size:clamp(30px,3.5vw,50px);line-height:1.15;font-weight:700;letter-spacing:-.04em;color:#263c36;margin:0}
@media(max-width:650px){#pu-combined .pu-solutions-heading{padding:34px 0 28px}}
@media(prefers-reduced-motion:reduce){#pu-combined .ph-row::before{transition:none}}
#pu-combined .ph-surface-active .ph-icon{color:#263c36}

/* Title clipping is driven by the actual moving edge of the green surface. */
#pu-combined .ph-title{font-size:clamp(39px,5.33vw,76.7px);white-space:nowrap;text-wrap:nowrap}
.pu-philosophy-motion-ready #pu-combined .ph-title{clip-path:inset(0 100% 0 0);color:#fff;transition:none}
.pu-philosophy-motion-ready #pu-combined .ph-entered .ph-title{animation:none;opacity:1;transform:none}
@media(max-width:850px){#pu-combined .ph-title{font-size:clamp(37.7px,5.59vw,52px)}}
@media(max-width:650px){#pu-combined .ph-title{font-size:41.6px;white-space:normal;text-wrap:balance}}

/* Allow English descenders room inside the animated title reveal. */
html[lang="en"] #pu-combined .ph-title{line-height:1.2;padding-bottom:.08em}
