:root{--red:#c9111a;--red-dark:#a60e15;--red-light:#e01b27;--ink:#1d1d1b;--muted:#66686c;--line:#dedee0;--paper:#f4f4f4;--white:#fff;--gutter:6.5%;--header-h:96px;--max:1600px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) - 1px)}body{color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--red-light);outline-offset:3px}h1,h2,h3,h4{letter-spacing:-1.5px;margin:0;font-weight:800}img{max-width:100%}.skip{z-index:99;background:var(--white);padding:20px;font-weight:700;position:fixed;top:-100px;left:0}.skip:focus{top:0}.button{background:var(--red);color:var(--white);border:0;justify-content:space-between;align-items:center;gap:30px;padding:21px 30px;font-size:15px;font-weight:700;transition:background .25s;display:inline-flex;position:relative;overflow:hidden}.button:hover{background:var(--red-dark)}.button.black{background:var(--ink)}.button.black:hover{background:#000}.button.white{background:var(--white);color:var(--ink)}.button.white:hover{background:var(--paper)}.button:after{content:"";background:linear-gradient(105deg,#0000 35%,#fff5 50%,#0000 65%);transition:transform .65s;position:absolute;inset:0;transform:translate(-130%)}.button:hover:after{transform:translate(130%)}.text-link{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:9px;font-size:14px;font-weight:700;display:inline-flex}.text-link:hover{border-color:var(--red);color:var(--red)}.section{padding:110px var(--gutter)}.eyebrow{letter-spacing:3px;color:var(--red);margin:0 0 15px;font-size:11px;font-weight:800}.eyebrow.light{color:var(--white)}@media (max-width:900px){.section{padding:80px var(--gutter)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.section-head{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:55px;display:flex}.section-head h2{letter-spacing:-2.4px;font-size:clamp(40px,4.4vw,62px);line-height:1.04}.section-head h2 span{color:var(--muted);font-weight:800}.section-head>p{color:var(--muted);text-align:right;max-width:300px;margin:0 0 4px;font-size:15px;line-height:1.7}.service-list{border-top:1px solid var(--line)}.service-list>a{border-bottom:1px solid var(--line);grid-template-columns:48px 1fr auto;align-items:center;gap:30px;padding:34px 0;display:grid;position:relative}.service-list>a:before{content:"";background:var(--red);width:0;height:2px;transition:width .45s cubic-bezier(.2,.8,.2,1);position:absolute;bottom:-1px;left:0}.service-list>a:hover:before{width:100%}.service-num{color:var(--red);letter-spacing:1px;font-size:12px;font-weight:800}.service-list h3{letter-spacing:-1px;margin:0 0 8px;font-size:26px;transition:color .25s}.service-list>a:hover h3{color:var(--red)}.service-list p{color:var(--muted);max-width:720px;margin:0;font-size:15px;line-height:1.7}.round-arrow{border:1px solid var(--line);border-radius:50%;place-items:center;width:48px;height:48px;font-size:18px;transition:background .25s,border-color .25s,color .25s;display:grid}.service-list>a:hover .round-arrow{background:var(--ink);border-color:var(--ink);color:var(--white)}.about{background:var(--paper);padding-top:90px;padding-bottom:90px}.about>div{max-width:760px}.about h2{letter-spacing:-2.4px;margin:0 0 26px;font-size:clamp(40px,4.4vw,62px);line-height:1.04}.about h2 span{color:var(--muted)}.about p{color:var(--muted);margin:0;font-size:16px;line-height:1.8}.contacto{background:linear-gradient(115deg, var(--red-dark), var(--red) 48%, var(--red-light));color:var(--white);background-size:180% 180%;grid-template-columns:1fr 1fr;align-items:start;gap:60px;animation:12s ease-in-out infinite contacto-flow;display:grid}@keyframes contacto-flow{0%,to{background-position:0}50%{background-position:100%}}.contacto h2{letter-spacing:-3px;font-size:clamp(44px,5.5vw,82px);line-height:1}.contacto h2 em{color:#ffffff8c;font-style:normal}@media (max-width:900px){.section-head{flex-direction:column;align-items:flex-start;gap:18px}.section-head>p{text-align:left;max-width:none}.service-list>a{grid-template-columns:36px 1fr auto;gap:18px;padding:26px 0}.contacto{grid-template-columns:1fr;gap:40px}}@media (prefers-reduced-motion:reduce){.contacto{animation:none}}
