/* 47 Web Design V7.2 performance bundle */

/* === v60-media-motion.css === */
/* 47 Web Design V6.0 — media integrity + motion system */
:root{--v60-ease:cubic-bezier(.22,.7,.24,1);--v60-fast:360ms;--v60-med:680ms;--v60-slow:980ms}
html{scroll-behavior:smooth;scroll-padding-top:138px}
body{overflow-x:clip}

/* MEDIA POLICY — UI screenshots and service illustrations are never cropped */
.s55-hero-media{min-height:0!important;aspect-ratio:16/10!important;padding:14px!important;display:grid!important;place-items:center!important;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,var(--s55)),var(--surface))!important}
.s55-hero-media>img{width:100%!important;height:100%!important;max-height:none!important;min-height:0!important;object-fit:contain!important;object-position:center!important;border-radius:18px!important;background:color-mix(in srgb,var(--surface2) 72%,#07181e)!important}
.s55-hero-media figcaption{bottom:26px!important;left:26px!important}
.focus-visual,.detail-image{aspect-ratio:16/10!important;min-height:0!important;height:auto!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--surface2) 78%,#07181e)!important}
.focus-visual img,.detail-image img,.builder-image-text img{width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:contain!important;object-position:center!important;background:color-mix(in srgb,var(--surface2) 76%,#07181e)!important}
.builder-image-text img{aspect-ratio:16/10!important}
.v5-browser img,.v5-related-card img,.cs56-shot img,.p56-feature-shot img,.p56-featured-card img,.project-thumb img,.v5-project-media img{object-fit:contain!important;object-position:center!important;background:color-mix(in srgb,var(--surface2) 78%,#07181e)!important}
.v5-browser img,.v5-related-card img,.v5-project-media img{transform:none!important}
.v5-work:hover .v5-browser img,.v5-related-card:hover img,.v5-project:hover .v5-project-media img{transform:none!important}
.p59-slide img,.p59-stage>img{object-fit:contain!important;object-position:center!important}

/* real photo/background zones may fill their canvas, but use explicit focal positioning */
.v3-hero-bg img,.v3-showcase-media img{object-fit:cover!important;object-position:72% center!important;will-change:transform}
.v3-slide:nth-child(2) .v3-hero-bg img{object-position:70% center!important}
.v3-slide:nth-child(3) .v3-hero-bg img{object-position:72% center!important}

/* image polish */
.s55-hero-media,.focus-visual,.detail-image,.v5-browser,.v5-related-card,.cs56-shot,.p59-slider-shell{isolation:isolate}
.s55-hero-media:after,.focus-visual:after,.detail-image:after,.v5-browser:after{pointer-events:none}
.v60-media{position:relative;overflow:hidden;transform:translateZ(0)}
.v60-media:before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.075) 48%,transparent 70%);transform:translateX(-140%);transition:transform 1.15s var(--v60-ease)}
.v60-media.v60-in:before{transform:translateX(140%)}

/* SCROLL REVEALS */
.v60-reveal{opacity:0;transform:translate3d(0,28px,0);filter:blur(5px);transition:opacity var(--v60-med) var(--v60-ease),transform var(--v60-med) var(--v60-ease),filter var(--v60-med) var(--v60-ease);transition-delay:var(--v60-delay,0ms)}
.v60-reveal[data-v60-dir="left"]{transform:translate3d(-34px,0,0)}
.v60-reveal[data-v60-dir="right"]{transform:translate3d(34px,0,0)}
.v60-reveal[data-v60-dir="scale"]{transform:scale(.965);filter:blur(7px)}
.v60-reveal.v60-in{opacity:1;transform:none;filter:none}
.v60-stagger>*{transition-delay:calc(var(--v60-i,0) * 75ms)!important}

/* hero entrance */
body.v60-ready .s55-hero-copy>*{animation:v60HeroIn .75s var(--v60-ease) both;animation-delay:calc(var(--v60-i,0) * 75ms)}
body.v60-ready .s55-hero-media{animation:v60MediaIn .9s var(--v60-ease) .12s both}
@keyframes v60HeroIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes v60MediaIn{from{opacity:0;transform:translateX(22px) scale(.985)}to{opacity:1;transform:none}}

/* parallax/background motion */
.v60-parallax{transform:translate3d(0,var(--v60-parallax,0px),0) scale(1.045)!important;transform-origin:center;transition:transform .08s linear}

/* cards + micro-interactions */
.v60-lift{transition:transform .28s var(--v60-ease),box-shadow .28s var(--v60-ease),border-color .28s ease!important;transform:translateZ(0)}
.v60-lift:hover{transform:translateY(-7px)!important;box-shadow:0 24px 65px rgba(0,0,0,.18)!important;border-color:color-mix(in srgb,var(--brand) 34%,var(--line))!important}
.btn,.mega55-item,.header59 .nav55>a,.header59 .nav-services55>button{transition:transform .22s var(--v60-ease),background .22s ease,border-color .22s ease,color .22s ease,box-shadow .22s ease!important}
.btn:hover{transform:translateY(-2px)}
.btn span,.v5-work-link,.mega55-item em{display:inline-block;transition:transform .22s var(--v60-ease)}
.btn:hover span,.v5-work:hover .v5-work-link,.mega55-item:hover em{transform:translateX(4px)}

/* sticky header scroll state */
.header55{transition:background .26s ease,box-shadow .26s ease,border-color .26s ease,backdrop-filter .26s ease!important}
body.v60-scrolled .header55{box-shadow:0 14px 42px rgba(0,0,0,.16)!important;backdrop-filter:blur(20px) saturate(135%)!important}
html[data-theme="light"] body.v60-scrolled .header55{box-shadow:0 14px 38px rgba(20,60,68,.11)!important}

/* mouse tilt, only desktop */
@media (hover:hover) and (pointer:fine){.v60-tilt{transform-style:preserve-3d;will-change:transform}.v60-tilt.v60-tilting{transform:perspective(900px) rotateX(var(--v60-rx,0deg)) rotateY(var(--v60-ry,0deg)) translateY(-3px)!important}}

/* mobile media should keep entire artwork visible */
@media(max-width:900px){
  .s55-hero-media{aspect-ratio:4/3!important;padding:10px!important;border-radius:22px!important}
  .s55-hero-media>img{border-radius:14px!important}
  .focus-visual,.detail-image,.builder-image-text img{aspect-ratio:4/3!important}
  .v3-hero-bg img{object-position:70% center!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .v60-reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .v60-parallax{transform:none!important}
  .v60-media:before{display:none!important}
  body.v60-ready .s55-hero-copy>*,body.v60-ready .s55-hero-media{animation:none!important}
  .v60-lift,.v60-tilt,.btn{transition:none!important;transform:none!important}
}
/* final cascade overrides discovered in the full media audit */
.svc-page .s55-hero-media>img[src$="service-web.webp"],
.svc-page .s55-hero-media>img[src$="service-growth.webp"],
.svc-page .s55-hero-media>img[src$="service-ai.webp"],
.svc-page .s55-hero-media>img[src$="service-cyber.webp"]{object-fit:contain!important;object-position:center!important;padding:0!important}
.slider-media{display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--surface2) 78%,#07181e)!important}
.slider-media img{width:100%!important;height:100%!important;min-height:0!important;object-fit:contain!important;object-position:center!important}
.v3-image-card{display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--surface2) 78%,#07181e)!important}
.v3-image-card img{width:100%!important;height:100%!important;min-height:0!important;object-fit:contain!important;object-position:center!important}
.v3-project-image img{object-fit:contain!important;object-position:center!important;background:color-mix(in srgb,var(--surface2) 78%,#07181e)!important;transform:none!important}
.v3-project-card:hover .v3-project-image img{transform:none!important}


/* === v61-polish.css === */
/* 47 Web Design V6.1 — portfolio, theme, footer, visual-rich polish */
:root{
  --v61-radius:18px;
  --v61-shadow:0 28px 70px rgba(0,0,0,.16);
  --v61-soft:color-mix(in srgb,var(--surface2) 72%,transparent);
  --v61-ink:#07171c;
  --v61-white:#f5ffff;
}

/* ---------- PORTFOLIO ---------- */
.p56-portfolio-hero{padding-bottom:78px!important}
.p56-tools{padding:18px 0 26px!important}
.p58-intro{padding:60px 0 34px!important}
.p58-intro+.p56-section,.p58-intro+section{padding-top:0!important}
[data-v5-portfolio-grid]{padding-top:36px!important}
.p58-grid,.p56-projects-grid,.v5-portfolio-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:34px 26px!important;
  align-items:stretch!important;
}
.v5-project,.v5-project:nth-child(n){
  grid-column:auto!important;
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  overflow:visible!important;
  box-shadow:none!important;
  transform:none!important;
}
.v5-project:hover{box-shadow:none!important;transform:none!important}
.v5-project-media{
  position:relative!important;
  width:100%!important;
  aspect-ratio:16/10!important;
  display:block!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:18px!important;
  background:transparent!important;
  box-shadow:0 18px 46px rgba(0,0,0,.13)!important;
}
.v5-project-media:before,.v5-project-media:after{display:none!important}
.v5-project-media img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
  border-radius:18px!important;
  transform:none!important;
  transition:transform .45s cubic-bezier(.22,.7,.24,1),filter .35s ease!important;
}
.v5-project:hover .v5-project-media img{transform:scale(1.012)!important;filter:saturate(1.035)}
.v5-region,.v5-status{top:12px!important;bottom:auto!important;font-size:8px!important;border-radius:999px!important}
.v5-project-copy{
  display:flex!important;
  flex-direction:column!important;
  flex:1!important;
  padding:19px 4px 0!important;
  min-height:205px!important;
  background:transparent!important;
}
.v5-project-meta{min-height:18px!important;margin-bottom:10px!important}
.v5-project-copy h3{font-size:21px!important;line-height:1.18!important;min-height:49px!important;margin:0 0 9px!important}
.v5-project-copy p{font-size:12.5px!important;line-height:1.68!important;min-height:64px!important;margin:0!important;color:var(--muted)!important}
.v5-project-actions{margin-top:auto!important;padding-top:15px!important;border-top:1px solid var(--line)!important}
.v5-project-actions a{font-size:10.5px!important}
.v5-project.v61-filtered{display:none!important}
.v5-empty{grid-column:1/-1!important}
.p56-filters button{transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease!important}
.p56-filters button:hover{transform:translateY(-1px)}
.p56-filters button.active{box-shadow:0 8px 24px color-mix(in srgb,var(--brand) 18%,transparent)}

/* Portfolio slider — same real screenshots used across portfolio */
.p59-slider-shell{border-radius:26px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.p59-browser{border-radius:22px!important;overflow:hidden!important;background:var(--surface)!important;border:1px solid var(--line)!important;box-shadow:0 28px 70px rgba(0,0,0,.18)!important}
.p59-browserbar{height:34px!important}
.p59-stage{aspect-ratio:16/10!important;min-height:0!important;padding:0!important;background:transparent!important}
.p59-stage>img{width:100%!important;height:100%!important;min-height:0!important;object-fit:contain!important;object-position:center!important;border-radius:0!important;background:transparent!important}
.p59-caption{padding-top:17px!important}
.p59-caption strong{font-size:20px!important}
.p59-caption small{font-size:11px!important}

/* ---------- THEME INTEGRITY ---------- */
/* Keep photographic / cinematic hero modules intentionally dark in BOTH themes. */
html[data-theme="light"] .v3-showcase,
html[data-theme="light"] .v3-showcase-card,
html[data-theme="light"] .hero-slider,
html[data-theme="light"] .v3-slide,
html[data-theme="light"] .v3-hero,
html[data-theme="light"] .p56-portfolio-hero{
  color:var(--v61-white)!important;
}
html[data-theme="light"] .v3-showcase-card{
  background:rgba(4,20,26,.94)!important;
  border-color:rgba(85,233,227,.22)!important;
  box-shadow:0 30px 80px rgba(2,16,20,.28)!important;
}
html[data-theme="light"] .v3-showcase-card :where(h1,h2,h3,h4,b,strong){color:#f4ffff!important}
html[data-theme="light"] .v3-showcase-card :where(p,span:not(.accent),small){color:#bed0d5!important}
html[data-theme="light"] .v3-showcase-card .eyebrow{color:#61ebe6!important}
html[data-theme="light"] .v3-mini-grid>div{
  background:rgba(7,31,39,.94)!important;
  border-color:rgba(83,224,222,.20)!important;
  color:#f4ffff!important;
}
html[data-theme="light"] .v3-mini-grid b{color:#f4ffff!important}
html[data-theme="light"] .v3-mini-grid span{color:#a9c1c7!important}
html[data-theme="light"] .v3-mini-grid svg{color:#28d7d4!important}
html[data-theme="light"] .v3-showcase-card .btn-secondary{background:#0c252d!important;color:#efffff!important;border-color:rgba(104,232,229,.24)!important}

/* Service heroes stay visually coherent: header can be light, service hero stays dark. */
html[data-theme="light"] .service55 .s55-hero{
  background:radial-gradient(circle at 85% 20%,color-mix(in srgb,var(--s55) 14%,transparent),transparent 36%),#06171d!important;
  border-color:rgba(98,219,218,.15)!important;
  color:#f4ffff!important;
}
html[data-theme="light"] .service55 .s55-hero :where(h1,h2,h3,strong){color:#f4ffff!important}
html[data-theme="light"] .service55 .s55-hero :where(p,.breadcrumbs,.breadcrumbs span){color:#abc2c8!important}
html[data-theme="light"] .service55 .s55-hero .breadcrumbs a{color:#49deda!important}
html[data-theme="light"] .service55 .s55-hero-media{
  background:linear-gradient(145deg,#0b242c,#07171d)!important;
  border-color:rgba(104,226,222,.20)!important;
}
html[data-theme="light"] .service55 .s55-hero-media>img{background:#07171d!important}
html[data-theme="light"] .service55 .s55-hero-media figcaption{background:rgba(5,25,31,.88)!important;color:#fff!important}
html[data-theme="light"] .service55 .s55-actions .btn-secondary{background:#0b252d!important;color:#f4ffff!important;border-color:rgba(113,226,223,.22)!important}

/* Section dark really means dark regardless of selected global theme. */
html[data-theme="light"] .section-dark{
  background:linear-gradient(180deg,#081b22,#061419)!important;
  color:#f4ffff!important;
  border-color:rgba(90,216,214,.15)!important;
}
html[data-theme="light"] .section-dark :where(h1,h2,h3,h4,strong,b){color:#f4ffff!important}
html[data-theme="light"] .section-dark :where(p,small,li){color:#a9c0c6!important}
html[data-theme="light"] .section-dark .article-card,
html[data-theme="light"] .section-dark .service-card,
html[data-theme="light"] .section-dark .process-card{background:#0b222a!important;border-color:rgba(92,216,214,.16)!important}

/* Buttons/cards on light backgrounds */
html[data-theme="light"] .btn-secondary{background:#fff!important;color:#0a1b20!important;border-color:rgba(7,80,88,.16)!important}
html[data-theme="light"] .btn-secondary:hover{background:#edf7f8!important}
html[data-theme="light"] .faq details,
html[data-theme="light"] .v5-faq-item,
html[data-theme="light"] .v5-tech-card,
html[data-theme="light"] .v5-method-card,
html[data-theme="light"] .process-card,
html[data-theme="light"] .why-card{color:#0a1b20!important}
html[data-theme="light"] .faq details p,
html[data-theme="light"] .v5-faq-answer{color:#566f75!important}

/* ---------- VISUAL RICHNESS ---------- */
.v61-gallery{padding:88px 0;border-block:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--surface2) 42%,transparent),transparent)}
.v61-gallery-head{display:grid;grid-template-columns:1fr .7fr;gap:36px;align-items:end;margin-bottom:30px}
.v61-gallery-head h2{font-size:clamp(29px,2.6vw,43px)!important;margin:10px 0 0!important;max-width:800px}
.v61-gallery-head p{margin:0;color:var(--muted);font-size:13px;max-width:560px;justify-self:end}
.v61-gallery-grid{display:grid;grid-template-columns:1.28fr .72fr;grid-template-rows:1fr 1fr;gap:15px;min-height:540px}
.v61-gallery-figure{margin:0;position:relative;overflow:hidden;border-radius:24px;border:1px solid var(--line);background:var(--surface);box-shadow:0 18px 46px rgba(0,0,0,.10)}
.v61-gallery-figure:first-child{grid-row:1/3}
.v61-gallery-figure img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .75s cubic-bezier(.22,.7,.24,1),filter .35s ease}
.v61-gallery-figure.is-ui img{object-fit:contain;background:color-mix(in srgb,var(--surface2) 82%,#07181e)}
.v61-gallery-figure:hover img{transform:scale(1.025);filter:saturate(1.04)}
.v61-gallery-figure figcaption{position:absolute;left:14px;bottom:14px;padding:8px 11px;border-radius:999px;background:rgba(4,18,23,.76);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(12px);color:#fff;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
html[data-theme="light"] .v61-gallery{background:linear-gradient(180deg,#edf6f7,#f8fbfb)}

/* ---------- FOOTER 6.1 ---------- */
.site-footer.footer61{padding:0!important;background:#051318!important;border-top:1px solid rgba(89,225,221,.17)!important;color:#eaffff!important}
.footer61-main{display:grid;grid-template-columns:1.35fr .8fr .8fr 1fr;gap:48px;padding:72px 0 52px}
.footer61-brand img{width:88px!important;height:auto!important;margin-bottom:20px!important;filter:drop-shadow(0 12px 28px rgba(0,0,0,.32))}
.footer61-brand p{font-size:14px!important;line-height:1.7!important;color:#a8c0c6!important;max-width:440px;margin:0 0 20px}
.footer61-tag{display:inline-flex;align-items:center;gap:8px;color:#62e8e3;font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.footer61-tag:before{content:"";width:22px;height:2px;background:#20cbc9}
.footer61-col :is(h3,h4){font-size:13px!important;color:#f5ffff!important;letter-spacing:.05em;margin:2px 0 17px!important}
.footer61-col a{display:block;color:#a8c0c6!important;font-size:13px!important;line-height:1.45;padding:5px 0;transition:.2s}
.footer61-col a:hover{color:#5be6e1!important;transform:translateX(3px)}
.footer61-contact{padding:22px;border:1px solid rgba(95,220,218,.15);border-radius:20px;background:rgba(16,48,57,.48)}
.footer61-contact small{display:block;color:#62e8e3;font-size:9px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px}
.footer61-contact strong{display:block;font-size:18px;line-height:1.3;color:#fff;margin-bottom:8px}
.footer61-contact p{font-size:12px!important;color:#9fb8be!important;margin:0 0 16px}
.footer61-contact .btn{min-height:42px;font-size:12px;padding:0 16px}
.footer61-markets{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}
.footer61-market{display:flex!important;align-items:center;gap:7px;padding:7px 9px!important;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.035);font-size:10px!important;color:#c7dcdf!important}
.footer61-market img{width:20px!important;height:20px!important;margin:0!important}
.footer61-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0 24px;border-top:1px solid rgba(255,255,255,.08);font-size:11px;color:#7f9aa1}
.footer61-legal,.footer61-social{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.footer61-bottom a{color:#9db7bd!important}.footer61-bottom a:hover{color:#5be6e1!important}
.footer61-social a{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.11);border-radius:50%;font-weight:850}

/* ---------- MOTION POLISH ---------- */
.v61-clip{clip-path:inset(0 0 100% 0 round 24px);transition:clip-path .9s cubic-bezier(.22,.7,.24,1)}
.v61-clip.v60-in{clip-path:inset(0 0 0 0 round 24px)}
.v61-line-title{position:relative}
.v61-line-title:after{content:"";display:block;width:0;height:2px;background:linear-gradient(90deg,var(--brand),transparent);margin-top:13px;transition:width .8s cubic-bezier(.22,.7,.24,1)}
.v61-line-title.v60-in:after{width:min(180px,36%)}
.v61-magnetic{will-change:transform}

@media(max-width:1180px){
 .p58-grid,.p56-projects-grid,.v5-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .footer61-main{grid-template-columns:1.2fr 1fr 1fr;gap:34px}.footer61-contact{grid-column:1/-1}
 .v61-gallery-grid{min-height:450px}
}
@media(max-width:760px){
 .p56-portfolio-hero{padding-bottom:52px!important}.p58-intro{padding-top:42px!important}[data-v5-portfolio-grid]{padding-top:24px!important}
 .p58-grid,.p56-projects-grid,.v5-portfolio-grid{grid-template-columns:1fr!important;gap:28px!important}
 .v5-project-copy{min-height:auto!important;padding-top:16px!important}.v5-project-copy h3,.v5-project-copy p{min-height:0!important}
 .v61-gallery{padding:64px 0}.v61-gallery-head{grid-template-columns:1fr;gap:14px}.v61-gallery-head p{justify-self:start}.v61-gallery-grid{grid-template-columns:1fr;grid-template-rows:auto;min-height:0}.v61-gallery-figure:first-child{grid-row:auto}.v61-gallery-figure{aspect-ratio:16/10}.v61-gallery-figure:nth-child(n+2){aspect-ratio:16/9}
 .footer61-main{grid-template-columns:1fr 1fr;padding:52px 0 38px;gap:30px 24px}.footer61-brand,.footer61-contact{grid-column:1/-1}.footer61-bottom{align-items:flex-start;flex-direction:column}.footer61-brand img{width:76px!important}
}
@media(max-width:480px){.footer61-main{grid-template-columns:1fr}.footer61-col,.footer61-contact{grid-column:1}.footer61-legal{gap:10px}.footer61-market span{display:none}}


/* === v62-final.css === */
/* 47 Web Design V6.2 — final motion, portfolio & theme audit */
:root{--v62-ease:cubic-bezier(.2,.75,.25,1);--v62-ease-soft:cubic-bezier(.22,.61,.36,1);--v62-shadow:0 22px 64px rgba(0,0,0,.18)}
html{scroll-behavior:smooth}body{overflow-x:hidden}
main img{max-width:100%}
/* final light/dark tokens */
html[data-theme="light"]{--v62-card:#fff;--v62-card-soft:#f4f9fa;--v62-ink:#10272d;--v62-muted:#5d747a;--v62-line:#d8e5e7}
html[data-theme="dark"]{--v62-card:#0a1c22;--v62-card-soft:#0d242b;--v62-ink:#f2fbfb;--v62-muted:#9db3b8;--v62-line:#193a43}
html[data-theme="light"] :where(.service55,.p56-section,.p58-intro,.v5-portfolio-section,.v61-gallery,.about56){color:var(--v62-ink)}
html[data-theme="light"] :where(.service55,.p56-section,.p58-intro,.v5-portfolio-section,.v61-gallery,.about56) :where(p,li,small,.muted){color:var(--v62-muted)}
/* cinematic areas stay intentionally dark in BOTH themes */
html[data-theme="light"] :where(.section-dark,.v3-showcase,.v3-showcase-card,.s55-cinematic,.p62-dark-surface){--text:#f4fbfb;--muted:#a9c0c5;--line:#1b4650;--surface:#0a2027;--surface2:#0d2830;color:#f4fbfb!important}
html[data-theme="light"] .v3-showcase-card{background:rgba(5,24,30,.92)!important;border-color:#1c4a54!important;box-shadow:0 28px 90px rgba(5,24,30,.28)!important}
html[data-theme="light"] .v3-showcase-card :where(h1,h2,h3,strong){color:#f4fbfb!important}
html[data-theme="light"] .v3-showcase-card :where(p,small,span:not(.eyebrow)){color:#aac1c6!important}
html[data-theme="light"] .v3-mini-grid>div{background:#0a242c!important;border-color:#1d4d57!important;color:#f2fbfb!important}
html[data-theme="light"] .v3-mini-grid>div :where(strong,b){color:#f4fbfb!important}
html[data-theme="light"] .v3-mini-grid>div :where(span,p,small){color:#a8c0c5!important}
html[data-theme="light"] .section-dark :where(.card,.panel,.feature-card){background:#0b252d!important;color:#f2fbfb!important;border-color:#1b4a54!important}
/* service hero cards: no pale text on white */
html[data-theme="light"] .s55-hero-media figcaption{background:rgba(255,255,255,.94)!important;color:#10272d!important}
html[data-theme="light"] .s55-proof{background:#f2f8f9!important}
html[data-theme="light"] .s55-proof b{color:#10272d!important}html[data-theme="light"] .s55-proof span{color:#60767c!important}
/* portfolio hero — real project screenshot, no illustration/mock visual */
.p62-portfolio-slider{position:relative;min-width:0}
.p62-slider-shell{border:1px solid var(--line);border-radius:24px;background:color-mix(in srgb,var(--surface) 92%,transparent);padding:12px;box-shadow:0 30px 90px rgba(0,0,0,.22);overflow:hidden}
.p62-browser{border:1px solid color-mix(in srgb,var(--line) 90%,transparent);border-radius:17px;overflow:hidden;background:#07171c}
.p62-browserbar{height:34px;display:flex;align-items:center;gap:6px;padding:0 12px;background:#0a1c22;border-bottom:1px solid rgba(255,255,255,.08)}
.p62-browserbar i{width:7px;height:7px;border-radius:50%;display:block;background:#ff6969}.p62-browserbar i:nth-child(2){background:#ffd166}.p62-browserbar i:nth-child(3){background:#56dda0}.p62-browserbar span{margin-left:8px;font-size:9px;color:#849ba0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.p62-stage{position:relative;aspect-ratio:16/10;background:#07171c;overflow:hidden}
.p62-stage img{width:100%;height:100%;display:block;object-fit:contain!important;object-position:center top!important;background:#07171c;transition:opacity .28s var(--v62-ease),transform .55s var(--v62-ease);transform:translateZ(0)}
.p62-stage.is-changing img{opacity:.12;transform:translateY(5px)}
.p62-caption{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:end;padding:16px 4px 3px}.p62-caption .label{font-size:9px;letter-spacing:.14em;color:var(--brand);font-weight:900;text-transform:uppercase}.p62-caption strong{display:block;font-size:20px;margin-top:5px}.p62-caption small{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.p62-controls{display:flex;gap:7px}.p62-controls button{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;transition:.22s var(--v62-ease)}.p62-controls button:hover{transform:translateY(-2px);border-color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--surface))}
.p62-dots{display:flex;gap:6px;margin-top:10px}.p62-dot{border:0;padding:0;width:24px;height:4px;border-radius:99px;background:color-mix(in srgb,var(--muted) 28%,transparent);cursor:pointer;transition:.25s var(--v62-ease)}.p62-dot.active{width:42px;background:var(--brand)}
html[data-theme="light"] .p62-browser,html[data-theme="light"] .p62-stage,html[data-theme="light"] .p62-stage img{background:#edf5f6}.p62-slider-shell{color:var(--text)}
/* portfolio grid — equal cards, image itself, no browser-in-browser decoration */
#proiecte{scroll-margin-top:150px}.p62-projects-zone{padding-top:108px!important}.p62-grid{gap:28px!important;align-items:stretch}
.p62-grid .v5-project{display:flex;flex-direction:column;height:100%;border-radius:22px!important;background:var(--surface);overflow:hidden;border:1px solid var(--line);box-shadow:none;transition:transform .35s var(--v62-ease),box-shadow .35s var(--v62-ease),border-color .35s var(--v62-ease)}
.p62-grid .v5-project:hover{transform:translateY(-7px);box-shadow:0 28px 72px rgba(0,0,0,.18);border-color:color-mix(in srgb,var(--brand) 32%,var(--line))}
.p62-grid .v5-project-media{aspect-ratio:16/10!important;background:color-mix(in srgb,var(--surface2) 82%,#06151a);overflow:hidden;position:relative;border-radius:0!important}
.p62-grid .v5-project-media:before,.p62-grid .v5-project-media:after{display:none!important}
.p62-grid .v5-project-media img{width:100%;height:100%;display:block;object-fit:contain!important;object-position:center top!important;background:color-mix(in srgb,var(--surface2) 86%,#06151a);transform:none!important;transition:filter .28s ease,opacity .28s ease!important}
.p62-grid .v5-project:hover .v5-project-media img{transform:none!important;filter:saturate(1.05) contrast(1.02)}
.p62-grid .v5-project-copy{display:flex;flex-direction:column;flex:1;padding:24px 24px 26px!important}.p62-grid .v5-project p{min-height:0!important}.p62-grid .v5-project-actions{margin-top:auto;padding-top:20px}
.p62-grid .v5-region,.p62-grid .v5-status{bottom:12px}
.p62-filterbar{transition:box-shadow .3s var(--v62-ease),background .3s var(--v62-ease)}body.v62-scrolled .p62-filterbar{box-shadow:0 14px 40px rgba(0,0,0,.10)}
/* final motion system */
.v62-reveal{opacity:0;transform:translate3d(0,26px,0);transition:opacity .72s var(--v62-ease),transform .72s var(--v62-ease);transition-delay:var(--v62-delay,0ms);will-change:transform,opacity}.v62-reveal.v62-visible{opacity:1;transform:none}
.v62-reveal[data-v62-dir="left"]{transform:translate3d(-28px,0,0)}.v62-reveal[data-v62-dir="right"]{transform:translate3d(28px,0,0)}.v62-reveal[data-v62-dir="scale"]{transform:scale(.975) translateY(14px)}.v62-reveal.v62-visible{transform:none}
.v62-media-reveal{clip-path:inset(0 0 100% 0 round 20px);transition:clip-path .95s var(--v62-ease);will-change:clip-path}.v62-media-reveal.v62-visible{clip-path:inset(0 0 0 0 round 20px)}
.v62-heading{position:relative}.v62-heading:after{content:"";display:block;width:0;height:2px;margin-top:13px;background:linear-gradient(90deg,var(--brand),var(--brand2));transition:width .8s var(--v62-ease)}.v62-heading.v62-visible:after{width:min(110px,22%)}
.v62-card-glow{position:relative;isolation:isolate}.v62-card-glow:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(380px circle at var(--v62-x,50%) var(--v62-y,50%),rgba(47,221,218,.10),transparent 48%);opacity:0;transition:opacity .3s ease;z-index:-1}.v62-card-glow:hover:before{opacity:1}
.v62-parallax{transform:translate3d(0,var(--v62-parallax,0),0) scale(1.015);will-change:transform}
.btn,.nav55>a,.nav-services55>button,.mega55-item,.v5-project-actions a{transition:transform .2s var(--v62-ease),color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-2px)}
/* mobile final audit */
@media(max-width:900px){.p62-stage{aspect-ratio:4/3}.p62-caption{grid-template-columns:1fr}.p62-controls{justify-content:flex-start}.p62-projects-zone{padding-top:78px!important}.p62-grid{gap:20px!important}.p62-grid .v5-project-copy{padding:21px!important}.p62-grid .v5-project h3{font-size:22px}.p62-grid .v5-project-media{aspect-ratio:4/3!important}.p62-slider-shell{padding:9px}.p62-browserbar{height:30px}.v62-reveal[data-v62-dir="left"],.v62-reveal[data-v62-dir="right"]{transform:translate3d(0,20px,0)}}
@media(max-width:560px){.p62-stage{min-height:250px}.p62-caption strong{font-size:18px}.p62-dots{overflow:auto;padding-bottom:4px}.p62-projects-zone{padding-top:64px!important}.v5-tools-row{gap:12px}.v5-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}.v5-search{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.v62-reveal,.v62-media-reveal,.v62-heading:after,.v62-parallax,.btn,.v5-project{transition:none!important;animation:none!important;transform:none!important;opacity:1!important;clip-path:none!important}.v62-heading:after{width:min(110px,22%)}}


/* === v63-final.css === */
/* 47 Web Design — V6.3 final production polish */
:root{
  --v63-ease:cubic-bezier(.2,.75,.25,1);
  --v63-fast:180ms;
  --v63-mid:520ms;
}

/* ---------- top market switch ---------- */
.markets55{gap:8px!important}
.market55{min-width:68px!important;height:34px!important;padding:4px 10px 4px 6px!important;gap:7px!important;justify-content:flex-start!important;border-radius:999px!important}
.market55 img{width:24px!important;height:24px!important;flex:0 0 24px!important}
.market55>span{display:flex!important;align-items:center!important;line-height:1!important}
.market55>span b{font-size:11px!important;letter-spacing:.05em!important}
.market55>span small{display:none!important}
.market55:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--brand) 55%,var(--line))!important}

/* ---------- main menu ---------- */
.header59 .nav55{gap:8px!important}
.header59 .nav55>a,.header59 .nav-services55>button{
  min-height:42px!important;padding:0 16px!important;font-size:12px!important;font-weight:800!important;
  letter-spacing:.01em!important;border-radius:999px!important;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease!important
}
.header59 .nav55>a:hover,.header59 .nav-services55>button:hover,.header59 .nav-services55.menu-open>button{transform:translateY(-1px)}
.header59 .nav-services55>button>span{width:22px;height:22px;display:inline-grid;place-items:center;border-radius:50%;margin-left:3px;background:color-mix(in srgb,var(--brand) 10%,transparent);border:1px solid color-mix(in srgb,var(--brand) 24%,transparent);transition:.2s}
.nav63-chevron{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s var(--v63-ease)}
.nav-services55:hover .nav63-chevron,.nav-services55:focus-within .nav63-chevron,.nav-services55.menu-open .nav63-chevron{transform:rotate(180deg)}

/* ---------- homepage: approved layout, only requested details ---------- */
.v5-method-icon{display:grid!important;place-items:center!important}
.v5-method-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.reviews63-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:32px}
.reviews63-actions .btn{min-width:235px;justify-content:center}
.reviews63-facebook:before,.reviews63-google:before{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;margin-right:7px;font-weight:900}
.reviews63-facebook:before{content:"f";background:#1877f2;color:white}
.reviews63-google:before{content:"G";background:linear-gradient(135deg,#4285f4,#34a853 45%,#fbbc05 70%,#ea4335);color:white}

/* ---------- representative project images on service pages ---------- */
.service63-showcase{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;min-width:0}
.service63-shot{margin:0;position:relative;border-radius:20px;overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);background:#07171d;box-shadow:0 22px 55px rgba(0,0,0,.18);min-width:0}
.service63-shot img{display:block;width:100%;aspect-ratio:16/10;object-fit:contain!important;object-position:center top!important;background:#07171d}
.service63-shot figcaption{position:absolute;left:10px;bottom:10px;padding:6px 10px;border-radius:999px;background:rgba(3,15,20,.82);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12);color:#ecffff;font-size:10px;font-weight:800}
.service63-shot:nth-child(2){margin-top:38px}
.s55-visual-media{overflow:visible!important}

/* ---------- pricing ---------- */
.pricing63{position:relative;overflow:hidden}
.pricing63:before{content:"";position:absolute;right:-14vw;top:-16vw;width:38vw;height:38vw;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--brand) 12%,transparent),transparent 68%);pointer-events:none}
.pricing63-head{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:end;margin-bottom:34px}
.pricing63-head h2{margin:.35rem 0 0;max-width:900px}
.pricing63-head p{margin:0;color:var(--muted);max-width:620px}
.pricing63-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:stretch}
.pricing63-card{position:relative;display:flex;flex-direction:column;min-height:100%;padding:26px 24px 24px;border:1px solid var(--line);border-radius:24px;background:color-mix(in srgb,var(--surface) 94%,transparent);overflow:hidden;transition:transform .24s var(--v63-ease),border-color .24s,box-shadow .24s}
.pricing63-card:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--brand) 42%,var(--line));box-shadow:0 28px 70px rgba(0,0,0,.16)}
.pricing63-card.featured{border-color:color-mix(in srgb,var(--brand) 52%,var(--line));background:linear-gradient(155deg,color-mix(in srgb,var(--brand) 8%,var(--surface)),var(--surface))}
.pricing63-badge{position:absolute;right:16px;top:16px;padding:5px 8px;border-radius:999px;background:var(--brand);color:#031317;font-size:8px;font-weight:950;letter-spacing:.12em}
.pricing63-card h3{margin:0 0 20px;font-size:19px}
.pricing63-price{display:flex;align-items:end;gap:7px;margin-bottom:22px}
.pricing63-price strong{font-size:32px;line-height:1;color:var(--text);letter-spacing:-.04em}
.pricing63-price span{font-size:10px;color:var(--muted);padding-bottom:3px}
.pricing63-card ul{display:grid;gap:10px;margin:0 0 25px;padding:0;list-style:none;color:var(--muted);font-size:12px}
.pricing63-card li{position:relative;padding-left:20px}
.pricing63-card li:before{content:"✓";position:absolute;left:0;color:var(--brand);font-weight:900}
.pricing63-card .btn{margin-top:auto;justify-content:center}
.pricing63-note{text-align:center;color:var(--muted);font-size:11px;margin:20px auto 0;max-width:850px}

/* ---------- blog ---------- */
.page63-blog .blog63-hero{padding:78px 0 64px;position:relative;overflow:hidden}
.page63-blog .blog63-hero:after{content:"";position:absolute;right:-8vw;top:-20vw;width:50vw;height:50vw;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--brand) 14%,transparent),transparent 68%);pointer-events:none}
.page63-blog .blog63-hero .wrap{width:min(calc(100% - 64px),1680px)!important;max-width:1680px!important;margin:auto!important;text-align:left!important}
.page63-blog .blog63-hero h1{max-width:1120px!important;font-size:clamp(46px,5vw,78px)!important;line-height:1.02!important;margin:18px 0 22px!important}
.page63-blog .blog63-hero .lead{max-width:900px!important;font-size:18px!important}
.page63-blog .blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.article-card{display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0!important;border-radius:24px!important;min-height:100%!important}
.article63-thumb{aspect-ratio:16/10;overflow:hidden;background:#07171d;border-bottom:1px solid var(--line)}
.article63-thumb img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .55s var(--v63-ease),filter .4s}
.article-card:hover .article63-thumb img{transform:scale(1.035);filter:saturate(1.06)}
.article-card>.cat,.article-card>h3,.article-card>p,.article-card>.read{margin-left:22px!important;margin-right:22px!important}
.article-card>.cat{margin-top:20px!important}
.article-card>.read{margin-top:auto!important;margin-bottom:22px!important}
.article-card>h3{font-size:21px!important;line-height:1.2!important}
.article-card>p{font-size:13px!important}
.article63-hero{padding-bottom:44px!important}
.article63-hero .wrap{width:min(calc(100% - 64px),1500px)!important;max-width:1500px!important;text-align:left!important}
.article63-hero h1{max-width:1100px!important;font-size:clamp(44px,5vw,72px)!important;line-height:1.04!important}
.article63-featured{padding:0 0 36px}
.article63-featured figure{margin:0;border-radius:28px;overflow:hidden;border:1px solid var(--line);background:#07171d;box-shadow:0 28px 80px rgba(0,0,0,.16)}
.article63-featured img{width:100%;display:block;aspect-ratio:16/7;object-fit:cover}

/* ---------- light/dark hardening ---------- */
html[data-theme="light"]{--bg:#f4f9fa;--surface:#ffffff;--surface2:#edf4f5;--text:#102329;--muted:#5c7178;--line:#d7e3e5}
html[data-theme="light"] body{background:var(--bg);color:var(--text)}
html[data-theme="light"] main :is(h1,h2,h3,h4,h5,h6){color:var(--text)}
html[data-theme="light"] main :is(p,li,small,.lead){color:var(--muted)}
html[data-theme="light"] .s55-hero,
html[data-theme="light"] .s55-proof,
html[data-theme="light"] .section-dark,
html[data-theme="light"] .v3-showcase,
html[data-theme="light"] .v3-showcase-card{
  --text:#f2fbfc;--muted:#a8bdc2;--line:rgba(167,219,223,.16);--surface:#0b2028;--surface2:#0e2730;
  color:#f2fbfc!important;background-color:#06171d!important
}
html[data-theme="light"] .s55-hero :is(h1,h2,h3,h4,h5,h6,p,li,.lead),
html[data-theme="light"] .s55-proof :is(h1,h2,h3,h4,h5,h6,p,li,.lead),
html[data-theme="light"] .section-dark :is(h1,h2,h3,h4,h5,h6,p,li,.lead),
html[data-theme="light"] .v3-showcase :is(h1,h2,h3,h4,h5,h6,p,li,.lead){color:inherit!important}
html[data-theme="light"] .s55-proof .wrap>div,html[data-theme="light"] .s55-proof-item,html[data-theme="light"] .v3-mini-grid>div{background:#0b2028!important;border-color:rgba(128,210,215,.18)!important;color:#f2fbfc!important}
html[data-theme="light"] .s55-proof b,html[data-theme="light"] .s55-proof strong,html[data-theme="light"] .v3-mini-grid strong{color:#f2fbfc!important}
html[data-theme="light"] .s55-proof span,html[data-theme="light"] .v3-mini-grid span{color:#a8bdc2!important}
html[data-theme="light"] .pricing63-card{background:#fff;color:#102329;box-shadow:0 14px 40px rgba(24,55,62,.06)}
html[data-theme="light"] .pricing63-card h3,html[data-theme="light"] .pricing63-price strong{color:#102329!important}
html[data-theme="light"] .pricing63-card li,html[data-theme="light"] .pricing63-card p{color:#5c7178!important}
html[data-theme="light"] .article-card{background:#fff!important}
html[data-theme="light"] .article-card h3{color:#102329!important}
html[data-theme="light"] .article-card p{color:#5c7178!important}
html[data-theme="light"] footer,html[data-theme="light"] .footer{--text:#effbfc;--muted:#9eb5bb;color:#effbfc;background:#041217!important}

/* ---------- global motion + hover ---------- */
.v63-ready main>section.v63-reveal{opacity:0;transform:translateY(30px);transition:opacity .72s var(--v63-ease),transform .72s var(--v63-ease)}
.v63-ready main>section.v63-reveal.v63-in{opacity:1;transform:none}
.v63-ready .v63-stagger>*{opacity:0;transform:translateY(18px);transition:opacity .55s var(--v63-ease),transform .55s var(--v63-ease)}
.v63-ready .v63-stagger.v63-in>*{opacity:1;transform:none}
.v63-ready .v63-stagger.v63-in>*:nth-child(2){transition-delay:.06s}.v63-ready .v63-stagger.v63-in>*:nth-child(3){transition-delay:.12s}.v63-ready .v63-stagger.v63-in>*:nth-child(4){transition-delay:.18s}.v63-ready .v63-stagger.v63-in>*:nth-child(5){transition-delay:.24s}.v63-ready .v63-stagger.v63-in>*:nth-child(6){transition-delay:.30s}
.btn{position:relative;overflow:hidden;transition:transform .2s var(--v63-ease),box-shadow .2s,border-color .2s,background .2s!important}
.btn:after{content:"";position:absolute;top:-150%;left:-40%;width:32%;height:400%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.24),transparent);transform:rotate(18deg);transition:left .55s var(--v63-ease);pointer-events:none}
.btn:hover{transform:translateY(-2px)!important;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.btn:hover:after{left:120%}
:is(.v3-service-card,.v3-project-card,.v5-work,.v5-project,.v3-review,.deliver,.s55-card,.pricing63-card,.article-card){will-change:transform}

@media(max-width:1100px){
  .page63-blog .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pricing63-head{grid-template-columns:1fr;gap:14px}
  .service63-showcase{grid-template-columns:1fr 1fr}
  .service63-shot:nth-child(2){margin-top:18px}
}
@media(max-width:700px){
  .market55{min-width:52px!important;padding-right:7px!important}.market55>span b{font-size:10px!important}
  .page63-blog .blog63-hero .wrap,.article63-hero .wrap{width:calc(100% - 28px)!important}
  .page63-blog .blog-grid{grid-template-columns:1fr}.page63-blog .blog63-hero h1,.article63-hero h1{font-size:40px!important}
  .service63-showcase{grid-template-columns:1fr}.service63-shot:nth-child(2){margin-top:0}
  .pricing63-grid{grid-template-columns:1fr}.pricing63-card{padding:23px 20px}
  .article63-featured img{aspect-ratio:4/3}
  .reviews63-actions{display:grid}.reviews63-actions .btn{min-width:0;width:100%}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .v63-ready main>section.v63-reveal,.v63-ready .v63-stagger>*{opacity:1!important;transform:none!important}
}

/* ===== V6.4 corrections for original points 1–7 ===== */

/* Point 1 — homepage-only motion. No V6.3 reveal classes are injected on inner pages. */
html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-copy>*{
  animation:v64HomeCopy .72s var(--v63-ease) both;
}
html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-copy>*:nth-child(1){animation-delay:.03s}
html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-copy>*:nth-child(2){animation-delay:.10s}
html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-copy>*:nth-child(3){animation-delay:.17s}
html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-copy>*:nth-child(4){animation-delay:.24s}
html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-copy>*:nth-child(5){animation-delay:.31s}
html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-bg img{animation:v64HomeHero 1.15s var(--v63-ease) both}
@keyframes v64HomeCopy{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes v64HomeHero{from{opacity:.55;transform:scale(1.075)}to{opacity:1;transform:scale(1.045)}}

/* Point 2 — service hero artwork is always shown in full. */
.page63-service .s55-hero-media{overflow:hidden!important;display:grid!important;place-items:center!important}
.page63-service .s55-hero-media>img{
  width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
  object-fit:contain!important;object-position:center center!important;
}

/* Point 3 — local service-specific illustrations; no client screenshots. */
.service64-svg{width:100%;height:100%;max-width:760px;max-height:500px;display:block;color:var(--s55);overflow:visible}
.service64-svg :is(rect,circle,path){vector-effect:non-scaling-stroke;stroke:currentColor;stroke-width:4;fill:none;stroke-linecap:round;stroke-linejoin:round}
.service64-svg .s64-frame{fill:color-mix(in srgb,var(--surface) 85%,var(--s55) 5%);stroke:color-mix(in srgb,var(--s55) 38%,var(--line))}
.service64-svg .s64-node{fill:color-mix(in srgb,var(--s55) 14%,transparent);stroke:var(--s55)}
.s55-visual-media:has(.service64-svg){height:auto!important;min-height:430px!important;padding:24px!important;overflow:hidden!important}
html[data-theme="light"] .service64-svg .s64-frame{fill:#fff}

/* Point 5 — make the package carried into the quote visibly explicit. */
.quote64-selection{margin:0 0 26px;padding:20px 22px;border:1px solid color-mix(in srgb,var(--brand) 45%,var(--line));border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 10%,var(--surface)),var(--surface))}
.quote64-selection span{display:block;font-size:9px;font-weight:950;letter-spacing:.15em;color:var(--brand);margin-bottom:7px}
.quote64-selection strong{display:block;font-size:24px;line-height:1.1;color:var(--text)}
.quote64-selection p{margin:7px 0 0!important;color:var(--muted)!important;font-size:13px!important}

/* Point 6 — Website Development architecture uses the full content width. */
.page63-service .s55-architecture .s55-head{max-width:none!important}
.page63-service .s55-architecture .s55-arch{
  max-width:none!important;width:100%!important;margin:0!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;
}
.page63-service .s55-architecture .s55-arch article{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;
  min-width:0!important;min-height:230px!important;padding:26px!important;border-radius:20px!important;
}
.page63-service .s55-architecture .s55-arch article:before{display:none!important}
.page63-service .s55-architecture .s55-arch article>b{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:34px;padding:0 10px;border-radius:999px;background:var(--s55-soft);border:1px solid var(--s55-line);margin-bottom:34px}
.page63-service .s55-architecture .s55-arch h3{margin:0 0 9px!important}
.page63-service .s55-architecture .s55-arch p{margin:0!important}

@media(max-width:1100px){
  .page63-service .s55-architecture .s55-arch{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .page63-service .s55-architecture .s55-arch article:last-child{grid-column:1/-1}
}
@media(max-width:700px){
  .page63-service .s55-architecture .s55-arch{grid-template-columns:1fr!important}
  .page63-service .s55-architecture .s55-arch article:last-child{grid-column:auto}
  .page63-service .s55-architecture .s55-arch article{min-height:0!important}
  .s55-visual-media:has(.service64-svg){min-height:300px!important;padding:12px!important}
}
@media(prefers-reduced-motion:reduce){
  html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-copy>*,
  html.v63-ready body.page-home-v64 .v3-slide.active .v3-hero-bg img{animation:none!important}
}


/* === v65-points-1-7.css === */
/* 47 Web Design V6.5 — original requests 1–7. New filename intentionally busts V6.3/V6.4 browser cache. */

/* 1. Homepage: visible motion without changing the layout */
.page65-home{--p65-ease:cubic-bezier(.2,.75,.25,1)}
.page65-home main>section.p65-reveal{opacity:0;transform:translateY(42px);transition:opacity .78s var(--p65-ease),transform .78s var(--p65-ease)}
.page65-home main>section.p65-reveal:nth-of-type(even){transform:translateY(34px) translateX(-18px)}
.page65-home main>section.p65-reveal:nth-of-type(odd){transform:translateY(34px) translateX(18px)}
.page65-home main>section.p65-reveal.p65-in{opacity:1;transform:none}
.page65-home .p65-stagger>*{opacity:0;transform:translateY(28px) scale(.985);transition:opacity .62s var(--p65-ease),transform .62s var(--p65-ease)}
.page65-home .p65-stagger.p65-in>*{opacity:1;transform:none}
.page65-home .p65-stagger.p65-in>*:nth-child(2){transition-delay:.07s}.page65-home .p65-stagger.p65-in>*:nth-child(3){transition-delay:.14s}.page65-home .p65-stagger.p65-in>*:nth-child(4){transition-delay:.21s}.page65-home .p65-stagger.p65-in>*:nth-child(5){transition-delay:.28s}.page65-home .p65-stagger.p65-in>*:nth-child(6){transition-delay:.35s}
.page65-home .v3-slide.active .v3-hero-copy>*{animation:p65HeroCopy .72s var(--p65-ease) both}
.page65-home .v3-slide.active .v3-hero-copy>*:nth-child(2){animation-delay:.08s}.page65-home .v3-slide.active .v3-hero-copy>*:nth-child(3){animation-delay:.16s}.page65-home .v3-slide.active .v3-hero-copy>*:nth-child(4){animation-delay:.24s}.page65-home .v3-slide.active .v3-hero-copy>*:nth-child(5){animation-delay:.32s}
.page65-home .v3-slide.active .v3-hero-bg img{animation:p65HeroImage 9s ease-in-out infinite alternate}
.page65-home :is(.v3-service-card,.v5-method-card,.v5-tech-card,.v3-showcase-card){transition:transform .32s var(--p65-ease),border-color .32s,box-shadow .32s}
.page65-home :is(.v3-service-card,.v5-method-card,.v5-tech-card,.v3-showcase-card):hover{transform:translateY(-7px);box-shadow:0 26px 60px rgba(0,0,0,.2)}
@keyframes p65HeroCopy{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes p65HeroImage{from{transform:scale(1.025) translate3d(0,0,0)}to{transform:scale(1.065) translate3d(-.7%,.5%,0)}}

/* 2. Service hero art: ALWAYS complete, never cropped */
.page65-service .s55-hero-media{min-height:520px!important;padding:22px!important;overflow:visible!important;background:radial-gradient(circle at 78% 18%,color-mix(in srgb,var(--s55) 14%,transparent),transparent 36%),var(--surface)!important}
.page65-service .s55-hero-media>img.service65-hero-art{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:500px!important;object-fit:contain!important;object-position:center!important;border-radius:22px}

/* 3. Generated service-specific visual assets */
.page65-service .s55-visual-media{height:auto!important;min-height:430px!important;padding:18px!important;overflow:visible!important;background:radial-gradient(circle at 20% 18%,color-mix(in srgb,var(--s55) 12%,transparent),transparent 34%),var(--surface)!important}
.page65-service .s55-visual-media img.service65-detail-art{display:block;width:100%!important;height:auto!important;max-height:500px!important;object-fit:contain!important;object-position:center!important;border-radius:20px}

/* 4. Portfolio stays dedicated: no portfolio CTA inside service content */
.page65-service main a[href*="portofoliu"]{display:none!important}

/* 5. Selected package is explicit in the quote form */
.quote65-selection{display:none;margin:0 0 28px;padding:22px 24px;border:1px solid color-mix(in srgb,var(--brand) 46%,var(--line));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 12%,var(--surface)),var(--surface));box-shadow:0 16px 40px rgba(0,0,0,.12)}
.quote65-selection.is-visible{display:block}
.quote65-selection small{display:block;color:var(--brand2);font-size:10px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;margin-bottom:7px}
.quote65-selection strong{display:block;color:var(--text);font-size:clamp(22px,2vw,30px);line-height:1.15}
.quote65-selection p{margin:8px 0 0!important;color:var(--muted)!important;font-size:13px!important}

/* 6. Website Development architecture: full-width and intentional */
.page65-service .s55-architecture .s55-head{max-width:none!important;margin-bottom:34px!important}
.page65-service .s55-architecture .s55-arch{max-width:none!important;width:100%!important;margin:0!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important}
.page65-service .s55-architecture .s55-arch article{display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;min-height:245px!important;padding:28px!important;border-radius:22px!important;background:linear-gradient(160deg,color-mix(in srgb,var(--s55) 7%,var(--surface)),var(--surface))!important}
.page65-service .s55-architecture .s55-arch article:before{display:none!important}.page65-service .s55-architecture .s55-arch article>b{margin:0 0 38px!important}.page65-service .s55-architecture .s55-arch h3{margin:0 0 10px!important}.page65-service .s55-architecture .s55-arch p{margin:0!important}

/* 7. Service-specific copy — avoid template feel */
.page65-service .s55-deliver>p{font-size:14px!important;line-height:1.7!important;max-width:620px}

@media(max-width:1100px){.page65-service .s55-hero-media{min-height:420px!important}.page65-service .s55-architecture .s55-arch{grid-template-columns:repeat(2,minmax(0,1fr))!important}.page65-service .s55-architecture .s55-arch article:last-child{grid-column:1/-1}.page65-service .s55-visual-media{min-height:360px!important}}
@media(max-width:700px){.page65-service .s55-hero-media{min-height:300px!important;padding:10px!important}.page65-service .s55-architecture .s55-arch{grid-template-columns:1fr!important}.page65-service .s55-architecture .s55-arch article,.page65-service .s55-architecture .s55-arch article:last-child{grid-column:auto!important;min-height:0!important}.page65-service .s55-visual-media{min-height:260px!important;padding:8px!important}}
@media(prefers-reduced-motion:reduce){.page65-home main>section.p65-reveal,.page65-home .p65-stagger>*{opacity:1!important;transform:none!important;transition:none!important}.page65-home .v3-slide.active .v3-hero-copy>*,.page65-home .v3-slide.active .v3-hero-bg img{animation:none!important}}


/* === v66-media-fix.css === */
/* V6.6 — portfolio/blog media integrity + exact legacy pricing layout */

/* Portfolio: never crop original project artwork. */
.p62-stage,
.v5-project-media{
  background:color-mix(in srgb,var(--surface2) 88%,#08161c)!important;
}
.p62-stage img,
.v5-project-media img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
.v5-project:hover .v5-project-media img{transform:none!important;opacity:.98!important}

/* Blog previews: all cards have the same frame, but the full original image remains visible. */
.article63-thumb{
  aspect-ratio:16/9!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  padding:0!important;
  background:color-mix(in srgb,var(--surface2) 90%,#07161d)!important;
}
.article63-thumb img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
.article-card:hover .article63-thumb img{transform:none!important}

/* Blog article cover: use the complete source image, with its native ratio. */
.article63-featured figure{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  overflow:visible!important;
  background:color-mix(in srgb,var(--surface2) 90%,#07161d)!important;
}
.article63-featured figure img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* Legacy packages use four equal cards on the four pages restored from the old website. */
.pricing66-exact{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch!important}
.pricing66-exact .pricing63-card{height:100%!important;display:flex!important;flex-direction:column!important}
.pricing66-exact .pricing63-card ul{flex:1!important}
.pricing66-subtitle{margin:6px 0 14px!important;color:var(--muted)!important;font-size:12px!important;line-height:1.5!important;min-height:36px}
@media(max-width:1180px){.pricing66-exact{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.pricing66-exact{grid-template-columns:1fr!important}.pricing66-subtitle{min-height:0}}


/* === v70-builder.css === */
/* 47 Builder V7.0 — wide layout + reusable builder components */
:root{--builder-page-gutter:var(--v3-gutter,35px);--v5-pad:var(--v3-gutter,35px)}
html,body{width:100%;max-width:100%;overflow-x:hidden}
.wrap,.p56-wrap,.quote-wrap{width:min(calc(100% - (var(--v3-gutter,35px) * 2)),var(--max,9999px))!important;max-width:var(--max,9999px)!important;margin-left:auto!important;margin-right:auto!important}
.wrap.narrow,.narrow,.longform-section .wrap,.faq-list{max-width:none!important}
.site-header .wrap,.topbar .wrap,.footer61 .wrap{width:min(calc(100% - (var(--v3-gutter,35px) * 2)),var(--max,9999px))!important;max-width:var(--max,9999px)!important}
.builder-nav{display:flex;align-items:center;gap:clamp(16px,1.35vw,30px)}
.builder-nav-drop{position:relative}.builder-nav-drop>button{border:0;background:transparent;color:var(--muted);font:inherit;font-weight:700;cursor:pointer;padding:22px 0}.builder-nav-drop:hover>button,.builder-nav-drop:focus-within>button{color:var(--text)}
.builder-nav-menu{position:absolute;left:50%;top:calc(100% - 4px);transform:translateX(-50%) translateY(10px);width:min(760px,78vw);padding:18px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;background:color-mix(in srgb,var(--surface) 96%,#000);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 80px rgba(0,0,0,.35);opacity:0;visibility:hidden;pointer-events:none;transition:.18s;z-index:120}
.builder-nav-drop:hover .builder-nav-menu,.builder-nav-drop:focus-within .builder-nav-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.builder-nav-menu a{padding:13px 14px!important;border-radius:13px;color:var(--text)!important;background:transparent;line-height:1.25}.builder-nav-menu a:hover{background:var(--surface2)}.builder-nav-menu .builder-nav-overview{grid-column:1/-1;color:var(--brand2)!important;border-bottom:1px solid var(--line);border-radius:0;margin-bottom:3px}
.builder-mobile-children{padding:0 0 10px 14px;display:grid;gap:2px}.builder-mobile-children a{font-size:13px;color:var(--muted)!important;padding:9px 8px!important}
.builder-section,.builder-container,.builder-columns{position:relative}.builder-columns{display:grid;grid-template-columns:repeat(var(--builder-cols,2),minmax(0,1fr));gap:var(--builder-gap,24px)}
.builder-spacer{height:80px}.builder-divider{height:1px;background:var(--line);margin:28px 0}.builder-html{min-height:40px}.builder-video{aspect-ratio:16/9;width:100%;border:1px solid var(--line);border-radius:18px;overflow:hidden}.builder-video iframe,.builder-video video{width:100%;height:100%;border:0}.builder-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.builder-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}.builder-testimonial{padding:28px;border:1px solid var(--line);background:var(--surface);border-radius:22px}.builder-testimonial blockquote{font-size:20px;margin:0 0 18px}.builder-price-box{padding:28px;border:1px solid var(--line);background:var(--surface);border-radius:24px}.builder-price-box strong{font-size:42px;color:var(--brand2)}
@media(max-width:900px){.builder-nav{display:none}.builder-columns,.builder-gallery{grid-template-columns:1fr}.wrap,.p56-wrap,.quote-wrap,.site-header .wrap,.topbar .wrap,.footer61 .wrap{width:min(calc(100% - (var(--v3-gutter,35px) * 2)),var(--max,9999px))!important}.builder-nav-menu{grid-template-columns:1fr}}
@keyframes builderFadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes builderFadeIn{from{opacity:0}to{opacity:1}}@keyframes builderZoomIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes builderSlideLeft{from{opacity:0;transform:translateX(45px)}to{opacity:1;transform:none}}@keyframes builderSlideRight{from{opacity:0;transform:translateX(-45px)}to{opacity:1;transform:none}}

