:root { --ink:#0d0d0e; --paper:#f4f2ef; --wine:#9c1238; --line:rgba(255,255,255,.16); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; } a { color:inherit; text-decoration:none; }
.topbar { height:92px; padding:0 5vw; display:flex; align-items:center; justify-content:space-between; background:#111; color:#fff; border-bottom:1px solid var(--line); position:relative; z-index:5; }
.brand { display:flex; gap:13px; align-items:center; }.brand-mark { width:38px; height:40px; position:relative; display:block; }.brand-mark i { position:absolute; left:2px; bottom:2px; width:12px; height:35px; background:var(--wine); clip-path:polygon(70% 0,100% 100%,0 100%); }.brand-mark b { position:absolute; right:2px; top:1px; width:18px; height:34px; background:#666; transform:skew(-10deg); border-radius:0 0 0 9px; }
.brand strong,.brand small { display:block; }.brand strong { font-size:17px; letter-spacing:.03em; }.brand small { font-size:11px; font-style:italic; margin-top:2px; color:#ccc; }
nav { display:flex; gap:30px; font-size:13px; color:#c7c7c7; } nav a:hover { color:#fff; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:30px; padding:17px 22px; background:var(--wine); color:#fff; font-size:13px; font-weight:700; transition:.2s; }.button:hover { background:#7f0d2c; transform:translateY(-1px); }.button-small { padding:13px 17px; }
.hero { min-height:690px; background:var(--ink); color:#fff; display:grid; grid-template-columns:1.55fr .7fr; padding:9vh 5vw 8vh; position:relative; overflow:hidden; }.circuit-lines { position:absolute; inset:0; pointer-events:none; opacity:.18; background:linear-gradient(90deg,transparent 9.9%,#777 10%,transparent 10.1%,transparent 49.9%,#777 50%,transparent 50.1%),linear-gradient(0deg,transparent 78%,#777 78.1%,transparent 78.2%); }
.hero-copy { position:relative; z-index:1; max-width:880px; padding-top:4vh; }.eyebrow { margin:0 0 30px; color:#c5c2be; font-family:var(--font-geist-mono); text-transform:uppercase; letter-spacing:.17em; font-size:11px; font-weight:600; }.eyebrow:before { content:""; display:inline-block; width:34px; height:2px; background:var(--wine); margin:0 13px 3px 0; }
h1 { margin:0; max-width:850px; font-size:clamp(48px,6.7vw,96px); line-height:.93; letter-spacing:-.055em; font-weight:600; } h1 em { color:#777; font-style:normal; }.lead { max-width:650px; color:#bdbdbd; font-size:18px; line-height:1.6; margin:38px 0; }.actions { display:flex; align-items:center; gap:28px; }.text-link { padding:12px 0; font-size:13px; border-bottom:1px solid #555; }.text-link span { margin-left:16px; color:var(--wine); }
.hero-panel { align-self:end; margin:0 0 4vh 3vw; padding:26px 25px; min-height:250px; border:1px solid var(--line); background:linear-gradient(145deg,rgba(156,18,56,.24),rgba(255,255,255,.02)); display:flex; flex-direction:column; justify-content:space-between; position:relative; z-index:1; }.panel-index { color:#aaa; font:11px var(--font-geist-mono); }.hero-panel p { font-size:26px; line-height:1.15; letter-spacing:-.03em; }.panel-footer { display:flex; justify-content:space-between; color:#999; font:9px var(--font-geist-mono); text-transform:uppercase; letter-spacing:.08em; }
.trustbar { background:#fff; min-height:76px; padding:0 5vw; display:grid; grid-template-columns:repeat(4,1fr); align-items:center; border-bottom:1px solid #ddd; }.trustbar span { font:10px var(--font-geist-mono); text-transform:uppercase; letter-spacing:.08em; padding:0 20px; border-left:2px solid var(--wine); }
.section { padding:120px 5vw; }.section-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:7vw; align-items:end; margin-bottom:65px; }.eyebrow.dark { color:#666; } h2 { font-size:clamp(38px,4.6vw,68px); line-height:1; max-width:780px; margin:0; letter-spacing:-.05em; }.section-heading>p { color:#555; line-height:1.7; font-size:16px; max-width:470px; }
.service-grid { border-top:1px solid #bbb; }.service-card { min-height:122px; display:grid; grid-template-columns:80px 1fr 40px; align-items:center; border-bottom:1px solid #bbb; transition:.2s; padding:10px 18px 10px 5px; }.service-card:hover { background:#fff; padding-left:18px; }.service-card>span { color:var(--wine); font:11px var(--font-geist-mono); }.service-card h3 { margin:0 0 8px; font-size:23px; letter-spacing:-.025em; }.service-card p { margin:0; color:#666; }.service-card>b { font-size:20px; color:var(--wine); }
@media(max-width:850px){nav{display:none}.topbar .button{display:none}.hero{grid-template-columns:1fr;padding-top:6vh}.hero-panel{margin:70px 0 0;max-width:430px}.trustbar{grid-template-columns:1fr 1fr;gap:18px 0;padding-top:20px;padding-bottom:20px}.section-heading{grid-template-columns:1fr}}
@media(max-width:520px){.topbar{height:78px}.hero{min-height:auto;padding-bottom:70px}h1{font-size:50px}.lead{font-size:16px}.actions{align-items:flex-start;flex-direction:column}.trustbar{grid-template-columns:1fr}.section{padding:85px 5vw}.service-card{grid-template-columns:45px 1fr 25px}.service-card h3{font-size:19px}.service-card p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.brand img { width:190px; height:62px; object-fit:contain; background:#eee; mix-blend-mode:screen; }
.mobile-menu { display:none; position:relative; }.mobile-menu summary { cursor:pointer; font:11px var(--font-geist-mono); text-transform:uppercase; letter-spacing:.12em; }.mobile-menu div { position:absolute; right:0; top:38px; width:210px; padding:20px; display:grid; gap:18px; background:#181818; border:1px solid #444; }
.section-label { font:10px var(--font-geist-mono); text-transform:uppercase; color:#777; letter-spacing:.14em; padding-bottom:22px; border-bottom:1px solid #c9c7c4; margin-bottom:70px; }.section-label.light { color:#999; border-color:#333; }
.about-copy { max-width:1050px; }.about-copy h2 { max-width:900px; }.large-copy { font-size:clamp(21px,2.2vw,32px); line-height:1.4; max-width:960px; margin:46px 0 20px; }.about-copy>p:last-child { color:#666; max-width:710px; line-height:1.7; }
.principles { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:#ccc; margin-top:80px; border:1px solid #ccc; }.principles article { background:#fff; padding:34px; min-height:210px; }.principles span,.steps span { color:var(--wine); font:10px var(--font-geist-mono); }.principles h3 { margin:35px 0 12px; font-size:24px; }.principles p { color:#666; line-height:1.55; }
.solutions,.clients { background:#111; color:#fff; }.section-heading.inverse>p { color:#aaa; }.solution-list { border-top:1px solid #3b3b3b; }.solution-card { display:grid; grid-template-columns:80px 1.15fr .8fr; gap:35px; align-items:start; padding:48px 0; border-bottom:1px solid #3b3b3b; }.solution-number { color:var(--wine); font:11px var(--font-geist-mono); }.solution-card h3 { font-size:clamp(24px,2.4vw,38px); margin:0 0 15px; letter-spacing:-.035em; }.solution-card p { color:#999; line-height:1.6; max-width:560px; }.solution-card ul { list-style:none; margin:0; padding:0; color:#c8c8c8; font-size:13px; }.solution-card li { padding:10px 0; border-bottom:1px solid #303030; }.solution-card li:before { content:"+"; color:var(--wine); margin-right:12px; }
.process-copy { max-width:850px; }.steps { display:grid; grid-template-columns:repeat(4,1fr); margin-top:70px; border-top:1px solid #bbb; border-bottom:1px solid #bbb; }.steps article { padding:35px 25px 35px 0; border-right:1px solid #bbb; min-height:230px; }.steps article:not(:first-child) { padding-left:25px; }.steps article:last-child { border-right:0; }.steps h3 { margin:55px 0 15px; font-size:21px; }.steps p { color:#666; line-height:1.55; font-size:14px; }
.portfolio { background:#e9e7e3; }.portfolio-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:45px 24px; }.project-placeholder { aspect-ratio:4/3; background:#d6d3cf; position:relative; overflow:hidden; display:flex; align-items:center; justify-content:center; }.project-placeholder:after { content:""; position:absolute; width:70%; height:1px; background:#b4b0ab; transform:rotate(-34deg); }.project-placeholder i { position:absolute; width:42%; height:42%; border:1px solid #b4b0ab; transform:rotate(45deg); }.project-placeholder span { position:absolute; top:18px; left:18px; color:var(--wine); font:10px var(--font-geist-mono); }.project-placeholder b { position:relative; z-index:1; background:#d6d3cf; padding:8px 14px; color:#777; font:10px var(--font-geist-mono); text-transform:uppercase; letter-spacing:.1em; }.portfolio-grid article>p { margin:18px 0 5px; font-size:18px; }.portfolio-grid small { color:#777; }
.client-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #3a3a3a; border-left:1px solid #3a3a3a; }.client-grid div { min-height:115px; display:flex; align-items:center; justify-content:center; text-align:center; padding:18px; border-right:1px solid #3a3a3a; border-bottom:1px solid #3a3a3a; font-size:16px; font-weight:700; color:#ddd; transition:.2s; }.client-grid div:hover { background:#191919; color:#fff; }
.partnership>div { display:grid; grid-template-columns:1fr auto; gap:50px; align-items:end; }.partnership h2 { max-width:950px; }
.contact { background:var(--wine); color:#fff; display:grid; grid-template-columns:1.15fr .85fr; gap:8vw; }.contact .eyebrow { color:#ead3da; }.contact .eyebrow:before { background:#fff; }.contact-main h2 { font-size:clamp(45px,5vw,75px); }.contact-whatsapp { display:flex; justify-content:space-between; align-items:center; margin-top:60px; padding:24px 0; border-top:1px solid rgba(255,255,255,.55); border-bottom:1px solid rgba(255,255,255,.55); font-size:21px; }.contact-details { padding-top:44px; }.contact-details div { display:grid; gap:6px; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.25); overflow-wrap:anywhere; }.contact-details small { color:#e3bbc7; font:9px var(--font-geist-mono); text-transform:uppercase; letter-spacing:.12em; }.contact-details a,.contact-details span { font-size:14px; }
footer { background:#0c0c0d; color:#fff; padding:48px 5vw; display:grid; grid-template-columns:230px 1fr 1fr; gap:45px; align-items:center; }footer img { width:180px; height:75px; object-fit:contain; background:#eee; mix-blend-mode:screen; }footer p { color:#999; }footer>div { display:flex; justify-content:flex-end; gap:35px; font-size:11px; color:#999; }.whatsapp-float { position:fixed; right:22px; bottom:22px; z-index:10; color:#fff; background:#171717; border:1px solid #555; padding:13px 16px; font-size:12px; box-shadow:0 8px 25px #0004; }.whatsapp-float span { color:var(--wine); margin-left:10px; }
@media(max-width:850px){.brand img{width:160px}.mobile-menu{display:block}.principles{grid-template-columns:1fr}.solution-card{grid-template-columns:45px 1fr}.solution-card ul{grid-column:2}.steps{grid-template-columns:1fr 1fr}.portfolio-grid{grid-template-columns:1fr 1fr}.client-grid{grid-template-columns:1fr 1fr}.partnership>div,.contact{grid-template-columns:1fr}footer{grid-template-columns:1fr}footer>div{justify-content:flex-start}}
@media(max-width:520px){.brand img{width:145px;height:54px}.hero-copy{padding-top:0}.principles{margin-top:50px}.solution-card{gap:12px;padding:35px 0}.steps,.portfolio-grid{grid-template-columns:1fr}.steps article,.steps article:not(:first-child){padding:28px 0;border-right:0;border-bottom:1px solid #bbb;min-height:auto}.steps h3{margin-top:30px}.client-grid{grid-template-columns:1fr 1fr}.client-grid div{min-height:90px;font-size:12px}.partnership>div{gap:35px}.contact{gap:40px}.contact-main h2{font-size:43px}footer>div{flex-direction:column;gap:12px}}

/* Brand surface and floating live widgets */
.topbar{background:#d9d9d9!important;color:#111!important;border-bottom-color:#c9c9c9!important}.topbar nav{color:#4d4d4d!important}.topbar nav a:hover{color:#111!important}.topbar .brand img{opacity:1!important;filter:none!important;background:transparent!important;mix-blend-mode:normal!important}body footer{background:#d9d9d9!important;color:#111!important}body footer img{opacity:1!important;filter:none!important;background:transparent!important;mix-blend-mode:normal!important}
.weather-widget,.news-widget{position:fixed;z-index:80;color:#fff;background:rgba(20,20,21,.96);border:1px solid rgba(255,255,255,.14);box-shadow:0 14px 40px rgba(0,0,0,.24);backdrop-filter:blur(12px)}
.weather-widget{right:20px;bottom:78px;width:225px;padding:15px 17px;border-top:2px solid var(--wine)}.weather-widget small,.news-widget small{color:#aaa;font:9px var(--font-geist-mono);letter-spacing:.12em;text-transform:uppercase}.weather-widget>div{display:flex;align-items:baseline;gap:14px;margin:5px 0 4px}.weather-widget strong{font-size:24px;letter-spacing:-.04em}.weather-widget div span{color:#ddd;font-size:16px;font-weight:650}.weather-widget p{margin:2px 0 0;color:#aaa;font-size:10px;line-height:1.35}
.news-widget{left:20px;bottom:20px;width:min(440px,calc(100vw - 40px))}.news-widget summary{min-height:48px;padding:0 17px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.news-widget summary::-webkit-details-marker{display:none}.news-widget summary b{color:var(--wine);font-size:21px;font-weight:400}.news-widget[open] summary b{transform:rotate(45deg)}.news-widget-panel{max-height:min(560px,72vh);overflow:auto;border-top:1px solid rgba(255,255,255,.12)}.news-widget-panel>header{padding:14px 17px;display:flex;justify-content:space-between;gap:12px;color:#888;font-size:9px}.news-widget .news-grid{display:block;border:0}.news-widget .news-card,.news-widget .news-status{min-height:0;padding:16px 17px;border:0;border-top:1px solid rgba(255,255,255,.09);background:transparent}.news-widget .news-card:hover{background:rgba(255,255,255,.06);transform:none}.news-widget .news-card h3,.news-widget .news-status h3{margin:8px 0 6px;color:#fff;font-size:14px;line-height:1.3}.news-widget .news-card p,.news-widget .news-status p{margin:0;color:#999;font-size:10px}.news-widget .news-card span{padding-top:8px;font-size:10px}.news-more{display:block;padding:14px 17px 16px;color:#ccc;font-size:10px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:650px){.weather-widget{right:12px;bottom:70px;width:190px;padding:12px 14px}.news-widget{left:12px;bottom:12px;width:calc(100vw - 24px)}.news-widget[open]{z-index:90}}

/* Final polish: clean hero, rounded floating controls and social footer */
.hero .circuit-lines{display:none}
.weather-widget,.news-widget{border-radius:12px;overflow:hidden}.whatsapp-float{display:flex;align-items:center;gap:8px;border-radius:999px;padding:12px 17px}.whatsapp-float svg{width:19px;height:19px;color:#25d366}.whatsapp-float span{margin:0;color:#fff}.news-widget summary{border-radius:12px}.news-widget[open] summary{border-radius:12px 12px 0 0}
.footer-content,.footer-side{display:flex;align-items:center;gap:24px}.footer-content{flex-direction:column!important;align-items:flex-start!important;justify-content:center!important}.footer-content p{margin:0}.footer-content a{font-size:12px;text-decoration:underline;text-underline-offset:4px}.footer-side{justify-content:flex-end!important;flex-wrap:wrap}.footer-social{display:flex;gap:10px}.footer-social a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #aaa;border-radius:999px;color:#333}.footer-social svg{width:18px;height:18px}.footer-social a:first-child svg{color:#128c7e}.footer-social a:last-child svg{color:#c13584}.footer-social span{font-size:11px}
.button svg{width:19px;height:19px}
.careers-hero{min-height:650px;padding:100px 5vw;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center;background:#111;color:#fff}.careers-hero h1{font-size:clamp(70px,9vw,135px)}.careers-hero>div>p:last-child{max-width:650px;color:#aaa;font-size:18px;line-height:1.65;margin-top:38px}.careers-hero aside{padding:36px;border:1px solid #444;border-radius:12px;background:linear-gradient(145deg,rgba(156,18,56,.23),rgba(255,255,255,.02))}.careers-hero aside>span{font:10px var(--font-geist-mono);color:#aaa;text-transform:uppercase;letter-spacing:.14em}.careers-hero ul{list-style:none;margin:30px 0 0;padding:0}.careers-hero li{padding:15px 0;border-bottom:1px solid #444}.careers-hero li:before{content:"+";color:var(--wine);margin-right:12px}.careers-content{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.careers-copy>p{font-size:18px;line-height:1.7;color:#555;margin:0 0 34px}.career-areas{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:36px}.career-areas span{padding:9px 12px;border:1px solid #bbb;border-radius:999px;font:10px var(--font-geist-mono);text-transform:uppercase}.careers-copy .button{width:max-content;border-radius:7px}.careers-copy small{display:block;color:#777;line-height:1.5;margin-top:15px;max-width:520px}
@media(max-width:850px){.careers-hero,.careers-content{grid-template-columns:1fr}.careers-hero{padding-top:75px}.footer-side{justify-content:flex-start!important}}
@media(max-width:520px){.footer-social a span{display:none}.footer-social a{padding:9px}.careers-hero{min-height:auto;padding:70px 5vw}.careers-hero h1{font-size:65px}.careers-content{gap:45px}.careers-copy .button{width:100%}}

/* Client marks extracted from the official UNITEC portfolio */
.client-grid{background:#2b2b2c;border-color:#333}.client-grid .client-logo{min-height:150px;padding:22px;background:#171718;border-color:#333;overflow:hidden;transition:background .2s ease}.client-grid .client-logo:hover{background:#202021}.client-logo img{display:block;width:100%;height:106px;object-fit:contain;filter:none;mix-blend-mode:normal;border-radius:7px}.client-logo span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:520px){.client-grid .client-logo{min-height:112px;padding:10px}.client-logo img{height:90px}}
