/* GENERATED by tools/import_fonts.py from src/fonts/fonts.config.json - do not edit by hand. */
@font-face{font-family:'Nimbus Sans';font-style:normal;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/nimbus-sans/nimbus-sans-400.woff2) format('woff2');unicode-range:U+0000-024F, U+0400-052F, U+1E00-1EFF, U+2000-206F, U+20A0-20CF, U+2100-214F, U+2190-21FF, U+2212, U+25CF, U+2116}
@font-face{font-family:'Nimbus Sans';font-style:normal;font-weight:700;font-display:swap;src:url(/website-development/static/fonts/nimbus-sans/nimbus-sans-700.woff2) format('woff2');unicode-range:U+0000-024F, U+0400-052F, U+1E00-1EFF, U+2000-206F, U+20A0-20CF, U+2100-214F, U+2190-21FF, U+2212, U+25CF, U+2116}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:800;font-display:swap;src:url(/website-development/static/fonts/inter-tight/inter-tight-cyrillic-ext-800-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:800;font-display:swap;src:url(/website-development/static/fonts/inter-tight/inter-tight-cyrillic-800-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:800;font-display:swap;src:url(/website-development/static/fonts/inter-tight/inter-tight-latin-ext-800-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:800;font-display:swap;src:url(/website-development/static/fonts/inter-tight/inter-tight-latin-800-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/inter/inter-cyrillic-ext-400-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/inter/inter-cyrillic-400-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/inter/inter-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/inter/inter-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(/website-development/static/fonts/inter/inter-cyrillic-ext-600-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(/website-development/static/fonts/inter/inter-cyrillic-600-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(/website-development/static/fonts/inter/inter-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(/website-development/static/fonts/inter/inter-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(/website-development/static/fonts/inter/inter-cyrillic-ext-700-normal.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(/website-development/static/fonts/inter/inter-cyrillic-700-normal.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(/website-development/static/fonts/inter/inter-latin-ext-700-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url(/website-development/static/fonts/inter/inter-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'PT Serif';font-style:italic;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/pt-serif/pt-serif-cyrillic-ext-400-italic.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:'PT Serif';font-style:italic;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/pt-serif/pt-serif-cyrillic-400-italic.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'PT Serif';font-style:italic;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/pt-serif/pt-serif-latin-ext-400-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'PT Serif';font-style:italic;font-weight:400;font-display:swap;src:url(/website-development/static/fonts/pt-serif/pt-serif-latin-400-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* DWE-P03-WEBSITE — page styles (one file, dwe-* scoped classes, tokens in :root).
   Visual pass f1: every size / offset below was measured on the approved v2.3 boards (Desktop 1440 / Mobile 390;
   measurements and comparisons in the evidence dir f1/). Fluid between 768 and 1440 (clamp with vw), explicit mobile
   sizes below 768. Breakpoint Mobile/Desktop layout: 768 px. Mobile body line-height stays >= 1.3 (LAYOUT_AND_BEHAVIOR.md)
   although several boards are set tighter; per-block insets of the boards (B03 copy at x 84, B05 at 87, B06 at 70) are kept. */
:root {
  --dwe-red: #e8101a;
  --dwe-red-hi: #f41d1d;
  --dwe-red-lo: #c9000f;
  --dwe-red-ink: #c3000f;
  --dwe-ink: #0b0d12;
  --dwe-text: #46506a;
  --dwe-blue: #4f5d86;
  --dwe-muted: #66718a;
  --dwe-line: #e3e6ec;
  --dwe-field: #f8f9fc;
  --dwe-field-line: #c9cfdb;
  --dwe-graphite: #12161d;
  --dwe-white: #fff;
  --dwe-focus: #121e2d;
  --dwe-font-display: 'Inter Tight', 'Inter', 'Helvetica Neue', Arial, sans-serif;
  --dwe-font-text: 'Inter', 'Helvetica Neue', Arial, sans-serif;
  --dwe-font-ui: 'Nimbus Sans', 'Helvetica Neue', Arial, sans-serif;
  --dwe-font-quote: 'PT Serif', Georgia, serif;
  --dwe-container: 1320px;
  --dwe-gutter: 60px;
  --dwe-header-h: 76px;
  --dwe-header-real: 76px;
  --dwe-radius: 14px;
  --dwe-ease: cubic-bezier(.2, .7, .2, 1);
}
@media (max-width: 1279.98px) { :root { --dwe-gutter: 40px; } }
@media (max-width: 1023.98px) { :root { --dwe-gutter: 32px; } }
@media (max-width: 767.98px) { :root { --dwe-gutter: 27px; --dwe-header-h: 60px; --dwe-header-real: 60px; } }

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
/* smooth in-page scrolling only after the page has loaded (page.js adds .dwe-smooth): a URL with #section — e.g. after the
   RU/EN switch — lands at once instead of animating from the top */
html.dwe-smooth { scroll-behavior: smooth; }
/* anchors land under the sticky header through scroll-margin on the targets only (scroll-padding on html as well would double the offset) */
@media (prefers-reduced-motion: reduce) { html, html.dwe-smooth { scroll-behavior: auto; } }
html.dwe-scroll-lock, html.dwe-scroll-lock body { overflow: hidden; }
body { margin: 0; background: #fff; color: var(--dwe-text); font: 400 18px/1.4 var(--dwe-font-text); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip; }
img, picture, svg { display: block; max-width: 100%; }
img { height: auto; }
h1, h2, h3, p, ul, ol, figure, blockquote { margin: 0; }
ul, ol { padding: 0; list-style: none; }
a { color: inherit; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 3px solid var(--dwe-focus); outline-offset: 3px; border-radius: 4px; }
.dwe-works :focus-visible, .dwe-lead-form :focus-visible, .dwe-lightbox :focus-visible { outline-color: #fff; }
.dwe-form-card :focus-visible { outline-color: var(--dwe-focus); }
section[id], [id="top"] { scroll-margin-top: var(--dwe-header-real); }

.dwe-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.dwe-skip { position: absolute; left: 12px; top: -60px; z-index: 200; padding: 10px 16px; border-radius: 8px; background: var(--dwe-ink); color: #fff; font-weight: 600; text-decoration: none; }
.dwe-skip:focus { top: 12px; }
.dwe-container { width: 100%; max-width: calc(var(--dwe-container) + 2 * var(--dwe-gutter)); margin: 0 auto; padding: 0 var(--dwe-gutter); }
.dwe-v-mob, .dwe-only-mob { display: none; }
@media (max-width: 767.98px) {
  .dwe-v-desk, .dwe-only-desk { display: none !important; }
  .dwe-v-mob { display: inline; }
  .dwe-only-mob { display: block; }
  .dwe-br-desk { display: none; }
}

/* ---------------------------------------------------------------- type roles */
.dwe-display, .dwe-h2 { font-family: var(--dwe-font-display); color: var(--dwe-ink); font-weight: 800; letter-spacing: -.03em; line-height: .96; }
.dwe-h2 { font-size: clamp(34px, 4.583vw, 66px); }
.dwe-h3 { font-family: var(--dwe-font-display); color: var(--dwe-ink); font-weight: 800; letter-spacing: -.02em; line-height: 1.12; font-size: clamp(20px, 1.736vw, 25px); }
.dwe-lead { font-size: clamp(18px, 1.736vw, 25px); line-height: 1.3; color: var(--dwe-blue); font-weight: 400; }
.dwe-acc { color: var(--dwe-red); }
.dwe-dot { color: var(--dwe-red); }
@media (min-width: 768px) { .dwe-acc-d { color: var(--dwe-red); } }
.dwe-eyebrow { display: flex; align-items: center; gap: 16px; font: 700 12px/1.2 var(--dwe-font-text); letter-spacing: .18em; text-transform: uppercase; color: var(--dwe-muted); }
.dwe-dash::before { content: ''; display: block; width: 50px; height: 3px; border-radius: 2px; background: var(--dwe-red); margin-bottom: 18px; }
.dwe-eyebrow.dwe-dash::before { margin: 0; width: 46px; flex: none; }
.dwe-scene { width: 100%; }
.dwe-scene img { width: 100%; height: auto; }
.dwe-scene-caption { font-size: 18px; color: var(--dwe-muted); text-align: center; }
.dwe-bg-img { width: 100%; height: 100%; object-fit: cover; }

/* ---------------------------------------------------------------- buttons + links */
.dwe-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 48px; padding: 12px 28px; border: 0; border-radius: 10px; cursor: pointer;
  font: 700 18px/1.2 var(--dwe-font-text); text-decoration: none; -webkit-tap-highlight-color: transparent;
  transition: transform .15s var(--dwe-ease), box-shadow .2s, background-color .2s, filter .2s; }
.dwe-btn--primary { color: #fff; background: linear-gradient(180deg, var(--dwe-red-hi), var(--dwe-red-lo)); box-shadow: 0 10px 24px -10px rgba(220, 10, 20, .75); }
.dwe-btn--primary:hover { filter: brightness(1.06); transform: translateY(-1px); box-shadow: 0 14px 30px -10px rgba(220, 10, 20, .85); }
.dwe-btn--primary:active { transform: translateY(1px); filter: brightness(.9); box-shadow: 0 4px 12px -8px rgba(220, 10, 20, .7), inset 0 2px 6px rgba(80, 0, 10, .35); }
.dwe-btn--primary:focus-visible { outline-color: var(--dwe-focus); outline-offset: 4px; }
.dwe-btn--primary[disabled] { cursor: progress; }
.dwe-btn--lg { min-height: 56px; padding: 12px 34px; font-size: 20px; font-weight: 700; }
.dwe-icon--arrow { width: 24px; height: 24px; flex: none; }
.dwe-link { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 7px; text-decoration-thickness: 1px; font-size: 22px; transition: color .15s, text-decoration-thickness .15s; }
.dwe-link:hover { text-decoration-thickness: 2px; }
.dwe-link:active { opacity: .75; }
.dwe-link--red { color: var(--dwe-red-ink); font-weight: 700; text-underline-offset: 4px; }
.dwe-link--red:hover { color: var(--dwe-red); }

/* ---------------------------------------------------------------- header + menu */
.dwe-header { position: sticky; top: 0; z-index: 50; background: rgba(255, 255, 255, .94); -webkit-backdrop-filter: saturate(1.4) blur(10px); backdrop-filter: saturate(1.4) blur(10px); transition: box-shadow .2s; }
.dwe-header.is-scrolled { box-shadow: 0 1px 0 var(--dwe-line), 0 8px 24px -16px rgba(15, 20, 30, .25); }
.dwe-header__inner { display: flex; align-items: center; gap: 32px; min-height: var(--dwe-header-h); max-width: calc(1110px + 2 * var(--dwe-gutter)); }
.dwe-logo { display: inline-flex; flex: none; border-radius: 4px; }
.dwe-header__logo .dwe-logo__img { width: 210px; height: auto; }
.dwe-header__nav { margin-left: auto; margin-right: auto; }
.dwe-header__list { display: flex; gap: 38px; }
.dwe-header__link { display: inline-flex; align-items: center; min-height: 44px; font: 400 17px/1 var(--dwe-font-text); color: #2b3240; text-decoration: none; transition: color .15s; }
.dwe-header__link:hover, .dwe-header__link.is-active { color: var(--dwe-red-ink); }
.dwe-header__link:active { color: var(--dwe-red); }
.dwe-header__cta { min-height: 50px; padding: 10px 30px; font-size: 18px; gap: 14px; }
.dwe-header__burger { display: none; align-items: center; justify-content: center; width: 48px; height: 48px; margin-right: -10px; border: 0; background: none; cursor: pointer; color: var(--dwe-ink); border-radius: 8px; }
.dwe-header__burger:hover { background: #f2f3f6; }
@media (max-width: 1023.98px) {
  .dwe-header__inner { gap: 20px; }
  .dwe-header__logo .dwe-logo__img { width: 170px; }
  .dwe-header__list { gap: 24px; }
}
@media (max-width: 767.98px) {
  .dwe-header__inner { gap: 12px; }
  .dwe-header__logo .dwe-logo__img { width: 126px; }
  .dwe-header__nav, .dwe-header__cta { display: none; }
  .dwe-header__burger { display: inline-flex; margin-left: auto; }
}
.dwe-menu { position: fixed; inset: 0; z-index: 100; background: rgba(10, 12, 16, .45); }
.dwe-menu[hidden] { display: none; }
.dwe-menu__panel { position: absolute; inset: 0 0 auto 0; max-height: 100%; overflow: auto; background: #fff; padding: 0 var(--dwe-gutter) 28px; box-shadow: 0 24px 48px -24px rgba(0, 0, 0, .4); }
.dwe-menu__bar { display: flex; align-items: center; justify-content: space-between; min-height: var(--dwe-header-h); }
.dwe-menu__logo .dwe-logo__img { width: 126px; }
.dwe-menu__close { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin-right: -10px; border: 0; background: none; cursor: pointer; color: var(--dwe-ink); border-radius: 8px; }
.dwe-menu__close:hover { background: #f2f3f6; }
.dwe-menu__list { display: grid; margin: 4px 0 0; }
.dwe-menu__link { display: flex; align-items: center; min-height: 56px; padding: 14px 0; border-bottom: 1px solid #e0e4eb; font: 400 20px/1.2 var(--dwe-font-text); color: #19242f; text-decoration: none; }
.dwe-menu__link:hover { color: var(--dwe-red-ink); }
.dwe-menu__locale { display: flex; min-height: 56px; padding: 6px 0; border-bottom: 1px solid #e0e4eb; margin-bottom: 26px; }
.dwe-menu__cta { width: 100%; min-height: 52px; }

.dwe-locale { display: inline-flex; align-items: center; gap: 2px; font: 400 20px/1 var(--dwe-font-ui); color: #66728a; }
.dwe-locale__link { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; text-decoration: none; color: inherit; }
.dwe-locale__link.is-current { color: var(--dwe-ink); font-weight: 700; }
.dwe-locale__link:not(.is-current):hover { color: var(--dwe-red-ink); text-decoration: underline; text-underline-offset: 4px; }

/* ---------------------------------------------------------------- B01 hero */
.dwe-hero { position: relative; background: radial-gradient(110% 60% at 50% 0%, #fff 0%, #f8f8fa 55%, #eef0f3 100%); overflow: hidden; }
.dwe-hero__inner { display: flex; flex-direction: column; align-items: center; text-align: center; padding-top: 26px; }
.dwe-hero__title { font-size: clamp(40px, 5.556vw, 80px); line-height: .97; max-width: 1040px; }
@media (min-width: 768px) { .dwe-hero__title .dwe-acc-d { display: block; } }
/* EN (round f2): the red phrase of the hero has no desktop-only outer part, it takes the second line on its own;
   EN headings get balanced line breaks (no orphan last word; a no-op where unsupported) */
@media (min-width: 768px) { html[lang="en"] .dwe-hero__title .dwe-acc { display: block; } }
html[lang="en"] .dwe-display, html[lang="en"] .dwe-h2 { text-wrap: balance; }
/* EN: the FAQ title column takes 475 px so the heading breaks in three lines (Let's clear up / the remaining / questions.) */
@media (min-width: 1024px) { html[lang="en"] .dwe-faq__inner { grid-template-columns: minmax(0, 475px) minmax(0, 1fr); } }
html[lang="en"] .dwe-scope__bundle-desc { font-size: 15px; }
/* EN at 360: the long CTA label (Discuss your website for free) keeps one line inside the buttons */
@media (max-width: 374.98px) {
  html[lang="en"] .dwe-hero__cta, html[lang="en"] .dwe-consult__cta .dwe-btn, html[lang="en"] .dwe-scope__cta .dwe-btn, html[lang="en"] .dwe-gallery__open { font-size: 17px; padding: 10px 14px; gap: 8px; }
  html[lang="en"] .dwe-form__submit { font-size: 17px; padding: 10px 12px; }
}
.dwe-hero__lead { margin-top: 10px; font: 600 clamp(20px, 2.29vw, 33px)/1.15 var(--dwe-font-text); color: var(--dwe-ink); letter-spacing: -.015em; }
.dwe-hero__body { margin-top: 12px; max-width: 660px; font-size: clamp(17px, 1.46vw, 21px); line-height: 1.3; color: var(--dwe-text); }
.dwe-hero__cta { margin-top: 20px; min-width: 330px; min-height: 52px; }
.dwe-hero__note { margin-top: 13px; max-width: 470px; font-size: 15px; line-height: 1.35; color: var(--dwe-muted); }
.dwe-hero__scene { margin: -4px auto 0; width: 100%; max-width: 1469px; }
.dwe-hero__support { text-align: center; padding-top: 14px; padding-bottom: 19px; font-size: 17px; line-height: 1.3; color: var(--dwe-text); }
@media (max-width: 767.98px) {
  .dwe-hero__inner { padding-top: 14px; }
  .dwe-hero__title { font-size: clamp(34px, 10.26vw, 40px); line-height: .92; }
  .dwe-hero__lead { margin-top: 14px; font-size: 20px; font-weight: 700; line-height: 1.2; letter-spacing: -.01em; }
  .dwe-hero__body { margin-top: 12px; font-size: 16px; line-height: 1.4; }
  .dwe-hero__cta { margin-top: 18px; min-width: 0; width: 100%; min-height: 48px; font-size: 18px; padding: 10px 20px; gap: 12px; }
  .dwe-hero__note { margin-top: 12px; font-size: 15px; line-height: 1.45; }
  .dwe-hero__scene { margin-top: 6px; }
  .dwe-hero__support { padding-top: 16px; padding-bottom: 27px; font-size: 17px; }
}

/* ---------------------------------------------------------------- B02 method */
.dwe-method { padding: 21px 0 10px; background: linear-gradient(#fff, #f6f7f9); overflow: hidden; }
.dwe-method__title { text-align: center; max-width: 1140px; margin: 0 auto; font-size: clamp(30px, 3.472vw, 50px); line-height: .96; letter-spacing: -.04em; }
.dwe-method__lead { text-align: center; max-width: 940px; margin: 8px auto 0; font-size: clamp(18px, 1.667vw, 24px); line-height: 1.25; color: var(--dwe-text); }
.dwe-method__grid { display: grid; grid-template-columns: minmax(0, 1020fr) minmax(0, 420fr); align-items: stretch; margin: -2px calc(-1 * var(--dwe-gutter)) 0; }
.dwe-method__scene { min-width: 0; }
.dwe-method__points { position: relative; min-width: 0; }
.dwe-method__point { position: absolute; left: 22px; right: 40px; }
.dwe-method__point[data-point="1"] { top: 13.4%; }
.dwe-method__point[data-point="2"] { top: 43.7%; }
.dwe-method__point[data-point="3"] { top: 70.9%; }
.dwe-method__point-title { font-size: clamp(22px, 2.01vw, 29px); line-height: 1.1; }
.dwe-method__point-body { margin-top: 8px; font-size: clamp(17px, 1.39vw, 20px); line-height: 1.3; color: var(--dwe-text); }
.dwe-method__point-scene { display: none; }
.dwe-method__closing { margin: 20px auto 0; max-width: 870px; text-align: center; font-size: clamp(18px, 1.667vw, 24px); line-height: 1.25; color: var(--dwe-ink); }
@media (max-width: 1179.98px) {
  .dwe-method__grid { display: block; margin: 0; }
  .dwe-method__scene { display: none; }
  .dwe-method__points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin-top: 26px; }
  .dwe-method__point { position: static; }
  .dwe-method__point-scene { display: block; margin-top: 14px; width: 100%; border-radius: 10px; }
  .dwe-method__closing { margin-top: 28px; }
}
@media (max-width: 767.98px) {
  .dwe-method { padding: 36px 0 6px; }
  .dwe-method > .dwe-container { padding-left: 34px; padding-right: 30px; }
  .dwe-method__title, .dwe-method__lead, .dwe-method__closing { text-align: left; }
  .dwe-method__title { font-size: 24px; line-height: 1.08; letter-spacing: -.04em; }
  .dwe-method__lead { margin-top: 12px; font-size: 18px; line-height: 1.3; }
  .dwe-method__points { display: block; margin-top: 12px; }
  .dwe-method__point + .dwe-method__point { margin-top: 8px; }
  .dwe-method__point-title { font-size: 26px; line-height: 1.08; }
  .dwe-method__point-body { margin-top: 6px; font-size: 18px; line-height: 1.3; }
  .dwe-method__point-scene { margin: 4px -10px 0 -14px; width: calc(100% + 24px); max-width: none; border-radius: 10px; }
  .dwe-method__closing { margin: 6px 0 0 22px; max-width: 282px; font-size: 16px; line-height: 1.25; }
}

/* ---------------------------------------------------------------- B03 consultation */
.dwe-consult { padding: 0 0 40px; background: linear-gradient(100deg, #fff 0 40%, #f4f2f0 100%); overflow: hidden; }
.dwe-consult__inner { display: grid; grid-template-columns: minmax(0, 775fr) minmax(0, 605fr); grid-template-areas: 'copy scene' 'list scene' 'quote quote' 'decision decision'; column-gap: 0; max-width: 1440px; margin: 0 auto; padding-left: var(--dwe-gutter); padding-right: 0; }
.dwe-consult__copy { grid-area: copy; padding: 40px 20px 0 24px; min-width: 0; }
.dwe-consult__title { margin-top: 22px; font-size: clamp(32px, 3.472vw, 50px); line-height: 1.04; }
.dwe-consult__body { margin-top: 26px; max-width: 660px; font-size: clamp(18px, 1.667vw, 24px); line-height: 1.3; color: var(--dwe-text); }
.dwe-consult__scene { grid-area: scene; align-self: start; padding-top: 58px; min-width: 0; }
.dwe-consult__caption { margin-top: 12px; }
.dwe-consult__list { grid-area: list; align-self: start; display: grid; gap: 28px; margin: 44px 0 0 28px; padding-bottom: 44px; }
.dwe-consult__item { display: flex; align-items: center; gap: 28px; font-size: clamp(18px, 1.53vw, 22px); line-height: 1.27; color: var(--dwe-text); }
.dwe-consult__icon { flex: none; width: 62px; height: 62px; border-radius: 14px; box-shadow: 0 8px 20px -10px rgba(30, 40, 60, .25); overflow: hidden; }
.dwe-consult__icon img { width: 100%; height: 100%; }
.dwe-quote { grid-area: quote; display: grid; grid-template-columns: 50px 1fr; column-gap: 31px; margin: 11px 0 0 24px; max-width: 1051px; }
.dwe-quote__mark { grid-row: span 2; width: 50px; }
.dwe-quote__text { font: italic 400 clamp(20px, 1.944vw, 28px)/1.3 var(--dwe-font-quote); color: var(--dwe-ink); }
.dwe-quote__text q { quotes: '\00AB' '\00BB'; }
html[lang='en'] .dwe-quote__text q { quotes: '\201C' '\201D'; }
.dwe-quote__author { display: flex; align-items: center; gap: 18px; margin-top: 10px; font-size: 17px; color: var(--dwe-ink); }
.dwe-quote__author.dwe-dash::before { margin: 0; width: 36px; height: 2px; }
.dwe-consult__decision { grid-area: decision; margin: 22px 0 0 24px; padding-top: 36px; padding-right: var(--dwe-gutter); border-top: 1px solid var(--dwe-line); }
.dwe-consult__decision-text { max-width: 850px; font-size: clamp(22px, 2.36vw, 34px); font-weight: 800; letter-spacing: -.025em; line-height: 1.04; }
.dwe-consult__cta { display: flex; align-items: center; gap: 34px; margin-top: 16px; }
.dwe-consult__cta .dwe-btn { min-width: 388px; min-height: 60px; }
.dwe-consult__cta-note { max-width: 270px; font-size: 17px; line-height: 1.35; color: var(--dwe-muted); }
@media (max-width: 767.98px) {
  .dwe-consult { padding: 0 0 22px; }
  .dwe-consult__inner { display: flex; flex-direction: column; padding: 0 var(--dwe-gutter); }
  .dwe-consult__copy { padding: 24px 0 0; }
  .dwe-eyebrow { font-size: 11px; gap: 10px; }
  .dwe-eyebrow.dwe-dash::before { width: 34px; }
  .dwe-consult__title { margin-top: 14px; max-width: 326px; font-size: 27px; line-height: 1.07; letter-spacing: -.04em; }
  .dwe-consult__body { margin-top: 10px; font-size: 18px; line-height: 1.3; }
  .dwe-consult__scene { order: 1; margin: 4px calc(18px - var(--dwe-gutter)) 0; padding-top: 0; width: calc(100% + 2 * (var(--dwe-gutter) - 18px)); max-width: none; }
  .dwe-consult__caption { display: none; }
  .dwe-consult__list { order: 2; gap: 18px; margin: 8px 0 0; padding-bottom: 0; }
  .dwe-consult__item { gap: 20px; font-size: 18px; line-height: 1.3; }
  .dwe-consult__icon { width: 44px; height: 44px; border-radius: 11px; }
  .dwe-quote { order: 3; grid-template-columns: 34px 1fr; column-gap: 23px; margin: 12px 0 0; max-width: none; }
  .dwe-quote__mark { width: 34px; }
  .dwe-quote__text { font-size: 16px; line-height: 1.3; }
  .dwe-quote__author { margin-top: 10px; font-size: 14px; gap: 12px; }
  .dwe-quote__author.dwe-dash::before { width: 26px; }
  .dwe-consult__decision { order: 4; margin: 14px 0 0; padding: 0; border-top: 0; }
  .dwe-consult__decision-text { font-size: 22px; line-height: 1.1; letter-spacing: -.03em; }
  .dwe-consult__cta { flex-direction: column; align-items: stretch; gap: 10px; margin-top: 12px; }
  .dwe-consult__cta .dwe-btn { min-width: 0; width: 100%; min-height: 48px; font-size: 18px; padding: 10px 20px; gap: 12px; }
  .dwe-consult__cta-note { max-width: none; font-size: 15px; color: var(--dwe-blue); }
}

/* ---------------------------------------------------------------- B04 works (graphite, gallery) */
.dwe-works { position: relative; color: #fff; background: var(--dwe-graphite); overflow: hidden; isolation: isolate; }
.dwe-works__bg, .dwe-lead-form__bg, .dwe-scope__bg { position: absolute; inset: 0; z-index: -1; }
.dwe-works__inner { padding-top: 44px; padding-bottom: 54px; }
.dwe-works__title { color: #fff; max-width: 1160px; font-size: clamp(32px, 4.167vw, 60px); line-height: .95; }
.dwe-works__title.dwe-dash::before { width: 44px; margin-bottom: 20px; }
.dwe-works__lead { margin-top: 10px; color: #e6e9ef; font-size: clamp(18px, 1.944vw, 28px); line-height: 1.25; letter-spacing: .01em; }
.dwe-gallery { margin-top: 14px; font-family: var(--dwe-font-ui); }
.dwe-gallery__nav { display: flex; align-items: center; gap: 24px; margin-right: -15px; }
.dwe-gallery__tabs { display: flex; gap: 0; flex: 1 1 auto; min-width: 0; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x proximity; padding: 2px 0; }
.dwe-gallery__tabs::-webkit-scrollbar { display: none; }
.dwe-gallery__tab { flex: none; position: relative; min-height: 44px; padding: 4px 0 12px; margin-right: clamp(28px, 6.25vw, 90px); border: 0; background: none; cursor: pointer; color: #e6e9ef;
  font: 400 22px/1.2 var(--dwe-font-ui); white-space: nowrap; scroll-snap-align: start; -webkit-tap-highlight-color: transparent; transition: color .15s; }
.dwe-gallery__tab::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; border-radius: 2px; background: var(--dwe-red); transform: scaleX(0); transform-origin: left; transition: transform .3s var(--dwe-ease); }
.dwe-gallery__tab:hover { color: #fff; }
.dwe-gallery__tab:active { color: #fff; opacity: .8; }
.dwe-gallery__tab:focus-visible { outline-offset: -2px; }
.dwe-gallery__tab.is-active { color: #fff; font-weight: 700; }
.dwe-gallery__tab.is-active::after { transform: scaleX(1); }
.dwe-gallery__controls { display: flex; align-items: center; gap: 12px; flex: none; }
.dwe-gallery__arrow { display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .3); background: rgba(255, 255, 255, .08); color: #fff; cursor: pointer; transition: background-color .2s, transform .15s; }
.dwe-gallery__arrow:hover { background: rgba(255, 255, 255, .18); }
.dwe-gallery__arrow:active { transform: scale(.94); background: rgba(255, 255, 255, .28); }
.dwe-gallery__counter { min-width: 54px; text-align: center; font: 400 20px/1 var(--dwe-font-ui); color: #fff; }
.dwe-gallery__counter-sep { margin: 0 6px; }
.dwe-gallery__stage { display: grid; margin: 10px -13px 0; touch-action: pan-y; }
.dwe-gallery__panel { grid-area: 1 / 1; display: grid; grid-template-columns: minmax(0, 824fr) minmax(0, 502fr); grid-template-areas: 'hero detail' 'text detail' 'actions detail'; column-gap: 20px; align-content: start;
  transition: opacity .3s var(--dwe-ease), transform .3s var(--dwe-ease), visibility 0s linear 0s; }
.dwe-gallery__panel.is-inactive { visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .25s var(--dwe-ease), transform .25s var(--dwe-ease), visibility 0s linear .25s; }
.dwe-gallery[data-dir='next'] .dwe-gallery__panel.is-inactive { transform: translateX(-16px); }
.dwe-gallery[data-dir='prev'] .dwe-gallery__panel.is-inactive { transform: translateX(16px); }
.dwe-gallery__frame { grid-area: hero; display: block; width: 100%; padding: 10px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 12px; background: rgba(255, 255, 255, .06); cursor: zoom-in; transition: border-color .15s, background-color .15s; }
.dwe-gallery__frame:hover { border-color: rgba(255, 255, 255, .32); background: rgba(255, 255, 255, .1); }
.dwe-gallery__frame:active { background: rgba(255, 255, 255, .14); }
.dwe-gallery__frame-img { width: 100%; aspect-ratio: 804 / 379; object-fit: scale-down; background: #fff; border-radius: 6px; }
.dwe-gallery__detail { grid-area: detail; align-self: start; min-width: 0; }
.dwe-gallery__detail > img, .dwe-gallery__detail picture { padding: 10px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 12px; background: rgba(255, 255, 255, .06); }
.dwe-gallery__detail-img, .dwe-gallery__detail img { width: 100%; aspect-ratio: 482 / 379; object-fit: scale-down; background: #fff; border-radius: 6px; }
.dwe-gallery__detail picture img { padding: 0; border: 0; }
.dwe-gallery__detail-label { margin-top: 16px; padding-left: 12px; font: 400 19px/1.3 var(--dwe-font-ui); color: #fff; }
.dwe-gallery__text { grid-area: text; padding: 14px 0 0 13px; }
.dwe-gallery__name { font: 700 clamp(30px, 3.4vw, 49px)/1.05 var(--dwe-font-ui); color: #fff; letter-spacing: 0; }
.dwe-gallery__caption { margin-top: 4px; font-size: clamp(18px, 1.667vw, 24px); line-height: 1.2; color: #d7dbe3; }
.dwe-gallery__desc { margin-top: 12px; max-width: 810px; font-size: clamp(17px, 1.53vw, 22px); line-height: 1.22; color: #fff; }
.dwe-gallery__actions { grid-area: actions; display: flex; align-items: center; gap: 46px; margin: 12px 0 0 13px; }
.dwe-gallery__open { min-width: 338px; min-height: 54px; justify-content: space-between; padding: 10px 36px; font-size: 20px; font-family: var(--dwe-font-text); }
.dwe-gallery__link { color: #fff; font-size: 22px; }
.dwe-works__closing { display: flex; align-items: center; justify-content: center; gap: 26px; margin-top: 42px; padding-top: 28px; border-top: 1px solid rgba(255, 255, 255, .2);
  font: 800 clamp(22px, 2.64vw, 38px)/1.1 var(--dwe-font-display); letter-spacing: -.025em; color: #fff; }
.dwe-works__closing.dwe-dash::before { margin: 0; width: 42px; height: 4px; flex: none; }
@media (max-width: 1023.98px) {
  .dwe-gallery__actions { gap: 24px; flex-wrap: wrap; }
  .dwe-gallery__open { min-width: 0; }
  .dwe-gallery__stage, .dwe-gallery__nav { margin-left: 0; margin-right: 0; }
}
@media (max-width: 767.98px) {
  .dwe-works__inner { padding-top: 18px; padding-bottom: 28px; }
  .dwe-works__title { font-size: 28px; line-height: .92; letter-spacing: -.035em; }
  .dwe-works__title.dwe-dash::before { width: 36px; margin-bottom: 10px; }
  .dwe-works__lead { margin-top: 8px; font-size: 16px; line-height: 1.3; letter-spacing: 0; }
  .dwe-gallery { margin-top: 12px; }
  .dwe-gallery__nav { gap: 10px; margin: 0; }
  .dwe-gallery__tabs { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 28px), transparent); }
  .dwe-gallery__tab { font-size: 18px; margin-right: 32px; padding: 6px 0 8px; min-height: 40px; }
  .dwe-gallery__tab::after { height: 3px; }
  .dwe-gallery__controls { gap: 4px; }
  .dwe-gallery__arrow { width: 36px; height: 36px; }
  .dwe-gallery__arrow .dwe-icon { width: 20px; height: 20px; }
  .dwe-gallery__counter { min-width: 34px; font-size: 18px; }
  .dwe-gallery__counter-sep { margin: 0 1px; }
  .dwe-gallery__stage { margin: 4px 0 0; }
  .dwe-gallery__panel { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'hero' 'text' 'detail' 'actions'; }
  .dwe-gallery__frame { padding: 0; border: 0; background: none; }
  .dwe-gallery__frame-img { border-radius: 10px; aspect-ratio: 338 / 175; }
  .dwe-gallery__text { padding: 14px 0 0; }
  .dwe-gallery__name { font-size: 27px; }
  .dwe-gallery__caption { font-size: 16px; margin-top: 8px; }
  .dwe-gallery__desc { font-size: 17px; line-height: 1.3; margin-top: 12px; }
  .dwe-gallery__detail { margin-top: 26px; }
  .dwe-gallery__detail > img, .dwe-gallery__detail picture { padding: 0; border: 0; background: none; }
  .dwe-gallery__detail-img, .dwe-gallery__detail img { aspect-ratio: 338 / 156; border-radius: 10px; }
  .dwe-gallery__detail-label { display: none; }
  .dwe-gallery__actions { flex-direction: column; align-items: stretch; gap: 2px; margin: 16px 0 0; }
  .dwe-gallery__open { width: 100%; min-height: 48px; font-size: 18px; padding: 10px 20px; }
  .dwe-gallery__link { font-size: 17px; font-weight: 700; align-self: flex-start; min-height: 40px; }
  .dwe-works__closing { display: block; margin-top: 8px; padding-top: 0; border-top: 0; font-size: 20px; line-height: 1.05; }
  .dwe-works__closing.dwe-dash::before { display: inline-block; vertical-align: middle; margin: -4px 10px 0 0; width: 34px; height: 3px; }
}

/* ---------------------------------------------------------------- B05 scope */
.dwe-scope { position: relative; isolation: isolate; background: #f7f7f8; overflow: hidden; }
.dwe-scope__inner { padding-top: 32px; padding-bottom: 33px; padding-left: calc(var(--dwe-gutter) + 27px); }
.dwe-scope__title { line-height: .96; }
.dwe-scope__title.dwe-dash::before { margin-bottom: 16px; }
@media (min-width: 768px) { .dwe-scope__title .dwe-acc-d { display: block; } }
.dwe-scope__lead { margin-top: 10px; max-width: 1120px; }
.dwe-scope__scene { margin: -3px -40px 0 -42px; }
.dwe-scope__options { display: grid; grid-template-columns: 386fr 421fr 486fr; margin-top: 8px; }
.dwe-scope__option { padding: 0 24px 0 0; min-width: 0; }
.dwe-scope__option + .dwe-scope__option { border-left: 1px solid var(--dwe-line); }
.dwe-scope__option[data-option="2"] { padding-left: 13.8%; }
.dwe-scope__option[data-option="3"] { padding-left: 12.3%; }
.dwe-scope__option-title { line-height: 1.15; }
.dwe-scope__option-body { margin-top: 8px; font-size: clamp(16px, 1.32vw, 19px); line-height: 1.5; color: var(--dwe-blue); }
.dwe-scope__proposal { display: flex; align-items: center; margin: 20px 0 0 -27px; padding: 23px 40px 23px 87px; border-radius: 18px; background: rgba(255, 255, 255, .72); box-shadow: 0 14px 40px -26px rgba(15, 20, 30, .35); }
.dwe-scope__proposal-icon { flex: none; width: 108px; height: 108px; border-radius: 18px; overflow: hidden; }
.dwe-scope__proposal-icon img { width: 100%; height: 100%; }
.dwe-scope__proposal-text { margin-left: 49px; padding-left: 42px; border-left: 1px solid #e3e6ec; }
.dwe-scope__proposal-strong { font: 800 clamp(20px, 2.08vw, 30px)/1.2 var(--dwe-font-display); color: var(--dwe-ink); letter-spacing: -.02em; }
.dwe-scope__proposal-note { margin-top: 6px; font-size: clamp(16px, 1.39vw, 20px); line-height: 1.3; color: var(--dwe-blue); }
.dwe-scope__launch-title { margin-top: 44px; }
.dwe-scope__launch-title.dwe-dash::before { margin-bottom: 16px; }
.dwe-scope__launch-body { margin-top: 8px; max-width: 1280px; font-size: clamp(18px, 1.944vw, 28px); line-height: 1.2; }
.dwe-scope__bundle { display: grid; grid-template-columns: 348fr 338fr 364fr; column-gap: 110px; margin: 0 23px 0 0; }
.dwe-scope__bundle-item { position: relative; display: grid; grid-template-columns: 122px minmax(0, 1fr); grid-template-areas: 'art text' 'links links'; column-gap: 26px; align-items: center; align-content: center; min-height: 118px; padding: 8px 16px 8px 22px; border-radius: 16px; background: #fff; box-shadow: 0 12px 30px -22px rgba(15, 20, 30, .4); }
.dwe-scope__bundle-join { position: absolute; left: -74px; top: 50%; width: 38px; height: 39px; margin-top: -20px; z-index: 1; }
.dwe-scope__bundle-join::before { content: ''; position: absolute; left: -36px; right: -36px; top: 50%; height: 2px; margin-top: -1px; background: #cfd4de; z-index: -1; }
.dwe-scope__bundle-join-img { width: 38px; height: 39px; }
.dwe-scope__bundle-art { grid-area: art; width: 122px; height: 98px; object-fit: contain; }
.dwe-scope__bundle-text { grid-area: text; display: grid; gap: 2px; min-width: 0; }
.dwe-scope__bundle-title { font: 800 22px/1.2 var(--dwe-font-display); color: var(--dwe-ink); letter-spacing: -.01em; }
.dwe-scope__bundle-desc { font-size: 16px; line-height: 1.3; color: var(--dwe-blue); }
.dwe-scope__bundle-links { grid-area: links; display: flex; gap: 2px 14px; flex-wrap: wrap; margin-top: 0; }
.dwe-scope__bundle-link { min-height: 24px; font-size: 14px; line-height: 1; }
.dwe-scope__links { display: none; }
.dwe-scope__cta { display: flex; align-items: center; gap: 88px; margin-top: 26px; }
.dwe-scope__cta .dwe-btn { min-width: 344px; min-height: 60px; font-size: 19px; }
.dwe-scope__commercial { max-width: 760px; font-size: clamp(18px, 1.8vw, 26px); line-height: 1.3; color: var(--dwe-blue); }
@media (max-width: 1023.98px) {
  .dwe-scope__inner { padding-left: var(--dwe-gutter); }
  .dwe-scope__scene { margin: 0 -20px; }
  .dwe-scope__proposal { margin-left: 0; }
  .dwe-scope__bundle { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 48px; margin: 18px 0 0; }
  .dwe-scope__bundle-item { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'art' 'text' 'links'; justify-items: start; row-gap: 8px; }
  .dwe-scope__bundle-join { left: -43px; }
  .dwe-scope__bundle-join::before { left: -8px; right: -8px; }
  .dwe-scope__cta { gap: 40px; }
  .dwe-scope__cta .dwe-btn { min-width: 0; }
  .dwe-scope__proposal { padding: 22px 28px 22px 32px; }
  .dwe-scope__proposal-text { margin-left: 24px; padding-left: 24px; }
}
@media (max-width: 767.98px) {
  .dwe-scope__inner { padding: 22px var(--dwe-gutter) 14px; }
  .dwe-scope__title { font-size: 31px; line-height: 1.07; letter-spacing: -.035em; }
  .dwe-scope__title.dwe-dash::before { display: none; }
  .dwe-scope__lead { margin-top: 24px; font-size: 18px; line-height: 1.3; }
  .dwe-scope__scene { display: none; }
  .dwe-scope__options { display: block; margin-top: 48px; }
  .dwe-scope__option, .dwe-scope__option + .dwe-scope__option, .dwe-scope__option[data-option="2"], .dwe-scope__option[data-option="3"] { padding: 0; border: 0; }
  .dwe-scope__option + .dwe-scope__option { margin-top: 14px; }
  .dwe-scope__option[data-option="3"] { margin-top: 30px; }
  .dwe-scope__option-title { font-size: 28px; line-height: 1.1; }
  .dwe-scope__option-body { margin-top: 10px; font-size: 18px; line-height: 1.3; }
  .dwe-scope__option-scene { margin: 8px calc(18px - var(--dwe-gutter)) 0; width: calc(100% + 2 * (var(--dwe-gutter) - 18px)); max-width: none; }
  .dwe-scope__options-note { margin-top: 8px; font-size: 18px; line-height: 1.3; color: var(--dwe-blue); }
  .dwe-scope__proposal { gap: 16px; margin: 14px 0 0; padding: 14px 16px; border-radius: 14px; background: rgba(255, 255, 255, .82); }
  .dwe-scope__proposal-icon { width: 60px; height: 60px; border-radius: 12px; }
  .dwe-scope__proposal-text { margin: 0; padding: 0; border: 0; }
  .dwe-scope__proposal-strong { font-size: 17px; line-height: 1.2; }
  .dwe-scope__launch-title { margin-top: 24px; font-size: 27px; line-height: 1.0; letter-spacing: -.035em; }
  .dwe-scope__launch-title.dwe-dash::before { display: none; }
  .dwe-scope__launch-body { margin-top: 8px; font-size: 18px; line-height: 1.3; }
  .dwe-scope__links { display: grid; gap: 2px; margin-top: 14px; }
  .dwe-scope__link { min-height: 36px; font-size: 17px; }
  .dwe-scope__cta { flex-direction: column-reverse; align-items: stretch; gap: 14px; margin-top: 16px; }
  .dwe-scope__cta .dwe-btn { min-width: 0; width: 100%; min-height: 48px; font-size: 18px; padding: 10px 20px; gap: 12px; }
  .dwe-scope__commercial { max-width: none; font-size: 15px; line-height: 1.3; letter-spacing: -.015em; }
}

/* ---------------------------------------------------------------- B06 process */
.dwe-process { background: linear-gradient(#fff, #f6f7f9 70%, #fff); overflow: hidden; }
.dwe-process__inner { padding-top: 46px; padding-bottom: 54px; padding-left: calc(var(--dwe-gutter) + 10px); }
.dwe-process__title { font-size: clamp(32px, 4.306vw, 62px); }
.dwe-process__title.dwe-dash::before { width: 56px; height: 4px; }
.dwe-process__lead { margin-top: 16px; max-width: 1240px; font-size: clamp(18px, 1.944vw, 28px); }
.dwe-process__scene { margin: 0 -40px 0 -32px; }
.dwe-process__stages { display: grid; grid-template-columns: 287fr 282fr 271fr 260fr 220fr; margin: 8px 0 0 -15px; }
.dwe-process__stage { padding-right: 12px; min-width: 0; }
.dwe-process__stage:last-child { padding-right: 0; }
.dwe-process__stage-title { font-size: clamp(18px, 1.46vw, 21px); line-height: 1.1; letter-spacing: -.03em; }
.dwe-process__stage-body { margin-top: 8px; font-size: clamp(16px, 1.39vw, 20px); line-height: 1.35; color: var(--dwe-blue); }
.dwe-process__role { display: grid; grid-template-columns: minmax(0, 841fr) minmax(0, 529fr); column-gap: 0; align-items: center; margin-top: 99px; margin-right: calc(-1 * var(--dwe-gutter)); }
.dwe-process__role-copy { min-width: 0; padding-right: 20px; }
.dwe-process__role-title { max-width: 790px; font-size: clamp(30px, 3.194vw, 46px); line-height: 1.1; }
.dwe-process__role-title.dwe-dash::before { width: 46px; height: 4px; margin-bottom: 22px; }
.dwe-process__role-body { margin-top: 6px; max-width: 830px; font-size: clamp(18px, 1.528vw, 22px); line-height: 1.22; }
.dwe-process__terms { margin-top: 16px; font-size: clamp(15px, 1.18vw, 17px); line-height: 1.3; color: var(--dwe-blue); }
.dwe-process__role-scene { min-width: 0; }
@media (max-width: 1023.98px) {
  .dwe-process__inner { padding-left: var(--dwe-gutter); }
  .dwe-process__scene { margin: 0 -20px; }
  .dwe-process__stages { grid-template-columns: repeat(5, minmax(0, 1fr)); margin-left: 0; }
  .dwe-process__role { margin-top: 48px; }
}
@media (max-width: 767.98px) {
  .dwe-process__inner { padding: 24px var(--dwe-gutter) 4px; }
  .dwe-process__title { font-size: 29px; line-height: 1.05; letter-spacing: -.035em; }
  .dwe-process__title.dwe-dash::before { width: 36px; height: 3px; margin-bottom: 12px; }
  .dwe-process__lead { margin-top: 10px; font-size: 18px; line-height: 1.3; }
  .dwe-process__stages { display: block; margin: 24px 0 0; }
  .dwe-process__stage { padding: 0; }
  .dwe-process__stage + .dwe-process__stage { margin-top: 20px; }
  .dwe-process__stage-title { font-size: 23px; line-height: 1.1; letter-spacing: -.03em; }
  .dwe-process__stage-body { margin-top: 10px; font-size: 18px; line-height: 1.3; }
  .dwe-process__stage-scene { margin: 4px calc(18px - var(--dwe-gutter)) 0; width: calc(100% + 2 * (var(--dwe-gutter) - 18px)); max-width: none; }
  .dwe-process__role { display: block; margin: 10px 0 0 8px; }
  .dwe-process__role-copy { padding: 0; }
  .dwe-process__role-title { max-width: none; font-size: 25px; line-height: 1.08; letter-spacing: -.035em; }
  .dwe-process__role-title.dwe-dash::before { display: none; }
  .dwe-process__role-title .dwe-acc { color: inherit; }
  .dwe-process__role-body { margin-top: 8px; font-size: 16px; line-height: 1.3; }
  .dwe-process__terms { margin-top: 14px; font-size: 15px; line-height: 1.3; }
}

/* ---------------------------------------------------------------- B07 FAQ */
.dwe-faq { background: linear-gradient(170deg, #fff 0%, #fff 55%, #f2f3f5 100%); }
.dwe-faq__inner { display: grid; grid-template-columns: minmax(0, 430px) minmax(0, 1fr); column-gap: 0; padding-top: 70px; padding-bottom: 60px; }
.dwe-faq__title { font-size: clamp(40px, 5vw, 72px); line-height: .95; padding-right: 20px; }
.dwe-faq__title.dwe-dash::before { width: 53px; height: 4px; margin-bottom: 38px; }
.dwe-faq__list { margin-top: 17px; border-bottom: 1px solid var(--dwe-line); font-family: var(--dwe-font-ui); }
.dwe-faq__item { border-top: 1px solid var(--dwe-line); }
.dwe-faq__item:first-child { border-top: 0; }
.dwe-faq__q { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 84px; padding: 26px 0; cursor: pointer; list-style: none; -webkit-tap-highlight-color: transparent; }
.dwe-faq__q::-webkit-details-marker { display: none; }
.dwe-faq__item[open] .dwe-faq__q { padding-bottom: 24px; }
.dwe-faq__q-text { font: 700 clamp(19px, 1.8vw, 26px)/1.2 var(--dwe-font-ui); color: var(--dwe-ink); letter-spacing: 0; transition: color .15s; }
.dwe-faq__q:hover .dwe-faq__q-text { color: #2a3142; }
.dwe-faq__q:hover .dwe-faq__icon::before, .dwe-faq__q:hover .dwe-faq__icon::after { background: var(--dwe-ink); }
.dwe-faq__q:active .dwe-faq__q-text { color: var(--dwe-red-ink); }
.dwe-faq__icon { position: relative; flex: none; width: 24px; height: 24px; }
.dwe-faq__icon::before, .dwe-faq__icon::after { content: ''; position: absolute; left: 1px; right: 1px; top: 11px; height: 2.5px; background: #606c90; border-radius: 1px; transition: transform .25s var(--dwe-ease), background-color .2s; }
.dwe-faq__icon::after { transform: rotate(90deg); }
.dwe-faq__item[open] .dwe-faq__icon::before, .dwe-faq__item[open] .dwe-faq__icon::after { background: var(--dwe-red); }
.dwe-faq__item[open] .dwe-faq__icon::after { transform: rotate(0deg); }
.dwe-faq__a { padding: 0 60px 38px 0; }
.dwe-faq__a-text { font: 400 clamp(17px, 1.53vw, 22px)/1.45 var(--dwe-font-ui); color: #5e6c8c; }
.dwe-faq__links { display: flex; flex-wrap: wrap; gap: 6px 28px; margin-top: 12px; }
.dwe-faq__link { font-size: 18px; min-height: 40px; }
.dwe-faq__item::details-content { transition: content-visibility .3s allow-discrete, height .3s var(--dwe-ease); height: 0; overflow: clip; }
.dwe-faq__item[open]::details-content { height: auto; }
@supports (interpolate-size: allow-keywords) { .dwe-faq { interpolate-size: allow-keywords; } }
@media (prefers-reduced-motion: reduce) { .dwe-faq__item::details-content { transition: none; } .dwe-faq__icon::before, .dwe-faq__icon::after { transition: none; } }
@media print { .dwe-faq__item::details-content { height: auto !important; content-visibility: visible !important; } }
@media (max-width: 1023.98px) {
  .dwe-faq__inner { grid-template-columns: minmax(0, 300px) minmax(0, 1fr); column-gap: 24px; padding-top: 48px; padding-bottom: 48px; }
  .dwe-faq__title { padding-right: 0; }
  .dwe-faq__list { margin-top: 10px; }
  .dwe-faq__a { padding-right: 40px; }
}
@media (max-width: 767.98px) {
  .dwe-faq__inner { display: block; padding-top: 44px; padding-bottom: 36px; }
  .dwe-faq__title { font-size: 30px; line-height: 1.05; margin-bottom: 16px; padding: 0; }
  .dwe-faq__title.dwe-dash::before { display: none; }
  .dwe-faq__list { margin-top: 0; }
  .dwe-faq__q { min-height: 56px; padding: 16px 0; gap: 16px; }
  .dwe-faq__item[open] .dwe-faq__q { padding-bottom: 10px; }
  .dwe-faq__q-text { font-size: 18px; line-height: 1.22; }
  .dwe-faq__icon { width: 20px; height: 20px; }
  .dwe-faq__icon::before, .dwe-faq__icon::after { top: 9px; height: 2px; }
  .dwe-faq__a { padding: 0 0 24px; }
  .dwe-faq__a-text { font-size: 17px; line-height: 1.35; }
  .dwe-faq__links { margin-top: 10px; }
  .dwe-faq__link { font-size: 17px; }
}

/* ---------------------------------------------------------------- B08 form (graphite) */
.dwe-lead-form { position: relative; color: #fff; background: var(--dwe-graphite); isolation: isolate; overflow: hidden; }
.dwe-lead-form__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 590px); column-gap: 20px; align-items: start; padding-top: 150px; padding-bottom: 62px; }
.dwe-lead-form__copy { padding-top: 20px; min-width: 0; }
.dwe-lead-form__title { color: #fff; font-size: clamp(36px, 4.583vw, 66px); line-height: 1.0; }
.dwe-lead-form__title.dwe-dash::before { margin-bottom: 24px; }
.dwe-lead-form__body { margin-top: 52px; max-width: 660px; color: #fff; font-size: clamp(18px, 1.944vw, 28px); line-height: 1.32; }
.dwe-form-card { padding: 42px 32px 44px; border-radius: 14px; background: #fff; color: var(--dwe-ink); box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .6); font-family: var(--dwe-font-ui); }
.dwe-form { display: grid; gap: 30px; }
.dwe-form[hidden] { display: none; }
.dwe-form__alert { padding: 14px 18px; border: 1px solid #edb7c0; border-radius: 8px; background: #fff4f5; color: #9a1630; font-size: 17px; line-height: 1.35; }
.dwe-form__alert[hidden] { display: none; }
.dwe-field { display: grid; gap: 10px; }
.dwe-field__label { font: 700 19px/1.2 var(--dwe-font-ui); color: var(--dwe-ink); padding: 0; }
.dwe-field__req { color: var(--dwe-red); margin-left: 2px; }
.dwe-field__opt { font-weight: 400; font-size: 18px; color: var(--dwe-muted); }
.dwe-field__input { width: 100%; min-height: 48px; padding: 11px 18px; border: 1px solid var(--dwe-field-line); border-radius: 8px; background: var(--dwe-field); color: var(--dwe-ink);
  font: 400 18px/1.4 var(--dwe-font-ui); transition: border-color .15s, box-shadow .15s, background-color .15s; }
.dwe-field__input::placeholder { color: #66728a; opacity: 1; }
.dwe-field__input:hover { border-color: #a9b2c3; }
.dwe-field__input:focus { outline: none; border-color: #ef0532; background: #fff; box-shadow: 0 0 0 3px rgba(255, 23, 66, .2); }
.dwe-field__input--area { min-height: 93px; resize: vertical; }
.dwe-field__help { font-size: 15px; line-height: 1.35; color: var(--dwe-muted); }
.dwe-field__help[hidden], .dwe-field__error[hidden] { display: none; }
.dwe-field__error { font-size: 16px; line-height: 1.35; color: #c0142e; }
.is-invalid > .dwe-field__input { border-color: #da1c34; background: #fff8f9; }
.is-invalid > .dwe-field__input:focus { box-shadow: 0 0 0 3px rgba(218, 28, 52, .18); }
.dwe-channel { margin: 0; padding: 0; border: 0; min-width: 0; display: grid; gap: 12px; }
.dwe-channel__legend { float: left; width: 100%; margin-bottom: 12px; }
.dwe-channel__legend + * { clear: both; }
.dwe-channel__options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.dwe-channel__option { position: relative; display: flex; align-items: center; gap: 10px; min-height: 57px; padding: 10px 16px; border: 1px solid #c3cbda; border-radius: 8px; background: var(--dwe-field); cursor: pointer;
  transition: border-color .15s, background-color .15s, box-shadow .15s, transform .1s; -webkit-tap-highlight-color: transparent; }
.dwe-channel__input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.dwe-channel__mark { flex: none; width: 22px; height: 22px; border: 1.8px solid #75829b; border-radius: 50%; background: #fff; transition: border-color .15s, border-width .1s; }
.dwe-channel__label { font: 400 18px/1.2 var(--dwe-font-ui); color: #5f6f88; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .15s; }
.dwe-channel__option:hover { border-color: #9aa5ba; background: #fff; }
.dwe-channel__option:hover .dwe-channel__mark { border-color: #4f5d86; }
.dwe-channel__option:active { transform: scale(.985); background: #f2f4f8; }
.dwe-channel__option:has(:checked) { border-color: #fa1230; background: #fff8f9; }
.dwe-channel__option:has(:checked) .dwe-channel__mark { border: 6px solid var(--dwe-red); }
.dwe-channel__option:has(:checked) .dwe-channel__label { color: #17232f; }
.dwe-channel__option:has(:focus-visible) { outline: 3px solid var(--dwe-focus); outline-offset: 2px; }
.dwe-channel.is-invalid .dwe-channel__option { border-color: #da1c34; }
.dwe-consent { display: grid; gap: 4px; }
.dwe-consent__row { display: flex; align-items: flex-start; gap: 14px; min-height: 44px; padding: 4px 0; cursor: pointer; }
.dwe-consent__box { flex: none; width: 26px; height: 26px; margin: 0; accent-color: var(--dwe-red); cursor: pointer; }
.dwe-consent__box:focus-visible { outline-offset: 2px; }
.dwe-consent__label { font-size: 17px; line-height: 1.4; color: var(--dwe-ink); padding-top: 2px; }
.dwe-consent__privacy { justify-self: start; margin-left: 40px; font-size: 15px; color: var(--dwe-muted); text-underline-offset: 3px; min-height: 32px; display: inline-flex; align-items: center; }
.dwe-consent__privacy:hover { color: var(--dwe-red-ink); }
.dwe-consent.is-invalid .dwe-consent__box { outline: 2px solid #da1c34; outline-offset: 1px; }
.dwe-form__submit { width: 100%; min-height: 70px; justify-content: center; gap: 28px; font-size: 21px; font-weight: 700; }
.dwe-form__note { margin-top: -8px; text-align: center; font-size: 15px; line-height: 1.35; color: var(--dwe-muted); }
.dwe-form[data-state='sending'] .dwe-form__submit { cursor: progress; }
.dwe-form[data-state='sending'] .dwe-form__submit, .dwe-form[data-state='unavailable'] .dwe-form__submit { background: #9da6b7; box-shadow: none; filter: none; transform: none; }
.dwe-form[data-state='sending'] .dwe-form__submit .dwe-icon--arrow { display: none; }
.dwe-form-success { display: grid; justify-items: stretch; gap: 18px; padding: 24px 0 8px; outline: none; text-align: center; }
.dwe-form-success[hidden] { display: none; }
.dwe-form-success__mark { display: grid; place-items: center; width: 70px; height: 70px; border-radius: 50%; background: var(--dwe-red); justify-self: center; margin-bottom: 8px; }
.dwe-form-success__title { font: 700 29px/1.1 var(--dwe-font-ui); letter-spacing: 0; text-align: left; }
.dwe-form-success__text { font-size: 18px; line-height: 1.4; color: #556984; text-align: left; }
.dwe-form-success__action { margin-top: 12px; width: 100%; justify-content: flex-start; min-height: 56px; padding-left: 32px; font-size: 20px; font-weight: 700; }
@media (max-width: 1023.98px) {
  .dwe-lead-form__inner { display: block; padding-top: 48px; padding-bottom: 48px; }
  .dwe-lead-form__copy { max-width: 640px; padding: 0; }
  .dwe-lead-form__body { margin-top: 20px; }
  .dwe-form-card { max-width: 640px; margin-top: 36px; }
}
@media (max-width: 767.98px) {
  .dwe-lead-form__inner { padding-top: 26px; padding-bottom: 20px; }
  .dwe-lead-form__title { font-size: 32px; line-height: .95; letter-spacing: -.035em; }
  .dwe-lead-form__title.dwe-dash::before { width: 32px; margin-bottom: 14px; }
  .dwe-lead-form__body { margin-top: 14px; font-size: 16px; line-height: 1.3; }
  .dwe-form-card { margin: 36px -7px 0; padding: 20px 20px 28px; }
  .dwe-form { gap: 18px; }
  .dwe-field { gap: 10px; }
  .dwe-field__label { font-size: 18px; }
  .dwe-field__opt { font-size: 17px; }
  .dwe-field__input { font-size: 17px; padding: 12px 16px; min-height: 50px; }
  .dwe-field__input--area { min-height: 100px; }
  .dwe-channel { gap: 10px; }
  .dwe-channel__legend { margin-bottom: 10px; }
  .dwe-channel__options { grid-template-columns: minmax(0, 1fr); gap: 7px; }
  .dwe-channel__option { min-height: 50px; padding: 8px 14px; }
  .dwe-consent__row { gap: 12px; }
  .dwe-consent__box { width: 24px; height: 24px; }
  .dwe-consent__label { font-size: 16px; line-height: 1.25; }
  .dwe-consent__privacy { margin-left: 36px; }
  .dwe-form__submit { min-height: 56px; font-size: 19px; padding: 10px 16px; }
  .dwe-form__submit .dwe-icon--arrow { display: none; }
  .dwe-form__note { margin-top: -4px; text-align: left; line-height: 1.3; }
  .dwe-form-success__title { font-size: 28px; }
  .dwe-form-success__text { font-size: 17px; }
}

/* ---------------------------------------------------------------- footer (shared white component) */
.dwe-footer { background: #fff; font-family: var(--dwe-font-ui); }
.dwe-footer__inner { display: flex; align-items: center; gap: 40px; min-height: 150px; padding-top: 14px; padding-bottom: 16px; }
.dwe-footer__brand { display: grid; gap: 4px; }
.dwe-footer__logo .dwe-logo__img { width: 214px; }
.dwe-footer__tagline { font-size: 20px; line-height: 1.2; color: #4e6694; }
.dwe-footer__nav { margin-left: auto; }
.dwe-footer__list { display: flex; gap: 8px 44px; flex-wrap: wrap; }
.dwe-footer__link { display: inline-flex; align-items: center; min-width: 44px; min-height: 44px; font-size: 20px; color: #4e6694; text-decoration: none; transition: color .15s; }
.dwe-footer__link:hover { color: var(--dwe-red-ink); text-decoration: underline; text-underline-offset: 4px; }
.dwe-footer__link:active { color: var(--dwe-red); }
.dwe-footer__locale { margin-left: 4px; padding-left: 40px; border-left: 1px solid var(--dwe-line); min-height: 50px; }
@media (max-width: 1023.98px) {
  .dwe-footer__inner { gap: 24px; }
  .dwe-footer__list { gap: 8px 24px; }
  .dwe-footer__locale { padding-left: 24px; }
}
@media (max-width: 767.98px) {
  .dwe-footer__inner { display: block; min-height: 0; padding-top: 12px; padding-bottom: 32px; }
  .dwe-footer__logo .dwe-logo__img { width: 158px; }
  .dwe-footer__tagline { margin-top: 6px; font-size: 16px; }
  .dwe-footer__list { gap: 0 24px; margin-top: 2px; }
  .dwe-footer__link { min-height: 44px; font-size: 14px; }
  .dwe-footer__locale { margin: 0; padding: 0 0 0 16px; min-height: 0; font-size: 16px; }
  .dwe-footer__locale .dwe-locale__link { font-size: 16px; min-height: 44px; }
}

/* ---------------------------------------------------------------- viewer */
.dwe-lightbox { position: fixed; inset: 0; z-index: 120; display: grid; grid-template-rows: auto 1fr; background: #111b27; color: #fff; font-family: var(--dwe-font-ui); }
.dwe-lightbox[hidden] { display: none; }
.dwe-lightbox__bar { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: 'heading close' 'tools close'; column-gap: 20px; padding: 16px 24px 14px; }
.dwe-lightbox__heading { grid-area: heading; }
.dwe-lightbox__name { font: 400 20px/1.3 var(--dwe-font-ui); }
.dwe-lightbox__tools { grid-area: tools; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 26px; margin-top: 6px; }
.dwe-lightbox__close { grid-area: close; align-self: start; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; margin-top: -8px; margin-right: -12px; border: 0; background: none; color: #fff; cursor: pointer; border-radius: 8px; }
.dwe-lightbox__close:hover { background: rgba(255, 255, 255, .1); }
.dwe-seg { display: inline-flex; align-items: center; gap: 2px; }
.dwe-seg[hidden] { display: none; }
.dwe-seg__btn { min-height: 40px; padding: 4px 6px; border: 0; background: none; cursor: pointer; color: #b9c3d3; font: 400 18px/1 var(--dwe-font-ui); border-radius: 6px; }
.dwe-seg__btn[aria-pressed='true'] { color: #fff; }
.dwe-seg__btn:hover { color: #fff; text-decoration: underline; text-underline-offset: 4px; }
.dwe-seg__sep { color: #7b879a; }
.dwe-lightbox__viewport { overflow: auto; padding: 0 24px 24px; outline: none; overscroll-behavior: contain; }
.dwe-lightbox__viewport:focus-visible { outline: 3px solid #fff; outline-offset: -3px; }
.dwe-lightbox__img { margin: 0 auto; max-width: none; height: auto; background: #fff; cursor: zoom-in; }
.dwe-lightbox.is-actual .dwe-lightbox__img { cursor: zoom-out; }
.dwe-lightbox__img[data-empty] { visibility: hidden; }
.dwe-lightbox__status { position: absolute; left: 50%; top: 110px; transform: translateX(-50%); display: none; align-items: center; gap: 10px; padding: 10px 16px; border-radius: 999px; background: rgba(10, 14, 22, .86); font-size: 16px; }
.dwe-lightbox__status.is-on { display: inline-flex; }
.dwe-lightbox__spinner { width: 18px; height: 18px; border: 2px solid rgba(255, 255, 255, .3); border-top-color: #fff; border-radius: 50%; animation: dwe-spin .8s linear infinite; }
@keyframes dwe-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .dwe-lightbox__spinner { animation: none; } }
.dwe-lightbox__error { position: absolute; left: 50%; top: 110px; transform: translateX(-50%); display: grid; justify-items: center; gap: 12px; padding: 18px 22px; border-radius: 14px; background: rgba(10, 14, 22, .94); text-align: center; }
.dwe-lightbox__error[hidden] { display: none; }
.dwe-lightbox__error-text { font-size: 17px; }
@media (max-width: 767.98px) {
  .dwe-lightbox__bar { padding: 14px 24px 12px; }
  .dwe-lightbox__name { font-size: 17px; }
  .dwe-lightbox__tools { gap: 4px 18px; margin-top: 8px; }
  .dwe-seg__btn { font-size: 15px; }
  .dwe-lightbox__viewport { padding: 0 24px 24px; }
}

/* ---------------------------------------------------------------- motion preferences */
@media (prefers-reduced-motion: reduce) {
  .dwe-gallery__panel, .dwe-gallery__panel.is-inactive { transition: none !important; transform: none !important; }
  .dwe-gallery__tab::after, .dwe-btn, .dwe-channel__option, .dwe-header, .dwe-link, .dwe-faq__q-text { transition: none !important; }
}

/* ---------------------------------------------------------------- hit areas ≥ 44 px (engineering pass e2; LAYOUT_AND_BEHAVIOR.md:
   "links/buttons have at least 44px hit areas"). Invisible extensions where targets sit side by side, real height where they stack. */
.dwe-gallery__arrow { position: relative; }
.dwe-gallery__arrow::after { content: ''; position: absolute; inset: -5px; }
.dwe-gallery__tab::before { content: ''; position: absolute; inset: 0 -6px; }
.dwe-scope__bundle-link { position: relative; }
.dwe-scope__bundle-link::after { content: ''; position: absolute; inset: -10px -5px; }
.dwe-faq__link { min-height: 44px; }
.dwe-consent__privacy { min-height: 44px; }
@media (max-width: 767.98px) {
  .dwe-gallery__tab { min-height: 44px; }
  .dwe-gallery__link { min-height: 44px; }
  .dwe-scope__link { min-height: 44px; }
}
