/* Keep the original print and leather on each rendered cover plane. */
:is(.cover-approved-front,.cover-front-pose,.native-front-cover-plane--outside>.native-front-cover-art)::before,
:is(.cover-approved-front,.cover-front-pose,.native-front-cover-plane--outside>.native-front-cover-art)::after,
.front-white-print-ground{
 position:absolute;display:block;pointer-events:none;
 background:url('assets/catalogue-front-knife-v40.webp') 0 0/1586px 992px no-repeat;
}
:is(.cover-approved-front,.cover-front-pose,.native-front-cover-plane--outside>.native-front-cover-art)::before,
:is(.cover-approved-front,.cover-front-pose,.native-front-cover-plane--outside>.native-front-cover-art)::after{
 content:'';left:220px;top:242px;width:438px;height:156px;background-position:-220px -242px;
 clip-path:polygon(2px 37px,399px 0,436px 114px,13px 152px);
}
:is(.cover-approved-front,.cover-front-pose,.native-front-cover-plane--outside>.native-front-cover-art)::before{
 z-index:1;filter:url('assets/catalogue-white-print.svg?v=64#title-ground');
}
:is(.cover-approved-front,.cover-front-pose,.native-front-cover-plane--outside>.native-front-cover-art)::after{
 z-index:2;filter:url('assets/catalogue-white-print.svg#ink');transform:scale(1.065);transform-origin:18px 45px;
}
.cover-front-pose>.cover-face-shade{z-index:3}
.front-white-print,[data-white-print],:has(>.front-white-print){--white-print-duration:1900ms;--white-print-ease:cubic-bezier(.4,0,.26,1)}
.front-white-print{position:absolute;inset:0;z-index:1;pointer-events:none;animation:white-print-ground-fade var(--white-print-duration) var(--white-print-ease) calc(0ms - var(--white-print-elapsed,0ms)) both}
.front-white-print-ground{
 left:234px;top:372px;width:344px;height:65px;background-position:-234px -372px;
 clip-path:polygon(3px 30px,335px 3px,339px 33px,6px 61px);filter:url('assets/catalogue-white-print.svg#ground');
}
:is(.cover-approved-front,.cover-front-pose,.native-front-cover-plane--outside>.native-front-cover-art):has(>.front-white-print)::after{
 animation:white-print-reveal var(--white-print-duration) var(--white-print-ease) calc(0ms - var(--white-print-elapsed,0ms)) both;
}
[data-white-print] :is(.back-contact-heading,.back-contact-description){animation:white-print-reveal var(--white-print-duration) var(--white-print-ease) calc(0ms - var(--white-print-elapsed,0ms)) both}
[data-white-print-held] :is(.back-contact-heading,.back-contact-description){opacity:0}
@keyframes white-print-ground-fade{from{opacity:1}to{opacity:0}}
@keyframes white-print-reveal{from{opacity:0}to{opacity:1}}

/* Each line slides from the same edge without changing its resting layout. */
[data-copy-part="kicker"]{--copy-delay:0ms}
[data-copy-part="title-line"]{--copy-x:26px;--copy-y:0px;--copy-duration:760ms;--copy-delay:83ms}
.cover-title-line:nth-child(2)>span{--copy-delay:166ms}
.cover-title-line:nth-child(3)>span{--copy-delay:249ms}
[data-copy-part="description"]{--copy-delay:332ms}
[data-copy-part="links"]{--copy-delay:415ms}
[data-copy-part="contact"]{--copy-delay:498ms}
[data-copy-intro] [data-copy-part]{
 animation:cover-copy-arrive var(--copy-duration,630ms) cubic-bezier(.22,1,.36,1) calc(var(--copy-delay) - var(--cover-copy-elapsed,0ms)) backwards;
}
[data-copy-intro] :is(.cover-links,.cover-contact):focus-within{animation:none}
@keyframes cover-copy-arrive{
 from{opacity:0;transform:translate3d(var(--copy-x,0px),var(--copy-y,10px),0)}
 to{opacity:1;transform:none}
}
@media(prefers-reduced-motion:reduce){
 .front-white-print{display:none}
 [data-white-print] :is(.back-contact-heading,.back-contact-description),
 [data-copy-intro] [data-copy-part],
 :is(.cover-approved-front,.cover-front-pose,.native-front-cover-plane--outside>.native-front-cover-art):has(>.front-white-print)::after{animation:none}
}

/* Right-align the introduction and its entry rows. */
.cover-copy{
 display:flex;flex-direction:column;justify-content:space-between;gap:18px;
 text-align:right;color:#fbf4e6;container-type:inline-size;
}
.cover-copy .cover-kicker{
 font:500 clamp(10px,2.65cqw,14px)/1.25 Arial,sans-serif;
 letter-spacing:.145em;color:#e2c599;margin:0 0 clamp(12px,4cqw,24px);
}
.cover-copy h1{
 font:500 clamp(31px,12cqw,44px)/.98 Arial,sans-serif;
 letter-spacing:-.065em;margin:0;
}
.cover-title-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.cover-title-line>span{display:block}
.cover-summary{
 color:#e0d7c8;font-size:clamp(13px,3.8cqw,20px);line-height:1.52;
 max-width:26ch;margin:clamp(12px,4cqw,25px) 0 0 auto;
}
.cover-copy .cover-links{display:grid;border-bottom:1px solid #e2c59959}
.cover-copy .cover-links>button{
 display:flex;align-items:center;justify-content:space-between;gap:12px;
 width:100%;height:auto;min-height:44px;margin:0;padding:0 clamp(8px,2.8cqw,15px);
 border:0;border-top:1px solid #e2c59959;border-radius:0;background:transparent;
 color:#e0d7c8;font:400 clamp(13px,3.75cqw,19px)/1.25 Arial,sans-serif;text-align:left;
 transition:color 240ms ease,background-color 360ms ease;
}
.cover-copy .cover-links>.cover-action{color:#fbf4e6}
.cover-copy .cover-links>button:is(:hover,:focus-visible){color:#e2c599;background-color:#e2c59912}
.cover-copy .cover-links img{
 width:1em;height:1em;flex:0 0 auto;
 filter:brightness(0) saturate(100%) invert(87%) sepia(20%) saturate(580%) hue-rotate(342deg);
 transition:transform 360ms cubic-bezier(.22,1,.36,1);
}
.cover-copy .cover-links>button:is(:hover,:focus-visible) img{transform:translateX(4px)}
.cover-contact{
 pointer-events:auto;border-bottom:1px solid #e2c59940;text-align:left;
}
.cover-contact h2{
 display:flex;align-items:center;min-height:25px;margin:0;
 color:#e2c599;font:500 11px/1.2 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;
}
.cover-contact dl,.cover-contact dd{margin:0}
.cover-contact dl>div{
 display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:10px;
 min-height:35px;border-top:1px solid #e2c59940;transition:background-color 220ms ease;
}
.cover-contact dl>div:is(:hover,:focus-within){background-color:#e2c5990d}
.cover-contact dt{color:#d7c8b4;font-size:11px}
.cover-contact dd{
 color:#fbf4e6;font-size:13px;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;
}
.cover-contact a{
 display:inline-flex;align-items:center;min-height:30px;
 color:inherit;text-underline-offset:.22em;transition:color 220ms ease;
}
.cover-contact a:is(:hover,:focus-visible){color:#ffe0a5;text-decoration:underline}
.cover-contact-wechat{user-select:all;-webkit-user-select:all}
@media(min-width:1001px){
 .cover-copy{
  /* Convert viewport insets to the scaled book scene's coordinates. */
  --cover-viewport-width:calc(100vw / var(--canvas-scale,1));
  --cover-inline-gap:calc(clamp(28px,4.5vw,100px) / var(--canvas-scale,1));
  --cover-copy-right:calc((1586px - var(--cover-viewport-width)) / 2 + var(--cover-inline-gap));
  /* Scale the selected design by its column width, with headroom on short screens. */
  --cover-unit:min(1cqw,calc(.55dvh / var(--canvas-scale,1)));
  left:max(1082px,calc(1586px - var(--cover-copy-right) - 625px));right:var(--cover-copy-right);width:auto;
  top:calc(56% + 12px);translate:0 -50%;gap:0;
 }
 .cover-copy .cover-kicker{
  font-size:max(calc(11px / var(--canvas-scale,1)),calc(3.2 * var(--cover-unit)));
  margin-bottom:calc(5.5 * var(--cover-unit));
 }
 .cover-copy h1{font-size:max(calc(29px / var(--canvas-scale,1)),calc(14.4 * var(--cover-unit)))}
 .cover-copy .cover-summary{
  font-size:max(calc(13px / var(--canvas-scale,1)),calc(4.34 * var(--cover-unit)));
  max-width:24ch;margin-top:calc(5.3 * var(--cover-unit));
 }
 .cover-copy .cover-links{margin-top:calc(13.6 * var(--cover-unit))}
 .cover-copy .cover-links>button{
  min-height:max(calc(44px / var(--canvas-scale,1)),calc(12.7 * var(--cover-unit)));
  font-size:max(calc(13px / var(--canvas-scale,1)),calc(4.05 * var(--cover-unit)));
 }
 .cover-contact{margin-top:calc(5.3 * var(--cover-unit))}
 .cover-contact h2{
  min-height:max(calc(25px / var(--canvas-scale,1)),calc(4.8 * var(--cover-unit)));
  font-size:max(calc(11px / var(--canvas-scale,1)),calc(2.9 * var(--cover-unit)));
 }
 .cover-contact dl>div{
  min-height:max(calc(33px / var(--canvas-scale,1)),calc(8.8 * var(--cover-unit)));
 }
 .cover-contact dt{font-size:max(calc(11px / var(--canvas-scale,1)),calc(2.9 * var(--cover-unit)))}
 .cover-contact dd{font-size:max(calc(13px / var(--canvas-scale,1)),calc(3.5 * var(--cover-unit)))}
 .cover-contact a{min-height:calc(30px / var(--canvas-scale,1))}
}
@media(min-width:1001px) and (max-height:720px), (min-width:1001px) and (min-aspect-ratio:2/1){
 .cover-copy{top:calc(53% + 8px);--cover-unit:min(1cqw,calc(.49dvh / var(--canvas-scale,1)))}
}
@media(max-width:1000px){
 [data-native-cover-layout="columns"] .cover-copy{min-height:calc(100dvh - 104px)}
}
@media(max-width:1000px) and (max-height:700px){
 .cover-copy{gap:0}
 .cover-copy .cover-kicker{margin-bottom:6px}
 .cover-copy h1{font-size:clamp(25px,9cqw,35px)}
 .cover-title-line:not(:first-child){display:inline;overflow:visible}
 .cover-title-line:not(:first-child)>span{display:inline-block}
 .cover-summary{max-width:100%;font-size:12px;line-height:1.3;margin-top:6px}
 .cover-copy .cover-links{margin-top:8px}
 .cover-contact{margin-top:10px}
 .cover-contact h2{min-height:20px}
 .cover-contact dl>div,.cover-contact a{min-height:30px}
}
@media(max-width:1000px) and (max-height:430px){
 [data-native-cover-layout="columns"] .cover-copy .cover-kicker{margin-bottom:4px}
 [data-native-cover-layout="columns"] .cover-copy h1{font-size:clamp(23px,8cqw,30px)}
 [data-native-cover-layout="columns"] .cover-summary{margin-top:4px}
 [data-native-cover-layout="columns"] .cover-copy .cover-links{margin-top:4px}
 [data-native-cover-layout="columns"] .cover-copy .cover-links>button{min-height:38px}
 [data-native-cover-layout="columns"] .cover-contact{margin-top:6px}
 [data-native-cover-layout="columns"] .cover-contact h2{min-height:18px}
 [data-native-cover-layout="columns"] .cover-contact dl>div,
 [data-native-cover-layout="columns"] .cover-contact a{min-height:27px}
}
@media(prefers-reduced-motion:reduce){
 .cover-copy .cover-links>button,.cover-copy .cover-links img,.cover-contact dl>div,.cover-contact a{transition:none}
 .cover-copy .cover-links>button:is(:hover,:focus-visible) img{transform:none}
}
