/* Numbered orbital slide controls */
.fc-cinematic .fc-slide-dots{display:flex;gap:7px;align-items:center}.fc-cinematic .fc-slide-dots [data-slide-to]{position:relative;width:42px;height:42px;border:0;border-radius:50%;padding:0;background:transparent!important;color:#b8a798;display:grid;place-items:center;transition:color .35s,transform .35s}.fc-cinematic .fc-slide-dots [data-slide-to]:before,.fc-cinematic .fc-slide-dots [data-slide-to]:after{display:none}.fc-slide-orbit{position:absolute;inset:0;width:100%;height:100%;overflow:visible;transform:rotate(-90deg);pointer-events:none}.fc-orbit-track{fill:none;stroke:#c8a79130;stroke-width:1}.fc-orbit-progress{fill:none;stroke:#e6c6aa;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--fc-slide-progress,0)*100);opacity:0;transition:opacity .3s;filter:drop-shadow(0 0 2px #c8a79166)}.fc-slide-number{font-size:10px;font-weight:650;letter-spacing:.05em}.fc-cinematic .fc-slide-dots [aria-pressed=true]{color:#fff2e5;transform:scale(1.08)}.fc-slide-dots [aria-pressed=true] .fc-orbit-progress{opacity:1}.fc-slide-dots [aria-pressed=true] .fc-slide-number{animation:fc-number-in .5s both}
/* Individual architectural symbols: repeat only while on screen. */
.fc-symbol-analysis i{transform-origin:bottom;animation:fc-analysis 3.6s ease-in-out infinite}.fc-symbol-analysis i:nth-child(2){animation-delay:-.7s}.fc-symbol-analysis i:nth-child(3){animation-delay:-1.4s}.fc-symbol-analysis i:nth-child(4){animation-delay:-2.1s}.fc-symbol-building i{transform-origin:bottom;animation:fc-build 4.8s cubic-bezier(.4,0,.2,1) infinite}.fc-symbol-building i:nth-child(2){animation-delay:.3s}.fc-symbol-building i:nth-child(3){animation-delay:.6s}.fc-symbol-target i{animation:fc-target 4s ease-in-out infinite}.fc-symbol-target i:nth-child(2){animation-delay:.45s}.fc-symbol-target i:nth-child(3){animation-delay:.9s}.fc-line-symbol i{animation-play-state:paused}.fc-line-symbol.is-in-view i{animation-play-state:running}.fc-expertise-grid>a:hover .fc-line-symbol i{border-color:#73513b}.fc-expertise-bottom b{transition:transform .4s}.fc-expertise-grid>a:hover .fc-expertise-bottom b{transform:translate(4px,-4px)}
/* Mobile navigation: curtain, staggered links and morphing trigger. */
.fc-mobile-menu{background:#f3ece3;opacity:0;clip-path:inset(0 0 100% 0);transition:clip-path .55s cubic-bezier(.76,0,.24,1),opacity .35s;overscroll-behavior:contain}.fc-mobile-menu.is-open{opacity:1;clip-path:inset(0 0 0 0)}.fc-mobile-menu>div{opacity:0;transform:translateY(24px);transition:opacity .2s,transform .3s}.fc-mobile-menu.is-open>div{opacity:1;transform:none;transition:opacity .55s,transform .65s cubic-bezier(.22,1,.36,1);transition-delay:calc(100ms + var(--menu-order,0)*55ms)}.fc-mobile-menu>div>a:first-child{font-weight:800;letter-spacing:-.05em}.fc-mobile-menu>div>a:first-child>span{color:#a87e60}.fc-menu-phone{opacity:0;transition:opacity .3s}.is-open .fc-menu-phone{opacity:1;transition-delay:.4s}.fc-menu-button{position:relative;min-width:34px;height:40px}.fc-menu-button span{position:absolute;left:5px;right:5px;margin:0;top:14px;transition:transform .4s cubic-bezier(.22,1,.36,1),top .4s,width .4s}.fc-menu-button span+span{top:24px}.fc-menu-button[aria-expanded=true] span{top:19px;transform:rotate(45deg)}.fc-menu-button[aria-expanded=true] span+span{top:19px;transform:rotate(-45deg)}
.fc-editorial-reveal{transition:opacity .85s,transform 1s cubic-bezier(.22,1,.36,1),clip-path 1.15s cubic-bezier(.22,1,.36,1);transition-delay:var(--fc-editorial-delay,0ms)}.fc-editorial-reveal:not(.is-revealed){opacity:0;transform:translateY(45px)}.fc-editorial-image:not(.is-revealed){transform:translateY(25px);clip-path:inset(0 0 100% 0)}.fc-editorial-image.is-revealed{clip-path:inset(0)}.fc-service-rows article{position:relative}.fc-service-rows article:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:#b08b6d;transform:scaleX(0);transform-origin:left;transition:transform 1.2s .2s}.fc-service-rows article.is-revealed:after{transform:scaleX(1)}.fc-marketing-diagram.is-revealed span{animation:fc-diagram 3s ease-in-out infinite alternate}.fc-marketing-diagram.is-revealed span:nth-child(2n){animation-delay:1s}
@keyframes fc-analysis{0%,100%{transform:scaleY(1)}45%{transform:scaleY(.48);background:#c8a79118}70%{transform:scaleY(.85)}}@keyframes fc-build{0%,100%{transform:skewY(-15deg) translateY(0)}35%{transform:skewY(-15deg) translateY(-9px);background:#c8a79120}65%{transform:skewY(-15deg) translateY(3px)}}@keyframes fc-target{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.78);opacity:.45}}@keyframes fc-number-in{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes fc-diagram{to{background:#c8a79133;box-shadow:0 0 22px #c8a79122}}
@media(max-width:850px){.fc-cinematic .fc-slide-dots [data-slide-to]{width:36px;height:36px}.fc-cinematic .fc-hero-controls{gap:12px}.fc-mobile-menu{padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){.fc-editorial-reveal:not(.is-revealed){opacity:1;transform:none;clip-path:none}.fc-mobile-menu{transition:none}.fc-line-symbol i{animation:none!important}}


/* Five-slide controls: fixed grid positions keep slide copy above navigation. */
.fc-cinematic .fc-hero-stage{display:flex;flex-direction:column}.fc-cinematic .fc-hero-slide{order:0}.fc-cinematic .fc-hero-controls{order:1;column-gap:12px;row-gap:15px}.fc-cinematic .fc-slide-dots{gap:5px}.fc-cinematic .fc-hero-scroll{display:inline-flex;align-items:center;gap:20px}.fc-cinematic .fc-hero-scroll>span{position:relative;display:inline-flex;align-items:center;justify-content:center;width:28px;height:42px;margin:0;border:1px solid #c8a79140;border-radius:20px;color:#dfbea1;animation:fc-discover-drift 3.4s cubic-bezier(.45,0,.25,1) infinite}.fc-cinematic .fc-hero-scroll>span:after{content:'';position:absolute;left:50%;top:6px;width:1px;height:7px;background:linear-gradient(transparent,#e0baa0);transform:translateX(-50%);opacity:0;animation:fc-discover-trail 3.4s ease-in-out infinite}.fc-cinematic .fc-hero-scroll:hover>span{border-color:#c8a791a0;background:#c8a7910c}@keyframes fc-discover-drift{0%,15%,100%{transform:translateY(0)}48%,58%{transform:translateY(7px)}82%{transform:translateY(-1px)}}@keyframes fc-discover-trail{0%,15%,80%,100%{opacity:0;scale:1 .5}40%,55%{opacity:.6;scale:1 1}}
@media(max-width:850px){.fc-cinematic .fc-hero-controls{display:grid;grid-template-columns:28px auto 28px 1fr 28px;gap:14px 8px}.fc-cinematic .fc-hero-controls>.fc-slide-dots{grid-row:2;grid-column:1/-1;justify-content:flex-start;gap:9px}.fc-cinematic .fc-hero-controls>[data-slide-pause]{grid-column:5;grid-row:1}.fc-cinematic .fc-hero-scroll>span{width:25px;height:36px}.fc-cinematic .fc-slide-dots [data-slide-to]{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){.fc-cinematic .fc-hero-scroll>span,.fc-cinematic .fc-hero-scroll>span:after{animation:none;transform:none}}
