.hero-scroll-wrapper{background-color:var(--color-text-main);z-index:10;height:250vh;position:relative}.hero-sticky-frame{--progress:0;justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.hero-layout{width:calc(100% - (var(--edge-padding) * 2 * var(--progress)));height:calc(100vh - (18vh * var(--progress)));border-radius:calc(14px * var(--progress));margin-top:calc((var(--nav-height) * .5) * var(--progress));will-change:width, height, border-radius, margin-top;transition:none;position:relative;overflow:hidden}.hero-media{background-color:var(--color-text-main);width:100%;height:100%;position:absolute;inset:0}.hero-media img{object-fit:cover;opacity:.7;width:100%;height:100%;transition:transform 2.5s var(--ease-out-expo);transform:scale(1.05)}body.loaded .hero-media img{transform:scale(1)}.hero-content{z-index:3;isolation:isolate;flex-direction:column;justify-content:flex-end;height:100%;padding:clamp(36px,5vw,72px) clamp(36px,5vw,72px) clamp(60px,10vh,120px);display:flex;position:relative}.hero-headline{color:#fff;letter-spacing:-2px;text-shadow:0 4px 30px #0000004d;max-width:950px;font-size:clamp(3.2rem,6.2vw,8rem);font-weight:500;line-height:1.1}.hero-line{white-space:nowrap;display:block}.hero-scroll-hint{color:#fff9;font-size:.78rem;font-family:var(--font-head);letter-spacing:2px;text-transform:uppercase;z-index:4;flex-direction:column;align-items:center;gap:8px;animation:2s ease-in-out infinite bounceHint;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.hero-scroll-hint span{writing-mode:vertical-lr}@keyframes bounceHint{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(6px)}}.intro-grid{gap:var(--grid-gap);grid-template-columns:4fr 5fr;align-items:center;display:grid}.intro-meta{flex-direction:column;gap:36px;display:flex}.intro-text{color:var(--color-text-muted);max-width:90%;font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.8}.intro-image-mini{aspect-ratio:4/5;border-radius:4px;width:80%;max-width:300px;overflow:hidden}.intro-image-mini img{object-fit:cover;width:100%;height:100%}.intro-statement{font-family:var(--font-head);letter-spacing:-1px;color:var(--color-text-main);font-size:clamp(1.8rem,3.1vw,3.1rem);font-weight:500;line-height:1.2}.expertise-header-wrap{margin-bottom:var(--space-sm);justify-content:space-between;align-items:flex-end;padding-bottom:20px;display:flex}.section-header-left{flex:1}.expertise-cards-wrapper{position:relative}.carousel-nav{align-items:center;gap:16px;display:flex}.nav-arrow{width:48px;height:48px;color:var(--color-text-main);border:1px solid var(--color-border);cursor:pointer;pointer-events:auto;transition:border-color .4s ease, color .4s ease, transform .4s var(--ease-out-expo);background-color:#0000;border-radius:50%;justify-content:center;align-items:center;display:flex}.nav-arrow:hover{border-color:var(--color-text-main);color:var(--color-text-main);transform:scale(1.05)}.nav-arrow svg{transition:transform .3s var(--ease-out-expo)}.nav-arrow.prev:hover svg{transform:translate(-4px)}.nav-arrow.next:hover svg{transform:translate(4px)}.expertise-cards-grid{scroll-snap-type:x mandatory;scrollbar-width:none;gap:clamp(18px,2.5vw,26px);margin:0 16px;padding-bottom:32px;display:flex;overflow-x:auto}.expertise-cards-grid::-webkit-scrollbar{display:none}.exp-card{scroll-snap-align:start;aspect-ratio:3/4.5;background-color:var(--color-text-main);color:#fff;cursor:pointer;border-radius:0;flex-direction:column;flex:0 0 calc(28.5714% - clamp(18px,2.5vw,26px)/1.16667);justify-content:space-between;min-width:240px;padding:clamp(18px,2vw,26px);text-decoration:none;display:flex;position:relative;overflow:hidden}.exp-card-bg{z-index:0;opacity:.45;width:100%;height:100%;transition:opacity .8s var(--ease-out-expo), transform 1.5s var(--ease-out-expo);position:absolute;inset:0}.exp-card-bg img{object-fit:cover;width:100%;height:100%}.exp-card:hover .exp-card-bg{opacity:.75;transform:scale(1.05)}.exp-card-content{z-index:1;flex-direction:column;justify-content:space-between;height:100%;display:flex;position:relative}.exp-num{font-family:var(--font-body);opacity:.75;font-size:clamp(1rem,1.5vw,1.6rem);font-weight:300}.exp-bottom{transition:transform .6s var(--ease-out-expo);transform:translateY(20px)}.exp-card:hover .exp-bottom{transform:translateY(0)}.exp-title{font-family:var(--font-head);letter-spacing:-.5px;margin-bottom:12px;font-size:clamp(1.1rem,1.6vw,1.7rem);font-weight:600;line-height:1.1}.exp-arrow{font-family:var(--font-head);text-transform:uppercase;letter-spacing:2px;opacity:0;transition:opacity .6s var(--ease-out-expo), transform .6s var(--ease-out-expo);align-items:center;gap:8px;font-size:.8rem;font-weight:700;display:inline-flex;transform:translate(-12px)}.exp-arrow svg{transition:transform .3s var(--ease-out-expo);font-style:normal}.exp-card:hover .exp-arrow{opacity:1;transform:translate(0)}.exp-card:hover .exp-arrow svg{transform:translate(2px,-2px)}.services-layout{gap:var(--grid-gap);grid-template-columns:1fr 1fr;align-items:flex-start;display:grid;position:relative}.services-visuals{top:calc(var(--nav-height) + 36px);position:sticky}.services-intro{color:var(--color-text-muted);max-width:90%;margin-bottom:36px;font-size:clamp(1rem,1.35vw,1.15rem);line-height:1.6}.services-img-stack{aspect-ratio:4/5;background-color:var(--color-curtain);border-radius:6px;width:85%;height:650px;position:relative;overflow:hidden}.service-img-wrap{opacity:0;z-index:1;width:100%;height:100%;transition:opacity .8s var(--ease-out-expo);cursor:pointer;display:block;position:absolute;inset:0}.service-img-wrap.is-active{opacity:1;z-index:2}.service-img-wrap img{object-fit:cover;width:100%;height:100%;transition:transform 1.2s var(--ease-out-expo);transform:scale(1.08)}.service-img-wrap.is-active img{transform:scale(1)}.watermark{display:none}.services-list{flex-direction:column;padding-top:8vh;padding-bottom:18vh;display:flex}.service-item{font-family:var(--font-head);color:#c8d2e8;transition:color .4s ease, transform .6s var(--ease-out-expo);cursor:pointer;letter-spacing:-.5px;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:clamp(16px,2.8vw,30px) 0;font-size:clamp(1.7rem,2.7vw,3.6rem);font-weight:600;line-height:1.1;text-decoration:none;display:flex}.service-item.is-active{color:var(--color-text-main);transform:translate(12px)}.service-arrow{background-color:var(--color-text-main);color:#fff;z-index:1;opacity:0;width:clamp(36px,3.5vw,54px);height:clamp(36px,3.5vw,54px);transition:opacity .6s var(--ease-out-expo), transform .6s var(--ease-out-expo);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden;transform:scale(.5)translate(-36px)}.service-arrow:before{content:"";aspect-ratio:1;background-color:var(--color-accent-dark);width:140%;transition:transform .6s var(--ease-out-expo);z-index:-1;border-radius:50%;position:absolute;top:100%;left:50%;transform:translate(-50%)scale(0)}.service-arrow svg{z-index:2;transition:transform .3s;position:relative}.service-item.is-active .service-arrow,.service-item:hover .service-arrow{opacity:1;transform:scale(1)translate(0)}.service-item.is-active .service-arrow:before,.service-item:hover .service-arrow:before{transform:translate(-50%,-50%)scale(2)}.service-item.is-active .service-arrow svg,.service-item:hover .service-arrow svg{transform:translate(1px,-1px)}#services{background-color:var(--color-text-main);border-radius:12px;min-height:100svh;padding:80px clamp(24px,4vw,64px)}#services .services-intro{color:#ffffff8c}#services .services-img-stack{background-color:#ffffff14}#services .service-item{color:#ffffff59;border-bottom-color:#ffffff1a}#services .service-item.is-active{color:var(--color-accent-light)}#services .service-item:hover{color:#ffffffd9}@media (width<=1200px){#services .services-visuals{background-color:var(--color-text-main)}#services{min-height:100svh}}#faq .expertise-header-wrap{text-align:center;border-bottom:none;flex-direction:column;align-items:center;margin-bottom:30px}.faq-list{border-top:1px solid var(--color-border);max-width:800px;margin:0 auto}.faq-item{border-bottom:1px solid var(--color-border);cursor:pointer;overflow:hidden}.faq-question{font-family:var(--font-head);cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;padding:28px 0;font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:600;transition:color .3s;display:flex}.faq-item:hover .faq-question{color:var(--color-text-main)}.faq-icon{transition:transform .6s var(--ease-out-expo);font-size:1.6rem;font-weight:300;font-family:var(--font-body)}.faq-item.is-open .faq-icon{color:var(--color-text-main);transform:rotate(45deg)}.faq-answer{max-height:0;transition:max-height .8s var(--ease-out-expo);overflow:hidden}.faq-answer p{color:var(--color-text-muted);padding-bottom:36px;padding-right:5%;font-size:clamp(.95rem,1.15vw,1.05rem)}.cta-section{background-color:var(--color-text-main);margin-top:var(--space-lg);text-align:center;border-radius:0;flex-direction:column;align-items:center;gap:36px;display:flex;padding:var(--space-lg) 0!important}.cta-section h2{letter-spacing:-1px;color:#fff;max-width:900px;font-size:clamp(2rem,3.2vw,3.6rem);line-height:1.1}.cta-section .btn-solid{color:var(--color-text-main);background-color:#fff;border-color:#fff}.cta-section .btn-solid:hover{background-color:var(--color-text-main);border-color:var(--color-text-main);color:#fff}.cta-section .btn-solid:before{background-color:var(--color-text-main)}@media (width<=1200px){.intro-grid{grid-template-columns:1fr}.intro-image-mini{display:none}.exp-card{flex:0 0 calc(45.4545% - clamp(18px,2.5vw,26px)/2.2)}.services-layout{grid-template-columns:1fr}.services-visuals{width:100%;top:var(--nav-height);z-index:10;background-color:var(--color-bg);margin-bottom:32px;padding-top:8px;padding-bottom:16px;position:sticky}.services-img-stack{aspect-ratio:16/9;width:100%}.services-list{z-index:1;width:100%;padding-top:0;padding-bottom:0;position:relative}}@media (width<=768px){.hero-scroll-wrapper{height:175vh}.hero-headline{--hero-font:clamp(2.2rem, 8vw, 3.5rem);font-size:calc(var(--hero-font) - (.55rem * var(--progress)));letter-spacing:-1px}.section-header-left{flex:unset;width:100%;margin-bottom:16px}.expertise-header-wrap{flex-direction:column;align-items:flex-start;position:relative}.exp-card{flex:0 0 100%}.services-list{display:none}.services-visuals{background:0 0;margin-bottom:0;padding-bottom:0;position:relative;top:0}.services-img-stack{aspect-ratio:auto;background-color:#0000;flex-direction:column;gap:18px;display:flex;overflow:visible}.service-img-wrap{border-radius:10px;position:relative;overflow:hidden;opacity:1!important;z-index:1!important}.carousel-nav{z-index:20;justify-content:space-between;width:100%;margin-top:24px;padding:0;position:relative;top:auto;left:auto;transform:none}.nav-arrow{color:var(--color-text-main);filter:none;background:0 0;border:none;width:auto;height:auto}.nav-arrow:hover{color:var(--color-text-main);border:none;transform:scale(1.1)}.service-img-wrap img{transform:none!important}.service-img-wrap:after{content:"";z-index:5;background:linear-gradient(#0000 45%,#000c 100%);position:absolute;inset:0}.watermark{color:#fff;font-family:var(--font-head);text-transform:uppercase;z-index:10;letter-spacing:1px;font-size:clamp(1rem,3.5vw,1.3rem);font-weight:600;display:block;position:absolute;bottom:12px;left:14px}.cta-section{gap:24px;padding:var(--space-md) var(--space-sm)!important}.cta-section h2{font-size:clamp(1.5rem,6vw,2rem)}.cta-section .btn-lg{padding:12px 24px;font-size:.9rem}}
