:root{--black:#060608;--ink:#0D0D10;--dark:#111114;--graphite:#18181C;--card:#1E1E24;--mid:#707080;--light:#9999A8;--silver:#C0C0CC;--off-white:#F5F5F2;--cream:#FAFAF7;--white:#FFF;--accent:#00FFE8;--accent2:#00D4C4;--accent-dim:#0FA39A;--gold:#BFA265;--font-display:'Playfair Display',Georgia,serif;--font-body:'Outfit',sans-serif;--ease:cubic-bezier(.22,1,.36,1);--r:3px;--r2:8px}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background:var(--black);color:var(--white);overflow-x:hidden;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400}.container{max-width:1240px;margin:0 auto;padding:0 48px}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-body);font-weight:700;font-size:13.5px;letter-spacing:.04em;padding:18px 40px;border:none;cursor:pointer;transition:all .4s var(--ease);text-transform:uppercase}.btn-accent{background:var(--accent);color:var(--black);clip-path:polygon(0 0,100% 0,96% 100%,0% 100%)}.btn-accent:hover{background:var(--accent2);transform:translateY(-2px);box-shadow:0 12px 48px rgba(0,255,232,.2)}.btn svg{width:18px;height:18px;flex-shrink:0}
.section-label{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;display:flex;align-items:center;gap:14px}.section-label::before{content:'';width:28px;height:1px;background:var(--accent)}.section-title{font-size:clamp(34px,5vw,64px);line-height:1.08;letter-spacing:-.02em;margin-bottom:20px;color:var(--white)}.section-title em{font-style:italic;color:var(--accent)}.section-desc{font-size:17px;line-height:1.9;color:var(--light);max-width:580px;font-weight:300}.accent-bar{width:56px;height:3px;background:linear-gradient(90deg,var(--accent),transparent);margin:20px 0 28px}
.fade-up{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.fade-up.vis{opacity:1;transform:translateY(0)}.fade-left{opacity:0;transform:translateX(-40px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.fade-left.vis{opacity:1;transform:translateX(0)}.fade-right{opacity:0;transform:translateX(40px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.fade-right.vis{opacity:1;transform:translateX(0)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes pulse{0%,100%{opacity:.6}50%{opacity:1}}@keyframes rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:76px;display:flex;align-items:center;background:rgba(6,6,8,.85);backdrop-filter:blur(24px);border-bottom:1px solid rgba(255,255,255,.03);transition:all .4s}nav.scrolled{height:62px;box-shadow:0 8px 48px rgba(0,0,0,.5)}.nav-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1240px;margin:0 auto;padding:0 48px}.nav-logo{display:flex;align-items:center;height:100%;max-width:240px;z-index:10}.nav-logo a,.nav-logo .custom-logo-link{display:flex;align-items:center;height:40px;max-height:40px}.nav-logo img,.nav-logo .custom-logo,.nav-logo a img{max-height:40px!important;width:auto!important;height:auto!important;display:block!important;object-fit:contain;max-width:100%}.nav-links{display:flex;list-style:none;gap:2px;align-items:center}.nav-links a{color:rgba(255,255,255,.5);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:10px 16px;transition:all .3s;position:relative}.nav-links a:hover{color:var(--accent)}.nav-links a::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%) scaleX(0);width:16px;height:1px;background:var(--accent);transition:transform .3s}.nav-links a:hover::after{transform:translateX(-50%) scaleX(1)}.nav-cta a{background:var(--accent)!important;color:var(--black)!important;padding:10px 24px!important;font-weight:700!important;clip-path:polygon(0 0,100% 0,94% 100%,0% 100%)!important}.nav-cta a::after{display:none!important}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}.hamburger span{width:22px;height:1.5px;background:var(--white);transition:.3s}.mobile-menu{display:none;position:fixed;top:76px;left:0;right:0;background:var(--ink);z-index:999;padding:32px;flex-direction:column;gap:2px;border-bottom:1px solid rgba(255,255,255,.04)}.mobile-menu.open{display:flex}.mobile-menu a{color:rgba(255,255,255,.6);font-size:15px;font-weight:600;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.04);text-transform:uppercase;letter-spacing:.08em}
#hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;background:var(--black);padding-top:76px;background-image:url(../images/hero-buildings.jpg);background-size:cover;background-position:center right}.hero-pattern{position:absolute;inset:0;background:linear-gradient(to right,rgba(6,6,8,.92) 0%,rgba(6,6,8,.75) 55%,rgba(6,6,8,.45) 100%);pointer-events:none}.hero-grid-dots{display:none}.hero-chess{position:absolute;right:-60px;bottom:-60px;width:480px;height:480px;opacity:.03;animation:rotate 120s linear infinite}.hero-ring{position:absolute;border-radius:50%;border:1px solid rgba(0,255,232,.06);pointer-events:none}.hero-ring-1{width:600px;height:600px;right:-200px;top:-100px;animation:float 8s ease-in-out infinite}.hero-ring-2{width:400px;height:400px;right:-100px;top:0;animation:float 6s ease-in-out infinite 1s}.hero-ring-3{width:200px;height:200px;left:5%;bottom:15%;animation:float 10s ease-in-out infinite 2s}.hero-accent-line{position:absolute;left:48px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(0,255,232,.15) 30%,rgba(0,255,232,.15) 70%,transparent);pointer-events:none}.hero-accent-line2{position:absolute;left:96px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(0,255,232,.06) 40%,rgba(0,255,232,.06) 60%,transparent);pointer-events:none}.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center;position:relative;z-index:2;padding:60px 0}.hero-content{max-width:620px}.hero-tag{font-size:11px;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:var(--accent);margin-bottom:32px}.hero-title{font-size:clamp(38px,5.5vw,68px);line-height:1.06;letter-spacing:-.025em;margin-bottom:28px;font-weight:500;color:var(--white)}.hero-title em{font-style:italic;color:var(--accent);font-weight:400}.hero-desc{font-size:18px;line-height:1.9;color:rgba(255,255,255,.45);margin-bottom:44px;font-weight:300}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px}.hero-proof{display:flex;align-items:center;gap:12px;padding-top:28px;border-top:1px solid rgba(255,255,255,.06)}.hero-proof-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(0,255,232,.06);border:1px solid rgba(0,255,232,.12);padding:8px 16px;font-size:12px;font-weight:600;color:var(--accent);letter-spacing:.04em}.hero-photo-wrap{position:relative;display:flex;justify-content:center}.hero-photo-frame{position:absolute;inset:-20px;border:1px solid rgba(0,255,232,.08);pointer-events:none}.hero-photo-frame2{position:absolute;top:-10px;left:-10px;right:10px;bottom:10px;border:1px solid rgba(0,255,232,.04);pointer-events:none}.hero-photo-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:130%;height:130%;background:radial-gradient(ellipse,rgba(0,255,232,.08) 0%,transparent 60%);pointer-events:none}.hero-photo-img{position:relative;width:100%;max-width:440px;object-fit:cover;z-index:1;filter:contrast(1.08) brightness(1.02)}.hero-corner{position:absolute;width:20px;height:20px;border-color:var(--accent);border-style:solid;border-width:0;pointer-events:none;z-index:3}.hero-corner.tl{top:-20px;left:-20px;border-top-width:1px;border-left-width:1px}.hero-corner.tr{top:-20px;right:-20px;border-top-width:1px;border-right-width:1px}.hero-corner.bl{bottom:-20px;left:-20px;border-bottom-width:1px;border-left-width:1px}.hero-corner.br{bottom:-20px;right:-20px;border-bottom-width:1px;border-right-width:1px}.hero-status{position:absolute;bottom:20px;left:20px;background:rgba(6,6,8,.85);backdrop-filter:blur(12px);border:1px solid rgba(0,255,232,.12);padding:14px 20px;z-index:4;display:flex;align-items:center;gap:10px}.hero-status-dot{width:8px;height:8px;background:var(--accent);border-radius:50%;animation:pulse 2s infinite}.hero-status span{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
.marquee{overflow:hidden;padding:20px 0;background:var(--ink);border-top:1px solid rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.03)}.marquee-track{display:flex;gap:48px;animation:marquee 40s linear infinite;white-space:nowrap}.marquee-track span{font-family:var(--font-display);font-size:14px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.12);flex-shrink:0;display:flex;align-items:center;gap:48px}.marquee-track span::after{content:'◆';font-size:6px;opacity:.3}
#about{padding:140px 0;background:var(--off-white);color:var(--graphite);position:relative;overflow:hidden}#about::before{content:'';position:absolute;top:0;right:0;width:50%;height:100%;background:linear-gradient(135deg,transparent 50%,rgba(0,212,196,.03) 100%);pointer-events:none}.about-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;align-items:center}.about-img-wrap{position:relative}.about-img{width:100%;height:580px;object-fit:cover;object-position:top}.about-img-frame{position:absolute;top:-20px;left:-20px;right:20px;bottom:20px;border:1px solid rgba(15,163,154,.15);pointer-events:none}.about-img-accent{position:absolute;bottom:-28px;right:-28px;width:140px;height:140px;background:var(--accent);opacity:.08}.about-stat-float{position:absolute;top:24px;right:-40px;background:var(--white);padding:20px 28px;box-shadow:0 20px 60px rgba(0,0,0,.08);z-index:2;border-left:3px solid var(--accent-dim)}.about-stat-val{font-family:var(--font-display);font-size:36px;font-weight:700;color:var(--accent-dim);line-height:1}.about-stat-label{font-size:11px;color:var(--mid);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}.about-content{position:relative}.about-title{font-size:clamp(30px,3.5vw,48px);line-height:1.12;color:var(--graphite);margin-bottom:20px}.about-title em{font-style:italic;color:var(--accent-dim)}.about-text{font-size:16.5px;line-height:2;color:var(--mid);margin-bottom:16px;font-weight:300}.about-highlights{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-top:36px}.about-hl{padding:22px 18px;background:var(--white);border:1px solid rgba(0,0,0,.04);text-align:center;position:relative;overflow:hidden;transition:all .4s}.about-hl::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent-dim);transform:scaleX(0);transition:transform .5s}.about-hl:hover::before{transform:scaleX(1)}.about-hl:hover{box-shadow:0 12px 36px rgba(0,0,0,.05);transform:translateY(-2px)}.about-hl-icon{width:40px;height:40px;margin:0 auto 10px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(15,163,154,.15)}.about-hl-icon svg{width:18px;height:18px;stroke:var(--accent-dim);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.about-hl-val{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--accent-dim)}.about-hl-label{font-size:10px;color:var(--mid);letter-spacing:.08em;text-transform:uppercase;margin-top:4px}
#services{padding:140px 0;background:var(--graphite);position:relative;overflow:hidden}#services::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 48px,rgba(0,255,232,.015) 48px,rgba(0,255,232,.015) 49px),repeating-linear-gradient(0deg,transparent,transparent 48px,rgba(0,255,232,.015) 48px,rgba(0,255,232,.015) 49px);pointer-events:none}.svc-head{text-align:center;margin-bottom:72px;position:relative;z-index:1}.svc-head .section-label{justify-content:center}.svc-head .section-label::before{display:none}.svc-head .section-desc{margin:0 auto}.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;position:relative;z-index:1}.svc-card{padding:44px 32px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);position:relative;overflow:hidden;transition:all .5s var(--ease)}.svc-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--accent),transparent);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}.svc-card::after{content:'';position:absolute;bottom:0;right:0;width:80px;height:80px;background:radial-gradient(circle,rgba(0,255,232,.06) 0%,transparent 70%);opacity:0;transition:opacity .5s}.svc-card:hover{border-color:rgba(0,255,232,.15);transform:translateY(-6px);box-shadow:0 24px 56px rgba(0,0,0,.3)}.svc-card:hover::before{transform:scaleX(1)}.svc-card:hover::after{opacity:1}.svc-num{font-family:var(--font-display);font-size:72px;font-weight:800;color:rgba(0,255,232,.06);line-height:1;margin-bottom:8px}.svc-label{font-size:10px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.svc-title{font-family:var(--font-display);font-size:28px;color:var(--white);margin-bottom:8px;line-height:1.2;font-weight:500}.svc-focus{font-size:12px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px;display:flex;align-items:center;gap:8px}.svc-focus::before{content:'';width:12px;height:1px;background:var(--accent)}.svc-text{font-size:14.5px;line-height:1.85;color:rgba(255,255,255,.4);font-weight:300}.svc-icon{width:52px;height:52px;border:1px solid rgba(0,255,232,.15);display:flex;align-items:center;justify-content:center;margin-bottom:24px;position:relative}.svc-icon::before{content:'';position:absolute;top:-4px;left:-4px;right:4px;bottom:4px;border:1px solid rgba(0,255,232,.06);pointer-events:none}.svc-icon svg{width:22px;height:22px;stroke:var(--accent);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#method{padding:140px 0;background:var(--white);color:var(--graphite);position:relative}#method::before{content:'';position:absolute;left:0;top:0;width:100%;height:100%;background-image:radial-gradient(circle,rgba(15,163,154,.04) 1px,transparent 1px);background-size:32px 32px;pointer-events:none}.method-head{text-align:center;margin-bottom:72px;position:relative;z-index:1}.method-head .section-label{justify-content:center;color:var(--accent-dim)}.method-head .section-label::before{display:none}.method-head .section-title{color:var(--graphite)}.method-head .section-title em{color:var(--accent-dim)}.method-head .section-desc{margin:0 auto;color:var(--mid)}.method-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;position:relative;z-index:1}.step{padding:40px 36px;background:var(--off-white);border:1px solid rgba(0,0,0,.04);position:relative;overflow:hidden;transition:all .4s}.step::before{content:'';position:absolute;top:0;left:0;bottom:0;width:3px;background:var(--accent-dim);transform:scaleY(0);transform-origin:top;transition:transform .5s}.step:hover{box-shadow:0 16px 48px rgba(0,0,0,.05);transform:translateY(-4px)}.step:hover::before{transform:scaleY(1)}.step-num{font-family:var(--font-display);font-size:56px;font-weight:800;color:rgba(15,163,154,.08);line-height:1;margin-bottom:8px}.step-title{font-family:var(--font-display);font-size:22px;color:var(--graphite);margin-bottom:14px;font-weight:600}.step-text{font-size:14px;line-height:1.9;color:var(--mid);font-weight:300}.step-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-dim);background:rgba(15,163,154,.06);padding:4px 10px;margin-bottom:14px}
#testimonials{padding:140px 0;background:var(--dark);position:relative;overflow:hidden}#testimonials::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 70%,rgba(191,162,101,.04) 0%,transparent 50%),radial-gradient(circle at 70% 30%,rgba(0,255,232,.03) 0%,transparent 40%);pointer-events:none}.test-head{text-align:center;margin-bottom:56px;position:relative;z-index:1}.test-head .section-label{justify-content:center}.test-head .section-label::before{display:none}.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:56px;position:relative;z-index:1}.test-card{padding:40px 28px;background:rgba(255,255,255,.02);border:1px solid rgba(191,162,101,.1);display:flex;flex-direction:column;position:relative;overflow:hidden;transition:all .4s}.test-card::before{content:'❝';position:absolute;top:12px;right:20px;font-family:var(--font-display);font-size:64px;color:rgba(191,162,101,.06);line-height:1}.test-card:hover{border-color:rgba(191,162,101,.25);transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.2)}.test-stars{color:var(--gold);font-size:14px;letter-spacing:3px;margin-bottom:20px}.test-quote{font-family:var(--font-display);font-size:18px;line-height:1.75;color:rgba(255,255,255,.65);font-style:italic;flex:1;margin-bottom:28px}.test-author{font-size:14px;font-weight:700;color:var(--white)}.test-role{font-size:11px;color:rgba(255,255,255,.3);margin-top:2px}.test-impact{text-align:center;padding:52px 0;border-top:1px solid rgba(255,255,255,.04);position:relative;z-index:1}.test-impact q{font-family:var(--font-display);font-size:clamp(26px,3.5vw,42px);font-style:italic;color:rgba(255,255,255,.4);line-height:1.4}.test-impact q em{color:var(--accent);font-style:italic}
#cta{padding:140px 0;background:var(--black);text-align:center;position:relative;overflow:hidden;background-image:url(../images/chess-bg.jpg);background-size:cover;background-position:center}.cta-grid-bg{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(6,6,8,.82) 0%,rgba(6,6,8,.75) 100%);pointer-events:none}.cta-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:500px;height:500px;background:radial-gradient(circle,rgba(0,255,232,.08) 0%,transparent 60%);pointer-events:none}.cta-content{position:relative;z-index:2;max-width:720px;margin:0 auto}.cta-title{font-size:clamp(34px,4.5vw,58px);line-height:1.1;margin-bottom:24px;font-weight:500;color:var(--white)}.cta-title em{font-style:italic;color:var(--accent)}.cta-desc{font-size:18px;line-height:1.85;color:rgba(255,255,255,.4);margin-bottom:44px;font-weight:300}.cta-btn-wrap{display:flex;justify-content:center}
footer{background:var(--ink);padding:64px 0 28px;border-top:1px solid rgba(255,255,255,.03)}.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px}.footer-brand img{height:36px;margin-bottom:20px}.footer-brand p{font-size:13px;color:rgba(255,255,255,.25);line-height:1.9;max-width:260px;font-weight:300}.footer-col h5{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.footer-col a{display:block;font-size:13px;color:rgba(255,255,255,.35);padding:5px 0;transition:color .3s}.footer-col a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid rgba(255,255,255,.04);padding-top:24px;display:flex;justify-content:space-between;align-items:center}.footer-bottom p{font-size:11px;color:rgba(255,255,255,.15)}.footer-social{display:flex;gap:10px}.footer-social a{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.06);color:rgba(255,255,255,.3);transition:all .3s}.footer-social a:hover{border-color:var(--accent);color:var(--accent)}.footer-social svg{width:15px;height:15px}
.wpp-float{position:fixed;bottom:28px;right:28px;width:58px;height:58px;background:var(--accent);display:flex;align-items:center;justify-content:center;z-index:900;box-shadow:0 6px 28px rgba(0,255,232,.3);transition:all .3s;clip-path:polygon(0 0,100% 0,100% 85%,85% 100%,0 100%)}.wpp-float:hover{transform:scale(1.06)}.wpp-float svg{width:28px;height:28px;fill:var(--black)}
@media(max-width:1024px){.container{padding:0 32px}.nav-inner{padding:0 32px}.hero-inner,.about-inner{grid-template-columns:1fr}.svc-grid{grid-template-columns:1fr 1fr}.method-grid{grid-template-columns:1fr 1fr}.test-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.container{padding:0 20px}.nav-inner{padding:0 20px}.nav-links{display:none}.hamburger{display:flex}.hero-inner{grid-template-columns:1fr;gap:40px;text-align:center;padding:40px 0}.hero-photo-wrap{order:-1;max-width:300px;margin:0 auto}.hero-content{max-width:100%}.hero-tag{justify-content:center}.hero-actions{justify-content:center}.hero-proof{justify-content:center}.hero-accent-line,.hero-accent-line2,.hero-ring,.hero-chess,.hero-grid-dots{display:none}.about-inner{gap:48px}.about-img{height:360px}.about-stat-float{position:relative;top:auto;right:auto;bottom:auto;display:flex;align-items:center;gap:16px;padding:14px 20px;box-shadow:none;border-left:3px solid var(--accent-dim);background:var(--white);margin-top:12px;width:100%;box-sizing:border-box}.about-highlights{grid-template-columns:1fr}.svc-grid,.method-grid,.test-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:12px;text-align:center}#hero{min-height:auto;padding:100px 0 60px}.hero-corner,.hero-status{display:none}}
:root{--black:#0A0A0A;--ink:#111;--dark:#151515;--graphite:#1A1A1A;--charcoal:#222;--mid:#666;--light:#999;--off-white:#F7F7F5;--cream:#FAFAF8;--white:#FFF;--accent:#00FFE8;--accent-dim:#128F8B;--font-display:'Cormorant Garamond',serif;--font-body:'Manrope',sans-serif;--ease:cubic-bezier(.22,1,.36,1);--r:4px;--r2:8px}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--font-body);background:var(--off-white);color:var(--charcoal);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}a{text-decoration:none;color:inherit}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:400}
.container{max-width:1200px;margin:0 auto;padding:0 40px}

nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:72px;display:flex;align-items:center;background:rgba(10,10,10,.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.04)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;margin:0 auto;padding:0 40px}
.nav-logo img{height:38px}
.nav-links{display:flex;list-style:none;gap:4px;align-items:center}
.nav-links a{color:rgba(255,255,255,.6);font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:8px 14px;transition:.3s;border-radius:4px}
.nav-links a:hover{color:var(--accent)}
.nav-cta a{background:var(--accent)!important;color:var(--black)!important;padding:9px 20px!important;font-weight:700!important;border-radius:4px!important}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.hamburger span{width:22px;height:1.5px;background:#fff;transition:.3s}
.mobile-menu{display:none;position:fixed;top:72px;left:0;right:0;background:var(--ink);z-index:999;padding:24px;flex-direction:column;gap:2px;border-bottom:1px solid rgba(255,255,255,.06)}
.mobile-menu.open{display:flex}
.mobile-menu a{color:rgba(255,255,255,.7);font-size:14px;font-weight:600;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.04);text-transform:uppercase;letter-spacing:.08em}

.blog-header{padding:140px 0 60px;text-align:center}
.blog-header h1{font-size:clamp(36px,5vw,56px);color:var(--charcoal);margin-bottom:12px}
.blog-header h1 em{font-style:italic;color:var(--accent-dim)}
.blog-header p{font-size:17px;color:var(--mid);max-width:520px;margin:0 auto;line-height:1.7}

.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding-bottom:80px}
.blog-card{background:var(--white);border:1px solid rgba(0,0,0,.04);border-radius:var(--r2);overflow:hidden;transition:all .4s var(--ease)}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(0,0,0,.06);border-color:rgba(18,143,139,.15)}
.blog-card-img{width:100%;height:220px;object-fit:cover;background:var(--cream)}
.blog-card-body{padding:28px 24px}
.blog-card-tag{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-dim);margin-bottom:10px}
.blog-card-title{font-family:var(--font-display);font-size:22px;line-height:1.3;color:var(--charcoal);margin-bottom:10px;transition:color .3s}
.blog-card:hover .blog-card-title{color:var(--accent-dim)}
.blog-card-excerpt{font-size:13.5px;line-height:1.75;color:var(--mid);margin-bottom:16px}
.blog-card-meta{font-size:11px;color:var(--light);display:flex;gap:16px}
.blog-card-link{font-size:12px;font-weight:700;color:var(--accent-dim);letter-spacing:.05em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px;transition:color .3s}
.blog-card-link:hover{color:var(--charcoal)}
.blog-card-link svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.blog-pagination{display:flex;justify-content:center;gap:8px;padding-bottom:80px}
.blog-pagination a,.blog-pagination span{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,.08);border-radius:var(--r);font-size:13px;font-weight:700;color:var(--mid);transition:.3s}
.blog-pagination a:hover{border-color:var(--accent-dim);color:var(--accent-dim)}
.blog-pagination .active{background:var(--accent-dim);color:var(--white);border-color:var(--accent-dim)}

footer{background:var(--black);padding:48px 0 24px;border-top:1px solid rgba(255,255,255,.04);color:#fff}
.footer-bottom{display:flex;justify-content:space-between;align-items:center}
.footer-bottom p{font-size:11px;color:rgba(255,255,255,.2)}
.footer-bottom a{font-size:12px;color:rgba(255,255,255,.35);margin-left:20px;transition:.3s}
.footer-bottom a:hover{color:var(--accent)}

@media(max-width:768px){
  .container{padding:0 20px}.nav-inner{padding:0 20px}
  .nav-links{display:none}.hamburger{display:flex}
  .blog-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;gap:12px;text-align:center}
}

:root{--black:#0A0A0A;--ink:#111;--charcoal:#222;--mid:#666;--light:#999;--off-white:#F7F7F5;--cream:#FAFAF8;--white:#FFF;--accent:#00FFE8;--accent-dim:#128F8B;--font-display:'Cormorant Garamond',serif;--font-body:'Manrope',sans-serif;--r:4px;--r2:8px}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--font-body);background:var(--white);color:var(--charcoal);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}a{text-decoration:none;color:inherit}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:400}

nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:72px;display:flex;align-items:center;background:rgba(10,10,10,.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.04)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;margin:0 auto;padding:0 40px}
.nav-logo img{height:38px}
.nav-links{display:flex;list-style:none;gap:4px;align-items:center}
.nav-links a{color:rgba(255,255,255,.6);font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:8px 14px;transition:.3s;border-radius:4px}
.nav-links a:hover{color:var(--accent)}
.nav-cta a{background:var(--accent)!important;color:var(--black)!important;padding:9px 20px!important;font-weight:700!important;border-radius:4px!important}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.hamburger span{width:22px;height:1.5px;background:#fff;transition:.3s}
.mobile-menu{display:none;position:fixed;top:72px;left:0;right:0;background:var(--ink);z-index:999;padding:24px;flex-direction:column;gap:2px;border-bottom:1px solid rgba(255,255,255,.06)}
.mobile-menu.open{display:flex}
.mobile-menu a{color:rgba(255,255,255,.7);font-size:14px;font-weight:600;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.04);text-transform:uppercase;letter-spacing:.08em}

.post-header{padding:140px 0 48px;max-width:760px;margin:0 auto;text-align:center}
.post-breadcrumb{font-size:12px;color:var(--light);margin-bottom:24px;display:flex;gap:8px;justify-content:center;align-items:center}
.post-breadcrumb a{color:var(--accent-dim);transition:.3s}
.post-breadcrumb a:hover{color:var(--charcoal)}
.post-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--white);background:var(--accent-dim);padding:5px 12px;border-radius:20px;margin-bottom:20px}
.post-title{font-size:clamp(32px,4.5vw,48px);line-height:1.15;color:var(--charcoal);margin-bottom:16px}
.post-title em{font-style:italic;color:var(--accent-dim)}
.post-meta{font-size:13px;color:var(--light);display:flex;gap:20px;justify-content:center;margin-bottom:40px}
.post-cover{width:100%;max-width:760px;height:400px;object-fit:cover;border-radius:var(--r2);margin:0 auto 48px;background:linear-gradient(135deg,var(--charcoal),#1a1a1a)}

.post-content{max-width:680px;margin:0 auto;padding:0 24px 80px}
.post-content p{font-size:17px;line-height:2;color:var(--mid);margin-bottom:24px}
.post-content h2{font-size:28px;color:var(--charcoal);margin:48px 0 16px;line-height:1.3}
.post-content h3{font-size:22px;color:var(--charcoal);margin:36px 0 12px}
.post-content blockquote{border-left:3px solid var(--accent-dim);padding:16px 24px;margin:32px 0;background:var(--off-white);border-radius:0 var(--r2) var(--r2) 0;font-family:var(--font-display);font-size:20px;font-style:italic;color:var(--charcoal);line-height:1.6}
.post-content ul,.post-content ol{margin:16px 0 24px 20px}
.post-content li{font-size:16px;line-height:1.9;color:var(--mid);margin-bottom:8px}
.post-content strong{color:var(--charcoal);font-weight:700}
.post-content a{color:var(--accent-dim);border-bottom:1px solid rgba(18,143,139,.3);transition:.3s}
.post-content a:hover{border-color:var(--accent-dim)}
.post-content img{width:100%;border-radius:var(--r2);margin:32px 0}

.post-author-box{max-width:680px;margin:0 auto 64px;padding:32px;background:var(--off-white);border:1px solid rgba(0,0,0,.04);border-radius:var(--r2);display:flex;gap:20px;align-items:center}
.post-author-box img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex-shrink:0}
.post-author-name{font-family:var(--font-display);font-size:20px;color:var(--charcoal);margin-bottom:4px}
.post-author-role{font-size:12px;color:var(--light)}
.post-author-bio{font-size:13px;color:var(--mid);line-height:1.7;margin-top:6px}

.post-cta{max-width:680px;margin:0 auto 64px;padding:40px;background:var(--black);border-radius:var(--r2);text-align:center;color:#fff}
.post-cta h3{font-size:28px;margin-bottom:12px;color:#fff}
.post-cta h3 em{color:var(--accent);font-style:italic}
.post-cta p{font-size:15px;color:rgba(255,255,255,.45);margin-bottom:24px;line-height:1.7}
.post-cta .btn{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:var(--black);padding:16px 32px;border-radius:var(--r);font-weight:700;font-size:14px;font-family:var(--font-body);border:none;cursor:pointer;transition:all .3s}
.post-cta .btn:hover{background:#33FFE8}
.post-cta .btn svg{width:18px;height:18px;fill:currentColor}

.related{max-width:760px;margin:0 auto;padding:0 24px 80px}
.related h3{font-family:var(--font-display);font-size:28px;color:var(--charcoal);margin-bottom:24px}
.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.related-card{background:var(--off-white);border:1px solid rgba(0,0,0,.04);border-radius:var(--r2);padding:24px;transition:all .3s}
.related-card:hover{border-color:rgba(18,143,139,.15);transform:translateY(-2px)}
.related-card-tag{font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-dim);margin-bottom:8px}
.related-card-title{font-family:var(--font-display);font-size:20px;color:var(--charcoal);line-height:1.3;margin-bottom:8px}
.related-card-meta{font-size:11px;color:var(--light)}

footer{background:var(--black);padding:48px 0 24px;border-top:1px solid rgba(255,255,255,.04);color:#fff}
.footer-bottom{display:flex;justify-content:space-between;align-items:center}
.footer-bottom p{font-size:11px;color:rgba(255,255,255,.2)}
.footer-bottom a{font-size:12px;color:rgba(255,255,255,.35);margin-left:20px;transition:.3s}
.footer-bottom a:hover{color:var(--accent)}

@media(max-width:768px){
  .nav-inner{padding:0 20px}.nav-links{display:none}.hamburger{display:flex}
  .post-author-box{flex-direction:column;text-align:center}
  .related-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;gap:12px;text-align:center}
}

/* Correção Logo Footer */
.footer-logo{display:block;margin-bottom:20px;max-width:200px}
.footer-logo img,.footer-logo .custom-logo,.footer-logo a img{max-height:60px!important;width:auto!important;height:auto!important;display:block!important;object-fit:contain;max-width:100%}

/* ===== CLIENT LOGOS GRID (about section) ===== */
.about-clients-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.about-client-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 8px;
  padding: 12px;
  transition: background 0.3s, border-color 0.3s;
}
.about-client-logo:hover { background: rgba(255,255,255,0.07); border-color: rgba(0,255,232,0.2); }
.about-client-logo img {
  max-height: 48px;
  width: 100%;
  object-fit: contain;
  filter: brightness(0.85) grayscale(0.3);
  transition: filter 0.3s;
}
.about-client-logo:hover img { filter: brightness(1.1) grayscale(0); }

/* ===== MÉTODO CHAVE CARD ===== */
.svc-metodo-wrap { margin-top: 48px; }
.svc-metodo-card {
  display: flex;
  gap: 48px;
  align-items: flex-start;
  background: linear-gradient(135deg, rgba(0,255,232,0.04) 0%, rgba(0,0,0,0) 60%);
  border: 1px solid rgba(0,255,232,0.18);
  border-radius: 16px;
  padding: 48px;
  position: relative;
  overflow: hidden;
}
.svc-metodo-card::before {
  content: '';
  position: absolute;
  top: -60px; right: -60px;
  width: 200px; height: 200px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,255,232,0.06) 0%, transparent 70%);
  pointer-events: none;
}
.svc-metodo-left {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  flex-shrink: 0;
  min-width: 160px;
}
.svc-num-metodo {
  font-size: 64px;
  line-height: 1;
  opacity: 0.12;
  color: var(--accent);
}
.svc-metodo-logo {
  max-width: 160px;
  width: 100%;
  object-fit: contain;
}
.svc-metodo-right { flex: 1; }
.svc-metodo-title { font-size: clamp(24px, 2.5vw, 34px); }
.svc-metodo-logo-right {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 220px;
}
.svc-metodo-logo-right img {
  width: 100%;
  max-width: 220px;
  object-fit: contain;
  filter: brightness(1.1);
}
.svc-metodo-list {
  list-style: none;
  padding: 0;
  margin: 16px 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.svc-metodo-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  color: var(--graphite);
}
.svc-metodo-icon { font-size: 16px; }

/* ===== NOSSAS SOLUÇÕES SECTION ===== */
#nossas-solucoes {
  padding: 80px 0;
  background: var(--black);
  border-top: 1px solid rgba(255,255,255,0.04);
}
.solucoes-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 48px;
}
.solucao-card {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 12px;
  padding: 32px 28px;
  transition: background 0.3s, border-color 0.3s, transform 0.3s;
}
.solucao-card:hover {
  background: rgba(255,255,255,0.055);
  border-color: rgba(0,255,232,0.2);
  transform: translateY(-4px);
}
.solucao-icon {
  width: 44px; height: 44px;
  display: flex; align-items: center; justify-content: center;
  background: rgba(0,255,232,0.08);
  border-radius: 10px;
  margin-bottom: 20px;
  color: var(--accent);
}
.solucao-icon svg { width: 22px; height: 22px; }
.solucao-title {
  font-family: var(--font-display);
  font-size: 17px;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 6px;
}
.solucao-sub {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 14px;
}
.solucao-text { font-size: 14px; color: var(--light); line-height: 1.75; }

/* ===== TESTIMONIALS — 5 cards layout ===== */
.test-grid { grid-template-columns: repeat(3,1fr); }
@media(max-width:900px){ .test-grid { grid-template-columns: 1fr; } }

/* ===== RESPONSIVE ===== */
@media(max-width:900px){
  .about-clients-grid { grid-template-columns: repeat(3,1fr); }
  .svc-metodo-card { flex-direction: column; gap: 24px; padding: 28px; }
  .svc-metodo-left { flex-direction: row; min-width: unset; }
  .solucoes-grid { grid-template-columns: 1fr 1fr; }
}
@media(max-width:600px){
  .about-clients-grid { grid-template-columns: repeat(2,1fr); }
  .solucoes-grid { grid-template-columns: 1fr; }
}

/* ===== AJUSTES v2 ===== */

/* 3. Client logos: bigger, transparent bg */
.about-clients-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid rgba(0,0,0,0.06);
}
.about-client-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 10px;
  border-radius: 8px;
  background: transparent;
  border: 1px solid rgba(0,0,0,0.06);
  transition: border-color 0.3s;
}
.about-client-logo:hover { border-color: rgba(15,163,154,0.25); }
.about-client-logo img {
  max-height: 72px;
  max-width: 100%;
  width: auto;
  object-fit: contain;
  filter: none;
  transition: transform 0.3s;
}
.about-client-logo:hover img { transform: scale(1.05); }

/* 4. Services grid: 3 cards in top row */
.svc-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px;
}

/* 4. Método Chave card: hide logo inside card */
.svc-metodo-logo { display: none !important; }
.svc-metodo-left { min-width: unset; flex-direction: row; align-items: center; }

/* 5. Method section: logo above title */
.method-logo-wrap {
  display: flex;
  justify-content: center;
  margin-bottom: 28px;
}
.method-logo-wrap img {
  max-height: 90px;
  width: auto;
  object-fit: contain;
}

/* Responsive */
@media(max-width:900px){
  .svc-grid { grid-template-columns: 1fr 1fr !important; }
}
@media(max-width:600px){
  .svc-grid { grid-template-columns: 1fr !important; }
  .about-clients-grid { grid-template-columns: repeat(2,1fr); }
}

/* ===== v3 FIXES ===== */

/* Hero bg fallback (overridden by inline style from customizer) */
#hero {
  background-image: url('../images/hero-buildings.jpg');
  background-size: cover;
  background-position: center right;
}

/* CTA bg fallback */
#cta {
  background-image: url('../images/chess-bg.jpg');
  background-size: cover;
  background-position: center;
}

/* Método Chave card — full width below 3-col grid, all white text */
.svc-metodo-card { background: rgba(0,255,232,.04); border:1px solid rgba(0,255,232,.18); border-radius:16px; padding:44px 48px; display:flex; gap:32px; align-items:flex-start; position:relative; overflow:hidden; }
.svc-metodo-card::before { content:''; position:absolute; top:-60px; right:-60px; width:200px; height:200px; border-radius:50%; background:radial-gradient(circle,rgba(0,255,232,.06) 0%,transparent 70%); pointer-events:none; }
.svc-metodo-left { flex-shrink:0; }
.svc-num-metodo { font-family:var(--font-display); font-size:72px; font-weight:800; color:rgba(0,255,232,.08); line-height:1; }
.svc-metodo-right { flex:1; }
.svc-metodo-right .svc-label { color:var(--accent) !important; }
.svc-metodo-title { color:var(--white) !important; }
.svc-metodo-right .svc-focus { color:var(--accent) !important; }
.svc-metodo-right .svc-text { color:rgba(255,255,255,.55) !important; }
.svc-metodo-list { list-style:none; padding:0; margin:16px 0; display:flex; flex-direction:column; gap:12px; }
.svc-metodo-list li { display:flex; align-items:center; gap:12px; font-size:15px; color:rgba(255,255,255,.75); }
.svc-metodo-list li svg { flex-shrink:0; stroke:var(--accent); width:16px; height:16px; }
.svc-metodo-wrap { margin-top:24px; grid-column:1/-1; }

/* Testimonials Swiper */
.test-swiper { padding-bottom: 56px !important; margin-bottom: 48px; }
.test-swiper .swiper-slide { height: auto; }
.test-swiper .test-card {
  height: 100%;
  padding: 40px 32px;
  background: rgba(255,255,255,.02);
  border: 1px solid rgba(191,162,101,.1);
  display: flex;
  flex-direction: column;
  position: relative;
  overflow: hidden;
  transition: border-color .4s;
  border-radius: 4px;
}
.test-swiper .test-card:hover { border-color: rgba(191,162,101,.28); }
.test-swiper .test-card::before { content:'❝'; position:absolute; top:12px; right:20px; font-family:var(--font-display); font-size:64px; color:rgba(191,162,101,.06); line-height:1; }
.test-swiper .test-quote { font-family:var(--font-display); font-size:16px; line-height:1.8; color:rgba(255,255,255,.65); font-style:italic; flex:1; margin-bottom:28px; }
.test-swiper .test-stars { color:var(--gold); font-size:14px; letter-spacing:3px; margin-bottom:20px; }
.test-swiper .test-author { font-size:14px; font-weight:700; color:var(--white); }
.test-swiper .test-role { font-size:11px; color:rgba(255,255,255,.3); margin-top:4px; display:block; }
/* Nav arrows */
.test-prev, .test-next { color: var(--accent) !important; }
.test-prev::after, .test-next::after { font-size: 18px !important; }
/* Pagination dots */
.test-pagination .swiper-pagination-bullet { background: rgba(255,255,255,.2); opacity:1; }
.test-pagination .swiper-pagination-bullet-active { background: var(--accent); }
/* Remove old static grid */
.test-grid { display: none !important; }

@media(max-width:768px){
  .svc-metodo-card { flex-direction:column; padding:28px 24px; gap:16px; }
  .svc-metodo-logo-right { width: 160px; order: -1; }
}
