.primary-nav [aria-current="page"] { color:var(--orange-dark); text-decoration:none; }
.interior-main { min-height:60vh; }
.page-intro { max-width:950px; padding-block:78px 64px; text-align:center; }
.page-intro h1 { margin:0; font-size:calc(clamp(52px,7vw,88px) - 2px); line-height:1.1; }
.page-intro>p { max-width:700px; margin:24px auto 0; font-size:clamp(18px,2vw,22px); line-height:1.52; }
.page-divider { display:block; width:min(540px,70vw); margin:0 auto 58px; opacity:.55; }
.section-title { margin:0 0 28px; font-size:calc(clamp(38px,5vw,58px) - 2px); line-height:1.12; }
.section-note { max-width:670px; margin:0 0 34px; font-size:18px; }
.label { margin:0 0 12px; color:var(--orange-dark); font-family:'TC Volume Sans',sans-serif; font-size:10px; letter-spacing:.16em; text-transform:uppercase; }
.catalog-feature { margin-bottom:88px; padding:55px; display:grid; grid-template-columns:minmax(200px,.8fr) minmax(0,1.2fr); align-items:center; gap:clamp(35px,6vw,90px); background:var(--surface); border:1px solid var(--line); }
.catalog-feature img { display:block; width:min(100%,320px); margin:auto; box-shadow:15px 20px 35px rgba(38,31,25,.16); }
.catalog-feature h2 { margin:0 0 12px; font-size:calc(clamp(38px,5vw,58px) - 2px); line-height:1.1; }
.catalog-feature p:not(.label) { max-width:580px; margin:0 0 25px; font-size:19px; }
.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:50px 26px; }
.catalog-card { display:flex; flex-direction:column; min-width:0; }
.catalog-card .art { display:block; overflow:hidden; background:var(--surface); border:1px solid var(--line); }
.catalog-card .art img { display:block; width:100%; aspect-ratio:683/1024; object-fit:contain; object-position:center; transition:transform 200ms ease; }
.catalog-card:hover .art img { transform:scale(1.025); }
.catalog-card h3 { margin:17px 0 8px; font-size:calc(clamp(27px,2.8vw,33px) - 2px); line-height:1.14; }
.catalog-card .catalog-status { margin:17px 0 -8px; color:#b3261e; font-family:'TC Volume Sans',sans-serif; font-size:12px; font-weight:700; letter-spacing:.07em; }
:root[data-theme='dark'] .catalog-card .catalog-status { color:#ff8378; }
.catalog-card p:not(.label):not(.catalog-status) { margin:0 0 16px; font-size:16px; line-height:1.48; }
.catalog-card .label { margin:18px 0 0; }
.catalog-card .catalog-button { align-self:flex-start; margin-top:auto; }
.catalog-section { padding-bottom:105px; }
.music-intro { padding:0 0 60px; text-align:center; }
.music-intro h2 { margin:0 0 17px; font-size:calc(clamp(35px,4vw,50px) - 2px); line-height:1.12; }
.music-intro p { max-width:760px; margin:0 auto; font-size:18px; }
.music-grid .art img { aspect-ratio:1/1; object-fit:cover; }
.music-grid h3 { margin-bottom:6px; }
.gallery-grid { padding-bottom:110px; columns:3 290px; column-gap:28px; }
.gallery-card { position:relative; display:block; margin:0 0 28px; overflow:hidden; break-inside:avoid; border:1px solid var(--line); background:var(--surface); box-shadow:0 16px 34px rgba(38,31,25,.12); text-decoration:none; }
.gallery-card figure { position:relative; margin:0; }
.gallery-card img { display:block; width:100%; height:auto; transition:transform 220ms ease; }
.gallery-card figcaption { position:absolute; inset:auto 0 0; padding:46px 18px 16px; background:linear-gradient(transparent,rgba(24,18,14,.88)); color:#fff8eb; font-family:'TC Volume Sans',sans-serif; font-size:14px; letter-spacing:.04em; line-height:1.35; opacity:0; transform:translateY(8px); transition:opacity 180ms ease,transform 180ms ease; }
.gallery-card:hover img,.gallery-card:focus-visible img { transform:scale(1.02); }
.gallery-card:hover figcaption,.gallery-card:focus-visible figcaption { opacity:1; transform:none; }
.profiles { padding-bottom:100px; }
.profile { margin-bottom:55px; display:grid; grid-template-columns:1fr 1fr; background:var(--surface); border:1px solid var(--line); }
.profile:nth-child(even) img { order:2; }
.profile img { display:block; width:100%; height:100%; min-height:350px; object-fit:cover; }
.profile-copy { padding:clamp(30px,5vw,70px); display:flex; flex-direction:column; justify-content:center; }
.profile h2 { margin:0 0 15px; font-size:calc(clamp(43px,5vw,62px) - 2px); line-height:1.12; }
.profile p { margin:0; font-size:19px; }
.author-layout { padding-bottom:100px; display:grid; grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr); gap:clamp(40px,7vw,100px); align-items:start; }
.author-photo { margin:0; }
.author-photo img { display:block; width:100%; border-radius:3px; box-shadow:14px 18px 35px rgba(38,31,25,.13); }
.author-story { font-size:19px; line-height:1.6; }
.author-story p { margin:0 0 1.2em; }
.author-story p:first-child::first-letter { float:left; padding:7px 8px 0 0; color:var(--orange); font-family:'Libre Baskerville',Baskerville,Georgia,serif; font-style:italic; font-size:3.3em; line-height:.72; }
.author-signature { color:var(--orange-dark); font-family:'Libre Baskerville',Baskerville,Georgia,serif; font-size:30px; font-style:italic; }
.interior-end { margin-bottom:100px; padding:55px 30px; background:var(--surface); border-block:1px solid var(--line); text-align:center; }
.interior-end h2 { margin:0 0 12px; font-size:calc(clamp(35px,4vw,52px) - 2px); line-height:1.12; }
.interior-end p { max-width:590px; margin:0 auto 23px; font-size:18px; }
.subscribe-layout { padding-bottom:110px; display:grid; grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr); align-items:start; gap:clamp(40px,7vw,100px); }
.subscribe-cover img { display:block; width:min(100%,420px); margin-inline:auto; box-shadow:14px 18px 35px rgba(38,31,25,.13); }
.subscribe-panel { padding:clamp(28px,4vw,50px); background:var(--surface); border:1px solid var(--line); }
.subscribe-panel h2 { margin:0 0 18px; font-size:calc(clamp(38px,4vw,55px) - 2px); line-height:1.12; }
.subscribe-panel p { margin:0 0 20px; font-size:18px; }
.subscribe-form-slot iframe { display:block; width:100%; border:0; background:#ccc; }
.subscribe-panel .form-fallback { margin:12px 0 0; color:var(--muted); font-size:13px; }
.form-fallback a { color:var(--orange-dark); text-decoration:underline; text-underline-offset:3px; }
@media(max-width:960px) { .gallery-grid { columns:2 280px; } }
@media(max-width:860px) { .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .catalog-feature,.author-layout { gap:35px; } }
@media(max-width:650px) { .page-intro { padding-block:55px 45px; } .page-divider { margin-bottom:45px; } .catalog-feature { padding:35px 24px; grid-template-columns:1fr; text-align:center; } .catalog-feature img { max-width:245px; } .catalog-feature p:not(.label) { margin-inline:auto; } .catalog-grid { grid-template-columns:1fr; max-width:380px; margin-inline:auto; } .catalog-card h3 { font-size:29px; } .gallery-grid { max-width:430px; columns:1; padding-bottom:80px; } .gallery-card { margin-bottom:24px; } .profile,.author-layout,.subscribe-layout { grid-template-columns:1fr; } .profile:nth-child(even) img { order:0; } .profile img { min-height:0; aspect-ratio:3/2; } .profile-copy { padding:30px 25px 40px; } .author-photo { max-width:370px; margin-inline:auto; } .subscribe-panel { order:-1; } .subscribe-cover { max-width:270px; margin-inline:auto; } .interior-end { margin-bottom:70px; } }
@media(hover:none) { .gallery-card figcaption { position:static; padding:12px 15px 14px; background:var(--surface); color:var(--ink); opacity:1; transform:none; } }
.news-feature { margin-bottom:95px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr); align-items:stretch; background:var(--surface); border:1px solid var(--line); }
.news-feature-art { min-height:460px; overflow:hidden; }
.news-feature-art img { display:block; width:100%; height:100%; object-fit:cover; transition:transform 220ms ease; }
.news-feature:hover .news-feature-art img { transform:scale(1.015); }
.news-feature-copy { padding:clamp(34px,5vw,70px); display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.news-feature-copy h2 { margin:0 0 17px; font-size:calc(clamp(40px,5vw,60px) - 2px); line-height:1.08; }
.news-feature-copy>p:not(.label) { margin:0 0 26px; font-size:19px; line-height:1.55; }
.news-section { padding-bottom:110px; }
.news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px 26px; }
.news-card { display:flex; flex-direction:column; overflow:hidden; background:var(--surface); border:1px solid var(--line); }
.news-card-art { display:block; overflow:hidden; }
.news-card-art img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; transition:transform 220ms ease; }
.news-card:hover .news-card-art img { transform:scale(1.02); }
.news-card-copy { padding:24px 23px 27px; display:flex; flex:1; flex-direction:column; align-items:flex-start; }
.news-card-copy h3 { margin:0 0 12px; font-size:calc(clamp(27px,2.7vw,34px) - 2px); line-height:1.12; }
.news-card-copy h3 a { color:inherit; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.news-card-copy>p:not(.label) { margin:0 0 19px; font-size:16px; line-height:1.5; }
.news-card-copy .text-link { margin-top:auto; }
.news-article { max-width:980px; padding-block:75px 100px; }
.news-article-header { max-width:830px; margin:0 auto 45px; text-align:center; }
.news-article-header h1 { margin:0 0 21px; font-size:calc(clamp(48px,7vw,78px) - 2px); line-height:1.08; }
.news-article-header>p:not(.label) { max-width:730px; margin:0 auto; font-size:20px; line-height:1.55; }
.news-article-hero { margin:0 0 50px; overflow:hidden; background:var(--surface); border:1px solid var(--line); }
.news-article-hero img { display:block; width:100%; max-height:720px; object-fit:contain; }
.news-article-hero img[data-orientation="portrait"] { width:auto; max-width:100%; margin:auto; }
.news-article-body { max-width:760px; margin-inline:auto; font-size:19px; line-height:1.68; }
.news-article-body>p { margin:0 0 1.3em; }
.news-article-body section { margin-top:42px; }
.news-article-body h2 { margin:42px 0 15px; font-size:calc(clamp(34px,4vw,48px) - 2px); line-height:1.12; }
.news-downloads h2 { margin:0 0 15px; font-size:calc(clamp(34px,4vw,48px) - 2px); line-height:1.12; }
.news-article-body ul { margin:0 0 25px; padding-left:1.25em; }
.news-article-body li { margin-bottom:8px; }
.news-video { margin:42px 0; }
.news-action { margin-top:35px!important; }
.news-downloads { margin-top:70px; padding-top:55px; border-top:1px solid var(--line); }
.news-downloads>h2 { text-align:center; }
.news-download-grid { margin-top:30px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.news-download-grid article { padding:20px 20px 25px; background:var(--surface); border:1px solid var(--line); text-align:center; }
.news-download-grid img { display:block; width:100%; height:auto; border:1px solid var(--line); }
.news-download-grid h3 { margin:17px 0 14px; font-size:25px; line-height:1.15; }
.news-article-footer { max-width:760px; margin:70px auto 0; padding-top:28px; border-top:1px solid var(--line); }
@media(max-width:960px) { .news-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .news-feature { grid-template-columns:1fr; } .news-feature-art { min-height:0; } .news-feature-art img { height:auto; max-height:520px; object-fit:cover; } .news-feature-copy { padding:34px 26px 40px; } }
@media(max-width:650px) { .news-grid,.news-download-grid { grid-template-columns:1fr; } .news-article { padding-block:55px 75px; } .news-article-header { margin-bottom:35px; } .news-article-header h1 { font-size:calc(clamp(40px,13vw,56px) - 2px); } .news-article-hero { margin-bottom:38px; } .news-article-body { font-size:18px; } }
.contact-layout { padding-bottom:110px; display:grid; grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr); gap:clamp(42px,7vw,100px); align-items:start; }
.contact-note h2 { margin:0 0 20px; font-size:calc(clamp(42px,5vw,62px) - 2px); line-height:1.12; }
.contact-note > p:not(.label) { margin:0 0 18px; font-size:18px; line-height:1.55; }
.contact-subscribe { margin-top:38px; padding-top:27px; border-top:1px solid var(--line); }
.contact-subscribe h3 { margin:0 0 8px; font-size:26px; line-height:1.15; }
.contact-subscribe p { margin:0 0 13px; font-size:16px; }
.contact-panel { padding:clamp(28px,4vw,48px); background:var(--surface); border:1px solid var(--line); }
.contact-status { margin:0 0 24px; padding:15px 17px; border:1px solid var(--orange); background:var(--orange-soft); font-size:16px; }
.contact-status[data-type='error'] { border-color:#a34f10; }
.contact-form { display:grid; gap:22px; }
.contact-form .field { display:grid; gap:8px; }
.contact-form label { display:flex; align-items:baseline; justify-content:space-between; gap:15px; font-family:'TC Volume Sans',sans-serif; font-size:12px; }
.contact-form label span { color:var(--muted); font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.contact-form input,.contact-form textarea { width:100%; padding:12px 14px; border:1px solid var(--line); border-radius:3px; outline:none; background:var(--paper); color:var(--ink); font:inherit; font-size:17px; }
.contact-form input:focus,.contact-form textarea:focus { border-color:var(--orange); box-shadow:0 0 0 2px var(--orange-soft); }
.contact-form textarea { min-height:180px; resize:vertical; }
.contact-form .button { justify-self:start; min-width:145px; cursor:pointer; }
.field-note { margin:0; color:var(--muted); font-size:12px; }
.contact-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
@media(max-width:760px) { .contact-layout { grid-template-columns:1fr; gap:38px; padding-bottom:75px; } .contact-panel { padding:26px 20px; } }
