/* Holstein's Books — a small, lovingly cluttered corner of the web. */
:root {
  --forest:#1b3a30;
  --forest-dark:#112b25;
  --moss:#476c55;
  --cream:#faf6ec;
  --paper:#f5f0e4;
  --oat:#eee6d5;
  --ink:#21332d;
  --copy:#55534d;
  --rust:#905345;
  --gold:#d5b77b;
  --line:#d9ccb6;
  --serif:Georgia,"Palatino Linotype","Book Antiqua",Palatino,serif;
  --sans:"Trebuchet MS",Arial,Helvetica,sans-serif;
  --shell:1216px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:94px}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
body::selection{background:#e1cf9d;color:var(--forest)}
a{color:inherit;text-decoration:none}
button{font:inherit}
img{display:block;max-width:100%}
svg{display:block}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible{outline:3px solid #b76e42;outline-offset:5px}
.shell{width:min(var(--shell),calc(100% - 96px));margin:auto}
.skip-link{position:absolute;z-index:1000;top:-100px;left:16px;padding:12px 20px;background:var(--cream);color:var(--forest)}
.skip-link:focus{top:12px}
.top-ribbon{background:var(--forest-dark);color:#e4d8bc;min-height:39px;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.top-ribbon-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:39px}
.little-star{font-size:14px;color:var(--gold);margin-right:7px}
.ribbon-divider{padding:0 12px;color:var(--gold);font-size:10px}
.site-header{position:relative;z-index:30;background:var(--cream);border-bottom:1px solid #e5ddcc}
.header-inner{height:104px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.wordmark,.footer-brand{display:inline-flex;gap:11px;align-items:center;flex-shrink:0}
.brand-mark{width:68px;height:68px;filter:saturate(.8)}
.brand-type{display:flex;flex-direction:column;gap:0;transform:translateY(-2px)}
.brand-type strong{font:normal 42px/1 var(--serif);letter-spacing:-.065em;color:var(--forest);font-variant:small-caps}
.brand-type small{display:flex;align-items:center;justify-content:center;gap:12px;color:#7e5c42;font:700 11px/1.6 var(--sans);letter-spacing:.12em;white-space:nowrap}
.brand-rule{height:1px;background:var(--rust);width:26px}
.main-nav{display:flex;align-items:center;gap:32px}
.main-nav>a{font:700 12px/1.3 var(--sans);letter-spacing:.025em;white-space:nowrap;transition:color .2s}
.main-nav>a:not(.nav-visit):hover{color:var(--rust)}
.main-nav .nav-visit{margin-left:8px;background:var(--rust);padding:15px 22px;color:#fff7e9;border:1px solid var(--rust);border-radius:2px;transition:background .2s,transform .2s}
.main-nav .nav-visit:hover{background:#6b3d34;transform:translateY(-2px)}
.nav-visit span{margin-left:8px;font-size:16px;font-weight:400}
.nav-toggle{display:none}
.hero{min-height:594px;display:grid;grid-template-columns:minmax(0,46%) minmax(0,54%);overflow:hidden}
.hero-copy{position:relative;display:flex;justify-content:flex-end;align-items:center;background:var(--forest);color:var(--cream);isolation:isolate}
.hero-copy::before{content:"";position:absolute;inset:0;opacity:.17;z-index:-1;background:radial-gradient(circle at 0 10%,#9b8354,transparent 30%),repeating-linear-gradient(45deg,transparent 0 9px,rgba(255,255,255,.025) 9px 10px)}
.hero-copy::after{content:"";position:absolute;z-index:-1;width:380px;height:380px;border:1px solid rgba(216,194,151,.13);border-radius:50%;bottom:-170px;left:-120px;box-shadow:0 0 0 37px rgba(216,194,151,.025),0 0 0 76px rgba(216,194,151,.025)}
.hero-copy-inner{width:min(100%,630px);padding:65px 48px 55px max(48px,calc((100vw - var(--shell))/2));margin-left:auto;position:relative}
.eyebrow{font:800 10px/1.7 var(--sans);color:#996142;letter-spacing:.24em;text-transform:uppercase}
.eyebrow-light{color:#e2c78e}
.eyebrow-line{display:inline-block;width:24px;height:1px;vertical-align:middle;background:#ddb985;margin-right:8px;transform:translateY(-2px)}
.hero h1{font:normal clamp(58px,5.2vw,86px)/.99 var(--serif);letter-spacing:-.066em;margin:29px 0 21px;max-width:590px;text-wrap:balance}
h1 em,h2 em{font-weight:normal;color:var(--rust)}
.hero h1 em{color:#edcf8e;font-weight:normal;letter-spacing:-.056em}
.hero-ornament{display:flex;align-items:center;gap:11px;color:var(--gold);margin:23px 0 21px}
.hero-ornament span{display:block;width:52px;height:1px;background:rgba(229,211,165,.52)}
.hero-ornament b{font-size:24px;font-weight:normal;line-height:1}
.hero-copy p{font:normal 16px/1.83 var(--sans);max-width:470px;color:#e4e4d9;margin:0}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:26px;margin-top:33px}
.button{min-height:53px;display:inline-flex;align-items:center;justify-content:center;gap:20px;border-radius:2px;padding:14px 24px;font:800 12px/1.3 var(--sans);letter-spacing:.04em;transition:transform .2s,background .2s,border-color .2s}
.button span{font-size:17px;font-weight:400}
.button:hover{transform:translateY(-2px)}
.button-gold{background:var(--gold);color:#1f342a;border:1px solid #e2c790}
.button-gold:hover{background:#ebd4a3}
.text-link{display:inline-flex;gap:7px;align-items:center;font:800 12px var(--sans);border-bottom:1px solid;padding-bottom:5px}
.text-link span{font-size:18px;font-weight:400}
.text-link-light{color:#f6ecdc;border-color:#9c9b81}
.text-link:hover{color:var(--gold)}
.hero-bottom-label{font-size:10px;letter-spacing:.19em;font-weight:700;color:#d5caaf;margin-top:62px}
.label-sun{color:var(--gold);font-size:20px;vertical-align:middle;margin-right:9px}
.hero-photo{position:relative;background-image:url('assets/bookshop-interior.webp');background-size:cover;background-position:center center;min-height:594px}
.hero-photo-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(25,22,17,.58),transparent 38%),linear-gradient(90deg,rgba(18,30,20,.17),transparent 45%)}
.round-seal{position:absolute;top:42px;right:49px;width:128px;height:128px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2px;transform:rotate(11deg);color:var(--forest);background:#f8eac7;outline:1px dashed #84734f;outline-offset:-10px;box-shadow:0 8px 20px #0004}
.round-seal span{font:800 9px var(--sans);letter-spacing:.09em}
.round-seal strong{font:700 17px/1.2 var(--serif);max-width:88px}
.round-seal .seal-dingbat{font-size:13px;color:var(--rust);line-height:1.2}
.photo-caption{position:absolute;bottom:32px;right:45px;display:flex;align-items:center;gap:13px;color:#fff3dc;font:700 12px var(--serif);font-style:italic;text-shadow:0 2px 8px #000b}
.photo-caption-line{width:42px;height:1px;background:var(--gold)}
.marquee-band{border-top:1px solid #dfd3be;border-bottom:1px solid #dfd3be;background:#eae0cd}
.marquee-inner{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;font:700 11px var(--serif);letter-spacing:.15em;color:#766047;text-align:center}
.marquee-inner i{font-style:normal;font-size:11px;color:#a67250}
.section-pad{padding:116px 0}
h2{font:normal clamp(40px,4.1vw,62px)/1.14 var(--serif);letter-spacing:-.06em;margin:17px 0 23px;text-wrap:balance}
p{margin:0 0 17px}
.welcome-section{background:#fbf7ef;position:relative;overflow:hidden}
.welcome-section::after{content:"";position:absolute;bottom:0;right:0;width:220px;height:220px;background:radial-gradient(circle,#e3d7bd3d 1px,transparent 2px);background-size:12px 12px;opacity:.5;pointer-events:none}
.welcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,6.3vw,105px);align-items:center}
.story-visual{position:relative;padding:16px 30px 22px 12px}
.story-photo-wrap{overflow:hidden;border-radius:225px 225px 4px 4px;max-height:530px;border:9px solid #efe7d7;box-shadow:0 12px 34px #483a261c}
.story-photo-wrap img{width:100%;height:510px;object-fit:cover;object-position:57% 45%;filter:saturate(.81) sepia(.06)}
.story-visual::before{position:absolute;content:"";z-index:0;border:1px solid #c5ac82;top:0;right:10px;bottom:0;left:0;border-radius:235px 235px 4px 4px}
.photo-ticket{position:absolute;bottom:-3px;right:-15px;background:#f3e3c6;color:var(--forest);border:1px solid #c7a778;width:212px;padding:21px 17px;text-align:center;box-shadow:0 8px 30px #382a201c;transform:rotate(5deg)}
.photo-ticket span{display:block;font:700 9px/1.5 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:#926d49}
.photo-ticket strong{display:block;font:normal 25px/1.4 var(--serif);letter-spacing:-.05em;margin:6px 0}
.photo-ticket span:last-child{text-transform:none;font:italic 13px var(--serif);letter-spacing:0}
.story-photo-accent{position:absolute;z-index:1;top:-8px;left:-27px;font-size:65px;color:#bb935f}
.welcome-copy{padding-right:3px;max-width:565px}
.welcome-copy h2{margin-bottom:23px}
.welcome-copy .lead{font:normal 21px/1.5 var(--serif);color:#35493d;margin-bottom:25px}
.welcome-copy p:not(.lead){font:14.5px/1.9 var(--sans);color:var(--copy)}
.welcome-copy p strong{color:var(--forest);font-weight:800}
.eyebrow-dot{margin-left:8px;color:#b1905b}
.story-aside{display:flex;gap:15px;border-top:1px solid var(--line);margin-top:22px;padding-top:20px}
.story-aside .aside-icon{font:35px/1 var(--serif);color:#a7864e}
.story-aside p{font-style:italic!important;font-size:13px!important;color:#766752!important}
.books-section{background:var(--paper);border-top:1px solid #ebe2d0}
.center-section-head{max-width:665px;margin:0 auto 49px;text-align:center}
.center-section-head h2{margin-bottom:17px}
.center-section-head>p{font:16px/1.8 var(--sans);color:var(--copy);max-width:580px;margin:auto}
.book-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.book-card{background:#fffaf2;border:1px solid #ddd0b9;box-shadow:0 8px 18px #3c35270a;transition:transform .25s,box-shadow .25s}
.book-card:hover{transform:translateY(-5px);box-shadow:0 18px 35px #3c35271c}
.book-card-image{height:230px;overflow:hidden;position:relative;background:#8e7861}
.book-card-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#21170925,transparent 28%,transparent)}
.book-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s;filter:saturate(.84)}
.book-card:nth-child(1) .book-card-image img{object-position:40% 60%}
.book-card:nth-child(2) .book-card-image img{object-position:51% 39%}
.book-card:nth-child(3) .book-card-image img{object-position:80% 36%}
.book-card:hover img{transform:scale(1.06)}
.card-number{position:absolute;z-index:1;top:18px;right:18px;background:var(--cream);padding:7px 10px;font:800 10px var(--sans);letter-spacing:.06em;color:#66543c}
.book-card-body{min-height:244px;padding:30px 29px 32px}
.card-overline{color:#a16d4a;font:800 10px var(--sans);letter-spacing:.16em}
.book-card-body h3{display:flex;align-items:center;justify-content:space-between;gap:12px;font:normal 31px/1.1 var(--serif);letter-spacing:-.055em;margin:12px 0 13px;color:var(--forest)}
.book-card-body h3 span{color:#b98f5d;font-size:21px}
.book-card-body p{font:14px/1.83 var(--sans);color:#605e55;margin:0}
.shelf-footnote{border-top:1px solid var(--line);margin-top:38px;padding-top:21px;display:flex;align-items:center;justify-content:center;gap:18px;font:italic 14px/1.65 var(--serif);text-align:center;color:#726b5c}
.shelf-footnote b{padding:0 6px;color:#ac845a;font-weight:normal}
.footnote-flourish{color:#bd9563;font-size:18px;font-style:normal}
.note-section{background:#264537;color:#f7f1df;border-top:4px double #e8d6af;border-bottom:4px double #e8d6af;position:relative;overflow:hidden}
.note-section::before{content:"";position:absolute;inset:0;opacity:.12;background:repeating-linear-gradient(107deg,transparent 0 37px,#efdcab 38px,transparent 39px)}
.note-inner{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr) 250px;align-items:center;gap:35px;padding-top:81px;padding-bottom:81px}
.note-ornament{font:160px/.6 var(--serif);color:#dfbc7c;align-self:start;margin-top:12px}
.note-inner h2{font-size:clamp(37px,3.65vw,52px);line-height:1.2;margin:13px 0 0;max-width:760px}
.note-inner h2 em{color:#e8c88a}
.note-aside{border-left:1px solid #879483;padding-left:32px;align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:17px}
.note-aside p{font:15px/1.84 var(--sans);color:#e5dfd0;margin:0}
.gold-circle{color:#eacb90;border:1px solid #c8af7b;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:22px}
.proprietor-section{background:#fcf8f0}
.proprietor-grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(45px,8vw,126px)}
.proprietor-copy{max-width:615px}
.proprietor-copy>p{color:var(--copy);font:15px/1.91 var(--sans)}
.signature-card{position:relative;margin-top:29px;border-left:3px solid #cba66e;padding:9px 0 11px 26px}
.signature-card>span{display:block;font:800 10px var(--sans);letter-spacing:.17em;color:#976744}
.signature-card blockquote{font:italic 22px/1.52 var(--serif);letter-spacing:-.025em;color:#344d3b;margin:13px 0 15px}
.signature{font:italic 21px var(--serif);color:#926445}
.proprietor-visual{position:relative;max-width:490px;margin:0 auto;width:100%;padding:22px 15px 25px 30px}
.proprietor-photo{position:relative;z-index:1;overflow:hidden;height:474px;border:9px solid #e9ddc7;box-shadow:0 12px 30px #45321e24}
.proprietor-photo img{width:100%;height:100%;object-fit:cover;object-position:64% 45%;filter:saturate(.72)}
.proprietor-visual::before{position:absolute;content:"";inset:0 0 0 50px;border:1px solid #bba67f}
.proprietor-photo-tag{position:absolute;z-index:3;right:-30px;bottom:-8px;background:var(--rust);padding:23px 28px;color:#fcf0da;transform:rotate(-5deg);font:italic 20px/1.23 var(--serif);box-shadow:0 8px 18px #0002}
.proprietor-photo-tag span{font:normal 19px var(--sans);margin-left:10px}
.visit-section{background:#eee6d6;border-top:1px solid #ded4be}
.visit-heading{max-width:790px;margin:0 0 50px}
.visit-heading h2{margin-bottom:17px}
.visit-heading p{max-width:665px;color:#615d53;font:16px/1.7 var(--sans)}
.visit-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:52px;align-items:stretch}
.visit-info{border-top:1px solid #cabba3}
.info-group{padding:29px 0;border-bottom:1px solid #cabba3;display:grid;grid-template-columns:38px minmax(0,1fr);gap:17px}
.info-group h3{font:normal 27px/1.3 var(--serif);letter-spacing:-.04em;margin:0 0 12px;color:var(--forest)}
.info-group p{font:14px/1.87 var(--sans);color:#544f46;margin:0}
.info-group strong{color:var(--forest)}
.info-icon{width:32px;height:32px;border:1px solid #b69663;border-radius:50%;display:grid;place-items:center;color:#926548}
.info-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.muted{color:#807361}
.hours-list{width:100%;margin:0;font:14px/2 var(--sans);color:#544f46}
.hours-list div{display:flex;gap:10px;justify-content:space-between}
.hours-list dt,.hours-list dd{margin:0}
.hours-list dd{font-weight:700;white-space:nowrap;color:#374539}
.email-link{font:800 14px var(--sans);color:var(--rust);border-bottom:1px solid #b59179;display:inline-block;padding:2px 0 5px;margin-top:13px;overflow-wrap:anywhere}
.email-link:hover{color:#633b31}
.email-link span{font-size:18px}
.map-card{border:1px solid #ccb999;background:#f9f2e3;box-shadow:0 10px 32px #5a4b3011;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between}
.map-card-top{display:flex;justify-content:space-between;gap:10px;padding:19px 23px 14px;color:#856144;font:800 10px var(--sans);letter-spacing:.13em}
.map-card img{width:calc(100% - 38px);max-height:435px;object-fit:contain;margin:0 19px;border:1px solid #d3c5ac}
.map-card-bottom{text-align:center;color:#635747;padding:17px;font:italic 16px/1.4 var(--serif)}
.map-card-bottom span{font:normal 18px var(--serif);color:#a77954;margin-right:7px}
.final-invite{background:var(--rust);color:#fff4df}
.final-invite-inner{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-top:45px;padding-bottom:46px}
.final-invite h2{font-size:clamp(34px,4vw,52px);margin:6px 0 0}
.final-invite .eyebrow{color:#e9c695}
.button-cream{background:#f8eddb;color:var(--forest);white-space:nowrap}
.button-cream:hover{background:#fffaf1}
.site-footer{background:var(--forest-dark);color:#d8dfce;padding-top:56px}
.footer-main{display:grid;grid-template-columns:1.2fr 1.2fr .65fr;align-items:center;gap:50px;padding-bottom:52px}
.footer-brand img{filter:brightness(1.3) sepia(.2);width:70px;height:70px}
.footer-brand span{display:flex;flex-direction:column}
.footer-brand strong{font:normal 38px/1 var(--serif);color:#f0e2c9;font-variant:small-caps;letter-spacing:-.04em}
.footer-brand small{font:700 10px/2 var(--sans);color:#dcbf91;letter-spacing:.14em}
.footer-main>p{font:13px/1.9 var(--sans);margin:0}
.footer-nav{display:grid;grid-template-columns:repeat(2,max-content);gap:12px 24px;justify-content:end}
.footer-nav a{font:700 12px var(--sans);color:#e8e4d8}
.footer-nav a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid #526357;display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:20px;padding-bottom:25px;font:11px/1.4 var(--sans);color:#b3bcad}
.footer-bottom span span{color:#d9ad70}
@media (min-width:1600px){.hero-copy-inner{padding-left:max(72px,calc((100vw - var(--shell))/2))}.hero{min-height:654px}.hero-photo{min-height:654px}}
@media (max-width:1180px){
  .shell{width:min(var(--shell),calc(100% - 64px))}
  .header-inner{height:96px}.brand-type strong{font-size:36px}.brand-mark{width:58px;height:58px}.main-nav{gap:23px}
  .hero-copy-inner{padding-left:42px;padding-right:36px}.hero h1{font-size:clamp(54px,5.6vw,72px)}.hero{min-height:550px}.hero-photo{min-height:550px}
  .welcome-grid{gap:58px}.book-card-body{padding:26px 23px}.book-card-body h3{font-size:28px}
  .proprietor-grid{gap:60px}.visit-grid{gap:32px}.note-inner{grid-template-columns:55px 1fr 220px;gap:23px}
}
@media (max-width:900px){
  .top-ribbon{font-size:9px}.ribbon-right{display:none}
  .nav-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:48px;height:46px;border:1px solid #d5c8b0;background:transparent;cursor:pointer}
  .nav-toggle span{width:22px;height:2px;background:var(--forest);transition:transform .2s,opacity .2s}
  .nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);border-top:1px solid #e5dcc8;border-bottom:1px solid #cdbda2;padding:22px 32px 30px;flex-direction:column;align-items:stretch;gap:4px;box-shadow:0 14px 20px #1a261724}
  .main-nav.is-open{display:flex}.main-nav>a{font-size:15px;padding:14px 8px}
  .main-nav .nav-visit{margin:13px 0 0;text-align:center;padding:16px}
  .hero{grid-template-columns:1fr 1fr}.hero-copy-inner{padding:55px 29px 50px 32px}.hero h1{font-size:clamp(47px,6vw,65px)}.hero-copy p{font-size:14px}.hero-bottom-label{margin-top:42px}.round-seal{width:110px;height:110px;right:25px;top:25px}.photo-caption{right:24px;bottom:25px;font-size:11px}
  .section-pad{padding:85px 0}.welcome-grid{gap:40px}.story-visual{padding-right:15px}.story-photo-wrap img{height:480px}.photo-ticket{width:170px;right:-15px}.photo-ticket strong{font-size:22px}.welcome-copy .lead{font-size:18px}.welcome-copy p:not(.lead){font-size:13px}
  .book-cards{gap:17px}.book-card-image{height:177px}.book-card-body{padding:23px 19px 25px;min-height:276px}.book-card-body h3{font-size:27px}.book-card-body p{font-size:13px}
  .note-inner{grid-template-columns:1fr 190px;padding:65px 0}.note-ornament{display:none}.note-aside{padding-left:23px}.note-inner h2{font-size:40px}
  .proprietor-grid{gap:38px}.proprietor-photo{height:420px}.proprietor-photo-tag{right:-10px;font-size:17px}
  .visit-grid{grid-template-columns:1fr 1.05fr;gap:26px}.map-card img{max-height:415px}
  .footer-main{gap:30px}.footer-brand strong{font-size:31px}.footer-brand img{width:55px;height:55px}
}
@media (max-width:700px){
  .shell{width:calc(100% - 42px)}.header-inner{height:82px}.brand-type strong{font-size:32px}.brand-type small{font-size:9px}.brand-mark{width:52px;height:52px}.wordmark{gap:5px}
  .hero{grid-template-columns:1fr}.hero-copy{order:2;justify-content:flex-start}.hero-photo{order:1;min-height:330px;background-position:center 50%}
  .hero-copy-inner{padding:49px 27px 50px;max-width:none}.hero h1{font-size:clamp(50px,11vw,72px);margin:16px 0 16px}.hero-bottom-label{margin-top:36px}.hero-copy p{font-size:15px}.hero-actions{margin-top:25px}
  .round-seal{top:20px;right:21px}.photo-caption{bottom:19px;right:17px;font-size:11px}
  .marquee-inner{min-height:53px;justify-content:center;flex-wrap:wrap;gap:6px 13px;padding:9px 0;font-size:9px}.marquee-inner span:nth-of-type(n+3),.marquee-inner i:nth-of-type(n+3){display:none}
  .section-pad{padding:70px 0}.welcome-grid{grid-template-columns:1fr;gap:47px}.story-visual{max-width:440px;width:calc(100% - 20px);margin:0 auto}.story-photo-wrap img{height:405px}.story-photo-wrap{max-height:425px}.photo-ticket{right:-12px}.welcome-copy{max-width:none}.welcome-copy h2{font-size:clamp(38px,9vw,50px)}.welcome-copy p:not(.lead){font-size:14px}.welcome-copy .lead{font-size:20px}
  .center-section-head{margin-bottom:30px}.center-section-head h2{font-size:clamp(42px,9vw,55px)}.book-cards{grid-template-columns:1fr;gap:22px;max-width:520px;margin:auto}.book-card-image{height:240px}.book-card-body{min-height:0;padding:26px 27px 28px}.book-card-body h3{font-size:32px}.book-card-body p{font-size:14px}
  .shelf-footnote{gap:12px;font-size:13px}.footnote-flourish{display:none}.shelf-footnote b{padding:0 3px}
  .note-inner{grid-template-columns:1fr;gap:25px}.note-inner h2{font-size:clamp(38px,9vw,50px)}.note-aside{border-left:0;border-top:1px solid #879483;padding:22px 0 0;flex-direction:row;align-items:center}.note-aside p{font-size:14px}
  .proprietor-grid{grid-template-columns:1fr;gap:28px}.proprietor-copy{max-width:none}.proprietor-photo{height:390px}.proprietor-visual{max-width:480px;padding-top:10px}.proprietor-photo-tag{right:-5px;bottom:3px}
  .visit-heading{margin-bottom:34px}.visit-grid{grid-template-columns:1fr;gap:30px}.map-card{max-width:600px;width:100%;margin:auto}.map-card img{max-height:none}.info-group{padding:25px 0}
  .final-invite-inner{flex-direction:column;align-items:flex-start;gap:25px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>p{order:3;grid-column:1/-1}.footer-nav{justify-content:start}.footer-bottom{align-items:flex-start;flex-direction:column;gap:6px}
}
@media (max-width:430px){
 .shell{width:calc(100% - 34px)}.brand-type strong{font-size:28px}.brand-mark{width:48px;height:48px}.brand-type small{gap:5px;letter-spacing:.075em}.brand-rule{width:20px}
 .top-ribbon{font-size:8px}.hero-photo{min-height:265px}.round-seal{width:98px;height:98px}.round-seal strong{font-size:14px}.round-seal span{font-size:8px}.round-seal .seal-dingbat{font-size:10px}.hero-copy-inner{padding:41px 23px 43px}.hero h1{font-size:clamp(46px,12vw,61px)}.hero-actions{gap:20px}.hero-copy p{font-size:14px}.button{padding:13px 18px}.eyebrow{font-size:9px}
 .story-photo-wrap img{height:365px}.photo-ticket{width:146px;padding:14px 10px}.photo-ticket strong{font-size:19px}.welcome-copy h2,.visit-heading h2{font-size:40px}
 .book-card-image{height:203px}.book-card-body{padding:24px}.note-inner h2{font-size:37px}.note-aside{align-items:flex-start}.gold-circle{flex-shrink:0}
 .hours-list{font-size:12px}.info-group{grid-template-columns:30px 1fr;gap:13px}.map-card-top{font-size:8px;gap:6px;padding:14px 12px 10px}.map-card img{width:calc(100% - 24px);margin:0 12px}.footer-main{grid-template-columns:1fr}.footer-main>p{grid-column:auto;order:0}.footer-nav{grid-template-columns:repeat(2,max-content)}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
