/* HOME HERO (verde scura) */

#hero.hero{position:relative;min-height:100svh;margin:0;padding:86px 0 34px;display:flex;align-items:center;overflow:hidden;background:#0f3a3f url('hero-wide.jpg') 50% 24%/cover no-repeat;}
/* hero compatto: tutto (compresi i bottoni) entra in una schermata senza tagli */
#hero .hero__text h1{font-size:clamp(2.3rem,4.2vw,3.4rem)!important;line-height:1.07!important;margin:0 0 1.1rem!important;}
#hero .hero__text .hero__sub{font-size:1.08rem!important;line-height:1.45!important;margin:0 0 .9rem!important;}
#hero .hero__text .hero__para{font-size:1rem!important;line-height:1.5!important;margin:0 0 1.1rem!important;}
#hero .hero__text .eyebrow{margin-bottom:.6rem!important;}
#hero .hero__text .microcopy{margin-top:.7rem!important;}
#hero.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(15,58,63,0) 28%,rgba(15,58,63,.5) 52%,rgba(18,64,69,.93) 100%);z-index:1;}
#hero .hero__grid{display:block!important;position:relative;z-index:2;width:100%;max-width:1200px;margin:0 auto;padding:0 clamp(1.5rem,5vw,4rem);}
#hero .hero__visual{display:none!important;}
#hero .hero__text{margin-left:auto;max-width:560px;text-align:left;}
#hero .hero__text .eyebrow{color:#DCBE86;}
#hero .hero__text h1{color:#FAF7F2;}
#hero .hero__text h1 .accent{color:#DCBE86;}
#hero .hero__text .hero__sub{color:#EAF2F0;}
#hero .hero__text .hero__para{color:rgba(250,247,242,.88);}
#hero .hero__text .hero__para .strong{color:#fff;}
#hero .hero__text .microcopy{color:rgba(250,247,242,.72);}
#hero .btn--primary{background:#C8A15A;color:#124045;border-color:#C8A15A;}
#hero .btn--ghost{background:transparent;color:#FAF7F2;border:1.5px solid rgba(250,247,242,.55);}
#hero .hero__scroll{color:rgba(250,247,242,.82);}
@keyframes lcHeroIn{from{opacity:0;transform:translateY(24px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@media (prefers-reduced-motion:no-preference){
  #hero .hero__text>*{opacity:0;animation:lcHeroIn .7s cubic-bezier(.22,.61,.36,1) forwards;}
  #hero .hero__text>*:nth-child(1){animation-delay:.15s}
  #hero .hero__text>*:nth-child(2){animation-delay:.28s}
  #hero .hero__text>*:nth-child(3){animation-delay:.40s}
  #hero .hero__text>*:nth-child(4){animation-delay:.50s}
  #hero .hero__text>*:nth-child(5){animation-delay:.60s}
  #hero .hero__text>*:nth-child(6){animation-delay:.68s}
}
@media (max-width:820px){
  #hero.hero{align-items:flex-end;background-position:55% 16%;min-height:clamp(500px,78vh,680px);}
  /* velo piu' coprente in basso: titolo e testo restano nitidi anche dove la foto e' chiara */
  #hero.hero::before{background:linear-gradient(0deg,rgba(15,58,63,.96) 0%,rgba(15,58,63,.9) 58%,rgba(15,58,63,.42) 80%,rgba(15,58,63,.04) 100%);}
  #hero .hero__text{margin:0 auto;max-width:100%;text-align:center;padding-bottom:2.4rem;}
  /* hero alleggerito su mobile: il paragrafo lungo resta su desktop e nella sezione "problema" subito sotto */
  #hero .hero__text .hero__para{display:none!important;}
  #hero .btn-row{justify-content:center;}
}


/* METODO L.U.C.E. animation */

.lc-page,.lc-page main{overflow:visible!important;}
#metodo{position:relative;height:380vh;margin:0!important;padding:0!important;background:#0d3236;overflow:clip;}
#metodo .lcd-stage{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 1.5rem;background:radial-gradient(120% 85% at 50% 32%,#16474c,#0d3236 72%);overflow:hidden;}
#metodo .lcd-kicker{font-family:'DM Sans',sans-serif;font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;color:#C8A15A;font-weight:600;margin:0 0 1.1rem;}
#metodo .lcd-title{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:clamp(1.5rem,3.4vw,2.4rem);color:#F2E9CF;max-width:20ch;margin:0 0 clamp(2rem,5vh,3rem);line-height:1.16;}
#metodo .lcd-letters{display:flex;gap:clamp(.5rem,3.4vw,2.6rem);line-height:1;}
#metodo .lcd-letters span{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(3.2rem,14vw,9.5rem);color:#FBF1D8;opacity:.1;transition:opacity .25s linear,text-shadow .35s ease;cursor:pointer;}
#metodo .lcd-letters span:hover{opacity:.45;}
#metodo .lcd-letters span.on{opacity:1;text-shadow:0 0 42px rgba(251,241,216,.5);}
#metodo .lcd-letters span.on:hover{opacity:1;}
#metodo .lcd-letters span:focus-visible{outline:2px solid #C8A15A;outline-offset:8px;border-radius:10px;}
#metodo .lcd-mono{display:none;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(140px,42vw,250px);line-height:1;color:#FBF1D8;opacity:0;will-change:transform,opacity;cursor:pointer;}
#metodo .lcd-cap{position:relative;height:6.2em;max-width:36ch;width:100%;margin:clamp(1.4rem,3.5vh,2.4rem) auto 0;}
#metodo .lcd-cap .cap{position:absolute;left:0;right:0;top:0;opacity:0;transform:translateY(8px);transition:opacity .45s ease,transform .45s ease;}
#metodo .lcd-cap .cap.on{opacity:1;transform:none;}
#metodo .lcd-cap h3{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(1.3rem,2.8vw,1.9rem);color:#fff;margin:0 0 .45rem;}
#metodo .lcd-cap p{font-family:'DM Sans',sans-serif;font-size:1rem;line-height:1.6;color:#b8cfcc;margin:0;}
#metodo .lcd-cta{margin-top:clamp(1.6rem,4vh,2.6rem);opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s ease;}
#metodo .lcd-cta.on{opacity:1;transform:none;}
#metodo .lcd-cta a{display:inline-block;padding:13px 32px;border:1.5px solid #C8A15A;border-radius:100px;color:#F2E9CF;text-decoration:none;font-family:'DM Sans',sans-serif;font-size:.95rem;font-weight:600;letter-spacing:.02em;transition:background .25s,color .25s;}
#metodo .lcd-cta a:hover{background:#C8A15A;color:#0d3236;}
@media (prefers-reduced-motion:reduce){#metodo .lcd-letters span{opacity:1;}#metodo .lcd-mono{opacity:1;}}
/* mobile: una lettera gigante a tutto schermo per volta (zoom allo scroll), niente fila */
@media (max-width:768px){
  #metodo .lcd-letters{display:none;}
  #metodo .lcd-mono{display:block;}
  #metodo .lcd-title{font-size:1.05rem;line-height:1.25;max-width:88vw;}
  #metodo .lcd-cap{min-height:8em;}
  #metodo .lcd-stage{gap:0;padding:clamp(4.5rem,8vh,6rem) 1.1rem;}
}


/* separators + watermark */

[class*="bg-petrolio"],.rg-quoteband,.pr-quoteband,.pr-cta-final{position:relative;z-index:0;overflow:clip}
[class*="bg-petrolio"]::after,.rg-quoteband::after,.pr-quoteband::after,.pr-cta-final::after{content:"";position:absolute;right:-42px;bottom:-54px;width:min(360px,42vw);height:min(360px,42vw);background:url(lucia-corti-mark.png) center/contain no-repeat;filter:brightness(0) invert(1);opacity:.08;z-index:-1;pointer-events:none}
.lc-sep{display:flex;align-items:center;justify-content:center;gap:clamp(14px,3vw,26px);max-width:620px;margin:clamp(1.6rem,4vh,3rem) auto;padding:0 1.5rem}
.lc-sep::before,.lc-sep::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(200,161,90,0),rgba(200,161,90,.55))}
.lc-sep::after{background:linear-gradient(90deg,rgba(200,161,90,.55),rgba(200,161,90,0))}
.lc-sep .lc-mk{width:34px;height:34px;flex:0 0 auto;background:url(lucia-corti-mark.png) center/contain no-repeat}

/* GUIDA — rifiniture form */
#guida .form-card .field{margin-bottom:14px!important}
#guida .form-card .field label,#guida .form-card label{display:block!important;margin-bottom:5px!important;line-height:1.2!important}
#guida .form-card input[type=text],#guida .form-card input[type=email]{padding:11px 14px!important;line-height:1.3!important}


/* hint sezione metodo */
#metodo .lcd-hint{display:flex;align-items:center;gap:.55rem;margin:1.6rem 0 0;font:500 .78rem/1 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:rgba(251,241,216,.55);transition:opacity .5s ease;}
#metodo .lcd-hint em{font-style:normal;color:rgba(200,161,90,.85);}
#metodo .lcd-hint svg{width:15px;height:15px;animation:lcdHintBob 1.8s ease-in-out infinite;}
#metodo .lcd-hint.off{opacity:0;pointer-events:none;}
@keyframes lcdHintBob{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}
@media(prefers-reduced-motion:reduce){#metodo .lcd-hint svg{animation:none}}
@media(max-width:768px){#metodo .lcd-hint em::before{content:''}#metodo .lcd-hint em{display:none}#metodo .lcd-hint::after{content:'oppure tocca la lettera';color:rgba(200,161,90,.85);}}

#metodo .lcd-hint--end{margin-top:1.2rem;justify-content:center}
