:root{
  --ink:#0f0d0b;
  --black:#050505;
  --cream:#f6efe7;
  --cream2:#fffaf4;
  --muted:#7a6b60;
  --line:rgba(20,15,10,.14);
  --accent:#f4b95f;
  --accent2:#d76b2a;
  --soft:#f0e3d6;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.35}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--accent);color:#000}.wrap{width:min(1180px,calc(100% - 44px));margin:0 auto}.jr-header{position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:100;width:min(1500px,calc(100% - 44px));display:flex;justify-content:space-between;align-items:stretch;background:#050505;color:#fff;border-radius:0 0 2px 2px;box-shadow:0 22px 70px rgba(0,0,0,.28)}.jr-brand{width:172px;min-height:108px;background:var(--accent);color:#050505;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;font-size:12px}.jr-brand img{width:62px;height:auto;filter:brightness(0)}.jr-brand span{font-size:13px}.jr-nav{display:flex;align-items:center;gap:34px;padding:0 52px 0 28px}.jr-nav a{font-size:16px;font-weight:650;color:#fff;opacity:.9;transition:.18s}.jr-nav a:hover,.jr-nav a.is-active{color:var(--accent);opacity:1}.jr-menu{display:none;margin:28px;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;border-radius:999px;padding:11px 16px;font-weight:850}.hero{min-height:100vh;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#000;padding:160px 0 72px}.hero:before{content:"";position:absolute;inset:0;background:url('../../img/fdc.jpg') center/cover no-repeat;filter:saturate(.9) contrast(1.05);transform:scale(1.02)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.45),rgba(0,0,0,.28)),linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.65))}.hero-center{position:relative;z-index:2;text-align:center;color:#fff;width:min(1050px,calc(100% - 36px));margin:auto}.eyebrow{display:inline-block;color:var(--accent);text-transform:uppercase;letter-spacing:.23em;font-size:13px;font-weight:900;margin-bottom:20px}.hero h1{margin:0 auto;font-size:clamp(56px,8.6vw,132px);line-height:.92;letter-spacing:-.055em;text-transform:uppercase;font-weight:950;max-width:1000px}.hero .lead{margin:28px auto 0;color:rgba(255,255,255,.86);font-size:clamp(18px,2vw,24px);max-width:780px}.actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:0;padding:15px 24px;border:2px solid currentColor;font-weight:950;letter-spacing:.02em;transition:.18s}.btn.accent{background:var(--accent);color:#000;border-color:var(--accent)}.btn.light{background:transparent;color:#fff;border-color:#fff}.btn:hover{transform:translateY(-2px);filter:brightness(.96)}.services-band{position:relative;z-index:5;margin-top:-72px;padding:0 0 54px;background:linear-gradient(180deg,transparent 0,#0d0c0b 16%,#0d0c0b 100%)}.services-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.preview-card{color:#fff;text-align:center}.preview-img{height:250px;overflow:hidden;background:#222}.preview-img img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.preview-card:hover img{transform:scale(1.055)}.preview-card h3{color:var(--accent);font-size:28px;margin:26px 0 14px}.preview-card p{font-size:18px;color:rgba(255,255,255,.82);line-height:1.55;margin:0 auto;max-width:330px}.ticker{overflow:hidden;background:var(--accent);border-block:1px solid rgba(0,0,0,.18)}.ticker-track{display:flex;gap:42px;white-space:nowrap;padding:17px 0;animation:ticker 30s linear infinite;font-weight:950;text-transform:uppercase;letter-spacing:.12em;color:#080808}.ticker span:before{content:"•";margin-right:42px}@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}.section{padding:88px 0}.section.compact{padding:58px 0}.section.dark{background:#0d0c0b;color:#fff}.section-head{display:grid;grid-template-columns:1fr .9fr;gap:44px;align-items:end;margin-bottom:36px}.section-head.center{display:block;text-align:center;max-width:900px;margin:0 auto 42px}.section-head h2{font-size:clamp(42px,5.4vw,82px);line-height:.92;letter-spacing:-.055em;margin:0;text-transform:none}.section-head p{font-size:19px;color:var(--muted);margin:0}.section.dark .section-head p{color:rgba(255,255,255,.72)}.service-list{border-top:1px solid var(--line)}.service-item{display:grid;grid-template-columns:120px 1fr 180px;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line)}.service-index{font-weight:950;color:var(--accent2);font-size:24px}.service-item h3{font-size:clamp(28px,3.6vw,48px);margin:0;letter-spacing:-.04em;line-height:1}.service-tag{justify-self:end;border:1px solid var(--line);border-radius:999px;padding:10px 15px;font-weight:900;color:#4c4038}.feature-row{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#111;color:#fff}.feature-row .feature-copy{padding:58px}.feature-row h2{font-size:clamp(42px,5.4vw,82px);line-height:.9;margin:0 0 24px;letter-spacing:-.055em}.feature-row p{font-size:20px;color:rgba(255,255,255,.78);max-width:620px}.feature-row img{width:100%;height:100%;object-fit:cover;min-height:470px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--cream2);border:1px solid var(--line);border-radius:34px;padding:30px;min-height:238px;display:flex;flex-direction:column;justify-content:space-between}.card.dark{background:#171412;color:#fff}.card .num{color:var(--accent2);font-size:18px;font-weight:950}.card h3{font-size:32px;line-height:1;margin:18px 0 0}.card p{color:var(--muted);font-size:17px;margin:14px 0 0}.card.dark p{color:#d9cec4}.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}.mini{background:var(--cream2);border:1px solid var(--line);border-radius:26px;padding:22px}.mini b{font-size:18px}.mini p{margin:9px 0 0;color:var(--muted)}.cta{background:#0d0c0b;color:#fff;padding:58px;display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center}.cta h2{font-size:clamp(38px,5vw,76px);line-height:.92;letter-spacing:-.055em;margin:0}.cta p{color:rgba(255,255,255,.72);font-size:19px;max-width:720px}.page-hero{position:relative;padding:170px 0 82px;background:#0d0c0b;color:#fff;overflow:hidden}.page-hero:before{content:"";position:absolute;inset:0;background:url('../../img/fdc.jpg') center/cover no-repeat;opacity:.28;filter:saturate(.8)}.page-hero .wrap{position:relative}.page-hero h1{font-size:clamp(54px,8vw,118px);line-height:.88;letter-spacing:-.065em;margin:14px 0 22px;text-transform:uppercase}.page-hero p{font-size:22px;color:rgba(255,255,255,.8);max-width:820px}.two-col{display:grid;grid-template-columns:.82fr 1.18fr;gap:42px}.text-card{background:var(--cream2);border:1px solid var(--line);border-radius:28px;padding:30px}.text-card h3{font-size:30px;margin:0 0 10px;line-height:1}.text-card p,.text-card li{color:var(--muted);font-size:17px}.band-grid,.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.band-card,.post-card{background:var(--cream2);border:1px solid var(--line);border-radius:0;overflow:hidden}.band-card img,.post-card img{height:255px;width:100%;object-fit:cover}.band-card div,.post-card div{padding:22px}.band-card h3,.post-card h3{margin:0 0 8px;font-size:28px;line-height:1}.band-card p,.post-card p{color:var(--muted);margin:8px 0 0}.meta{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.meta span{background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.artist-focus{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.artist-box{background:var(--cream2);border:1px solid var(--line);border-radius:30px;padding:30px;min-height:230px;display:flex;flex-direction:column;justify-content:space-between}.artist-box h3{font-size:34px;line-height:1;margin:0}.artist-box p{margin:18px 0 0;color:var(--muted);font-size:18px;line-height:1.45}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.contact-card{background:var(--cream2);border:1px solid var(--line);border-radius:24px;padding:28px}.contact-card a{display:block;font-size:24px;font-weight:950;margin-top:8px}.jr-footer{display:flex;justify-content:space-between;gap:30px;padding:42px 28px;border-top:1px solid var(--line);background:#fff8f0;color:#473a31}.jr-footer-links{display:flex;gap:18px;flex-wrap:wrap}.jr-footer-links a{font-weight:900}.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.admin-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:24px}.admin-panel input,.admin-panel textarea,.admin-panel select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:16px;margin:7px 0 12px;background:#fffaf4}.admin-panel button{padding:12px 16px;border:0;border-radius:999px;background:#17110d;color:#fff;font-weight:900}.admin-item{border-top:1px solid var(--line);padding:14px 0;color:var(--muted)}
@media(max-width:900px){.wrap{width:min(100% - 30px,1180px)}.jr-header{width:100%;left:0;transform:none}.jr-brand{width:130px;min-height:82px}.jr-brand img{width:44px}.jr-menu{display:block}.jr-nav{display:none;position:absolute;right:16px;top:92px;flex-direction:column;align-items:stretch;gap:0;background:#080808;padding:14px;min-width:210px}.jr-nav a{padding:13px 18px}.menu-open .jr-nav{display:flex}.hero{padding-top:128px}.hero h1{font-size:54px}.services-preview,.section-head,.feature-row,.cards,.mini-grid,.two-col,.band-grid,.post-grid,.artist-focus,.contact-grid,.cta{grid-template-columns:1fr}.services-band{margin-top:0;padding-top:28px}.preview-img{height:220px}.section{padding:60px 0}.service-item{grid-template-columns:1fr;gap:8px}.service-tag{justify-self:start}.feature-row .feature-copy{padding:34px}.feature-row img{min-height:310px}.page-hero{padding-top:130px}.page-hero h1{font-size:54px}.cta{padding:34px}.jr-footer{flex-direction:column}}

/* --- JR Agency v2.1 refinements --- */
.jr-header{width:min(1440px,calc(100% - 60px));align-items:center;border-radius:0;min-height:82px}
.jr-brand{width:150px;min-height:82px;gap:5px}.jr-brand img{width:48px}.jr-brand span{font-size:11px}.jr-nav{gap:30px;padding:0 44px 0 22px}.jr-nav a{font-size:15px}
.hero{min-height:76vh;padding:128px 0 58px}.hero h1{font-size:clamp(44px,6.6vw,96px);max-width:1060px}.hero .lead{font-size:clamp(16px,1.6vw,21px);max-width:760px;margin-top:20px}.hero-center .actions{margin-top:26px}
.services-band{margin-top:0;padding:34px 0 42px;background:#0d0c0b}.gallery-strip{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px}.gallery-strip::-webkit-scrollbar{height:9px}.gallery-strip::-webkit-scrollbar-track{background:rgba(255,255,255,.12)}.gallery-strip::-webkit-scrollbar-thumb{background:var(--accent)}.gallery-strip .gallery-card{min-width:360px;scroll-snap-align:start}.gallery-strip .preview-img{height:220px}.gallery-strip .preview-card h3{margin-top:18px;font-size:25px}.gallery-strip .preview-card p{font-size:16px;line-height:1.42}
.service-item{grid-template-columns:100px 1fr 110px;padding:22px 0}.service-tag{display:none}.service-item h3{transition:.18s}.service-item:hover h3,.service-item:focus h3{color:var(--accent2)}.service-item:hover .service-index{color:var(--accent)}
.feature-row-photos{grid-template-columns:.95fr 1.05fr}.feature-photos{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:28px;background:#171412}.feature-photos img{height:320px;width:100%;object-fit:cover;min-height:auto}.feature-row-photos .feature-copy{padding:44px}.feature-row-photos h2{font-size:clamp(36px,4.2vw,62px)}.feature-row-photos p{font-size:18px}.cards .card,.event-cards .card{background:var(--cream2);color:var(--ink)}.cards .card .num,.event-cards .card .num{color:var(--accent2)}.cards .card p,.event-cards .card p{color:var(--muted)}
.one-line-title{white-space:normal}.band-grid{align-items:stretch}.band-card div{padding:20px}.band-card h3{font-size:26px}.band-card p{line-height:1.38}.artist-focus{gap:18px}.artist-box{min-height:170px;padding:24px}.artist-box h3{font-size:28px}.artist-box p{font-size:16px;line-height:1.34;margin-top:12px}
.small-gallery{padding-top:6px}.gallery-card-simple{min-width:270px;color:#fff;scroll-snap-align:start}.gallery-card-simple img{height:168px;width:100%;object-fit:cover}.gallery-card-simple h3{margin:12px 0 0;color:var(--accent);font-size:19px}.event-cards .card{min-height:210px}
.contact-hero{padding-bottom:56px}.contact-section{padding-top:54px}.contact-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:28px;align-items:start}.compact-contacts{grid-template-columns:1fr 1fr;gap:12px}.compact-contacts .contact-card{padding:17px;border-radius:18px}.contact-icon{font-size:22px;display:block;margin-bottom:6px;color:var(--accent2)}.compact-contacts .eyebrow{margin-bottom:3px;font-size:10px}.compact-contacts .contact-card a{font-size:18px;margin-top:2px}.contact-form{background:var(--cream2);border:1px solid var(--line);border-radius:28px;padding:26px}.contact-form h2{margin:0 0 18px;font-size:38px;letter-spacing:-.045em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.contact-form label{display:grid;gap:7px;font-weight:850;color:#584d44}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px 13px;font:inherit;color:var(--ink)}.contact-form textarea{min-height:130px;margin-top:13px}.contact-form .btn{margin-top:16px;color:#000}
@media(max-width:900px){.jr-header{width:100%;min-height:76px}.jr-brand{min-height:76px;width:120px}.hero{min-height:70vh;padding-top:118px}.gallery-strip .gallery-card{min-width:285px}.feature-row-photos,.contact-layout,.form-grid{grid-template-columns:1fr}.feature-photos{grid-template-columns:1fr;padding:18px}.feature-photos img{height:230px}.compact-contacts{grid-template-columns:1fr}.service-item{grid-template-columns:1fr}.one-line-title{white-space:normal}}

/* --- JR Agency v2.2 alignment / readability fixes --- */
.section-head{
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.75fr);
  align-items:center;
  gap:38px;
}
.section-head h2{
  font-size:clamp(38px,4.2vw,64px);
  line-height:1.02;
  letter-spacing:-.05em;
  max-width:820px;
}
.section-head p{
  font-size:18px;
  line-height:1.45;
  max-width:560px;
}
.section-head.center{
  max-width:980px;
  margin:0 auto 38px;
  text-align:center;
}
.section-head.center h2{
  margin-left:auto;
  margin-right:auto;
  max-width:840px;
  font-size:clamp(40px,4.8vw,72px);
  line-height:1.03;
}
.section-head.center p{
  margin:14px auto 0;
  max-width:820px;
  line-height:1.42;
}
.section.dark.compact{
  padding:58px 0 64px;
}
.small-gallery{
  justify-content:flex-start;
  gap:24px;
  padding-left:max(0px,calc((100% - 960px)/2));
  padding-right:max(22px,calc((100% - 960px)/2));
}
.gallery-card-simple{
  min-width:300px;
}
.gallery-card-simple img{
  height:180px;
}
.gallery-card-simple h3{
  line-height:1.15;
}
.service-list{
  margin-top:12px;
}
.service-item h3{
  line-height:1.08;
}
.artist-box h3,
.card h3,
.band-card h3,
.post-card h3{
  line-height:1.08;
}

@media(max-width:900px){
  .section-head,
  .section-head.center{
    grid-template-columns:1fr;
    gap:18px;
    text-align:left;
  }
  .section-head.center{text-align:center;}
  .section-head h2,
  .section-head.center h2{
    font-size:clamp(34px,10vw,48px);
    line-height:1.05;
    letter-spacing:-.045em;
  }
  .section-head p,
  .section-head.center p{
    font-size:16px;
  }
  .small-gallery{
    padding-left:0;
    padding-right:0;
  }
  .gallery-card-simple{
    min-width:260px;
  }
}

/* --- Admin 2.0 + public content refinements --- */
.hero:before{background:var(--hero-img, url('../../img/fdc.jpg')) center/cover no-repeat;}
.section-head.vertical{display:block;text-align:left;max-width:980px;margin:0 auto 38px;}
.section-head.vertical h2{max-width:920px;margin:0;font-size:clamp(38px,5vw,72px);line-height:1.02;letter-spacing:-.055em;}
.section-head.vertical p{margin:18px 0 0;max-width:760px;font-size:19px;line-height:1.45;color:var(--muted);}
.band-card.band-left div{text-align:left;}
.band-card.band-left .meta{justify-content:flex-start;}
.band-card.band-left .meta span{display:inline-flex;max-width:100%;text-align:left;}
.band-card.band-left p{text-align:left;}
.small-copy{font-size:14px!important;color:#75695f!important;line-height:1.35!important;margin-top:12px!important;}
.preview-card{text-align:left;}
.preview-card h3,.preview-card p{margin-left:0;margin-right:0;}
.gallery-strip .preview-card{text-align:left;}
.gallery-strip .preview-card p{max-width:none;}
.service-item h3{word-break:normal;hyphens:none;}
@media(max-width:900px){.section-head.vertical h2{font-size:clamp(34px,10vw,50px)}.section-head.vertical p{font-size:16px}.preview-card{text-align:left}}


/* FIX 2.3 - immagini hero visibili e schede artista allineate */
.hero{background:#0d0c0b;}
.hero:before{background-image:var(--hero-img, url('../../img/flashback.jpg')) !important;background-position:center !important;background-size:cover !important;opacity:.82;filter:saturate(1.05) contrast(1.04) !important;}
.hero:after{background:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.25)),linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.58)) !important;}
.page-hero:before{background-image:var(--page-hero-img, url('../../img/flashback.jpg')) !important;background-position:center !important;background-size:cover !important;opacity:.34;}
.band-card.band-left div{text-align:left !important;}
.band-card.band-left .meta{justify-content:flex-start !important;align-items:flex-start !important;text-align:left !important;margin-left:0 !important;}
.band-card.band-left .meta span{margin-left:0 !important;margin-right:auto !important;text-align:left !important;justify-content:flex-start !important;width:auto !important;max-width:100%;}
.band-card.band-left p,.band-card.band-left h3{text-align:left !important;}


/* FIX 2.4 - hero images come tag img, non background CSS: funziona anche su Aruba/subfolder */
.hero::before,
.page-hero::before{display:none !important;}
.hero-bg-img,
.page-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;filter:saturate(1.05) contrast(1.04);}
.hero-bg-img{opacity:.82;}
.page-hero-img{opacity:.34;}
.hero-center,.page-hero .wrap{position:relative;z-index:2;}
.hero{background:#0d0c0b;}
.hero::after{z-index:1;pointer-events:none;}
.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.28)),linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.58));z-index:1;pointer-events:none;}
.band-left .meta{justify-content:flex-start !important;text-align:left !important;}
.band-left .meta span{margin-left:0 !important;margin-right:auto;}
.band-left div{text-align:left !important;}
