.s09-news{
  --s09-head-lh:26.4px;
  --s09-rule-color:var(--color-surface-border-quiet);
}

.s09-container{
  overflow:hidden;
}

.s09-rows{
  display:flex;
  flex-direction:column;
  gap:40px;
}

.s09-rule{
  position:relative;
  height:0;
}

.s09-rule::before{
  content:"";
  position:absolute;
  left:-16px;
  right:-16px;
  top:-.5px;
  height:1px;
  background-color:var(--s09-rule-color);
}

.s09a-events{
  display:flex;
  flex-direction:column;
  gap:40px;
  scroll-margin-top:96px;
}

.s09a-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:64px;
}

.s09a-head-text{
  display:flex;
  flex-direction:column;
  min-height:calc(2 * var(--s09-head-lh));
}

.s09a-heading,
.s09b-heading{
  display:block;
  max-width:858.784px;
  text-wrap:pretty;
}

.s09a-controls{
  display:none;
  gap:8px;
}

.s09a-arrow{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-shrink:0;
  width:40px;
  height:40px;
  padding:0;
  border:0;
  border-radius:var(--radius-sm);
  background-color:var(--color-core-brand-50);
  color:var(--color-core-brand-600);
  cursor:pointer;
}

.s09a-arrow svg{
  display:block;
}

.s09a-arrow:focus-visible{
  outline:var(--focus-outline);
  outline-offset:var(--focus-outline-button-offset);
}

@media (hover:hover){
  .s09a-arrow:hover{
    background-color:var(--color-core-brand-100);
    color:var(--color-core-brand-800);
  }
}

@media (prefers-reduced-motion:no-preference){
  .s09a-arrow{
    transition:background-color var(--dur-ui) var(--ease-ui),color var(--dur-ui) var(--ease-ui),outline-color var(--dur-ui) var(--ease-ui);
  }
}

.s09a-carousel{
  display:none;
}

.s09a-canvas{
  display:block;
  width:870px;
  max-width:none;
  aspect-ratio:1232 / 460;
  cursor:default;
}

.s09a-details{
  display:flex;
  height:172px;
}

.s09a-detail{
  display:grid;
  grid-template-columns:100%;
  gap:32px;
  align-content:start;
  flex:none;
  width:100%;
  opacity:0;
  pointer-events:none;
  transform:translateX(calc(-100% * var(--i)));
}

.s09a-detail[aria-hidden="false"]{
  opacity:1;
  pointer-events:auto;
}

@media (prefers-reduced-motion:no-preference){
  .s09a-detail{
    transition:opacity .12s ease;
  }
}

.s09a-copy{
  max-width:817.778px;
  padding-right:112px;
  font-size:16px;
  font-weight:var(--fw-400);
  line-height:23px;
}

.s09a-item-title,
.s09a-item-text{
  display:inline;
  font-size:20px;
  font-weight:var(--fw-300);
  line-height:22.4px;
  letter-spacing:-.2px;
}

.s09a-item-title{
  color:var(--color-heading-solid);
}

.s09a-item-text{
  color:var(--color-heading-subdued);
}

.s09a-mrow{
  margin-inline:-16px;
  overflow:hidden;
}

.s09a-mscroller{
  display:flex;
  gap:16px;
  padding-inline:16px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-padding-left:16px;
  scrollbar-width:none;
}

.s09a-mscroller::-webkit-scrollbar{
  display:none;
}

.s09a-mitem{
  flex:0 0 100%;
  min-height:632.91px;
  scroll-snap-align:start;
}

.s09a-mcard{
  display:flex;
  flex-direction:column;
  gap:24px;
}

.s09a-mmedia{
  position:relative;
  border-radius:var(--radius-md);
  background-color:var(--color-surface-border-quiet);
  overflow:hidden;
  aspect-ratio:336 / 350;
  will-change:transform;
}

.s09a-mcanvas{
  position:absolute;
  top:0;
  left:-30px;
  width:calc(100% + 60px);
  height:100%;
}

.s09a-mtext{
  font-size:20px;
  font-weight:var(--fw-300);
  line-height:24px;
  letter-spacing:-.2px;
}

.s09a-mtext strong{
  font-weight:var(--fw-300);
  color:var(--color-heading-solid);
}

.s09a-mtext span{
  color:var(--color-heading-subdued);
}

.s09a-mcard[data-off="true"] .s09a-mtext{
  opacity:0;
}

.s09b-book{
  display:flex;
  flex-direction:column;
  gap:40px;
}

.s09b-title-block{
  display:flex;
  flex-direction:column;
  max-width:648px;
  min-height:calc(2 * var(--s09-head-lh));
  padding-right:16px;
}

.s09b-card{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:auto minmax(0,1fr);
  column-gap:16px;
  align-items:center;
  border-radius:var(--radius-md);
  background-color:var(--color-surface-bg-subdued);
}

.s09b-cover{
  grid-column:span 4;
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  max-height:450px;
  padding:32px 16px;
  border-radius:6px 6px 0 0;
  background-color:#3c485b;
  overflow:hidden;
}

.s09b-picture{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}

.s09b-jacket{
  position:relative;
  flex:none;
  width:208.55px;
  max-width:100%;
  aspect-ratio:592 / 880;
  border-radius:var(--radius-md);
  box-shadow:0 10px 50px -7.79776px rgba(36,44,56,.15);
  filter:drop-shadow(0 2px 25px rgba(0,0,0,.25));
  overflow:hidden;
}

.s09b-jacket svg{
  display:block;
}

.s09b-jacket-title{
  font-family:var(--font-sans);
  font-size:76px;
  font-weight:var(--fw-300);
  letter-spacing:-.76px;
  fill:var(--color-core-lemon-100);
}

.s09b-content{
  grid-column:span 4;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  height:100%;
  min-height:651.47px;
  padding:40px 32px 40px 24px;
}

.s09b-seal{
  display:none;
  position:absolute;
  top:-64px;
  right:40px;
  width:86px;
  height:136px;
  color:var(--color-core-neutral-500);
  pointer-events:none;
}

.s09b-text{
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  height:100%;
  gap:24px;
}

.s09b-name,
.s09b-author{
  max-width:349.5px;
  font-size:20px;
  font-weight:var(--fw-300);
  line-height:24px;
  letter-spacing:-.2px;
  text-wrap:pretty;
}

.s09b-name{
  color:var(--color-heading-solid);
}

.s09b-author{
  display:inline-block;
  color:var(--color-heading-subdued);
}

.s09b-description{
  max-width:599.151px;
  font-size:16px;
  font-weight:var(--fw-300);
  line-height:22.4px;
  color:var(--color-text-soft);
  text-wrap:pretty;
}

.s09b-links{
  grid-row:4;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.s09b-see-also{
  max-width:329.533px;
  font-size:12px;
  font-weight:var(--fw-300);
  line-height:17.4px;
  color:var(--color-text-soft);
  text-wrap:pretty;
}

.s09b-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.s09b-link{
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:2px;
  border:1px solid var(--color-surface-border-quiet);
  border-radius:var(--radius-sm);
  text-decoration:none;
  cursor:pointer;
}

.s09b-link:focus-visible{
  outline:var(--focus-outline);
  outline-offset:var(--focus-outline-button-offset);
}

.s09b-link-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  width:32px;
  height:32px;
  border-radius:var(--radius-xs);
}

.s09b-link-icon svg{
  display:block;
}

.s09b-link-text{
  display:block;
  padding-right:16px;
  margin-bottom:.8px;
  font-size:14px;
  font-weight:var(--fw-400);
  line-height:14px;
  color:var(--color-text-soft);
  white-space:nowrap;
}

@media (hover:hover){
  .s09b-link:hover{
    border-color:var(--color-core-neutral-200);
  }

  .s09b-link:hover .s09b-link-text{
    color:var(--color-core-brand-600);
  }
}

@media (prefers-reduced-motion:no-preference){
  .s09b-link{
    transition:border-color .2s ease,background-color .2s ease;
  }

  .s09b-link-text{
    transition:color .2s;
  }

  .s09b-picture,
  .s09b-content{
    animation:s09b-fade .5s cubic-bezier(.33,1,.68,1);
  }
}

@keyframes s09b-fade{
  from{
    opacity:0;
  }

  to{
    opacity:1;
  }
}

@media (min-width:640px){
  .s09-news{
    --s09-head-lh:29.96px;
  }

  .s09-rows,
  .s09b-book{
    gap:48px;
  }

  .s09-rule::before{
    left:-16px;
  }

  .s09a-head-text{
    margin-bottom:8px;
  }

  .s09a-controls{
    display:flex;
  }

  .s09a-carousel{
    display:flex;
    flex-direction:column;
    gap:32px;
  }

  .s09a-mrow{
    display:none;
  }

  .s09b-title-block{
    padding-right:40px;
  }

  .s09b-card{
    grid-template-columns:repeat(8,minmax(0,1fr));
  }

  .s09b-cover{
    grid-column:span 8;
  }

  .s09b-jacket{
    width:245.55px;
  }

  .s09b-content{
    grid-column:span 8;
    min-height:472.5px;
    padding-block:48px;
  }

  .s09b-text{
    grid-template-rows:auto auto minmax(8px,1fr) auto;
    padding-right:16px;
  }

  .s09b-name,
  .s09b-author{
    max-width:384.456px;
    font-size:22px;
    line-height:24.2px;
    letter-spacing:-.22px;
  }
}

@media (min-width:940px){
  .s09-news{
    --s09-head-lh:35.2px;
  }

  .s09-rows,
  .s09b-book{
    gap:64px;
  }

  .s09-rule::before{
    top:0;
    height:2px;
    background-color:#f2f6fa;
  }

  .s09a-head{
    margin-bottom:-8px;
  }

  .s09a-head-text{
    margin-bottom:32px;
  }

  .s09a-canvas{
    width:100%;
  }

  .s09a-details{
    height:100px;
  }

  .s09a-detail{
    grid-template-columns:1fr auto;
    grid-auto-flow:column;
  }

  .s09a-copy{
    padding-right:0;
    line-height:25px;
  }

  .s09a-item-title,
  .s09a-item-text{
    font-size:22px;
    line-height:24.2px;
    letter-spacing:-.22px;
  }

  .s09b-card{
    grid-template-columns:repeat(12,minmax(0,1fr));
    grid-template-rows:auto;
  }

  .s09b-cover{
    grid-column:1 / span 5;
    max-height:100%;
    padding-block:48px;
    border-radius:6px 0 0 6px;
  }

  .s09b-picture{
    width:62.731%;
  }

  .s09b-jacket{
    width:100%;
  }

  .s09b-content{
    grid-column:7 / span 6;
    min-height:603.23px;
    padding:80px 0;
  }

  .s09b-seal{
    display:block;
  }

  .s09b-text{
    grid-template-rows:auto auto minmax(16px,1fr) auto;
    padding-right:32px;
  }

  .s09b-name,
  .s09b-author{
    max-width:454.357px;
    font-size:26px;
    line-height:29.12px;
    letter-spacing:-.26px;
  }

  .s09b-description{
    max-width:459.349px;
  }
}
