/* Approved German homepage editorial layout; scoped to its main element. */
.ec-page { --ec-text:var(--deep-blue); --ec-muted:var(--link-on-light); --ec-space:88px; color:var(--ec-text); background:#fff; }
.ec-page .ec-dark { --ec-text:#fff; --ec-muted:var(--link-on-dark); background:var(--deep-blue); color:var(--ec-text); }
.ec-page .ec-light,.ec-page .ec-world-card { --ec-text:var(--deep-blue); --ec-muted:var(--link-on-light); color:var(--ec-text); }
.ec-page .idx-topics { background:none; color:var(--ec-text); }
.ec-page .idx-topics>.container { padding-block:var(--ec-space); }
.ec-page :is(section,article)[id] { scroll-margin-top:24px; }
.ec-page .ec-topic { min-height:0; gap:64px; }
.ec-page .ec-topic .idx-topics-copy { display:block; }
.ec-page .ec-topic h2 { color:var(--ec-text); font-size:clamp(32px,3.4vw,48px); font-weight:700; line-height:1.14; text-wrap:balance; }
.ec-page .ec-topic h2 span { display:inline; color:inherit; }
.ec-page .idx-topics-eyebrow { color:var(--ec-muted); font-size:14px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.ec-page .idx-topics-lead { min-height:0; color:var(--ec-text); font-size:18px; line-height:1.7; }
.ec-page .idx-topics-link { color:var(--ec-muted); font-size:16px; text-decoration:none; }
.ec-page .idx-topics-link:hover { text-decoration:underline; }
.ec-page .idx-primary-button { border-radius:5px; gap:12px; }
.ec-page :is(a,button,summary):focus-visible { outline:3px solid var(--deep-blue); outline-offset:4px; box-shadow:0 0 0 7px #fff; }

/* The approved white entry: text and original 1C photographic composition. */
.ec-page .ec-hero>.container { padding-block:56px 62px; }
.ec-page .ec-hero .ec-topic { grid-template-columns:minmax(0,1fr) minmax(0,1.12fr); }
.ec-page .ec-hero h1 { margin:18px 0 23px; color:var(--deep-blue); font:700 clamp(42px,4.8vw,68px)/1.12 'Montserrat',sans-serif; letter-spacing:-.035em; text-wrap:balance; }
.ec-page .ec-hero h1 span { color:var(--link-on-light); box-shadow:inset 0 -.15em 0 var(--ice-blue); }
.ec-page .ec-hero .idx-topics-lead { max-width:570px; font-size:19px; margin-top:0; }
.ec-page .idx-entry-note { color:var(--link-on-light); }
.ec-page .ec-visual { position:relative; min-width:0; padding:0 30px 50px 0; }
.ec-page .ec-portrait { display:block; width:100%; height:560px; object-fit:cover; object-position:43% center; border-radius:4px 90px 4px 4px; }
.ec-page .ec-photoindex { position:absolute; top:22px; left:22px; padding:7px 13px; background:var(--deep-blue); color:#fff; font-size:14px; line-height:1.5; }
.ec-page .ec-inset { position:absolute; bottom:14px; right:0; width:230px; margin:0; padding:12px; transform:rotate(4deg); background:#fff; color:var(--deep-blue); box-shadow:0 12px 40px #03213d28; }
.ec-page .ec-inset img { display:block; width:100%; height:125px; object-fit:cover; }
.ec-page .ec-inset figcaption { padding:8px 2px 0; font-size:14px; font-weight:600; line-height:1.5; }
.ec-page .ec-image-note { display:block; margin:12px 0 0; font-size:14px; color:var(--ec-muted); line-height:1.5; }
.ec-page .ec-visual>.ec-image-note { position:absolute; bottom:0; left:0; max-width:calc(100% - 250px); }
.ec-page .idx-social-proof { padding-block:30px; }
.ec-page .idx-logo-grid img { height:90px; max-width:160px; }

/* One dark chapter, not alternating decorative stripes. */
.ec-page .ec-story>.container { padding-bottom:0; }
.ec-page .ec-story .ec-topic { grid-template-columns:1.2fr 1fr; gap:24px 80px; align-items:start; }
.ec-page .ec-story .idx-topics-copy { display:contents; }
.ec-page .ec-story .idx-topics-eyebrow { grid-column:1/-1; margin:0; }
.ec-page .ec-story h2 { grid-column:1; grid-row:2 / span 2; font-size:clamp(32px,3.6vw,50px); }
.ec-page .ec-story .idx-topics-lead { grid-column:2; grid-row:2; margin:0; }
.ec-page .ec-story .idx-topics-actions { grid-column:2; grid-row:3; margin:0; }
.ec-page .ec-story .idx-dam-scene { grid-column:1/-1; max-width:none; margin-top:24px; }
.ec-page .ec-story .idx-dam-scene img { width:100%; height:470px; object-fit:cover; object-position:50% 40%; border-radius:0; }
.ec-page .ec-dark .idx-dam-scene figcaption { color:var(--link-on-dark); font-size:14px; }
.ec-page .ec-dark .idx-workflow { padding-block:56px 0; }
.ec-page .ec-dark .idx-workflow :is(h2,.idx-eyebrow,.idx-workflow-number,.idx-workflow-example-note),
.ec-page .ec-dark .idx-workflow-steps>li>:is(h3,p),
.ec-page .ec-dark .idx-workflow-benefits :is(summary,h3,p) { color:var(--ec-text); }
.ec-page .ec-dark .idx-workflow :is(.idx-eyebrow,.idx-workflow-number,.idx-workflow-example-note) { color:var(--link-on-dark); }
.ec-page .ec-dark .idx-workflow h2 { font-size:32px; font-weight:600; }
.ec-page .ec-dark .idx-workflow-benefits summary::marker { color:var(--link-on-dark); }
.ec-page .ec-dark .idx-workflow-benefits summary:hover { color:var(--link-on-dark); }
.ec-page .idx-workflow-benefits ul { gap:32px 48px; padding:16px 0 32px; }
.ec-page .ec-benefit { display:grid; grid-template-columns:56px minmax(0,1fr); gap:18px; align-items:start; }
.ec-page .ec-benefit-icon { display:grid; place-items:center; width:56px; height:56px; border-radius:12px; background:rgba(155,211,243,.1); color:var(--link-on-dark); }
.ec-page .ec-benefit-icon svg { display:block; width:30px; height:30px; }
.ec-page .ec-benefit-copy { min-width:0; }
.ec-page .ec-dark .idx-workflow-steps>li { border-color:var(--link-on-dark); }
.ec-page .ec-dark .idx-workflow-example-note { font-size:14px; }
.ec-page .ec-world-card { padding:40px; background:#fff; }
.ec-page .ec-world-card .ec-topic { grid-template-columns:1fr 1.05fr; gap:64px; }
.ec-page .ec-world-card .idx-topics-copy { order:2; }
.ec-page .ec-world-card .idx-mw-scene { order:1; }
.ec-page .ec-world-card .idx-mw-scene figcaption { color:var(--link-on-light); font-size:14px; }
.ec-page .ec-world-card .ec-image-note { color:var(--link-on-light); }

/* Existing interactive approach, search and rights: same content and behaviors. */
.ec-page .idx-approach { border-bottom:1px solid #d5e2e9; }
.ec-page .ec-workscene { margin-top:20px; padding-top:8px; border-top:1px solid #c5d9e5; }
.ec-page .ec-workscene summary { min-height:44px; padding:12px 0; cursor:pointer; color:var(--link-on-light); font-size:14px; }
.ec-page .ec-workscene .idx-entry-scene { margin-top:16px; }
.ec-page .ec-workscene .idx-entry-roles :is(span,strong,svg),.ec-page .ec-workscene .idx-entry-caption { color:var(--deep-blue); }
.ec-page .ec-workscene .idx-entry-caption { font-size:14px; }
.ec-page>.ec-chapter { border-bottom:1px solid #d5e2e9; }
.ec-page .ec-light .idx-ai-search { padding:24px; background:var(--ice-blue); border-radius:8px; }
.ec-page .ec-light .idx-ai-search button { color:var(--link-on-light); }
.ec-page .ec-light .idx-ai-search button[aria-pressed="true"] { color:var(--deep-blue); border-color:var(--link-on-light); }
.ec-page .ec-light .idx-ai-search button:hover { color:var(--deep-blue); background:#fff; }
.ec-page .ec-light .idx-ai-languages button[aria-pressed="true"] { background:#fff; }
.ec-page .ec-light .idx-ai-example figcaption,.ec-page .ec-light .idx-ai-security,
.ec-page .ec-light .idx-ai-security :is(summary,a),.ec-page .ec-light .idx-rights-example>figcaption { color:var(--link-on-light); }
.ec-page .ec-light .idx-ai-example figcaption,.ec-page .ec-light .idx-rights-example>figcaption { font-size:14px; }
.ec-page .idx-products { background:#fff; }
.ec-page .idx-products h2,.ec-page .idx-case-story h2 { font-size:clamp(32px,3.4vw,46px); font-weight:700; }
.ec-page .idx-integration-section { background:var(--ice-blue); }
.ec-page .ec-canva { margin-block:24px 48px; }
.ec-page .ec-canva-stage { min-width:0; padding:28px; background:var(--deep-blue); border-radius:8px; }
.ec-page .ec-canva-stage figcaption { color:var(--link-on-dark); font-size:14px; }
.ec-page .idx-cta { background:var(--ice-blue); color:var(--deep-blue); text-align:left; }
.ec-page .idx-cta-content { max-width:none; }
.ec-page .idx-cta h2 { color:var(--deep-blue); font-weight:700; font-size:clamp(32px,3.4vw,48px); }
.ec-page .idx-cta .idx-eyebrow { color:var(--link-on-light); }
.ec-page .idx-cta p:not(.idx-eyebrow) { color:var(--deep-blue); margin-inline:0; }

@media(max-width:1100px) {
 .ec-page .ec-topic { gap:35px; }
 .ec-page .ec-hero h1 { font-size:49px; }
 .ec-page .ec-portrait { height:520px; }
 .ec-page .ec-story .ec-topic { gap:24px 40px; }
 .ec-page .ec-world-card .ec-topic { gap:40px; }
}
@media(max-width:950px) {
 .ec-page .ec-hero h1 { font-size:44px; }
 .ec-page .ec-topic { gap:28px; }
 .ec-page .ec-portrait { height:475px; }
 .ec-page .ec-inset { width:195px; }
 .ec-page .ec-visual>.ec-image-note { max-width:calc(100% - 215px); }
 .ec-page .ec-light .idx-ai-search { padding:18px; }
 .ec-page .ec-canva-stage { padding:20px; }
}
@media(max-width:800px) {
 .ec-page { --ec-space:56px; }
 .ec-page .ec-hero>.container { padding-block:40px; }
 .ec-page .ec-hero .ec-topic,.ec-page .ec-world-card .ec-topic { grid-template-columns:1fr; gap:34px; }
 .ec-page .ec-hero h1 { max-width:610px; font-size:56px; }
 .ec-page .ec-visual { width:100%; max-width:650px; }
 .ec-page .ec-portrait { height:490px; object-position:center 35%; }
 .ec-page .ec-story .ec-topic { display:flex; flex-direction:column; gap:24px; }
 .ec-page .ec-story .idx-topics-copy { display:block; }
 .ec-page .ec-story .idx-topics-eyebrow { margin-bottom:18px; }
 .ec-page .ec-story .idx-topics-lead { margin-top:24px; }
 .ec-page .ec-story .idx-topics-actions { margin-top:24px; }
 .ec-page .ec-story .idx-dam-scene { margin-top:0; }
 .ec-page .ec-story .idx-dam-scene img { height:400px; }
 .ec-page .ec-world-card { padding:30px; }
 .ec-page .ec-world-card .idx-topics-copy { order:0; }
 .ec-page .ec-world-card .idx-mw-scene { margin:0; }
 .ec-page .ec-topic .idx-ai-search,.ec-page .ec-topic .idx-rights-example,.ec-page .ec-topic .idx-canva-demo { margin-top:0; }
}
@media(max-width:640px) {
 .ec-page .ec-benefit { grid-template-columns:44px minmax(0,1fr); gap:14px; }
 .ec-page .ec-benefit-icon { width:44px; height:44px; border-radius:10px; }
 .ec-page .ec-benefit-icon svg { width:26px; height:26px; }
 .ec-page .ec-hero h1 { font-size:42px; }
 .ec-page .ec-hero .idx-topics-lead { font-size:17px; }
 .ec-page .ec-topic h2 { font-size:32px; }
 .ec-page .ec-topic .idx-topics-lead { font-size:17px; }
 .ec-page .ec-topic .idx-topics-actions { align-items:stretch; }
 .ec-page .ec-topic .idx-primary-button { width:100%; }
 .ec-page .ec-visual { padding-right:15px; padding-bottom:62px; }
 .ec-page .ec-portrait { height:360px; border-top-right-radius:65px; }
 .ec-page .ec-photoindex { top:16px; left:16px; }
 .ec-page .ec-inset { width:158px; bottom:40px; padding:9px; }
 .ec-page .ec-inset img { height:94px; }
 .ec-page .ec-visual>.ec-image-note { max-width:none; }
 .ec-page .idx-logo-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 24px; }
 .ec-page .idx-logo-grid img { height:80px; }
 .ec-page .ec-story .idx-dam-scene img { height:290px; }
 .ec-page .ec-world-card { padding:23px; }
 .ec-page .ec-world-card .ec-topic { gap:28px; }
 .ec-page .ec-canva-stage { padding:18px; }
 .ec-page .idx-products-actions .idx-primary-button { width:100%; }
}
