@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@400;500;600;700&display=swap');
:root{--ink:#071a2b;--navy:#06233d;--blue:#008fd0;--cyan:#20b8dd;--paper:#f5f4ef;--white:#fff;--line:rgba(7,26,43,.16);--pad:clamp(24px,6vw,96px)}
.guide{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:9vw;align-items:center;background:var(--navy);color:#fff;overflow:hidden}.guide-visual{position:relative;padding:25px 0}.guide-visual:before{content:"";position:absolute;inset:3% -12% -3% 14%;background:var(--blue);transform:rotate(4deg)}.guide-visual img{position:relative;width:min(420px,100%);margin:auto;box-shadow:0 25px 70px rgba(0,0,0,.35);transform:rotate(-2deg)}.guide-copy h2{font-size:clamp(48px,6vw,86px);margin:25px 0}.guide-copy>p{max-width:660px;color:rgba(255,255,255,.68);font-size:18px}.guide-copy ul{display:grid;grid-template-columns:1fr 1fr;padding:0;list-style:none;max-width:600px;border-top:1px solid rgba(255,255,255,.18)}.guide-copy li{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:13px}.guide-copy li:before{content:"✓";color:var(--cyan);margin-right:10px}@media(max-width:800px){.guide{grid-template-columns:1fr}.guide-visual img{max-width:300px}.guide-copy ul{grid-template-columns:1fr}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.skip{position:fixed;z-index:1000;top:10px;left:10px;background:#fff;padding:10px;transform:translateY(-150%)}.skip:focus{transform:none}.site-header{height:94px;position:absolute;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);border-bottom:1px solid rgba(255,255,255,.2);color:#fff}.brand img{width:118px;height:auto}.menu{display:flex;align-items:center;gap:clamp(18px,2.5vw,42px)}.menu>a{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.nav-cta{border-left:1px solid rgba(255,255,255,.3);padding-left:32px}.nav-cta span,.button span,.service-card a span{color:var(--cyan);margin-left:9px}.menu-toggle{display:none;background:none;border:0;color:#fff;text-transform:uppercase;letter-spacing:.1em}.hero{height:min(900px,100vh);min-height:720px;position:relative;overflow:hidden;background:#071a2b;color:#fff}.hero-media{position:absolute;inset:0;background:url('assets/impec_bg_section.png') center/cover no-repeat;transform:scale(1.02)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,19,33,.93) 0%,rgba(3,19,33,.7) 47%,rgba(3,19,33,.16) 78%),linear-gradient(0deg,rgba(3,19,33,.5),transparent 50%)}.hero-copy{position:absolute;left:var(--pad);top:50%;transform:translateY(-46%);max-width:880px}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:600}.eyebrow span{display:inline-block;width:34px;height:2px;background:var(--cyan);vertical-align:middle;margin-right:12px}.hero h1,.section h2{font-family:'Manrope',sans-serif;font-size:clamp(48px,7.4vw,112px);font-weight:500;line-height:.92;letter-spacing:-.065em;margin:26px 0}.hero h1 em,.section h2 em{font-weight:400;color:var(--cyan);font-style:normal}.lead{max-width:620px;font-size:clamp(17px,1.4vw,22px);color:rgba(255,255,255,.78);line-height:1.55}.hero-actions{display:flex;gap:14px;margin-top:38px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 26px;font-size:13px;text-transform:uppercase;letter-spacing:.1em;font-weight:600;border:1px solid rgba(255,255,255,.35);cursor:pointer}.button-primary{background:var(--blue);border-color:var(--blue);color:#fff}.button-primary:hover{background:#00a4e8}.button-ghost:hover{background:#fff;color:var(--ink)}.hero-proof{position:absolute;right:var(--pad);bottom:72px;display:flex;align-items:center;gap:15px}.hero-proof strong{font-family:'Manrope';font-size:45px;line-height:1}.hero-proof span{text-transform:uppercase;font-size:10px;line-height:1.4;letter-spacing:.14em;color:rgba(255,255,255,.65)}.scroll-cue{position:absolute;left:var(--pad);bottom:38px;text-transform:uppercase;font-size:10px;letter-spacing:.16em}.scroll-cue span{margin-left:14px;color:var(--cyan)}.marquee{background:var(--blue);color:#fff;overflow:hidden;padding:15px 0;white-space:nowrap}.marquee div{font-family:'Manrope';font-size:13px;font-weight:600;letter-spacing:.12em;word-spacing:20px;animation:marquee 25s linear infinite}.marquee i{font-size:7px;color:#99e8ff}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:clamp(78px,10vw,150px) var(--pad)}.section-label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:#587080;border-top:1px solid var(--line);padding-top:14px}.difference-copy{display:grid;grid-template-columns:1.5fr .65fr;gap:8vw;align-items:end}.difference h2,.section-heading h2,.clients h2,.faq h2{font-size:clamp(44px,6vw,90px);max-width:980px}.difference-copy>p,.section-heading>p{font-size:18px;color:#526370;max-width:500px;padding-bottom:20px}.stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:80px;border-top:1px solid var(--line)}.stats article{padding:28px 24px 8px 0;border-right:1px solid var(--line)}.stats article+article{padding-left:28px}.stats strong{font-family:'Manrope';display:block;font-size:clamp(42px,5vw,72px);letter-spacing:-.06em;color:var(--blue);line-height:1.1}.stats span{text-transform:uppercase;font-size:10px;letter-spacing:.13em;color:#607482}.services{background:#e9eef0}.section-heading{display:grid;grid-template-columns:1.5fr .65fr;align-items:end;gap:8vw}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:68px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:420px;padding:32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;transition:.3s}.service-card:hover,.service-card.featured{background:var(--navy);color:#fff;transform:translateY(-5px)}.service-number{font-size:11px;color:#6d8190;letter-spacing:.15em}.service-card img{width:68px;height:68px;object-fit:contain;margin:50px 0 28px;filter:saturate(0) brightness(.55)}.service-card:hover img,.service-card.featured img{filter:brightness(0) invert(1)}.service-card h3{font-family:'Manrope';font-size:25px;line-height:1.1;margin:0 0 15px}.service-card p{font-size:14px;color:#657682;max-width:340px}.service-card:hover p,.service-card.featured p{color:rgba(255,255,255,.68)}.service-card a{position:absolute;bottom:28px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.method{padding:0;display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff}.method-photo{min-height:800px;background:linear-gradient(rgba(0,50,75,.2),rgba(0,10,25,.2)),url('assets/impec_bg_section.png') left center/cover}.method-content{padding:clamp(70px,8vw,130px)}.section-label.light{color:rgba(255,255,255,.52);border-color:rgba(255,255,255,.22)}.method h2{font-size:clamp(48px,5vw,80px);margin:45px 0 60px}.method ol{list-style:none;padding:0;margin:0}.method li{display:grid;grid-template-columns:60px 1fr;gap:20px;border-top:1px solid rgba(255,255,255,.18);padding:25px 0}.method li>span{color:var(--cyan);font-size:11px}.method h3{margin:0;font-family:'Manrope';font-size:19px}.method li p{margin:6px 0 0;color:rgba(255,255,255,.58);font-size:14px}.clients{background:#fff}.logo-wall{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;border-left:1px solid var(--line);border-top:1px solid var(--line)}.logo-wall img{width:100%;height:160px;object-fit:contain;padding:42px;filter:grayscale(1);opacity:.56;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.3s}.logo-wall img:hover{filter:none;opacity:1}.brief{display:grid;grid-template-columns:1fr 1fr;gap:9vw;background:var(--navy) url('assets/impec-bg-footer-2.png') center/cover;color:#fff}.brief h2{font-size:clamp(45px,5vw,75px);margin-top:45px}.brief-intro>p{color:rgba(255,255,255,.65);max-width:480px;font-size:18px}.brief-form{align-self:center}.brief-form label{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.13em;color:rgba(255,255,255,.65);margin-bottom:20px}.brief-form input,.brief-form select{width:100%;display:block;background:transparent;color:#fff;border:0;border-bottom:1px solid rgba(255,255,255,.35);border-radius:0;padding:13px 0;font:18px 'DM Sans';outline:none}.brief-form select option{color:var(--ink)}.brief-form input:focus,.brief-form select:focus{border-color:var(--cyan)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:28px}.brief-form .button{margin-top:22px;width:100%}.form-note{font-size:11px;color:rgba(255,255,255,.45);text-align:center}.faq{background:#f5f4ef}.faq h2{margin:55px 0}.faq-list{margin-left:28%;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:25px 0;font-family:'Manrope';font-size:19px;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary span{color:var(--blue);font-size:25px}details[open] summary span{transform:rotate(45deg)}details p{color:#5f707b;max-width:700px;padding:0 50px 24px 0}.contact{background:var(--blue);color:#fff}.contact h2{font-size:clamp(55px,8vw,120px);margin:30px 0 80px}.contact h2 em{color:#032942}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.35)}.contact-grid div{padding:26px 0;border-right:1px solid rgba(255,255,255,.35)}.contact-grid div+div{padding-left:26px}.contact-grid span{display:block;text-transform:uppercase;font-size:10px;letter-spacing:.14em;color:rgba(255,255,255,.65)}.contact-grid a{font-family:'Manrope';font-size:clamp(17px,2vw,26px)}footer{background:#041626;color:#fff;padding:70px var(--pad) 25px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:start}footer img{width:130px}footer p{margin:0;color:rgba(255,255,255,.55);font-size:13px}footer div{display:flex;flex-direction:column;font-size:13px;gap:6px}footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:20px;color:rgba(255,255,255,.35)}.reveal{opacity:0;transform:translateY(28px);transition:.8s}.reveal.visible{opacity:1;transform:none}
.header-contacts{position:relative;border-left:1px solid rgba(255,255,255,.3);padding-left:32px}.contact-toggle{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:inherit;padding:12px 0;font:600 12px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}.contact-toggle span{color:var(--cyan);font-size:17px;transition:transform .2s}.header-contacts.open .contact-toggle span{transform:rotate(180deg)}.contact-panel{position:absolute;z-index:30;top:calc(100% + 18px);right:0;width:310px;padding:8px;background:#fff;color:var(--ink);box-shadow:0 22px 60px rgba(0,0,0,.24);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.2s}.header-contacts.open .contact-panel{opacity:1;visibility:visible;transform:none}.contact-panel a{display:block;padding:15px 17px}.contact-panel a+a{border-top:1px solid var(--line)}.contact-panel small{display:block;color:#627684;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.contact-panel strong{display:block;margin-top:3px;font:600 15px 'Manrope',sans-serif}.contact-panel a:hover{background:#edf3f5;color:var(--blue)}.logo-wall img.logo-invert{filter:invert(1);opacity:.62}.logo-wall img.logo-invert:hover{filter:invert(1);opacity:1}.logo-wall img.logo-blend{filter:none;opacity:.72}.logo-wall img.logo-blend:hover{filter:none;opacity:1}
@media(max-width:900px){.site-header{height:78px}.menu-toggle{display:block}.menu{position:fixed;inset:78px 0 auto;background:var(--navy);padding:28px var(--pad);flex-direction:column;align-items:flex-start;transform:translateY(-140%);transition:.3s}.menu.open{transform:none}.nav-cta{border:0;padding:0}.header-contacts{width:100%;border:0;padding:0}.contact-toggle{width:100%;justify-content:space-between}.contact-panel{position:static;width:100%;margin-top:8px;box-shadow:none;display:none;opacity:1;visibility:visible;transform:none}.header-contacts.open .contact-panel{display:block}.hero{min-height:740px}.hero-proof{display:none}.difference-copy,.section-heading,.brief{grid-template-columns:1fr}.difference-copy>p,.section-heading>p{padding:0}.stats{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr 1fr}.method{grid-template-columns:1fr}.method-photo{min-height:420px}.logo-wall{grid-template-columns:1fr 1fr}.faq-list{margin-left:0}.contact-grid{grid-template-columns:1fr}.contact-grid div,.contact-grid div+div{padding:20px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.35)}footer{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.brand img{width:100px}.hero h1{font-size:49px}.hero-copy{top:48%}.lead{font-size:16px}.button{width:100%}.scroll-cue{display:none}.stats{grid-template-columns:1fr}.stats article,.stats article+article{padding:24px 0;border-right:0;border-bottom:1px solid var(--line)}.service-grid{grid-template-columns:1fr}.service-card{min-height:390px}.method-content{padding:70px 24px}.logo-wall img{height:125px;padding:28px}.form-row{grid-template-columns:1fr;gap:0}.contact h2{font-size:51px}footer{grid-template-columns:1fr}.footer-brand{grid-column:1}}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:50;display:flex;align-items:center;gap:10px;background:#25d366;color:#062317;border-radius:999px;padding:13px 18px 13px 14px;box-shadow:0 12px 35px rgba(0,0,0,.25);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;transition:transform .2s,box-shadow .2s}.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 16px 42px rgba(0,0,0,.32)}.whatsapp-float svg{width:25px;height:25px;fill:currentColor}
@media(max-width:560px){.whatsapp-float{right:14px;bottom:14px;padding:13px}.whatsapp-float span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}.reveal{opacity:1;transform:none;transition:none}}
.lang-switch{display:flex;gap:8px;align-items:center;font-size:10px;letter-spacing:.08em}.lang-switch a{opacity:.55}.lang-switch a:hover{opacity:1}
.consent-banner{position:fixed;z-index:100;left:18px;right:18px;bottom:18px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;max-width:1080px;margin:auto;padding:22px 24px;background:#fff;color:var(--ink);box-shadow:0 18px 60px rgba(0,0,0,.25);border-top:3px solid var(--blue)}.consent-banner strong{font:600 18px Manrope}.consent-banner p{margin:5px 0;font-size:13px;color:#526370;max-width:720px}.consent-banner a{font-size:11px;text-decoration:underline}.consent-actions{display:flex;gap:8px}.consent-actions button{border:1px solid var(--line);background:#f0f2f2;padding:12px 15px;font:600 10px 'DM Sans';letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.consent-actions button[data-consent=accept]{background:var(--blue);color:#fff;border-color:var(--blue)}
@media(max-width:700px){.consent-banner{grid-template-columns:1fr;gap:14px}.consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-actions button{padding:12px 8px}}

/* Client identities stay visible and in their fixed brand treatment. */
.logo-wall img,.logo-wall img:hover{filter:none;opacity:1}
.logo-wall img:hover{transform:translateY(-2px)}
.logo-wall img.logo-invert,.logo-wall img.logo-invert:hover{filter:invert(1);opacity:1}
.logo-wall img.logo-blend,.logo-wall img.logo-blend:hover{filter:none;opacity:1}
.logo-wall{border:0;gap:18px 28px}
.logo-wall img,.logo-wall img:hover{border:0}
.logo-wall img.logo-live-experiences{padding:30px}
.service-hero{min-height:720px;padding:190px var(--pad) 100px;color:#fff;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(3,19,33,.98),rgba(3,19,33,.72)),url('assets/impec_bg_section.png') center/cover}.service-hero .eyebrow{color:var(--cyan)}.service-hero h1{font:500 clamp(50px,7vw,105px)/.95 Manrope;letter-spacing:-.06em;max-width:1050px;margin:35px 0}.service-hero>p:not(.eyebrow):not(.breadcrumbs){max-width:660px;font-size:20px;color:rgba(255,255,255,.72)}.service-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:10vw}.service-copy h2{font:500 clamp(38px,4.5vw,68px)/1 Manrope;letter-spacing:-.045em;margin:0 0 35px}.service-copy h3{font:600 25px Manrope;margin-top:55px}.service-copy p,.service-copy li{color:#526370;font-size:17px}.service-copy li{margin:12px 0}.service-aside{position:sticky;top:30px;align-self:start;background:var(--navy);color:#fff;padding:34px}.service-aside h2{font:500 28px Manrope;margin:0 0 15px}.service-aside p{color:rgba(255,255,255,.65);font-size:14px}.service-aside .button{width:100%;margin-top:15px}.related-services{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.related-services a{background:#fff;padding:30px;font:600 18px Manrope}.related-services a:hover{background:var(--navy);color:#fff}.breadcrumbs{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.6)}.breadcrumbs a{text-decoration:underline}@media(max-width:800px){.service-layout{grid-template-columns:1fr}.service-aside{position:static}.related-services{grid-template-columns:1fr}.service-hero{min-height:650px;padding-top:150px}}
.site-header{border-bottom:0}
