@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500&display=swap');:root{--navy:#101d31;--navy2:#192c46;--gold:#d7b678;--cream:#f4eee3;--ink:#1a293e;--muted:#6a7180}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fcfaf6;color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.18}h1{font-size:clamp(2.8rem,5vw,5.1rem);letter-spacing:-.035em}h2{font-size:clamp(2rem,3.4vw,3.2rem);letter-spacing:-.025em}h3{font-size:1.35rem}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.header{height:91px;background:var(--navy);color:#f7eedd;display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100vw - 1240px)/2));border-bottom:1px solid #ffffff1a;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:12px}.brand-mark{border:1px solid var(--gold);border-radius:50%;height:43px;width:43px;display:grid;place-items:center;color:var(--gold);font-size:1.5rem}.brand strong{display:block;font-family:Georgia,serif;font-size:1.45rem;line-height:1.1;color:var(--gold)}.brand small{display:block;font-size:.54rem;letter-spacing:.12em;margin-top:5px}.header nav{display:flex;gap:28px}.header nav a{font-size:.86rem;color:#f2e9d9}.header nav a:hover{color:var(--gold)}.menu{display:none;border:0;background:none;color:var(--gold);font-size:1.6rem}.hero{background:var(--navy);color:#fff4e1;min-height:600px;display:grid;grid-template-columns:1.08fr .92fr;overflow:hidden}.hero-copy{padding:110px 6% 100px max(9%,calc((100vw - 1150px)/2));align-self:center}.eyebrow{display:block;color:#b99052;letter-spacing:.19em;font-size:.73rem;font-weight:700;margin-bottom:21px}.hero .eyebrow{color:var(--gold)}.hero h1 em{color:var(--gold);font-weight:500}.hero p{max-width:520px;color:#c8cbd0;font-size:1.07rem;line-height:1.85}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:13px 22px;font-size:.88rem;font-weight:700;border-radius:3px}.primary{background:var(--gold);color:var(--navy)}.primary:hover{background:#e7ca93}.outline{border:1px solid #b7a88f;color:#f3e8d8}.outline:hover{background:#ffffff16}.hero-art{min-height:520px;position:relative;background:radial-gradient(ellipse at 60% 38%,#344765 0%,#20334c 43%,#14243b 75%);border-left:1px solid #ffffff13;overflow:hidden}.hero-art:before{content:'';position:absolute;inset:13% 12% 19%;border:12px solid #705639;box-shadow:inset 0 0 0 2px #b48b53,0 0 80px #0007;border-radius:100px 100px 2px 2px;opacity:.5}.shelf{position:absolute;left:13%;right:13%;height:12px;background:#785735;box-shadow:0 9px 0 #382b24}.shelf1{top:41%}.shelf2{top:70%}.shelf:before{content:'▥ ▥ ▥ ▥ ▥ ▥ ▥ ▥';position:absolute;bottom:7px;left:10%;font-size:48px;letter-spacing:3px;color:#c0a47a;opacity:.65}.lamp{position:absolute;right:24%;top:15%;font-size:95px;color:#ffe0a1;text-shadow:0 0 40px #ffb957,0 0 110px #e5a449}.book-stack{position:absolute;left:24%;bottom:11%;width:50%;display:grid;gap:7px}.book-stack span{display:block;height:27px;background:#a78b64;border-left:11px solid #634732;border-radius:2px;box-shadow:0 5px 0 #0004}.book-stack span:nth-child(2){background:#46576a;width:90%;margin-left:6%}.book-stack span:nth-child(3){background:#9a644e;width:96%}.book-stack span:nth-child(4){background:#c4b397;width:86%;margin-left:8%}.hero-quote{position:absolute;left:14%;bottom:5%;font:italic 1.1rem Georgia,serif;color:#f3d6a2;text-shadow:0 2px 5px #000}.hero-quote small{display:block;font:11px 'DM Sans',sans-serif;margin-top:7px;color:#d7d4cb}.section{max-width:1240px;margin:auto;padding:90px 5%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:32px}.section-head h2{margin:0}.section-head .eyebrow{margin-bottom:12px}.section-side{color:#a47d42;font-weight:700}.books-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.book-card{background:#fff;border:1px solid #e9e0d2;display:flex;gap:24px;padding:24px;border-radius:5px;min-height:255px}.cover{flex:0 0 145px;min-height:210px;display:flex;align-items:center;justify-content:center;text-align:center;padding:18px;background:#1e3149;color:#f8dfac;font-family:Georgia,serif;font-size:1.35rem;line-height:1.2;box-shadow:7px 8px 12px #0002;border-left:9px solid #ac8c5c}.cover.alt{background:#d8aeb0;color:#402b37;border-left-color:#936e78}.book-info{display:flex;flex-direction:column;align-items:start}.book-info .eyebrow{font-size:.65rem;margin-bottom:11px}.book-info h3{margin-bottom:5px}.byline{color:var(--muted);font-size:.85rem}.book-info p{font-size:.9rem;color:#606979}.text-link{color:#86612d;font-weight:700;font-size:.85rem;margin-top:auto}.section-cream{max-width:none;background:var(--cream);padding-left:max(5%,calc((100vw - 1116px)/2));padding-right:max(5%,calc((100vw - 1116px)/2))}.intro{color:#69707b;max-width:750px;margin-bottom:25px}.event-list{display:grid;gap:14px}.event-card{background:#fff;padding:25px;display:flex;align-items:center;gap:25px;border:1px solid #e6dccb}.datebox{width:90px;min-width:90px;text-align:center;border-right:1px solid #e6dccb;padding-right:22px}.datebox b{display:block;font:600 2rem Georgia,serif;color:var(--navy)}.datebox small{font-size:.73rem;letter-spacing:.12em;color:#98713b}.event-card h3{margin:0 0 5px}.event-card p{margin:0;color:#6c7280;font-size:.9rem}.event-tag{font-size:.72rem;color:#9a7440;letter-spacing:.1em;font-weight:700}.themes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.theme-card{border:1px solid #e8dfd0;background:#fff;padding:25px;min-height:145px}.theme-card small{display:block;color:#b08b54;letter-spacing:.14em;font-weight:700;margin-bottom:13px}.theme-card strong{display:block;font-family:Georgia,serif;font-size:1.12rem}.theme-card span{display:block;color:#a17a44;font-size:.8rem;margin:4px 0}.about{background:#172943;color:#f6ead6;max-width:none;padding-left:max(5%,calc((100vw - 1116px)/2));padding-right:max(5%,calc((100vw - 1116px)/2));display:grid;grid-template-columns:1fr 1fr;gap:70px}.about .eyebrow{color:var(--gold)}.about p{font-size:1.08rem;line-height:1.9;color:#d5d5d4}.location{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px}.location p{color:#667080;line-height:1.9;max-width:500px}.location .btn{margin-top:12px}.location-art{min-height:330px;background:radial-gradient(circle at 60% 50%,#314a66,#182b45);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#f7e6c8;border:12px solid #e9dfcf}.location-art .pin{font-size:4rem;color:var(--gold)}.location-art strong{font:600 2rem Georgia,serif}.location-art small{letter-spacing:.2em;color:#c4b38e;margin-top:13px}footer{background:#0c1728;color:#d9d2c6;padding:40px 6%;display:flex;justify-content:space-between;align-items:center;gap:25px}footer strong{font:600 1.7rem Georgia,serif;color:var(--gold)}footer p{margin:0;font-size:.82rem}footer span,footer a{font-size:.82rem;color:#b5bdc8}@media(max-width:900px){.header{padding:0 5%}.header nav{gap:13px}.header nav a{font-size:.75rem}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 6%}.hero-art{min-height:350px}.books-grid{grid-template-columns:1fr}.themes-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.header{height:75px}.brand small{font-size:.42rem}.menu{display:block}.header nav{display:none;position:absolute;top:75px;left:0;right:0;background:#15243a;flex-direction:column;padding:24px;gap:16px}.header nav.open{display:flex}.header nav a{font-size:1rem}.hero-copy{padding:65px 6%}.hero-art{min-height:290px}.section{padding:65px 6%}.section-cream,.about{padding:65px 6%}.section-head{align-items:start;flex-direction:column}.book-card{gap:15px;padding:15px}.cover{flex-basis:105px;min-height:170px;font-size:1rem}.book-info h3{font-size:1.15rem}.book-info p{font-size:.82rem}.themes-grid{grid-template-columns:1fr 1fr;gap:10px}.theme-card{padding:17px}.about,.location{grid-template-columns:1fr;gap:22px}.location-art{min-height:240px}footer{flex-direction:column;align-items:start}.event-card{padding:17px;gap:15px}.datebox{min-width:65px;width:65px;padding-right:12px}}
