/* All supporting page types share the workshop palette, without changing content. */
body.elguide-studio :is(.article-page,.landing-page,.legal-page),
body.elguide-studio.legal-page {
  --ink:#f3f2ed; --paper:#141719; --white:#1c2327; --cream:#141719; --cream-2:#242d31;
  --muted:#b9c2c6; --line:#3a454a; --orange:#ff9857; --orange-deep:#ffad77;
  color:#f3f2ed; background:#141719; color-scheme:dark;
  font-family:Figtree,'Segoe UI',sans-serif;
}
body.elguide-studio :is(.article-page,.landing-page,.legal-page) .container,
body.elguide-studio.legal-page .container { width:min(1320px,calc(100% - 96px)); }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) :is(h1,h2,h3,h4,em),
body.elguide-studio.legal-page :is(h1,h2,h3,h4,em) { font-family:Figtree,'Segoe UI',sans-serif; font-style:normal; color:#f3f2ed; line-height:1.16; letter-spacing:-.035em; overflow-wrap:break-word; text-wrap:balance; }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) h1,
body.elguide-studio.legal-page h1 { font-size:clamp(40px,5.3vw,76px); line-height:1.12; font-weight:600; letter-spacing:-.045em; }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) h2,
body.elguide-studio.legal-page h2 { font-size:clamp(26px,3.1vw,42px); }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) .eyebrow,
body.elguide-studio.legal-page .eyebrow { color:#ffad77; font:500 11px/1.6 Consolas,monospace; letter-spacing:.12em; }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) :is(.article-header,.site-header),
body.elguide-studio.legal-page .site-header { background:#141719f5; border-bottom:1px solid #3a454a; }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) .brand__image,
body.elguide-studio.legal-page .brand__image { width:126px; }
body.elguide-studio :is(.article-page,.landing-page) .article-header nav a { color:#e6eaeb; font-size:12px; }
body.elguide-studio :is(.landing-page,.legal-page) .offer-bar,
body.elguide-studio.legal-page .offer-bar { background:#20272b; color:#c9d0d3; }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) .button,
body.elguide-studio.legal-page .button { color:#141719; background:#ff9857; border-radius:4px; box-shadow:none; min-height:48px; height:auto; font-size:14px; white-space:normal; line-height:1.4; }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) .button--ghost { background:transparent; color:#f3f2ed; border:1px solid #657178; }
body.elguide-studio :is(.article-page,.landing-page,.legal-page) :is(a,button,input):focus-visible,
body.elguide-studio.legal-page :is(a,button,input):focus-visible { outline:2px solid #ffad77; outline-offset:4px; }
body.elguide-studio :is(.article-hero,.legal-hero) { background:#1d2529; border-bottom:1px solid #3a454a; padding-block:76px; }
body.elguide-studio .article-hero__grid { grid-template-columns:minmax(0,1fr) 300px; gap:64px; align-items:start; }
body.elguide-studio .article-hero aside { background:#242e33; border:1px solid #4b5960; border-radius:4px; box-shadow:none; }
body.elguide-studio .article-hero aside a { color:#cad3d7; line-height:1.6; }
body.elguide-studio :is(.article-intro,.article-body) :is(p,li) { color:#bec8cc; }
body.elguide-studio .article-intro { color:#bec8cc; font-size:20px; }
body.elguide-studio .article-meta { color:#a9b7bd; font:12px/1.6 Consolas,monospace; }
body.elguide-studio .article-layout { padding-block:80px; grid-template-columns:minmax(0,780px); }
body.elguide-studio .article-body :is(p,li) { font-size:17px; line-height:1.85; }
body.elguide-studio .article-body a { color:#ffb582; text-underline-offset:4px; }
body.elguide-studio .article-tip { background:#242e33; border-left:3px solid #ff9857; border-radius:0; }
body.elguide-studio .article-tip p { color:#d2dade; }
body.elguide-studio .article-tip strong { color:#ffad77; }
body.elguide-studio .article-sources li { grid-template-columns:150px minmax(0,1fr); }
body.elguide-studio .article-sources a { overflow-wrap:anywhere; }
body.elguide-studio :is(.article-cta,.landing-cta) { background:#242e33; border-top:1px solid #435157; }
body.elguide-studio :is(.article-footer,.legal-page .site-footer),
body.elguide-studio.legal-page .site-footer { background:#101517; color:#c0cace; border-top:1px solid #3a454a; }
body.elguide-studio :is(.article-footer,.legal-footer-links) a { color:#d0d9dd; }

/* Legal text is kept as a calm, narrow reading surface rather than marketing art. */
body.elguide-studio .knowledge-page { background:#141719; color:#f3f2ed; }
body.elguide-studio .knowledge-page .article-header { background:#141719; border-bottom:1px solid #3a454a; }
body.elguide-studio .knowledge-page .article-header nav a { color:#e6eaeb; font-size:12px; }
body.elguide-studio .knowledge-page .brand__image { width:126px; }
body.elguide-studio .legal-hero h1 { max-width:1050px; }
body.elguide-studio .legal-hero em { color:#ffad77; }
body.elguide-studio .legal-hero p:last-child { max-width:700px; color:#bac6cb; line-height:1.8; }
body.elguide-studio .legal-content { padding-block:64px 100px; }
body.elguide-studio .legal-content__inner { max-width:860px; margin-inline:auto; padding:0 32px; background:transparent; box-shadow:none; border-radius:0; }
body.elguide-studio .legal-content :is(p,li) { color:#c5cdd0; font-size:17px; line-height:1.85; }
body.elguide-studio .legal-content h2 { padding-top:28px; border-top:1px solid #354147; margin-top:46px; font-size:30px; scroll-margin-top:140px; }
body.elguide-studio .legal-content h3 { font-size:23px; margin-top:28px; }
body.elguide-studio .legal-content a { color:#ffb582; text-underline-offset:4px; overflow-wrap:anywhere; }

/* Landing pages retain the real app image and get a distinct photographic setting. */
body.elguide-studio .landing-hero { background:#141719; padding-block:72px 88px; }
body.elguide-studio .landing-hero__grid { grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr); gap:50px; }
body.elguide-studio .landing-hero h1 { font-size:clamp(40px,4.7vw,68px); }
body.elguide-studio .landing-hero__intro { color:#bbc6cb; font-size:18px; }
body.elguide-studio .landing-visual { min-height:590px; isolation:isolate; background:linear-gradient(0deg,#141719aa,#14171922),url('assets/03-fotoanalyse.webp') 62% center/cover; border:1px solid #4c575c; }
body.elguide-studio .landing-visual__orb { width:80%; border-radius:0; background:none; box-shadow:none; border:1px solid #ffffff35; }
body.elguide-studio .landing-visual img { width:min(230px,58%); transform:rotate(-3deg); filter:drop-shadow(0 26px 32px #0a1012); }
body.elguide-studio .landing-benefits { background:#242e33; border-block:1px solid #46535a; }
body.elguide-studio .landing-benefits span { color:#141719; border-radius:3px; }
body.elguide-studio .landing-content { background:#141719; }
body.elguide-studio .landing-content__row { max-width:1060px; grid-template-columns:70px minmax(0,1fr); gap:34px; padding-block:52px; }
body.elguide-studio .landing-content__row > span { font:500 16px/1.5 Consolas,monospace; color:#ffad77; }
body.elguide-studio .landing-content__row p { font-size:17px; color:#bbc6cb; }
body.elguide-studio .landing-content .reveal { opacity:1!important; transform:none!important; }
body.elguide-studio .landing-content a { color:#ffad77; }

/* One rounded focus indicator for the composer, never a second square textarea ring. */
body.elguide-studio .support-chat .support-chat__composer textarea,
body.elguide-studio .support-chat .support-chat__composer textarea:focus,
body.elguide-studio .support-chat .support-chat__composer textarea:focus-visible { outline:none!important; outline-offset:0!important; border:0!important; box-shadow:none!important; }
body.elguide-studio .support-chat .support-chat__composer:focus-within { border-color:#a94b23; box-shadow:0 0 0 1px #a94b23; }

@media (max-width:1000px) {
  body.elguide-studio .article-hero__grid { grid-template-columns:1fr; gap:36px; }
  body.elguide-studio .article-hero aside { max-width:650px; }
  body.elguide-studio .landing-hero__grid { grid-template-columns:1fr; gap:38px; }
  body.elguide-studio .landing-visual { min-height:450px; }
  body.elguide-studio .article-header__inner { flex-wrap:wrap; gap:20px; padding-block:20px; }
  body.elguide-studio .article-header nav { flex-wrap:wrap; gap:16px 22px; }
}
@media (max-width:600px) {
  body.elguide-studio :is(.article-page,.landing-page,.legal-page) .container,
  body.elguide-studio.legal-page .container { width:calc(100% - 40px); }
  body.elguide-studio :is(.article-hero,.legal-hero,.landing-hero) { padding-block:46px; }
  body.elguide-studio :is(.article-page,.landing-page,.legal-page) h1,
  body.elguide-studio.legal-page h1 { font-size:clamp(32px,8.7vw,48px); line-height:1.15; letter-spacing:-.03em; }
  body.elguide-studio .legal-hero h1 { font-size:clamp(28px,7.1vw,42px); }
  body.elguide-studio .legal-content__inner { padding:0; }
  body.elguide-studio .legal-content h2 { font-size:25px; }
  body.elguide-studio .article-sources li { grid-template-columns:1fr; gap:8px; }
  body.elguide-studio .landing-content__row { grid-template-columns:1fr; gap:16px; }
  body.elguide-studio .landing-visual { min-height:400px; }
  body.elguide-studio :is(.article-cta,.landing-cta) .container { grid-template-columns:1fr; gap:26px; }
  body.elguide-studio .legal-page .site-header__inner,
  body.elguide-studio.legal-page .site-header__inner { gap:16px; flex-wrap:wrap; padding-block:18px; }
  body.elguide-studio .legal-page .site-header .button,
  body.elguide-studio.legal-page .site-header .button { font-size:12px; padding:12px; }
}
