/* navigation.css */
@property --dwa-spark-angle { syntax: '<angle>'; initial-value: 0deg; inherits: false; }
html { scroll-padding-top: 110px; }
.dwa-site-header { --menu-accent: #a6d7ff; position: sticky; top: 0; z-index: 30; background: #080d16f2; border-bottom: 1px solid #ffffff15; }
.app-page .dwa-site-header { --menu-accent: #a3eede; }
.dwa-topbar { display: flex; align-items: center; gap: 18px; min-height: 90px; position: relative; }
.dwa-topbar .brand { flex: 0 0 auto; }
.dwa-topbar .logo-crop { width: 200px; height: 62px; }
.dwa-menu-panel { display: flex; align-items: center; justify-content: center; gap: 3px; margin-left: auto; }
.dwa-menu-link { position: relative; display: flex; justify-content: center; align-items: center; min-height: 42px; padding: 8px 10px; border: 1px solid transparent; border-radius: 7px; color: #dce2ed; font-size: 11px; font-weight: 700; letter-spacing: .045em; text-transform: uppercase; white-space: nowrap; transition: color .2s ease, background .2s ease, transform .2s ease; }
.dwa-menu-link[aria-current="page"] { color: var(--menu-accent); background: #a1d6ff0a; border-color: #a1d6ff28; }
.dwa-menu-link:hover, .dwa-menu-link:focus-visible { color: #fff; background: #a1d6ff0b; transform: translateY(-1px); }
.dwa-menu-link::before { content: ''; position: absolute; inset: -1px; padding: 1px; border-radius: inherit; pointer-events: none; opacity: 0; background: conic-gradient(from var(--dwa-spark-angle), transparent 0deg 70deg, #b8e0ff50 85deg, #f0fbff 91deg, transparent 104deg 250deg, #a0caff60 268deg, #e3f5ff 274deg, transparent 289deg 360deg); -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }
.dwa-menu-link:hover::before, .dwa-menu-link:focus-visible::before { opacity: 1; animation: dwa-edge-spark 1.1s linear infinite; }
@keyframes dwa-edge-spark { to { --dwa-spark-angle: 360deg; } }
.dwa-top-contact, .dwa-menu-contact { text-transform: uppercase; font-size: 11px; font-weight: 700; letter-spacing: .035em; white-space: nowrap; }
.dwa-top-contact { margin-left: auto; flex: 0 0 auto; padding: 13px 18px; }
.dwa-menu-contact, .dwa-burger { display: none; }
.dwa-site-header a:focus-visible, .dwa-burger:focus-visible { outline: 2px solid var(--menu-accent); outline-offset: 3px; }
@media (max-width: 1550px) {
 .dwa-topbar { min-height: 82px; flex-wrap: wrap; }
 .dwa-topbar .logo-crop { width: 190px; height: 59px; }
 .dwa-menu-panel { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; order: 4; padding: 15px 0; }
 .dwa-site-header.has-menu-js .dwa-menu-panel { display: none; position: absolute; top: calc(100% + 8px); left: 0; right: 0; max-height: calc(100dvh - 110px); overflow-y: auto; padding: 20px; background: #0c1421fa; border: 1px solid #ffffff20; border-radius: 14px; box-shadow: 0 22px 50px #0008; }
 .dwa-site-header.is-menu-open .dwa-menu-panel { display: grid; }
 .dwa-menu-link { font-size: 13px; min-height: 48px; padding: 12px; }
 .dwa-menu-contact { display: flex; align-items: center; justify-content: center; grid-column: 1 / -1; padding: 16px; margin-top: 10px; border-radius: 8px; background: #a6d7ff; color: #08131f; }
 .dwa-site-header.has-menu-js .dwa-burger { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; width: 44px; height: 44px; border: 1px solid #ffffff30; background: #ffffff05; border-radius: 9px; cursor: pointer; flex: 0 0 auto; }
 .dwa-burger span { width: 20px; height: 1.5px; background: #eaf5ff; transition: transform .2s ease, opacity .2s ease; }
 .is-menu-open .dwa-burger span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
 .is-menu-open .dwa-burger span:nth-child(2) { opacity: 0; }
 .is-menu-open .dwa-burger span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }
}
@media (max-width: 600px) {
 .dwa-topbar { justify-content: space-between; gap: 12px; min-height: 76px; }
 .dwa-topbar .logo-crop { width: 175px; height: 54px; }
 .dwa-top-contact { display: none; }
 .dwa-menu-panel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .dwa-site-header.has-menu-js .dwa-menu-panel { padding: 13px; }
 .dwa-menu-link { font-size: 12px; padding: 10px 7px; }
}

.dwa-matrix-transition {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  background: #17191b;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .18s ease, visibility .18s;
}
.dwa-matrix-transition.is-visible { opacity: 1; visibility: visible; pointer-events: auto; }
.dwa-matrix-transition canvas { display: block; width: 100%; height: 100%; }
.dwa-matrix-caption {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.dwa-matrix-caption span {
  padding: 20px 30px;
  background: #17191bcc;
  border: 1px solid #85ff8435;
  border-radius: 12px;
  color: #b8ffb0;
  font: 700 clamp(13px, 1.4vw, 19px)/1.4 monospace;
  letter-spacing: .2em;
  text-transform: uppercase;
  box-shadow: 0 0 40px #73ff5520;
}
.dwa-matrix-skip {
  position: absolute;
  right: 22px;
  bottom: 22px;
  min-height: 44px;
  padding: 10px 18px;
  color: #c0ffb8;
  background: #17191bde;
  border: 1px solid #8fff7550;
  border-radius: 30px;
  cursor: pointer;
  font: inherit;
}

@media (prefers-reduced-motion: reduce) { .dwa-menu-link { transform: none !important; transition: none !important; } .dwa-menu-link::before { animation: none !important; } .dwa-matrix-transition { display: none; } }
/* spacing.css */
/* Prostor mezi tématy; typografie, obsah a obrazové ukázky zůstávají beze změny. */
:root { --dwa-topic-space:94px; --dwa-heading-space:52px; --dwa-card-space:30px; --dwa-card-inset:32px; }
main :is(.ws-section,.app-section,.sv-service,.project-case) { padding-block:var(--dwa-topic-space)!important; }
main .ux-section { padding-block:94px!important; }
main :is(.ws-heading,.app-section-heading,.ux-section-heading,.ap-heading,.project-heading,.gallery-heading,.style-row-heading) { margin-bottom:var(--dwa-heading-space)!important; }
main :is(.ws-reasons,.ws-offers,.ws-price-grid,.ws-platform-cards,.ws-discovery-grid,.app-services,.ux-services,.dr-explain,.project-features) { gap:var(--dwa-card-space)!important; }
main :is(.ws-offers article>div,.ws-price-grid article,.ws-platform-cards article,.ws-discovery-grid article,.app-services article,.ux-services article,.dr-explain article) { padding:var(--dwa-card-inset)!important; }
main :is(.ws-offers,.ws-price-grid,.ws-platform-cards,.ws-discovery-grid,.app-services,.ux-services) h3 { margin-bottom:22px!important; }
main :is(.ws-offers,.ws-price-grid,.ws-platform-cards,.ws-discovery-grid,.app-services,.ux-services) ul { margin-top:24px!important; margin-bottom:24px!important; }
main :is(.ws-platform-note,.ws-care,.app-commerce-example,.app-commerce-pitch,.sv-delivery,.sv-visual-story) { margin-top:36px!important; }
main :is(.app-commerce-copy article+article,.app-stock-copy article+article) { margin-top:34px!important; padding-top:32px!important; }
main .sv-service-copy h2 { margin-bottom:34px!important; }
main .sv-service-copy article { padding-block:28px!important; }
main .sv-service-copy article h3 { margin-bottom:18px!important; }
main .sv-service { column-gap:72px!important; }
main .sv-service-copy details { margin-top:28px!important; }
main .ap-process { padding-top:86px!important; }
main .ap-steps li { padding-block:42px!important; }
main .ap-assurance { padding-block:90px!important; }
main .ap-assurance article+article { margin-top:38px!important; }
main .ap-assurance article p { margin-top:18px!important; }
main :is(.ux-process,.app-process) { margin-top:52px!important; gap:38px!important; }
main .ux-section>h2+div { margin-top:48px!important; }
main .comparison-intro { padding-top:90px!important; padding-bottom:48px!important; }
main .style-showcase+.style-showcase { margin-top:80px!important; }
main .gallery-note { margin-top:30px!important; }
main .index-welcome { padding-top:82px!important; padding-bottom:64px!important; }
main .section:not(.hero) { padding-block:82px!important; }
main :is(.ws-faq,.app-faq,.ux-faq) details { padding-block:28px!important; }
@media(max-width:1100px) {
  main .sv-service { column-gap:42px!important; }
}
/* Webové nabídky: celý náhled, přirozený tok textu, společná spodní hrana odkazů. */
main .ws-offers article { display:flex; flex-direction:column; min-width:0; }
main .ws-offers article>img {
  width:100%; height:auto!important; min-height:0!important;
  aspect-ratio:1200/780; object-fit:contain!important; object-position:center;
  background:#f3f0e8; flex:none;
}
main .ws-offers article>div { display:flex; flex-direction:column; flex:1; min-width:0; }
main .ws-offers .ws-label { margin:0 0 20px!important; }
main .ws-offers h3 { min-height:0!important; margin:0 0 18px!important; }
main .ws-offers p:not(.ws-label) { margin:0 0 20px!important; }
main .ws-offers ul { margin:0 0 26px!important; }
main .ws-offers .ws-link { align-self:flex-start; margin-top:auto; }
@media(min-width:601px) and (max-width:800px) {
  main .ws-offers article { display:grid; grid-template-columns:.9fr 1fr; align-items:stretch; }
  main .ws-offers article>img { align-self:center; }
}
@media(max-width:600px) {
  main .ws-offers .ws-label { margin-bottom:16px!important; }
  main .ws-offers h3 { margin-bottom:16px!important; }
  main .ws-offers ul { margin-bottom:22px!important; }
}
@media(max-width:800px) {
  :root { --dwa-topic-space:60px; --dwa-heading-space:40px; --dwa-card-space:24px; --dwa-card-inset:28px; }
  main .ux-section { padding-block:64px!important; }
  main .sv-service { row-gap:36px!important; }
  main .ap-process { padding-top:60px!important; }
  main .ap-assurance { padding-block:64px!important; }
  main .comparison-intro { padding-top:64px!important; padding-bottom:36px!important; }
  main .style-showcase+.style-showcase { margin-top:56px!important; }
}
@media(max-width:600px) {
  :root { --dwa-topic-space:54px; --dwa-heading-space:36px; --dwa-card-space:22px; --dwa-card-inset:26px; }
  main :is(.ws-offers,.ws-price-grid,.ws-platform-cards,.ws-discovery-grid,.app-services,.ux-services) h3 { margin-bottom:18px!important; }
  main :is(.ws-offers,.ws-price-grid,.ws-platform-cards,.ws-discovery-grid,.app-services,.ux-services) ul { margin-top:20px!important; margin-bottom:20px!important; }
  main :is(.ws-platform-note,.ws-care,.app-commerce-example,.app-commerce-pitch,.sv-delivery,.sv-visual-story) { margin-top:28px!important; }
  main .sv-service-copy h2 { margin-bottom:26px!important; }
  main .sv-service-copy article { padding-block:24px!important; }
  main .ap-steps li { padding-block:32px!important; }
  main .ap-assurance { padding-block:56px!important; }
  main :is(.ux-process,.app-process) { margin-top:38px!important; gap:28px!important; }
  main .ux-section>h2+div { margin-top:36px!important; }
  main .section:not(.hero) { padding-block:56px!important; }
  main .index-welcome { padding-top:56px!important; padding-bottom:48px!important; }
  main :is(.ws-faq,.app-faq,.ux-faq) details { padding-block:24px!important; }
}

/* branding.css */
/* Schválené průhledné logo; poměr stran a obsah obrázku zachované. */
.dwa-site-header .logo-crop,.footer-inner .logo-crop {
  position:relative;display:block;width:290px;height:64px;overflow:hidden;
}
.logo-crop img[src*="studio-dwa-logo-3d"] {
  position:static!important;width:100%!important;height:100%!important;
  max-width:100%!important;left:auto!important;top:auto!important;
  transform:none;object-fit:contain!important;mix-blend-mode:normal;
}
.footer-inner .logo-crop {width:250px;height:60px}
@media(max-width:1550px){.dwa-site-header .logo-crop{width:260px;height:64px}}
@media(max-width:600px){.dwa-site-header .logo-crop{width:220px;height:60px}}
@media(max-width:380px){.dwa-site-header .logo-crop{width:205px;height:56px}}

/* contact.css */
body.dwa-contact-page{background:#090d16;color:#eef1f8}.dwa-contact-page::before,.dwa-contact-page::after{background:none!important}.dwa-contact-main{width:min(1500px,calc(100% - clamp(40px,7vw,128px)));margin:auto}.dwa-contact-hero{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:80px;padding:94px 0 84px;border-bottom:1px solid #a4b2d52a}.dwa-contact-hero h1{font:800 clamp(48px,5vw,84px)/1.08 Montserrat,Arial,sans-serif;letter-spacing:-.055em;margin:0;text-transform:none}.dwa-contact-hero h1 span,.dwa-contact-form-heading h2 span,.dwa-contact-dialog h2 span{background:linear-gradient(105deg,#8eaeff,#b28de2 50%,#d78ab8);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.dwa-contact-kicker{font:10px/1.8 Arial;letter-spacing:.18em;color:#b4a1dd;margin:0 0 23px}.dwa-contact-hero p:not(.dwa-contact-kicker){font:16px/1.9 Arial;color:#bdc7d8;max-width:660px;margin:30px 0 0}.dwa-contact-hero aside{border-left:1px solid #a4b2d52a;padding-left:40px}.dwa-contact-hero aside>span{font:10px/1.8 Arial;letter-spacing:.15em;color:#a6b8d3}.dwa-contact-hero aside>a{display:block;width:fit-content;font:20px/1.6 Arial;color:#dce8ff;text-decoration:none;margin-top:14px;overflow-wrap:anywhere}.dwa-contact-hero aside>p{font-size:14px!important}.dwa-contact-page-form{max-width:1080px;margin:0 auto;padding:84px 0 100px}.dwa-contact-form-heading{margin-bottom:42px}.dwa-contact-form-heading h2{font:700 clamp(32px,3vw,48px)/1.2 Montserrat,Arial;letter-spacing:-.045em;margin:0;text-transform:none}.dwa-contact-form-heading>p:last-child{font:15px/1.8 Arial;color:#b7c2d6;margin-top:20px}.dwa-contact-dialog{box-sizing:border-box;width:min(1040px,calc(100vw - 36px));max-width:none;max-height:calc(100dvh - 40px);height:auto;padding:38px 42px;border:1px solid #9a87cc66;border-radius:22px;background:#101724;color:#eef1f8;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 30px 100px #0009}.dwa-contact-dialog::backdrop{background:#050812cc;backdrop-filter:blur(8px)}body.dwa-contact-locked{overflow:hidden}.dwa-contact-dialog-head{display:flex;justify-content:space-between;align-items:start;gap:20px}.dwa-contact-dialog h2{font:800 clamp(32px,4vw,50px)/1.15 Montserrat,Arial;letter-spacing:-.045em;text-transform:none;margin:0}.dwa-contact-dialog .dwa-contact-kicker{margin-bottom:14px}.dwa-contact-close{position:sticky;top:0;flex:0 0 44px;width:44px;height:44px;border:1px solid #b4c2dc55;border-radius:50%;background:#182237;color:#dce7ff;font:28px Arial;cursor:pointer;z-index:5}.dwa-contact-intro{font:15px/1.85 Arial;color:#bdc7d8;margin:23px 0 12px;max-width:700px}.dwa-contact-page-link{display:inline-block;color:#b9cfee;font:12px/1.8 Arial;margin-bottom:28px;text-decoration:underline;text-underline-offset:5px}.dwa-inquiry-form{margin:0;font:14px/1.65 Arial;color:#e7ecf7}.dwa-inquiry-form *{box-sizing:border-box}.dwa-inquiry-form fieldset{border:0;border-top:1px solid #a4b2d52a;margin:0;padding:30px 0 35px;min-width:0}.dwa-inquiry-form legend{float:left;display:block;width:100%;font:700 19px/1.5 Montserrat,Arial;letter-spacing:-.02em;padding:0;margin:0 0 17px;color:#eef1f8}.dwa-inquiry-form legend>span{font:11px Arial;letter-spacing:.06em;color:#ad9ad4;margin-right:13px}.dwa-inquiry-form legend+*{clear:both}.dwa-field-help{font:13px/1.8 Arial!important;color:#aebbd0!important;margin:0 0 20px!important}.dwa-service-groups{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.dwa-service-group{border:1px solid #a4b2d536;border-radius:12px;background:#131d2d;overflow:hidden}.dwa-service-group summary{display:flex;gap:10px;align-items:center;padding:20px;font:700 16px/1.4 Arial;cursor:pointer;list-style:none;color:#dfe6f6}.dwa-service-group summary::-webkit-details-marker{display:none}.dwa-service-group summary>b{font:22px Arial;font-weight:400;margin-left:auto;color:#a995d9}.dwa-service-group[open] summary>b{transform:rotate(45deg)}.dwa-service-group summary>small{font:11px Arial;background:#b7a2e533;border-radius:12px;padding:4px 8px;color:#c9bbed}.dwa-service-group summary>small:empty{display:none}.dwa-service-group>div{padding:0 14px 14px}.dwa-choice{display:flex;align-items:center;gap:12px;padding:13px 12px;min-height:47px;border:1px solid transparent;border-radius:8px;cursor:pointer;font:13px/1.5 Arial;color:#d1dbea}.dwa-choice:has(input:checked){background:#8971c526;border-color:#af91dd66;color:#f0e9ff}.dwa-choice input{flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:#a993db}.dwa-unsure{margin-top:15px;border-color:#a4b2d536;background:#131d2d;padding:17px}.dwa-selection-note{font:12px/1.7 Arial;color:#b8a6dd;min-height:20px;margin:12px 0 0}.dwa-budget-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dwa-budget{display:flex;align-items:center;gap:10px;min-height:56px;border:1px solid #a4b2d536;border-radius:10px;background:#131d2d;padding:14px;cursor:pointer;font:13px/1.5 Arial}.dwa-budget input{width:16px;height:16px;flex:0 0 16px;margin:0;accent-color:#a993db}.dwa-budget:has(input:checked){border-color:#b7a0e4;background:#9b80d02b;color:#eadeff}.dwa-field-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:20px}.dwa-field{display:block;font:13px/1.6 Arial;color:#d7dfed;min-width:0}.dwa-field small{font-size:11px;color:#8fa1bd;margin-left:5px}.dwa-field input,.dwa-field textarea{display:block;width:100%;min-width:0;background:#0b121e;border:1px solid #a4b2d544;border-radius:9px;padding:16px;color:#f0f3fa;font:15px/1.6 Arial;margin-top:10px;letter-spacing:normal}.dwa-field input{min-height:54px}.dwa-field textarea{resize:vertical;min-height:148px;max-height:500px}.dwa-field input::placeholder,.dwa-field textarea::placeholder{color:#7f90aa}.dwa-contact-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.dwa-inquiry-bottom{padding-top:12px}.dwa-inquiry-bottom>p:first-child{font:12px/1.8 Arial;color:#a9b7ca}.dwa-contact-privacy{font:12px/1.8 Arial;color:#a9b7ca;margin-bottom:26px}.dwa-contact-privacy summary{color:#b6c9e4;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.dwa-contact-privacy p{font:12px/1.8 Arial;max-width:850px}.dwa-contact-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:59px;padding:18px 24px;border:0;border-radius:12px;background:linear-gradient(110deg,#b7d6fb,#cbb9ed);color:#151d31;font:700 15px/1.5 Arial;cursor:pointer}.dwa-contact-submit:disabled{opacity:.6;cursor:wait}.dwa-contact-status{margin:16px 0 0;font:13px/1.8 Arial;color:#d4c6ef;white-space:pre-line}.dwa-contact-status:empty{display:none}.dwa-contact-alternatives{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;margin-top:22px}.dwa-contact-alternatives button{background:none;border:0;border-bottom:1px solid #a4b2d544;padding:5px 0;font:12px/1.7 Arial;color:#aebfd9;cursor:pointer}.dwa-contact-notice{padding:22px;border:1px solid #b798de66;border-radius:10px;background:#a58bc622;font:14px/1.8 Arial;color:#e4d8f4}.dwa-inquiry-form :is(input,textarea,button,summary):focus-visible,.dwa-contact-page-link:focus-visible,.dwa-contact-close:focus-visible{outline:2px solid #bca2ef;outline-offset:4px}.dwa-budget:hover,.dwa-service-group summary:hover{border-color:#bc9ce2;background:#a88acf20}.dwa-inquiry-form [hidden]{display:none!important}
@media(max-width:800px){.dwa-contact-hero{grid-template-columns:1fr;gap:36px;padding:64px 0}.dwa-contact-hero aside{border:0;padding:24px 0 0;border-top:1px solid #a4b2d52a}.dwa-contact-page-form{padding:60px 0 70px}.dwa-contact-dialog{padding:28px;max-height:calc(100dvh - 24px)}}
@media(max-width:600px){.dwa-contact-hero h1{font-size:clamp(40px,10vw,58px)}.dwa-contact-hero p:not(.dwa-contact-kicker){font-size:14px;margin-top:24px}.dwa-contact-hero aside>a{font-size:18px}.dwa-contact-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:24px 20px;border-radius:15px}.dwa-contact-dialog h2{font-size:34px}.dwa-contact-kicker{font-size:9px}.dwa-inquiry-form fieldset{padding:26px 0 30px}.dwa-inquiry-form legend{font-size:17px}.dwa-service-groups,.dwa-field-row{grid-template-columns:1fr}.dwa-service-group summary{padding:17px;font-size:15px}.dwa-budget-options{grid-template-columns:1fr 1fr;gap:10px}.dwa-budget{padding:12px;font-size:12px}.dwa-field-row{gap:20px}.dwa-contact-submit{font-size:14px;padding:17px}.dwa-contact-form-heading h2{font-size:32px}.dwa-contact-page-form{padding-top:48px}.dwa-contact-alternatives{gap:15px}}

.dwa-contact-dialog-head{position:sticky;top:-38px;background:#101724;z-index:6;padding-block:8px}
.dwa-copy-fallback{display:block;width:100%;min-height:180px;margin-top:18px;padding:16px;background:#0b121e;color:#eaf0fa;border:1px solid #a4b2d544;border-radius:9px;font:13px/1.7 Arial}
@media(max-width:800px){.dwa-contact-dialog-head{top:-28px}}
@media(max-width:600px){.dwa-contact-dialog-head{top:-24px}}

.dwa-inquiry-bottom .dwa-gdpr-link{color:#c7b6ed;text-decoration:underline;text-underline-offset:4px}.dwa-gdpr-link:focus-visible{outline:2px solid #bca2ef;outline-offset:4px}

/* footer-contact.css */
.dwa-footer .dwa-footer-email,.dwa-footer .dwa-footer-phone{font-size:clamp(19px,1.7vw,27px);font-weight:400;line-height:1.5;letter-spacing:-.6px}
.dwa-footer .dwa-footer-phone>.dwa-footer-text{font-size:inherit}
.dwa-footer .dwa-footer-email .dwa-contact-icon,.dwa-footer .dwa-footer-phone .dwa-contact-icon{width:24px;height:24px}
@media(max-width:720px){.dwa-footer .dwa-footer-email,.dwa-footer .dwa-footer-phone{font-size:clamp(19px,5.5vw,25px)}}
.dwa-footer .dwa-footer-instagram:is(:hover,:focus-visible){color:#d62976}
.dwa-footer .dwa-footer-instagram:is(:hover,:focus-visible) .dwa-footer-text{background:linear-gradient(110deg,#feda75,#fa7e1e 25%,#d62976 50%,#962fbf 75%,#4f5bd5);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:none;filter:drop-shadow(0 3px 7px #d6297633)}
.dwa-footer .dwa-footer-instagram:is(:hover,:focus-visible) svg>rect,.dwa-footer .dwa-footer-instagram:is(:hover,:focus-visible) svg>circle{stroke:url(#dwa-instagram-hover)}
.dwa-footer .dwa-footer-instagram:is(:hover,:focus-visible) svg>circle[fill="currentColor"]{fill:url(#dwa-instagram-hover);stroke:none}

/* Language selection */
.dwa-language{display:flex;gap:4px;flex-shrink:0;align-items:center}.dwa-language a{font:11px/1 Arial,sans-serif;color:#aeb9cf;padding:9px 6px;border-radius:6px;text-decoration:none}.dwa-language a[aria-current]{color:#eef2fa;background:#ffffff14}.dwa-language a:hover{color:#a4d4ff}.dwa-language a:focus-visible{outline:2px solid #a4d4ff;outline-offset:2px}
@media(min-width:1551px) and (max-width:1600px){.dwa-topbar{gap:12px}.dwa-menu-panel{gap:12px}.brand .logo-crop{width:240px}}
@media(max-width:1550px){.dwa-language{order:2}.dwa-burger{order:3}.dwa-top-contact{margin-left:auto}.dwa-topbar{gap:12px}}

.dwa-thanks{box-sizing:border-box;width:min(620px,calc(100vw - 36px));max-height:calc(100svh - 36px);overflow:auto;padding:48px 38px 38px;border:1px solid #55546f;border-radius:24px;background:#111622;color:#eef0fa;text-align:center;font-family:Arial,sans-serif;box-shadow:0 24px 90px #0009}
.dwa-thanks::backdrop{background:#050812c9;backdrop-filter:blur(8px)}
.dwa-thanks h2{font-size:clamp(25px,4vw,35px);line-height:1.15;margin:20px 0}
.dwa-thanks p{line-height:1.7;color:#c2c9dd;overflow-wrap:anywhere}
.dwa-thanks-close{position:absolute;right:16px;top:12px;background:transparent;border:0;color:#c2c9dd;font-size:28px;cursor:pointer}
.dwa-thanks-mark{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#bac7f51f;color:#b4d0fa;font-size:32px}
.dwa-thanks-home{display:inline-block;margin-top:20px;padding:16px 24px;border-radius:30px;background:linear-gradient(100deg,#bcd5f7,#c9b6e7);color:#111827;font-weight:700;text-decoration:none}
.dwa-thanks-home:focus-visible,.dwa-thanks-close:focus-visible{outline:3px solid #bb9ff0;outline-offset:4px}
@media(max-width:500px){.dwa-thanks{padding:44px 22px 26px}}

.dwa-selected-example{padding:18px 20px;border:1px solid #aa93d56b;border-radius:12px;background:#b296e914;color:#edf0fa;overflow-wrap:anywhere;margin:0 0 26px;font:15px/1.6 Arial,sans-serif}
.dwa-selected-example strong{display:block;color:#bda3e9;font-size:12px;letter-spacing:.04em;margin-bottom:6px}
.dwa-selected-example span{display:block;font-weight:700}
.dwa-selected-example[hidden]{display:none}

/* Intrinsic photo dimensions: avoid HTML height attributes stretching the frames. */
.media-page main .nf-photo-gallery{max-width:1320px;margin-inline:auto;align-items:start;}
.media-page main .nf-photo-gallery img{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:4/3;object-fit:cover;}
/* Compact, fully filled browser previews; JavaScript scales the virtual viewport. */
main .style-screen{aspect-ratio:4/5;}
main .style-screen iframe{max-width:none;max-height:none;}

/* Keep the introduction paragraphs together directly below the home hero. */
#home-page .index-welcome{padding-bottom:12px!important;}
#home-page .index-welcome>div{align-items:end!important;}
#home-page .index-welcome>div>p{margin-bottom:0;}
#home-page .concept-gallery{padding-top:0!important;}
#home-page .concept-gallery>.wrap:first-child{padding-top:0!important;}
#home-page .concept-gallery>.wrap:first-child>p{margin-top:12px;margin-bottom:26px;}

/* One icon and one touch-target size for previous/next controls on every slider. */
main :is(.gallery-row-tools>div,.wrap-demo-controls,.ws-style-controls>div,.index-app-arrows,.dwa-project-slider .arrows){display:flex;align-items:center;gap:10px;}
main :is([data-step],[data-wrap-prev],[data-wrap-next],[data-shop-prev],[data-shop-next],#ws-style-prev,#ws-style-next,#index-app-prev,#index-app-next,#dwa-project-slider #previous,#dwa-project-slider #next){
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 box-sizing:border-box!important;flex:0 0 44px!important;width:44px!important;height:44px!important;
 min-width:44px!important;max-width:44px!important;min-height:44px!important;max-height:44px!important;
 padding:0!important;margin-block:0!important;border-radius:50%!important;font-size:0!important;line-height:1!important;vertical-align:middle;
}
main :is([data-step],[data-wrap-prev],[data-wrap-next],[data-shop-prev],[data-shop-next],#ws-style-prev,#ws-style-next,#index-app-prev,#index-app-next,#dwa-project-slider #previous,#dwa-project-slider #next)::before{
 content:"";display:block;width:22px;height:22px;flex:none;background:currentColor;
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h16m-6-6 6 6-6 6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h16m-6-6 6 6-6 6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
}
main :is([data-step="-1"],[data-wrap-prev],[data-shop-prev],#ws-style-prev,#index-app-prev,#dwa-project-slider #previous)::before{transform:rotate(180deg);}
main :is([data-wrap-pause],[data-shop-pause],#ws-style-pause,#index-app-auto,#dwa-project-slider #pause){
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 box-sizing:border-box!important;height:44px!important;min-height:44px!important;padding-block:0!important;line-height:1.2!important;
}
main :is(.ws-style-controls,.dwa-project-slider .controls){align-items:center;}

/* The final vertical advert follows the video ratio instead of its HTML height. */
.media-page main .nf-advert .nf-player-wrap.is-portrait{width:100%;max-width:422px;aspect-ratio:9/16;height:auto;min-height:0;margin-inline:auto;}
.media-page main .nf-advert .nf-player-wrap video.nf-portrait-video{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;min-height:0;aspect-ratio:auto;object-fit:contain;margin:0;}

/* Design uses the common site palette and typography; iframe concepts stay independent. */
.design-page{background:#0a111e;--ux-blue:#a6c9ef;--ux-line:#a4b2d52a;--ux-muted:#b7c5d8;color:#eef2fa;font-family:Arial,Helvetica,sans-serif;}
.design-page::before,.design-page::after{background-image:none!important;}
.design-page main{background:#0a111e;color:#eef2fa;}
.design-page .dwa-site-header{background:#080d16f2;--menu-accent:#a6d7ff;}
.design-page .dwa-footer{background:#080d16;}
.design-page main :is(h1,h2,h3){font-family:Montserrat,Arial,sans-serif;color:#eef2fa;text-transform:none;}
.design-page main p{font-family:Arial,Helvetica,sans-serif;color:#b7c5d8;}
.design-page main :is(h1 span,h2 span,.comparison-intro h2,.style-row-heading h2){background:linear-gradient(105deg,#8eaeff,#b28de2 50%,#d78ab8);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;}
.design-page main .ux-label{color:#a6c9ef;}
.design-page main :is(.ux-services article,.ux-process article,.ux-principles article,.dr-explain article,.concept-card,.style-preview-link){background:#141c2a;border-color:#a4b2d52a;}
.design-page main :is(.style-browser,.style-open){background:#111827;color:#b7c5d8;}
.design-page main .style-card-heading>span{color:#a6c9ef;}
.design-page main .btn{background:#bdd6fb;color:#0d1b31;}
.design-page main .btn:hover{background:#d2e4fc;}
.design-page :is(.style-dialog,.style-dialog-bar){background:#111622;color:#eef2fa;border-color:#a4b2d52a;}
.design-page .style-dialog::backdrop{background:#050812c9;}
