@charset "utf-8";
:root{
  --ink:#142f38;--muted:#526a72;--paper:#edf4f5;--white:#ffffff;--line:rgba(255,255,255,.78);
  --teal:#176a74;--teal-dark:#174d58;--gold:#a77442;--soft:#dce9ec;--glass:rgba(255,255,255,.62);
  --glass-strong:rgba(255,255,255,.78);--shadow:0 18px 48px rgba(27,66,77,.12);--shadow-hover:0 24px 55px rgba(27,66,77,.17);
  --serif:Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Arial,sans-serif
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:6rem}
body{margin:0;background:radial-gradient(ellipse at 8% 5%,rgba(176,220,223,.55),transparent 34rem),radial-gradient(ellipse at 92% 18%,rgba(194,214,238,.56),transparent 36rem),linear-gradient(145deg,#f5f8f8 0%,#e8f1f3 52%,#f2f6f5 100%);color:var(--ink);font-family:var(--sans);line-height:1.65;min-height:100vh}
a{color:var(--teal-dark);text-underline-offset:.2em}
a:hover{color:#8a5b2e}
a:focus-visible,button:focus-visible{outline:3px solid #2e7780;outline-offset:3px;border-radius:6px}
.site-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:.9rem clamp(1rem,5vw,4.5rem);background:rgba(245,250,251,.78);border-bottom:1px solid rgba(255,255,255,.85);box-shadow:0 8px 26px rgba(23,62,72,.08);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%)}
.brand{font-family:var(--serif);font-size:1.35rem;font-weight:700;text-decoration:none;color:var(--ink);white-space:nowrap}
.brand span{font-family:var(--sans);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-left:.45rem}
.site-header nav{display:flex;flex-wrap:wrap;gap:.45rem}
.site-header nav a{font-size:.9rem;text-decoration:none;padding:.48rem .78rem;border-radius:999px;transition:background-color .2s ease,color .2s ease}
.site-header nav a:hover{background:rgba(255,255,255,.72);color:var(--teal-dark)}
.hero,.section,.page-main,.reader-main{max-width:1200px;margin:0 auto;padding:clamp(2rem,5vw,4.5rem) clamp(1rem,5vw,2rem)}
.hero{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:clamp(1.8rem,5vw,4.5rem);margin-top:clamp(1.2rem,3vw,2.4rem);padding-top:clamp(2rem,4vw,3.7rem);padding-bottom:clamp(2rem,4vw,3.7rem);background:var(--glass);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}
.eyebrow{color:#476c73;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:750;margin:0 0 .7rem}
.hero h1,.page-intro h1{font-family:var(--serif);font-weight:500;letter-spacing:-.028em;line-height:1.04;font-size:clamp(2.8rem,6vw,5.5rem);margin:.2rem 0 1.15rem}
.lead{font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.48;max-width:44rem}
.excerpt{border-left:3px solid var(--gold);padding-left:1rem;font-family:var(--serif);font-style:italic;color:#405961;max-width:38rem;margin:1.6rem 0}
.hero-image{margin:0;min-width:0}
.hero-image img{display:block;width:100%;height:auto;max-height:650px;object-fit:contain;object-position:center;border:1px solid rgba(255,255,255,.92);border-radius:20px;background:#dbe7e9;box-shadow:0 14px 32px rgba(20,52,61,.16)}
.hero-image figcaption{font-size:.83rem;color:var(--muted);padding:.8rem .25rem .1rem}
.actions{display:flex;flex-wrap:wrap;gap:.75rem 1rem;margin:1.45rem 0}
.button{display:inline-block;background:linear-gradient(135deg,#287681,#155965);color:#fff;padding:.78rem 1.1rem;text-decoration:none;font-weight:650;border:1px solid rgba(255,255,255,.3);border-radius:999px;box-shadow:0 9px 20px rgba(18,88,99,.18);transition:transform .2s ease,box-shadow .2s ease}
.button:hover{background:linear-gradient(135deg,#216873,#104d58);color:#fff;transform:translateY(-1px);box-shadow:0 12px 24px rgba(18,88,99,.24)}
.button-secondary{background:rgba(255,255,255,.42);color:var(--teal-dark);border:1px solid rgba(23,77,88,.25);box-shadow:none}
.button-secondary:hover{background:rgba(255,255,255,.8);color:var(--teal-dark)}
.edition-note{font-size:.88rem;color:var(--muted)}
.section{margin-top:1.35rem;background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.7);border-radius:28px;box-shadow:0 14px 38px rgba(27,66,77,.08);backdrop-filter:blur(14px) saturate(115%);-webkit-backdrop-filter:blur(14px) saturate(115%)}
.section-alt{background:rgba(229,239,241,.66)}
.section-heading{margin-bottom:1.5rem}
.section-heading h2,.about-strip h2{font-family:var(--serif);font-size:clamp(1.85rem,3vw,2.7rem);font-weight:500;line-height:1.16;margin:.2rem 0 .8rem;letter-spacing:-.018em}
.section-heading>p:not(.eyebrow){max-width:58rem;color:var(--muted)}
.text-column{max-width:780px}
.download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.8rem}
.download-card,.teaser,.image-card,.credit-row{background:var(--glass-strong);border:1px solid var(--line);box-shadow:0 12px 30px rgba(27,66,77,.08);backdrop-filter:blur(13px) saturate(120%);-webkit-backdrop-filter:blur(13px) saturate(120%)}
.download-card{padding:1.4rem;border-radius:20px}
.download-card h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;margin:.25rem 0}
.download-card p{color:var(--muted)}
.text-link{font-weight:650}
.chapter-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem;list-style:none;padding:0}
.chapter-list li{display:flex;gap:1rem;border-bottom:1px solid rgba(67,104,114,.18);padding:.72rem 0}
.chapter-list li span{font-size:.78rem;color:#816444;font-weight:750}
.chapter-list a{text-decoration:none}
.section-link{margin-top:1.45rem}
.teaser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:.85rem}
.teaser{display:block;text-decoration:none;color:var(--ink);border-radius:18px;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.teaser:hover{color:var(--ink);transform:translateY(-3px);box-shadow:var(--shadow-hover)}
.teaser img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--soft)}
.teaser span{display:block;padding:.75rem .85rem;font-weight:620;font-size:.88rem;line-height:1.35}
.about-strip{background:linear-gradient(135deg,rgba(24,76,87,.96),rgba(26,105,115,.88));color:#fff;border-color:rgba(255,255,255,.3)}
.about-strip h2{color:#fff}
.about-strip p{max-width:760px;color:rgba(255,255,255,.88)}
.about-strip a{color:#f4d7ab}
.review-note{margin:0 auto 1.4rem;max-width:1150px;padding:.9rem 1.2rem;background:rgba(255,250,235,.78);border:1px solid rgba(255,255,255,.82);border-left:4px solid #aa7644;border-radius:14px;box-shadow:0 9px 24px rgba(93,70,43,.08);font-size:.9rem;color:#4d4639;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.page-main,.reader-main{padding-top:2rem}
.page-intro{max-width:880px;margin:0 auto 2rem}
.page-intro h1{font-size:clamp(2.3rem,5vw,4.3rem)}
.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.archive-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.image-card{border-radius:22px;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.image-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}
.image-link{display:flex;align-items:center;justify-content:center;min-height:220px;margin:.7rem .7rem 0;padding:.4rem;background:rgba(219,233,236,.7);border:1px solid rgba(255,255,255,.8);border-radius:16px;overflow:hidden}
.image-card img{display:block;width:100%;max-height:500px;aspect-ratio:4/3;object-fit:contain}
.archive-card .image-link{min-height:190px}
.archive-card img{max-height:300px}
.image-copy{padding:1.15rem 1.25rem 1.3rem}
.image-copy h2,.credit-row h2{font-family:var(--serif);font-size:1.33rem;line-height:1.25;font-weight:500;margin:.1rem 0 .55rem}
.archive-card .image-copy .eyebrow{font-size:.66rem;margin:0 0 .4rem}
.image-copy p{font-size:.92rem;margin:.5rem 0}
.credit{font-size:.82rem;color:var(--muted)}
.credit-list{max-width:940px;margin:0 auto}
.credit-row{padding:1.15rem 1.25rem;margin:.8rem 0;border-radius:18px}
.credit-heading{display:flex;gap:1rem;align-items:baseline}
.credit-heading span{color:#816444;font-weight:750;font-size:.8rem;flex:0 0 auto}
.rights-note{color:#594b36;background:rgba(244,237,222,.72);border:1px solid rgba(255,255,255,.7);padding:.75rem .9rem;border-radius:12px;font-size:.88rem}
.archive-credit-section{margin-top:2rem}
.pdf-frame{display:block;width:100%;height:78vh;min-height:620px;border:1px solid rgba(255,255,255,.88);border-radius:18px;background:#fff;margin-top:1.4rem;box-shadow:0 14px 36px rgba(22,58,68,.12)}
.site-footer{padding:1.7rem clamp(1rem,5vw,4.5rem);margin-top:1rem;background:rgba(239,246,247,.72);border-top:1px solid rgba(255,255,255,.88);font-size:.84rem;color:var(--muted);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.site-footer p{max-width:1150px;margin:.25rem auto}
.back-link{margin:2rem 0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:980px){.hero{grid-template-columns:1fr 1fr;gap:1.7rem}.archive-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.site-header{position:relative;align-items:flex-start;flex-direction:column;gap:.55rem;padding:.85rem 1rem}.site-header nav{gap:.25rem}.site-header nav a{padding:.42rem .6rem}.hero{grid-template-columns:1fr;padding-top:1.8rem;border-radius:23px}.hero-image{max-width:650px}.download-grid,.gallery,.archive-gallery{grid-template-columns:1fr}.chapter-list{grid-template-columns:1fr}.pdf-frame{min-height:500px;height:70vh}.review-note{margin-left:0;margin-right:0}.section{border-radius:22px}.page-main,.reader-main{padding-top:1.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media(prefers-contrast:more){:root{--ink:#0a2027;--muted:#324a52}.review-note,.rights-note{background:#fff;border-color:#5c7278}}
