/* Palestra letteraria Genova — identità editoriale pop. */
@font-face{font-family:'Cormorant Garamond';src:url('assets/fonts/CormorantGaramond-Roman-latin.woff') format('woff');font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('assets/fonts/CormorantGaramond-Italic-latin.woff') format('woff');font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:'Manrope';src:url('assets/fonts/Manrope-latin.woff') format('woff');font-weight:200 800;font-style:normal;font-display:swap}
:root{--paper:#fffcf5;--ink:#29383b;--orange:#ad3859;--pink:#e997ad;--yellow:#ffe58a;--turquoise:#a8d8ca;--muted:#455453;--line:#d7dfd8;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Manrope',Arial,sans-serif}
body{font-family:var(--sans);font-size:16px;font-weight:550;line-height:1.7}
h1,h2,h3{font-family:var(--serif);font-weight:700;letter-spacing:-1.6px}
h2{font-size:clamp(39px,4.25vw,62px);line-height:1.04}
h3{font-size:40px;line-height:1.05}
em{font-family:var(--serif);font-weight:700;font-style:italic}
.draft{background:var(--ink);color:var(--paper);font-size:10px;font-weight:700;letter-spacing:1.1px}
.draft span{color:#d5e5df}
.header{min-height:116px;border:0}
.brand{font-family:var(--serif);font-size:27px;font-weight:700;letter-spacing:-.8px;line-height:.84;gap:18px}
.brand em{color:inherit}
.brand-mark{font-family:var(--serif);font-size:70px;font-weight:700;font-style:italic;letter-spacing:-12px;width:48px;color:var(--ink);padding-right:7px}
.brand-mark>span{font-family:var(--sans);font-size:17px;letter-spacing:0;top:0;right:-7px;color:var(--orange)}
.brand-place{font-family:var(--sans);font-size:10px;letter-spacing:3px;font-weight:700;margin-top:11px}
.header nav a{font-family:var(--sans);font-size:14px;font-weight:700}
.header nav a[aria-current]:after{height:5px;bottom:2px;background:var(--yellow);border-radius:55% 35% 45% 30%;transform:rotate(-1.5deg)}
.eyebrow{font-family:var(--sans);font-weight:750;font-size:11px;letter-spacing:1.8px}
.hero-shell{background:var(--turquoise);overflow:hidden}
.hero{grid-template-columns:1fr 1fr;gap:40px;padding-top:32px;padding-bottom:37px;min-height:740px}
.hero-copy{position:relative;z-index:1}
.hero .eyebrow{font-size:11px;margin-bottom:26px}
.hero h1{font-family:var(--serif);font-size:clamp(88px,8.8vw,132px);font-weight:700;line-height:.9;letter-spacing:-4px;color:var(--ink);margin-bottom:0}
.hero h1 em{color:var(--orange);font-weight:700}
.hero-city{display:block;font-family:var(--sans);font-weight:750;font-size:14px;line-height:1.5;letter-spacing:5.5px;text-transform:uppercase;margin-top:27px}
.hero-subtitle{position:relative;isolation:isolate;display:inline-block;max-width:100%;padding:.15em .3em;font-family:var(--sans);font-size:20px;font-weight:700;letter-spacing:.15px;line-height:1.6;margin-top:18px;margin-bottom:22px}
.hero-byline{font-family:var(--sans);font-size:16px;font-weight:550;line-height:1.8;margin-bottom:18px}
.hero-byline strong{font-weight:750}
.hero-description{font-size:16px;line-height:1.95;max-width:415px;color:var(--ink);margin-bottom:25px}
.hero-art{margin:0;transform:none;text-align:center;align-self:center}
.hero-illustration{display:block;width:100%;height:auto;max-height:635px;object-fit:contain;margin:auto}
.art-note{display:block;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:2.8px;margin-top:13px;transform:none;color:var(--ink)}
.button{background:var(--ink);border-color:var(--ink);color:var(--paper);font-size:14px;font-weight:700;letter-spacing:.2px;padding:17px 22px;gap:26px}
.button:hover{background:var(--orange);border-color:var(--orange)}
.text-link{font-size:14px;font-weight:700;border-bottom:1px solid currentColor}
.hero-actions{gap:27px}
.ribbon{background:var(--pink);color:var(--ink);padding:20px 0}
.ribbon .wrap{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:2.3px}
.ribbon .wrap span:nth-child(even){font-size:20px;color:var(--ink)}
.project-intro>.eyebrow,.coming .eyebrow,.page-heading .eyebrow,.margin-note,.profile-card .eyebrow,.venue-facts .eyebrow{color:var(--orange)}
.project-intro>div>p{font-size:16px;line-height:1.95}
.people-section{background:#f7e7e7}
.people-list{border-color:#dac5c7}
.person-row{border-color:#dac5c7;padding:34px 0}
.person-number{font-family:var(--sans);font-size:12px;font-weight:700;color:var(--orange)}
.person-row h3{font-family:var(--serif);font-size:51px;font-weight:700;line-height:.95;letter-spacing:-1.8px}
.person-row h3 em{color:var(--orange);font-style:italic}
.person-detail{font-size:14px;font-weight:700;line-height:1.9}
.person-detail>span{font-size:13px;font-weight:550}
.round-arrow{border-color:var(--orange);color:var(--orange);font-weight:300}
.person-row:hover .round-arrow{background:var(--orange);color:var(--paper)}
.article-graphic.mood-graphic{display:flex;align-items:center;justify-content:center;background:#f5ead8;padding:18px;min-height:330px;overflow:hidden}
.mood-graphic img{display:block;width:100%;height:auto;object-fit:contain;max-height:365px}
.article-graphic:after{display:none}
.article-feature h3{font-family:var(--serif);font-size:48px;font-weight:700;line-height:1.06;letter-spacing:-1.6px}
.article-feature>div>p:not(.eyebrow){font-size:16px;line-height:1.95}
.venue-band{background:var(--ink);color:var(--paper)}
.venue-band em{color:var(--turquoise)}
.venue-band p:not(.eyebrow){color:#edf2e9;font-size:16px}
.button-light{background:var(--turquoise);color:var(--ink);border-color:var(--turquoise)}
.venue-placeholder{border-color:#94a9a0;background:linear-gradient(145deg,#ffffff05,transparent)}
.venue-placeholder p{font-family:var(--serif);font-weight:700;font-size:43px!important;line-height:1!important;letter-spacing:-1.1px}
.venue-placeholder>span:last-child{font-size:11px;color:#e4e9df}
.picture-corners{color:var(--pink)}
.coming h2{font-family:var(--serif);font-size:63px;font-weight:700;line-height:1.02}
.coming>p:not(.eyebrow){font-size:16px}
.footer-name{font-family:var(--serif);font-size:37px;font-weight:700;line-height:.98;letter-spacing:-1.1px;color:var(--orange)}
.footer-grid .eyebrow{font-size:11px;letter-spacing:1.4px}
.footer-grid p:not(.eyebrow){font-size:14px;line-height:1.95}
.footer-grid>div>a{font-size:14px}
.footer-bottom{font-family:var(--sans);font-size:11px;letter-spacing:.3px}
.page-heading{padding-block:68px 60px}
.page-heading h1{font-family:var(--serif);font-size:clamp(65px,6.7vw,99px);font-weight:700;line-height:.96;letter-spacing:-2.8px}
.intro{font-size:17px;line-height:1.95}
.margin-note{font-size:11px;font-weight:700}
.margin-note>span{font-family:var(--sans);font-size:13px;font-weight:550;line-height:1.9}
.prose p{font-family:var(--sans);font-size:16px;line-height:2}
.prose p.lead{font-family:var(--serif);font-size:29px;font-weight:700;line-height:1.35;letter-spacing:-.3px;color:var(--ink)}
.prose h2{font-family:var(--serif);font-size:44px;font-weight:700;line-height:1.05;letter-spacing:-1.2px}
.prose blockquote{font-family:var(--serif);font-weight:700;font-style:italic;font-size:40px;line-height:1.13;letter-spacing:-1px}
.portrait-placeholder{background:#f7e7e7}
.portrait-second{background:var(--turquoise)}
.portrait-placeholder:before{border:1px solid #a8897e88;border-radius:50%;width:64%;aspect-ratio:1;transform:none}
.portrait-placeholder>span{font-family:var(--serif);font-size:122px;font-style:italic;font-weight:700;letter-spacing:-7px;color:var(--orange);opacity:1}
.portrait-placeholder>small{font-family:var(--sans);font-size:11px;letter-spacing:2px}
.profile-card h2{font-family:var(--serif);font-size:42px;font-weight:700}
.profile-card>p:not(.eyebrow){font-size:16px;line-height:1.95}
.pending-note{border-left:2px solid var(--orange);background:#f7e7e7}
.pending-note p{font-size:16px}
.schedule-art{background:var(--turquoise)}
.schedule-art>span:first-child{font-family:var(--serif);font-size:56px;font-weight:700;line-height:1;letter-spacing:-1.8px}
.schedule-art>span:last-child{color:var(--orange)}
.venue-photo-large{background:var(--turquoise);border:0}
.venue-photo-large:after{border:1px solid #ad385933;border-radius:50%;transform:none}
.venue-photo-large p:not(.eyebrow){font-family:var(--serif);font-size:72px;font-weight:700;line-height:.98;letter-spacing:-2px}
.venue-photo-large>span:last-child{font-size:12px;color:var(--ink)}
.venue-facts h3{font-family:var(--serif);font-size:34px;font-weight:700}
@media(min-width:1500px){.hero{padding-block:45px}.hero h1{font-size:140px}.hero-illustration{max-height:690px}}
@media(max-width:1000px){
 .header nav{gap:18px}.header nav a{font-size:13px}.brand{font-size:25px}.hero{gap:25px;min-height:620px;padding-block:35px}.hero h1{font-size:94px;letter-spacing:-3px}.hero .eyebrow{font-size:11px}.hero-subtitle{font-size:18px}.hero-description{font-size:16px}.hero-actions{gap:20px}.hero-art{margin:0}.hero-illustration{max-height:595px}.person-row h3{font-size:46px}.article-feature h3{font-size:42px}.venue-inner h2{font-size:45px}.schedule-art>span:first-child{font-size:48px}
}
@media(max-width:760px){
 .wrap{width:calc(100% - 40px)}.draft{font-size:10px;line-height:1.6;padding-block:8px;letter-spacing:.7px}.draft span{font-size:10px;letter-spacing:.6px}.header{min-height:101px}.brand{font-size:25px;gap:15px}.brand-mark{font-size:62px;width:43px}.brand-mark>span{font-size:15px;right:-4px}.brand-place{font-size:10px;margin-top:10px}.menu-toggle{font-family:var(--sans);font-size:13px;font-weight:700;border-color:#d7dfd8;padding:10px 12px}.header nav{background:var(--paper)}.header nav a{font-size:16px;padding-block:15px}
 .hero{grid-template-columns:1fr;min-height:0;gap:0;padding-top:32px;padding-bottom:26px}.hero .eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:27px}.hero h1{font-size:clamp(76px,22vw,125px);line-height:.9;letter-spacing:-2.7px}.hero-city{font-size:13px;letter-spacing:5px;line-height:1.6;margin-top:24px}.hero-subtitle{font-size:18px;letter-spacing:0;line-height:1.7;margin-top:16px;margin-bottom:19px}.hero-byline{font-size:16px;margin-bottom:15px}.hero-description{font-size:16px;max-width:490px;margin-bottom:21px}.hero-actions{gap:23px}.hero-actions .button{font-size:13px;padding:16px 18px;gap:24px}.hero-actions .text-link{font-size:13px}.hero-art{width:min(100%,410px);max-width:none;margin:28px auto 0}.hero-illustration{max-height:none;width:100%;height:auto}.art-note{font-size:10px;letter-spacing:2.3px;margin-top:12px}
 .ribbon{padding-block:17px}.ribbon .wrap{font-size:10px;letter-spacing:1.1px;gap:8px}.ribbon .wrap span:nth-child(even){font-size:15px}.eyebrow{font-size:10px;letter-spacing:1.5px}.section{padding-block:49px}h2{font-size:42px;line-height:1.04;letter-spacing:-1.5px}.project-intro>div>p{font-size:16px;line-height:2}.text-link{font-size:14px}.person-row{padding-block:26px}.person-row h3{font-size:45px}.person-detail{font-size:13px}.person-detail>span{font-size:12px}.person-row .round-arrow{width:32px;height:32px}.person-number{font-size:11px}.section-top>.text-link{margin-top:17px}
 .article-graphic.mood-graphic{min-height:240px;padding:12px}.mood-graphic img{max-height:300px}.article-feature h3{font-size:44px;letter-spacing:-1.2px}.article-feature>div>p:not(.eyebrow){font-size:16px}.venue-inner h2{font-size:43px}.venue-placeholder p{font-size:43px!important}.venue-band p:not(.eyebrow){font-size:16px}.coming h2{font-size:47px}.coming>p:not(.eyebrow){font-size:16px}.footer-name{font-size:36px}.footer-grid .eyebrow{font-size:10px;letter-spacing:1px}.footer-grid p:not(.eyebrow){font-size:14px}.footer-grid>div>a{font-size:13px}.footer-bottom{font-size:10px}
 .page-heading{padding-block:40px 37px}.page-heading h1{font-size:clamp(52px,13vw,78px);line-height:.97;letter-spacing:-1.6px}.intro{font-size:16px;line-height:1.95}.prose p{font-size:16px;line-height:2}.prose p.lead{font-size:27px;line-height:1.35;letter-spacing:-.2px}.prose h2{font-size:40px;letter-spacing:-1px;line-height:1.04}.prose blockquote{font-size:35px;line-height:1.13}.pending-note p{font-size:16px}.profile-card h2{font-size:39px}.portrait-placeholder>span{font-size:115px;letter-spacing:-6px}.profile-card>p:not(.eyebrow){font-size:16px}.schedule-art>span:first-child{font-size:52px}.venue-photo-large p:not(.eyebrow){font-size:58px;letter-spacing:-1.7px}.venue-facts h3{font-size:32px}
}

/* Stronger reading contrast and drawn accents, shared across every page. */
.prose p,.project-intro>div>p,.profile-card>p:not(.eyebrow),.article-feature>div>p:not(.eyebrow),.coming>p:not(.eyebrow),.intro,.journal-note>p,.venue-facts p:not(.eyebrow){font-weight:550;color:var(--muted)}
.journal-note>p,.venue-facts p:not(.eyebrow){font-size:16px;line-height:1.9}
.prose strong,.pending-note strong{font-weight:800}
h1 em,h2 em,h3 em{background-image:linear-gradient(178deg,transparent 0 74%,var(--yellow)75%91%,transparent 92%);background-repeat:no-repeat;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-inline:.025em}
.hero-subtitle:before{content:'';position:absolute;z-index:-1;inset:.05em -.15em .03em;background:var(--yellow);clip-path:polygon(0 18%,97%0,100%80%,3%100%,1%82%);transform:rotate(-1deg)}
.text-link{border-bottom:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 9' preserveAspectRatio='none'%3E%3Cpath d='M2 5Q40 2 85 5T198 3M8 8Q91 5 188 7' fill='none' stroke='%23dfb82d' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-size:100% 7px;background-position:0 100%;background-repeat:no-repeat;padding-bottom:10px}
.venue-band h2 em{background-image:linear-gradient(178deg,transparent 0 84%,#ffe58a80 85%94%,transparent 95%)}
.venue-band p:not(.eyebrow){font-weight:550;color:#edf2e9}
@media(max-width:1000px) and (min-width:761px){.header nav{gap:15px}.hero-actions{gap:20px;flex-wrap:wrap}.hero{min-height:720px}}
@media(max-width:760px){
 .hero-actions{flex-wrap:wrap;gap:18px}.hero-actions .button{padding:16px 18px;gap:16px}
 .ribbon .wrap{flex-wrap:wrap;justify-content:center;gap:8px 15px;line-height:1.7;text-align:center}
 .ribbon .wrap span:nth-child(even){font-size:15px}.ribbon .wrap span:last-child{flex-basis:100%}
 .person-detail>span{display:block;margin-left:0}.footer-grid{grid-template-columns:1fr;gap:26px}.footer-name{grid-column:auto}
 .footer-bottom{font-size:10px;line-height:1.8}.venue-photo-large>span:last-child{font-size:12px;max-width:260px;line-height:1.8}
 .hero-subtitle{margin-left:.1em}.hero h1 em{background-size:100% 100%}
 .journal-note>p,.venue-facts p:not(.eyebrow){font-size:16px}
 .venue-facts .eyebrow{font-size:10px}
}

.real-portrait{margin:0;position:sticky;top:25px}.real-portrait img{width:100%;max-height:650px;object-fit:cover;display:block}.real-portrait figcaption,.gym-photo figcaption{font-size:11px;line-height:1.7;margin-top:12px}.real-card:before{display:none}.real-card img{width:100%;height:100%;object-fit:cover}.gym-photo{margin:0 0 45px}.gym-photo img{width:100%;max-height:720px;object-fit:cover;object-position:center 60%;display:block}.gym-home-photo img{width:100%;max-height:400px;object-fit:cover;display:block}.gym-home-photo span{font-size:11px;display:block;margin-top:14px}.bio-sources{margin-top:45px;border-top:1px solid var(--line);padding-top:20px}@media(max-width:760px){.real-portrait{position:static}.real-portrait img{max-height:520px}.gym-photo img{max-height:520px}.bio-grid{gap:35px}.prose{min-width:0}}
