:root{--green:#14c98a;--green2:#08e194;--petrol:#073d42;--dark:#071719;--dark2:#0a2224;--white:#f4f7f6;--muted:#9db0ad;--line:rgba(255,255,255,.14);--radius:34px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--dark);color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.site-header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,5vw,76px);background:linear-gradient(to bottom,rgba(7,23,25,.94),rgba(7,23,25,.25),transparent)}
.brand img{width:170px;filter:brightness(0) invert(1)}.desktop-nav{display:flex;gap:34px;font-size:14px;color:#dbe5e3}.desktop-nav a:hover{color:var(--green)}
.menu-button{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.04);place-items:center}.menu-button span{display:block;width:18px;height:1px;background:white;margin:3px}
.mobile-menu{display:none;position:fixed;inset:0;z-index:45;background:var(--dark);padding:120px 28px 40px;flex-direction:column;gap:28px;font-size:34px;font-weight:700}.mobile-menu.open{display:flex}
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;overflow:hidden;padding:150px clamp(22px,7vw,110px) 84px}.hero-bg{position:absolute;inset:0;background:url("assets/wallpaper-villa-video.jpeg") center/cover no-repeat;transform:scale(1.03)}.hero-overlay{position:absolute;inset:0;background:radial-gradient(circle at 80% 22%,rgba(20,201,138,.22),transparent 30%),linear-gradient(90deg,rgba(3,11,18,.96) 0%,rgba(4,24,28,.88) 45%,rgba(5,40,40,.62) 100%)}.hero-symbol{position:absolute;width:min(58vw,760px);right:-8vw;top:10vh;opacity:.08;transform:rotate(-8deg)}.hero-content{position:relative;z-index:2;max-width:900px}.eyebrow{color:var(--green);font-size:13px;letter-spacing:.25em;font-weight:800;margin:0 0 24px}.hero h1{font-size:clamp(58px,9vw,132px);line-height:.88;letter-spacing:-.065em;margin:0;max-width:940px}.hero h1 span{color:var(--green)}.hero-copy{margin:34px 0 0;max-width:620px;font-size:clamp(18px,2vw,25px);line-height:1.4;color:#c8d5d3}.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;font-weight:800;font-size:14px;transition:.25s}.button-primary{background:var(--green);color:#04211c}.button-primary:hover{transform:translateY(-2px);background:var(--green2)}.button-ghost{border:1px solid rgba(255,255,255,.25)}.button-ghost:hover{border-color:var(--green);color:var(--green)}.hero-note{position:absolute;right:clamp(22px,7vw,110px);bottom:92px;z-index:2;display:flex;align-items:center;gap:14px;color:#b8c8c5;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.hero-note .line{width:80px;height:1px;background:var(--green)}
.section{padding:110px clamp(22px,7vw,110px)}.section-kicker{font-size:12px;letter-spacing:.2em;color:var(--green);font-weight:800;margin-bottom:42px}.manifesto{background:var(--white);color:#0a2528}.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.manifesto h2,.services h2,.structure h2,.contact h2,.visual-break h2{margin:0;font-size:clamp(46px,6vw,92px);line-height:.94;letter-spacing:-.055em}.manifesto h2 span,.structure h2 span,.contact h2 span,.visual-break h2 span{color:var(--green)}.manifesto-text{font-size:20px;line-height:1.6;color:#39585b}.manifesto-text p{margin:0 0 20px}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d9e2e0;margin-top:90px;border:1px solid #d9e2e0;border-radius:var(--radius);overflow:hidden}.pillar{background:white;padding:36px;min-height:260px}.pillar span{display:inline-block;color:var(--green);font-weight:800;margin-bottom:46px}.pillar h3{margin:0 0 12px;font-size:34px;letter-spacing:-.04em}.pillar p{margin:0;color:#5f7472;line-height:1.55}
.statement{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--dark2)}.statement-track{display:flex;align-items:center;gap:28px;white-space:nowrap;padding:26px 0;font-size:clamp(24px,4vw,54px);font-weight:900;letter-spacing:-.04em;transform:translateX(-2vw)}.statement-track i{color:var(--green);font-style:normal;font-size:.6em}
.services{background:var(--dark)}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end;margin-bottom:70px}.section-heading p{margin:0 0 8px;color:var(--muted);font-size:19px;line-height:1.55}.service-list{border-top:1px solid var(--line)}.service-card{display:grid;grid-template-columns:110px 1fr;gap:32px;padding:44px 0;border-bottom:1px solid var(--line);transition:.25s}.service-card:hover{padding-left:18px}.service-number{color:var(--green);font-weight:800}.service-card h3{margin:0 0 14px;font-size:clamp(34px,4vw,58px);letter-spacing:-.04em}.service-card p{max-width:1050px;color:#a9bbb8;line-height:1.7;margin:0;font-size:17px}
.visual-break{min-height:72vh;display:flex;align-items:flex-end;padding:90px clamp(22px,7vw,110px);position:relative;overflow:hidden;background:linear-gradient(100deg,rgba(7,23,25,.98),rgba(7,23,25,.48)),url("assets/referencia-dark.jpeg") center/cover no-repeat}.visual-break:after{content:"";position:absolute;width:440px;height:440px;right:-120px;top:-120px;border:45px solid var(--green);border-radius:100px;transform:rotate(28deg);opacity:.22}.visual-break-copy{position:relative;z-index:2}
.structure{background:var(--petrol)}.structure-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.structure-copy>p{color:#c6d4d2;font-size:19px;line-height:1.65;max-width:680px;margin:30px 0}.structure-tags{display:flex;flex-wrap:wrap;gap:10px}.structure-tags span{border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:10px 15px;font-size:13px}.structure-art{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.art-card{border-radius:30px;min-height:420px;overflow:hidden}.art-card-main{background:var(--green);display:grid;place-items:center;padding:50px}.art-card-main img{width:80%;filter:brightness(0) saturate(100%) invert(15%) sepia(18%) saturate(1328%) hue-rotate(133deg) brightness(92%) contrast(96%)}.art-card-copy{background:#061b1d;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;color:#d6e3e1}.art-card-copy p{margin:8px 0;font-size:20px;line-height:1.25}
.contact{background:var(--white);color:#082427}.contact-card{border-radius:42px;background:#eaf0ee;padding:clamp(28px,6vw,80px);position:relative;overflow:hidden}.contact-card:before{content:"";position:absolute;width:340px;height:340px;border:56px solid var(--green);border-radius:70px;right:-100px;top:-120px;transform:rotate(30deg);opacity:.18}.contact-card>p{font-size:20px;color:#526b68;max-width:680px;line-height:1.6}.button-ghost.dark{border-color:#9eb0ad}.legal{display:flex;flex-wrap:wrap;gap:18px 28px;padding-top:46px;margin-top:52px;border-top:1px solid #c7d2d0;color:#667b78;font-size:13px}
footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px clamp(22px,7vw,110px);background:#041315;color:#8ca09d;font-size:13px}footer img{width:150px;filter:brightness(0) invert(1);opacity:.85}
@media(max-width:900px){.desktop-nav{display:none}.menu-button{display:grid}.brand img{width:145px}.hero{padding-bottom:72px}.hero-note{display:none}.manifesto-grid,.section-heading,.structure-grid{grid-template-columns:1fr}.pillars{grid-template-columns:1fr}.pillar{min-height:auto}.structure-art{grid-template-columns:1fr}.art-card{min-height:280px}.service-card{grid-template-columns:56px 1fr}.section{padding-top:84px;padding-bottom:84px}}
@media(max-width:560px){.hero{min-height:92svh;padding-top:120px}.hero h1{font-size:58px}.hero-copy{font-size:18px}.button{width:100%}.manifesto h2,.services h2,.structure h2,.contact h2,.visual-break h2{font-size:48px}.manifesto-text{font-size:17px}.service-card{grid-template-columns:1fr;gap:12px}.service-card:hover{padding-left:0}.service-card h3{font-size:36px}.visual-break{min-height:60vh}.legal{flex-direction:column}footer{flex-direction:column;align-items:flex-start}}
