/* Presentation only. Captured scene, camera and transition CSS remains intact. */
:root{--rt-ink:#090b11;--rt-paper:#f1efeb}
#rt-boot{position:fixed;inset:0;z-index:2;background:#fceac2;pointer-events:none;opacity:1;visibility:visible;transition:opacity .18s ease,visibility 0s .18s}
#rt-boot picture,#rt-boot img{position:absolute;inset:0;width:100%;height:100%;display:block}
#rt-boot img{object-fit:cover}
.rt-boot-title{position:absolute;inset:0 0 auto}
.rt-boot-brand{position:absolute;top:26px;left:18px;font-size:32px;line-height:42px;font-weight:500;letter-spacing:-2px;color:#090b11}
.rt-boot-brand span{display:inline-block;font-size:24px;vertical-align:super;margin-left:4px;letter-spacing:0;line-height:1}
[data-rt-mounted] .rt-boot-brand{visibility:hidden}
[data-rt-ready] #rt-boot{opacity:0;visibility:hidden}
html:not([data-presentation=motion]) #rt-boot{display:none}
.rt-loading-blocker{visibility:hidden!important;pointer-events:none}
@media(max-width:767px){.rt-boot-brand{top:12px;left:12px;font-size:28px;line-height:36px}.rt-boot-brand span{font-size:21px}}
/* Keep the served content in the page until the native application has mounted its equivalent. */
[data-presentation=motion]:not([data-rt-mounted]) #rt-static{position:fixed;inset:0;z-index:1;overflow:hidden}
[data-presentation=motion][data-rt-mounted] #rt-static{display:none}
html:not([data-presentation=motion]) #__nuxt{display:none}
html:not([data-presentation=motion]),html:not([data-presentation=motion]) body{height:auto!important;overflow:auto!important}
.rt-brand{width:172px;height:42px;color:var(--rt-ink)}
.rt-about-link{position:fixed;z-index:110;top:38px;right:94px;font-size:13px;line-height:1.2;color:var(--rt-ink);padding:5px 0;border-bottom:1px solid currentColor}
html:not([data-presentation=motion]) .rt-about-link{display:none}
.rt-footer-links{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px 24px;margin-top:18px}
.rt-footer-links a{text-decoration:none}
.rt-footer-links a:hover{text-decoration:underline}
@media(max-width:767px){.rt-about-link{top:21px;right:76px;font-size:11px}.js-header .dropdown>div:last-child{flex-wrap:wrap;row-gap:12px}}
.rt-company-name{font-size:clamp(50px,6.2vw,100px);font-weight:500;line-height:1.03;letter-spacing:-.065em;margin-bottom:24px}
.rt-company-description{font-size:clamp(20px,2.1vw,32px);font-weight:400;line-height:1.25;letter-spacing:-.035em;max-width:420px}
.rt-company-link{display:inline-flex;gap:32px;align-items:center;border-bottom:1px solid currentColor;padding:12px 0;margin-top:24px;font-size:16px;line-height:1.3;letter-spacing:-.02em}
.rt-company-link span{display:inline-block;transition:transform .3s}
.rt-company-link:hover span{transform:translate(3px,-3px)}
.rt-scene-space{min-height:45vh}
/* Same height as the original closing footer: it is the team camera's end marker. */
.rt-legal-space{min-height:55vh}
.rt-label{font-family:Geist Mono,monospace;font-size:14px;font-weight:500;line-height:1;letter-spacing:.02em;text-transform:uppercase;margin-bottom:28px}
.rt-azienda-title{font-size:clamp(44px,4.6vw,76px)}
.rt-azienda{position:relative;z-index:1;background:var(--rt-paper);color:var(--rt-ink);display:grid;grid-template-columns:minmax(0,40ch) minmax(0,420px);justify-content:space-between;gap:64px 8vw;padding:140px 8vw 120px}
.rt-azienda-copy p{font-size:clamp(19px,1.6vw,24px);line-height:1.45;letter-spacing:-.02em;max-width:40ch}
.rt-azienda-copy p+p{margin-top:24px}
/* Menu arrival scrolls 15vh past its target on desktop: land with the heading below the header. */
.rt-scrivici-anchor{position:relative;display:block;height:0;top:calc(-15vh - 120px)}
.rt-scrivici dl{margin:0;border-bottom:1px solid #090b1133}
.rt-scrivici dl>div{display:grid;grid-template-columns:120px 1fr;gap:16px;border-top:1px solid #090b1133;padding:16px 0;font-size:18px;line-height:1.35;letter-spacing:-.02em}
.rt-scrivici dt{font-family:Geist Mono,monospace;font-size:12px;text-transform:uppercase;padding-top:4px}
.rt-scrivici dd{margin:0;overflow-wrap:anywhere}
.rt-scrivici a{text-decoration:underline;text-underline-offset:4px}
.rt-legal.rt-legal-end{position:relative;z-index:1;min-height:0;background:var(--rt-paper);color:var(--rt-ink);padding-top:40px;border-top:1px solid #090b1133}
.rt-legal{position:relative;min-height:55vh;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;text-align:right;padding:15vh 8vw 100px;font-size:12px;line-height:1.9;letter-spacing:-.01em}
.rt-legal a{text-decoration:underline;text-underline-offset:4px}
[data-webgl-section=landing] .rt-opening{white-space:pre-line}
/* The opening text is already painted with the first frame: keep it in place
   when the native renderer takes over instead of revealing it a second time. */
#__nuxt [data-webgl-section=landing] .rt-opening [aria-hidden=true]{transform:none!important}
[data-webgl-section=landing]>div:first-child{margin-bottom:15vh}
[data-webgl-section=landing]>div:nth-child(2){margin-bottom:25vh}
[data-webgl-section=team]{color:var(--rt-ink)}
:focus-visible{outline:2px solid currentColor;outline-offset:6px}
#rt-static{min-height:100vh;background:radial-gradient(ellipse at 85% 12%,#ffad83,transparent 37%),var(--rt-paper);font-family:'Instrument Sans',sans-serif;color:var(--rt-ink);padding:26px 5vw}
#rt-static header{display:flex;justify-content:space-between;gap:20px;font-size:18px;letter-spacing:-.04em}
#rt-static h1{font-size:clamp(62px,10vw,150px);letter-spacing:-.07em;line-height:.95;margin:18vh 0 35px;font-weight:500}
#rt-static main>p{font-size:24px;line-height:1.3;letter-spacing:-.03em}
#rt-static section{padding:80px 0;border-top:1px solid #090b1133;margin-top:70px}
#rt-static h2{font-size:clamp(50px,8vw,100px);font-weight:500;letter-spacing:-.06em;line-height:1.1;margin-bottom:20px}
#rt-static section p{font-size:22px;max-width:400px;line-height:1.4;margin-bottom:24px}
#rt-static section a{font-size:18px;text-decoration:underline;text-underline-offset:6px}
#rt-static footer{font-size:12px;line-height:1.7;padding:50px 0 70px;border-top:1px solid #090b1133}
#rt-static .rt-label{font-family:Geist Mono,ui-monospace,monospace;font-size:12px;letter-spacing:.04em;text-transform:uppercase;margin:0 0 18px}
#rt-static .rt-opening{font-size:24px;margin:18vh 0 32px}
#rt-static h2.rt-label{font-size:12px;font-weight:400;line-height:1;letter-spacing:.04em;margin:0 0 18px}
#rt-static h1{margin-top:6vh}
#rt-static #azienda h2{font-size:clamp(40px,5vw,72px)}
#rt-static #azienda p,#rt-static .rt-scrivici dd{max-width:40ch}
#rt-static .rt-scrivici{margin-top:56px;max-width:420px}
#rt-static .rt-scrivici dl{margin:0}
#rt-static .rt-scrivici div{display:grid;grid-template-columns:110px 1fr;gap:16px;border-top:1px solid #090b1133;padding:14px 0;font-size:18px}
#rt-static .rt-scrivici dt{font-family:Geist Mono,ui-monospace,monospace;font-size:12px;text-transform:uppercase;padding-top:4px}
#rt-static .rt-scrivici dd{margin:0}
#rt-static footer a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:767px){.rt-legal-space{min-height:45vh}.rt-scrivici-anchor{top:-96px}.rt-azienda{grid-template-columns:1fr;padding:90px 24px 80px}.rt-azienda-title{font-size:42px}.rt-scrivici dl>div{grid-template-columns:96px 1fr;font-size:16px}.rt-legal.rt-legal-end{padding-top:32px}.rt-brand{width:150px;height:36px}.rt-company-name{font-size:60px;margin-bottom:20px}.rt-company-description{font-size:25px;max-width:290px}.rt-company-link{font-size:16px;margin-top:22px}.rt-legal{padding:10vh 24px 90px;font-size:11px;min-height:45vh}.rt-motion{right:12px;bottom:12px}.rt-scene-space{min-height:35vh}[data-webgl-section=team] .rt-company-link{font-size:14px;letter-spacing:-.03em}#rt-static{padding:24px}#rt-static header{font-size:16px}#rt-static main>p{font-size:21px}}
@media(max-width:360px){.rt-company-name{font-size:52px}.rt-company-description{font-size:23px}[data-webgl-section=team] .rt-company-link{font-size:12px}}
