.approach-section{padding:40px 40px 24px 100px;scroll-margin-top:36px;font-family:var(--font-main)}.approach-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.approach-header .section-title{margin:0!important}.approach-accordion{--approach-expanded-width:420px;display:flex;gap:8px;width:100%;height:clamp(480px,45vw,560px);min-width:0;overflow-anchor:none;isolation:isolate}.approach-panel{position:relative;flex:8.25 1 0;min-width:0;overflow:hidden;border-radius:24px;color:#20271e;background:#c0d491;isolation:isolate}.approach-panel.is-active{flex-grow:67}.approach-panel[data-approach=plan]{background:#eeb0c4}.approach-panel[data-approach=design]{background:#b5b2f1}.approach-panel[data-approach=develop]{background:#8bd3c9}.approach-panel[data-approach=refine]{background:#eec495}.approach-image,.approach-media{position:absolute;inset:0;width:100%;height:100%}.approach-media{z-index:-1;background:var(--approach-art,linear-gradient(140deg,#dbe6b8,#a5c36d));background-position:center;background-size:cover}.approach-image{display:block;object-fit:cover;object-position:var(--approach-image-position,50% 50%);filter:contrast(1.035) saturate(1.16) brightness(1.08);transform:scale(1);transition:transform .5s cubic-bezier(.22,1,.36,1)}.approach-accordion.is-transitioning .approach-panel.is-active .approach-image{will-change:transform}.approach-image[hidden]{display:none}.approach-media::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 55% 38%,transparent 48%,rgba(12,22,30,.015) 76%,rgba(12,22,30,.075) 100%);opacity:.7;transition:opacity .65s ease;pointer-events:none}.approach-panel.is-active .approach-media::after{opacity:.85}.approach-media::before{content:"";position:absolute;z-index:1;inset:auto auto 0 0;width:min(100%,calc(var(--approach-expanded-width,420px) + 140px));height:min(100%,var(--approach-reading-height,300px));background:linear-gradient(to top,rgba(var(--approach-reading-rgb,201,218,199),.76),rgba(var(--approach-reading-rgb,201,218,199),.62) 56%,transparent);-webkit-mask-image:linear-gradient(to right,#000 82%,transparent);mask-image:linear-gradient(to right,#000 82%,transparent);opacity:.7;transition:opacity .65s ease;pointer-events:none}.approach-panel.is-active .approach-media::before{opacity:1}.approach-trigger{position:absolute;z-index:2;inset:0;width:100%;height:100%;border:0;border-radius:inherit;background:0 0;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}.approach-trigger:focus-visible{outline:2px solid #20271e;outline-offset:-5px}.approach-number{position:absolute;z-index:3;top:26px;left:50%;transform:translateX(-50%);font-size:.66rem;font-weight:500;font-variant-numeric:tabular-nums;pointer-events:none}.approach-panel.is-active .approach-number{left:24px;transform:none}.approach-tags{position:absolute;z-index:3;top:23px;right:24px;display:flex;gap:5px;white-space:nowrap;pointer-events:none}.approach-tag{padding:5px 10px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:rgba(255,255,255,.4);color:#273023;font-size:.61rem;font-weight:500;line-height:1.3}.approach-strip-title{position:absolute;z-index:4;left:50%;bottom:82px;writing-mode:vertical-rl;transform:translateX(-50%) rotate(180deg);font-size:1.2rem;font-weight:550;color:#20271e;letter-spacing:-.035em;white-space:nowrap;pointer-events:none;transition:opacity .2s ease}.approach-plus{position:absolute;z-index:4;left:50%;bottom:26px;width:34px;height:34px;transform:translateX(-50%);border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(255,255,255,.72);color:#20271e;opacity:1;pointer-events:none;transition:opacity .2s ease}.approach-plus::after,.approach-plus::before{content:"";position:absolute;top:50%;left:50%;width:10px;height:1.5px;border-radius:2px;background:currentColor;transform:translate(-50%,-50%)}.approach-plus::after{transform:translate(-50%,-50%) rotate(90deg)}.approach-panel.is-active .approach-plus,.approach-panel.is-active .approach-strip-title{opacity:0}.approach-content{position:absolute;z-index:3;bottom:30px;left:24px;width:var(--approach-expanded-width);max-width:450px;pointer-events:none}.approach-title{margin:0 0 12px;color:#20271e;font-size:clamp(2.4rem,4vw,3.4rem);font-weight:550;line-height:1.08;letter-spacing:-.055em;white-space:nowrap}.approach-description{margin:0 0 22px;color:#303c2c;font-size:.87rem;line-height:1.65;font-weight:400;text-wrap:pretty}.approach-cta{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:42px;padding:10px 16px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#20251f;color:#fff;box-shadow:none;font-size:.72rem;font-family:inherit;font-weight:500;line-height:1.4;text-decoration:none;pointer-events:auto}.approach-cta:disabled{cursor:default;-webkit-text-fill-color:currentColor}.approach-cta svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s cubic-bezier(.22,1,.36,1)}.approach-cta:hover svg{transform:translateX(3px)}.approach-cta:focus-visible{outline:2px solid #3c587e;outline-offset:4px}.approach-panel::after{content:"";position:absolute;z-index:1;left:24px;right:24px;bottom:12px;height:2px;border-radius:2px;background:rgba(48,60,44,.13);opacity:0;transition:opacity .3s ease;pointer-events:none}.approach-panel.is-active::after{opacity:1}.approach-progress{position:absolute;z-index:4;left:24px;right:24px;bottom:12px;height:2px;overflow:hidden;border-radius:2px;opacity:0;pointer-events:none;transition:opacity .18s ease}.approach-panel.is-active .approach-progress{opacity:1}.approach-progress-fill{display:block;width:100%;height:100%;background:#171b16;border-radius:inherit;transform:scaleX(0);transform-origin:left center}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.approach-panel:hover .approach-image{transform:scale(1.015)}}.approach-reveal{opacity:0;filter:blur(2px);transform:translateY(6px);transition:opacity .16s ease,filter .16s ease,transform .16s ease;transition-delay:0s}.approach-panel.is-active .approach-reveal{opacity:1;filter:blur(0);transform:translateY(0);transition-duration:.48s;transition-timing-function:cubic-bezier(.22,1,.36,1)}.approach-cta.approach-reveal{filter:none;transform:none;transition-property:opacity}.approach-description.approach-reveal,.approach-title.approach-reveal{filter:none;transform:none;transition:none}.approach-panel.is-active .approach-copy-awaiting{opacity:0}.approach-copy-word{display:inline-block;vertical-align:baseline}.approach-panel.is-active .approach-tag:first-child{transition-delay:.04s}.approach-panel.is-active .approach-tag:nth-child(2){transition-delay:.07s}.approach-panel.is-active .approach-tag:nth-child(3){transition-delay:.1s}.approach-panel.is-active .approach-title{transition-delay:.08s}.approach-panel.is-active .approach-description{transition-delay:.15s}.approach-panel.is-active .approach-cta{transition-delay:.22s}.approach-header .text-scroll-reveal:not(.text-reveal-visible):not(.text-reveal-complete) .text-reveal-unit{filter:blur(2px)}.approach-header .text-scroll-reveal.text-reveal-visible:not(.text-reveal-complete) .text-reveal-unit{animation-name:approachHeadingResolve;animation-duration:.55s}@keyframes approachHeadingResolve{from{opacity:0;filter:blur(2px);transform:translateY(6px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}@media (max-width:1200px){.approach-section{padding:32px 40px 24px}}@media (min-width:641px) and (max-width:1024px){.approach-accordion{height:500px}.approach-panel{flex-grow:10}.approach-panel.is-active{flex-grow:60}.approach-content{left:20px}.approach-tags{right:18px;top:58px;gap:4px}.approach-tag{padding:4px 7px;font-size:.57rem}.approach-title{font-size:2.6rem}.approach-description{font-size:.82rem}.approach-panel.is-active .approach-number{left:20px}}@media (max-width:640px){.approach-section{padding:24px 24px 16px}.approach-media::before{-webkit-mask-image:linear-gradient(to right,#000 90%,transparent);mask-image:linear-gradient(to right,#000 90%,transparent)}.approach-header{gap:16px;margin-bottom:24px}.approach-accordion{flex-direction:column;height:auto;gap:8px}.approach-panel{flex:0 0 auto;width:100%;height:78px;border-radius:22px}.approach-panel.is-active{height:420px}.approach-content{left:22px;bottom:28px;max-width:none;width:calc(100% - 44px)}.approach-title{font-size:2.5rem}.approach-description{font-size:.86rem;line-height:1.65}.approach-number,.approach-panel.is-active .approach-number{top:26px;left:22px;transform:none}.approach-tags{top:22px;right:18px;gap:4px}.approach-tag{padding:5px 7px;font-size:.56rem}.approach-strip-title{left:62px;top:50%;bottom:auto;writing-mode:horizontal-tb;transform:translateY(-50%);font-size:1.2rem}.approach-plus{left:auto;right:20px;top:50%;bottom:auto;transform:translateY(-50%)}.approach-cta{min-height:44px}.approach-panel::after{left:22px;right:22px;bottom:12px}.approach-progress{left:22px;right:22px}}@media (max-width:380px){.approach-header .section-title{font-size:1.8rem!important}.approach-tags{top:58px;left:22px;right:auto}}@media (prefers-reduced-motion:reduce){.approach-cta svg,.approach-media::after,.approach-media::before,.approach-panel::after,.approach-plus,.approach-progress,.approach-reveal,.approach-strip-title{transition:none!important;filter:none!important}.approach-cta:hover svg,.approach-reveal{transform:none}.approach-image{animation:none!important;transition:none!important}}