/* DesignMingle: "update version" theme. Loaded after style.css on /update-version/ pages only. */
:root{
  --ov-pink:#FF1979;
  --ov-pink-soft:#FFC2DB;
  --ov-pink-tint:#FFE9F2;
  --ov-yellow:#FFE49A;
  --ov-ink:#121111;
  --ov-ink2:#1D1C1C;
  --ov-deep:#1B1217;
  --ov-grey:#F0F0F0;
  --ov-body:#6A6E6E;
  --ov-r:30px;
  --ov-ease:cubic-bezier(.2,.7,.2,1);
  /* re-map the base tokens so inner pages pick the new look up */
  --surface:#F0F0F0;
  --radius:20px;
  --radius-lg:30px;
  --body:#5E6262;
}
body.v2{background:#fff;color:var(--ov-ink);font-size:17px}
.v2 h1,.v2 h2,.v2 h3{letter-spacing:-.02em}
.v2 h1{font-weight:600}
.v2 h2{font-weight:500;line-height:1.1}

/* ---------- buttons */
.ov-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;height:52px;padding:0 6px 0 22px;border-radius:100px;background:var(--ov-ink);color:#fff;font-weight:500;font-size:16px;line-height:1;white-space:nowrap;border:1px solid var(--ov-ink);box-shadow:0 16px 30px -12px rgba(0,0,0,.5);transition:transform .35s var(--ov-ease),box-shadow .35s,background .25s,color .25s;cursor:pointer;font-family:inherit}
.ov-btn .a{flex:none;width:40px;height:40px;border-radius:50%;background:#fff;color:var(--ov-ink);display:grid;place-items:center;overflow:hidden}
.ov-btn .a svg{width:16px;height:16px;transition:transform .45s var(--ov-ease)}
.ov-btn:hover{transform:translateY(-2px)}
.ov-btn:hover .a svg{animation:ovArrow .5s var(--ov-ease)}
@keyframes ovArrow{0%{transform:none}49%{transform:translate(22px,-22px)}50%{transform:translate(-22px,22px)}100%{transform:none}}
.ov-btn.ov-primary .a{background:var(--ov-pink);color:#fff}
.ov-btn.ov-ghost{background:transparent;color:var(--ov-ink);box-shadow:none;padding:0 24px}
.ov-btn.ov-ghost .a{display:none}
.ov-btn.ov-ghost:hover{background:var(--ov-ink);color:#fff}
.ov-btn.ov-light{background:#fff;color:var(--ov-ink);border-color:#fff}
.ov-btn.ov-light .a{background:var(--ov-ink);color:#fff}
.ov-btn.ov-pink{background:var(--ov-pink);border-color:var(--ov-pink);color:#fff;box-shadow:0 0 50px -6px rgba(255,25,121,.75)}
.ov-btn.ov-pink .a{background:var(--ov-ink);color:#fff}
.ov-btn.btn-sm{height:46px;font-size:15px;padding-left:18px}
.ov-btn.btn-sm .a{width:34px;height:34px}
.bg-ink .ov-btn.ov-ghost,.ov-dark .ov-btn.ov-ghost{border-color:rgba(255,255,255,.4);color:#fff}
.bg-ink .ov-btn.ov-ghost:hover,.ov-dark .ov-btn.ov-ghost:hover{background:#fff;color:var(--ov-ink)}
.v2 .btn{border-radius:100px}
.v2 .btn-primary{background:var(--ov-ink);color:#fff;border-color:var(--ov-ink)}
.v2 .btn-primary:hover{background:var(--ov-pink);border-color:var(--ov-pink)}
.v2 .price .ov-btn,.v2 form .ov-btn{width:100%}

/* ---------- tag (pill with dots) */
.ov-tag,.v2 .eyebrow{display:inline-flex;align-items:center;gap:9px;padding:6px 13px;border-radius:100px;background:var(--ov-grey);color:var(--ov-ink);font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;line-height:1.2}
.ov-tag::before,.ov-tag::after,.v2 .eyebrow::before,.v2 .eyebrow::after{content:"";display:block;width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}
.v2 .center .eyebrow::before{display:block}
.ov-tag.w{background:#fff}
.ov-dark .ov-tag,.v2 .bg-ink .eyebrow,.v2 .dark .eyebrow{background:rgba(255,255,255,.08);color:#F0F0F0}

/* ---------- header */
.v2 .site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid transparent;transition:border-color .3s}
.v2 .site-header.scrolled{border-bottom-color:rgba(0,0,0,.06)}
.v2 .site-header > .container{max-width:none;padding:0 30px;height:88px}
.v2 .site-header .nav{gap:4px}
.v2 .site-header .nav > a,.v2 .site-header .nav .dd-trigger{padding:9px 16px;border-radius:100px;color:var(--ov-body);font-size:16px;font-weight:400;transition:background .25s,color .25s}
.v2 .site-header .nav > a:hover,.v2 .site-header .nav .dd-trigger:hover,.v2 .site-header .nav [aria-current]{background:var(--ov-grey);color:var(--ov-ink)}
.v2 .site-header .nav > a::after,.v2 .site-header .nav .dd-trigger::after{display:none}
.v2 .site-header .logo{font-size:24px}
.v2 .dd-panel{border-radius:26px}

/* ---------- inner pages: re-skin shared blocks */
.v2 main > section.bg-surface,.v2 main > .bg-ink,.v2 main > section.bg-ink,.v2 main > div.bg-surface{margin-left:30px;margin-right:30px;border-radius:var(--ov-r);overflow:hidden}
.v2 .bg-ink{background:var(--ov-ink)}
.v2 .card,.v2 .price,.v2 .t,.v2 .svc,.v2 details.faq,.v2 .aud-card{border-radius:var(--ov-r)}
.v2 .tag{border-radius:100px}
.v2 .stars{color:#FFB800}
.v2 .hl{color:var(--ov-pink)}
.v2 input,.v2 select,.v2 textarea{border-radius:14px}

@media (min-width:821px){.v2 .svc-facts{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:1fr}}

/* =====================================================================
   HOME (ov-*)
   ===================================================================== */
.ov-sec{padding:120px 0;position:relative}
.ov-wrap{max-width:1200px;margin:0 auto;padding:0 30px}
.ov-panel{margin:0 30px;border-radius:var(--ov-r);position:relative;overflow:hidden;--ln:rgba(0,0,0,.045);
  background-image:linear-gradient(var(--ln),var(--ln)),linear-gradient(var(--ln),var(--ln)),linear-gradient(var(--ln),var(--ln));
  background-size:1px 100%;background-repeat:no-repeat;background-position:14% 0,50% 0,86% 0}
.ov-panel.grey{background-color:var(--ov-grey)}
.ov-dark{background-color:var(--ov-ink);color:#F0F0F0;--ln:rgba(255,255,255,.055)}
.ov-deep{background-color:var(--ov-deep)}
.ov-dark h2,.ov-dark h3,.ov-dark h4{color:#F0F0F0}
.ov-h2{font-size:clamp(34px,3.7vw,52px);font-weight:500;letter-spacing:-.02em;line-height:1.1;color:var(--ov-ink)}
.ov-sub{color:var(--ov-body);font-size:18px;line-height:1.3}
.ov-headrow{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:56px}
.ov-headrow .ov-tag{margin-bottom:18px}
.ov-center{text-align:center}

/* reveal */
.ov-rv{opacity:0;transform:translateY(34px);filter:blur(8px);transition:opacity .9s var(--ov-ease),transform .9s var(--ov-ease),filter .9s var(--ov-ease);transition-delay:calc(var(--d,0) * 90ms)}
.ov-rv.in{opacity:1;transform:none;filter:none}

/* ---------- hero */
.ov-hero{padding:110px 12px 12px;text-align:center}
.ov-hero h1{font-size:clamp(40px,5.7vw,82px);font-weight:600;letter-spacing:-.02em;line-height:1.2;color:var(--ov-ink);max-width:1120px;margin:22px auto 26px;padding:0 20px}
.ov-w{display:inline-block;opacity:0;filter:blur(12px);transform:translateY(24px);animation:ovWord .9s var(--ov-ease) forwards;animation-delay:calc(var(--i) * 75ms + .1s)}
@keyframes ovWord{to{opacity:1;filter:none;transform:none}}
.ov-fade{opacity:0;transform:translateY(20px);animation:ovWord .9s var(--ov-ease) forwards;animation-delay:var(--delay,.6s)}
.ov-pill{display:inline-flex;align-items:center;gap:.14em;height:.8em;padding:0 .2em 0 .07em;background:var(--ov-ink);border-radius:100px;vertical-align:-.08em;margin:0 .06em}
.ov-pill .c{width:.66em;height:.66em;border-radius:50%;background:var(--ov-pink);display:grid;place-items:center;box-shadow:0 0 0 .04em rgba(255,255,255,.25) inset}
.ov-pill .c svg{width:.4em;height:.4em;color:#fff}
.ov-pill .ch{display:flex}
.ov-pill .ch svg{width:.3em;height:.42em;color:#fff;margin-left:-.06em;animation:ovChev 1.5s infinite}
.ov-pill .ch svg:nth-child(2){animation-delay:.18s}
.ov-pill .ch svg:nth-child(3){animation-delay:.36s}
@keyframes ovChev{0%,100%{opacity:.25}40%{opacity:1}}
.ov-hero .lede{font-size:18px;line-height:1.75;color:var(--ov-body);max-width:560px;margin:0 auto 40px}
.ov-chip{display:inline-block;padding:1px 9px;border-radius:8px;color:var(--ov-ink);line-height:1.5}
.ov-chip.pk{background:var(--ov-pink-soft)}
.ov-chip.wh{background:#fff}
.ov-chip.dk{background:var(--ov-ink);color:#fff}
.ov-ctas{display:flex;gap:28px;justify-content:center;align-items:center;flex-wrap:wrap}
.ov-hero-media{display:grid;grid-template-columns:1.63fr 1fr;gap:28px;margin-top:80px;text-align:left}
.ov-hero-photo{border-radius:var(--ov-r);overflow:hidden;height:600px;background:#ddd url(/assets/photos/hero-coaching-poster.webp) center/cover}
.ov-hero-photo video,.ov-hero-photo img{width:100%;height:100%;object-fit:cover}
.ov-stat{background:var(--ov-deep);border-radius:var(--ov-r);padding:36px 40px 40px;color:#fff;display:flex;flex-direction:column;height:600px}
.ov-dots{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.ov-dots i{aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.1);transition:background .4s,box-shadow .4s}
.ov-dots i.on{background:var(--ov-pink);box-shadow:0 0 18px -2px rgba(255,25,121,.7)}
.ov-stat .big{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;padding:26px 0 28px;border-bottom:1px solid rgba(255,255,255,.12)}
.ov-stat .big b{font-size:72px;font-weight:600;line-height:1;letter-spacing:-.02em}
.ov-stat .big > span{color:#B7BCBC;font-size:16px;padding-bottom:8px}
.ov-stat h2{font-size:28px;font-weight:500;line-height:1.2;color:#fff;margin:28px 0 26px;max-width:320px}
.ov-stat .row{display:flex;justify-content:space-between;align-items:center;color:#B7BCBC;font-size:16px}
.ov-stat .row b{font-size:34px;font-weight:500;color:var(--ov-pink-soft)}
.ov-bars{display:flex;align-items:flex-end;gap:5px;height:56px;margin-top:22px}
.ov-bars i{flex:1;height:30px;border-radius:5px;background:rgba(255,255,255,.1);transform-origin:bottom}
.ov-bars i.hi{height:56px;background:var(--ov-pink-soft);animation:ovBar 2.4s ease-in-out infinite}
.ov-bars i.hi:nth-of-type(odd){animation-delay:.3s}
@keyframes ovBar{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.72)}}

.ov-hero-media.solo{grid-template-columns:1fr}
.ov-hero-media.solo .ov-hero-photo{height:min(680px,46vw)}
@media (max-width:820px){.ov-hero-media.solo .ov-hero-photo{height:320px}}

/* first-version trust-gap comparison (dark), framed as a rounded panel */
.v2 .tg2.tg-dark{margin:0 30px;border-radius:var(--ov-r);overflow:hidden}
@media (max-width:820px){.v2 .tg2.tg-dark{margin:0 12px}}

/* ---------- trust strip */
.ov-trust{display:flex;align-items:center;gap:56px;max-width:1160px;margin:0 auto;padding:60px 30px}
.ov-trust .who{display:flex;align-items:center;gap:14px;flex:none}
.ov-avs{display:flex}
.ov-avs img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:3px solid #fff;margin-left:-18px}
.ov-avs img:first-child{margin-left:0}
.ov-trust .who p{font-size:16px;line-height:1.25;color:var(--ov-body);max-width:210px}
.ov-marq{flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.ov-marq .track{display:flex;align-items:center;gap:70px;width:max-content;animation:ovMarq 36s linear infinite}
.ov-marq img{height:38px;width:auto;max-width:170px;object-fit:contain;filter:grayscale(1) contrast(1.1);opacity:.85}
@keyframes ovMarq{to{transform:translateX(-50%)}}

/* ---------- point of view + services */
.ov-povwrap{margin:0 30px;border-radius:var(--ov-r);background:var(--ov-pink-soft);overflow:hidden}
.ov-povwrap > .ov-panel{margin:0;padding:200px 0 150px}
.ov-pov .inner{max-width:1200px;margin:0 auto;padding:0 54px}
.ov-pov .state{font-size:clamp(30px,3.7vw,52px);font-weight:500;letter-spacing:-.02em;line-height:1.1;max-width:1020px;margin:26px 0 54px;color:#F0F0F0}
.ov-pov .state span{opacity:.22;transition:opacity .35s}
.ov-pov .state span.lit{opacity:1}
.ov-pov .state .p{color:var(--ov-pink)}
.ov-team{display:flex;align-items:center;gap:30px}
.ov-team .faces{display:flex;gap:12px}
.ov-team img{width:88px;height:88px;border-radius:16px;object-fit:cover}
.ov-team p{color:#B7BCBC;font-size:18px;line-height:1.2;max-width:290px}
.ov-svc{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:190px;align-items:start}
.ov-svc h3{font-size:clamp(32px,3.7vw,52px);font-weight:500;letter-spacing:-.02em;line-height:1.1;margin:22px 0 54px;max-width:470px}
.ov-svc-list{display:flex;flex-direction:column;gap:6px;max-width:500px}
.ov-svc-list button{display:flex;align-items:baseline;gap:14px;text-align:left;padding:12px 0;border-radius:14px;color:#9A9D9D;font-size:30px;font-weight:500;letter-spacing:-.02em;line-height:1.15;transition:background .4s var(--ov-ease),padding .4s var(--ov-ease),color .3s;width:100%}
.ov-svc-list button small{font-size:15px;color:var(--ov-pink);font-weight:400;letter-spacing:0;transform:translateY(-8px)}
.ov-svc-list button.on{background:var(--ov-ink2);padding:22px 20px;color:#fff}
.ov-svc-list button:hover{color:#fff}
.ov-svc-view .frame{position:relative;aspect-ratio:1/1.06;border-radius:var(--ov-r);overflow:hidden;background:var(--ov-ink2)}
.ov-svc-view .frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity .7s var(--ov-ease),transform 1.2s var(--ov-ease)}
.ov-svc-view .frame img.on{opacity:1;transform:none}
.ov-svc-view .desc{position:relative;min-height:96px;margin-top:28px}
.ov-svc-view .desc div{position:absolute;inset:0 auto auto 0;max-width:440px;opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s var(--ov-ease);pointer-events:none}
.ov-svc-view .desc div.on{opacity:1;transform:none;pointer-events:auto}
.ov-svc-view .desc p{color:#B7BCBC;font-size:18px;line-height:1.25}
.ov-svc-view .desc a{display:inline-block;margin-top:12px;color:#fff;font-size:15px;border-bottom:1px solid var(--ov-pink)}
/* animated service illustrations (markup in v2_illustrations.py) */
.ov-svc-view .frame{background:#F4F2F3;perspective:1000px}
.ov-ill{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .5s,visibility 0s .5s}
.ov-ill.on{opacity:1;visibility:visible;transition:opacity .6s}
.ov-ill svg{display:block;width:100%;height:100%;font-family:inherit;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .5s var(--ov-ease)}
.ov-ill svg *{transform-box:fill-box;transform-origin:center}
.ov-ill .pop,.ov-ill .rise,.ov-ill .grow,.ov-ill .fade,.ov-ill .pencil,.ov-ill .cursor,.ov-ill .ripple,.ov-ill .drop,.ov-ill .pulse,.ov-ill .slide.b{opacity:0}
.ov-ill .draw{stroke-dasharray:1;stroke-dashoffset:1}
.ov-ill .grow{transform-origin:left center}
.ov-ill.on .pop{animation:illPop .7s var(--ov-ease) var(--t,0s) both}
.ov-ill.on .rise{animation:illRise .7s var(--ov-ease) var(--t,0s) both}
.ov-ill.on .grow{animation:illGrow .7s var(--ov-ease) var(--t,0s) both}
.ov-ill.on .fade{animation:illFade .6s ease var(--t,0s) both}
.ov-ill.on .draw{animation:illDraw 1.1s ease-in-out var(--t,0s) both}
.ov-ill.on .pop.float{animation:illPop .7s var(--ov-ease) var(--t,0s) both,illFloat 4s ease-in-out calc(var(--t,0s) + .7s) infinite}
@keyframes illPop{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}
@keyframes illRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes illGrow{from{opacity:0;transform:scaleX(0)}to{opacity:1;transform:none}}
@keyframes illFade{to{opacity:1}}
@keyframes illDraw{to{stroke-dashoffset:0}}
@keyframes illFloat{0%,100%{transform:none}50%{transform:translateY(-7px)}}
.ov-ill.on .pencil{animation:illPencil 1.15s ease-in-out .5s both}
@keyframes illPencil{0%{transform:translate(200px,92px);opacity:0}8%{opacity:1}30%{transform:translate(246px,172px)}52%{transform:translate(200px,214px)}74%{transform:translate(154px,172px)}92%{transform:translate(200px,92px);opacity:1}100%{transform:translate(212px,78px);opacity:0}}
.ov-ill.on .cursor{animation:illCursor 8s var(--ov-ease) .9s infinite both}
@keyframes illCursor{0%{opacity:0;transform:translate(var(--sx),var(--sy))}5%,10%{opacity:1;transform:translate(var(--sx),var(--sy))}22%{transform:translate(var(--cx),var(--cy))}24.5%{transform:translate(var(--cx),var(--cy)) scale(.82)}27%,88%{opacity:1;transform:translate(var(--cx),var(--cy))}96%,100%{opacity:0;transform:translate(var(--cx),var(--cy))}}
.ov-ill.on .ripple{animation:illRipple 8s ease-out .9s infinite both}
@keyframes illRipple{0%,23.5%{opacity:0;transform:scale(.2)}25%{opacity:.8;transform:scale(.3)}36%,100%{opacity:0;transform:scale(1)}}
/* website: booked slots fill the week, the count climbs, notes stack up */
.ov-ill.on .slot{animation:illSlot 8s var(--ov-ease) calc(var(--t) + 1.9s) infinite both}
@keyframes illSlot{0%{fill:#EFEDEE;transform:scale(1)}2.5%{fill:#FF1979;transform:scale(1.25)}6%,74%{fill:#FF1979;transform:scale(1)}80%,100%{fill:#EFEDEE;transform:scale(1)}}
.ov-ill.on .count{animation:illCount 8s var(--ov-ease) 3.1s infinite both}
@keyframes illCount{0%,3%{transform:none}6%,20%{transform:translateY(-30px)}23%,37%{transform:translateY(-60px)}40%,54%{transform:translateY(-90px)}57%,90%{transform:translateY(-120px)}96%,100%{transform:none}}
.ov-ill .trend{stroke-dasharray:1;stroke-dashoffset:1}
.ov-ill.on .trend{animation:illTrend 8s ease-in-out 3.1s infinite both}
@keyframes illTrend{0%{stroke-dashoffset:1}60%,90%{stroke-dashoffset:0}96%,100%{stroke-dashoffset:1}}
.ov-ill .trend-dot,.ov-ill .note{opacity:0}
.ov-ill.on .trend-dot{animation:illTrendDot 8s ease 3.1s infinite both}
@keyframes illTrendDot{0%,58%{opacity:0;transform:scale(.3)}62%,90%{opacity:1;transform:scale(1)}96%,100%{opacity:0}}
.ov-ill.on .note{animation:illNote 8s var(--ov-ease) calc(var(--t) + 1.9s) infinite both}
@keyframes illNote{0%{opacity:0;transform:translateX(16px)}5%,62%{opacity:1;transform:none}70%,100%{opacity:0;transform:none}}
.ov-ill .bar{transform-origin:center bottom}
.ov-ill.on .bar{animation:illBar 2.4s ease-in-out var(--t,0s) infinite}
@keyframes illBar{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
.ov-ill .fan-l,.ov-ill .fan-r{transform-origin:center bottom}
.ov-ill.on .fan-l{animation:illFanL .9s var(--ov-ease) .35s both}
.ov-ill.on .fan-r{animation:illFanR .9s var(--ov-ease) .45s both}
@keyframes illFanL{to{transform:rotate(-11deg) translate(-34px,4px)}}
@keyframes illFanR{to{transform:rotate(10deg) translate(34px,4px)}}
.ov-ill.on .slide.a{animation:illSlideA 7s ease 1s infinite}
.ov-ill.on .slide.b{animation:illSlideB 7s ease 1s infinite}
@keyframes illSlideA{0%,42%{opacity:1;transform:none}48%,92%{opacity:0;transform:translateX(-16px)}100%{opacity:1;transform:none}}
@keyframes illSlideB{0%,42%{opacity:0;transform:translateX(16px)}48%,92%{opacity:1;transform:none}100%{opacity:0;transform:translateX(16px)}}
.ov-ill.on .nudge{animation:illNudge 1.4s ease-in-out infinite}
@keyframes illNudge{0%,100%{transform:none}50%{transform:translateX(5px)}}
.ov-ill.on .dot{animation:illDot 7s var(--ov-ease) 1s infinite}
@keyframes illDot{0%,42%{transform:none}48%,92%{transform:translateX(16px)}100%{transform:none}}
.ov-ill.on .beat{animation:illBeat 1.2s ease-in-out infinite}
@keyframes illBeat{0%,100%{transform:none}30%{transform:scale(1.28)}}
.ov-ill.on .cap{animation:illCap 3s linear infinite}
.ov-ill.on .cap.c2{animation-delay:1s}
.ov-ill.on .cap.c3{animation-delay:2s}
@keyframes illCap{0%,30%{fill:#FF1979}36%,100%{fill:#fff}}
.ov-ill .prog{transform-origin:left center}
.ov-ill.on .prog{animation:illProg 6s linear infinite}
@keyframes illProg{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.ov-ill.on .head{animation:illHead 6s linear infinite}
@keyframes illHead{from{transform:none}to{transform:translateX(286px)}}
.ov-ill.on .wv{animation:illWave 1.1s ease-in-out var(--t,0s) infinite}
@keyframes illWave{0%,100%{transform:scaleY(.45)}50%{transform:scaleY(1.25)}}
.ov-ill.on .drop{animation:illDrop 3s linear var(--t,0s) infinite}
@keyframes illDrop{0%{opacity:0;transform:translate(var(--x),0)}10%{opacity:1}36%{transform:translate(calc(var(--x) * .55),92px)}66%{transform:translate(calc(var(--x) * .2),186px)}90%{opacity:1;transform:translate(0,256px)}100%{opacity:0;transform:translate(0,280px)}}
.ov-ill.on .pulse{animation:illPulse 2.4s ease-out 1.4s infinite}
@keyframes illPulse{0%{opacity:.7;transform:scale(.8)}100%{opacity:0;transform:scale(1.9)}}

/* selected work: simple placeholder covers until the custom cover art is ready */
.ov-case:nth-of-type(1){background:#FFD9E8}
.ov-case:nth-of-type(2){background:#FFE9A8}
.ov-case:nth-of-type(3){background:#E6E3E4}
.ov-case .cover{position:absolute;inset:0 412px 0 0;padding:52px 56px;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden}
.ov-case .cover b{font-size:clamp(38px,4.6vw,68px);font-weight:600;letter-spacing:-.03em;line-height:1.02;color:var(--ov-ink);margin-top:26px;max-width:520px}
.ov-case .cover > span:not(.ov-tag){font-size:20px;line-height:1.25;color:#3b3b3b;margin-top:18px;max-width:330px}
.ov-case .cover img{position:absolute;right:48px;bottom:0;width:270px;height:320px;object-fit:cover;border-radius:140px 140px 0 0}

.ov-band{overflow:hidden;padding:26px 0}
.ov-band .track{display:flex;align-items:center;gap:34px;width:max-content;animation:ovMarq 40s linear infinite}
.ov-band span{font-size:24px;font-weight:500;color:var(--ov-ink);white-space:nowrap}
.ov-band i{width:22px;height:22px;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none}
.ov-band i::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ov-pink)}

/* ---------- proof bento */
.ov-proof .ov-sub{max-width:390px;margin:16px auto 56px}
.ov-bento{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:790px;margin:0 auto}
.ov-bento > div{border-radius:var(--ov-r);padding:32px;min-height:350px;display:flex;flex-direction:column;position:relative;overflow:hidden}
.ov-bento .y{background:var(--ov-yellow)}
.ov-bento .g{background:var(--ov-grey)}
.ov-bento .k{grid-column:1/-1;background:var(--ov-deep);color:#fff;min-height:320px;flex-direction:row;align-items:center;gap:50px;padding:36px 44px}
.ov-bento .lab{align-self:flex-start;font-size:14px;padding:5px 11px;border-radius:100px;background:var(--ov-ink);color:#fff}
.ov-bento .g .lab{background:#fff;color:var(--ov-ink);position:absolute;top:30px;right:30px}
.ov-bento .num{font-size:52px;font-weight:500;letter-spacing:-.02em;line-height:1;color:var(--ov-ink);margin-top:auto}
.ov-bento .cap{font-size:18px;line-height:1.2;color:#3b3b3b;margin-top:14px;max-width:240px}
.ov-bento .g .ttl{font-size:18px;line-height:1.15;color:var(--ov-body);max-width:110px}
.ov-bento .g .num{text-align:center;margin:auto 0 0}
.ov-bento .g .ov-bars{height:54px;margin-top:38px;gap:10px}
.ov-bento .g .ov-bars i{background:#D9D9D9;height:54px;border-radius:6px}
.ov-bento .g .ov-bars i.hi{background:var(--ov-pink-soft)}
.ov-bento .g .cap{color:var(--ov-body);max-width:260px}
.ov-bento .k .ph{flex:none;width:340px;height:250px;border-radius:300px;overflow:hidden}
/* the subject stands at about 66% across the photo: pin that point to the middle of the pill */
.ov-bento .k .ph{position:relative}
.ov-bento .k .ph img{position:absolute;left:50%;top:-12%;height:138%;width:auto;max-width:none;transform:translateX(-66%)}
.ov-bento .k small{display:block;font-size:20px;color:#DADADA}
.ov-bento .k b{display:block;font-size:52px;font-weight:500;color:var(--ov-pink);line-height:1.1;margin:10px 0 34px}

/* ---------- work stack */
.ov-work .ov-headrow{position:sticky;top:110px;z-index:1;background:#fff;padding:14px 0;margin-bottom:40px}
.ov-stack{max-width:1140px;margin:0 auto}
.ov-case{position:sticky;top:260px;z-index:2;height:560px;border-radius:var(--ov-r);overflow:hidden;margin-bottom:70px;background:#222;transform-origin:50% 0;will-change:transform;box-shadow:0 -20px 50px -30px rgba(0,0,0,.4)}
.ov-case > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ov-case .info{position:absolute;top:12px;right:12px;bottom:12px;width:400px;background:#0B0B0C;border-radius:24px;padding:30px;color:#fff;display:flex;flex-direction:column}
.ov-case .tags{display:flex;gap:8px;flex-wrap:wrap}
.ov-case .tags span{font-size:14px;padding:5px 11px;border-radius:100px;background:rgba(255,255,255,.09)}
.ov-case h3{font-size:36px;font-weight:500;letter-spacing:-.03em;line-height:1.2;color:#fff;margin:38px 0 10px}
.ov-case p{color:#B7BCBC;font-size:18px;line-height:1.2}
.ov-case .res{margin-top:auto;padding-top:26px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;align-items:flex-end}
.ov-case .res b{font-size:52px;font-weight:500;color:var(--ov-pink);line-height:1}
.ov-case .res span{color:#B7BCBC;font-size:18px;padding-bottom:6px}
.ov-case .ov-btn{margin-top:22px;width:100%;box-shadow:none}

/* ---------- numbers */
.ov-nums{padding:60px 0 120px;text-align:center}
.ov-nums .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;max-width:1100px;margin:22px auto 0}
.ov-nums b{display:block;font-size:clamp(52px,5.6vw,80px);font-weight:600;letter-spacing:-.02em;line-height:1.1;color:var(--ov-ink)}
.ov-nums b em{font-style:normal;color:var(--ov-pink)}
.ov-nums .grid > div > span{display:block;color:var(--ov-body);font-size:18px;margin-top:8px}

/* ---------- how we work */
.ov-how{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:0 30px}
.ov-how .left{background:var(--ov-grey);border-radius:var(--ov-r);padding:40px;display:flex;flex-direction:column;min-height:660px}
.ov-how .top{display:flex;justify-content:space-between;gap:20px}
.ov-how .top h2{font-size:42px;font-weight:500;letter-spacing:-.02em;line-height:1.1;max-width:230px}
.ov-how .top p{color:var(--ov-body);font-size:18px;line-height:1.15;text-align:right;max-width:240px}
.ov-how .bot{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:auto}
.ov-how .bot .ph{width:300px;height:380px;border-radius:24px;overflow:hidden;flex:none}
.ov-how .bot .ph img{width:100%;height:100%;object-fit:cover}
.ov-how .bot b{display:block;font-size:80px;font-weight:600;letter-spacing:-.02em;line-height:1;text-align:right}
.ov-how .bot > div > span{display:block;color:var(--ov-body);font-size:16px;line-height:1.2;text-align:right;max-width:250px;margin-top:22px}
.ov-how .right{position:relative;display:grid;place-items:center}
.ov-circle{width:min(100%,660px);aspect-ratio:1;border-radius:50%;background:var(--ov-deep);box-shadow:0 0 0 8px var(--ov-deep),0 0 0 9px rgba(255,255,255,.14) inset;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px;overflow:hidden;position:relative}
.ov-circle::before{content:"";position:absolute;inset:8px;border-radius:50%;border:1px solid rgba(255,255,255,.1);pointer-events:none}
.ov-circle > small{color:#fff;font-size:18px}
.ov-steps{position:relative;width:62%;height:300px}
.ov-step{position:absolute;inset:0;background:var(--ov-pink-soft);border-radius:26px;padding:32px 34px;text-align:center;display:flex;flex-direction:column;align-items:center;opacity:0;transform:translateX(60%) scale(.9);transition:opacity .6s var(--ov-ease),transform .8s var(--ov-ease)}
.ov-step.on{opacity:1;transform:none}
.ov-step.out{opacity:0;transform:translateX(-60%) scale(.9)}
.ov-step .n{width:56px;height:56px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:18px;color:var(--ov-ink)}
.ov-step h3{font-size:32px;font-weight:500;letter-spacing:-.02em;color:var(--ov-ink);margin:22px 0 14px}
.ov-step p{color:#3b3b3b;font-size:17px;line-height:1.25}
.ov-steps.rev .ov-step{transform:translateX(-60%) scale(.9)}
.ov-steps.rev .ov-step.on{transform:none}
.ov-steps.rev .ov-step.out{transform:translateX(60%) scale(.9)}
.ov-steps.snap .ov-step:not(.on){transition:none}
.ov-nav{position:absolute;top:50%;z-index:3;width:52px;height:52px;margin-top:-26px;border-radius:50%;background:#fff;color:var(--ov-ink);display:grid;place-items:center;box-shadow:0 10px 24px -10px rgba(0,0,0,.6);transition:background .3s,color .3s,transform .35s var(--ov-ease)}
.ov-nav svg{width:20px;height:20px}
.ov-nav.prev{left:5.5%}
.ov-nav.prev svg{transform:rotate(180deg)}
.ov-nav.next{right:5.5%}
.ov-nav:hover{background:var(--ov-pink);color:#fff;transform:scale(1.08)}
.ov-segs{display:flex;gap:6px;width:230px}
.ov-segs i{flex:1;height:2px;background:rgba(255,255,255,.2);border-radius:2px;overflow:hidden;position:relative;cursor:pointer}
.ov-segs i.on::after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;animation:ovSeg 4s linear forwards}
.ov-segs i.done{background:#fff}
@keyframes ovSeg{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* ---------- comparison */
.ov-vs{padding:110px 0 0;margin-top:180px}
.ov-vs .why-ticker{margin:28px 0 0}
.ov-vs .wt-track img{margin-bottom:-2px}
.ov-vs .inner{max-width:1200px;margin:0 auto;padding:0 54px}
.ov-vs h2{font-size:clamp(40px,5.6vw,80px);font-weight:600;letter-spacing:-.02em;line-height:1.1;max-width:900px;margin:22px auto 90px}
.ov-vs .cols{display:grid;grid-template-columns:1fr 1fr;gap:28px;position:relative;text-align:left}
.ov-vs .bar{height:70px;border-radius:14px;display:grid;place-items:center;font-size:20px;font-weight:500;background:var(--ov-ink2);color:#DADADA}
.ov-vs .bar.us{background:var(--ov-pink);color:#fff;font-size:24px}
.ov-vs .bar.us b{font-weight:700}
.ov-vs .mid{position:absolute;left:50%;top:13px;transform:translateX(-50%);width:44px;height:44px;border-radius:50%;background:var(--ov-ink);border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;font-size:13px;color:#fff;z-index:2}
.ov-vs ul{list-style:none;margin:30px 0 0;padding:0 50px;display:grid;gap:22px}
.ov-vs li{display:flex;gap:14px;font-size:18px;line-height:1.25;color:#B7BCBC}
.ov-vs li svg{flex:none;width:16px;height:16px;margin-top:4px}
.ov-vs .yes li{color:#fff}
.ov-vs .yes li svg{color:var(--ov-pink)}
.ov-founder{display:flex;align-items:center;gap:30px;max-width:690px;margin:100px auto 0;background:var(--ov-ink2);border-radius:26px;padding:12px;text-align:left}
.ov-founder img{width:160px;height:180px;border-radius:16px;object-fit:cover;flex:none}
.ov-founder blockquote{font-size:22px;font-weight:500;letter-spacing:-.02em;line-height:1.4;color:#B7BCBC;max-width:380px}
.ov-founder .by{margin-top:20px;display:flex;align-items:center;gap:10px;color:#fff;font-size:20px}
.ov-founder .by small{font-size:14px;color:#B7BCBC}
.ov-founder .by i{width:4px;height:4px;border-radius:50%;background:#B7BCBC}

/* ---------- testimonials */
.ov-tst .ov-h2{margin-top:18px}
.ov-tst .row{display:flex;align-items:center;justify-content:center;gap:90px;margin-top:70px}
.ov-faces{display:flex;flex-direction:column;align-items:center;gap:14px;width:120px}
.ov-faces button{width:62px;height:62px;border-radius:16px;overflow:hidden;opacity:.55;border:3px solid transparent;transition:all .5s var(--ov-ease);padding:0}
.ov-faces button img{width:100%;height:100%;object-fit:cover}
.ov-faces button.on{width:108px;height:108px;border-radius:26px;opacity:1;border-color:var(--ov-pink)}
.ov-quote{position:relative;width:690px;max-width:100%;min-height:320px;background:var(--ov-grey);border-radius:var(--ov-r);padding:40px}
.ov-quote .stars{color:#FFB800;font-size:26px;letter-spacing:3px;line-height:1}
.ov-quote .q{position:absolute;left:40px;right:40px;top:86px;bottom:40px;display:flex;flex-direction:column;opacity:0;transform:translateY(14px);transition:opacity .5s,transform .6s var(--ov-ease);pointer-events:none}
.ov-quote .q.on{opacity:1;transform:none;pointer-events:auto}
.ov-quote blockquote{font-size:21px;font-weight:500;letter-spacing:-.01em;line-height:1.4;color:var(--ov-ink)}
.ov-quote .by{margin-top:auto;display:flex;align-items:center;gap:10px;font-size:18px;color:var(--ov-ink);flex-wrap:wrap}
.ov-quote .by small{font-size:14px;color:var(--ov-body)}
.ov-quote .by i{width:4px;height:4px;border-radius:50%;background:var(--ov-body)}

.ov-videos{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1140px;margin:60px auto 0;text-align:left}
@media (max-width:1100px){.ov-videos{grid-template-columns:repeat(2,1fr);max-width:640px}}
.ov-videos .vt{border-radius:var(--ov-r);overflow:hidden;position:relative}
.ov-videos .vt video{aspect-ratio:4/5;display:block}
.ov-videos .vt .cap{padding:50px 22px 20px}
.ov-videos .v-nicholas video{object-position:72% 50%}
.ov-videos .vt .cap b{font-size:17px;font-weight:500}
.ov-videos .vt .cap small{font-size:13px}
.ov-more{display:flex;justify-content:center;margin-top:50px}
@media (max-width:820px){.ov-videos{grid-template-columns:1fr;max-width:380px;margin-top:40px}}

/* ---------- testimonials page */
.ov-thero{padding-bottom:100px}
.ov-thero h1{max-width:900px}
.ov-tproof{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 0 38px}
.ov-tproof .ov-avs img{width:46px;height:46px;border-color:var(--ov-grey);margin-left:-14px}
.ov-tproof .ov-avs img:first-child{margin-left:0}
.ov-tproof p{font-size:15px;color:var(--ov-body);text-align:left;line-height:1.3}
.ov-tproof .stars{display:block;color:#FFB800;letter-spacing:2px;font-size:15px}
.ov-vsec{padding:110px 0;margin-top:30px}
.ov-vsec .ov-h2{margin-top:18px}
.ov-videos.six{grid-template-columns:repeat(3,1fr);max-width:1000px;gap:22px}
.ov-wall{columns:3;column-gap:20px;max-width:1140px;margin:0 auto}
.ov-tcard{break-inside:avoid;margin:0 0 20px;background:var(--ov-grey);border-radius:var(--ov-r);padding:32px}
.ov-tcard .stars{color:#FFB800;letter-spacing:3px;font-size:18px;line-height:1}
.ov-tcard blockquote{font-size:19px;font-weight:500;letter-spacing:-.01em;line-height:1.42;color:var(--ov-ink);margin:18px 0 26px}
.ov-tcard figcaption{display:flex;align-items:center;gap:14px}
.ov-tcard figcaption img,.ov-tcard .ini{flex:none;width:48px;height:48px;border-radius:50%;object-fit:cover}
.ov-tcard .ini{display:grid;place-items:center;background:var(--ov-ink);color:#fff;font-size:16px;font-weight:500;letter-spacing:.02em}
.ov-tcard b{display:block;font-size:17px;font-weight:500;color:var(--ov-ink);line-height:1.2}
.ov-tcard small{display:block;font-size:14px;color:var(--ov-body);line-height:1.3;margin-top:3px}
.ov-tcard.pk{background:var(--ov-pink-soft)}
.ov-tcard.yl{background:var(--ov-yellow)}
.ov-tcard.pk small,.ov-tcard.yl small{color:#4a4a4a}
.ov-tcard.dk{background:var(--ov-deep)}
.ov-tcard.dk blockquote,.ov-tcard.dk b{color:#fff}
.ov-tcard.dk small{color:#B7BCBC}
.ov-tcard.dk .ini{background:var(--ov-pink)}
@media (max-width:1100px){.ov-wall{columns:2}.ov-videos.six{grid-template-columns:repeat(2,1fr);max-width:640px}}
@media (max-width:700px){.ov-wall{columns:1}.ov-tcard{padding:26px}.ov-tcard blockquote{font-size:17px}.ov-vsec{padding:70px 0}.ov-tproof{flex-direction:column;gap:10px}.ov-tproof p{text-align:center}}

/* ---------- contact page */
.ov-chero{padding-bottom:90px}
.ov-chero .lede{margin-bottom:0;max-width:600px}
.ov-contact{padding-top:30px}
.ov-cal{display:grid;gap:34px;max-width:1140px;margin:0 auto 24px;background:var(--ov-deep);border-radius:var(--ov-r);padding:40px}
.ov-cal .ov-ccall{background:none;padding:6px 0 0;border-radius:0;display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:end}
.ov-cal .ov-ccall ol{margin:0}
.ov-cal .ov-ccall .host{margin-top:26px;padding-top:0;border-top:0}
.ov-calbox{background:#fff;border-radius:22px;overflow:hidden;position:relative}
.ov-cal .calendly-inline-widget{min-width:300px;height:700px}
.ov-cal .alt{margin:0;padding:12px 16px;text-align:center;font-size:14px;color:var(--ov-body);border-top:1px solid #eee}
.ov-cal .alt a{color:var(--ov-ink);border-bottom:1px solid var(--ov-pink)}
.ov-cgrid{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;max-width:1140px;margin:0 auto;align-items:start}
.ov-cgrid .ov-cinfo{grid-template-columns:1fr}
@media (max-width:1000px){.ov-cal{padding:28px}.ov-cal .ov-ccall{grid-template-columns:1fr;gap:26px}}
@media (max-width:760px){.ov-cal .calendly-inline-widget{height:1000px}}
@media (max-width:700px){.ov-cal{padding:16px}.ov-cal .ov-ccall{padding:12px 10px 0}}
.ov-ccol{display:grid;gap:24px}
.ov-ccall{background:var(--ov-deep);color:#fff;border-radius:var(--ov-r);padding:40px}
.ov-ccall .ov-tag{background:rgba(255,255,255,.08);color:#F0F0F0}
.ov-ccall h2{font-size:36px;font-weight:500;letter-spacing:-.03em;line-height:1.15;color:#fff;margin:22px 0 12px}
.ov-ccall p{color:#B7BCBC;font-size:18px;line-height:1.3}
.ov-ccall ol{list-style:none;margin:28px 0 32px;display:grid;gap:10px}
.ov-ccall li{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.06);border-radius:16px;padding:14px 18px;font-size:17px;color:#fff}
.ov-ccall li span{font-size:13px;color:var(--ov-pink)}
.ov-ccall .host{display:flex;align-items:center;gap:14px;margin-top:34px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12)}
.ov-ccall .host img{width:56px;height:56px;border-radius:16px;object-fit:cover;flex:none}
.ov-ccall .host b{display:block;font-size:17px;font-weight:500}
.ov-ccall .host small{display:block;font-size:14px;color:#B7BCBC;line-height:1.3;margin-top:2px}
.ov-cinfo{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ov-crow{display:flex;gap:14px;align-items:flex-start;background:var(--ov-grey);border-radius:22px;padding:20px}
.ov-crow:first-child,.ov-crow:last-child{grid-column:1/-1}
.ov-crow .ic{flex:none;width:40px;height:40px;border-radius:50%;background:#fff;color:var(--ov-ink);display:grid;place-items:center}
.ov-crow .ic svg{width:18px;height:18px}
.ov-crow small{display:block;font-size:13px;color:var(--ov-body)}
.ov-crow b{display:block;font-size:16px;font-weight:500;line-height:1.3;color:var(--ov-ink);margin-top:2px}
.ov-crow a{color:var(--ov-ink);border-bottom:1px solid var(--ov-pink)}
.ov-cform{background:var(--ov-grey);border-radius:var(--ov-r);padding:40px}
.ov-cform h2{font-size:36px;font-weight:500;letter-spacing:-.03em;line-height:1.15;color:var(--ov-ink);margin:22px 0 28px;max-width:420px}
.v2 .ov-cform .form{padding:0;background:none;border:0;box-shadow:none;display:grid;gap:18px}
.v2 .ov-cform .form label{font-size:15px;font-weight:500;color:var(--ov-ink);display:grid;gap:8px}
.v2 .ov-cform .form input,.v2 .ov-cform .form select,.v2 .ov-cform .form textarea{background:#fff;border:1px solid transparent;border-radius:16px;padding:16px 18px;font-size:16px;font-family:inherit;color:var(--ov-ink);width:100%;transition:border-color .2s,box-shadow .2s}
.v2 .ov-cform .form textarea{min-height:150px;resize:vertical}
.v2 .ov-cform .form input:focus,.v2 .ov-cform .form select:focus,.v2 .ov-cform .form textarea:focus{outline:0;border-color:var(--ov-pink);box-shadow:0 0 0 4px rgba(255,25,121,.12)}
.v2 .ov-cform .form .ov-btn{width:100%;margin-top:4px}
.v2 .ov-cform .form > small{text-align:center;color:var(--ov-body);font-size:14px}
@media (max-width:1000px){.ov-cgrid{grid-template-columns:1fr}}
@media (max-width:700px){.ov-ccall,.ov-cform{padding:26px}.ov-ccall h2,.ov-cform h2{font-size:28px}.ov-cinfo{grid-template-columns:1fr}}

/* ---------- packages (featured + two) */
.ov-pk{display:grid;grid-template-columns:1.07fr 1fr;gap:30px;max-width:1140px;margin:0 auto}
.ov-pk .feat{position:relative;border-radius:var(--ov-r);overflow:hidden;min-height:430px;display:flex;flex-direction:column;justify-content:flex-end;padding:40px;color:#fff}
.ov-pk .feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ov-ease)}
.ov-pk a:hover img{transform:scale(1.05)}
.ov-pk .feat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,17,17,.1) 20%,rgba(18,17,17,.92))}
.ov-pk .feat > *{position:relative;z-index:1}
.ov-pk .feat .chip{position:absolute;top:40px;left:40px;background:#fff;color:var(--ov-ink);font-size:14px;padding:5px 12px;border-radius:100px}
.ov-pk .meta{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--ov-body)}
.ov-pk .meta i{width:4px;height:4px;border-radius:50%;background:currentColor}
.ov-pk .feat .meta{color:#DADADA}
.ov-pk h3{font-size:26px;font-weight:500;letter-spacing:-.02em;line-height:1.2;margin-top:12px;color:var(--ov-ink)}
.ov-pk .feat h3{color:#fff;font-size:28px;max-width:380px}
.ov-pk .two{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.ov-pk .two a{display:block}
.ov-pk .two .im{aspect-ratio:1.33;border-radius:26px;overflow:hidden;margin-bottom:22px}
.ov-pk .two .im img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ov-ease)}

/* ---------- faq */
.ov-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;max-width:1140px;margin:0 auto}
.ov-faq .ov-h2{margin:18px 0 16px}
.ov-faq details{background:var(--ov-grey);border-radius:22px;padding:24px 28px;margin-bottom:12px;border:0}
.ov-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:20px;font-weight:500;letter-spacing:-.01em;color:var(--ov-ink)}
.ov-faq summary::-webkit-details-marker{display:none}
.ov-faq summary::after{content:"+";flex:none;width:36px;height:36px;border-radius:50%;background:var(--ov-ink);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:300;transition:transform .35s var(--ov-ease),background .3s}
.ov-faq details[open] summary::after{transform:rotate(45deg);background:var(--ov-pink)}
.ov-faq details p{margin-top:14px;color:var(--ov-body);font-size:17px;line-height:1.45;max-width:560px}

/* ---------- footer */
.ov-foot{margin:0 30px 30px;padding:210px 0 50px}
.ov-foot .inner{max-width:1310px;margin:0 auto;padding:0 54px}
.ov-foot .cta{text-align:center;position:relative;padding-bottom:150px}
.ov-foot .cta h2{font-size:clamp(40px,6.2vw,90px);font-weight:600;letter-spacing:-.02em;line-height:1.2;max-width:980px;margin:0 auto;color:#F0F0F0}
.ov-foot .cta .ov-btn{transform:rotate(-7deg);margin-top:-18px;position:relative;transition:transform .5s var(--ov-ease)}
.ov-foot .cta .ov-btn:hover{transform:rotate(0) scale(1.04)}
.ov-foot .cols{display:grid;grid-template-columns:1.5fr .75fr .75fr 1fr;gap:50px}
.ov-foot h3{font-size:36px;font-weight:500;letter-spacing:-.03em;color:#fff}
.ov-foot .cols p{color:#B7BCBC;font-size:18px;line-height:1.2;max-width:340px;margin:16px 0 28px}
.ov-foot .mail{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:400px;height:60px;padding:0 8px 0 20px;border-radius:100px;background:rgba(255,255,255,.06);color:#DADADA;font-size:16px}
.ov-foot .mail span{width:44px;height:44px;border-radius:50%;background:var(--ov-ink);color:#fff;display:grid;place-items:center;transition:background .3s}
.ov-foot .mail:hover span{background:var(--ov-pink)}
.ov-foot .mail svg{width:18px;height:18px}
.ov-foot .soc{display:flex;align-items:center;gap:10px;margin-top:30px;color:#fff;font-size:20px}
.ov-foot .soc a{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.07);display:grid;place-items:center;transition:background .3s}
.ov-foot .soc a:hover{background:var(--ov-pink)}
.ov-foot .soc svg{width:15px;height:15px}
.ov-foot h4{font-size:14px;font-weight:400;color:#fff;margin-bottom:26px}
.ov-foot ul{list-style:none;display:grid;gap:16px}
.ov-foot ul a{color:#B7BCBC;font-size:20px;line-height:1.2;transition:color .25s}
.ov-foot ul a:hover{color:var(--ov-pink)}
.ov-word{display:flex;align-items:center;gap:.12em;font-size:clamp(40px,12.3vw,188px);letter-spacing:-.045em;line-height:1;color:#fff;margin:150px 0 70px;white-space:nowrap}
.ov-word img{width:.86em;height:.86em;border-radius:50%;flex:none}
.ov-word b{font-weight:700}
.ov-word span span{font-weight:400}
.ov-pk p{font-size:17px;line-height:1.3;color:var(--ov-body);margin-top:8px;max-width:380px}
.ov-pk .feat p{color:#DADADA}
.ov-foot .legal{display:flex;justify-content:space-between;gap:20px;color:#B7BCBC;font-size:16px;border:0;margin:0;padding:0}
.ov-foot .legal b{color:#fff;font-weight:500}

/* ---------- responsive */
@media (max-width:1100px){
  .ov-hero-media{grid-template-columns:1fr}
  .ov-hero-photo{height:440px}
  .ov-stat{height:auto;gap:0}
  .ov-dots{grid-template-columns:repeat(12,1fr);margin-bottom:30px}
  .ov-svc{gap:40px}
  .ov-how{grid-template-columns:1fr}
  .ov-pk{grid-template-columns:1fr}
  .ov-case .info{width:340px}
  .ov-foot .cols{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  .ov-sec{padding:80px 0}
  .ov-panel,.ov-povwrap,.ov-how,.v2 main > section.bg-surface,.v2 main > .bg-ink,.v2 main > section.bg-ink,.v2 main > div.bg-surface{margin-left:12px;margin-right:12px}
  .ov-foot{margin:0 12px 12px;padding:110px 0 36px}
  .ov-wrap{padding:0 18px}
  .v2 .site-header > .container{padding:0 16px;height:72px}
  .ov-hero{padding:70px 10px 10px}
  .ov-hero .lede{padding:0 12px}
  .ov-hero-media{margin-top:56px;gap:12px}
  .ov-hero-photo{height:320px}
  .ov-stat{padding:26px}
  .ov-stat .big b{font-size:56px}
  .ov-trust{flex-direction:column;gap:30px;padding:44px 18px}
  .ov-marq{width:100%}
  .ov-povwrap > .ov-panel{padding:90px 0 80px}
  .ov-pov .inner,.ov-vs .inner,.ov-foot .inner{padding:0 22px}
  .ov-team{flex-direction:column;align-items:flex-start;gap:18px}
  .ov-team img{width:64px;height:64px}
  .ov-svc{grid-template-columns:1fr;margin-top:100px}
  .ov-svc h3{margin-bottom:30px}
  .ov-svc-list button{font-size:22px}
  .ov-band span{font-size:18px}
  .ov-headrow{flex-direction:column;align-items:flex-start;margin-bottom:36px}
  .ov-bento{grid-template-columns:1fr}
  .ov-bento > div{min-height:280px}
  .ov-bento .k{flex-direction:column;align-items:flex-start;gap:26px;padding:28px}
  .ov-bento .k .ph{width:100%;height:190px}
  .ov-bento .k .ph img{height:175%;top:-22%}
  .ov-work .ov-headrow{position:static}
  .ov-case{position:relative;top:auto;height:auto;margin-bottom:18px;transform:none!important}
  .ov-case > img{position:relative;height:230px}
  .ov-case .cover{position:relative;inset:auto;height:270px;padding:24px}
  .ov-case .cover b{font-size:32px;margin-top:16px;max-width:62%}
  .ov-case .cover > span:not(.ov-tag){font-size:15px;max-width:55%}
  .ov-case .cover img{right:16px;width:120px;height:150px;border-radius:60px 60px 0 0}
  .ov-case .info{position:relative;inset:auto;width:auto;margin:8px;border-radius:22px;padding:24px}
  .ov-case h3{font-size:28px;margin-top:24px}
  .ov-nums{padding:20px 0 80px}
  .ov-nums .grid{grid-template-columns:1fr;gap:36px}
  .ov-how .left{padding:26px;min-height:0}
  .ov-how .top{flex-direction:column}
  .ov-how .top p{text-align:left}
  .ov-how .bot{margin-top:40px;flex-direction:column;align-items:flex-start}
  .ov-how .bot .ph{width:100%;height:260px}
  .ov-how .bot b,.ov-how .bot > div > span{text-align:left}
  .ov-circle{border-radius:var(--ov-r);aspect-ratio:auto;padding:50px 0;box-shadow:none}
  .ov-circle::before{display:none}
  .ov-steps{width:70%;height:340px}
  .ov-step{padding:26px 18px}
  .ov-step h3{font-size:25px}
  .ov-step p{font-size:15px}
  .ov-nav{width:38px;height:38px;margin-top:-19px}
  .ov-nav svg{width:16px;height:16px}
  .ov-nav.prev{left:8px}
  .ov-nav.next{right:8px}
  .ov-vs{padding:70px 0 0;margin-top:80px}
  .ov-vs .why-ticker{margin-top:24px}
  .ov-vs h2{margin-bottom:50px}
  .ov-vs .cols{grid-template-columns:1fr;gap:40px}
  .ov-vs .mid{display:none}
  .ov-vs ul{padding:0 8px}
  .ov-founder{flex-direction:column;align-items:flex-start;margin-top:60px;padding:14px 14px 26px}
  .ov-founder img{width:100%;height:240px}
  .ov-founder > div{padding:0 10px}
  .ov-tst .row{flex-direction:column;gap:30px;margin-top:44px}
  .ov-faces{flex-direction:row;width:auto}
  .ov-faces button{width:46px;height:46px;border-radius:12px}
  .ov-faces button.on{width:72px;height:72px;border-radius:18px}
  .ov-quote{padding:26px;min-height:440px}
  .ov-quote .q{left:26px;right:26px;top:70px;bottom:26px}
  .ov-quote blockquote{font-size:18px}
  .ov-pk .two{grid-template-columns:1fr}
  .ov-pk .feat{padding:26px;min-height:380px}
  .ov-pk .feat .chip{top:26px;left:26px}
  .ov-faq{grid-template-columns:1fr;gap:36px}
  .ov-faq summary{font-size:18px}
  .ov-foot .cta{padding-bottom:90px}
  .ov-foot .cta .ov-btn{margin-top:18px}
  .v2 .site-header .header-cta .ov-btn{display:none}
  .v2 .site-header .menu-toggle{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--ov-grey)}
  .ov-foot .cols{grid-template-columns:1fr;gap:44px}
  .ov-word{margin:80px 0 40px}
  .ov-foot .legal{flex-direction:column}
}
@media (prefers-reduced-motion:reduce){
  .ov-rv,.ov-w,.ov-fade{opacity:1!important;transform:none!important;filter:none!important;animation:none!important;transition:none!important}
  .ov-marq .track,.ov-band .track,.ov-bars i,.ov-pill .ch svg{animation:none!important}
  .ov-pov .state span{opacity:1}
  .ov-ill *{animation:none!important;opacity:1!important;stroke-dashoffset:0!important}
  .ov-ill .slide.b,.ov-ill .ripple,.ov-ill .pulse,.ov-ill .drop,.ov-ill .pencil,.ov-ill .cursor{opacity:0!important}
}
