/*
Theme Name: Real Villa Future
Theme URI: https://www.realvila.it/
Author: ASD Real Villa
Description: Homepage futuristica e moderna per ASD Real Villa.
Version: 1.0.0
Text Domain: realvilla-future
*/

:root{--green:#56f29a;--green2:#b9ff65;--ink:#030d0a;--navy:#071a2c;--panel:#0a2119;--white:#f7fff9;--muted:#9bb1a7;--line:rgba(185,255,101,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.rf-shell{width:min(1240px,calc(100% - 48px));margin:auto}.rf-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--green2);font-size:.74rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.rf-kicker:before{content:"";width:36px;height:1px;background:var(--green2)}.rf-title{max-width:900px;margin:18px 0;font-size:clamp(2.6rem,6vw,6.4rem);line-height:.92;letter-spacing:-.065em}.rf-copy{max-width:680px;color:var(--muted);font-size:clamp(1rem,1.5vw,1.2rem)}.rf-button{display:inline-flex;align-items:center;gap:12px;min-height:54px;padding:0 24px;border:1px solid transparent;border-radius:999px;background:var(--green2);color:#041009;font-weight:900;transition:.25s ease}.rf-button:hover{transform:translateY(-3px);box-shadow:0 0 40px rgba(185,255,101,.24)}.rf-button--ghost{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.06);color:#fff;backdrop-filter:blur(14px)}
.rf-header{position:fixed;z-index:60;inset:0 0 auto;background:linear-gradient(180deg,rgba(3,13,10,.86),rgba(3,13,10,.2),transparent);transition:.3s}.rf-header__row{min-height:104px;display:flex;align-items:center;gap:34px}.rf-brand{display:flex;align-items:center;gap:13px;margin-right:auto;font-size:.82rem;font-weight:950;letter-spacing:.12em}.rf-brand__mark{width:72px;height:72px;padding:5px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:#fff;box-shadow:0 0 32px rgba(86,242,154,.18)}.rf-brand__mark img{width:100%;height:100%;object-fit:contain;border-radius:50%}.rf-nav{display:flex;align-items:center;gap:28px;font-size:.84rem;font-weight:800}.rf-nav a{color:rgba(255,255,255,.78);transition:.2s}.rf-nav a:hover{color:var(--green2)}.rf-menu{display:none;border:1px solid rgba(255,255,255,.25);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;padding:11px 13px;font-weight:900}
.rf-hero{position:relative;min-height:100svh;display:flex;align-items:end;isolation:isolate;background:#061625 url('assets/stadium-future.jpg') center/cover no-repeat}.rf-hero:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(2,10,8,.94) 0%,rgba(2,10,8,.7) 40%,rgba(2,10,8,.12) 74%),linear-gradient(0deg,#030d0a 0%,transparent 45%)}.rf-hero:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,transparent,#000)}.rf-hero__content{padding:190px 0 70px}.rf-season{display:inline-flex;align-items:center;gap:12px;padding:8px 13px;border:1px solid rgba(185,255,101,.34);border-radius:999px;background:rgba(3,13,10,.4);color:var(--green2);font-size:.72rem;font-weight:900;letter-spacing:.14em;backdrop-filter:blur(12px)}.rf-season i{width:7px;height:7px;border-radius:50%;background:var(--green2);box-shadow:0 0 18px var(--green2)}.rf-hero h1{max-width:940px;margin:24px 0;font-size:clamp(4rem,10vw,9.4rem);line-height:.79;letter-spacing:-.085em;text-transform:uppercase}.rf-hero h1 span{display:block;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.52)}.rf-hero p{max-width:650px;color:rgba(255,255,255,.72);font-size:clamp(1.05rem,1.6vw,1.3rem)}.rf-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.rf-hero__bottom{display:grid;grid-template-columns:repeat(3,max-content);gap:60px;margin-top:62px}.rf-metric strong{display:block;font-size:1.8rem;line-height:1}.rf-metric span{color:rgba(255,255,255,.54);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}
.rf-ticker{overflow:hidden;border-block:1px solid var(--line);background:#06130f}.rf-ticker__track{display:flex;width:max-content;gap:54px;padding:17px 0;animation:rf-scroll 22s linear infinite;color:var(--green2);font-size:.72rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.rf-ticker__track span:after{content:"✦";margin-left:54px}@keyframes rf-scroll{to{transform:translateX(-50%)}}
.rf-section{padding:clamp(90px,10vw,150px) 0}.rf-manifesto{position:relative;background:radial-gradient(circle at 80% 20%,rgba(33,115,78,.25),transparent 30%),var(--ink)}.rf-manifesto__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(50px,8vw,120px);align-items:start}.rf-manifesto__label{position:sticky;top:140px}.rf-manifesto__text{font-size:clamp(2.2rem,4.5vw,5rem);line-height:1.03;letter-spacing:-.055em}.rf-manifesto__text em{font-style:normal;color:var(--green2)}
.rf-vision{background:#06130f}.rf-vision__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}.rf-vision__image{position:relative;min-height:650px;overflow:hidden;border-radius:32px}.rf-vision__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.rf-vision__image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,13,10,.7),transparent 50%)}.rf-vision__panel{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(34px,5vw,64px);border:1px solid var(--line);border-radius:32px;background:linear-gradient(145deg,rgba(26,76,56,.35),rgba(5,20,15,.7))}.rf-vision__panel h2{margin:18px 0;font-size:clamp(2.8rem,5vw,5.7rem);line-height:.9;letter-spacing:-.065em}.rf-pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:50px}.rf-pillar{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.035)}.rf-pillar b{display:block;color:var(--green2)}.rf-pillar span{color:var(--muted);font-size:.85rem}
.rf-hub{background:var(--ink)}.rf-hub__head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:50px}.rf-bento{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-auto-rows:270px;gap:16px}.rf-tile{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:30px;border:1px solid var(--line);border-radius:25px;background:linear-gradient(145deg,#0b241b,#07140f);transition:.25s}.rf-tile:hover{transform:translateY(-5px);border-color:rgba(185,255,101,.5)}.rf-tile:first-child{grid-row:span 2;background:linear-gradient(0deg,rgba(3,13,10,.95),rgba(3,13,10,.05)),url('assets/stadium-future.jpg') center/cover}.rf-tile:nth-child(4){grid-column:span 2}.rf-tile__number{color:var(--green2);font-size:.73rem;font-weight:900;letter-spacing:.16em}.rf-tile h3{max-width:360px;margin:0;font-size:clamp(1.6rem,3vw,3rem);line-height:1;letter-spacing:-.04em}.rf-tile p{margin:9px 0 0;color:var(--muted)}.rf-arrow{align-self:flex-end;width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:50%;font-size:1.3rem}
.rf-cta{padding:0 0 110px}.rf-cta__box{position:relative;overflow:hidden;padding:clamp(45px,7vw,90px);border-radius:36px;background:var(--green2);color:#041009}.rf-cta__box:after{content:"RV";position:absolute;right:-.04em;bottom:-.36em;color:rgba(3,13,10,.08);font-size:clamp(12rem,28vw,30rem);font-weight:950;letter-spacing:-.14em}.rf-cta h2{position:relative;z-index:1;max-width:800px;margin:0 0 28px;font-size:clamp(3rem,7vw,7.2rem);line-height:.85;letter-spacing:-.07em}.rf-cta .rf-button{position:relative;z-index:1;background:#041009;color:#fff}
.rf-footer{padding:55px 0 28px;border-top:1px solid var(--line);background:#020906;color:var(--muted)}.rf-footer__grid{display:grid;grid-template-columns:1.3fr repeat(2,.7fr);gap:50px}.rf-footer h4{margin:0 0 14px;color:#fff}.rf-footer a{display:block;margin:7px 0}.rf-footer__bottom{display:flex;justify-content:space-between;gap:20px;margin-top:50px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08);font-size:.8rem}.rf-page{min-height:70vh;padding:160px 0 100px}.rf-page h1{font-size:clamp(3rem,8vw,7rem);letter-spacing:-.07em}
@media(max-width:950px){.rf-menu{display:block}.rf-nav{position:fixed;inset:92px 20px auto;display:none;flex-direction:column;align-items:stretch;gap:0;padding:16px;border:1px solid var(--line);border-radius:20px;background:rgba(3,13,10,.96);backdrop-filter:blur(20px)}body.rf-menu-open .rf-nav{display:flex}.rf-nav a{padding:13px}.rf-header .rf-button{display:none}.rf-manifesto__grid,.rf-vision__grid{grid-template-columns:1fr}.rf-manifesto__label{position:static}.rf-vision__image{min-height:500px}.rf-bento{grid-template-columns:1fr 1fr}.rf-tile:first-child{grid-row:span 1;grid-column:span 2}.rf-footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.rf-shell{width:min(100% - 28px,1240px)}.rf-header__row{min-height:86px}.rf-brand__mark{width:60px;height:60px}.rf-brand span{display:none}.rf-nav{inset-top:82px}.rf-hero__content{padding-top:150px}.rf-hero h1{font-size:clamp(3.7rem,18vw,6rem)}.rf-hero__bottom{grid-template-columns:repeat(3,1fr);gap:10px}.rf-metric strong{font-size:1.25rem}.rf-manifesto__text{font-size:2.5rem}.rf-vision__image{min-height:380px}.rf-pillars{grid-template-columns:1fr}.rf-hub__head{align-items:start;flex-direction:column}.rf-bento{grid-template-columns:1fr;grid-auto-rows:auto}.rf-tile,.rf-tile:first-child,.rf-tile:nth-child(4){grid-column:auto;grid-row:auto;min-height:260px}.rf-footer__grid{grid-template-columns:1fr}.rf-footer__bottom{flex-direction:column}}
