/* Algoweb v39 — compact phone layouts. Desktop composition remains in site.css. */
.awof33-catalog button[data-aw-local-inquiry] { appearance:none; font-family:inherit; text-align:inherit; cursor:pointer; }
.awof33-catalog button.awof22-price-cta { width:100%; }
.awof33-catalog button.awof32-help-link { border:0; }
.awof33-catalog button.awof20-choice { border-style:solid; border-width:1px; }
.awof33-catalog .awof32-guide-help button[data-aw-local-inquiry] { border:0; padding:0; background:none; color:inherit; font:inherit; text-decoration:underline; text-underline-offset:.15em; }
.aw-footer-mobile-brand,.aw-mobile-scene-summary,.aw-mobile-scene-details,.aw-mobile-scene-nav,.aw-mobile-package-nav,
.aw-offer17.awof32-catalog .aw-mobile-choice-help { display:none; }

@media (max-width:700px) {
  :root { --aw-gap:16px; }
  .aw-wrap,.aw-process > .aw-wrap,.aw-faq-updated > .aw-wrap { width:calc(100% - 32px); }
  .aw-section { padding-block:40px; }
  .aw-header .aw-header__inner { top:20px; right:12px; }
  .aw-header .aw-brand { --aw-logo-width:130px; }
  .aw-split-hero { min-height:330px; min-height:clamp(310px,48svh,410px); padding:110px 12px 64px; }
  .aw-split-hero .aw-split-title { font-size:9.05vw; line-height:1.18; }
  .aw-split-title .aw-title-main { display:block; text-align:center; }
  .aw-split-title .aw-title-intro,.aw-split-title .aw-title-studio { display:inline; padding:0; }
  .aw-split-title .aw-title-intro::after { content:' '; }
  .aw-split-title .aw-title-accent { text-align:center; }
  .aw-split-title .aw-title-ink { left:auto; }
  /* JS starts both entrances after the heading font is ready, once per page. */
  .aw-split-hero::after,.aw-split-hero .aw-split-title { animation:none; }
  .aw-split-hero.aw-mobile-hero-ready::after { animation:aw-mobile-panel-in 1000ms cubic-bezier(.22,.72,.24,1) both; }
  .aw-split-hero.aw-mobile-hero-ready .aw-split-title { animation:aw-mobile-title-in 1000ms cubic-bezier(.22,.72,.24,1) both; }
  .aw-showcase-stage { padding:30px 12px 36px; }
  .aw-showcase-heading { gap:12px; margin-bottom:24px; }
  .aw-showcase-wordmark { font-size:clamp(43px,12vw,72px); line-height:1.1; gap:.16em; }
  .aw-showcase-wordmark span:last-child { font-size:.68em; letter-spacing:.12em; }
  .aw-showcase-heading .aw-showcase-eyebrow { font-size:9px; letter-spacing:.14em; }
  /* The five scenes share one bounded canvas; inactive content cannot size it. */
  .aw-showcase-stack { display:block; height:530px; min-height:0; border-radius:18px; }
  .aw-showcase-slide { position:absolute; inset:0; min-width:0; min-height:0; height:100%; }
  .aw-showcase .aw-scene { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto minmax(0,1fr); height:100%; min-height:0; }
  .aw-showcase .aw-scene .aw-scene-copy { grid-column:1; grid-row:1; order:0; align-self:start; padding:22px 20px 0; }
  .aw-showcase .aw-scene h3 { max-width:none; margin:0 0 10px; font-size:30px; line-height:1.05; letter-spacing:-.04em; }
  .aw-showcase .aw-scene .aw-scene-copy > p { font-size:14px; line-height:1.42; }
  .aw-showcase[data-aw-mobile-copy] .aw-scene-copy > p:not(.aw-mobile-scene-summary):not(.aw-scene-topic):not(.aw-campaign-channels) { display:none; }
  .aw-showcase .aw-scene-copy > .aw-mobile-scene-summary { display:block; max-width:48ch; margin:0; }
  .aw-showcase .aw-scene-copy > p.aw-scene-topic { font-size:9px; letter-spacing:.1em; line-height:1.4; margin:0 0 8px; }
  .aw-showcase .aw-scene-copy > p.aw-campaign-channels { font-size:10px; margin:0 0 8px; }
  .aw-showcase .aw-scene-link { margin:8px 0 0; padding:0; min-height:44px; font-size:13px; gap:14px; }
  .aw-showcase .aw-campaign-cta { margin:12px 0 0; min-height:44px; padding:4px 4px 4px 14px; font-size:12px; gap:10px; }
  .aw-showcase .aw-campaign-cta > span { flex-basis:32px; width:32px; height:32px; font-size:20px; }
  .aw-showcase .aw-screen-list { gap:6px; margin-top:10px; }
  .aw-showcase .aw-screen-list span { padding:3px 8px; font-size:10px; }
  .aw-showcase .aw-gallery-wall { grid-row:2; grid-column:1; align-self:center; width:calc(100% - 24px); max-width:420px; margin:6px auto 16px; padding:7px; border-radius:12px; transform:none; }
  .aw-showcase .aw-gallery-board { width:100%; aspect-ratio:3/2; border-radius:6px; }
  .aw-showcase .aw-gallery-caption { margin:7px 2px 0; font-size:9px; letter-spacing:.06em; }
  .aw-showcase .aw-oms-figure { grid-row:2; grid-column:1; order:1; width:calc(100% - 20px); max-width:350px; margin:4px auto 12px; align-self:center; }
  .aw-showcase .aw-oms-map { display:block; width:100%; aspect-ratio:760/620; }
  .aw-showcase .aw-oms-connections { display:block; }
  .aw-showcase .aw-oms-core { position:absolute; left:33%; top:33%; width:34%; height:31%; min-height:0; margin:0; padding:6px 3px; gap:3px; border-radius:10px; }
  .aw-showcase .aw-oms-core::after { display:none; }
  .aw-showcase .aw-oms-core > span { font-size:7px; letter-spacing:.02em; line-height:1.15; }
  .aw-showcase .aw-oms-core > strong { font-size:clamp(15px,5vw,20px); }
  .aw-showcase .aw-oms-core > small { max-width:none; font-size:8px; line-height:1.2; }
  .aw-showcase .aw-oms-node { position:absolute; display:flex; flex-direction:column; width:28%; height:20%; min-height:0; padding:4px 3px; gap:3px; border-radius:9px; }
  .aw-showcase .aw-oms-node > svg { width:20px; height:20px; }
  .aw-showcase .aw-oms-node > strong { font-size:9px; line-height:1.1; }
  .aw-showcase .aw-oms-node > small { display:none; }
  .aw-showcase .aw-oms-node--store { top:1%; left:9%; }
  .aw-showcase .aw-oms-node--market { top:1%; left:auto; right:9%; }
  .aw-showcase .aw-oms-node--shipping { top:37%; left:auto; right:0; }
  .aw-showcase .aw-oms-node--packing { top:72%; left:auto; right:0; }
  .aw-showcase .aw-oms-node--erp { top:80%; left:36%; right:auto; }
  .aw-showcase .aw-oms-node--sms { top:72%; left:0; right:auto; }
  .aw-showcase .aw-oms-node--support { top:37%; left:0; right:auto; text-align:center; }
  .aw-showcase .aw-oms-figure figcaption { padding:5px 0 0; font-size:9px; line-height:1.3; }
  .aw-showcase .aw-oms-figure figcaption span { display:none; }
  .aw-showcase .aw-seo-photo { position:absolute; inset:auto 0 0; width:100%; height:58%; object-position:75% center; }
  .aw-showcase .aw-scene--seo::before { background:linear-gradient(#f8f4f0 0%,#f8f4f0 40%,#f8f4f000 72%); }
  .aw-showcase .aw-seo-search { left:16px; right:16px; bottom:22px; width:auto; min-height:46px; padding:9px 12px; gap:10px; font-size:12px; }
  .aw-showcase .aw-search-icon { transform:scale(.8); }
  .aw-showcase .aw-search-caret { height:14px; flex-basis:3px; }
  .aw-showcase .aw-campaign-visual { grid-row:2; grid-column:1; width:calc(100% - 24px); max-width:340px; min-height:0; height:auto; aspect-ratio:1.2; margin:6px auto 12px; align-self:center; }
  .aw-showcase .aw-campaign-platform { min-height:30px; padding:6px 8px; gap:4px; border-radius:8px; font-size:9px; }
  .aw-showcase .aw-campaign-platform--google > img { width:18px; height:18px; }
  .aw-showcase .aw-campaign-platform--meta > img { width:49px; }
  .aw-showcase .aw-campaign-platform--allegro > img { width:52px; height:auto; }
  .aw-showcase .aw-campaign-platform--amazon > img { width:72px; }
  .aw-showcase .aw-ux-visual { grid-row:2; grid-column:1; align-self:center; height:auto; width:100%; margin:0; }
  .aw-showcase .aw-ux-art { width:100%; height:auto; aspect-ratio:3/2; object-fit:contain; }
  .aw-mobile-scene-nav { display:flex; flex-wrap:wrap; justify-content:center; gap:5px 12px; margin:10px 0 2px; }
  .aw-mobile-scene-nav button { display:grid; place-items:center; min-width:36px; min-height:36px; padding:4px 2px; color:#6b6270; background:none; border:0; border-bottom:2px solid transparent; font:inherit; font-size:12px; cursor:pointer; }
  .aw-mobile-scene-nav button[aria-current="true"] { color:#17121b; border-color:#4087ed; }
  .aw-mobile-scene-details { display:block; margin:0; padding:0; border:0; }
  .aw-mobile-scene-details > summary { display:flex; align-items:center; justify-content:space-between; min-height:44px; padding:6px 4px; font-size:13px; list-style:none; }
  .aw-mobile-scene-details > summary::-webkit-details-marker { display:none; }
  .aw-mobile-scene-details > summary::after { content:'+'; font-size:20px; }
  .aw-mobile-scene-details[open] > summary::after { content:'−'; }
  .aw-mobile-scene-details > div { padding:4px 4px 16px; }
  .aw-mobile-scene-details p { font-size:14px; line-height:1.5; margin:0 0 10px; }
  .aw-atelier { --aw-atelier-slope:36px; --aw-atelier-notch:22px; padding:50px 16px 76px; }
  .aw-atelier-title,.aw-atelier-heading { font-size:clamp(29px,8vw,40px); line-height:1.08; }
  .aw-atelier-eyebrow { font-size:10px; letter-spacing:.25em; margin-bottom:14px; }
  .aw-atelier .aw-atelier-summary { font-size:10px; line-height:1.8; letter-spacing:.15em; margin-top:20px; }
  .aw-atelier-inner,.aw-atelier .aw-offer-pillars,.aw-atelier .aw-offer-pillar { width:100%; min-width:0; }
  .aw-atelier .aw-offer-pillars { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:none; gap:22px; margin-top:28px; }
  .aw-atelier .aw-offer-pillar { display:flex; flex-wrap:wrap; grid-row:auto; align-items:stretch; gap:10px; }
  .aw-atelier .aw-offer-pillar > .aw-offer-card { flex:0 0 calc(50% - 5px); width:calc(50% - 5px); min-width:0; }
  .aw-atelier .aw-offer-pillar-header { flex:0 0 100%; width:100%; padding:12px 0 4px; gap:4px; text-align:center; }
  .aw-atelier .aw-offer-pillar-header h3 { font-size:17px; line-height:1.2; margin:0; }
  .aw-atelier .aw-offer-pillar-header h3 > span { display:inline; }
  .aw-atelier .aw-offer-pillar-subtitle { font-size:9px; line-height:1.3; letter-spacing:.08em; margin:4px 0 0; }
  .aw-atelier .aw-offer-link { height:100%; min-height:0; padding:15px 12px 9px; border-radius:12px; }
  .aw-atelier .aw-offer-top { margin-bottom:12px; gap:4px; }
  .aw-atelier .aw-offer-category { font-size:9px; line-height:1.25; }
  .aw-atelier .aw-offer-arrow { width:23px; height:23px; flex-shrink:0; }
  .aw-atelier .aw-offer-arrow svg { width:12px; height:12px; }
  .aw-atelier .aw-offer-title { font-size:20px; line-height:1.1; margin:0 0 10px!important; overflow-wrap:anywhere; }
  .aw-atelier .aw-offer-copy { display:none; }
  .aw-atelier .aw-offer-tags { font-size:9px; line-height:1.5; margin-bottom:8px!important; }
  .aw-atelier .aw-offer-cta { margin-top:auto; min-height:0; gap:0; }
  .aw-atelier .aw-offer-cta a { min-height:44px; font-size:11px; line-height:1.25; gap:5px; }
  .aw-atelier .aw-offer-primary::after { border-radius:12px; }
  .aw-process { padding-bottom:34px; }
  .aw-atelier + .aw-process { margin-top:0!important; padding-top:20px; }
  .aw-process-header { display:flex; flex-direction:column; gap:12px; margin-bottom:18px; }
  .aw-process-header .aw-section-heading { width:100%; max-width:none; padding:0; }
  .aw-process-header h2 { font-size:21px; line-height:1.45; letter-spacing:.13em; padding:0; color:#111; mix-blend-mode:normal; }
  .aw-process-art { width:80%; max-width:320px; margin:0 auto!important; transform:none; }
  .aw-process .aw-process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:0; }
  .aw-process .aw-process-step { padding:16px 12px; border-radius:4px 4px 22px 4px; transform:none; }
  .aw-process .aw-process-step:nth-child(even) { transform:none; }
  .aw-process-icon { width:40px; height:40px; margin-bottom:14px; }
  .aw-process .aw-process-step h3 { font-size:21px; margin:0 0 8px!important; }
  .aw-process .aw-process-step > p:not(.aw-process-number) { font-size:13px; line-height:1.4; }
  /* Heading -> sharp glass artwork -> description -> contact action. */
  .aw-project-invite { display:grid; grid-template-columns:minmax(0,1fr); gap:0; min-height:0; padding:34px 20px 38px; }
  .aw-project-invite .aw-invite-copy { display:contents; }
  .aw-project-invite .aw-kicker { grid-row:1; margin:0 0 12px; font-size:10px; line-height:1.5; letter-spacing:.13em; }
  .aw-project-invite h2 { grid-row:2; max-width:none; margin:0; padding:0 .08em .1em 0; font-size:32px; line-height:1.08; text-align:left; overflow:visible; }
  .aw-project-invite .aw-invite-visual { position:relative; display:block; grid-row:3; inset:auto; width:100%; max-width:360px; height:auto; aspect-ratio:1; margin:-4px auto -20px; overflow:hidden; mask-image:none; -webkit-mask-image:none; }
  .aw-project-invite .aw-invite-art { position:absolute; inset:0; width:100%; height:auto; transform:none; mask-image:none; -webkit-mask-image:none; }
  .aw-project-invite .aw-invite-rim-lights { inset:0; width:100%; height:100%; transform:none; }
  .aw-project-invite .aw-invite-description { grid-row:4; max-width:none; font-size:15px; line-height:1.5; margin:0 0 16px; }
  .aw-project-invite .aw-invite-button { grid-row:5; justify-self:start; width:210px; max-width:100%; min-height:44px; font-size:13px; gap:12px; padding:5px 5px 5px 18px; }
  .aw-home-contact { padding:34px 0; }
  .aw-home-contact .aw-home-contact-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:20px; }
  .aw-home-contact .aw-home-contact-intro { padding:0; }
  .aw-home-contact .aw-contact-eyebrow { font-size:10px; line-height:1.4; letter-spacing:.13em; margin:0 0 12px!important; }
  .aw-home-contact h2 { font-size:32px; line-height:1.05; margin:0 0 12px; }
  .aw-home-contact-intro > p:not(.aw-contact-eyebrow) { font-size:14px; line-height:1.5; }
  .aw-home-contact .aw-contact-route { display:none; }
  .aw-home-contact .aw-contact-letters { width:100%; height:240px; opacity:.25; }
  .aw-home-contact .aw-home-contact-form { padding:16px; border-radius:16px; }
  .aw-home-contact .aw-contact-required { font-size:11px; margin-bottom:12px; }
  .aw-home-contact .aw-form-row { display:grid; grid-template-columns:minmax(0,1fr); gap:0; }
  .aw-home-contact .aw-form-field { margin-bottom:12px; }
  .aw-home-contact .aw-form-field label { font-size:13px; margin-bottom:5px; }
  .aw-home-contact .aw-form-field input,.aw-home-contact .aw-form-field textarea { font-size:16px; min-height:44px; padding:10px 12px; }
  .aw-home-contact .aw-form-field textarea { min-height:120px; height:120px; }
  .aw-home-contact .aw-form-field input[type=file] { padding:6px; font-size:12px; }
  .aw-home-contact .aw-privacy-row { gap:9px; margin-block:12px; }
  .aw-home-contact .aw-privacy-row label { font-size:12px; line-height:1.4; }
  .aw-home-contact .aw-contact-submit { width:210px; max-width:100%; min-height:44px; padding:5px 5px 5px 18px; gap:12px; font-size:13px; margin:16px auto 0; }
  .aw-home-contact .aw-submit-arrow { flex-basis:32px; width:32px; height:32px; }
  .aw-faq-updated { padding:32px 0; }
  .aw-faq-updated .aw-faq-grid { display:block; }
  .aw-faq-updated .aw-faq-intro { position:static; margin-bottom:16px; }
  .aw-faq-updated .aw-kicker { font-size:9px; margin-bottom:9px; }
  .aw-faq-updated h2 { font-size:28px; line-height:1.05; margin-bottom:10px; }
  .aw-faq-updated .aw-faq-intro > p:not(.aw-kicker) { font-size:13px; line-height:1.4; margin:0 0 6px; }
  .aw-faq-updated .aw-faq-intro .aw-text-link { min-height:36px; font-size:13px; }
  .aw-faq-updated .aw-faq-list details { margin:0!important; padding:0!important; }
  .aw-faq-updated .aw-faq-list summary { min-height:44px; padding:10px 24px 10px 0; font-size:14px; line-height:1.35; }
  .aw-faq-updated .aw-faq-list details p { font-size:14px; line-height:1.5; padding:0; margin:0 0 14px; }
  .aw-footer-expanded { padding:28px 0 20px; }
  .aw-footer-mobile-brand { display:block; --aw-logo-width:126px; margin:0 0 20px; }
  .aw-footer-mobile-brand .aw-logo-image a { display:block; padding:0; }
  .aw-footer-local .aw-brand-footer { display:none; }
  .aw-footer-expanded .aw-footer-directory.aw-footer-unified { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; }
  .aw-footer-unified .aw-footer-column { min-width:0; max-width:none; }
  .aw-footer-unified .aw-footer-column + .aw-footer-column { padding:0; border:0; }
  .aw-footer-unified .aw-footer-column h2 { font-size:17px; line-height:1.15; letter-spacing:-.015em; margin:0 0 7px; }
  .aw-footer-expanded .aw-footer-subtitle { font-size:9px; letter-spacing:.05em; margin:0 0 10px; }
  .aw-footer-unified .aw-footer-column ul { padding:0; margin:0; }
  .aw-footer-unified .aw-footer-column li { margin:0 0 2px; }
  .aw-footer-unified .aw-footer-column a { min-height:36px; display:flex; align-items:center; padding:6px 0; font-size:13px; line-height:1.35; overflow-wrap:anywhere; }
  .aw-footer-unified .aw-footer-column a::before { display:none; }
  .aw-footer-expanded .aw-footer-service-detail { font-size:11px; line-height:1.35; margin:0 0 8px; }
  .aw-footer-expanded .aw-footer-local p,.aw-footer-expanded .aw-footer-local li { font-size:12px; line-height:1.45; }
  .aw-footer-expanded .aw-footer-local > ul,.aw-footer-expanded .aw-footer-local .aw-mobile-footer-fold > div > ul { display:flex; flex-wrap:wrap; gap:3px 9px; margin:10px 0; }
  .aw-footer-expanded .aw-footer-local-copy { margin:12px 0; }
  .aw-footer-expanded .aw-footer-legal { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; padding-top:18px; margin-top:20px; }
  .aw-footer-expanded .aw-footer-legal > * { margin:0!important; font-size:11px; }
  .aw-footer-expanded .aw-footer-legal nav { display:flex; flex-wrap:wrap; gap:8px 16px; }
  .aw-footer-expanded .aw-footer-legal a { font-size:11px; min-height:32px; }
}

@keyframes aw-mobile-panel-in { from { transform:translateX(-100%); } to { transform:translateX(0); } }
@keyframes aw-mobile-title-in { from { transform:translateX(100vw); } to { transform:translateX(0); } }

@media (max-width:700px) {
  .aw-offer17.awof32-catalog { padding-top:88px; }
  .aw-offer17.awof32-catalog .awof17-wrap { width:calc(100% - 32px); }
  .aw-offer17.awof32-catalog .awof17-route { padding:0; margin-bottom:8px; }
  .aw-offer17.awof32-catalog .awof17-route a { font-size:12px; min-height:36px; }
  .aw-offer17.awof32-catalog .awof20-heading { padding:8px 0 22px; border-bottom:1px solid #e2e6ec; }
  .aw-offer17.awof32-catalog .awof20-eyebrow { font-size:10px; letter-spacing:.12em; line-height:1.6; margin-bottom:14px; }
  .aw-offer17.awof32-catalog .awof20-heading h1 { font-size:32px; line-height:1.06; margin:0 0 12px; }
  .aw-offer17.awof32-catalog .awof20-intro { font-size:15px; line-height:1.45; margin:0 0 14px; }
  .aw-offer17.awof32-catalog .awof20-stack { display:flex; flex-wrap:wrap; justify-content:center; gap:4px 14px; font-size:9px; letter-spacing:.1em; line-height:1.6; margin:0; }
  .aw-offer17.awof32-catalog .awof20-stack span { display:block; }
  .aw-offer17.awof32-catalog .awof32-hero-note { font-size:11px; line-height:1.45; margin:12px 0 0; }
  .aw-offer17.awof32-catalog .awof20-selector { width:calc(100% - 32px); margin-top:0; }
  .aw-offer17.awof32-catalog .awof32-choice-heading { margin:22px 0 12px; }
  .aw-offer17.awof32-catalog .awof32-choice-heading h2 { font-size:24px; }
  .aw-offer17.awof32-catalog .awof32-choice-heading p { font-size:13px; line-height:1.4; }
  .aw-offer17.awof32-catalog .awof20-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .aw-offer17.awof32-catalog .awof20-choice { padding:13px 12px 8px; border-radius:12px; }
  .aw-offer17.awof32-catalog .aw-mobile-choice-help { display:flex; }
  .aw-offer17.awof32-catalog .awof20-choice-top { margin-bottom:7px; min-height:28px; }
  .aw-offer17.awof32-catalog .awof20-icon,.aw-offer17.awof32-catalog .awof20-icon svg { width:27px; height:27px; flex-basis:27px; }
  .aw-offer17.awof32-catalog .awof32-choice-state { font-size:9px; max-width:48px; }
  .aw-offer17.awof32-catalog .awof20-choice-title { font-size:18px; line-height:1.08; min-height:2.16em; margin-bottom:6px; }
  .aw-offer17.awof32-catalog .awof20-choice-copy { min-height:0; font-size:12px; line-height:1.35; margin-bottom:10px; }
  .aw-offer17.awof32-catalog .awof32-choice-price strong { font-size:16px; }
  .aw-offer17.awof32-catalog .awof32-choice-price > span { font-size:10px; }
  .aw-offer17.awof32-catalog .awof20-choice-action { min-height:36px; margin-top:6px; font-size:11px; padding-top:7px; }
  .aw-offer17.awof32-catalog .aw-mobile-choice-help .awof20-choice-action { margin-top:auto; }
  .aw-offer17.awof32-catalog .awof32-selection-bar { flex-wrap:wrap; gap:5px; padding:12px 0; }
  .aw-offer17.awof32-catalog .awof32-selection-bar p,.aw-offer17.awof32-catalog .awof32-selection-bar button { font-size:12px; }
  .aw-offer17.awof32-catalog .awof32-offer { margin-top:18px; padding-top:24px; border-top:1px solid #dce3ec; }
  .aw-offer17.awof32-catalog .awof32-offer-intro { margin-bottom:18px; }
  .aw-offer17.awof32-catalog .awof22-kicker { font-size:10px; margin-bottom:10px; }
  .aw-offer17.awof32-catalog .awof32-offer-intro h2 { font-size:28px; line-height:1.1; margin-bottom:12px; }
  .aw-offer17.awof32-catalog .awof32-offer-lead,.aw-offer17.awof32-catalog .awof32-fit { font-size:14px; line-height:1.5; margin-bottom:10px; }
  .aw-offer17.awof32-catalog .awof32-catalog-note { font-size:13px; line-height:1.45; margin:12px 0; }
  .aw-offer17.awof32-catalog .awof32-pricing-label { font-size:16px; }
  .aw-offer17.awof32-catalog .awof32-pricing { padding-top:0; }
  .aw-offer17.awof32-catalog .awof23-price-stage { padding:0; }
  .aw-offer17.awof32-catalog .awof32-price-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
  .aw-offer17.awof32-catalog .awof32-price-card { min-height:0; padding:20px 18px; border-radius:16px; }
  .aw-offer17.awof32-catalog .awof32-price-card[data-aw-mobile-inactive] { display:none; }
  .aw-mobile-package-nav { display:grid; grid-template-columns:repeat(var(--aw-package-count,3),minmax(0,1fr)); gap:6px; margin:12px 0; }
  .aw-mobile-package-nav button { display:flex; flex-direction:column; align-items:center; justify-content:center; width:100%; box-sizing:border-box; min-width:0; min-height:64px; padding:9px 4px; border:1px solid #ccd8e8; border-radius:10px; background:#fff; color:#26364b; font:inherit; cursor:pointer; }
  .aw-mobile-package-nav button strong,.aw-mobile-package-nav button span { display:block; }
  .aw-mobile-package-nav button strong { font-size:12px; line-height:1.3; }
  .aw-mobile-package-nav button span { font-size:11px; line-height:1.4; margin-top:3px; }
  .aw-mobile-package-nav button[aria-selected="true"] { background:#101015; color:#fff; border-color:#101015; }
  .aw-offer17.awof32-catalog .awof32-plan-title { min-height:0; font-size:23px; line-height:1.1; margin-bottom:6px; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof22-plan-name { margin-bottom:9px; font-size:11px; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof22-pages { min-height:0; margin-bottom:9px; font-size:13px; line-height:1.4; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof22-price { font-size:36px; line-height:1.05; margin-bottom:4px; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof22-tax { font-size:11px; margin-bottom:10px; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof22-plan-for { min-height:0; margin:9px 0 0; font-size:13px; line-height:1.4; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof25-timing { font-size:12px; margin:9px 0 0; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof32-quick-list { padding:12px 0 0; margin:12px 0; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof32-quick-list li { font-size:14px; line-height:1.4; margin-bottom:8px; padding-left:17px; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof32-scope { padding:0; margin:2px 0 12px; }
  .aw-offer17.awof32-catalog .awof32-scope > summary { min-height:44px; display:flex; align-items:center; padding:9px 28px 9px 0; font-size:13px; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof32-full-list li { font-size:14px; line-height:1.5; margin-bottom:9px; }
  .aw-offer17.awof32-catalog .awof32-price-card .awof22-price-cta { min-height:44px; padding:12px 14px; font-size:14px; }
  .aw-offer17.awof32-catalog .awof32-cta-note { font-size:11px; line-height:1.4; margin-top:8px; }
  .aw-offer17.awof32-catalog .awof25-common { margin-top:18px; padding-top:18px; border-top:1px solid #dce3ec; }
  .aw-offer17.awof32-catalog .awof25-common ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 12px; }
  .aw-offer17.awof32-catalog .awof25-common li { font-size:12px; line-height:1.4; }
  .aw-offer17.awof32-catalog .awof32-disclosure { margin-top:12px; padding:0; }
  .aw-offer17.awof32-catalog .awof32-disclosure > summary { min-height:44px; padding:12px 28px 12px 0; font-size:15px; line-height:1.35; }
  .aw-offer17.awof32-catalog .awof32-description .awof22-included { grid-template-columns:minmax(0,1fr); gap:12px; }
  .aw-offer17.awof32-catalog .awof32-single-layout { gap:16px; }
  .aw-offer17.awof32-catalog .awof32-single-guide { padding:14px 0 0; border-top:1px solid #dce3ec; }
  .aw-offer17.awof32-catalog .awof32-single-guide h3 { font-size:22px; }
  .aw-offer17.awof32-catalog .awof32-single-guide p,.aw-offer17.awof32-catalog .awof32-single-guide li { font-size:14px; line-height:1.5; margin-bottom:10px; }
  .aw-offer17.awof32-catalog .awof32-terms { margin-top:18px; }
  .aw-offer17.awof32-catalog .awof32-terms > p { font-size:13px; line-height:1.5; }
  .aw-offer17.awof32-catalog .awof32-help { gap:12px; margin-top:18px; padding:18px 16px; }
  .aw-offer17.awof32-catalog .awof32-help h3 { font-size:21px; }
  .aw-offer17.awof32-catalog .awof32-help p { font-size:14px; line-height:1.5; }
  .aw-offer17.awof32-catalog .awof32-help-link { min-height:44px; padding:10px 16px; font-size:13px; }
  .aw-offer17.awof32-catalog .awof17-faq { padding-block:24px; margin-block:18px; border-top:1px solid #dce3ec; }
  .aw-offer17.awof32-catalog .awof17-faq h2 { font-size:28px; line-height:1.1; }
  .aw-offer17.awof32-catalog .awof17-faq details { padding:0; margin:0; }
  .aw-offer17.awof32-catalog .awof17-faq summary { min-height:44px; padding:10px 26px 10px 0; font-size:14px; line-height:1.35; }
  .aw-offer17.awof32-catalog .awof17-faq details p { font-size:14px; line-height:1.5; margin:0 0 12px; }
  .aw-offer17.awof33-catalog .awof33-dialog { width:calc(100% - 16px); max-height:calc(100dvh - 16px); overscroll-behavior:contain; }
  .aw-offer17.awof33-catalog .awof33-dialog-inner { padding:20px 16px; }
  .aw-offer17.awof33-catalog .awof33-dialog h2 { font-size:25px; padding-right:26px; }
  .aw-offer17.awof33-catalog .awof33-dialog textarea { min-height:110px; }
  .aw-offer17.awof33-catalog .awof33-dialog .aw-form-field { margin-bottom:12px; }
}
@media (max-width:350px) {
  .aw-showcase .aw-scene .aw-scene-copy { padding-inline:16px; }
  .aw-showcase .aw-scene h3 { font-size:28px; }
  .aw-showcase .aw-scene .aw-scene-copy > .aw-mobile-scene-summary { font-size:13px; }
  .aw-atelier .aw-offer-title { font-size:18px; }
  .aw-process .aw-process-step h3 { font-size:19px; }
  .aw-offer17.awof32-catalog .awof20-choice-title { font-size:17px; }
}
@media (prefers-reduced-motion:reduce) {
  .aw-split-hero.aw-mobile-hero-ready::after,.aw-split-hero.aw-mobile-hero-ready .aw-split-title { animation:none!important; transform:none; }
}
@media print {
  .aw-mobile-package-nav,.aw-mobile-scene-nav,.aw-mobile-choice-help { display:none!important; }
  .aw-offer17.awof32-catalog .awof32-price-card[data-aw-mobile-inactive] { display:flex!important; }
}
/* Disclosure containers do not introduce a desktop layout box. */
.aw-offer17.awof32-catalog .aw-mobile-fold { display:contents; }
.aw-mobile-fold > summary { display:none; }
.aw-mobile-footer-fold,.aw-mobile-footer-fold > summary,.aw-mobile-footer-fold > div { display:contents; }
.aw-mobile-footer-fold > summary::-webkit-details-marker { display:none; }
.aw-footer-unified .aw-mobile-footer-fold > div > p:not(.aw-footer-local-copy) { max-width:25ch; }
@media (max-width:700px) {
  .aw-mobile-footer-fold { display:block; margin:0!important; padding:0!important; border:0; }
  .aw-mobile-footer-fold > summary { position:relative; display:block; min-height:44px; padding:0 17px 0 0; list-style:none; cursor:pointer; }
  .aw-mobile-footer-fold > summary::after { content:'+'; position:absolute; top:0; right:0; color:#a8cdff; font-size:19px; line-height:1; }
  .aw-mobile-footer-fold[open] > summary::after { content:'−'; }
  .aw-mobile-footer-fold > div { display:block; padding-top:10px; }
  .aw-footer-expanded .aw-mobile-footer-fold .aw-footer-subtitle { margin-bottom:0; }
  .aw-offer17.awof32-catalog .aw-mobile-fold { display:block; border-top:1px solid #dce3ec; border-bottom:0; padding:0; margin:16px 0 0; }
  .aw-mobile-fold > summary { display:flex; justify-content:space-between; align-items:center; min-height:44px; padding:10px 0; font-size:14px; line-height:1.35; list-style:none; }
  .aw-mobile-fold > summary::-webkit-details-marker { display:none; }
  .aw-mobile-fold > summary::after { content:'+'; margin-left:12px; font-size:20px; }
  .aw-mobile-fold[open] > summary::after { content:'−'; }
  .aw-offer17.awof32-catalog .aw-mobile-fold .awof25-common { padding:4px 0 12px; margin:0; border:0; }
  .aw-mobile-fold .awof25-common > h3 { display:none; }
  .aw-offer17.awof32-catalog .aw-mobile-fold .awof32-single-guide { border:0; padding:4px 0 12px; }
}
@media (max-width:700px) {
  .aw-offer17.awof32-catalog #awof17-pytania { padding-block:24px; margin-block:18px; border-top:1px solid #dce3ec; }
  .aw-offer17.awof32-catalog .awof17-faq-grid { display:block; }
  .aw-offer17.awof32-catalog .awof17-faq-heading { margin-bottom:14px; }
  .aw-offer17.awof32-catalog .awof17-faq-heading h2 { font-size:28px; line-height:1.1; margin-bottom:10px; }
  .aw-offer17.awof32-catalog .awof17-faq-list details { padding:0; margin:0; }
  .aw-offer17.awof32-catalog .awof17-faq-list summary { min-height:44px; padding:10px 26px 10px 0; font-size:14px; line-height:1.35; }
  .aw-offer17.awof32-catalog .awof17-faq-list details p { font-size:14px; line-height:1.5; margin:0 0 12px; }
  .aw-header .aw-brand-header { top:24px; left:16px; }
}
@media (max-width:700px) {
  .aw-showcase .aw-scene--ux .aw-ux-visual { max-width:420px; margin:0 auto; }
}
@media (max-width:700px) {
  .aw-offer17.awof32-catalog .awof20-choice { display:flex; flex-direction:column; gap:0; }
  .aw-offer17.awof32-catalog .awof20-choice-top { display:flex; flex-direction:row; width:100%; }
  .aw-offer17.awof32-catalog .awof20-choice-title::after { display:none!important; }
  .aw-offer17.awof32-catalog .awof20-choice-copy { display:none; }
  .aw-offer17.awof32-catalog .aw-mobile-choice-help .awof20-choice-copy { display:block; }
  .aw-offer17.awof32-catalog .awof32-choice-price { text-align:left; }
  .aw-offer17.awof32-catalog .awof20-choice-action { display:flex; width:100%; align-items:center; justify-content:space-between; }
  .aw-offer17.awof32-catalog .awof32-choice-state { display:block; }
  .aw-mobile-package-nav { position:relative; z-index:1; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .aw-mobile-package-nav[data-aw-package-count="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .aw-mobile-package-nav button strong,.aw-mobile-package-nav button span { color:inherit; }
  .aw-mobile-package-nav button[aria-selected="true"] > strong,.aw-mobile-package-nav button[aria-selected="true"] > span { color:#fff; }
  .aw-offer17.awof32-catalog .awof23-price-stage::before { inset:90px 0 -6px 0; border-radius:20px; }
  .aw-offer17.awof32-catalog .awof23-price-stage::after { inset:90px 0 -12px 0; }
}

/* v45 — centred mobile content, without changing the desktop offer or its scope. */
@media (max-width:700px) {
  :root { --aw-atelier-slope:clamp(44px,12vw,60px); }
  body .aw-atelier { --aw-atelier-slope:clamp(44px,12vw,60px); }
  body .aw-atelier + .aw-process {
    margin-top:calc(-1 * var(--aw-atelier-slope))!important;
    padding-top:0; background:transparent;
  }
  body .aw-process-header .aw-section-heading {
    padding-top:max(0px,calc(var(--aw-atelier-slope) * .5 - .72rem));
    text-align:center;
  }
  body .aw-process-header h2 {
    max-width:100%; margin-inline:auto!important; padding:0 .13em 0 0;
    font-size:clamp(1.125rem,5.4vw,1.375rem); line-height:1.5; letter-spacing:.13em;
    color:#fff; mix-blend-mode:difference; text-align:center;
  }
  body .aw-process .aw-process-step { text-align:center; }
  body .aw-process .aw-process-icon { margin-inline:auto; }
  body .aw-process .aw-process-step > p { margin-inline:auto!important; }
  body :is(.aw-page-intro,.aw-prose,.aw-article,.aw-about,.aw-service-detail,.aw-service-top,.aw-service-bottom-cta) { text-align:center; }
  body :is(.aw-page-intro,.aw-prose,.aw-article,.aw-about,.aw-service-detail) :is(h1,h2,h3,p) { margin-inline:auto; }
  body .aw-actions,body .wp-block-buttons { justify-content:center; }
  body .aw-atelier .aw-offer-link { text-align:center; }
  body .aw-atelier .aw-offer-top { justify-content:center; gap:8px; }
  body .aw-atelier .aw-offer-cta a { justify-content:center; }
  body .aw-project-invite,body .aw-home-contact-intro,body .aw-faq-updated { text-align:center; }
  body .aw-project-invite h2 { text-align:center; margin-inline:auto; }
  body .aw-project-invite .aw-invite-button { justify-self:center; margin-inline:auto; }
  body .aw-home-contact-intro > p,body .aw-faq-updated .aw-faq-intro > p { margin-inline:auto; }
  body .aw-faq-updated .aw-faq-list summary { text-align:center; padding-inline:24px; }
  body .aw-faq-updated .aw-faq-list details p { margin-inline:auto; }
  body .aw-faq button.aw-text-link { text-align:center; }
  body .aw-home-contact .aw-form-field label,body .aw-home-contact .aw-contact-required { text-align:center; }

  /* Footer: centred logo, two compact service columns and centred legal links. */
  body .aw-footer-expanded { text-align:center; }
  body .aw-footer-expanded .aw-footer-mobile-brand { width:126px; max-width:100%; margin:0 auto 20px; }
  body .aw-footer-expanded .aw-footer-mobile-brand .aw-logo-image a { justify-content:center; }
  body .aw-footer-expanded .aw-mobile-footer-fold > summary { text-align:center; padding-inline:17px; }
  body .aw-footer-expanded .aw-footer-column :is(h2,p,li) { text-align:center; }
  body .aw-footer-expanded .aw-footer-column p { margin-inline:auto; }
  body .aw-footer-expanded .aw-footer-column li a { justify-content:center; text-align:center; }
  body .aw-footer-expanded .aw-footer-local ul { justify-content:center; }
  body .aw-footer-expanded .aw-footer-start { justify-content:center; margin-inline:auto; text-align:center; }
  body .aw-footer-expanded .aw-footer-legal { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; }
  body .aw-footer-expanded .aw-footer-legal nav { justify-content:center; }

  /* Shared catalogue: centre labels, prices and explanations, preserving tabs. */
  body .aw-offer17.awof32-catalog { text-align:center; }
  body .aw-offer17.awof32-catalog .awof17-route { display:flex; justify-content:center; text-align:center; }
  body .aw-offer17.awof32-catalog :is(.awof20-choice,.awof32-choice-price,.awof32-price-card,.awof32-help,.awof32-guide-grid article,.awof22-included article,.awof17-faq-heading,.awof32-offer-intro,.awof32-single-guide) { text-align:center; }
  body .aw-offer17.awof32-catalog :is(.awof32-choice-heading,.awof32-selection-bar,.awof32-help) { align-items:center; justify-content:center; }
  body .aw-offer17.awof32-catalog .awof20-choice-top { position:relative; justify-content:center; }
  body .aw-offer17.awof32-catalog .awof32-choice-state { position:absolute; right:0; max-width:42px; font-size:8px; }
  body .aw-offer17.awof32-catalog :is(.awof20-choice-title,.awof32-choice-price,.awof32-offer-lead,.awof32-fit,.awof32-catalog-note,.awof22-included p,.awof32-offer-intro h2,.awof32-single-guide p) { margin-inline:auto; }
  body .aw-offer17.awof32-catalog .awof20-choice-action { justify-content:center; gap:8px; }
  body .aw-offer17.awof32-catalog :is(.awof32-scope,.awof32-disclosure,.aw-mobile-fold,.awof17-faq-list) > summary,
  body .aw-offer17.awof32-catalog .awof17-faq-list summary { text-align:center; justify-content:center; padding-inline:26px; }
  body .aw-offer17.awof32-catalog :is(.awof32-quick-list,.awof32-full-list,.awof25-common,.awof32-single-guide) li { text-align:center; padding-inline:0; }
  body .aw-offer17.awof32-catalog :is(.awof32-quick-list,.awof32-full-list,.awof25-common) li::before { position:static; display:inline-block; margin-right:7px; vertical-align:middle; }
  body .aw-offer17.awof32-catalog :is(.awof32-comparison-table,.awof28-definition-table) :is(th,td,caption) { text-align:center; }
  body .aw-offer17.awof32-catalog .awof32-back { margin-inline:auto; }
  body .aw-offer17.awof32-catalog .awof32-help-link { align-self:center; }
  body .aw-offer17.awof32-catalog .awof33-dialog h2 { padding-inline:26px; text-align:center; }
  body .aw-offer17.awof32-catalog .awof33-dialog .aw-form-field label { text-align:center; }
  /* Keep entered text aligned naturally for editing and avoid changing consent layout. */
  body :is(.aw-home-contact,.aw-offer17) :is(input,textarea,select) { text-align:left; }
}
@media (forced-colors:active) {
  body .aw-atelier + .aw-process { margin-top:0!important; padding-top:24px; }
  body .aw-process-header h2 { color:CanvasText; mix-blend-mode:normal; }
}
