@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600&family=Barlow+Condensed:wght@600;700&display=swap');
:root{--dc-yellow:#F5C800;--dc-black:#0D0D0D;--dc-dark:#161616;--dc-gray:#F4F4F4;--dc-border:#E5E5E5;--dc-text:#1A1A1A;--dc-muted:#6B6B6B;--dc-white:#FFFFFF;--dc-font:'Barlow',sans-serif;--dc-font-cond:'Barlow Condensed',sans-serif}
.dc-archive{font-family:var(--dc-font)}
.dc-filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:40px}
.dc-filter-btn{padding:8px 18px;border:1.5px solid var(--dc-border);background:transparent;font-family:var(--dc-font);font-size:13px;font-weight:600;color:var(--dc-muted);border-radius:2px;cursor:pointer;letter-spacing:.03em;text-transform:uppercase;transition:all .18s}
.dc-filter-btn:hover{border-color:var(--dc-text);color:var(--dc-text)}
.dc-filter-btn.active{background:var(--dc-yellow);border-color:var(--dc-yellow);color:var(--dc-black)}
.dc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
@media(max-width:900px){.dc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.dc-grid{grid-template-columns:1fr}}
.dc-card{position:relative;overflow:hidden;background:var(--dc-dark);animation:dc-fade-in .4s ease both}
.dc-card__inner{display:block;text-decoration:none;color:inherit}
.dc-card__img-wrap{position:relative;aspect-ratio:4/3;overflow:hidden}
.dc-card__img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.25,.46,.45,.94),filter .4s;filter:brightness(.85) saturate(.9)}
.dc-card:hover .dc-card__img-wrap img{transform:scale(1.06);filter:brightness(.75) saturate(1.1)}
.dc-card__img-placeholder{width:100%;aspect-ratio:4/3;background:#222}
.dc-card__cat{position:absolute;top:14px;left:14px;background:var(--dc-yellow);color:var(--dc-black);font-family:var(--dc-font-cond);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:1px}
.dc-card__body{padding:20px 22px 22px;background:var(--dc-dark)}
.dc-card__title{font-family:var(--dc-font-cond);font-size:20px;font-weight:700;color:var(--dc-white);margin:0 0 8px;line-height:1.2}
.dc-card__excerpt{font-size:13px;color:rgba(255,255,255,.55);margin:0 0 14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dc-card__badge{display:inline-block;border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.6);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:3px 10px;border-radius:1px;margin-bottom:12px}
.dc-card__arrow{display:flex;align-items:center;gap:6px;color:var(--dc-yellow);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-top:4px;transition:gap .2s}
.dc-card:hover .dc-card__arrow{gap:10px}
.dc-loading{display:flex;justify-content:center;align-items:center;gap:6px;padding:40px}
.dc-loading span{width:8px;height:8px;background:var(--dc-yellow);border-radius:50%;animation:dc-bounce .7s ease-in-out infinite}
.dc-loading span:nth-child(2){animation-delay:.1s}.dc-loading span:nth-child(3){animation-delay:.2s}
@keyframes dc-bounce{0%,80%,100%{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}
@keyframes dc-fade-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.dc-no-results{text-align:center;color:var(--dc-muted);padding:60px 20px}
.dc-single{font-family:var(--dc-font);max-width:1400px;margin:0 auto}
.dc-hero{display:grid;grid-template-columns:1fr 1fr;min-height:520px;background:var(--dc-black)}
@media(max-width:860px){.dc-hero{grid-template-columns:1fr}}
.dc-hero__image-col{position:relative;overflow:hidden}
.dc-hero__img-wrap{width:100%;height:100%;min-height:360px}
.dc-hero__img-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.dc-hero__content-col{padding:60px 52px;display:flex;flex-direction:column;justify-content:center;gap:0}
@media(max-width:1100px){.dc-hero__content-col{padding:40px 32px}}
@media(max-width:860px){.dc-hero__content-col{padding:32px 24px}}
.dc-hero__eyebrow{display:inline-block;font-family:var(--dc-font-cond);font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dc-yellow);margin-bottom:12px}
.dc-hero__title{font-family:var(--dc-font-cond);font-size:clamp(32px,4vw,52px);font-weight:700;color:var(--dc-white);margin:0 0 20px;line-height:1.05}
.dc-hero__excerpt{font-size:15px;color:rgba(255,255,255,.65);line-height:1.65;margin:0 0 32px;max-width:480px}
.dc-specs-panel{background:var(--dc-yellow);border-radius:4px;padding:24px 28px;max-width:420px}
.dc-specs-table{width:100%;border-collapse:collapse}
.dc-specs-table tr{border-bottom:1px solid rgba(0,0,0,.08)}
.dc-specs-table tr:last-child{border-bottom:none}
.dc-specs-label{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:rgba(0,0,0,.5);padding:9px 16px 9px 0;white-space:nowrap;vertical-align:top}
.dc-specs-value{font-size:14px;font-weight:600;color:var(--dc-black);padding:9px 0}
.dc-specs-kompetencer{margin-top:16px;padding-top:16px;border-top:1px solid rgba(0,0,0,.12)}
.dc-specs-kompetencer-label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(0,0,0,.5);margin-bottom:8px}
.dc-badges{display:flex;flex-wrap:wrap;gap:6px}
.dc-badge{background:var(--dc-black);color:var(--dc-white);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 12px;border-radius:2px}
.dc-body{padding:72px 0;background:var(--dc-white)}
.dc-body__content{max-width:760px;margin:0 auto;padding:0 24px;font-size:16px;line-height:1.75;color:rgba(0,0,0,.75)}
.dc-gallery-section{background:var(--dc-gray);padding:48px 24px}
.dc-gallery-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}
.dc-gallery-item{display:block;overflow:hidden;aspect-ratio:4/3}
.dc-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s,filter .3s;filter:brightness(.95)}
.dc-gallery-item:hover img{transform:scale(1.04);filter:brightness(1.05)}
.dc-back-wrap{background:var(--dc-white);padding:32px 24px;border-top:1px solid var(--dc-border)}
.dc-back-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--dc-font);font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--dc-muted);text-decoration:none;transition:color .15s,gap .2s}
.dc-back-btn:hover{color:var(--dc-text);gap:12px}
