:root{--ink:#171717;--paper:#f5f4ef;--lime:#d8ff22;--line:#d8d7d0}*{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}.site-header{height:78px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:5;border-bottom:1px solid #00000012}.brand{display:flex;gap:11px;align-items:center}.brand-mark{width:40px;height:40px;border-radius:6px;background:#ffad27;display:grid;place-items:center;font-weight:900;font-size:16px}.brand strong{font-size:20px}.site-header nav{display:flex;gap:32px;font-size:13px}.outline{background:transparent;border:1px solid #222;border-radius:24px;padding:11px 21px;font-weight:bold}.hero{min-height:615px;position:relative;color:#fff;overflow:hidden;background:#171717}.hero-image{position:absolute;inset:0;background:linear-gradient(90deg,#000c 0,#0007 44%,#0002),url('assets/R3VS0090.JPG') center/cover;filter:saturate(.86)}.hero-content{position:relative;z-index:1;padding:125px 10vw 70px;max-width:760px}.kicker{font-size:11px;font-weight:800;letter-spacing:.19em;color:var(--lime);margin:0 0 20px}.hero h1{font-size:clamp(55px,7vw,93px);line-height:.9;letter-spacing:-.065em;font-weight:400;margin:0 0 30px}.hero h1 em,.intro em,.smart em,.contact em{font-family:Georgia,serif;font-weight:400}.lede{max-width:410px;line-height:1.6;color:#eee}.search{display:flex;background:#fff;max-width:515px;padding:5px;margin-top:34px;color:#444}.search span{padding:13px 10px}.search input{border:0;outline:0;flex:1;font:inherit;min-width:0}.search button,.dark-button{background:var(--lime);border:0;padding:0 23px;font-weight:bold}.explore{display:block;margin-top:60px;font-family:Georgia,serif}.hero-stamp{position:absolute;right:11vw;top:135px;text-align:center;font-family:Georgia,serif;letter-spacing:.18em;font-size:12px;color:#fff9}.hero-stamp small{font-size:8px}.intro{padding:120px 16vw;display:grid;grid-template-columns:1fr 1fr;gap:35px}.intro h2,.smart h2,.contact h2{font-size:clamp(45px,6vw,76px);letter-spacing:-.06em;line-height:.9;font-weight:400;margin:0}.intro>p:last-child{max-width:380px;align-self:end;line-height:1.7;color:#555}.portfolio,.events{padding:80px 8vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-head h2{font-size:48px;letter-spacing:-.06em;margin:0}.section-head>a{font-family:Georgia,serif}.portfolio-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px}.portfolio-grid article{min-height:390px;position:relative;overflow:hidden;background:#ddd}.portfolio-grid img{width:100%;height:100%;object-fit:cover}.portfolio-grid article:not(.feature){display:flex;flex-direction:column}.portfolio-grid article:not(.feature) img{height:280px}.portfolio-grid article>div{position:absolute;left:22px;bottom:22px;color:#fff;text-shadow:0 1px 8px #000}.portfolio-grid span,.event-grid p{font-size:10px;letter-spacing:.16em;font-weight:bold}.portfolio-grid h3{font-size:22px;margin:8px 0}.portfolio-grid article:not(.feature) span,.portfolio-grid article:not(.feature) h3{color:var(--ink);text-shadow:none;margin-left:15px}.chips{display:flex;gap:8px;margin:25px 0 35px;flex-wrap:wrap}.chips button{border:1px solid #aaa;background:transparent;border-radius:20px;padding:9px 17px}.chips button:first-child{background:var(--ink);color:#fff}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.event-photo{height:230px;background-size:cover;background-position:center;margin-bottom:17px}.p1{background-image:url('assets/R3VS0017.JPG')}.p2{background-image:url('assets/R3VS0044.JPG')}.p3{background-image:url('assets/R3VS0087.JPG')}.event-grid p{color:#777;margin:0}.event-grid h3{font-size:22px;margin:10px 0 16px}.event-grid a{font-family:Georgia,serif}.smart{background:#dcdcd5;padding:105px 16vw;display:grid;grid-template-columns:1fr 1fr;gap:60px}.smart p{max-width:350px;line-height:1.6;color:#555}.dark-button{background:var(--ink);color:#fff;padding:14px 20px;margin-top:15px}.smart-art{min-height:280px;border:1px solid #777;display:flex;align-items:flex-end;justify-content:space-between;padding:22px;background:#c7c7bd}.smart-art span{font-size:11px;letter-spacing:.16em}.smart-art b{font-size:150px;line-height:.7}.contact{text-align:center;padding:140px 20px}.contact-link{display:inline-block;margin-top:38px;font-family:Georgia,serif;font-size:20px;border-bottom:1px solid}.contact .kicker{color:#777}footer{padding:30px 5vw;display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:12px;color:#666}footer .brand{color:var(--ink)}@media(max-width:760px){.site-header{height:66px}.site-header nav{display:none}.hero-content{padding:100px 8vw 50px}.hero-stamp{display:none}.search{max-width:100%}.intro,.smart{grid-template-columns:1fr;padding:75px 8vw}.portfolio,.events{padding:65px 8vw}.portfolio-grid,.event-grid{grid-template-columns:1fr}.portfolio-grid article{min-height:330px}.section-head{align-items:start;gap:20px;flex-direction:column}.section-head h2{font-size:40px}footer{flex-direction:column;gap:18px}}
footer .footer-admin-link{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;opacity:.48;transition:opacity .2s ease}footer .footer-admin-link:hover,footer .footer-admin-link:focus-visible{opacity:1}

/* Sistema comum para as zonas de ferramenta, contacto e conversÃ£o. */
.smart,.contact{width:min(1180px,calc(100% - 8vw));margin:0 auto}
.smart{min-height:360px;padding:clamp(72px,8vw,118px) clamp(34px,7vw,104px);background:#deded7;border-top:1px solid #d2d2ca;border-bottom:1px solid #d2d2ca;align-items:center}
.smart h2,.contact h2{letter-spacing:-.065em}
.smart-art{min-height:270px;background:#d3d3cb;border-color:#85857e}
.contact{padding:clamp(82px,9vw,140px) 8vw;background:#f5f4ef;border-top:1px solid #e1e0da;text-align:center}
.contact form{max-width:680px;margin:42px auto 0;text-align:left}
.contact .kicker{margin-bottom:22px}
.contact-link{font-size:clamp(18px,2vw,24px);margin-top:34px}
@media(max-width:760px){.smart,.contact{width:calc(100% - 24px)}.smart{padding:64px 28px}.contact{padding:72px 28px}.contact form{margin-top:30px}}
