/* TRAYOMEDIA · Visalink visual-reference edition.
   Measured reference tokens, font families, scales and breakpoints;
   original agency content, artwork, and functionality remain Trayomedia's. */
:root{--navy:#030b1e;--royal:#06235f;--blue:#087ceb;--sky:#38bdf8;--orange:#2f8bff;--gold:#38d0ff;--dark:#030b1e;--text:#050f24;--muted:#51627f;--light:#f3f7fe;--line:rgba(6,43,102,.12);--radius:22px;--container:1240px;--font-head:'Outfit','Segoe UI',system-ui,sans-serif;--font-body:'Plus Jakarta Sans','Segoe UI',system-ui,sans-serif;--gradient-brand:linear-gradient(135deg,#030b1e,#06235f);--gradient-action:linear-gradient(135deg,#06235f,#087ceb);--gradient-lime:linear-gradient(135deg,#2f8bff,#38d0ff);--gradient-sun:linear-gradient(135deg,#2f8bff,#38d0ff);--header-h:92px}
html{scroll-padding-top:110px}body{font-family:var(--font-body);font-size:16px;line-height:1.65;background:var(--light);color:var(--text)}h1,h2,h3,h4,.btn,.text-link,.brand,.step-number,.stats-grid strong{font-family:var(--font-head)}h1,h2,h3{letter-spacing:-.02em;line-height:1.08}h2,.section-head h2,.lead-copy h2,.consult-copy h2,.measurement-panel h2,.cta-band h2,.mission-grid h2,.contact-copy>h2,.service-detail h2{font-size:clamp(2rem,4.2vw,3.25rem);font-weight:800;line-height:1.08;letter-spacing:-.02em}.container{width:min(calc(100% - 40px),1240px);max-width:none;margin-inline:auto}.section{padding-block:clamp(80px,10vw,130px)}.compact{padding-block:72px}.section-head{max-width:760px;margin-bottom:54px}.section-head>p:last-child:not(.eyebrow){font-size:1.08rem}.eyebrow{font-family:var(--font-head);font-size:14px;font-weight:700;letter-spacing:.18em;color:#086acb;gap:10px}.eyebrow>span{display:none}.eyebrow::before{content:'';width:28px;height:3px;flex-shrink:0;border-radius:3px;background:var(--gradient-sun)}.btn{min-height:52px;padding:0 26px;border-radius:999px;font-size:16px;font-weight:700;letter-spacing:.01em;gap:10px;line-height:1.4}.btn-sun{background:var(--gradient-sun);color:var(--navy);border:0;box-shadow:0 12px 30px -12px #2f8bffb3}.btn-sun:hover{background:var(--gradient-sun);box-shadow:0 18px 38px -14px #2f8bffd9}.btn-blue{background:var(--gradient-action);color:#fff}.btn-wa{background:linear-gradient(135deg,#128c7e,#25d366);color:#fff;border:0;box-shadow:0 12px 30px -12px #25d366b3}.btn-wa:hover{background:linear-gradient(135deg,#128c7e,#25d366)}.btn-outline{background:#ffffff10;color:white;border:1px solid #ffffff59;box-shadow:none}.btn-outline-dark{border:2px solid #06235f33;background:transparent;color:var(--royal)}.text-link{color:#086acb;font-weight:700;font-size:16px}.btn>span{font-size:21px}.section-head.center{max-width:760px}.site-header{position:fixed;inset:0 0 auto;top:0;width:100%;max-width:none;margin:0;border:0;border-radius:0;height:92px;background:linear-gradient(#030b1e8c,#030b1e00);box-shadow:none;transition:height .35s,background .35s,box-shadow .35s,backdrop-filter .35s}.header-inner{min-height:0;height:100%;width:min(calc(100% - 32px),1360px);padding:0;margin:auto;gap:22px}.brand{gap:12px;font-size:20.8px;font-weight:800;letter-spacing:.02em}.brand-light{color:var(--orange);font-weight:800}.brand img{width:76px;height:76px;padding:4px;border-radius:20px;background:white;box-shadow:0 8px 24px -10px #0007;transition:width .35s,height .35s}.brand small{font-family:var(--font-body);font-size:9px;letter-spacing:.12em;line-height:1.5;color:#ffffffd9;max-width:175px}.site-header nav{margin-left:auto;display:flex;gap:4px;position:static;max-height:none;overflow:visible;background:none;border:0;padding:0;box-shadow:none}.site-header nav a{font-family:var(--font-body);font-size:15.2px;font-weight:600;padding:10px 14px;color:#ffffffeb;border-radius:999px}.site-header nav a:hover{background:#ffffff1f;color:white}.site-header nav a[aria-current]{color:white}.site-header nav a[aria-current]:after{width:18px;height:3px;left:50%;right:auto;bottom:3px;border-radius:3px;background:var(--gradient-sun);transform:translateX(-50%)}.header-cta{min-height:42px;padding:0 18px;font-size:14.72px;white-space:nowrap}.header-call{display:flex;align-items:center;gap:10px;color:#fff;flex-shrink:0}.call-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid #ffffff4d;background:#ffffff24;font-size:20px}.call-text small{display:block;font-size:11.2px;line-height:1.3;letter-spacing:.06em}.call-text strong{font-family:var(--font-head);font-size:15.68px;white-space:nowrap}.mobile-nav-cta{display:none!important}.site-header.scrolled{height:78px;background:#ffffffed;backdrop-filter:blur(16px) saturate(1.4);box-shadow:0 10px 30px -18px #030b1e73}.site-header.scrolled .brand,.site-header.scrolled nav a{color:var(--navy)}.site-header.scrolled .brand small{color:var(--muted)}.site-header.scrolled .brand img{width:64px;height:64px}.site-header.scrolled .header-call{color:var(--royal)}.site-header.scrolled .call-symbol{background:var(--gradient-action);color:white;border-color:transparent}.site-header.scrolled nav a:hover{background:#087ceb14}.site-header.scrolled nav a[aria-current]{color:#086acb}.menu-scrim{visibility:hidden;opacity:0;pointer-events:none;position:fixed;inset:0;z-index:99;background:#030b1e8c;backdrop-filter:blur(4px);transition:opacity .35s,visibility .35s}.menu-open .menu-scrim{visibility:visible;opacity:1;pointer-events:auto}.menu-toggle{display:none}.mobile-action-bar{display:none}
/* Full-bleed hero composition, with the measured reference scale. */
.hero{display:flex;align-items:center;position:relative;width:100%;max-width:none;margin:0;min-height:100svh;padding:142px 0 120px;border-radius:0;overflow:hidden;background:var(--navy);isolation:isolate}.hero::before,.hero::after,.page-hero::before,.cta-band::before{display:none}.hero-bg{position:absolute;inset:0;z-index:-1;overflow:hidden}.hero-bg>img{display:block;width:100%;height:100%;object-fit:cover;object-position:68% center;max-height:none;transform:scale(1.06)}.hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,#030b1ef5 0%,#06235fd1 42%,#06235f59 75%,#087ceb26 100%),radial-gradient(at 80% 100%,#2f8bff47,transparent 55%)}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}.hero-copy{max-width:650px}.hero .eyebrow{font-family:var(--font-head);color:var(--gold);font-size:14px;letter-spacing:.22em;margin-bottom:22px}.hero h1{font-size:clamp(2.6rem,6.4vw,5.6rem);font-weight:900;line-height:.98;letter-spacing:-.035em;text-transform:uppercase;margin:0 0 24px;animation:none}.hero h1>span{display:block;background:linear-gradient(90deg,#38d0ff,#2f8bff 60%,#1a6bff);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.hero-copy>p.hero-services{font-family:var(--font-head);display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:clamp(1rem,1.6vw,1.25rem);font-weight:600;letter-spacing:.06em;color:white;margin:0 0 10px;line-height:1.65;max-width:none}.hero-services b{font-size:16px;color:var(--gold);font-weight:500}.hero-copy>p.hero-description{font-size:16px;line-height:1.65;color:#ffffffe0;margin:0 0 14px;max-width:620px}.hero-copy>p.hero-tag{font-family:var(--font-head);font-size:18.4px;font-style:italic;color:#68d0ff;margin:0 0 32px;line-height:1.6}.hero .button-row{margin:0;gap:14px;flex-direction:row;align-items:stretch}.hero .btn{min-height:52px;font-size:16px;padding:0 24px;gap:10px}.hero-phone{display:inline-flex;align-items:center;gap:12px;margin-top:30px;padding:10px 20px 10px 10px;border-radius:999px;background:#ffffff14;border:1px solid #ffffff2e;backdrop-filter:blur(10px)}.hero-phone>span:first-child{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:var(--gradient-sun);color:var(--navy);font-size:24px}.hero-phone small{font-size:12px;letter-spacing:.08em;display:block;line-height:1.5;color:#ffffffe0}.hero-phone strong{font-family:var(--font-head);font-size:17.6px;color:#fff;display:block;line-height:1.5}.hero-visual{position:relative;display:block;min-height:0;max-width:560px;width:100%;aspect-ratio:1/1;padding:0;align-self:center;margin-left:auto}.orbit-ring{position:absolute;inset:6%;border-radius:50%;border:2px dashed #ffffff40}.orbit-ring>span{position:absolute;left:50%;top:-19px;width:38px;height:38px;margin-left:-19px;display:grid;place-items:center;background:var(--gradient-sun);color:var(--navy);border-radius:50%;font-size:24px;box-shadow:0 8px 24px #2f8bff99}.orbit-secondary{inset:16%;border:1px dotted #38d0ff59}.floating-label{position:absolute;display:flex;gap:10px;padding:10px 16px 10px 10px;min-height:54px;background:#ffffff1f;border:1px solid #ffffff47;backdrop-filter:blur(14px);box-shadow:0 18px 50px -18px #030b1e59;border-radius:18px;color:white;font-family:var(--font-head);font-size:14px;font-weight:700;letter-spacing:.04em;transform:none}.floating-label>span{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:var(--gradient-action);color:white;font-size:22px}.floating-label strong{font-size:14px;line-height:1.4}.label-top{top:8%;left:4%}.label-bottom{right:0;bottom:12%;transform:none}.label-bottom>span{background:var(--gradient-sun);color:var(--navy)}.chip-design{right:0;top:14%}.chip-design>span{background:linear-gradient(135deg,#2f8bff,#1a6bff)}.chip-web{left:0;bottom:20%}.hero-visual>.image-caption{font-family:var(--font-body);position:absolute;bottom:-12px;right:0;left:auto;font-size:14px;color:#ffffffe0;line-height:1.5;text-align:right;max-width:260px}
/* Inner pages use the same full-width photo-led hero and left hierarchy. */
.page-hero{position:relative;width:100%;max-width:none;margin:0;min-height:78vh;display:flex;align-items:center;text-align:left;padding:152px 0 140px;border-radius:0;background:var(--navy);isolation:isolate;overflow:hidden}.page-hero .hero-bg>img{object-position:70% center}.page-hero .hero-bg::after{background:linear-gradient(95deg,#030b1ef2 0%,#06235fc7 45%,#06235f40 100%),radial-gradient(at 90% 100%,#2f8bff4d,transparent 50%)}.page-hero-inner{position:relative;z-index:1}.page-hero .breadcrumb{margin:0 0 14px}.breadcrumb ol{justify-content:flex-start;font-size:14px;gap:10px;color:#d3dfef}.breadcrumb a{color:#d3dfef}.breadcrumb li+li::before{color:#b0c3df}.page-hero .eyebrow{color:var(--gold);margin:0 0 18px}.page-hero h1{font-family:var(--font-head);font-size:clamp(2.6rem,7vw,5.4rem);font-weight:900;letter-spacing:-.035em;line-height:.98;text-transform:uppercase;max-width:760px;margin:18px 0}.page-hero h1>span{display:block;background:linear-gradient(90deg,#38d0ff,#2f8bff);-webkit-background-clip:text;background-clip:text;color:transparent}.page-hero-inner>p:not(.eyebrow){font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:620px;color:#ffffffe0;line-height:1.65;margin:24px 0 32px}.page-hero .button-row{margin-top:0}
/* Reference-like spacious sections, glass panels and saturated blue cards. */
.stats-section{padding-top:0;margin-top:-80px;position:relative;z-index:3}.stats-grid{border-radius:32px;gap:0;padding:20px 10px;background:#fffffff0;border:1px solid #d2e5fb;box-shadow:0 40px 90px -30px #030b1e40;backdrop-filter:blur(16px)}.stats-grid>div{background:transparent;border-right:1px solid var(--line);padding:20px 24px}.stats-grid>div:last-child{border:0}.stats-grid strong{font-size:48px;font-weight:900;color:var(--royal)}.stats-grid span{font-weight:700}.stats-grid small{font-size:14px}.stats-note{font-size:14px;color:var(--muted)}.form-panel,.lead-copy,.consult-copy,.mission-grid article,.measurement-panel,.testimonial-card,.value-card,.service-card,.insight-card,.project-image{border-radius:22px}.lead-copy{background:linear-gradient(140deg,#e5f1ff,#fff 70%,#e0f6ff)}.lead-grid,.consult-grid{gap:32px}.consult-copy{background:var(--gradient-brand)}.consult-copy .eyebrow{color:var(--gold)}.form-panel{border:1px solid var(--line);background:#fff;box-shadow:0 18px 50px -18px #030b1e15}.form-panel>h2{font-size:32px}.field label{font-weight:600;color:var(--ink)}input,select,textarea{border:1px solid #bacce3;background:#f3f7fe;color:var(--text);border-radius:12px;font-size:16px}input::placeholder,textarea::placeholder{color:#51627f}.enquiry-form .btn{padding:14px 24px;white-space:normal}.dark-section{background:radial-gradient(at 10% 10%,#087ceb24,transparent 55%),var(--gradient-brand)}.dark-section .section-head h2{color:white}.dark-section .eyebrow{color:var(--gold)}.dark-section p{color:#ffffffe0}.dark-section .values-list article{border-color:#ffffff33}.dark-section .values-list article>span{color:var(--gold)}.values-list>article{border-color:var(--line)}.service-card{background:linear-gradient(135deg,#06235f,#087ceb);border:1px solid #ffffff30;box-shadow:0 18px 50px -18px #030b1e59;color:white;overflow:hidden}.service-card:nth-child(3n+2){background:linear-gradient(135deg,#030b1e,#0b6e8a)}.service-card:nth-child(3n){background:linear-gradient(135deg,#06235f,#104c9a 70%,#0b3f9e)}.service-image img{height:240px;opacity:.94}.card-index{background:#030b1ecf;color:#fff;border:1px solid #ffffff40;border-radius:10px;font-size:14px}.card-body{padding:28px}.card-body h3{font-size:26px;min-height:0;font-weight:800;color:white}.card-body p{font-family:var(--font-body);font-size:16px;color:#ffffffe0;line-height:1.65}.card-body .text-link{color:#a5ebff}.card-body .text-link:hover{color:white}.service-grid{gap:24px}.project-caption h3{font-family:var(--font-head);font-size:28px;font-weight:800}.project-caption>.eyebrow{font-size:14px}.project-image .tag{border-radius:999px;background:#fff;color:var(--royal)}.project-arrow{background:var(--gradient-sun);color:var(--navy)}.work-section,.story-section{background:radial-gradient(at 0% 0%,#087ceb0a,transparent 60%),#f3f7fe}.testimonial-section{background:linear-gradient(135deg,#e6f2ff,#f3f7fe 65%,#e0f6ff)}.mission-grid article:first-child{background:linear-gradient(135deg,#fff,#e7f2ff)}.mission-grid article:last-child{background:linear-gradient(135deg,#e4f1ff,#e0f6ff)}.value-card{background:#ffffff0d;border-color:#ffffff33}.value-symbol{color:var(--gold)}.image-stack>img,.detail-visual>img,.case-feature img{border-radius:22px}.image-note{background:var(--gradient-sun);color:var(--navy);border-radius:22px;box-shadow:0 18px 50px -18px #030b1e35}.image-note span{color:#183556}.step-number{font-size:48px;font-weight:900;color:#086acb}.process-step{border-color:#087ceb40}.process-step h3{font-size:24px;font-weight:700}.cta-band{background:var(--gradient-brand);border-radius:32px;padding:60px;overflow:hidden}.cta-band::after{content:'';width:520px;height:520px;position:absolute;right:-160px;top:-200px;border:2px dashed #ffffff40;border-radius:50%;pointer-events:none;z-index:-1}.cta-band .eyebrow{color:var(--gold)}.cta-band h2{font-weight:800}.measurement-panel{background:#fff;border-color:#d3e6fa}.measurement-steps b{color:#086acb}.testimonial-card .tag{background:#e6f2ff;color:var(--royal);font-size:14px}.quote-mark{color:#087ceb}.avatar-placeholder{background:#e6f2ff;color:var(--royal)}.insight-card{background:white;border:1px solid var(--line)}.insight-card h3{font-size:26px;font-weight:800}.insight-card .eyebrow{font-size:14px;letter-spacing:.06em}.contact-detail>span{border-color:#087ceb40;color:var(--royal)}.contact-detail a{color:var(--royal)}.contact-copy>h2{font-size:clamp(2rem,4.2vw,3.25rem)}.portfolio-filters button{font-family:var(--font-head);font-size:16px;border-radius:999px;border-color:#06235f33;background:white;color:var(--royal)}.portfolio-filters button[aria-pressed=true]{background:var(--gradient-action);color:#fff}.slider-controls button{border-color:#087ceb40;color:var(--royal)}.slider-controls button:hover{background:var(--gradient-action);color:#fff}.case-dl dt{color:var(--royal)}.dark-section .case-dl dt{color:var(--gold)}.dark-section .case-dl dd{color:#ffffffe0}.site-footer{background:radial-gradient(at 0% 100%,#087ceb24,transparent 55%),var(--gradient-brand);padding-top:100px}.site-footer .brand{font-size:22px}.site-footer .brand img{width:64px;height:64px}.footer-brand>h2{font-size:32px;font-weight:800}.footer-grid h3{font-size:18px;font-family:var(--font-head);font-weight:700}.footer-grid>div>a:not(.brand),.footer-grid p,.footer-grid small,.footer-bottom p,.footer-bottom button{color:#d3dfef}.footer-grid>div>a:hover,.footer-bottom button:hover{color:var(--gold)}.social-links button{border-radius:12px;border-color:#ffffff50}.footer-bottom{border-color:#ffffff2e}.footer-bottom>div{flex-wrap:wrap}.whatsapp-float{right:24px;bottom:24px;z-index:90;display:flex;gap:10px;width:auto;height:58px;padding:0 22px 0 14px;border:0;background:linear-gradient(135deg,#128c7e,#25d366);color:white;border-radius:999px;box-shadow:0 16px 36px -12px #128c7ecc;font-family:var(--font-head);font-size:16px;font-weight:700}.whatsapp-float svg{width:30px;height:30px}.whatsapp-float::before{content:'';position:absolute;inset:0;border-radius:inherit;border:2px solid #25d366;pointer-events:none}.back-top{left:24px;right:auto;bottom:24px;z-index:89;color:var(--royal);border-color:#087ceb40}.notice{background:#e6f2ff;color:var(--royal);border-left-color:#087ceb}dialog{background:#f3f7fe;border-radius:22px;border-color:#d3e6fa}dialog::backdrop{background:#030b1ecc}.dialog-inner>h2{font-family:var(--font-head);font-weight:800;color:var(--navy)}.dialog-close{border-color:#a9c5e8;color:var(--royal)}summary::after{color:#086acb}.check-list>li::before,.expertise-list>span::before{color:#086acb}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #38d0ff;outline-offset:4px}::selection{background:#38d0ff;color:#030b1e}
/* Reference motion: slow hero zoom, 26/38-second orbital paths,
   6-second floating labels and staggered 900ms entrances. */
@keyframes ref-zoom{from{transform:scale(1.06)}to{transform:scale(1)}}@keyframes ref-orbit{to{transform:rotate(360deg)}}@keyframes ref-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes ref-in{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes ref-visual{from{opacity:0;transform:scale(.9) translateY(30px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes ref-pulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.22);opacity:0}}
@media(prefers-reduced-motion:no-preference){.hero-bg>img{animation:ref-zoom 18s ease-out forwards}.hero-copy>*{animation:ref-in .9s cubic-bezier(.2,.8,.2,1) both!important}.hero-copy>:nth-child(2){animation-delay:.1s!important}.hero-copy>:nth-child(3){animation-delay:.2s!important}.hero-copy>:nth-child(4){animation-delay:.3s!important}.hero-copy>:nth-child(5){animation-delay:.4s!important}.hero-copy>:nth-child(6){animation-delay:.5s!important}.hero-copy>:nth-child(7){animation-delay:.6s!important}.hero-visual{animation:ref-visual 1.2s .2s cubic-bezier(.2,.8,.2,1) both}.orbit-ring{animation:ref-orbit 26s linear infinite}.orbit-secondary{animation-duration:38s;animation-direction:reverse}.floating-label{animation:ref-float 6s ease-in-out infinite}.label-bottom{animation-delay:-1.5s}.chip-design{animation-delay:-3s}.chip-web{animation-delay:-4.5s}.cta-band::after{animation:ref-orbit 50s linear infinite}.whatsapp-float::before{animation:ref-pulse 2.6s ease-out infinite}.motion-ready .reveal{transition-duration:.8s;transition-timing-function:cubic-bezier(.2,.8,.2,1)}}
@media(min-width:1800px){:root{--container:1440px}.container{width:min(calc(100% - 40px),1440px)}.hero-visual{max-width:640px}.hero h1{font-size:95.2px}.section-head h2{font-size:55.25px}}
@media(max-width:1240px){.call-text{display:none}.header-inner{gap:14px}.site-header nav a{padding:10px 11px}.brand{font-size:19px}.header-cta{font-size:14px;padding:0 16px}}
@media(max-width:1080px){.header-cta{display:none}.header-call{margin-left:auto}.call-symbol{width:46px;height:46px;border-radius:14px;background:var(--gradient-sun);color:var(--navy);border:0}.call-text{display:none}.menu-toggle{display:block;order:3;width:46px;height:46px;border-radius:14px;background:#ffffff1a;border:1px solid #ffffff4d;margin-left:0;z-index:103;position:relative}.menu-toggle span{background:white}.site-header.scrolled .menu-toggle{background:var(--gradient-action);border-color:transparent}.site-header.scrolled .call-symbol{background:var(--gradient-sun);color:var(--navy)}.site-header nav{display:flex!important;position:fixed;top:0;right:0;bottom:0;left:auto;width:min(88vw,380px);height:100dvh;max-height:none;margin:0;padding:100px 22px 30px;background:var(--gradient-brand);border:0;border-radius:0;flex-direction:column;align-items:stretch;gap:8px;overflow:auto;visibility:hidden;pointer-events:none;transform:translateX(100%);opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .35s,visibility .35s;z-index:102}.site-header nav.is-open{visibility:visible;pointer-events:auto;transform:translateX(0);opacity:1;animation:none}.site-header nav a,.site-header.scrolled nav a{color:white;font-size:18px;padding:14px 16px;border-radius:14px}.site-header nav a[aria-current]:after{display:block;left:16px;transform:none;bottom:4px}.site-header nav .mobile-nav-cta{display:flex!important;background:var(--gradient-sun);color:var(--navy);font-family:var(--font-head);font-size:16px;margin-top:20px;min-height:52px}.site-header.scrolled nav a[aria-current]{color:white}.hero-grid{grid-template-columns:1fr;gap:24px}.hero-copy{max-width:760px}.hero-visual{margin:10px auto 0;max-width:520px}.hero{padding-top:142px}.split,.consult-grid,.lead-grid,.case-feature{grid-template-columns:1fr;gap:40px}.story-grid{grid-template-columns:1fr;gap:32px}.image-stack>img{width:100%;height:500px}.image-note{right:24px}.service-detail{gap:40px}.form-grid{grid-template-columns:1fr 1fr}.field-wide{grid-column:1/-1}.stats-grid{grid-template-columns:repeat(2,1fr)}.stats-grid>div:nth-child(2){border:0}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.cta-band{padding:48px}.case-feature img{height:440px}.mobile-action-bar{display:none}}
@media(max-width:760px){:root{--header-h:76px}body{font-size:16px;padding-bottom:84px}.container{width:min(calc(100% - 32px),1240px)}.site-header{height:76px}.site-header.scrolled{height:70px}.header-inner{width:calc(100% - 32px);gap:10px}.brand{font-size:17.6px;gap:10px;min-width:0}.brand img{width:60px;height:60px;border-radius:16px;padding:4px}.brand small{font-size:8px;letter-spacing:.11em;max-width:160px}.site-header.scrolled .brand img{width:54px;height:54px}.header-call{margin-left:auto}.call-symbol,.menu-toggle{width:46px;height:46px;flex-shrink:0}.hero{min-height:auto;padding:106px 0 110px}.hero h1{font-size:clamp(2.35rem,11vw,3.4rem);font-weight:900;line-height:.98;letter-spacing:-.035em;margin-bottom:24px}.hero .eyebrow{font-size:14px;letter-spacing:.16em;margin-bottom:22px}.hero-copy>p.hero-services{font-size:14.72px;letter-spacing:.03em;gap:8px}.hero-copy>p.hero-description{font-size:16px;line-height:1.65}.hero-copy>p.hero-tag{font-size:18.4px;margin-bottom:32px}.hero .button-row{flex-direction:column;gap:14px;align-items:stretch}.hero .btn{min-height:52px;font-size:16px;padding:0 20px}.hero-phone{margin-top:30px;padding:10px 20px 10px 10px}.hero-visual{aspect-ratio:1/1;max-width:420px;margin:20px auto 0;padding:0;min-height:0}.floating-label{padding:6px 10px 6px 6px;border-radius:14px;gap:6px;min-height:44px;max-width:70%}.floating-label>span{width:28px;height:28px;font-size:18px;border-radius:9px}.floating-label strong{font-size:12px;letter-spacing:.03em}.label-top{left:2%;top:8%}.chip-design{right:0;top:22%}.label-bottom{bottom:9%;right:0}.chip-web{left:0;bottom:25%}.hero-visual>.image-caption{bottom:-22px;right:0;left:auto;font-size:14px;max-width:220px}.page-hero{min-height:auto;padding:116px 0 110px}.page-hero h1{font-size:clamp(2.6rem,7vw,5.4rem);line-height:.98;margin:18px 0}.page-hero-inner>p:not(.eyebrow){font-size:16.8px;line-height:1.65;margin:24px 0 32px}.page-hero .eyebrow{font-size:14px;letter-spacing:.16em}.page-hero .button-row{flex-direction:column;align-items:stretch;gap:14px}.page-hero .btn{min-height:52px;font-size:16px}.breadcrumb ol{font-size:14px}.section{padding-block:72px}.compact{padding-block:60px}.section-head{margin-bottom:36px}.section-head h2,.lead-copy h2,.consult-copy h2,.measurement-panel h2,.cta-band h2,.mission-grid h2,.contact-copy>h2,.service-detail h2,h2{font-size:32px;line-height:1.08;font-weight:800}.section-head>p:last-child:not(.eyebrow){font-size:16px}.stats-section{margin-top:-60px;padding-top:0}.stats-grid{border-radius:32px;padding:18px 4px;gap:0}.stats-grid>div{padding:16px 12px}.stats-grid strong{font-size:41.6px}.stats-grid span,.stats-grid small{font-size:14px}.stats-note{font-size:14px}.lead-grid,.consult-grid{gap:24px}.form-panel,.lead-copy,.consult-copy,.measurement-panel{padding:24px}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.service-grid{grid-template-columns:1fr;gap:16px}.service-image img{height:230px}.card-body{padding:24px}.card-body h3{font-size:26px}.card-body p{font-size:16px}.eyebrow{font-size:14px}.project-caption h3{font-size:26px}.project-grid{gap:36px}.process-grid{grid-template-columns:1fr 1fr;gap:28px 18px}.process-step h3{font-size:22px}.step-number{font-size:42px}.image-stack>img{height:360px}.image-note{right:12px;width:min(290px,90%)}.cta-band{padding:32px 24px;border-radius:32px}.cta-band>.btn{width:100%;margin-top:28px}.cta-band h2{font-size:32px}.mission-grid{grid-template-columns:1fr}.mission-grid article{padding:28px}.three-grid{grid-template-columns:1fr}.service-detail{display:flex;flex-direction:column;gap:28px}.service-detail:nth-child(even)>.detail-visual{order:0}.detail-visual>img{height:300px}.case-feature img{height:300px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>.footer-brand{grid-column:1/-1}.site-footer{padding-top:80px}.site-footer .brand img{width:60px;height:60px}.footer-bottom{padding-right:0}.footer-bottom>div{gap:16px;flex-wrap:wrap}.whatsapp-float{right:16px;bottom:88px;width:58px;height:58px;padding:0;justify-content:center}.whatsapp-float .wa-label{display:none}.back-top{left:16px;right:auto;bottom:92px;width:44px;height:44px}.mobile-action-bar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;left:10px;right:10px;bottom:10px;z-index:95;height:62px;padding:6px;border-radius:22px;background:#030b1ee6;backdrop-filter:blur(16px);box-shadow:0 18px 40px -12px #0008;border:1px solid #ffffff1f}.mobile-action-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;border-radius:16px;font-family:var(--font-body);font-size:11.2px;font-weight:700;letter-spacing:.1em;color:white;min-height:48px}.mobile-action-bar a>span{font-size:22px;line-height:1.1}.mobile-action-bar a:nth-child(2)>span{color:#25d366}.mobile-action-bar .mobile-enquire{background:var(--gradient-sun);color:var(--navy)}.dialog-inner{padding:48px 24px 28px}.dialog-inner>h2{font-size:30px}.header-call .call-symbol{font-size:22px}.hero-bg>img{object-position:65% center}.hero-bg::after{background:linear-gradient(100deg,#030b1ef0,#06235fc2 65%,#06235f66),radial-gradient(at 80% 100%,#2f8bff47,transparent 55%)}}
@media(max-width:420px){.brand small{display:none}.brand{font-size:17px;gap:9px}.header-inner{gap:10px}.brand img{width:60px;height:60px}.footer-grid{grid-template-columns:1fr}.footer-grid>div{grid-column:1/-1}.hero .eyebrow{letter-spacing:.1em}.hero-services b{font-size:12px}}
@media(max-width:350px){.brand>span{display:none}.hero h1{font-size:34.4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.hero-bg>img{transform:none}.hero-copy>*,.hero-visual{opacity:1;transform:none}.motion-ready .reveal{opacity:1;transform:none}}
.animation-paused .hero-copy>*,.animation-paused .hero-visual{opacity:1!important;transform:none!important}
@media print{.hero,.page-hero{min-height:0;padding:32px 0;background:white;color:black}.hero-bg,.orbit-ring,.floating-label,.mobile-action-bar,.header-call{display:none!important}.hero h1,.page-hero h1{font-size:40px;color:#030b1e}.hero h1>span,.page-hero h1>span{background:none;color:#06235f;-webkit-text-fill-color:#06235f}body{padding-bottom:0}.stats-section{margin-top:20px}.hero-description,.hero-tag{color:#333!important}}
/* Contrast-preserving functional text within the reference palette. */
:root{--ink:#050f24;--gradient-action:linear-gradient(135deg,#06235f,#086acb)}
.btn-wa,.btn-wa:hover,.whatsapp-float{background:linear-gradient(135deg,#159e8f,#25d366);color:#030b1e}
.card-body{background:linear-gradient(#030b1e20,#030b1e55)}
.site-header.scrolled .brand-light{color:#8fe3ff}
.call-symbol svg,.hero-phone>span:first-child svg,.mobile-action-bar a:first-child>span svg{width:22px;height:22px}
.hero-description strong{font-weight:600}.hero-description br{display:block;content:'';margin-top:8px}

/* Accessible step labels on light panels. */
.measurement-steps article>span,.values-list article>span:first-child{color:#086acb}
.dark-section .values-list article>span:first-child{color:var(--gold)}
/* Keep footer controls clear of fixed contact actions. */
.site-footer{padding-bottom:96px}
@media(max-width:760px){.site-footer{padding-bottom:112px}}
/* Hero correction: keep the artwork and labels in one responsive composition. */
.hero{min-height:0;padding:148px 0 140px;background:radial-gradient(ellipse at 85% 30%,#0a427c88,transparent 60%),linear-gradient(120deg,#030b1e,#06235f)}
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.hero-copy{min-width:0;max-width:580px}
.hero h1{font-size:clamp(44px,5.1vw,76px);line-height:1.02;overflow-wrap:normal}
.hero-visual{width:100%;max-width:620px;min-width:0;aspect-ratio:auto;margin:0;align-self:center;display:flex;flex-direction:column;gap:18px}
.hero-visual .hero-bg{position:relative;inset:auto;z-index:auto;width:100%;aspect-ratio:1200/805;border-radius:24px;overflow:hidden;border:1px solid #ffffff26;background:#06235f}
.hero-visual .hero-bg>img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;animation:none}
.hero-visual .hero-bg::after{background:linear-gradient(180deg,transparent 75%,#030b1e33)}
.hero-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}
.hero-badges .floating-label{position:relative;inset:auto;transform:none;animation:none;max-width:none;width:100%;min-width:0;min-height:58px;padding:10px 12px;gap:10px;border-radius:14px;background:#ffffff0f;box-shadow:none;align-items:center}
.hero-badges .floating-label strong{font-size:14px;letter-spacing:.025em;white-space:normal}
.hero-badges .floating-label>span{flex-shrink:0;width:34px;height:34px}
.hero-visual>.image-caption{position:static;inset:auto;max-width:none;text-align:center;margin:0;font-size:14px;color:#d3dfef}
.hero .button-row{flex-wrap:wrap}.hero .btn{padding-inline:22px}
@media(min-width:1800px){.hero h1{font-size:84px}.hero-visual{max-width:none}}
@media(max-width:1080px){.hero{padding:124px 0 130px}.hero-grid{grid-template-columns:minmax(0,1fr);gap:40px}.hero-copy{max-width:760px}.hero-visual{max-width:720px;margin-inline:auto}.hero h1{font-size:clamp(48px,7vw,76px)}}
@media(max-width:760px){.hero{padding:108px 0 110px}.hero-grid{gap:32px}.hero h1{font-size:clamp(36px,10.5vw,58px);line-height:1.04}.hero-visual{margin:0;max-width:none;gap:14px}.hero-visual .hero-bg{border-radius:16px}.hero-badges{gap:10px}.hero-badges .floating-label{padding:10px 8px;gap:8px;min-height:56px}.hero-badges .floating-label strong{font-size:14px;letter-spacing:0}.hero-badges .floating-label>span{width:28px;height:28px;font-size:20px}.hero .button-row{flex-wrap:nowrap}}

/* ===== Scroll animations (assets/js/scroll-fx.js) ===== */
.fx-progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:1000;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,#38d0ff,#2f8bff,#1a6bff);pointer-events:none;will-change:transform}
html.fx-ready .fx{opacity:0;will-change:opacity,transform;transition:opacity .9s ease var(--fx-d,0ms),transform .95s cubic-bezier(.2,.8,.2,1) var(--fx-d,0ms),filter .9s ease var(--fx-d,0ms)}
html.fx-ready .fx-up{transform:translate3d(0,48px,0)}
html.fx-ready .fx-left{transform:translate3d(-64px,0,0)}
html.fx-ready .fx-right{transform:translate3d(64px,0,0)}
html.fx-ready .fx-zoom{transform:translate3d(0,36px,0) scale(.92)}
html.fx-ready .fx-img{transform:scale(1.14);filter:blur(8px)}
html.fx-ready .fx.fx-in{opacity:1;transform:none;filter:none}
.animation-paused .fx,.animation-paused .fx.fx-in{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
@media(max-width:760px){html.fx-ready .fx-left,html.fx-ready .fx-right{transform:translate3d(0,40px,0)}}
@media(prefers-reduced-motion:reduce){html.fx-ready .fx,.fx-progress{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.fx-progress{display:none}}
@media print{.fx-progress{display:none}.fx{opacity:1!important;transform:none!important;filter:none!important}}

/* ===== Logo-matched brand theme: black / electric blue / cyan / white ===== */
:root{--gradient-sun:linear-gradient(135deg,#2f8bff,#38d0ff);--gradient-lime:var(--gradient-sun);--gradient-brand:linear-gradient(135deg,#02060f,#06235f);--gradient-action:linear-gradient(135deg,#0a4fd1,#1677ff)}
.hero h1>span,.page-hero h1>span{background:linear-gradient(90deg,#38d0ff,#2f8bff 60%,#3b7dff);-webkit-background-clip:text;background-clip:text}

/* Logo in header and footer */
.brand{gap:0;min-width:0}
.site-header .brand img,.site-footer .brand img,.site-header.scrolled .brand img{width:auto;height:58px;max-width:100%;padding:0;border-radius:0;background:none;box-shadow:none;filter:drop-shadow(0 0 14px #1677ff55)}
.site-header.scrolled .brand img{height:50px}
.site-footer .brand img{height:64px}

/* Header stays dark so the white/blue logo is always legible */
.site-header{z-index:110}
.site-header.scrolled{background:#030b1ee6;backdrop-filter:blur(16px) saturate(1.4);box-shadow:0 10px 30px -16px #000c;border-bottom:1px solid #1677ff33}
.site-header.scrolled .brand,.site-header.scrolled nav a,.site-header.scrolled .header-call{color:#fff}
.site-header.scrolled nav a:hover{background:#ffffff1f}
.site-header.scrolled nav a[aria-current]{color:#38d0ff}
.site-header.scrolled .call-symbol{background:var(--gradient-sun);color:#030b1e;border-color:transparent}

/* Mobile menu: header sits above the scrim, and no backdrop-filter on the header
   (it would trap the fixed menu panel inside the 70px header and hide it). */
@media(max-width:1080px){
  .site-header.scrolled{backdrop-filter:none;-webkit-backdrop-filter:none;background:#030b1ef2}
  .site-header nav{background:linear-gradient(160deg,#02060f,#06235f);box-shadow:-24px 0 60px -20px #000a;border-left:1px solid #1677ff40}
  .menu-scrim{z-index:105}
  .site-header{z-index:110}
  .site-header .menu-toggle{z-index:111}
  .site-header.scrolled .menu-toggle{background:#ffffff1a;border-color:#ffffff4d}
  .menu-open .site-header{backdrop-filter:none}
}
@media(max-width:760px){.site-header .brand img,.site-header.scrolled .brand img{height:44px}.site-footer .brand img{height:56px}}
@media(max-width:380px){.site-header .brand img,.site-header.scrolled .brand img{height:38px}}

/* Instagram button */
.social-links a.social-ig{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 18px;border:1px solid #38d0ff66;border-radius:999px;color:#fff;background:#ffffff0f;font-family:var(--font-head);font-size:14px;font-weight:700;text-decoration:none;transition:background .25s,border-color .25s,transform .25s}
.social-links a.social-ig:hover{background:var(--gradient-sun);color:#030b1e;border-color:transparent;transform:translateY(-2px)}
.contact-copy .social-links a.social-ig,.contact-main .social-links a.social-ig{color:var(--royal);border-color:#1677ff55;background:#fff}
.contact-copy .social-links a.social-ig:hover,.contact-main .social-links a.social-ig:hover{color:#030b1e}
