.ec-goal{padding:64px 0 60px;background:linear-gradient(135deg,#fff7e9,#e4f7f4)}
.ec-goal h1{font-size:clamp(2.4rem,4.8vw,4.3rem);max-width:1000px;line-height:1.12;margin-bottom:10px}
.ec-lesson-caption{font-size:1rem;margin-bottom:28px;color:#48676b}
.ec-goal-text{max-width:950px;font-size:clamp(1.25rem,2.2vw,1.65rem);line-height:1.55;font-weight:650}
.ec-goal-note{font-size:1.1rem;margin-bottom:26px}
.ec-section{padding:64px 0;scroll-margin-top:22px}
.ec-section.ec-originals{background:#f8fbfa;padding-bottom:28px}
.ec-section#probelektion{padding-top:32px}
.ec-section h2{max-width:960px;font-size:clamp(2rem,3.7vw,3.2rem);line-height:1.15}
.ec-intro{font-size:1.15rem;max-width:850px;line-height:1.65}
.ec-view-controls{margin:28px 0 24px}
#lesson-reveal{display:inline-grid;width:min(100%,580px);min-height:76px;font:inherit;font-weight:800;cursor:pointer}
.ec-toggle-label,.ec-toggle-size{grid-area:1/1}.ec-toggle-size{visibility:hidden}
.ec-page-switch{display:none}
.ec-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.ec-page{min-width:0;margin:0}
.ec-page figcaption{font-size:1.1rem;font-weight:800;padding:0 0 14px;line-height:1.5}
.ec-sheet{position:relative;aspect-ratio:210/297;background:#fff;box-shadow:0 12px 36px #17373d15;outline:1px solid #cededb}
.ec-sheet-image{display:block;width:100%;height:100%;padding:0;border:0;background:#fff;cursor:zoom-in}
.ec-sheet-image img{display:block;width:100%;height:100%;object-fit:contain}
.ec-sheet-cover{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:#e4efed;padding:clamp(16px,3vw,44px);color:#17373d}
.ec-sheet-cover strong{font-size:clamp(1.1rem,2vw,1.6rem)}.ec-sheet-cover p{max-width:30ch;font-size:1rem;margin:16px 0 0}
.ec-pages[data-revealed="false"] #english-original,.ec-pages[data-revealed="false"] #english-page-actions{visibility:hidden}
.ec-pages[data-revealed="true"] .ec-sheet-cover{display:none}
.ec-page-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding-top:18px}
.ec-page-actions a{min-height:44px;display:inline-flex;align-items:center;color:#075c5c;text-underline-offset:4px;font-weight:700}
.ec-zoom-button,.ec-page-switch button{font:inherit;font-weight:750;min-height:48px;padding:10px 18px;border:1px solid #a7bfbb;border-radius:12px;background:#fff;color:#075c5c;cursor:pointer}
.ec-trial-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}
.ec-trial-option{padding:30px;border:1px solid #cededb;border-radius:22px;background:#fff;font-size:1.05rem}
.ec-trial-option h3{font-size:1.6rem;line-height:1.2}
.ec-trial-option .d-button{width:100%;font:inherit;font-weight:800}
.ec-trial-option .d-button:disabled{background:#e5ecea!important;border-color:#aabbb6!important;color:#455c59!important;box-shadow:none;cursor:not-allowed;transform:none}
.ec-status,.ec-next{font-size:1rem;line-height:1.6;margin:16px 0 0}.ec-status{padding:14px;border-left:3px solid #aabbb6;margin-bottom:20px}
#lesson-zoom{width:min(96vw,1300px);height:94dvh;max-width:none;max-height:94dvh;padding:0;border:1px solid #aabbb6;border-radius:16px;color:#17373d;background:#f3f7f5}
#lesson-zoom::backdrop{background:#102f3bbf}
#lesson-zoom[open]{display:flex;flex-direction:column}
.ec-zoom-toolbar{padding:16px 20px;background:white;border-bottom:1px solid #cededb;flex-shrink:0}
.ec-zoom-toolbar h2{font-size:1.2rem;margin:0 0 12px;line-height:1.3}
.ec-zoom-toolbar>div{display:flex;gap:8px;flex-wrap:wrap}
.ec-zoom-toolbar button{min-height:44px;min-width:44px;font:inherit;font-weight:700;padding:8px 12px;border:1px solid #a7bfbb;border-radius:10px;background:#fff;color:#075c5c;cursor:pointer}
.ec-zoom-scroll{overflow:auto;flex:1;min-height:0;padding:12px;overscroll-behavior:contain}
.ec-zoom-scroll img{display:block;max-width:none;height:auto;margin:auto;box-shadow:0 5px 24px #17373d22}
.travel-english button:focus-visible,.ec-zoom-scroll:focus-visible{outline:3px solid #f4b75e;outline-offset:3px}
@media(max-width:700px){.ec-goal{padding:38px 0 44px}.ec-section{padding:44px 0}.ec-pages{display:block}.ec-pages[data-active-page="de"] [data-language="en"],.ec-pages[data-active-page="en"] [data-language="de"]{display:none}.ec-page-switch{display:flex;gap:10px;margin-top:18px}.ec-page-switch button{flex:1}.ec-page-switch [aria-pressed="true"]{background:#075c5c;color:#fff;border-color:#075c5c}.ec-page figcaption{font-size:1.05rem}.ec-trial-options{grid-template-columns:1fr}.ec-trial-option{padding:24px}.ec-goal-text{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.d-button{transition:none}}

.ec-entry-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.ec-direct-download{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:28px;border:1px solid #cededb;border-radius:22px;background:#eaf6f2;margin-bottom:40px}
.ec-direct-download p{flex:1 1 280px;margin:0;font-size:1.15rem;line-height:1.6}
.ec-direct-download .d-button{max-width:100%;text-align:center}
@media(max-width:700px){.ec-entry-actions{align-items:stretch;flex-direction:column}.ec-direct-download{padding:22px}.ec-direct-download .d-button{width:100%}}

.ec-learning-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;margin:32px 0;list-style:none}
.ec-learning-steps li{min-width:0;padding:28px;background:#fff;border:1px solid #cededb;border-radius:22px}
.ec-learning-steps h3,.ec-learning-rhythm h3{font-size:1.5rem;line-height:1.3;margin:0 0 14px}
.ec-learning-steps li>p:last-child{margin-bottom:0;font-size:1.1rem;line-height:1.6}
.ec-learning-rhythm{margin-top:28px;padding:28px;border-left:4px solid #087d7b;background:#fff;border-radius:0 16px 16px 0}
.ec-learning-rhythm p{font-size:1.15rem;line-height:1.7;margin:0}
@media(max-width:800px){.ec-learning-steps{grid-template-columns:1fr}.ec-learning-steps li,.ec-learning-rhythm{padding:22px}}

.ec-film-intro{padding:28px 0 0;background:#fff7e9}
.ec-film-frame{position:relative;overflow:hidden;border-radius:28px;background:#223a39}
.ec-film-frame video{display:block;width:100%;height:clamp(240px,42vw,500px);object-fit:cover}
.ec-film-toggle{position:absolute;right:16px;bottom:16px;padding:10px 16px;min-height:44px;border:1px solid #ffffff80;border-radius:24px;background:#17373de6;color:#fff;font:inherit;font-weight:700;cursor:pointer}
@media(max-width:700px){.ec-film-intro{padding-top:18px}.ec-film-frame{border-radius:20px}.ec-film-toggle{right:12px;bottom:12px}}
