:root{--max: 1200px}*,*:before,*:after{box-sizing:border-box}.sh{position:sticky;top:0;z-index:50;background:color-mix(in oklab,var(--paper) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--hair)}.sh__util{background:var(--ink);color:var(--paper);font-family:var(--ff-mono);font-size:11px;letter-spacing:.06em}.sh__util-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;gap:14px;flex-wrap:wrap}.sh__util a{color:var(--gilt-soft);display:inline-flex;align-items:center;gap:6px}.sh__util a:hover{color:var(--paper)}.sh__util .dot{color:color-mix(in oklab,var(--paper) 35%,transparent);margin:0 4px}.sh__main{padding:14px 0}.sh__row{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink)}.brand__mark{color:var(--leather);display:inline-flex}.brand__lockup{display:flex;flex-direction:column;line-height:1}.brand__name{font-family:var(--ff-display);font-size:22px;letter-spacing:.04em;color:var(--ink)}.brand__sub{font-family:var(--ff-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);margin-top:5px}.nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:0}.nav a{font-family:var(--ff-body);font-size:14px;color:var(--ink-soft);font-weight:500;padding-bottom:2px;border-bottom:1px solid transparent}.nav a:hover{color:var(--leather);border-bottom-color:var(--leather)}.cta{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:var(--moss);color:var(--paper);font-size:13px;font-weight:600;border-radius:3px;border:1px solid var(--moss-deep);transition:background .18s ease}.cta:hover{background:var(--moss-deep);color:var(--paper)}.cta--block{display:flex;justify-content:center;padding:14px 16px;width:100%}.burger{display:none;background:none;border:0;cursor:pointer;padding:8px}.burger span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;transition:transform .2s}.drawer{position:fixed;inset:64px 0 0;background:var(--paper);transform:translate(100%);transition:transform .25s ease;padding:32px var(--gutter);z-index:40;display:flex;flex-direction:column;gap:28px}.drawer[aria-hidden=false]{transform:translate(0)}.drawer nav{display:flex;flex-direction:column;gap:18px}.drawer nav a{font-family:var(--ff-display);font-style:italic;font-size:24px;color:var(--ink)}.drawer__foot{margin-top:auto;padding-top:24px;border-top:1px solid var(--hair)}.drawer__call{display:block;margin-top:14px;font-family:var(--ff-mono);font-size:14px;color:var(--ink)}.drawer__foot p{margin-top:8px;font-size:13px;color:var(--ink-mute);font-family:var(--ff-mono)}.hero{padding:clamp(40px,6vw,90px) 0 clamp(50px,7vw,100px)}.hero__grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(36px,5vw,70px);align-items:center}.hero__eye{display:inline-flex;align-items:center;gap:8px;font-family:var(--ff-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--leather);font-weight:600}.hero__h1{font-size:clamp(40px,5.4vw,68px);margin-top:18px;line-height:1.06;letter-spacing:-.01em}.hero__h1 em{font-style:italic;color:var(--leather)}.hero__lede{margin-top:22px;font-size:17px;line-height:1.7;color:var(--ink-soft);max-width:620px}.hero__badges{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}.badge{background:color-mix(in oklab,var(--paper) 70%,#fff);border:1px solid var(--hair-strong);border-radius:4px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:4px}.badge strong{font-family:var(--ff-display);font-style:italic;font-size:22px;color:var(--ink);line-height:1}.badge span{font-family:var(--ff-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.badge--gilt{background:color-mix(in oklab,var(--gilt-soft) 25%,var(--paper));border-color:var(--gilt)}.badge--gilt strong{color:var(--leather-deep)}.badge--gilt span{color:var(--leather)}.hero__ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;font-size:14px;font-weight:600;letter-spacing:.02em;border-radius:3px;transition:background .18s ease,color .18s ease,border-color .18s ease}.btn--leather{background:var(--leather);color:var(--paper);border:1px solid var(--leather-deep)}.btn--leather:hover{background:var(--leather-deep);color:var(--paper)}.btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--hair-strong)}.btn--ghost:hover{color:var(--leather);border-color:var(--leather)}.btn--block{display:flex;justify-content:center;width:100%;padding:16px}.hero__plate{position:relative}.hero__photo{margin:0;border-radius:4px;overflow:hidden;box-shadow:var(--shadow-lift);border:1px solid var(--hair-strong);position:relative}.hero__photo img{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover;object-position:center}.hero__photo figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 16px;background:var(--paper-soft);border-top:1px solid var(--hair);font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}.hero__photo figcaption em{font-family:var(--ff-display);font-style:italic;text-transform:none;letter-spacing:0;font-size:12px;color:var(--ink)}.section-head{max-width:760px;margin:0 auto clamp(36px,5vw,60px);text-align:center}.section-h{font-size:clamp(30px,4vw,46px);line-height:1.1;margin-top:12px;font-style:italic;letter-spacing:-.01em}.section-h em{color:var(--leather)}.section-lede{margin-top:18px;font-size:16.5px;line-height:1.7;color:var(--ink-soft)}.bindery{padding:clamp(60px,8vw,110px) 0 clamp(50px,7vw,90px);border-top:1px solid var(--hair)}.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.craft-card{background:color-mix(in oklab,var(--paper) 70%,#fff);border:1px solid var(--hair-strong);border-radius:4px;padding:26px 26px 28px;display:flex;flex-direction:column;gap:12px;position:relative}.craft-card__eye{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--leather);font-weight:700}.craft-card__h{font-family:var(--ff-display);font-style:italic;font-size:22px;line-height:1.25;color:var(--ink)}.craft-card__rule{width:38px;height:1px;background:var(--gilt)}.craft-card__line{font-size:14.5px;line-height:1.65;color:var(--ink-soft)}.craft-card__num{margin-top:auto;padding-top:16px;border-top:1px dashed var(--hair-strong);font-family:var(--ff-display);font-style:italic;font-size:40px;line-height:1;color:var(--leather);display:flex;align-items:baseline;gap:10px}.craft-card__num span{font-family:var(--ff-mono);font-style:normal;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute)}.bindery-photo{margin:50px 0 0;border:1px solid var(--hair-strong);border-radius:4px;overflow:hidden}.bindery-photo img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}.bindery-photo figcaption{padding:12px 18px;background:var(--paper-soft);border-top:1px solid var(--hair);font-family:var(--ff-mono);font-size:11px;letter-spacing:.06em;color:var(--ink-mute)}.bookshop{padding:clamp(60px,8vw,110px) 0}.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.trio__card{margin:0;border:1px solid var(--hair-strong);border-radius:4px;overflow:hidden;background:var(--paper-soft);display:flex;flex-direction:column}.trio__photo{background:var(--ink);aspect-ratio:4/5;overflow:hidden}.trio__photo--portrait img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.trio__card figcaption{padding:18px 20px 22px;display:flex;flex-direction:column;gap:8px}.trio__eye{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--leather);font-weight:700}.trio__h{font-family:var(--ff-display);font-style:italic;font-size:21px;line-height:1.25;color:var(--ink)}.trio__card p{font-size:14.5px;line-height:1.65;color:var(--ink-soft)}.services{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:56px}.service{border-top:1px solid var(--gilt);padding:22px 6px 4px}.service__tag{font-family:var(--ff-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);font-weight:700}.service__h{font-family:var(--ff-display);font-style:italic;font-size:21px;line-height:1.25;color:var(--ink);margin-top:8px}.service__line{font-size:14.5px;line-height:1.7;color:var(--ink-soft);margin-top:12px}.service__caveat{display:block;margin-top:14px;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.06em;color:var(--leather)}.royal{background:var(--ink);color:var(--paper);padding:clamp(60px,9vw,130px) 0;background-image:radial-gradient(ellipse 50% 50% at 0% 0%,color-mix(in oklab,var(--leather) 35%,transparent) 0%,transparent 60%),radial-gradient(ellipse 60% 60% at 100% 100%,color-mix(in oklab,var(--moss-deep) 50%,transparent) 0%,transparent 60%)}.royal__grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,6vw,80px);align-items:start}.royal__eye{color:var(--gilt-soft)}.royal__h{font-family:var(--ff-display);font-size:clamp(34px,4.4vw,58px);line-height:1.08;font-style:italic;color:var(--paper);margin-top:16px}.royal__h em{color:var(--gilt)}.royal p{margin-top:22px;font-size:17px;line-height:1.8;color:color-mix(in oklab,var(--paper) 88%,transparent)}.royal__body{font-size:16px}.royal__quote{margin:38px 0 0;padding:22px 28px;border-left:3px solid var(--gilt);background:color-mix(in oklab,var(--paper) 7%,transparent)}.royal__quote p{font-family:var(--ff-display);font-style:italic;font-size:21px;line-height:1.45;color:var(--paper);margin-top:0}.royal__quote cite{display:block;margin-top:14px;font-family:var(--ff-mono);font-style:normal;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gilt-soft)}.royal__quote cite em{font-family:var(--ff-display);font-style:italic;text-transform:none;letter-spacing:0;font-size:13px;color:var(--paper)}.royal__plate{position:relative}.royal__photo{margin:0;border-radius:4px;overflow:hidden;border:1px solid var(--gilt);box-shadow:var(--shadow-lift)}.royal__photo img{width:100%;height:auto;display:block;filter:sepia(.12) contrast(1.02)}.royal__photo figcaption{padding:12px 16px;background:color-mix(in oklab,var(--paper) 10%,var(--ink));color:var(--gilt-soft);font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.08em}.royal__seal{position:absolute;right:-8px;top:-22px;color:var(--gilt);width:80px;height:80px;background:var(--ink);border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center}.timeline-wrap{margin-top:clamp(60px,8vw,100px)}.timeline-eye{color:var(--gilt-soft);display:block;text-align:center}.timeline{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid color-mix(in oklab,var(--gilt) 40%,transparent)}.timeline__row{display:grid;grid-template-columns:140px 1fr;gap:32px;padding:22px 0;border-bottom:1px solid color-mix(in oklab,var(--gilt) 25%,transparent);align-items:baseline}.timeline__year{font-family:var(--ff-display);font-style:italic;font-size:30px;color:var(--gilt);line-height:1}.timeline__label{display:block;font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gilt-soft);margin-bottom:8px;font-weight:700}.timeline__row p{color:color-mix(in oklab,var(--paper) 88%,transparent);font-size:15.5px;line-height:1.7;margin-top:0}.commission{padding:clamp(60px,8vw,110px) 0}.commission__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,60px);align-items:start}.commission__copy p{font-size:16px;line-height:1.75;color:var(--ink-soft);margin-top:22px}.commission__list{list-style:none;padding:0;margin:22px 0 0}.commission__list li{padding:9px 0 9px 20px;position:relative;font-size:15px;line-height:1.7;color:var(--ink-soft);border-bottom:1px solid var(--hair)}.commission__list li:last-child{border-bottom:0}.commission__list li:before{content:"•";position:absolute;left:0;top:9px;color:var(--leather)}.commission__list li strong{color:var(--ink);font-weight:700}.commission__quiet{margin-top:22px;font-size:14.5px;color:var(--ink-mute);font-style:italic;line-height:1.65}.commission__form{background:color-mix(in oklab,var(--paper) 60%,#fff);border:1px solid var(--hair-strong);border-radius:4px;padding:32px 30px;box-shadow:var(--shadow-soft)}.commission__form-h{font-family:var(--ff-display);font-style:italic;font-size:24px;color:var(--ink);margin-bottom:18px}.row{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.row label{font-family:var(--ff-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);font-weight:600}.row input,.row textarea{font-family:var(--ff-body);font-size:14.5px;line-height:1.5;color:var(--ink);padding:11px 12px;border:1px solid var(--hair-strong);border-radius:3px;background:var(--paper);transition:border-color .18s ease}.row input:focus,.row textarea:focus{border-color:var(--leather);outline:2px solid var(--gilt);outline-offset:0}.form-thanks{margin-top:14px;font-size:14px;line-height:1.6;color:var(--moss);padding:14px 16px;background:color-mix(in oklab,var(--moss-soft) 18%,var(--paper));border-left:3px solid var(--moss);border-radius:0 3px 3px 0}.visit{padding:clamp(60px,8vw,110px) 0;border-top:1px solid var(--hair);background:color-mix(in oklab,var(--paper-soft) 60%,var(--paper))}.visit__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.visit__card{background:var(--paper);border:1px solid var(--hair-strong);border-radius:4px;padding:30px 30px 32px;box-shadow:var(--shadow-soft)}.visit__eye{font-family:var(--ff-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--leather);font-weight:700}.visit__h{font-family:var(--ff-display);font-style:italic;font-size:28px;line-height:1.2;color:var(--ink);margin-top:8px}.visit__h em{color:var(--leather)}.visit__sub{margin-top:22px;font-size:14px;line-height:1.65;color:var(--ink-mute);font-style:italic}.hours{margin:22px 0 0;padding:0}.hours__row{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:10px 0;border-bottom:1px dashed var(--hair);font-family:var(--ff-mono);font-size:13px;align-items:baseline}.hours__row:last-child{border-bottom:0}.hours__row dt{color:var(--ink);font-weight:600}.hours__row dd{color:var(--ink-soft);margin:0}.hours__row--closed dd{color:var(--ink-mute);font-style:italic}.sign__head{text-align:center;padding:0 0 4px}.sign__eye{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.2em;color:var(--leather);font-weight:700}.sign__rule{width:60%;height:1px;background:var(--gilt);margin:14px auto}.sign__h{font-family:var(--ff-display);font-style:italic;font-size:28px;line-height:1.18;color:var(--ink)}.sign__h em{color:var(--leather)}.sign__list{margin:26px 0 0;display:grid;grid-template-columns:90px 1fr;gap:8px 18px}.sign__list dt{font-family:var(--ff-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);font-weight:700;padding-top:3px}.sign__list dd{margin:0;font-size:14px;line-height:1.65;color:var(--ink-soft)}.sign__list a{color:var(--leather);border-bottom:1px solid var(--gilt)}.visit-map{margin:36px 0 0;border:1px solid var(--hair-strong);border-radius:4px;overflow:hidden;background:var(--paper);box-shadow:var(--shadow-soft)}.visit-map iframe{display:block;width:100%;height:380px;border:0;filter:saturate(.88) contrast(1.02)}.visit-map figcaption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;font-family:var(--ff-mono);font-size:11.5px;letter-spacing:.04em;color:var(--ink-mute);background:var(--paper-soft);border-top:1px solid var(--hair)}.visit-map figcaption a{color:var(--leather);font-weight:600;white-space:nowrap}.faq{padding:clamp(60px,8vw,110px) 0;border-top:1px solid var(--hair)}.faq__grid{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(36px,5vw,60px);align-items:start}.faq__sub{margin-top:18px;font-size:14.5px;color:var(--ink-mute);font-style:italic;line-height:1.7}.faq__list details{border-bottom:1px solid var(--hair-strong);padding:16px 0}.faq__list details:first-child{border-top:1px solid var(--hair-strong)}.faq__list summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;font-family:var(--ff-display);font-style:italic;font-size:19px;line-height:1.35;color:var(--ink);list-style:none}.faq__list summary::-webkit-details-marker{display:none}.faq__plus{font-family:var(--ff-mono);font-style:normal;font-size:22px;color:var(--leather)}.faq__list details[open] .faq__plus{transform:rotate(45deg);transition:transform .18s ease}.faq__list details p{margin-top:12px;font-size:14.5px;line-height:1.75;color:var(--ink-soft);padding-right:40px}.footer{background:var(--ink);color:color-mix(in oklab,var(--paper) 80%,transparent);padding:clamp(50px,7vw,90px) 0 32px}.footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:clamp(28px,4vw,50px)}.footer h4{font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gilt-soft);margin:22px 0 8px}.footer h4:first-child{margin-top:0}.footer p,.footer__nav,.footer__hours{font-size:13.5px;line-height:1.7}.footer__nav,.footer__hours{list-style:none;padding:0;margin:0}.footer__nav a{color:color-mix(in oklab,var(--paper) 80%,transparent)}.footer__nav a:hover{color:var(--gilt-soft)}.footer__hours li{padding:3px 0}.footer__hours .muted{color:color-mix(in oklab,var(--paper) 50%,transparent);font-style:italic}.footer__brand .brand,.footer__brand .brand__name{color:var(--paper)}.footer__brand .brand__sub{color:var(--gilt-soft)}.footer__brand .brand__mark{color:var(--gilt)}.footer__bio{margin-top:18px;font-size:13px;line-height:1.7;color:color-mix(in oklab,var(--paper) 70%,transparent);max-width:380px}.footer a{color:var(--gilt-soft)}.footer a:hover{color:var(--paper)}.footer__base{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:42px;padding-top:26px;border-top:1px solid color-mix(in oklab,var(--gilt) 25%,transparent);font-family:var(--ff-mono);font-size:10.5px;letter-spacing:.08em;color:color-mix(in oklab,var(--paper) 60%,transparent)}@media(max-width:980px){.hero__grid,.royal__grid,.commission__grid,.visit__grid,.faq__grid,.craft-grid,.trio{grid-template-columns:1fr}.services{grid-template-columns:repeat(2,1fr)}.footer__grid{grid-template-columns:1fr 1fr}.nav{display:none}.burger{display:block}.cta{display:none}.hero__badges{grid-template-columns:repeat(2,1fr)}.timeline__row{grid-template-columns:90px 1fr;gap:18px}}@media(max-width:560px){.services,.footer__grid{grid-template-columns:1fr}.sh__util{display:none}.visit-map iframe{height:280px}.visit-map figcaption{flex-direction:column;align-items:flex-start;gap:6px}}
