.site-header{box-shadow:0 1px 0 rgba(32,33,36,.04)}
.hero{padding-top:104px;padding-bottom:88px}
.hero-grid{gap:82px}
.hero h1{max-width:720px}
.hero-visual img{width:100%;object-fit:cover;object-position:center 58%}
.proof{display:inline-flex;align-items:center;gap:10px;padding-top:18px;border-top:1px solid var(--line)}
.capability-bar{border-block:1px solid var(--line);background:#fff}
.capability-bar .container{display:grid;grid-template-columns:repeat(4,1fr)}
.capability-bar span{position:relative;padding:18px 24px;text-align:center;color:var(--muted);font-size:13px;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.capability-bar span+span{border-left:1px solid var(--line)}
.card{border-radius:14px;box-shadow:0 1px 0 rgba(32,33,36,.02)}
.card:hover{transform:translateY(-2px)}
#serveis .card p{margin-bottom:0}
.services-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px;padding:24px 26px;border-radius:14px;background:var(--ink);color:#fff;box-shadow:0 16px 40px rgba(32,33,36,.12)}
.services-cta div{display:grid;gap:3px}.services-cta span{color:#ff9a61;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.services-cta strong{font-size:18px;line-height:1.35}.services-cta .btn{flex:none}
.contact-section{position:relative;background:#f7f7f5;border-top:1px solid var(--line)}
.contact-section::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:4px;background:var(--orange)}
.contact-copy{padding-top:26px}
.form-card{border-color:var(--line);border-radius:14px;box-shadow:0 18px 50px rgba(32,33,36,.06)}
.form-kicker{margin:0 0 8px;color:var(--orange-dark);font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.form-card h3{font-size:1.55rem;margin-bottom:26px}
.field input,.field textarea{background:#fcfcfb}
.site-footer{background:#f7f7f5}
.about-grid .about-portrait{width:100%;height:560px;aspect-ratio:auto;object-fit:cover;object-position:center 32%;background:#f2f0ec;box-shadow:0 20px 55px rgba(32,33,36,.1)}
.about-highlights{display:grid;grid-template-columns:.72fr 1.28fr;gap:12px;margin-top:28px}
.about-highlights article{border:1px solid var(--line);border-radius:14px;background:#fff}
.about-stat{display:flex;flex-direction:column;justify-content:center;grid-row:span 2;padding:22px;background:var(--ink)!important;color:#fff}
.about-stat strong{color:#ff8a4b;font-size:3.25rem;line-height:.95;letter-spacing:-.07em}
.about-stat span{max-width:90px;margin-top:10px;color:#d9dadd;font-size:13px;font-weight:800;line-height:1.35}
.about-skill{display:flex;align-items:center;gap:13px;padding:15px 17px}
.about-skill>span{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:10px;background:var(--orange-pale);color:var(--orange-dark);font-weight:900}
.about-skill div{display:grid;gap:2px}.about-skill strong{font-size:14px;line-height:1.3}.about-skill small{color:var(--muted);font-size:11px;line-height:1.4}
.database-icon::before{content:"SQL";font-size:9px;letter-spacing:.04em}
.automation-icon{font-size:20px}
.about-projects{display:flex;align-items:center;gap:16px;margin-top:12px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--warm)}
.about-projects>span{color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.about-projects ul{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}
.about-projects li{padding:5px 10px;border-radius:999px;background:#fff;box-shadow:0 0 0 1px var(--line);font-size:11px;font-weight:850}
.about-copy .quote{margin-top:18px;padding:17px 20px;font-size:15px}
.solutions-section{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0,#fafaf8 100%)}
.solutions-section::before{content:"";position:absolute;top:80px;right:-180px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(242,106,33,.09),rgba(242,106,33,0) 68%);pointer-events:none}
.solutions-section .section-head{position:relative;max-width:820px;margin-bottom:52px}
.solutions-section .section-head h2{max-width:720px}
.solutions-grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.solution-card{position:relative;min-height:245px;padding:28px 25px 26px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.92);box-shadow:0 3px 16px rgba(32,33,36,.035);transition:border-color .25s,box-shadow .25s,transform .25s}
.solution-card::after{content:"";position:absolute;inset:auto 25px 0;height:3px;border-radius:3px 3px 0 0;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.solution-card:hover{z-index:1;border-color:#f1c9b2;box-shadow:0 16px 36px rgba(32,33,36,.08);transform:translateY(-4px)}
.solution-card:hover::after{transform:scaleX(1)}
.solution-number{display:grid;place-items:center;width:38px;height:38px;margin-bottom:30px;border-radius:50%;background:var(--orange-pale);color:var(--orange-dark);font-size:11px;font-weight:900;letter-spacing:.08em}
.solution-card h3{font-size:1.16rem;letter-spacing:-.02em}
.solution-card p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}
.solutions-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:22px 24px;border:1px solid var(--line);border-radius:14px;background:#fff}
.solutions-cta p{margin:0;color:var(--muted);font-weight:650}
.sensor-section{padding-top:0}
.sensor-panel{display:grid;grid-template-columns:1.05fr .95fr;width:100%;max-width:none;overflow:hidden;padding:0;border-radius:0;background:var(--ink);color:#fff;box-shadow:0 24px 70px rgba(32,33,36,.14)}
.sensor-copy{padding:72px 62px 72px max(62px,calc((100vw - var(--max))/2))}
.sensor-copy .eyebrow{color:#ff9a61}.sensor-copy h2{max-width:600px}.sensor-copy>p{max-width:620px;color:#c8cbd0}
.sensor-types{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 34px;padding:0;list-style:none}
.sensor-types li{padding:8px 12px;border:1px solid #484b50;border-radius:999px;color:#f0f1f2;font-size:13px;font-weight:700}
.sensor-visual{display:flex;align-items:center;justify-content:center;padding:48px;background:radial-gradient(circle at 50% 50%,rgba(242,106,33,.14),transparent 55%),#18191b}
.sensor-node{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;width:118px;height:118px;border:1px solid #4a4d52;border-radius:50%;background:#242629;text-align:center}
.sensor-node strong{font-size:15px}.sensor-node small{margin-top:3px;color:#aeb2b8;font-size:11px}
.sensor-node-main{width:150px;height:150px;border-color:var(--orange);box-shadow:0 0 0 12px rgba(242,106,33,.08)}
.sensor-node-main>span{margin-bottom:6px;color:var(--orange);font-size:24px}
.sensor-line{width:42px;height:2px;background:linear-gradient(90deg,#4a4d52,var(--orange))}
.sensor-pulse{width:18px;height:18px;margin-bottom:8px;border:5px solid var(--orange);border-radius:50%;box-shadow:0 0 0 7px rgba(242,106,33,.12)}
.sensor-bell{display:grid;place-items:center;width:24px;height:24px;margin-bottom:7px;border-radius:50%;background:var(--orange);color:#fff;font-weight:900}
.data-section{padding-top:10px}
.data-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}
.data-intro>p{color:var(--muted);font-size:18px}
.data-flow{display:grid;gap:0;padding:28px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,#fafaf8,#fff);box-shadow:0 18px 50px rgba(32,33,36,.055)}
.data-flow-heading{display:flex;align-items:center;gap:11px;margin-bottom:16px;color:var(--muted);font-size:13px}
.data-flow-heading span{padding:4px 9px;border-radius:999px;background:#eceeed;color:#555a60;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.data-flow-heading strong{font-size:13px}
.data-sources,.data-outputs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.data-sources span,.data-outputs span{display:grid;place-items:center;gap:6px;min-width:0;padding:14px 8px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:center}
.data-sources i,.data-outputs i{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#f0f1f1;color:var(--muted);font-size:13px;font-style:normal;font-weight:900}
.data-sources b,.data-outputs b{color:var(--ink);font-size:12px;line-height:1.3}
.data-connector{position:relative;display:grid;place-items:center;height:44px}
.data-connector::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:linear-gradient(var(--line),var(--orange));transform:translateX(-50%)}
.data-connector span{position:relative;padding:4px 10px;border-radius:999px;background:#fff;color:var(--orange-dark);font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;box-shadow:0 0 0 1px var(--line)}
.data-core{position:relative;display:grid;gap:5px;padding:22px 26px;border-radius:13px;background:var(--ink);color:#fff;text-align:center;box-shadow:0 12px 28px rgba(32,33,36,.15)}
.data-core span{color:#ff9a61;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.data-core strong{font-size:17px}
.data-connector-value::before{background:linear-gradient(var(--orange),#f3c0a4)}
.data-outputs span{border-color:#f1d5c6;background:var(--orange-pale)}
.data-outputs b{color:#9e3d0d}.data-outputs i{background:#fff;color:var(--orange-dark)}
.data-flow-result{margin:16px 0 0;color:var(--ink);font-size:13px;font-weight:900;text-align:center}
.data-benefits{display:grid;grid-template-columns:repeat(4,1fr);margin-top:54px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.data-benefits article{padding:27px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.data-benefits article>span{color:var(--orange-dark);font-size:12px;font-weight:900}.data-benefits h3{margin-top:22px;font-size:1.08rem}.data-benefits p{margin:0;color:var(--muted);font-size:14px}
@media(max-width:960px){.capability-bar .container{grid-template-columns:1fr 1fr}.capability-bar span:nth-child(3){border-left:0;border-top:1px solid var(--line)}.capability-bar span:nth-child(4){border-top:1px solid var(--line)}}
@media(max-width:960px){.solutions-grid{grid-template-columns:repeat(2,1fr)}.sensor-panel,.data-grid{grid-template-columns:1fr}.sensor-copy{padding:52px max(40px,calc((100vw - 680px)/2))}.sensor-visual{min-height:360px}.data-benefits{grid-template-columns:repeat(2,1fr)}.about-grid .about-portrait{width:min(100%,520px);height:620px}}
@media(max-width:640px){.hero{padding-top:58px}.capability-bar .container{grid-template-columns:1fr}.capability-bar span+span,.capability-bar span:nth-child(3){border-left:0;border-top:1px solid var(--line)}.contact-copy{padding-top:10px}.services-cta{align-items:stretch;flex-direction:column;padding:22px}.services-cta .btn{width:100%}.solutions-section .section-head{margin-bottom:36px}.solutions-grid{grid-template-columns:1fr;gap:12px}.solution-card{min-height:0;padding:24px 22px}.solution-number{margin-bottom:22px}.solutions-cta{align-items:stretch;flex-direction:column;padding:20px}.solutions-cta .btn{width:100%}.sensor-copy{padding:42px 24px}.sensor-visual{min-height:310px;padding:30px 18px}.sensor-node{width:90px;height:90px}.sensor-node-main{width:112px;height:112px}.sensor-line{width:16px}.data-grid{gap:38px}.data-flow{padding:20px 14px}.data-flow-heading{align-items:flex-start;flex-direction:column;gap:7px}.data-sources,.data-outputs{grid-template-columns:1fr}.data-core{padding:20px 16px}.data-connector{height:40px}.data-benefits{grid-template-columns:1fr}.data-benefits article{padding:24px}.about-grid .about-portrait{width:100%;height:min(120vw,540px)}.about-highlights{grid-template-columns:1fr}.about-stat{grid-row:auto}.about-stat span{max-width:none}.about-projects{align-items:flex-start;flex-direction:column;gap:9px}}
