/* WOM refinement — 19 October 2026. Isolated from the legacy theme rules. */
:root { --wom-ref-ink:#24222d; --wom-ref-soft:#f7f7f7; --wom-ref-mist:#eeebf2; --wom-ref-purple:#492c8d; --wom-ref-rule:#dad5e1; }
body.wom-redesign .wom-main { background:#f7f7f7; }
body.wom-redesign .wom-refined .wom-page-hero { min-height:unset; padding:clamp(88px,9vw,142px) 0 clamp(60px,7vw,110px); background:#201c2a; color:#fff; position:relative; overflow:hidden; }
body.wom-redesign .wom-refined .wom-page-hero:after { content:""; position:absolute; width:min(36vw,470px); aspect-ratio:1; top:-100px; right:-40px; border:1px solid rgba(255,255,255,.17); transform:rotate(30deg); pointer-events:none; box-shadow:0 0 0 45px rgba(255,255,255,.015),0 0 0 110px rgba(255,255,255,.01); }
body.wom-redesign .wom-refined .wom-page-hero h1 { max-width:1000px; color:#fff; line-height:.96; font-size:clamp(54px,7vw,116px); }
body.wom-redesign .wom-refined .wom-page-hero h1 span { color:#d8cbff; }
body.wom-redesign .wom-refined .wom-page-hero .wom-page-hero__lede { color:#f1eef6; max-width:790px; font-size:clamp(16px,1.6vw,20px); line-height:1.65; }
body.wom-redesign .wom-refined .wom-page-hero .wom-btn { margin-top:26px; }
body.wom-redesign .wom-refined .wom-section--light { background:#f8f8f7; color:var(--wom-ref-ink); }
body.wom-redesign .wom-refined .wom-section--soft,
body.wom-redesign .wom-section--soft { background:var(--wom-ref-mist); color:var(--wom-ref-ink); padding:clamp(65px,7vw,110px) 0; }
body.wom-redesign .wom-refined h2,body.wom-redesign .wom-refined h3 { color:#27212f; }
body.wom-redesign .wom-refined p { font-size:clamp(15px,1.22vw,18px); line-height:1.8; }
body.wom-redesign .wom-refined .wom-kicker { letter-spacing:.13em; }
.wom-editorial-heading { display:grid; grid-template-columns:minmax(200px,1fr) minmax(260px,1.2fr); gap:10px 50px; align-items:start; margin:0 0 36px; }
.wom-editorial-heading .wom-kicker { grid-column:1/-1; color:#65468d; }
.wom-editorial-heading h2 { margin:0; font:700 clamp(40px,4.5vw,70px)/.98 var(--wom-display); text-transform:uppercase; }
.wom-editorial-heading>p { margin:0; max-width:640px; }
.wom-service-editorial { padding:clamp(65px,7vw,115px) 0; }
.wom-service-editorial__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--wom-ref-rule); border:1px solid var(--wom-ref-rule); }
.wom-service-detail { padding:clamp(22px,2.6vw,43px); background:#fff; min-width:0; position:relative; }
.wom-service-detail__icon { display:grid; place-items:center; width:75px; height:75px; border:1px solid #d4c9e5; color:#492c8d; font:700 14px var(--wom-body); margin:0 0 32px; background:linear-gradient(135deg,transparent 48%,#e9e3f0 49%,#e9e3f0 51%,transparent 52%); }
.wom-service-detail__icon { width:92px;height:92px;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;background:#f8f6fb;border-color:#d5cbe1; }
.wom-service-detail__icon svg {display:block;width:43px;height:43px;flex:0 0 auto;color:#492c8d;}
.wom-service-detail__icon small {display:block;font:700 9px/1 var(--wom-body);letter-spacing:.11em;color:#60458c;}
.wom-service-detail h3 { font:700 clamp(29px,2.5vw,42px)/1.04 var(--wom-display); text-transform:uppercase; margin:0 0 18px; }
.wom-service-detail p { margin:0 0 24px; color:#494751; }
.wom-service-detail__output { padding-top:18px; border-top:1px solid #e5e1e9; font-size:13px!important; line-height:1.7!important; }
.wom-service-detail__output strong { display:block; color:#492c8d; text-transform:uppercase; font-size:11px; letter-spacing:.1em; margin:0 0 5px; }
.wom-services-workflow__grid,.wom-about-story,.wom-about-approach,.wom-home-intro__grid { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:50px; }
.wom-services-workflow h2,.wom-about-story h2,.wom-about-approach h2,.wom-home-intro h2 { font:700 clamp(42px,5vw,77px)/1.02 var(--wom-display); text-transform:uppercase; margin:15px 0; }
.wom-about-story>div:nth-child(2) p:first-child { font-size:clamp(19px,2vw,25px); line-height:1.55; color:#312a38; }
.wom-sector-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; }
.wom-sector-grid article { padding:25px; border-top:3px solid #674ba7; background:#fff; }
.wom-sector-grid strong { color:#6b53a1; font:700 13px var(--wom-body); }
.wom-sector-grid h3 { font:700 29px/1.1 var(--wom-display); text-transform:uppercase; margin:23px 0 12px; }
.wom-sector-grid p { font-size:14px!important; }
.wom-portfolio-archive { max-width:1380px; margin:auto; }
.wom-portfolio-row { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr); min-height:340px; border-top:1px solid #d7d2dd; margin-bottom:25px; background:#fff; }
.wom-portfolio-row__media { display:flex; align-items:center; justify-content:center; overflow:hidden; min-height:290px; background:#e8e6ed; }
.wom-portfolio-row__media img { width:100%; height:100%; min-height:290px; object-fit:cover; transition:transform .25s ease; }
.wom-portfolio-row__media:hover img { transform:scale(1.025); }
.wom-portfolio-row__monogram { font:700 clamp(80px,14vw,200px)/1 var(--wom-display); color:#9688ac; }
.wom-portfolio-row__copy { padding:clamp(30px,4vw,65px); display:flex; flex-direction:column; justify-content:center; }
.wom-portfolio-row__copy h3 { font:700 clamp(36px,4vw,65px)/1 var(--wom-display); text-transform:uppercase; margin:20px 0 12px; }
.wom-portfolio-row__copy h3 a { color:#292233; text-decoration:none; }
.wom-portfolio-row__copy p { max-width:490px; color:#66616a; }
.wom-portfolio-row__copy .wom-text-link { align-self:start; margin-top:18px; }
.wom-portfolio-row__links {display:flex; flex-wrap:wrap; align-items:center; gap:15px 25px; margin-top:18px;}
.wom-portfolio-row__links .wom-text-link {margin-top:0;}
.wom-portfolio-row__external {display:inline-flex;align-items:center;gap:8px; padding:10px 0; border-bottom:1px solid #9a83b9; color:#543285!important; font:700 12px/1.35 var(--wom-body); text-decoration:none!important;}
.wom-portfolio-row__external:hover {color:#302046!important;border-bottom-color:#302046;}
.wom-portfolio-row__external:focus-visible {outline:2px solid #68449b;outline-offset:4px;}
.wom-portfolio-detail__grid { display:grid; grid-template-columns:minmax(0,1fr) 240px; gap:clamp(30px,5vw,85px); }
.wom-portfolio-detail__body { width:100%; max-width:none; min-width:0; font:400 17px/1.8 var(--wom-body); }
.wom-portfolio-detail__body .vc_row,.wom-portfolio-detail__body .vc_column-inner { margin-left:0!important; margin-right:0!important; padding-left:0!important; padding-right:0!important; max-width:100%!important; }
.wom-portfolio-detail__body img { display:block; height:auto; max-width:100%; width:auto; border:1px solid #ded9e3; }
.wom-portfolio-detail__body h2,.wom-portfolio-detail__body h3 { margin-top:34px; }
.wom-portfolio-detail__body ul { padding-left:24px; margin:20px 0 32px; }
.wom-portfolio-detail__body li { margin-bottom:11px; }
.wom-portfolio-detail__aside { border-left:1px solid #ded9e3; padding:5px 0 0 28px; align-self:start; position:sticky; top:130px; }
.wom-portfolio-detail__aside p { font-size:14px; }
.wom-home-intro { overflow:hidden; }
body.wom-redesign .wom-home-intro + .wom-section--dark { background:#f8f7fa; color:#24222d; }
body.wom-redesign .wom-home-intro + .wom-section--dark .wom-section-head h2 { color:#26222d; }
body.wom-redesign .wom-home-intro + .wom-section--dark .wom-section-head>p { color:#4b4950; }
body.wom-redesign .wom-home-intro + .wom-section--dark .wom-kicker { color:#563d86; }
body.wom-redesign .wom-home-intro + .wom-section--dark .wom-process__step { color:#26222d; border-color:#dcd8e2; }
body.wom-redesign .wom-home-intro + .wom-section--dark .wom-process__step p { color:#50505a; }
.wom-home-product__media--technical { display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; gap:10px; min-height:280px; padding:35px; background:repeating-linear-gradient(0deg,transparent,transparent 36px,rgba(255,255,255,.08) 37px),repeating-linear-gradient(90deg,transparent,transparent 36px,rgba(255,255,255,.08) 37px),#422b70!important; color:#fff; }
.wom-home-product__media--technical strong,.wom-home-product__media--technical span { color:#fff!important; position:relative; }
body.wom-redesign a.wom-btn--dark,body.wom-redesign a.wom-btn--primary,body.wom-redesign button.wom-btn--primary,body.wom-redesign .wom-header__cta { color:#fff!important; }
body.wom-redesign .wom-btn--dark *,body.wom-redesign .wom-btn--primary * { color:inherit; }
body.wom-redesign .wom-mps .wom-configurator .wom-btn--primary { color:#fff!important; }
body.wom-redesign .wom-mps-hero h1,body.wom-redesign .wom-account-hero h1 { color:#fff; }
body.wom-redesign .wom-mps-hero p,body.wom-redesign .wom-account-hero p { color:#e8e3ef; }
body.wom-redesign .wom-mps-support .wom-section--dark *,body.wom-redesign .wom-mps-manual .wom-section--dark * { color:#f7f5ff; }
body.wom-redesign .wom-account-shell { background:#f7f7f7; padding:clamp(40px,5vw,78px) 0 110px; }
body.wom-redesign .wom-account-shell>.wom-shell { max-width:1140px; }
body.wom-redesign .wom-account-hero { padding-bottom:clamp(55px,6vw,90px); }
body.wom-redesign .wom-account-woo { max-width:100%; min-width:0; margin:0 auto 40px; }
body.wom-redesign .wom-account-woo .woocommerce { display:block; min-width:0; width:100%; overflow-wrap:anywhere; }
body.wom-redesign .wom-account-woo .woocommerce form { width:100%; box-sizing:border-box; max-width:100%; }
body.wom-redesign .wom-account-woo input:not([type="checkbox"]):not([type="radio"]) { max-width:100%; box-sizing:border-box; min-height:45px; }
body.wom-redesign .wom-account-woo .woocommerce form .form-row { float:none; max-width:100%; width:100%; }
body.wom-redesign .wom-account-woo .woocommerce form .form-row-first,body.wom-redesign .wom-account-woo .woocommerce form .form-row-last { width:100%; }
body.wom-redesign .wom-account-woo .woocommerce-ResetPassword { max-width:700px; margin:0 auto; }
body.wom-redesign .wom-account-woo .woocommerce-ResetPassword p { line-height:1.75; }
body.wom-redesign .wom-account-woo .wfls-2fa-form,body.wom-redesign .wom-account-woo .wfls-2fa-input { opacity:1!important; visibility:visible!important; }
/* Prevent login and registration cards from stretching into the support block. */
body.wom-redesign .wom-account-woo .woocommerce form.login,
body.wom-redesign .wom-account-woo .woocommerce form.register {
  min-height:0!important;
  height:auto!important;
}
body.wom-redesign .wom-account-woo .u-columns { align-items:start!important; }
body.wom-redesign .wom-account-woo { margin-bottom:clamp(45px,6vw,86px)!important; }
body.wom-redesign .wom-portal-help { position:relative;clear:both; margin-top:38px!important; }

body.wom-redesign .wom-portal-summary { gap:18px; margin-bottom:35px; }
body.wom-redesign .wom-portal-summary article { min-width:0; overflow-wrap:anywhere; }
body.wom-redesign .wom-portal-help { margin-top:46px; }
body.wom-redesign .wom-contact-routing select { min-height:48px; font-size:14px; }
body.wom-redesign .wom-contact-specialist { background:#f7f7f7; }
body.wom-redesign .wom-cta h2 { color:#fff; }
@media(max-width:1024px){
.wom-service-editorial__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.wom-sector-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.wom-editorial-heading { grid-template-columns:1fr; }
}
@media(max-width:767px){
body.wom-redesign .wom-refined .wom-page-hero { padding:90px 0 60px; }
.wom-service-editorial__grid,.wom-sector-grid,.wom-services-workflow__grid,.wom-about-story,.wom-about-approach,.wom-home-intro__grid,.wom-portfolio-row,.wom-portfolio-detail__grid { grid-template-columns:1fr; }
.wom-portfolio-row__media { min-height:200px; }
.wom-portfolio-row__media img { min-height:200px; }
.wom-portfolio-row__copy { padding:28px 22px 34px; }
.wom-portfolio-detail__aside { position:static; border-left:0; border-top:1px solid #ded9e3; padding:25px 0; }
.wom-refined .wom-editorial-heading { gap:18px; }
body.wom-redesign .wom-mps-licence-builder { display:none!important; }
body.wom-redesign .wom-mps .wom-hero__actions a[href="#configure"] { display:none!important; }
body.wom-redesign .wom-mps-mobile-licence { display:block; padding:24px; margin:20px auto; background:#f3f0f7; color:#282031; border-left:4px solid #492c8d; }
body.wom-redesign .wom-mps-mobile-licence h2 { color:#282031; font-size:25px; }
body.wom-redesign .wom-mps-mobile-licence p { color:#332b3f; }
body.wom-redesign .wom-account-hero h1 { font-size:clamp(58px,13vw,98px); }
body.wom-redesign .wom-account-woo .woocommerce .u-columns { display:block; }
body.wom-redesign .wom-account-woo .woocommerce .u-column1,body.wom-redesign .wom-account-woo .woocommerce .u-column2 { width:100%; float:none; margin-bottom:30px; }
}
body.wom-redesign .wom-contact-specialist { position:relative; isolation:isolate; overflow:hidden; }
body.wom-redesign .wom-contact-specialist:before { content:""; width:clamp(100px,20vw,320px); aspect-ratio:1; border:2px solid rgba(73,44,141,.13); transform:rotate(28deg); position:absolute; left:-150px; bottom:-130px; z-index:-1; pointer-events:none; }
body.wom-redesign .wom-contact-specialist:after { content:""; width:160px; height:160px; border:1px solid rgba(73,44,141,.12); position:absolute; top:16px; right:4%; transform:rotate(-22deg); pointer-events:none; z-index:-1; }
body.wom-redesign .wom-signin-support { background:#eeebf3; border-left:4px solid #492c8d; padding:19px 22px; margin:0 0 24px; color:#26222c; }
body.wom-redesign .wom-signin-support strong { font-size:15px; display:block; margin-bottom:5px; }
body.wom-redesign .wom-signin-support p { font-size:13px; line-height:1.7; margin:0; color:#443d4a; }
body.wom-redesign .wom-signin-support a { color:#442485; text-decoration:underline; font-weight:700; }
body.wom-redesign .wom-product-roadmap--catalogue { background:#eae6f1; color:#27212f; }
body.wom-redesign .wom-product-roadmap--catalogue h2 { color:#292236; }
body.wom-redesign .wom-product-roadmap--catalogue p { color:#3d3546; font-size:clamp(14px,1.25vw,17px); line-height:1.75; }
body.wom-redesign .wom-mps-support .wom-section--dark,body.wom-redesign .wom-mps-manual .wom-section--dark { color:#fff; }
body.wom-redesign .wom-mps-support .wom-section--dark a,body.wom-redesign .wom-mps-manual .wom-section--dark a { color:#fff; }
/* Wordfence 2FA styling is controlled by active WPCode snippet #5182; no duplicate rules in this theme. */
/* Portfolio v2 — project imagery is sourced from already-published project media. */
body.wom-redesign .wom-case-study .wom-page-hero {
 background: #211c2c;
 padding:clamp(100px,10vw,170px) 0 clamp(60px,7vw,100px);
}
.wom-case-study__hero .wom-shell {position:relative;z-index:1;}
.wom-case-study__back {
 display:inline-flex; padding:9px 0;
 margin:0 0 35px; border-bottom:1px solid rgba(255,255,255,.5);
 font-size:12px;letter-spacing:.08em;text-transform:uppercase;
 color:#fff!important;text-decoration:none;
}
body.wom-redesign .wom-case-study__hero h1 {
 max-width:1050px;
 font-size:clamp(64px,9vw,155px);
 line-height:.87;
 margin:15px 0 32px;
 color:#fff;
}
.wom-case-study__sector {
 color:#eee8fc!important;
 font-size:clamp(16px,1.6vw,22px)!important;
 font-weight:600;line-height:1.5!important;
}
body.wom-redesign .wom-case-study__introduction {
 padding:clamp(60px,7vw,125px) 0;
 background:#faf9fb;
}
.wom-case-study__intro-grid {
 display:grid;
 grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
 gap:clamp(30px,5vw,100px);
 align-items:start;
}
body.wom-redesign .wom-case-study__intro-grid h2 {
 font:700 clamp(45px,5vw,84px)/.98 var(--wom-display);
 text-transform:uppercase;
 margin:17px 0 0;
 color:#27212f;
}
.wom-case-study__lead {
 font-size:clamp(19px,2.25vw,27px)!important;
 line-height:1.6!important;
 color:#302a37!important;
 margin:0 0 30px!important;
}
.wom-case-study__tags {display:flex;gap:9px;flex-wrap:wrap;margin-top:29px;}
.wom-case-study__tags span {
 padding:10px 15px;border:1px solid #ddd5e5;
 color:#4b367d;background:#fff;
 font:700 11px/1.2 var(--wom-body);
 letter-spacing:.04em;
}
.wom-case-study__gallery-section {padding:clamp(58px,6.8vw,108px) 0;background:#f1eef5;}
.wom-case-study__gallery-section--drawing {background:#fff;}
.wom-case-study__gallery-head {
 display:grid;
 grid-template-columns:1fr minmax(200px,330px);
 align-items:end;
 gap:25px; border-bottom:1px solid #cec6d9; padding:0 0 30px; margin:0 0 28px;
}
.wom-case-study__gallery-head h2 {
 color:#28222e;
 font:700 clamp(46px,5.1vw,83px)/.94 var(--wom-display);
 text-transform:uppercase;
 margin:17px 0 0;
}
.wom-case-study__gallery-head p {
 color:#55505d!important;
 margin:0;font-size:15px!important;line-height:1.6!important;
}
.wom-case-study__gallery{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 gap:18px;
}
.wom-case-study__gallery-item {
 min-width:0;
 border:1px solid #ddd8e3;
 background:#fff;
 margin:0;display:flex;flex-direction:column;
 overflow:hidden;
}
.wom-case-study__gallery-item:first-child:nth-last-child(odd){
 grid-column:span 2;
}
.wom-case-study__gallery-item a {
 display:flex;align-items:center;justify-content:center;
 min-height:300px;
 width:100%;flex:1;
 background:linear-gradient(145deg,#f8f7fa,#edeaf1);
}
.wom-case-study__gallery-item img {
 width:100%;height:100%;max-height:550px;min-height:270px;object-fit:contain;
 display:block;transition:transform .2s ease;
}
.wom-case-study__gallery-item a:hover img {transform:scale(1.018);}
.wom-case-study__gallery-item figcaption {
 padding:15px 20px;
 font:700 11px/1.3 var(--wom-body);
 text-transform:uppercase;letter-spacing:.1em;
 border-top:1px solid #e6e2e9;
 color:#5d4d6b;
}
.wom-case-study__end {
 background:#e9e5f0;padding:clamp(45px,5vw,75px) 0;
}
.wom-case-study__end .wom-shell{
 display:flex;justify-content:space-between;align-items:center;gap:35px;
}
.wom-case-study__end h2 {
 font:700 clamp(40px,4.3vw,68px)/1 var(--wom-display);
 text-transform:uppercase;color:#2e2839;margin:13px 0 0;
}
body.wom-redesign .wom-case-study .wom-cta h2 {color:#fff;}
/* Carnator: verifiable project link / editorial proof-of-work panel */
.wom-case-study__real-world {
  position:relative; overflow:hidden; padding:clamp(65px,8vw,132px) 0;
  background:#25202f; color:#f7f4ff;
}
.wom-case-study__real-world::before {
  content:""; position:absolute; width:390px; height:390px;
  border:1px solid rgba(230,222,255,.10); transform:rotate(29deg);
  top:-185px;left:-170px; pointer-events:none;
}
.wom-case-study__real-grid {
  position:relative; display:grid; grid-template-columns:minmax(0,1.18fr) minmax(310px,.82fr);
  align-items:stretch; gap:clamp(32px,7vw,118px);
}
.wom-case-study__real-story {padding:10px 0;}
.wom-case-study__real-story>.wom-kicker {
  color:#cebbfc; letter-spacing:.16em; font-weight:700;
}
body.wom-redesign .wom-case-study__real-world h2 {
  margin:24px 0 32px; color:#fff; text-transform:uppercase;
  font:700 clamp(58px,6.5vw,105px)/.91 var(--wom-display);
  letter-spacing:-.014em;
}
body.wom-redesign .wom-case-study__real-world h2 span {color:#bea8ed;}
body.wom-redesign .wom-case-study__real-world p {
  max-width:640px; font-size:clamp(16px,1.3vw,19px); line-height:1.75;
  color:#e9e4f3; margin:0 0 22px;
}
body.wom-redesign .wom-case-study__real-world .wom-case-study__real-lead {
  font-size:clamp(20px,1.8vw,26px); font-weight:500; color:#fff; line-height:1.53;
  margin-bottom:22px;
}
.wom-case-study__real-button {
  margin-top:23px; display:inline-flex; align-items:center; justify-content:space-between;
  gap:25px; padding:18px 22px; min-height:58px;
  background:#683da7; border:1px solid #8766ba; color:#fff!important;
  font:700 13px/1.3 var(--wom-body); letter-spacing:.025em;
  text-decoration:none!important; transition:background .18s ease;
}
.wom-case-study__real-button:hover,.wom-case-study__real-button:focus-visible {background:#7b50ba;}
.wom-case-study__real-button:focus-visible {outline:3px solid #e3d3ff;outline-offset:3px;}
.wom-case-study__real-button span {font-size:24px;line-height:1;}
.wom-case-study__real-story>small {
 display:block; margin-top:13px; font:500 11px/1.5 var(--wom-body);
 color:#d6cbe4; letter-spacing:.05em;
}
.wom-case-study__real-proof {
  background:#f6f3fa; color:#2e2735; align-self:stretch;
  display:flex; flex-direction:column; padding:clamp(27px,3.3vw,52px);
  box-shadow:17px 17px 0 rgba(255,255,255,.055); min-width:0;
}
.wom-case-study__real-proof-eyebrow {
  font:800 11px/1.3 var(--wom-body);letter-spacing:.17em;
  color:#5e4387; margin-bottom:27px;
}
.wom-case-study__real-stage {
  display:grid; grid-template-columns:44px minmax(0,1fr);
  gap:15px; padding:24px 0; border-top:1px solid #d9d0e2;
}
.wom-case-study__real-stage>span {
  color:#714c9d; font:700 25px/1 var(--wom-display);
}
.wom-case-study__real-stage strong {
  display:block; font:700 clamp(20px,1.9vw,27px)/1 var(--wom-display);
  color:#302438; margin-bottom:9px; letter-spacing:.01em;
}
body.wom-redesign .wom-case-study__real-stage p {
  color:#52485d; font:500 13px/1.65 var(--wom-body); margin:0;
}
.wom-case-study__real-signature {
  border-top:1px solid #d9d0e2; margin-top:auto; padding-top:24px;
  display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
}
.wom-case-study__real-signature>span {
  font:700 10px/1.3 var(--wom-body);letter-spacing:.1em;color:#685878;
}
.wom-case-study__real-signature strong {
  font:700 17px/1.2 var(--wom-body);color:#4c3077;
}
@media(max-width:900px){
 .wom-case-study__real-grid {grid-template-columns:1fr;}
 .wom-case-study__real-proof {max-width:100%;box-shadow:none;}
}
@media(max-width:767px){
 .wom-case-study__real-world {padding:65px 0;}
 .wom-case-study__real-button {width:100%;box-sizing:border-box;}
}
@media(max-width:767px){
 .wom-case-study__intro-grid,.wom-case-study__gallery-head{
  grid-template-columns:1fr;
 }
 .wom-case-study__gallery{grid-template-columns:1fr;gap:14px;}
 .wom-case-study__gallery-item:first-child:nth-last-child(odd){grid-column:span 1;}
 .wom-case-study__gallery-item a{min-height:210px;}
 .wom-case-study__gallery-item img{min-height:200px;}
 .wom-case-study__end .wom-shell{align-items:start;flex-direction:column;}
}

@media(min-width:768px){body.wom-redesign .wom-mps-mobile-licence { display:none;}}

/* =============================================================
   WOM 2026-10-19 — Site-wide accessible button contrast
   Filled controls: light text on solid dark purple/charcoal/red.
   Light controls: dark text on explicit light background.
   Outline controls adapt to light/dark sections.
   Wordfence challenge remains in separate live WPCode snippet.
   ============================================================= */
body.wom-redesign {
  --wom-button-purple: #492c8d;
  --wom-button-purple-hover: #362067;
  --wom-button-ink: #24202e;
  --wom-button-red: #c52222;
  --wom-button-red-hover: #a61717;
  --wom-button-light: #f8f5ff;
}

/* Reset opacity/white-on-white leakage, without overriding icons as layout. */
body.wom-redesign .wom-btn {
  text-decoration:none;
  font-weight:700;
  line-height:1.4;
}
body.wom-redesign :is(a,button,input).wom-btn--primary,
body.wom-redesign .wom-btn--primary,
body.wom-redesign .wom-header__cta {
  background:var(--wom-button-purple)!important;
  border-color:var(--wom-button-purple)!important;
  color:#fff!important;
}
body.wom-redesign :is(a,button,input).wom-btn--primary:hover,
body.wom-redesign .wom-btn--primary:hover,
body.wom-redesign .wom-header__cta:hover {
  background:var(--wom-button-purple-hover)!important;
  border-color:var(--wom-button-purple-hover)!important;
  color:#fff!important;
}
body.wom-redesign .wom-btn--primary :is(span,strong,i,svg),
body.wom-redesign .wom-header__cta :is(span,strong,i,svg) {
  color:inherit!important;
}
body.wom-redesign .wom-btn--dark {
  background:var(--wom-button-ink)!important;
  border-color:var(--wom-button-ink)!important;
  color:#fff!important;
}
body.wom-redesign .wom-btn--dark:hover {
  background:#44325b!important;
  border-color:#44325b!important;
  color:#fff!important;
}
/* Preserve the high-contrast inverse treatment on violet panels. */
body.wom-redesign .wom-section--accent .wom-btn--dark {
  background:#fff!important;
  border-color:#fff!important;
  color:#35205d!important;
}
body.wom-redesign .wom-section--accent .wom-btn--dark:hover {
  background:#241c35!important;
  border-color:#241c35!important;
  color:#fff!important;
}
body.wom-redesign .wom-section--accent .wom-btn--dark :is(span,strong,i,svg) {
  color:inherit!important;
}

/* Send-us-your-scope red call to action, distinct from purple product CTAs. */
body.wom-redesign .wom-btn--scope,
body.wom-redesign a.wom-btn--scope,
body.wom-redesign button.wom-btn--scope {
  background:var(--wom-button-red)!important;
  border-color:var(--wom-button-red)!important;
  color:#fff!important;
}
body.wom-redesign .wom-btn--scope:hover {
  background:var(--wom-button-red-hover)!important;
  border-color:var(--wom-button-red-hover)!important;
  color:#fff!important;
}

/* Outline contrast must not depend on inherited text/background. */
body.wom-redesign .wom-btn--outline-dark {
  color:#251d30!important;
  background:#fff!important;
  border:1px solid #665778!important;
}
body.wom-redesign .wom-btn--outline-dark:hover {
  color:#fff!important;
  background:#492c8d!important;
  border-color:#492c8d!important;
}
body.wom-redesign :is(.wom-hero,.wom-mps-hero,.wom-calc-hero,.wom-tools-hero,.wom-account-hero,.wom-bgv11-head,.wom-section--dark,.wom-cta,.wom-case-study__real-world) .wom-btn--outline-dark {
  color:#fff!important;
  border-color:#e7dcff!important;
  background:transparent!important;
}
body.wom-redesign :is(.wom-hero,.wom-mps-hero,.wom-calc-hero,.wom-tools-hero,.wom-account-hero,.wom-bgv11-head,.wom-section--dark,.wom-cta,.wom-case-study__real-world) .wom-btn--outline-dark:hover {
  color:#2c2142!important;
  border-color:#fff!important;
  background:#fff!important;
}
/* Contrast for the transparent secondary CTA on hero backgrounds. */
body.wom-redesign .wom-btn--ghost {
  color:#291d3f!important;
  background:#fff!important;
  border:1px solid #dfd5ea!important;
}
body.wom-redesign .wom-btn--ghost:hover {
  color:#fff!important;
  background:#492c8d!important;
  border-color:#492c8d!important;
}
body.wom-redesign :is(.wom-hero,.wom-mps-hero,.wom-calc-hero,.wom-tools-hero,.wom-page-hero,.wom-account-hero,.wom-section--dark) .wom-btn--ghost {
  color:#fff!important;
  background:rgba(29,22,41,.72)!important;
  border-color:rgba(240,230,255,.84)!important;
}
body.wom-redesign :is(.wom-hero,.wom-mps-hero,.wom-calc-hero,.wom-tools-hero,.wom-page-hero,.wom-account-hero,.wom-section--dark) .wom-btn--ghost:hover {
  color:#2b2140!important;
  background:#fff!important;
  border-color:#fff!important;
}
/* MPS dark-section text rule must never override light-button text. */
body.wom-redesign :is(.wom-mps-support,.wom-mps-manual) .wom-section--dark .wom-btn--outline-dark:hover,
body.wom-redesign :is(.wom-mps-support,.wom-mps-manual) .wom-section--dark .wom-btn--ghost:hover {
  color:#2b2140!important;
}
body.wom-redesign .wom-btn--disabled,
body.wom-redesign .wom-btn[disabled],
body.wom-redesign .wom-btn[aria-disabled="true"] {
  background:#e1dee6!important;
  border-color:#beb8c8!important;
  color:#49414f!important;
  cursor:not-allowed;
  box-shadow:none;
}

/* Website conversion and contact controls */
body.wom-redesign .wom-contact-grid__form :is(input[type=submit],button[type=submit],.wpcf7-submit),
body.wom-redesign :is(.wom-contact-grid__form,.wom-contact-routing) .wpcf7-submit {
  background:#492c8d!important;
  border:1px solid #492c8d!important;
  color:#fff!important;
  min-height:46px;
  font-weight:700!important;
  opacity:1;
}
body.wom-redesign .wom-contact-grid__form :is(input[type=submit],button[type=submit],.wpcf7-submit):hover {
  background:#362067!important;
  border-color:#362067!important;
  color:#fff!important;
}
body.wom-redesign .wom-product-filter-reset {
  background:#fff!important;
  color:#372453!important;
  border:1px solid #8f7aaa!important;
}
body.wom-redesign .wom-product-filter-reset:hover {
  background:#492c8d!important;
  border-color:#492c8d!important;
  color:#fff!important;
}

/* WooCommerce buttons, including Cart and Checkout Blocks. */
body.wom-redesign .woocommerce :is(button.button,a.button,input.button,.button.alt,.single_add_to_cart_button),
body.wom-redesign .woocommerce-page :is(button.button,a.button,input.button,.button.alt,.single_add_to_cart_button),
body.wom-redesign .wc-block-components-button:not(.is-link),
body.wom-redesign .wp-block-woocommerce-cart .wc-block-components-button:not(.is-link),
body.wom-redesign .wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link) {
  background:#492c8d!important;
  border:1px solid #492c8d!important;
  color:#fff!important;
  text-shadow:none!important;
  opacity:1;
  box-shadow:none;
}
body.wom-redesign .woocommerce :is(button.button,a.button,input.button,.button.alt,.single_add_to_cart_button):hover,
body.wom-redesign .woocommerce-page :is(button.button,a.button,input.button,.button.alt,.single_add_to_cart_button):hover,
body.wom-redesign .wc-block-components-button:not(.is-link):hover {
  background:#362067!important;
  border-color:#362067!important;
  color:#fff!important;
}
body.wom-redesign .wc-block-components-button:not(.is-link) :is(span,strong,div),
body.wom-redesign .woocommerce :is(button.button,a.button,input.button) :is(span,strong) {
  color:inherit!important;
}
body.wom-redesign .woocommerce :is(button.button,a.button,input.button):disabled,
body.wom-redesign .woocommerce :is(button.button,a.button,input.button).disabled,
body.wom-redesign .wc-block-components-button:disabled {
  background:#e1dee6!important;
  border-color:#c5bfd0!important;
  color:#49414f!important;
  cursor:not-allowed;
}
body.wom-redesign .wc-block-components-button.is-link {
  color:#44296e!important;
  background:transparent!important;
  border-color:transparent!important;
}
body.wom-redesign .woocommerce-MyAccount-content :is(a:not(.button),.woocommerce-MyAccount-navigation-link a) {
  text-decoration-thickness:1px;
}

/* Additional compact UI controls — selectable state must be visually apparent */
body.wom-redesign .wom-config-summary__term button:not(.is-active) {
  background:#fff!important;
  color:#30243d!important;
}
body.wom-redesign .wom-config-summary__term button.is-active {
  background:#312044!important;
  color:#fff!important;
}
body.wom-redesign .wom-bgv11-modes button:not(.is-active) {
  color:#3d3b43!important;
  background:#f7f8f6!important;
}
body.wom-redesign .wom-bgv11-modes button.is-active {
  background:#27232f!important;
  color:#fff!important;
}
body.wom-redesign :is(.wom-mps-showcase__thumb,.wom-mps-showcase__image-button):focus-visible {
  outline:3px solid #8053ca;
  outline-offset:3px;
}
/* Editorial text links — dark on light; explicitly light on dark. */
body.wom-redesign :is(.wom-section--light,.wom-section--soft,.wom-about-story,.wom-portfolio-row__copy,.wom-services-workflow,.wom-home-intro) .wom-text-link {
  color:#43296e!important;
  border-bottom-color:#74578f!important;
}
body.wom-redesign :is(.wom-hero,.wom-mps-hero,.wom-account-hero,.wom-cta,.wom-section--dark,.wom-tools-hero,.wom-calc-hero) .wom-text-link {
  color:#f9f6ff!important;
  border-bottom-color:#e6daff!important;
}
body.wom-redesign .wom-cta__arrow {
  color:#fff!important;
  background:transparent;
  border-color:rgba(255,255,255,.64)!important;
}
body.wom-redesign .wom-cta__arrow:hover {
  color:#fff!important;
  background:#492c8d!important;
  border-color:#492c8d!important;
}
/* Consistent keyboard discoverability */
body.wom-redesign :is(.wom-btn,.wom-header__cta,.wom-cta__arrow,.wom-text-link,.wom-product-filter-reset,.wpcf7-submit,.woocommerce .button,.wc-block-components-button):focus-visible {
  outline:3px solid #8f6cca!important;
  outline-offset:3px!important;
}
@media (prefers-reduced-motion:reduce) {
  body.wom-redesign :is(.wom-btn,.wom-header__cta,.wom-cta__arrow) {transform:none!important;}
}

