.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.hero-visual.hero-carousel{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:560px;min-width:0}
.hero-slides{display:grid;flex:1;min-width:0;touch-action:pan-y pinch-zoom}
.hero-slide{grid-area:1/1;display:flex;min-width:0;animation:hero-reveal .38s ease-out}
.hero-slide[hidden],.hero-carousel-controls[hidden]{display:none}
.hero-highlight{display:flex;flex-direction:column;width:100%;min-width:0;color:var(--ink)}
.hero-highlight-art{position:relative;flex:1;min-height:290px;display:flex;align-items:center;justify-content:center;padding:57px 20px 16px}
.hero-highlight-label{position:absolute;top:22px;left:25px;right:25px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;line-height:1.4;color:#525e66}
.hero-highlight-label>span:first-child{text-transform:uppercase;letter-spacing:.05em}
.hero-highlight-label>span:last-child{text-align:right}
.hero-highlight-image{position:absolute;width:calc(100% - 40px);height:calc(100% - 73px);top:57px;left:20px;object-fit:contain;mix-blend-mode:multiply}
.hero-highlight-content{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:end;align-items:end;gap:7px 18px;min-height:118px;padding:15px 26px 17px;border-top:1px solid #dbe0e3;background:#e9edef}
.hero-highlight-title{grid-column:1/-1;font-size:23px;line-height:1.25;font-weight:600;letter-spacing:-.02em;max-width:100%}
.hero-highlight-detail{display:block;font-size:16px;line-height:1.4;color:#525e66}
.hero-highlight-link{display:flex;align-items:center;justify-self:end;gap:12px;font-size:16px;font-weight:600;line-height:1.4;white-space:nowrap}
.hero-highlight-link>span{transition:transform .2s ease}
.hero-highlight:hover .hero-highlight-link,.hero-highlight:focus-visible .hero-highlight-link{color:#a83e00}
.hero-highlight:hover .hero-highlight-link>span{transform:translate(2px,-2px)}
.hero-highlight:focus-visible{outline:3px solid #be4a00;outline-offset:-4px}
.hero-carousel-controls{display:flex;align-items:center;gap:20px;padding:10px 20px 10px 26px;border-top:1px solid #d4dce0;background:#e9edef;min-height:66px}
.hero-carousel-count{font-size:15px;white-space:nowrap;font-variant-numeric:tabular-nums;line-height:1.4}
.hero-carousel-count>span:first-child{font-weight:600}
.hero-carousel-count>span:last-child{color:#525e66}
.hero-carousel-track{display:flex;flex:1;gap:5px;max-width:175px;margin-right:auto}
.hero-carousel-track span{height:3px;background:#c6cfd4;flex:1;transition:background .25s}
.hero-carousel-track span.is-current{background:#d95300}
.hero-carousel-buttons{display:flex;gap:5px;margin-left:auto}
.hero-carousel-buttons button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;padding:0;border:1px solid #c2ccd2;border-radius:50%;background:transparent;color:#20272b;font:inherit;font-size:23px;cursor:pointer;transition:background .2s,border-color .2s}
.hero-carousel-buttons button:hover{background:#fff;border-color:#81909a}
.hero-carousel-buttons button:focus-visible{outline:3px solid #b24600;outline-offset:2px}
@keyframes hero-reveal{from{opacity:.3}to{opacity:1}}
@media(min-width:761px) and (max-width:1040px){
  .hero-carousel-controls{gap:12px;padding-inline:18px}
  .hero-carousel-track{gap:3px}
  .hero-highlight-label{left:18px;right:18px;font-size:14px}
  .hero-highlight-content{padding-inline:18px;min-height:148px;column-gap:12px}
  .hero-highlight-title{font-size:22px}
}
@media(max-width:760px){
  .hero{grid-template-columns:minmax(0,1fr)}
  .hero-visual.hero-carousel{min-height:0}
  .hero-highlight-art{flex:none;height:calc((100vw - 55px)/1.3 + 18px);min-height:273px}
  .hero-highlight-label{left:18px;right:18px;top:18px;font-size:14px}
  .hero-highlight-content{padding:12px 18px 14px;min-height:150px;column-gap:12px}
  .hero-highlight-title{font-size:22px}
  .hero-highlight-detail{font-size:16px}
  .hero-carousel-controls{padding:10px 12px 10px 18px;gap:12px}
  .hero-carousel-track{gap:3px}
  .hero-carousel-buttons{gap:4px}
}
@media(prefers-reduced-motion:reduce){
  .hero-slide{animation:none}
  .hero-highlight-link>span,.hero-carousel-track span,.hero-carousel-buttons button{transition:none}
}
@media(max-width:360px){
  .hero-highlight-content{min-height:162px;column-gap:10px}
  .hero-highlight-title{font-size:21px}
  .hero-highlight-detail{font-size:15px}
  .hero-highlight-link{font-size:15px;gap:7px}
}
@media print{.hero-carousel-controls{display:none}.hero-slide{animation:none}}
