.dk-shell{max-width:1180px}
.dk-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(240px,300px);gap:clamp(28px,5vw,70px);align-items:start}
.dk-nav{flex-wrap:wrap}
.dk-main{min-width:0}
.dk-hero{margin:24px 0 4px}
.dk-hero img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px;background:#f3e8db}
.dk-hero.has-cover{background:#f3e8db;border-radius:16px}
.dk-hero.has-cover img{width:min(100%,460px);max-height:460px;aspect-ratio:1;object-fit:contain;margin:auto}
.dk-hero figcaption{padding:8px 2px;color:var(--muted);font-size:12px}
.dk-side{border-top:3px solid var(--rose);padding-top:18px}
.dk-side-inner{position:sticky;top:24px}
.dk-side h2,.dk-more h2{font-family:var(--serif);font-size:clamp(25px,3vw,34px);line-height:1.15;margin:0 0 8px}
.dk-side p{color:var(--muted);font-size:14px;line-height:1.5;margin:0 0 18px}
.dk-edition-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 6px 24px rgba(38,37,32,.04);transition:transform .18s ease,box-shadow .18s ease}
.dk-edition-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(38,37,32,.1)}
.dk-edition-card:focus-visible{outline:3px solid var(--rose);outline-offset:3px}
.dk-edition-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#f3e8db}
.dk-edition-card.has-cover img{object-fit:contain}
.dk-card-copy{display:flex;flex:1;flex-direction:column;gap:8px;padding:16px}
.dk-card-date{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rose)}
.dk-card-copy strong{font-family:var(--serif);font-size:21px;line-height:1.2}
.dk-card-copy>span:not(.dk-card-date):not(.dk-card-action){font-size:13px;line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.dk-card-action{margin-top:auto;font-size:13px;font-weight:700;color:var(--rose)}
.dk-side .dk-edition-card{margin:0 0 14px}
.dk-side .dk-edition-card img{aspect-ratio:16/8}
.dk-side .dk-card-copy{padding:13px}
.dk-side .dk-card-copy strong{font-size:18px}
.dk-side-all{display:inline-flex;align-items:center;min-height:44px;color:var(--rose);font-weight:700}
.dk-more{border-top:1px solid var(--line);padding-top:28px;margin-top:36px}
.dk-more-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px}
.dk-more-head a{color:var(--rose);font-weight:700;white-space:nowrap}
.dk-more-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dk-more-grid:not(.dk-carousel):not(.dk-archive-grid){grid-template-columns:repeat(4,minmax(0,1fr))}
.dk-more-actions{display:flex;align-items:center;gap:16px}
.dk-carousel-controls{display:flex;gap:8px}
.dk-carousel-controls button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:21px;cursor:pointer}
.dk-carousel-controls button:hover:not(:disabled){border-color:var(--rose);color:var(--rose)}
.dk-carousel-controls button:disabled{opacity:.38;cursor:default}
.dk-carousel{display:flex;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:4px 4px 16px}
.dk-carousel>.dk-edition-card{flex:0 0 min(43%,380px);scroll-snap-align:start}
.dk-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0 34px}
.dk-topic-link{margin-top:18px!important;font-family:var(--sans)!important;font-size:15px!important}
.dk-topic-link a{display:inline-flex;align-items:center;min-height:44px;color:var(--rose);font-weight:700;text-underline-offset:3px}
@media(max-width:880px){.dk-layout{grid-template-columns:minmax(0,1fr)}.dk-side{margin-top:4px}.dk-side-inner{position:static}.dk-side .dk-edition-card{display:inline-flex;vertical-align:top;width:calc(50% - 9px);margin-right:14px}.dk-side .dk-edition-card:nth-of-type(2n){margin-right:0}.dk-side-all{display:flex}.dk-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dk-more-grid:not(.dk-carousel):not(.dk-archive-grid){grid-template-columns:repeat(2,minmax(0,1fr))}.dk-carousel>.dk-edition-card{flex-basis:52%}}
@media(max-width:600px){.dk-side .dk-edition-card{display:flex;width:100%;margin-right:0}.dk-archive-grid,.dk-more-grid:not(.dk-carousel):not(.dk-archive-grid){grid-template-columns:1fr}.dk-more-head{align-items:start;flex-direction:column}.dk-hero{margin-top:20px}.dk-carousel>.dk-edition-card{flex-basis:84%}}
@media(prefers-reduced-motion:reduce){.dk-edition-card{transition:none}.dk-edition-card:hover{transform:none}}
