:root{--ink:#18231f;--dark:#111915;--brown:#30251d;--cream:#f2f0e9;--paper:#faf9f5;--green:#9fe870;--green-deep:#4d9d42;--line:rgba(24,35,31,.13);--glass:rgba(255,255,255,.56);--shadow:0 24px 70px rgba(21,31,26,.13);--radius:22px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"DM Sans",sans-serif;background:var(--paper);color:var(--ink);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1160px,calc(100% - 48px));margin-inline:auto}.section-pad{padding:130px 0}.noise{position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.cursor-glow{position:fixed;width:400px;height:400px;border-radius:50%;background:rgba(159,232,112,.12);filter:blur(70px);pointer-events:none;z-index:-1;transform:translate(-50%,-50%)}.glass{background:var(--glass);border:1px solid rgba(255,255,255,.82);box-shadow:var(--shadow);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.site-header{position:fixed;top:18px;left:0;right:0;z-index:50}.nav-wrap{height:76px;border-radius:18px;display:flex;align-items:center;padding:8px 10px 8px 14px;transition:.3s}.site-header.scrolled .nav-wrap{height:66px;background:rgba(250,249,245,.85)}.brand{display:flex;align-items:center;gap:11px;margin-right:auto}.brand img{width:48px;height:48px;object-fit:cover;border-radius:11px}.brand span{display:flex;flex-direction:column;line-height:1}.brand strong{font:800 19px/1 "Manrope",sans-serif;letter-spacing:.16em}.brand small{font-size:7px;letter-spacing:.11em;margin-top:4px;font-weight:700}.desktop-nav ul{display:flex;gap:34px;margin-right:34px;list-style:none}.desktop-nav a{font-size:13px;font-weight:600;position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--green-deep);transition:.25s}.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}.nav-cta{height:54px;padding:0 20px;border-radius:13px;background:var(--ink);color:white;display:flex;align-items:center;gap:22px;font-size:13px;font-weight:700}.nav-cta span,.btn span{font-size:18px}.menu-toggle,.mobile-menu{display:none}
.hero{min-height:100vh;padding-top:170px;display:flex;align-items:center;position:relative;background:radial-gradient(circle at 70% 35%,#fff 0,rgba(255,255,255,0) 33%),linear-gradient(135deg,#f7f5ee 0%,#eceae2 100%);overflow:hidden}.blueprint-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(24,35,31,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(24,35,31,.045) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to right,transparent,black 60%,transparent)}.orb{position:absolute;border-radius:50%;filter:blur(4px)}.orb-one{width:380px;height:380px;background:rgba(159,232,112,.18);right:-120px;top:140px}.orb-two{width:260px;height:260px;border:1px solid rgba(24,35,31,.08);left:-110px;bottom:30px}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:70px;align-items:center;position:relative}.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin-bottom:28px}.eyebrow span{width:27px;height:2px;background:var(--green-deep)}h1,h2{font-family:"Manrope",sans-serif;font-weight:600;letter-spacing:-.055em;line-height:1.04}h1{font-size:clamp(55px,6vw,86px);max-width:700px}h1 em,h2 em{font-family:Georgia,serif;font-weight:400;color:var(--green-deep)}.hero-copy>p{font-size:17px;line-height:1.7;color:#52605a;max-width:570px;margin:28px 0 35px}.hero-actions{display:flex;align-items:center;gap:30px}.btn{border:0;cursor:pointer;border-radius:14px;padding:17px 22px;display:inline-flex;align-items:center;justify-content:center;gap:35px;font-weight:700;font-size:14px;transition:.25s}.btn-primary{background:var(--green);color:var(--ink);box-shadow:0 14px 30px rgba(90,155,70,.18)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(90,155,70,.28)}.btn-secondary{background:transparent;border:1px solid rgba(24,35,31,.2);color:var(--ink);box-shadow:none}.btn-secondary:hover{background:rgba(24,35,31,.04);transform:translateY(-3px)}.text-link{font-weight:700;font-size:13px;display:inline-flex;gap:14px;align-items:center}.text-link span{transition:.25s}.text-link:hover span{transform:translate(3px,-3px)}.hero-proof{display:flex;gap:50px;margin-top:65px;padding-top:26px;border-top:1px solid var(--line)}.hero-proof div{display:flex;gap:11px;align-items:flex-start}.hero-proof strong{font:700 30px/1 "Manrope"}.hero-proof span{font-size:10px;line-height:1.35;color:#68736e;text-transform:uppercase;letter-spacing:.06em}
.hero-visual{position:relative}.visual-frame{height:580px;border-radius:32px;background:linear-gradient(145deg,rgba(48,37,29,.94),rgba(18,27,23,.96));border-color:rgba(255,255,255,.13);color:white;padding:22px;overflow:hidden;box-shadow:0 45px 90px rgba(22,27,24,.25)}.frame-top,.frame-bottom{display:flex;justify-content:space-between;position:relative;z-index:2}.frame-top{font:700 9px "Manrope";letter-spacing:.15em;color:rgba(255,255,255,.65)}.live-dot{color:var(--green)}.live-dot:before{content:"";display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:7px;box-shadow:0 0 0 5px rgba(159,232,112,.12);animation:pulse 2s infinite}.image-scene{height:430px;margin:0 -22px;position:relative;overflow:hidden}.image-scene img{width:100%;height:100%;object-fit:cover;opacity:.88;transition:transform .5s ease}.image-scene:hover img{transform:scale(1.04)}.frame-bottom{align-items:flex-end}.frame-bottom small{font-size:7px;letter-spacing:.13em;color:rgba(255,255,255,.4);display:block;margin-bottom:5px}.frame-bottom strong{font:600 10px/1.4 "Manrope";letter-spacing:.08em}.text-right{text-align:right}.status-ring{width:55px;height:55px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) 98%,rgba(255,255,255,.15) 0);position:relative}.status-ring:after{content:"";position:absolute;inset:4px;background:#17201b;border-radius:50%}.status-ring span{font-size:9px;z-index:1}.floating-card{position:absolute;left:-55px;bottom:70px;border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:13px;background:rgba(255,255,255,.72);animation:float 4s ease-in-out infinite}.icon-cube{font-size:32px;color:var(--green-deep)}.floating-card small,.floating-card strong{display:block}.floating-card small{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#6d7772}.floating-card strong{font:700 13px "Manrope";margin-top:3px}
.trust-strip{background:var(--ink);color:white;height:82px;display:flex;align-items:center;overflow:hidden}.trust-inner{display:flex;align-items:center}.trust-inner>span{font-size:9px;letter-spacing:.14em;color:var(--green);white-space:nowrap;padding-right:35px;border-right:1px solid rgba(255,255,255,.15)}.marquee{overflow:hidden}.marquee-track{display:flex;gap:29px;align-items:center;width:max-content;animation:marquee 24s linear infinite;padding-left:29px}.marquee b{font:600 11px "Manrope";letter-spacing:.13em;white-space:nowrap}.marquee i{font-style:normal;font-size:6px;color:var(--green)}
.section-label{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;display:flex;gap:12px;align-items:center;color:#6b756f}.section-label span{font:700 10px "Manrope";color:var(--green-deep);border:1px solid rgba(77,157,66,.3);padding:6px;border-radius:50%}.about{background:var(--paper)}.about-grid{display:grid;grid-template-columns:220px 1fr;gap:60px}.lead{font:500 clamp(34px,4.6vw,62px)/1.16 "Manrope";letter-spacing:-.045em;max-width:900px}.lead strong{color:var(--green-deep);font-family:Georgia,serif;font-style:italic;font-weight:400}.about-lower{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;margin-top:70px}.about-lower>p{font-size:15px;line-height:1.8;color:#65706a}.principles{border-radius:20px;box-shadow:none;background:rgba(255,255,255,.45)}.principles div{display:flex;gap:25px;padding:20px 24px;border-bottom:1px solid var(--line)}.principles div:last-child{border:0}.principles span{font-size:10px;color:var(--green-deep)}.principles b{font:600 14px "Manrope"}
.services{background:#e9ece5}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}.section-head h2,.process h2,.contact h2{font-size:clamp(44px,5.3vw,70px);margin-top:22px}.section-head>p{max-width:390px;line-height:1.8;color:#65706a;font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card,.service-cta{min-height:350px;border-radius:20px;padding:28px;position:relative;overflow:hidden;transition:.35s}.service-card{box-shadow:none;background:rgba(255,255,255,.43);cursor:pointer}.service-card:hover{transform:translateY(-7px);background:rgba(255,255,255,.75);box-shadow:0 20px 50px rgba(29,43,35,.1)}.service-card.featured{background:var(--ink);color:white;box-shadow:0 25px 55px rgba(19,34,25,.16)}.service-card.featured:after{content:"";position:absolute;width:210px;height:210px;border:1px solid rgba(159,232,112,.25);border-radius:50%;right:-80px;top:-80px}.service-no{font-size:10px;color:#849089;letter-spacing:.1em}.service-image-wrap{width:100%;height:148px;border-radius:12px;overflow:hidden;margin:22px 0 25px}.service-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.service-card:hover .service-image-wrap img{transform:scale(1.05)}.service-card h3,.service-cta h3{font:700 20px "Manrope";margin-bottom:14px}.service-card p{font-size:13px;line-height:1.65;color:#67716c}.featured p{color:rgba(255,255,255,.62)}.service-card a{position:absolute;bottom:27px;font-size:11px;font-weight:700;display:flex;gap:10px}.service-cta{background:var(--green);display:flex;flex-direction:column;justify-content:flex-end}.service-cta p{font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}.service-cta h3{font-size:25px}.round-link{position:absolute;right:27px;top:28px;width:55px;height:55px;border-radius:50%;background:var(--ink);color:white;display:grid;place-items:center;font-size:22px;transition:.3s}.round-link:hover{transform:rotate(45deg)}
.projects{background:var(--paper)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project{border-radius:20px;overflow:hidden;background:rgba(255,255,255,.55);box-shadow:none;transition:.35s}.project:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(29,43,35,.12)}.project-art{height:265px;position:relative;overflow:hidden;background:#d8d9d0}.project-art img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.project:hover .project-art img{transform:scale(1.06)}.project-info{min-height:165px;padding:22px;display:flex;justify-content:space-between;gap:20px}.project-info span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--green-deep)}.project-info h3{font:700 17px "Manrope";margin:8px 0}.project-info p{font-size:12px;line-height:1.55;color:#77817c}.project-info>b{font:500 11px "Manrope";color:#93a099}
.process{background:#18231f;color:white}.process-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:130px}.process .section-label,.contact .section-label{color:rgba(255,255,255,.45)}.process-intro>p{color:rgba(255,255,255,.56);line-height:1.8;max-width:420px;margin-top:28px;font-size:14px}.process-orbit{width:160px;height:160px;border:1px solid rgba(255,255,255,.15);border-radius:50%;margin-top:55px;display:grid;place-items:center;position:relative}.process-orbit:after{content:"";position:absolute;inset:28px;border:1px dashed rgba(159,232,112,.3);border-radius:50%}.process-orbit b{font:700 22px "Manrope";color:var(--green);z-index:2}.process-orbit span{position:absolute;width:9px;height:9px;background:var(--green);border-radius:50%;top:16px;left:32px;box-shadow:0 0 15px var(--green)}.process-orbit i{position:absolute;inset:-1px;border:1px solid transparent;border-right-color:var(--green);border-radius:50%;animation:spin 8s linear infinite}.steps{border-top:1px solid rgba(255,255,255,.17)}.step{display:grid;grid-template-columns:50px 1fr 30px;gap:25px;padding:30px 5px;border-bottom:1px solid rgba(255,255,255,.17);cursor:pointer;transition:.3s}.step:hover,.step.active{padding-left:18px;background:linear-gradient(90deg,rgba(159,232,112,.08),transparent)}.step>span{font-size:10px;color:var(--green)}.step h3{font:600 27px "Manrope"}.step p{color:rgba(255,255,255,.54);font-size:13px;line-height:1.65;max-height:0;opacity:0;overflow:hidden;transition:.4s}.step.active p{max-height:100px;opacity:1;margin-top:12px}.step>b{font-size:20px;font-weight:400;color:var(--green)}
.contact{position:relative;background:#30251d;color:white;overflow:hidden}.contact-glow{position:absolute;width:650px;height:650px;border-radius:50%;background:rgba(159,232,112,.12);filter:blur(100px);left:-200px;top:-200px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;position:relative;align-items:center}.eyebrow.light{color:rgba(255,255,255,.6)}.contact-copy>p{color:rgba(255,255,255,.56);font-size:15px;line-height:1.7;max-width:430px;margin:30px 0 50px}.contact-details{display:flex;flex-direction:column;gap:12px;font-size:13px}.map-card{padding:12px;border-radius:24px;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.16);box-shadow:none}.map-head{height:76px;display:flex;justify-content:space-between;align-items:center;padding:0 14px 0 18px}.map-head small,.map-head strong{display:block}.map-head small{font-size:8px;letter-spacing:.14em;color:var(--green);margin-bottom:5px}.map-head strong{font:600 15px "Manrope"}.map-head a{font-size:10px;font-weight:700;color:var(--green)}.map-card iframe{display:block;width:100%;height:410px;border:0;border-radius:16px;filter:saturate(.65) contrast(1.05)}
footer{background:#0f1612;color:white;padding:65px 0 25px}.footer-main{display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:70px;align-items:start;padding-bottom:55px}.footer-brand img{width:64px;height:64px}.footer-brand strong{font-size:24px}.footer-main>p{color:rgba(255,255,255,.55);font:500 18px/1.6 "Manrope"}.footer-info p{color:rgba(255,255,255,.55);font:500 18px/1.6 "Manrope"}.footer-contact{margin-top:20px;display:flex;flex-direction:column;gap:8px;font-size:13px;color:rgba(255,255,255,.6)}.footer-contact a{transition:.25s}.footer-contact a:hover{color:var(--green)}.footer-links ul{display:grid;grid-template-columns:1fr 1fr;gap:18px;list-style:none;font-size:12px}.footer-links a:hover{color:var(--green)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:23px;display:flex;justify-content:space-between;color:rgba(255,255,255,.38);font-size:9px;text-transform:uppercase;letter-spacing:.09em}.footer-bottom a{color:var(--green)}
.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}@keyframes pulse{50%{box-shadow:0 0 0 9px rgba(159,232,112,0)}}@keyframes float{50%{transform:translateY(-12px)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:980px){.desktop-nav,.nav-cta{display:none}.menu-toggle{display:flex;width:48px;height:48px;border:0;background:var(--ink);border-radius:12px;flex-direction:column;align-items:center;justify-content:center;gap:7px}.menu-toggle span{width:20px;height:1px;background:white;transition:.3s}.menu-toggle.active span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle.active span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-menu{display:block;position:absolute;top:85px;left:24px;right:24px;border-radius:16px;padding:22px;transform:translateY(-15px);opacity:0;pointer-events:none;transition:.3s}.mobile-menu.open{opacity:1;transform:none;pointer-events:auto}.mobile-menu ul{display:flex;flex-direction:column;gap:18px;list-style:none}.hero-grid{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-copy>p{margin-inline:auto}.eyebrow,.hero-actions,.hero-proof{justify-content:center}.hero-visual{max-width:620px;width:100%;margin:0 auto}.about-grid{grid-template-columns:1fr}.service-grid,.project-grid{grid-template-columns:1fr 1fr}.process-grid,.contact-grid{grid-template-columns:1fr;gap:70px}.process-orbit{display:none}.footer-main{grid-template-columns:1fr 1fr}.footer-main>p{display:none}}
@media(max-width:700px){.container{width:min(100% - 30px,1160px)}.section-pad{padding:88px 0}.site-header{top:10px}.nav-wrap{height:64px}.brand img{width:42px;height:42px}.hero{padding-top:125px}.hero-grid{gap:55px}h1{font-size:46px}.hero-copy>p{font-size:15px}.hero-actions{flex-direction:column;gap:20px}.hero-proof{gap:20px;justify-content:space-between}.hero-proof div{display:block;text-align:left}.hero-proof strong{display:block;margin-bottom:8px}.visual-frame{height:480px;border-radius:24px}.image-scene{height:340px}.floating-card{left:10px;bottom:55px}.trust-inner{width:100%}.trust-inner>span{display:none}.about-grid{gap:35px}.lead{font-size:34px}.about-lower{grid-template-columns:1fr;gap:35px;margin-top:45px}.section-head{display:block}.section-head>p,.section-head>.text-link{display:block;margin-top:30px}.section-head h2,.process h2,.contact h2{font-size:42px}.service-grid,.project-grid{grid-template-columns:1fr}.service-card,.service-cta{min-height:330px}.project-art{height:280px}.project-info{min-height:155px}.process-grid{gap:50px}.step{grid-template-columns:35px 1fr 20px;gap:12px}.step h3{font-size:22px}.contact-grid{gap:55px}.map-card{padding:8px}.map-head{height:68px}.map-card iframe{height:340px}.footer-main{grid-template-columns:1fr;gap:35px}.footer-main>p{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.marquee-track,.floating-card,.process-orbit i{animation:none}}
.whatsapp-float{position:fixed;bottom:24px;right:24px;width:60px;height:60px;background:#25d366;color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 30px rgba(37,211,102,.3);z-index:999;transition:.3s ease}.whatsapp-float:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 12px 35px rgba(37,211,102,.45)}.whatsapp-float svg{width:30px;height:30px;vertical-align:middle}

/* Sidebar Drawer Style definitions */
.sidebar-drawer-overlay {
  position: fixed;
  inset: 0;
  background: rgba(17, 25, 21, 0.4);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.sidebar-drawer-overlay.open {
  opacity: 1;
  pointer-events: auto;
}
.sidebar-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(500px, 100%);
  background: var(--paper);
  border-left: 1px solid var(--line);
  box-shadow: -10px 0 40px rgba(0,0,0,0.15);
  z-index: 1001;
  transform: translateX(100%);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  padding: 40px 30px;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
}
.sidebar-drawer.open {
  transform: translateX(0);
}
.drawer-close {
  position: absolute;
  top: 20px;
  right: 22px;
  background: transparent;
  border: 0;
  font-size: 38px;
  cursor: pointer;
  color: var(--ink);
  opacity: 0.6;
  transition: opacity 0.2s;
  z-index: 10;
}
.drawer-close:hover {
  opacity: 1;
}
.drawer-content {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.drawer-title {
  font-family: "Manrope", sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: var(--ink);
  margin-bottom: 15px;
  line-height: 1.2;
}
.drawer-desc {
  font-size: 14.5px;
  line-height: 1.7;
  color: #52605a;
  margin-bottom: 30px;
}
.drawer-gallery {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-bottom: 40px;
}
.drawer-gallery img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  border-radius: 14px;
  border: 1px solid var(--line);
  box-shadow: 0 8px 24px rgba(24,35,31,0.06);
  transition: transform 0.3s;
}
.drawer-gallery img:hover {
  transform: scale(1.02);
}
.drawer-actions {
  margin-top: auto;
  padding-top: 20px;
  border-top: 1px solid var(--line);
}
.drawer-actions .btn {
  width: 100%;
}


