@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--blue:#183490;--ink:#162750;--paper:#f9f9f6;--orange:#e45427;--line:#cbd1e0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:17px;line-height:1.55}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.draft{padding:7px 5%;background:#e7ebf8;font-size:12px;text-align:center;letter-spacing:.09em}header{padding:27px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:18px;line-height:1.03;letter-spacing:.08em}.brand span{letter-spacing:.3em}nav{display:flex;gap:35px;font-size:15px}.edition,.eyebrow{font-size:13px;font-weight:600;letter-spacing:.13em}.hero{background:var(--blue);color:white;padding:48px 5% 52px;position:relative;overflow:hidden}.hero .eyebrow{color:#d0daf9}.hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(76px,15.3vw,242px);line-height:.87;letter-spacing:-.055em;margin:40px 0 38px}.hero h1 span{display:block;font-family:Manrope,Arial,sans-serif;font-size:clamp(24px,4.28vw,68px);font-weight:500;letter-spacing:.12em;margin-top:28px;line-height:1.1}.hero-bottom{padding-top:35px;border-top:1px solid #ffffff55;display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.hero-bottom p{font-family:Georgia,serif;font-size:26px;line-height:1.2;margin:0}.hero-dates{font-family:Manrope,Arial,sans-serif;font-size:32px;font-weight:700;line-height:1.4}.hero-dates span{font-size:14px;display:block;letter-spacing:.2em;font-weight:500}.button{display:inline-block;padding:15px 25px;background:var(--orange);color:white;border:0;font-size:15px;font-weight:600}.section{padding:80px 5%}.section h2{font-family:Georgia,serif;font-size:50px;font-weight:400;line-height:1.1;margin:16px 0 35px}.intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;max-width:950px}.intro-grid p{margin:0 0 35px}.intro-grid p:first-child{font-size:26px;line-height:1.4}.preview-program p{border-top:1px solid var(--line);padding:22px 0;margin:0}.preview-program b{display:inline-block;min-width:150px}.info{background:#e7ebf8}.info a{text-decoration:underline}footer{padding:30px 5%;font-size:13px;letter-spacing:.05em}@media(max-width:700px){header{padding:20px 6%}.edition{display:none}nav{gap:18px;font-size:14px}.hero{padding:38px 6%}.hero h1{font-size:16.5vw;margin-top:36px}.hero h1 span{font-size:4.45vw;margin-top:20px}.hero-bottom{display:grid;gap:25px;padding-top:25px}.hero-bottom p{font-size:24px}.hero-dates{font-size:31px}.hero-bottom .button{justify-self:start}.section{padding:50px 6%}.section h2{font-size:38px}.intro-grid{display:block}.preview-program b{display:block}.draft{font-size:11px}.intro-grid p:first-child{font-size:22px}}

.photo-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink)}.photo-strip figure{margin:0;position:relative;overflow:hidden}.photo-strip img{width:100%;height:310px;display:block;object-fit:cover}.photo-strip figcaption{padding:15px 24px 20px;color:white;font-size:23px;line-height:1.3;border-right:1px solid #ffffff33}.photo-strip figcaption span{display:block;font-size:12px;letter-spacing:.12em;margin-bottom:5px;color:#c5d0ed}.section-head{max-width:850px}.concert-list{margin-top:28px}.concert{border-top:1px solid var(--line);padding:42px 0;display:grid;grid-template-columns:190px 1fr;gap:55px}.day{color:var(--blue);line-height:1.1}.day span{display:block;font-size:13px;letter-spacing:.12em}.day strong{display:block;font-family:Georgia,serif;font-size:108px;font-weight:400;letter-spacing:-.07em;margin:5px 0 10px}.concert-main{max-width:850px}.event-meta{color:var(--blue);font-size:13px;letter-spacing:.05em;font-weight:600;line-height:1.7}.concert h3{font-family:Georgia,serif;font-size:40px;line-height:1.12;letter-spacing:-.02em;font-weight:400;margin:15px 0 20px}.concert p{max-width:650px;margin:15px 0}.event-type{font-size:22px}.muted{color:#626d84}.opening{border-left:3px solid var(--orange);padding-left:15px}.concert details{margin-top:28px;border-top:1px solid var(--line);max-width:650px}summary{cursor:pointer;list-style:none;position:relative;font-size:15px;font-weight:600;padding:18px 30px 18px 0}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:3px;font-size:23px;top:10px;font-weight:400}details[open]>summary:after{content:'−'}.detail-body{font-size:15px;padding-bottom:10px}.detail-body p{margin:10px 0 20px}.detail-body a{text-decoration:underline;text-underline-offset:3px}.encounters{background:var(--blue);color:white}.encounter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.encounter-grid article{border-top:1px solid #ffffff55;padding-top:25px}.small-index{font-size:12px;letter-spacing:.12em;color:#c5d0ed}.encounter-grid h3{font-family:Georgia,serif;font-size:29px;font-weight:400;line-height:1.2}.encounter-grid .event-meta{color:#d9e1ff;margin-top:30px;font-size:12px}.info{display:grid;grid-template-columns:1fr 1fr;gap:70px}.info .button{text-decoration:none}.info-list>div{border-top:1px solid #b9c2dd;padding:15px 0}.info-list h3{font-size:17px;margin:0}.info-list p{font-size:16px;margin:10px 0}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:30px;border-bottom:1px solid var(--line)}.footer-top p{font-size:13px;line-height:1.7}.footer-top>a:last-child{font-size:14px;text-decoration:underline;text-underline-offset:4px}.credits{max-width:950px;margin-top:15px}.credits summary{font-weight:400;font-size:13px}.credits .detail-body{font-size:13px;line-height:1.6}.footer-note{font-size:11px;color:#626d84;letter-spacing:.12em}.duo-picture{max-width:520px;margin:28px 0 0}.duo-picture img{width:100%;display:block;height:auto}.duo-picture figcaption{font-size:13px;margin-top:8px;color:#626d84}@media(min-width:1400px){.section{padding-left:10%;padding-right:10%}}@media(max-width:700px){.photo-strip{grid-template-columns:repeat(3,1fr)}.photo-strip img{height:160px}.photo-strip figcaption{font-size:16px;padding:11px 10px 15px;min-height:84px}.photo-strip figcaption span{font-size:10px;letter-spacing:.06em}.concert{grid-template-columns:70px 1fr;gap:20px;padding:30px 0}.day strong{font-size:65px}.day span{font-size:10px;letter-spacing:.04em}.concert h3{font-size:28px}.event-meta{font-size:11px}.concert p{font-size:16px}.desktop{display:none}.encounter-grid{grid-template-columns:1fr;gap:20px;margin-top:30px}.encounter-grid h3{margin:15px 0}.encounter-grid .event-meta{margin-top:18px}.info{grid-template-columns:1fr;gap:35px}.footer-top{align-items:flex-start;flex-direction:column;gap:15px}summary{font-size:14px}.detail-body{font-size:14px}.hero .eyebrow{font-size:11px;letter-spacing:.08em}}
.hero-dates{white-space:nowrap}.hero-bottom .button{white-space:nowrap}@media(min-width:701px) and (max-width:1100px){.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:24px}.hero-bottom .button{grid-column:1/-1;justify-self:start}.hero-bottom p{font-size:24px}.hero-dates{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.draft,nav,.button,.credits{display:none}.hero{color:#183490;background:white}.hero .eyebrow{color:#183490}.photo-strip img{height:180px}.section{padding:25px 0}.concert{break-inside:avoid}details .detail-body{display:block}.encounters{background:white;color:#183490}a{text-decoration:none}}

/* Combined Chitarra Sicilia / Musica e Arte mark. Only outer whitespace is clipped. */
header{background:#fff;padding-top:12px;padding-bottom:12px}
.brand{display:inline-flex;align-items:center;flex-shrink:0}
.brand .brand-combined{display:block;width:160px;aspect-ratio:1330/675;overflow:hidden;position:relative;background:#fff;letter-spacing:normal}
.brand-combined img{display:block;position:absolute;width:142.0301%;height:auto;max-width:none;left:-18.797%;top:-9.6296%}
footer{background:#fff}
@media(max-width:700px){header{padding-top:10px;padding-bottom:10px}.brand .brand-combined{width:142px}nav{gap:14px;font-size:13px}}
@media(max-width:360px){header{flex-wrap:wrap;gap:12px}nav{width:100%;justify-content:space-between}}

.info-list .phone-contact{font-size:1rem;font-weight:500;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}

/* Venue directions */
.directions{border-bottom:1px solid var(--line)}
.directions .section-head>p{max-width:750px;margin:0 0 36px;font-size:18px}
.venue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.venue{display:flex;flex-direction:column;padding:32px;border:1px solid var(--line);background:#fff;min-width:0}
.venue-label{color:var(--blue);font-size:12px;font-weight:600;letter-spacing:.12em}
.venue h3{font-family:Georgia,serif;font-size:32px;font-weight:400;line-height:1.2;min-height:77px;margin:20px 0}
.venue h3 span{font-size:26px}
.venue address{font-style:normal;font-size:17px;line-height:1.6}
.venue>p{font-size:16px;color:#626d84;margin:22px 0 28px}
.venue .button{align-self:flex-start;margin-top:auto;background:var(--blue)}
.arrival-help{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);margin-top:36px;padding-top:25px}
.arrival-help p{margin:0;font-size:16px}
.arrival-help>a{font-size:1rem;font-weight:500;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
@media(max-width:700px){.venue-grid{grid-template-columns:1fr;gap:18px}.venue{padding:25px}.venue h3{font-size:29px;min-height:0}.venue h3 span{font-size:25px}.directions .section-head>p{font-size:17px}.arrival-help{align-items:flex-start;flex-direction:column;gap:12px}}

/* The four opening photographs and portraits for each concert date. */
.photo-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
.photo-strip img{height:clamp(180px,21vw,310px)}
.photo-strip figcaption{font-size:clamp(17px,1.7vw,24px);padding:16px 20px 20px;min-height:103px}
.photo-strip figcaption span{font-size:12px;letter-spacing:.07em}
.concert-main{min-width:0;width:100%}
.artist-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:30px 0}
.artist-photo{margin:0;min-width:0}
.artist-frame{position:relative;overflow:hidden;aspect-ratio:4/3;background:var(--ink)}
.artist-frame img{display:block;width:100%;height:100%;object-fit:cover}
.artist-photo figcaption{padding-top:12px;font-size:17px;font-weight:600;line-height:1.4}
.artist-photo figcaption span{display:block;font-size:14px;font-weight:400;color:#626d84;margin-top:3px}
.ensemble-gallery{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.ensemble-gallery .artist-frame{aspect-ratio:3/4}
.half-photo img{position:absolute;left:0;top:0;width:200%;max-width:none;height:100%;object-fit:cover}
.solo-gallery{grid-template-columns:1fr;max-width:680px}
.solo-gallery .artist-frame{aspect-ratio:4/3}
.closing-gallery{grid-template-columns:1fr;max-width:680px}
.closing-gallery .artist-frame{aspect-ratio:3/2}
@media(min-width:1250px){.closing-gallery{grid-template-columns:1fr 1fr;max-width:none}.closing-gallery .artist-frame{aspect-ratio:4/3}}
@media(max-width:900px){.concert{grid-template-columns:100px minmax(0,1fr);gap:28px}.day strong{font-size:88px}}
@media(max-width:700px){.photo-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-strip img{height:clamp(175px,49vw,265px)}.photo-strip figcaption{padding:12px 14px 16px;font-size:18px;min-height:104px}.photo-strip figcaption span{font-size:12px;letter-spacing:.03em}.concert{grid-template-columns:1fr;gap:22px}.day{display:flex;align-items:baseline;gap:10px}.day strong{font-size:58px;margin:0;letter-spacing:-.04em}.day span{font-size:13px;letter-spacing:.07em}.artist-gallery{gap:18px;margin:25px 0}.ensemble-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.artist-photo figcaption{font-size:16px}.artist-photo figcaption span{font-size:13px}.solo-gallery .artist-frame{aspect-ratio:1/1}}

.lutherie-photo{margin:24px 0 0}
.lutherie-photo img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;display:block}
.lutherie-photo figcaption{font-size:12px;line-height:1.6;color:#d9e1ff;margin-top:10px}
.lutherie-photo figcaption a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:701px) and (max-width:1100px){.encounter-grid{grid-template-columns:1fr;gap:28px}.encounter-grid article:has(.lutherie-photo){display:grid;grid-template-columns:1fr 1fr;column-gap:35px}.encounter-grid .small-index{grid-column:1/-1}.encounter-grid h3{grid-column:1;margin:15px 0}.encounter-grid article>p{grid-column:1;margin:0 0 16px}.encounter-grid .event-meta{grid-column:1;margin-top:15px}.lutherie-photo{grid-column:2;grid-row:2/5;margin:15px 0 0}}

.amato-photo img{width:365.714%;height:auto;left:-60%;top:-50.357%}

/* One shared date for the two artists performing on 24 October. */
.photo-strip>figure{display:flex;flex-direction:column}
.photo-strip>figure>figcaption{display:flex;flex:1;flex-direction:column;justify-content:space-between;gap:15px}
.photo-strip>figure>figcaption>span{margin:0}
.photo-date-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column:span 2;min-width:0}
.photo-date-group>figure{display:flex;flex-direction:column;min-width:0}
.photo-date-group figcaption{flex:1;min-height:76px;padding-bottom:12px}
.shared-photo-date{grid-column:1/-1;text-align:center;margin:0;padding:0 20px 20px;font-size:12px;line-height:1.3;letter-spacing:.07em;color:#c5d0ed}
@media(max-width:700px){.photo-date-group figcaption{min-height:76px}.shared-photo-date{padding-bottom:16px;letter-spacing:.03em}}

.ensemble-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:1250px){.ensemble-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* User-supplied full portrait of the opening recital artist. */
.opening-gallery{grid-template-columns:1fr;max-width:320px}
.opening-gallery .artist-frame{aspect-ratio:3/4}
.encounter-grid a[href^="tel:"],.concert details a[href^="tel:"]{font-size:.9375rem}
