/*
Theme Name: AI & Machines
Author: Wos Engineering GmbH
Description: Eigenes redaktionelles Signal-Theme für Robotik, KI und Automatisierung.
Version: 0.2.0
Text Domain: ai-machines
*/
:root{--m-out:240ms;--m-in:160ms;--m-image:500ms;--m-ease:cubic-bezier(.2,.8,.2,1)}
a{text-underline-offset:.2em}button,summary,a,input{-webkit-tap-highlight-color:transparent}input{caret-color:var(--cobalt)}
html{scrollbar-color:var(--muted) var(--bg)}
.chip{text-decoration:none}.chip[aria-current="true"]::before{transform:none}.chip[aria-current="true"]{color:var(--on)}
.mobile-nav{display:none}.mobile-nav summary{list-style:none;cursor:pointer;border:1px solid var(--ink);border-radius:var(--r);padding:11px 12px;font-size:14px;line-height:1}
.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav[open] summary{background:var(--ink);color:var(--bg)}
.menu-links{position:absolute;left:0;right:0;top:100%;background:var(--cobalt);color:var(--bg);padding:12px var(--gut) 24px;max-height:calc(100dvh - var(--head));overflow:auto;--focus:#ffd60a;border-bottom:1px solid var(--ink)}
.menu-links a{display:flex;gap:12px;align-items:center;text-decoration:none;padding:13px 0;border-bottom:1px solid #f3ecdf40;font-size:clamp(19px,4vw,28px);line-height:1.1}
.menu-links a::before{content:'';width:10px;height:10px;flex:none;border-radius:50%;background:var(--c,var(--bg))}
@media(max-width:1279px){.mobile-nav{display:block}}
@media(min-width:1280px) and (max-width:1430px){.nav-main a{font-size:12px}.site-head__in{gap:12px}.logo{font-size:23px}.head-actions{gap:12px}}
body.admin-bar .site-head{top:32px}body.admin-bar .filter{top:calc(var(--head) + 32px)}
.hero.no-field .field-slot::before{opacity:.8}
.card__media img,.lead__img img{transition:transform 500ms var(--ease)}
/* Documentary photographs retain their natural colours; no generated-image blending. */
.card:is([data-size="xl"],[data-size="tall"],[data-size="side"]) .card__media img{-webkit-mask-image:none;mask-image:none}
.portrait-photo{object-fit:contain!important;background:var(--surface)}
.unmodified-photo{object-fit:contain!important;object-position:center!important;transform:none!important;filter:none!important;animation:none!important;mask-image:none!important;-webkit-mask-image:none!important;border-radius:0!important;opacity:1!important;mix-blend-mode:normal!important;background:var(--surface)}
.card:has(.portrait-photo) .card__media{background:var(--surface)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.card:hover .card__media img{transform:scale(1.025)}}
.card[data-size="s"] .tag{font-size:10px;white-space:normal}.tag{max-width:100%;white-space:normal;line-height:1.2}
.lead__img{position:relative}.lead__img img{min-height:100%}.lead:focus-within{outline:3px solid var(--cobalt);outline-offset:3px}
.lead__title a:focus-visible{outline:none}.hero .lead{margin-bottom:4px}
.empty-feed{padding:32px 0;font-size:20px}.filter:has(.chip:focus-visible){z-index:42}
.feed-head__main{min-width:0}.news-form{display:grid;justify-items:start;gap:14px}.news-form__note{margin:0}
/* Shared archives, search and informational CMS pages. */
.archive-head{padding:64px 0 36px;max-width:100%;border-bottom:2px solid var(--ink);margin-bottom:28px}
.archive-head h1,.info-body h1{font:600 clamp(38px,6vw,80px)/1.02 var(--font);letter-spacing:-.04em;text-wrap:balance;margin:12px 0 24px}
.archive-head p{max-width:70ch;font-size:20px}.eyebrow{font:500 12px/1.4 var(--mono);letter-spacing:-.01em}
.archive-list,.topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);margin-bottom:40px}
.archive-list .card[data-size],.topics .card[data-size]{grid-column:auto}
.archive-list .card:nth-child(3n+1){background:var(--c);color:var(--on)}
.archive-list .card:nth-child(3n+1) .meta{color:var(--on)}
.archive-list .card:nth-child(3n+1) .tag{background:var(--on);color:var(--c)}
.category-pills{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 32px}.category-pills a{padding:9px 13px;border:1px solid var(--ink);border-radius:var(--r);text-decoration:none;font-size:15px;background:var(--c,var(--surface));color:var(--on,var(--ink))}
.category-pills a:hover{background:var(--ink);color:var(--bg)}
.pagination{display:flex;flex-wrap:wrap;gap:8px;margin:32px 0 64px}.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;text-decoration:none;border:1px solid var(--ink);border-radius:var(--r)}.pagination .current{background:var(--cobalt);color:var(--bg)}
.info-body{max-width:78ch;padding:64px 0 80px;font-size:18px;line-height:1.7;overflow-wrap:anywhere}
.info-body h2{font-size:clamp(26px,3vw,40px);line-height:1.12;letter-spacing:-.025em;margin:40px 0 16px}.info-body h3{margin:32px 0 12px;font-size:24px;line-height:1.2}
.info-body p,.info-body ul,.info-body ol,.info-body figure{margin:0 0 22px}.info-body li{margin:8px 0}.info-body ul,.info-body ol{padding-left:24px;list-style:revert}
.info-body table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse;font-size:15px}.info-body td,.info-body th{border:1px solid var(--line);padding:10px;text-align:left}
.info-body img{max-width:100%;height:auto}.info-body .eyebrow{margin-bottom:10px}.info-body .notice{padding:18px;background:var(--surface)}
.search-form{display:flex;flex-wrap:wrap;gap:10px;max-width:680px;margin:24px 0}.search-form label{flex:1;min-width:160px}.search-form input[type="search"]{width:100%;padding:13px 14px;border:1px solid var(--ink);background:#fbf7ee;border-radius:var(--r);min-height:48px}.search-form button{padding:12px 20px;border:0;background:var(--cobalt);color:var(--bg);border-radius:var(--r);cursor:pointer;min-height:48px}
.screen-reader-text{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.section{padding:32px 0;border-bottom:1px solid var(--line)}.section:last-child{margin-bottom:56px}.section-title{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:20px}.section-title h2{font:600 clamp(28px,4vw,48px)/1.05 var(--font);letter-spacing:-.03em}.section>ul{list-style:disc;padding-left:22px}.section li{margin:12px 0}.read-link{font-weight:500}.empty{padding:32px 0 64px}.empty h2{margin-bottom:14px}
body.category .archive-head{background:var(--c);color:var(--on);padding:32px;border-radius:var(--r-lg);margin-top:36px;border:0}
.site-foot a:focus-visible{outline-color:#ffd60a}.foot__word{font-size:clamp(42px,14.5vw,212px)}
@media(max-width:900px){.archive-list,.topics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.archive-list,.topics{grid-template-columns:minmax(0,1fr)}.archive-head,.info-body{padding-top:36px}.archive-head h1,.info-body h1{font-size:40px}.section-title{align-items:flex-start;flex-direction:column}.section-title h2{font-size:30px}.archive-head p{font-size:18px}.info-body{font-size:17px}.hero h1{font-size:clamp(34px,9.2vw,54px)}body.category .archive-head{padding:22px}.head-actions{gap:8px}.foot__word{font-size:14vw}}
@media(max-width:782px){body.admin-bar .site-head{top:46px}body.admin-bar .filter{top:calc(var(--head) + 46px)}}
@media(max-width:600px){body.admin-bar .site-head{top:0}body.admin-bar .filter{top:var(--head)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* On the homepage the colourful topics bar is the only sticky navigation. */
body.home .site-head{position:relative;top:auto}
body.home .filter{top:0}
html:has(body.home){scroll-padding-top:calc(var(--bar) + 16px)}
body.home.admin-bar .filter{top:32px}
@media(max-width:782px){body.home.admin-bar .filter{top:46px}}
@media(max-width:600px){body.home.admin-bar .filter{top:0}}
