/* Source-of-truth overrides for the Vectis Concepts page. */
.vc-page{
  background:var(--paper) url("../shared/paper-background.svg") center top/cover repeat-y!important;
}
.why{
  color:#fff;
  background:linear-gradient(145deg,#1a0d24,#3a174a)!important;
}
.why::after{
  content:"V"!important;
  right:-2%!important;
  bottom:-18%!important;
  width:auto!important;
  height:auto!important;
  background:none!important;
  color:rgba(255,255,255,.065)!important;
  font:900 italic 260px/1 Impact,"Arial Black",sans-serif!important;
}
.vc-footer{
  background:linear-gradient(115deg,#100719,#291034 55%,#09050e)!important;
}

/* Gold Master v2 hero implementation: one self-contained SVG, no compensating effects. */
.vc-hero-copy{
  overflow:hidden!important;
  background:var(--paper) url("../shared/paper-background.svg") center top/cover repeat-y!important;
  color:var(--ink)!important;
  isolation:isolate;
}
.vc-hero-copy::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:rgba(238,229,213,.96);
  pointer-events:none;
}
.vc-logo{
  display:block!important;
  width:95%!important;
  max-width:720px!important;
  height:auto!important;
  aspect-ratio:8 / 3!important;
  margin:0 auto 8px!important;
  object-fit:contain!important;
  object-position:center center!important;
  filter:none!important;
  transform:none!important;
  animation:none!important;
  contain:layout paint;
}
.vc-intro{
  position:relative;
  z-index:2;
  color:var(--ink)!important;
  margin-top:0!important;
  margin-bottom:18px!important;
}
.vc-btn{
  position:relative;
  z-index:2;
  padding-inline:16px!important;
  box-shadow:5px 5px 0 var(--purple)!important;
}

/* Match the global header social controls. */
.concepts-header-social{
  display:flex;
  align-items:center;
  gap:10px;
  margin-left:24px;
}
.concepts-header-social a{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.28);
  border-radius:50%;
  color:#fff;
  transition:background .2s,border-color .2s,transform .2s;
}
.concepts-header-social a:hover,
.concepts-header-social a:focus-visible{
  background:rgba(141,67,212,.55);
  border-color:#b77bea;
  transform:translateY(-1px);
}
.concepts-header-social svg{
  width:16px;
  height:16px;
  fill:currentColor;
}
.concepts-menu-social{display:none}

/* Featured Concept Work production-board layout.
   The existing proof panel is visually moved below What We Do and above the artwork,
   while the four boards use the full content width in a two-column grid. */
#featured{
  padding-top:4px!important;
}
.featured-proof{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  border:0!important;
  margin-top:0!important;
}
.why{
  order:1!important;
  min-height:130px!important;
  padding:22px 30px!important;
  border:1px solid rgba(77,63,80,.7)!important;
}
.why h2{
  font-size:20px!important;
  margin-bottom:17px!important;
}
.why-list{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
}
.why-list li{
  min-height:58px!important;
  padding:2px 22px 2px 34px!important;
  border-right:1px solid rgba(255,255,255,.17)!important;
  font-size:11px!important;
}
.why-list li:last-child{
  border-right:0!important;
}
.featured-side{
  order:2!important;
  width:100%!important;
  padding:0!important;
  border:0!important;
}
.vc-ribbon.featured{
  margin:0 0 12px 10px!important;
}
.cards{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}
.card{
  background:#f3ecdf!important;
  border:1px solid rgba(90,83,82,.48)!important;
  box-shadow:0 3px 9px rgba(22,12,27,.14)!important;
}
.card-art{
  aspect-ratio:auto!important;
  overflow:visible!important;
  border:0!important;
}
.card-art img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
}
.card-copy{
  display:none!important;
}

@media (min-width:1051px){
  .vc-hero{grid-template-columns:46% 54%!important}
  .vc-hero-copy{padding:22px 30px 22px!important}
  .vc-logo{width:95%!important;max-width:720px!important;margin:0 auto 6px!important}
  .vc-intro{max-width:540px!important}
}

@media (max-width:1050px) and (min-width:701px){
  .vc-hero{grid-template-columns:46% 54%!important}
  .vc-hero-copy{padding:22px 24px!important}
  .vc-logo{width:96%!important;max-width:610px!important;margin:0 auto 6px!important}
  .vc-btn{font-size:13px!important;padding-inline:15px!important}
  .concepts-header-social{margin-left:16px}
  .why-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;row-gap:16px!important}
  .why-list li:nth-child(2){border-right:0!important}
}

@media (max-width:700px){
  .vc-hero-copy{
    padding:14px 16px 24px!important;
    text-align:left;
  }
  .vc-logo{
    width:96%!important;
    max-width:540px!important;
    margin:0 auto 8px!important;
  }
  .vc-intro{
    max-width:none!important;
    margin:0 0 20px!important;
    font-size:16px!important;
    line-height:1.45!important;
    font-weight:700!important;
  }
  .vc-btn{
    display:flex!important;
    width:90%!important;
    min-height:48px!important;
    margin:0 auto 8px!important;
    justify-content:center!important;
    padding:12px 14px!important;
    font-size:13px!important;
    line-height:1.15!important;
  }
  .vc-hero-art{border-top:1px solid rgba(17,16,21,.2)}
  .vc-footer{background:linear-gradient(145deg,#100719,#291034 62%,#09050e)!important}
  .concepts-header-social{display:none}
  .concepts-menu-social{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    padding:14px 4px 2px;
  }
  .concepts-menu-social a{
    display:flex!important;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:44px;
    padding:10px 12px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:4px;
    background:rgba(141,67,212,.18);
    color:#fff;
    text-decoration:none;
  }
  .concepts-menu-social a::after{display:none!important}
  .concepts-menu-social svg{width:18px;height:18px;flex:0 0 auto;fill:currentColor}
  .concepts-menu-social span{font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
  .why{padding:20px!important;min-height:0!important}
  .why-list{grid-template-columns:1fr!important;gap:14px!important}
  .why-list li{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important;padding-bottom:14px!important}
  .why-list li:last-child{border-bottom:0!important;padding-bottom:2px!important}
  .cards{grid-template-columns:1fr!important;gap:14px!important}
  .vc-ribbon.featured{margin-left:0!important}
}

@media (max-width:520px){
  .vc-hero-copy{padding:12px 14px 22px!important}
  .vc-logo{width:97%!important;max-width:460px!important}
  .vc-intro{font-size:15.5px!important;line-height:1.45!important;margin:0 0 18px!important}
  .vc-btn{width:90%!important;padding:12px!important}
}

@media (max-width:390px){
  .vc-logo{width:98%!important;max-width:380px!important}
  .vc-intro{font-size:15px!important}
  .vc-btn{width:92%!important;font-size:12.5px!important}
  .concepts-menu-social{grid-template-columns:1fr}
}
