/* A fixed editorial format. Paper, typography and photographs scale together. */
.collector{background:#e9e4d9;overflow:hidden}
.collector-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;min-height:640px}
.collector-copy h2{font-size:clamp(60px,6vw,98px);margin:34px 0}
.collector-copy>p:not(.eyebrow){font-size:16px;max-width:400px;color:#697066}
.collector-copy .text-button{margin-top:24px}.collector-copy .collector-note{font-size:12px!important;margin-top:22px}
.book-object{border:0;padding:0;position:relative;display:block;background:none;text-align:left;cursor:pointer;width:min(100%,435px);aspect-ratio:500/740;transform:rotate(3deg);box-shadow:25px 40px 50px #15231e38;transition:transform .7s;justify-self:center;container-type:inline-size}
.book-object:hover{transform:rotate(1deg)}
.book-object:after{content:'';position:absolute;top:5px;bottom:4px;width:8px;right:-8px;background:repeating-linear-gradient(#d3cec1 0px,#f4eee1 1px,#f4eee1 3px);transform:skewY(25deg);transform-origin:left}
.book-object-cover{position:absolute;inset:0;display:block;background:#183029;color:#eaddbd;overflow:hidden;border-left:9px solid #0e231d;box-shadow:inset 7px 0 6px #0005}
/* Fixed proportional panels keep the same composition in Safari and on desktop. */
.book-cover-brand{position:absolute;top:0;left:0;width:100%;height:17%;display:flex;align-items:center;padding:0 8%;font:32px var(--serif);font-size:8cqw;letter-spacing:-.05em}
.book-cover-photo{position:absolute;top:17%;left:0;width:100%;height:44%;display:block;overflow:hidden}
.book-cover-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-width:100%;max-height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.book-object-title{position:absolute;top:61%;left:0;width:100%;height:29%;display:flex;flex-direction:column;justify-content:center;padding:0 8%;background:#183029;font:40px/.94 var(--serif);font-size:12.5cqw;letter-spacing:-.03em}
.book-object-title em{color:#c9b591}
.book-object-bottom{position:absolute;top:90%;left:0;width:100%;height:10%;display:block;padding:0 8%;background:#183029;font-size:10px;font-size:2.5cqw;line-height:1.5;letter-spacing:.12em}
.book-object-spine{position:absolute;left:-25px;top:0;bottom:0;width:25px;writing-mode:vertical-rl;transform:rotate(180deg);background:#0f251e;color:#cbb891;text-align:center;padding:20px 6px;font-size:12px;letter-spacing:.15em}
.ui-icon{display:inline-block;vertical-align:middle;width:1em;height:1em;min-width:1em;flex:none;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:square;stroke-linejoin:miter}
#book-dialog{width:100%;max-width:none;height:100svh;height:100dvh;max-height:none;margin:0;border:0;padding:0;background:#17231f;color:#eae4d4;overflow:hidden}
#book-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.book-reader-top,.book-reader-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 4%;min-width:0}
.book-reader-top{min-height:64px;padding-top:max(10px,env(safe-area-inset-top));border-bottom:1px solid #aabd9a33;font-size:12px;letter-spacing:.13em}
.book-reader-top i{font-style:normal;color:#b4bda9;margin-left:10px}
.book-reader-top button,.book-reader-bottom button{display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:none;border:1px solid #a6b1996b;background:none;color:#f3eddc;font:14px var(--sans);min-height:44px;min-width:44px;padding:9px 18px}
.book-reader-bottom{min-height:76px;padding-bottom:max(10px,env(safe-area-inset-bottom));border-top:1px solid #aabd9a14}
.book-reader-bottom button:disabled{opacity:.3;cursor:default}
.book-reader-bottom>div{display:flex;gap:22px;align-items:center;min-width:0}
.book-reader-bottom select{appearance:none;-webkit-appearance:none;font:14px var(--sans);border:0;border-bottom:1px solid #a6b19977;color:#efe7d6;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23c6b18b' stroke-width='1'/%3E%3C/svg%3E") no-repeat right center/10px 7px;padding:8px 22px 8px 0;border-radius:0;max-width:100%;min-height:44px;text-overflow:ellipsis}
.book-reader-bottom option{background:#17231f;color:#efe7d6}
.book-reader-bottom>div>span{font-size:12px;color:#c1c5b6;white-space:nowrap}
.book-viewport{min-height:0;min-width:0;overflow:auto;display:flex;padding:20px 4%;overscroll-behavior:contain;touch-action:pan-y}
.book-spread{--folio-width:320px;--folio-height:473.6px;--folio-scale:.64;display:flex;flex:none;width:calc(var(--folio-width)*2);height:var(--folio-height);margin:auto;box-shadow:0 22px 70px #0006}
.book-spread.single{width:var(--folio-width)}
/* Explicit dimensions also keep an absolutely positioned cover measurable in Safari. */
.folio{position:relative;flex:0 0 var(--folio-width);width:var(--folio-width);height:var(--folio-height);min-width:0;overflow:hidden;background:#f4f0e7;color:#29362f}
.folio-sheet{position:absolute;top:0;left:0;width:500px;height:740px;padding:32px;display:flex;flex-direction:column;gap:18px;transform:scale(var(--folio-scale));transform-origin:top left;overflow:hidden}
.folio-sheet>*{flex-shrink:0;min-width:0}
.folio+.folio:before{content:'';position:absolute;inset:0 auto 0 0;width:14px;pointer-events:none;background:linear-gradient(90deg,#14221914,transparent);z-index:3}
.folio .folio-kicker{font:16px/1.4 var(--sans);letter-spacing:.11em;color:#867654}
.folio h3{font:54px/.96 var(--serif);letter-spacing:-.035em;margin:0}
.folio h3 em{color:#8c7958}
.folio p{font:20px/1.5 var(--sans);margin:0}
.folio .folio-caption{font:18px/1.5 var(--sans);color:#6c7267}
.folio-number{margin-top:auto;display:flex;justify-content:space-between;gap:15px;border-top:1px solid #8b92792e;padding-top:14px;font:16px/1.4 var(--sans);letter-spacing:.1em}
/* Photographs have no intrinsic influence on the page grid, even after decoding. */
.folio-photo{position:relative;margin:0;width:100%;flex:1 1 0;min-height:0;overflow:hidden}
.folio-photo .folio-picture{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.folio-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;min-height:0;max-height:100%;object-fit:contain}
.folio-diptych,.folio-plan-images{display:grid;flex:1 1 0;min-height:0;gap:14px;overflow:hidden}
.folio-diptych{grid-template-rows:repeat(2,minmax(0,1fr))}
.folio-diptych .folio-photo{height:100%}
.folio-plan-images{grid-template-columns:repeat(2,minmax(0,1fr))}
.folio-plan-images>figure{position:relative;margin:0;min-width:0;min-height:0}
.folio-plan-images img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.folio.dark{background:#172b24;color:#efe9d6}
.folio.dark .folio-kicker,.folio.dark .folio-caption{color:#bdc4ae}.folio.dark h3 em{color:#c6b18b}
.folio.dark .folio-number{border-color:#bdc4ae3d}
.folio.cover .folio-sheet{padding:0;display:block;background:#13271f}
.folio .folio-cover-image{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:.86}
.folio-cover-shade{position:absolute;inset:0;background:linear-gradient(0deg,#101e1de6,transparent 78%)}
.folio-cover-brand{position:absolute;top:38px;left:38px;right:38px;display:flex;justify-content:space-between;gap:20px;font:34px var(--serif);border-bottom:1px solid #efe8d775;padding-bottom:18px;z-index:1}
.folio-cover-brand span{font:14px var(--sans);align-self:center;letter-spacing:.12em}
.folio-cover-title{position:absolute;bottom:115px;left:38px;right:38px;color:#fff;z-index:1}
.folio-cover-title h3{font-size:72px;line-height:.92}.folio-cover-title p{font-size:15px;letter-spacing:.12em;margin-top:24px}
.folio.cover .folio-number{position:absolute;bottom:32px;left:38px;right:38px;color:#eee7d6;border-color:#efe8d73a}
.folio-credits{margin-top:auto;border-top:1px solid #acae9b70;padding-top:16px;display:grid;gap:10px;font:18px/1.4 var(--sans)}
.folio-credits div{display:flex;justify-content:space-between;gap:15px}.folio-credits b{font-weight:400}
.folio.intro-page .folio-sheet{gap:17px}.folio.intro-page h3{font-size:52px}
.folio-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin:0}
.folio-facts dt{font:17px/1.4 var(--sans);color:#727b6b}.folio-facts dd{font:38px/1.15 var(--serif);margin:2px 0 0}
.folio-link{display:inline-flex;gap:12px;align-items:center;min-height:38px;font:18px/1.4 var(--sans);text-decoration:underline;text-underline-offset:6px;background:none;border:0;padding:0;text-align:left;color:inherit;align-self:start}
.folio-link .ui-icon{width:16px;height:16px}
.folio.facts-page .folio-sheet{gap:9px}.folio.facts-page h3{font-size:50px}.folio.facts-page p{font-size:18px}.folio.facts-page .folio-caption{font-size:17px;line-height:1.4}
.folio.contact-page .folio-sheet{gap:15px}.folio.contact-page .folio-photo{flex:1 1 0}
.folio.contact-page .folio-contact-details{font-size:19px;line-height:1.5;overflow-wrap:anywhere}
.book-reader-top button:focus-visible,.book-reader-bottom button:focus-visible,.book-reader-bottom select:focus-visible,.folio button:focus-visible{outline:2px solid #c6ae7f;outline-offset:4px}
@media(max-width:900px){.collector-layout{gap:8%;min-height:500px}.book-reader-bottom>div{gap:12px}}
@media(max-width:700px){
 .collector-layout{grid-template-columns:1fr;gap:60px}.collector-copy h2{font-size:66px}.collector-copy>p:not(.eyebrow){max-width:480px}
 .book-object{width:82%;max-width:350px;margin:0 auto 36px}
 .book-reader-top{padding-left:16px;padding-right:16px;gap:12px;min-height:60px}.book-reader-top i{display:none}
 .book-reader-bottom{padding-left:12px;padding-right:12px;gap:10px;min-height:86px}
 .book-reader-bottom button{padding:10px 12px}.book-reader-bottom button span{display:none}
 .book-reader-bottom>div{flex-direction:column;gap:0;flex:1}.book-reader-bottom select{font-size:14px;width:100%;max-width:220px}
 .book-viewport{padding:16px 12px}
}
@media(prefers-reduced-motion:reduce){.book-object{transition:none;transform:none}}
