/* Shared media collection; homepage, archive and draft review only. */
.ks-home-media,.ks-media-index{--media-ink:#3c342c;--media-muted:#70675c;--media-gold:#806a42;--media-line:#ddd2c0;color:var(--media-ink)}
.ks-home-media *,.ks-media-index *{box-sizing:border-box}
.ks-homepage .ks-home-media{position:relative;z-index:1;padding:60px 0 48px;background:#fbfaf7;border-top:1px solid #e7e0d5;scroll-margin-top:110px}
.ks-home-media__heading{text-align:center;margin:0 0 34px}
.ks-homepage .ks-home-media__heading .ks-home-heading{font-size:clamp(28px,2.8vw,36px);line-height:1.5;letter-spacing:.09em}
.ks-home-media__english{margin:9px 0 0;font-family:Georgia,"Times New Roman",serif;color:#8a7148;font-size:20px;letter-spacing:.035em;line-height:1.5}
.ks-media-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0;padding:0;list-style:none}
.ks-media-cards--count-1{grid-template-columns:minmax(0,520px);justify-content:center}
.ks-media-cards--count-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:830px;margin-left:auto;margin-right:auto}
.ks-media-cards__item{min-width:0;list-style:none;padding:0;margin:0}
.ks-media-card{display:flex;flex-direction:column;height:100%;color:var(--media-ink);text-decoration:none;background:transparent}
.ks-media-card__visual{position:relative;display:block;overflow:hidden;isolation:isolate;aspect-ratio:631/356;width:100%;background:#f0ede7;border-radius:4px}
.ks-media-card__visual img{display:block;width:100%;height:100%;object-fit:contain;margin:0;transition:filter .2s}
.ks-media-card__visual--source img{position:absolute;width:112.361331%;max-width:none;height:auto;left:-6.180666%;top:-148.876404%;object-fit:initial}
.ks-media-card__body{display:flex;flex-direction:column;flex:1;padding-top:18px;min-width:0}
.ks-media-card__meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;margin:0 0 10px;font-size:12px;line-height:1.7;color:var(--media-muted)}
.ks-media-card__meta>span{color:var(--media-gold);font-weight:500}
.ks-home-media .ks-media-card__title,.ks-media-index .ks-media-card__title{margin:0;padding:0;border:0;background:none;font-family:var(--serif,serif);font-size:21px;font-weight:500;line-height:1.7;letter-spacing:.025em;color:inherit}
.ks-media-card__title::before,.ks-media-card__title::after{content:none!important}
.ks-media-card__summary{margin:12px 0 20px;font-size:13px;line-height:1.95;letter-spacing:.015em;color:#655d52}
.ks-media-card__read{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;margin-top:auto;padding:10px 0;border-bottom:1px solid #c8b998;color:var(--media-gold);font-size:13px;line-height:1.7}
.ks-media-card__read svg{flex:none}
.ks-media-card:hover .ks-media-card__read,.ks-home-media__all:hover{text-decoration:underline;text-underline-offset:4px}
.ks-media-card:hover .ks-media-card__visual img{filter:brightness(1.035)}
.ks-media-card:focus-visible,.ks-home-media__all:focus-visible,.ks-media-cards:focus-visible,.ks-media-index a:focus-visible{outline:3px solid var(--media-gold);outline-offset:5px}
.ks-media-external-note{margin:22px 0 0;text-align:center;color:var(--media-muted);font-size:11px;line-height:1.8}
.ks-home-media__footer{margin:18px auto 0;text-align:center}
.ks-homepage .ks-home-media__all{display:inline-flex;align-items:center;gap:28px;min-height:44px;color:var(--media-gold);font-size:13px;line-height:1.7;text-decoration:none}
.ks-media-controls{display:none}
.ks-media-index{padding:40px 0 70px;background:#fff}
.ks-media-index__inner{width:calc(100% - 80px);max-width:1120px;margin:0 auto}
.ks-media-index__intro{margin:0 auto 42px;text-align:center;font-size:15px;line-height:2}
.ks-media-index__empty{padding:40px 20px;background:#faf8f3;text-align:center}
.ks-media-index__contact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;margin-top:60px;padding:32px;background:#f5f1e9;border-top:2px solid #bba47b}
.ks-media-index__kicker{margin:0 0 10px;color:var(--media-gold);font-family:Georgia,serif;font-size:12px;letter-spacing:.15em}
.ks-media-index__contact h2{margin:0 0 14px;padding:0;background:none;border:0;font-family:var(--serif,serif);font-size:23px;font-weight:500;line-height:1.7}
.ks-media-index__contact p:not(.ks-media-index__kicker){margin:8px 0 0;font-size:14px;line-height:1.9}
.ks-media-index__contact .ks-media-index__contact-note{color:var(--media-muted);font-size:12px}
.ks-media-index__contact>a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;padding:14px 18px;color:#fff;background:var(--media-gold);font-size:13px;line-height:1.7;text-decoration:none}
.ks-media-index__related{display:flex;flex-wrap:wrap;gap:20px 36px;margin-top:28px}
.ks-media-index__related a{display:inline-flex;align-items:center;gap:25px;min-height:44px;color:var(--media-gold);font-size:14px;text-decoration:none}
@media(max-width:1024px) and (min-width:768px){.ks-media-cards{gap:22px}.ks-home-media .ks-media-card__title,.ks-media-index .ks-media-card__title{font-size:19px}.ks-media-index__contact{grid-template-columns:minmax(0,1fr)}.ks-media-index__contact>a{max-width:340px}}
@media(max-width:767px){
  .ks-homepage .ks-home-media{padding:40px 0 30px;scroll-margin-top:82px}
  .ks-homepage .ks-home-media>.ks-home-inner{width:calc(100% - 40px);max-width:540px;margin-left:auto;margin-right:auto}
  .ks-home-media__heading{margin-bottom:25px}
  .ks-homepage .ks-home-media__heading .ks-home-heading{font-size:28px;letter-spacing:.07em}
  .ks-home-media__english{font-size:19px;margin-top:6px}
  .ks-media-cards--home{display:grid;grid-auto-flow:column;grid-auto-columns:86%;grid-template-columns:none;gap:18px;max-width:none;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding:1px;padding:0 0 12px;scrollbar-width:thin;scrollbar-color:#b8a383 #eee8dd}
  .ks-media-cards--home>.ks-media-cards__item{scroll-snap-align:start}
  .ks-media-cards--home.ks-media-cards--count-1{grid-auto-flow:row;grid-template-columns:minmax(0,1fr);grid-auto-columns:auto;overflow:visible;padding-bottom:0}
  .ks-home-media .ks-media-card__title,.ks-media-index .ks-media-card__title{font-size:21px;line-height:1.7}
  .ks-media-card__summary{font-size:13px;line-height:1.95}
  .ks-media-card__body{padding-top:17px}
  .ks-media-card__meta{font-size:11px;gap:6px 10px}
  .ks-media-controls:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:6px}
  .ks-media-controls p{margin:0;font-size:11px;color:var(--media-muted);line-height:1.8}
  .ks-media-controls__buttons{display:flex;gap:7px;flex:none}
  .ks-media-controls button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #c8b998;border-radius:50%;background:transparent;color:var(--media-gold);font-size:18px;cursor:pointer}
  .ks-media-controls button:disabled{opacity:.35;cursor:default}
  .ks-media-controls button:focus-visible{outline:3px solid var(--media-gold);outline-offset:3px}
  .ks-media-external-note{font-size:10px;margin-top:18px}
  .ks-home-media__footer{margin-top:14px}
  .ks-media-index{padding:24px 0 44px}
  .ks-media-index__inner{width:calc(100% - 40px);max-width:540px}
  .ks-media-index__intro{font-size:14px;margin-bottom:30px}
  .ks-media-cards--archive{grid-template-columns:minmax(0,1fr);gap:36px}
  .ks-media-index__contact{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 20px;margin-top:40px}
  .ks-media-index__contact h2{font-size:21px}
  .ks-media-index__contact p:not(.ks-media-index__kicker){font-size:13px}
  .ks-media-index__contact>a{font-size:12px;gap:12px}
}
@media(prefers-reduced-motion:reduce){.ks-media-card__visual img{transition:none}}
