/* Library redesign, scoped to preserve shared styles on the art school page. */
.library-page-v2{--library-gold:#9b7435;--library-paper:#fbf8f1;--library-border:#e9e4d9}
.library-page-v2 .library-hero{position:relative;isolation:isolate;overflow:hidden;padding:0;background:#fafcfd}
.library-page-v2 .library-hero-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}
.library-page-v2 .library-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#fffffff5,#ffffffd9 25%,#ffffff50 46%,transparent 65%)}
.library-hero-inner{padding-block:24px 40px;min-height:clamp(400px,28vw,500px)}
.library-page-v2 .library-hero .breadcrumb{margin-bottom:32px;font-size:.78rem}
.library-page-v2 .library-hero-copy{max-width:680px;padding:0}
.library-page-v2 .library-hero h1{font-size:clamp(2.3rem,3.6vw,3.9rem);line-height:1.1;margin-bottom:18px;letter-spacing:-.025em}
.library-page-v2 .library-tagline{font:normal clamp(1.1rem,1.6vw,1.5rem)/1.4 var(--serif);color:var(--ink);margin-bottom:26px}
.library-page-v2 .library-actions{gap:12px}
.library-page-v2 .library-actions .button{padding:12px 22px;font-size:.9rem}
.library-page-v2 .library-hero-note{font:italic 1.25rem/1.25 var(--serif);letter-spacing:.025em;color:var(--culture-accent);margin:28px 0 0 26px}
.library-page-v2 .library-nav{justify-content:center;border-top:0;border-color:var(--library-border);gap:10px 38px;padding-block:12px}
.library-page-v2 .library-nav a{padding:10px 2px;color:var(--ink);border-radius:8px;transition:color .15s}
.library-page-v2 .library-nav a:hover{color:var(--library-gold);background:none}
.library-page-v2 .section{padding-block:44px}
.library-section-heading{text-align:center;margin:0 auto 26px}
.library-section-heading h2{margin:0;font-size:clamp(2rem,3vw,3rem)}
.library-section-heading p{margin:3px 0 0;color:var(--muted);font-size:.95rem}
.library-ornament{display:block;color:var(--library-gold);font-size:1.7rem;line-height:1;margin:8px 0}
.library-books{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.library-book-card{min-width:0;background:#fff;border:1px solid var(--library-border);border-radius:14px;overflow:hidden;box-shadow:0 6px 28px #63542b06}
.library-book-image{aspect-ratio:1.7;overflow:hidden;background:var(--library-paper)}
.library-book-image img{display:block;width:100%;height:100%;object-fit:cover}
.library-book-copy{padding:22px 23px 20px}
.library-book-copy .library-book-category{font-size:.65rem;line-height:1.3;text-transform:uppercase;letter-spacing:.1em;color:var(--library-gold);margin:0 0 10px}
.library-book-copy h3{font-size:clamp(1.3rem,1.75vw,1.8rem);margin:0 0 10px;line-height:1.16}
.library-book-copy h3 a{color:inherit}
.library-book-copy>p:not(.library-book-category){margin:0;color:var(--muted);font-size:.89rem;line-height:1.5}
.library-book-format{display:block;font-size:.72rem;color:var(--culture-accent);margin-top:15px}
.library-source-note{font-size:.73rem;color:var(--muted);margin:18px 0 0;text-align:center}
.library-source-note .text-link{font-size:inherit;padding:0;min-height:0;display:inline}
.library-page-v2 .library-local-section{background:var(--library-paper);border:0}
.library-page-v2 .library-local-grid{grid-template-columns:1fr 1fr;gap:54px;padding-block:36px;align-items:center}
.library-map-art{position:relative;overflow:hidden;min-width:0;align-self:stretch;min-height:320px}
.library-map-art img{display:block;width:100%;height:100%;object-fit:cover;mask-image:linear-gradient(90deg,#000 75%,transparent);border-radius:100px 10px 90px 10px;opacity:.9}
.library-map-art>span{position:absolute;left:24px;top:24px;background:#fffdf5e6;padding:16px 22px;font:italic 1.5rem/1.2 var(--serif);color:var(--culture-accent);border-radius:18px 2px 18px 2px}
.library-page-v2 .library-local-copy h2{font-size:clamp(1.9rem,2.75vw,2.8rem);margin:0 0 12px}
.library-page-v2 .library-local-copy .library-ornament{margin-bottom:10px}
.library-authors{display:grid;gap:8px}
.library-author{display:flex;gap:18px;align-items:center;padding:10px 12px;margin-left:-12px;border-radius:12px;color:var(--ink);transition:background .15s}
.library-author:hover{background:#fff9}
.library-author-letter{display:grid;place-items:center;width:49px;height:49px;flex:0 0 49px;border-radius:50%;border:1px solid #ae874d;font:normal 1.65rem/1 var(--serif);color:var(--ink)}
.library-author strong{display:block;font:normal 1.35rem/1.2 var(--serif)}
.library-author small{display:block;margin-top:5px;font-size:.85rem;color:var(--muted)}
.library-page-v2 .library-local-copy>p{max-width:none;font-size:.85rem;margin:15px 0 6px}
.library-features{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px;align-items:start}
.library-feature{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--library-border);border-radius:14px;background:#fff}
.library-feature>img{position:absolute;top:0;left:0;width:100%;height:230px;object-fit:cover;z-index:-2}
.library-feature:before{content:'';position:absolute;top:0;left:0;width:100%;height:230px;background:linear-gradient(90deg,#ffffffed,#ffffffc9 32%,#ffffff20 78%);z-index:-1}
.library-feature-copy{min-height:230px;padding:29px 26px}
.library-feature-copy h2{font-size:clamp(1.6rem,2.2vw,2.2rem);margin:0 0 10px}
.library-feature-copy>p{max-width:280px;color:var(--muted);font-size:.9rem;margin:0 0 25px}
.library-feature-copy .button{font-size:.77rem;border-radius:9px;padding:10px 14px;min-height:42px;background:#ffffffed}
.library-feature-detail{padding:0 24px;background:#fff;border-top:1px solid var(--library-border);font-size:.85rem}
.library-feature-detail summary{cursor:pointer;padding:17px 0;line-height:1.4;color:var(--muted)}
.library-feature-detail>div{padding:0 0 20px;color:var(--muted)}
.library-feature-detail p{margin:0 0 12px}
.library-resources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.library-resources>article{border-top:1px solid var(--library-border);padding:24px 0 0;min-width:0}
.library-resource-symbol{font:normal 1.7rem/1 var(--serif);color:var(--library-gold);opacity:.8}
.library-resources h3{margin:15px 0 10px;font-size:1.45rem}
.library-resources p{font-size:.9rem;color:var(--muted);margin:0 0 14px}
.library-resource-links{display:flex;gap:4px 18px;flex-wrap:wrap}
.library-resource-links .text-link{font-size:.83rem}
.library-page-v2 .library-visit{border-top:1px solid var(--library-border);margin-top:6px;padding-top:40px}
.library-page-v2 .library-contact .info-aside{background:var(--library-paper);border-color:var(--library-border)}
.library-reader{padding-block:30px 45px}
.library-reader-heading>.text-link{font-size:.9rem;margin-bottom:18px}
.library-reader-top{display:flex;gap:25px;align-items:center;justify-content:space-between}
.library-reader-top>div{min-width:0}
.library-reader h1{font:normal clamp(1.9rem,3vw,3rem)/1.15 var(--serif);margin:0 0 12px;overflow-wrap:anywhere}
.library-reader .eyebrow{margin:0 0 9px;color:var(--muted);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}
.library-reader-top .button{flex-shrink:0;font-size:.85rem;border-radius:10px}
.library-reader-heading>p{color:var(--muted);font-size:.9rem;line-height:1.65;max-width:780px;margin:0 0 24px}
.library-reader-document{height:max(620px,78vh);height:max(620px,78dvh);background:#f1f3f6;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.library-reader-document iframe{display:block;width:100%;height:100%;border:0;background:#f1f3f6}
.library-reader-help{display:flex;justify-content:space-between;gap:10px 25px;flex-wrap:wrap;padding-top:16px;font-size:.8rem;color:var(--muted)}
.library-reader-help p{margin:0}.library-reader-help .text-link{font-size:inherit;padding:0;min-height:0}
@media(max-width:1100px){.library-page-v2 .library-hero-copy{max-width:580px}.library-books{gap:18px}.library-book-copy{padding:20px 18px}.library-page-v2 .library-local-grid{gap:30px}.library-feature-copy{padding:25px 22px}.library-feature-copy>p{max-width:240px}}
@media(max-width:760px){
 .library-page-v2 .library-hero-inner{padding-block:20px 195px;min-height:0}
 .library-page-v2 .library-hero-art{object-position:right bottom;object-fit:cover;opacity:.75}
 .library-page-v2 .library-hero:after{background:linear-gradient(180deg,#fffffff9,#fffffff0 38%,#ffffff75 64%,#ffffff10)}
 .library-page-v2 .library-hero .breadcrumb{font-size:.69rem;margin-bottom:28px;line-height:1.5;flex-wrap:wrap}
 .library-page-v2 .library-hero h1{font-size:clamp(2.1rem,7.8vw,3rem);max-width:500px;margin-bottom:16px}
 .library-page-v2 .library-tagline{font-size:1.1rem;max-width:330px;margin-bottom:20px}
 .library-page-v2 .library-actions{gap:9px}
 .library-page-v2 .library-actions .button{font-size:.77rem;padding:11px 14px;min-height:44px}
 .library-page-v2 .library-hero-note{display:none}
 .library-page-v2 .library-nav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:24px;padding-block:8px;scrollbar-width:thin}
 .library-page-v2 .library-nav a{flex-shrink:0;font-size:.82rem;padding:12px 0}
 .library-page-v2 .section{padding-block:32px}
 .library-section-heading{margin-bottom:22px;text-align:left}
 .library-section-heading h2{font-size:2rem}
 .library-section-heading .library-ornament{display:none}
 .library-section-heading p{font-size:.88rem;margin-top:12px;max-width:340px}
 .library-books{grid-template-columns:1fr;gap:22px}
 .library-book-image{aspect-ratio:1.75}
 .library-book-copy{padding:22px}
 .library-book-copy h3{font-size:1.65rem}
 .library-book-copy>p:not(.library-book-category){font-size:.92rem}
 .library-book-format{margin-top:13px}
 .library-source-note{text-align:left;font-size:.72rem}
 .library-page-v2 .library-local-grid{grid-template-columns:1fr;gap:26px;padding-block:28px}
 .library-map-art{min-height:0;height:210px}
 .library-map-art img{mask-image:none;border-radius:55px 10px 50px 10px}
 .library-map-art>span{top:15px;left:15px;padding:12px 16px;font-size:1.25rem}
 .library-page-v2 .library-local-copy h2{font-size:2rem}
 .library-author{padding-block:12px}
 .library-author strong{font-size:1.35rem}
 .library-author small{font-size:.85rem}
 .library-features{grid-template-columns:1fr;gap:20px;margin-top:24px}
 .library-feature-copy{min-height:220px;padding:26px 23px}
 .library-feature>img,.library-feature:before{height:220px}
 .library-feature-copy h2{font-size:1.85rem}
 .library-feature-copy>p{max-width:220px}
 .library-resources{grid-template-columns:1fr;gap:23px}
 .library-resources>article{padding-top:20px}
 .library-resources h3{margin-top:10px}
 .library-page-v2 .library-visit{gap:28px}
 .library-reader{padding-block:22px 28px}
 .library-reader-top{align-items:flex-start;flex-direction:column;gap:5px;margin-bottom:18px}
 .library-reader-top .button{min-height:44px}
 .library-reader h1{font-size:2rem}
 .library-reader-heading>p{font-size:.86rem}
 .library-reader-document{height:max(560px,75vh);height:max(560px,75dvh);border-radius:10px}
 .library-reader-help{font-size:.77rem}
}
@media(prefers-reduced-motion:reduce){.library-author,.library-page-v2 .library-nav a{transition:none}}
.high-contrast .library-page-v2{--library-paper:#fff;--library-gold:#000;--library-border:#000}
.high-contrast .library-page-v2 .library-hero:after{background:#fff}
.high-contrast .library-map-art,.high-contrast .library-feature>img{display:none}
.high-contrast .library-page-v2 .library-local-grid{grid-template-columns:1fr}
.high-contrast .library-feature:before{background:#fff}
.hide-images .library-page-v2 .library-hero-art,.hide-images .library-book-image,.hide-images .library-map-art,.hide-images .library-feature>img{display:none}
.hide-images .library-page-v2 .library-local-grid{grid-template-columns:1fr}
.hide-images .library-page-v2 .library-hero-inner{min-height:0;padding-bottom:30px}
.hide-images .library-feature:before{background:#fff}
