/* Refinements approved in Weborka Figma 1729:212. Existing R3 components own structure. */
:root{--w4-blue:#294df2;--w4-lime:#ddff57;--w4-ink:#22231f;--w4-pale:#f1f6ff}

/* Services and projects: whole words at 320px, with the existing type family. */
.page-service-r3 main h1,.page-project-r3 .w3-project-hero h1{overflow-wrap:normal;word-break:normal;hyphens:none;text-wrap:balance}
.w3-service-hero,.w3-project-hero{padding-block:76px}
.w3-project-hero__grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,.9fr);align-items:center;gap:clamp(32px,4vw,72px)}
.w3-project-hero__body{min-width:0}
.w3-project-hero__body>p:nth-of-type(2){color:var(--w4-lime);font-weight:600}
.w3-project-preview{min-width:0;align-self:stretch;background:transparent;color:#fff;text-decoration:none}
.w3-project-preview .project-picture{height:min(35vw,475px);overflow:hidden;background:#fff}
.w3-project-preview img,.w3-project-preview--long img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:top left}
.w3-project-preview>span{padding:12px 0 0;color:#fff;text-decoration:none}
.w3-project-preview:hover>span{text-decoration:underline;text-decoration-color:var(--w4-lime);text-underline-offset:4px}
.w3-project-preview:focus-visible{outline:3px solid var(--w4-lime);outline-offset:5px}
.w3-project-actions{gap:8px}
.w3-project-button--light{background:var(--w4-lime);color:var(--w4-ink)}
.w3-project-button--light:hover{background:#ebff91}

/* Portfolio: one meaningful interface fragment and one decision per card. */
.w3-portfolio-cards{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:46px}
.w3-portfolio-card{gap:14px}
.w3-portfolio-card__image{height:auto;aspect-ratio:1.53;border-radius:0;background:var(--w4-pale)}
.w3-portfolio-card .project-picture img,.w3-portfolio-card--long .project-picture img{object-fit:cover;object-position:top left;clip-path:inset(0 var(--w3-reveal-inset,0%) 0 0)}
.w3-portfolio-card__meta{color:var(--w4-blue)!important;font-weight:600!important;text-transform:uppercase;letter-spacing:.02em}
.page-portfolio-v3 .w3-portfolio-card h2{font-size:clamp(22px,2vw,28px);line-height:1.16;overflow-wrap:normal}
.w3-portfolio-card p.w3-portfolio-card__decision{color:var(--w4-ink);flex:1}
.w3-portfolio-card__cta{display:flex;align-items:center;justify-content:space-between;min-height:46px;margin-top:4px;padding:10px 14px;background:var(--w4-lime);color:var(--w4-ink);font:600 14px/20px 'Golos Text',sans-serif;transition:background-color .2s ease,translate .2s ease}
.w3-portfolio-card:hover .w3-portfolio-card__cta,.w3-portfolio-card:focus-visible .w3-portfolio-card__cta{background:#edff9e;translate:0 -2px}
.w3-portfolio-card:hover h2,.w3-portfolio-card:focus-visible h2{text-decoration:none;color:var(--w4-ink)}

/* CMS: task selection is visible without relying on a border or an arrow. */
body .r2-cms.services-cms{background:#fff}
.services-cms__tasks{gap:16px}
.services-cms__tasks button{position:relative;min-height:112px;border:0;background:#eef2ff;padding:18px 36px 18px 18px}
.services-cms__tasks button:hover{background:#e2e9ff}
.services-cms__tasks button[aria-pressed=true],.services-cms__tasks button[aria-pressed=true]:hover{background:var(--w4-lime)}
.services-cms__tasks button[aria-pressed=true]:after{content:'✓';position:absolute;right:15px;top:14px;color:var(--w4-blue);font:700 24px/1 'Golos Text',sans-serif}
.services-cms__tasks span{font:400 14px/1.35 'Golos Text',sans-serif}
body .services-cms .services-cms__choice{max-width:none;display:grid;gap:12px;padding:20px;background:var(--w4-blue);color:#fff;font-size:16px;line-height:1.45}
body .services-cms .services-cms__choice[hidden]{display:none}
.services-cms__choice strong{color:var(--w4-lime);font:700 13px/1.3 'Golos Text',sans-serif;letter-spacing:.04em}
.services-cms__tabs{gap:8px}
.services-cms__tab{border:0;background:#eef2ff}
.services-cms__tab.is-recommended,.services-cms__tab[aria-selected=true]{background:var(--w4-lime);border:0}
.services-cms__tab:hover{border:0;background:#e1ebff}
.services-cms__tab.is-recommended:hover,.services-cms__tab[aria-selected=true]:hover{background:#ebff91}

/* Pricing and FAQ use short local feedback; content stays readable. */
.w3-pricing.w3-section{background:var(--w4-pale)}
.w3-pricing__corporate{position:relative;padding:28px 28px 28px 36px;background:#fff;border-radius:16px;overflow:hidden;transition:translate .2s ease}
.w3-pricing__corporate:before{content:'';position:absolute;inset:0 auto 0 0;width:6px;background:var(--w4-blue);opacity:.7;transition:opacity .18s ease}
.w3-pricing__corporate:hover{translate:0 -3px}
.w3-pricing__corporate:hover:before{opacity:1}
.w3-pricing__corporate:active{translate:0 0}
.page-home .w3-pricing .w3-pricing__custom{color:var(--w4-blue)}
.w3-faq{background:var(--w4-lime)}
.w3-faq p{color:var(--w4-ink)}
.w3-faq__items{display:grid;gap:14px;align-content:start}
.w3-faq details{margin:0;padding:12px 20px;border:0;border-radius:16px;background:#fff}
.w3-faq summary,.w3-faq summary:hover{margin:0;padding:0;color:var(--w4-ink);font-weight:600;overflow-wrap:normal}
.w3-faq summary::before{content:none}
.w3-faq details:has(summary:focus-visible){box-shadow:inset 5px 0 var(--w4-blue)}
.w3-faq__indicator{display:grid;place-items:center;flex-basis:34px;width:34px;height:34px;border-radius:50%;background:var(--w4-blue)}
.w3-faq__indicator img{filter:brightness(0) invert(1)}
.w3-faq details:is(:hover,[open]) .w3-faq__indicator{scale:1;rotate:0deg}
.w3-faq__answer{overflow:hidden;margin-top:8px}
.w3-faq details[data-faq-animating] .w3-faq__answer{will-change:height,opacity}
.w3-service-prices summary:hover{background:#eef2ff;color:var(--w4-ink);text-decoration:none}
.w3-service-prices summary:focus-visible{background:#eef2ff;color:var(--w4-ink);text-decoration:none;outline:3px solid var(--w4-blue);outline-offset:3px}
.w3-service-prices details.w3-service-prices__featured[open]{padding:20px;border:0;border-radius:16px;background:var(--w4-blue);color:#fff}
.w3-service-prices details.w3-service-prices__featured[open] :is(summary,.w3-service-prices__body,p){color:#fff}
.w3-service-prices details.w3-service-prices__featured[open] summary:hover{background:rgb(255 255 255 / 12%);color:#fff;text-decoration:none}
.w3-service-prices details.w3-service-prices__featured[open] summary:focus-visible{background:rgb(255 255 255 / 12%);color:#fff;text-decoration:none;outline-color:var(--w4-lime)}
.w3-service-prices details.w3-service-prices__featured[open] summary:after{filter:brightness(0) invert(1)}
.w3-service-prices details.w3-service-prices__featured[open] .w3-service-prices__body{display:grid;gap:12px}

/* Contact, legal copy, disabled subscription, and 404 recovery. */
.w3-contact-email{white-space:nowrap;overflow-wrap:normal;font-size:clamp(24px,7vw,48px);letter-spacing:-.03em;line-height:1.2}
.page-marketing-subscribe .marketing-subscribe__card>h2{line-height:1.2}
.marketing-subscribe__alternative{display:flex;align-items:center;justify-content:space-between;text-decoration:none}
.marketing-subscribe__alternative:hover{background:#203ec6;text-decoration:none}
.w3-error-inner{width:min(91.6%,1492px);margin:auto}
.w3-error-hero{padding:72px 0;background:var(--w4-blue);color:#fff}
.page-error-r4 .w3-error-hero h1{max-width:900px;margin:0;color:#fff;font:600 clamp(40px,5.625vw,80px)/1.08 'Golos Text',sans-serif;letter-spacing:-.02em;text-wrap:balance}
.w3-error-hero p{max-width:720px;margin:24px 0 0;font-size:18px;line-height:1.5}
.w3-error-next{padding:64px 0;background:var(--w4-lime);color:var(--w4-ink)}
.page-error-r4 .w3-error-next h2{margin:0 0 24px;font:600 clamp(30px,3.44vw,48px)/1.2 'Golos Text',sans-serif}
.w3-error-next p{margin:0 0 24px}
.w3-error-action{display:flex;align-items:center;justify-content:space-between;width:min(350px,100%);min-height:54px;padding:14px 16px;background:var(--w4-blue);color:#fff;text-decoration:none;font-weight:600}
.w3-error-action:hover{background:#203ec6;color:#fff}
.w3-error-help{display:inline-flex;align-items:center;min-height:44px;margin-top:18px;color:var(--w4-ink);font-weight:600;text-decoration:none}
.w3-error-help:hover{text-decoration:underline;text-underline-offset:4px}
.page-error-r4 main :is(a,button):focus-visible{outline:3px solid var(--w4-ink);outline-offset:4px}

@media(max-width:1099px){.w3-portfolio-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:621px) and (max-width:800px){.services-cms__tasks,.services-cms__tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.services-cms__tasks button{padding:16px;min-height:118px}.services-cms__tasks strong{font-size:17px}.services-cms__tasks span{font-size:13px}}
@media(max-width:800px){.w3-project-hero__grid{grid-template-columns:1fr;gap:0}.w3-project-hero{padding-bottom:0}.w3-project-preview{width:calc(100% + 52px);margin:30px -26px 0;padding:24px 26px 0;background:#fff;color:var(--w4-ink)}.w3-project-preview .project-picture{height:auto;aspect-ratio:1.5}.w3-project-preview>span{color:var(--w4-ink)}.w3-portfolio-card__image{aspect-ratio:1.5}}
@media(max-width:620px){
  .page-service-r3 main h1,.page-project-r3 .w3-project-hero h1{font-size:clamp(31px,9.1vw,39px);line-height:1.12}
  .w3-service-hero,.w3-project-hero{padding-top:44px}
  .w3-service-hero{padding-bottom:46px}
  .w3-project-hero__body{padding-bottom:18px}
  .w3-project-preview{width:calc(100% + 40px);margin:20px -20px 0;padding:24px 20px 16px}
  .w3-project-preview .project-picture{aspect-ratio:1.5}
  .w3-project-preview>span{font-size:14px}
  .w3-portfolio-cards{grid-template-columns:1fr;row-gap:52px}
  .w3-portfolio-hero{padding:48px 0}
  .w3-portfolio-card__image{aspect-ratio:1.34}
  .page-portfolio-v3 .w3-portfolio-card h2{font-size:24px}
  .services-cms__tasks{grid-template-columns:1fr}
  .services-cms__tasks button{min-height:78px;padding:14px 42px 14px 14px}
  .services-cms__tasks strong{font-size:17px}
  .services-cms__tasks span{font-size:13px}
  .services-cms__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .services-cms__tab{min-height:48px;padding:10px;font-size:13px}
  .w3-faq details{padding:12px 14px}
  .w3-faq summary{font-size:17px}
  .w3-pricing__corporate{padding:24px 20px 24px 28px}
  .w3-contact-email{font-size:clamp(24px,7vw,28px)}
  .page-documents-r3 .w3-document-hero{padding:44px 0}
  .page-documents-r3 .w3-document-hero h1{font-size:clamp(30px,8.6vw,36px);overflow-wrap:normal;word-break:normal;hyphens:none}
  .page-documents-r3 .legal-page{padding-top:36px}
  .w3-error-inner{width:calc(100% - 40px)}
  .w3-error-hero{padding:56px 0}
  .w3-error-next{padding:42px 0}
  .w3-error-hero p{font-size:16px}
  .page-error-r4 .w3-error-hero h1{font-size:36px}
}
@media(prefers-reduced-motion:reduce){
  .w3-portfolio-card__cta,.w3-pricing__corporate,.w3-pricing__corporate:before{transition:none!important}
  .w3-portfolio-card .project-picture img{clip-path:none!important}
  .w3-pricing__corporate:hover,.w3-portfolio-card:hover .w3-portfolio-card__cta{translate:none}
}
