:root{
  --paper:#f4f1ea;
  --paper-2:#fbfaf7;
  --ink:#171717;
  --muted:#6f6b65;
  --line:#d9d4ca;
  --white:#fff;
  --max:1260px;
  --serif: Georgia, 'Times New Roman', serif;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper-2);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font:inherit}
.wrap{width:min(calc(100% - 44px),var(--max));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,247,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand img{width:128px;height:auto}
.nav-links{display:flex;align-items:center;gap:34px;font-size:14px}
.nav-links a{position:relative;padding:12px 0}
.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:6px;height:1px;background:var(--ink);transition:right .2s ease}
.nav-links a:hover::after,.nav-links a:focus-visible::after{right:0}
.menu-toggle{display:none;background:transparent;border:0;width:46px;height:46px;padding:11px;cursor:pointer}
.menu-toggle span{display:block;height:1px;background:var(--ink);margin:7px 0}
.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:var(--muted)}
.display{font-family:var(--serif);font-size:clamp(52px,7.5vw,110px);line-height:.88;letter-spacing:-.055em;font-weight:400;margin:0}
.h2{font-family:var(--serif);font-size:clamp(38px,5vw,68px);line-height:.98;letter-spacing:-.04em;font-weight:400;margin:0}
.h3{font-family:var(--serif);font-size:30px;line-height:1.06;font-weight:400;margin:0}
.lead{font-family:var(--serif);font-size:clamp(23px,2.6vw,38px);line-height:1.13;letter-spacing:-.025em}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:49px;padding:0 19px;border:1px solid var(--ink);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:750;transition:.2s ease;background:transparent}
.btn:hover{background:var(--ink);color:var(--white)}
.btn.light{border-color:rgba(255,255,255,.75);color:#fff}
.btn.light:hover{background:#fff;color:#111}

/* MAIÉ HOME */
.maie-hero{background:var(--paper);border-bottom:1px solid var(--line);overflow:hidden}
.maie-hero-grid{min-height:650px;display:grid;grid-template-columns:1.12fr .88fr;align-items:stretch}
.maie-hero-copy{padding:86px 7vw 76px 0;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}
.maie-hero-copy .eyebrow{margin-bottom:28px}
.maie-hero-copy .lead{max-width:700px;margin:34px 0 16px}
.maie-hero-copy p:not(.lead){max-width:620px;color:var(--muted);font-size:17px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.maie-hero-art{border-left:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative;min-height:560px;background:linear-gradient(135deg,#ece8df 0,#f8f6f1 70%)}
.maie-hero-art::before,.maie-hero-art::after{content:"";position:absolute;border:1px solid #cfc9bf;border-radius:50%}
.maie-hero-art::before{width:420px;height:420px}
.maie-hero-art::after{width:260px;height:260px}
.maie-hero-art img{width:min(72%,460px);position:relative;z-index:2;filter:contrast(1.05)}
.year-mark{position:absolute;right:30px;bottom:26px;font-family:var(--serif);font-size:78px;line-height:1;color:#c9c3b8}
.section{padding:100px 0;border-bottom:1px solid var(--line)}
.section-head{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start;margin-bottom:52px}
.section-head .h2{max-width:650px}
.section-head .copy{max-width:670px;color:#4d4a45;font-size:18px}
.section-head .copy p:first-child{margin-top:0}
.section-head .copy p:last-child{margin-bottom:0}

.feature-icl{padding:74px 0;background:#fff;border-bottom:1px solid var(--line)}
.icl-card{display:grid;grid-template-columns:.78fr 1.22fr;min-height:520px;border:1px solid var(--ink);background:#101010;color:#fff;overflow:hidden}
.icl-card-copy{padding:58px;display:flex;flex-direction:column;justify-content:center}
.icl-card-copy .eyebrow{color:#d7c600}
.icl-card-copy .h2{margin:18px 0 20px}
.icl-card-copy p{color:#d8d8d8;max-width:470px;font-size:17px}
.icl-card-visual{background:#d7c600;position:relative;overflow:hidden}
.icl-card-visual img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;mix-blend-mode:normal}
.icl-card-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,16,16,.33),transparent 28%);pointer-events:none}

.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:58px}
.stat{padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:170px}
.stat strong{font-family:var(--serif);font-size:58px;font-weight:400;display:block;line-height:1}
.stat span{display:block;margin-top:15px;color:var(--muted);font-size:14px}

.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.exp{padding:38px;min-height:340px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;background:var(--paper-2)}
.exp-index{font-family:var(--serif);font-size:72px;color:#ccc5b9;line-height:1}
.exp .h3{margin:24px 0 18px}
.exp p{color:var(--muted);margin-bottom:0}
.exp small{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:#7f7a72}

.today-strip{background:#1b1b1b;color:#fff}
.today-strip .section-head .copy{color:#d4d4d4}
.today-strip .eyebrow{color:#aaa}
.today-strip .timeline{display:grid;grid-template-columns:170px 1fr;border-top:1px solid #444}
.timeline-row{display:contents}
.timeline-row>div{padding:30px 0;border-bottom:1px solid #444}
.timeline-row .date{font-family:var(--serif);font-size:30px;color:#c9c9c9;padding-right:30px}
.timeline-row .desc{font-size:18px;max-width:830px}

.contact{padding:90px 0;background:var(--paper)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.contact-list{border-top:1px solid var(--ink)}
.contact-line{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}
.contact-line span:first-child{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}
.contact-line a{font-size:20px}

.site-footer{padding:34px 0 42px;border-top:1px solid var(--line);background:#fff}
.footer-grid{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.footer-brand img{width:110px}
.footer-meta{font-size:12px;color:var(--muted);text-align:right}
.footer-links{display:flex;gap:18px;margin-bottom:8px;justify-content:flex-end}

/* INCUINTRILÛS — project-specific palette stays here */
.icl-page{
  --icl-yellow:#d8c800;
  --icl-orange:#ef5b22;
  --icl-blue:#3f46b7;
  --icl-green:#00a470;
  --icl-pink:#dc69a6;
  background:#fff;
}
.icl-hero{background:var(--icl-yellow);overflow:hidden;border-bottom:1px solid #171717}
.icl-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;min-height:720px}
.icl-hero-copy{padding:86px 7vw 70px 0;display:flex;flex-direction:column;justify-content:center;position:relative}
.icl-hero .eyebrow{color:#181818}
.icl-title{font-family:var(--serif);font-size:clamp(62px,8.7vw,132px);line-height:.82;letter-spacing:-.07em;font-weight:400;margin:20px 0 30px;max-width:730px}
.icl-title em{font-style:normal;color:var(--icl-orange)}
.icl-hero-copy .lead{max-width:650px;margin:0 0 22px;font-size:clamp(22px,2.4vw,34px)}
.icl-hero-copy .subcopy{max-width:590px;font-size:17px}
.icl-hero-poster{border-left:1px solid #161616;background:#d8c800;min-height:720px;overflow:hidden}
.icl-hero-poster img{width:100%;height:100%;object-fit:cover;object-position:center 26%}
.lang-switch{display:flex;gap:6px;margin-top:28px}
.lang-switch button{border:1px solid #171717;background:transparent;padding:8px 13px;font-size:11px;font-weight:800;letter-spacing:.12em;cursor:pointer}
.lang-switch button.active{background:#171717;color:#fff}

.icl-intro{background:#111;color:#fff;padding:92px 0}
.icl-intro-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:74px}
.icl-intro .eyebrow{color:var(--icl-yellow)}
.icl-intro .h2{margin-top:20px}
.icl-intro .copy{font-size:18px;color:#d1d1d1;max-width:720px}

.icl-sections{padding:92px 0;background:#fff}
.icl-section-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #1c1c1c;border-left:1px solid #1c1c1c;margin-top:45px}
.icl-unit{min-height:360px;padding:40px;border-right:1px solid #1c1c1c;border-bottom:1px solid #1c1c1c;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.icl-unit:nth-child(1)::before{background:var(--icl-orange)}
.icl-unit:nth-child(2)::before{background:var(--icl-green)}
.icl-unit:nth-child(3)::before{background:var(--icl-blue)}
.icl-unit:nth-child(4)::before{background:var(--icl-pink)}
.icl-unit::before{content:"";position:absolute;left:0;top:0;width:9px;height:100%}
.icl-number{font-family:var(--serif);font-size:78px;line-height:1;color:#c7c7c7}
.icl-unit .h3{font-size:36px;margin:22px 0 16px}
.icl-unit p{color:#555;max-width:550px;margin-bottom:0}

.icl-archive{background:#f1efe9;padding:92px 0}
.icl-archive-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#c9c4b8;border:1px solid #c9c4b8;margin-top:46px}
.archive-card{background:#f9f7f2;padding:42px;min-height:290px}
.archive-year{font-family:var(--serif);font-size:76px;line-height:1;margin-bottom:34px}
.archive-card p{max-width:590px;color:#5b5751}

.icl-team{padding:92px 0;background:#fff}
.team-line{display:grid;grid-template-columns:260px 1fr;gap:40px;padding:24px 0;border-top:1px solid #d5d0c7}
.team-line:last-child{border-bottom:1px solid #d5d0c7}
.team-line strong{font-family:var(--serif);font-size:27px;font-weight:400}
.team-line span{color:#5c5852}

.supporters{padding:70px 0;background:#fff;border-top:1px solid #dedad2}
.supporters h2{font-family:var(--serif);font-size:42px;font-weight:400;margin:0 0 30px}
.supporters-plate{background:#fff;border:1px solid #ddd8cf;padding:0;overflow:hidden}
.supporters-plate img{width:100%;height:auto}

.icl-note{font-size:12px;color:#777;margin-top:14px}

.privacy-main{padding:80px 0 120px}
.privacy-main .copy{max-width:850px}
.privacy-main h1{font-family:var(--serif);font-size:64px;font-weight:400;margin:0 0 35px}
.privacy-main h2{font-family:var(--serif);font-size:30px;font-weight:400;margin-top:40px}

.reveal{opacity:0;transform:translateY(18px);transition:.6s ease}
.reveal.visible{opacity:1;transform:none}

@media (max-width:900px){
  .wrap{width:min(calc(100% - 28px),var(--max))}
  .nav{min-height:76px}
  .brand img{width:104px}
  .menu-toggle{display:block}
  .nav-links{position:absolute;left:0;right:0;top:76px;background:#fbfaf7;border-bottom:1px solid var(--line);padding:20px 22px 28px;display:none;flex-direction:column;align-items:flex-start;gap:4px}
  .nav-links.open{display:flex}
  .nav-links a{width:100%;padding:11px 0}
  .maie-hero-grid,.icl-hero-grid{grid-template-columns:1fr}
  .maie-hero-copy{padding:64px 0 55px}
  .maie-hero-art{border-left:0;border-top:1px solid var(--line);min-height:420px}
  .maie-hero-art img{width:min(74%,370px)}
  .year-mark{font-size:54px}
  .section,.icl-sections,.icl-archive,.icl-team{padding:72px 0}
  .section-head,.icl-intro-grid,.contact-grid{grid-template-columns:1fr;gap:30px}
  .icl-card{grid-template-columns:1fr}
  .icl-card-copy{padding:40px 30px}
  .icl-card-visual{min-height:440px}
  .stats,.experience-grid{grid-template-columns:1fr}
  .exp{min-height:270px}
  .today-strip .timeline{grid-template-columns:1fr}
  .timeline-row{display:block}
  .timeline-row>div{padding:18px 0}
  .timeline-row .date{border-bottom:0;padding-bottom:0}
  .timeline-row .desc{padding-top:5px}
  .contact-line{grid-template-columns:1fr;gap:6px}
  .footer-grid{align-items:flex-start;flex-direction:column}
  .footer-meta{text-align:left}
  .footer-links{justify-content:flex-start}
  .icl-hero-copy{padding:64px 0 50px}
  .icl-hero-poster{border-left:0;border-top:1px solid #171717;min-height:660px;max-height:760px}
  .icl-intro{padding:70px 0}
  .icl-intro-grid{grid-template-columns:1fr;gap:30px}
  .icl-section-grid,.icl-archive-grid{grid-template-columns:1fr}
  .icl-unit{min-height:300px}
  .team-line{grid-template-columns:1fr;gap:8px}
}
@media (max-width:560px){
  body{font-size:15px}
  .maie-hero-grid{min-height:auto}
  .maie-hero-copy .lead{margin-top:28px}
  .maie-hero-art{min-height:340px}
  .maie-hero-art::before{width:300px;height:300px}
  .maie-hero-art::after{width:185px;height:185px}
  .icl-card-visual{min-height:340px}
  .icl-card-copy{padding:34px 24px}
  .section-head{margin-bottom:36px}
  .stat{min-height:140px}
  .stat strong{font-size:46px}
  .exp{padding:28px}
  .icl-title{font-size:59px}
  .icl-hero-poster{min-height:560px}
  .icl-unit,.archive-card{padding:28px}
  .supporters{padding:54px 0}
}
.icl-unit:nth-child(5)::before{background:var(--icl-yellow)}
.icl-unit:nth-child(5){grid-column:1/-1;min-height:270px}
@media (max-width:900px){.icl-unit:nth-child(5){grid-column:auto}}

/* ==========================================================
   V3 — MAIÉ / INCUINTRILÛS PUBLIC WEBSITE
   ========================================================== */

/* MAIÉ: neutral editorial identity */
.maie-home-hero{background:#f3f0e9;border-bottom:1px solid var(--line)}
.maie-home-grid{min-height:660px;display:grid;grid-template-columns:1.25fr .75fr}
.maie-home-copy{padding:92px 70px 78px 0;display:flex;flex-direction:column;justify-content:center}
.maie-wordmark{font-family:var(--serif);font-size:clamp(86px,12vw,176px);font-weight:400;line-height:.8;letter-spacing:-.065em;margin:28px 0 38px}
.maie-tagline{font-family:var(--serif);font-size:clamp(29px,3vw,46px);line-height:1.1;margin:0 0 25px;max-width:760px}
.maie-intro{font-size:18px;color:#54514b;max-width:680px;margin:0}
.text-link{display:inline-flex;gap:10px;align-items:center;padding:12px 2px;font-size:13px;font-weight:650;border-bottom:1px solid #aaa}
.maie-home-symbol{border-left:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:28px;padding:50px;position:relative;overflow:hidden}
.maie-home-symbol:before{content:"";position:absolute;width:470px;height:470px;border:1px solid #dfdbd3;border-radius:50%}
.maie-home-symbol:after{content:"";position:absolute;width:300px;height:300px;border:1px solid #e8e4dc;border-radius:50%}
.maie-home-symbol img{position:relative;z-index:2;width:min(94%,460px)}
.maie-home-symbol p{position:relative;z-index:2;font-family:var(--serif);font-size:22px;font-style:italic;color:#77716a}
.home-icl-feature{background:#fff;padding:62px 0;border-bottom:1px solid var(--line)}
.home-icl-card{display:grid;grid-template-columns:1.3fr .9fr .55fr;min-height:430px;background:#101010;color:#fff;overflow:hidden;border:1px solid #101010}
.home-icl-photo{overflow:hidden;min-height:430px}
.home-icl-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) contrast(1.02)}
.home-icl-info{padding:52px 44px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid #333}
.home-icl-info .eyebrow{color:#c9c3b9}
.home-icl-info h2{font-family:var(--serif);font-size:clamp(44px,4.6vw,72px);font-weight:400;line-height:.95;letter-spacing:-.045em;margin:20px 0}
.home-icl-info p{color:#d0d0d0;font-size:16px;max-width:480px}
.feature-cta{margin-top:24px;display:inline-flex;gap:14px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.home-icl-poster{background:#f1eee7;overflow:hidden;display:flex;align-items:center;justify-content:center}
.home-icl-poster img{width:100%;height:100%;object-fit:cover;object-position:center}
.maie-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.maie-facts>div{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.maie-facts strong{font-family:var(--serif);font-size:54px;font-weight:400;line-height:1;display:block}
.maie-facts span{display:block;color:var(--muted);font-size:13px;margin-top:10px}
.projects-section{background:#f7f5f0}
.project-cards{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #bdb8af;border-left:1px solid #bdb8af}
.project-card{min-height:360px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid #bdb8af;border-bottom:1px solid #bdb8af;background:#fbfaf7}
.project-card .project-no{font-family:var(--serif);font-size:52px;color:#c5bfb5}
.project-card h3{font-family:var(--serif);font-size:36px;font-weight:400;line-height:1.05;margin:18px 0 14px}
.project-card p{color:#59564f;max-width:560px}
.project-card>a{font-size:12px;text-transform:uppercase;letter-spacing:.1em;border-top:1px solid #dad5cc;padding-top:18px}
.project-card-icl{background:#171717;color:#fff}
.project-card-icl p{color:#d3d3d3}.project-card-icl .project-no{color:#777}.project-card-icl>a{border-color:#444}
.press-preview{background:#fff}
.press-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.press-mini{min-height:250px;padding:28px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.2s ease}
.press-mini:hover{background:#f1eee7}
.press-mini span,.press-mini small{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.press-mini strong{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.12;margin:28px 0 auto}
.press-more{margin-top:28px}
.contact-note{font-family:var(--serif);font-size:24px;color:#5d5952}

/* Rassegna stampa */
.press-hero{background:#f0ede6;border-bottom:1px solid var(--line);padding:100px 0}
.press-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}
.press-hero h1{font-family:var(--serif);font-size:clamp(72px,10vw,145px);font-weight:400;letter-spacing:-.06em;line-height:.8;margin:20px 0 0}
.press-hero-copy{font-family:var(--serif);font-size:27px;line-height:1.25;color:#4f4b45;max-width:600px}
.press-section{padding:85px 0;border-bottom:1px solid var(--line);background:#fff}
.press-section-alt{background:#f6f3ed}
.press-section-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:42px}
.press-section-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(38px,4.5vw,64px);letter-spacing:-.04em;line-height:.98;margin:10px 0 0}
.press-section-head p{font-size:18px;color:#58544d;max-width:620px;margin:8px 0 0}
.press-year{font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:750;color:#77716a}
.press-list{border-top:1px solid #aaa49a}
.press-row{display:grid;grid-template-columns:190px 1fr 120px 30px;gap:22px;align-items:center;padding:24px 8px;border-bottom:1px solid #d8d3ca;transition:.2s ease}
.press-row:hover{padding-left:16px;background:rgba(0,0,0,.025)}
.press-source{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#6f6a62}
.press-row strong{font-family:var(--serif);font-size:22px;font-weight:400;line-height:1.14}
.press-row time{font-size:12px;color:#77716a}.press-row>b{font-size:20px;font-weight:400;text-align:right}
.press-note-section{padding:72px 0;background:#171717;color:#fff}
.press-note{max-width:850px}.press-note .eyebrow{color:#aaa}.press-note p{font-family:var(--serif);font-size:28px;line-height:1.25}.press-note .btn{border-color:#fff;color:#fff}.press-note .btn:hover{background:#fff;color:#111}

/* InCuintriLûs — the project identity is confined to .icl-page */
.icl-page{--icl-yellow:#efd900;--icl-cream:#f5f2ea;--icl-black:#0c0c0c;--icl-cyan:#08b7c7;--icl-pink:#dc5fa5;--icl-green:#00a472;--icl-orange:#f06425;background:#fff}
.icl-page .icl-site-header{background:rgba(255,255,255,.96)}
.icl-page .header-lang{margin-left:4px}
.icl-real-hero{height:min(760px,78vw);min-height:580px;position:relative;background:#111;color:#fff;overflow:hidden}
.icl-real-bg,.icl-real-bg img,.icl-real-overlay{position:absolute;inset:0;width:100%;height:100%}.icl-real-bg img{object-fit:cover;object-position:center 48%}
.icl-real-overlay{background:linear-gradient(90deg,rgba(0,0,0,.9) 0%,rgba(0,0,0,.72) 38%,rgba(0,0,0,.2) 73%,rgba(0,0,0,.22) 100%)}
.icl-real-content{position:relative;z-index:2;padding-top:110px;color:#fff}
.icl-real-content .eyebrow{color:var(--icl-yellow)}
.icl-real-content h1{font-family:var(--serif);font-size:clamp(70px,10vw,150px);font-weight:400;letter-spacing:-.07em;line-height:.8;margin:25px 0 28px;color:var(--icl-yellow)}
.icl-subtitle{font-family:var(--serif);font-size:clamp(28px,3.2vw,46px);line-height:1.05;max-width:700px;margin:0 0 24px}
.icl-hero-text{font-size:18px;color:#ddd;max-width:610px}
.icl-btn{display:inline-flex;align-items:center;gap:18px;background:var(--icl-yellow);color:#111;border:1px solid var(--icl-yellow);padding:14px 20px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.11em;margin-top:18px;transition:.2s}
.icl-btn:hover{background:#fff;border-color:#fff}.icl-btn.small{margin:0;white-space:nowrap}
.icl-manifesto{padding:90px 0;background:#fff;border-bottom:1px solid #d8d3cb}
.icl-manifesto-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.icl-manifesto .eyebrow{color:#756f65}.icl-manifesto .copy{font-size:19px;color:#4c4943;max-width:740px}
.icl-program-areas{padding:90px 0;background:linear-gradient(180deg,#f7f4ec,#fff)}
.icl-section-title{max-width:800px}.icl-section-title .eyebrow{color:#6d675f}.icl-section-title .h2{margin-top:16px}
.icl-area-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#111;margin-top:44px;border:1px solid #111}
.icl-area{background:#fff;min-height:350px;padding:30px;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:.2s ease}
.icl-area:hover{transform:translateY(-5px);z-index:2}.icl-area>span{font-family:var(--serif);font-size:48px;color:#b9b3a8}.icl-area h3{font-family:var(--serif);font-size:37px;font-weight:400;line-height:1;margin:0 0 15px}.icl-area p{color:#5a554e;font-size:15px}.icl-area>b{font-size:26px;font-weight:400}
.icl-area:before{content:"";height:9px;position:absolute;left:0;right:0;top:0}.area-estate:before{background:var(--icl-cyan)}.area-ator:before{background:var(--icl-orange)}.area-fruts:before{background:var(--icl-pink)}.area-vetrina:before{background:var(--icl-yellow)}
.icl-detail{padding:90px 0;background:#fff;border-top:1px solid #ddd8cf}
.icl-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:stretch}.icl-detail-grid.reverse{grid-template-columns:.95fr 1.05fr}
.icl-detail-visual{min-height:600px;overflow:hidden;background:#111}.icl-detail-visual img{width:100%;height:100%;object-fit:cover}
.icl-detail-copy{padding:20px 0;display:flex;flex-direction:column;justify-content:center}.icl-detail-copy .h2{margin:18px 0 30px}.icl-detail-copy>p{font-size:18px;color:#57524b}
.detail-event{border-top:1px solid #aaa49b;padding:20px 0}.detail-event:last-child{border-bottom:1px solid #aaa49b}.detail-event strong{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.detail-event span{display:block;font-family:var(--serif);font-size:22px;margin:7px 0}.detail-event p{color:#57524b;margin:8px 0 0}
.icl-detail-dark{background:#101010;color:#fff}.icl-detail-dark .eyebrow{color:var(--icl-yellow)}
.icl-detail-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:end;margin-bottom:38px}.icl-detail-head .h2{margin-top:15px}.icl-detail-head>p{color:#ccc;font-size:18px;max-width:650px}
.ator-list{border-top:1px solid #555}.ator-list article{display:grid;grid-template-columns:180px 1fr;gap:36px;padding:25px 0;border-bottom:1px solid #444}.ator-list time{font-family:var(--serif);font-size:27px;color:var(--icl-yellow)}.ator-list h3{font-family:var(--serif);font-size:29px;font-weight:400;margin:0 0 8px}.ator-list p{color:#ccc;margin:0}
.icl-detail-poster{min-height:680px;overflow:hidden;background:#efede8}.icl-detail-poster img{height:100%;width:100%;object-fit:cover;object-position:center}
.icl-vetrina{padding:95px 0;background:var(--icl-yellow);color:#111}.icl-vetrina-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.icl-vetrina .copy{font-size:19px;max-width:650px}.icl-text-link{font-weight:750;border-bottom:1px solid currentColor;padding-bottom:3px}
.icl-calendar{padding:90px 0;background:#f5f2eb;border-bottom:1px solid #cbc6bd}
.calendar-toolbar,.map-filters{display:flex;gap:8px;flex-wrap:wrap;margin:32px 0 26px}.calendar-toolbar button,.map-filters button{border:1px solid #222;background:transparent;padding:10px 14px;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.calendar-toolbar button.active,.map-filters button.active{background:#111;color:#fff}
.calendar-list{border-top:1px solid #aaa49b}.calendar-event{display:grid;grid-template-columns:105px 1fr 170px;gap:28px;align-items:center;padding:20px 8px;border-bottom:1px solid #cec9c0;transition:.2s;background:transparent}.calendar-event:hover{background:#fff}.calendar-event[hidden]{display:none}.cal-date{display:flex;align-items:baseline;gap:8px}.cal-date b{font-family:var(--serif);font-size:44px;font-weight:400;line-height:1}.cal-date span{font-size:11px;font-weight:800;letter-spacing:.12em}.cal-kind{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#6c665f}.cal-main h3{font-family:var(--serif);font-size:25px;font-weight:400;margin:3px 0}.cal-main p{color:#676159;margin:0;font-size:14px}.cal-time{text-align:right;font-size:13px;font-weight:700}.calendar-event.is-past{opacity:.58}.calendar-event.is-past .cal-kind:after{content:" · concluso"}.calendar-event.pending{background:#eee9df}
.icl-map-section{padding:90px 0;background:#fff}.icl-map-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.icl-map-head .h2{margin-top:15px}.icl-map-head>p{font-size:18px;color:#5d5851;max-width:620px}.icl-map{height:540px;background:#e9e6df;border:1px solid #c7c1b7;position:relative;z-index:1}.map-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#666;font-size:14px}.leaflet-container{font-family:var(--sans)}.icl-map-popup strong{display:block;font-family:var(--serif);font-size:18px;margin-bottom:4px}.icl-map-popup span{display:block;font-size:12px;color:#666;margin-bottom:7px}.icl-map-popup p{font-size:13px;margin:0}.icl-map-popup a{display:inline-block;margin-top:8px;text-decoration:underline}
.icl-media{padding:90px 0;background:#0f0f0f;color:#fff}.icl-media .eyebrow{color:var(--icl-yellow)}.icl-media-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:42px}.icl-media-head>p{color:#ccc;font-size:17px;max-width:620px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:260px;gap:10px}.gallery-item{position:relative;border:0;padding:0;background:#222;cursor:pointer;overflow:hidden;color:#fff;text-align:left}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.gallery-item:hover img{transform:scale(1.025)}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.72))}.gallery-item span{position:absolute;z-index:2;left:18px;bottom:15px;font-size:12px}.gallery-wide{grid-column:span 2;grid-row:span 2}.video-feature{margin-top:18px;border-top:1px solid #555;border-bottom:1px solid #555;padding:24px 0;display:grid;grid-template-columns:70px 1fr auto;gap:25px;align-items:center}.video-icon{width:54px;height:54px;border-radius:50%;border:1px solid var(--icl-yellow);color:var(--icl-yellow);display:flex;align-items:center;justify-content:center}.video-feature h3{font-family:var(--serif);font-size:27px;font-weight:400;margin:7px 0}
.icl-archive-2025{padding:90px 0;background:#fff}.icl-archive-2025-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.icl-archive-2025 .copy{font-size:18px;color:#57524a}
.icl-supporters{padding:78px 0;background:#f5f2ea;border-top:1px solid #ccc7bd}.icl-supporters .h2{margin:14px 0 30px}.icl-supporters .supporters-plate{background:#fff}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:999;display:none;align-items:center;justify-content:center;padding:50px}.lightbox.open{display:flex}.lightbox figure{margin:0;max-width:min(1300px,94vw);max-height:88vh;display:flex;flex-direction:column;gap:10px}.lightbox img{max-height:80vh;max-width:100%;object-fit:contain}.lightbox figcaption{color:#ddd;font-size:13px}.lightbox-close{position:absolute;right:20px;top:15px;background:transparent;border:0;color:#fff;font-size:42px;cursor:pointer}

@media (max-width:1050px){
  .home-icl-card{grid-template-columns:1.25fr .85fr}.home-icl-poster{display:none}
  .icl-area-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){
  .maie-home-grid{grid-template-columns:1fr}.maie-home-copy{padding:68px 0 55px}.maie-home-symbol{border-left:0;border-top:1px solid var(--line);min-height:430px}.maie-wordmark{font-size:100px}
  .home-icl-card{grid-template-columns:1fr}.home-icl-photo{min-height:350px}.home-icl-info{border-left:0;border-top:1px solid #333}
  .maie-facts,.project-cards,.press-preview-grid{grid-template-columns:1fr}
  .press-hero-grid,.press-section-head,.icl-manifesto-grid,.icl-detail-grid,.icl-detail-grid.reverse,.icl-detail-head,.icl-vetrina-grid,.icl-map-head,.icl-media-head,.icl-archive-2025-grid{grid-template-columns:1fr;gap:34px}
  .press-row{grid-template-columns:1fr 90px 25px}.press-source{grid-column:1/-1}.press-row strong{font-size:21px}.press-row time{text-align:left}
  .icl-page .header-lang{position:absolute;right:75px}.icl-page .nav-links{padding-right:110px}
  .icl-real-hero{height:auto;min-height:650px}.icl-real-content{padding-top:100px;padding-bottom:80px}.icl-real-overlay{background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.48))}
  .icl-detail-visual,.icl-detail-poster{min-height:450px}.icl-detail-grid.reverse .icl-detail-poster{order:-1}
  .ator-list article{grid-template-columns:145px 1fr}.calendar-event{grid-template-columns:85px 1fr 130px}.icl-map{height:470px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px}.gallery-wide{grid-column:span 2}.video-feature{grid-template-columns:55px 1fr}.video-feature .icl-btn{grid-column:1/-1;justify-self:start}
}
@media (max-width:620px){
  .maie-home-copy{padding-top:50px}.maie-wordmark{font-size:74px}.maie-tagline{font-size:29px}.maie-home-symbol{min-height:340px}.maie-home-symbol:before{width:310px;height:310px}.maie-home-symbol:after{width:210px;height:210px}
  .home-icl-feature{padding:30px 0}.home-icl-photo{min-height:280px}.home-icl-info{padding:32px 24px}
  .maie-facts>div{padding:22px}.maie-facts strong{font-size:43px}.project-card{min-height:300px;padding:27px}.project-card h3{font-size:31px}
  .press-hero{padding:65px 0}.press-hero h1{font-size:70px}.press-hero-copy{font-size:22px}.press-section{padding:62px 0}.press-row{grid-template-columns:1fr 24px;gap:10px;padding:20px 4px}.press-row time{grid-column:1}.press-row>b{grid-column:2;grid-row:2/4}.press-source{grid-column:1/-1}
  .icl-page .header-lang{right:64px}.header-lang button{padding:6px 8px}
  .icl-real-hero{min-height:610px}.icl-real-content{padding-top:84px}.icl-real-content h1{font-size:62px}.icl-subtitle{font-size:27px}.icl-real-bg img{object-position:62% center}
  .icl-manifesto,.icl-program-areas,.icl-detail,.icl-calendar,.icl-map-section,.icl-media,.icl-archive-2025,.icl-supporters{padding:64px 0}
  .icl-area-grid{grid-template-columns:1fr}.icl-area{min-height:275px;padding:25px}
  .icl-detail-visual,.icl-detail-poster{min-height:340px}.detail-event span{font-size:19px}
  .ator-list article{grid-template-columns:1fr;gap:7px}.ator-list time{font-size:23px}.ator-list h3{font-size:25px}
  .calendar-toolbar,.map-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.calendar-toolbar button,.map-filters button{white-space:nowrap}
  .calendar-event{grid-template-columns:60px 1fr;gap:14px}.cal-date{display:block}.cal-date b{font-size:34px}.cal-date span{display:block}.cal-time{grid-column:2;text-align:left}.cal-main h3{font-size:21px}
  .icl-map{height:420px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:250px}.gallery-wide{grid-column:auto;grid-row:span 1}.video-feature{grid-template-columns:1fr}.video-icon{width:48px;height:48px}.lightbox{padding:42px 16px 20px}
}

/* --- V6: contatti, privacy e preferenze cookie --- */
.contact-grid{align-items:start}
.contact-form-wrap{grid-column:1/-1;margin-top:56px;padding-top:42px;border-top:1px solid var(--line)}
.contact-form{max-width:920px;margin-top:22px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contact-form label{display:block;margin-bottom:20px}
.contact-form label>span{display:block;margin-bottom:8px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.55);color:var(--ink);font:inherit;padding:14px 15px;border-radius:0;outline:none;transition:border-color .2s,background .2s}
.contact-form textarea{resize:vertical;min-height:150px}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--ink);background:#fff}
.contact-form .form-check{display:flex;align-items:flex-start;gap:10px;margin:6px 0 24px}
.contact-form .form-check input{width:18px;height:18px;margin-top:1px;flex:0 0 auto}
.contact-form .form-check span{margin:0;text-transform:none;letter-spacing:0;font-size:14px;line-height:1.5}
.contact-form .form-check a{text-decoration:underline;text-underline-offset:3px}
.form-submit{cursor:pointer}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}

.legal-page{background:var(--paper)}
.legal-copy{max-width:900px;padding-top:90px;padding-bottom:110px}
.legal-copy h1{font-family:var(--serif);font-size:clamp(52px,7vw,92px);font-weight:400;line-height:.95;margin:18px 0 20px}
.legal-copy h2{font-family:var(--serif);font-size:32px;font-weight:400;margin:48px 0 12px}
.legal-copy p,.legal-copy li{font-size:17px;line-height:1.75;color:var(--text)}
.legal-copy ul{padding-left:24px}
.legal-copy a{text-decoration:underline;text-underline-offset:3px}
.legal-updated{font-size:13px!important;color:var(--muted)!important;margin-bottom:42px}
.form-result-main{min-height:62vh;display:grid;align-items:center;padding:80px 0}
.form-result-card{max-width:760px}
.form-result-card h1{font-family:var(--serif);font-size:clamp(46px,6vw,76px);font-weight:400;margin:18px 0}
.form-result-card p{font-size:18px;line-height:1.65}

.footer-cookie-link{appearance:none;border:0;background:none;padding:0;color:inherit;font:inherit;cursor:pointer;text-decoration:none}
.footer-cookie-link:hover{text-decoration:underline;text-underline-offset:4px}

.cookie-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:9998;background:#111;color:#fff;border:1px solid rgba(255,255,255,.18);box-shadow:0 20px 60px rgba(0,0,0,.28);padding:22px 24px;display:none}
.cookie-banner.open{display:block}
.cookie-banner-inner{max-width:1420px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center}
.cookie-banner p{margin:0;font-size:14px;line-height:1.55;color:#e8e8e8}
.cookie-banner a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.cookie-action{border:1px solid #fff;background:transparent;color:#fff;padding:11px 16px;font:inherit;font-size:13px;cursor:pointer}
.cookie-action.primary{background:#fff;color:#111}
.cookie-action:hover{opacity:.82}

.cookie-modal{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.56);display:none;padding:24px;overflow:auto}
.cookie-modal.open{display:grid;place-items:center}
.cookie-panel{width:min(680px,100%);background:var(--paper);color:var(--ink);padding:34px;box-shadow:0 20px 70px rgba(0,0,0,.3)}
.cookie-panel h2{font-family:var(--serif);font-size:38px;font-weight:400;margin:0 0 12px}
.cookie-panel>p{color:var(--text);line-height:1.6}
.cookie-option{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;padding:22px 0;border-top:1px solid var(--line)}
.cookie-option:last-of-type{border-bottom:1px solid var(--line)}
.cookie-option strong{display:block;font-size:16px;margin-bottom:5px}
.cookie-option small{display:block;color:var(--muted);line-height:1.5;max-width:470px}
.cookie-switch{width:22px;height:22px;accent-color:#111;margin-top:2px}
.cookie-required{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.cookie-panel-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:24px}
.cookie-panel .cookie-action{border-color:var(--ink);color:var(--ink)}
.cookie-panel .cookie-action.primary{background:var(--ink);color:var(--paper)}
.cookie-close{position:absolute;right:18px;top:14px}

@media(max-width:760px){
  .form-grid{grid-template-columns:1fr;gap:0}
  .contact-form-wrap{margin-top:38px;padding-top:30px}
  .legal-copy{padding-top:60px;padding-bottom:80px}
  .legal-copy h2{font-size:28px}
  .cookie-banner{left:10px;right:10px;bottom:10px;padding:18px}
  .cookie-banner-inner{grid-template-columns:1fr;gap:16px}
  .cookie-actions{justify-content:stretch}
  .cookie-action{flex:1 1 auto}
  .cookie-panel{padding:26px 20px}
  .cookie-panel h2{font-size:32px}
}
