@charset "UTF-8";

/*
@copyright: CAFFEINAPURA Srls Unipersonale - All right reserved
Version: 2026.01 - 2026-06-22 00:00
Author: Roberto Cheli
Pagina: /nuove-strutture — eredita token, nav, footer, btn da base.css
*/

/* ── Hero ── */
.ns-hero{background:var(--hero-bg);padding:var(--hero-pad-t) var(--gutter) var(--hero-pad-b);position:relative;overflow:hidden;text-align:center;}
.ns-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 80% at 50% 0%,var(--g700) 0%,transparent 60%);pointer-events:none;}
.ns-hero-in{max-width:680px;margin:0 auto;position:relative;z-index:1;}
.ns-hero-eye{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.08);color:var(--g200);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.3rem 1rem;border-radius:20px;border:1px solid rgba(255,255,255,.1);margin-bottom:20px;}
h1.ns-hero-h{font-family:var(--ff-d);font-size:clamp(2rem,4.5vw,3.2rem);font-weight:600;color:#fff;letter-spacing:-.035em;line-height:1.1;margin-bottom:14px;}
h1.ns-hero-h em{font-style:italic;color:var(--g200);}
.ns-hero-sub{font-size:1rem;color:rgba(255,255,255,.5);line-height:1.75;}

/* ── Wrap + grid ── */
.ns-grid-sec{padding:56px var(--gutter) 72px;}
.ns-wrap{max-width:1180px;margin:0 auto;}
.ns-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
@media(max-width:1100px){.ns-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:780px){.ns-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.ns-grid{grid-template-columns:1fr;}}

.ns-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r-l);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;transition:box-shadow var(--ease-m),transform var(--ease-m);}
.ns-card:hover{box-shadow:var(--sh-l);transform:translateY(-4px);}
.ns-card-img{position:relative;height:160px;overflow:hidden;}
.ns-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease;}
.ns-card:hover .ns-card-img img{transform:scale(1.06);}
.ns-badge{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;gap:5px;background:var(--g500);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.25rem .6rem;border-radius:20px;}
.ns-badge i{font-size:.55rem;}
.ns-eco{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.92);color:var(--g700);font-size:.62rem;font-weight:700;letter-spacing:.04em;padding:.25rem .55rem;border-radius:var(--r-s);backdrop-filter:blur(4px);}
.ns-card-body{padding:16px 16px 18px;flex:1;display:flex;flex-direction:column;}
.ns-card-loc{font-size:.72rem;color:var(--t300);display:flex;align-items:center;gap:5px;margin-bottom:6px;}
.ns-card-loc i{color:var(--g400);font-size:.62rem;}
.ns-card-t{font-family:var(--ff-d);font-size:1.02rem;font-weight:600;color:var(--t900);margin-bottom:4px;letter-spacing:-.01em;line-height:1.2;}
.ns-card-tipo{font-size:.74rem;color:var(--g600);font-weight:600;margin-bottom:12px;}
.ns-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:14px;flex:1;align-content:flex-start;}
.ns-tag{font-size:.62rem;font-weight:600;color:var(--t500);background:var(--surface);padding:.18rem .5rem;border-radius:var(--r-s);border:1px solid var(--border);}
.ns-card-foot{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--border);}
.ns-card-prezzo{font-size:.72rem;color:var(--t500);}
.ns-card-prezzo strong{font-family:var(--ff-d);font-size:.95rem;color:var(--a400);font-weight:600;}
.ns-card-go{width:30px;height:30px;border-radius:50%;background:var(--g50);color:var(--g600);display:flex;align-items:center;justify-content:center;font-size:.72rem;transition:all var(--ease);}
.ns-card:hover .ns-card-go{background:var(--g500);color:#fff;}

/* ── CTA ── */
.ns-cta{background:var(--g900);padding:64px var(--gutter);position:relative;overflow:hidden;}
.ns-cta::before{content:'';position:absolute;top:-120px;right:-60px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(74,119,64,.2) 0%,transparent 65%);pointer-events:none;}
.ns-cta-in{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap;position:relative;z-index:1;}
.ns-cta-copy{max-width:560px;}
.ns-cta-eye{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--g300);margin-bottom:12px;}
.ns-cta-t{font-family:var(--ff-d);font-size:clamp(1.5rem,3vw,2.3rem);font-weight:600;color:#fff;letter-spacing:-.025em;line-height:1.12;margin-bottom:12px;}
.ns-cta-t em{font-style:italic;color:var(--g200);}
.ns-cta-sub{font-size:.92rem;color:rgba(255,255,255,.5);line-height:1.7;}
.ns-cta-act{display:flex;gap:10px;flex-wrap:wrap;}
.ns-btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--g500);color:#fff;font-family:var(--ff-b);font-size:.875rem;font-weight:600;padding:.85rem 1.7rem;border-radius:var(--r);text-decoration:none;transition:background var(--ease);}
.ns-btn-primary:hover{background:var(--g600);}
.ns-btn-ghost{display:inline-flex;align-items:center;gap:8px;background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.3);font-family:var(--ff-b);font-size:.875rem;font-weight:600;padding:.85rem 1.7rem;border-radius:var(--r);text-decoration:none;transition:all var(--ease);}
.ns-btn-ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5);}
