:root{--dark:#26214f;--navy:#26214f;--mint:#08d6a5;--cyan:#08d6a5;--teal:#08d6a5;--blue:#26214f;--soft:#f7fffc;--line:#e6f2ee;--text:#2e3150;--muted:#6c7288;--white:#fff;--shadow:0 18px 45px rgba(38,33,79,.10)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:#fff;line-height:1.6}a{text-decoration:none;color:inherit}.container{width:min(1120px,92%);margin:0 auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-wrap{height:76px;display:flex;align-items:center;justify-content:space-between}.logo{display:inline-flex;align-items:center;color:var(--navy)}.logo img{height:52px;width:auto;display:block}.footer-logo img{height:58px;filter:none}.main-nav{display:flex;align-items:center;gap:26px;font-weight:700;font-size:15px}.main-nav a:hover{color:var(--teal)}.menu-toggle{display:none;border:0;background:transparent;font-size:30px}.btn{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--navy),var(--mint));color:#fff;border:0;border-radius:999px;padding:14px 24px;font-weight:800;box-shadow:var(--shadow);cursor:pointer}.btn-small{padding:10px 17px;font-size:14px}.btn-outline{background:#fff;color:var(--teal);border:1px solid #cfe7ee;box-shadow:none}.btn-light{background:#fff;color:var(--navy)}.full{width:100%}.hero{background:#fff;padding:90px 0;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:54px;align-items:center}.eyebrow{text-transform:uppercase;color:var(--teal);font-size:13px;font-weight:900;letter-spacing:1.4px}.hero h1,.page-hero h1,.profile-hero h1{font-size:clamp(40px,6vw,72px);line-height:1.02;letter-spacing:-2.2px;color:var(--navy);margin:12px 0 22px}.hero h1:after{content:"";display:block;width:92px;height:5px;background:linear-gradient(90deg,var(--mint),var(--navy));border-radius:999px;margin-top:22px}.hero-text,.page-hero p{font-size:20px;color:var(--muted);max-width:720px}.search-box{margin:28px 0;display:flex;background:#fff;border:1px solid #dce8f3;border-radius:999px;padding:8px;box-shadow:var(--shadow);max-width:600px}.search-box input{flex:1;border:0;padding:0 18px;font-size:16px;outline:0}.search-box button{border:0;border-radius:999px;background:var(--navy);color:#fff;padding:14px 22px;font-weight:800;cursor:pointer}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-card{min-height:420px;background:#fff;border:1px solid var(--line);border-radius:34px;padding:18px;box-shadow:var(--shadow);position:relative;overflow:hidden}.map-card{border:2px solid rgba(8,214,165,.28)}.map-card{display:flex;flex-direction:column;gap:14px}.map-topline{display:flex;align-items:center;gap:10px;color:var(--navy);padding:4px 4px 0}.status-dot{display:block;width:12px;height:12px;background:var(--cyan);border-radius:50%;box-shadow:0 0 0 6px rgba(18,200,210,.14)}.google-map{width:100%;min-height:345px;border:0;border-radius:24px;background:var(--soft)}.map-note{margin:0 4px 2px;color:var(--muted);font-size:14px}.section-padding{padding:82px 0;background:#fff}.section-heading{max-width:760px;margin-bottom:38px}.section-heading.center{text-align:center;margin:0 auto 38px}.section-heading h2,.split h2{font-size:clamp(30px,4vw,48px);line-height:1.08;color:var(--navy);letter-spacing:-1px}.cards{display:grid;gap:24px}.cards.three{grid-template-columns:repeat(3,1fr)}.card,.price-card,.contact-panel,.filters,.profile-card,.result-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.icon{font-size:34px}.highlight{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.stats-box{display:grid;gap:16px}.stats-box div{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow)}.stats-box strong{display:block;font-size:25px;color:var(--navy)}.stats-box span{color:var(--muted)}.optic-card{border-radius:30px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.optic-image{height:190px}.gradient-1{background:linear-gradient(135deg,var(--navy),var(--mint))}.gradient-2{background:linear-gradient(135deg,var(--navy),#403a78)}.gradient-3{background:linear-gradient(135deg,var(--cyan),#dffbfb)}.optic-content{padding:24px}.optic-content span,.result-card span,.badge{color:var(--teal);font-weight:900;font-size:13px;text-transform:uppercase}.optic-content a{color:var(--navy);font-weight:900}.cta{padding:82px 0;background:linear-gradient(135deg,var(--navy),#151231)}.cta-box{text-align:center;color:#fff}.cta-box h2{font-size:46px;margin:0}.site-footer{background:#151231;color:#dbe7f4;padding:54px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}.footer-grid a{display:block;margin:8px 0;color:#dbe7f4}.footer-logo{color:#fff}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:28px;padding-top:20px;color:#91a0b4}.page-hero{padding:78px 0;background:#fff;border-bottom:1px solid var(--line)}.page-hero.dark{background:linear-gradient(135deg,var(--navy),#151231);color:#fff}.page-hero.dark h1,.page-hero.dark p{color:#fff}.search-layout{display:grid;grid-template-columns:310px 1fr;gap:28px}.filters label{display:block;margin:16px 0;font-weight:800}.filters input,.filters select,.contact-panel input,.contact-panel textarea,.contact-panel select{width:100%;border:1px solid #dbe8f5;border-radius:16px;padding:14px;margin-top:8px;font:inherit;background:#fff}.contact-panel textarea{min-height:130px}.results{display:grid;gap:18px}.result-card{display:flex;justify-content:space-between;align-items:center;gap:20px}.profile-hero{padding:78px 0;background:#fff;border-bottom:1px solid var(--line)}.profile-grid,.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:start}.plans{background:#fff}.price-card strong{display:block;font-size:34px;color:var(--navy);margin:12px 0}.price-card.featured{border:2px solid var(--cyan);transform:translateY(-8px)}.legal{max-width:850px}.legal h2{color:var(--navy);margin-top:28px}
.premium-benefits{background:linear-gradient(180deg,#fff 0%,#f7fffc 100%)}
.benefit-card{position:relative;overflow:hidden;min-height:245px;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.benefit-card:before{content:"";position:absolute;inset:-80px -80px auto auto;width:190px;height:190px;border-radius:50%;opacity:.42;transition:transform .35s ease}
.benefit-card:after{content:"";position:absolute;left:28px;right:28px;bottom:0;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--mint),var(--navy));opacity:.9}
.benefit-card>*{position:relative;z-index:1}
.benefit-card:hover{transform:translateY(-8px);box-shadow:0 26px 60px rgba(38,33,79,.16);border-color:rgba(8,214,165,.38)}
.benefit-card:hover:before{transform:scale(1.16)}
.benefit-local{background:linear-gradient(135deg,#ffffff 0%,#f1fffb 58%,#e4fff7 100%)}
.benefit-local:before{background:rgba(8,214,165,.42)}
.benefit-premium{background:linear-gradient(135deg,#ffffff 0%,#f4f2ff 58%,#ebe8ff 100%)}
.benefit-premium:before{background:rgba(38,33,79,.22)}
.benefit-contact{background:linear-gradient(135deg,#ffffff 0%,#f4fffd 45%,#eef3ff 100%)}
.benefit-contact:before{background:linear-gradient(135deg,rgba(8,214,165,.34),rgba(38,33,79,.18))}
.benefit-card .icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;border-radius:20px;background:#fff;box-shadow:0 14px 28px rgba(38,33,79,.10);margin-bottom:18px}
.benefit-card h3{color:var(--navy);font-size:22px;margin:0 0 14px}
.benefit-card p{margin:0;color:#3d4164}

@media(max-width:850px){.logo img{height:44px}.footer-logo img{height:50px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.hero-grid,.split,.profile-grid,.contact-grid,.search-layout,.footer-grid{grid-template-columns:1fr}.cards.three{grid-template-columns:1fr}.search-box{border-radius:24px;flex-direction:column;gap:8px}.search-box input{padding:14px}.hero{padding:58px 0}.result-card{align-items:flex-start;flex-direction:column}.price-card.featured{transform:none}.google-map{min-height:300px}}

/* Intro video homepage */
.intro-video{position:relative;overflow:hidden;background:#fff;padding-top:76px}.intro-video:before{content:"";position:absolute;inset:8% auto auto -120px;width:260px;height:260px;background:rgba(8,214,165,.10);border-radius:50%;filter:blur(4px)}.intro-video:after{content:"";position:absolute;right:-130px;bottom:4%;width:300px;height:300px;background:rgba(38,33,79,.08);border-radius:50%;filter:blur(4px)}.video-heading{position:relative;z-index:1;text-align:center;max-width:820px;margin:0 auto 34px}.video-heading h2{font-size:clamp(32px,4vw,52px);line-height:1.05;color:var(--navy);letter-spacing:-1px;margin:10px 0 14px}.video-heading p:last-child{font-size:18px;color:var(--muted);margin:0 auto;max-width:680px}.video-frame{position:relative;z-index:1;border-radius:34px;padding:10px;background:linear-gradient(135deg,rgba(8,214,165,.9),rgba(38,33,79,.92));box-shadow:0 24px 70px rgba(38,33,79,.16);overflow:hidden}.home-video{display:block;width:100%;max-height:600px;object-fit:cover;border-radius:26px;background:#fff}.video-glow{position:absolute;width:170px;height:170px;border-radius:50%;pointer-events:none;z-index:0;filter:blur(28px);opacity:.55;animation:floatGlow 6s ease-in-out infinite}.glow-one{background:var(--mint);left:-40px;top:-40px}.glow-two{background:var(--navy);right:-40px;bottom:-40px;animation-delay:1.4s}.video-cta-row{position:relative;z-index:1;display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:30px 0 24px}.btn-pulse{animation:pulseCta 2.4s infinite}.micro-cta-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}.micro-cta{display:block;background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.micro-cta:hover{transform:translateY(-6px);box-shadow:0 22px 55px rgba(38,33,79,.14);border-color:rgba(8,214,165,.55)}.micro-cta strong{display:block;color:var(--navy);font-size:18px;margin-bottom:6px}.micro-cta span{color:var(--muted)}@keyframes floatGlow{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(18px) scale(1.08)}}@keyframes pulseCta{0%{box-shadow:0 0 0 0 rgba(8,214,165,.38),var(--shadow)}70%{box-shadow:0 0 0 16px rgba(8,214,165,0),var(--shadow)}100%{box-shadow:0 0 0 0 rgba(8,214,165,0),var(--shadow)}}@media(max-width:850px){.intro-video{padding-top:56px}.video-frame{border-radius:26px;padding:7px}.home-video{border-radius:20px;max-height:420px}.micro-cta-grid{grid-template-columns:1fr}.video-cta-row .btn{width:100%}}

/* Demo marker Premium E-Optical */
.map-demo-wrap{position:relative;border-radius:24px;overflow:hidden;background:var(--soft)}
.map-demo-wrap .google-map{display:block;min-height:345px;border-radius:24px}
.premium-marker-demo{position:absolute;left:58%;top:44%;transform:translate(-50%,-100%);z-index:3;display:flex;align-items:flex-start;gap:10px;filter:drop-shadow(0 10px 16px rgba(38,33,79,.22));animation:markerBounce 2.8s ease-in-out infinite}
.premium-marker-demo img{width:60px;height:auto;display:block}
.premium-popover{min-width:178px;background:#fff;border:1px solid rgba(8,214,165,.35);border-radius:18px;padding:12px 14px;box-shadow:0 18px 38px rgba(38,33,79,.16);transform:translateY(4px)}
.premium-popover span{display:block;color:var(--teal);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.8px}
.premium-popover strong{display:block;color:var(--navy);font-size:15px;line-height:1.15;margin:3px 0}
.premium-popover small{color:var(--muted);font-weight:700}
.premium-label{display:inline-flex!important;align-items:center;gap:8px;color:var(--teal)!important;font-weight:900!important;font-size:13px!important;text-transform:uppercase!important}
.premium-label img{width:24px;height:29px;object-fit:contain;vertical-align:middle}
.premium-result{border:2px solid rgba(8,214,165,.35);background:linear-gradient(135deg,#fff 0%,#f7fffc 100%)}
.optic-card:first-child{position:relative;border:2px solid rgba(8,214,165,.35)}
.optic-card:first-child:after{content:"Premium";position:absolute;right:18px;top:18px;background:linear-gradient(135deg,var(--mint),var(--navy));color:#fff;font-weight:900;border-radius:999px;padding:8px 13px;font-size:12px;box-shadow:0 12px 26px rgba(38,33,79,.16)}
@keyframes markerBounce{0%,100%{transform:translate(-50%,-100%)}50%{transform:translate(-50%,-108%)}}
@media(max-width:850px){.premium-marker-demo{left:52%;top:48%;gap:0}.premium-popover{display:none}.premium-marker-demo img{width:54px}.map-demo-wrap .google-map{min-height:300px}}

/* Mappe dinamiche + gestione piani ottici */
.dynamic-map{width:100%;min-height:345px;border-radius:24px;background:var(--soft);z-index:1}
.results-wrap{display:grid;gap:22px}.results-map{min-height:360px;border:1px solid var(--line);box-shadow:var(--shadow)}
.leaflet-container{font-family:Inter,Arial,sans-serif;color:var(--text)}
.standard-marker{width:28px!important;height:28px!important;border-radius:999px;background:#fff;border:3px solid var(--navy);box-shadow:0 8px 18px rgba(38,33,79,.22);display:flex!important;align-items:center;justify-content:center}
.standard-marker span{display:block;width:8px;height:8px;border-radius:999px;background:var(--navy);font-size:0}
.map-popup{min-width:210px}.map-popup strong{display:block;color:var(--navy);font-size:17px;line-height:1.15;margin:6px 0 2px}.map-popup small{display:block;color:var(--muted);font-weight:800}.map-popup p{margin:8px 0 10px;color:var(--text);font-size:13px;line-height:1.35}.map-badge{display:inline-flex;border-radius:999px;background:#f0f2f7;color:var(--navy);font-weight:900;font-size:11px;text-transform:uppercase;padding:5px 9px}.map-badge.premium{background:linear-gradient(135deg,var(--mint),var(--navy));color:#fff}.popup-actions{display:flex;gap:8px;flex-wrap:wrap}.popup-actions a{background:var(--navy);color:#fff!important;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.optic-card.is-premium{position:relative;border:2px solid rgba(8,214,165,.35)}.optic-card.is-premium:after{content:"Premium";position:absolute;right:18px;top:18px;background:linear-gradient(135deg,var(--mint),var(--navy));color:#fff;font-weight:900;border-radius:999px;padding:8px 13px;font-size:12px;box-shadow:0 12px 26px rgba(38,33,79,.16)}
@media(max-width:850px){.dynamic-map,.results-map{min-height:300px}}

/* Google Maps + Premium manuali */
.dynamic-map{overflow:hidden}
.dynamic-map .google-map{width:100%;height:100%;min-height:345px;border:0;border-radius:24px;display:block}
.results-map .google-map{min-height:360px}
.premium-results-heading{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px 24px;box-shadow:var(--shadow)}
.premium-results-heading h3{margin:0 0 6px;color:var(--navy);font-size:24px}
.premium-results-heading p{margin:0;color:var(--muted)}

/* Effetti call to action globali */
.btn{position:relative;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
.btn:before{content:"";position:absolute;top:0;left:-85%;width:55%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);transform:skewX(-20deg);transition:left .55s ease;pointer-events:none}
.btn:hover{transform:translateY(-3px) scale(1.015);box-shadow:0 20px 46px rgba(38,33,79,.18);filter:saturate(1.08)}
.btn:hover:before{left:130%}
.btn:active{transform:translateY(0) scale(.99)}
.btn-outline:hover{background:linear-gradient(135deg,#fff,#f7fffc);border-color:rgba(8,214,165,.68);box-shadow:0 16px 36px rgba(8,214,165,.13)}
.search-box button{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.search-box button:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(38,33,79,.18);background:linear-gradient(135deg,var(--navy),var(--mint))}
.cta .btn-light:hover{color:var(--navy);box-shadow:0 18px 38px rgba(255,255,255,.16)}

/* Blog E-Optical */
.blog-hero{position:relative;overflow:hidden}
.blog-hero:after{content:"";position:absolute;right:-80px;bottom:-130px;width:310px;height:310px;border-radius:50%;background:rgba(8,214,165,.12);filter:blur(3px)}
.blog-layout{display:grid;grid-template-columns:1fr 330px;gap:30px;align-items:start}.blog-list{display:grid;gap:24px}.blog-grid{align-items:stretch}.blog-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.blog-card:hover{transform:translateY(-7px);box-shadow:0 28px 70px rgba(38,33,79,.15);border-color:rgba(8,214,165,.45)}.blog-card-large{display:grid;grid-template-columns:300px 1fr}.blog-image{display:block;min-height:210px;background:linear-gradient(135deg,var(--navy),var(--mint));position:relative;overflow:hidden}.blog-image:before{content:"👓";position:absolute;right:24px;bottom:12px;font-size:74px;opacity:.22}.blog-image:after{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.28);border-radius:22px}.blog-image-1{background:radial-gradient(circle at 25% 25%,rgba(255,255,255,.28),transparent 32%),linear-gradient(135deg,var(--navy),var(--mint))}.blog-image-2{background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.32),transparent 34%),linear-gradient(135deg,#403a78,var(--mint))}.blog-image-3{background:radial-gradient(circle at 70% 20%,rgba(255,255,255,.28),transparent 30%),linear-gradient(135deg,var(--mint),var(--navy))}.blog-content{padding:26px}.blog-tag{display:inline-flex;color:var(--teal);font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.8px;margin-bottom:8px}.blog-content h2,.blog-content h3{margin:4px 0 12px;color:var(--navy);line-height:1.16}.blog-content h2{font-size:28px}.blog-content h3{font-size:22px}.blog-content p{color:var(--muted);margin:0 0 16px}.read-more{color:var(--navy);font-weight:900}.read-more:hover{color:var(--teal)}.section-action{text-align:center;margin-top:34px}.blog-sidebar{display:grid;gap:20px;position:sticky;top:96px}.sidebar-box{background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px;box-shadow:var(--shadow)}.sidebar-box h3{margin:0 0 10px;color:var(--navy);font-size:22px}.sidebar-box p{color:var(--muted)}.sidebar-box a:not(.btn){display:block;color:var(--navy);font-weight:900;margin:10px 0}.soft-box{background:linear-gradient(135deg,#fff,#f7fffc);border-color:rgba(8,214,165,.28)}.article-layout{display:grid;grid-template-columns:1fr 330px;gap:34px;align-items:start}.article-content{background:#fff;border:1px solid var(--line);border-radius:30px;padding:42px;box-shadow:var(--shadow)}.article-content p{font-size:18px;color:var(--text)}.article-content h2{color:var(--navy);font-size:32px;line-height:1.12;margin-top:34px}.article-cta{margin-top:38px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#f7fffc,#fff);border:1px solid rgba(8,214,165,.28)}.article-cta h3{margin:0;color:var(--navy);font-size:28px}.article-cta p{margin:10px 0 20px;color:var(--muted)}
@media(max-width:850px){.blog-layout,.article-layout{grid-template-columns:1fr}.blog-card-large{grid-template-columns:1fr}.blog-sidebar{position:static}.article-content{padding:26px}.blog-image{min-height:180px}}


/* Copertine reali blog */
.blog-image{background-size:cover;background-position:center;transition:transform .35s ease,filter .35s ease}
.blog-card:hover .blog-image{transform:scale(1.035);filter:saturate(1.05)}
.blog-image:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(38,33,79,.04),rgba(38,33,79,.32));opacity:.85;z-index:1}
.blog-image:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.34);border-radius:22px;z-index:2}
.blog-image-1{background-image:url('esame-della-vista.jpg')}
.blog-image-2{background-image:url('lenti-a-contatto.jpg')}
.blog-image-3{background-image:url('ragazza-prova-occhiali.jpg')}
.article-cover{height:360px;border-radius:28px;margin:-6px 0 30px;background-size:cover;background-position:center;box-shadow:var(--shadow);position:relative;overflow:hidden}
.article-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(38,33,79,.16))}
.article-cover.esame{background-image:url('esame-della-vista.jpg')}
.article-cover.lenti{background-image:url('lenti-a-contatto.jpg')}
.article-cover.occhiali{background-image:url('ragazza-prova-occhiali.jpg')}

/* CTA con effetto luce dinamico più evidente */
.btn.cta-glow,.cta .btn,.hero-actions .btn,.video-cta-row .btn,.section-action .btn,.article-cta .btn{isolation:isolate}
.btn.cta-glow:after,.cta .btn:after,.hero-actions .btn:after,.video-cta-row .btn:after,.section-action .btn:after,.article-cta .btn:after{content:"";position:absolute;inset:-2px;border-radius:999px;background:linear-gradient(90deg,var(--mint),#ffffff,var(--navy),var(--mint));background-size:300% 100%;z-index:-1;opacity:.0;transition:opacity .25s ease;animation:ctaLight 4.2s linear infinite}
.btn.cta-glow:hover:after,.cta .btn:hover:after,.hero-actions .btn:hover:after,.video-cta-row .btn:hover:after,.section-action .btn:hover:after,.article-cta .btn:hover:after{opacity:.55}
@keyframes ctaLight{0%{background-position:0% 50%}100%{background-position:300% 50%}}

/* FAQ SEO */
.faq-section{background:linear-gradient(180deg,#fff,#f7fffc);border-top:1px solid var(--line)}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow);transition:transform .22s ease,border-color .22s ease}
.faq-item:hover{transform:translateY(-4px);border-color:rgba(8,214,165,.45)}
.faq-item h3{margin:0 0 10px;color:var(--navy);font-size:20px;line-height:1.2}
.faq-item p{margin:0;color:var(--muted)}
@media(max-width:850px){.faq-grid{grid-template-columns:1fr}.article-cover{height:230px}}

.cta-small-link {
  margin-top: 18px;
  font-size: 0.95rem;
  color: rgba(255,255,255,0.85);
}
.cta-small-link a {
  color: #ffffff;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Pagina Per Ottici - Google Maps vs Premium */
.plan-label{display:inline-flex;margin-bottom:10px;border-radius:999px;background:rgba(8,214,165,.12);color:var(--teal);font-size:12px;font-weight:900;letter-spacing:.6px;text-transform:uppercase;padding:7px 11px}
.google-presence-card{background:linear-gradient(145deg,#fff,#f7fffc);border-color:rgba(8,214,165,.26)}
.premium-card-detail{background:radial-gradient(circle at 88% 8%,rgba(8,214,165,.18),transparent 32%),linear-gradient(145deg,#fff,#ffffff)}
.top-card-detail{background:radial-gradient(circle at 12% 10%,rgba(38,33,79,.10),transparent 34%),linear-gradient(145deg,#fff,#f9f8ff)}
.price-card .btn{margin-top:18px;width:100%;text-align:center}
.comparison-table-wrap{margin-top:34px;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}
.comparison-table{width:100%;border-collapse:collapse;font-size:16px}
.comparison-table th{background:linear-gradient(135deg,var(--navy),#151231);color:#fff;text-align:left;padding:18px 20px;font-size:15px}
.comparison-table td{padding:17px 20px;border-top:1px solid var(--line);color:var(--text)}
.comparison-table td:nth-child(2),.comparison-table td:nth-child(3){text-align:center;font-weight:900;color:var(--navy)}
.comparison-table td:nth-child(3){color:var(--teal)}
.comparison-table tr:hover td{background:#f7fffc}
@media(max-width:850px){.comparison-table-wrap{overflow-x:auto}.comparison-table{min-width:720px}.price-card .btn{width:100%}}

/* Footer aggiornato ESA */
.site-footer .footer-brand-card{display:inline-flex;background:#fff;border-radius:20px;padding:10px 14px;box-shadow:0 14px 34px rgba(0,0,0,.22);margin-bottom:14px}
.site-footer .footer-brand-card img{height:62px;filter:none!important}
.site-footer h4{color:#fff;margin:4px 0 12px;font-size:17px}
.footer-credit,.footer-vat{margin:8px 0;color:#dbe7f4}
.footer-credit a,.copyright a{color:#08d6a5;font-weight:900}
.footer-credit a:hover,.copyright a:hover{color:#fff}
.footer-vat{font-size:14px;color:#b9c6d8}
@media(max-width:850px){.site-footer .footer-brand-card img{height:54px}}


/* Modulo Chi siamo + WhatsApp Otty */
.about-contact-section{background:linear-gradient(180deg,#fff 0%,#f7fffc 100%);border-top:1px solid var(--line)}
.about-contact-note{margin-top:24px;background:#fff;border:1px solid rgba(8,214,165,.28);border-radius:22px;padding:20px;box-shadow:var(--shadow)}
.about-contact-note strong{display:block;color:var(--navy);font-size:20px;margin-bottom:4px}
.about-contact-note span{display:block;color:var(--muted)}
.enhanced-form{position:relative;overflow:hidden;background:radial-gradient(circle at 92% 4%,rgba(8,214,165,.16),transparent 34%),#fff}
.enhanced-form:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--mint),var(--navy));}
.form-row.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hidden-field{display:none!important}
.enhanced-form label{font-weight:800;color:var(--navy)}
.enhanced-form input,.enhanced-form textarea{margin-bottom:14px}

.otty-widget{position:fixed;right:22px;bottom:22px;z-index:9999;display:flex;align-items:flex-end;gap:12px;pointer-events:none}
.otty-bubble{max-width:260px;background:#fff;color:var(--navy);border:1px solid rgba(8,214,165,.35);border-radius:22px 22px 6px 22px;padding:12px 15px;box-shadow:0 18px 44px rgba(38,33,79,.18);font-size:14px;line-height:1.35;transform-origin:bottom right;animation:ottyFloat 3.6s ease-in-out infinite;pointer-events:auto}
.otty-bubble strong{display:block;color:var(--teal);margin-bottom:3px;font-size:15px}
.otty-bubble span{display:block;color:var(--text)}
.whatsapp-float{width:68px;height:68px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:#25D366;box-shadow:0 18px 44px rgba(37,211,102,.34);transition:transform .22s ease,box-shadow .22s ease;pointer-events:auto;position:relative;overflow:hidden}
.whatsapp-float:before{content:"";position:absolute;inset:-2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.58),transparent);transform:translateX(-120%) skewX(-20deg);transition:transform .55s ease}
.whatsapp-float:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 24px 58px rgba(37,211,102,.46)}
.whatsapp-float:hover:before{transform:translateX(140%) skewX(-20deg)}
.whatsapp-float img{width:100%;height:100%;object-fit:cover;display:block;border-radius:22px}
@keyframes ottyFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media(max-width:850px){.form-row.two{grid-template-columns:1fr}.otty-widget{right:14px;bottom:14px}.otty-bubble{display:none}.whatsapp-float{width:62px;height:62px;border-radius:20px}.whatsapp-float img{border-radius:20px}}


/* Gallery immagini editoriali */
.visual-showcase{background:linear-gradient(180deg,#fff 0%,#f7fffc 100%);overflow:hidden}
.visual-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}
.visual-card{position:relative;min-height:360px;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(8,214,165,.22);background-size:cover;background-position:center;isolation:isolate;transition:transform .28s ease,box-shadow .28s ease}
.visual-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(38,33,79,.04),rgba(38,33,79,.52));z-index:1}
.visual-card:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.34);border-radius:24px;z-index:2}
.visual-card:hover{transform:translateY(-7px) scale(1.01);box-shadow:0 28px 70px rgba(38,33,79,.18)}
.visual-card-content{position:absolute;left:32px;right:32px;bottom:30px;color:#fff;z-index:3}
.visual-card-content strong{display:block;font-size:28px;line-height:1.08;margin-bottom:8px}
.visual-card-content span{display:block;color:rgba(255,255,255,.88)}
.visual-stack{display:grid;gap:24px}
.visual-small{min-height:168px;border-radius:28px}
.img-consulenza{background-image:url('visual-ottico-cliente.jpg')}
.img-misurazione{background-image:url('visual-misurazione.jpg')}
.img-scelta{background-image:url('visual-ottico-scelta.jpg')}
.img-esame{background-image:url('visual-esame.jpg')}
.img-famiglia{background-image:url('visual-famiglia.jpg')}
.img-negozio{background-image:url('visual-negozio-moderno.jpg')}
.img-team{background-image:url('visual-team-ottici.jpg')}
.img-uomo{background-image:url('visual-uomo-specchio.jpg')}
.img-layout{background-image:url('visual-occhiali-layout.jpg')}
.photo-panel{min-height:420px;border-radius:34px;background-size:cover;background-position:center;box-shadow:var(--shadow);border:1px solid rgba(8,214,165,.22);position:relative;overflow:hidden}
.photo-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(38,33,79,.20))}

/* Condivisione blog */
.share-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.share-label{font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin-right:2px}
.share-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(8,214,165,.28);background:#fff;color:var(--navy);border-radius:999px;padding:9px 12px;font-weight:900;font-size:13px;cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease}
.share-btn:hover{transform:translateY(-2px);background:var(--navy);border-color:var(--navy);color:#fff}
.share-btn.copy-ok{background:var(--mint);border-color:var(--mint);color:#fff}
.article-share-box{margin:0 0 28px;padding:18px 20px;border-radius:22px;background:linear-gradient(135deg,#fff,#f7fffc);border:1px solid rgba(8,214,165,.25)}

/* Footer più compatto */
.site-footer{padding:34px 0 14px}
.footer-grid{gap:22px;align-items:start}
.site-footer p{margin:8px 0;font-size:14px;line-height:1.45}
.footer-grid a{margin:5px 0;font-size:14px}
.site-footer h4{margin:0 0 8px;font-size:15px}
.site-footer .footer-brand-card{padding:7px 10px;border-radius:16px;margin-bottom:8px}
.site-footer .footer-brand-card img{height:48px!important}
.copyright{margin-top:16px;padding-top:14px;font-size:13px;line-height:1.4}
@media(max-width:850px){.visual-grid{grid-template-columns:1fr}.visual-card{min-height:280px}.visual-small{min-height:190px}.photo-panel{min-height:300px}.site-footer .footer-brand-card img{height:44px!important}.site-footer{text-align:left;padding-bottom:84px}.share-row{gap:8px}.share-btn{font-size:12px;padding:8px 10px}}


/* Cookie consent popup */
.cookie-consent {
  position: fixed;
  left: 18px;
  right: 18px;
  bottom: 18px;
  z-index: 9998;
  display: flex;
  justify-content: center;
  animation: cookieSlideUp .35s ease both;
}
.cookie-consent-card {
  width: min(980px, 100%);
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 18px;
  align-items: center;
  padding: 18px;
  border: 1px solid rgba(16, 211, 164, .24);
  border-radius: 24px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 24px 80px rgba(32, 27, 79, .18);
  backdrop-filter: blur(14px);
}
.cookie-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(16, 211, 164, .18), rgba(32, 27, 79, .08));
  font-size: 26px;
}
.cookie-content h3 { margin: 0 0 6px; color: var(--navy); }
.cookie-content p { margin: 0; color: var(--text); line-height: 1.55; }
.cookie-links { margin-top: 8px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; font-weight: 700; }
.cookie-links a { color: var(--teal); text-decoration: none; }
.cookie-actions { display: flex; gap: 10px; align-items: center; }
.cookie-actions .btn { white-space: nowrap; }
.hide-cookie { animation: cookieSlideDown .25s ease both; }
.legal-card {
  background: #fff;
  border: 1px solid rgba(32, 27, 79, .08);
  border-radius: 28px;
  box-shadow: 0 20px 60px rgba(32, 27, 79, .07);
  padding: clamp(24px, 4vw, 44px);
}
.legal-card ul { padding-left: 20px; line-height: 1.8; }
@keyframes cookieSlideUp { from { transform: translateY(24px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
@keyframes cookieSlideDown { from { transform: translateY(0); opacity: 1; } to { transform: translateY(24px); opacity: 0; } }
@media (max-width: 760px) {
  .cookie-consent-card { grid-template-columns: 1fr; }
  .cookie-actions { justify-content: stretch; }
  .cookie-actions .btn { flex: 1; }
}

.geo-location-box{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-14px 0 22px;max-width:600px;color:var(--muted);font-size:14px;background:linear-gradient(135deg,#ffffff,#f2fffb);border:1px solid rgba(8,214,165,.26);border-radius:18px;padding:11px 13px;box-shadow:0 10px 28px rgba(38,33,79,.07)}
.geo-location-box.compact{margin:14px 0 18px;font-size:13px;padding:10px;border-radius:16px}
.geo-icon{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:999px;background:rgba(8,214,165,.14)}
.geo-location-box span:nth-child(2){flex:1;min-width:190px}
.geo-location-box button{border:0;background:var(--navy);color:#fff;border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.geo-location-box button:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(38,33,79,.16);background:linear-gradient(135deg,var(--navy),var(--mint))}
@media(max-width:850px){.geo-location-box{margin-top:-8px}.geo-location-box button{width:100%}}

/* Popup geolocalizzazione */
.geo-permission-popup{position:fixed;inset:0;z-index:9998;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(11,18,32,.42);backdrop-filter:blur(6px);animation:geoFadeIn .25s ease both}
.geo-permission-card{position:relative;max-width:520px;width:100%;background:#fff;border:1px solid rgba(8,214,165,.24);border-radius:28px;padding:28px;box-shadow:0 30px 90px rgba(38,33,79,.24);overflow:hidden}
.geo-permission-card:before{content:"";position:absolute;right:-80px;top:-80px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(8,214,165,.2),rgba(8,214,165,0) 68%)}
.geo-close{position:absolute;top:14px;right:16px;width:34px;height:34px;border:0;border-radius:999px;background:#f3f7fb;color:var(--navy);font-size:22px;line-height:1;cursor:pointer;transition:transform .2s ease,background .2s ease}
.geo-close:hover{transform:rotate(90deg);background:#e8fbf5}
.geo-permission-icon{width:58px;height:58px;border-radius:20px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e8fff8,#eef1ff);font-size:30px;margin-bottom:16px;box-shadow:0 14px 34px rgba(8,214,165,.18)}
.geo-permission-content h3{margin:4px 0 10px;color:var(--navy);font-size:28px;line-height:1.15}
.geo-permission-content p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.6}
.geo-permission-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.geo-permission-actions .btn{flex:1;justify-content:center;min-width:180px}
.hide-geo-popup{animation:geoFadeOut .22s ease both}
@keyframes geoFadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes geoFadeOut{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}
@media(max-width:650px){.geo-permission-card{padding:24px 20px;border-radius:24px}.geo-permission-content h3{font-size:23px}.geo-permission-actions .btn{width:100%;min-width:0}}
/* Landing ottici - guida gratuita */
.landing-ottici-page {
  background:
    radial-gradient(circle at top left, rgba(15, 214, 163, 0.16), transparent 32%),
    radial-gradient(circle at bottom right, rgba(35, 31, 76, 0.10), transparent 35%),
    #ffffff;
}

.landing-hero {
  padding: 72px 0 88px;
  position: relative;
  overflow: hidden;
}

.landing-hero::after {
  content: "";
  position: absolute;
  right: -120px;
  top: 40px;
  width: 360px;
  height: 360px;
  background: radial-gradient(circle, rgba(15, 214, 163, 0.14), transparent 70%);
  border-radius: 999px;
  pointer-events: none;
}

.landing-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 56px;
  align-items: center;
}

.landing-copy h1 {
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1.04;
  margin: 26px 0 22px;
  color: #201b49;
  letter-spacing: -2px;
}

.landing-copy h1::first-letter {
  color: #201b49;
}

.landing-subtitle {
  font-size: 20px;
  line-height: 1.7;
  color: #4f5570;
  max-width: 620px;
}

.landing-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(15, 214, 163, 0.12);
  color: #0a9f78;
  border: 1px solid rgba(15, 214, 163, 0.22);
  padding: 12px 18px;
  border-radius: 999px;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 0.08em;
}

.landing-benefits {
  display: grid;
  gap: 14px;
  margin: 34px 0;
}

.landing-benefits div {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #201b49;
  font-weight: 700;
  font-size: 17px;
}

.landing-trust-card {
  max-width: 500px;
  background: linear-gradient(145deg, rgba(255,255,255,0.92), rgba(240,255,250,0.92));
  border: 1px solid rgba(15, 214, 163, 0.18);
  border-radius: 24px;
  padding: 26px;
  box-shadow: 0 18px 46px rgba(32, 27, 73, 0.08);
}

.landing-trust-card .stars {
  color: #0fd6a3;
  letter-spacing: 4px;
  font-size: 18px;
  margin-bottom: 12px;
}

.landing-trust-card p {
  color: #343851;
  font-style: italic;
  line-height: 1.6;
  margin-bottom: 12px;
}

.landing-trust-card strong {
  display: block;
  color: #201b49;
}

.landing-trust-card span {
  color: #6b708a;
  font-size: 14px;
}

.landing-form-card {
  background: rgba(255,255,255,0.94);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(32, 27, 73, 0.08);
  border-radius: 34px;
  padding: 36px;
  box-shadow: 0 30px 80px rgba(32, 27, 73, 0.14);
  position: relative;
  z-index: 2;
}

.form-card-heading {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 28px;
}

.form-icon {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  background: rgba(15, 214, 163, 0.13);
  display: grid;
  place-items: center;
  font-size: 24px;
}

.form-card-heading h2 {
  margin: 0 0 6px;
  color: #201b49;
  font-size: 30px;
  letter-spacing: -0.8px;
}

.form-card-heading p {
  margin: 0;
  color: #6b708a;
}

.premium-form {
  display: grid;
  gap: 18px;
}

.premium-form .form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.premium-form label {
  display: grid;
  gap: 8px;
  color: #201b49;
  font-weight: 800;
  font-size: 14px;
}

.premium-form input,
.premium-form select,
.premium-form textarea {
  width: 100%;
  border: 1px solid rgba(32, 27, 73, 0.14);
  border-radius: 14px;
  padding: 16px 16px;
  font: inherit;
  color: #201b49;
  background: #ffffff;
  outline: none;
  transition: 0.2s ease;
}

.premium-form input:focus,
.premium-form select:focus,
.premium-form textarea:focus {
  border-color: #0fd6a3;
  box-shadow: 0 0 0 4px rgba(15, 214, 163, 0.14);
}

.premium-form textarea {
  resize: vertical;
  min-height: 120px;
}

.premium-form .privacy-check {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-weight: 500;
  color: #4f5570;
  line-height: 1.5;
}

.premium-form .privacy-check input {
  width: 18px;
  height: 18px;
  margin-top: 3px;
  flex: 0 0 auto;
}

.premium-form .privacy-check a {
  color: #0a9f78;
  font-weight: 800;
}

.landing-submit {
  width: 100%;
  border: none;
  cursor: pointer;
  display: grid;
  gap: 4px;
  justify-items: center;
  font-size: 18px;
  padding: 18px 22px;
}

.landing-submit span {
  display: block;
  font-size: 13px;
  font-weight: 500;
  opacity: 0.9;
}

@media (max-width: 980px) {
  .landing-grid {
    grid-template-columns: 1fr;
  }

  .landing-copy h1 {
    font-size: 44px;
  }
}

@media (max-width: 640px) {
  .landing-hero {
    padding: 44px 0 60px;
  }

  .landing-form-card {
    padding: 24px;
    border-radius: 24px;
  }

  .premium-form .form-grid {
    grid-template-columns: 1fr;
  }

  .form-card-heading {
    flex-direction: column;
  }

  .form-card-heading h2 {
    font-size: 24px;
  }
}
/* ===== MAPPA PREMIUM E-OPTICAL ===== */

.map-section-title {
  margin: 40px 0 20px;
}

.map-section-title span {
  display: inline-block;
  background: rgba(15, 214, 163, 0.12);
  color: #0a9f78;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.map-section-title h2 {
  margin: 10px 0;
  color: #201b49;
}

.map-section-title p {
  color: #697089;
  max-width: 650px;
}

.premium-map-heading {
  margin-top: 50px;
}

.premium-leaflet-map {
  height: 500px;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(32, 27, 73, 0.08);
  box-shadow: 0 20px 60px rgba(32, 27, 73, 0.10);
  margin-bottom: 40px;
}

/* Marker Premium */

.premium-leaflet-marker {
  background: transparent;
  border: none;
}

.premium-marker-pin {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: linear-gradient(135deg, #0fd6a3, #201b49);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  box-shadow: 0 10px 30px rgba(32, 27, 73, 0.35);
  border: 3px solid #fff;
  animation: premiumPulse 2s infinite;
}

@keyframes premiumPulse {

  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.08);
  }

  100% {
    transform: scale(1);
  }
}

/* Popup */

.premium-map-popup {
  min-width: 220px;
}

.premium-map-popup h3 {
  margin: 10px 0 8px;
  color: #201b49;
  font-size: 18px;
}

.premium-map-popup p {
  color: #697089;
  font-size: 14px;
  margin-bottom: 14px;
}

.premium-label-mini {
  display: inline-block;
  background: rgba(15,214,163,.15);
  color: #0a9f78;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
}

.premium-map-popup a {
  display: inline-block;
  text-decoration: none;
  background: #201b49;
  color: #fff;
  padding: 10px 14px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 600;
}

.premium-map-popup a:hover {
  opacity: .9;
}

@media(max-width:768px){

  .premium-leaflet-map{
    height:400px;
  }
/* ==========================
   GALLERY PREMIUM OTTICI
========================== */

.premium-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.premium-gallery-item{
  min-height:300px;
  border-radius:30px;
  overflow:hidden;
  position:relative;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  box-shadow:0 20px 60px rgba(32,27,73,.14);
  transition:all .3s ease;
}

.premium-gallery-item:hover{
  transform:translateY(-8px);
}

.premium-gallery-item::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    to top,
    rgba(32,27,73,.72),
    rgba(32,27,73,.15),
    transparent
  );
}

.premium-gallery-item span{
  position:absolute;
  bottom:24px;
  left:24px;
  z-index:2;
  color:#fff;
  font-size:20px;
  font-weight:800;
}

/* FOTO */

.gallery-premium-1{
  background-image:url('/assets/Progetto%20senza%20titolo%20(2).png');
}

.gallery-premium-2{
  background-image:url('/assets/Gemini_Generated_Image_mbyn0smbyn0smbyn.png');
}

.gallery-premium-3{
  background-image:url('/assets/ragazza.png');
}

/* MOBILE */

@media(max-width:850px){

  .premium-gallery-grid{
    grid-template-columns:1fr;
  }

  .premium-gallery-item{
    min-height:240px;
  }

}
