/* Theme additions on top of the design CSS: WordPress-specific pieces only. */

/* Accessibility */
.md-skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--accent,#FF5B2E);color:#0F0E0C;padding:10px 16px;border-radius:8px;font:600 14px/1.2 'Manrope',system-ui,sans-serif}
.md-skip:focus{left:8px}
:focus-visible{outline:2px solid var(--accent,#FF5B2E);outline-offset:3px}
.nav-links a[aria-current="page"]{color:var(--tx)}
.hp a:where(.legal a):hover{text-decoration:underline;text-underline-offset:3px}
.legal a{color:inherit}
.legal a:hover{color:var(--tx);text-decoration:underline;text-underline-offset:3px}
.locline a{color:inherit}
.locline a:hover{color:var(--tx);text-decoration:underline;text-underline-offset:3px}
main{display:block}

/* Mobile menu (the design hides the links below 960px with no replacement) */
.md-burger{display:none;width:44px;height:44px;flex:none;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;padding:0;position:relative}
.md-burger span{position:absolute;left:13px;right:13px;height:1.5px;background:var(--tx);transition:transform .25s,opacity .2s}
.md-burger span:nth-child(1){top:16px}.md-burger span:nth-child(2){top:21px}.md-burger span:nth-child(3){top:26px}
.nav.is-open .md-burger span:nth-child(1){transform:translateY(5px) rotate(45deg)}
.nav.is-open .md-burger span:nth-child(2){opacity:0}
.nav.is-open .md-burger span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}
@media (max-width:960px){
  .md-burger{display:inline-block}
  .nav-in{gap:12px}
  .nav.is-open .nav-links{display:flex!important;flex-direction:column;gap:6px;position:absolute;top:100%;left:0;right:0;background:#0F0E0C;box-shadow:0 30px 40px rgba(0,0,0,.5);border-bottom:1px solid var(--line);padding:18px 28px 26px;font-size:16px;letter-spacing:0}
  .nav.is-open .nav-links a{padding:12px 0;background:none;font-size:16px}
}

/* Forms */
.formcard{position:relative}
.md-form-status{margin:6px 0 0;padding:14px 18px;border:1px solid var(--accent);border-radius:14px;font-family:'Manrope',system-ui,sans-serif;font-size:15.5px;line-height:1.5;color:var(--tx);grid-column:1/-1}
.md-form-status[hidden]{display:none}
.md-form-status.is-error{border-color:var(--warn);color:var(--warn)}
.formcard.is-sending button[type=submit]{opacity:.6;pointer-events:none}
.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}

/* Cookie consent */
.md-consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:760px;margin:0 auto;display:flex;gap:20px;align-items:center;flex-wrap:wrap;justify-content:space-between;padding:18px 22px;background:rgba(23,22,19,.97);border:1px solid var(--edge,#7A7468);border-radius:20px;color:var(--mut,#B6AE9F);font:400 14.5px/1.55 'Manrope',system-ui,sans-serif;backdrop-filter:blur(10px)}
.md-consent[hidden]{display:none}
.md-consent p{margin:0;flex:1 1 320px}
.md-consent a{color:var(--tx,#F2ECDF);text-decoration:underline;text-underline-offset:3px}
.md-consent-btns{display:flex;gap:10px}
.md-consent .btn{min-height:44px;padding:10px 22px;font-size:14px}
:root{--accent:#FF5B2E}
.md-consent{--tx:#F2ECDF;--mut:#B6AE9F;--edge:#7A7468}
.md-consent .btn-p{background:var(--accent);color:#0F0E0C}
.md-consent .btn-s{border:1px solid var(--edge);color:var(--tx);background:transparent}

/* Article body from the block editor (WordPress) */
.lg.art ol{margin:14px 0 0;padding:0 0 0 22px;color:var(--mut);font-family:'Manrope',system-ui,sans-serif;font-size:16.5px;line-height:1.75}
.lg.art ol li{padding:5px 0 5px 6px}
.lg.art ol li::marker{color:var(--accent);font-family:'Orbitron',sans-serif;font-size:13px}
.lg.art blockquote:not(.pull){margin:30px 0 0;padding:6px 0 6px 28px;border-left:2px solid var(--accent);font-family:'Orbitron',sans-serif;font-size:19px;line-height:1.5;color:var(--tx)}
.lg.art blockquote p{margin:0;color:inherit;font-family:inherit;font-size:inherit;line-height:inherit}
.lg.art img,.lg.art video{max-width:100%;height:auto;border-radius:16px}
.lg.art figure{margin:26px 0 0}
.lg.art figcaption{font-family:'Manrope',system-ui,sans-serif;font-size:13.5px;color:var(--dim);margin-top:10px}
.lg.art code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em;background:var(--s2);padding:2px 6px;border-radius:6px}
.lg.art pre code{background:none;padding:0}
.lg.art .wp-block-table{margin:0}
.lg.art hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.lg.art .intro{border-top:0;padding-top:0}
.alignwide,.alignfull{max-width:100%}
.aligncenter{margin-left:auto;margin-right:auto}

/* Search box in the blog toolbar: submit button hidden, Enter submits */
.search input{font-family:'Manrope',system-ui,sans-serif}

/* Case study page */
.cs-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:36px;background:var(--line);border:1px solid var(--line);border-radius:22px;overflow:hidden}
.cs-facts div{background:var(--s1);padding:26px 28px}
.cs-facts b{display:block;font-family:'Orbitron',sans-serif;font-size:34px;font-weight:500;letter-spacing:-.02em;line-height:1.1;color:var(--tx)}
.cs-facts span{display:block;margin-top:8px;font-family:'Manrope',system-ui,sans-serif;font-size:14.5px;color:var(--mut)}
.cs-result{font-family:'Orbitron',sans-serif;font-size:30px;line-height:1.25;letter-spacing:-.01em;color:var(--accent);margin:24px 0 0;max-width:820px}
.cs-side{display:grid;gap:0}
.cs-block{margin-top:40px}
.cs-block h2{font-family:'Orbitron',sans-serif;font-size:24px;font-weight:500;margin:0 0 6px}
.cs-block p{font-family:'Manrope',system-ui,sans-serif;font-size:17px;line-height:1.8;color:var(--mut);margin:12px 0 0}
@media (max-width:760px){.cs-facts{grid-template-columns:minmax(0,1fr)}.cs-result{font-size:22px}}

/* Empty-state cards */
.md-empty{padding:40px;border:1px dashed var(--edge);border-radius:24px;text-align:left;background:var(--s1)}
.md-empty h3{font-family:'Orbitron',sans-serif;font-size:22px;margin:0 0 10px}
.md-empty p{font-family:'Manrope',system-ui,sans-serif;font-size:16.5px;line-height:1.7;color:var(--mut);margin:0 0 20px;max-width:640px}

/* Reduced motion: also stop the typing caret and marquee */
@media (prefers-reduced-motion:reduce){.track{animation:none!important}}
