/* One continuous, scroll-directed 3D presentation; details remain available below. */
.scroll-story{height:1370svh}.story-stage{perspective:1600px}
.photo-samples{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.photo-samples figure:first-child{grid-column:1/-1}.photo-samples img,.collaboration-sample img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;border-radius:4px}.photo-samples figcaption{display:flex;flex-direction:column;gap:6px;margin-top:12px}.photo-samples figcaption strong{font-size:17px;font-weight:500;color:#ecf4ef}.photo-samples figcaption span{font-size:13px;color:#9dbaa8;line-height:1.6}.photo-samples>p{grid-column:1/-1;color:#8fa698;font-size:12px;line-height:1.7}.collaboration-sample{margin-top:28px}.collaboration-sample figcaption{font-size:13px;line-height:1.8;color:#9dbaa8;margin-top:13px}
.chapter-copy.service-chapter{width:43%;max-width:650px}
.cinematic-title{display:flex;align-items:center;gap:15px;font-size:17px;color:#dceae2;line-height:1.5;margin-bottom:24px;font-weight:500;letter-spacing:.01em}
.cinematic-title>span{font-family:Manrope,sans-serif;font-size:14px;color:#62e6a4;border-right:1px solid #467256;padding-right:15px;letter-spacing:.02em}
.chapter-copy.service-chapter h2{font-size:clamp(35px,3.55vw,62px);line-height:1.32;letter-spacing:-.055em;font-weight:650}
.chapter-copy.service-chapter .chapter-description{max-width:500px;font-size:17px;line-height:1.85;margin-top:22px;color:#b6ccbf}
.cinema-deliverables{display:flex;flex-wrap:wrap;gap:6px 15px;margin:24px 0 0;padding:0;list-style:none;color:#85c59f;font-size:14px;line-height:1.7}
.cinema-deliverables li+li:before{content:'/';margin-right:15px;color:#476f56}
.cinema-action{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid #426752;font-size:15px;line-height:1.5;margin-top:23px;padding:9px 0;color:#e7f1e9}
.cinema-action span{color:#7beeb1;font-size:21px}.cinema-action:hover{color:#7beeb1;border-color:#7beeb1}
.visual-caption{left:52%;right:3%;bottom:92px;max-width:none;align-items:center;letter-spacing:0;font-size:12px;line-height:1.65;color:#91b49e;padding-inline:16px}
.visual-caption small{display:none}

.cinema-word{bottom:12%}.cinema-word span{font-size:26vw;letter-spacing:-.075em}
.scene-foot{background:linear-gradient(180deg,#080c0b00,#080c0ba6);backdrop-filter:none;height:76px}
.chapter-toggle{font-size:14px}.chapter-toggle #chapter-count{font-size:12px;letter-spacing:.06em}.skip-story{font-size:14px}
.cinema-fallback{display:none;position:absolute;left:56%;width:34%;top:26%;padding:20px;background:#153021;border:1px solid #508666;border-radius:7px;opacity:var(--inside,0)}
.webgl-unavailable .cinema-fallback{display:block}.cinema-fallback img{width:100%;aspect-ratio:1.5;object-fit:cover}.cinema-fallback strong{display:block;font-size:25px;padding:18px 0 4px}
.service-reference{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:9%;padding-block:100px;align-items:start;max-width:1440px}
.reference-heading{position:sticky;top:135px}.reference-heading h2{font-size:clamp(34px,3.6vw,52px);line-height:1.4;margin-top:20px}.reference-heading h2 span{display:block;color:#80e1ac}.reference-heading>p:not(.section-label){font-size:17px;color:#a2bbac;line-height:1.9;margin-top:22px}.reference-heading>.text-link{font-size:15px;margin-top:23px}
.service-details{border-top:1px solid #61866d}.service-detail{border-bottom:1px solid var(--line);scroll-margin-top:115px}.service-detail summary{display:flex;align-items:center;gap:24px;list-style:none;padding:27px 0;cursor:pointer}.service-detail summary::-webkit-details-marker{display:none}.detail-index{font-size:13px;color:#6cb688;font-family:Manrope,sans-serif}.service-detail summary h3{font-size:23px;font-weight:500;line-height:1.5;letter-spacing:-.04em}.service-detail summary p{font-size:13px;color:#8ba593;line-height:1.8;margin-top:7px}.service-detail summary>b{font-size:23px;font-weight:400;color:#82c59c;margin-left:auto;transition:transform .2s}.service-detail[open] summary>b{transform:rotate(45deg)}.service-detail[open] summary h3{color:#7febae}
.service-detail-body{padding:0 0 28px 42px}.service-detail-body>div>p{font-size:16px;line-height:1.95;color:#b3c8bb}.service-detail-body ul{display:grid;gap:12px;margin:21px 0;font-size:15px;color:#e1e9e3}.service-detail-body li{padding-left:18px;position:relative}.service-detail-body li:before{content:'';position:absolute;width:5px;height:1px;background:#71c696;left:0;top:13px}.service-detail-body .text-link{font-size:14px}.service-detail-body .button{font-size:14px;margin-top:18px}.menu-demo-wrap{margin-top:28px;max-width:500px}.service-detail-body .menu-demo-wrap>p{font-size:12px;color:#8caa95;line-height:1.8}
.reduced-motion .scroll-story{height:100svh}.reduced-motion .service-chapter{display:none}.reduced-motion .cinema-fallback{display:none}
@media(min-width:761px) and (max-width:1100px){.chapter-copy.service-chapter{width:45%}.chapter-copy.service-chapter h2{font-size:34px}.chapter-copy.service-chapter .chapter-description{font-size:16px;line-height:1.8;max-width:410px}.cinematic-title{font-size:16px;margin-bottom:20px}.cinema-deliverables{font-size:13px;gap:5px 10px}.cinema-deliverables li+li:before{margin-right:10px}.cinema-action{font-size:14px}.service-reference{gap:6%;grid-template-columns:1fr 1.35fr}.service-detail summary{gap:18px}.service-detail summary h3{font-size:21px}.service-detail-body{padding-left:31px}}
@media(max-width:760px){
 .scroll-story{height:1420svh}.story-stage{min-height:620px}
 .chapter-copy.service-chapter{top:91px;left:var(--pad);width:calc(100% - 48px);max-width:none}
 .cinematic-title{font-size:15px;gap:12px;margin-bottom:15px;line-height:1.5}.cinematic-title>span{font-size:13px;padding-right:12px}
 .chapter-copy.service-chapter h2{font-size:clamp(26px,7.1vw,31px);line-height:1.35;letter-spacing:-.055em;max-width:100%}
 .chapter-copy.service-chapter .chapter-description{font-size:16px;line-height:1.75;margin-top:14px;max-width:100%;color:#b6ccbf}
 .cinema-deliverables{font-size:14px;margin-top:15px;gap:4px 11px;line-height:1.6}.cinema-deliverables li+li:before{margin-right:11px}
 .cinema-action{font-size:14px;margin-top:14px;padding:6px 0;gap:26px;min-height:35px}.cinema-action span{font-size:18px}
 .visual-caption{left:3%;right:3%;bottom:66px;font-size:12px;line-height:1.55;padding-inline:10px;color:#88a996;max-width:none;letter-spacing:0}
 .scene-foot{height:57px;left:18px;right:18px;gap:10px}.chapter-toggle{gap:9px;font-size:14px}.chapter-toggle #chapter-count{font-size:11px}.skip-story{font-size:13px}.skip-story span{margin-left:5px}
 
 .cinema-fallback{left:10%;width:80%;top:var(--content-top,46%);padding:12px;max-height:calc(100% - var(--content-top,46%) - 108px);overflow:hidden}.cinema-fallback img{max-height:23svh;aspect-ratio:1.9;object-fit:cover}.cinema-fallback strong{font-size:19px;padding-top:12px}
 .service-reference{grid-template-columns:minmax(0,1fr);gap:34px;padding-block:60px}.reference-heading{position:static}.reference-heading .section-label{font-size:13px}.reference-heading h2{font-size:33px;margin-top:17px}.reference-heading h2 span{display:inline}.reference-heading>p:not(.section-label){font-size:16px;margin-top:17px;line-height:1.85}.reference-heading>.text-link{font-size:14px;margin-top:13px}
 .service-detail{scroll-margin-top:95px}.service-detail summary{padding:24px 0;gap:16px;align-items:flex-start}.detail-index{font-size:12px;padding-top:5px}.service-detail summary h3{font-size:20px;line-height:1.4}.service-detail summary p{font-size:12px;margin-top:7px}.service-detail summary>b{font-size:21px;line-height:1.5}.service-detail-body{padding:0 0 26px}.service-detail-body>div>p{font-size:16px;line-height:1.85}.service-detail-body ul{font-size:15px;gap:10px}.service-detail-body .text-link{font-size:14px}.service-detail-body .menu-demo{padding:21px}.menu-demo-wrap{margin-top:24px}
}
@media(max-width:760px) and (max-height:740px){.chapter-copy.service-chapter{top:85px}.cinematic-title{font-size:14px;margin-bottom:11px;line-height:1.4}.chapter-copy.service-chapter h2{font-size:26px;line-height:1.3}.chapter-copy.service-chapter .chapter-description{font-size:15px;line-height:1.65;margin-top:10px}.cinema-deliverables{font-size:13px;margin-top:11px;gap:3px 9px}.cinema-deliverables li+li:before{margin-right:9px}.cinema-action{font-size:14px;margin-top:9px;padding:4px 0;min-height:30px}.visual-caption{font-size:12px;bottom:64px;line-height:1.5}}
@media(max-width:380px){.chapter-copy.service-chapter h2{font-size:26px}.cinema-deliverables{font-size:13px;gap:4px 9px}.cinema-deliverables li+li:before{margin-right:9px}.service-detail summary h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){.cinema-deliverables,.cinema-action{transition:none}.service-detail summary>b{transition:none}}

.webgl-unavailable #phone-scene{visibility:hidden}
.scene-progress span{width:100%;transform:scaleX(0);transform-origin:left center}
.webgl-ready .scene-fallback{display:none}
@media(pointer:coarse),(max-width:760px){
 .stage-grid,.cinema-word,.cinema-media,.cinema-light{display:none}
 .stage-atmosphere{inset:0;transform:none!important;will-change:auto}
 .site-header.is-scrolled{backdrop-filter:none;background:#080c0bf5}
 .chapter-copy,.chapter-copy h1,.chapter-copy h2,.chapter-description,.cover-intro{will-change:auto}
 .chapter-copy.is-active{will-change:transform,opacity}
}
