.home-opening.cycle-opening{isolation:isolate;color:#fff;background:#f3f4ee;height:auto;min-height:0;position:relative;overflow:clip}.cycle-opening-stage{position:relative}.cycle-hero-photo,.cycle-hero-photo:after{position:absolute;inset:0}.cycle-hero-photo{height:100svh;min-height:650px;animation:.8s 1.6s both cycle-photo-in}.cycle-hero-photo img{object-fit:cover;object-position:center 55%;width:100%;height:100%}.cycle-hero-photo:after{content:"";background:linear-gradient(90deg,#100f0b66,#100f0b22),linear-gradient(#0000 45%,#100f0b66)}.cycle-hero-copy{z-index:1;flex-direction:column;justify-content:center;align-items:flex-start;height:100svh;min-height:650px;padding:160px 6% 48px;display:flex;position:relative}.home-story .cycle-opening h1{color:#fff;letter-spacing:-.055em;margin:0;font-size:clamp(76px,10.8vw,180px);font-weight:900;line-height:.98}.cycle-title-line{margin:-.04em -.06em;padding:.04em .06em;display:block;overflow:hidden}.cycle-title-line>span{animation:.95s cubic-bezier(.16,1,.3,1) 2.05s both cycle-heading-in;display:block}.cycle-title-line:nth-child(2)>span{animation-delay:2.2s}.cycle-purpose{border-top:6px solid #00a65b;min-width:44%;margin:26px 0 0;padding-top:22px;font-size:clamp(18px,1.7vw,28px);font-weight:750;line-height:1.8;animation:.7s 2.5s both cycle-title-in}.cycle-introduction{color:#202720;background:#f3f4ee;padding:90px 8%;position:relative}.cycle-introduction .cycle-concept-copy{letter-spacing:.01em;max-width:1050px;margin:0;font-size:clamp(20px,2.35vw,34px);font-weight:650;line-height:1.8}.cycle-concept-band{--band-delay:0s;isolation:isolate;width:fit-content;max-width:100%;margin-bottom:10px;padding:4px 12px;display:block;position:relative}.cycle-concept-band:nth-child(2){--band-delay:90ms}.cycle-concept-band:nth-child(3){--band-delay:.18s}.cycle-concept-band:nth-child(4){--band-delay:.27s}.cycle-concept-band:nth-child(5){--band-delay:.36s}.cycle-concept-band:before{content:"";z-index:-1;transform-origin:0;background:#f3f4ee;position:absolute;inset:0}.cycle-concept-band>span{display:block}.cycle-intro-screen{z-index:3;color:#007b42;pointer-events:none;background:#f3f4ee;justify-content:center;align-items:center;height:100svh;min-height:650px;padding:120px 6% 48px;animation:.6s 1.8s both cycle-intro-out;display:flex;position:absolute;inset:0 0 auto}.opening-logo{width:clamp(180px,23vw,300px);height:auto;overflow:visible}.opening-logo-ring-reveal{stroke-dasharray:1;stroke-dashoffset:1px;animation:1s cubic-bezier(.4,0,.2,1) .1s forwards opening-logo-draw}.opening-logo-word{opacity:0;animation:.55s ease-out .6s forwards cycle-photo-in}.opening-logo-details{opacity:0;animation:.4s ease-out 1s forwards cycle-photo-in}@keyframes opening-logo-draw{to{stroke-dashoffset:0}}@keyframes cycle-heading-in{0%{opacity:0;transform:translateY(110%)}to{opacity:1;transform:translate(0,0)}}@keyframes cycle-title-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translate(0,0)}}@keyframes cycle-intro-out{to{opacity:0;visibility:hidden}}@keyframes cycle-photo-in{0%{opacity:0}to{opacity:1}}.cycle-opening[data-started=true] .cycle-intro-screen{display:none}.cycle-opening[data-started=true] :is(.cycle-hero-photo,.cycle-title-line>span,.cycle-purpose){opacity:1;animation:none}.home-opening.cycle-opening[data-motion=true]{height:240svh}.cycle-opening[data-motion=true] .cycle-opening-stage{height:100svh;position:sticky;top:0;overflow:clip}.cycle-opening[data-motion=true] .cycle-introduction{background:0 0;align-items:center;padding:130px 8% 48px;display:flex;position:absolute;inset:0;transform:translateY(110svh)}.cycle-opening[data-motion=true] .cycle-concept-band:before{transition:transform .65s cubic-bezier(.16, 1, .3, 1) var(--band-delay);transform:scaleX(0)}.cycle-opening[data-motion=true] .cycle-concept-band>span{opacity:0;transition:opacity .4s calc(var(--band-delay) + .18s), transform .4s calc(var(--band-delay) + .18s);transform:translateY(8px)}.cycle-opening[data-motion=true] .cycle-introduction[data-revealed=true] .cycle-concept-band:before{transform:scaleX(1)}.cycle-opening[data-motion=true] .cycle-introduction[data-revealed=true] .cycle-concept-band>span{opacity:1;transform:translate(0,0)}@media (max-width:700px){.cycle-hero-copy{justify-content:center;min-height:0;padding:100px 24px}.cycle-hero-photo img{object-position:57% center}.home-story .cycle-opening h1{font-size:clamp(52px,16.2vw,112px)}.cycle-purpose{border-top-width:4px;width:100%;margin-top:28px;padding-top:20px;font-size:clamp(18px,4.8vw,24px)}.cycle-intro-screen{padding:110px 24px 40px}.cycle-introduction{padding:56px 24px}.cycle-opening[data-motion=true] .cycle-introduction{padding:110px 24px 30px}.cycle-introduction .cycle-concept-copy{font-size:clamp(17px,4.5vw,23px);line-height:1.85}.cycle-concept-band{margin-bottom:8px;padding:4px 8px}}@media (prefers-reduced-motion:reduce){.cycle-intro-screen{display:none}.cycle-opening :is(.cycle-hero-photo,.cycle-title-line>span,.cycle-purpose){animation:none}.cycle-opening .cycle-concept-band:before,.cycle-opening .cycle-concept-band>span{transition:none}}@media (max-width:700px){.cycle-opening[data-motion=true] .cycle-opening-stage,.cycle-hero-photo,.cycle-hero-copy,.cycle-intro-screen{height:100dvh;min-height:0}}.home-story .cycle-opening h1.cycle-hero-headline{letter-spacing:.015em;font-size:clamp(40px,5.2vw,88px);line-height:1.45}.cycle-hero-copy .cycle-purpose{border:0;margin-top:18px;padding-top:28px;font-size:clamp(20px,2.35vw,34px);line-height:1.5;position:relative}.cycle-purpose:before{content:"";background:#00a65b;width:min(38vw,520px);height:6px;position:absolute;top:0;left:0}.cycle-purpose>span{display:block}.cycle-hero-description{max-width:1200px;margin:12px 0 0;font-size:clamp(14px,1.5vw,22px);font-weight:650;line-height:1.8}@media (max-width:700px){.cycle-hero-copy{padding:112px 24px 32px}.home-story .cycle-opening h1.cycle-hero-headline{font-size:clamp(27px,8.5vw,50px)}.cycle-hero-copy .cycle-purpose{margin-top:18px;padding-top:22px;font-size:clamp(18px,4.8vw,25px)}.cycle-purpose:before{width:60%;height:4px}.cycle-hero-description{font-size:14px;line-height:1.75}}@media (min-width:701px) and (max-height:800px){.home-story .cycle-opening h1.cycle-hero-headline{font-size:clamp(40px,4.8vw,70px)}}
