.hero,.page-hero,.contact-hero{position:relative;isolation:isolate}.opening-glass{
 position:fixed;
 inset:auto 0 0;
 height:80px;
 z-index:15;
 pointer-events:none;
 -webkit-backdrop-filter:blur(10px);
 backdrop-filter:blur(10px);
 -webkit-mask-image:linear-gradient(to bottom,transparent,#000);
 mask-image:linear-gradient(to bottom,transparent,#000);
}
.hero .slider-bottom{position:relative;z-index:4}.page-hero>.hero-actions,.contact-hero .contact-intro>.btn{position:relative;z-index:4}.hero-type-cursor{animation-duration:1s}
.alpine-section.story-section{padding-top:78px}.alpine-section .alpine-heading h2{margin-bottom:14px}.alpine-section .route-panorama{margin-top:3px}.alpine-section .alpine-heading p{margin-bottom:0}.growth-section .growth-side{display:flex}.growth-section .return-card{width:100%;display:flex;flex-direction:column;justify-content:center}.growth-section .return-card>.small-kicker{margin-bottom:15px}.growth-section .return-card>.sample-label{margin-top:24px}
.channel-system{border:1px solid #e1e7d6;border-radius:15px;padding:35px 38px 25px;margin-top:26px;background:#fff}.channel-system-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.channel-system-heading .small-kicker{font-size:12px;color:#7b876a;letter-spacing:1.1px}.home-story .channel-system-heading h3{font-size:34px;letter-spacing:-1.5px;line-height:1.15;margin:10px 0 0}.home-story .channel-system-heading>p{font-size:14px;line-height:1.7;max-width:270px}.diagram-board{position:relative;padding:0 36px 4px;isolation:isolate;display:flex;flex-direction:column;align-items:center;gap:52px}.diagram-node{position:relative;z-index:1;background:white;border:1px solid #dee5d2;border-radius:11px;padding:18px 23px;min-width:0}.strategy-node,.conversion-node,.measurement-node{display:flex;align-items:center;gap:18px;width:350px;max-width:100%}.strategy-node{border-color:#b9d967;background:#fbfef3}.conversion-node{background:var(--lime);border-color:var(--lime)}.measurement-node{background:#fff}.diagram-icon{display:grid;place-items:center;background:white;border:1px solid #e2e9d5;border-radius:50%;width:45px;height:45px;flex:0 0 45px}.diagram-icon .ui-icon{width:23px;height:23px}.diagram-step{font-size:10px;letter-spacing:1px;color:#7b866b}.home-story .diagram-node h4{font-family:var(--display);font-size:20px;font-weight:500;line-height:1.25;letter-spacing:-.6px;margin:6px 0}.home-story .diagram-node p{font-size:12px;line-height:1.6;color:#727e60;margin:0}.conversion-node .diagram-step,.conversion-node p{color:#526525}.diagram-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;width:100%}.diagram-role{padding:20px 14px;text-align:center}.diagram-role .diagram-step{font-size:10px;letter-spacing:.6px}.diagram-brands{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;min-height:35px;margin:16px 0 12px}.diagram-brands>span{display:flex;align-items:center;gap:7px;font-size:16px;letter-spacing:-.4px;font-weight:550;white-space:nowrap;color:#40463a}.diagram-brands img{object-fit:contain}.diagram-brands .ui-icon{width:24px;height:24px}.diagram-links{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}.diagram-edge{fill:none;stroke:#c9d5b7;stroke-width:1.7;marker-end:url(#diagram-arrow)}.diagram-edge.feedback-edge{stroke:#a1b879;stroke-dasharray:4 5}.diagram-current{fill:none;stroke:#9dc40b;stroke-width:2.4;stroke-linecap:round;stroke-dasharray:8 150;animation:diagram-signal 8s linear infinite}.diagram-current:nth-of-type(4n){animation-delay:-2s}.diagram-current:nth-of-type(6n){animation-delay:-4s}.diagram-feedback-caption{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);margin-top:28px;padding-top:20px;color:#7a8669;font-size:12px;line-height:1.7}.diagram-feedback-caption>.ui-icon{width:19px;height:19px;flex:0 0 19px}@keyframes diagram-signal{to{stroke-dashoffset:-316}}
@media(max-width:1000px){.channel-system{padding:30px 25px 24px}.diagram-board{padding-left:28px;padding-right:28px}.diagram-roles{gap:14px}.diagram-brands{gap:10px}.diagram-brands>span{font-size:14px}.home-story .channel-system-heading h3{font-size:30px}}
@media(max-width:650px){.alpine-section.story-section{padding-top:56px}.alpine-section .route-panorama{margin-top:0}.channel-system{padding:25px 15px 20px;margin-top:20px}.channel-system-heading{display:block;padding:0 8px;margin-bottom:26px}.home-story .channel-system-heading h3{font-size:29px;letter-spacing:-1.1px}.home-story .channel-system-heading>p{font-size:14px;margin-top:15px;max-width:none}.channel-system-heading>p br{display:none}.diagram-board{gap:38px;padding:0 26px 3px}.diagram-roles{grid-template-columns:1fr;gap:20px}.diagram-node{padding:16px 12px;border-radius:9px}.strategy-node,.conversion-node,.measurement-node{width:100%;gap:10px}.diagram-icon{width:34px;height:34px;flex-basis:34px}.diagram-icon .ui-icon{width:19px;height:19px}.home-story .diagram-node h4{font-size:17px;margin:5px 0}.home-story .diagram-node p{font-size:12px;line-height:1.6}.diagram-step,.diagram-role .diagram-step{font-size:10px;letter-spacing:.3px}.diagram-brands{margin:12px 0 9px;min-height:30px;gap:20px}.diagram-brands>span{font-size:16px}.diagram-role p br{display:none}.diagram-feedback-caption{font-size:12px;padding:17px 7px 0;align-items:start;gap:9px}.diagram-feedback-caption>.ui-icon{margin-top:2px}.growth-section .return-card>.sample-label{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.diagram-current{animation:none}.opening-glass{display:none}}

@media print{.opening-glass{display:none}}

/* Let iOS draw its native toolbar blur without a fixed page overlay. */
@supports (-webkit-touch-callout:none){
 .opening-glass{display:none}
}

/* One scroll-entry treatment for every lime text accent across all pages. */
html .ink-highlight.stroke-ready{
 box-shadow:none;
 background-image:linear-gradient(var(--lime),var(--lime));
 background-repeat:no-repeat;
 background-position:0 94%;
 background-size:0% 23%;
 transition:background-size 1s cubic-bezier(.2,.7,.2,1);
}
html .ink-highlight.stroke-ready.stroke-visible{background-size:100% 23%}
.highlight.stroke-ready:after{
 transform:rotate(-1.5deg) scaleX(0);
 transform-origin:left;
 transition:transform 1s cubic-bezier(.2,.7,.2,1);
}
.highlight.stroke-ready.stroke-visible:after{transform:rotate(-1.5deg) scaleX(1)}
#hero-title.stroke-ready:not(.stroke-visible) .highlighted-line .hero-type-text:after{transform:rotate(-1.5deg) scaleX(0)}
#hero-title .highlighted-line .hero-type-text:after{transition-duration:1s}
html .stroke-ready:not(.stroke-visible),.highlight.stroke-ready:not(.stroke-visible):after,#hero-title.stroke-ready:not(.stroke-visible) .hero-type-text:after{transition-duration:0s}
@media(prefers-reduced-motion:reduce){
 html .ink-highlight.stroke-ready{background-size:100% 23%;transition:none}
 .highlight.stroke-ready:after{transform:rotate(-1.5deg);transition:none}
}

/* Stationary controls retain their color and focus feedback. */
.btn:hover,button:hover{transform:none;translate:none}
@media(max-width:650px){.geo-section .geo-card{flex:0 0 82%!important;min-width:0}}
@media(max-width:380px){.geo-section .geo-card{flex-basis:85%!important}}

/* Supplied reference identities stay intact, including reversed white marks. */
.brand-logo-lockup.logo-surface-dark{background:#20241f;border-radius:6px;margin:6px 0;padding:9px}
.brand-logo-lockup.logo-surface-dark img{max-width:100%}
.brand-logo-lockup img[src*="/references/rafi"]{width:90px;height:42px}
.brand-logo-lockup img[src*="/references/fabio"]{height:52px}
.brand-sector{font-size:10px;line-height:1.45}
.journey-detail{display:inline-flex;align-items:center;gap:7px;font-size:12px;text-decoration:underline;text-underline-offset:4px;margin-top:6px}
.journey-detail .ui-icon{width:14px;height:14px}
.reference-invitation .underlined-link{white-space:nowrap}
.references-hero .underlined-link{display:inline-flex;margin-top:22px;align-items:center;gap:12px}
.reference-gallery-section{padding-top:15px;padding-bottom:80px}
.reference-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:25px;border-bottom:1px solid var(--line);margin-bottom:28px}
.reference-page-heading h2{font-family:var(--display);font-size:36px;font-weight:500;letter-spacing:-1.4px;line-height:1.2;margin:0}
.reference-page-heading>span{font-size:12px;letter-spacing:1.3px;color:var(--muted)}
.reference-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.reference-tile{border:1px solid var(--line);border-radius:12px;padding:22px;scroll-margin-top:125px;min-width:0}
.reference-tile:target{border-color:#9ab91c;box-shadow:0 0 0 4px #c9f31d25}
.reference-tile-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.8px;color:#78806d}
.reference-logo-stage{display:flex;align-items:center;justify-content:center;min-height:190px;margin:20px 0;border-radius:8px}
.reference-logo-stage img{display:block;width:auto;height:auto;max-width:85%;max-height:110px;object-fit:contain}
.reference-logo-stage.logo-surface-dark{background:#20241f}
.reference-logo-stage img[src*="/rafi"]{width:102px}
.reference-tile-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:18px}
.reference-tile-bottom h3{font-family:var(--display);font-size:23px;font-weight:500;margin:0;letter-spacing:-.8px}
.reference-tile-bottom a{display:flex;gap:6px;align-items:center;font-size:12px;text-decoration:underline;text-underline-offset:5px}
.reference-tile-bottom .ui-icon{width:15px;height:15px}
.reference-universe{padding-bottom:90px}
.reference-universe .eyebrow{margin-bottom:15px}
.reference-universe>p{font-size:14px;color:var(--muted);max-width:680px;margin:0 0 30px}
.universe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.universe-item{min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 15px;display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center}
.universe-item img{object-fit:contain;max-width:100%;margin-bottom:12px}
.universe-item strong{font-size:15px;font-weight:500}
.universe-item>span{font-size:11px;color:var(--muted);letter-spacing:.5px}
@media(max-width:1200px){.nav-origin{display:none}.enhanced-header .nav-links{gap:19px}}
@media(max-width:850px){.reference-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.enhanced-header .nav-links{gap:13px;font-size:12px}.enhanced-header .nav{gap:16px}.universe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.reference-gallery{grid-template-columns:1fr;gap:16px}.reference-tile{padding:20px}.reference-logo-stage{min-height:155px}.reference-page-heading h2{font-size:29px}.reference-page-heading{align-items:end}.reference-page-heading>span{font-size:11px;max-width:90px;text-align:right}.reference-gallery-section{padding-bottom:55px}.universe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.universe-item{padding:25px 12px}.reference-invitation .underlined-link{white-space:normal}.reference-invitation{gap:20px}.brand-logo-lockup.logo-surface-dark{padding:7px}.journey-detail{font-size:12px}.enhanced-header .nav-links{font-size:17px}.reference-universe{padding-bottom:60px}}

/* Complete growth architecture: a data foundation, parallel channels and feedback. */
.growth-stack{margin-top:32px;border:1px solid #dfe5d5;border-radius:18px;background:#fff;padding:40px 34px 28px}
.stack-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}
.home-story .stack-heading h3{font-family:var(--display);font-size:44px;line-height:1.12;letter-spacing:-2px;font-weight:500;margin:18px 0 0}
.home-story .stack-heading>p{font-size:15px;line-height:1.8;max-width:340px;margin:0;color:#748065}
.stack-legend{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;margin-bottom:30px}
.stack-legend>span{display:flex;gap:9px;align-items:center;font-size:11px;letter-spacing:.7px;color:#77816b}
.stack-legend i{width:22px;height:2px;background:#a9c96a}
.stack-legend i.legend-loop{background:repeating-linear-gradient(90deg,#8fa264 0 4px,transparent 4px 7px)}
.stack-board{position:relative;isolation:isolate;padding:0 28px 2px;display:flex;flex-direction:column;gap:50px}
.stack-row{display:grid;position:relative;gap:38px}
.stack-origin{grid-template-columns:minmax(0,520px);justify-content:center}
.stack-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.stack-channels{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.stack-node{position:relative;z-index:1;border:1px solid #dfe5d5;border-radius:10px;background:white;padding:22px;min-width:0}
.stack-node-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}
.stack-node-top .ui-icon{width:22px;height:22px;color:#718650}
.stack-number{font-family:var(--display);font-size:13px;letter-spacing:1px;color:#859370}
.home-story .stack-node h4{font-family:var(--display);font-size:22px;line-height:1.2;font-weight:500;letter-spacing:-.8px;margin:0 0 12px}
.home-story .stack-node p{font-size:14px;line-height:1.7;color:#78806e;margin:0 0 16px}
.stack-tools{list-style:none;padding:0;margin:0;display:flex;gap:7px;flex-wrap:wrap}
.stack-tools li{font-size:12px;line-height:1.45;padding:5px 8px;background:#f5f7ef;color:#566247;border:1px solid #e8eddf;border-radius:4px;overflow-wrap:anywhere}
.stack-strategy{background:#faffef;border-color:#bdd786}
.stack-conversion{background:var(--lime);border-color:var(--lime)}
.stack-conversion .stack-tools li{background:#ffffff8c;border-color:#ffffff8c;color:#465624}
.home-story .stack-conversion p,.stack-conversion .stack-number{color:#516326}
.stack-optimization{border-color:#aec67d}
.stack-channels .stack-node{padding:18px 14px}
.home-story .stack-channels h4{font-size:19px;letter-spacing:-.5px}
.stack-channels .stack-tools{flex-direction:column;align-items:start}
.stack-links{position:absolute;inset:0;z-index:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.stack-edge{fill:none;stroke:#cad8b6;stroke-width:1.6;marker-end:url(#stack-arrow)}
.stack-feedback{stroke:#98ad71;stroke-dasharray:4 6}
.stack-current{fill:none;stroke:#98b920;stroke-width:2;stroke-dasharray:8 160;stroke-linecap:round;animation:stack-signal 7s linear infinite}
@keyframes stack-signal{to{stroke-dashoffset:-336}}
.stack-note{display:flex;gap:12px;align-items:start;padding-top:22px;margin-top:28px;border-top:1px solid var(--line)}
.stack-note>.ui-icon{width:22px;height:22px;flex:0 0 22px;color:#819459;margin-top:3px}
.home-story .stack-note p{font-size:13px;line-height:1.8;color:#7a846d;margin:0}
.stack-note strong{font-weight:500;color:#4e5d3d}
@media(max-width:1100px){.growth-stack{padding:30px 20px 24px}.stack-board{padding:0 24px}.stack-channels{gap:12px}.stack-channels .stack-node{padding:15px 11px}.home-story .stack-channels h4{font-size:18px}}
@media(max-width:900px){.stack-channels{grid-template-columns:1fr;gap:20px}.stack-channels .stack-node{padding:22px}.stack-channels .stack-tools{flex-direction:row}.home-story .stack-channels h4{font-size:22px}.stack-heading{display:block}.home-story .stack-heading>p{max-width:100%;margin-top:20px}}
@media(max-width:700px){.growth-stack{padding:26px 12px 22px;border-radius:12px}.stack-heading,.stack-legend{margin-left:10px;margin-right:10px}.home-story .stack-heading h3{font-size:35px;letter-spacing:-1.4px}.stack-pair{grid-template-columns:1fr;gap:36px}.stack-board{gap:36px;padding:0 25px}.stack-node,.stack-channels .stack-node{padding:18px 16px}.home-story .stack-node h4,.home-story .stack-channels h4{font-size:21px}.stack-tools li{font-size:12px}.stack-legend{gap:12px}.stack-legend>span{font-size:10px}.stack-note{margin-left:8px;margin-right:8px}.stack-note strong{display:block}}
@media(prefers-reduced-motion:reduce){.stack-current{animation:none}}
@media(min-width:851px) and (max-width:1000px){
 .enhanced-header .nav{height:80px;gap:15px}
 .enhanced-header .menu-toggle{display:block}
 .enhanced-header .nav-right{margin-left:auto;gap:12px}
 .enhanced-header .nav-links{display:none;position:absolute;top:80px;left:0;right:0;margin:0;padding:24px;background:#fff;border-bottom:1px solid var(--line);max-height:calc(100dvh - 80px);overflow:auto}
 .enhanced-header .nav-links.open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .enhanced-header .nav-links>a,.nav-services>summary{font-size:16px;min-height:50px;padding:10px 0}
 .mega-menu{position:static;display:block;padding:8px 0 20px;border:0;border-radius:0;box-shadow:none}
 .mega-intro{display:none}
 .mega-links{gap:6px;grid-template-columns:1fr 1fr}
 .mega-links a{font-size:13px;background:#fafbf7;padding:12px;min-height:60px}
}

/* Integrated language selector and explicit control color for iOS. */
.language-picker summary{padding:8px 10px;border-radius:7px;gap:8px;color:var(--ink);transition:background-color .2s ease}
.language-picker summary>span,.language-options button>span{font-family:var(--display);font-size:14px;font-weight:500;line-height:1.1;letter-spacing:-.25px}
.language-picker summary:hover,.language-picker[open]>summary{background:#f0f3e9}
.enhanced-header .menu-toggle{color:#171916;-webkit-appearance:none;appearance:none}
.enhanced-header .menu-toggle .ui-icon{color:#171916;stroke:currentColor}
.moving-platforms .platform-track{animation-duration:85s}
@media(max-width:650px){
 .language-picker summary{padding:6px 7px;gap:6px}
 .language-picker summary>span{font-size:13px}
 .moving-platforms .platform-track{animation-duration:80s}
 .footer-talk-large{font-size:clamp(48px,11.5vw,74px);letter-spacing:-2.8px;gap:12px}
}
@media(max-width:380px){.language-picker summary{padding:5px}.language-picker summary>span{font-size:12px}.footer-talk-large{font-size:47px;letter-spacing:-2.5px}}
