/* EC Workplaces homepage. v4: brand redesign (Outfit + Merriweather, client palette). Scoped under body.ecw */
@font-face{font-family:"Outfit";src:url(fonts/outfit-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Merriweather";src:url(fonts/merriweather-700i.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}

body.ecw{
  /* palette (Colour Pallete.png) */
  --forest:#2b433b; --forest-d:#203530; --sage:#607254; --sage-l:#a3b087; --sand:#e3ddd1; --mist:#ecebe9; --paper:#f5f4f1;
  --ink:#22362f; --muted:#56655d; --line:rgba(43,67,59,.14); --char:#555555;
  --r:18px; --r-s:12px; --wrap:1240px; --gut:clamp(16px,4vw,40px);
  --ease-out:cubic-bezier(.23,1,.32,1); --ease-in-out:cubic-bezier(.77,0,.175,1);
  --sans:"Outfit",system-ui,-apple-system,"Segoe UI",sans-serif; --serif:"Merriweather",Georgia,serif;
  --theme-font-family:var(--sans);
  margin:0; background:var(--mist); color:var(--ink); font-family:var(--sans); font-size:17px; line-height:1.6; font-weight:400;
  -webkit-font-smoothing:antialiased; overflow-x:clip;
}
.ecw *,.ecw *::before,.ecw *::after{box-sizing:border-box}
.ecw .ecw-sec.e-con{--padding-top:0;--padding-bottom:0;--padding-left:0;--padding-right:0;--gap:0;padding:0!important}
.ecw .ecw-sec .elementor-widget-html{width:100%}
.ecw img,.ecw video{max-width:100%;display:block}
.ecw a{color:inherit;text-decoration:none}
.ecw h1,.ecw h2,.ecw h3,.ecw h4,.ecw p,.ecw ul,.ecw ol,.ecw figure{margin:0;padding:0}
.ecw h1,.ecw h2,.ecw h3,.ecw h4,.ecw label,.ecw button,.ecw input,.ecw textarea{font-family:var(--sans)}
.ecw ul,.ecw ol{list-style:none}
.ecw .ic{width:24px;height:24px;flex:none}
.ecw :focus-visible{outline:2px solid var(--sage);outline-offset:3px;border-radius:6px}
.ecw-wrap{width:100%;max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:0 var(--gut)}
.ecw-s{padding:clamp(80px,9vw,128px) 0;position:relative}
.ecw-s.is-light{background:var(--paper)}

/* type */
.ecw .ecw-serif{font-family:var(--serif);font-weight:300;letter-spacing:-.01em;color:var(--sage)}
.ecw .ecw-h1{font-size:clamp(42px,5.6vw,78px);line-height:1.04;font-weight:500;letter-spacing:-.03em;color:#fff;max-width:13ch}
.ecw .ecw-h2{font-size:clamp(32px,4vw,52px);line-height:1.1;font-weight:400;letter-spacing:-.025em;color:var(--ink);max-width:22ch}
.ecw .ecw-lead{font-size:clamp(17px,1.3vw,19px);color:var(--muted);max-width:58ch}
.ecw .ecw-eyebrow{font-size:13px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--sage)}
.ecw .ecw-eyebrow--light{color:var(--sage-l)}
.ecw-sec-head{display:flex;flex-direction:column;gap:18px;margin-bottom:clamp(40px,5vw,64px)}
.ecw-sec-head--center{align-items:center;text-align:center}
.ecw-sec-head--center .ecw-h2{margin:0 auto}

/* buttons: pill, one radius system (pills interactive, 18px cards, 12px inputs) */
.ecw .ecw-btn{display:inline-flex;align-items:center;gap:12px;padding:6px 6px 6px 22px;border-radius:999px;font:500 16px/1 var(--sans);border:0;cursor:pointer;white-space:nowrap;
  transition:transform 160ms var(--ease-out),background-color 200ms ease,color 200ms ease}
.ecw .ecw-btn:active{transform:scale(.97)}
.ecw .ecw-btn__i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;transition:transform 260ms var(--ease-out)}
.ecw .ecw-btn__i .ic{width:18px;height:18px}
.ecw .ecw-btn--forest{background:var(--forest);color:var(--mist)}
.ecw .ecw-btn--forest .ecw-btn__i{background:var(--sage-l);color:var(--forest)}
.ecw .ecw-btn--mist{background:var(--mist);color:var(--forest)}
.ecw .ecw-btn--mist .ecw-btn__i{background:var(--forest);color:var(--mist)}
@media (hover:hover) and (pointer:fine){
  .ecw .ecw-btn:hover .ecw-btn__i{transform:rotate(45deg)}
  .ecw .ecw-btn--forest:hover{background:var(--forest-d)}
  .ecw .ecw-btn--mist:hover{background:#fff}
}
.ecw .ecw-tel{display:inline-flex;align-items:center;gap:10px;font-weight:500;color:var(--forest)}
.ecw .ecw-tel .ic{width:20px;height:20px}
.ecw .ecw-tel span{background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;padding-bottom:2px;transition:background-size 300ms var(--ease-out)}
.ecw .ecw-tel--light{color:var(--mist)}
@media (hover:hover) and (pointer:fine){.ecw .ecw-tel:hover span{background-size:0 1px;background-position:100% 100%}}
.ecw .ecw-more-link{display:inline-flex;align-items:center;gap:8px;font-weight:500;color:var(--sage)}
.ecw .ecw-more-link .ic{width:16px;height:16px;transition:transform 260ms var(--ease-out)}

/* nav: transparent over hero, glass after scroll */
.ecw-nav{position:fixed;top:0;left:0;right:0;z-index:50;padding:14px var(--gut) 0}
.ecw-nav__bar{max-width:var(--wrap);margin:0 auto;height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 10px 0 22px;border-radius:999px;
  border:1px solid transparent;background:transparent;
  transition:background-color 400ms var(--ease-out),border-color 400ms var(--ease-out),box-shadow 400ms var(--ease-out),backdrop-filter 400ms var(--ease-out)}
.ecw-nav.is-glass .ecw-nav__bar{background:rgba(32,53,48,.52);border-color:rgba(236,235,233,.14);
  backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 32px rgba(32,53,48,.16)}
@media (prefers-reduced-transparency:reduce){.ecw-nav.is-glass .ecw-nav__bar{background:var(--forest);backdrop-filter:none;-webkit-backdrop-filter:none}}
.ecw .ecw-nav__logo img{height:30px;width:auto}
.ecw-nav__links{display:flex;gap:34px}
.ecw-nav__links a{color:rgba(236,235,233,.86);font-size:16px;transition:color 200ms ease}
.ecw-nav__links a:hover{color:#fff}
.ecw-nav__cta{display:flex;align-items:center;gap:22px}
.ecw-nav__cta .ecw-tel{font-size:15px}
.ecw-nav__burger{display:none;width:46px;height:46px;border-radius:50%;border:0;background:var(--mist);cursor:pointer;position:relative}
.ecw-nav__burger span{position:absolute;left:14px;right:14px;height:2px;border-radius:2px;background:var(--forest);transition:transform 260ms var(--ease-out)}
.ecw-nav__burger span:first-child{top:19px}.ecw-nav__burger span:last-child{top:26px}
.ecw-nav.is-open .ecw-nav__burger span:first-child{transform:translateY(3.5px) rotate(45deg)}
.ecw-nav.is-open .ecw-nav__burger span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.ecw-nav__sheet{display:none}
.ecw-nav-sentinel{position:absolute;top:0;left:0;width:1px;height:80px;pointer-events:none}

/* hero */
.ecw-hero{min-height:100svh;min-height:100dvh;padding:0;display:flex;align-items:flex-end;overflow:hidden;background:var(--forest-d)}
.ecw-hero__media{position:absolute;inset:0}
.ecw .ecw-hero__video{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.ecw-hero__shade{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(32,53,48,.55) 0%,rgba(32,53,48,0) 28%),
  linear-gradient(0deg,rgba(32,53,48,.88) 0%,rgba(32,53,48,.35) 48%,rgba(32,53,48,.1) 100%),
  linear-gradient(90deg,rgba(32,53,48,.45) 0%,rgba(32,53,48,0) 60%)}
.ecw-hero__inner{position:relative;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding-top:120px;padding-bottom:clamp(44px,6vw,80px)}
.ecw-hero__copy{max-width:760px;display:flex;flex-direction:column;align-items:flex-start}
.ecw .ecw-hero__kicker{font-size:clamp(14px,1.1vw,16px);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--sage-l);margin-bottom:14px}
.ecw .ecw-hero__lead{font-size:clamp(17px,1.4vw,20px);max-width:44ch;color:rgba(236,235,233,.86);margin-top:22px}
.ecw-hero__btns{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:32px}

/* trust badge */
.ecw-trust{flex:none;width:230px;background:#fff;color:var(--ink);border-radius:28px;padding:22px 22px 18px;
  box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 24px 48px rgba(20,34,30,.28)}
.ecw .ecw-trust__big{font-size:56px;font-weight:600;letter-spacing:-.04em;line-height:.95;color:var(--char)}
.ecw .ecw-trust__label{font-size:17px;font-weight:600;line-height:1.2;color:var(--char);margin-top:6px}
.ecw-trust__rule{display:block;height:4px;border-radius:4px;background:var(--sage-l);margin:16px 0 14px}
.ecw-trust__g{display:flex;align-items:center;gap:10px}
.ecw .ecw-trust__g img{width:30px;height:auto}
.ecw-trust__g p{font-size:13px;line-height:1.2;color:var(--muted)}
.ecw .ecw-trust__score{display:flex;align-items:center;gap:6px;margin-top:3px}
.ecw-trust__score b{font-size:16px;color:var(--ink)}
.ecw-trust__stars{display:flex;gap:1px;color:#e7a93a}
.ecw .ic--star{width:14px;height:14px}

/* trusted logos: heading left, two opposing rows right */
.ecw-trusted{padding:clamp(56px,6vw,88px) 0}
.ecw-trusted__grid{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:clamp(32px,4vw,64px);align-items:center}
.ecw .ecw-trusted__h{font-size:clamp(20px,1.7vw,24px);line-height:1.3;font-weight:500;letter-spacing:-.01em;color:var(--ink);max-width:none}
.ecw-logos{display:flex;flex-direction:column;gap:22px;min-width:0;
  -webkit-mask:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.ecw-logos__row{overflow:hidden}
.ecw-logos__track{display:flex;width:max-content}
.ecw-logos__track ul{display:flex;align-items:center;flex:none}
.ecw-logos__track li{flex:none;height:64px;display:flex;align-items:center;justify-content:center;padding:0 clamp(22px,2.4vw,36px)}
.ecw .ecw-logos__track img{height:var(--h);width:auto;max-width:none;object-fit:contain;filter:grayscale(1) contrast(.9);opacity:.62;transition:filter 300ms ease,opacity 300ms ease}
.ecw .ecw-logos__track li:hover img{filter:none;opacity:1}
.ecw-logos__row--left .ecw-logos__track{animation:ecwLeft 46s linear infinite}
.ecw-logos__row--right .ecw-logos__track{animation:ecwRight 52s linear infinite}
@keyframes ecwLeft{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes ecwRight{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}
.ecw-logos:hover .ecw-logos__track,.ecw-logos__row.is-off .ecw-logos__track{animation-play-state:paused}

/* about board: 2x2 brand grid */
.ecw-about{padding-top:0}
.ecw-board{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,minmax(340px,auto));border-radius:var(--r);overflow:hidden}
.ecw-board__t{position:relative;overflow:hidden;min-height:clamp(340px,34vw,480px)}
.ecw-board__t--model{background:var(--sage-l)}
.ecw .ecw-board__t--model img{position:absolute;left:50%;bottom:0;transform:translateX(-50%);height:96%;width:auto;max-width:none;object-fit:contain}
.ecw-board__t--care{background:var(--sand);display:grid;place-items:center;padding:12%}
.ecw .ecw-board__care{width:min(78%,440px);height:auto}
.ecw-board__t--logo{background:var(--sage);display:grid;place-items:center}
.ecw .ecw-board__mark{width:min(54%,320px);height:auto}
.ecw-board__t--copy{background:var(--paper);display:flex;flex-direction:column;justify-content:center;gap:20px;padding:clamp(32px,5vw,72px) clamp(28px,5vw,72px) clamp(32px,5vw,72px) clamp(72px,8vw,120px)}
.ecw .ecw-board__copy{font-size:clamp(22px,2.1vw,30px);line-height:1.32;letter-spacing:-.015em;font-weight:400;color:var(--ink);max-width:24ch}
.ecw .ecw-board__copy .ecw-serif{color:var(--sage)}
.ecw-ring{position:absolute;left:50%;top:50%;width:clamp(120px,12vw,168px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:var(--paper);
  display:grid;place-items:center;box-shadow:0 10px 30px rgba(32,53,48,.12);z-index:2}
.ecw-ring text{font:500 11.5px var(--sans);letter-spacing:.06em;fill:var(--forest)}
.ecw-ring__core{width:38%;aspect-ratio:1;border-radius:50%;background:var(--forest);color:var(--sage-l);display:grid;place-items:center}
.ecw .ecw-ring__core .ic{width:50%;height:50%}
@keyframes ecwSpin{to{transform:rotate(360deg)}}

/* difference */
.ecw-diff__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,96px);align-items:center}
.ecw-diff__media{position:relative;padding:0 16% 16% 0}
.ecw-diff__a{border-radius:var(--r);overflow:hidden;aspect-ratio:1}
.ecw-diff__b{position:absolute;right:0;bottom:0;width:50%;aspect-ratio:1;border-radius:var(--r);overflow:hidden;border:8px solid var(--paper)}
.ecw .ecw-diff__a img,.ecw .ecw-diff__b img{width:100%;height:100%;object-fit:cover}
.ecw-diff__copy{display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.ecw-ticks{display:flex;flex-direction:column;gap:20px;margin:8px 0 12px!important}
.ecw-ticks li{display:flex;gap:16px;align-items:flex-start}
.ecw-ticks .ic{width:44px;height:44px;padding:10px;border-radius:50%;background:var(--sand);color:var(--forest)}
.ecw .ecw-ticks h3{font-size:19px;font-weight:500;letter-spacing:-.01em;margin-bottom:2px}
.ecw-ticks p{color:var(--muted);font-size:16px}
.ecw-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(56px,7vw,96px);border-top:1px solid var(--line)}
.ecw-stat{padding:28px 24px 0 0}
.ecw-stat+.ecw-stat{padding-left:24px;border-left:1px solid var(--line)}
.ecw .ecw-stat__n{font-size:clamp(40px,4.4vw,60px);font-weight:400;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums;color:var(--forest)}
.ecw .ecw-stat__l{color:var(--muted);font-size:15px;margin-top:10px}

/* services: asymmetric */
.ecw-svc__grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}
.ecw-svc__stack{display:grid;gap:20px}
.ecw-svc{display:grid;background:var(--paper);border-radius:var(--r);overflow:hidden;transition:transform 400ms var(--ease-out),box-shadow 400ms var(--ease-out)}
.ecw-svc figure{overflow:hidden}
.ecw .ecw-svc figure img{width:100%;height:100%;object-fit:cover;transition:transform 900ms var(--ease-out)}
.ecw-svc--big{grid-template-rows:1fr auto}
.ecw-svc--big figure{min-height:420px}
.ecw-svc:not(.ecw-svc--big){grid-template-columns:42% 1fr}
.ecw-svc__b{padding:26px 26px 28px;display:flex;flex-direction:column;gap:10px;justify-content:flex-end}
.ecw .ecw-svc h3,.ecw .ecw-person h3,.ecw .ecw-val h3,.ecw .ecw-step h3{font-size:23px;font-weight:500;letter-spacing:-.02em;line-height:1.2}
.ecw-svc__b p{color:var(--muted);font-size:16px}
@media (hover:hover) and (pointer:fine){
  .ecw-svc:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(43,67,59,.1)}
  .ecw-svc:hover figure img,.ecw-person--join:hover figure img{transform:scale(1.04)}
  .ecw-svc:hover .ecw-more-link .ic,.ecw-person--join:hover .ecw-more-link .ic{transform:rotate(45deg)}
}
.ecw-also{display:flex;align-items:center;gap:24px;margin-top:28px}
.ecw-also>p{font-weight:500;white-space:nowrap;color:var(--ink)}
.ecw-also ul{display:flex;flex-wrap:wrap;gap:8px}
.ecw-also li,.ecw-custom li{display:inline-flex;align-items:center;gap:6px;padding:8px 14px 8px 10px;border-radius:999px;background:var(--sand);font-size:15px;color:var(--ink)}
.ecw .ecw-also li .ic,.ecw .ecw-custom li .ic{width:16px;height:16px;color:var(--sage)}

/* values bento: 5 text cells + 1 photo */
.ecw-vals{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto;gap:20px}
.ecw-val{border-radius:var(--r);padding:30px;display:flex;flex-direction:column;gap:10px;min-height:230px}
.ecw-val .ic{width:44px;height:44px;padding:10px;border-radius:50%;margin-bottom:auto}
.ecw-val p{font-size:16px}
.ecw-val--1{background:var(--forest);color:var(--mist)}
.ecw-val--1 .ic{background:var(--sage-l);color:var(--forest)}
.ecw .ecw-val--1 h3{color:#fff}.ecw-val--1 p{color:rgba(236,235,233,.78)}
.ecw-val--photo{grid-row:span 2;padding:0;overflow:hidden;min-height:480px}
.ecw .ecw-val--photo img{width:100%;height:100%;object-fit:cover}
.ecw-val--2{background:var(--sand)}
.ecw-val--3{background:var(--mist)}
.ecw-val--4{background:var(--sage-l)}
.ecw-val--5{background:var(--sand)}
.ecw-val--2 .ic,.ecw-val--3 .ic,.ecw-val--5 .ic{background:var(--paper);color:var(--forest)}
.ecw-val--4 .ic{background:var(--forest);color:var(--sage-l)}
.ecw-val--2 p,.ecw-val--3 p,.ecw-val--5 p{color:var(--muted)}
.ecw-val--4 p{color:var(--forest)}
.ecw-vals{grid-template-areas:"a p b" "c p d" "e e e"}
.ecw-val--1{grid-area:a}.ecw-val--photo{grid-area:p}.ecw-val--2{grid-area:b}.ecw-val--3{grid-area:c}.ecw-val--4{grid-area:d}
.ecw-val--5{grid-area:e;min-height:0;flex-direction:row;align-items:center;gap:20px}
.ecw-val--5 .ic{margin:0}
.ecw-val--5 h3{white-space:nowrap}

/* gallery mosaic */
.ecw-gal{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:repeat(2,clamp(200px,20vw,300px));gap:20px}
.ecw-gal__i{border-radius:var(--r);overflow:hidden}
.ecw-gal__i--1{grid-row:span 2}
.ecw-gal__i--4{grid-column:2 / span 2}
.ecw .ecw-gal__i img{width:100%;height:100%;object-fit:cover}

/* process */
.ecw-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.ecw-step{display:flex;flex-direction:column;gap:10px}
.ecw-step figure{aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;margin-bottom:10px}
.ecw .ecw-step figure img{width:100%;height:100%;object-fit:cover}
.ecw-step:nth-child(even){margin-top:56px}
.ecw .ecw-step__n{font-family:var(--serif);font-weight:300;font-size:22px;color:var(--sage)}
.ecw-step p{color:var(--muted);font-size:16px}

/* proof */
.ecw-proof__head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:clamp(40px,5vw,56px)}
.ecw-proof__head>div{display:flex;flex-direction:column;gap:18px}
.ecw-awards{display:flex;gap:12px;flex:none}
.ecw-awards li{width:104px;height:104px;border-radius:var(--r-s);background:var(--forest);padding:6px;overflow:hidden}
.ecw .ecw-awards img{width:100%;height:100%;object-fit:contain}
.ecw-quotes{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}
.ecw-quote{position:relative;background:var(--paper);border:1.5px dashed rgba(96,114,84,.45);border-radius:var(--r);padding:28px;min-height:210px;display:flex;flex-direction:column;gap:14px}
.ecw-quote__stars{display:flex;gap:2px;color:#c7cbc2}
.ecw-quote p{color:var(--muted);font-style:italic}
.ecw-quote .ecw-quote__who{margin-top:auto;font-style:normal;font-size:14px}
.ecw-quote__flag{position:absolute;top:16px;right:16px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:#f6e7b8;color:#6a5200;padding:4px 10px;border-radius:999px}
.ecw-feedback{margin-top:20px;display:flex;gap:20px;align-items:center;background:var(--sand);border-radius:var(--r);padding:26px 28px}
.ecw-feedback .ic{width:52px;height:52px;padding:13px;border-radius:50%;background:var(--forest);color:var(--sage-l)}
.ecw .ecw-feedback h3{font-size:20px;font-weight:500;margin-bottom:4px}
.ecw-feedback p{color:var(--ink);opacity:.82}

/* promise */
.ecw-promise__grid{display:grid;grid-template-columns:1fr 1.15fr;gap:20px}
.ecw-card{border-radius:var(--r);padding:clamp(28px,3.4vw,44px);display:flex;flex-direction:column;gap:14px;background:var(--mist)}
.ecw-card>.ic{width:52px;height:52px;padding:13px;border-radius:50%;background:var(--paper);color:var(--forest);margin-bottom:12px}
.ecw .ecw-card h3{font-size:clamp(26px,2.5vw,34px);line-height:1.15;font-weight:400;letter-spacing:-.025em}
.ecw-card p{color:var(--muted)}
.ecw-card--forest{background:var(--forest)}
.ecw-card--forest>.ic{background:var(--sage-l)}
.ecw .ecw-card--forest h3{color:#fff}
.ecw .ecw-card--forest p{color:rgba(236,235,233,.78)}
.ecw-custom{margin-top:20px;background:var(--sage);color:var(--mist);border-radius:var(--r);padding:clamp(28px,3.4vw,44px);display:flex;justify-content:space-between;align-items:center;gap:40px}
.ecw .ecw-custom h3{font-size:clamp(23px,2.2vw,30px);font-weight:400;letter-spacing:-.02em;line-height:1.2;color:#fff;margin-bottom:18px}
.ecw-custom ul{display:flex;flex-wrap:wrap;gap:8px}
.ecw .ecw-custom li{background:rgba(236,235,233,.14);color:var(--mist)}
.ecw .ecw-custom li .ic{color:var(--sage-l)}
.ecw-custom__cta{display:flex;flex-direction:column;align-items:flex-start;gap:18px;flex:none}

/* team */
.ecw-team__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ecw-person{display:flex;flex-direction:column;gap:8px}
.ecw-person figure{aspect-ratio:4/4.4;border-radius:var(--r);overflow:hidden;margin-bottom:12px}
.ecw .ecw-person figure img{width:100%;height:100%;object-fit:cover;transition:transform 900ms var(--ease-out)}
.ecw .ecw-person__r{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--sage);font-weight:500}
.ecw-person>p:not(.ecw-person__r){color:var(--muted);font-size:16px}
.ecw-person--join .ecw-more-link{margin-top:6px}

/* cta */
.ecw-cta{padding-top:0}
.ecw-cta__box{border-radius:calc(var(--r) + 8px);background:var(--forest);padding:clamp(32px,5vw,72px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center;color:var(--mist)}
.ecw-cta__copy{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.ecw .ecw-cta__copy .ecw-h2{color:#fff}
.ecw-cta__copy p{color:rgba(236,235,233,.8);max-width:44ch}
.ecw .ecw-cta__addr{font-size:15px;color:rgba(236,235,233,.6)}
.ecw-form{background:var(--paper);color:var(--ink);border-radius:var(--r);padding:clamp(22px,2.6vw,32px);display:flex;flex-direction:column;gap:14px}
.ecw-form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ecw-form label{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:500;color:var(--ink)}
.ecw .ecw-form input,.ecw .ecw-form textarea{font:400 16px/1.4 var(--sans);color:var(--ink);background:#fff;border:1px solid rgba(43,67,59,.22);border-radius:var(--r-s);padding:13px 14px;width:100%;outline:0;
  transition:border-color 200ms ease,box-shadow 200ms ease}
.ecw .ecw-form input:focus,.ecw .ecw-form textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(96,114,84,.18)}
.ecw .ecw-form [aria-invalid="true"]{border-color:#a3412d}
.ecw-form .ecw-btn{align-self:flex-start;margin-top:4px}
.ecw-form__err{font-size:14px;color:#a3412d}
.ecw-form__note{font-size:15px;color:var(--sage)}

/* footer */
.ecw-foot{background:var(--forest-d);color:rgba(236,235,233,.72);padding:clamp(64px,7vw,96px) 0 28px}
.ecw-foot__top{display:grid;grid-template-columns:1.4fr 1fr 1.3fr 1.3fr;gap:40px;padding-bottom:56px}
.ecw-foot__brand{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.ecw .ecw-foot__brand img{height:44px;width:auto}
.ecw-foot__brand p{max-width:34ch;font-size:16px}
.ecw .ecw-foot h4{color:#fff;font-size:16px;font-weight:500;margin-bottom:18px}
.ecw-foot ul{display:flex;flex-direction:column;gap:10px;font-size:16px}
.ecw-foot a{transition:color 200ms ease}
.ecw-foot a:hover{color:#fff}
.ecw-foot__areas{display:grid!important;grid-template-columns:1fr 1fr;gap:8px 16px!important}
.ecw-foot__bot{display:flex;justify-content:space-between;gap:20px;padding-top:24px;border-top:1px solid rgba(236,235,233,.12);font-size:14px}

/* ---------- motion (Emil): ease-out entrances, transform/opacity/clip-path only ---------- */
.ecw .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
.ecw .wi{display:inline-block;will-change:transform}
.ecw-motion .ecw [data-split] .wi{transform:translateY(105%)}
.ecw-motion .ecw [data-split].is-in .wi{transform:none;transition:transform 900ms var(--ease-out);transition-delay:calc(var(--i) * 28ms)}
.ecw-motion .ecw [data-reveal="up"]{opacity:0;transform:translateY(22px)}
.ecw-motion .ecw [data-reveal="up"].is-in{opacity:1;transform:none;transition:opacity 700ms var(--ease-out),transform 700ms var(--ease-out);transition-delay:var(--d,0ms)}
.ecw-motion .ecw [data-reveal="fade"]{opacity:0}
.ecw-motion .ecw [data-reveal="fade"].is-in{opacity:1;transition:opacity 900ms ease}
.ecw-motion .ecw [data-reveal="image"] img{clip-path:inset(0 0 100% 0);transform:scale(1.12)}
.ecw-motion .ecw [data-reveal="image"].is-in img{clip-path:inset(0 0 0 0);transform:scale(1);transition:clip-path 1100ms var(--ease-in-out),transform 1400ms var(--ease-out);transition-delay:var(--d,0ms)}
.ecw-motion .ecw .ecw-board__t--model[data-reveal="image"] img{transform:translateX(-50%) translateY(6%)}
.ecw-motion .ecw .ecw-board__t--model[data-reveal="image"].is-in img{transform:translateX(-50%)}
.ecw-motion .ecw .ecw-board__t--model[data-reveal="image"].is-in img{transform:translateX(-50%)}
/* hero entrance */
.ecw-motion .ecw [data-hero-in]:not([data-split]){opacity:0;transform:translateY(18px)}
.ecw-motion .ecw .ecw-hero.is-ready [data-hero-in]:not([data-split]){opacity:1;transform:none;transition:opacity 800ms var(--ease-out),transform 800ms var(--ease-out);transition-delay:var(--d,0ms)}
.ecw-motion .ecw .ecw-trust{transform:translateY(18px) scale(.96)!important}
.ecw-motion .ecw .ecw-hero.is-ready .ecw-trust{transform:none!important}
.ecw .ecw-hero__video{opacity:0;transition:opacity 1200ms ease}
.ecw .ecw-hero__video.is-playing{opacity:1}
.ecw-hero__media{background:url(video/hero-poster.jpg) center/cover no-repeat}

/* ---------- tablet ---------- */
@media (max-width:1080px){
  .ecw-nav__links,.ecw-nav__cta .ecw-tel{display:none}
  .ecw-steps{grid-template-columns:1fr 1fr}
  .ecw-step:nth-child(even){margin-top:0}
  .ecw-team__grid{grid-template-columns:1fr 1fr}
  .ecw-foot__top{grid-template-columns:1fr 1fr}
  .ecw-quotes{grid-template-columns:1fr 1fr}
  .ecw-quote:last-child{display:none}
  .ecw-vals{grid-template-columns:1fr 1fr;grid-template-areas:"a p" "b p" "c d" "e e"}
}
@media (max-width:900px){
  .ecw-trusted__grid{grid-template-columns:1fr;gap:28px}
  .ecw-diff__grid,.ecw-promise__grid,.ecw-cta__box,.ecw-svc__grid{grid-template-columns:1fr}
  .ecw-proof__head{flex-direction:column;align-items:flex-start}
  .ecw-custom{flex-direction:column;align-items:flex-start}
  .ecw-also{flex-direction:column;align-items:flex-start;gap:14px}
  .ecw-stats{grid-template-columns:1fr 1fr}
  .ecw-stat:nth-child(3){border-left:0;padding-left:0}
  .ecw-gal{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .ecw-gal__i{aspect-ratio:4/3}
  .ecw-gal__i--1{grid-row:auto;grid-column:1 / -1;aspect-ratio:16/10}
  .ecw-gal__i--4{grid-column:1 / -1;aspect-ratio:16/9}
}
/* ---------- mobile ---------- */
@media (max-width:767px){
  body.ecw{font-size:16px}
  .ecw-nav{padding-top:10px}
  .ecw-nav__bar{height:60px;padding:0 7px 0 18px}
  .ecw-nav__cta{display:none}
  .ecw-nav__burger{display:block}
  .ecw .ecw-nav__logo img{height:26px}
  .ecw-nav__sheet{display:flex;flex-direction:column;gap:2px;max-width:var(--wrap);margin:8px auto 0;padding:12px 20px 22px;border-radius:var(--r);
    background:rgba(32,53,48,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    opacity:0;transform:translateY(-8px) scale(.98);transform-origin:top center;visibility:hidden;
    transition:opacity 200ms var(--ease-out),transform 200ms var(--ease-out),visibility 200ms}
  .ecw-nav.is-open .ecw-nav__sheet{opacity:1;transform:none;visibility:visible}
  .ecw-nav.is-open .ecw-nav__bar{background:rgba(32,53,48,.94)}
  .ecw-nav__sheet>a:not(.ecw-btn):not(.ecw-tel){color:var(--mist);font-size:20px;padding:12px 0;border-bottom:1px solid rgba(236,235,233,.1)}
  .ecw-nav__sheet .ecw-tel{margin-top:16px}
  .ecw-nav__sheet .ecw-btn{margin-top:16px;align-self:flex-start}
  .ecw-hero{min-height:92svh}
  .ecw-hero__inner{flex-direction:column;align-items:flex-start;gap:28px;padding-top:110px}
  .ecw .ecw-h1{font-size:clamp(38px,10.4vw,48px)}
  .ecw .ecw-hero__kicker{font-size:13px;margin-bottom:10px}
  .ecw-hero__btns{gap:20px;margin-top:26px}
  .ecw-trust{width:auto;display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:center;padding:14px 18px;border-radius:20px}
  .ecw .ecw-trust__big{font-size:38px;grid-row:span 2}
  .ecw .ecw-trust__label{font-size:14px;margin:0}
  .ecw-trust__rule{display:none}
  .ecw-trust__g{gap:8px}
  .ecw .ecw-trust__g img{width:20px}
  .ecw-trust__g p:first-child{display:none}
  .ecw-logos{gap:12px;-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
  .ecw-logos__track li{height:52px;padding:0 18px}
  .ecw .ecw-logos__track img{height:calc(var(--h) * .8)}
  .ecw-board{grid-template-columns:1fr 1fr;grid-template-rows:auto;grid-template-areas:"m c" "t t" "l l"}
  .ecw-board__t{min-height:0}
  .ecw-board__t--model{grid-area:m;aspect-ratio:1}
  .ecw-board__t--care{grid-area:c;aspect-ratio:1;padding:10%}
  .ecw .ecw-board__care{width:92%}
  .ecw-board__t--copy{grid-area:t;padding:72px 24px 40px}
  .ecw-board__t--logo{grid-area:l;aspect-ratio:2/1}
  .ecw-ring{top:calc(50vw - var(--gut));width:112px}
  .ecw-ring text{font-size:12.5px}
  .ecw-diff__media{padding:0 14% 14% 0}
  .ecw-stats{margin-top:56px}
  .ecw-stat{padding:22px 12px 22px 0}
  .ecw-stat+.ecw-stat{padding-left:16px}
  .ecw-stat:nth-child(3),.ecw-stat:nth-child(4){border-top:1px solid var(--line)}
  .ecw-svc:not(.ecw-svc--big){grid-template-columns:1fr}
  .ecw-svc figure{aspect-ratio:4/3}
  .ecw-svc--big figure{min-height:0}
  .ecw-vals{grid-template-columns:1fr;grid-template-areas:"a" "p" "b" "c" "d" "e"}
  .ecw-val--photo{min-height:0;aspect-ratio:4/3}
  .ecw-val--5{flex-direction:column;align-items:flex-start}
  .ecw-val--5 h3{white-space:normal}
  .ecw-val{min-height:0}
  .ecw-val .ic{margin-bottom:12px}
  .ecw-steps,.ecw-team__grid,.ecw-quotes,.ecw-form__row,.ecw-foot__top{grid-template-columns:1fr}
  .ecw-step figure{aspect-ratio:16/10}
  .ecw-quote:last-child{display:flex}
  .ecw-awards li{width:76px;height:76px}
  .ecw-foot__bot{flex-direction:column}
  .ecw-gal{gap:12px}
}

/* reduced motion: keep fades, drop movement and loops */
@media (prefers-reduced-motion:reduce){
  .ecw-logos__track,.ecw-ring svg{animation:none!important}
  .ecw-logos__row{overflow-x:auto}
  .ecw-motion .ecw [data-split] .wi,.ecw-motion .ecw [data-reveal] ,.ecw-motion .ecw [data-reveal] img,.ecw-motion .ecw [data-hero-in]{transform:none!important;clip-path:none!important}
  .ecw-motion .ecw .ecw-board__t--model[data-reveal="image"] img{transform:translateX(-50%)!important}
  .ecw *{transition-duration:200ms!important}
}
/* v4.1: headline measure, ring core icon, service card alignment */
.ecw .ecw-h1{max-width:17ch}
.ecw-ring>svg{position:absolute;inset:6%;width:88%;height:88%;animation:ecwSpin 32s linear infinite;overflow:visible}
.ecw .ecw-ring__core .ic{position:static;inset:auto;width:50%;height:50%;animation:none}
.ecw-svc:not(.ecw-svc--big) .ecw-svc__b{justify-content:center}
@media (prefers-reduced-motion:reduce){.ecw-ring>svg{animation:none!important}}

/* v4.2: Merriweather bold italic highlights, glass trust badge, logos in original colour */
.ecw .ecw-serif{font-family:var(--serif);font-style:italic;font-weight:700;letter-spacing:-.02em}
.ecw .ecw-step__n{font-style:italic;font-weight:700;font-size:20px}
.ecw-trust{background:rgba(236,235,233,.14);color:#fff;border:1px solid rgba(255,255,255,.26);
  backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35),inset 0 -1px 0 rgba(255,255,255,.08),0 24px 48px rgba(20,34,30,.25)}
.ecw .ecw-trust__big,.ecw .ecw-trust__label,.ecw .ecw-trust__score b{color:#fff}
.ecw .ecw-trust__g p{color:rgba(255,255,255,.78)}
.ecw-trust__rule{background:var(--sage-l)}
.ecw .ecw-trust__g img{background:#fff;border-radius:50%;padding:4px;width:30px}
@media (prefers-reduced-transparency:reduce){.ecw-trust{background:var(--forest);backdrop-filter:none;-webkit-backdrop-filter:none}}
.ecw .ecw-logos__track img{filter:none;opacity:1}
@media (max-width:767px){.ecw .ecw-trust__g img{width:22px;padding:3px}}
/* v4.3: "why we are different" video replaces the photo collage */
@media (min-width:901px){.ecw-diff__grid{grid-template-columns:1.15fr 1fr}}
.ecw-film{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:16/9;background:var(--forest-d);box-shadow:0 30px 60px rgba(43,67,59,.14)}
.ecw .ecw-film__v{width:100%;height:100%;object-fit:cover;display:block}
.ecw .ecw-film__play{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:12px;padding:6px 18px 6px 6px;border-radius:999px;cursor:pointer;
  font:500 15px/1 var(--sans);color:#fff;background:rgba(32,53,48,.42);border:1px solid rgba(255,255,255,.24);
  backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform 160ms var(--ease-out),opacity 220ms var(--ease-out),background-color 200ms ease}
.ecw .ecw-film__play:active{transform:scale(.97)}
.ecw-film__icon{width:38px;height:38px;border-radius:50%;background:var(--mist);color:var(--forest);display:grid;place-items:center}
.ecw .ecw-film__icon .ic{width:16px;height:16px;margin-left:2px}
.ecw-film__time{color:rgba(255,255,255,.7);font-variant-numeric:tabular-nums}
@media (hover:hover) and (pointer:fine){.ecw .ecw-film__play:hover{background:rgba(32,53,48,.62)}}
.ecw-film.is-live .ecw-film__play{opacity:0;transform:translateY(6px);pointer-events:none}
@media (prefers-reduced-transparency:reduce){.ecw .ecw-film__play{background:var(--forest);backdrop-filter:none;-webkit-backdrop-filter:none}}
.ecw-motion .ecw [data-reveal="image"] video{clip-path:inset(0 0 100% 0);transform:scale(1.08)}
.ecw-motion .ecw [data-reveal="image"].is-in video{clip-path:inset(0 0 0 0);transform:scale(1);transition:clip-path 1100ms var(--ease-in-out),transform 1400ms var(--ease-out)}
@media (prefers-reduced-motion:reduce){.ecw-motion .ecw [data-reveal="image"] video{clip-path:none!important;transform:none!important}}
@media (max-width:767px){.ecw .ecw-film__play{left:12px;bottom:12px;font-size:14px}.ecw-film__icon{width:34px;height:34px}}
