/* ==========================================================================
   Pharmazon — editorial system (v8): white, hairlines, faces, no boxes
   ========================================================================== */
:root{
  --ed-ink:#0B1A26;
  --ed-mute:#97A1A7;
  --ed-soft:#5B6870;
  --ed-line:rgba(11,26,38,.1);
  --ed-warm:#F7F5F0;
}

.ed{position:relative;overflow-x:clip;background:#fff;color:var(--ed-ink);padding:clamp(80px,9vw,140px) var(--pz-edge)}
.ed--warm{background:var(--ed-warm)}
.ed-label{display:flex;align-items:center;gap:14px;font-family:var(--pz-ui);font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--ed-soft);margin-bottom:26px}
.ed-label::before{content:"";width:28px;height:1px;background:currentColor;opacity:.6}
.ed-h2{font-family:var(--pz-ui);font-weight:500;font-size:clamp(38px,4.6vw,76px);line-height:1;letter-spacing:-.048em;color:var(--ed-ink);text-wrap:balance}
.ed-muted{color:var(--ed-mute)}
.ed-lede{font-family:var(--pz-body);font-weight:300;font-size:clamp(17px,1.3vw,20px);line-height:1.6;color:var(--ed-soft);max-width:44ch}
.ed-head{display:grid;grid-template-columns:1.2fr .8fr;gap:24px 72px;align-items:end;margin-bottom:clamp(48px,6vw,88px)}
.ed-head > .ed-lede, .ed-head__side{justify-self:end;max-width:460px}
.ed-head--center{display:block;text-align:center;max-width:860px;margin-left:auto;margin-right:auto}
.ed-head--center .ed-label{justify-content:center}
.ed-head--center .ed-lede{margin:22px auto 0}
.ed-num{display:block;font-family:var(--pz-ui);font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--ed-mute);font-variant-numeric:tabular-nums}

/* buttons */
.ed-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 30px;margin-top:40px}
.ed-btn{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;gap:14px;height:56px;padding:0 30px;border-radius:999px;background:var(--ed-ink);color:#fff;font-family:var(--pz-ui);font-size:15px;font-weight:500;white-space:nowrap;transition:box-shadow .8s var(--pz-expo)}
.ed-btn::before{content:"";position:absolute;inset:0;border-radius:inherit;background:#1E3A48;transform:translateY(101%);transition:transform .7s var(--pz-expo);z-index:-1}
.ed-btn:hover::before{transform:none}
.ed-btn:hover{box-shadow:0 0 0 6px rgba(11,26,38,.06), 0 20px 36px -18px rgba(11,26,38,.5)}
.ed-btn svg{width:15px;height:15px;transition:transform .6s var(--pz-expo)}
.ed-btn:hover svg{transform:translateX(4px)}
.ed-link{position:relative;display:inline-flex;align-items:center;gap:10px;font-family:var(--pz-ui);font-size:15px;font-weight:500;color:var(--ed-ink);padding-bottom:4px}
.ed-link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;opacity:.35;transform-origin:right;transition:transform .7s var(--pz-expo)}
.ed-link::before{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .7s var(--pz-expo) .12s}
.ed-link:hover::after{transform:scaleX(0)}
.ed-link:hover::before{transform:scaleX(1)}

/* ---------- manifesto ---------- */
.ed--intro{padding-top:clamp(96px,11vw,160px);padding-bottom:clamp(56px,6vw,88px)}
.ed-manifesto{font-family:var(--pz-ui);font-weight:500;font-size:clamp(40px,6.4vw,118px);line-height:1.02;letter-spacing:-.052em;color:var(--ed-ink);max-width:15ch}
.ed-face{display:inline-block;vertical-align:middle;width:1.55em;height:.86em;margin:0 .06em .08em;border-radius:999px;overflow:hidden;background:#e7ebe9;transform:translateY(-.04em)}
.ed-face--wide{width:2.1em}
.ed-face img{width:100%;height:100%;object-fit:cover;object-position:var(--x,50%) var(--y,35%);transition:transform 1.2s var(--pz-expo)}
.ed-manifesto:hover .ed-face img{transform:scale(1.08)}
.ed-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(64px,7vw,110px);border-top:1px solid var(--ed-line)}
.ed-stat{padding:30px 32px 6px 0}
.ed-stat + .ed-stat{padding-left:32px;border-left:1px solid var(--ed-line)}
.ed-stat strong{display:flex;align-items:baseline;gap:6px;font-family:var(--pz-ui);font-weight:400;font-size:clamp(46px,4.4vw,76px);line-height:1;letter-spacing:-.055em;color:var(--ed-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.ed-stat strong small{font-size:.32em;letter-spacing:-.01em;color:var(--ed-mute);font-weight:500}
.ed-stat p{margin-top:14px;font-family:var(--pz-body);font-size:15.5px;line-height:1.5;color:var(--ed-soft);max-width:26ch}
.ed-logos{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:48px;margin-top:clamp(56px,6vw,88px)}
.ed-logos > p{font-family:var(--pz-ui);font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ed-mute);width:220px;line-height:1.6}
.ed-logos .pz-marquee__track img{height:44px}

/* ---------- split, full-bleed image ---------- */
.ed--split{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;background:#fff}
.ed-bleed{position:relative;margin:0;min-height:min(92vh,980px);overflow:hidden;background:#e7ebe9}
.ed-bleed img{position:absolute;inset:-6% 0;width:100%;height:112%;object-fit:cover;object-position:42% 50%;will-change:transform}
.ed-bleed figcaption{position:absolute;left:var(--pz-edge);bottom:32px;z-index:1}
.ed-bleed figcaption span{display:inline-flex;align-items:center;gap:10px;height:38px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-family:var(--pz-ui);font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--ed-ink)}
.ed-bleed figcaption span::before{content:"";width:7px;height:7px;border-radius:50%;background:#0E7A3B}
.ed-split__copy{padding:clamp(72px,8vw,130px) var(--pz-edge) clamp(72px,8vw,120px) clamp(40px,5vw,96px);align-self:center}
.ed-split__copy .ed-lede{margin-top:24px}
.ed-list{margin-top:36px;border-top:1px solid var(--ed-line)}
.ed-list li{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--ed-line);align-items:baseline;transition:padding .6s var(--pz-expo)}
.ed-list li:hover{padding-left:10px}
.ed-list b{font-family:var(--pz-ui);font-size:16.5px;font-weight:600;letter-spacing:-.01em}
.ed-list span{font-family:var(--pz-body);font-size:15.5px;line-height:1.5;color:var(--ed-soft)}

/* ---------- how we work: people ---------- */
.ed-people{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,24px)}
.ed-person figure{position:relative;margin:0 0 22px;aspect-ratio:3/4;border-radius:20px;overflow:hidden;background:#e7ebe9}
.ed-person figure img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--pz-expo)}
.ed-person:hover figure img{transform:scale(1.05)}
.ed-person h3{font-family:var(--pz-ui);font-size:clamp(22px,1.8vw,28px);font-weight:500;letter-spacing:-.035em;margin:8px 0 8px}
.ed-person p{font-family:var(--pz-body);font-size:15.5px;line-height:1.55;color:var(--ed-soft);max-width:30ch}

.ed-journey{margin-top:clamp(72px,8vw,120px);padding-top:clamp(40px,4vw,56px);border-top:1px solid var(--ed-line)}
.ed-journey__head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:40px}
.ed-journey__head h3{font-family:var(--pz-ui);font-weight:500;font-size:clamp(26px,2.4vw,38px);letter-spacing:-.04em}
.ed-journey__head p{font-family:var(--pz-body);font-weight:300;font-size:17px;color:var(--ed-soft)}
.ed-journey__rail{position:relative}
.ed-journey__line{position:absolute;left:0;right:0;top:0;height:1px;background:var(--ed-line)}
.ed-journey__line i{position:absolute;inset:0;background:var(--ed-ink);transform-origin:left;transform:scaleX(var(--p,0))}
.ed-journey__rail ol{display:grid;grid-template-columns:repeat(7,1fr);gap:22px}
.ed-journey__rail .pz-tk{position:relative;padding-top:26px}
.ed-journey__rail .pz-tk::before{content:"";position:absolute;left:0;top:-4px;width:9px;height:9px;border-radius:50%;background:#fff;border:1px solid var(--ed-mute);transition:background-color .5s, border-color .5s, transform .5s var(--pz-expo)}
.ed-journey__rail .pz-tk.is-done::before{background:var(--ed-ink);border-color:var(--ed-ink);transform:scale(1.3)}
.ed-journey__rail .pz-tk > span{display:block;font-family:var(--pz-ui);font-size:12px;font-weight:500;letter-spacing:.18em;color:var(--ed-mute);margin-bottom:12px;transition:color .5s}
.ed-journey__rail .pz-tk.is-done > span{color:var(--pz-teal-ink)}
.ed-journey__rail .pz-tk b{display:block;font-family:var(--pz-ui);font-size:16px;font-weight:600;letter-spacing:-.01em;line-height:1.25;margin-bottom:8px}
.ed-journey__rail .pz-tk p{font-family:var(--pz-body);font-size:14.5px;line-height:1.5;color:var(--ed-soft)}

/* ---------- solutions columns ---------- */
.ed-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,40px)}
.ed-col{display:block;color:inherit}
.ed-col figure{margin:0 0 24px;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:#e7ebe9}
.ed-col figure img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--pz-expo)}
.ed-col:hover figure img{transform:scale(1.05)}
.ed-col h3{font-family:var(--pz-ui);font-size:clamp(26px,2.2vw,34px);font-weight:500;letter-spacing:-.04em;margin:10px 0 10px}
.ed-col p{font-family:var(--pz-body);font-size:16px;line-height:1.55;color:var(--ed-soft);margin-bottom:20px;max-width:40ch}

/* ---------- specialties on white ---------- */
.ed--spec{padding-left:0;padding-right:0}
.ed--spec .ed-head{padding:0 var(--pz-edge);margin-bottom:clamp(28px,3vw,44px)}
.ed--spec .pz-joined{justify-content:flex-start;margin-top:18px}
.ed--spec .pz-joined__faces span{border-color:#fff}
.ed--spec .pz-reel{margin-top:0}
.ed--spec .pz-scard{box-shadow:none}

/* ---------- team on warm ---------- */
.ed--team{padding-left:0;padding-right:0}
.ed--team .ed-head{padding:0 var(--pz-edge);margin-bottom:0}
.ed--team .pz-cf__btn{background:transparent}
.ed--team .pz-cf__prog i{background:var(--ed-ink)}
.ed--team .pz-cf__card{box-shadow:0 40px 70px -46px rgba(11,26,38,.5)}

/* ---------- reviews ---------- */
.ed-rv{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,120px);align-items:start}
.ed-rv__big{display:flex;align-items:center;gap:22px;margin:44px 0 30px}
.ed-rv__big strong{font-family:var(--pz-ui);font-weight:400;font-size:clamp(84px,8vw,140px);line-height:.85;letter-spacing:-.06em}
.ed-rv__big span{font-family:var(--pz-ui);font-size:15px;font-weight:500;line-height:1.5;color:var(--ed-soft)}
.ed-stars{display:block;font-style:normal;color:#F2B21B;letter-spacing:.12em;font-size:16px;margin-bottom:4px}
.ed-cluster{display:flex;flex-wrap:wrap;max-width:360px}
.ed-cluster span{width:64px;height:64px;border-radius:50%;overflow:hidden;border:3px solid #fff;margin:0 -12px -10px 0;background:#e7ebe9;box-shadow:0 10px 24px -14px rgba(11,26,38,.5);transition:transform .6s var(--pz-expo)}
.ed-cluster span:hover{transform:translateY(-6px) scale(1.06);z-index:1;position:relative}
.ed-cluster img{width:100%;height:100%;object-fit:cover;object-position:var(--x,50%) var(--y,30%);transform:scale(var(--z,1.4));transform-origin:var(--x,50%) var(--y,30%)}
.ed-rv__quotes{padding-top:8px}
.ed-rv__src{display:flex;gap:28px;padding-bottom:18px;border-bottom:1px solid var(--ed-line)}
.ed-rv__src button{position:relative;display:inline-flex;align-items:center;gap:10px;font-family:var(--pz-ui);font-size:15px;font-weight:500;color:var(--ed-mute);transition:color .4s}
.ed-rv__src button svg{width:18px;height:18px;filter:grayscale(1);opacity:.6;transition:filter .4s, opacity .4s}
.ed-rv__src button[aria-selected="true"]{color:var(--ed-ink)}
.ed-rv__src button[aria-selected="true"] svg{filter:none;opacity:1}
.ed-rv__src button::after{content:"";position:absolute;left:0;right:0;bottom:-19px;height:1.5px;background:var(--ed-ink);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--pz-expo)}
.ed-rv__src button[aria-selected="true"]::after{transform:scaleX(1)}
.ed-rv__stage{position:relative;display:grid;min-height:340px;padding:44px 0 34px}
.ed-q{grid-area:1/1;margin:0;opacity:0;visibility:hidden}
.ed-q.is-on{opacity:1;visibility:visible}
.ed-q blockquote{font-family:var(--pz-body);font-weight:300;font-size:clamp(22px,2.1vw,34px);line-height:1.4;letter-spacing:-.01em;color:var(--ed-ink);text-indent:-.4em}
.ed-q blockquote::before{content:"“"}
.ed-q blockquote::after{content:"”"}
.ed-q figcaption{margin-top:28px;font-family:var(--pz-ui);font-size:14px;color:var(--ed-soft)}
.ed-q figcaption b{display:block;font-size:16px;font-weight:600;color:var(--ed-ink)}
.ed-rv__nav{display:flex;align-items:center;gap:16px;padding-top:22px;border-top:1px solid var(--ed-line)}
.ed-rv__nav .ed-link{margin-left:auto}
.ed-rv__count{font-family:var(--pz-ui);font-size:13px;font-weight:500;letter-spacing:.16em;color:var(--ed-mute);font-variant-numeric:tabular-nums}
.ed-rv__count b{color:var(--ed-ink)}
.ed-arrow{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:var(--ed-ink);box-shadow:inset 0 0 0 1px var(--ed-line);transition:background-color .4s, color .4s}
.ed-arrow:hover{background:var(--ed-ink);color:#fff}
.ed-arrow svg{width:15px;height:15px}
.ed-arrow--prev svg{transform:rotate(180deg)}

.ed-awards{display:grid;grid-template-columns:.85fr 1.15fr;gap:32px clamp(40px,6vw,120px);align-items:center;margin-top:clamp(72px,8vw,120px);padding-top:clamp(40px,4vw,56px);border-top:1px solid var(--ed-line)}
.ed-awards__t{font-family:var(--pz-body);font-size:16px;line-height:1.6;color:var(--ed-soft);max-width:44ch}
.ed-awards__t b{display:block;font-family:var(--pz-ui);font-size:clamp(22px,1.9vw,30px);font-weight:500;letter-spacing:-.035em;line-height:1.1;color:var(--ed-ink);margin-bottom:12px}
.ed-awards__row{display:grid;grid-template-columns:repeat(4,1fr)}
.ed-aw{padding:6px 20px 6px 0}
.ed-aw + .ed-aw{padding-left:20px;border-left:1px solid var(--ed-line)}
.ed-aw img{height:54px;width:auto;max-width:140px;object-fit:contain;margin-bottom:16px;filter:grayscale(1);opacity:.85;transition:filter .5s, opacity .5s}
.ed-aw:hover img{filter:none;opacity:1}
.ed-aw span{display:block;font-family:var(--pz-ui);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ed-mute);margin-bottom:4px}
.ed-aw b{font-family:var(--pz-ui);font-size:15px;font-weight:600;letter-spacing:-.01em;line-height:1.3}

/* ---------- faq ---------- */
.ed-faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,6vw,120px);align-items:start}
.ed-faq__aside{position:sticky;top:110px}
.ed-ask{display:flex;gap:18px;align-items:flex-start;margin-top:40px;padding-top:28px;border-top:1px solid var(--ed-line)}
.ed-ask img{flex:none;width:76px;height:76px;border-radius:50%;object-fit:cover;object-position:50% 25%}
.ed-ask b{display:block;font-family:var(--pz-ui);font-size:18px;font-weight:600;letter-spacing:-.02em}
.ed-ask p{font-family:var(--pz-body);font-size:15.5px;line-height:1.5;color:var(--ed-soft);margin:4px 0 12px}
.ed-acc{border-top:1px solid var(--ed-line)}
.ed-acc .pz-acc__item{border-color:var(--ed-line)}
.ed-acc .pz-acc__btn{font-family:var(--pz-ui);font-weight:500;font-size:clamp(17px,1.35vw,20px);letter-spacing:-.02em;padding:26px 0}
.ed-acc .pz-acc__ico{background:transparent;box-shadow:inset 0 0 0 1px var(--ed-line)}
.ed-acc .pz-acc__btn[aria-expanded="true"] .pz-acc__ico{background:var(--ed-ink)}
.ed-acc .pz-acc__btn[aria-expanded="true"] .pz-acc__ico::before,.ed-acc .pz-acc__btn[aria-expanded="true"] .pz-acc__ico::after{background:#fff}
.ed-acc .pz-acc__panel p{font-family:var(--pz-body);font-size:16.5px;line-height:1.6;color:var(--ed-soft)}

/* ---------- footer faces ---------- */
.ed-ctafaces{display:flex;align-items:center;margin-bottom:30px}
.ed-ctafaces span{width:52px;height:52px;border-radius:50%;overflow:hidden;border:3px solid var(--pz-night);margin-left:-12px;background:#0b2a36}
.ed-ctafaces span:first-child{margin-left:0}
.ed-ctafaces img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}
.ed-ctafaces em{font-style:normal;margin-left:18px;font-family:var(--pz-ui);font-size:14px;font-weight:500;color:rgba(242,239,230,.7)}
.pz-foot2__title span{color:rgba(242,239,230,.45)}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .ed-head{grid-template-columns:1fr}
  .ed-head > .ed-lede, .ed-head__side{justify-self:start}
  .ed-stats{grid-template-columns:1fr 1fr}
  .ed-stat:nth-child(3){border-left:0;padding-left:0}
  .ed-stat:nth-child(n+3){border-top:1px solid var(--ed-line)}
  .ed--split{grid-template-columns:1fr}
  .ed-bleed{min-height:62vh}
  .ed-split__copy{padding:64px var(--pz-edge)}
  .ed-people{grid-template-columns:1fr 1fr}
  .ed-journey__rail{overflow-x:auto;padding-bottom:8px}
  .ed-journey__rail ol{min-width:1050px}
  .ed-cols{grid-template-columns:1fr 1fr}
  .ed-rv, .ed-awards, .ed-faq{grid-template-columns:1fr}
  .ed-faq__aside{position:static}
}
@media (max-width:640px){
  .ed-manifesto{font-size:clamp(34px,10.5vw,52px)}
  .ed-stat strong{font-size:36px}
  .ed-stat{padding-right:14px}
  .ed-stat + .ed-stat{padding-left:16px}
  .ed-stat p{font-size:14px}
  .ed-logos{grid-template-columns:1fr;gap:18px}
  .ed-list li{grid-template-columns:1fr;gap:4px}
  .ed-people{grid-template-columns:1fr 1fr;gap:12px}
  .ed-person h3{font-size:20px}
  .ed-person p{font-size:14px}
  .ed-cols{grid-template-columns:1fr}
  .ed-awards__row{grid-template-columns:1fr 1fr;gap:20px 0}
  .ed-aw:nth-child(3){border-left:0;padding-left:0}
  .ed-rv__stage{min-height:420px}
  .ed-ctafaces em{display:none}
}
