/* Maxcast interactive edition — original brand colours, progressive enhancement. */
:root{--ink:#173c28;--green:#4CB948;--fresh:#AEE02F;--legacy-gradient:linear-gradient(115deg,#4CB948,#AEE02F);--lime:#287f30;--lime-ink:#287f30;--line:#dce8dd}
body{background:#fff;color:#203b2b}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #287f30;outline-offset:5px}button{cursor:pointer}p{line-height:1.7}.muted,.lead{color:#536559}.eyebrow,.breadcrumbs,.chip,.filter-btn,.text-link,.project-meta-line,.field label{font-size:.875rem}.browser-bar small{font-size:.75rem}.hero-stack-label span{font-size:.75rem}.site-header{background:rgba(255,255,255,.94);backdrop-filter:blur(18px);transition:box-shadow .3s,padding .3s}.site-header.scrolled{box-shadow:0 8px 36px #163e2410}.nav{transition:min-height .3s}.site-header.scrolled .nav{min-height:76px}.brand img,.footer-brand img{background:transparent!important;padding:0!important;border-radius:0!important;filter:none!important}.nav-links>a,.nav-links>div>a,.footer-col a{position:relative}.nav-links>a:after,.nav-links>div>a:after,.footer-col a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--legacy-gradient);transform:scaleX(0);transform-origin:left;transition:transform .25s}.nav-links a:hover:after,.nav-links a:focus-visible:after,.nav-links a.active:after,.footer-col a:hover:after{transform:scaleX(1)}.nav-links>div:focus-within .mega{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.btn{position:relative;isolation:isolate;overflow:hidden;transition:transform .25s,box-shadow .25s,background .25s;min-height:48px}.btn:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(105deg,#AEE02F,#4CB948);transform:translateX(-105%);transition:transform .35s}.btn:hover:before,.btn:focus-visible:before{transform:translateX(0)}.btn:hover,.btn:focus-visible{color:#143b22;box-shadow:0 10px 24px #246e251c}.btn-arrow{transition:transform .25s}.btn:hover .btn-arrow,.btn:focus-visible .btn-arrow{transform:translate(3px,-3px)}.btn-primary{background:var(--legacy-gradient);color:#12351c;border-color:transparent}.cursor{display:none!important}.hero .display span{display:block}.hero .display .lime{color:#287f30}.hero-grid>*{min-width:0}.hero-copy{color:#536559}.hero-project-stack{touch-action:pan-y}.hero-project-stack .browser-shot{box-shadow:0 22px 60px #245f2420}.hero-stack-label{border-left:4px solid #4CB948}
/* Illustrated inner-page introductions */
.illustrated-hero{padding:160px 0 76px;background:linear-gradient(155deg,#fff 45%,#f1f8ed);border-bottom:1px solid #e1ebdd}.illustrated-hero:before{display:none}.intro-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:48px}.intro-copy{min-width:0}.page-hero.illustrated-hero .h2{font-size:clamp(2.7rem,4.65vw,5.5rem);line-height:1.04;letter-spacing:-.045em;overflow-wrap:anywhere}.intro-copy .lead{font-size:1.05rem;max-width:620px;margin:25px 0}.intro-copy .btn{margin-top:8px}.concept-art{margin:0;position:relative;min-width:0;background:#fff;border:1px solid #e1eadc;border-radius:30px;padding:18px;box-shadow:0 24px 58px #1645270c;transition:box-shadow .35s,transform .35s}.concept-art img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;transition:transform .6s}.concept-art figcaption{padding:16px 18px 10px;border-top:1px solid #e2ebdc;font-size:.9375rem;color:#285336}.concept-art:hover img{transform:translateY(-5px) scale(1.015)}.case-intro .case-image{transform:rotate(1.5deg);box-shadow:0 24px 50px #163b2018}.case-intro .case-image img{aspect-ratio:1.4;object-fit:cover;object-position:top}.case-hero{display:block}.case-meta{grid-template-columns:repeat(4,1fr);margin-top:0}.case-meta small{font-size:.875rem}.copy-grid{transition:background .3s,padding .3s}.copy-grid:hover{background:#f3f8ef;padding-left:18px;padding-right:18px}
/* Service explorers and illustrated cards */
.experience-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}.experience-heading h2{font-size:clamp(2rem,3.8vw,3.6rem);line-height:1.08;max-width:700px}.experience-heading>p{max-width:280px;color:#59695c;font-size:1rem}.service-explorer{border:1px solid #d6e4d5;border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 20px 55px #19432309}.explorer-tabs{display:flex;gap:8px;background:#f2f7ef;padding:14px;flex-wrap:wrap;border-bottom:1px solid #dce7d8}.explorer-tabs button{background:transparent;border:1px solid transparent;border-radius:13px;padding:13px 22px;color:#365540;min-height:48px;transition:background .25s,box-shadow .25s}.explorer-tabs button[aria-selected=true]{background:var(--legacy-gradient);color:#143b20;box-shadow:0 5px 16px #3c92201a}.explorer-tabs button:hover{border-color:#4CB948}.explorer-panels{padding:38px;display:grid;grid-template-columns:1fr;gap:36px;align-items:center}.explorer-panels:has(.responsive-demo){grid-template-columns:1fr 1fr}.explorer-index{font-size:.875rem;font-weight:700;color:#287b35;display:block;margin-bottom:30px}.explorer-panels h3{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.13;max-width:680px}.explorer-panels p{font-size:1.05rem;color:#516757;max-width:760px;margin-bottom:0}.explorer-panels [role=tabpanel]:not([hidden]){animation:panel-in .4s both}[hidden]{display:none!important}@keyframes panel-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.responsive-demo{background:#eff6eb;border-radius:18px;padding:24px;min-height:280px;display:grid;place-items:center}.demo-frame{width:100%;max-width:460px;background:#fff;border:2px solid #365740;border-radius:13px;overflow:hidden;transition:width .6s cubic-bezier(.2,.8,.2,1),border-radius .6s}.responsive-demo[data-device="1"] .demo-frame{width:76%;border-radius:18px}.responsive-demo[data-device="2"] .demo-frame{width:58%;border-radius:22px}.demo-top{padding:10px 14px;font-size:.875rem;background:#eaf3e4;border-bottom:1px solid #d7e7d0}.demo-content{padding:26px 18px}.demo-content strong{font-size:1.3rem;line-height:1.15;display:block}.demo-content p{font-size:.875rem;margin:12px 0}.demo-content a{font-size:.875rem;color:#287b35;text-decoration:underline}.service-delivery{padding:44px;background:linear-gradient(125deg,#e9f8e6,#f7fce9);border-left:4px solid #4CB948;border-radius:4px 28px 28px 4px}.service-delivery h2{font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.08}.service-delivery p{color:#496550}.check-list span{padding:16px 10px;color:#36523c;transition:padding-left .25s,background .25s}.check-list span:hover{padding-left:18px;background:#f0f8eb}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.related-card{border:1px solid #dce8d7;border-radius:18px;overflow:hidden;background:#fff;transition:transform .3s,box-shadow .3s}.related-card img{aspect-ratio:1.8;object-fit:cover;object-position:top;width:100%;transition:object-position 3s ease}.related-card span{display:block;padding:20px;font-size:1rem;font-weight:700}.related-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px #1a452218}.related-card:hover img{object-position:bottom}.card,.feature,.industry,.article,.portfolio-item{transition:transform .35s,border-color .35s,box-shadow .35s,background .35s}.card:hover,.card:focus-within,.industry:hover,.article:hover,.portfolio-item:hover{transform:translateY(-6px);border-color:#4CB948;box-shadow:0 18px 42px #1f612217}.feature:hover{background:#edf8e6}.feature .num,.card .icon{transition:transform .35s}.feature:hover .num,.card:hover .icon{transform:translateX(7px)}.card-illustration{overflow:hidden;background:white;border-radius:16px;margin-bottom:22px}.card-illustration img{width:100%;aspect-ratio:1.8;object-fit:contain;transition:transform .5s}.card:hover .card-illustration img{transform:scale(1.06)}.cards>.card h3{font-size:1.65rem;line-height:1.13}.article-visual img{width:100%;height:100%;object-fit:contain;background:#fff}.article-visual span{background:#fff;color:#28542e;padding:8px;border-radius:8px;font-size:1.3rem}.article-visual:before{display:none}
/* Original green with a white portfolio surface */
.work-showcase-section{background:#f3f8ef;color:#1d3e28}.work-showcase-section:before{display:none}.work-showcase-section .lead,.project-copy p{color:#526d57}.project-copy h3{color:#193d25}.light-eye,.cta-dark .eyebrow{color:#21572b}.project-index,.project-meta-line{color:#57715d}.project-browser-link .browser-shot{border-color:#d5e2ce;box-shadow:0 22px 50px #1c4e2418}.project-browser-link .browser-bar{background:#eaf2e4;border-color:#d6e3cf}.project-browser-link .browser-bar small{color:#526a58}.project-browser-link .browser-shot>img,.portfolio-item.authentic .browser-shot>img{transition:object-position 3.2s cubic-bezier(.2,.65,.2,1),transform .5s;object-position:top;transform:none}.project-browser-link:hover .browser-shot>img,.project-browser-link:focus-visible .browser-shot>img,.portfolio-item.authentic:hover .browser-shot>img,.portfolio-item.authentic:focus-within .browser-shot>img{object-position:bottom;transform:none}.project-browser-link:focus-visible{border-radius:18px}.showcase-btn{background:var(--legacy-gradient);color:#143c1d}.text-link span{color:#287f30}.cta-dark{background:var(--legacy-gradient);color:#153b20}.cta-dark .h2{color:#153b20}.cta-dark .btn{background:#fff;color:#163d22}.cta-band .container{position:relative;z-index:1}.cta-band:after{pointer-events:none}.process-band .process-step .n{color:#1b4c26}.motion-process{display:block;padding:0!important}.motion-process summary{display:grid;grid-template-columns:70px 1fr 30px;gap:22px;list-style:none;cursor:pointer;align-items:center;padding:26px 12px;min-height:84px}.motion-process summary::-webkit-details-marker{display:none}.process-title{font-family:'Space Grotesk',Arial,sans-serif;font-size:clamp(1.35rem,2.5vw,2rem);font-weight:600;line-height:1.15}.process-plus{font-size:1.8rem;transition:transform .3s;text-align:center}.motion-process[open] .process-plus{transform:rotate(45deg)}.process-answer{padding:0 70px 28px 104px}.process-answer p{font-size:1.05rem}.motion-process[open] .process-answer{animation:panel-in .35s both}.motion-process[open]{background:#f0f8ea}.process-band .motion-process[open]{background:#ffffff35}.faq-section details{border-bottom:1px solid #d6e5d1;padding:22px 0}.faq-section h2{margin-bottom:24px}.faq-section summary{cursor:pointer;font-size:1.1rem;font-weight:600;padding-right:15px}.faq-section p{color:#536b59;max-width:850px}.form-card:focus-within{box-shadow:0 20px 50px #32732916;border-color:#4CB948}.field label{color:#486250}.field input,.field select,.field textarea{background:#fff;color:#173b24;border:1px solid #cbdcc7}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 4px #4CB94820;border-color:#388c39}.option{text-align:left;color:#28472f;min-height:70px}.option.selected{background:#e4f6d5;color:#183f22;box-shadow:inset 0 0 0 1px #4CB948}.step.active{animation:panel-in .35s both}.filter-btn{min-height:44px}.filter-btn.active{background:var(--legacy-gradient);color:#123b1d}.site-footer{background:#fff}.footer-col a,.footer-col span{color:#536459}.footer-bottom{color:#617266}.presence span{font-size:.875rem}.global-card .world path[stroke-dasharray]{animation:dash-flow 18s linear infinite}@keyframes dash-flow{to{stroke-dashoffset:-180}}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}.reveal,.stagger>*{opacity:1;transform:none}.motion-ready .reveal:not(.in){opacity:0;transform:translateY(24px)}.motion-ready .stagger:not(.in)>*{opacity:0;transform:translateY(20px)}.motion-ready .reveal.in{transition:opacity .65s ease,transform .65s ease}.motion-ready .stagger.in>*{transition:opacity .6s ease,transform .6s ease;transition-delay:calc(var(--order,0)*65ms)}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-paused .reveal,.motion-paused .stagger>*{opacity:1!important;transform:none!important}
@media(min-width:1051px){.hero-project-stack{min-height:560px}.hero .display{font-size:clamp(3.4rem,6.7vw,7.5rem)}}
@media(max-width:1050px){.intro-grid{gap:28px;grid-template-columns:1fr 1fr}.illustrated-hero{padding-top:135px}.page-hero.illustrated-hero .h2{font-size:clamp(2.5rem,5vw,4rem)}.case-meta{grid-template-columns:1fr 1fr}.explorer-panels:has(.responsive-demo){grid-template-columns:1fr}.concept-art{padding:12px}.concept-art figcaption{padding:12px 5px;font-size:.875rem}.experience-heading{align-items:start}.experience-heading>p{max-width:220px}}
@media(max-width:720px){.intro-grid{grid-template-columns:1fr;gap:30px}.illustrated-hero{padding:125px 0 45px}.page-hero.illustrated-hero .h2{font-size:clamp(2.5rem,9.8vw,4.1rem);line-height:1.05}.concept-art{max-width:540px;width:100%;margin:auto}.concept-art img{max-height:280px}.experience-heading{display:block}.experience-heading>p{max-width:none}.explorer-panels{padding:24px}.explorer-tabs{gap:5px;padding:10px}.explorer-tabs button{padding:11px 12px;font-size:.875rem;flex:1}.related-grid{grid-template-columns:1fr}.service-delivery{padding:28px}.motion-process summary{grid-template-columns:38px 1fr 24px;gap:12px;padding:22px 4px}.process-answer{padding:0 20px 24px 54px}.case-meta{grid-template-columns:1fr 1fr;gap:22px}.case-meta strong{font-size:.9375rem}.responsive-demo{padding:16px}.hero-stack-label{max-width:90%}.hero-stack-label strong{font-size:.9rem}.browser-bar small{font-size:.75rem}.scroll-cue{display:none}.cta-band{padding:76px 0}.feature p,.card p,.industry small{font-size:1rem}.intro-copy .lead{font-size:1rem}}
@media(hover:none){.project-arrow{opacity:1;transform:none}.project-browser-link .browser-shot>img{object-position:top}.btn:hover{box-shadow:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal,.motion-ready .stagger>*{opacity:1!important;transform:none!important}.concept-art:hover img{transform:none}}
/* Consistent compact navigation and control contrast. */
.nav{min-height:62px}.site-header.scrolled .nav{min-height:54px}.site-header.scrolled{padding:8px 0}.motion-paused [data-magnetic],.motion-paused .hero-project-stack{translate:none!important}.stat span,.chip{font-size:.875rem}.card h3,.feature h3,.article h3{line-height:1.15}.motion-process summary .n{background:none;-webkit-text-fill-color:currentColor}.site-footer .footer-col a:hover{color:#246b2e}
@media(max-width:720px){.site-header{padding:12px 0}.nav{min-height:52px}.site-header.scrolled .nav{min-height:48px}}

/* Original Maxcast logo tick, sampled directly from the unchanged PNG. */
.brand-cursor,.brand-cursor-follower{position:fixed;left:0;top:0;pointer-events:none!important;z-index:2147483646;opacity:0;contain:layout style;will-change:transform;transition:opacity .12s}.brand-cursor.is-visible,.brand-cursor-follower.is-visible{opacity:1}.brand-cursor-symbol{position:absolute;left:0;top:0;transform:translate(-37%,-100%);filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff) drop-shadow(0 2px 2px #12361c40)}.brand-cursor-tick{display:block;width:26px;height:23.1636px;background-image:url('../img/maxcast-logo.png');background-repeat:no-repeat;background-size:138.3065px 39.9792px;background-position:-44.5714px 0;clip-path:polygon(0 46.36%,27.53% 46.36%,36.88% 59.18%,74.55% 0,100% 0,36.88% 100%);transform-origin:36.88% 100%;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.brand-cursor.is-action .brand-cursor-tick{transform:scale(1.22) rotate(-5deg)}.brand-cursor.is-pressed .brand-cursor-tick{transform:scale(.87) rotate(2deg)}.brand-cursor-ring{position:absolute;left:-21px;top:-21px;width:42px;height:42px;border:1px solid #408737;border-radius:50%;box-shadow:0 0 0 1px #ffffffb3;opacity:0;transform:scale(.65);transition:opacity .2s,transform .25s cubic-bezier(.2,.8,.2,1)}.brand-cursor-follower.is-action .brand-cursor-ring{opacity:.75;transform:scale(1)}.brand-cursor-ripple{position:fixed;pointer-events:none!important;z-index:2147483645;width:18px;height:18px;margin:-9px 0 0 -9px;border:1.5px solid #458d39;box-shadow:0 0 0 1px #ffffff90;border-radius:50%;animation:brand-click-ripple .48s ease-out forwards}@keyframes brand-click-ripple{from{opacity:.8;transform:scale(.55)}to{opacity:0;transform:scale(2.7)}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){body.has-brand-cursor,body.has-brand-cursor *{cursor:none!important}}
@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){.brand-cursor,.brand-cursor-follower,.brand-cursor-ripple{display:none!important}}

/* Advanced global presence — connected network instead of a static globe. */
.global-presence-section{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f8fbf5 100%)}
.global-presence-section:before{content:"";position:absolute;right:-18vw;top:4%;width:48vw;height:48vw;border-radius:50%;background:radial-gradient(circle,#aee02f18 0%,#4cb9480c 38%,transparent 70%);pointer-events:none}
.global-presence-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.55fr);gap:70px;align-items:end;margin-bottom:54px}.global-presence-heading .lead{max-width:470px;margin:0 0 7px auto}
.global-network{--gx:0px;--gy:0px;display:grid;grid-template-columns:minmax(330px,.78fr) minmax(520px,1.22fr);min-height:650px;border:1px solid #d9e5d7;border-radius:38px;overflow:hidden;background:#fff;box-shadow:0 28px 80px rgba(25,61,37,.08)}
.network-copy{position:relative;z-index:3;padding:48px 42px 42px;background:linear-gradient(145deg,#f8fbf5 0%,#fff 62%);border-right:1px solid #dfe9dc}.network-copy:after{content:"";position:absolute;right:-1px;top:0;width:1px;height:100%;background:linear-gradient(180deg,transparent,#4cb94855,transparent)}
.network-status{display:flex;align-items:center;gap:9px;padding-bottom:26px;border-bottom:1px solid #dfe8dc;font-size:.72rem;letter-spacing:.12em;color:#536b59}.network-status i{width:7px;height:7px;border-radius:50%;background:#4cb948;box-shadow:0 0 0 6px #4cb94814;animation:network-status-pulse 2s ease-in-out infinite}.network-status b{margin-left:auto;font-size:.68rem;color:#2f6f36;font-weight:650}.network-copy h3{margin:34px 0 16px;font-family:'Space Grotesk',Arial,sans-serif;font-size:clamp(2rem,3.6vw,4.2rem);line-height:.98;letter-spacing:-.055em;color:#173c28}.network-copy h3 span{color:#388e39}.network-copy>p{max-width:510px;margin:0;color:#5d705f;font-size:1rem;line-height:1.75}
.region-switcher{display:grid;gap:8px;margin:34px 0 28px}.region-card{display:grid;grid-template-columns:38px 1fr 32px;gap:13px;align-items:center;width:100%;padding:14px 15px;border:1px solid #dce7d9;border-radius:16px;background:#fff;color:#23432c;text-align:left;transition:transform .32s,border-color .32s,box-shadow .32s,background .32s}.region-card:hover,.region-card:focus-visible{transform:translateX(5px);border-color:#7dbb63;box-shadow:0 10px 30px #24552b12}.region-card.is-active{background:linear-gradient(115deg,#eef9e7,#f8fce8);border-color:#83bf63;box-shadow:inset 3px 0 0 #4cb948,0 12px 32px #3f7e2a13}.region-index{font-size:.72rem;color:#708174}.region-name{display:flex;flex-direction:column;gap:3px}.region-name strong{font-size:.94rem;line-height:1.1}.region-name small{font-size:.72rem;color:#788a7c}.region-arrow{justify-self:end;font-size:1.1rem;color:#378936;transition:transform .3s}.region-card:hover .region-arrow,.region-card.is-active .region-arrow{transform:translate(2px,-2px)}
.portfolio-reach{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding-top:22px;border-top:1px solid #dfe8dc;font-size:.68rem;letter-spacing:.09em;color:#7a8b7e}.portfolio-reach span{width:100%;margin-bottom:2px;font-size:.66rem}.portfolio-reach strong{font-weight:650;color:#3d5d44}.portfolio-reach i{width:3px;height:3px;border-radius:50%;background:#8db389}
.network-stage{position:relative;min-height:650px;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 52% 50%,#eff9e4 0%,#f7fbf2 32%,#fbfcf8 61%,#f3f8ee 100%);perspective:1200px}.network-stage:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 52% 50%,transparent 0 23%,#ffffff55 23.2% 23.5%,transparent 23.7%),linear-gradient(135deg,transparent 0 47%,#4cb94808 47% 53%,transparent 53% 100%);pointer-events:none}.network-grid{position:absolute;inset:-8%;opacity:.48;background-image:linear-gradient(#4f7d5013 1px,transparent 1px),linear-gradient(90deg,#4f7d5013 1px,transparent 1px);background-size:46px 46px;transform:translate3d(var(--gx),var(--gy),0) rotateX(56deg) scale(1.22);transform-origin:center 68%;mask-image:radial-gradient(circle at center,#000 5%,#000b 48%,transparent 76%)}
.network-sweep{position:absolute;left:50%;top:50%;z-index:0;width:530px;height:530px;margin:-265px;border-radius:50%;background:conic-gradient(from 12deg,transparent 0 79%,#7ece4730 88%,transparent 94%);mask-image:radial-gradient(circle,transparent 0 8%,#000 9% 100%);animation:network-sweep 12s linear infinite;pointer-events:none}.network-routes{position:absolute;inset:0;width:100%;height:100%;z-index:1;filter:drop-shadow(0 3px 7px #2a6b2f10)}.orbit{fill:none;stroke:#7aa17526;stroke-width:1;stroke-dasharray:3 9}.orbit-a{animation:orbit-dash 30s linear infinite}.orbit-b{animation:orbit-dash 44s linear infinite reverse}.route{fill:none;stroke:#67a85c88;stroke-width:1.7;stroke-dasharray:6 9;stroke-linecap:round;animation:route-flow 12s linear infinite;transition:stroke .35s,stroke-width .35s,opacity .35s}.route:after{content:""}.route.is-active{stroke:#4cb948;stroke-width:3}.ghost-route{stroke:#789e7447;stroke-width:1.15;opacity:.8;animation-duration:20s}
.hub-node{position:absolute;left:50.25%;top:50%;z-index:4;width:152px;height:152px;transform:translate(-50%,-50%) translate3d(calc(var(--gx)*-.45),calc(var(--gy)*-.45),0);border:1px solid #76b459;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#fff,#eef9e7);box-shadow:0 24px 54px #255d2c1d,inset 0 0 0 13px #ffffffc7;text-align:center}.hub-node:before,.hub-node:after{content:"";position:absolute;border-radius:50%;border:1px solid #6cad5d47}.hub-node:before{inset:-20px}.hub-node:after{inset:-41px;border-style:dashed;animation:hub-spin 24s linear infinite}.hub-pulse{position:absolute;inset:-14px;border-radius:50%;border:1px solid #4cb9487d;animation:hub-pulse 2.8s ease-out infinite}.hub-mark{display:grid;place-items:center;width:42px;height:42px;margin-bottom:7px;border-radius:12px;background:linear-gradient(135deg,#4cb948,#aee02f);font-family:'Space Grotesk',Arial,sans-serif;font-size:1.35rem;font-weight:800;color:#163d22;box-shadow:0 8px 22px #4cb94831}.hub-node strong{font-size:.78rem;letter-spacing:.14em;color:#1d4f28}.hub-node small{margin-top:4px;font-size:.58rem;letter-spacing:.08em;color:#65806a}
.network-node{position:absolute;z-index:5;width:82px;height:82px;border:1px solid #91b98b;border-radius:50%;background:#fffffff2;color:#214a2a;box-shadow:0 15px 35px #284e2916;backdrop-filter:blur(8px);display:grid;place-items:center;align-content:center;transition:transform .35s,border-color .35s,box-shadow .35s,background .35s}.network-node>span{position:absolute;inset:9px;border:1px dashed #7daa763f;border-radius:50%;animation:hub-spin 13s linear infinite reverse}.network-node strong{font-size:.92rem;letter-spacing:.08em}.network-node small{font-size:.59rem;color:#78907b}.network-node:hover,.network-node:focus-visible,.network-node.is-active{transform:scale(1.08);border-color:#4cb948;background:#f3fbe9;box-shadow:0 18px 44px #3d7f3122}.node-uk{left:23.2%;top:19%}.node-au{right:16%;bottom:16%}
.market-node{position:absolute;z-index:3;color:#66816b;font-size:.63rem;letter-spacing:.08em;display:flex;align-items:center;gap:7px}.market-node span{width:8px;height:8px;border-radius:50%;background:#fff;border:2px solid #8eb286;box-shadow:0 0 0 5px #8eb28613}.market-usa{left:10%;top:51%}.market-canada{left:14%;top:29%}.market-uae{right:23%;top:44%}
.network-readout{position:absolute;left:26px;bottom:24px;z-index:6;min-width:220px;padding:14px 16px;border:1px solid #d8e6d4;border-radius:15px;background:#ffffffd9;backdrop-filter:blur(12px);box-shadow:0 14px 36px #244e2812;transition:transform .3s}.network-readout span{display:block;margin-bottom:6px;font-size:.58rem;letter-spacing:.14em;color:#829184}.network-readout strong{display:block;font-size:.79rem;letter-spacing:.07em;color:#20502a}.network-readout small{display:block;margin-top:3px;color:#718174;font-size:.68rem}.network-coordinates{position:absolute;right:24px;top:24px;z-index:4;display:flex;gap:12px;font-size:.57rem;letter-spacing:.12em;color:#7d8e80}.network-coordinates span{padding:6px 8px;border:1px solid #dbe6d8;border-radius:20px;background:#ffffffa8}
@keyframes network-status-pulse{0%,100%{box-shadow:0 0 0 5px #4cb94812}50%{box-shadow:0 0 0 9px #4cb94808}}
@keyframes network-sweep{to{transform:rotate(360deg)}}@keyframes orbit-dash{to{stroke-dashoffset:-160}}@keyframes route-flow{to{stroke-dashoffset:-180}}@keyframes hub-spin{to{transform:rotate(360deg)}}@keyframes hub-pulse{0%{opacity:.75;transform:scale(.93)}75%,100%{opacity:0;transform:scale(1.23)}}
@media(hover:hover) and (pointer:fine){.network-stage{transition:transform .35s ease}.global-network:hover .network-stage{transform:translateZ(0)}}
@media(max-width:1050px){.global-presence-heading{grid-template-columns:1fr;gap:18px}.global-presence-heading .lead{margin:0;max-width:610px}.global-network{grid-template-columns:1fr;min-height:0}.network-copy{border-right:0;border-bottom:1px solid #dfe9dc}.network-copy:after{display:none}.network-stage{min-height:620px}}
@media(max-width:720px){.global-presence-heading{margin-bottom:34px}.global-network{border-radius:26px}.network-copy{padding:30px 22px 26px}.network-copy h3{font-size:clamp(2rem,10vw,3.4rem)}.network-status b{display:none}.region-card{padding:13px}.portfolio-reach{padding-top:18px}.network-stage{min-height:510px}.network-sweep{width:420px;height:420px;margin:-210px}.hub-node{width:122px;height:122px}.hub-node:before{inset:-15px}.hub-node:after{inset:-28px}.hub-mark{width:36px;height:36px;font-size:1.12rem}.node-uk{left:18%;top:17%}.node-au{right:10%;bottom:14%}.network-node{width:68px;height:68px}.market-usa{left:6%;top:54%}.market-canada{left:9%;top:32%}.market-uae{right:15%;top:43%}.network-readout{left:16px;bottom:15px;min-width:0;max-width:205px}.network-coordinates{right:14px;top:14px;gap:5px;flex-direction:column;align-items:flex-end}.network-coordinates span{font-size:.52rem}}
@media(prefers-reduced-motion:reduce){.network-status i,.network-sweep,.orbit,.route,.hub-node:after,.hub-pulse,.network-node>span{animation:none!important}.network-grid,.hub-node{transform:none}.hub-node{transform:translate(-50%,-50%)}}
.motion-paused .network-status i,.motion-paused .network-sweep,.motion-paused .orbit,.motion-paused .route,.motion-paused .hub-node:after,.motion-paused .hub-pulse,.motion-paused .network-node>span{animation:none!important}
.hub-mark .hub-logo-tick{transform:scale(1.08);filter:none}.hub-mark{background:linear-gradient(145deg,#ffffff,#eff9e8);border:1px solid #b8d9ae;box-shadow:0 8px 22px #4cb94824}


/* =========================================================
   BRAND TITLE + NAVIGATION REFINEMENT — September 2026
   ========================================================= */
/* Use the MAXCAST-inspired geometric display face for every visible title. */
h1,h2,h3,h4,h5,h6,
.display,.h2,.h3,
.experience-title,.selector-title,
.process-title,
.mega .mega-title strong,
.hero-stack-label strong,
.article-visual span,
.contact-line strong,
.option strong,
.network-copy h3,
.hub-mark,
.cloud-node{
  font-family:var(--brand-display)!important;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:-.045em;
}
h4,h5,h6,.footer-col h4{letter-spacing:-.025em}

/* A tighter, cleaner header and a dropdown anchored to the actual header height. */
.site-header{padding:10px 0}
.site-header.scrolled{padding:7px 0}
.brand img{width:160px}
.nav{gap:22px}
.nav-links{gap:24px}
.nav-links>div{display:flex;align-items:center;flex:0 0 auto;position:static}
.nav-links [data-mega]{position:relative;display:inline-flex;align-items:center;white-space:nowrap;flex:0 0 auto;transform:none!important}
.mega{
  top:calc(100% - 1px);
  width:min(940px,calc(100vw - 40px));
  padding:22px;
  gap:8px;
  border-radius:20px;
  transform:translateX(-50%) translateY(8px);
  pointer-events:none;
}
.mega.show{pointer-events:auto;transform:translateX(-50%) translateY(0)}
.mega:before{content:"";position:absolute;left:0;right:0;top:-12px;height:14px}
.mega a{padding:12px 13px}
.mega .mega-title{padding:12px 14px}
.mega .mega-title strong{font-size:1.15rem;line-height:1.08;letter-spacing:-.035em}
[data-mega][aria-expanded="true"]{color:var(--green-deep)}

/* Mobile Services becomes an actual expandable menu instead of a dead-end single link. */
.mobile-nav{justify-content:flex-start;overflow-y:auto;padding-top:94px;padding-bottom:34px}
.mobile-services-toggle{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  border:0;border-bottom:1px solid #e8ebe4;background:transparent;color:#242925;
  font-family:var(--brand-display);font-size:clamp(2.2rem,9vw,4rem);font-weight:900;
  line-height:1.12;text-transform:uppercase;letter-spacing:-.045em;padding:7px 0;text-align:left;
}
.mobile-services-toggle>span:last-child{font-size:.72em;font-weight:500;transition:transform .25s ease}
.mobile-services-toggle[aria-expanded="true"]>span:last-child{transform:rotate(45deg)}
.mobile-services-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:0;opacity:0;overflow:hidden;transition:max-height .4s ease,opacity .25s ease,padding .35s ease;padding:0}
.mobile-services-panel.open{max-height:720px;opacity:1;padding:14px 0 18px}
.mobile-services-panel a{font-family:Manrope,Arial,sans-serif!important;font-size:.82rem!important;font-weight:700;line-height:1.3!important;text-transform:none;letter-spacing:0;padding:11px 12px!important;border:1px solid #e1e8dd!important;border-radius:11px;background:#f8fbf5;color:#31553a!important}
.mobile-services-panel a:first-child{grid-column:1/-1;background:var(--legacy-gradient);border-color:transparent!important;color:#153b20!important}

@media(max-width:1050px){
  .site-header{padding:8px 0}
  .site-header.scrolled{padding:7px 0}
  .brand img{width:154px}
}
@media(max-width:720px){
  .brand img{width:145px}
  .mobile-nav{padding-top:82px}
  .mobile-services-panel{grid-template-columns:1fr}
  .mobile-services-panel a:first-child{grid-column:auto}
}


/* SERVICES DROPDOWN CLICKABILITY FIX — September 2026 */
.nav-links>div{position:static;isolation:isolate}
.nav-links [data-mega]{cursor:pointer;user-select:none}
.mega{
  z-index:1200;
  pointer-events:none;
  isolation:isolate;
}
.mega.show,
.nav-links>div:focus-within .mega{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.mega:before{pointer-events:auto}
.mega a{position:relative;z-index:2;pointer-events:auto}
.mega .mega-title{position:relative;z-index:2}
.mega-all-services{
  display:inline-flex!important;
  margin-top:14px;
  padding:8px 0!important;
  border-radius:0!important;
  color:#2f7f38!important;
  font-size:.78rem!important;
  font-weight:800;
  letter-spacing:.02em;
}
.mega-all-services:hover,.mega-all-services:focus-visible{background:transparent!important;color:#1f6128!important}


/* =========================================================
   GLOBAL PRESENCE HUB REDESIGN — September 2026
   Replace center MAXCAST text with the original logo and refine the hub design.
   ========================================================= */
.hub-node{
  width:176px;
  height:176px;
  border:1px solid #8fc373;
  background:
    radial-gradient(circle at 32% 20%, rgba(255,255,255,.98) 0%, rgba(255,255,255,.94) 34%, rgba(241,249,235,.98) 72%, rgba(232,243,225,.98) 100%);
  box-shadow:
    0 28px 60px rgba(37,93,44,.14),
    inset 0 0 0 14px rgba(255,255,255,.78),
    inset 0 -10px 30px rgba(76,185,72,.06);
}
.hub-node:before{inset:-18px;border-color:rgba(108,173,93,.26)}
.hub-node:after{inset:-38px;border-color:rgba(108,173,93,.26)}
.hub-pulse{inset:-12px}
.hub-core{
  display:grid;
  place-items:center;
  width:104px;
  height:104px;
  margin-bottom:12px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(247,251,243,.98) 100%);
  border:1px solid #d6e7cf;
  box-shadow:0 16px 32px rgba(37,93,44,.10);
  padding:16px 14px;
}
.hub-logo{
  width:100%;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 6px 14px rgba(76,185,72,.10));
}
.hub-node small{
  margin-top:0;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  border:1px solid #d8e7d2;
  box-shadow:0 8px 20px rgba(36,78,40,.08);
  font-size:.55rem;
  font-weight:700;
  letter-spacing:.15em;
  color:#527257;
}
@media(max-width:720px){
  .hub-node{width:138px;height:138px}
  .hub-node:before{inset:-14px}
  .hub-node:after{inset:-26px}
  .hub-core{width:80px;height:80px;margin-bottom:10px;border-radius:22px;padding:12px 10px}
  .hub-node small{padding:5px 9px;font-size:.48rem;letter-spacing:.13em}
}
@media(prefers-reduced-motion:reduce){
  .hub-logo{filter:none}
}


/* =========================================================
   GLOBAL PRESENCE HUB CLEANUP — September 2026
   Remove circular rings behind the logo and integrate the hub with the section design.
   ========================================================= */
.hub-node{
  width:196px;
  height:auto;
  min-height:112px;
  padding:14px 16px;
  border-radius:30px;
  border:1px solid rgba(134,187,126,.34);
  background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(248,251,246,.98) 100%);
  box-shadow:0 22px 48px rgba(37,93,44,.12), inset 0 1px 0 rgba(255,255,255,.9);
  flex-direction:column;
  gap:10px;
}
.hub-node::before,
.hub-node::after,
.hub-pulse{
  display:none !important;
}
.hub-core{
  width:138px;
  height:58px;
  margin-bottom:0;
  padding:10px 14px;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff 0%, #f4f9ef 100%);
  border:1px solid #d8e6d1;
  box-shadow:0 10px 26px rgba(37,93,44,.08);
}
.hub-logo{
  width:100%;
  max-width:108px;
}
.hub-node small{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
  font-size:.6rem;
  letter-spacing:.16em;
  color:#5b7560;
}
@media(max-width:720px){
  .hub-node{
    width:154px;
    min-height:92px;
    padding:12px 12px;
    border-radius:24px;
    gap:8px;
  }
  .hub-core{
    width:108px;
    height:48px;
    padding:8px 12px;
    border-radius:15px;
  }
  .hub-logo{max-width:82px}
  .hub-node small{font-size:.5rem;letter-spacing:.14em}
}
@media(prefers-reduced-motion:reduce){
  .hub-node{transform:translate(-50%,-50%) !important}
}


/* =========================================================
   GLOBAL PRESENCE LOGO-ONLY HUB — September 2026
   Use the logo only with text below and add a hover zoom interaction.
   ========================================================= */
.hub-node{
  width:auto;
  min-width:168px;
  min-height:auto;
  padding:0;
  border:0 !important;
  border-radius:0;
  background:transparent !important;
  box-shadow:none !important;
  gap:10px;
}
.hub-node::before,
.hub-node::after,
.hub-pulse,
.hub-core{
  display:none !important;
}
.hub-logo{
  display:block;
  width:168px;
  max-width:100%;
  height:auto;
  filter:none !important;
  transform-origin:center center;
  transition:transform .35s cubic-bezier(.2,.8,.2,1), filter .35s ease, opacity .35s ease;
}
.hub-node small{
  display:block;
  margin-top:0;
  padding:0;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.16em;
  color:#55715B;
  text-align:center;
  white-space:nowrap;
}
.hub-node:hover .hub-logo,
.hub-node:focus-within .hub-logo{
  transform:scale(1.08);
}
.hub-node:hover small,
.hub-node:focus-within small{
  color:#2f6f36;
}
@media(hover:hover) and (pointer:fine){
  .hub-node:hover{
    transform:translate(-50%,-50%) translate3d(calc(var(--gx)*-.45),calc(var(--gy)*-.45),0);
  }
}
@media(max-width:720px){
  .hub-node{min-width:126px;gap:8px}
  .hub-logo{width:126px}
  .hub-node small{font-size:.52rem;letter-spacing:.14em}
}
@media(prefers-reduced-motion:reduce){
  .hub-logo{transition:none}
  .hub-node:hover .hub-logo,
  .hub-node:focus-within .hub-logo{transform:none}
}

/* =========================================================
   OPTIONAL PROJECT URL LINKS — September 2026
   Driven by assets/js/project-urls.js. Empty URLs render nothing.
   ========================================================= */
.project-link-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px 18px;
  margin-top:20px;
}
.project-link-row .text-link{margin-top:0}
.live-project-link,
.portfolio-live-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:42px;
  padding:10px 14px;
  border:1px solid #cfe0ca;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#24532c;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 8px 22px rgba(30,74,37,.08);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease;
}
.live-project-link b,
.portfolio-live-link b,
.case-live-link b{font-size:1rem;font-weight:500;transition:transform .25s ease}
.live-project-link:hover,
.live-project-link:focus-visible,
.portfolio-live-link:hover,
.portfolio-live-link:focus-visible{
  transform:translateY(-2px);
  border-color:#62ad4f;
  background:#f5faef;
  box-shadow:0 12px 28px rgba(37,93,44,.13);
}
.live-project-link:hover b,
.live-project-link:focus-visible b,
.portfolio-live-link:hover b,
.portfolio-live-link:focus-visible b,
.case-live-link:hover b,
.case-live-link:focus-visible b{transform:translate(2px,-2px)}
.portfolio-item.authentic{position:relative}
.portfolio-live-link{
  position:absolute;
  top:16px;
  right:16px;
  z-index:8;
  min-height:38px;
  padding:8px 12px;
  backdrop-filter:blur(12px);
}
.case-live-link{
  margin-top:22px;
  width:max-content;
  gap:10px;
}
@media(max-width:720px){
  .project-link-row{gap:10px 12px}
  .portfolio-live-link{top:12px;right:12px;font-size:.65rem;padding:7px 10px}
  .case-live-link{width:max-content!important}
}

/* =========================================================
   MAIN NAV TYPOGRAPHY + RIGHT ALIGNMENT — September 2026
   Match the MAXCAST display language and keep every menu item visually even.
   ========================================================= */
@media(min-width:1051px){
  .nav{
    justify-content:flex-start;
    gap:0;
  }
  .brand{
    flex:0 0 auto;
    margin-right:auto;
  }
  .nav-links{
    margin-left:auto;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:22px;
  }
  .nav-links>a,
  .nav-links>div>[data-mega]{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 2px;
    font-family:var(--brand-display)!important;
    font-size:.76rem!important;
    font-weight:800!important;
    line-height:1!important;
    letter-spacing:.035em!important;
    text-transform:uppercase!important;
    white-space:nowrap;
    color:#303833;
  }
  .nav-links>div{
    display:flex;
    align-items:center;
    height:42px;
  }
  .desktop-cta{
    flex:0 0 auto;
    margin-left:22px;
  }
  .nav-links>a:after,
  .nav-links>div>[data-mega]:after{
    bottom:2px;
  }
}

@media(min-width:1051px) and (max-width:1220px){
  .nav-links{gap:16px}
  .nav-links>a,
  .nav-links>div>[data-mega]{font-size:.72rem!important;letter-spacing:.02em!important}
  .desktop-cta{margin-left:16px;padding-left:18px;padding-right:18px}
}


/* =========================================================
   SITE-WIDE SPACING RHYTHM — September 2026
   One consistent 8px-based spacing system across all pages.
   Visual design is unchanged; only whitespace/gaps are normalized.
   ========================================================= */
:root{
  --space-section:96px;
  --space-section-tight:64px;
  --space-block:44px;
  --space-content:24px;
  --space-grid:20px;
  --space-hero-top:136px;
  --space-hero-bottom:64px;
}

/* Primary vertical rhythm */
.section{padding-top:var(--space-section)!important;padding-bottom:var(--space-section)!important}
.section-tight{padding-top:var(--space-section-tight)!important;padding-bottom:var(--space-section-tight)!important}
.page-hero.illustrated-hero{
  padding-top:var(--space-hero-top)!important;
  padding-bottom:var(--space-hero-bottom)!important;
}
.work-page-hero{padding-bottom:var(--space-hero-bottom)!important}
.work-showcase-section{padding-top:var(--space-section)!important;padding-bottom:var(--space-section)!important}
.cta-band{padding-top:80px!important;padding-bottom:80px!important}
.site-footer{padding-top:64px!important;padding-bottom:24px!important}

/* Consistent heading-to-content rhythm */
.section .eyebrow{margin-bottom:18px}
.section .h2 + .lead,
.section h2 + .lead{margin-top:22px}
.section .lead + .muted{margin-top:14px}
.intro-copy .lead{margin:20px 0!important}
.intro-copy .btn{margin-top:4px}

/* Major two-column and content groups */
.grid-2{gap:56px!important}
.intro-grid{gap:40px!important}
.showcase-head{gap:48px!important}
.form-shell{gap:40px!important}
.case-hero{gap:32px!important}
.copy-grid{gap:40px!important;padding-top:32px!important;padding-bottom:32px!important}

/* Repeated blocks should begin at the same visual distance from headings */
.services-stack,
.work-grid,
.features,
.process,
.industries{margin-top:var(--space-block)!important}
.experience-heading{gap:32px!important;margin-bottom:28px!important}
.related-grid{gap:var(--space-grid)!important;margin-top:24px!important}
.cards,
.article-grid,
.portfolio-list{gap:var(--space-grid)!important}

/* Home portfolio + global presence */
.showcase-btn{margin-top:48px!important}
.global-presence-heading{gap:48px!important;margin-bottom:44px!important}
.network-copy{padding:40px 36px 36px!important}
.region-switcher{margin-top:28px!important;margin-bottom:24px!important}
.portfolio-reach{padding-top:18px!important}

/* Detail pages */
.case-meta{gap:16px}
.service-delivery{padding:36px!important}
.faq-section h2{margin-bottom:20px!important}
.faq-section details{padding-top:18px!important;padding-bottom:18px!important}
.related-work .experience-heading{margin-bottom:24px!important}

/* Footer rhythm */
.footer-top{gap:36px!important}
.footer-brand img{margin-bottom:18px!important}
.footer-col h4{margin-bottom:14px!important}
.footer-col a,.footer-col span{padding-top:4px!important;padding-bottom:4px!important}
.footer-bottom{margin-top:40px!important;padding-top:18px!important}

/* Card internals: consistent breathing room without oversized voids */
.card{padding:28px}
.card h3{margin-top:16px;margin-bottom:12px}
.portfolio-item.authentic .portfolio-info{padding:24px!important}
.article-body{padding:24px}
.form-card{padding:30px}

@media(max-width:1050px){
  :root{
    --space-section:84px;
    --space-section-tight:56px;
    --space-block:38px;
    --space-hero-top:124px;
    --space-hero-bottom:56px;
  }
  .grid-2{gap:40px!important}
  .intro-grid{gap:30px!important}
  .showcase-head{gap:28px!important}
  .global-presence-heading{gap:24px!important;margin-bottom:38px!important}
  .network-copy{padding:34px 30px 30px!important}
  .cta-band{padding-top:72px!important;padding-bottom:72px!important}
}

@media(max-width:720px){
  :root{
    --space-section:72px;
    --space-section-tight:48px;
    --space-block:32px;
    --space-hero-top:108px;
    --space-hero-bottom:44px;
  }
  .section .eyebrow{margin-bottom:14px}
  .section .h2 + .lead,
  .section h2 + .lead{margin-top:18px}
  .grid-2,.intro-grid{gap:28px!important}
  .copy-grid{gap:10px!important;padding-top:26px!important;padding-bottom:26px!important}
  .form-shell,.case-hero{gap:28px!important}
  .showcase-btn{margin-top:36px!important}
  .global-presence-heading{margin-bottom:30px!important}
  .network-copy{padding:28px 22px 26px!important}
  .service-delivery{padding:28px!important}
  .cta-band{padding-top:60px!important;padding-bottom:60px!important}
  .site-footer{padding-top:52px!important;padding-bottom:22px!important}
  .footer-top{gap:28px!important}
  .footer-bottom{margin-top:32px!important;padding-top:16px!important}
  .card{padding:24px}
  .form-card{padding:24px}
}

@media(max-width:460px){
  :root{
    --space-section:64px;
    --space-section-tight:44px;
    --space-block:28px;
    --space-hero-top:100px;
    --space-hero-bottom:40px;
  }
  .global-presence-heading{margin-bottom:26px!important}
  .network-copy{padding:26px 18px 24px!important}
}


/* INNER PAGE ISOMETRIC ILLUSTRATIONS — Sept 2026 */
.isometric-page-art{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible;
  align-self:center;
}
.isometric-page-art img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:drop-shadow(0 24px 28px rgba(34,45,84,.13));
  transform:translateZ(0);
}
.isometric-page-art:hover img{
  transform:translateY(-6px) scale(1.02)!important;
}
.isometric-page-art .isometric-caption{
  display:block;
  width:max-content;
  max-width:100%;
  margin:4px auto 0;
  padding:8px 14px!important;
  border:1px solid #dfe8da!important;
  border-radius:999px;
  background:rgba(255,255,255,.76);
  backdrop-filter:blur(8px);
  font-size:.78rem!important;
  color:#47634d!important;
  text-align:center;
}
.illustrated-hero .intro-grid{
  grid-template-columns:minmax(0,1.03fr) minmax(400px,.97fr);
  gap:44px!important;
}
.illustrated-hero .isometric-page-art{
  min-height:390px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.illustrated-hero .isometric-page-art img{
  max-height:480px;
}
.isometric-card-illustration{
  background:linear-gradient(145deg,#f9fbff,#f5f7ff)!important;
  border:1px solid #e3e8f4;
  border-radius:18px!important;
  padding:10px 10px 4px;
  overflow:hidden;
}
.isometric-card-illustration img{
  aspect-ratio:4/3!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:drop-shadow(0 12px 16px rgba(34,45,84,.10));
}
.card:hover .isometric-card-illustration img{
  transform:translateY(-5px) scale(1.035)!important;
}
.article-visual img{
  object-fit:contain!important;
  padding:10px;
  background:linear-gradient(145deg,#fbfcff,#f4f7ff)!important;
}
@media(max-width:1050px){
  .illustrated-hero .intro-grid{grid-template-columns:minmax(0,1fr) minmax(330px,.9fr)!important;gap:30px!important}
  .illustrated-hero .isometric-page-art{min-height:320px}
  .illustrated-hero .isometric-page-art img{max-height:390px}
}
@media(max-width:720px){
  .illustrated-hero .intro-grid{grid-template-columns:1fr!important;gap:22px!important}
  .illustrated-hero .isometric-page-art{min-height:0;max-width:560px;margin:0 auto!important}
  .illustrated-hero .isometric-page-art img{max-height:300px!important;aspect-ratio:4/3!important}
  .isometric-page-art .isometric-caption{font-size:.72rem!important;margin-top:0}
  .isometric-card-illustration{padding:6px}
}
@media(prefers-reduced-motion:reduce){
  .isometric-page-art:hover img,.card:hover .isometric-card-illustration img{transform:none!important}
}


/* INNER PAGE ILLUSTRATION QUALITY + CROPPING FIX — Sept 2026 */
.isometric-page-art{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}
.isometric-page-art img{
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:520px!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  margin:0 auto!important;
}
.illustrated-hero .isometric-page-art{min-height:420px!important}
.illustrated-hero .isometric-page-art img{max-height:500px!important}
.isometric-card-illustration{
  min-height:198px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:14px 14px 10px!important;
}
.isometric-card-illustration img{
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:200px!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  margin:0 auto!important;
}
.article-visual{display:flex!important;align-items:center!important;justify-content:center!important}
.article-visual img{
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:220px!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
}
@media (max-width:1050px){
  .illustrated-hero .isometric-page-art{min-height:350px!important}
  .illustrated-hero .isometric-page-art img{max-height:410px!important}
}
@media (max-width:720px){
  .illustrated-hero .isometric-page-art{min-height:0!important;max-width:560px!important}
  .illustrated-hero .isometric-page-art img{max-height:320px!important}
  .isometric-card-illustration{min-height:176px!important;padding:10px 10px 8px!important}
  .isometric-card-illustration img{max-height:176px!important}
  .article-visual img{max-height:180px!important}
}


/* GLOBAL ILLUSTRATION ANTI-CROP FIX — Sept 2026 */
.isometric-page-art,
.isometric-card-illustration,
.about-studio{
  overflow:visible!important;
}
.isometric-page-art img,
.isometric-card-illustration img,
.about-studio img{
  display:block!important;
  margin-inline:auto!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  aspect-ratio:auto!important;
}
.illustrated-hero .isometric-page-art img{max-height:500px!important}
.isometric-card-illustration img{max-height:200px!important}
.about-studio{
  background:linear-gradient(145deg,#fbfcff,#f6f8ff)!important;
  border-color:#e5ebf5!important;
}
.about-studio img{
  max-height:460px!important;
  filter:drop-shadow(0 18px 22px rgba(34,45,84,.10));
}
@media (max-width:1050px){
  .illustrated-hero .isometric-page-art img{max-height:410px!important}
  .about-studio img{max-height:380px!important}
}
@media (max-width:720px){
  .illustrated-hero .isometric-page-art img{max-height:320px!important}
  .isometric-card-illustration img{max-height:176px!important}
  .about-studio img{max-height:300px!important}
}

/* =========================================================
   RESPONSIVE NAVIGATION REFINEMENT — Sept 2026
   Smaller typography, cleaner hierarchy and drawer-style layout.
   ========================================================= */
@media (max-width:1050px){
  .mobile-nav{
    inset:0 0 0 auto!important;
    width:min(440px,100%)!important;
    justify-content:flex-start!important;
    padding:86px 22px calc(112px + env(safe-area-inset-bottom,0px))!important;
    background:rgba(255,255,255,.985)!important;
    border-left:1px solid #e6ebe3;
    box-shadow:-24px 0 60px rgba(20,48,29,.12);
    transform:translateX(105%)!important;
    transition:transform .38s cubic-bezier(.22,.8,.2,1)!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
  }
  .mobile-nav.open{transform:translateX(0)!important}
  .mobile-nav::before{
    content:"MENU";
    display:block;
    margin:0 0 10px;
    padding:0 4px 11px;
    border-bottom:1px solid #e8ede5;
    color:#78907e;
    font:800 .66rem/1 Manrope,Arial,sans-serif;
    letter-spacing:.18em;
  }
  .mobile-nav>a,
  .mobile-services-toggle{
    min-height:50px;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    width:100%;
    margin:0!important;
    padding:11px 8px!important;
    border:0!important;
    border-bottom:1px solid #edf1eb!important;
    border-radius:0!important;
    background:transparent!important;
    color:#213027!important;
    font-family:var(--brand-display)!important;
    font-size:1.12rem!important;
    font-weight:750!important;
    line-height:1.18!important;
    letter-spacing:-.025em!important;
    text-transform:none!important;
    text-align:left;
  }
  .mobile-nav>a:not(.lime)::after{
    content:"↗";
    flex:0 0 auto;
    margin-left:16px;
    color:#9aae9e;
    font-family:Manrope,Arial,sans-serif;
    font-size:.85rem;
    font-weight:700;
  }
  .mobile-services-toggle>span:last-child{
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    flex:0 0 28px;
    border:1px solid #dce6d8;
    border-radius:50%;
    background:#f5f9f2;
    color:#32633c;
    font-size:1rem!important;
    font-weight:600!important;
  }
  .mobile-services-panel{
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin:0!important;
  }
  .mobile-services-panel.open{
    max-height:760px!important;
    padding:11px 0 15px!important;
  }
  .mobile-services-panel a{
    min-height:44px;
    display:flex;
    align-items:center;
    padding:9px 10px!important;
    border:1px solid #e4ebe0!important;
    border-radius:10px!important;
    background:#f8fbf6!important;
    color:#31553a!important;
    font-family:Manrope,Arial,sans-serif!important;
    font-size:.75rem!important;
    font-weight:750!important;
    line-height:1.28!important;
  }
  .mobile-services-panel a:first-child{
    grid-column:1/-1!important;
    justify-content:center;
    min-height:42px;
    background:linear-gradient(105deg,#e9ff9a,#aee02f)!important;
    color:#173c28!important;
    border-color:transparent!important;
    font-size:.78rem!important;
  }
  .mobile-nav>.lime{
    min-height:48px!important;
    justify-content:center!important;
    margin-top:16px!important;
    padding:12px 18px!important;
    border:0!important;
    border-radius:13px!important;
    background:linear-gradient(105deg,#173c28,#2f7a3f)!important;
    color:#fff!important;
    box-shadow:0 10px 24px rgba(28,91,45,.16);
    font-family:Manrope,Arial,sans-serif!important;
    font-size:.83rem!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
  }
  .mobile-nav>.lime::after{display:none!important}
  .mobile-nav .mobile-meta{
    margin-top:16px!important;
    padding:14px 14px!important;
    border:1px solid #e6ece2;
    border-radius:12px;
    background:#f7faf5;
    color:#68786d!important;
    font-size:.74rem!important;
    line-height:1.65!important;
  }
  .menu-toggle{
    position:relative;
    z-index:905;
    width:44px!important;
    height:44px!important;
    font-size:1.05rem;
  }
  body.nav-open .menu-toggle{
    font-size:0!important;
  }
  body.nav-open .menu-toggle::after{
    content:"×";
    font-size:1.55rem;
    line-height:1;
    color:#263329;
  }
}

@media (max-width:720px){
  .mobile-nav{
    width:100%!important;
    padding:78px 18px calc(108px + env(safe-area-inset-bottom,0px))!important;
    box-shadow:none;
  }
  .mobile-nav>a,
  .mobile-services-toggle{
    min-height:46px;
    padding:9px 6px!important;
    font-size:1.02rem!important;
  }
  .mobile-services-panel{grid-template-columns:1fr!important;gap:6px!important}
  .mobile-services-panel a:first-child{grid-column:auto!important}
  .mobile-services-panel a{
    min-height:40px;
    padding:8px 10px!important;
    font-size:.72rem!important;
  }
  .mobile-nav>.lime{
    min-height:46px!important;
    margin-top:13px!important;
  }
  .mobile-nav .mobile-meta{
    margin-top:13px!important;
    padding:12px!important;
    font-size:.7rem!important;
  }
}

@media (max-width:390px){
  .mobile-nav{
    padding-left:15px!important;
    padding-right:15px!important;
  }
  .mobile-nav>a,
  .mobile-services-toggle{font-size:.96rem!important}
}
@media (max-width:1050px){
  .mobile-nav>a.mobile-current,
  .mobile-services-toggle.mobile-current{
    color:#286c36!important;
    background:#f4f9f1!important;
    padding-left:12px!important;
    padding-right:12px!important;
    border-radius:10px!important;
    border-bottom-color:transparent!important;
    margin:3px 0!important;
  }
}


/* RESPONSIVE SERVICES BUTTON FUNCTIONAL FIX — Sept 2026 */
@media (max-width:1050px){
 .mobile-services-toggle{position:relative!important;z-index:3!important;cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
 .mobile-services-panel{position:relative!important;z-index:2!important;pointer-events:none}
 .mobile-services-panel.open{pointer-events:auto!important}
 .mobile-services-panel.open a{pointer-events:auto!important}
}


/* =========================================================
   RESPONSIVE SERVICES ACCORDION + MENU ICON — FINAL FIX
   Services expands in normal document flow; following menu
   items are pushed down instead of being overlapped.
   ========================================================= */
@media (max-width:1050px){
  .mobile-nav{
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
  .mobile-services-toggle{
    position:static!important;
    z-index:auto!important;
    flex:0 0 auto!important;
  }
  .mobile-services-panel{
    position:static!important;
    z-index:auto!important;
    width:100%!important;
    flex:0 0 auto!important;
    display:none!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    max-height:none!important;
    height:auto!important;
    opacity:1!important;
    overflow:visible!important;
    margin:0!important;
    padding:0!important;
    pointer-events:auto!important;
    transition:none!important;
  }
  .mobile-services-panel.open:not([hidden]){
    display:grid!important;
    max-height:none!important;
    height:auto!important;
    padding:11px 0 15px!important;
    overflow:visible!important;
  }
  .mobile-services-panel[hidden]{
    display:none!important;
  }
  .mobile-services-panel.open a{
    position:relative!important;
    z-index:auto!important;
    pointer-events:auto!important;
  }

  /* Normal green square hamburger button */
  .menu-toggle{
    position:relative!important;
    z-index:905!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    padding:0!important;
    border:1px solid #2c8139!important;
    border-radius:8px!important;
    background:#2c8139!important;
    color:transparent!important;
    box-shadow:0 7px 18px rgba(26,94,42,.17)!important;
    font-size:0!important;
    line-height:0!important;
    overflow:hidden;
  }
  .menu-toggle::before,
  .menu-toggle::after{
    content:""!important;
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    width:20px!important;
    height:2px!important;
    border:0!important;
    border-radius:2px!important;
    background:#fff!important;
    color:transparent!important;
    transform:translate(-50%,-50%)!important;
    transition:transform .22s ease,opacity .18s ease,box-shadow .22s ease!important;
  }
  .menu-toggle::before{
    box-shadow:0 -6px 0 #fff,0 6px 0 #fff!important;
  }
  .menu-toggle::after{
    opacity:0!important;
    box-shadow:none!important;
  }
  body.nav-open .menu-toggle{
    background:#245d31!important;
    border-color:#245d31!important;
  }
  body.nav-open .menu-toggle::before{
    box-shadow:none!important;
    transform:translate(-50%,-50%) rotate(45deg)!important;
  }
  body.nav-open .menu-toggle::after{
    content:""!important;
    opacity:1!important;
    font-size:0!important;
    transform:translate(-50%,-50%) rotate(-45deg)!important;
  }
}
@media (max-width:720px){
  .mobile-services-panel,
  .mobile-services-panel.open:not([hidden]){
    grid-template-columns:1fr!important;
  }
}
