/* Shared Atelier language: inner pages, German home and quiet legal pages. */
.to-atelier main { min-width:0; }
.to-atelier main h1,.to-atelier main h2,.to-atelier main h3 { overflow-wrap:break-word; }
.to-atelier .to-logo { overflow:hidden; }
.to-atelier .to-logo .to-brand-logo { object-fit:contain; width:82px; height:74px; transform:scale(1.12); }
.to-atelier .to-cta { color:#3c3529; background:transparent; border:0; box-shadow:none; }
.to-atelier .to-cta h2 { color:#3c3529; }
.to-atelier .to-cta .to-lead { color:#625541; opacity:1; }
.to-atelier .to-cta > .to-wrap { border:1px solid #d4bd964d; background:linear-gradient(130deg,#fffcf5,#efe2c7); }
.to-atelier .to-cta > .to-wrap:not(:has(.to-lead)) h2 { grid-row:auto; }
.to-atelier-subpage .to-main { gap:34px; }
.to-atelier-subpage .to-page-hero { padding:65px 38px 70px; border:0; background:none!important; box-shadow:none; border-radius:0; }
.to-atelier-subpage .to-page-hero::before,.to-atelier-subpage .to-page-hero::after { display:none; }
.to-atelier-subpage .to-page-hero > .to-wrap { display:grid; grid-template-columns:1.1fr .9fr; gap:15px 60px; align-items:start; }
.to-atelier-subpage .to-page-hero .to-eyebrow { grid-column:1/-1; margin-bottom:12px; }
.to-atelier-subpage .to-page-hero h1 { font-size:clamp(45px,5.9vw,87px); font-weight:400; line-height:1.01; letter-spacing:-.045em; max-width:17ch; margin:0; hyphens:auto; }
.to-atelier-subpage .to-page-hero .to-lead { margin:5px 0 0; padding:7px 0 8px 28px; border-left:1px solid #c2a67566; font-size:15px; line-height:1.95; max-width:45em; }
.to-atelier-subpage .to-page-hero > .to-wrap:not(:has(.to-lead)) h1 { grid-column:1/-1; max-width:none; }
.to-atelier-subpage .to-scene-section { border-radius:8px 55px 8px 8px; }
.to-atelier-subpage .to-prose { padding:60px 45px; }
.to-atelier-subpage .to-prose__in { max-width:960px; margin:auto; }
.to-atelier-subpage .to-prose__in > p:only-child { font:400 clamp(23px,2.7vw,35px)/1.45 var(--to-serif); letter-spacing:-.015em; padding-left:30px; border-left:1px solid #b99965; }
.to-atelier-subpage .to-prose h2 { font-size:clamp(35px,4vw,57px); max-width:24ch; }
.to-atelier-subpage .to-prose p { line-height:1.85; }
.to-atelier-subpage .to-points { padding:65px 36px; }
.to-atelier-subpage .to-points > .to-wrap { display:grid; grid-template-columns:.82fr 1.18fr; gap:60px; align-items:start; }
.to-atelier-subpage .to-points__head { position:sticky; top:130px; margin:0; }
.to-atelier-subpage .to-points__head h2 { max-width:20ch; font:400 clamp(34px,3.6vw,54px)/1.08 var(--to-serif); letter-spacing:-.025em; hyphens:auto; }
.to-atelier-subpage .to-points__head .to-lead { font-size:14px; line-height:1.85; margin-top:24px; }
.to-atelier-subpage .to-points__grid { grid-template-columns:1fr; gap:14px; }
.to-atelier-subpage .to-point { padding:28px; border:1px solid #dfcba755; border-radius:8px 35px 8px 8px; }
.to-atelier-subpage .to-service-accordion { display:flex; flex-direction:column; gap:12px; background:none; border:0; }
.to-atelier-subpage .to-service { position:relative; overflow:hidden; background:#fffdf5ad; border:1px solid #ddcdb199; border-radius:8px 28px 8px 8px; box-shadow:inset 0 1px #fff,0 14px 28px -25px #80643955; backdrop-filter:blur(15px); transition:background .3s,border-color .3s; }
.to-atelier-subpage .to-service[open] { background:#fffdf5e0; border-color:#c4a57088; }
.to-atelier-subpage .to-service summary { display:flex; gap:18px; align-items:center; padding:27px 55px 27px 25px; cursor:pointer; list-style:none; position:relative; }
.to-atelier-subpage .to-service summary::-webkit-details-marker { display:none; }
.to-atelier-subpage .to-service summary::after { content:'+'; position:absolute; right:24px; top:50%; transform:translateY(-50%); color:#967343; font:300 25px var(--to-sans); }
.to-atelier-subpage .to-service[open] summary::after { content:'−'; }
.to-atelier-subpage .to-service summary:focus-visible { outline:2px solid #957044; outline-offset:-4px; border-radius:7px; }
.to-atelier-subpage .to-service summary:hover { background:#eee0c622; }
.to-atelier-subpage .to-service h3 { font:400 clamp(23px,2.4vw,33px)/1.15 var(--to-serif); margin:0; letter-spacing:-.015em; min-width:0; hyphens:auto; }
.to-atelier-subpage .to-service .to-point__no { flex:none; width:auto; height:auto; background:none; box-shadow:none; border:0; border-radius:0; margin:0; font:400 12px var(--to-sans); color:#a38659; }
.to-atelier-subpage .to-service__body { padding:0 28px 26px 59px; color:#625849; font:400 14px/1.85 var(--to-sans); }
.to-atelier-subpage .to-service__body p:last-child { margin-bottom:0; }
.to-atelier-subpage .to-service__body ul { padding-left:17px; margin:0; }
.to-atelier-subpage .to-service__body li { padding:6px 0; }
.to-atelier-subpage .to-service__body li::marker { color:#b09363; }
.to-atelier-subpage .to-person { padding:60px 38px; }
.to-atelier-subpage .to-person__grid { grid-template-columns:1fr; gap:0; }
.to-atelier-subpage .to-empty-portrait { display:none; }
.to-atelier-subpage .to-person__grid > div:last-child { display:grid; grid-template-columns:.82fr 1.18fr; column-gap:60px; align-items:start; }
.to-atelier-subpage .to-person__grid > div:last-child > .to-eyebrow { grid-column:1; margin-top:10px; line-height:1.6; }
.to-atelier-subpage .to-person h2 { grid-column:1; font-size:clamp(43px,5.5vw,76px); margin-bottom:25px; }
.to-atelier-subpage .to-person .to-lead { grid-column:1; font-size:16px; line-height:1.8; }
.to-atelier-subpage .to-person__list { grid-column:2; grid-row:1/5; margin:0; gap:12px; }
.to-atelier-subpage .to-person__list li { padding:26px; border-radius:8px 26px 8px 8px; border:1px solid #e0cfaf80; background:#fffaf0ba; backdrop-filter:blur(12px); font-size:14px; line-height:1.8; }
.to-atelier-subpage .to-person__list strong { font:400 27px/1.15 var(--to-serif); color:#54422b; margin-bottom:12px; }
.to-atelier-subpage .to-person__photo:has(img) { display:block; width:230px; margin:0 0 40px; }
.to-atelier-subpage .to-contact { padding:45px 40px; border-radius:8px 45px 8px 8px; }
.to-atelier-subpage .to-contact .to-facts { grid-template-columns:repeat(3,minmax(0,1fr)); padding:20px; gap:0; margin:0; border-radius:12px; background:#fffcf2b0; backdrop-filter:blur(20px); border:1px solid #fff; box-shadow:0 18px 42px -35px #75592d70; }
.to-atelier-subpage .to-contact .to-facts > div { padding:25px; background:none; border:0; border-radius:0; box-shadow:none; border-bottom:1px solid #cfb78740; min-width:0; }
.to-atelier-subpage .to-contact .to-facts dt { font-size:10px; line-height:1.6; letter-spacing:.12em; margin-bottom:14px; color:#88714f; }
.to-atelier-subpage .to-contact .to-facts dd { font:400 25px/1.4 var(--to-serif); overflow-wrap:anywhere; color:#493e2e; }
.to-atelier-subpage .to-contact:has(form) > .to-wrap { max-width:880px; margin:auto; }
.to-atelier-subpage .to-contact:has(form) { padding-block:65px; }
.to-atelier-subpage .to-contact h2 { font-size:clamp(43px,5vw,68px); margin-bottom:35px; }
.to-atelier-subpage .to-form { padding:32px; border:1px solid #dac6a35c; border-radius:8px 40px 8px 8px; background:linear-gradient(140deg,#fffef9cc,#f1e8d877); box-shadow:inset 0 1px #fff; }
.to-atelier-subpage .to-form__roles { flex-wrap:wrap; gap:8px; }
.to-atelier-subpage .to-chip span { border-radius:25px; padding:11px 18px; }
.to-atelier-subpage .to-form__grid { gap:25px 20px; }
.to-atelier-subpage .to-form__f > span { color:#64563f; font-size:12px; letter-spacing:.035em; }
.to-atelier-subpage .to-field { background:#fffef9c9; min-height:52px; border:1px solid #cbb89777; border-radius:7px; padding:14px; }
.to-atelier-subpage .to-field:focus { border-color:#b79760; outline:0; box-shadow:0 0 0 4px #bc9a5c18; }
.to-atelier-subpage .to-check { font-size:12px; line-height:1.75; }
.to-atelier-legal .to-page-hero { padding-bottom:35px; }
.to-atelier-legal .to-page-hero h1 { font-size:clamp(40px,5vw,70px); }
.to-atelier-legal .to-legal { padding:40px; border:1px solid #dfd0b94d; border-radius:8px; background:#fffdf7!important; box-shadow:none; }
.to-atelier-legal .to-legal__in { max-width:800px; margin:auto; font-size:15px; line-height:1.9; }
.to-atelier-legal .to-legal__in h2 { font-size:30px; max-width:none; line-height:1.2; letter-spacing:-.01em; margin-top:1.5em; }
.to-atelier-legal .to-legal__in h3 { font-size:25px; line-height:1.25; }
.to-atelier-legal .to-contact .to-facts { background:#fffdf5; box-shadow:none; }
/* German home keeps the client's film and copy, with the same spacious design. */
.to-atelier:not(.to-desk-active) .to-hero { padding:40px 35px 60px; }
.to-atelier:not(.to-desk-active) .to-hero__grid { display:grid; grid-template-columns:1.2fr .8fr; gap:45px; align-items:center; padding:0; }
.to-atelier:not(.to-desk-active) .to-hero__text { width:auto; top:auto; position:static; transform:none; max-width:none; }
.to-atelier:not(.to-desk-active) .to-hero__text h1 { font-size:clamp(43px,4.6vw,69px); line-height:1.05; hyphens:auto; }
.to-atelier:not(.to-desk-active) .to-hero__text .to-lead { max-width:40em; }
.to-atelier:not(.to-desk-active) .to-hero__media { max-width:335px; width:100%; justify-self:center; margin:0; }
.to-atelier:not(.to-desk-active) .to-hero__frame { border-radius:170px 170px 8px 8px; padding:8px; background:#fff8; box-shadow:0 24px 55px -36px #88663688; }
.to-atelier:not(.to-desk-active) .to-hero__frame::before,.to-atelier:not(.to-desk-active) .to-hero__frame::after { display:none; }
.to-atelier:not(.to-desk-active) .to-hero__frame video { border-radius:160px 160px 4px 4px; max-height:510px; }
.to-atelier:not(.to-desk-active) .to-thumbs { margin-top:15px; }
.to-atelier:not(.to-desk-active) .to-hero__caption { font-size:10px; }
.to-atelier:not(.to-desk-active) .to-hero .to-btn { font-size:10px; line-height:1.5; }
.to-atelier:not(.to-desk-active) .to-prose { padding:65px 45px; }
.to-atelier:not(.to-desk-active) .to-prose h2 { max-width:22ch; }
@media(max-width:1100px) and (min-width:861px) {
 .to-atelier-subpage .to-page-hero > .to-wrap,.to-atelier-subpage .to-points > .to-wrap,.to-atelier-subpage .to-person__grid > div:last-child { gap:30px; }
 .to-atelier-subpage .to-contact .to-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .to-atelier-subpage .to-page-hero h1 { font-size:58px; }
 .to-atelier-subpage .to-service summary { padding-left:18px; }
 .to-atelier-subpage .to-service__body { padding-left:20px; }
}
@media(max-width:860px) {
 .to-atelier .to-logo .to-brand-logo { width:72px; height:66px; }
 .to-atelier-subpage .to-main { gap:20px; }
 .to-atelier-subpage .to-page-hero { padding:35px 17px 40px; }
 .to-atelier-subpage .to-page-hero > .to-wrap { display:block; }
 .to-atelier-subpage .to-page-hero h1 { font-size:clamp(40px,10vw,60px); max-width:20ch; margin:12px 0 25px; }
 .to-atelier-subpage .to-page-hero .to-lead { padding:0 0 0 17px; font-size:14px; line-height:1.85; }
 .to-atelier-subpage .to-prose,.to-atelier-subpage .to-points,.to-atelier-subpage .to-person,.to-atelier:not(.to-desk-active) .to-prose { padding:35px 20px; }
 .to-atelier-subpage .to-prose__in > p:only-child { padding-left:18px; font-size:25px; }
 .to-atelier-subpage .to-points > .to-wrap { display:block; }
 .to-atelier-subpage .to-points__head { position:static; margin-bottom:30px; }
 .to-atelier-subpage .to-points__head h2 { font-size:37px; max-width:none; }
 .to-atelier-subpage .to-service summary { gap:12px; padding:24px 40px 24px 18px; }
 .to-atelier-subpage .to-service h3 { font-size:25px; }
 .to-atelier-subpage .to-service summary::after { right:17px; }
 .to-atelier-subpage .to-service__body { padding:0 22px 25px; font-size:13px; }
 .to-atelier-subpage .to-person__grid > div:last-child { display:block; }
 .to-atelier-subpage .to-person h2 { font-size:54px; }
 .to-atelier-subpage .to-person__list { margin-top:30px; }
 .to-atelier-subpage .to-person__list li { padding:24px; }
 .to-atelier-subpage .to-contact { padding:25px 15px; }
 .to-atelier-subpage .to-contact .to-facts { grid-template-columns:1fr 1fr; padding:8px; }
 .to-atelier-subpage .to-contact .to-facts > div { padding:20px 13px; }
 .to-atelier-subpage .to-contact .to-facts dd { font-size:21px; }
 .to-atelier-subpage .to-contact .to-facts dt { font-size:9px; }
 .to-atelier-subpage .to-contact:has(form) { padding:35px 15px; }
 .to-atelier-subpage .to-form { padding:24px 18px; }
 .to-atelier-subpage .to-form__grid { grid-template-columns:1fr; gap:20px; }
 .to-atelier-subpage .to-chip span { font-size:11px; padding:10px 13px; }
 .to-atelier-legal .to-legal { padding:28px 20px; }
 .to-atelier-legal .to-legal__in { font-size:14px; overflow-wrap:anywhere; }
 .to-atelier-legal .to-legal__in h2 { font-size:28px; }
 .to-atelier:not(.to-desk-active) .to-hero { padding:30px 16px; }
 .to-atelier:not(.to-desk-active) .to-hero__grid { display:flex; flex-direction:column; gap:35px; }
 .to-atelier:not(.to-desk-active) .to-hero__text h1 { font-size:clamp(37px,9.5vw,56px); }
 .to-atelier:not(.to-desk-active) .to-hero__media { max-width:285px; }
 .to-atelier:not(.to-desk-active) .to-hero__frame video { max-height:420px; }
}
@media(max-width:420px) { .to-atelier-subpage .to-contact .to-facts { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .to-atelier-subpage .to-service { transition:none; } }

/* Authorship credit requested by Pixel Studio; one contextual link per page. */
.to-atelier .to-footer__credit { flex:0 0 100%; display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:baseline; gap:4px 6px; margin:0; padding-top:14px; border-top:1px solid #cfba9533; font-size:12px; line-height:1.6; color:#726657; }
.to-atelier .to-footer__credit a { color:#765c3b; font-weight:600; text-decoration:underline; text-decoration-color:#b5976766; text-underline-offset:4px; transition:color .2s ease,text-decoration-color .2s ease; }
.to-atelier .to-footer__credit a:hover { color:#463821; text-decoration-color:currentColor; }
.to-atelier .to-footer__credit a:focus-visible { outline:2px solid #84623d; outline-offset:5px; border-radius:2px; }
@media(max-width:600px) { .to-atelier .to-footer__credit { justify-content:flex-start; } }

/* AGB: compact document typography, isolated from editorial service pages. */
.to-atelier.page-id-104 .to-page-hero { padding-block:32px 24px; }
.to-atelier.page-id-104 .to-page-hero h1 { font-size:clamp(28px,3vw,40px); line-height:1.2; max-width:none; margin-block:12px 0; }
.to-atelier.page-id-104 .to-prose { padding:28px 36px; }
.to-atelier.page-id-104 .to-prose__in { max-width:1000px; font:400 14px/1.65 var(--to-sans); }
.to-atelier.page-id-104 .to-prose :is(p,li) { font-size:14px; line-height:1.65; margin-block:0 12px; }
.to-atelier.page-id-104 .to-prose h2 { max-width:none; font:600 18px/1.4 var(--to-sans); letter-spacing:0; margin-block:24px 8px; }
.to-atelier.page-id-104 .to-prose h3 { font:600 16px/1.4 var(--to-sans); letter-spacing:0; margin-block:18px 6px; }
@media(max-width:860px) {
  .to-atelier.page-id-104 .to-page-hero { padding-block:24px 18px; }
  .to-atelier.page-id-104 .to-prose { padding:22px 20px; }
  .to-atelier.page-id-104 .to-prose h2 { font-size:17px; }
}

/* Contact introduction supplied by the client, PL and DE. */
.to-atelier .to-page-hero[data-contact-hero] h1 {
  max-width: 19ch;
  font-size: clamp(36px, 3.7vw, 58px);
  line-height: 1.08;
}
[data-contact-hero] .to-contact-intro {
  max-width: 45em;
  margin-top: 24px;
  color: #6d6253;
  font-size: 14px;
  line-height: 1.85;
}
[data-contact-hero] .to-contact-intro p { margin: 0 0 14px; }
[data-contact-hero] .to-contact-intro p:last-child { margin-bottom: 0; }
@media (max-width: 860px) {
  [data-contact-hero] .to-contact-intro { order: 3; margin-top: 0; max-width: none; }
  .to-atelier .to-page-hero[data-contact-hero] h1 { font-size: clamp(34px, 7vw, 50px); }
}
