/* archVi Corporate direction (approved 9 October 2026), white and navy. Fonts since 14 October 2026:
   Roboto Slab headings (--c4-head), Roboto body and interface text (--c4-sans, --c4-ui).
   Loaded only on pages marked _archvi_design=corporate. Elements are native Elementor widgets;
   these rules style them through their retained classes. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
.archvi-corporate img,.archvi-corporate video{display:block;max-width:100%}
.archvi-corporate h1,.archvi-corporate h2,.archvi-corporate h3,.archvi-corporate h4,.archvi-corporate p,.archvi-corporate figure,.archvi-corporate blockquote,.archvi-corporate ul,.archvi-corporate ol{margin:0;padding:0}
.archvi-corporate ul,.archvi-corporate ol{list-style:none}
.archvi-corporate a{color:inherit;text-decoration:none}
.archvi-corporate button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
.archvi-corporate summary{cursor:pointer;list-style:none}
.archvi-corporate summary::-webkit-details-marker{display:none}
:focus-visible{outline:2px solid #a89df0;outline-offset:4px}
.archvi-corporate .cx-skip{position:absolute;left:12px;top:-60px;z-index:200;padding:10px 14px;background:#111;color:#fff}
.archvi-corporate .cx-skip:focus{top:12px}
.archvi-corporate .cx-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.archvi-corporate .cx-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* Media that swaps (services, case study) */
.archvi-corporate [data-swap-item]{opacity:0;transition:opacity .7s ease,transform 1.4s cubic-bezier(.2,.7,.2,1);transform:scale(1.04)}
.archvi-corporate [data-swap-item].is-active{opacity:1;transform:scale(1)}
/* Showreel */
.archvi-corporate [data-reel] [data-reel-copy]{transition:opacity .45s ease,transform .45s ease,visibility 0s linear 0s}
.archvi-corporate [data-reel].is-playing [data-reel-copy]{opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .35s ease,transform .35s ease,visibility 0s linear .35s}
.archvi-corporate .cx-reel-player{position:absolute;inset:0;z-index:6;background:#000}
.archvi-corporate .cx-reel-player[hidden]{display:none}
.archvi-corporate .cx-reel-player :is(video,iframe){position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:contain;background:#000}
/* Marquee */
.archvi-corporate .cx-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.archvi-corporate .cx-marquee__track{display:flex;width:max-content;animation:cx-marquee var(--cx-marquee-speed,40s) linear infinite}
.archvi-corporate .cx-marquee:hover .cx-marquee__track{animation-play-state:paused}
@keyframes cx-marquee{to{transform:translateX(-50%)}}
/* Quote slider */
.archvi-corporate [data-quote]{display:none}
.archvi-corporate [data-quote].is-active{display:block;animation:cx-fade .6s ease both}
@keyframes cx-fade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* Scroll reveal: content is visible without JavaScript */
.cx-js .archvi-corporate [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.cx-js .archvi-corporate [data-reveal].is-in{opacity:1;transform:none}
/* FAQ disclosure */
.archvi-corporate .cx-faq details>div{overflow:hidden}
.archvi-corporate .cx-faq details[open]>div{animation:cx-fade .4s ease both}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .cx-js .archvi-corporate [data-reveal]{opacity:1;transform:none}
}
.archvi-corporate #ast-scroll-top{display:none!important}
body.archvi-corporate{background:var(--c4-bg);color:var(--c4-text);font:400 17px/1.65 var(--c4-sans)}
.archvi-corporate .c4 h1,.archvi-corporate .c4 h2,.archvi-corporate .c4 h3{font-family:var(--c4-head);color:var(--c4-ink);font-weight:600;letter-spacing:-.02em;line-height:1.12}
.archvi-corporate .c4 h2{font-size:clamp(32px,3.4vw,50px)}
.archvi-corporate .c4-wrap{padding-inline:var(--c4-pad);max-width:1360px;margin-inline:auto;box-sizing:content-box}
.archvi-corporate .c4-label{display:inline-flex;align-items:center;gap:10px;font:600 13px/1.2 var(--c4-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--c4-brand)}
.archvi-corporate .c4-label::before{content:"";width:24px;height:2px;background:currentColor}
.archvi-corporate .c4-label--light{color:#d8d3ff}
.archvi-corporate .c4-btn{display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:var(--c4-r);background:var(--c4-brand);color:#fff;font:600 15px/1 var(--c4-ui);transition:background .25s,color .25s,border-color .25s,box-shadow .25s}
.archvi-corporate .c4-btn:hover{background:var(--c4-brand-dark);box-shadow:0 10px 24px rgba(90,79,160,.25)}
.archvi-corporate .c4-btn--outline{background:transparent;color:var(--c4-ink);border:1.5px solid var(--c4-line)}
.archvi-corporate .c4-btn--outline:hover{background:transparent;border-color:var(--c4-brand);color:var(--c4-brand);box-shadow:none}
.archvi-corporate .c4-btn--outline-light{background:transparent;border:1.5px solid rgba(255,255,255,.6);color:#fff}
.archvi-corporate .c4-btn--outline-light:hover{background:#fff;color:var(--c4-ink);box-shadow:none}
.archvi-corporate .c4-btn--white{background:#fff;color:var(--c4-ink)}
.archvi-corporate .c4-btn--white:hover{background:#eceaff;color:var(--c4-brand-dark);box-shadow:none}
.archvi-corporate .c4-actions{display:flex;flex-wrap:wrap;gap:12px}
.archvi-corporate .c4-link{display:inline-flex;align-items:center;gap:8px;font:600 15px/1 var(--c4-ui);color:var(--c4-brand);transition:gap .25s}
.archvi-corporate .c4-link:hover{gap:12px}
.archvi-corporate .c4-center{display:flex;justify-content:center;margin-top:clamp(28px,3vw,40px)}
/* Hero */
.archvi-corporate .c4-hero{position:relative;min-height:min(100svh,880px);display:flex;align-items:center;overflow:hidden;color:#fff;background:var(--c4-navy)}
.archvi-corporate .c4-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,26,48,.85) 0%,rgba(15,26,48,.55) 45%,rgba(15,26,48,.15) 100%)}
.archvi-corporate .c4-hero__inner{position:relative;display:grid;gap:22px;justify-items:start;width:100%;padding-top:100px;padding-bottom:140px}
.archvi-corporate .c4-hero h1{color:#fff;font-size:clamp(44px,5.8vw,86px);font-weight:700;line-height:1.04;max-width:760px}
.archvi-corporate .c4-hero__lede{max-width:520px;font-size:clamp(18px,1.4vw,21px);color:rgba(255,255,255,.88)}
/* Service quick links overlapping the hero */
.archvi-corporate .c4-quick{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:-64px;border-radius:var(--c4-r);background:#fff;box-shadow:0 20px 50px rgba(15,26,48,.12);padding-inline:0;max-width:1360px}
.archvi-corporate .c4-quick a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:28px 26px;border-left:1px solid var(--c4-line);color:var(--c4-ink);transition:background .25s,color .25s}
.archvi-corporate .c4-quick a:first-child{border-left:0;border-radius:var(--c4-r) 0 0 var(--c4-r)}
.archvi-corporate .c4-quick a:last-child{border-radius:0 var(--c4-r) var(--c4-r) 0}
.archvi-corporate .c4-quick a:hover{background:var(--c4-soft);color:var(--c4-brand)}
.archvi-corporate .c4-quick__num{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eeecfb;color:var(--c4-brand);font:700 13px/1 var(--c4-head)}
.archvi-corporate .c4-quick__title{font:600 16px/1.25 var(--c4-head)}
/* Logos */
.archvi-corporate .c4-logos{display:grid;justify-items:center;gap:22px;padding-block:clamp(44px,5vw,64px) clamp(20px,3vw,32px)}
.archvi-corporate .c4-logos ul{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));width:100%;border:1px solid var(--c4-line);border-radius:var(--c4-r)}
.archvi-corporate .c4-logos li{display:grid;place-items:center;min-height:76px;padding:0 8px;border-left:1px solid var(--c4-line);font:600 clamp(13px,1.1vw,17px)/1.2 var(--c4-head);letter-spacing:.08em;text-transform:uppercase;color:#8b93a1;text-align:center;transition:color .25s}
.archvi-corporate .c4-logos li:first-child{border-left:0}
.archvi-corporate .c4-logos li:hover{color:var(--c4-ink)}
/* Section heads */
.archvi-corporate .c4-head{display:grid;gap:14px;margin-bottom:clamp(28px,3.4vw,48px)}
.archvi-corporate .c4-head>p:last-child:not(.c4-label){max-width:640px;color:var(--c4-muted)}
.archvi-corporate .c4-head--center{justify-items:center;text-align:center}
.archvi-corporate .c4-head--row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px}
.archvi-corporate .c4-head--row>div{display:grid;gap:14px}
/* Services */
.archvi-corporate .c4-services{padding-block:var(--c4-gap) calc(var(--c4-gap) * .5)}
.archvi-corporate .c4-services__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.archvi-corporate .c4-svc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);overflow:hidden;border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;transition:box-shadow .3s,border-color .3s,transform .3s}
.archvi-corporate .c4-svc:hover{box-shadow:0 18px 40px rgba(15,26,48,.1);border-color:transparent;transform:translateY(-3px)}
.archvi-corporate .c4-svc__media{position:relative;display:block;min-height:300px;overflow:hidden;background:var(--c4-soft)}
.archvi-corporate .c4-svc__media :is(img,video){transition:transform .8s ease}
.archvi-corporate .c4-svc:hover .c4-svc__media :is(img,video){transform:scale(1.04)}
.archvi-corporate .c4-svc__body{display:grid;align-content:start;gap:12px;padding:clamp(22px,2.4vw,32px)}
.archvi-corporate .c4-svc__num{font:700 13px/1 var(--c4-head);color:var(--c4-brand);letter-spacing:.1em}
.archvi-corporate .c4-svc h3{font-size:clamp(21px,1.7vw,25px)}
.archvi-corporate .c4-svc h3 a:hover{color:var(--c4-brand)}
.archvi-corporate .c4-svc p{font-size:15.5px;color:var(--c4-muted)}
.archvi-corporate .c4-tags{display:flex;flex-wrap:wrap;gap:6px}
.archvi-corporate .c4-tags li{padding:4px 10px;border-radius:4px;background:var(--c4-soft);font-size:13px;color:var(--c4-text)}
.archvi-corporate .c4-svc .c4-link{margin-top:6px}
/* Portfolio */
.archvi-corporate .c4-work{padding-block:calc(var(--c4-gap) * .5)}
.archvi-corporate .c4-work__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.archvi-corporate .c4-tile{display:block;overflow:hidden;border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;transition:box-shadow .3s}
.archvi-corporate .c4-tile:hover{box-shadow:0 18px 40px rgba(15,26,48,.1)}
.archvi-corporate .c4-tile__media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--c4-soft)}
.archvi-corporate .c4-tile__media img{transition:transform .8s ease}
.archvi-corporate .c4-tile:hover .c4-tile__media img{transform:scale(1.04)}
.archvi-corporate .c4-tile__badge{position:absolute;left:14px;top:14px;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:4px;background:rgba(15,26,48,.75);color:#fff;font:600 12px/1 var(--c4-ui)}
.archvi-corporate .c4-tile__meta{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;color:var(--c4-ink)}
.archvi-corporate .c4-tile__meta>span{display:grid;gap:2px}
.archvi-corporate .c4-tile__meta strong{font:600 18px/1.25 var(--c4-head)}
.archvi-corporate .c4-tile__meta small{font-size:14px;color:var(--c4-muted)}
.archvi-corporate .c4-tile__meta .cx-arrow{color:var(--c4-brand);transition:transform .25s}
.archvi-corporate .c4-tile:hover .c4-tile__meta .cx-arrow{transform:translateX(4px)}
/* Showreel */
.archvi-corporate .c4-reel{padding-block:calc(var(--c4-gap) * .5)}
.archvi-corporate .c4-reel__frame{position:relative;aspect-ratio:16/9;max-height:84svh;width:100%;overflow:hidden;border-radius:var(--c4-r) var(--c4-r) 0 0;background:#000;color:#fff}
.archvi-corporate .c4-reel__shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,26,48,.85) 0%,rgba(15,26,48,.2) 50%,rgba(15,26,48,.1) 100%)}
.archvi-corporate .c4-reel__copy{position:absolute;left:clamp(22px,3.4vw,52px);bottom:clamp(22px,3.4vw,48px);display:grid;gap:12px;max-width:640px}
.archvi-corporate .c4-reel__copy h2{color:#fff;font-size:clamp(30px,3.6vw,54px)}
.archvi-corporate .c4-reel__play{position:absolute;inset:0;margin:auto;display:grid;place-items:center;width:clamp(84px,7vw,104px);height:clamp(84px,7vw,104px);border-radius:50%;background:#fff;color:var(--c4-brand);box-shadow:0 12px 34px rgba(0,0,0,.3);transition:transform .3s,background .3s,color .3s}
.archvi-corporate .c4-reel__play:hover{transform:scale(1.06);background:var(--c4-brand);color:#fff}
.archvi-corporate .c4-reel__chapters{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--c4-line);border-top:0;border-radius:0 0 var(--c4-r) var(--c4-r);overflow:hidden}
.archvi-corporate .c4-reel__chapters button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:20px 22px;border-left:1px solid var(--c4-line);text-align:left;color:var(--c4-ink);transition:background .25s}
.archvi-corporate .c4-reel__chapters button:first-child{border-left:0}
.archvi-corporate .c4-reel__chapters button:hover{background:var(--c4-soft)}
.archvi-corporate .c4-reel__chapters span{font:700 13px/1 var(--c4-head);color:var(--c4-brand)}
.archvi-corporate .c4-reel__chapters strong{font:600 15px/1.3 var(--c4-head)}
.archvi-corporate .c4-reel__chapters small{font-size:13px;color:var(--c4-muted)}
/* Case study: one large image, three text buttons */
.archvi-corporate .c4-case{padding-block:calc(var(--c4-gap) * .5)}
.archvi-corporate .c4-case__frame{position:relative;min-height:min(84svh,780px);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border-radius:var(--c4-r);color:#fff;background:var(--c4-navy)}
.archvi-corporate .c4-case__image{position:absolute;inset:0}
.archvi-corporate .c4-case__shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,26,48,.92) 0%,rgba(15,26,48,.55) 40%,rgba(15,26,48,.05) 75%)}
.archvi-corporate .c4-case__copy{position:relative;display:grid;gap:14px;max-width:680px;padding:0 clamp(22px,3.4vw,52px)}
.archvi-corporate .c4-case__copy h2{color:#fff}
.archvi-corporate .c4-case__copy>p:last-child{color:rgba(255,255,255,.85)}
.archvi-corporate .c4-case__buttons{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);margin-top:clamp(24px,3vw,40px);border-top:1px solid rgba(255,255,255,.2)}
.archvi-corporate .c4-case__buttons a{display:grid;gap:6px;padding:22px clamp(22px,3vw,40px);border-left:1px solid rgba(255,255,255,.2);border-top:3px solid transparent;margin-top:-1px;transition:background .25s,border-color .25s}
.archvi-corporate .c4-case__buttons a:first-child{border-left:0}
.archvi-corporate .c4-case__buttons small{font-size:13px;color:rgba(255,255,255,.7)}
.archvi-corporate .c4-case__buttons span{display:flex;justify-content:space-between;align-items:center;gap:12px;font:600 clamp(17px,1.4vw,21px)/1.25 var(--c4-head)}
.archvi-corporate .c4-case__buttons a.is-active{border-top-color:#a99ff0;background:rgba(255,255,255,.06)}
.archvi-corporate .c4-case__buttons a:hover{background:rgba(255,255,255,.1)}
/* Testimonials: three cards */
.archvi-corporate .c4-quotes{padding-block:calc(var(--c4-gap) * .7) calc(var(--c4-gap) * .5)}
.archvi-corporate .c4-quotes__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.archvi-corporate .c4-quote{display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.6vw,36px);border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff}
.archvi-corporate .c4-quote__mark{color:var(--c4-brand)}
.archvi-corporate .c4-quote blockquote{flex:1;font-size:17.5px;line-height:1.65;color:var(--c4-ink)}
.archvi-corporate .c4-quote figcaption{display:grid;gap:2px;padding-top:18px;border-top:1px solid var(--c4-line)}
.archvi-corporate .c4-quote figcaption strong{font:600 16px/1.3 var(--c4-head);color:var(--c4-ink)}
.archvi-corporate .c4-quote figcaption span{font-size:14px;color:var(--c4-muted)}
/* FAQ */
.archvi-corporate .c4-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);padding-block:calc(var(--c4-gap) * .5)}
.archvi-corporate .c4-faq__aside{display:grid;gap:16px;align-content:start;position:sticky;top:100px;align-self:start}
.archvi-corporate .c4-faq__card{display:grid;gap:12px;justify-items:start;margin-top:16px;padding:clamp(24px,2.4vw,32px);border-radius:var(--c4-r);background:var(--c4-brand);color:#e8e5ff}
.archvi-corporate .c4-faq__card h3{color:#fff;font-size:22px}
.archvi-corporate .c4-faq__card .c4-btn{margin-top:6px}
.archvi-corporate .c4-faq__list{border-top:1px solid var(--c4-line)}
.archvi-corporate .c4-faq details{border-bottom:1px solid var(--c4-line)}
.archvi-corporate .c4-faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font:600 clamp(16px,1.3vw,19px)/1.4 var(--c4-head);color:var(--c4-ink);transition:color .25s}
.archvi-corporate .c4-faq summary:hover{color:var(--c4-brand)}
.archvi-corporate .c4-faq summary i{position:relative;flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--c4-line);transition:background .25s,border-color .25s,color .25s}
.archvi-corporate .c4-faq summary i::before,.archvi-corporate .c4-faq summary i::after{content:"";position:absolute;left:8px;top:12px;width:9px;height:1.5px;background:currentColor;transition:transform .3s}
.archvi-corporate .c4-faq summary i::after{transform:rotate(90deg)}
.archvi-corporate .c4-faq details[open] summary i{background:var(--c4-brand);border-color:var(--c4-brand);color:#fff}
.archvi-corporate .c4-faq details[open] summary i::after{transform:rotate(0)}
.archvi-corporate .c4-faq details>div p{padding:0 48px 22px 0;color:var(--c4-muted)}
/* CTA */
.archvi-corporate .c4-cta{padding-block:calc(var(--c4-gap) * .5) var(--c4-gap)}
.archvi-corporate .c4-cta__panel{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:28px;min-height:420px;overflow:hidden;padding:clamp(32px,5vw,72px);border-radius:var(--c4-r);background:var(--c4-navy);color:#fff}
.archvi-corporate .c4-cta__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(70,61,134,.95) 0%,rgba(15,26,48,.75) 55%,rgba(15,26,48,.4) 100%)}
.archvi-corporate .c4-cta__copy{position:relative;display:grid;gap:16px;max-width:640px}
.archvi-corporate .c4-cta__copy h2{color:#fff;font-size:clamp(32px,3.8vw,56px)}
.archvi-corporate .c4-cta__copy>p:last-child{color:rgba(255,255,255,.85)}
.archvi-corporate .c4-cta__actions{position:relative}
/* Footer */
.archvi-corporate .cx-footer{padding:clamp(52px,6vw,80px) var(--c4-pad) 84px;background:var(--c4-navy);color:#c3c8d2}
.archvi-corporate .cx-footer__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:48px;max-width:1360px;margin-inline:auto}
.archvi-corporate .cx-footer__intro{display:grid;gap:16px;justify-items:start}
.archvi-corporate .cx-footer .cx-header__brand{color:#fff}
.archvi-corporate .cx-footer__intro p{max-width:380px;font-size:17px}
.archvi-corporate .cx-footer__mail{color:#fff;font-weight:600;border-bottom:1.5px solid var(--c4-brand)}
.archvi-corporate .cx-footer__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.archvi-corporate .cx-footer__cols div{display:grid;gap:10px;align-content:start;font-size:15px}
.archvi-corporate .cx-footer__cols h3{font:600 14px/1 var(--c4-head);color:#fff;margin-bottom:8px}
.archvi-corporate .cx-footer__cols a:hover{color:#fff}
.archvi-corporate .cx-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;max-width:1360px;margin:48px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#8e96a5}
.archvi-corporate .cx-footer__bottom span:last-child{display:flex;gap:20px}
.archvi-corporate .cx-footer__word{display:none}/* Responsive */
@media(max-width:1100px){
  .archvi-corporate .c4-quick{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4-quick a:nth-child(3){border-left:0}
  .archvi-corporate .c4-quick a:nth-child(n+3){border-top:1px solid var(--c4-line)}
  .archvi-corporate .c4-logos ul{grid-template-columns:repeat(4,minmax(0,1fr))}
  .archvi-corporate .c4-logos li:nth-child(5){border-left:0}
  .archvi-corporate .c4-logos li:nth-child(n+5){border-top:1px solid var(--c4-line)}
  .archvi-corporate .c4-services__grid{grid-template-columns:1fr}
  .archvi-corporate .c4-quotes__grid{grid-template-columns:1fr}
  .archvi-corporate .c4-faq{grid-template-columns:1fr}
  .archvi-corporate .c4-faq__aside{position:static}
  .archvi-corporate .c4-reel__chapters{grid-template-columns:1fr 1fr}
  .archvi-corporate .c4-reel__chapters button:nth-child(3){border-left:0}
  .archvi-corporate .c4-reel__chapters button:nth-child(n+3){border-top:1px solid var(--c4-line)}
  .archvi-corporate .cx-footer__top{grid-template-columns:1fr}
}
@media(max-width:700px){
  .archvi-corporate .c4-hero__inner{padding-bottom:120px}
  .archvi-corporate .c4-quick{grid-template-columns:1fr;margin-inline:var(--c4-pad)}
  .archvi-corporate .c4-quick a{border-left:0;border-top:1px solid var(--c4-line);padding:18px 20px}
  .archvi-corporate .c4-quick a:first-child{border-top:0}
  .archvi-corporate .c4-logos ul{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4-logos li:nth-child(odd){border-left:0}
  .archvi-corporate .c4-logos li:nth-child(n+3){border-top:1px solid var(--c4-line)}
  .archvi-corporate .c4-svc{grid-template-columns:1fr}
  .archvi-corporate .c4-svc__media{min-height:0;aspect-ratio:16/10}
  .archvi-corporate .c4-work__grid{grid-template-columns:1fr}
  .archvi-corporate .c4-reel__frame{aspect-ratio:4/5;max-height:none}
  .archvi-corporate .c4-reel__chapters{grid-template-columns:1fr}
  .archvi-corporate .c4-reel__chapters button{border-left:0;border-top:1px solid var(--c4-line)}
  .archvi-corporate .c4-reel__chapters button:first-child{border-top:0}
  .archvi-corporate .c4-case__frame{min-height:780px}
  .archvi-corporate .c4-case__buttons{grid-template-columns:1fr;grid-auto-flow:row}
  .archvi-corporate .c4-case__buttons a{border-left:0;border-top:1px solid rgba(255,255,255,.2)}
  .archvi-corporate .cx-footer__cols{grid-template-columns:1fr 1fr}
}
/* Native Elementor/Astra compatibility: neutralise base widget and theme defaults inside the design. */
.archvi-corporate button,.archvi-corporate .cx-header__toggle{border-radius:0;box-shadow:none;text-transform:none;letter-spacing:inherit;line-height:inherit}
.archvi-corporate blockquote{margin:0;padding:0;border:0;font-style:normal}
.archvi-corporate .archvi-native-leaf,.archvi-corporate .archvi-native-container{--kit-widget-spacing:0px}
.elementor-editor-active [data-reveal]{opacity:1!important;transform:none!important}
/* ---------- Services (c4s): shared parts and the three review layouts ---------- */
.archvi-corporate .c4s-band{background:var(--c4-soft)}
.archvi-corporate :is(section,article)[id]{scroll-margin-top:84px}
.archvi-corporate .c4s-hero{min-height:min(88svh,780px)}
.archvi-corporate .c4s-sublabel{margin-top:6px;font:600 12px/1.2 var(--c4-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--c4-ink)}
/* Overview: alternating service rows */
.archvi-corporate .c4s-list{display:grid;gap:24px;padding-block:var(--c4-gap) calc(var(--c4-gap) * .6)}
.archvi-corporate .c4s-list>.c4-head{margin-bottom:clamp(4px,1vw,16px)}
.archvi-corporate .c4s-row{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);overflow:hidden;border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;transition:box-shadow .3s,border-color .3s}
.archvi-corporate .c4s-row:hover{box-shadow:0 18px 40px rgba(15,26,48,.1);border-color:transparent}
.archvi-corporate .c4s-row:nth-of-type(even) .c4s-row__media{order:2}
.archvi-corporate .c4s-row__media{position:relative;display:block;min-height:440px;overflow:hidden;background:var(--c4-soft)}
.archvi-corporate .c4s-row__media :is(img,video){transition:transform .8s ease}
.archvi-corporate .c4s-row:hover .c4s-row__media :is(img,video){transform:scale(1.04)}
.archvi-corporate .c4s-row__body{display:grid;align-content:center;justify-items:start;gap:14px;padding:clamp(28px,3.6vw,56px)}
.archvi-corporate .c4s-row h3{font-size:clamp(26px,2.4vw,36px)}
.archvi-corporate .c4s-row h3 a:hover{color:var(--c4-brand)}
.archvi-corporate .c4s-row__body>p:not(.c4s-sublabel){max-width:540px;color:var(--c4-muted)}
.archvi-corporate .c4s-row .c4-actions{margin-top:10px}
.archvi-corporate .c4s-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;width:100%;border-top:1px solid var(--c4-line)}
.archvi-corporate .c4s-links li{border-bottom:1px solid var(--c4-line)}
.archvi-corporate .c4s-links a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;font:600 15px/1.3 var(--c4-ui);color:var(--c4-ink);transition:color .25s}
.archvi-corporate .c4s-links a:hover{color:var(--c4-brand)}
.archvi-corporate .c4s-links .cx-arrow{flex:none;color:var(--c4-brand);transition:transform .25s}
.archvi-corporate .c4s-links a:hover .cx-arrow{transform:translateX(3px)}
/* Process timeline */
.archvi-corporate .c4s-process{padding-block:calc(var(--c4-gap) * .85)}
.archvi-corporate .c4s-process:not(.c4s-band){padding-block:calc(var(--c4-gap) * .5)}
.archvi-corporate .c4s-timeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.archvi-corporate .c4s-timeline li{position:relative;display:grid;align-content:start;gap:10px;padding:26px 22px;border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff}
.archvi-corporate .c4s-process:not(.c4s-band) .c4s-timeline li{border-color:transparent;background:var(--c4-soft)}
.archvi-corporate .c4s-timeline li:not(:last-child)::after{content:"";position:absolute;top:45px;right:-17px;width:18px;height:2px;background:var(--c4-brand);opacity:.35}
.archvi-corporate .c4s-step__num{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--c4-brand);color:#fff;font:700 13px/1 var(--c4-head)}
.archvi-corporate .c4s-timeline h3{font-size:20px}
.archvi-corporate .c4s-timeline p{font-size:15px;color:var(--c4-muted)}
/* Explorer: split hero */
.archvi-corporate .c4s-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);min-height:min(100svh,860px);background:var(--c4-navy);color:#fff}
.archvi-corporate .c4s-split__copy{display:grid;align-content:center;justify-items:start;gap:22px;padding:120px clamp(28px,4vw,72px) 72px max(var(--c4-pad),calc((100vw - 1360px) / 2))}
.archvi-corporate .c4s-split h1{color:#fff;font-size:clamp(40px,4.6vw,72px);font-weight:700;line-height:1.05}
.archvi-corporate .c4s-split .c4-hero__lede{max-width:540px;font-size:clamp(18px,1.4vw,21px);color:rgba(255,255,255,.85)}
.archvi-corporate .c4s-split__media{position:relative;min-height:420px;overflow:hidden}
.archvi-corporate .c4s-split__media::after{content:"";position:absolute;inset:0 0 auto;height:150px;background:linear-gradient(rgba(15,26,48,.72),rgba(15,26,48,0));pointer-events:none}
.archvi-corporate .c4s-facts{display:grid;grid-template-columns:repeat(3,auto);gap:clamp(20px,3vw,44px);margin-top:18px;padding-top:24px;border-top:1px solid rgba(255,255,255,.18)}
.archvi-corporate .c4s-facts li{display:grid;gap:4px}
.archvi-corporate .c4s-facts strong{font:700 clamp(28px,2.6vw,40px)/1 var(--c4-head);color:#fff}
.archvi-corporate .c4s-facts span{font-size:14px;color:rgba(255,255,255,.72)}
/* Explorer: tabs and panels */
.archvi-corporate .c4s-explorer{padding-block:var(--c4-gap) calc(var(--c4-gap) * .6)}
.archvi-corporate .c4s-explorer__grid{display:grid;grid-template-columns:minmax(280px,.42fr) minmax(0,1fr);gap:24px;align-items:start}
.archvi-corporate .c4s-tabs{display:grid;gap:10px;position:sticky;top:96px}
.archvi-corporate .c4s-tab{display:grid;grid-template-columns:auto 1fr;column-gap:14px;row-gap:4px;align-items:center;padding:20px 22px;border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;color:var(--c4-ink);text-align:left;transition:border-color .25s,box-shadow .25s}
.archvi-corporate .c4s-tab span{grid-row:span 2;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eeecfb;color:var(--c4-brand);font:700 13px/1 var(--c4-head);transition:background .25s,color .25s}
.archvi-corporate .c4s-tab strong{font:600 18px/1.25 var(--c4-head)}
.archvi-corporate .c4s-tab small{font-size:14px;line-height:1.4;color:var(--c4-muted)}
.archvi-corporate .c4s-tab:hover{border-color:var(--c4-brand)}
.archvi-corporate .c4s-tab[aria-selected="true"]{border-color:var(--c4-brand);box-shadow:0 14px 34px rgba(15,26,48,.1)}
.archvi-corporate .c4s-tab[aria-selected="true"] span{background:var(--c4-brand);color:#fff}
.archvi-corporate .c4s-panel{display:grid;overflow:hidden;border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;animation:cx-fade .5s ease both}
.archvi-corporate .c4s-panel__media{position:relative;aspect-ratio:16/8;overflow:hidden;background:var(--c4-soft)}
.archvi-corporate .c4s-panel__body{display:grid;justify-items:start;gap:14px;padding:clamp(24px,3vw,40px)}
.archvi-corporate .c4s-panel h3{font-size:clamp(24px,2.2vw,32px)}
.archvi-corporate .c4s-panel__body>p:not(.c4s-sublabel){max-width:640px;color:var(--c4-muted)}
.archvi-corporate .c4s-chips{display:flex;flex-wrap:wrap;gap:8px}
.archvi-corporate .c4s-chips a{display:inline-flex;padding:9px 14px;border:1px solid var(--c4-line);border-radius:999px;font:600 14px/1.2 var(--c4-ui);color:var(--c4-ink);transition:border-color .25s,color .25s,background .25s}
.archvi-corporate .c4s-chips a:hover{border-color:var(--c4-brand);background:#f6f5ff;color:var(--c4-brand)}
.archvi-corporate .c4s-panel .c4-actions{align-items:center;gap:22px;margin-top:8px}
/* Explorer: start from the need */
.archvi-corporate .c4s-fit{padding-block:calc(var(--c4-gap) * .85)}
.archvi-corporate .c4s-fit__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.archvi-corporate .c4s-fit__card{display:flex;flex-direction:column;gap:12px;padding:clamp(22px,2.4vw,32px);border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;transition:transform .3s,box-shadow .3s,border-color .3s}
.archvi-corporate .c4s-fit__card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,26,48,.1);border-color:transparent}
.archvi-corporate .c4s-fit__card small{font:600 12px/1.2 var(--c4-head);letter-spacing:.12em;text-transform:uppercase;color:var(--c4-brand)}
.archvi-corporate .c4s-fit__card h3{font-size:clamp(19px,1.5vw,22px)}
.archvi-corporate .c4s-fit__card p{flex:1;font-size:15.5px;color:var(--c4-muted)}
.archvi-corporate .c4s-fit__more{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--c4-line);font:600 15px/1.2 var(--c4-ui);color:var(--c4-brand)}
.archvi-corporate .c4s-tile__text{display:block;padding:0 22px 22px;font-size:15px;color:var(--c4-muted)}
/* Catalogue: hero and category jump links */
.archvi-corporate .c4s-cat-hero{position:relative;overflow:hidden;background:var(--c4-navy);color:#fff}
.archvi-corporate .c4s-cat-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,26,48,.95) 0%,rgba(15,26,48,.82) 50%,rgba(15,26,48,.55) 100%)}
.archvi-corporate .c4s-cat-hero__inner{position:relative;display:grid;justify-items:start;gap:20px;padding-top:clamp(140px,16vw,190px);padding-bottom:clamp(56px,6vw,84px)}
.archvi-corporate .c4s-cat-hero h1{max-width:900px;color:#fff;font-size:clamp(40px,5vw,76px);font-weight:700;line-height:1.05}
.archvi-corporate .c4s-cat-hero .c4-hero__lede{max-width:620px;font-size:clamp(18px,1.4vw,21px);color:rgba(255,255,255,.85)}
.archvi-corporate .c4s-jump{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin-top:22px;overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:var(--c4-r)}
.archvi-corporate .c4s-jump a{display:flex;align-items:center;gap:12px;padding:20px 22px;border-left:1px solid rgba(255,255,255,.2);transition:background .25s}
.archvi-corporate .c4s-jump a:first-child{border-left:0}
.archvi-corporate .c4s-jump a:hover{background:rgba(255,255,255,.08)}
.archvi-corporate .c4s-jump span{font:700 13px/1 var(--c4-head);color:#c9c2ff}
.archvi-corporate .c4s-jump strong{font:600 16px/1.25 var(--c4-head)}
/* Catalogue: categories and specialist cards */
.archvi-corporate .c4s-cat{padding-top:calc(var(--c4-gap) * .8)}
.archvi-corporate .c4s-cat__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:center;margin-bottom:28px}
.archvi-corporate .c4s-cat:nth-of-type(odd) .c4s-cat__media{order:-1}
.archvi-corporate .c4s-cat__intro{display:grid;justify-items:start;gap:14px}
.archvi-corporate .c4s-cat__num{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#eeecfb;color:var(--c4-brand);font:700 14px/1 var(--c4-head)}
.archvi-corporate .c4s-cat__intro>p{max-width:560px;color:var(--c4-muted)}
.archvi-corporate .c4s-cat__media{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--c4-r);background:var(--c4-soft)}
.archvi-corporate .c4s-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.archvi-corporate .c4s-card{display:flex;flex-direction:column;gap:10px;padding:24px;border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;transition:border-color .25s,box-shadow .25s,transform .25s}
.archvi-corporate .c4s-card:hover{border-color:transparent;box-shadow:0 16px 36px rgba(15,26,48,.1);transform:translateY(-3px)}
.archvi-corporate .c4s-card__num{font:700 12px/1 var(--c4-head);letter-spacing:.1em;color:var(--c4-brand)}
.archvi-corporate .c4s-card h3{font-size:19px}
.archvi-corporate .c4s-card p{flex:1;font-size:15px;color:var(--c4-muted)}
.archvi-corporate .c4s-card__more{display:flex;align-items:center;gap:8px;font:600 14px/1 var(--c4-ui);color:var(--c4-brand);transition:gap .25s}
.archvi-corporate .c4s-card:hover .c4s-card__more{gap:12px}
/* Catalogue: project stages */
.archvi-corporate .c4s-stages{margin-top:var(--c4-gap);padding-block:calc(var(--c4-gap) * .9);background:var(--c4-navy);color:#c3c8d2}
.archvi-corporate .c4s-stages h2{color:#fff}
.archvi-corporate .c4s-stages .c4-head>p:last-child:not(.c4-label){color:rgba(255,255,255,.75)}
.archvi-corporate .c4s-stages__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.archvi-corporate .c4s-stage{display:grid;align-content:start;gap:12px;padding:26px;border:1px solid rgba(255,255,255,.14);border-radius:var(--c4-r);background:rgba(255,255,255,.03)}
.archvi-corporate .c4s-stage__num{font:700 12px/1 var(--c4-head);letter-spacing:.12em;text-transform:uppercase;color:#c9c2ff}
.archvi-corporate .c4s-stage h3{font-size:20px;color:#fff}
.archvi-corporate .c4s-stage ul{display:grid;margin-top:6px;border-top:1px solid rgba(255,255,255,.14)}
.archvi-corporate .c4s-stage li{border-bottom:1px solid rgba(255,255,255,.14)}
.archvi-corporate .c4s-stage a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;font-size:15.5px;color:#e3e6ec;transition:color .25s}
.archvi-corporate .c4s-stage a:hover{color:#fff}
.archvi-corporate .c4s-stage .cx-arrow{flex:none;color:#a99ff0}
/* Catalogue: before / after comparison */
.archvi-corporate .c4s-compare{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(28px,5vw,72px);align-items:center;padding-block:var(--c4-gap) calc(var(--c4-gap) * .3)}
.archvi-corporate .c4s-compare__copy{display:grid;align-content:start;gap:14px}
.archvi-corporate .c4s-compare__copy>p:not(.c4-label){color:var(--c4-muted)}
.archvi-corporate .c4s-compare__copy>.c4s-note{padding:12px 14px;border-left:3px solid var(--c4-brand);background:var(--c4-soft);font-size:14px}
.archvi-corporate .c4s-compare__frame{--pos:50%;position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:var(--c4-r);background:var(--c4-soft);user-select:none}
.archvi-corporate .c4s-compare__before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.archvi-corporate .c4s-compare__before img{filter:grayscale(1) contrast(.85) brightness(1.08)}
/* A real before/after pair (two different images) shows both in full colour. */
.archvi-corporate .c4s-compare--real .c4s-compare__before img{filter:none}
.archvi-corporate .c4s-compare__handle{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;background:#fff;transform:translateX(-1px);pointer-events:none}
.archvi-corporate .c4s-compare__handle::after{content:"↔";position:absolute;top:50%;left:50%;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fff;color:var(--c4-brand);font:700 18px/1 var(--c4-head);transform:translate(-50%,-50%);box-shadow:0 8px 24px rgba(0,0,0,.25)}
.archvi-corporate .c4s-compare__tag{position:absolute;top:16px;padding:6px 10px;border-radius:4px;background:rgba(15,26,48,.75);color:#fff;font:600 12px/1 var(--c4-ui);letter-spacing:.08em;text-transform:uppercase;pointer-events:none}
.archvi-corporate .c4s-compare__tag--before{left:16px}
.archvi-corporate .c4s-compare__tag--after{right:16px}
.archvi-corporate .c4s-compare__range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}
@media(max-width:1100px){
  .archvi-corporate .c4s-row{grid-template-columns:1fr}
  .archvi-corporate .c4s-row:nth-of-type(even) .c4s-row__media{order:0}
  .archvi-corporate .c4s-row__media{min-height:0;aspect-ratio:16/9}
  .archvi-corporate .c4s-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4s-timeline li::after{display:none}
  .archvi-corporate .c4s-split{grid-template-columns:1fr}
  .archvi-corporate .c4s-split__copy{padding:120px var(--c4-pad) 56px}
  .archvi-corporate .c4s-split__media{min-height:0;aspect-ratio:16/10}
  .archvi-corporate .c4s-explorer__grid{grid-template-columns:1fr}
  .archvi-corporate .c4s-tabs{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4s-fit__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4s-jump{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4s-jump a:nth-child(3){border-left:0}
  .archvi-corporate .c4s-jump a:nth-child(n+3){border-top:1px solid rgba(255,255,255,.2)}
  .archvi-corporate .c4s-cat__head{grid-template-columns:1fr}
  .archvi-corporate .c4s-cat .c4s-cat__media{order:-1}
  .archvi-corporate .c4s-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4s-stages__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4s-compare{grid-template-columns:1fr}
}
@media(max-width:700px){
  .archvi-corporate .c4s-links,.archvi-corporate .c4s-timeline,.archvi-corporate .c4s-tabs,.archvi-corporate .c4s-fit__grid,.archvi-corporate .c4s-cards,.archvi-corporate .c4s-stages__grid{grid-template-columns:1fr}
  .archvi-corporate .c4s-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .archvi-corporate .c4s-jump{grid-template-columns:1fr}
  .archvi-corporate .c4s-jump a{border-left:0;border-top:1px solid rgba(255,255,255,.2)}
  .archvi-corporate .c4s-jump a:first-child{border-top:0}
  .archvi-corporate .c4s-panel__media{aspect-ratio:16/10}
}
/* ---------- Shared client-logo carousel (template 52, [archvi_logo_slider]) ----------
   One editable template feeds every page; here it takes the Corporate strip style and moves end to end. */
/* The section is a centred grid; a single shrinkable column keeps the moving track from widening the page. */
.archvi-corporate .c4-logos{grid-template-columns:minmax(0,1fr)}
.archvi-corporate .c4-logos .archvi-logo-slider-embed,.archvi-corporate .c4-logos .archvi-logo-slider-embed>.elementor{display:block;width:100%;min-width:0;max-width:100%;margin:0}
.archvi-corporate .archvi-logo-slider{width:100%;overflow:hidden;border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;color:#8b93a1;font-family:var(--c4-head)}
.archvi-corporate .archvi-logo-slider__viewport{width:100%;overflow:hidden;border:0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.archvi-corporate .archvi-logo-slider__track{display:flex;width:max-content;animation:c4-logos 38s linear infinite;will-change:transform}
.archvi-corporate .archvi-logo-slider__viewport:hover .archvi-logo-slider__track,.archvi-corporate .archvi-logo-slider__viewport:focus-within .archvi-logo-slider__track{animation-play-state:paused}
.archvi-corporate .archvi-logo-slider__group{display:flex;flex:none}
.archvi-corporate .archvi-logo-slider__logo[class]{display:flex;flex:none;align-items:center;justify-content:center;width:clamp(150px,13vw,230px);height:76px;padding:0 16px;border-right:1px solid var(--c4-line);font:600 clamp(13px,1.1vw,17px)/1.2 var(--c4-head);letter-spacing:.08em;text-transform:uppercase;font-style:normal;color:#8b93a1;white-space:nowrap;transition:color .25s}
.archvi-corporate .archvi-logo-slider__logo[class]:hover{color:var(--c4-ink)}
/* Client logo images (19 October 2026): contained in the same cells, grey until hovered; 24 logos scroll slower. */
.archvi-corporate .archvi-logo-slider__logo--img[class]{display:block;max-width:none;object-fit:contain;padding:18px 26px;filter:grayscale(1);opacity:.7;transition:filter .3s,opacity .3s}
.archvi-corporate .archvi-logo-slider__logo--img[class]:hover{filter:none;opacity:1}
.archvi-corporate .archvi-logo-slider__track:has(.archvi-logo-slider__logo--img){animation-duration:110s}
@keyframes c4-logos{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:700px){.archvi-corporate .archvi-logo-slider__logo[class]{width:140px;height:64px;font-size:13px}.archvi-corporate .archvi-logo-slider__track{animation-duration:30s}}
@media(max-width:700px){.archvi-corporate .archvi-logo-slider__logo--img[class]{padding:14px 18px}.archvi-corporate .archvi-logo-slider__track:has(.archvi-logo-slider__logo--img){animation-duration:80s}}
@media(prefers-reduced-motion:reduce){.archvi-corporate .archvi-logo-slider__track{animation:none;will-change:auto}.archvi-corporate .archvi-logo-slider__viewport{overflow-x:auto}}
.elementor-editor-active .archvi-corporate .archvi-logo-slider__track{animation:none}
/* ---------- Service pages (c4p): 3D Visualisation, Drone & Aerial, Film & Video, Virtual & Immersive ---------- */
.archvi-corporate .c4p-crumb{gap:10px}
.archvi-corporate .c4p-crumb a{color:inherit;border-bottom:1px solid rgba(216,211,255,.5);transition:border-color .25s}
.archvi-corporate .c4p-crumb a:hover{border-color:#fff}
.archvi-corporate .c4p-crumb span[aria-hidden]{opacity:.6}
.archvi-corporate .c4p-hero h1{max-width:900px;font-size:clamp(40px,5vw,76px)}
.archvi-corporate .c4-quick.c4p-quick--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.archvi-corporate .c4p-quick--3 a:nth-child(4){border-left:0}
.archvi-corporate .c4p-quick--3 a:nth-child(n+4){border-top:1px solid var(--c4-line)}
.archvi-corporate .c4p-quick--3 a:first-child{border-radius:var(--c4-r) 0 0 0}
.archvi-corporate .c4p-quick--3 a:last-child{border-radius:0 0 var(--c4-r) 0}
/* Value: image beside text */
.archvi-corporate .c4p-value{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center;padding-block:calc(var(--c4-gap) * .8) calc(var(--c4-gap) * .3)}
.archvi-corporate .c4p-value__media{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--c4-r);background:var(--c4-soft)}
.archvi-corporate .c4p-value__copy{display:grid;justify-items:start;gap:16px}
.archvi-corporate .c4p-value__copy>p:last-child{font-size:clamp(17px,1.3vw,19px);color:var(--c4-muted)}
/* Statement band: heading and one paragraph on navy */
.archvi-corporate .c4p-statement{margin-block:calc(var(--c4-gap) * .5);background:var(--c4-navy);color:#c3c8d2}
.archvi-corporate .c4p-statement__inner{display:grid;justify-items:center;gap:16px;padding-block:calc(var(--c4-gap) * .9);text-align:center}
.archvi-corporate .c4p-statement h2{max-width:820px;color:#fff}
.archvi-corporate .c4p-statement__inner>p:last-child{max-width:680px;font-size:clamp(17px,1.3vw,19px);color:rgba(255,255,255,.8)}
/* Explorer on service pages: tabs without the short descriptions */
.archvi-corporate .c4p-explorer .c4s-tab{grid-template-columns:auto 1fr}
.archvi-corporate .c4p-explorer .c4s-tab span{grid-row:auto}
/* Numbered cards */
.archvi-corporate .c4p-cards{padding-block:calc(var(--c4-gap) * .85)}
.archvi-corporate .c4p-cards:not(.c4s-band){padding-block:calc(var(--c4-gap) * .5)}
.archvi-corporate .c4p-cards__grid{display:grid;gap:16px}
.archvi-corporate .c4p-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.archvi-corporate .c4p-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.archvi-corporate .c4p-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.archvi-corporate .c4p-card{display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.2vw,30px);border:1px solid var(--c4-line);border-radius:var(--c4-r);background:#fff;transition:box-shadow .3s,transform .3s,border-color .3s}
.archvi-corporate .c4p-cards:not(.c4s-band) .c4p-card{border-color:transparent;background:var(--c4-soft)}
.archvi-corporate .c4p-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(15,26,48,.1);border-color:transparent}
.archvi-corporate .c4p-card__num{display:grid;place-items:center;width:40px;height:40px;margin-bottom:4px;border-radius:50%;background:#eeecfb;color:var(--c4-brand);font:700 13px/1 var(--c4-head)}
.archvi-corporate .c4p-card h3{font-size:clamp(18px,1.4vw,21px)}
.archvi-corporate .c4p-card p{font-size:15.5px;color:var(--c4-muted)}
/* Steps: timeline columns follow the number of steps */
.archvi-corporate .c4p-steps{padding-block:calc(var(--c4-gap) * .6)}
.archvi-corporate .c4s-timeline.c4p-steps-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.archvi-corporate .c4s-timeline.c4p-steps-4{grid-template-columns:repeat(4,minmax(0,1fr))}
/* Scope: heading on the left, numbered list on the right */
.archvi-corporate .c4p-scope{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);padding-block:calc(var(--c4-gap) * .7)}
.archvi-corporate .c4p-scope__aside{position:sticky;top:100px;align-self:start;display:grid;justify-items:start;gap:16px}
.archvi-corporate .c4p-scope__aside>p:not(.c4-label){color:var(--c4-muted)}
.archvi-corporate .c4p-scope__aside .c4-btn{margin-top:8px}
.archvi-corporate .c4p-scope__list{border-top:1px solid var(--c4-line)}
.archvi-corporate .c4p-scope__list li{display:grid;grid-template-columns:auto 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--c4-line)}
.archvi-corporate .c4p-scope__num{font:700 14px/1.6 var(--c4-head);color:var(--c4-brand);letter-spacing:.08em}
.archvi-corporate .c4p-scope__list li>div{display:grid;gap:6px}
.archvi-corporate .c4p-scope__list h3{font-size:clamp(18px,1.4vw,21px)}
.archvi-corporate .c4p-scope__list p{color:var(--c4-muted)}
/* Related services */
.archvi-corporate .c4p-related{padding-block:calc(var(--c4-gap) * .85)}
.archvi-corporate .c4p-related .c4s-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1100px){
  .archvi-corporate .c4-quick.c4p-quick--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4p-quick--3 a:nth-child(n){border-left:1px solid var(--c4-line);border-top:0;border-radius:0}
  .archvi-corporate .c4p-quick--3 a:nth-child(odd){border-left:0}
  .archvi-corporate .c4p-quick--3 a:nth-child(n+3){border-top:1px solid var(--c4-line)}
  .archvi-corporate .c4p-value,.archvi-corporate .c4p-scope{grid-template-columns:1fr}
  .archvi-corporate .c4p-scope__aside{position:static}
  .archvi-corporate .c4p-cols-4,.archvi-corporate .c4p-cols-5,.archvi-corporate .c4p-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4s-timeline.c4p-steps-6,.archvi-corporate .c4s-timeline.c4p-steps-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate .c4p-related .c4s-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .archvi-corporate .c4-quick.c4p-quick--3{grid-template-columns:1fr}
  .archvi-corporate .c4p-quick--3 a:nth-child(n){border-left:0;border-top:1px solid var(--c4-line)}
  .archvi-corporate .c4p-quick--3 a:first-child{border-top:0}
  .archvi-corporate .c4p-cols-4,.archvi-corporate .c4p-cols-5,.archvi-corporate .c4p-cols-3,.archvi-corporate .c4p-related .c4s-cards{grid-template-columns:1fr}
  .archvi-corporate .c4s-timeline.c4p-steps-6,.archvi-corporate .c4s-timeline.c4p-steps-4{grid-template-columns:1fr}
}
/* "What We Create" panels as image buttons (15 October 2026), on 3D Visualisation and its option B: each
   panel shows its image with the service title as one link overlaid on it (scripts/apply_explorer_panel_links_20261015.php). */
.archvi-corporate .c4s-panel:has(.cx-panel-cta){position:relative}
.archvi-corporate .c4s-panel:has(.cx-panel-cta) .c4s-panel__media{aspect-ratio:16/10}
.archvi-corporate a.cx-panel-cta{--cta-gap:clamp(16px,2vw,28px);position:absolute;left:var(--cta-gap);bottom:var(--cta-gap);right:auto;z-index:2;display:flex;align-items:center;gap:18px;max-width:calc(100% - 2 * var(--cta-gap));margin:0;padding:16px 18px 16px 22px;border:1px solid rgba(255,255,255,.28);border-radius:var(--c4-r);background:rgba(15,26,48,.38);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 12px 30px rgba(15,26,48,.18);color:#fff;transition:background .3s,border-color .3s}
.archvi-corporate a.cx-panel-cta h3{margin:0;color:#fff;font-size:clamp(20px,1.8vw,26px);line-height:1.2}
.archvi-corporate a.cx-panel-cta::after{content:"";flex:none;width:40px;height:40px;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235a4fa0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m13 6 6 6-6 6'/%3E%3C/svg%3E") center/18px no-repeat;transition:transform .3s}
.archvi-corporate a.cx-panel-cta:hover,.archvi-corporate a.cx-panel-cta:focus-visible{background:var(--c4-brand);border-color:var(--c4-brand)}
.archvi-corporate a.cx-panel-cta:hover::after{transform:translateX(3px)}
/* Per-page sizes (client request, 15 October 2026): 3D Visualisation (.c4s-panel) and option B (.pb-panel). */
.archvi-corporate .c4s-panel a.cx-panel-cta{padding:12px 18px 13px 22px}
.archvi-corporate .c4s-panel a.cx-panel-cta h3{font-size:clamp(18px,1.8vw,24px)}
.archvi-corporate .pb-panel a.cx-panel-cta{padding:8px 16px 8px 20px}
.archvi-corporate .pb-panel a.cx-panel-cta h3{font-size:clamp(18px,1.5vw,20px)}
@media(max-width:700px){.archvi-corporate .c4s-panel a.cx-panel-cta{padding:8px 10px 8px 14px;gap:12px}.archvi-corporate a.cx-panel-cta::after{width:34px;height:34px}}
/* Purple gradient on every What We Create button (client request, 27 October 2026): the panel buttons on the service
   pages and option B (option A's tile buttons: corporate-premium.css). Hover slides the gradient to its lighter end. */
.archvi-corporate a.cx-panel-cta{border-color:rgba(255,255,255,.22);background:linear-gradient(120deg,#463d86 0%,#5a4fa0 45%,#8a7ce6 100%) 0 0/200% 100%;box-shadow:0 12px 30px rgba(42,32,110,.35);transition:background-position .4s,border-color .3s,box-shadow .3s}
.archvi-corporate a.cx-panel-cta:hover,.archvi-corporate a.cx-panel-cta:focus-visible{background:linear-gradient(120deg,#463d86 0%,#5a4fa0 45%,#8a7ce6 100%) 100% 0/200% 100%;border-color:rgba(255,255,255,.4);box-shadow:0 14px 34px rgba(42,32,110,.45)}
/* The live site's Customizer CSS ("archVi refinements: 20 October 2026") forces a white glass background and a white
   hover on .cx-panel-cta with !important; these more specific !important rules keep the gradient and white text there.
   Its font size and padding still apply. */
.archvi-corporate a.cx-panel-cta{background:linear-gradient(120deg,#463d86 0%,#5a4fa0 45%,#8a7ce6 100%) 0 0/200% 100%!important;border-color:rgba(255,255,255,.22)!important;color:#fff!important}
.archvi-corporate a.cx-panel-cta:hover,.archvi-corporate a.cx-panel-cta:focus-visible{background:linear-gradient(120deg,#463d86 0%,#5a4fa0 45%,#8a7ce6 100%) 100% 0/200% 100%!important;border-color:rgba(255,255,255,.4)!important;color:#fff!important;box-shadow:0 14px 34px rgba(42,32,110,.45)}
/* Video section without the chapter list (3D Visualisation, 15 October 2026): fully rounded frame. */
.archvi-corporate .c4-reel--solo .c4-reel__frame{border-radius:var(--c4-r)}
/* Portfolio gallery (19 October 2026): images only, two per row and half the screen tall, so four fill the view.
   Clicking one opens the white lightbox (assets/corporate.js, data-gallery). */
.archvi-corporate .c4g{padding-block:clamp(24px,3vw,40px) var(--c4-gap)}
.archvi-corporate .c4g-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.archvi-corporate .c4g-item{position:relative;display:block;height:max(240px,calc((100svh - 70px - 48px) / 2));overflow:hidden;border-radius:var(--c4-r);background:var(--c4-soft);cursor:zoom-in}
.archvi-corporate .c4g-item>.cx-cover{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
/* A gallery with a single image (e.g. a case study awaiting its visuals) uses the full width. */
.archvi-corporate .c4g-item:only-child{grid-column:1/-1}
.archvi-corporate .c4g-item:hover>.cx-cover,.archvi-corporate .c4g-item:focus-visible>.cx-cover{transform:scale(1.03)}
@media(max-width:700px){.archvi-corporate .c4g-grid{grid-template-columns:1fr;gap:12px}.archvi-corporate .c4g-item{height:auto;aspect-ratio:4/3}}
/* Case study pages (19 October 2026): about the developer beside the project facts; two overview cards per row. */
.archvi-corporate .c4cs-intro{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:start;padding-block:var(--c4-gap) calc(var(--c4-gap) * .4)}
.archvi-corporate .c4cs-intro__copy{display:grid;gap:16px}
.archvi-corporate .c4cs-intro__copy>p:not(.c4-label){font-size:clamp(18px,1.4vw,21px);line-height:1.6;color:var(--c4-text)}
.archvi-corporate .c4cs-facts{display:grid;margin:0;border-top:1px solid var(--c4-line)}
.archvi-corporate .c4cs-fact{display:grid;gap:4px;padding:16px 0;border-bottom:1px solid var(--c4-line)}
.archvi-corporate .c4cs-fact dt{font:600 12px/1.2 var(--c4-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--c4-brand)}
.archvi-corporate .c4cs-fact dd{margin:0;font:600 18px/1.35 var(--c4-head);color:var(--c4-ink)}
.archvi-corporate .c4p-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.archvi-corporate .c4cs-intro{grid-template-columns:1fr}}
@media(max-width:700px){.archvi-corporate .c4p-cols-2{grid-template-columns:1fr}}
/* Sumadhura Edition (29 October 2026): the facts' long deliverables line in body type; the overview cards follow the
   intro closely; design input and visual output side by side, each labelled like the before/after tags. */
.archvi-corporate .c4cs-fact:last-child dd{font:400 16px/1.55 var(--c4-ui);color:var(--c4-text)}
.archvi-corporate .c4cs-intro+.c4cs-overview{padding-top:0}
.archvi-corporate .c4cs-io{padding-block:0 var(--c4-gap)}
.archvi-corporate .c4cs-io>.c4-head{margin-bottom:clamp(18px,2vw,26px)}
.archvi-corporate .c4cs-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.archvi-corporate .c4cs-pair__item{position:relative;margin:0;aspect-ratio:16/10;overflow:hidden;border-radius:var(--c4-r);background:var(--c4-soft)}
.archvi-corporate .c4cs-pair__tag{position:absolute;top:16px;left:16px;padding:6px 10px;border-radius:4px;background:rgba(15,26,48,.75);color:#fff;font:600 12px/1 var(--c4-ui);letter-spacing:.08em;text-transform:uppercase}
@media(max-width:700px){.archvi-corporate .c4cs-pair{grid-template-columns:1fr;gap:12px}}

/* Portfolio and About heroes: the Case Studies hero's height (600px; 680px on phones) instead of a full screen (19 October 2026). */
.archvi-corporate .c4-hero.c4-hero--compact{min-height:600px}
@media(max-width:700px){.archvi-corporate .c4-hero.c4-hero--compact{min-height:680px}}
/* Section title and tab filter above the gallery (19 October 2026): uppercase tabs, the active one outlined. */
.archvi-corporate .c4g>.c4-head{margin-bottom:clamp(18px,2vw,26px)}
.archvi-corporate .c4g-filters{display:flex;flex-wrap:wrap;gap:6px 8px;margin-bottom:clamp(20px,2.4vw,32px)}
.archvi-corporate .c4g-filter{padding:11px 18px;border:1px solid transparent;border-radius:2px;background:transparent;font:500 15px/1 var(--c4-ui);letter-spacing:.04em;text-transform:uppercase;color:var(--c4-ink);cursor:pointer;transition:border-color .2s,color .2s}
.archvi-corporate .c4g-filter:hover{color:var(--c4-brand)}
.archvi-corporate .c4g-filter[aria-pressed="true"]{border-color:var(--c4-ink)}
.archvi-corporate .c4g-item[hidden]{display:none}
@media(max-width:700px){.archvi-corporate .c4g-filters{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(var(--c4-pad) * -1);padding-inline:var(--c4-pad);scrollbar-width:none}.archvi-corporate .c4g-filter{flex:none;padding:10px 14px;font-size:14px}}
/* About page (19 October 2026): About Us (centred title, then image beside text) and Our Mission / Our Vision
   (two image cards, the line over the image). Its hero uses c4-hero--compact above. */
.archvi-corporate .c4a-about{padding-block:var(--c4-gap) calc(var(--c4-gap) * .5)}
.archvi-corporate .c4a-about>.c4-head>p:last-child{max-width:760px;font-size:clamp(17px,1.3vw,19px)}
.archvi-corporate .c4a-about__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center}
.archvi-corporate .c4a-about__media{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--c4-r);background:var(--c4-soft)}
.archvi-corporate .c4a-about__copy{display:grid;justify-items:start;gap:18px}
.archvi-corporate .c4a-about__copy h3{font-size:clamp(26px,2.4vw,36px)}
.archvi-corporate .c4a-about__copy>p{color:var(--c4-muted)}
.archvi-corporate .c4a-about__copy .c4-btn{margin-top:6px}
.archvi-corporate .c4a-mv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2vw,28px);padding-block:calc(var(--c4-gap) * .5)}
.archvi-corporate .c4a-mv__card{position:relative;display:flex;align-items:flex-end;min-height:clamp(380px,38vw,540px);overflow:hidden;border-radius:var(--c4-r);background:var(--c4-navy);color:#fff}
.archvi-corporate .c4a-mv__card>.cx-cover{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.archvi-corporate .c4a-mv__card:hover>.cx-cover{transform:scale(1.03)}
.archvi-corporate .c4a-mv__shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,26,48,.88) 0%,rgba(15,26,48,.45) 45%,rgba(15,26,48,.05) 100%)}
.archvi-corporate .c4a-mv__copy{position:relative;display:grid;gap:14px;max-width:520px;padding:clamp(24px,3vw,44px)}
.archvi-corporate .c4a-mv__copy h3{color:#fff;font-size:clamp(22px,2vw,30px);line-height:1.25}
@media(max-width:900px){.archvi-corporate .c4a-about__grid{grid-template-columns:1fr}}
@media(max-width:700px){.archvi-corporate .c4a-mv{grid-template-columns:1fr}.archvi-corporate .c4a-mv__card{min-height:360px}}

/* Lightbox: white background, the image as large as fits, plain previous/next arrows at the sides (a soft circle on
   hover), close and count at the top. */
.cx-lightbox{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#fff;opacity:0;visibility:hidden;transition:opacity .25s,visibility 0s linear .25s}
.cx-lightbox.is-open{opacity:1;visibility:visible;transition:opacity .25s}
.cx-lightbox__img{display:block;max-width:calc(100vw - 180px);max-height:calc(100svh - 110px);width:auto;height:auto;object-fit:contain;box-shadow:0 20px 50px rgba(15,26,48,.12);user-select:none}
.archvi-corporate .cx-lightbox .cx-lightbox__btn{position:absolute;display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;color:#13203a;cursor:pointer;transition:background .2s,color .2s}
.archvi-corporate .cx-lightbox .cx-lightbox__btn:hover,.archvi-corporate .cx-lightbox .cx-lightbox__btn:focus-visible{background:#f4f5f8;color:#5a4fa0}
.cx-lightbox__btn svg{width:20px;height:20px}
.cx-lightbox__prev{left:24px;top:50%;transform:translateY(-50%)}
.cx-lightbox__next{right:24px;top:50%;transform:translateY(-50%)}
.cx-lightbox__close{top:18px;right:24px}
.cx-lightbox__count{position:absolute;top:30px;left:28px;font:500 14px/1 'Roboto',Arial,sans-serif;letter-spacing:.06em;color:#6b7483}
body.cx-lightbox-open{overflow:hidden}
@media(max-width:700px){.cx-lightbox__img{max-width:calc(100vw - 24px);max-height:calc(100svh - 160px)}.cx-lightbox__prev,.cx-lightbox__next{top:auto;bottom:24px;transform:none}.cx-lightbox__prev{left:calc(50% - 60px)}.cx-lightbox__next{right:calc(50% - 60px)}.cx-lightbox__close{top:12px;right:12px}.cx-lightbox__count{top:26px;left:18px}}
@media(prefers-reduced-motion:reduce){.cx-lightbox,.archvi-corporate .c4g-item>.cx-cover{transition:none}}

/* Homepage services as image buttons (client feedback, 14 October 2026). Each tile is one link with a
   full-bleed image or loop and the service name only. Two tiles per row on desktop (15 October 2026);
   an odd last tile spans the row, so a fifth service needs no layout change: duplicate a tile in
   Elementor and set its image, title and link. */
.archvi-corporate .c4-svc-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.archvi-corporate .c4-svc-tile:last-child:nth-child(odd){grid-column:1/-1}
.archvi-corporate .c4-svc-tile{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:clamp(340px,34vw,480px);overflow:hidden;border-radius:var(--c4-r);background:var(--c4-navy);color:#fff;transition:box-shadow .3s}
.archvi-corporate .c4-svc-tile>.cx-cover{z-index:-2;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.archvi-corporate .c4-svc-tile__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,26,48,0) 40%,rgba(15,26,48,.8) 100%);transition:background .3s}
.archvi-corporate .c4 .c4-svc-tile__title{display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:calc(100% - 2 * clamp(18px,2vw,28px));margin:clamp(18px,2vw,28px);padding:16px 18px 16px 22px;border-radius:var(--c4-r);background:rgba(255,255,255,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:clamp(19px,1.6vw,24px);line-height:1.2;transition:background .3s,color .3s,border-color .3s}
.archvi-corporate .c4-svc-tile__title::after{content:"";flex:none;width:40px;height:40px;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235a4fa0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14'/%3E%3Cpath d='m13 6 6 6-6 6'/%3E%3C/svg%3E") center/18px no-repeat;transition:transform .3s}
.archvi-corporate .c4-svc-tile:hover{box-shadow:0 22px 48px rgba(15,26,48,.22)}
.archvi-corporate .c4-svc-tile:hover>.cx-cover,.archvi-corporate .c4-svc-tile:focus-visible>.cx-cover{transform:scale(1.05)}
.archvi-corporate .c4-svc-tile:hover .c4-svc-tile__title,.archvi-corporate .c4-svc-tile:focus-visible .c4-svc-tile__title{background:var(--c4-brand);border-color:var(--c4-brand)}
.archvi-corporate .c4-svc-tile:hover .c4-svc-tile__title::after{transform:translateX(3px)}
@media(max-width:1100px){.archvi-corporate .c4-svc-tiles{gap:16px}.archvi-corporate .c4-svc-tile{min-height:clamp(280px,44vw,400px)}}
@media(max-width:700px){.archvi-corporate .c4-svc-tiles{grid-template-columns:1fr}.archvi-corporate .c4-svc-tile{min-height:300px}}
/* Service page template (client feedback, 14 October 2026): hero film or image, before/after slider,
   selected work, FAQ. The comparison runs the full content width so it reads as the page's centrepiece. */
.archvi-corporate .c4t-page .c4-hero__inner{padding-bottom:clamp(80px,9vw,120px)}
.archvi-corporate .c4s-compare.c4t-compare{grid-template-columns:1fr;gap:clamp(24px,3vw,40px);padding-block:var(--c4-gap) calc(var(--c4-gap) * .5)}
.archvi-corporate .c4t-compare .c4s-compare__copy{justify-items:center;text-align:center;max-width:720px;margin-inline:auto}
.archvi-corporate .c4t-compare .c4s-compare__frame{aspect-ratio:21/9;box-shadow:0 24px 60px rgba(15,26,48,.14)}
@media(max-width:1100px){.archvi-corporate .c4t-compare .c4s-compare__frame{aspect-ratio:16/10}}
@media(max-width:560px){.archvi-corporate .c4t-compare .c4s-compare__frame{aspect-ratio:4/5}}
/* Homepage hero fills the screen (client request, 27 October 2026): the service bar keeps its place over the hero's
   bottom edge, but that edge (the bar's 64px overlap) sits just below the fold, so on load only the hero shows and the
   bar comes into view on scroll. The extra bottom padding keeps the hero text centred in the visible screen. */
.archvi-corporate.home .c4-hero{min-height:calc(100svh + 64px)}
.archvi-corporate.home .c4-hero__inner{padding-bottom:204px}
@media(max-width:700px){.archvi-corporate.home .c4-hero__inner{padding-bottom:184px}}
/* Once scrolled up to the header, the bar sticks just below it (70px, the scrolled header's height) until the page
   content ends (client request, 27 October 2026). On phones it is two by two and compact so it never covers much. */
.archvi-corporate.home .c4-quick{position:sticky;top:70px;z-index:50}
.admin-bar.archvi-corporate.home .c4-quick{top:102px}
@media(max-width:782px){.admin-bar.archvi-corporate.home .c4-quick{top:116px}}
@media(max-width:600px){.admin-bar.archvi-corporate.home .c4-quick{top:70px}}
@media(max-width:700px){
  .archvi-corporate.home .c4-quick{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archvi-corporate.home .c4-quick a{grid-template-columns:auto 1fr;gap:8px;padding:12px;border-top:0}
  .archvi-corporate.home .c4-quick a:nth-child(even){border-left:1px solid var(--c4-line)}
  .archvi-corporate.home .c4-quick a:nth-child(n+3){border-top:1px solid var(--c4-line)}
  .archvi-corporate.home .c4-quick .cx-arrow{display:none}
  .archvi-corporate.home .c4-quick__num{width:26px;height:26px;font-size:11px}
  .archvi-corporate.home .c4-quick__title{font-size:14px}
  .archvi-corporate.home .c4-quick a:first-child{border-radius:var(--c4-r) 0 0 0}
  .archvi-corporate.home .c4-quick a:nth-child(2){border-radius:0 var(--c4-r) 0 0}
  .archvi-corporate.home .c4-quick a:nth-child(3){border-radius:0 0 0 var(--c4-r)}
  .archvi-corporate.home .c4-quick a:last-child{border-radius:0 0 var(--c4-r) 0}
}
/* Review switcher for design options (remove with the review pages after approval) */
.cx-switch{position:fixed;left:50%;bottom:14px;z-index:300;transform:translateX(-50%);display:flex;align-items:center;gap:4px;max-width:calc(100vw - 20px);overflow-x:auto;padding:5px;border-radius:999px;background:rgba(14,14,16,.9);backdrop-filter:blur(10px);box-shadow:0 12px 34px rgba(0,0,0,.3);font:500 12px/1.2 Arial,sans-serif;scrollbar-width:none}
.cx-switch__label{padding:0 10px 0 12px;color:#9a9aa3;white-space:nowrap}
.cx-switch a{padding:8px 12px;border-radius:999px;color:#e8e8ec;white-space:nowrap;text-decoration:none}
.cx-switch a:hover{background:rgba(255,255,255,.1)}
.cx-switch a[aria-current]{background:#5a4fa0;color:#fff}
@media(max-width:700px){.cx-switch__label{display:none}.cx-switch{bottom:10px}.cx-switch a{padding:7px 10px;font-size:11px}}
