.aspect-ratio-16x9 {
  aspect-ratio: 16/9;
}

.pt-6 {
  padding-top: 4.5rem !important;
}

.pt-7 {
  padding-top: 6rem !important;
}

.pb-5 {
  padding-bottom: 3rem!important;
}

.aspect-ratio-16x9 {
  aspect-ratio: 16/9;
}

.pt-2 {
  padding-top: .5rem!important;
}

.pb-6 {
  padding-bottom: 4.5rem !important;
}

.pb-10 {
  padding-bottom: 10.5rem !important;
}

.ps-0 {
  padding-left: 0!important;
}

div {
  transform: scale(1);
}

h1 {
  /*background: rgba(0,0,0,0.35);*/
  font-size: 40px;
  font-family: Montserrat, sans-serif;
  border-radius: 0px;
  border-width: 8px;
  /*border-style: outset;*/
}

.card {
}

.card {
}

div {
}

.gallery-tile {
  transition: transform 0.3s ease;
}

.gallery-tile:hover {
  transform: scale(1.03);
}

.gallery-tile {
  transition: transform 0.3s ease;
}

.gallery-tile:hover {
  transform: scale(1.03);
}

.gallery-tile {
  transition: transform 0.3s ease;
}

.gallery-tile:hover {
  transform: scale(1.03);
}

.gallery-tile {
  transition: transform 0.3s ease;
}

.gallery-tile:hover {
  transform: scale(1.03);
}

.gallery-tile {
  transition: transform 0.3s ease;
}

.gallery-tile:hover {
  transform: scale(1.03);
}

.gallery-tile {
  transition: transform 0.3s ease;
}

.gallery-tile:hover {
  transform: scale(1.03);
}

.gallery-tile .overlay-dark {
  transition: opacity 0.3s ease;
}

.gallery-tile:hover .overlay-dark {
  opacity: 0.03;
}

.gallery-tile .overlay-dark {
  transition: opacity 0.3s ease;
}

.gallery-tile:hover .overlay-dark {
  opacity: 0.03;
}

.gallery-tile .overlay-dark {
  transition: opacity 0.3s ease;
}

.gallery-tile:hover .overlay-dark {
  opacity: 0.03;
}

.gallery-tile .overlay-dark {
  transition: opacity 0.3s ease;
}

.gallery-tile:hover .overlay-dark {
  opacity: 0.03;
}

.gallery-tile .overlay-dark {
  transition: opacity 0.3s ease;
}

.gallery-tile:hover .overlay-dark {
  opacity: 0.03;
}

.gallery-tile .overlay-dark {
  transition: opacity 0.3s ease;
}

.gallery-tile:hover .overlay-dark {
  opacity: 0.03;
}

.gallery-tile .tile-text {
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.gallery-tile:hover .tile-text {
  transform: translateY(0px);
}

.gallery-tile .tile-text {
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.gallery-tile:hover .tile-text {
  transform: translateY(0px);
}

.gallery-tile .tile-text {
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.gallery-tile:hover .tile-text {
  transform: translateY(0px);
}

.gallery-tile .tile-text {
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.gallery-tile:hover .tile-text {
  transform: translateY(0px);
}

.gallery-tile .tile-text {
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.gallery-tile:hover .tile-text {
  transform: translateY(0px);
}

.gallery-tile .tile-text {
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.gallery-tile:hover .tile-text {
  transform: translateY(0px);
}

.gallery-tile {
}

backg {
}

.img-hover {
  transition: transform 0.4s ease;
}

.img-hover:hover {
  transform: scale(1.03);
}

.img-hover {
  transition: transform 0.4s ease;
}

.img-hover:hover {
  transform: scale(1.03);
}

.img-hover {
  transition: transform 0.4s ease;
}

.img-hover:hover {
  transform: scale(1.03);
}

.img-hover {
  transition: transform 0.4s ease;
}

.img-hover:hover {
  transform: scale(1.03);
}

.img-hover {
  transition: transform 0.4s ease;
}

.img-hover:hover {
  transform: scale(1.03);
}

.img-hover {
  transition: transform 0.4s ease;
}

.img-hover:hover {
  transform: scale(1.03);
}

.btn-pcg {
  transition: all 0.2s ease;
}

.btn-pcg:hover {
  transform: translateY(-1px);
  background-color: #0a1a30;
}

.btn {
}

.btn {
}

.film-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.btn {
}

.film-btn {
  transition: all 0.3s ease;
}

.film-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(0,0,0,0.25);
  background-color: #d4b46a;
  color: #071a38;
  border-color: #d4b46a;
}

.film-img {
  transition: transform 0.5s ease;
}

.film-img:hover {
  transform: scale(1.05);
}

.video-box {
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.video-box:hover {
  transform: translateY(-6px);
  box-shadow: 0 40px 100px rgba(0,0,0,0.65);
}

.cta-btn {
  transition: all 0.3s ease;
}

.cta-btn:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 35px rgba(212,180,106,0.35);
}

body {
}

.pcg-build-section {
}

.pcg-casting-poster-title {
}

.beauty-still-img {
}

/* =========================================================   SALT & FEATHER — REBUILT FOUR-IMAGE FILMSTRIP========================================================= */

.sf-filmstrip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  width: 100% !important;
  height: clamp(150px, 14vw, 225px) !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  overflow: hidden !important;
  background: #030608 !important;
}

.sf-filmstrip > .sf-frame {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  text-decoration: none !important;
  background: #030608 !important;
  border-right: 1px solid rgba(243, 238, 230, 0.1) !important;
}

.sf-filmstrip > .sf-frame:last-child {
  border-right: 0 !important;
}

.sf-filmstrip > .sf-frame > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  transform: scale(1.01);
  transition: transform 0.9s cubic-bezier(0.2, 0.72, 0.25, 1), filter 0.7s ease !important;
}

/* Dark cinematic fade over each photograph */

.sf-filmstrip > .sf-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient( 180deg, rgba(3, 6, 8, 0.03) 10%, rgba(3, 6, 8, 0.18) 50%, rgba(3, 6, 8, 0.82) 100% );
  transition: background 0.6s ease;
}

/* Handles the extra wrapper Div currently inside each Link */

.sf-filmstrip .sf-frame-overlay {
  position: absolute !important;
  left: clamp(16px, 1.5vw, 28px) !important;
  right: clamp(16px, 1.5vw, 28px) !important;
  bottom: clamp(16px, 1.5vw, 26px) !important;
  z-index: 3 !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}

.sf-filmstrip .sf-frame-overlay p {
  margin: 0 0 8px !important;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(8px, 0.62vw, 11px) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #b58a4b !important;
}

.sf-filmstrip .sf-frame-overlay h1, .sf-filmstrip .sf-frame-overlay h2, .sf-filmstrip .sf-frame-overlay h3, .sf-filmstrip .sf-frame-overlay h4, .sf-filmstrip .sf-frame-overlay h5, .sf-filmstrip .sf-frame-overlay h6 {
  margin: 0 !important;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(21px, 2vw, 34px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: -0.025em !important;
  text-transform: uppercase !important;
  color: #f4efe7 !important;
}

/* Hover treatment */

.sf-filmstrip > .sf-frame:hover > img {
  transform: scale(1.075);
  filter: brightness(1.08) contrast(1.04);
}

.sf-filmstrip > .sf-frame:hover::after {
  background: linear-gradient( 180deg, rgba(3, 6, 8, 0) 10%, rgba(3, 6, 8, 0.1) 48%, rgba(3, 6, 8, 0.72) 100% );
}

/* Temporary crop positions */

.sf-frame-wild > img {
  object-position: 50% 45% !important;
}

.sf-frame-journeys > img {
  object-position: center !important;
}

.sf-frame-motion > img {
  object-position: 50% 46% !important;
}

.sf-frame-digital > img {
  object-position: center !important;
}

/* Tablet */

@media (max-width: 800px) {
  .sf-filmstrip {
    grid-template-columns: repeat(2, 1fr) !important;
    height: auto !important;
  }
}

@media (max-width: 800px) {
  .sf-filmstrip > .sf-frame {
    height: 210px !important;
  }
}

/* Phone */

@media (max-width: 520px) {
  .sf-filmstrip {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 520px) {
  .sf-filmstrip > .sf-frame {
    height: 190px !important;
  }
}

/* =========================================================   SALT & FEATHER — RESTORED HERO BACKGROUND========================================================= */

.sf-hero {
  position: relative !important;
  min-height: 100vh !important;
  overflow: hidden !important;
  background: linear-gradient( 90deg, rgba(3, 6, 8, 0.98) 0%, rgba(3, 6, 8, 0.88) 28%, rgba(3, 6, 8, 0.32) 68%, rgba(3, 6, 8, 0.08) 100% ), url("A92A1239.jpg") center right / cover no-repeat !important;
}

.sf-home-capabilities-list {
}

.sf-inquiry-inner {
}

.dh-header-non-rectangular-container h1, p {
  color: white;
  font-weight: bold;
}

body a {
  outline: none !important;
}

.highlight-blue {
  color: #fff;
  background-color: #1e6add;
  padding: 50px 0;
}

.highlight-blue p {
  color: #c4d5ef;
  line-height: 1.5;
}

.highlight-blue h2 {
  font-weight: normal;
  margin-bottom: 25px;
  line-height: 1.5;
  padding-top: 0;
  margin-top: 0;
  color: inherit;
}

.highlight-blue .intro {
  font-size: 16px;
  max-width: 500px;
  margin: 0 auto 25px;
}

.highlight-blue .buttons {
  text-align: center;
}

.highlight-blue .buttons .btn {
  padding: 16px 32px;
  margin: 6px;
  border-radius: 3rem;
  background: none;
  box-shadow: none;
  text-shadow: none;
  opacity: 0.9;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 13px;
  letter-spacing: 0.4px;
  line-height: 1;
}

.highlight-blue .buttons .btn:hover {
  opacity: 1;
}

.highlight-blue .buttons .btn:active {
  transform: translateY(1px);
}

.mb-n7 {
  margin-bottom: -5rem !important;
}

@media (min-width: 768px) {
  .min-vh-md-50 {
    min-height: 50vh !important;
  }
}

.min-vh-25 {
  min-height: 25vh !important;
}

.line-with-icon-divider {
  background: inherit;
  width: 100%;
  height: 50px;
  padding: 10px;
}

.line-span {
  margin: auto;
  width: 60px;
  height: 60px;
  position: relative;
  display: block;
  text-align: center;
}

.line-span:before, .line-span:after {
  content: '';
  width: 200px;
  transform: translateY( 9px );
  height: 2px;
  background: #ccc;
  position: absolute;
}

.line-span:before {
  right: 100%;
}

.line-span:after {
  left: 100%;
}

/* ===== PCG AI GOVERNANCE PAGE ===== */

.pcg-ai-container {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-ai-hero {
  position: relative;
  overflow: hidden;
  padding: 150px 0 135px;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.22), transparent 30%), radial-gradient(circle at 82% 78%, rgba(199,165,107,0.10), transparent 34%), linear-gradient(135deg, #071427 0%, #020814 100%);
}

.pcg-ai-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.10;
  pointer-events: none;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-ai-hero-shell {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 72px;
  align-items: center;
}

.pcg-ai-hero-copy {
  position: relative;
  padding-top: 42px;
}

.pcg-ai-hero-copy::before, .pcg-ai-panel-card-line {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 132px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
  box-shadow: 0 0 34px rgba(111,144,183,0.42);
}

.pcg-ai-eyebrow {
  color: #a9d4ff;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 20px;
}

.pcg-ai-hero-title {
  color: #ffffff;
  font-size: clamp(54px, 6.5vw, 104px);
  line-height: 0.9;
  letter-spacing: -0.08em;
  font-weight: 950;
  max-width: 860px;
  margin-bottom: 30px;
  text-shadow: 0 24px 80px rgba(0,0,0,0.62);
}

.pcg-ai-hero-text {
  color: rgba(255,255,255,0.78);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 760px;
  margin-bottom: 38px;
}

.pcg-ai-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.pcg-ai-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 178px;
  height: 50px;
  padding: 0 22px;
  border-radius: 999px;
  font-size: 13.5px;
  font-weight: 950;
  line-height: 1;
  text-decoration: none;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease;
}

.pcg-ai-btn:hover {
  transform: translateY(-3px);
  text-decoration: none;
}

.pcg-ai-btn-primary {
  color: #071427;
  background: linear-gradient(135deg, #ffffff, #8fb8df);
  border: 1px solid rgba(255,255,255,0.62);
  box-shadow: 0 18px 46px rgba(111,144,183,0.34), 0 0 42px rgba(143,184,223,0.22);
}

.pcg-ai-btn-secondary {
  color: #ffffff;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.30);
}

.pcg-ai-hero-panel {
  position: relative;
  overflow: hidden;
  padding: 48px;
  border-radius: 38px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.25), transparent 40%), linear-gradient(135deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.15);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 44px 130px rgba(0,0,0,0.40), inset 0 1px 0 rgba(255,255,255,0.08);
}

.pcg-ai-hero-panel::before {
  content: "";
  display: block;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 34px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
}

.pcg-ai-panel-eyebrow {
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 3.5px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-ai-panel-title {
  color: #ffffff;
  font-size: clamp(34px, 3.7vw, 58px);
  line-height: 0.98;
  letter-spacing: -0.065em;
  font-weight: 950;
  margin-bottom: 22px;
}

.pcg-ai-panel-text {
  color: rgba(255,255,255,0.75);
  font-size: 17px;
  line-height: 1.72;
  font-weight: 650;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-ai-hero-shell {
    grid-template-columns: 1fr;
    gap: 58px;
  }
}

@media (max-width: 575px) {
  .pcg-ai-hero {
    padding: 110px 0 95px;
  }
}

@media (max-width: 575px) {
  .pcg-ai-hero-panel {
    padding: 34px 26px;
    border-radius: 28px;
  }
}

@media (max-width: 575px) {
  .pcg-ai-btn {
    width: 100%;
  }
}

/* ===== AI PAGE — GOVERNANCE SERVICES ===== */

.pcg-ai-services {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 16% 20%, rgba(111,144,183,0.19), transparent 31%), radial-gradient(circle at 86% 78%, rgba(199,165,107,0.11), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-ai-services::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.085;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-ai-services .pcg-ai-container {
  position: relative;
  z-index: 2;
}

.pcg-ai-section-eyebrow-light {
  color: #a9d4ff;
}

.pcg-ai-services-title {
  color: #ffffff;
  font-size: clamp(44px, 5.7vw, 88px);
  line-height: 0.94;
  letter-spacing: -0.075em;
  font-weight: 950;
  max-width: 1050px;
  margin-bottom: 24px;
  text-shadow: 0 18px 70px rgba(0,0,0,0.56), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-ai-services-text {
  color: rgba(255,255,255,0.76);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 870px;
  margin-bottom: 70px;
}

.pcg-ai-services-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 18px;
}

.pcg-ai-service-card {
  position: relative;
  overflow: hidden;
  min-height: 330px;
  padding: 34px 28px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.24), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.13);
  box-shadow: 0 34px 100px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.07);
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.pcg-ai-service-card::before {
  content: "";
  display: block;
  width: 82px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 28px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
}

.pcg-ai-service-card:hover {
  transform: translateY(-8px);
  border-color: rgba(143,184,223,0.46);
  box-shadow: 0 48px 130px rgba(0,0,0,0.42), 0 0 80px rgba(143,184,223,0.14);
}

.pcg-ai-service-title {
  color: #ffffff;
  font-size: 24px;
  line-height: 1.05;
  letter-spacing: -0.045em;
  font-weight: 920;
  margin-bottom: 16px;
}

.pcg-ai-service-text {
  color: rgba(255,255,255,0.74);
  font-size: 15px;
  line-height: 1.65;
  font-weight: 650;
  margin-bottom: 0;
}

@media (max-width: 1199px) {
  .pcg-ai-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1199px) {
  .pcg-ai-service-card {
    min-height: 280px;
  }
}

@media (max-width: 575px) {
  .pcg-ai-services {
    padding: 105px 0;
  }
}

@media (max-width: 575px) {
  .pcg-ai-services-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== AI PAGE — FINAL CTA ===== */

.pcg-ai-final {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-ai-final-card {
  position: relative;
  overflow: hidden;
  padding: 72px;
  border-radius: 38px;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.22), transparent 40%), radial-gradient(circle at bottom left, rgba(199,165,107,0.15), transparent 42%), linear-gradient(135deg, #071427, #020814);
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 80px rgba(111,144,183,0.16);
}

.pcg-ai-final-card::before {
  content: "";
  display: block;
  width: 132px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 34px;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent);
  box-shadow: 0 0 34px rgba(143,184,223,0.44);
}

.pcg-ai-final-eyebrow {
  color: #a9d4ff;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 20px;
}

.pcg-ai-final-title {
  color: #ffffff;
  font-size: clamp(44px, 5.6vw, 86px);
  line-height: 0.94;
  letter-spacing: -0.075em;
  font-weight: 950;
  max-width: 980px;
  margin-bottom: 26px;
  text-shadow: 0 18px 70px rgba(0,0,0,0.58), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-ai-final-text {
  color: rgba(255,255,255,0.78);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 860px;
  margin-bottom: 38px;
}

.pcg-ai-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}

@media (max-width: 767px) {
  .pcg-ai-final {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-ai-final-card {
    padding: 46px 28px;
    border-radius: 28px;
  }
}

/* ===== AI PAGE — FINAL CTA ===== */

.pcg-ai-final {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-ai-final-card {
  position: relative;
  overflow: hidden;
  padding: 72px;
  border-radius: 38px;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.22), transparent 40%), radial-gradient(circle at bottom left, rgba(199,165,107,0.15), transparent 42%), linear-gradient(135deg, #071427, #020814);
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 80px rgba(111,144,183,0.16);
}

.pcg-ai-final-card::before {
  content: "";
  display: block;
  width: 132px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 34px;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent);
  box-shadow: 0 0 34px rgba(143,184,223,0.44);
}

.pcg-ai-final-eyebrow {
  color: #a9d4ff;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 20px;
}

.pcg-ai-final-title {
  color: #ffffff;
  font-size: clamp(44px, 5.6vw, 86px);
  line-height: 0.94;
  letter-spacing: -0.075em;
  font-weight: 950;
  max-width: 980px;
  margin-bottom: 26px;
  text-shadow: 0 18px 70px rgba(0,0,0,0.58), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-ai-final-text {
  color: rgba(255,255,255,0.78);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 860px;
  margin-bottom: 38px;
}

.pcg-ai-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}

@media (max-width: 767px) {
  .pcg-ai-final {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-ai-final-card {
    padding: 46px 28px;
    border-radius: 28px;
  }
}

/* ===== ARTICLE HERO ===== */

.pcg-article-hero {
  padding: 150px 0 115px;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.22), transparent 30%), radial-gradient(circle at 85% 70%, rgba(111,144,183,0.12), transparent 32%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-article-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: 0.65;
  pointer-events: none;
}

.pcg-article-hero .pcg-article-container {
  position: relative;
  z-index: 2;
}

.pcg-article-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 20px;
}

.pcg-article-title {
  color: #ffffff;
  font-size: clamp(46px, 6vw, 86px);
  line-height: 0.95;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 980px;
  margin-bottom: 30px;
}

.pcg-article-subhead {
  color: rgba(255,255,255,0.76);
  font-size: 22px;
  line-height: 1.6;
  max-width: 880px;
  margin-bottom: 34px;
}

.pcg-article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.pcg-article-meta-item {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 13px;
  border-radius: 999px;
  color: #ffffff;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0.04em;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(157,183,212,0.28);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* ARTICLE HERO HARD VISIBILITY FIX */

.pcg-article-hero .pcg-article-title, .pcg-article-title {
  color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: 0 12px 44px rgba(0,0,0,0.32) !important;
}

.pcg-article-hero .pcg-article-subhead, .pcg-article-subhead {
  color: rgba(255,255,255,0.78) !important;
}

.pcg-article-hero .pcg-article-eyebrow, .pcg-article-eyebrow {
  color: #9db7d4 !important;
}

/* ===== ARTICLE BODY ===== */

.pcg-article-body-section {
  padding: 120px 0 135px;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.10), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-article-body {
  position: relative;
  padding: 68px;
  border-radius: 34px;
  background: rgba(255,255,255,0.88);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 34px 95px rgba(11,31,58,0.13), inset 0 1px 0 rgba(255,255,255,0.9);
}

.pcg-article-body p {
  color: #26384c !important;
  font-size: 20px !important;
  line-height: 1.85 !important;
  margin-bottom: 28px !important;
}

.pcg-article-body h2, .pcg-article-body h1, .pcg-article-body h3 {
  color: #0b1f3a !important;
  font-size: clamp(30px, 3.4vw, 48px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  margin-top: 58px !important;
  margin-bottom: 22px !important;
}

.pcg-article-body h2:first-child, .pcg-article-body h1:first-child, .pcg-article-body h3:first-child {
  margin-top: 0 !important;
}

.pcg-article-body strong {
  color: #0b1f3a !important;
  font-weight: 900 !important;
}

.pcg-article-pullquote {
  margin: 58px 0;
  padding: 38px 42px;
  border-radius: 28px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.26), transparent 40%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.24);
  box-shadow: 0 28px 80px rgba(11,31,58,0.22), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-article-pullquote p {
  color: #ffffff !important;
  font-size: clamp(26px, 3vw, 40px) !important;
  line-height: 1.22 !important;
  font-weight: 850 !important;
  letter-spacing: -0.035em !important;
  margin-bottom: 0 !important;
}

.pcg-article-question-close {
  margin-top: 60px;
  padding: 42px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 38%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.24);
}

.pcg-article-question-close p {
  color: rgba(255,255,255,0.78) !important;
  font-size: 20px !important;
  line-height: 1.7 !important;
  margin-bottom: 18px !important;
}

.pcg-article-question-close h2, .pcg-article-question-close h1, .pcg-article-question-close h3 {
  color: #ffffff !important;
  margin-top: 0 !important;
  margin-bottom: 22px !important;
}

.pcg-article-question-close h2:last-child, .pcg-article-question-close h1:last-child, .pcg-article-question-close h3:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  .pcg-article-body {
    padding: 38px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-article-body p {
    font-size: 18px !important;
  }
}

@media (max-width: 767px) {
  .pcg-article-pullquote, .pcg-article-question-close {
    padding: 30px;
  }
}

/* ===== ARTICLE BODY ===== */

.pcg-article-body-section {
  padding: 120px 0 135px;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.10), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-article-body {
  position: relative;
  padding: 68px;
  border-radius: 34px;
  background: rgba(255,255,255,0.88);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 34px 95px rgba(11,31,58,0.13), inset 0 1px 0 rgba(255,255,255,0.9);
}

.pcg-article-body p {
  color: #26384c !important;
  font-size: 20px !important;
  line-height: 1.85 !important;
  margin-bottom: 28px !important;
}

.pcg-article-body h2, .pcg-article-body h1, .pcg-article-body h3 {
  color: #0b1f3a !important;
  font-size: clamp(30px, 3.4vw, 48px) !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  margin-top: 58px !important;
  margin-bottom: 22px !important;
}

.pcg-article-body h2:first-child, .pcg-article-body h1:first-child, .pcg-article-body h3:first-child {
  margin-top: 0 !important;
}

.pcg-article-body strong {
  color: #0b1f3a !important;
  font-weight: 900 !important;
}

.pcg-article-pullquote {
  margin: 58px 0;
  padding: 38px 42px;
  border-radius: 28px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.26), transparent 40%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.24);
  box-shadow: 0 28px 80px rgba(11,31,58,0.22), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-article-pullquote p {
  color: #ffffff !important;
  font-size: clamp(26px, 3vw, 40px) !important;
  line-height: 1.22 !important;
  font-weight: 850 !important;
  letter-spacing: -0.035em !important;
  margin-bottom: 0 !important;
}

.pcg-article-question-close {
  margin-top: 60px;
  padding: 42px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 38%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.24);
}

.pcg-article-question-close p {
  color: rgba(255,255,255,0.78) !important;
  font-size: 20px !important;
  line-height: 1.7 !important;
  margin-bottom: 18px !important;
}

.pcg-article-question-close h2, .pcg-article-question-close h1, .pcg-article-question-close h3 {
  color: #ffffff !important;
  margin-top: 0 !important;
  margin-bottom: 22px !important;
}

.pcg-article-question-close h2:last-child, .pcg-article-question-close h1:last-child, .pcg-article-question-close h3:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  .pcg-article-body {
    padding: 38px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-article-body p {
    font-size: 18px !important;
  }
}

@media (max-width: 767px) {
  .pcg-article-pullquote, .pcg-article-question-close {
    padding: 30px;
  }
}

/* ARTICLE HERO FINAL POLISH */

.pcg-article-title {
  color: #ffffff !important;
  font-size: clamp(44px, 5.8vw, 82px) !important;
  line-height: 0.96 !important;
  font-weight: 900 !important;
  letter-spacing: -0.06em !important;
  max-width: 980px !important;
  margin-bottom: 28px !important;
}

.pcg-article-subhead {
  max-width: 880px !important;
  font-size: 21px !important;
  line-height: 1.55 !important;
  font-weight: 650 !important;
}

/* ARTICLE BODY READABILITY FIX */

.pcg-article-body p {
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
}

.pcg-article-body h1, .pcg-article-body h2, .pcg-article-body h3 {
  font-weight: 900 !important;
}

/* ARTICLE BODY READABILITY FIX */

.pcg-article-body p {
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
}

.pcg-article-body h1, .pcg-article-body h2, .pcg-article-body h3 {
  font-weight: 900 !important;
}

/* ARTICLE HERO TO BODY SPACING */

.pcg-article-body-section {
  padding-top: 145px !important;
}

/* PCG VIEW BOX TEXT BALANCE */

.pcg-article-question-close p, .pcg-article-pullquote p {
  font-weight: 700 !important;
}

.pcg-article-question-close h1, .pcg-article-question-close h2, .pcg-article-question-close h3 {
  font-size: clamp(28px, 3vw, 44px) !important;
  line-height: 1.12 !important;
}

/* LATEST POV ARTICLE CARD VISIBILITY FIX */

.pcg-latest-pov-section .pcg-article-row {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.16), transparent 42%), rgba(255,255,255,0.88) !important;
}

.pcg-latest-pov-section .pcg-article-number {
  color: #6f90b7 !important;
  opacity: 1 !important;
}

.pcg-latest-pov-section .pcg-article-kicker {
  color: #6f90b7 !important;
  opacity: 1 !important;
}

.pcg-latest-pov-section .pcg-article-title {
  color: #0b1f3a !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
}

.pcg-latest-pov-section .pcg-article-summary {
  color: #425466 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.pcg-latest-pov-section .pcg-article-link {
  color: #ffffff !important;
  opacity: 1 !important;
}

/* ARTICLE ENDING / FOOTER SPACING FIX */

.pcg-article-body-section {
  padding-bottom: 190px !important;
}

.pcg-article-question-close {
  margin-bottom: 70px !important;
  padding-bottom: 58px !important;
}

/* FINAL ARTICLE CLOSING BOX INSET FIX */

.pcg-article-question-close {
  width: 78% !important;
  max-width: 860px !important;
  margin: 80px auto 110px auto !important;
  padding: 46px 50px 58px !important;
  border-radius: 30px !important;
}

.pcg-article-question-close p {
  max-width: 720px !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
}

.pcg-article-question-close h1, .pcg-article-question-close h2, .pcg-article-question-close h3 {
  max-width: 760px !important;
  font-size: clamp(30px, 3.2vw, 48px) !important;
  line-height: 1.12 !important;
}

/* FINAL ARTICLE CLOSING BOX INSET FIX */

.pcg-article-question-close {
  width: 78% !important;
  max-width: 860px !important;
  margin: 80px auto 110px auto !important;
  padding: 46px 50px 58px !important;
  border-radius: 30px !important;
}

.pcg-article-question-close p {
  max-width: 720px !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
}

.pcg-article-question-close h1, .pcg-article-question-close h2, .pcg-article-question-close h3 {
  max-width: 760px !important;
  font-size: clamp(30px, 3.2vw, 48px) !important;
  line-height: 1.12 !important;
}

.pcg-article-question-close {
  margin-top: 18px !important;
}

/* TIGHTEN SPACE ABOVE FINAL QUESTION BOX */

.pcg-article-question-close {
  margin-top: 12px !important;
}

/* ===== AVAILABLE CONSULTANTS — PREMIUM FULL ROSTER ===== */

.pcg-available-roster-premium {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 76%, rgba(199,165,107,0.12), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 52%, #f4efe7 100%);
}

.pcg-available-premium-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.9fr 0.9fr;
  gap: 20px;
  align-items: stretch;
}

.pcg-available-premium-card {
  position: relative;
  overflow: hidden;
  min-height: 510px;
  padding: 38px;
  border-radius: 34px;
  display: flex;
  flex-direction: column;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.20), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,239,231,0.78));
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 32px 95px rgba(7,20,39,0.13), inset 0 1px 0 rgba(255,255,255,0.62);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.pcg-available-premium-card:hover {
  transform: translateY(-7px);
  border-color: rgba(111,144,183,0.30);
  box-shadow: 0 42px 115px rgba(7,20,39,0.17), 0 0 48px rgba(111,144,183,0.10);
}

.pcg-available-premium-card::before {
  content: "";
  display: block;
  width: 92px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 30px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
}

.pcg-available-feature-card {
  grid-row: span 2;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.25), transparent 42%), radial-gradient(circle at bottom left, rgba(199,165,107,0.13), transparent 42%), linear-gradient(135deg, #071427, #020814);
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 44px 130px rgba(0,0,0,0.38), 0 0 80px rgba(111,144,183,0.14);
}

.pcg-available-card-kicker {
  color: #6f90b7;
  font-size: 11px;
  letter-spacing: 3.2px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-available-feature-card .pcg-available-card-kicker {
  color: #a9d4ff;
}

.pcg-available-card-name {
  color: #071427;
  font-size: clamp(38px, 4vw, 62px);
  line-height: 0.95;
  letter-spacing: -0.065em;
  font-weight: 950;
  margin-bottom: 20px;
}

.pcg-available-feature-card .pcg-available-card-name {
  color: #ffffff;
  font-size: clamp(48px, 5vw, 78px);
}

.pcg-available-card-role {
  color: #243447;
  font-size: 17px;
  line-height: 1.58;
  font-weight: 850;
  margin-bottom: 18px;
}

.pcg-available-feature-card .pcg-available-card-role {
  color: rgba(255,255,255,0.86);
  font-size: 19px;
}

.pcg-available-card-detail {
  color: #425466;
  font-size: 15.8px;
  line-height: 1.68;
  font-weight: 650;
  margin-bottom: 28px;
}

.pcg-available-feature-card .pcg-available-card-detail {
  color: rgba(255,255,255,0.74);
  font-size: 16.5px;
}

.pcg-available-meta {
  display: grid;
  gap: 8px;
  margin: 20px 0 28px;
}

.pcg-available-meta p, .pcg-available-meta span {
  display: block;
  margin: 0;
  padding: 10px 12px;
  border-radius: 14px;
  color: #243447;
  background: rgba(111,144,183,0.10);
  border: 1px solid rgba(111,144,183,0.16);
  font-size: 12.5px;
  font-weight: 850;
  line-height: 1.25;
}

.pcg-available-feature-card .pcg-available-meta p, .pcg-available-feature-card .pcg-available-meta span {
  color: rgba(255,255,255,0.86);
  background: rgba(255,255,255,0.075);
  border: 1px solid rgba(255,255,255,0.13);
}

.pcg-available-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: auto;
}

.pcg-available-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 11px;
  border-radius: 999px;
  color: #071427;
  background: rgba(111,144,183,0.13);
  border: 1px solid rgba(111,144,183,0.20);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
}

.pcg-available-feature-card .pcg-available-tag {
  color: rgba(255,255,255,0.88);
  background: rgba(255,255,255,0.075);
  border: 1px solid rgba(255,255,255,0.14);
}

/* Make the last card span wider if it lands alone */

.pcg-available-premium-card:nth-child(6) {
  grid-column: span 2;
  min-height: 420px;
}

@media (max-width: 1199px) {
  .pcg-available-premium-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1199px) {
  .pcg-available-feature-card {
    grid-row: auto;
    grid-column: 1 / -1;
  }
}

@media (max-width: 1199px) {
  .pcg-available-premium-card:nth-child(6) {
    grid-column: auto;
    min-height: 510px;
  }
}

@media (max-width: 767px) {
  .pcg-available-roster-premium {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-available-premium-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-available-premium-card, .pcg-available-feature-card, .pcg-available-premium-card:nth-child(6) {
    grid-column: auto;
    grid-row: auto;
    min-height: auto;
    padding: 32px 26px;
    border-radius: 28px;
  }
}

/* ===== AVAILABLE CONSULTANTS — HERO FORCE FIX ===== */

.pcg-available-hero {
  position: relative !important;
  overflow: hidden !important;
  padding: 150px 0 135px !important;
  background: radial-gradient(circle at 16% 20%, rgba(111,144,183,0.24), transparent 32%), radial-gradient(circle at 84% 76%, rgba(199,165,107,0.11), transparent 34%), linear-gradient(135deg, #071427 0%, #020814 100%) !important;
}

.pcg-available-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.09 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.pcg-available-hero .pcg-available-container {
  position: relative !important;
  z-index: 2 !important;
}

.pcg-available-hero-shell {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: 1.08fr 0.92fr !important;
  gap: 72px !important;
  align-items: center !important;
}

.pcg-available-hero-copy {
  position: relative !important;
  padding-top: 42px !important;
}

.pcg-available-hero-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 132px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent) !important;
  box-shadow: 0 0 34px rgba(111,144,183,0.42) !important;
}

.pcg-available-eyebrow {
  color: #a9d4ff !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 20px !important;
}

.pcg-available-hero-title {
  color: #ffffff !important;
  font-size: clamp(54px, 6.4vw, 104px) !important;
  line-height: 0.9 !important;
  letter-spacing: -0.08em !important;
  font-weight: 950 !important;
  max-width: 900px !important;
  margin-bottom: 30px !important;
  text-shadow: 0 24px 80px rgba(0,0,0,0.62) !important;
}

.pcg-available-hero-text {
  color: rgba(255,255,255,0.78) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 650 !important;
  max-width: 760px !important;
  margin-bottom: 38px !important;
}

.pcg-available-hero-panel {
  position: relative !important;
  overflow: hidden !important;
  padding: 48px !important;
  border-radius: 38px !important;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.25), transparent 40%), linear-gradient(135deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035)) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  box-shadow: 0 44px 130px rgba(0,0,0,0.40), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.pcg-available-panel-eyebrow {
  color: #c7a56b !important;
}

.pcg-available-panel-title {
  color: #ffffff !important;
}

.pcg-available-panel-text, .pcg-available-panel-item {
  color: rgba(255,255,255,0.78) !important;
}

@media (max-width: 991px) {
  .pcg-available-hero-shell {
    grid-template-columns: 1fr !important;
    gap: 58px !important;
  }
}

@media (max-width: 767px) {
  .pcg-available-hero {
    padding: 110px 0 95px !important;
  }
}

@media (max-width: 767px) {
  .pcg-available-hero-panel {
    padding: 34px 26px !important;
    border-radius: 28px !important;
  }
}

@media (max-width: 767px) {
  .pcg-available-btn {
    width: 100% !important;
  }
}

/* ===== AVAILABLE CONSULTANTS — BUTTON FORCE FIX ===== */

.pcg-available-hero .pcg-available-btn, .pcg-available-hero a.pcg-available-btn, .pcg-available-hero .btn.pcg-available-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 190px !important;
  height: 50px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  font-size: 13.5px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.pcg-available-hero .pcg-available-btn-primary, .pcg-available-hero a.pcg-available-btn-primary, .pcg-available-hero .btn.pcg-available-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #8fb8df) !important;
  border: 1px solid rgba(255,255,255,0.62) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.34), 0 0 42px rgba(143,184,223,0.22) !important;
}

.pcg-available-hero .pcg-available-btn-secondary, .pcg-available-hero a.pcg-available-btn-secondary, .pcg-available-hero .btn.pcg-available-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.30) !important;
  box-shadow: 0 18px 46px rgba(0,0,0,0.20), inset 0 1px 0 rgba(255,255,255,0.09) !important;
}

.pcg-available-hero .pcg-available-btn:hover, .pcg-available-hero a.pcg-available-btn:hover, .pcg-available-hero .btn.pcg-available-btn:hover {
  transform: translateY(-3px) !important;
  text-decoration: none !important;
}

.pcg-available-hero .pcg-available-btn-primary:hover, .pcg-available-hero a.pcg-available-btn-primary:hover, .pcg-available-hero .btn.pcg-available-btn-primary:hover {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #a9d4ff) !important;
  border-color: rgba(255,255,255,0.78) !important;
}

.pcg-available-hero .pcg-available-btn-secondary:hover, .pcg-available-hero a.pcg-available-btn-secondary:hover, .pcg-available-hero .btn.pcg-available-btn-secondary:hover {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #8fb8df) !important;
  border-color: rgba(255,255,255,0.60) !important;
}

@media (max-width: 767px) {
  .pcg-available-hero .pcg-available-btn {
    width: 100% !important;
  }
}

/* ===== AVAILABLE CONSULTANTS — READABILITY FINAL FIX ===== */

/* Roster intro text on light/champagne background */

.pcg-available-roster-premium .pcg-available-section-eyebrow, .pcg-available-roster-premium .pcg-available-section-title, .pcg-available-roster-premium .pcg-available-section-text {
  opacity: 1 !important;
}

.pcg-available-roster-premium .pcg-available-section-eyebrow {
  color: #6f90b7 !important;
}

.pcg-available-roster-premium .pcg-available-section-title {
  color: #071427 !important;
}

.pcg-available-roster-premium .pcg-available-section-text {
  color: #243447 !important;
  font-weight: 700 !important;
}

/* Regular light consultant cards */

.pcg-available-premium-card:not(.pcg-available-feature-card) .pcg-available-card-name, .pcg-available-premium-card:not(.pcg-available-feature-card) .pcg-available-card-role, .pcg-available-premium-card:not(.pcg-available-feature-card) .pcg-available-card-detail {
  opacity: 1 !important;
}

.pcg-available-premium-card:not(.pcg-available-feature-card) .pcg-available-card-name {
  color: #071427 !important;
}

.pcg-available-premium-card:not(.pcg-available-feature-card) .pcg-available-card-role {
  color: #16263a !important;
  font-weight: 850 !important;
}

.pcg-available-premium-card:not(.pcg-available-feature-card) .pcg-available-card-detail {
  color: #2f4054 !important;
  font-weight: 700 !important;
}

/* Donna featured dark card: keep white, but make it stronger */

.pcg-available-feature-card .pcg-available-card-name {
  color: #ffffff !important;
  opacity: 1 !important;
}

.pcg-available-feature-card .pcg-available-card-role {
  color: rgba(255,255,255,0.92) !important;
  opacity: 1 !important;
}

.pcg-available-feature-card .pcg-available-card-detail {
  color: rgba(255,255,255,0.82) !important;
  opacity: 1 !important;
  font-weight: 700 !important;
}

/* ===== BEAUTY IS THE BEAST — HERO ===== */

.pcg-beauty-section {
  position: relative;
}

.pcg-beauty-container {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-beauty-hero {
  min-height: calc(100vh - 70px);
  padding: 145px 0 140px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: radial-gradient(circle at 18% 24%, rgba(111,144,183,0.24), transparent 31%), radial-gradient(circle at 84% 78%, rgba(199,165,107,0.12), transparent 34%), linear-gradient(135deg, #010711 0%, #062033 48%, #020814 100%);
}

.pcg-beauty-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.13;
  pointer-events: none;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-beauty-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.36;
  background: radial-gradient(circle at 70% 20%, rgba(111,144,183,0.18), transparent 30%), linear-gradient(180deg, rgba(2,8,20,0.06), rgba(2,8,20,0.52));
}

.pcg-beauty-hero-shell {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 84px;
  align-items: center;
}

.pcg-beauty-hero-copy {
  position: relative;
  padding-top: 42px;
}

.pcg-beauty-hero-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
  box-shadow: 0 0 28px rgba(111,144,183,0.42);
}

.pcg-beauty-eyebrow {
  color: #8fb8df;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-beauty-hero-title {
  color: #ffffff;
  font-size: clamp(52px, 6.3vw, 104px);
  line-height: 0.9;
  font-weight: 950;
  letter-spacing: -0.08em;
  max-width: 860px;
  margin-bottom: 30px;
  text-shadow: 0 26px 72px rgba(0,0,0,0.58);
}

.pcg-beauty-hero-text {
  color: rgba(255,255,255,0.76);
  font-size: 20px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 720px;
  margin-bottom: 38px;
}

.pcg-beauty-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

.pcg-beauty-hero-actions .pcg-visual-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 170px;
  height: 48px;
  padding: 0 20px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
}

.pcg-beauty-hero-actions .pcg-visual-btn-primary {
  color: #071427;
  background: linear-gradient(135deg, #8fb8df, #f4efe7);
  border: 1px solid rgba(244,239,231,0.42);
  box-shadow: 0 18px 46px rgba(111,144,183,0.30), 0 0 42px rgba(111,144,183,0.16);
}

.pcg-beauty-hero-actions .pcg-visual-btn-secondary {
  color: #ffffff;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.28);
}

.pcg-beauty-hero-actions .pcg-visual-btn:hover {
  transform: translateY(-3px);
}

.pcg-beauty-hero-poster {
  overflow: hidden;
  padding: 18px;
  border-radius: 40px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.26), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.15);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 44px 130px rgba(0,0,0,0.44), 0 0 88px rgba(111,144,183,0.16), inset 0 1px 0 rgba(255,255,255,0.08);
}

.pcg-beauty-poster-img {
  display: block;
  width: 100%;
  height: 520px;
  object-fit: cover;
  object-position: center center;
  border-radius: 30px;
  filter: contrast(1.08) saturate(1.08) brightness(0.92);
}

.pcg-beauty-poster-caption {
  margin-top: 14px;
  padding: 22px 24px;
  border-radius: 24px;
  background: radial-gradient(circle at top left, rgba(111,144,183,0.20), transparent 42%), linear-gradient(135deg, rgba(2,8,20,0.94), rgba(6,32,51,0.80));
  border: 1px solid rgba(255,255,255,0.16);
}

.pcg-beauty-poster-kicker {
  color: #8fb8df;
  font-size: 10.5px;
  letter-spacing: 2.7px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.pcg-beauty-poster-title {
  color: #ffffff;
  font-size: clamp(28px, 2.8vw, 42px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.05em;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-beauty-hero {
    min-height: auto;
    padding: 120px 0 110px;
  }
}

@media (max-width: 991px) {
  .pcg-beauty-hero-shell {
    grid-template-columns: 1fr;
    gap: 64px;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero {
    padding: 105px 0 95px;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-title {
    font-size: clamp(46px, 14vw, 68px);
    line-height: 0.96;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-poster-img {
    height: 380px;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-actions .pcg-visual-btn {
    width: 100%;
  }
}

/* ===== BEAUTY HERO — TEXT READABILITY WITHOUT HIDING IMAGE ===== */

/* Stronger left-side veil, but transparent enough to preserve the image */

.pcg-beauty-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient( 90deg, rgba(1,7,17,0.92) 0%, rgba(1,7,17,0.78) 23%, rgba(6,32,51,0.46) 43%, rgba(1,7,17,0.12) 68%, rgba(1,7,17,0.04) 100% ), linear-gradient( 180deg, rgba(1,7,17,0.18) 0%, rgba(1,7,17,0.10) 48%, rgba(1,7,17,0.48) 100% ) !important;
}

/* Make sure content sits above veil */

.pcg-beauty-hero .pcg-beauty-container {
  position: relative !important;
  z-index: 5 !important;
}

/* Remove heavy glass-box feeling; let it feel like text printed over film */

.pcg-beauty-hero-copy {
  max-width: 720px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

/* Move accent line cleanly above text */

.pcg-beauty-hero-copy::before {
  top: -34px !important;
  left: 0 !important;
  width: 132px !important;
  height: 3px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
  box-shadow: 0 0 32px rgba(143,184,223,0.44) !important;
}

/* Eyebrow needs contrast */

.pcg-beauty-eyebrow {
  color: #a9d4ff !important;
  padding-top: 0 !important;
  font-size: 12px !important;
  letter-spacing: 3.4px !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.78), 0 0 24px rgba(143,184,223,0.24) !important;
}

/* Hero title: readable but still elegant */

.pcg-beauty-hero-title {
  color: #ffffff !important;
  max-width: 680px !important;
  font-size: clamp(58px, 6.8vw, 112px) !important;
  line-height: 0.88 !important;
  letter-spacing: -0.085em !important;
  text-shadow: 0 4px 24px rgba(0,0,0,0.82), 0 18px 70px rgba(0,0,0,0.72), 0 0 34px rgba(1,7,17,0.56) !important;
}

/* Paragraph gets a subtle readable lane */

.pcg-beauty-hero-text {
  color: rgba(255,255,255,0.88) !important;
  max-width: 620px !important;
  font-size: 19px !important;
  line-height: 1.72 !important;
  font-weight: 650 !important;
  text-shadow: 0 2px 14px rgba(0,0,0,0.80), 0 0 28px rgba(1,7,17,0.58) !important;
}

/* Better film-page buttons */

.pcg-beauty-hero-actions {
  gap: 14px !important;
  margin-top: 34px !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn {
  min-width: 158px !important;
  height: 48px !important;
  border-radius: 999px !important;
  font-size: 13.5px !important;
  font-weight: 900 !important;
  letter-spacing: 0.01em !important;
  text-decoration: none !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #d9ecff, #8fb8df) !important;
  border: 1px solid rgba(217,236,255,0.58) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.34), 0 0 42px rgba(143,184,223,0.22) !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: rgba(1,7,17,0.22) !important;
  border: 1px solid rgba(255,255,255,0.34) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn-secondary:hover {
  background: rgba(143,184,223,0.18) !important;
  border-color: rgba(143,184,223,0.58) !important;
}

/* Mobile: add a little more veil so text stays readable */

@media (max-width: 575px) {
  .pcg-beauty-hero::after {
    background: linear-gradient( 90deg, rgba(1,7,17,0.94) 0%, rgba(1,7,17,0.82) 55%, rgba(1,7,17,0.32) 100% ), linear-gradient( 180deg, rgba(1,7,17,0.20) 0%, rgba(1,7,17,0.26) 50%, rgba(1,7,17,0.64) 100% ) !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-copy {
    max-width: 100% !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-title {
    max-width: 100% !important;
    font-size: clamp(46px, 14vw, 68px) !important;
    line-height: 0.96 !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-text {
    font-size: 17px !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

/* ===== BEAUTY HERO — FINAL READABILITY VEIL ===== */

/* Make left side darker without ruining the fish image */

.pcg-beauty-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient( 90deg, rgba(1,7,17,0.98) 0%, rgba(1,7,17,0.94) 18%, rgba(1,7,17,0.82) 33%, rgba(6,32,51,0.48) 50%, rgba(1,7,17,0.16) 72%, rgba(1,7,17,0.04) 100% ), radial-gradient( circle at 28% 48%, rgba(1,7,17,0.74) 0%, rgba(1,7,17,0.52) 28%, rgba(1,7,17,0.18) 48%, transparent 68% ), linear-gradient( 180deg, rgba(1,7,17,0.12) 0%, rgba(1,7,17,0.18) 55%, rgba(1,7,17,0.58) 100% ) !important;
}

/* Move copy farther left so it sits in the darker water, not over the fish body */

.pcg-beauty-hero-shell {
  max-width: 660px !important;
  margin-left: 0 !important;
}

/* Give text an elegant invisible readability lane */

.pcg-beauty-hero-copy {
  max-width: 600px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Smaller, sharper title so it doesn't cover too much fish */

.pcg-beauty-hero-title {
  max-width: 560px !important;
  font-size: clamp(48px, 5.6vw, 88px) !important;
  line-height: 0.9 !important;
  letter-spacing: -0.08em !important;
  text-shadow: 0 3px 18px rgba(0,0,0,0.95), 0 12px 50px rgba(0,0,0,0.90), 0 0 34px rgba(1,7,17,0.82) !important;
}

/* Make paragraph more readable */

.pcg-beauty-hero-text {
  max-width: 500px !important;
  color: rgba(255,255,255,0.94) !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
  font-weight: 700 !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.95), 0 8px 32px rgba(0,0,0,0.86) !important;
}

/* Eyebrow brighter but still elegant */

.pcg-beauty-eyebrow {
  color: #d9ecff !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.95), 0 0 22px rgba(143,184,223,0.34) !important;
}

/* Buttons need more contrast */

.pcg-beauty-hero-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #8fb8df) !important;
  border: 1px solid rgba(255,255,255,0.62) !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: rgba(1,7,17,0.58) !important;
  border: 1px solid rgba(255,255,255,0.48) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

/* Mobile: stronger overlay */

@media (max-width: 575px) {
  .pcg-beauty-hero::after {
    background: linear-gradient( 90deg, rgba(1,7,17,0.98) 0%, rgba(1,7,17,0.90) 62%, rgba(1,7,17,0.36) 100% ), linear-gradient( 180deg, rgba(1,7,17,0.20) 0%, rgba(1,7,17,0.32) 50%, rgba(1,7,17,0.72) 100% ) !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-title {
    max-width: 100% !important;
    font-size: clamp(44px, 13vw, 64px) !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-text {
    max-width: 100% !important;
  }
}

/* ===== BEAUTY HERO — CINEMATIC SPLIT POSTER VERSION ===== */

.pcg-beauty-hero {
  min-height: calc(100vh - 70px) !important;
  padding: 0 !important;
  display: flex !important;
  align-items: stretch !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 24%, rgba(111,144,183,0.22), transparent 30%), linear-gradient(135deg, #010711 0%, #062033 48%, #020814 100%) !important;
}

/* Kill previous full-background overlay behavior */

.pcg-beauty-hero::after {
  display: none !important;
}

.pcg-beauty-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  opacity: 0.10 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.pcg-beauty-container {
  max-width: none !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
  z-index: 3 !important;
}

.pcg-beauty-hero-shell {
  display: grid !important;
  grid-template-columns: 0.92fr 1.08fr !important;
  min-height: calc(100vh - 70px) !important;
  width: 100% !important;
  max-width: none !important;
  gap: 0 !important;
  align-items: stretch !important;
}

/* LEFT: dramatic title panel */

.pcg-beauty-hero-copy {
  position: relative !important;
  z-index: 4 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 96px 74px 92px 92px !important;
  background: radial-gradient(circle at 20% 22%, rgba(111,144,183,0.18), transparent 34%), radial-gradient(circle at 90% 80%, rgba(199,165,107,0.11), transparent 34%), linear-gradient(135deg, rgba(1,7,17,0.98), rgba(6,32,51,0.94)) !important;
  border-right: 1px solid rgba(255,255,255,0.12) !important;
  box-shadow: 40px 0 90px rgba(1,7,17,0.52), inset 0 1px 0 rgba(255,255,255,0.08) !important;
  max-width: none !important;
  border-radius: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.pcg-beauty-hero-copy::before {
  content: "" !important;
  position: relative !important;
  display: block !important;
  top: auto !important;
  left: auto !important;
  width: 132px !important;
  height: 3px !important;
  border-radius: 999px !important;
  margin-bottom: 34px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
  box-shadow: 0 0 32px rgba(143,184,223,0.44) !important;
}

.pcg-beauty-eyebrow {
  color: #a9d4ff !important;
  padding-top: 0 !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 22px !important;
}

.pcg-beauty-hero-title {
  color: #ffffff !important;
  font-size: clamp(64px, 7.4vw, 128px) !important;
  line-height: 0.84 !important;
  letter-spacing: -0.09em !important;
  font-weight: 950 !important;
  max-width: 820px !important;
  margin-bottom: 34px !important;
  text-shadow: 0 8px 34px rgba(0,0,0,0.72), 0 26px 90px rgba(0,0,0,0.68) !important;
}

.pcg-beauty-hero-text {
  color: rgba(255,255,255,0.84) !important;
  max-width: 640px !important;
  font-size: 20px !important;
  line-height: 1.72 !important;
  font-weight: 650 !important;
  margin-bottom: 40px !important;
}

/* Buttons */

.pcg-beauty-hero-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 0 !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 166px !important;
  height: 50px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  font-size: 13.5px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #8fb8df) !important;
  border: 1px solid rgba(255,255,255,0.62) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.34), 0 0 42px rgba(143,184,223,0.22) !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.30) !important;
}

.pcg-beauty-hero-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

/* RIGHT: the lionfish gets to be the star */

.pcg-beauty-hero-image-panel {
  position: relative !important;
  overflow: hidden !important;
  min-height: calc(100vh - 70px) !important;
  background: #020814 !important;
}

.pcg-beauty-hero-image-panel::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, rgba(1,7,17,0.34), rgba(1,7,17,0.02) 34%, rgba(1,7,17,0.10) 100%), linear-gradient(180deg, rgba(1,7,17,0.10), rgba(1,7,17,0.46)) !important;
}

.pcg-beauty-hero-main-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: calc(100vh - 70px) !important;
  object-fit: cover !important;
  object-position: center center !important;
  filter: contrast(1.08) saturate(1.10) brightness(0.92) !important;
  transform: scale(1.01) !important;
  transition: transform 1.2s ease, filter 1.2s ease !important;
}

.pcg-beauty-hero-image-panel:hover .pcg-beauty-hero-main-img {
  transform: scale(1.035) !important;
  filter: contrast(1.12) saturate(1.16) brightness(0.98) !important;
}

/* Small cinematic label over image */

.pcg-beauty-hero-image-panel::after {
  content: "OCEAN CONSERVATION FILM" !important;
  position: absolute !important;
  right: 34px !important;
  bottom: 34px !important;
  z-index: 4 !important;
  color: rgba(255,255,255,0.82) !important;
  font-size: 11px !important;
  letter-spacing: 3px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  padding: 12px 16px !important;
  border-radius: 999px !important;
  background: rgba(1,7,17,0.42) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

/* Tablet */

@media (max-width: 991px) {
  .pcg-beauty-hero-shell {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 991px) {
  .pcg-beauty-hero-copy {
    padding: 110px 42px 70px !important;
  }
}

@media (max-width: 991px) {
  .pcg-beauty-hero-image-panel, .pcg-beauty-hero-main-img {
    min-height: 560px !important;
  }
}

/* Phone */

@media (max-width: 575px) {
  .pcg-beauty-hero-copy {
    padding: 92px 24px 58px !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-title {
    font-size: clamp(50px, 15vw, 76px) !important;
    line-height: 0.9 !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-text {
    font-size: 17px !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-image-panel, .pcg-beauty-hero-main-img {
    min-height: 420px !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-image-panel::after {
    left: 20px !important;
    right: auto !important;
    bottom: 22px !important;
  }
}

/* ===== BEAUTY HERO — RESPONSIVE FISH VISIBILITY FIX ===== */

/* Give the image more room on normal laptop screens */

.pcg-beauty-hero-shell {
  grid-template-columns: 0.78fr 1.22fr !important;
}

/* Make the left title panel slightly narrower so the fish has space */

.pcg-beauty-hero-copy {
  padding-left: 76px !important;
  padding-right: 56px !important;
}

/* Default desktop: show the fish more completely */

.pcg-beauty-hero-main-img {
  object-fit: contain !important;
  object-position: center center !important;
  background: #020814 !important;
}

/* The image panel itself still feels full and cinematic */

.pcg-beauty-hero-image-panel {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: radial-gradient(circle at center, rgba(111,144,183,0.18), transparent 44%), linear-gradient(135deg, #010711, #020814) !important;
}

/* Hide any awkward empty space by keeping the overlay */

.pcg-beauty-hero-image-panel::before {
  background: linear-gradient(90deg, rgba(1,7,17,0.28), rgba(1,7,17,0.02) 36%, rgba(1,7,17,0.10) 100%), linear-gradient(180deg, rgba(1,7,17,0.10), rgba(1,7,17,0.38)) !important;
}

/* Medium laptop sizes: protect the full fish even more */

@media (max-width: 1399px) {
  .pcg-beauty-hero-shell {
    grid-template-columns: 0.82fr 1.18fr !important;
  }
}

@media (max-width: 1399px) {
  .pcg-beauty-hero-copy {
    padding-left: 64px !important;
    padding-right: 46px !important;
  }
}

@media (max-width: 1399px) {
  .pcg-beauty-hero-title {
    font-size: clamp(58px, 6.4vw, 104px) !important;
  }
}

@media (max-width: 1399px) {
  .pcg-beauty-hero-main-img {
    object-fit: contain !important;
    object-position: center center !important;
  }
}

/* Smaller laptop/tablet: stack the title and image so neither gets crushed */

@media (max-width: 991px) {
  .pcg-beauty-hero-shell {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
  }
}

@media (max-width: 991px) {
  .pcg-beauty-hero-copy {
    padding: 110px 42px 70px !important;
  }
}

@media (max-width: 991px) {
  .pcg-beauty-hero-image-panel {
    min-height: auto !important;
    height: auto !important;
    padding: 26px !important;
  }
}

@media (max-width: 991px) {
  .pcg-beauty-hero-main-img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    object-fit: contain !important;
    border-radius: 28px !important;
  }
}

/* Phone */

@media (max-width: 575px) {
  .pcg-beauty-hero-copy {
    padding: 92px 24px 58px !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-title {
    font-size: clamp(48px, 14vw, 72px) !important;
    line-height: 0.9 !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-text {
    font-size: 17px !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-image-panel {
    padding: 18px !important;
  }
}

@media (max-width: 575px) {
  .pcg-beauty-hero-main-img {
    border-radius: 22px !important;
  }
}

/* ===== BEAUTY HERO — FORCE BACKGROUND IMAGE BACK ON ===== */

.pcg-beauty-hero {
  background: linear-gradient( 90deg, rgba(1,7,17,0.96) 0%, rgba(1,7,17,0.90) 18%, rgba(1,7,17,0.72) 34%, rgba(1,7,17,0.28) 53%, rgba(1,7,17,0.08) 73%, rgba(1,7,17,0.16) 100% ), radial-gradient( circle at 22% 48%, rgba(1,7,17,0.82) 0%, rgba(1,7,17,0.58) 28%, rgba(1,7,17,0.22) 52%, transparent 70% ), url("../../assets/img/LF%20FINAL.png") center center / cover no-repeat !important;
}

/* ===== BEAUTY HERO — FORCE BACKGROUND IMAGE BACK ON / ENCODED SPACE ===== */

.pcg-beauty-hero {
  background: linear-gradient( 90deg, rgba(1,7,17,0.96) 0%, rgba(1,7,17,0.90) 18%, rgba(1,7,17,0.72) 34%, rgba(1,7,17,0.28) 53%, rgba(1,7,17,0.08) 73%, rgba(1,7,17,0.16) 100% ), radial-gradient( circle at 22% 48%, rgba(1,7,17,0.82) 0%, rgba(1,7,17,0.58) 28%, rgba(1,7,17,0.22) 52%, transparent 70% ), url("../../assets/img/LF%20FINAL.png") center center / cover no-repeat !important;
}

/* ===== BEAUTY IS THE BEAST — CLEAN OCEAN HERO V2 ===== */

.beauty-ocean-hero {
  position: relative !important;
  min-height: calc(100vh - 70px) !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #010711 !important;
}

/* Dark cinematic veil over image */

.beauty-ocean-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient( 90deg, rgba(1,7,17,0.96) 0%, rgba(1,7,17,0.88) 20%, rgba(1,7,17,0.60) 42%, rgba(1,7,17,0.18) 68%, rgba(1,7,17,0.10) 100% ), radial-gradient( circle at 24% 48%, rgba(1,7,17,0.82) 0%, rgba(1,7,17,0.56) 30%, rgba(1,7,17,0.18) 56%, transparent 72% ), linear-gradient( 180deg, rgba(1,7,17,0.08) 0%, rgba(1,7,17,0.10) 48%, rgba(1,7,17,0.62) 100% ) !important;
}

/* Subtle texture */

.beauty-ocean-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  opacity: 0.08 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.beauty-ocean-container {
  position: relative !important;
  z-index: 5 !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.beauty-ocean-copy-card {
  max-width: 680px !important;
  padding: 54px 56px 52px !important;
  border-radius: 34px !important;
  background: radial-gradient(circle at top left, rgba(143,184,223,0.18), transparent 42%), linear-gradient(135deg, rgba(1,7,17,0.88), rgba(6,32,51,0.70)) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  box-shadow: 0 44px 130px rgba(0,0,0,0.52), 0 0 80px rgba(111,144,183,0.16), inset 0 1px 0 rgba(255,255,255,0.10) !important;
}

.beauty-ocean-copy-card::before {
  content: "" !important;
  display: block !important;
  width: 132px !important;
  height: 3px !important;
  border-radius: 999px !important;
  margin-bottom: 28px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
  box-shadow: 0 0 34px rgba(143,184,223,0.48) !important;
}

.beauty-ocean-eyebrow {
  color: #d9ecff !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 20px !important;
}

.beauty-ocean-title {
  color: #ffffff !important;
  font-size: clamp(54px, 6.2vw, 96px) !important;
  line-height: 0.86 !important;
  letter-spacing: -0.085em !important;
  font-weight: 950 !important;
  max-width: 620px !important;
  margin-bottom: 28px !important;
  text-shadow: 0 4px 24px rgba(0,0,0,0.82), 0 18px 70px rgba(0,0,0,0.74) !important;
}

.beauty-ocean-text {
  color: rgba(255,255,255,0.90) !important;
  max-width: 560px !important;
  font-size: 18.5px !important;
  line-height: 1.72 !important;
  font-weight: 700 !important;
  margin-bottom: 34px !important;
}

.beauty-ocean-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.beauty-ocean-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 162px !important;
  height: 50px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  font-size: 13.5px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.beauty-ocean-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #8fb8df) !important;
  border: 1px solid rgba(255,255,255,0.62) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.34), 0 0 42px rgba(143,184,223,0.22) !important;
}

.beauty-ocean-btn-secondary {
  color: #ffffff !important;
  background: rgba(1,7,17,0.44) !important;
  border: 1px solid rgba(255,255,255,0.40) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.beauty-ocean-btn:hover {
  transform: translateY(-3px) !important;
  text-decoration: none !important;
}

@media (max-width: 1399px) {
  .beauty-ocean-hero {
    background-position: 58% center !important;
  }
}

@media (max-width: 1399px) {
  .beauty-ocean-copy-card {
    max-width: 620px !important;
    padding: 46px 48px !important;
  }
}

@media (max-width: 1399px) {
  .beauty-ocean-title {
    font-size: clamp(50px, 5.7vw, 86px) !important;
  }
}

@media (max-width: 991px) {
  .beauty-ocean-hero {
    min-height: auto !important;
    padding: 115px 0 100px !important;
    background-position: center center !important;
  }
}

@media (max-width: 991px) {
  .beauty-ocean-copy-card {
    max-width: 100% !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-hero {
    padding: 100px 0 88px !important;
    background-position: center center !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-container {
    padding: 0 18px !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-copy-card {
    padding: 38px 24px 34px !important;
    border-radius: 26px !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-title {
    font-size: clamp(44px, 13vw, 66px) !important;
    line-height: 0.92 !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-text {
    font-size: 16.5px !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-btn {
    width: 100% !important;
  }
}

/* ===== BEAUTY HERO — NO CARD / MOVIE POSTER TEXT TREATMENT ===== */

/* Keep the full image and build a stronger cinematic fade behind the left side */

.beauty-ocean-hero {
  position: relative !important;
  min-height: calc(100vh - 70px) !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #010711 !important;
}

/* This is the readability layer — no box, just a film fade */

.beauty-ocean-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient( 90deg, rgba(1,7,17,0.98) 0%, rgba(1,7,17,0.92) 19%, rgba(1,7,17,0.72) 36%, rgba(1,7,17,0.34) 53%, rgba(1,7,17,0.08) 72%, rgba(1,7,17,0.04) 100% ), radial-gradient( ellipse at 28% 52%, rgba(1,7,17,0.86) 0%, rgba(1,7,17,0.70) 22%, rgba(1,7,17,0.36) 46%, transparent 70% ), linear-gradient( 180deg, rgba(1,7,17,0.05) 0%, rgba(1,7,17,0.10) 48%, rgba(1,7,17,0.60) 100% ) !important;
}

/* Subtle texture, very light */

.beauty-ocean-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  opacity: 0.045 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.beauty-ocean-container {
  position: relative !important;
  z-index: 5 !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

/* Remove the card completely */

.beauty-ocean-copy-card {
  max-width: 640px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
}

/* Thin cinematic accent line */

.beauty-ocean-copy-card::before {
  content: "" !important;
  display: block !important;
  width: 138px !important;
  height: 3px !important;
  border-radius: 999px !important;
  margin-bottom: 32px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(143,184,223,0.50), 0 0 56px rgba(1,7,17,0.70) !important;
}

/* Small title label */

.beauty-ocean-eyebrow {
  color: #d9ecff !important;
  font-size: 12px !important;
  letter-spacing: 4.5px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 24px !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.95), 0 0 22px rgba(143,184,223,0.36) !important;
}

/* Make the title the jaw-drop element */

.beauty-ocean-title {
  color: #ffffff !important;
  font-size: clamp(72px, 8.4vw, 145px) !important;
  line-height: 0.78 !important;
  letter-spacing: -0.095em !important;
  font-weight: 950 !important;
  max-width: 720px !important;
  margin-bottom: 34px !important;
  text-shadow: 0 4px 18px rgba(0,0,0,1), 0 16px 58px rgba(0,0,0,0.96), 0 0 90px rgba(1,7,17,0.90) !important;
}

/* Paragraph becomes clear but not blocky */

.beauty-ocean-text {
  color: rgba(255,255,255,0.93) !important;
  max-width: 560px !important;
  font-size: 19px !important;
  line-height: 1.7 !important;
  font-weight: 750 !important;
  margin-bottom: 36px !important;
  text-shadow: 0 3px 14px rgba(0,0,0,1), 0 10px 38px rgba(0,0,0,0.92) !important;
}

/* Buttons: more like film UI, not website buttons */

.beauty-ocean-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.beauty-ocean-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 162px !important;
  height: 50px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  font-size: 13.5px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.beauty-ocean-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #9ed0ff) !important;
  border: 1px solid rgba(255,255,255,0.72) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.34), 0 0 42px rgba(143,184,223,0.26) !important;
}

.beauty-ocean-btn-secondary {
  color: #ffffff !important;
  background: rgba(1,7,17,0.50) !important;
  border: 1px solid rgba(255,255,255,0.42) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,0.34) !important;
}

.beauty-ocean-btn:hover {
  transform: translateY(-3px) !important;
  text-decoration: none !important;
}

/* Laptop: keep title from swallowing the whole hero */

@media (max-width: 1399px) {
  .beauty-ocean-hero {
    background-position: 56% center !important;
  }
}

@media (max-width: 1399px) {
  .beauty-ocean-title {
    font-size: clamp(64px, 7.3vw, 112px) !important;
    max-width: 620px !important;
  }
}

@media (max-width: 1399px) {
  .beauty-ocean-text {
    max-width: 520px !important;
  }
}

/* Tablet */

@media (max-width: 991px) {
  .beauty-ocean-hero {
    min-height: auto !important;
    padding: 120px 0 105px !important;
    background-position: center center !important;
  }
}

@media (max-width: 991px) {
  .beauty-ocean-copy-card {
    max-width: 100% !important;
  }
}

@media (max-width: 991px) {
  .beauty-ocean-title {
    max-width: 100% !important;
  }
}

/* Phone */

@media (max-width: 575px) {
  .beauty-ocean-hero {
    padding: 105px 0 92px !important;
    background-position: center center !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-container {
    padding: 0 20px !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-title {
    font-size: clamp(54px, 16vw, 84px) !important;
    line-height: 0.84 !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-text {
    font-size: 16.5px !important;
    line-height: 1.62 !important;
  }
}

@media (max-width: 575px) {
  .beauty-ocean-btn {
    width: 100% !important;
  }
}

/* ===== BEAUTY IS THE BEAST — FEATURED FILM SECTION ===== */

.beauty-film-section {
  position: relative !important;
  padding: 155px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 16% 24%, rgba(111,144,183,0.18), transparent 32%), radial-gradient(circle at 84% 74%, rgba(199,165,107,0.12), transparent 34%), linear-gradient(180deg, #010711 0%, #062033 52%, #020814 100%) !important;
}

.beauty-film-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.08 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.beauty-film-container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1180px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.beauty-film-shell {
  display: grid !important;
  grid-template-columns: 0.78fr 1.22fr !important;
  gap: 58px !important;
  align-items: center !important;
}

.beauty-film-copy {
  position: relative !important;
  padding-top: 42px !important;
}

.beauty-film-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 132px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
  box-shadow: 0 0 34px rgba(143,184,223,0.42) !important;
}

.beauty-film-eyebrow {
  color: #a9d4ff !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 20px !important;
}

.beauty-film-title {
  color: #ffffff !important;
  font-size: clamp(42px, 5.2vw, 78px) !important;
  line-height: 0.94 !important;
  letter-spacing: -0.07em !important;
  font-weight: 950 !important;
  margin-bottom: 24px !important;
}

.beauty-film-text {
  color: rgba(255,255,255,0.78) !important;
  font-size: 18px !important;
  line-height: 1.75 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

.beauty-film-frame {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 38px !important;
  background: #020814 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  box-shadow: 0 52px 150px rgba(0,0,0,0.52), 0 0 90px rgba(111,144,183,0.18) !important;
}

.beauty-film-frame::before {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 2 !important;
  pointer-events: none !important;
  border-radius: 38px !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08) !important;
}

.beauty-film-frame iframe, .beauty-film-frame video, .beauty-film-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  border: 0 !important;
  background: #020814 !important;
}

@media (max-width: 991px) {
  .beauty-film-shell {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }
}

@media (max-width: 575px) {
  .beauty-film-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .beauty-film-frame {
    border-radius: 26px !important;
  }
}

/* ===== BEAUTY IS THE BEAST — FEATURED FILM SECTION ===== */

.beauty-film-section {
  position: relative !important;
  padding: 155px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 16% 24%, rgba(111,144,183,0.18), transparent 32%), radial-gradient(circle at 84% 74%, rgba(199,165,107,0.12), transparent 34%), linear-gradient(180deg, #010711 0%, #062033 52%, #020814 100%) !important;
}

.beauty-film-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.08 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.beauty-film-container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1180px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.beauty-film-shell {
  display: grid !important;
  grid-template-columns: 0.78fr 1.22fr !important;
  gap: 58px !important;
  align-items: center !important;
}

.beauty-film-copy {
  position: relative !important;
  padding-top: 42px !important;
}

.beauty-film-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 132px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
  box-shadow: 0 0 34px rgba(143,184,223,0.42) !important;
}

.beauty-film-eyebrow {
  color: #a9d4ff !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 20px !important;
}

.beauty-film-title {
  color: #ffffff !important;
  font-size: clamp(42px, 5.2vw, 78px) !important;
  line-height: 0.94 !important;
  letter-spacing: -0.07em !important;
  font-weight: 950 !important;
  margin-bottom: 24px !important;
}

.beauty-film-text {
  color: rgba(255,255,255,0.78) !important;
  font-size: 18px !important;
  line-height: 1.75 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

.beauty-film-frame {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 38px !important;
  background: #020814 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  box-shadow: 0 52px 150px rgba(0,0,0,0.52), 0 0 90px rgba(111,144,183,0.18) !important;
}

.beauty-film-frame::before {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  z-index: 2 !important;
  pointer-events: none !important;
  border-radius: 38px !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08) !important;
}

.beauty-film-frame iframe, .beauty-film-frame video, .beauty-film-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  border: 0 !important;
  background: #020814 !important;
}

@media (max-width: 991px) {
  .beauty-film-shell {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }
}

@media (max-width: 575px) {
  .beauty-film-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .beauty-film-frame {
    border-radius: 26px !important;
  }
}

/* ===== BEAUTY IS THE BEAST — BEAUTY VS BEAST SIGNATURE SECTION ===== */

.beauty-contrast-section {
  position: relative !important;
  padding: 155px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 18%, rgba(199,165,107,0.16), transparent 30%), radial-gradient(circle at 82% 82%, rgba(111,144,183,0.13), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 52%, #f4efe7 100%) !important;
}

.beauty-contrast-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.07 !important;
  background: linear-gradient(rgba(7,20,39,0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(7,20,39,0.028) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.beauty-contrast-container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1180px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.beauty-contrast-eyebrow {
  color: #c7a56b !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 18px !important;
}

.beauty-contrast-title {
  color: #071427 !important;
  font-size: clamp(46px, 5.8vw, 92px) !important;
  line-height: 0.92 !important;
  letter-spacing: -0.075em !important;
  font-weight: 950 !important;
  max-width: 1080px !important;
  margin-bottom: 24px !important;
}

.beauty-contrast-text {
  color: #425466 !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 650 !important;
  max-width: 850px !important;
  margin-bottom: 72px !important;
}

.beauty-contrast-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
}

.beauty-contrast-card {
  position: relative !important;
  overflow: hidden !important;
  min-height: 520px !important;
  padding: 46px !important;
  border-radius: 38px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  border: 1px solid rgba(7,20,39,0.12) !important;
  box-shadow: 0 42px 120px rgba(7,20,39,0.18), inset 0 1px 0 rgba(255,255,255,0.18) !important;
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease !important;
}

.beauty-contrast-card-light {
  background: radial-gradient(circle at top right, rgba(143,184,223,0.34), transparent 40%), radial-gradient(circle at bottom left, rgba(199,165,107,0.18), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,239,231,0.76)) !important;
}

.beauty-contrast-card-dark {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.28), transparent 42%), radial-gradient(circle at bottom left, rgba(199,165,107,0.12), transparent 42%), linear-gradient(135deg, #071427, #020814) !important;
  border-color: rgba(255,255,255,0.13) !important;
  box-shadow: 0 48px 140px rgba(0,0,0,0.38), 0 0 80px rgba(111,144,183,0.14) !important;
}

.beauty-contrast-card:hover {
  transform: translateY(-10px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 58px 155px rgba(7,20,39,0.26), 0 0 80px rgba(199,165,107,0.13) !important;
}

.beauty-contrast-card-kicker {
  color: #c7a56b !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 18px !important;
}

.beauty-contrast-card-title {
  font-size: clamp(36px, 4.2vw, 64px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.065em !important;
  font-weight: 950 !important;
  margin-bottom: 22px !important;
}

.beauty-contrast-card-light .beauty-contrast-card-title {
  color: #071427 !important;
}

.beauty-contrast-card-dark .beauty-contrast-card-title {
  color: #ffffff !important;
}

.beauty-contrast-card-text {
  font-size: 17px !important;
  line-height: 1.72 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

.beauty-contrast-card-light .beauty-contrast-card-text {
  color: #425466 !important;
}

.beauty-contrast-card-dark .beauty-contrast-card-text {
  color: rgba(255,255,255,0.76) !important;
}

@media (max-width: 991px) {
  .beauty-contrast-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 991px) {
  .beauty-contrast-card {
    min-height: 420px !important;
  }
}

@media (max-width: 575px) {
  .beauty-contrast-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .beauty-contrast-card {
    padding: 32px 26px !important;
    min-height: 360px !important;
    border-radius: 28px !important;
  }
}

/* ===== BEAUTY VS BEAST — CARD ALIGNMENT FIX ===== */

.beauty-contrast-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  padding: 46px !important;
}

.beauty-contrast-card-kicker {
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

.beauty-contrast-card-title {
  margin-top: 0 !important;
  margin-bottom: 22px !important;
}

.beauty-contrast-card-text {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Keep both cards visually equal */

.beauty-contrast-card-light, .beauty-contrast-card-dark {
  min-height: 520px !important;
}

/* ===== BEAUTY IS THE BEAST — SELECTED FRAMES ===== */

.beauty-stills-section {
  position: relative !important;
  padding: 155px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.18), transparent 30%), radial-gradient(circle at 82% 76%, rgba(199,165,107,0.12), transparent 34%), linear-gradient(180deg, #010711 0%, #062033 52%, #020814 100%) !important;
}

.beauty-stills-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.075 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.beauty-stills-container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1180px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.beauty-stills-eyebrow {
  color: #a9d4ff !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 18px !important;
}

.beauty-stills-title {
  color: #ffffff !important;
  font-size: clamp(46px, 5.8vw, 92px) !important;
  line-height: 0.92 !important;
  letter-spacing: -0.075em !important;
  font-weight: 950 !important;
  max-width: 1080px !important;
  margin-bottom: 24px !important;
  text-shadow: 0 18px 70px rgba(0,0,0,0.58), 0 0 60px rgba(111,144,183,0.12) !important;
}

.beauty-stills-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 650 !important;
  max-width: 850px !important;
  margin-bottom: 72px !important;
}

.beauty-stills-grid {
  display: grid !important;
  grid-template-columns: 1.25fr 0.75fr 0.75fr !important;
  grid-auto-rows: 245px !important;
  gap: 18px !important;
}

.beauty-still-card {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 30px !important;
  background: #020814 !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 34px 100px rgba(0,0,0,0.34), 0 0 60px rgba(111,144,183,0.08) !important;
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease !important;
}

.beauty-still-large {
  grid-row: span 2 !important;
}

.beauty-still-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: contrast(1.06) saturate(1.08) brightness(0.98) !important;
  transition: transform 0.7s ease, filter 0.7s ease !important;
}

.beauty-still-card:hover {
  transform: translateY(-8px) !important;
  border-color: rgba(143,184,223,0.46) !important;
  box-shadow: 0 48px 130px rgba(0,0,0,0.46), 0 0 80px rgba(143,184,223,0.16) !important;
}

.beauty-still-card:hover .beauty-still-img {
  transform: scale(1.035) !important;
  filter: contrast(1.1) saturate(1.14) brightness(1.04) !important;
}

@media (max-width: 991px) {
  .beauty-stills-grid {
    grid-template-columns: 1fr 1fr !important;
    grid-auto-rows: 240px !important;
  }
}

@media (max-width: 991px) {
  .beauty-still-large {
    grid-column: 1 / -1 !important;
    grid-row: span 2 !important;
  }
}

@media (max-width: 575px) {
  .beauty-stills-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .beauty-stills-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: 230px !important;
  }
}

@media (max-width: 575px) {
  .beauty-still-large {
    grid-column: auto !important;
    grid-row: span 1 !important;
  }
}

@media (max-width: 575px) {
  .beauty-still-card {
    border-radius: 24px !important;
  }
}

/* ===== BEAUTY IS THE BEAST — THE LIONFISH STORY ===== */

.beauty-story-section {
  position: relative !important;
  padding: 155px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 16% 22%, rgba(111,144,183,0.17), transparent 31%), radial-gradient(circle at 82% 76%, rgba(199,165,107,0.13), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 52%, #f4efe7 100%) !important;
}

.beauty-story-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.07 !important;
  background: linear-gradient(rgba(7,20,39,0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(7,20,39,0.028) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.beauty-story-container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1180px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.beauty-story-shell {
  display: grid !important;
  grid-template-columns: 0.92fr 1.08fr !important;
  gap: 72px !important;
  align-items: start !important;
}

.beauty-story-copy {
  position: sticky !important;
  top: 120px !important;
  padding-top: 42px !important;
}

.beauty-story-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 132px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
  box-shadow: 0 0 34px rgba(143,184,223,0.32) !important;
}

.beauty-story-eyebrow {
  color: #c7a56b !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 20px !important;
}

.beauty-story-title {
  color: #071427 !important;
  font-size: clamp(44px, 5.5vw, 86px) !important;
  line-height: 0.94 !important;
  letter-spacing: -0.075em !important;
  font-weight: 950 !important;
  margin-bottom: 26px !important;
}

.beauty-story-text {
  color: #425466 !important;
  font-size: 18.5px !important;
  line-height: 1.75 !important;
  font-weight: 650 !important;
  margin-bottom: 18px !important;
}

.beauty-story-list {
  display: grid !important;
  gap: 18px !important;
}

.beauty-story-row {
  position: relative !important;
  overflow: hidden !important;
  padding: 34px 36px !important;
  border-radius: 30px !important;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.20), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,239,231,0.78)) !important;
  border: 1px solid rgba(7,20,39,0.10) !important;
  box-shadow: 0 28px 90px rgba(7,20,39,0.12), inset 0 1px 0 rgba(255,255,255,0.60) !important;
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease !important;
}

.beauty-story-row::before {
  content: "" !important;
  display: block !important;
  width: 82px !important;
  height: 3px !important;
  border-radius: 999px !important;
  margin-bottom: 24px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
}

.beauty-story-row:hover {
  transform: translateY(-7px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 42px 115px rgba(7,20,39,0.20), 0 0 64px rgba(143,184,223,0.12) !important;
}

.beauty-story-row-title {
  color: #071427 !important;
  font-size: 31px !important;
  line-height: 1.04 !important;
  letter-spacing: -0.05em !important;
  font-weight: 920 !important;
  margin-bottom: 12px !important;
}

.beauty-story-row-text {
  color: #425466 !important;
  font-size: 16px !important;
  line-height: 1.68 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 991px) {
  .beauty-story-shell {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }
}

@media (max-width: 991px) {
  .beauty-story-copy {
    position: relative !important;
    top: auto !important;
  }
}

@media (max-width: 575px) {
  .beauty-story-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .beauty-story-row {
    padding: 28px 24px !important;
    border-radius: 26px !important;
  }
}

@media (max-width: 575px) {
  .beauty-story-row-title {
    font-size: 26px !important;
  }
}

/* ===== BEAUTY IS THE BEAST — FINAL CTA POLISH ===== */

.beauty-final-section {
  position: relative !important;
  padding: 145px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%) !important;
}

.beauty-final-container {
  position: relative !important;
  z-index: 2 !important;
  max-width: 1180px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.beauty-final-card {
  position: relative !important;
  overflow: hidden !important;
  padding: 72px !important;
  border-radius: 38px !important;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.22), transparent 40%), radial-gradient(circle at bottom left, rgba(199,165,107,0.15), transparent 42%), linear-gradient(135deg, #071427, #020814) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 80px rgba(111,144,183,0.16) !important;
}

.beauty-final-card::before {
  content: "" !important;
  display: block !important;
  width: 132px !important;
  height: 3px !important;
  border-radius: 999px !important;
  margin-bottom: 34px !important;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent) !important;
  box-shadow: 0 0 34px rgba(143,184,223,0.44) !important;
}

.beauty-final-eyebrow {
  color: #a9d4ff !important;
  font-size: 12px !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 20px !important;
}

.beauty-final-title {
  color: #ffffff !important;
  font-size: clamp(44px, 5.6vw, 86px) !important;
  line-height: 0.94 !important;
  letter-spacing: -0.075em !important;
  font-weight: 950 !important;
  max-width: 980px !important;
  margin-bottom: 26px !important;
  text-shadow: 0 18px 70px rgba(0,0,0,0.58), 0 0 60px rgba(111,144,183,0.14) !important;
}

.beauty-final-text {
  color: rgba(255,255,255,0.78) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 650 !important;
  max-width: 860px !important;
  margin-bottom: 38px !important;
}

.beauty-final-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.beauty-final-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 178px !important;
  height: 50px !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  font-size: 13.5px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.beauty-final-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #8fb8df) !important;
  border: 1px solid rgba(255,255,255,0.62) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.34), 0 0 42px rgba(143,184,223,0.22) !important;
}

.beauty-final-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.32) !important;
}

.beauty-final-btn:hover {
  transform: translateY(-3px) !important;
  text-decoration: none !important;
}

.beauty-final-btn-secondary:hover {
  background: rgba(143,184,223,0.18) !important;
  border-color: rgba(143,184,223,0.58) !important;
}

@media (max-width: 767px) {
  .beauty-final-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 767px) {
  .beauty-final-card {
    padding: 46px 28px !important;
    border-radius: 28px !important;
  }
}

@media (max-width: 767px) {
  .beauty-final-btn {
    width: 100% !important;
  }
}

/* ===== CASTING PAGE — HERO ===== */

.pcg-casting-section {
  position: relative;
}

.pcg-casting-container {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-casting-hero {
  min-height: calc(100vh - 70px);
  padding: 145px 0 140px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: radial-gradient(circle at 18% 24%, rgba(199,165,107,0.18), transparent 30%), radial-gradient(circle at 82% 78%, rgba(111,144,183,0.18), transparent 34%), linear-gradient(135deg, #020814 0%, #071427 48%, #020814 100%);
}

.pcg-casting-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.14;
  pointer-events: none;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-casting-hero-shell {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 84px;
  align-items: center;
}

.pcg-casting-hero-copy {
  position: relative;
  padding-top: 42px;
}

.pcg-casting-hero-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 28px rgba(199,165,107,0.42);
}

.pcg-casting-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-casting-hero-title {
  color: #ffffff;
  font-size: clamp(52px, 6.3vw, 104px);
  line-height: 0.9;
  font-weight: 950;
  letter-spacing: -0.08em;
  max-width: 860px;
  margin-bottom: 30px;
  text-shadow: 0 26px 72px rgba(0,0,0,0.58);
}

.pcg-casting-hero-text {
  color: rgba(255,255,255,0.76);
  font-size: 20px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 720px;
  margin-bottom: 38px;
}

.pcg-casting-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

.pcg-casting-hero-actions .pcg-visual-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 170px;
  height: 48px;
  padding: 0 20px;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
}

.pcg-casting-hero-actions .pcg-visual-btn-primary {
  color: #071427;
  background: linear-gradient(135deg, #c7a56b, #f4efe7);
  border: 1px solid rgba(244,239,231,0.42);
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14);
}

.pcg-casting-hero-actions .pcg-visual-btn-secondary {
  color: #ffffff;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.28);
}

.pcg-casting-hero-poster {
  overflow: hidden;
  padding: 18px;
  border-radius: 40px;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.15);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 44px 130px rgba(0,0,0,0.44), inset 0 1px 0 rgba(255,255,255,0.08);
}

.pcg-casting-poster-img {
  display: block;
  width: 100%;
  height: 520px;
  object-fit: cover;
  object-position: center center;
  border-radius: 30px;
  filter: contrast(1.06) saturate(1.06) brightness(0.92);
}

.pcg-casting-poster-caption {
  margin-top: 14px;
  padding: 22px 24px;
  border-radius: 24px;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.16), transparent 42%), linear-gradient(135deg, rgba(2,8,20,0.94), rgba(7,20,39,0.78));
  border: 1px solid rgba(255,255,255,0.16);
}

.pcg-casting-poster-kicker {
  color: #c7a56b;
  font-size: 10.5px;
  letter-spacing: 2.7px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.pcg-casting-poster-title {
  color: #ffffff;
  font-size: clamp(28px, 2.8vw, 42px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.05em;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-casting-hero {
    min-height: auto;
    padding: 120px 0 110px;
  }
}

@media (max-width: 991px) {
  .pcg-casting-hero-shell {
    grid-template-columns: 1fr;
    gap: 64px;
  }
}

@media (max-width: 575px) {
  .pcg-casting-hero {
    padding: 105px 0 95px;
  }
}

@media (max-width: 575px) {
  .pcg-casting-hero-title {
    font-size: clamp(46px, 14vw, 68px);
    line-height: 0.96;
  }
}

@media (max-width: 575px) {
  .pcg-casting-poster-img {
    height: 380px;
  }
}

@media (max-width: 575px) {
  .pcg-casting-hero-actions .pcg-visual-btn {
    width: 100%;
  }
}

/* ===== CASTING PAGE — EMERGENCY HERO DARK RESTORE ===== */

.pcg-casting-hero {
  position: relative !important;
  min-height: calc(100vh - 70px) !important;
  padding: 145px 0 140px !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 24%, rgba(199,165,107,0.18), transparent 30%), radial-gradient(circle at 82% 78%, rgba(111,144,183,0.18), transparent 34%), linear-gradient(135deg, #020814 0%, #071427 48%, #020814 100%) !important;
}

.pcg-casting-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  opacity: 0.14 !important;
  pointer-events: none !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.pcg-casting-hero .pcg-casting-container, .pcg-casting-hero .container, .pcg-casting-hero .row, .pcg-casting-hero [class*="col"], .pcg-casting-hero-shell, .pcg-casting-hero-copy {
  background: transparent !important;
}

.pcg-casting-eyebrow, .pcg-casting-hero-title, .pcg-casting-hero-text {
  opacity: 1 !important;
}

.pcg-casting-eyebrow {
  color: #c7a56b !important;
}

.pcg-casting-hero-title {
  color: #ffffff !important;
  text-shadow: 0 26px 72px rgba(0,0,0,0.58) !important;
}

.pcg-casting-hero-text {
  color: rgba(255,255,255,0.76) !important;
}

.pcg-casting-hero-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.42) !important;
}

.pcg-casting-hero-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
}

/* ===== CASTING PAGE — TRAILER + SYNOPSIS ===== */

.pcg-casting-trailer-section {
  position: relative !important;
  padding: 150px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.14), transparent 30%), radial-gradient(circle at 84% 80%, rgba(111,144,183,0.14), transparent 34%), linear-gradient(180deg, #020814 0%, #071427 100%) !important;
}

.pcg-casting-trailer-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.13 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.pcg-casting-trailer-shell {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: 1.18fr 0.82fr !important;
  gap: 58px !important;
  align-items: center !important;
}

.pcg-casting-trailer-video {
  overflow: hidden !important;
  border-radius: 36px !important;
  background: #020814 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  box-shadow: 0 48px 140px rgba(0,0,0,0.48), 0 0 90px rgba(111,144,183,0.16) !important;
}

.pcg-casting-trailer-video iframe, .pcg-casting-trailer-video video, .pcg-casting-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  border: 0 !important;
  background: #020814 !important;
}

.pcg-casting-trailer-copy {
  position: relative !important;
  padding-top: 42px !important;
}

.pcg-casting-trailer-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 118px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(199,165,107,0.42) !important;
}

.pcg-casting-section-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-casting-section-title {
  color: #ffffff !important;
  font-size: clamp(42px, 5vw, 76px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: -0.07em !important;
  margin-bottom: 24px !important;
}

.pcg-casting-section-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 18px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  margin-bottom: 18px !important;
}

.pcg-casting-detail-row {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin-top: 30px !important;
}

.pcg-casting-detail-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 9px 13px !important;
  border-radius: 999px !important;
  color: rgba(255,255,255,0.88) !important;
  font-size: 12.5px !important;
  font-weight: 850 !important;
  background: rgba(255,255,255,0.075) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
}

@media (max-width: 991px) {
  .pcg-casting-trailer-shell {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-trailer-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-trailer-video {
    border-radius: 26px !important;
  }
}

/* ===== CASTING PAGE — SELECTED STILLS ===== */

.pcg-casting-stills-section {
  position: relative !important;
  padding: 150px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.15), transparent 30%), radial-gradient(circle at 82% 76%, rgba(111,144,183,0.10), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 52%, #f4efe7 100%) !important;
}

.pcg-casting-section-eyebrow-dark {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-casting-stills-title {
  color: #071427 !important;
  font-size: clamp(44px, 5.4vw, 84px) !important;
  line-height: 0.94 !important;
  font-weight: 950 !important;
  letter-spacing: -0.07em !important;
  max-width: 1080px !important;
  margin-bottom: 24px !important;
}

.pcg-casting-stills-text {
  color: #425466 !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 820px !important;
  margin-bottom: 72px !important;
}

.pcg-casting-stills-grid {
  display: grid !important;
  grid-template-columns: 1.2fr 0.8fr 0.8fr !important;
  grid-auto-rows: 235px !important;
  gap: 18px !important;
}

.pcg-casting-still-card {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 30px !important;
  background: #020814 !important;
  border: 1px solid rgba(7,20,39,0.12) !important;
  box-shadow: 0 34px 100px rgba(7,20,39,0.16), 0 0 60px rgba(199,165,107,0.08) !important;
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease !important;
}

.pcg-casting-still-large {
  grid-row: span 2 !important;
}

.pcg-casting-still-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: contrast(1.04) saturate(1.06) brightness(1) !important;
  transition: transform 0.7s ease, filter 0.7s ease !important;
}

.pcg-casting-still-card:hover {
  transform: translateY(-8px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 48px 130px rgba(7,20,39,0.24), 0 0 70px rgba(199,165,107,0.12) !important;
}

.pcg-casting-still-card:hover .pcg-casting-still-img {
  transform: scale(1.035) !important;
  filter: contrast(1.08) saturate(1.1) brightness(1.04) !important;
}

@media (max-width: 991px) {
  .pcg-casting-stills-grid {
    grid-template-columns: 1fr 1fr !important;
    grid-auto-rows: 240px !important;
  }
}

@media (max-width: 991px) {
  .pcg-casting-still-large {
    grid-column: 1 / -1 !important;
    grid-row: span 2 !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-stills-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-stills-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: 230px !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-still-large {
    grid-column: auto !important;
    grid-row: span 1 !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-still-card {
    border-radius: 24px !important;
  }
}

/* ===== CASTING PAGE — RIVER + CONSERVATION STORY ===== */

.pcg-casting-river-section {
  position: relative !important;
  padding: 155px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.14), transparent 30%), radial-gradient(circle at 84% 80%, rgba(111,144,183,0.16), transparent 34%), linear-gradient(180deg, #020814 0%, #071427 100%) !important;
}

.pcg-casting-river-shell {
  display: grid !important;
  grid-template-columns: 0.92fr 1.08fr !important;
  gap: 72px !important;
  align-items: start !important;
}

.pcg-casting-river-copy {
  position: sticky !important;
  top: 120px !important;
  padding-top: 42px !important;
}

.pcg-casting-river-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 118px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(199,165,107,0.42) !important;
}

.pcg-casting-river-title {
  color: #ffffff !important;
  font-size: clamp(42px, 5.2vw, 78px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: -0.07em !important;
  margin-bottom: 24px !important;
}

.pcg-casting-river-panel {
  display: grid !important;
  gap: 18px !important;
}

.pcg-casting-river-note {
  position: relative !important;
  overflow: hidden !important;
  padding: 30px 32px !important;
  border-radius: 28px !important;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.10), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035)) !important;
  border: 1px solid rgba(255,255,255,0.13) !important;
  box-shadow: 0 28px 90px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.08) !important;
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease !important;
}

.pcg-casting-river-note:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 38px 110px rgba(0,0,0,0.42), 0 0 65px rgba(199,165,107,0.12) !important;
}

.pcg-casting-river-note-number {
  display: block !important;
  color: #c7a56b !important;
  font-size: 11px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 14px !important;
}

.pcg-casting-river-note-title {
  color: #ffffff !important;
  font-size: 30px !important;
  line-height: 1.04 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  margin-bottom: 10px !important;
}

.pcg-casting-river-note-text {
  color: rgba(255,255,255,0.72) !important;
  font-size: 15.5px !important;
  line-height: 1.65 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 991px) {
  .pcg-casting-river-shell {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }
}

@media (max-width: 991px) {
  .pcg-casting-river-copy {
    position: relative !important;
    top: auto !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-river-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-river-note {
    padding: 24px 22px !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-river-note-title {
    font-size: 26px !important;
  }
}

/* ===== CASTING PAGE — RIVER NOTES WITHOUT NUMBERS ===== */

.pcg-casting-river-note-number {
  display: none !important;
}

.pcg-casting-river-note {
  padding: 34px 34px !important;
}

.pcg-casting-river-note-title {
  margin-top: 0 !important;
}

/* ===== CASTING PAGE — RIVER NOTES WITHOUT NUMBERS ===== */

.pcg-casting-river-note-number {
  display: none !important;
}

.pcg-casting-river-note {
  padding: 34px 34px !important;
}

.pcg-casting-river-note-title {
  margin-top: 0 !important;
}

/* ===== CASTING PAGE — WATCH FULL FILM ===== */

.pcg-casting-fullfilm-section {
  position: relative !important;
  padding: 150px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.15), transparent 30%), radial-gradient(circle at 82% 76%, rgba(111,144,183,0.10), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 52%, #f4efe7 100%) !important;
}

.pcg-casting-fullfilm-title {
  color: #071427 !important;
  font-size: clamp(44px, 5.4vw, 84px) !important;
  line-height: 0.94 !important;
  font-weight: 950 !important;
  letter-spacing: -0.07em !important;
  max-width: 1050px !important;
  margin-bottom: 24px !important;
}

.pcg-casting-fullfilm-text {
  color: #425466 !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 860px !important;
  margin-bottom: 72px !important;
}

.pcg-casting-fullfilm-frame {
  overflow: hidden !important;
  border-radius: 38px !important;
  background: #020814 !important;
  border: 1px solid rgba(7,20,39,0.12) !important;
  box-shadow: 0 44px 125px rgba(7,20,39,0.22), 0 0 70px rgba(199,165,107,0.10) !important;
}

.pcg-casting-fullfilm-frame iframe, .pcg-casting-fullfilm-frame video, .pcg-casting-fullfilm-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  border: 0 !important;
  background: #020814 !important;
}

@media (max-width: 575px) {
  .pcg-casting-fullfilm-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-casting-fullfilm-frame {
    border-radius: 26px !important;
  }
}

/* ===== CASTING PAGE — FINAL CTA ===== */

.pcg-casting-final-cta {
  padding: 145px 0 !important;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%) !important;
}

.pcg-casting-final-card {
  position: relative !important;
  overflow: hidden !important;
  padding: 72px !important;
  border-radius: 38px !important;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 40%), radial-gradient(circle at bottom left, rgba(111,144,183,0.20), transparent 42%), linear-gradient(135deg, #071427, #020814) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 70px rgba(111,144,183,0.14) !important;
}

.pcg-casting-final-card::before {
  content: "" !important;
  position: absolute !important;
  top: 42px !important;
  left: 72px !important;
  width: 118px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(199,165,107,0.42) !important;
}

.pcg-casting-final-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
  padding-top: 34px !important;
}

.pcg-casting-final-title {
  color: #ffffff !important;
  font-size: clamp(42px, 5.5vw, 82px) !important;
  line-height: 0.96 !important;
  font-weight: 950 !important;
  letter-spacing: -0.065em !important;
  max-width: 980px !important;
  margin-bottom: 24px !important;
}

.pcg-casting-final-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 860px !important;
  margin-bottom: 38px !important;
}

.pcg-casting-final-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.pcg-casting-final-actions .pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 178px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.pcg-casting-final-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.42) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-casting-final-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
}

.pcg-casting-final-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-casting-final-actions .pcg-visual-btn-secondary:hover {
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(199,165,107,0.45) !important;
}

@media (max-width: 767px) {
  .pcg-casting-final-cta {
    padding: 105px 0 !important;
  }
}

@media (max-width: 767px) {
  .pcg-casting-final-card {
    padding: 46px 28px !important;
    border-radius: 28px !important;
  }
}

@media (max-width: 767px) {
  .pcg-casting-final-card::before {
    left: 28px !important;
    top: 32px !important;
  }
}

@media (max-width: 767px) {
  .pcg-casting-final-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

/* ===== PCG OUR EXPERTS PAGE ===== */

.pcg-experts-container {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

/* ===== HERO ===== */

.pcg-experts-hero {
  position: relative;
  overflow: hidden;
  padding: 150px 0 135px;
  background: radial-gradient(circle at 16% 20%, rgba(111,144,183,0.24), transparent 32%), radial-gradient(circle at 84% 76%, rgba(199,165,107,0.11), transparent 34%), linear-gradient(135deg, #071427 0%, #020814 100%);
}

.pcg-experts-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.09;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-experts-hero-shell {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;
  gap: 72px;
  align-items: center;
}

.pcg-experts-hero-copy {
  position: relative;
  padding-top: 42px;
}

.pcg-experts-hero-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 132px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
  box-shadow: 0 0 34px rgba(111,144,183,0.42);
}

.pcg-experts-eyebrow {
  color: #a9d4ff;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 20px;
}

.pcg-experts-hero-title {
  color: #ffffff;
  font-size: clamp(54px, 6.4vw, 104px);
  line-height: 0.9;
  letter-spacing: -0.08em;
  font-weight: 950;
  max-width: 900px;
  margin-bottom: 30px;
  text-shadow: 0 24px 80px rgba(0,0,0,0.62);
}

.pcg-experts-hero-text {
  color: rgba(255,255,255,0.78);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 760px;
  margin-bottom: 38px;
}

.pcg-experts-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.pcg-experts-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 190px;
  height: 50px;
  padding: 0 22px;
  border-radius: 999px;
  font-size: 13.5px;
  font-weight: 950;
  line-height: 1;
  text-decoration: none;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.pcg-experts-btn:hover {
  transform: translateY(-3px);
  text-decoration: none;
}

.pcg-experts-btn-primary {
  color: #071427;
  background: linear-gradient(135deg, #ffffff, #8fb8df);
  border: 1px solid rgba(255,255,255,0.62);
  box-shadow: 0 18px 46px rgba(111,144,183,0.34), 0 0 42px rgba(143,184,223,0.22);
}

.pcg-experts-btn-secondary {
  color: #ffffff;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.30);
}

/* ===== HERO PANEL ===== */

.pcg-experts-hero-panel {
  position: relative;
  overflow: hidden;
  padding: 48px;
  border-radius: 38px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.25), transparent 40%), linear-gradient(135deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.15);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 44px 130px rgba(0,0,0,0.40), inset 0 1px 0 rgba(255,255,255,0.08);
}

.pcg-experts-hero-panel::before {
  content: "";
  display: block;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 34px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
}

.pcg-experts-panel-eyebrow {
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 3.5px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-experts-panel-title {
  color: #ffffff;
  font-size: clamp(34px, 3.7vw, 58px);
  line-height: 0.98;
  letter-spacing: -0.065em;
  font-weight: 950;
  margin-bottom: 22px;
}

.pcg-experts-panel-text {
  color: rgba(255,255,255,0.75);
  font-size: 17px;
  line-height: 1.72;
  font-weight: 650;
  margin-bottom: 28px;
}

.pcg-experts-panel-list {
  display: grid;
  gap: 12px;
}

.pcg-experts-panel-item {
  margin: 0;
  padding: 14px 16px;
  border-radius: 18px;
  color: rgba(255,255,255,0.82);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.10);
}

/* ===== TRUST STRIP ===== */

.pcg-experts-trust {
  position: relative;
  overflow: hidden;
  padding: 105px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-experts-trust-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.pcg-experts-trust-card {
  position: relative;
  overflow: hidden;
  min-height: 245px;
  padding: 32px 28px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.22), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,239,231,0.78));
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 28px 90px rgba(7,20,39,0.12), inset 0 1px 0 rgba(255,255,255,0.60);
}

.pcg-experts-trust-card::before {
  content: "";
  display: block;
  width: 82px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 26px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
}

.pcg-experts-trust-eyebrow {
  color: #6f90b7;
  font-size: 11px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 16px;
}

.pcg-experts-trust-title {
  color: #071427;
  font-size: 25px;
  line-height: 1.05;
  letter-spacing: -0.045em;
  font-weight: 920;
  margin-bottom: 14px;
}

.pcg-experts-trust-text {
  color: #425466;
  font-size: 15.5px;
  line-height: 1.62;
  font-weight: 650;
  margin-bottom: 0;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 991px) {
  .pcg-experts-hero-shell {
    grid-template-columns: 1fr;
    gap: 58px;
  }
}

@media (max-width: 991px) {
  .pcg-experts-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .pcg-experts-hero {
    padding: 110px 0 95px;
  }
}

@media (max-width: 767px) {
  .pcg-experts-hero-panel {
    padding: 34px 26px;
    border-radius: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-experts-btn {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .pcg-experts-trust {
    padding: 80px 0;
  }
}

@media (max-width: 767px) {
  .pcg-experts-trust-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== EXPERTS PAGE — EXPERTISE BENCH ===== */

.pcg-experts-bench {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 16% 20%, rgba(111,144,183,0.19), transparent 31%), radial-gradient(circle at 86% 78%, rgba(199,165,107,0.11), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-experts-bench::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.085;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-experts-bench .pcg-experts-container {
  position: relative;
  z-index: 2;
}

.pcg-experts-section-eyebrow {
  color: #a9d4ff;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-experts-section-title {
  color: #ffffff;
  font-size: clamp(44px, 5.7vw, 88px);
  line-height: 0.94;
  letter-spacing: -0.075em;
  font-weight: 950;
  max-width: 1050px;
  margin-bottom: 24px;
  text-shadow: 0 18px 70px rgba(0,0,0,0.56), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-experts-section-text {
  color: rgba(255,255,255,0.76);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 870px;
  margin-bottom: 70px;
}

.pcg-experts-bench-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.pcg-experts-bench-card {
  position: relative;
  overflow: hidden;
  min-height: 295px;
  padding: 34px 30px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.24), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.13);
  box-shadow: 0 34px 100px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.07);
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.pcg-experts-bench-card::before {
  content: "";
  display: block;
  width: 82px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 28px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
}

.pcg-experts-bench-card:hover {
  transform: translateY(-8px);
  border-color: rgba(143,184,223,0.46);
  box-shadow: 0 48px 130px rgba(0,0,0,0.42), 0 0 80px rgba(143,184,223,0.14);
}

.pcg-experts-bench-kicker {
  color: #a9d4ff;
  font-size: 11px;
  letter-spacing: 3.5px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 16px;
}

.pcg-experts-bench-title {
  color: #ffffff;
  font-size: 28px;
  line-height: 1.04;
  letter-spacing: -0.05em;
  font-weight: 920;
  margin-bottom: 16px;
}

.pcg-experts-bench-text {
  color: rgba(255,255,255,0.74);
  font-size: 15.5px;
  line-height: 1.65;
  font-weight: 650;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-experts-bench-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .pcg-experts-bench {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-experts-bench-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-experts-bench-card {
    min-height: auto;
  }
}

/* ===== EXPERTS PAGE — CONSULTANT PROFILES ===== */

.pcg-experts-profiles {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 76%, rgba(199,165,107,0.12), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 52%, #f4efe7 100%);
}

.pcg-experts-profiles::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.07;
  background: linear-gradient(rgba(7,20,39,0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(7,20,39,0.028) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-experts-profiles .pcg-experts-container {
  position: relative;
  z-index: 2;
}

.pcg-experts-profiles-eyebrow {
  color: #c7a56b;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-experts-profiles-title {
  color: #071427;
  font-size: clamp(44px, 5.7vw, 88px);
  line-height: 0.94;
  letter-spacing: -0.075em;
  font-weight: 950;
  max-width: 1050px;
  margin-bottom: 24px;
}

.pcg-experts-profiles-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 900px;
  margin-bottom: 70px;
}

.pcg-experts-profile-grid {
  display: grid;
  grid-template-columns: 1.18fr 0.91fr 0.91fr;
  gap: 20px;
  align-items: stretch;
}

.pcg-experts-profile-card {
  position: relative;
  overflow: hidden;
  min-height: 470px;
  padding: 38px;
  border-radius: 34px;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.20), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,239,231,0.78));
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 32px 95px rgba(7,20,39,0.13), inset 0 1px 0 rgba(255,255,255,0.62);
  display: flex;
  flex-direction: column;
}

.pcg-experts-profile-featured {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.25), transparent 42%), radial-gradient(circle at bottom left, rgba(199,165,107,0.13), transparent 42%), linear-gradient(135deg, #071427, #020814);
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 44px 130px rgba(0,0,0,0.38), 0 0 80px rgba(111,144,183,0.14);
}

.pcg-experts-profile-card::before {
  content: "";
  display: block;
  width: 92px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 30px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
}

.pcg-experts-profile-kicker {
  color: #6f90b7;
  font-size: 11px;
  letter-spacing: 3.2px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-experts-profile-featured .pcg-experts-profile-kicker {
  color: #a9d4ff;
}

.pcg-experts-profile-name {
  color: #071427;
  font-size: clamp(38px, 4vw, 62px);
  line-height: 0.95;
  letter-spacing: -0.065em;
  font-weight: 950;
  margin-bottom: 20px;
}

.pcg-experts-profile-featured .pcg-experts-profile-name {
  color: #ffffff;
}

.pcg-experts-profile-role {
  color: #243447;
  font-size: 17px;
  line-height: 1.58;
  font-weight: 800;
  margin-bottom: 18px;
}

.pcg-experts-profile-featured .pcg-experts-profile-role {
  color: rgba(255,255,255,0.86);
}

.pcg-experts-profile-detail {
  color: #425466;
  font-size: 15.8px;
  line-height: 1.68;
  font-weight: 650;
  margin-bottom: 30px;
}

.pcg-experts-profile-featured .pcg-experts-profile-detail {
  color: rgba(255,255,255,0.74);
}

.pcg-experts-profile-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: auto;
}

.pcg-experts-profile-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 11px;
  border-radius: 999px;
  color: #071427;
  background: rgba(111,144,183,0.13);
  border: 1px solid rgba(111,144,183,0.20);
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
}

.pcg-experts-profile-featured .pcg-experts-profile-tag {
  color: rgba(255,255,255,0.88);
  background: rgba(255,255,255,0.075);
  border: 1px solid rgba(255,255,255,0.14);
}

@media (max-width: 991px) {
  .pcg-experts-profile-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-experts-profile-card {
    min-height: auto;
  }
}

@media (max-width: 767px) {
  .pcg-experts-profiles {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-experts-profile-card {
    padding: 32px 26px;
    border-radius: 28px;
  }
}

/* ===== EXPERTS PAGE — FINAL ENGAGEMENT CTA ===== */

.pcg-experts-final {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-experts-final-card {
  position: relative;
  overflow: hidden;
  padding: 68px;
  border-radius: 38px;
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 56px;
  align-items: start;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.22), transparent 40%), radial-gradient(circle at bottom left, rgba(199,165,107,0.15), transparent 42%), linear-gradient(135deg, #071427, #020814);
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 80px rgba(111,144,183,0.16);
}

.pcg-experts-final-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.08;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-experts-final-copy, .pcg-experts-final-steps {
  position: relative;
  z-index: 2;
}

.pcg-experts-final-copy::before {
  content: "";
  display: block;
  width: 132px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 34px;
  background: linear-gradient(90deg, #8fb8df, #c7a56b, transparent);
  box-shadow: 0 0 34px rgba(143,184,223,0.44);
}

.pcg-experts-final-eyebrow {
  color: #a9d4ff;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 20px;
}

.pcg-experts-final-title {
  color: #ffffff;
  font-size: clamp(42px, 5.2vw, 78px);
  line-height: 0.94;
  letter-spacing: -0.075em;
  font-weight: 950;
  max-width: 760px;
  margin-bottom: 24px;
  text-shadow: 0 18px 70px rgba(0,0,0,0.58), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-experts-final-text {
  color: rgba(255,255,255,0.78);
  font-size: 18px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 720px;
  margin-bottom: 36px;
}

.pcg-experts-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}

.pcg-experts-final-steps {
  display: grid;
  gap: 16px;
}

.pcg-experts-step {
  padding: 26px 28px;
  border-radius: 26px;
  background: radial-gradient(circle at top right, rgba(143,184,223,0.16), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.13);
  box-shadow: 0 28px 90px rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.07);
}

.pcg-experts-step-kicker {
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 10px;
}

.pcg-experts-step-title {
  color: #ffffff;
  font-size: 28px;
  line-height: 1.02;
  letter-spacing: -0.05em;
  font-weight: 920;
  margin-bottom: 10px;
}

.pcg-experts-step-text {
  color: rgba(255,255,255,0.74);
  font-size: 15.5px;
  line-height: 1.62;
  font-weight: 650;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-experts-final-card {
    grid-template-columns: 1fr;
    gap: 44px;
  }
}

@media (max-width: 767px) {
  .pcg-experts-final {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-experts-final-card {
    padding: 44px 26px;
    border-radius: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-experts-final-actions .pcg-experts-btn {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .pcg-experts-step {
    padding: 24px 22px;
  }
}

.dh-header-non-rectangular-container h1, p {
  color: white;
  font-weight: bold;
}

.bs-icon {
  --bs-icon-size: .75rem;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: var(--bs-icon-size);
  width: calc(var(--bs-icon-size) * 2);
  height: calc(var(--bs-icon-size) * 2);
  color: var(--bs-primary);
}

.bs-icon.bs-icon-primary {
  color: var(--bs-white);
  background: var(--bs-primary);
}

.bs-icon.bs-icon-circle {
  border-radius: 50%;
}

div {
}

body a {
  outline: none !important;
}

/* ===== PCG FOUNDER PAGE ===== */

:root {
  --pcg-navy: #0b1f3a;
  --pcg-deep: #071427;
  --pcg-black: #020814;
  --pcg-blue: #6f90b7;
  --pcg-blue-soft: #9db7d4;
  --pcg-ice: #eef3f8;
  --pcg-white: #ffffff;
  --pcg-muted: #b9c4d3;
  --pcg-charcoal: #1f2937;
}

.pcg-founder-section {
  position: relative;
  overflow: hidden;
}

.pcg-founder-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-founder-eyebrow {
  color: var(--pcg-blue-soft);
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-founder-title {
  font-size: clamp(46px, 6vw, 88px);
  line-height: 0.95;
  font-weight: 900;
  letter-spacing: -0.065em;
  margin-bottom: 28px;
}

.pcg-founder-text {
  font-size: 20px;
  line-height: 1.75;
  max-width: 850px;
}

/* ===== FOUNDER HERO ===== */

.pcg-founder-hero {
  min-height: 92vh;
  display: flex;
  align-items: center;
  padding: 145px 0 130px;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.22), transparent 30%), radial-gradient(circle at 85% 70%, rgba(111,144,183,0.12), transparent 32%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-founder-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: 0.65;
  pointer-events: none;
}

.pcg-founder-hero::after {
  content: "";
  position: absolute;
  right: 7%;
  top: 18%;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(111,144,183,0.26), transparent 68%);
  filter: blur(8px);
  animation: pcgFounderPulse 4.8s ease-in-out infinite;
  pointer-events: none;
}

.pcg-founder-hero .pcg-founder-container {
  position: relative;
  z-index: 2;
}

.pcg-founder-hero-title {
  color: #ffffff;
  max-width: 900px;
}

.pcg-founder-hero-text {
  color: rgba(255,255,255,0.76);
  margin-bottom: 38px;
}

.pcg-founder-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.pcg-founder-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 850;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-founder-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 18px 46px rgba(111,144,183,0.28);
}

.pcg-founder-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.18);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.pcg-founder-btn:hover {
  transform: translateY(-3px);
}

.pcg-founder-btn-primary:hover {
  box-shadow: 0 24px 60px rgba(111,144,183,0.42);
}

.pcg-founder-btn-secondary:hover {
  background: rgba(111,144,183,0.16);
  border-color: rgba(157,183,212,0.42);
}

.pcg-founder-photo-frame {
  position: relative;
  overflow: hidden;
  border-radius: 36px;
  min-height: 590px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.24), transparent 42%), rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 42px 120px rgba(0,0,0,0.42), 0 0 90px rgba(111,144,183,0.18);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-founder-photo-frame:hover {
  transform: translateY(-10px);
  border-color: rgba(157,183,212,0.38);
  box-shadow: 0 54px 140px rgba(0,0,0,0.52), 0 0 110px rgba(111,144,183,0.28);
}

.pcg-founder-photo-frame::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.06) 1px, transparent 1px);
  background-size: 36px 36px;
  opacity: 0.55;
  pointer-events: none;
  z-index: 2;
}

.pcg-founder-photo-frame::after {
  content: "";
  position: absolute;
  top: 30px;
  left: 30px;
  width: 86px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.45);
  z-index: 4;
}

.pcg-founder-photo {
  width: 100%;
  height: 100%;
  min-height: 590px;
  object-fit: cover;
  display: block;
  opacity: 0.9;
  filter: saturate(0.95) contrast(1.04);
}

.pcg-founder-photo-caption {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 28px;
  z-index: 5;
  padding: 22px 24px;
  border-radius: 22px;
  background: rgba(7,20,39,0.72);
  border: 1px solid rgba(157,183,212,0.24);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.pcg-founder-photo-name {
  color: #ffffff;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 0.04em;
  margin-bottom: 4px;
}

.pcg-founder-photo-role {
  color: rgba(255,255,255,0.72);
  font-size: 14px;
  margin-bottom: 0;
}

@keyframes pcgFounderPulse {
  0%, 100% {
    opacity: 0.38;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.08);
  }
}

@media (max-width: 991px) {
  .pcg-founder-photo-frame, .pcg-founder-photo {
    min-height: 520px;
  }
}

@media (max-width: 767px) {
  .pcg-founder-hero {
    min-height: auto;
    padding: 120px 0;
  }
}

@media (max-width: 767px) {
  .pcg-founder-btn {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .pcg-founder-photo-frame, .pcg-founder-photo {
    min-height: 420px;
  }
}

/* FOUNDER HERO CONTAINER EDGE FIX */

.pcg-founder-hero .pcg-founder-container {
  max-width: 1240px !important;
  padding-left: 48px !important;
  padding-right: 48px !important;
}

.pcg-founder-hero .row {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.pcg-founder-hero .col, .pcg-founder-hero [class*="col-"] {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* ===== FOUNDER BUTTON HARD OVERRIDE ===== */

.pcg-founder-hero-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.pcg-founder-hero-actions .pcg-founder-btn, .pcg-founder-btn, a.pcg-founder-btn, button.pcg-founder-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  border: 1px solid transparent !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-founder-hero-actions .pcg-founder-btn-primary, .pcg-founder-btn-primary, a.pcg-founder-btn-primary, button.pcg-founder-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  border-color: rgba(157,183,212,0.24) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.28) !important;
}

.pcg-founder-hero-actions .pcg-founder-btn-secondary, .pcg-founder-btn-secondary, a.pcg-founder-btn-secondary, button.pcg-founder-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.065) !important;
  border-color: rgba(255,255,255,0.18) !important;
  box-shadow: none !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-founder-hero-actions .pcg-founder-btn:hover, .pcg-founder-btn:hover, a.pcg-founder-btn:hover, button.pcg-founder-btn:hover {
  transform: translateY(-3px) !important;
  text-decoration: none !important;
}

.pcg-founder-hero-actions .pcg-founder-btn-primary:hover, .pcg-founder-btn-primary:hover, a.pcg-founder-btn-primary:hover, button.pcg-founder-btn-primary:hover {
  box-shadow: 0 24px 60px rgba(111,144,183,0.42) !important;
}

.pcg-founder-hero-actions .pcg-founder-btn-secondary:hover, .pcg-founder-btn-secondary:hover, a.pcg-founder-btn-secondary:hover, button.pcg-founder-btn-secondary:hover {
  background: rgba(111,144,183,0.16) !important;
  border-color: rgba(157,183,212,0.42) !important;
}

/* FOUNDER HERO GRID / HARSH LINE SOFTENING */

.pcg-founder-hero::before {
  background: linear-gradient(rgba(111,144,183,0.025) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.025) 1px, transparent 1px) !important;
  background-size: 56px 56px !important;
  opacity: 0.35 !important;
}

.pcg-founder-hero::before {
  display: none !important;
}

/* FOUNDER HERO HARD RESET FOR HARSH INNER LINES */

.pcg-founder-hero, .pcg-founder-hero .pcg-founder-container, .pcg-founder-hero .container, .pcg-founder-hero .row, .pcg-founder-hero .col, .pcg-founder-hero [class*="col-"] {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

.pcg-founder-hero .pcg-founder-container, .pcg-founder-hero .container, .pcg-founder-hero .row, .pcg-founder-hero .col, .pcg-founder-hero [class*="col-"] {
  background: transparent !important;
}

/* replace the harsh grid/box look with a smooth cinematic wash */

.pcg-founder-hero::before {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(circle at 22% 42%, rgba(111,144,183,0.12), transparent 34%), radial-gradient(circle at 78% 40%, rgba(111,144,183,0.10), transparent 38%), linear-gradient(90deg, rgba(7,20,39,0.18), transparent 45%, rgba(7,20,39,0.18)) !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

/* make sure content stays above the smooth overlay */

.pcg-founder-hero .pcg-founder-container {
  position: relative !important;
  z-index: 2 !important;
}

/* FOUNDER PHOTO CAPTION — PERSONAL EXECUTIVE POLISH */

.pcg-founder-photo-caption {
  left: 32px !important;
  right: 32px !important;
  bottom: 30px !important;
  padding: 20px 24px 22px !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, rgba(7,20,39,0.68), rgba(11,31,58,0.54)) !important;
  border: 1px solid rgba(157,183,212,0.32) !important;
  box-shadow: 0 20px 55px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.10) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.pcg-founder-photo-caption::before {
  content: "";
  display: block;
  width: 72px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 16px;
  background: linear-gradient(90deg, #9db7d4, transparent);
  box-shadow: 0 0 18px rgba(157,183,212,0.35);
}

.pcg-founder-photo-name {
  color: #ffffff !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  margin-bottom: 7px !important;
}

.pcg-founder-photo-role {
  color: rgba(255,255,255,0.78) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

/* FOUNDER PHOTO CAPTION + CROP FINAL FIX */

.pcg-founder-photo-frame {
  min-height: 640px !important;
  padding-bottom: 108px !important;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 42%), rgba(255,255,255,0.055) !important;
}

.pcg-founder-photo {
  height: calc(100% - 108px) !important;
  min-height: 532px !important;
  object-fit: cover !important;
  object-position: center 38% !important;
  border-radius: 36px 36px 0 0 !important;
}

.pcg-founder-photo-caption {
  left: 26px !important;
  right: 26px !important;
  bottom: 22px !important;
  padding: 16px 22px 18px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, rgba(238,243,248,0.92), rgba(255,255,255,0.78)) !important;
  border: 1px solid rgba(111,144,183,0.24) !important;
  box-shadow: 0 18px 45px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,255,255,0.82) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.pcg-founder-photo-caption::before {
  width: 64px !important;
  height: 3px !important;
  margin-bottom: 13px !important;
  background: linear-gradient(90deg, #6f90b7, transparent) !important;
  box-shadow: 0 0 16px rgba(111,144,183,0.28) !important;
}

.pcg-founder-photo-name {
  color: #0b1f3a !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
  margin-bottom: 5px !important;
}

.pcg-founder-photo-role {
  color: #425466 !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
  margin-bottom: 0 !important;
}

/* ===== FOUNDER CREDIBILITY SNAPSHOT ===== */

.pcg-founder-cred {
  padding: 165px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-founder-cred-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-founder-cred-title {
  color: #0b1f3a;
  font-size: clamp(40px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 1040px;
  margin-bottom: 24px;
}

.pcg-founder-cred-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 880px;
  margin-bottom: 76px;
}

.pcg-founder-cred-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}

.pcg-founder-cred-card {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  padding: 34px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.86);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 26px 80px rgba(11,31,58,0.12), inset 0 1px 0 rgba(255,255,255,0.9);
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease;
}

.pcg-founder-cred-card::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 34px;
  width: 70px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.32);
}

.pcg-founder-cred-card:hover {
  transform: translateY(-10px);
  border-color: rgba(111,144,183,0.34);
  box-shadow: 0 38px 105px rgba(11,31,58,0.18), 0 0 55px rgba(111,144,183,0.16);
}

.pcg-founder-cred-number {
  display: inline-block;
  color: #6f90b7;
  font-size: clamp(36px, 4vw, 58px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-top: 42px;
  margin-bottom: 38px;
}

.pcg-founder-cred-card-title {
  color: #0b1f3a;
  font-size: 27px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 18px;
}

.pcg-founder-cred-card-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.65;
  margin-bottom: 0;
}

@media (max-width: 1199px) {
  .pcg-founder-cred-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .pcg-founder-cred {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-founder-cred-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-founder-cred-card {
    min-height: 300px;
  }
}

/* ===== FOUNDER STORY SECTION ===== */

.pcg-founder-story {
  padding: 170px 0;
  background: radial-gradient(circle at 85% 18%, rgba(111,144,183,0.14), transparent 30%), linear-gradient(180deg, #ffffff 0%, #eef3f8 100%);
}

.pcg-founder-story-statement {
  position: sticky;
  top: 120px;
}

.pcg-founder-story-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-founder-story-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.06em;
  margin-bottom: 30px;
}

.pcg-founder-story-accent {
  color: #6f90b7;
  font-size: 22px;
  line-height: 1.45;
  font-weight: 900;
  max-width: 420px;
}

.pcg-founder-story-panel {
  position: relative;
  overflow: hidden;
  padding: 52px;
  border-radius: 36px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.88);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 34px 95px rgba(11,31,58,0.13), inset 0 1px 0 rgba(255,255,255,0.9);
}

.pcg-founder-story-panel::before {
  content: "";
  position: absolute;
  top: 34px;
  left: 52px;
  width: 86px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 22px rgba(111,144,183,0.32);
}

.pcg-founder-story-panel > p:first-child {
  margin-top: 44px;
}

.pcg-founder-story-panel p {
  color: #26384c;
  font-size: 20px;
  line-height: 1.82;
  font-weight: 500;
  letter-spacing: -0.01em;
  margin-bottom: 28px;
}

.pcg-founder-story-mini-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 42px;
}

.pcg-founder-story-mini-item {
  position: relative;
  overflow: hidden;
  min-height: 150px;
  padding: 22px;
  border-radius: 22px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(238,243,248,0.82);
  border: 1px solid rgba(11,31,58,0.07);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.pcg-founder-story-mini-item:hover {
  transform: translateY(-6px);
  border-color: rgba(111,144,183,0.32);
  box-shadow: 0 22px 55px rgba(11,31,58,0.12);
}

.pcg-founder-story-mini-label {
  display: inline-block;
  color: #6f90b7;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-bottom: 26px;
}

.pcg-founder-story-mini-text {
  color: #0b1f3a !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  font-weight: 850 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 991px) {
  .pcg-founder-story-statement {
    position: relative;
    top: auto;
    margin-bottom: 40px;
  }
}

@media (max-width: 767px) {
  .pcg-founder-story {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-founder-story-panel {
    padding: 40px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-founder-story-panel::before {
    left: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-founder-story-mini-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== FOUNDER DELIVERY PHILOSOPHY ===== */

.pcg-founder-philosophy {
  padding: 175px 0;
  background: radial-gradient(circle at 15% 20%, rgba(111,144,183,0.18), transparent 30%), radial-gradient(circle at 86% 72%, rgba(111,144,183,0.10), transparent 34%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-founder-philosophy-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-founder-philosophy-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.06em;
  max-width: 1040px;
  margin-bottom: 24px;
}

.pcg-founder-philosophy-text {
  color: rgba(255,255,255,0.74);
  font-size: 20px;
  line-height: 1.75;
  max-width: 880px;
  margin-bottom: 78px;
}

.pcg-philosophy-layout {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 32px;
  align-items: stretch;
}

.pcg-philosophy-quote-card {
  position: sticky;
  top: 120px;
  overflow: hidden;
  min-height: 560px;
  padding: 46px;
  border-radius: 36px;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px), radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 42%), rgba(255,255,255,0.055);
  background-size: 38px 38px, 38px 38px, auto, auto;
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 40px 115px rgba(0,0,0,0.38), 0 0 80px rgba(111,144,183,0.16);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.pcg-philosophy-quote-card::before {
  content: "";
  position: absolute;
  top: 34px;
  left: 46px;
  width: 84px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.4);
}

.pcg-philosophy-quote {
  position: relative;
  z-index: 2;
  color: #ffffff;
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1.03;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-top: 60px;
  margin-bottom: 32px;
}

.pcg-philosophy-quote-name {
  position: relative;
  z-index: 2;
  color: #9db7d4;
  font-size: 16px;
  font-weight: 850;
  letter-spacing: 0.06em;
  margin-bottom: 0;
}

.pcg-philosophy-right {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.pcg-philosophy-principle {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 22px;
  align-items: start;
  padding: 34px;
  border-radius: 28px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.16), transparent 42%), rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.11);
  box-shadow: 0 26px 75px rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.05);
  transition: transform 0.42s ease, border-color 0.42s ease, box-shadow 0.42s ease, background 0.42s ease;
}

.pcg-philosophy-principle::before {
  content: "";
  position: absolute;
  left: 0;
  top: 26px;
  bottom: 26px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #6f90b7, transparent);
}

.pcg-philosophy-principle:hover {
  transform: translateX(10px);
  border-color: rgba(157,183,212,0.34);
  box-shadow: 0 36px 95px rgba(0,0,0,0.34), 0 0 60px rgba(111,144,183,0.18);
}

.pcg-philosophy-principle-number {
  color: #9db7d4;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 2px;
}

.pcg-philosophy-principle-title {
  color: #ffffff;
  font-size: clamp(26px, 3vw, 40px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 12px;
}

.pcg-philosophy-principle-text {
  color: rgba(255,255,255,0.72);
  font-size: 17px;
  line-height: 1.65;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-philosophy-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-philosophy-quote-card {
    position: relative;
    top: auto;
    min-height: auto;
  }
}

@media (max-width: 767px) {
  .pcg-founder-philosophy {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-philosophy-quote-card {
    padding: 40px 30px;
  }
}

@media (max-width: 767px) {
  .pcg-philosophy-quote-card::before {
    left: 30px;
  }
}

@media (max-width: 767px) {
  .pcg-philosophy-principle {
    grid-template-columns: 1fr;
    padding: 30px;
  }
}

/* ===== FOUNDER EXPERIENCE SIGNAL MAP ===== */

.pcg-founder-timeline {
  padding: 175px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.14), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-founder-timeline-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-founder-timeline-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 1050px;
  margin-bottom: 24px;
}

.pcg-founder-timeline-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 900px;
  margin-bottom: 84px;
}

.pcg-founder-signal-map {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 26px;
  max-width: 980px;
  margin-left: auto;
}

.pcg-founder-signal-map::before {
  content: "";
  position: absolute;
  left: -54px;
  top: 20px;
  bottom: 20px;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(111,144,183,0.72), transparent);
  box-shadow: 0 0 32px rgba(111,144,183,0.25);
}

.pcg-founder-signal-item {
  position: relative;
  overflow: hidden;
  padding: 38px 42px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.16), transparent 42%), rgba(255,255,255,0.88);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 24px 78px rgba(11,31,58,0.12), inset 0 1px 0 rgba(255,255,255,0.9);
  transition: transform 0.42s ease, border-color 0.42s ease, box-shadow 0.42s ease;
}

.pcg-founder-signal-item::before {
  content: "";
  position: absolute;
  left: -61px;
  top: 48px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #9db7d4;
  box-shadow: 0 0 18px rgba(157,183,212,0.95), 0 0 45px rgba(111,144,183,0.42);
}

.pcg-founder-signal-item::after {
  content: "";
  position: absolute;
  left: 0;
  top: 30px;
  bottom: 30px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #6f90b7, transparent);
}

.pcg-founder-signal-item:hover {
  transform: translateX(10px);
  border-color: rgba(111,144,183,0.34);
  box-shadow: 0 36px 100px rgba(11,31,58,0.18), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-founder-signal-year {
  display: inline-block;
  color: #6f90b7;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.pcg-founder-signal-title {
  color: #0b1f3a;
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 14px;
}

.pcg-founder-signal-text {
  color: #425466;
  font-size: 18px;
  line-height: 1.65;
  max-width: 760px;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-founder-signal-map {
    margin-left: 0;
  }
}

@media (max-width: 991px) {
  .pcg-founder-signal-map::before, .pcg-founder-signal-item::before {
    display: none;
  }
}

@media (max-width: 767px) {
  .pcg-founder-timeline {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-founder-signal-item {
    padding: 32px 28px;
  }
}

/* ===== FOUNDER MANIFESTO SECTION ===== */

.pcg-founder-manifesto {
  position: relative;
  overflow: hidden;
  padding: 190px 0;
  background: radial-gradient(circle at 18% 24%, rgba(111,144,183,0.24), transparent 32%), radial-gradient(circle at 82% 70%, rgba(157,183,212,0.12), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-founder-manifesto::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.045) 1px, transparent 1px);
  background-size: 58px 58px;
  opacity: 0.45;
  pointer-events: none;
}

.pcg-founder-manifesto::after {
  content: "";
  position: absolute;
  width: 460px;
  height: 460px;
  right: 8%;
  top: 18%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(111,144,183,0.25), transparent 68%);
  filter: blur(8px);
  animation: pcgFounderManifestoPulse 5.2s ease-in-out infinite;
  pointer-events: none;
}

.pcg-founder-manifesto .pcg-founder-container {
  position: relative;
  z-index: 2;
}

.pcg-manifesto-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 24px;
}

.pcg-manifesto-title {
  color: #ffffff;
  font-size: clamp(48px, 7vw, 104px);
  line-height: 0.92;
  font-weight: 900;
  letter-spacing: -0.075em;
  max-width: 1120px;
  margin-bottom: 34px;
}

.pcg-manifesto-text {
  color: rgba(255,255,255,0.74);
  font-size: clamp(20px, 2vw, 27px);
  line-height: 1.55;
  max-width: 920px;
  margin-bottom: 64px;
}

.pcg-founder-manifesto-ticker {
  position: relative;
  overflow: hidden;
  margin-top: 20px;
  padding: 22px 0;
  border-top: 1px solid rgba(157,183,212,0.18);
  border-bottom: 1px solid rgba(157,183,212,0.18);
}

.pcg-founder-manifesto-track {
  display: inline-flex;
  align-items: center;
  gap: 34px;
  white-space: nowrap;
  animation: pcgFounderTickerMove 34s linear infinite;
}

.pcg-founder-manifesto-item {
  color: rgba(255,255,255,0.72);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 3px;
  text-transform: uppercase;
}

.pcg-founder-manifesto-item::after {
  content: "•";
  color: #6f90b7;
  margin-left: 34px;
}

@keyframes pcgFounderManifestoPulse {
  0%, 100% {
    opacity: 0.38;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.08);
  }
}

@keyframes pcgFounderTickerMove {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

@media (max-width: 767px) {
  .pcg-founder-manifesto {
    padding: 125px 0;
  }
}

/* ===== FOUNDER EXECUTIVE COMMAND CTA ===== */

.pcg-founder-command-cta {
  position: relative;
  overflow: hidden;
  padding: 100px 0 145px;
  background: radial-gradient(circle at 15% 50%, rgba(111,144,183,0.16), transparent 28%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-founder-command-bar {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 36px;
  padding: 38px 42px;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(7,20,39,0.97), rgba(11,31,58,0.94));
  border: 1px solid rgba(157,183,212,0.24);
  box-shadow: 0 32px 95px rgba(11,31,58,0.24), 0 0 70px rgba(111,144,183,0.14);
}

.pcg-founder-command-bar::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.05) 1px, transparent 1px);
  background-size: 36px 36px;
  opacity: 0.45;
  pointer-events: none;
}

.pcg-founder-command-bar::after {
  content: "";
  position: absolute;
  top: 0;
  left: 42px;
  width: 120px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.45);
}

.pcg-founder-command-copy, .pcg-founder-command-actions {
  position: relative;
  z-index: 2;
}

.pcg-founder-command-eyebrow {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 12px;
}

.pcg-founder-command-title {
  color: #ffffff;
  font-size: clamp(30px, 3.5vw, 48px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 12px;
  max-width: 760px;
}

.pcg-founder-command-text {
  color: rgba(255,255,255,0.72);
  font-size: 17px;
  line-height: 1.55;
  max-width: 780px;
  margin-bottom: 0;
}

.pcg-founder-command-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pcg-founder-command-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 170px !important;
  min-height: 46px !important;
  padding: 0 16px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-founder-command-button-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  border: 1px solid rgba(157,183,212,0.24) !important;
  box-shadow: 0 16px 42px rgba(111,144,183,0.28) !important;
}

.pcg-founder-command-button-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.065) !important;
  border: 1px solid rgba(157,183,212,0.28) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-founder-command-button:hover {
  transform: translateY(-3px) !important;
}

.pcg-founder-command-button-primary:hover {
  box-shadow: 0 22px 55px rgba(111,144,183,0.42) !important;
}

.pcg-founder-command-button-secondary:hover {
  background: rgba(111,144,183,0.18) !important;
  border-color: rgba(157,183,212,0.48) !important;
}

@media (max-width: 991px) {
  .pcg-founder-command-bar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-founder-command-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .pcg-founder-command-cta {
    padding: 80px 0 115px;
  }
}

@media (max-width: 767px) {
  .pcg-founder-command-bar {
    padding: 36px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-founder-command-bar::after {
    left: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-founder-command-button {
    width: 100% !important;
  }
}

/* FOUNDER COMMAND BAR DECORATIVE LINE FIX */

.pcg-founder-command-bar::after {
  top: 28px !important;
  left: 42px !important;
  width: 120px !important;
  height: 3px !important;
  z-index: 3 !important;
}

.pcg-founder-command-copy {
  padding-top: 34px !important;
}

/* ===== HOMEPAGE — WHAT WE DO V2 CLEAN RESPONSIVE SECTION ===== */

.pcg-what-v2-section {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.18), transparent 32%), radial-gradient(circle at 82% 72%, rgba(199,165,107,0.10), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-what-v2-section::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.08;
  pointer-events: none;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px);
  background-size: 62px 62px;
}

.pcg-what-v2-container {
  position: relative;
  z-index: 2;
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-what-v2-eyebrow {
  color: #a9d4ff;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-what-v2-title {
  color: #ffffff;
  font-size: clamp(44px, 5.8vw, 88px);
  line-height: 0.94;
  letter-spacing: -0.075em;
  font-weight: 950;
  max-width: 1050px;
  margin-bottom: 24px;
}

.pcg-what-v2-text {
  color: rgba(255,255,255,0.76);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 650;
  max-width: 820px;
  margin-bottom: 70px;
}

.pcg-what-v2-grid {
  display: grid;
  grid-template-columns: 1.35fr 0.75fr 0.75fr;
  gap: 20px;
  align-items: stretch;
}

.pcg-what-v2-card {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  padding: 38px;
  border-radius: 32px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.24), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.13);
  box-shadow: 0 34px 100px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.07);
}

.pcg-what-v2-card::before {
  content: "";
  display: block;
  width: 86px;
  height: 3px;
  border-radius: 999px;
  margin-bottom: 30px;
  background: linear-gradient(90deg, #6f90b7, #c7a56b, transparent);
}

.pcg-what-v2-card-large {
  grid-row: span 2;
}

.pcg-what-v2-card-wide {
  grid-column: span 2;
  min-height: 250px;
}

.pcg-what-v2-card-light {
  background: radial-gradient(circle at top right, rgba(143,184,223,0.26), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,239,231,0.88));
}

.pcg-what-v2-card p:first-child {
  color: #a9d4ff;
  font-size: 11px;
  letter-spacing: 3.5px;
  text-transform: uppercase;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-what-v2-card-light p:first-child {
  color: #6f90b7;
}

.pcg-what-v2-card h3, .pcg-what-v2-card h4, .pcg-what-v2-card h5 {
  color: #ffffff;
  font-size: clamp(30px, 3.2vw, 52px);
  line-height: 0.98;
  letter-spacing: -0.06em;
  font-weight: 950;
  margin-bottom: 18px;
}

.pcg-what-v2-card-light h3, .pcg-what-v2-card-light h4, .pcg-what-v2-card-light h5 {
  color: #071427;
}

.pcg-what-v2-card p:last-child {
  color: rgba(255,255,255,0.74);
  font-size: 15.5px;
  line-height: 1.65;
  font-weight: 650;
  margin-bottom: 0;
}

.pcg-what-v2-card-light p:last-child {
  color: #425466;
}

/* Tablet */

@media (max-width: 991px) {
  .pcg-what-v2-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-what-v2-card-large, .pcg-what-v2-card-wide {
    grid-column: 1 / -1;
    grid-row: auto;
  }
}

/* Phone */

@media (max-width: 767px) {
  .pcg-what-v2-section {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-container {
    padding: 0 20px;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-card, .pcg-what-v2-card-large, .pcg-what-v2-card-wide {
    grid-column: auto;
    grid-row: auto;
    width: 100%;
    max-width: 100%;
    min-height: auto;
    padding: 34px 26px;
    border-radius: 26px;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-card h3, .pcg-what-v2-card h4, .pcg-what-v2-card h5 {
    font-size: clamp(30px, 9vw, 44px);
    line-height: 0.98;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-text {
    font-size: 17px;
    margin-bottom: 48px;
  }
}

/* ===== WHAT WE DO V2 — FINAL TEXT VISIBILITY OVERRIDE ===== */

.pcg-what-v2-card {
  color: #ffffff !important;
}

.pcg-what-v2-card h1, .pcg-what-v2-card h2, .pcg-what-v2-card h3, .pcg-what-v2-card h4, .pcg-what-v2-card h5, .pcg-what-v2-card .h1, .pcg-what-v2-card .h2, .pcg-what-v2-card .h3, .pcg-what-v2-card .h4, .pcg-what-v2-card .h5 {
  color: #ffffff !important;
  opacity: 1 !important;
  font-size: clamp(30px, 3.2vw, 52px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.06em !important;
  font-weight: 950 !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

.pcg-what-v2-card p {
  color: rgba(255,255,255,0.78) !important;
  opacity: 1 !important;
}

.pcg-what-v2-card p:first-child {
  color: #a9d4ff !important;
  opacity: 1 !important;
  font-size: 11px !important;
  letter-spacing: 3.5px !important;
  text-transform: uppercase !important;
  font-weight: 950 !important;
  margin-bottom: 18px !important;
}

.pcg-what-v2-card p:last-child {
  color: rgba(255,255,255,0.78) !important;
  opacity: 1 !important;
  font-size: 15.5px !important;
  line-height: 1.65 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

/* Light card override */

.pcg-what-v2-card-light, .pcg-what-v2-card-light * {
  color: #071427 !important;
}

.pcg-what-v2-card-light p:first-child {
  color: #6f90b7 !important;
}

.pcg-what-v2-card-light p:last-child {
  color: #425466 !important;
}

/* Make the wide bottom card content readable */

.pcg-what-v2-card-wide {
  min-height: 240px !important;
}

.pcg-what-v2-card-wide h1, .pcg-what-v2-card-wide h2, .pcg-what-v2-card-wide h3, .pcg-what-v2-card-wide h4, .pcg-what-v2-card-wide h5 {
  max-width: 850px !important;
}

.pcg-what-v2-card-wide p:last-child {
  max-width: 860px !important;
}

/* Mobile must stack cleanly */

@media (max-width: 767px) {
  .pcg-what-v2-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-card, .pcg-what-v2-card-large, .pcg-what-v2-card-wide {
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: auto !important;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-card h1, .pcg-what-v2-card h2, .pcg-what-v2-card h3, .pcg-what-v2-card h4, .pcg-what-v2-card h5 {
    font-size: clamp(30px, 9vw, 44px) !important;
    line-height: 0.98 !important;
  }
}

/* ===== WHAT WE DO V2 — COSMETIC POLISH ===== */

/* Give the whole section better top breathing room */

.pcg-what-v2-section {
  padding: 120px 0 135px !important;
}

/* Prevent the big title from feeling cropped or too gigantic */

.pcg-what-v2-title {
  font-size: clamp(42px, 5vw, 76px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.065em !important;
  max-width: 980px !important;
  margin-bottom: 24px !important;
}

/* Keep intro paragraph polished */

.pcg-what-v2-text {
  max-width: 780px !important;
  margin-bottom: 58px !important;
}

/* Make cards feel cleaner and less cramped */

.pcg-what-v2-card {
  padding: 36px 34px !important;
  min-height: 330px !important;
}

/* Big left card should feel substantial but not oversized */

.pcg-what-v2-card-large {
  min-height: 520px !important;
}

/* Headings: strong but not overwhelming */

.pcg-what-v2-card h1, .pcg-what-v2-card h2, .pcg-what-v2-card h3, .pcg-what-v2-card h4, .pcg-what-v2-card h5 {
  font-size: clamp(30px, 2.7vw, 46px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.055em !important;
  margin-bottom: 18px !important;
}

/* Light card needs dark readable text */

.pcg-what-v2-card-light h1, .pcg-what-v2-card-light h2, .pcg-what-v2-card-light h3, .pcg-what-v2-card-light h4, .pcg-what-v2-card-light h5 {
  color: #071427 !important;
}

.pcg-what-v2-card-light p:first-child {
  color: #6f90b7 !important;
}

.pcg-what-v2-card-light p:last-child {
  color: #425466 !important;
}

/* Bottom wide card: make it cleaner and less crowded */

.pcg-what-v2-card-wide {
  min-height: 220px !important;
  padding: 34px 34px !important;
}

.pcg-what-v2-card-wide h1, .pcg-what-v2-card-wide h2, .pcg-what-v2-card-wide h3, .pcg-what-v2-card-wide h4, .pcg-what-v2-card-wide h5 {
  font-size: clamp(32px, 3.2vw, 52px) !important;
  max-width: 900px !important;
}

.pcg-what-v2-card-wide p:last-child {
  max-width: 900px !important;
}

/* Mobile polish */

@media (max-width: 767px) {
  .pcg-what-v2-section {
    padding: 95px 0 105px !important;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-title {
    font-size: clamp(40px, 12vw, 58px) !important;
    line-height: 0.94 !important;
  }
}

@media (max-width: 767px) {
  .pcg-what-v2-card, .pcg-what-v2-card-large, .pcg-what-v2-card-wide {
    min-height: auto !important;
    padding: 32px 26px !important;
  }
}

/* ===== WHAT WE DO V2 — SIGNAL GRID INSIDE LARGE CARD ===== */

.pcg-what-v2-signal-grid {
  position: relative !important;
  margin-top: auto !important;
  width: 100% !important;
  height: 82px !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px), rgba(255,255,255,0.035) !important;
  background-size: 28px 28px !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
}

.pcg-what-v2-signal-grid::before {
  content: "" !important;
  position: absolute !important;
  left: 8% !important;
  right: 8% !important;
  top: 50% !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(143,184,223,0.55), transparent) !important;
}

.pcg-what-v2-dot {
  position: absolute !important;
  width: 10px !important;
  height: 10px !important;
  border-radius: 999px !important;
  background: #8fb8df !important;
  box-shadow: 0 0 18px rgba(143,184,223,0.62) !important;
}

.pcg-what-v2-dot:nth-child(1) {
  left: 12% !important;
  top: 48% !important;
}

.pcg-what-v2-dot:nth-child(2) {
  left: 30% !important;
  top: 34% !important;
}

.pcg-what-v2-dot:nth-child(3) {
  left: 52% !important;
  top: 50% !important;
}

.pcg-what-v2-dot:nth-child(4) {
  left: 70% !important;
  top: 60% !important;
}

.pcg-what-v2-dot:nth-child(5) {
  left: 86% !important;
  top: 36% !important;
}

@media (max-width: 767px) {
  .pcg-what-v2-signal-grid {
    margin-top: 30px !important;
    height: 74px !important;
  }
}

/* ===== WHAT WE DO V2 — LARGE CARD EMPTY SPACE FIX ===== */

.pcg-what-v2-card-large {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

/* Push the signal grid toward the bottom of the large card */

.pcg-what-v2-card-large .pcg-what-v2-signal-grid {
  margin-top: auto !important;
}

/* Give the text area breathing room before the grid drops to the bottom */

.pcg-what-v2-card-large p:last-of-type {
  margin-bottom: 34px !important;
}

/* Make the large card feel intentional, not oversized */

.pcg-what-v2-card-large {
  min-height: 455px !important;
}

/* ===== WHAT WE DO V2 — REMOVE OVERSIZED EMPTY LARGE CARD ===== */

/* Stop the SAP card from spanning two rows */

.pcg-what-v2-card-large {
  grid-row: auto !important;
  min-height: 330px !important;
  height: auto !important;
}

/* Make the signal grid sit naturally under the text, not at the bottom of a giant card */

.pcg-what-v2-card-large .pcg-what-v2-signal-grid {
  margin-top: 28px !important;
}

/* Make the bottom execution card span the full width beneath the top cards */

.pcg-what-v2-card-wide {
  grid-column: 1 / -1 !important;
  min-height: 230px !important;
  height: auto !important;
}

/* Make the full-width bottom card feel intentional */

.pcg-what-v2-card-wide h1, .pcg-what-v2-card-wide h2, .pcg-what-v2-card-wide h3, .pcg-what-v2-card-wide h4, .pcg-what-v2-card-wide h5 {
  max-width: 850px !important;
}

.pcg-what-v2-card-wide p:last-child {
  max-width: 900px !important;
}

/* Keep desktop grid balanced */

.pcg-what-v2-grid {
  align-items: stretch !important;
}

/* ===== WHAT WE DO V2 — CARD BUTTON ===== */

.pcg-what-v2-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 188px !important;
  height: 46px !important;
  padding: 0 20px !important;
  margin-top: 26px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,0.34) !important;
  color: #ffffff !important;
  background: rgba(255,255,255,0.065) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 18px 46px rgba(0,0,0,0.24), inset 0 1px 0 rgba(255,255,255,0.10) !important;
  transition: transform 0.28s ease, background 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease !important;
}

.pcg-what-v2-btn:hover {
  transform: translateY(-3px) !important;
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #8fb8df) !important;
  border-color: rgba(255,255,255,0.70) !important;
  text-decoration: none !important;
  box-shadow: 0 22px 56px rgba(111,144,183,0.30), 0 0 42px rgba(143,184,223,0.18) !important;
}

@media (max-width: 767px) {
  .pcg-what-v2-btn {
    width: 100% !important;
  }
}

/* ===== WHAT WE DO V2 — LIGHT CARD BUTTON ===== */

.pcg-what-v2-btn-light {
  color: #ffffff !important;
  background: #071427 !important;
  border: 1px solid rgba(7,20,39,0.22) !important;
  box-shadow: 0 18px 42px rgba(7,20,39,0.18), 0 0 34px rgba(111,144,183,0.14) !important;
}

.pcg-what-v2-btn-light:hover {
  color: #071427 !important;
  background: linear-gradient(135deg, #ffffff, #8fb8df) !important;
  border-color: rgba(111,144,183,0.65) !important;
}

/* ===== WHAT WE DO V2 — LIGHT CARD PARAGRAPH READABILITY ===== */

.pcg-what-v2-card-light p, .pcg-what-v2-card-light p:last-child {
  color: #243447 !important;
  opacity: 1 !important;
  font-weight: 700 !important;
  line-height: 1.62 !important;
}

/* ===== PCG HOME REBUILD ===== */

:root {
  --pcg-navy: #0b1f3a;
  --pcg-deep: #071427;
  --pcg-slate: #102544;
  --pcg-blue: #6f90b7;
  --pcg-ice: #eef3f8;
  --pcg-white: #ffffff;
  --pcg-muted: #b9c4d3;
  --pcg-charcoal: #1f2937;
}

.pcg-home-section {
  position: relative;
  overflow: hidden;
  padding: 130px 0;
}

.pcg-home-container {
  max-width: 1180px;
}

.pcg-home-eyebrow {
  color: var(--pcg-blue);
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 800;
  margin-bottom: 18px;
}

.pcg-home-title {
  color: var(--pcg-navy);
  font-size: clamp(42px, 5vw, 70px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.055em;
  margin-bottom: 24px;
}

.pcg-home-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  max-width: 820px;
}

.pcg-home-impact {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.16), transparent 34%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-home-impact .pcg-home-text {
  margin-bottom: 70px;
}

.pcg-impact-card {
  position: relative;
  height: 100%;
  min-height: 330px;
  padding: 38px;
  border-radius: 30px;
  overflow: hidden;
  background: linear-gradient(145deg, #ffffff 0%, #eef4fa 100%);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 24px 70px rgba(11,31,58,0.12), inset 0 1px 0 rgba(255,255,255,0.9);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-impact-card::before {
  content: "";
  position: absolute;
  width: 190px;
  height: 190px;
  top: -75px;
  right: -75px;
  background: radial-gradient(circle, rgba(111,144,183,0.24), transparent 70%);
  pointer-events: none;
  transition: transform 0.45s ease;
}

.pcg-impact-card:hover {
  transform: translateY(-10px);
  border-color: rgba(111,144,183,0.32);
  box-shadow: 0 34px 90px rgba(11,31,58,0.18), 0 0 46px rgba(111,144,183,0.16);
}

.pcg-impact-card:hover::before {
  transform: scale(1.2);
}

.pcg-impact-number {
  color: #6f90b7;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-bottom: 34px;
}

.pcg-impact-title {
  color: #0b1f3a;
  font-size: 31px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 20px;
}

.pcg-impact-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.75;
  margin-bottom: 0;
}

.pcg-home-impact {
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.34), transparent 28%), radial-gradient(circle at 82% 70%, rgba(11,31,58,0.18), transparent 30%), linear-gradient(135deg, #eef3f8 0%, #d9e6f3 42%, #f8fbff 100%) !important;
}

.pcg-impact-card {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 42%), rgba(255,255,255,0.74) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border: 1px solid rgba(255,255,255,0.72) !important;
  box-shadow: 0 28px 80px rgba(11,31,58,0.16), 0 0 46px rgba(111,144,183,0.12) !important;
}

.pcg-impact-card:hover {
  transform: translateY(-14px) scale(1.015) !important;
  box-shadow: 0 42px 105px rgba(11,31,58,0.22), 0 0 70px rgba(111,144,183,0.24) !important;
}

.pcg-impact-text {
  font-size: 18px !important;
  line-height: 1.45 !important;
}

.pcg-impact-title {
  font-size: 29px !important;
}

.pcg-impact-card-left {
  transform: translateY(0px);
}

.pcg-impact-card-center {
  transform: translateY(42px);
}

.pcg-impact-card-right {
  transform: translateY(12px);
}

.pcg-impact-card-left:hover, .pcg-impact-card-center:hover, .pcg-impact-card-right:hover {
  transform: translateY(-16px) scale(1.02) !important;
}

@media (max-width: 991px) {
  .pcg-impact-card-left, .pcg-impact-card-center, .pcg-impact-card-right {
    transform: none !important;
  }
}

.pcg-impact-card-left {
  transform: translateY(0px) !important;
}

.pcg-impact-card-center {
  transform: translateY(22px) !important;
}

.pcg-impact-card-right {
  transform: translateY(8px) !important;
}

.pcg-home-impact {
  padding-bottom: 180px !important;
}

/* IMPACT SECTION FINAL CLEANUP */

.pcg-home-impact {
  padding-top: 130px !important;
  padding-bottom: 230px !important;
}

.pcg-home-impact .pcg-home-eyebrow {
  color: #0b1f3a !important;
  opacity: 0.55 !important;
}

.pcg-impact-card-left {
  transform: translateY(0px) !important;
}

.pcg-impact-card-center {
  transform: translateY(18px) !important;
}

.pcg-impact-card-right {
  transform: translateY(0px) !important;
}

.pcg-impact-card-left:hover, .pcg-impact-card-center:hover, .pcg-impact-card-right:hover {
  transform: translateY(-12px) scale(1.015) !important;
}

.pcg-home-impact {
  padding-top: 150px !important;
  padding-bottom: 260px !important;
  background: radial-gradient(circle at 20% 20%, rgba(111,144,183,0.35), transparent 30%), linear-gradient(135deg, #dbe9f7 0%, #8fb1d2 100%) !important;
}

.pcg-home-impact .pcg-home-eyebrow {
  color: #0b1f3a !important;
  opacity: 1 !important;
}

.pcg-impact-card-left, .pcg-impact-card-right {
  transform: translateY(0px) !important;
}

.pcg-impact-card-center {
  transform: translateY(8px) !important;
}

.pcg-impact-card {
  margin-bottom: 40px !important;
}

/* FINAL IMPACT SECTION STABILIZER */

.pcg-home-impact {
  padding-top: 150px !important;
  padding-bottom: 160px !important;
  overflow: hidden !important;
}

.pcg-home-impact .pcg-home-eyebrow {
  color: #0b1f3a !important;
  opacity: 0.8 !important;
}

.pcg-impact-card-left, .pcg-impact-card-center, .pcg-impact-card-right, .pcg-impact-card {
  transform: none !important;
}

.pcg-impact-card:hover {
  transform: translateY(-12px) scale(1.015) !important;
}

/* CONTROLLED IMPACT CARD STAGGER OVERRIDE */

.pcg-home-impact .row {
  align-items: flex-start !important;
}

.pcg-home-impact .pcg-impact-card-left {
  transform: translateY(0px) !important;
}

.pcg-home-impact .pcg-impact-card-center {
  transform: translateY(22px) !important;
}

.pcg-home-impact .pcg-impact-card-right {
  transform: translateY(8px) !important;
}

.pcg-home-impact .pcg-impact-card:hover {
  transform: translateY(-12px) scale(1.015) !important;
}

@media (max-width: 991px) {
  .pcg-home-impact .pcg-impact-card-left, .pcg-home-impact .pcg-impact-card-center, .pcg-home-impact .pcg-impact-card-right {
    transform: none !important;
  }
}

/* IMPACT CARD STAGGER USING MARGIN */

.pcg-home-impact .pcg-impact-card-left {
  margin-top: 0 !important;
}

.pcg-home-impact .pcg-impact-card-center {
  margin-top: 34px !important;
}

.pcg-home-impact .pcg-impact-card-right {
  margin-top: 14px !important;
}

.pcg-home-impact .pcg-impact-card:hover {
  transform: translateY(-12px) scale(1.015) !important;
}

.pcg-home-impact {
  padding-bottom: 210px !important;
}

@media (max-width: 991px) {
  .pcg-home-impact .pcg-impact-card-left, .pcg-home-impact .pcg-impact-card-center, .pcg-home-impact .pcg-impact-card-right {
    margin-top: 0 !important;
  }
}

/* STAGGER IMPACT COLUMNS INSTEAD OF CARDS */

.pcg-home-impact .row > .col:nth-child(1), .pcg-home-impact .row > [class*="col"]:nth-child(1) {
  padding-top: 0 !important;
}

.pcg-home-impact .row > .col:nth-child(2), .pcg-home-impact .row > [class*="col"]:nth-child(2) {
  padding-top: 34px !important;
}

.pcg-home-impact .row > .col:nth-child(3), .pcg-home-impact .row > [class*="col"]:nth-child(3) {
  padding-top: 14px !important;
}

.pcg-home-impact {
  padding-bottom: 230px !important;
}

@media (max-width: 991px) {
  .pcg-home-impact .row > .col, .pcg-home-impact .row > [class*="col"] {
    padding-top: 0 !important;
  }
}

/* IMPACT CARD TEXT OVERRIDE */

.pcg-impact-card p {
  font-size: 18px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

/* FINAL IMPACT CARD TYPE OVERRIDE */

.pcg-home-impact .pcg-impact-card p {
  font-size: 21px !important;
  line-height: 1.28 !important;
  font-weight: 500 !important;
  color: #22395d !important;
  opacity: 1 !important;
}

.pcg-home-impact .pcg-impact-card h3, .pcg-home-impact .pcg-impact-title {
  font-size: 22px !important;
  line-height: 1.05 !important;
  margin-bottom: 26px !important;
  color: #0b1f3a !important;
}

/* IMPACT CARD FINAL TEXT SCALE */

.pcg-home-impact .pcg-impact-title, .pcg-home-impact .pcg-impact-card h3 {
  font-size: 28px !important;
  line-height: 1.08 !important;
  margin-bottom: 24px !important;
  color: #0b1f3a !important;
}

.pcg-home-impact .pcg-impact-text, .pcg-home-impact .pcg-impact-card p:not(.pcg-impact-number) {
  font-size: 22px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  color: #22395d !important;
}

.pcg-home-impact .pcg-impact-number {
  font-size: 14px !important;
  letter-spacing: 2px !important;
  font-weight: 800 !important;
  color: #6f90b7 !important;
}

/* FORCE IMPACT CARD TYPOGRAPHY — FINAL OVERRIDE */

.pcg-home-impact .pcg-impact-card {
  height: 340px !important;
  min-height: 340px !important;
  padding: 36px 38px !important;
}

.pcg-home-impact .pcg-impact-card h1, .pcg-home-impact .pcg-impact-card h2, .pcg-home-impact .pcg-impact-card h3, .pcg-home-impact .pcg-impact-card h4, .pcg-home-impact .pcg-impact-card h5, .pcg-home-impact .pcg-impact-card h6, .pcg-home-impact .pcg-impact-title {
  font-size: 30px !important;
  line-height: 1.08 !important;
  font-weight: 800 !important;
  color: #0b1f3a !important;
  margin-bottom: 22px !important;
}

.pcg-home-impact .pcg-impact-card p {
  font-size: 24px !important;
  line-height: 1.28 !important;
  font-weight: 500 !important;
  color: #22395d !important;
  opacity: 1 !important;
}

.pcg-home-impact .pcg-impact-card .pcg-impact-number, .pcg-home-impact .pcg-impact-card p:first-child {
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  color: #6f90b7 !important;
  margin-bottom: 34px !important;
}

/* ===== PCG HOME BENTO SECTION ===== */

.pcg-home-bento-section {
  position: relative;
  overflow: hidden;
  padding: 140px 0;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 34%), radial-gradient(circle at bottom left, rgba(111,144,183,0.10), transparent 30%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-home-bento-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-home-bento-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 850;
  margin-bottom: 18px;
}

.pcg-home-bento-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 70px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.055em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-home-bento-text {
  color: #c8d3e7;
  font-size: 20px;
  line-height: 1.75;
  max-width: 820px;
  margin-bottom: 76px;
}

.pcg-bento-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 26px;
}

.pcg-bento-card {
  position: relative;
  overflow: hidden;
  min-height: 310px;
  padding: 38px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.065);
  border: 1px solid rgba(255,255,255,0.11);
  box-shadow: 0 30px 90px rgba(0,0,0,0.28);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-bento-card:hover {
  transform: translateY(-10px);
  border-color: rgba(111,144,183,0.42);
  box-shadow: 0 42px 110px rgba(0,0,0,0.42), 0 0 70px rgba(111,144,183,0.20);
}

.pcg-bento-large {
  grid-row: span 2;
  min-height: 646px;
}

.pcg-bento-wide {
  grid-column: span 2;
  min-height: 280px;
}

.pcg-bento-kicker {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 34px;
}

.pcg-bento-card-title {
  color: #ffffff;
  font-size: clamp(30px, 3vw, 46px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 24px;
  max-width: 620px;
}

.pcg-bento-card-text {
  color: rgba(255,255,255,0.72);
  font-size: 18px;
  line-height: 1.75;
  max-width: 620px;
}

@media (max-width: 991px) {
  .pcg-bento-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-bento-large, .pcg-bento-wide {
    grid-column: auto;
    grid-row: auto;
    min-height: 320px;
  }
}

/* BENTO HEIGHT REBALANCE */

.pcg-bento-large {
  grid-row: span 1 !important;
  min-height: 360px !important;
}

.pcg-bento-card {
  min-height: 360px !important;
}

.pcg-bento-wide {
  grid-column: span 2 !important;
  min-height: 300px !important;
}

.pcg-system-dot.dot-5 {
}

/* ===== SAP / ERP SYSTEM GRAPHIC ===== */

.pcg-bento-large {
  position: relative !important;
}

.pcg-bento-system-graphic {
  position: absolute;
  left: 38px;
  right: 38px;
  bottom: 34px;
  height: 150px;
  border-radius: 24px;
  background: linear-gradient(rgba(111,144,183,0.10) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.10) 1px, transparent 1px), radial-gradient(circle at 20% 30%, rgba(111,144,183,0.20), transparent 26%), rgba(255,255,255,0.035);
  background-size: 34px 34px, 34px 34px, auto, auto;
  border: 1px solid rgba(111,144,183,0.16);
  overflow: hidden;
}

.pcg-bento-system-graphic::before {
  content: "";
  position: absolute;
  left: 12%;
  top: 48%;
  width: 76%;
  height: 2px;
  background: linear-gradient( 90deg, transparent, rgba(111,144,183,0.65), transparent );
  box-shadow: 0 0 28px rgba(111,144,183,0.28);
}

.pcg-bento-system-graphic::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 50%, rgba(111,144,183,0.14), transparent 34%);
  animation: pcgPulseGrid 3.6s ease-in-out infinite;
}

.pcg-system-dot {
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #6f90b7;
  box-shadow: 0 0 18px rgba(111,144,183,0.72), 0 0 42px rgba(111,144,183,0.32);
  z-index: 2;
}

.dot-1 {
  left: 12%;
  top: 45%;
}

.dot-2 {
  left: 31%;
  top: 24%;
}

.dot-3 {
  left: 50%;
  top: 45%;
}

.dot-4 {
  left: 68%;
  top: 64%;
}

.dot-5 {
  left: 84%;
  top: 38%;
}

@keyframes pcgPulseGrid {
  0%, 100% {
    opacity: 0.35;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.04);
  }
}

/* FIX SAP SYSTEM GRAPHIC POSITION */

.pcg-bento-large {
  min-height: 500px !important;
  padding-bottom: 230px !important;
}

.pcg-bento-large .pcg-bento-system-graphic {
  position: absolute !important;
  left: 38px !important;
  right: 38px !important;
  bottom: 38px !important;
  top: auto !important;
  height: 135px !important;
  opacity: 0.85 !important;
}

.pcg-bento-large .pcg-bento-card-text {
  position: relative !important;
  z-index: 5 !important;
  max-width: 620px !important;
}

/* ===== PCG AI CONTROL SECTION ===== */

.pcg-ai-control-section {
  position: relative;
  overflow: hidden;
  padding: 150px 0;
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.18), transparent 34%), radial-gradient(circle at 80% 70%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-ai-control-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-ai-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 20px;
}

.pcg-ai-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-bottom: 26px;
}

.pcg-ai-text {
  color: rgba(255,255,255,0.72);
  font-size: 19px;
  line-height: 1.75;
  margin-bottom: 34px;
  max-width: 560px;
}

.pcg-ai-button {
  display: inline-block;
  padding: 13px 18px;
  border-radius: 14px;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 800;
  box-shadow: 0 18px 46px rgba(111,144,183,0.28);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.pcg-ai-button:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 60px rgba(111,144,183,0.4);
}

.pcg-ai-panel {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  padding: 34px;
  min-height: 560px;
  background: linear-gradient(rgba(111,144,183,0.07) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.07) 1px, transparent 1px), radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 38%), rgba(255,255,255,0.055);
  background-size: 38px 38px, 38px 38px, auto, auto;
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 42px 120px rgba(0,0,0,0.42), 0 0 80px rgba(111,144,183,0.16);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.pcg-ai-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 50%, rgba(111,144,183,0.13), transparent 40%);
  animation: pcgAiPulse 4s ease-in-out infinite;
  pointer-events: none;
}

.pcg-ai-panel-top {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 28px;
}

.pcg-ai-panel-label, .pcg-ai-panel-status {
  color: #6f90b7;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2.5px;
  text-transform: uppercase;
}

.pcg-ai-panel-status {
  color: #9db7d4;
}

.pcg-ai-row {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,0.10);
}

.pcg-ai-row-name {
  color: rgba(255,255,255,0.82);
  font-size: 17px;
  font-weight: 700;
}

.pcg-ai-row-value {
  color: #9db7d4;
  font-size: 15px;
  font-weight: 900;
  text-align: right;
}

.pcg-ai-node-map {
  position: absolute;
  left: 34px;
  right: 34px;
  bottom: 34px;
  height: 160px;
  border-radius: 26px;
  border: 1px solid rgba(111,144,183,0.16);
  background: linear-gradient(rgba(111,144,183,0.10) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.10) 1px, transparent 1px), rgba(255,255,255,0.025);
  background-size: 30px 30px;
  overflow: hidden;
}

.pcg-ai-node-map::before {
  content: "";
  position: absolute;
  left: 12%;
  top: 50%;
  width: 76%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(111,144,183,0.72), transparent);
  box-shadow: 0 0 30px rgba(111,144,183,0.32);
}

.pcg-ai-node {
  position: absolute;
  width: 16px;
  height: 16px;
  background: #9db7d4;
  border-radius: 50%;
  box-shadow: 0 0 18px rgba(157,183,212,0.85), 0 0 48px rgba(111,144,183,0.38);
  animation: pcgNodeBlink 2.8s ease-in-out infinite;
}

.node-a {
  left: 12%;
  top: 46%;
}

.node-b {
  left: 35%;
  top: 28%;
  animation-delay: 0.4s;
}

.node-c {
  left: 58%;
  top: 58%;
  animation-delay: 0.8s;
}

.node-d {
  left: 82%;
  top: 42%;
  animation-delay: 1.2s;
}

@keyframes pcgAiPulse {
  0%, 100% {
    opacity: 0.35;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.04);
  }
}

@keyframes pcgNodeBlink {
  0%, 100% {
    opacity: 0.55;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.22);
  }
}

@media (max-width: 991px) {
  .pcg-ai-panel {
    min-height: 620px;
  }
}

@media (max-width: 991px) {
  .pcg-ai-panel-top, .pcg-ai-row {
    flex-direction: column;
  }
}

@media (max-width: 991px) {
  .pcg-ai-row-value {
    text-align: left;
  }
}

.pcg-ai-node.node-d {
}

.pcg-ai-node-map {
  position: absolute;
  left: 34px;
  right: 34px;
  bottom: 34px;
  height: 135px;
  border-radius: 26px;
  border: 1px solid rgba(111,144,183,0.16);
  background: linear-gradient(rgba(111,144,183,0.10) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.10) 1px, transparent 1px), rgba(255,255,255,0.025);
  background-size: 30px 30px;
  overflow: hidden;
  z-index: 2;
}

.pcg-ai-node-map::before {
  content: "";
  position: absolute;
  left: 12%;
  top: 50%;
  width: 76%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(111,144,183,0.72), transparent);
  box-shadow: 0 0 30px rgba(111,144,183,0.32);
}

.pcg-ai-node {
  position: absolute;
  width: 16px;
  height: 16px;
  background: #9db7d4;
  border-radius: 50%;
  box-shadow: 0 0 18px rgba(157,183,212,0.85), 0 0 48px rgba(111,144,183,0.38);
  animation: pcgNodeBlink 2.8s ease-in-out infinite;
}

.node-a {
  left: 12%;
  top: 46%;
}

.node-b {
  left: 35%;
  top: 28%;
  animation-delay: 0.4s;
}

.node-c {
  left: 58%;
  top: 58%;
  animation-delay: 0.8s;
}

.node-d {
  left: 82%;
  top: 42%;
  animation-delay: 1.2s;
}

@keyframes pcgNodeBlink {
  0%, 100% {
    opacity: 0.55;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.22);
  }
}

/* LOWER AI NODE MAP FOR CLEAN SPACING */

.pcg-ai-node-map {
  bottom: 26px !important;
  height: 118px !important;
}

.pcg-ai-row:last-of-type {
  margin-bottom: 28px !important;
}

/* ===== PCG INDUSTRIES SECTION ===== */

.pcg-industries-section {
  position: relative;
  overflow: hidden;
  padding: 145px 0;
  background: radial-gradient(circle at 15% 22%, rgba(111,144,183,0.18), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-industries-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-industries-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-industries-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-industries-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  max-width: 830px;
  margin-bottom: 70px;
}

.pcg-industries-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(240px, 1fr));
  gap: 22px;
  overflow-x: auto;
  padding: 10px 4px 36px;
  scroll-snap-type: x mandatory;
}

.pcg-industries-grid::-webkit-scrollbar {
  height: 8px;
}

.pcg-industries-grid::-webkit-scrollbar-thumb {
  background: rgba(111,144,183,0.45);
  border-radius: 999px;
}

.pcg-industry-card {
  position: relative;
  min-height: 390px;
  padding: 34px;
  border-radius: 30px;
  overflow: hidden;
  scroll-snap-align: start;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 42%), linear-gradient(145deg, #ffffff 0%, #eef4fa 100%);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 24px 70px rgba(11,31,58,0.12);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-industry-card::before {
  content: "";
  position: absolute;
  inset: auto 28px 28px 28px;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  opacity: 0.5;
}

.pcg-industry-card:hover {
  transform: translateY(-12px);
  border-color: rgba(111,144,183,0.32);
  box-shadow: 0 36px 95px rgba(11,31,58,0.18), 0 0 60px rgba(111,144,183,0.18);
}

.pcg-industry-number {
  color: #6f90b7;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-bottom: 42px;
}

.pcg-industry-title {
  color: #0b1f3a;
  font-size: 30px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 20px;
}

.pcg-industry-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.7;
}

@media (max-width: 1199px) {
  .pcg-industries-grid {
    grid-template-columns: repeat(5, 280px);
  }
}

@media (max-width: 767px) {
  .pcg-industries-section {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-industries-grid {
    grid-template-columns: repeat(5, 82vw);
  }
}

/* ===== PCG VISUAL + DIGITAL STRIP ===== */

.pcg-visual-strip-section {
  position: relative;
  overflow: hidden;
  padding: 150px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.20), transparent 30%), radial-gradient(circle at 85% 75%, rgba(111,144,183,0.12), transparent 32%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-visual-strip-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-visual-strip-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-visual-strip-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-visual-strip-text {
  color: rgba(255,255,255,0.72);
  font-size: 20px;
  line-height: 1.75;
  max-width: 840px;
  margin-bottom: 76px;
}

.pcg-visual-card-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

.pcg-visual-card {
  position: relative;
  min-height: 520px;
  border-radius: 34px;
  overflow: hidden;
  background: #071427;
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 34px 100px rgba(0,0,0,0.38), 0 0 70px rgba(111,144,183,0.12);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-visual-card:hover {
  transform: translateY(-12px);
  border-color: rgba(111,144,183,0.42);
  box-shadow: 0 46px 120px rgba(0,0,0,0.50), 0 0 90px rgba(111,144,183,0.22);
}

.pcg-visual-card img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  display: block;
  opacity: 0.72;
  transform: scale(1.01);
  transition: transform 0.75s ease, opacity 0.45s ease;
}

.pcg-visual-card:hover img {
  transform: scale(1.08);
  opacity: 0.88;
}

.pcg-visual-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7,20,39,0.10) 0%, rgba(7,20,39,0.92) 100%), linear-gradient(90deg, rgba(11,31,58,0.55), transparent);
  z-index: 1;
}

.pcg-visual-card-overlay {
  position: absolute;
  z-index: 2;
  left: 30px;
  right: 30px;
  bottom: 30px;
}

.pcg-visual-card-kicker {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-visual-card-title {
  color: #ffffff;
  font-size: 34px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.04em;
  margin-bottom: 18px;
}

.pcg-visual-card-copy {
  color: rgba(255,255,255,0.76);
  font-size: 16px;
  line-height: 1.65;
  margin-bottom: 24px;
}

.pcg-visual-card-link {
  display: inline-block;
  color: #ffffff !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 850;
  padding: 11px 15px;
  border-radius: 999px;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.20);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-visual-card-link:hover {
  transform: translateY(-3px);
  background: rgba(111,144,183,0.28);
  border-color: rgba(111,144,183,0.48);
}

@media (max-width: 991px) {
  .pcg-visual-card-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-visual-card {
    min-height: 460px;
  }
}

@media (max-width: 991px) {
  .pcg-visual-card img {
    min-height: 460px;
  }
}

/* VISUAL STRIP SERVICE CARD REBALANCE */

.pcg-visual-card {
  min-height: 390px !important;
  display: flex !important;
  align-items: flex-end !important;
  background: radial-gradient(circle at 20% 18%, rgba(111,144,183,0.20), transparent 30%), radial-gradient(circle at 80% 20%, rgba(157,183,212,0.12), transparent 28%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%) !important;
}

.pcg-visual-card img {
  display: none !important;
}

.pcg-visual-card::before {
  background: linear-gradient(180deg, rgba(7,20,39,0.05) 0%, rgba(7,20,39,0.68) 100%) !important;
}

.pcg-visual-card::after {
  content: "";
  position: absolute;
  top: 28px;
  left: 30px;
  width: 86px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  z-index: 2;
  box-shadow: 0 0 22px rgba(111,144,183,0.45);
}

.pcg-visual-card-overlay {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  padding: 34px !important;
  width: 100% !important;
}

.pcg-visual-card-title {
  font-size: 31px !important;
  line-height: 1.04 !important;
  margin-bottom: 20px !important;
}

.pcg-visual-card-copy {
  font-size: 17px !important;
  line-height: 1.6 !important;
  max-width: 330px !important;
}

.pcg-visual-card-link {
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 10px 15px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: 0 14px 34px rgba(111,144,183,0.24) !important;
}

/* VISUAL STRIP BUTTON SIZE LOCK */

.pcg-visual-card-link {
  width: 230px !important;
  height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 14px 34px rgba(111,144,183,0.24) !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease !important;
}

.pcg-visual-card-link:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 20px 48px rgba(111,144,183,0.36) !important;
}

/* ===== FINAL HARD OVERRIDE — VISUAL STRIP BUTTONS ===== */

.pcg-visual-strip-section a.pcg-visual-card-link, .pcg-visual-strip-section .pcg-visual-card-link, .pcg-visual-card .pcg-visual-card-link, .pcg-visual-card-overlay .pcg-visual-card-link, a.pcg-visual-card-link.btn, a.pcg-visual-card-link.btn-primary, a.pcg-visual-card-link {
  width: 230px !important;
  height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin-top: 4px !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  line-height: 1 !important;
  text-align: center !important;
  border-radius: 999px !important;
  background: linear-gradient( 135deg, rgba(111, 144, 183, 0.28), rgba(157, 183, 212, 0.14) ) !important;
  border: 1px solid rgba(157, 183, 212, 0.36) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.18), 0 12px 34px rgba(0,0,0,0.26), 0 0 28px rgba(111,144,183,0.16) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  outline: none !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-visual-strip-section a.pcg-visual-card-link:hover, .pcg-visual-strip-section .pcg-visual-card-link:hover, .pcg-visual-card .pcg-visual-card-link:hover, .pcg-visual-card-overlay .pcg-visual-card-link:hover, a.pcg-visual-card-link.btn:hover, a.pcg-visual-card-link.btn-primary:hover, a.pcg-visual-card-link:hover {
  color: #ffffff !important;
  transform: translateY(-3px) !important;
  background: linear-gradient( 135deg, rgba(111, 144, 183, 0.52), rgba(157, 183, 212, 0.26) ) !important;
  border-color: rgba(157,183,212,0.62) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.24), 0 18px 46px rgba(0,0,0,0.36), 0 0 46px rgba(111,144,183,0.30) !important;
}

.pcg-visual-strip-section a.pcg-visual-card-link:focus, .pcg-visual-card-overlay .pcg-visual-card-link:focus, a.pcg-visual-card-link.btn:focus, a.pcg-visual-card-link.btn-primary:focus {
  color: #ffffff !important;
  background: linear-gradient( 135deg, rgba(111, 144, 183, 0.42), rgba(157, 183, 212, 0.22) ) !important;
  border-color: rgba(157,183,212,0.58) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.24), 0 18px 46px rgba(0,0,0,0.30), 0 0 42px rgba(111,144,183,0.26) !important;
}

/* ===== TRUE FINAL VISUAL STRIP BUTTON OVERRIDE ===== */

.pcg-visual-strip-section .pcg-visual-pill-final, .pcg-visual-strip-section a.pcg-visual-pill-final, .pcg-visual-strip-section button.pcg-visual-pill-final {
  --bs-btn-bg: rgba(111,144,183,0.20) !important;
  --bs-btn-border-color: rgba(157,183,212,0.38) !important;
  --bs-btn-hover-bg: rgba(111,144,183,0.34) !important;
  --bs-btn-hover-border-color: rgba(157,183,212,0.62) !important;
  --bs-btn-active-bg: rgba(111,144,183,0.34) !important;
  --bs-btn-active-border-color: rgba(157,183,212,0.62) !important;
  --bs-btn-color: #ffffff !important;
  --bs-btn-hover-color: #ffffff !important;
  width: 230px !important;
  height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  background-color: rgba(111,144,183,0.20) !important;
  background-image: linear-gradient( 135deg, rgba(111,144,183,0.30), rgba(255,255,255,0.06) ) !important;
  border: 1px solid rgba(157,183,212,0.38) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.16), 0 12px 30px rgba(0,0,0,0.24), 0 0 24px rgba(111,144,183,0.12) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease, border-color 0.3s ease !important;
}

.pcg-visual-strip-section .pcg-visual-pill-final:hover, .pcg-visual-strip-section a.pcg-visual-pill-final:hover, .pcg-visual-strip-section button.pcg-visual-pill-final:hover {
  color: #ffffff !important;
  background-color: rgba(111,144,183,0.34) !important;
  background-image: linear-gradient( 135deg, rgba(111,144,183,0.46), rgba(255,255,255,0.10) ) !important;
  border-color: rgba(157,183,212,0.62) !important;
  transform: translateY(-3px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.22), 0 18px 42px rgba(0,0,0,0.32), 0 0 42px rgba(111,144,183,0.24) !important;
}

/* VISUAL STRIP BUTTON SHAPE MATCH */

.pcg-visual-strip-section .pcg-visual-pill-final, .pcg-visual-strip-section a.pcg-visual-pill-final, .pcg-visual-strip-section button.pcg-visual-pill-final, .pcg-visual-card-link {
  border-radius: 12px !important;
}

/* ===== PCG LEADERS SECTION ===== */

.pcg-leaders-section {
  position: relative;
  overflow: hidden;
  padding: 150px 0;
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.18), transparent 32%), radial-gradient(circle at 82% 72%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #0b1f3a 0%, #071427 100%);
}

.pcg-leaders-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-leaders-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-leaders-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 900px;
  margin-bottom: 24px;
}

.pcg-leaders-text {
  color: rgba(255,255,255,0.72);
  font-size: 20px;
  line-height: 1.75;
  max-width: 850px;
  margin-bottom: 76px;
}

.pcg-leaders-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}

.pcg-leader-card {
  position: relative;
  overflow: hidden;
  min-height: 390px;
  padding: 34px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.11);
  box-shadow: 0 30px 90px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.05);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease;
}

.pcg-leader-card::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 34px;
  width: 70px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.34);
}

.pcg-leader-card:hover {
  transform: translateY(-12px);
  border-color: rgba(111,144,183,0.42);
  box-shadow: 0 44px 115px rgba(0,0,0,0.46), 0 0 80px rgba(111,144,183,0.20);
}

.pcg-leader-number {
  color: #9db7d4;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-top: 40px;
  margin-bottom: 42px;
}

.pcg-leader-card-title {
  color: #ffffff;
  font-size: 28px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 22px;
}

.pcg-leader-card-text {
  color: rgba(255,255,255,0.72);
  font-size: 16px;
  line-height: 1.7;
}

.pcg-leaders-statement {
  margin-top: 42px;
  padding: 38px 42px;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(111,144,183,0.14), rgba(255,255,255,0.04));
  border: 1px solid rgba(157,183,212,0.22);
  box-shadow: 0 28px 80px rgba(0,0,0,0.30), 0 0 60px rgba(111,144,183,0.12);
}

.pcg-leaders-statement-text {
  color: #ffffff;
  font-size: clamp(25px, 3vw, 42px);
  line-height: 1.15;
  font-weight: 850;
  letter-spacing: -0.035em;
  max-width: 980px;
  margin: 0;
}

@media (max-width: 1199px) {
  .pcg-leaders-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .pcg-leaders-section {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-leaders-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-leader-card {
    min-height: 320px;
  }
}

@media (max-width: 767px) {
  .pcg-leaders-statement {
    padding: 30px;
  }
}

/* LEADERS STATEMENT FULL-WIDTH BANNER FIX */

.pcg-leaders-statement {
  width: 100% !important;
  margin-top: 52px !important;
  padding: 46px 54px !important;
  border-radius: 30px !important;
  background: radial-gradient(circle at 12% 50%, rgba(111,144,183,0.22), transparent 28%), linear-gradient(135deg, rgba(111,144,183,0.16), rgba(255,255,255,0.045)) !important;
  border: 1px solid rgba(157,183,212,0.26) !important;
  box-shadow: 0 34px 95px rgba(0,0,0,0.32), 0 0 70px rgba(111,144,183,0.16) !important;
}

.pcg-leaders-statement-text {
  max-width: 1050px !important;
  color: #ffffff !important;
  font-size: clamp(30px, 3.6vw, 48px) !important;
  line-height: 1.12 !important;
  font-weight: 850 !important;
  letter-spacing: -0.045em !important;
  margin: 0 !important;
}

.pcg-leaders-statement {
}

/* LEADERS STATEMENT TEXT SIZE FIX */

.pcg-leaders-statement {
  padding: 42px 52px !important;
  min-height: auto !important;
  overflow: visible !important;
}

.pcg-leaders-statement-text {
  font-size: clamp(26px, 3vw, 40px) !important;
  line-height: 1.16 !important;
  max-width: 1080px !important;
}

/* ===== ABOUT HERO ===== */

.pcg-about-hero {
  min-height: 88vh;
  display: flex;
  align-items: center;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.20), transparent 30%), radial-gradient(circle at 85% 70%, rgba(111,144,183,0.12), transparent 32%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-about-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: 0.6;
  pointer-events: none;
}

.pcg-about-hero::after {
  content: "";
  position: absolute;
  right: 8%;
  top: 22%;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(111,144,183,0.22), transparent 68%);
  filter: blur(6px);
  animation: pcgAboutPulse 4.6s ease-in-out infinite;
  pointer-events: none;
}

.pcg-about-hero .pcg-about-container {
  position: relative;
  z-index: 2;
}

.pcg-about-hero-title {
  color: #ffffff;
  max-width: 1040px;
}

.pcg-about-hero-text {
  color: rgba(255,255,255,0.74);
  margin-bottom: 38px;
}

.pcg-about-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.pcg-about-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 850;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-about-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 18px 46px rgba(111,144,183,0.28);
}

.pcg-about-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.18);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.pcg-about-btn:hover {
  transform: translateY(-3px);
}

.pcg-about-btn-primary:hover {
  box-shadow: 0 24px 60px rgba(111,144,183,0.42);
}

.pcg-about-btn-secondary:hover {
  background: rgba(111,144,183,0.16);
  border-color: rgba(157,183,212,0.42);
}

@keyframes pcgAboutPulse {
  0%, 100% {
    opacity: 0.38;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.08);
  }
}

@media (max-width: 767px) {
  .pcg-about-hero {
    min-height: auto;
    padding: 120px 0;
  }
}

@media (max-width: 767px) {
  .pcg-about-btn {
    width: 100%;
  }
}

/* ===== ABOUT STORY SECTION ===== */

.pcg-about-story {
  background: radial-gradient(circle at top left, rgba(111,144,183,0.16), transparent 32%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-about-story-title {
  color: #0b1f3a;
  font-size: clamp(40px, 5vw, 66px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-bottom: 26px;
}

.pcg-about-story-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 520px;
}

.pcg-about-timeline-panel {
  position: relative;
  padding: 34px;
  border-radius: 34px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 38%), rgba(255,255,255,0.72);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 34px 95px rgba(11,31,58,0.16), inset 0 1px 0 rgba(255,255,255,0.85);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.pcg-about-timeline-item {
  position: relative;
  padding: 28px 28px 28px 34px;
  border-radius: 24px;
  background: rgba(255,255,255,0.48);
  border: 1px solid rgba(11,31,58,0.06);
  margin-bottom: 18px;
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease;
}

.pcg-about-timeline-item:last-child {
  margin-bottom: 0;
}

.pcg-about-timeline-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 28px;
  bottom: 28px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #6f90b7, transparent);
}

.pcg-about-timeline-item:hover {
  transform: translateX(8px);
  border-color: rgba(111,144,183,0.28);
  box-shadow: 0 22px 55px rgba(11,31,58,0.12), 0 0 38px rgba(111,144,183,0.12);
}

.pcg-about-timeline-label {
  color: #6f90b7;
  font-size: 12px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 14px;
}

.pcg-about-timeline-title {
  color: #0b1f3a;
  font-size: 26px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 12px;
}

.pcg-about-timeline-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.65;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-about-story-text {
    max-width: 100%;
  }
}

@media (max-width: 991px) {
  .pcg-about-timeline-panel {
    padding: 24px;
  }
}

/* ===== ABOUT PROOF GRID ===== */

.pcg-about-proof {
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.18), transparent 32%), radial-gradient(circle at 82% 72%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #0b1f3a 0%, #071427 100%);
}

.pcg-about-proof-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-about-proof-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 920px;
  margin-bottom: 24px;
}

.pcg-about-proof-text {
  color: rgba(255,255,255,0.72);
  font-size: 20px;
  line-height: 1.75;
  max-width: 860px;
  margin-bottom: 76px;
}

.pcg-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.pcg-proof-card {
  position: relative;
  min-height: 330px;
  padding: 34px;
  border-radius: 30px;
  overflow: hidden;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.11);
  box-shadow: 0 30px 90px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.05);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease;
}

.pcg-proof-card::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 34px;
  width: 72px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.34);
}

.pcg-proof-card:hover {
  transform: translateY(-12px);
  border-color: rgba(111,144,183,0.42);
  box-shadow: 0 44px 115px rgba(0,0,0,0.46), 0 0 80px rgba(111,144,183,0.20);
}

.pcg-proof-number {
  color: #9db7d4;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-top: 40px;
  margin-bottom: 34px;
}

.pcg-proof-card-title {
  color: #ffffff;
  font-size: 27px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 18px;
}

.pcg-proof-card-text {
  color: rgba(255,255,255,0.72);
  font-size: 16px;
  line-height: 1.68;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-proof-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .pcg-about-proof {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-proof-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-proof-card {
    min-height: 290px;
  }
}

/* ABOUT PROOF SECTION TOP SPACING FIX */

.pcg-about-proof {
  padding-top: 140px !important;
}

/* ===== ABOUT DIFFERENT SECTION ===== */

.pcg-about-different {
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 84% 70%, rgba(111,144,183,0.10), transparent 32%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-about-different-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-about-different-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 70px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-bottom: 26px;
}

.pcg-about-different-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 540px;
}

.pcg-different-stack {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.pcg-different-item {
  position: relative;
  overflow: hidden;
  padding: 28px 30px;
  border-radius: 26px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.76);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 22px 60px rgba(11,31,58,0.10), inset 0 1px 0 rgba(255,255,255,0.85);
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.pcg-different-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 26px;
  bottom: 26px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #6f90b7, transparent);
}

.pcg-different-item:hover {
  transform: translateX(10px);
  border-color: rgba(111,144,183,0.32);
  box-shadow: 0 30px 80px rgba(11,31,58,0.16), 0 0 50px rgba(111,144,183,0.14);
}

.pcg-different-number {
  display: inline-block;
  color: #6f90b7;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-bottom: 14px;
}

.pcg-different-item-title {
  color: #0b1f3a;
  font-size: 25px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 10px;
}

.pcg-different-item-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-about-different-text {
    max-width: 100%;
  }
}

/* ABOUT SECTION SPACING FIX */

.pcg-about-proof {
  padding-bottom: 170px !important;
}

.pcg-about-different {
  padding-top: 170px !important;
  clear: both !important;
}

/* ABOUT DIFFERENT SECTION TRANSITION + BOTTOM SPACING */

.pcg-about-different {
  position: relative !important;
  padding-top: 190px !important;
  padding-bottom: 190px !important;
  background: linear-gradient(180deg, #071427 0%, #eef3f8 11%, #ffffff 100%) !important;
}

.pcg-about-different::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 220px;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.20), transparent 32%), linear-gradient(180deg, rgba(7,20,39,1) 0%, rgba(238,243,248,0.92) 72%, rgba(238,243,248,0) 100%);
  pointer-events: none;
  z-index: 0;
}

.pcg-about-different .pcg-about-container {
  position: relative;
  z-index: 2;
}

/* ===== ABOUT LEADERSHIP BRIDGE ===== */

.pcg-leadership-bridge {
  position: relative;
  overflow: hidden;
  padding: 135px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 75%, rgba(111,144,183,0.10), transparent 32%), linear-gradient(180deg, #ffffff 0%, #eef3f8 100%);
}

.pcg-leadership-card {
  position: relative;
  overflow: hidden;
  padding: 58px 64px;
  border-radius: 34px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 38%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.20);
  box-shadow: 0 34px 95px rgba(11,31,58,0.22), 0 0 70px rgba(111,144,183,0.14);
}

.pcg-leadership-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 38px 38px;
  opacity: 0.55;
  pointer-events: none;
}

.pcg-leadership-card::after {
  content: "";
  position: absolute;
  top: 34px;
  left: 64px;
  width: 86px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.42);
}

.pcg-leadership-eyebrow, .pcg-leadership-title, .pcg-leadership-text, .pcg-leadership-button {
  position: relative;
  z-index: 2;
}

.pcg-leadership-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: 28px;
  margin-bottom: 18px;
}

.pcg-leadership-title {
  color: #ffffff;
  font-size: clamp(38px, 4.8vw, 66px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 850px;
  margin-bottom: 24px;
}

.pcg-leadership-text {
  color: rgba(255,255,255,0.74);
  font-size: 20px;
  line-height: 1.7;
  max-width: 860px;
  margin-bottom: 34px;
}

.pcg-leadership-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 850;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 18px 46px rgba(111,144,183,0.28);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.pcg-leadership-button:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 60px rgba(111,144,183,0.42);
}

@media (max-width: 767px) {
  .pcg-leadership-bridge {
    padding: 100px 0;
  }
}

@media (max-width: 767px) {
  .pcg-leadership-card {
    padding: 46px 30px;
  }
}

@media (max-width: 767px) {
  .pcg-leadership-card::after {
    left: 30px;
  }
}

@media (max-width: 767px) {
  .pcg-leadership-button {
    width: 100%;
  }
}

/* ===== ABOUT FINAL CTA ===== */

.pcg-about-final-cta {
  position: relative;
  overflow: hidden;
  padding: 135px 0 150px;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 75%, rgba(111,144,183,0.10), transparent 32%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-about-final-card {
  position: relative;
  overflow: hidden;
  padding: 64px;
  border-radius: 36px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 38%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.22);
  box-shadow: 0 38px 110px rgba(11,31,58,0.24), 0 0 80px rgba(111,144,183,0.14);
}

.pcg-about-final-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 38px 38px;
  opacity: 0.55;
  pointer-events: none;
}

.pcg-about-final-card::after {
  content: "";
  position: absolute;
  top: 34px;
  left: 64px;
  width: 86px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.42);
}

.pcg-about-final-eyebrow, .pcg-about-final-title, .pcg-about-final-text, .pcg-about-final-button {
  position: relative;
  z-index: 2;
}

.pcg-about-final-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: 28px;
  margin-bottom: 18px;
}

.pcg-about-final-title {
  color: #ffffff;
  font-size: clamp(40px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 900px;
  margin-bottom: 24px;
}

.pcg-about-final-text {
  color: rgba(255,255,255,0.74);
  font-size: 20px;
  line-height: 1.7;
  max-width: 880px;
  margin-bottom: 36px;
}

.pcg-about-final-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 850;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 18px 46px rgba(111,144,183,0.28);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.pcg-about-final-button:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 60px rgba(111,144,183,0.42);
}

@media (max-width: 767px) {
  .pcg-about-final-cta {
    padding: 100px 0 120px;
  }
}

@media (max-width: 767px) {
  .pcg-about-final-card {
    padding: 46px 30px;
  }
}

@media (max-width: 767px) {
  .pcg-about-final-card::after {
    left: 30px;
  }
}

@media (max-width: 767px) {
  .pcg-about-final-button {
    width: 100%;
  }
}

/* ===== ABOUT COMMAND CTA ===== */

.pcg-about-command-cta {
  position: relative;
  overflow: hidden;
  padding: 90px 0 130px;
  background: radial-gradient(circle at 15% 50%, rgba(111,144,183,0.16), transparent 28%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-command-bar {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 34px;
  padding: 34px 38px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(7,20,39,0.96), rgba(11,31,58,0.94));
  border: 1px solid rgba(157,183,212,0.22);
  box-shadow: 0 30px 90px rgba(11,31,58,0.22), 0 0 65px rgba(111,144,183,0.14);
}

.pcg-command-bar::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 34px 34px;
  opacity: 0.48;
  pointer-events: none;
}

.pcg-command-bar::after {
  content: "";
  position: absolute;
  top: 0;
  left: 38px;
  width: 120px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.45);
}

.pcg-command-copy, .pcg-command-actions {
  position: relative;
  z-index: 2;
}

.pcg-command-eyebrow {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 12px;
}

.pcg-command-title {
  color: #ffffff;
  font-size: clamp(28px, 3.4vw, 46px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 12px;
}

.pcg-command-text {
  color: rgba(255,255,255,0.72);
  font-size: 17px;
  line-height: 1.55;
  max-width: 760px;
  margin-bottom: 0;
}

.pcg-command-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pcg-command-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 168px;
  min-height: 46px;
  padding: 0 16px;
  border-radius: 12px;
  text-decoration: none !important;
  font-size: 14px;
  font-weight: 850;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-command-button-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 16px 42px rgba(111,144,183,0.28);
}

.pcg-command-button-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.065);
  border: 1px solid rgba(157,183,212,0.28);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.pcg-command-button:hover {
  transform: translateY(-3px);
}

.pcg-command-button-primary:hover {
  box-shadow: 0 22px 55px rgba(111,144,183,0.42);
}

.pcg-command-button-secondary:hover {
  background: rgba(111,144,183,0.18);
  border-color: rgba(157,183,212,0.48);
}

@media (max-width: 991px) {
  .pcg-command-bar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-command-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .pcg-about-command-cta {
    padding: 80px 0 110px;
  }
}

@media (max-width: 767px) {
  .pcg-command-bar {
    padding: 34px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-command-button {
    width: 100%;
  }
}

/* REMOVE ABOUT DIFFERENT BLUR TRANSITION */

.pcg-about-different {
  background: linear-gradient(180deg, #eef3f8 0%, #ffffff 100%) !important;
  padding-top: 150px !important;
  padding-bottom: 190px !important;
}

.pcg-about-different::before {
  display: none !important;
  content: none !important;
}

/* ===== HOMEPAGE — REMOVE LEADER CARD NUMBERS ===== */

.pcg-leader-number {
  display: none !important;
}

/* ===== HOMEPAGE — LEADER CARD SPACING AFTER NUMBER REMOVAL ===== */

.pcg-leader-card {
  padding-top: 48px !important;
}

.pcg-leader-card h3, .pcg-leader-card h4, .pcg-leader-card h5 {
  margin-top: 0 !important;
}

/* ===== HOMEPAGE — REMOVE INDUSTRY / SECTOR CARD NUMBERS ===== */

.pcg-leader-number, .pcg-sector-number, .pcg-industry-number, .pcg-service-number {
  display: none !important;
}

/* ===== HOMEPAGE — INDUSTRY / SECTOR CARD SPACING AFTER NUMBER REMOVAL ===== */

.pcg-leader-card, .pcg-sector-card, .pcg-industry-card, .pcg-service-card {
  padding-top: 46px !important;
}

.pcg-leader-card h3, .pcg-leader-card h4, .pcg-leader-card h5, .pcg-sector-card h3, .pcg-sector-card h4, .pcg-sector-card h5, .pcg-industry-card h3, .pcg-industry-card h4, .pcg-industry-card h5, .pcg-service-card h3, .pcg-service-card h4, .pcg-service-card h5 {
  margin-top: 0 !important;
}

/* ===== HOMEPAGE — FIX NARROW SECTOR CARD TEXT WRAP ===== */

/* Smaller headings only for the narrow side cards */

.pcg-sector-card:not(:first-child) h3, .pcg-industry-card:not(:first-child) h3, .pcg-service-card:not(:first-child) h3 {
  font-size: clamp(30px, 2.6vw, 42px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.055em !important;
  max-width: 100% !important;
  margin-bottom: 18px !important;
}

/* Give text more breathing room inside the narrow cards */

.pcg-sector-card:not(:first-child), .pcg-industry-card:not(:first-child), .pcg-service-card:not(:first-child) {
  padding-left: 38px !important;
  padding-right: 38px !important;
}

/* ===== HOMEPAGE — AI CONTROL CARD TEXT FIX ===== */

.pcg-ai-control-title-fix {
  font-size: clamp(27px, 2.15vw, 36px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.045em !important;
  max-width: 100% !important;
  margin-bottom: 18px !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.pcg-ai-control-text-fix {
  font-size: 15px !important;
  line-height: 1.58 !important;
  max-width: 100% !important;
}

/* ===== HOMEPAGE — AI CONTROL TITLE FINAL BALANCE ===== */

.pcg-ai-control-title-fix {
  font-size: clamp(30px, 2.65vw, 44px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.055em !important;
  max-width: 100% !important;
  margin-bottom: 18px !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.pcg-ai-control-text-fix {
  font-size: 15.5px !important;
  line-height: 1.58 !important;
  max-width: 100% !important;
}

/* ===== HOMEPAGE — WHAT WE DO MOBILE FIX ===== */

@media (max-width: 767px) {
  .pcg-home-what-section {
    overflow-x: hidden !important;
  }
}

@media (max-width: 767px) {
  .pcg-home-what-container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767px) {
  .pcg-home-what-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .pcg-home-what-grid .row {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .pcg-home-what-grid .col, .pcg-home-what-grid [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-bottom: 20px !important;
  }
}

@media (max-width: 767px) {
  .pcg-home-what-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: auto !important;
    height: auto !important;
    padding: 34px 26px !important;
    border-radius: 26px !important;
  }
}

@media (max-width: 767px) {
  .pcg-home-what-card h1, .pcg-home-what-card h2, .pcg-home-what-card h3, .pcg-home-what-card h4, .pcg-home-what-card h5 {
    font-size: clamp(30px, 9vw, 44px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.055em !important;
    max-width: 100% !important;
    margin-bottom: 16px !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 767px) {
  .pcg-home-what-card p {
    font-size: 15.5px !important;
    line-height: 1.62 !important;
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

/* ===== POV HERO ===== */

.pcg-pov-hero {
  min-height: 88vh;
  display: flex;
  align-items: center;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.22), transparent 30%), radial-gradient(circle at 85% 70%, rgba(111,144,183,0.12), transparent 32%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-pov-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: 0.65;
  pointer-events: none;
}

.pcg-pov-hero::after {
  content: "";
  position: absolute;
  right: 8%;
  top: 22%;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(111,144,183,0.24), transparent 68%);
  filter: blur(6px);
  animation: pcgPovPulse 4.8s ease-in-out infinite;
  pointer-events: none;
}

.pcg-pov-hero .pcg-pov-container {
  position: relative;
  z-index: 2;
}

.pcg-pov-hero-title {
  color: #ffffff;
  max-width: 1080px;
}

.pcg-pov-hero-text {
  color: rgba(255,255,255,0.74);
  margin-bottom: 38px;
}

.pcg-pov-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.pcg-pov-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 850;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-pov-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 18px 46px rgba(111,144,183,0.28);
}

.pcg-pov-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.18);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.pcg-pov-btn:hover {
  transform: translateY(-3px);
}

.pcg-pov-btn-primary:hover {
  box-shadow: 0 24px 60px rgba(111,144,183,0.42);
}

.pcg-pov-btn-secondary:hover {
  background: rgba(111,144,183,0.16);
  border-color: rgba(157,183,212,0.42);
}

@keyframes pcgPovPulse {
  0%, 100% {
    opacity: 0.38;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.08);
  }
}

@media (max-width: 767px) {
  .pcg-pov-hero {
    min-height: auto;
    padding: 120px 0;
  }
}

@media (max-width: 767px) {
  .pcg-pov-btn {
    width: 100%;
  }
}

/* ===== POV HERO ===== */

.pcg-pov-hero {
  min-height: 88vh;
  display: flex;
  align-items: center;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.22), transparent 30%), radial-gradient(circle at 85% 70%, rgba(111,144,183,0.12), transparent 32%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-pov-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: 0.65;
  pointer-events: none;
}

.pcg-pov-hero::after {
  content: "";
  position: absolute;
  right: 8%;
  top: 22%;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(111,144,183,0.24), transparent 68%);
  filter: blur(6px);
  animation: pcgPovPulse 4.8s ease-in-out infinite;
  pointer-events: none;
}

.pcg-pov-hero .pcg-pov-container {
  position: relative;
  z-index: 2;
}

.pcg-pov-hero-title {
  color: #ffffff;
  max-width: 1080px;
}

.pcg-pov-hero-text {
  color: rgba(255,255,255,0.74);
  margin-bottom: 38px;
}

.pcg-pov-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.pcg-pov-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 850;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-pov-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 18px 46px rgba(111,144,183,0.28);
}

.pcg-pov-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.18);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.pcg-pov-btn:hover {
  transform: translateY(-3px);
}

.pcg-pov-btn-primary:hover {
  box-shadow: 0 24px 60px rgba(111,144,183,0.42);
}

.pcg-pov-btn-secondary:hover {
  background: rgba(111,144,183,0.16);
  border-color: rgba(157,183,212,0.42);
}

@keyframes pcgPovPulse {
  0%, 100% {
    opacity: 0.38;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.08);
  }
}

@media (max-width: 767px) {
  .pcg-pov-hero {
    min-height: auto;
    padding: 120px 0;
  }
}

@media (max-width: 767px) {
  .pcg-pov-btn {
    width: 100%;
  }
}

/* ===== POV HERO INTELLIGENCE PANEL ===== */

.pcg-pov-hero .row {
  align-items: center !important;
}

.pcg-pov-intel-panel {
  position: relative;
  overflow: hidden;
  min-height: 560px;
  padding: 34px;
  border-radius: 34px;
  background: linear-gradient(rgba(111,144,183,0.07) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.07) 1px, transparent 1px), radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 38%), rgba(255,255,255,0.055);
  background-size: 38px 38px, 38px 38px, auto, auto;
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 42px 120px rgba(0,0,0,0.42), 0 0 80px rgba(111,144,183,0.16);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.pcg-pov-intel-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 52% 50%, rgba(111,144,183,0.14), transparent 42%);
  animation: pcgPovPanelPulse 4s ease-in-out infinite;
  pointer-events: none;
}

.pcg-pov-panel-label, .pcg-pov-panel-title, .pcg-pov-signal-row, .pcg-pov-node-map {
  position: relative;
  z-index: 2;
}

.pcg-pov-panel-label {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 20px;
}

.pcg-pov-panel-title {
  color: #ffffff;
  font-size: clamp(30px, 3vw, 46px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 34px;
  max-width: 520px;
}

.pcg-pov-signal-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,0.10);
}

.pcg-pov-signal-name {
  color: rgba(255,255,255,0.84);
  font-size: 17px;
  font-weight: 750;
}

.pcg-pov-signal-status {
  color: #9db7d4;
  font-size: 14px;
  font-weight: 900;
  text-align: right;
}

.pcg-pov-node-map {
  position: absolute;
  left: 34px;
  right: 34px;
  bottom: 34px;
  height: 135px;
  border-radius: 26px;
  border: 1px solid rgba(111,144,183,0.16);
  background: linear-gradient(rgba(111,144,183,0.10) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.10) 1px, transparent 1px), rgba(255,255,255,0.025);
  background-size: 30px 30px;
  overflow: hidden;
}

.pcg-pov-node-map::before {
  content: "";
  position: absolute;
  left: 12%;
  top: 50%;
  width: 76%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(111,144,183,0.72), transparent);
  box-shadow: 0 0 30px rgba(111,144,183,0.32);
}

.pcg-pov-node {
  position: absolute;
  width: 16px;
  height: 16px;
  background: #9db7d4;
  border-radius: 50%;
  box-shadow: 0 0 18px rgba(157,183,212,0.85), 0 0 48px rgba(111,144,183,0.38);
  animation: pcgPovNodeBlink 2.8s ease-in-out infinite;
}

.pov-node-1 {
  left: 12%;
  top: 46%;
}

.pov-node-2 {
  left: 35%;
  top: 28%;
  animation-delay: 0.4s;
}

.pov-node-3 {
  left: 58%;
  top: 58%;
  animation-delay: 0.8s;
}

.pov-node-4 {
  left: 82%;
  top: 42%;
  animation-delay: 1.2s;
}

@keyframes pcgPovPanelPulse {
  0%, 100% {
    opacity: 0.35;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.04);
  }
}

@keyframes pcgPovNodeBlink {
  0%, 100% {
    opacity: 0.55;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.22);
  }
}

@media (max-width: 991px) {
  .pcg-pov-intel-panel {
    margin-top: 50px;
    min-height: 580px;
  }
}

@media (max-width: 991px) {
  .pcg-pov-signal-row {
    flex-direction: column;
    gap: 6px;
  }
}

@media (max-width: 991px) {
  .pcg-pov-signal-status {
    text-align: left;
  }
}

/* POV HERO PANEL NODE MAP POSITION FIX */

.pcg-pov-intel-panel {
  padding-bottom: 190px !important;
}

.pcg-pov-node-map {
  bottom: 34px !important;
  height: 115px !important;
}

.pcg-pov-signal-row:last-of-type {
  margin-bottom: 26px !important;
}

/* ===== POV HERO INTERACTION UPGRADES ===== */

.pcg-pov-intel-panel {
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease !important;
}

.pcg-pov-intel-panel:hover {
  transform: translateY(-8px) !important;
  border-color: rgba(111,144,183,0.38) !important;
  box-shadow: 0 52px 135px rgba(0,0,0,0.52), 0 0 100px rgba(111,144,183,0.24) !important;
}

.pcg-pov-signal-row {
  transition: transform 0.35s ease, background 0.35s ease, padding-left 0.35s ease, border-color 0.35s ease !important;
}

.pcg-pov-signal-row:hover {
  transform: translateX(8px) !important;
  padding-left: 12px !important;
  background: rgba(255,255,255,0.035) !important;
  border-color: rgba(157,183,212,0.24) !important;
}

.pcg-pov-signal-row:hover .pcg-pov-signal-name {
  color: #ffffff !important;
}

.pcg-pov-signal-row:hover .pcg-pov-signal-status {
  color: #ffffff !important;
  text-shadow: 0 0 18px rgba(157,183,212,0.45) !important;
}

.pcg-pov-node-map {
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease !important;
}

.pcg-pov-node-map:hover {
  transform: scale(1.02) !important;
  border-color: rgba(157,183,212,0.32) !important;
  box-shadow: inset 0 0 35px rgba(111,144,183,0.08), 0 0 42px rgba(111,144,183,0.14) !important;
}

/* ===== POV FEATURED INSIGHT ===== */

.pcg-pov-feature {
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.16), transparent 32%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-pov-feature-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-pov-feature-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-pov-feature-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 860px;
  margin-bottom: 76px;
}

.pcg-feature-panel {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 26px;
  align-items: stretch;
}

.pcg-feature-copy {
  position: relative;
  overflow: hidden;
  min-height: 520px;
  padding: 48px;
  border-radius: 36px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.24), transparent 42%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.20);
  box-shadow: 0 38px 110px rgba(11,31,58,0.22), 0 0 70px rgba(111,144,183,0.14);
}

.pcg-feature-copy::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(111,144,183,0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.055) 1px, transparent 1px);
  background-size: 38px 38px;
  opacity: 0.55;
  pointer-events: none;
}

.pcg-feature-copy::after {
  content: "";
  position: absolute;
  top: 36px;
  left: 48px;
  width: 90px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.42);
}

.pcg-feature-kicker, .pcg-feature-card-title, .pcg-feature-card-text, .pcg-feature-button {
  position: relative;
  z-index: 2;
}

.pcg-feature-kicker {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: 42px;
  margin-bottom: 22px;
}

.pcg-feature-card-title {
  color: #ffffff;
  font-size: clamp(36px, 4.4vw, 62px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 760px;
  margin-bottom: 26px;
}

.pcg-feature-card-text {
  color: rgba(255,255,255,0.74);
  font-size: 20px;
  line-height: 1.7;
  max-width: 720px;
  margin-bottom: 36px;
}

.pcg-feature-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 18px;
  border-radius: 12px;
  color: #ffffff !important;
  text-decoration: none !important;
  font-size: 15px;
  font-weight: 850;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 18px 46px rgba(111,144,183,0.28);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.pcg-feature-button:hover {
  transform: translateY(-3px);
  box-shadow: 0 24px 60px rgba(111,144,183,0.42);
}

.pcg-feature-risk-stack {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.pcg-feature-risk-item {
  position: relative;
  overflow: hidden;
  flex: 1;
  min-height: 88px;
  padding: 24px 26px;
  border-radius: 24px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.78);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 20px 60px rgba(11,31,58,0.10), inset 0 1px 0 rgba(255,255,255,0.85);
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

.pcg-feature-risk-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 24px;
  bottom: 24px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #6f90b7, transparent);
}

.pcg-feature-risk-item:hover {
  transform: translateX(8px);
  border-color: rgba(111,144,183,0.32);
  box-shadow: 0 28px 75px rgba(11,31,58,0.15), 0 0 45px rgba(111,144,183,0.14);
}

.pcg-feature-risk-number {
  display: inline-block;
  color: #6f90b7;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-bottom: 10px;
}

.pcg-feature-risk-text {
  color: #0b1f3a;
  font-size: 18px;
  line-height: 1.35;
  font-weight: 850;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-feature-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-feature-copy {
    min-height: auto;
  }
}

@media (max-width: 767px) {
  .pcg-pov-feature {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-feature-copy {
    padding: 42px 30px;
  }
}

@media (max-width: 767px) {
  .pcg-feature-copy::after {
    left: 30px;
  }
}

@media (max-width: 767px) {
  .pcg-feature-button {
    width: 100%;
  }
}

/* FEATURED POV SECTION SPACING FIX */

.pcg-pov-feature {
  padding-top: 175px !important;
  padding-bottom: 175px !important;
}

/* POV HERO SPACING FIX */

.pcg-pov-hero {
  padding-top: 135px !important;
  padding-bottom: 135px !important;
}

/* ===== POV INTELLIGENCE THEMES ===== */

.pcg-pov-themes {
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.18), transparent 30%), radial-gradient(circle at 82% 75%, rgba(111,144,183,0.10), transparent 32%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-pov-themes-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-pov-themes-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 960px;
  margin-bottom: 24px;
}

.pcg-pov-themes-text {
  color: rgba(255,255,255,0.72);
  font-size: 20px;
  line-height: 1.75;
  max-width: 840px;
  margin-bottom: 76px;
}

.pcg-themes-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 22px;
}

.pcg-theme-card {
  position: relative;
  overflow: hidden;
  min-height: 390px;
  padding: 34px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.11);
  box-shadow: 0 30px 90px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.05);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease;
}

.pcg-theme-card::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 34px;
  width: 70px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.34);
}

.pcg-theme-card:hover {
  transform: translateY(-12px);
  border-color: rgba(111,144,183,0.42);
  box-shadow: 0 44px 115px rgba(0,0,0,0.46), 0 0 80px rgba(111,144,183,0.20);
}

.pcg-theme-number {
  display: inline-block;
  color: #9db7d4;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-top: 42px;
  margin-bottom: 42px;
}

.pcg-theme-title {
  color: #ffffff;
  font-size: 28px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 20px;
}

.pcg-theme-text {
  color: rgba(255,255,255,0.72);
  font-size: 16px;
  line-height: 1.7;
  margin-bottom: 0;
}

@media (max-width: 1199px) {
  .pcg-themes-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .pcg-pov-themes {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-themes-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-theme-card {
    min-height: 320px;
  }
}

/* POV THEMES SECTION SPACING FIX */

.pcg-pov-themes {
  padding-top: 175px !important;
  padding-bottom: 175px !important;
}

/* ===== POV LATEST ARTICLE RAIL ===== */

.pcg-latest-pov-section {
  position: relative;
  overflow: hidden;
  padding: 160px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-latest-layout {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 60px;
  align-items: start;
}

.pcg-latest-intro {
  position: sticky;
  top: 110px;
}

.pcg-latest-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-latest-title {
  color: #0b1f3a;
  font-size: clamp(40px, 4.8vw, 68px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-bottom: 24px;
}

.pcg-latest-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.7;
  max-width: 520px;
}

.pcg-latest-article-list {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.pcg-article-row {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 26px;
  align-items: center;
  padding: 30px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.82);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 24px 70px rgba(11,31,58,0.12), inset 0 1px 0 rgba(255,255,255,0.85);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-article-row::before {
  content: "";
  position: absolute;
  left: 0;
  top: 24px;
  bottom: 24px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #6f90b7, transparent);
}

.pcg-article-row:hover {
  transform: translateX(10px);
  border-color: rgba(111,144,183,0.32);
  box-shadow: 0 34px 95px rgba(11,31,58,0.18), 0 0 60px rgba(111,144,183,0.18);
}

.pcg-article-number {
  color: #6f90b7;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 2px;
  min-width: 42px;
}

.pcg-article-kicker {
  color: #6f90b7;
  font-size: 12px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 12px;
}

.pcg-article-title {
  color: #0b1f3a;
  font-size: clamp(25px, 2.6vw, 38px);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 12px;
}

.pcg-article-summary {
  color: #425466;
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 0;
}

.pcg-article-link {
  width: 76px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  text-decoration: none !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  font-size: 14px;
  font-weight: 900;
  box-shadow: 0 14px 34px rgba(111,144,183,0.24);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.pcg-article-link:hover {
  transform: translateY(-3px);
  box-shadow: 0 20px 48px rgba(111,144,183,0.36);
}

@media (max-width: 991px) {
  .pcg-latest-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-latest-intro {
    position: relative;
    top: auto;
  }
}

@media (max-width: 991px) {
  .pcg-article-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-article-link {
    width: 100%;
  }
}

/* ===== POV EXECUTIVE QUESTIONS ===== */

.pcg-questions-section {
  position: relative;
  overflow: hidden;
  padding: 165px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #ffffff 0%, #eef3f8 100%);
}

.pcg-questions-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-questions-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 950px;
  margin-bottom: 24px;
}

.pcg-questions-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 820px;
  margin-bottom: 70px;
}

.pcg-question-stack {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.pcg-question-row {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 86px 1fr;
  gap: 26px;
  align-items: start;
  padding: 34px 38px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.84);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 24px 70px rgba(11,31,58,0.11), inset 0 1px 0 rgba(255,255,255,0.86);
  transition: transform 0.42s ease, box-shadow 0.42s ease, border-color 0.42s ease, background 0.42s ease;
}

.pcg-question-row::before {
  content: "";
  position: absolute;
  left: 0;
  top: 26px;
  bottom: 26px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #6f90b7, transparent);
}

.pcg-question-row:hover {
  transform: translateX(10px);
  border-color: rgba(111,144,183,0.34);
  box-shadow: 0 36px 95px rgba(11,31,58,0.18), 0 0 60px rgba(111,144,183,0.16);
}

.pcg-question-number {
  color: #6f90b7;
  font-size: 22px;
  font-weight: 900;
  letter-spacing: 2px;
}

.pcg-question-title {
  color: #0b1f3a;
  font-size: clamp(25px, 3vw, 40px);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 14px;
}

.pcg-question-answer {
  color: #425466;
  font-size: 18px;
  line-height: 1.65;
  max-width: 900px;
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .pcg-question-row {
    grid-template-columns: 1fr;
    padding: 30px;
  }
}

.pcg-pov-ticker-item {
}

/* ===== POV SIGNAL TICKER ===== */

.pcg-pov-ticker-section {
  overflow: hidden;
  background: #071427;
  border-top: 1px solid rgba(157,183,212,0.16);
  border-bottom: 1px solid rgba(157,183,212,0.16);
}

.pcg-pov-ticker {
  overflow: hidden;
  white-space: nowrap;
  padding: 20px 0;
}

.pcg-pov-ticker-track {
  display: inline-flex;
  align-items: center;
  gap: 34px;
  animation: pcgTickerMove 32s linear infinite;
}

.pcg-pov-ticker-item {
  color: rgba(255,255,255,0.72);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 3px;
  text-transform: uppercase;
}

.pcg-pov-ticker-item::after {
  content: "•";
  color: #6f90b7;
  margin-left: 34px;
}

@keyframes pcgTickerMove {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

/* ===== PCG SERVICES PAGE ===== */

:root {
  --pcg-navy: #0b1f3a;
  --pcg-deep: #071427;
  --pcg-black: #020814;
  --pcg-blue: #6f90b7;
  --pcg-blue-soft: #9db7d4;
  --pcg-ice: #eef3f8;
  --pcg-white: #ffffff;
  --pcg-muted: #b9c4d3;
  --pcg-charcoal: #1f2937;
}

.pcg-services-section {
  position: relative;
  overflow: hidden;
}

.pcg-services-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-services-eyebrow {
  color: var(--pcg-blue-soft);
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-services-title {
  font-size: clamp(46px, 6vw, 88px);
  line-height: 0.95;
  font-weight: 900;
  letter-spacing: -0.065em;
  margin-bottom: 28px;
}

.pcg-services-text {
  font-size: 20px;
  line-height: 1.75;
  max-width: 850px;
}

/* ===== SERVICES HERO ===== */

.pcg-services-hero {
  min-height: 92vh;
  display: flex;
  align-items: center;
  padding: 150px 0 135px;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.22), transparent 30%), radial-gradient(circle at 85% 70%, rgba(111,144,183,0.12), transparent 32%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-services-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 24% 42%, rgba(111,144,183,0.11), transparent 34%), radial-gradient(circle at 78% 40%, rgba(111,144,183,0.10), transparent 38%), linear-gradient(90deg, rgba(7,20,39,0.18), transparent 45%, rgba(7,20,39,0.18));
  pointer-events: none;
}

.pcg-services-hero::after {
  content: "";
  position: absolute;
  right: 7%;
  top: 18%;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(111,144,183,0.26), transparent 68%);
  filter: blur(8px);
  animation: pcgServicesPulse 4.8s ease-in-out infinite;
  pointer-events: none;
}

.pcg-services-hero .pcg-services-container {
  position: relative;
  z-index: 2;
}

.pcg-services-hero-title {
  color: #ffffff;
  max-width: 860px;
}

.pcg-services-hero-text {
  color: rgba(255,255,255,0.76);
  margin-bottom: 38px;
}

.pcg-services-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

.pcg-services-btn, a.pcg-services-btn, button.pcg-services-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-services-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  border: 1px solid rgba(157,183,212,0.24) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.28) !important;
}

.pcg-services-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.065) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-services-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-services-btn-primary:hover {
  box-shadow: 0 24px 60px rgba(111,144,183,0.42) !important;
}

.pcg-services-btn-secondary:hover {
  background: rgba(111,144,183,0.16) !important;
  border-color: rgba(157,183,212,0.42) !important;
}

@keyframes pcgServicesPulse {
  0%, 100% {
    opacity: 0.38;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.08);
  }
}

@media (max-width: 767px) {
  .pcg-services-hero {
    min-height: auto;
    padding: 120px 0;
  }
}

@media (max-width: 767px) {
  .pcg-services-btn {
    width: 100%;
  }
}

/* ===== SERVICES COMMAND PANEL ===== */

.pcg-services-command-panel {
  position: relative;
  overflow: hidden;
  min-height: 590px;
  padding: 34px 34px 170px;
  border-radius: 34px;
  background: linear-gradient(rgba(111,144,183,0.07) 1px, transparent 1px), linear-gradient(90deg, rgba(111,144,183,0.07) 1px, transparent 1px), radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 38%), rgba(255,255,255,0.055);
  background-size: 38px 38px, 38px 38px, auto, auto;
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 42px 120px rgba(0,0,0,0.42), 0 0 80px rgba(111,144,183,0.16);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-services-command-panel:hover {
  transform: translateY(-8px);
  border-color: rgba(111,144,183,0.38);
  box-shadow: 0 52px 135px rgba(0,0,0,0.52), 0 0 100px rgba(111,144,183,0.24);
}

.pcg-services-command-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 52% 50%, rgba(111,144,183,0.14), transparent 42%);
  animation: pcgServicesPanelPulse 4s ease-in-out infinite;
  pointer-events: none;
}

.pcg-services-panel-label, .pcg-services-panel-title, .pcg-services-panel-row, .pcg-services-node-map {
  position: relative;
  z-index: 2;
}

.pcg-services-panel-label {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 20px;
}

.pcg-services-panel-title {
  color: #ffffff;
  font-size: clamp(30px, 3vw, 46px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 34px;
  max-width: 520px;
}

.pcg-services-panel-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,0.10);
  transition: transform 0.35s ease, background 0.35s ease, padding-left 0.35s ease, border-color 0.35s ease;
}

.pcg-services-panel-row:hover {
  transform: translateX(8px);
  padding-left: 12px;
  background: rgba(255,255,255,0.035);
  border-color: rgba(157,183,212,0.24);
}

.pcg-services-panel-name {
  color: rgba(255,255,255,0.84);
  font-size: 17px;
  font-weight: 750;
}

.pcg-services-panel-status {
  color: #9db7d4;
  font-size: 14px;
  font-weight: 900;
  text-align: right;
}

@keyframes pcgServicesPanelPulse {
  0%, 100% {
    opacity: 0.35;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.04);
  }
}

@media (max-width: 991px) {
  .pcg-services-command-panel {
    margin-top: 50px;
    min-height: 620px;
  }
}

@media (max-width: 991px) {
  .pcg-services-panel-row {
    flex-direction: column;
    gap: 6px;
  }
}

@media (max-width: 991px) {
  .pcg-services-panel-status {
    text-align: left;
  }
}

/* ===== SERVICES STACK HERO ===== */

.pcg-service-stack {
  position: relative;
  min-height: 620px;
  padding: 34px;
  border-radius: 34px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 42%), rgba(255,255,255,0.045);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 42px 120px rgba(0,0,0,0.36), 0 0 80px rgba(111,144,183,0.14);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.pcg-service-stack::before {
  content: "";
  position: absolute;
  top: 32px;
  left: 34px;
  width: 92px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.42);
}

.pcg-service-stack-label {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: 42px;
  margin-bottom: 18px;
}

.pcg-service-stack-title {
  color: #ffffff;
  font-size: clamp(30px, 3vw, 46px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 34px;
  max-width: 520px;
}

.pcg-service-layer {
  position: relative;
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 18px;
  align-items: start;
  padding: 22px 24px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255,255,255,0.10), rgba(255,255,255,0.045));
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 20px 55px rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.06);
  transition: transform 0.42s ease, border-color 0.42s ease, box-shadow 0.42s ease, background 0.42s ease;
}

.pcg-service-layer + .pcg-service-layer {
  margin-top: -10px;
}

.pcg-service-layer:nth-of-type(3) {
  margin-left: 28px;
}

.pcg-service-layer:nth-of-type(4) {
  margin-left: 56px;
}

.pcg-service-layer:nth-of-type(5) {
  margin-left: 84px;
}

.pcg-service-layer:nth-of-type(6) {
  margin-left: 112px;
}

.pcg-service-layer:hover {
  transform: translateX(-10px) translateY(-4px);
  border-color: rgba(157,183,212,0.38);
  background: linear-gradient(135deg, rgba(111,144,183,0.18), rgba(255,255,255,0.07));
  box-shadow: 0 32px 85px rgba(0,0,0,0.34), 0 0 65px rgba(111,144,183,0.18);
}

.pcg-service-layer-number {
  color: #9db7d4;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-top: 3px;
}

.pcg-service-layer-title {
  color: #ffffff;
  font-size: 24px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 8px;
}

.pcg-service-layer-text {
  color: rgba(255,255,255,0.72);
  font-size: 15px;
  line-height: 1.55;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-service-stack {
    margin-top: 50px;
  }
}

@media (max-width: 767px) {
  .pcg-service-stack {
    min-height: auto;
    padding: 30px 24px;
  }
}

@media (max-width: 767px) {
  .pcg-service-layer, .pcg-service-layer:nth-of-type(3), .pcg-service-layer:nth-of-type(4), .pcg-service-layer:nth-of-type(5), .pcg-service-layer:nth-of-type(6) {
    margin-left: 0;
  }
}

@media (max-width: 767px) {
  .pcg-service-layer + .pcg-service-layer {
    margin-top: 14px;
  }
}

@media (max-width: 767px) {
  .pcg-service-layer {
    grid-template-columns: 1fr;
  }
}

/* SERVICES HERO COLUMN SPACING FIX */

.pcg-services-hero .row {
  column-gap: 64px !important;
}

.pcg-services-hero .row > [class*="col-"] {
  flex: 1 1 0 !important;
}

.pcg-services-hero-title {
  max-width: 680px !important;
}

.pcg-services-hero-text {
  max-width: 620px !important;
}

/* ===== SERVICES CORE CAPABILITIES BENTO ===== */

.pcg-services-bento {
  padding: 175px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-services-bento-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-services-bento-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 1040px;
  margin-bottom: 24px;
}

.pcg-services-bento-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 900px;
  margin-bottom: 78px;
}

.pcg-bento-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: minmax(240px, auto);
  gap: 22px;
}

.pcg-bento-card {
  position: relative;
  overflow: hidden;
  padding: 34px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.88);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 26px 80px rgba(11,31,58,0.12), inset 0 1px 0 rgba(255,255,255,0.9);
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease, background 0.45s ease;
}

.pcg-bento-card::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 34px;
  width: 72px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.32);
}

.pcg-bento-card:hover {
  transform: translateY(-10px);
  border-color: rgba(111,144,183,0.34);
  box-shadow: 0 38px 105px rgba(11,31,58,0.18), 0 0 55px rgba(111,144,183,0.16);
}

.pcg-bento-large {
  grid-column: span 2;
  grid-row: span 2;
  min-height: 510px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 42%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border-color: rgba(157,183,212,0.22);
}

.pcg-bento-wide {
  grid-column: span 2;
}

.pcg-bento-kicker {
  display: inline-block;
  color: #6f90b7;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  margin-top: 48px;
  margin-bottom: 26px;
}

.pcg-bento-large .pcg-bento-kicker {
  color: #9db7d4;
}

.pcg-bento-card-title {
  color: #0b1f3a;
  font-size: clamp(27px, 3vw, 42px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 16px;
}

.pcg-bento-large .pcg-bento-card-title {
  color: #ffffff;
  font-size: clamp(38px, 4.5vw, 62px);
  line-height: 0.98;
}

.pcg-bento-card-text {
  color: #425466;
  font-size: 17px;
  line-height: 1.68;
  margin-bottom: 0;
}

.pcg-bento-large .pcg-bento-card-text {
  color: rgba(255,255,255,0.74);
  font-size: 20px;
  line-height: 1.72;
  max-width: 680px;
}

@media (max-width: 991px) {
  .pcg-bento-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 991px) {
  .pcg-bento-large, .pcg-bento-wide {
    grid-column: span 2;
  }
}

@media (max-width: 767px) {
  .pcg-services-bento {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-bento-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-bento-large, .pcg-bento-wide {
    grid-column: span 1;
  }
}

@media (max-width: 767px) {
  .pcg-bento-large {
    min-height: auto;
  }
}

@media (max-width: 767px) {
  .pcg-bento-card {
    padding: 32px 28px;
  }
}

/* ===== SERVICES PROCESS RUNWAY ===== */

.pcg-services-process {
  padding: 175px 0;
  background: radial-gradient(circle at 84% 20%, rgba(111,144,183,0.14), transparent 30%), linear-gradient(180deg, #ffffff 0%, #eef3f8 100%);
}

.pcg-process-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-process-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-process-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 880px;
  margin-bottom: 86px;
}

.pcg-process-runway {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 18px;
}

.pcg-process-runway::before {
  content: "";
  position: absolute;
  left: 6%;
  right: 6%;
  top: 34px;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(111,144,183,0.72), transparent);
  box-shadow: 0 0 28px rgba(111,144,183,0.24);
}

.pcg-process-step {
  position: relative;
  padding-top: 76px;
  transition: transform 0.4s ease;
}

.pcg-process-step::before {
  content: "";
  position: absolute;
  top: 25px;
  left: 0;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  background: #6f90b7;
  box-shadow: 0 0 18px rgba(111,144,183,0.75), 0 0 48px rgba(111,144,183,0.30);
  z-index: 2;
}

.pcg-process-step:hover {
  transform: translateY(-8px);
}

.pcg-process-step-number {
  color: #6f90b7;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  display: inline-block;
  margin-bottom: 18px;
}

.pcg-process-step-title {
  color: #0b1f3a;
  font-size: 28px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.04em;
  margin-bottom: 14px;
}

.pcg-process-step-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.65;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-process-runway {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

@media (max-width: 991px) {
  .pcg-process-runway::before {
    left: 9px;
    right: auto;
    top: 0;
    bottom: 0;
    width: 2px;
    height: auto;
    background: linear-gradient(180deg, transparent, rgba(111,144,183,0.72), transparent);
  }
}

@media (max-width: 991px) {
  .pcg-process-step {
    padding-top: 0;
    padding-left: 48px;
  }
}

@media (max-width: 991px) {
  .pcg-process-step::before {
    top: 4px;
    left: 0;
  }
}

@media (max-width: 767px) {
  .pcg-services-process {
    padding: 115px 0;
  }
}

/* SERVICES PROCESS SECTION SPACING + READABILITY FIX */

.pcg-services-process {
  padding-top: 135px !important;
  padding-bottom: 135px !important;
}

.pcg-process-text {
  color: #425466 !important;
  opacity: 1 !important;
  font-weight: 650 !important;
  margin-bottom: 48px !important;
}

.pcg-process-title {
  color: #0b1f3a !important;
  opacity: 1 !important;
  margin-bottom: 22px !important;
}

.pcg-process-eyebrow {
  color: #6f90b7 !important;
  opacity: 1 !important;
}

/* SERVICES PROCESS RUNWAY VERTICAL TIGHTENING */

.pcg-process-runway {
  margin-top: 0 !important;
}

.pcg-process-step {
  padding-top: 54px !important;
}

.pcg-process-runway::before {
  top: 24px !important;
}

.pcg-process-step::before {
  top: 15px !important;
}

/* ===== SERVICES ENTERPRISE SYSTEMS SPOTLIGHT ===== */

.pcg-services-systems {
  padding: 175px 0;
  background: radial-gradient(circle at 82% 24%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-systems-panel {
  position: relative;
  overflow: hidden;
  min-height: 560px;
  padding: 42px;
  border-radius: 36px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.24), transparent 42%), rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 42px 120px rgba(0,0,0,0.38), 0 0 80px rgba(111,144,183,0.16);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.pcg-systems-panel::before {
  content: "";
  position: absolute;
  top: 34px;
  left: 42px;
  width: 86px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.42);
}

.pcg-systems-panel-label {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: 52px;
  margin-bottom: 20px;
}

.pcg-systems-panel-title {
  color: #ffffff;
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-bottom: 24px;
}

.pcg-systems-panel-text {
  color: rgba(255,255,255,0.74);
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 0;
}

.pcg-systems-meter {
  position: absolute;
  left: 42px;
  right: 42px;
  bottom: 42px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.pcg-systems-meter-line {
  height: 10px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  overflow: hidden;
  position: relative;
}

.pcg-systems-meter-line::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 70%;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, #9db7d4);
  box-shadow: 0 0 24px rgba(111,144,183,0.35);
  animation: pcgMeterPulse 3.2s ease-in-out infinite;
}

.line-1::before {
  width: 88%;
}

.line-2::before {
  width: 76%;
  animation-delay: 0.3s;
}

.line-3::before {
  width: 92%;
  animation-delay: 0.6s;
}

.line-4::before {
  width: 68%;
  animation-delay: 0.9s;
}

.pcg-systems-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-systems-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-bottom: 24px;
}

.pcg-systems-text {
  color: rgba(255,255,255,0.74);
  font-size: 20px;
  line-height: 1.75;
  max-width: 860px;
  margin-bottom: 44px;
}

.pcg-systems-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.pcg-systems-list-item {
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 16px;
  align-items: start;
  padding: 20px;
  border-radius: 22px;
  background: rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.10);
  transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

.pcg-systems-list-item:hover {
  transform: translateY(-6px);
  background: rgba(111,144,183,0.13);
  border-color: rgba(157,183,212,0.32);
  box-shadow: 0 22px 60px rgba(0,0,0,0.24);
}

.pcg-systems-list-number {
  color: #9db7d4;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
}

.pcg-systems-list-text {
  color: rgba(255,255,255,0.78);
  font-size: 16px;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 0;
}

@keyframes pcgMeterPulse {
  0%, 100% {
    opacity: 0.68;
    transform: translateX(0);
  }
  50% {
    opacity: 1;
    transform: translateX(10px);
  }
}

@media (max-width: 991px) {
  .pcg-systems-panel {
    margin-bottom: 46px;
  }
}

@media (max-width: 991px) {
  .pcg-systems-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-services-systems {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-systems-panel {
    min-height: 520px;
    padding: 34px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-systems-panel::before {
    left: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-systems-meter {
    left: 28px;
    right: 28px;
  }
}

/* ENTERPRISE SYSTEMS PANEL METER POSITION FIX */

.pcg-systems-panel {
  min-height: 640px !important;
  padding-bottom: 150px !important;
}

.pcg-systems-panel-text {
  max-width: 92% !important;
  margin-bottom: 70px !important;
}

.pcg-systems-meter {
  bottom: 44px !important;
}

.pcg-systems-meter-line {
  height: 8px !important;
}

/* ===== SERVICES DIGITAL + VISUAL BRIDGE ===== */

.pcg-services-digital {
  padding: 175px 0;
  background: radial-gradient(circle at 16% 22%, rgba(111,144,183,0.14), transparent 30%), radial-gradient(circle at 86% 78%, rgba(111,144,183,0.10), transparent 34%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-digital-layout {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 54px;
  align-items: center;
}

.pcg-digital-copy {
  position: sticky;
  top: 120px;
}

.pcg-digital-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-digital-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.06em;
  margin-bottom: 24px;
}

.pcg-digital-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 680px;
  margin-bottom: 34px;
}

.pcg-digital-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

.pcg-digital-btn, a.pcg-digital-btn, button.pcg-digital-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-digital-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  border: 1px solid rgba(157,183,212,0.24) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.24) !important;
}

.pcg-digital-btn-secondary {
  color: #0b1f3a !important;
  background: rgba(255,255,255,0.72) !important;
  border: 1px solid rgba(11,31,58,0.10) !important;
  box-shadow: 0 16px 38px rgba(11,31,58,0.08) !important;
}

.pcg-digital-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-digital-btn-primary:hover {
  box-shadow: 0 24px 60px rgba(111,144,183,0.38) !important;
}

.pcg-digital-btn-secondary:hover {
  border-color: rgba(111,144,183,0.36) !important;
  box-shadow: 0 22px 52px rgba(11,31,58,0.12) !important;
}

.pcg-digital-showcase {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}

.pcg-digital-tile {
  position: relative;
  overflow: hidden;
  min-height: 245px;
  padding: 30px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.88);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 26px 80px rgba(11,31,58,0.11), inset 0 1px 0 rgba(255,255,255,0.92);
  transition: transform 0.42s ease, border-color 0.42s ease, box-shadow 0.42s ease;
}

.pcg-digital-tile::before {
  content: "";
  position: absolute;
  top: 26px;
  left: 30px;
  width: 68px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 22px rgba(111,144,183,0.30);
}

.pcg-digital-tile:hover {
  transform: translateY(-8px);
  border-color: rgba(111,144,183,0.32);
  box-shadow: 0 36px 100px rgba(11,31,58,0.16), 0 0 58px rgba(111,144,183,0.14);
}

.pcg-digital-tile-large {
  min-height: 360px;
  grid-row: span 2;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.25), transparent 42%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border-color: rgba(157,183,212,0.24);
}

.pcg-digital-tile-wide {
  grid-column: span 2;
  min-height: 220px;
}

.pcg-digital-tile-number {
  display: inline-block;
  color: #6f90b7;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-top: 44px;
  margin-bottom: 28px;
}

.pcg-digital-tile-large .pcg-digital-tile-number {
  color: #9db7d4;
}

.pcg-digital-tile-title {
  color: #0b1f3a;
  font-size: clamp(26px, 3vw, 40px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 14px;
}

.pcg-digital-tile-large .pcg-digital-tile-title {
  color: #ffffff;
  font-size: clamp(34px, 4vw, 56px);
  line-height: 0.98;
}

.pcg-digital-tile-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.65;
  margin-bottom: 0;
}

.pcg-digital-tile-large .pcg-digital-tile-text {
  color: rgba(255,255,255,0.74);
  font-size: 18px;
  line-height: 1.7;
}

@media (max-width: 991px) {
  .pcg-digital-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-digital-copy {
    position: relative;
    top: auto;
  }
}

@media (max-width: 767px) {
  .pcg-services-digital {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-digital-showcase {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-digital-tile-large, .pcg-digital-tile-wide {
    grid-column: span 1;
    grid-row: span 1;
    min-height: auto;
  }
}

@media (max-width: 767px) {
  .pcg-digital-tile {
    padding: 30px 26px;
  }
}

@media (max-width: 767px) {
  .pcg-digital-btn {
    width: 100% !important;
  }
}

/* ===== SERVICES FINAL CTA ===== */

.pcg-services-final-cta {
  padding: 105px 0 150px;
  background: radial-gradient(circle at 16% 50%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #ffffff 0%, #eef3f8 100%);
}

.pcg-services-final-bar {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 36px;
  align-items: center;
  padding: 42px;
  border-radius: 32px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.24), transparent 42%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.24);
  box-shadow: 0 34px 100px rgba(11,31,58,0.24), 0 0 70px rgba(111,144,183,0.14);
}

.pcg-services-final-bar::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 42px;
  width: 116px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.42);
}

.pcg-services-final-copy, .pcg-services-final-actions {
  position: relative;
  z-index: 2;
}

.pcg-services-final-copy {
  padding-top: 34px;
}

.pcg-services-final-eyebrow {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 14px;
}

.pcg-services-final-title {
  color: #ffffff;
  font-size: clamp(32px, 4vw, 54px);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.05em;
  margin-bottom: 14px;
  max-width: 760px;
}

.pcg-services-final-text {
  color: rgba(255,255,255,0.74);
  font-size: 17px;
  line-height: 1.6;
  max-width: 820px;
  margin-bottom: 0;
}

.pcg-services-final-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pcg-services-final-btn, a.pcg-services-final-btn, button.pcg-services-final-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 165px !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-services-final-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  border: 1px solid rgba(157,183,212,0.24) !important;
  box-shadow: 0 16px 42px rgba(111,144,183,0.28) !important;
}

.pcg-services-final-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.065) !important;
  border: 1px solid rgba(157,183,212,0.28) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-services-final-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-services-final-btn-primary:hover {
  box-shadow: 0 22px 55px rgba(111,144,183,0.42) !important;
}

.pcg-services-final-btn-secondary:hover {
  background: rgba(111,144,183,0.18) !important;
  border-color: rgba(157,183,212,0.48) !important;
}

@media (max-width: 991px) {
  .pcg-services-final-bar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-services-final-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .pcg-services-final-cta {
    padding: 80px 0 115px;
  }
}

@media (max-width: 767px) {
  .pcg-services-final-bar {
    padding: 36px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-services-final-bar::before {
    left: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-services-final-btn {
    width: 100% !important;
  }
}

/* SERVICES FINAL CTA SPACING POLISH */

.pcg-services-final-cta {
  padding-top: 65px !important;
}

.pcg-services-final-text {
  margin-bottom: 26px !important;
}

.pcg-services-final-actions {
  margin-top: 8px !important;
}

.pcg-services-final-cta {
  padding-top: 45px !important;
}

/* ===== INDUSTRIES / SERVICES PAGE — MOBILE RESPONSIVE FIX ===== */

/* HERO */

@media (max-width: 767px) {
  .pcg-industries-hero-fix {
    overflow-x: hidden !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

@media (max-width: 767px) {
  .pcg-industries-hero-container-fix {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767px) {
  .pcg-industries-hero-grid-fix {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 34px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .pcg-industries-hero-col-fix, .pcg-industries-hero-grid-fix > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 100% !important;
  }
}

@media (max-width: 767px) {
  .pcg-industries-hero-fix h1, .pcg-industries-hero-fix h2 {
    font-size: clamp(40px, 12vw, 62px) !important;
    line-height: 0.94 !important;
    letter-spacing: -0.065em !important;
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 767px) {
  .pcg-industries-hero-fix p {
    max-width: 100% !important;
    font-size: 16.5px !important;
    line-height: 1.65 !important;
  }
}

/* CAPABILITIES / SECTION AFTER HERO */

@media (max-width: 767px) {
  .pcg-capabilities-section-fix {
    overflow-x: hidden !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-container-fix {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-grid-fix {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-grid-fix .row {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-grid-fix .col, .pcg-capabilities-grid-fix [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-bottom: 20px !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-card-fix {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: auto !important;
    height: auto !important;
    padding: 34px 26px !important;
    border-radius: 26px !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-card-fix h1, .pcg-capabilities-card-fix h2, .pcg-capabilities-card-fix h3, .pcg-capabilities-card-fix h4, .pcg-capabilities-card-fix h5 {
    font-size: clamp(30px, 9vw, 44px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.055em !important;
    max-width: 100% !important;
    margin-bottom: 16px !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-card-fix p {
    font-size: 15.5px !important;
    line-height: 1.62 !important;
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

/* ===== INDUSTRIES — CORE CAPABILITIES MOBILE COLUMN FIX ===== */

@media (max-width: 767px) {
  .pcg-capabilities-section-fix {
    overflow-x: hidden !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-container-fix {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-grid-fix {
    display: flex !important;
    flex-direction: column !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-col-fix, .pcg-capabilities-grid-fix > * {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    min-width: 0 !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-card-fix {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: auto !important;
    height: auto !important;
    padding: 34px 26px !important;
    border-radius: 26px !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-card-fix h1, .pcg-capabilities-card-fix h2, .pcg-capabilities-card-fix h3, .pcg-capabilities-card-fix h4, .pcg-capabilities-card-fix h5 {
    font-size: clamp(30px, 9vw, 44px) !important;
    line-height: 0.98 !important;
    letter-spacing: -0.055em !important;
    max-width: 100% !important;
    margin-bottom: 16px !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 767px) {
  .pcg-capabilities-card-fix p {
    font-size: 15.5px !important;
    line-height: 1.62 !important;
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

/* ===== PCG VISUAL SERVICES PAGE ===== */

:root {
  --visual-navy: #071427;
  --visual-deep: #020814;
  --visual-blue: #6f90b7;
  --visual-blue-soft: #9db7d4;
  --visual-gold: #c7a56b;
  --visual-cream: #f4efe7;
  --visual-white: #ffffff;
  --visual-muted: #c7d0dc;
  --visual-charcoal: #1f2937;
}

.pcg-visual-section {
  position: relative;
  overflow: hidden;
}

.pcg-visual-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-visual-eyebrow {
  color: var(--visual-blue-soft);
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-visual-title {
  font-size: clamp(48px, 6vw, 94px);
  line-height: 0.94;
  font-weight: 900;
  letter-spacing: -0.07em;
  margin-bottom: 28px;
}

.pcg-visual-text {
  font-size: 20px;
  line-height: 1.75;
  max-width: 860px;
}

/* VISUAL HERO HARD RESET */

.pcg-visual-hero {
  position: relative !important;
  min-height: 94vh !important;
  display: flex !important;
  align-items: center !important;
  padding: 155px 0 135px !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.pcg-visual-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg, rgba(2,8,20,0.94) 0%, rgba(7,20,39,0.84) 42%, rgba(2,8,20,0.48) 100%), radial-gradient(circle at 20% 30%, rgba(111,144,183,0.26), transparent 36%), radial-gradient(circle at 78% 72%, rgba(199,165,107,0.22), transparent 34%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.pcg-visual-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px) !important;
  background-size: 54px 54px !important;
  opacity: 0.22 !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.pcg-visual-hero .pcg-visual-container {
  position: relative !important;
  z-index: 5 !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  width: 100% !important;
}

.pcg-visual-hero-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr) !important;
  gap: 58px !important;
  align-items: center !important;
  width: 100% !important;
}

.pcg-visual-hero-copy {
  position: relative !important;
  z-index: 6 !important;
  max-width: 760px !important;
}

.pcg-visual-eyebrow {
  color: #c7a56b !important;
  opacity: 1 !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
  text-shadow: 0 10px 28px rgba(0,0,0,0.42) !important;
}

.pcg-visual-title, .pcg-visual-hero-title {
  color: #ffffff !important;
  opacity: 1 !important;
  font-size: clamp(48px, 6vw, 94px) !important;
  line-height: 0.94 !important;
  font-weight: 900 !important;
  letter-spacing: -0.07em !important;
  margin-bottom: 28px !important;
  text-shadow: 0 18px 55px rgba(0,0,0,0.52) !important;
}

.pcg-visual-text, .pcg-visual-hero-text {
  color: rgba(255,255,255,0.86) !important;
  opacity: 1 !important;
  font-size: 20px !important;
  line-height: 1.75 !important;
  max-width: 720px !important;
  margin-bottom: 38px !important;
  font-weight: 650 !important;
  text-shadow: 0 12px 34px rgba(0,0,0,0.42) !important;
}

/* VISUAL HERO HARD RESET */

.pcg-visual-hero {
  position: relative !important;
  min-height: 94vh !important;
  display: flex !important;
  align-items: center !important;
  padding: 155px 0 135px !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.pcg-visual-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg, rgba(2,8,20,0.94) 0%, rgba(7,20,39,0.84) 42%, rgba(2,8,20,0.48) 100%), radial-gradient(circle at 20% 30%, rgba(111,144,183,0.26), transparent 36%), radial-gradient(circle at 78% 72%, rgba(199,165,107,0.22), transparent 34%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.pcg-visual-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px) !important;
  background-size: 54px 54px !important;
  opacity: 0.22 !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.pcg-visual-hero .pcg-visual-container {
  position: relative !important;
  z-index: 5 !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  width: 100% !important;
}

.pcg-visual-hero-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr) !important;
  gap: 58px !important;
  align-items: center !important;
  width: 100% !important;
}

.pcg-visual-hero-copy {
  position: relative !important;
  z-index: 6 !important;
  max-width: 760px !important;
}

.pcg-visual-eyebrow {
  color: #c7a56b !important;
  opacity: 1 !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
  text-shadow: 0 10px 28px rgba(0,0,0,0.42) !important;
}

.pcg-visual-title, .pcg-visual-hero-title {
  color: #ffffff !important;
  opacity: 1 !important;
  font-size: clamp(48px, 6vw, 94px) !important;
  line-height: 0.94 !important;
  font-weight: 900 !important;
  letter-spacing: -0.07em !important;
  margin-bottom: 28px !important;
  text-shadow: 0 18px 55px rgba(0,0,0,0.52) !important;
}

.pcg-visual-text, .pcg-visual-hero-text {
  color: rgba(255,255,255,0.86) !important;
  opacity: 1 !important;
  font-size: 20px !important;
  line-height: 1.75 !important;
  max-width: 720px !important;
  margin-bottom: 38px !important;
  font-weight: 650 !important;
  text-shadow: 0 12px 34px rgba(0,0,0,0.42) !important;
}

/* VISUAL HERO RIGHT RAIL GLASS PANEL POLISH */

.pcg-visual-hero-rail {
  background: radial-gradient(circle at top right, rgba(199,165,107,0.22), transparent 38%), radial-gradient(circle at bottom left, rgba(111,144,183,0.22), transparent 42%), rgba(2,8,20,0.68) !important;
  border: 1px solid rgba(255,255,255,0.24) !important;
  box-shadow: 0 42px 120px rgba(0,0,0,0.60), 0 0 90px rgba(111,144,183,0.22) !important;
  backdrop-filter: \;
  -webkit-backdrop-filter: \;
}

/* VISUAL HERO RAIL TEXT READABILITY */

.pcg-visual-rail-title {
  color: #ffffff !important;
  opacity: 1 !important;
  text-shadow: 0 14px 44px rgba(0,0,0,0.58) !important;
}

.pcg-visual-preview-text {
  color: rgba(255,255,255,0.92) !important;
  text-shadow: 0 10px 28px rgba(0,0,0,0.45) !important;
}

.pcg-visual-preview-item {
  background: rgba(2,8,20,0.42) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
}

/* VISUAL HERO LEFT/RIGHT SEPARATION */

.pcg-visual-hero-shell {
  grid-template-columns: minmax(0, 0.95fr) minmax(420px, 0.85fr) !important;
  gap: 78px !important;
}

.pcg-visual-hero-copy {
  max-width: 650px !important;
}

.pcg-visual-hero-rail {
  max-width: 500px !important;
}

/* VISUAL HERO — CINEMATIC RESET WITHOUT RIGHT RAIL */

.pcg-visual-hero-shell {
  display: block !important;
  max-width: 760px !important;
}

.pcg-visual-hero-copy {
  max-width: 720px !important;
  padding: 46px 0 !important;
}

.pcg-visual-title, .pcg-visual-hero-title {
  max-width: 720px !important;
}

.pcg-visual-text, .pcg-visual-hero-text {
  max-width: 620px !important;
}

/* VISUAL HERO — FLOATING GALLERY STRIP */

.pcg-visual-hero-strip {
  position: relative;
  z-index: 6;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
  margin-top: 52px;
  max-width: 980px;
}

.pcg-visual-strip-item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 72px;
  padding: 18px;
  color: rgba(255,255,255,0.9) !important;
  text-decoration: none !important;
  text-align: center;
  font-size: 14px;
  font-weight: 850;
  letter-spacing: 0.03em;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(2,8,20,0.72), rgba(7,20,39,0.42));
  border: 1px solid rgba(255,255,255,0.16);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 18px 55px rgba(0,0,0,0.32), inset 0 1px 0 rgba(255,255,255,0.08);
  transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
}

.pcg-visual-strip-item:hover {
  transform: translateY(-6px);
  background: linear-gradient(135deg, rgba(199,165,107,0.26), rgba(111,144,183,0.20));
  border-color: rgba(199,165,107,0.48);
  box-shadow: 0 26px 70px rgba(0,0,0,0.42), 0 0 48px rgba(199,165,107,0.16);
}

@media (max-width: 991px) {
  .pcg-visual-hero-strip {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 575px) {
  .pcg-visual-hero-strip {
    grid-template-columns: 1fr;
  }
}

/* VISUAL HERO — PREMIUM ARCHIVE PANEL */

.pcg-visual-archive-panel {
  position: relative;
  z-index: 7;
  max-width: 960px;
  margin-top: 54px;
  padding: 20px 22px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(2,8,20,0.72), rgba(7,20,39,0.42));
  border: 1px solid rgba(255,255,255,0.16);
  backdrop-filter: blur(18px) saturate(120%);
  -webkit-backdrop-filter: blur(18px) saturate(120%);
  box-shadow: 0 26px 80px rgba(0,0,0,0.38), inset 0 1px 0 rgba(255,255,255,0.08);
  overflow: hidden;
}

.pcg-visual-archive-panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: -35%;
  width: 35%;
  height: 100%;
  background: linear-gradient( 90deg, transparent, rgba(255,255,255,0.10), transparent );
  animation: pcgVisualSweep 5s ease-in-out infinite;
  pointer-events: none;
}

.pcg-visual-archive-label {
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 14px;
}

.pcg-visual-archive-track {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.pcg-visual-archive-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 13px;
  border-radius: 999px;
  color: rgba(255,255,255,0.86);
  font-size: 13px;
  font-weight: 750;
  letter-spacing: 0.02em;
  background: rgba(255,255,255,0.075);
  border: 1px solid rgba(255,255,255,0.12);
  transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease, color 0.35s ease;
}

.pcg-visual-archive-item:hover {
  transform: translateY(-4px);
  color: #ffffff;
  background: rgba(199,165,107,0.18);
  border-color: rgba(199,165,107,0.42);
}

@keyframes pcgVisualSweep {
  0%, 55% {
    left: -35%;
    opacity: 0;
  }
  65% {
    opacity: 1;
  }
  100% {
    left: 115%;
    opacity: 0;
  }
}

/* VISUAL HERO — CINEMATIC COPY POSITION */

.pcg-visual-hero-shell {
  display: block !important;
  max-width: 760px !important;
}

.pcg-visual-hero-copy {
  max-width: 720px !important;
  padding-top: 18px !important;
}

.pcg-visual-hero-title {
  max-width: 720px !important;
}

.pcg-visual-hero-text {
  max-width: 640px !important;
}

/* VISUAL HERO — FINAL CLEAN CINEMATIC VERSION */

.pcg-visual-hero {
  min-height: 86vh !important;
  display: flex !important;
  align-items: center !important;
  padding: 150px 0 120px !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.pcg-visual-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(90deg, rgba(2,8,20,0.94) 0%, rgba(7,20,39,0.82) 40%, rgba(2,8,20,0.42) 100%), radial-gradient(circle at 22% 42%, rgba(111,144,183,0.22), transparent 34%), linear-gradient(180deg, rgba(2,8,20,0.10), rgba(2,8,20,0.36)) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.pcg-visual-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(rgba(255,255,255,0.028) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.024) 1px, transparent 1px) !important;
  background-size: 58px 58px !important;
  opacity: 0.18 !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

.pcg-visual-hero .pcg-visual-container {
  position: relative !important;
  z-index: 5 !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  width: 100% !important;
}

.pcg-visual-hero-shell {
  display: block !important;
  max-width: 720px !important;
}

.pcg-visual-hero-copy {
  position: relative !important;
  z-index: 6 !important;
  max-width: 720px !important;
  padding: 42px 0 !important;
}

.pcg-visual-hero-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 10px !important;
  left: 0 !important;
  width: 118px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(199,165,107,0.42) !important;
}

.pcg-visual-eyebrow {
  color: #c7a56b !important;
  opacity: 1 !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-visual-title, .pcg-visual-hero-title {
  color: #ffffff !important;
  opacity: 1 !important;
  font-size: clamp(52px, 6vw, 96px) !important;
  line-height: 0.92 !important;
  font-weight: 900 !important;
  letter-spacing: -0.075em !important;
  margin-bottom: 28px !important;
  max-width: 720px !important;
  text-shadow: 0 22px 64px rgba(0,0,0,0.52) !important;
}

.pcg-visual-text, .pcg-visual-hero-text {
  color: rgba(255,255,255,0.86) !important;
  opacity: 1 !important;
  font-size: 19px !important;
  line-height: 1.7 !important;
  max-width: 620px !important;
  margin-bottom: 34px !important;
  font-weight: 650 !important;
  text-shadow: 0 12px 34px rgba(0,0,0,0.42) !important;
}

.pcg-visual-hero-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

/* VISUAL HERO — BUTTON OVERRIDE FINAL */

.pcg-visual-hero-actions a, .pcg-visual-hero-actions button, .pcg-visual-hero-actions .btn, .pcg-visual-hero-actions .btn-primary, .pcg-visual-hero-actions .pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 150px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-align: center !important;
  box-shadow: none !important;
}

.pcg-visual-hero-actions .pcg-visual-btn-primary, .pcg-visual-hero-actions a.pcg-visual-btn-primary, .pcg-visual-hero-actions .btn.pcg-visual-btn-primary, .pcg-visual-hero-actions .btn-primary.pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  background-color: #c7a56b !important;
  border: 1px solid rgba(244,239,231,0.38) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-visual-hero-actions .pcg-visual-btn-secondary, .pcg-visual-hero-actions a.pcg-visual-btn-secondary, .pcg-visual-hero-actions .btn.pcg-visual-btn-secondary, .pcg-visual-hero-actions .btn-primary.pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.075) !important;
  background-color: rgba(255,255,255,0.075) !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-visual-hero-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

/* ===== VISUAL SERVICES FEATURED MOSAIC ===== */

.pcg-visual-featured {
  padding: 170px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-featured-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-featured-title {
  color: #071427;
  font-size: clamp(42px, 5vw, 78px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 1040px;
  margin-bottom: 24px;
}

.pcg-featured-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 900px;
  margin-bottom: 78px;
  font-weight: 600;
}

.pcg-featured-mosaic {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 260px;
  gap: 18px;
}

.pcg-featured-tile {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  background-color: #071427;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 30px 90px rgba(7,20,39,0.18), inset 0 1px 0 rgba(255,255,255,0.16);
  border: 1px solid rgba(7,20,39,0.08);
  transition: transform 0.5s ease, box-shadow 0.5s ease, border-color 0.5s ease;
}

.pcg-featured-large {
  grid-column: span 2;
  grid-row: span 2;
}

.pcg-featured-tall {
  grid-row: span 2;
}

.pcg-featured-wide {
  grid-column: span 2;
}

.pcg-featured-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(2,8,20,0.05) 0%, rgba(2,8,20,0.72) 100%), radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 42%);
  z-index: 1;
  transition: background 0.5s ease;
}

.pcg-featured-tile::after {
  content: "";
  position: absolute;
  inset: 18px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,0.18);
  z-index: 2;
  opacity: 0;
  transform: scale(0.97);
  transition: opacity 0.45s ease, transform 0.45s ease;
  pointer-events: none;
}

.pcg-featured-tile:hover {
  transform: translateY(-10px) scale(1.01);
  border-color: rgba(199,165,107,0.38);
  box-shadow: 0 44px 120px rgba(7,20,39,0.28), 0 0 65px rgba(199,165,107,0.15);
}

.pcg-featured-tile:hover::before {
  background: linear-gradient(180deg, rgba(2,8,20,0.12) 0%, rgba(2,8,20,0.84) 100%), radial-gradient(circle at top right, rgba(199,165,107,0.26), transparent 42%);
}

.pcg-featured-tile:hover::after {
  opacity: 1;
  transform: scale(1);
}

.pcg-featured-overlay {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 28px;
  z-index: 3;
}

.pcg-featured-kicker {
  display: inline-block;
  color: #c7a56b;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.pcg-featured-tile-title {
  color: #ffffff;
  font-size: clamp(25px, 3vw, 42px);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 12px;
  text-shadow: 0 14px 40px rgba(0,0,0,0.55);
}

.pcg-featured-large .pcg-featured-tile-title {
  font-size: clamp(34px, 4.4vw, 60px);
  line-height: 0.96;
}

.pcg-featured-tile-text {
  color: rgba(255,255,255,0.78);
  font-size: 15px;
  line-height: 1.55;
  max-width: 520px;
  margin-bottom: 0;
  text-shadow: 0 10px 30px rgba(0,0,0,0.55);
}

@media (max-width: 991px) {
  .pcg-featured-mosaic {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 991px) {
  .pcg-featured-large, .pcg-featured-wide {
    grid-column: span 2;
  }
}

@media (max-width: 767px) {
  .pcg-visual-featured {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-featured-mosaic {
    grid-template-columns: 1fr;
    grid-auto-rows: 320px;
  }
}

@media (max-width: 767px) {
  .pcg-featured-large, .pcg-featured-wide, .pcg-featured-tall {
    grid-column: span 1;
    grid-row: span 1;
  }
}

@media (max-width: 767px) {
  .pcg-featured-overlay {
    left: 24px;
    right: 24px;
    bottom: 24px;
  }
}

/* ===== VISUAL SERVICES FEATURED MOSAIC ===== */

.pcg-visual-featured {
  padding: 170px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-featured-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-featured-title {
  color: #071427;
  font-size: clamp(42px, 5vw, 78px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 1040px;
  margin-bottom: 24px;
}

.pcg-featured-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 900px;
  margin-bottom: 78px;
  font-weight: 600;
}

.pcg-featured-mosaic {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 260px;
  gap: 18px;
}

.pcg-featured-tile {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  background-color: #071427;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 30px 90px rgba(7,20,39,0.18), inset 0 1px 0 rgba(255,255,255,0.16);
  border: 1px solid rgba(7,20,39,0.08);
  transition: transform 0.5s ease, box-shadow 0.5s ease, border-color 0.5s ease;
}

.pcg-featured-large {
  grid-column: span 2;
  grid-row: span 2;
}

.pcg-featured-tall {
  grid-row: span 2;
}

.pcg-featured-wide {
  grid-column: span 2;
}

.pcg-featured-tile::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(2,8,20,0.05) 0%, rgba(2,8,20,0.72) 100%), radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 42%);
  z-index: 1;
  transition: background 0.5s ease;
}

.pcg-featured-tile::after {
  content: "";
  position: absolute;
  inset: 18px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,0.18);
  z-index: 2;
  opacity: 0;
  transform: scale(0.97);
  transition: opacity 0.45s ease, transform 0.45s ease;
  pointer-events: none;
}

.pcg-featured-tile:hover {
  transform: translateY(-10px) scale(1.01);
  border-color: rgba(199,165,107,0.38);
  box-shadow: 0 44px 120px rgba(7,20,39,0.28), 0 0 65px rgba(199,165,107,0.15);
}

.pcg-featured-tile:hover::before {
  background: linear-gradient(180deg, rgba(2,8,20,0.12) 0%, rgba(2,8,20,0.84) 100%), radial-gradient(circle at top right, rgba(199,165,107,0.26), transparent 42%);
}

.pcg-featured-tile:hover::after {
  opacity: 1;
  transform: scale(1);
}

.pcg-featured-overlay {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 28px;
  z-index: 3;
}

.pcg-featured-kicker {
  display: inline-block;
  color: #c7a56b;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.pcg-featured-tile-title {
  color: #ffffff;
  font-size: clamp(25px, 3vw, 42px);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 12px;
  text-shadow: 0 14px 40px rgba(0,0,0,0.55);
}

.pcg-featured-large .pcg-featured-tile-title {
  font-size: clamp(34px, 4.4vw, 60px);
  line-height: 0.96;
}

.pcg-featured-tile-text {
  color: rgba(255,255,255,0.78);
  font-size: 15px;
  line-height: 1.55;
  max-width: 520px;
  margin-bottom: 0;
  text-shadow: 0 10px 30px rgba(0,0,0,0.55);
}

@media (max-width: 991px) {
  .pcg-featured-mosaic {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 991px) {
  .pcg-featured-large, .pcg-featured-wide {
    grid-column: span 2;
  }
}

@media (max-width: 767px) {
  .pcg-visual-featured {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-featured-mosaic {
    grid-template-columns: 1fr;
    grid-auto-rows: 320px;
  }
}

@media (max-width: 767px) {
  .pcg-featured-large, .pcg-featured-wide, .pcg-featured-tall {
    grid-column: span 1;
    grid-row: span 1;
  }
}

@media (max-width: 767px) {
  .pcg-featured-overlay {
    left: 24px;
    right: 24px;
    bottom: 24px;
  }
}

/* ===== VISUAL SERVICES GALLERY WALL ===== */

.pcg-visual-gallery-wall {
  padding: 165px 0;
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-gallery-wall-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-gallery-wall-title {
  color: #071427;
  font-size: clamp(42px, 5vw, 78px);
  line-height: 0.97;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 1060px;
  margin-bottom: 24px;
}

.pcg-gallery-wall-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 920px;
  margin-bottom: 72px;
  font-weight: 600;
}

.pcg-gallery-wall-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.pcg-gallery-card {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  border-radius: 28px;
  background: #071427;
  border: 1px solid rgba(7,20,39,0.08);
  box-shadow: 0 28px 80px rgba(7,20,39,0.14), inset 0 1px 0 rgba(255,255,255,0.14);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-gallery-card-image {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transform: scale(1.01);
  transition: transform 0.7s ease, filter 0.7s ease, opacity 0.7s ease;
}

.pcg-gallery-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(2,8,20,0.02) 0%, rgba(2,8,20,0.74) 100%);
  pointer-events: none;
}

.pcg-gallery-card-label {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 22px;
  z-index: 2;
  padding: 18px;
  border-radius: 20px;
  background: rgba(2,8,20,0.48);
  border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: transform 0.45s ease, background 0.45s ease, border-color 0.45s ease;
}

.pcg-gallery-card-kicker {
  display: block;
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 8px;
}

.pcg-gallery-card-title {
  color: #ffffff;
  font-size: 25px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.04em;
  margin-bottom: 0;
}

.pcg-gallery-card:hover {
  transform: translateY(-10px);
  border-color: rgba(199,165,107,0.40);
  box-shadow: 0 42px 120px rgba(7,20,39,0.24), 0 0 70px rgba(199,165,107,0.16);
}

.pcg-gallery-card:hover .pcg-gallery-card-image {
  transform: scale(1.08);
  filter: contrast(1.08) saturate(1.08);
}

.pcg-gallery-card:hover .pcg-gallery-card-label {
  transform: translateY(-8px);
  background: rgba(2,8,20,0.66);
  border-color: rgba(199,165,107,0.36);
}

@media (max-width: 1199px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 991px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 575px) {
  .pcg-visual-gallery-wall {
    padding: 110px 0;
  }
}

@media (max-width: 575px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .pcg-gallery-card {
    min-height: 340px;
  }
}

/* GALLERY WALL — EDITORIAL NO-CROP VERSION */

.pcg-gallery-wall-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: start !important;
}

.pcg-gallery-card {
  position: relative !important;
  overflow: hidden !important;
  height: auto !important;
  min-height: unset !important;
  border-radius: 28px !important;
  background: #071427 !important;
  border: 1px solid rgba(7,20,39,0.10) !important;
  box-shadow: 0 28px 80px rgba(7,20,39,0.14), inset 0 1px 0 rgba(255,255,255,0.14) !important;
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease !important;
}

.pcg-gallery-card::before {
  display: none !important;
}

.pcg-gallery-image-wrap {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  background: #071427 !important;
}

/* The image itself shows fully */

.pcg-gallery-img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  transition: transform 0.7s ease, filter 0.7s ease !important;
}

/* Label sits under the image, not covering/cropping it */

.pcg-gallery-card-label {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 2 !important;
  margin: 0 !important;
  padding: 18px 20px 20px !important;
  background: linear-gradient(135deg, rgba(2,8,20,0.98), rgba(7,20,39,0.88)) !important;
  border-top: 1px solid rgba(255,255,255,0.10) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

.pcg-gallery-card-kicker {
  display: block !important;
  color: #c7a56b !important;
  font-size: 11px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 8px !important;
}

.pcg-gallery-card-title {
  color: #ffffff !important;
  font-size: 24px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
  margin-bottom: 0 !important;
}

.pcg-gallery-card:hover {
  transform: translateY(-10px) !important;
  border-color: rgba(199,165,107,0.40) !important;
  box-shadow: 0 42px 120px rgba(7,20,39,0.24), 0 0 70px rgba(199,165,107,0.16) !important;
}

.pcg-gallery-card:hover .pcg-gallery-img {
  transform: scale(1.025) !important;
  filter: contrast(1.06) saturate(1.06) !important;
}

/* Give certain cards better editorial presence */

.pcg-gallery-card:nth-child(1) {
  grid-column: span 2 !important;
}

.pcg-gallery-card:nth-child(2) {
  grid-row: span 1 !important;
}

.pcg-gallery-card:nth-child(5) {
  grid-column: span 2 !important;
}

@media (max-width: 1199px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1199px) {
  .pcg-gallery-card:nth-child(1), .pcg-gallery-card:nth-child(5) {
    grid-column: span 2 !important;
  }
}

@media (max-width: 991px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 575px) {
  .pcg-gallery-card:nth-child(1), .pcg-gallery-card:nth-child(5) {
    grid-column: span 1 !important;
  }
}

/* GALLERY WALL — EDITORIAL SCATTERED LAYOUT */

.pcg-gallery-wall-grid {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: start !important;
}

/* Base card */

.pcg-gallery-card {
  width: 100% !important;
  height: auto !important;
  min-height: unset !important;
}

/* Let images keep their natural proportions */

.pcg-gallery-img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Card 1 — Real Estate: large anchor */

.pcg-gallery-card:nth-child(1) {
  grid-column: span 6 !important;
}

/* Card 2 — Film: smaller beside real estate */

.pcg-gallery-card:nth-child(2) {
  grid-column: span 3 !important;
}

/* Card 3 — Wildlife: smaller beside film */

.pcg-gallery-card:nth-child(3) {
  grid-column: span 3 !important;
}

/* Card 4 — Macro */

.pcg-gallery-card:nth-child(4) {
  grid-column: span 3 !important;
}

/* Card 5 — Outdoor: wider showcase */

.pcg-gallery-card:nth-child(5) {
  grid-column: span 5 !important;
}

/* Card 6 — Yellowstone */

.pcg-gallery-card:nth-child(6) {
  grid-column: span 3 !important;
}

/* Card 7 — Amphibians */

.pcg-gallery-card:nth-child(7) {
  grid-column: span 3 !important;
}

/* Card 8 — Underwater */

.pcg-gallery-card:nth-child(8) {
  grid-column: span 3 !important;
}

/* Make the labels feel consistent under different image sizes */

.pcg-gallery-card-label {
  min-height: 86px !important;
}

/* Responsive */

@media (max-width: 1199px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1199px) {
  .pcg-gallery-card:nth-child(1), .pcg-gallery-card:nth-child(5) {
    grid-column: span 6 !important;
  }
}

@media (max-width: 1199px) {
  .pcg-gallery-card:nth-child(2), .pcg-gallery-card:nth-child(3), .pcg-gallery-card:nth-child(4), .pcg-gallery-card:nth-child(6), .pcg-gallery-card:nth-child(7), .pcg-gallery-card:nth-child(8) {
    grid-column: span 3 !important;
  }
}

@media (max-width: 767px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .pcg-gallery-card {
    grid-column: span 1 !important;
  }
}

/* GALLERY WALL — EDITORIAL SCATTERED LAYOUT */

.pcg-gallery-wall-grid {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: start !important;
}

/* Base card */

.pcg-gallery-card {
  width: 100% !important;
  height: auto !important;
  min-height: unset !important;
}

/* Let images keep their natural proportions */

.pcg-gallery-img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Card 1 — Real Estate: large anchor */

.pcg-gallery-card:nth-child(1) {
  grid-column: span 6 !important;
}

/* Card 2 — Film: smaller beside real estate */

.pcg-gallery-card:nth-child(2) {
  grid-column: span 3 !important;
}

/* Card 3 — Wildlife: smaller beside film */

.pcg-gallery-card:nth-child(3) {
  grid-column: span 3 !important;
}

/* Card 4 — Macro */

.pcg-gallery-card:nth-child(4) {
  grid-column: span 3 !important;
}

/* Card 5 — Outdoor: wider showcase */

.pcg-gallery-card:nth-child(5) {
  grid-column: span 5 !important;
}

/* Card 6 — Yellowstone */

.pcg-gallery-card:nth-child(6) {
  grid-column: span 3 !important;
}

/* Card 7 — Amphibians */

.pcg-gallery-card:nth-child(7) {
  grid-column: span 3 !important;
}

/* Card 8 — Underwater */

.pcg-gallery-card:nth-child(8) {
  grid-column: span 3 !important;
}

/* Make the labels feel consistent under different image sizes */

.pcg-gallery-card-label {
  min-height: 86px !important;
}

/* Responsive */

@media (max-width: 1199px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1199px) {
  .pcg-gallery-card:nth-child(1), .pcg-gallery-card:nth-child(5) {
    grid-column: span 6 !important;
  }
}

@media (max-width: 1199px) {
  .pcg-gallery-card:nth-child(2), .pcg-gallery-card:nth-child(3), .pcg-gallery-card:nth-child(4), .pcg-gallery-card:nth-child(6), .pcg-gallery-card:nth-child(7), .pcg-gallery-card:nth-child(8) {
    grid-column: span 3 !important;
  }
}

@media (max-width: 767px) {
  .pcg-gallery-wall-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .pcg-gallery-card {
    grid-column: span 1 !important;
  }
}

/* ===== VISUAL SERVICES — REAL ESTATE FEATURE ===== */

.pcg-visual-realestate {
  padding: 165px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-realestate-showcase {
  display: grid;
  grid-template-columns: 0.82fr 1.18fr;
  gap: 64px;
  align-items: center;
}

.pcg-realestate-copy {
  position: relative;
  padding-top: 36px;
}

.pcg-realestate-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 112px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 26px rgba(199,165,107,0.32);
}

.pcg-realestate-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-realestate-title {
  color: #071427;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  margin-bottom: 24px;
}

.pcg-realestate-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  margin-bottom: 34px;
  max-width: 620px;
}

.pcg-realestate-image-panel {
  position: relative;
}

.pcg-realestate-image-panel::before {
  content: "";
  position: absolute;
  inset: 8% -4% -7% 18%;
  border-radius: 34px;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.22), transparent 42%), rgba(111,144,183,0.14);
  filter: blur(2px);
  z-index: 0;
}

.pcg-realestate-frame {
  position: relative;
  z-index: 2;
  overflow: hidden;
  border-radius: 34px;
  background: #071427;
  border: 1px solid rgba(7,20,39,0.12);
  box-shadow: 0 40px 115px rgba(7,20,39,0.22), 0 0 70px rgba(199,165,107,0.12);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-realestate-frame:hover {
  transform: translateY(-10px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 54px 135px rgba(7,20,39,0.28), 0 0 80px rgba(199,165,107,0.18);
}

.pcg-realestate-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  transition: transform 0.7s ease, filter 0.7s ease;
}

.pcg-realestate-frame:hover .pcg-realestate-img {
  transform: scale(1.025);
  filter: contrast(1.04) saturate(1.04);
}

.pcg-realestate-caption {
  padding: 24px 28px 28px;
  background: linear-gradient(135deg, rgba(2,8,20,0.98), rgba(7,20,39,0.88));
  border-top: 1px solid rgba(255,255,255,0.12);
}

.pcg-realestate-caption-kicker {
  display: block;
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.pcg-realestate-caption-title {
  color: #ffffff;
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-realestate-showcase {
    grid-template-columns: 1fr;
    gap: 52px;
  }
}

@media (max-width: 767px) {
  .pcg-visual-realestate {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-realestate-caption {
    padding: 22px;
  }
}

/* ===== VISUAL SERVICES — FILM FEATURE ===== */

.pcg-visual-film {
  padding: 165px 0;
  background: radial-gradient(circle at 82% 22%, rgba(199,165,107,0.12), transparent 30%), radial-gradient(circle at 18% 70%, rgba(111,144,183,0.14), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-film-showcase {
  display: grid;
  grid-template-columns: 1.12fr 0.88fr;
  gap: 64px;
  align-items: center;
}

.pcg-film-image-panel {
  position: relative;
}

.pcg-film-image-panel::before {
  content: "";
  position: absolute;
  inset: 8% 18% -8% -4%;
  border-radius: 34px;
  background: radial-gradient(circle at top left, rgba(111,144,183,0.24), transparent 42%), rgba(199,165,107,0.10);
  filter: blur(2px);
  z-index: 0;
}

.pcg-film-frame {
  position: relative;
  z-index: 2;
  overflow: hidden;
  border-radius: 34px;
  background: #020814;
  border: 1px solid rgba(255,255,255,0.13);
  box-shadow: 0 44px 125px rgba(0,0,0,0.42), 0 0 70px rgba(111,144,183,0.16);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-film-frame:hover {
  transform: translateY(-10px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 58px 145px rgba(0,0,0,0.52), 0 0 86px rgba(199,165,107,0.18);
}

.pcg-film-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  transition: transform 0.7s ease, filter 0.7s ease;
}

.pcg-film-frame:hover .pcg-film-img {
  transform: scale(1.025);
  filter: contrast(1.06) saturate(1.06);
}

.pcg-film-caption {
  padding: 24px 28px 28px;
  background: linear-gradient(135deg, rgba(2,8,20,0.98), rgba(7,20,39,0.88));
  border-top: 1px solid rgba(255,255,255,0.12);
}

.pcg-film-caption-kicker {
  display: block;
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.pcg-film-caption-title {
  color: #ffffff;
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 0;
}

.pcg-film-copy {
  position: relative;
  padding-top: 36px;
}

.pcg-film-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 112px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 26px rgba(199,165,107,0.34);
}

.pcg-film-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-film-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  margin-bottom: 24px;
}

.pcg-film-text {
  color: rgba(255,255,255,0.74);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  margin-bottom: 34px;
  max-width: 620px;
}

@media (max-width: 991px) {
  .pcg-film-showcase {
    grid-template-columns: 1fr;
    gap: 52px;
  }
}

@media (max-width: 991px) {
  .pcg-film-image-panel {
    order: 2;
  }
}

@media (max-width: 991px) {
  .pcg-film-copy {
    order: 1;
  }
}

@media (max-width: 767px) {
  .pcg-visual-film {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-film-caption {
    padding: 22px;
  }
}

/* ===== VISUAL SERVICES — WILDLIFE + BIRDS FIELD GALLERY ===== */

.pcg-visual-wildlife {
  padding: 165px 0;
  background: radial-gradient(circle at 82% 24%, rgba(199,165,107,0.10), transparent 30%), radial-gradient(circle at 18% 70%, rgba(111,144,183,0.12), transparent 34%), linear-gradient(180deg, #ffffff 0%, #f4efe7 100%);
}

.pcg-wildlife-showcase {
  display: grid;
  grid-template-columns: 0.78fr 1.22fr;
  gap: 70px;
  align-items: center;
}

.pcg-wildlife-copy {
  position: relative;
  padding-top: 36px;
}

.pcg-wildlife-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 112px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 26px rgba(199,165,107,0.30);
}

.pcg-wildlife-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-wildlife-title {
  color: #071427;
  font-size: clamp(42px, 5vw, 74px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  margin-bottom: 24px;
}

.pcg-wildlife-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  margin-bottom: 34px;
  max-width: 620px;
}

.pcg-wildlife-gallery {
  position: relative;
  display: grid;
  grid-template-columns: 1.18fr 0.82fr;
  gap: 18px;
  align-items: start;
}

.pcg-wildlife-photo {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  background: #071427;
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 28px 85px rgba(7,20,39,0.16), inset 0 1px 0 rgba(255,255,255,0.14);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-wildlife-photo-large {
  grid-row: span 2;
}

.pcg-wildlife-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  transition: transform 0.7s ease, filter 0.7s ease;
}

.pcg-wildlife-photo:hover {
  transform: translateY(-8px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 42px 115px rgba(7,20,39,0.24), 0 0 70px rgba(199,165,107,0.16);
}

.pcg-wildlife-photo:hover .pcg-wildlife-img {
  transform: scale(1.025);
  filter: contrast(1.05) saturate(1.06);
}

.pcg-wildlife-caption {
  position: absolute;
  right: 28px;
  bottom: 28px;
  z-index: 3;
  max-width: 360px;
  padding: 22px 24px;
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(2,8,20,0.92), rgba(7,20,39,0.76));
  border: 1px solid rgba(255,255,255,0.16);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 24px 70px rgba(0,0,0,0.28), 0 0 44px rgba(111,144,183,0.12);
}

.pcg-wildlife-caption-kicker {
  display: block;
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.pcg-wildlife-caption-title {
  color: #ffffff;
  font-size: clamp(24px, 2.5vw, 34px);
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-wildlife-showcase {
    grid-template-columns: 1fr;
    gap: 52px;
  }
}

@media (max-width: 767px) {
  .pcg-visual-wildlife {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-wildlife-gallery {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-wildlife-photo-large {
    grid-row: span 1;
  }
}

@media (max-width: 767px) {
  .pcg-wildlife-caption {
    position: relative;
    right: auto;
    bottom: auto;
    margin-top: 18px;
    max-width: 100%;
  }
}

/* WILDLIFE SECTION — LARGER IMAGE FEATURE */

.pcg-wildlife-showcase {
  grid-template-columns: 0.62fr 1.38fr !important;
  gap: 76px !important;
}

.pcg-wildlife-gallery {
  grid-template-columns: 1.25fr 0.9fr !important;
  gap: 22px !important;
}

.pcg-wildlife-photo {
  border-radius: 30px !important;
}

.pcg-wildlife-photo-large {
  max-width: 100% !important;
}

.pcg-wildlife-img {
  width: 100% !important;
  height: auto !important;
}

/* WILDLIFE CAPTION — MOVE BELOW PHOTOS */

.pcg-wildlife-gallery {
  align-items: start !important;
}

.pcg-wildlife-caption {
  position: relative !important;
  right: auto !important;
  bottom: auto !important;
  grid-column: 1 / -1 !important;
  max-width: 100% !important;
  margin-top: 6px !important;
  padding: 22px 26px !important;
  border-radius: 24px !important;
  background: linear-gradient(135deg, rgba(2,8,20,0.94), rgba(7,20,39,0.78)) !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.pcg-wildlife-caption-title {
  max-width: 720px !important;
}

/* VISUAL SERVICES — GLOBAL BUTTON OVERRIDE */

.pcg-visual-section .pcg-visual-btn, .pcg-visual-section a.pcg-visual-btn, .pcg-visual-section button.pcg-visual-btn, .pcg-visual-section .btn.pcg-visual-btn, .pcg-visual-section .btn-primary.pcg-visual-btn, .pcg-visual-section a.btn.btn-primary.pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 155px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-visual-section .pcg-visual-btn-primary, .pcg-visual-section a.pcg-visual-btn-primary, .pcg-visual-section .btn.pcg-visual-btn-primary, .pcg-visual-section .btn-primary.pcg-visual-btn-primary, .pcg-visual-section a.btn.btn-primary.pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  background-color: #c7a56b !important;
  border: 1px solid rgba(244,239,231,0.40) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-visual-section .pcg-visual-btn-secondary, .pcg-visual-section a.pcg-visual-btn-secondary, .pcg-visual-section .btn.pcg-visual-btn-secondary, .pcg-visual-section .btn-primary.pcg-visual-btn-secondary, .pcg-visual-section a.btn.btn-primary.pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08) !important;
  background-color: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow: none !important;
}

.pcg-visual-section .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

/* WILDLIFE — SCALE IMAGE CLUSTER SLIGHTLY */

.pcg-wildlife-showcase {
  grid-template-columns: 0.58fr 1.42fr !important;
  gap: 82px !important;
}

.pcg-wildlife-gallery {
  max-width: 720px !important;
}

/* WILDLIFE — SCALE IMAGE CLUSTER SLIGHTLY */

.pcg-wildlife-showcase {
  grid-template-columns: 0.58fr 1.42fr !important;
  gap: 82px !important;
}

.pcg-wildlife-gallery {
  max-width: 720px !important;
}

/* WILDLIFE BUTTON SIZE POLISH */

.pcg-wildlife-copy .pcg-visual-btn {
  min-width: 165px !important;
  height: 46px !important;
  padding: 0 18px !important;
  font-size: 14px !important;
}

/* WILDLIFE BUTTON SIZE POLISH */

.pcg-wildlife-copy .pcg-visual-btn {
  min-width: 165px !important;
  height: 46px !important;
  padding: 0 18px !important;
  font-size: 14px !important;
}

/* WILDLIFE CAPTION WIDTH POLISH */

.pcg-wildlife-caption-title {
  max-width: 640px !important;
}

/* ===== WILDLIFE SECTION FINAL HARD POLISH ===== */

/* Give the image side more room */

.pcg-visual-wildlife .pcg-wildlife-showcase {
  grid-template-columns: 0.52fr 1.48fr !important;
  gap: 90px !important;
}

/* Physically scale the whole image/caption cluster */

.pcg-visual-wildlife .pcg-wildlife-gallery {
  transform: scale(1.12) !important;
  transform-origin: center center !important;
}

/* Make the main hummingbird image larger */

.pcg-visual-wildlife .pcg-wildlife-photo-large {
  min-width: 360px !important;
}

/* Make the two smaller stacked images larger */

.pcg-visual-wildlife .pcg-wildlife-photo:not(.pcg-wildlife-photo-large) {
  min-width: 250px !important;
}

/* Caption text actual size change */

.pcg-visual-wildlife .pcg-wildlife-caption-title {
  font-size: 30px !important;
  line-height: 1.05 !important;
  max-width: 560px !important;
}

/* Button hard size override */

.pcg-visual-wildlife .pcg-visual-btn, .pcg-visual-wildlife a.pcg-visual-btn, .pcg-visual-wildlife .btn.pcg-visual-btn, .pcg-visual-wildlife a.btn.pcg-visual-btn {
  min-width: 175px !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 20px !important;
  font-size: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Mobile reset so it does not break */

@media (max-width: 991px) {
  .pcg-visual-wildlife .pcg-wildlife-showcase {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-wildlife .pcg-wildlife-gallery {
    transform: none !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-wildlife .pcg-wildlife-photo-large, .pcg-visual-wildlife .pcg-wildlife-photo:not(.pcg-wildlife-photo-large) {
    min-width: 0 !important;
  }
}

/* ===== VISUAL SERVICES — MACRO + AMPHIBIANS DETAIL STUDY ===== */

.pcg-visual-macro {
  padding: 165px 0;
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.14), transparent 30%), radial-gradient(circle at 82% 74%, rgba(111,144,183,0.14), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-macro-showcase {
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;
  gap: 76px;
  align-items: center;
}

.pcg-macro-image-stack {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 0.78fr;
  gap: 22px;
  align-items: center;
}

.pcg-macro-photo {
  overflow: hidden;
  border-radius: 32px;
  background: #020814;
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 42px 120px rgba(0,0,0,0.42), 0 0 70px rgba(199,165,107,0.14);
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease;
}

.pcg-macro-photo-secondary {
  transform: translateY(46px);
}

.pcg-macro-photo:hover {
  transform: translateY(-8px);
  border-color: rgba(199,165,107,0.44);
  box-shadow: 0 54px 145px rgba(0,0,0,0.52), 0 0 86px rgba(199,165,107,0.20);
}

.pcg-macro-photo-secondary:hover {
  transform: translateY(36px);
}

.pcg-macro-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  transition: transform 0.7s ease, filter 0.7s ease;
}

.pcg-macro-photo:hover .pcg-macro-img {
  transform: scale(1.025);
  filter: contrast(1.06) saturate(1.08);
}

.pcg-macro-copy {
  position: relative;
  padding-top: 36px;
}

.pcg-macro-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 112px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 26px rgba(199,165,107,0.34);
}

.pcg-macro-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-macro-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  margin-bottom: 24px;
}

.pcg-macro-text {
  color: rgba(255,255,255,0.74);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  margin-bottom: 30px;
  max-width: 620px;
}

.pcg-macro-notes {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 34px;
}

.pcg-macro-note {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 13px;
  border-radius: 999px;
  color: rgba(255,255,255,0.88);
  font-size: 13px;
  font-weight: 850;
  letter-spacing: 0.02em;
  background: rgba(255,255,255,0.075);
  border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-macro-note:hover {
  transform: translateY(-4px);
  background: rgba(199,165,107,0.18);
  border-color: rgba(199,165,107,0.42);
}

@media (max-width: 991px) {
  .pcg-macro-showcase {
    grid-template-columns: 1fr;
    gap: 58px;
  }
}

@media (max-width: 991px) {
  .pcg-macro-image-stack {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-visual-macro {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-macro-image-stack {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-macro-photo-secondary, .pcg-macro-photo-secondary:hover {
    transform: none;
  }
}

/* ===== MACRO + AMPHIBIANS — HIGH SKILL FIELDWORK UPGRADE ===== */

.pcg-visual-macro .pcg-macro-showcase {
  grid-template-columns: 1.22fr 0.78fr !important;
  gap: 90px !important;
}

.pcg-visual-macro .pcg-macro-image-stack {
  grid-template-columns: 1.15fr 0.95fr !important;
  gap: 26px !important;
  transform: scale(1.12) !important;
  transform-origin: center center !important;
}

.pcg-visual-macro .pcg-macro-photo-main {
  min-width: 420px !important;
}

.pcg-visual-macro .pcg-macro-photo-secondary {
  min-width: 300px !important;
  transform: translateY(34px) !important;
}

.pcg-visual-macro .pcg-macro-photo-secondary:hover {
  transform: translateY(24px) !important;
}

.pcg-visual-macro .pcg-macro-photo {
  border-radius: 34px !important;
  border-color: rgba(255,255,255,0.18) !important;
}

.pcg-visual-macro .pcg-macro-img {
  width: 100% !important;
  height: auto !important;
}

/* MACRO + AMPHIBIANS — FIELD NOTES PANEL */

.pcg-macro-field-notes {
  display: grid !important;
  gap: 10px !important;
  max-width: 560px !important;
  margin: 0 0 34px !important;
  padding: 16px !important;
  border-radius: 24px !important;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.18), transparent 40%), rgba(255,255,255,0.065) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  box-shadow: 0 24px 80px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.pcg-macro-field-note {
  position: relative !important;
  color: rgba(255,255,255,0.84) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  font-weight: 750 !important;
  margin-bottom: 0 !important;
  padding-left: 24px !important;
}

.pcg-macro-field-note::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 8px !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #c7a56b !important;
  box-shadow: 0 0 18px rgba(199,165,107,0.72) !important;
}

/* MACRO MOBILE RESET */

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-showcase {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-image-stack {
    transform: none !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-photo-main, .pcg-visual-macro .pcg-macro-photo-secondary {
    min-width: 0 !important;
  }
}

/* MACRO SECTION — FIX SKINNY TEXT COLUMN */

.pcg-visual-macro .pcg-macro-showcase {
  grid-template-columns: 1.08fr 0.92fr !important;
  gap: 76px !important;
  align-items: center !important;
}

.pcg-visual-macro .pcg-macro-copy {
  max-width: 640px !important;
}

.pcg-visual-macro .pcg-macro-title {
  max-width: 640px !important;
  font-size: clamp(44px, 4.7vw, 72px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.065em !important;
}

.pcg-visual-macro .pcg-macro-text {
  max-width: 600px !important;
}

/* MACRO SECTION — THIRD IMAGE STACK */

.pcg-visual-macro .pcg-macro-image-stack {
  display: grid !important;
  grid-template-columns: 1.18fr 0.82fr !important;
  gap: 22px !important;
  align-items: center !important;
  transform: scale(1.08) !important;
  transform-origin: center center !important;
}

.pcg-visual-macro .pcg-macro-photo-main {
  grid-row: span 2 !important;
  min-width: 390px !important;
}

.pcg-visual-macro .pcg-macro-photo-secondary, .pcg-visual-macro .pcg-macro-photo-third {
  min-width: 260px !important;
}

.pcg-visual-macro .pcg-macro-photo-secondary {
  transform: translateY(0) !important;
}

.pcg-visual-macro .pcg-macro-photo-third {
  transform: translateY(0) !important;
}

.pcg-visual-macro .pcg-macro-photo-secondary:hover, .pcg-visual-macro .pcg-macro-photo-third:hover {
  transform: translateY(-8px) !important;
}

/* MACRO FIELD NOTES — COMPACT POLISH */

.pcg-visual-macro .pcg-macro-field-notes {
  max-width: 560px !important;
  margin-bottom: 30px !important;
}

.pcg-visual-macro .pcg-macro-field-note {
  font-size: 13.5px !important;
}

/* ===== MACRO SECTION — FINAL BALANCE FIX ===== */

/* Give the copy more breathing room so the heading stops stacking vertically */

.pcg-visual-macro .pcg-macro-showcase {
  grid-template-columns: 1fr 1fr !important;
  gap: 72px !important;
  align-items: center !important;
}

/* Keep the image group strong, but stop it from stealing all the width */

.pcg-visual-macro .pcg-macro-image-stack {
  grid-template-columns: 1.05fr 0.95fr !important;
  gap: 24px !important;
  transform: scale(1.03) !important;
  transform-origin: center center !important;
}

/* Main bee image stays large */

.pcg-visual-macro .pcg-macro-photo-main {
  grid-row: span 2 !important;
  min-width: 390px !important;
}

/* Make frog and spider larger/more important */

.pcg-visual-macro .pcg-macro-photo-secondary, .pcg-visual-macro .pcg-macro-photo-third {
  min-width: 310px !important;
}

/* Make the copy column wider */

.pcg-visual-macro .pcg-macro-copy {
  max-width: 760px !important;
  width: 100% !important;
}

/* Stop the heading from becoming a skinny vertical tower */

.pcg-visual-macro .pcg-macro-title {
  max-width: 760px !important;
  width: 100% !important;
  font-size: clamp(46px, 4.2vw, 68px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.06em !important;
}

/* Give paragraph more width too */

.pcg-visual-macro .pcg-macro-text {
  max-width: 680px !important;
}

/* MACRO TITLE — WIDER / LESS TALL OPTION */

.pcg-visual-macro .pcg-macro-title {
  font-size: clamp(42px, 3.7vw, 60px) !important;
  line-height: 1.02 !important;
  max-width: 820px !important;
}

/* MACRO — MAKE FROG IMAGE THE STRONG SECONDARY FEATURE */

.pcg-visual-macro .pcg-macro-photo-secondary {
  transform: scale(1.12) translateX(10px) !important;
  transform-origin: center center !important;
  z-index: 2 !important;
}

.pcg-visual-macro .pcg-macro-photo-third {
  transform: translateY(6px) !important;
  opacity: 0.92 !important;
}

.pcg-visual-macro .pcg-macro-photo-secondary:hover {
  transform: scale(1.12) translateX(10px) translateY(-8px) !important;
}

.pcg-visual-macro .pcg-macro-photo-third:hover {
  transform: translateY(-4px) !important;
  opacity: 1 !important;
}

/* ===== VISUAL SERVICES — OUTDOOR + YELLOWSTONE PANORAMA ===== */

.pcg-visual-outdoor {
  padding: 165px 0;
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.12), transparent 30%), radial-gradient(circle at 82% 78%, rgba(199,165,107,0.12), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-outdoor-showcase {
  display: grid;
  gap: 72px;
}

.pcg-outdoor-copy {
  position: relative;
  max-width: 980px;
  padding-top: 36px;
}

.pcg-outdoor-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 112px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 26px rgba(199,165,107,0.30);
}

.pcg-outdoor-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-outdoor-title {
  color: #071427;
  font-size: clamp(46px, 5.4vw, 84px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 1080px;
  margin-bottom: 24px;
}

.pcg-outdoor-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 780px;
  margin-bottom: 34px;
}

.pcg-outdoor-panorama {
  position: relative;
  overflow: hidden;
  border-radius: 38px;
  background: #071427;
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 44px 120px rgba(7,20,39,0.20), 0 0 70px rgba(199,165,107,0.12);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-outdoor-panorama:hover {
  transform: translateY(-10px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 58px 145px rgba(7,20,39,0.28), 0 0 86px rgba(199,165,107,0.18);
}

.pcg-outdoor-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  transition: transform 0.7s ease, filter 0.7s ease;
}

.pcg-outdoor-panorama:hover .pcg-outdoor-img {
  transform: scale(1.018);
  filter: contrast(1.05) saturate(1.06);
}

.pcg-outdoor-caption {
  position: absolute;
  left: 34px;
  right: 34px;
  bottom: 34px;
  z-index: 3;
  max-width: 620px;
  padding: 24px 28px;
  border-radius: 26px;
  background: linear-gradient(135deg, rgba(2,8,20,0.88), rgba(7,20,39,0.70));
  border: 1px solid rgba(255,255,255,0.16);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 24px 70px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.08);
}

.pcg-outdoor-caption-kicker {
  display: block;
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.pcg-outdoor-caption-title {
  color: #ffffff;
  font-size: clamp(26px, 3vw, 44px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .pcg-visual-outdoor {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-outdoor-caption {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    max-width: 100%;
    border-radius: 0 0 26px 26px;
  }
}

/* ===== VISUAL SERVICES — ARCHIVE DIRECTORY ===== */

.pcg-visual-archive {
  padding: 165px 0;
  background: radial-gradient(circle at 20% 20%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #ffffff 0%, #f4efe7 100%);
}

.pcg-archive-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-archive-title {
  color: #071427;
  font-size: clamp(44px, 5.5vw, 84px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-archive-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 900px;
  margin-bottom: 72px;
}

.pcg-archive-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.pcg-archive-card {
  position: relative;
  display: block;
  min-height: 230px;
  padding: 28px;
  border-radius: 28px;
  text-decoration: none !important;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.12), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.94), rgba(244,239,231,0.78));
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 26px 80px rgba(7,20,39,0.12), inset 0 1px 0 rgba(255,255,255,0.65);
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease, background 0.4s ease;
}

.pcg-archive-card::before {
  content: "";
  position: absolute;
  top: 26px;
  left: 28px;
  width: 72px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
}

.pcg-archive-card:hover {
  transform: translateY(-9px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 42px 115px rgba(7,20,39,0.20), 0 0 60px rgba(199,165,107,0.14);
}

.pcg-archive-card-kicker {
  display: block;
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: 38px;
  margin-bottom: 18px;
}

.pcg-archive-card-title {
  color: #071427;
  font-size: 30px;
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 14px;
}

.pcg-archive-card-text {
  color: #425466;
  font-size: 15px;
  line-height: 1.6;
  font-weight: 650;
  margin-bottom: 0;
}

.pcg-archive-card.is-coming-soon {
  background: radial-gradient(circle at top right, rgba(199,165,107,0.16), transparent 42%), linear-gradient(135deg, #071427, #020814);
  border-color: rgba(255,255,255,0.14);
}

.pcg-archive-card.is-coming-soon .pcg-archive-card-title {
  color: #ffffff;
}

.pcg-archive-card.is-coming-soon .pcg-archive-card-text {
  color: rgba(255,255,255,0.72);
}

@media (max-width: 991px) {
  .pcg-archive-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 575px) {
  .pcg-visual-archive {
    padding: 110px 0;
  }
}

@media (max-width: 575px) {
  .pcg-archive-grid {
    grid-template-columns: 1fr;
  }
}

/* VISUAL ARCHIVE LINK WRAPPER CLEANUP */

.pcg-archive-link, .pcg-archive-link:hover, .pcg-archive-link:focus, .pcg-archive-link:visited {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
}

.pcg-archive-link * {
  text-decoration: none !important;
}

/* ===== VISUAL SERVICES — DRONE + AERIAL WORK ===== */

.pcg-visual-drone {
  padding: 165px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.14), transparent 30%), radial-gradient(circle at 82% 76%, rgba(199,165,107,0.12), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-drone-showcase {
  display: grid;
  grid-template-columns: 0.92fr 1.08fr;
  gap: 76px;
  align-items: center;
}

.pcg-drone-copy {
  position: relative;
  padding-top: 36px;
}

.pcg-drone-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 112px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 26px rgba(199,165,107,0.34);
}

.pcg-drone-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-drone-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  margin-bottom: 24px;
}

.pcg-drone-text {
  color: rgba(255,255,255,0.74);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  margin-bottom: 30px;
  max-width: 660px;
}

.pcg-drone-usecases {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 34px;
}

.pcg-drone-usecase {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 13px;
  border-radius: 999px;
  color: rgba(255,255,255,0.88);
  font-size: 13px;
  font-weight: 850;
  letter-spacing: 0.02em;
  background: rgba(255,255,255,0.075);
  border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-drone-usecase:hover {
  transform: translateY(-4px);
  background: rgba(199,165,107,0.18);
  border-color: rgba(199,165,107,0.42);
}

.pcg-drone-media {
  position: relative;
}

.pcg-drone-media::before {
  content: "";
  position: absolute;
  inset: 8% -5% -8% 16%;
  border-radius: 38px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.26), transparent 42%), rgba(199,165,107,0.10);
  filter: blur(2px);
  z-index: 0;
}

.pcg-drone-frame {
  position: relative;
  z-index: 2;
  overflow: hidden;
  border-radius: 36px;
  background: #020814;
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 46px 130px rgba(0,0,0,0.46), 0 0 86px rgba(111,144,183,0.18);
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease;
}

.pcg-drone-frame:hover {
  transform: translateY(-10px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 60px 150px rgba(0,0,0,0.56), 0 0 96px rgba(199,165,107,0.18);
}

.pcg-drone-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  transition: transform 0.75s ease, filter 0.75s ease;
}

.pcg-drone-frame:hover .pcg-drone-img {
  transform: scale(1.022);
  filter: contrast(1.06) saturate(1.08);
}

.pcg-drone-caption {
  padding: 24px 28px 28px;
  background: linear-gradient(135deg, rgba(2,8,20,0.98), rgba(7,20,39,0.88));
  border-top: 1px solid rgba(255,255,255,0.12);
}

.pcg-drone-caption-kicker {
  display: block;
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.pcg-drone-caption-title {
  color: #ffffff;
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-drone-showcase {
    grid-template-columns: 1fr;
    gap: 58px;
  }
}

@media (max-width: 767px) {
  .pcg-visual-drone {
    padding: 110px 0;
  }
}

@media (max-width: 767px) {
  .pcg-drone-caption {
    padding: 22px;
  }
}

/* VISUAL ARCHIVE LINK WRAPPER CLEANUP */

.pcg-archive-link, .pcg-archive-link:hover, .pcg-archive-link:focus, .pcg-archive-link:visited {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
}

.pcg-archive-link * {
  text-decoration: none !important;
}

/* ===== VISUAL SERVICES — FINAL CTA ===== */

.pcg-visual-final-cta {
  padding: 145px 0;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-visual-final-card {
  position: relative;
  overflow: hidden;
  padding: 72px;
  border-radius: 38px;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 40%), radial-gradient(circle at bottom left, rgba(111,144,183,0.20), transparent 42%), linear-gradient(135deg, #071427, #020814);
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 70px rgba(111,144,183,0.14);
}

.pcg-visual-final-card::before {
  content: "";
  position: absolute;
  top: 42px;
  left: 72px;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 28px rgba(199,165,107,0.42);
}

.pcg-visual-final-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
  padding-top: 34px;
}

.pcg-visual-final-title {
  color: #ffffff;
  font-size: clamp(42px, 5.5vw, 82px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-visual-final-text {
  color: rgba(255,255,255,0.76);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 820px;
  margin-bottom: 38px;
}

.pcg-visual-final-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

@media (max-width: 767px) {
  .pcg-visual-final-cta {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-visual-final-card {
    padding: 46px 28px;
    border-radius: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-visual-final-card::before {
    left: 28px;
    top: 32px;
  }
}

/* HIDE DEFAULT LINK TEXT ABOVE ARCHIVE CARDS */

.pcg-archive-link {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

.pcg-archive-link .pcg-archive-card {
  font-size: initial !important;
  line-height: normal !important;
}

.pcg-archive-link .pcg-archive-card * {
  font-size: revert;
  line-height: revert;
  text-decoration: none !important;
}

/* ===== MACRO + AMPHIBIANS — TABLET / MOBILE FIX ===== */

@media (max-width: 991px) {
  .pcg-visual-macro {
    overflow: hidden !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-showcase {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 58px !important;
    align-items: start !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-image-stack {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 18px !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-photo-main, .pcg-visual-macro .pcg-macro-photo-secondary, .pcg-visual-macro .pcg-macro-photo-third {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-photo-main {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-copy {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-title {
    max-width: 100% !important;
    font-size: clamp(40px, 8vw, 62px) !important;
    line-height: 0.98 !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-text {
    max-width: 100% !important;
  }
}

@media (max-width: 991px) {
  .pcg-visual-macro .pcg-macro-field-notes {
    max-width: 100% !important;
  }
}

@media (max-width: 575px) {
  .pcg-visual-macro {
    padding: 110px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-visual-macro .pcg-macro-image-stack {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
}

@media (max-width: 575px) {
  .pcg-visual-macro .pcg-macro-title {
    font-size: clamp(38px, 12vw, 52px) !important;
    line-height: 1 !important;
  }
}

@media (max-width: 575px) {
  .pcg-visual-macro .pcg-macro-notes {
    gap: 8px !important;
  }
}

@media (max-width: 575px) {
  .pcg-visual-macro .pcg-macro-field-notes {
    padding: 14px !important;
  }
}

/* ===== REAL ESTATE PAGE — HERO ===== */

.pcg-real-section {
  position: relative;
}

.pcg-real-container {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-real-hero {
  min-height: 88vh;
  display: flex;
  align-items: center;
  padding: 150px 0 120px;
  background: linear-gradient(90deg, rgba(2,8,20,0.92), rgba(7,20,39,0.76), rgba(2,8,20,0.42)), radial-gradient(circle at 20% 35%, rgba(111,144,183,0.24), transparent 34%), #071427;
  overflow: hidden;
}

.pcg-real-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(255,255,255,0.028) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.024) 1px, transparent 1px);
  background-size: 58px 58px;
  opacity: 0.18;
  pointer-events: none;
}

.pcg-real-hero-card {
  position: relative;
  z-index: 2;
  max-width: 900px;
  padding-top: 42px;
}

.pcg-real-hero-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 28px rgba(199,165,107,0.42);
}

.pcg-real-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-real-hero-title {
  color: #ffffff;
  font-size: clamp(48px, 6vw, 94px);
  line-height: 0.94;
  font-weight: 900;
  letter-spacing: -0.075em;
  max-width: 980px;
  margin-bottom: 28px;
  text-shadow: 0 22px 64px rgba(0,0,0,0.52);
}

.pcg-real-hero-text {
  color: rgba(255,255,255,0.78);
  font-size: 20px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 760px;
  margin-bottom: 38px;
}

.pcg-real-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

/* REAL ESTATE PAGE — BUTTON OVERRIDE */

.pcg-real-section .pcg-visual-btn, .pcg-real-section a.pcg-visual-btn, .pcg-real-section button.pcg-visual-btn, .pcg-real-section .btn.pcg-visual-btn, .pcg-real-section .btn-primary.pcg-visual-btn, .pcg-real-section a.btn.btn-primary.pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 155px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-real-section .pcg-visual-btn-primary, .pcg-real-section a.pcg-visual-btn-primary, .pcg-real-section .btn.pcg-visual-btn-primary, .pcg-real-section .btn-primary.pcg-visual-btn-primary, .pcg-real-section a.btn.btn-primary.pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  background-color: #c7a56b !important;
  border: 1px solid rgba(244,239,231,0.40) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-real-section .pcg-visual-btn-secondary, .pcg-real-section a.pcg-visual-btn-secondary, .pcg-real-section .btn.pcg-visual-btn-secondary, .pcg-real-section .btn-primary.pcg-visual-btn-secondary, .pcg-real-section a.btn.btn-primary.pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08) !important;
  background-color: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow: none !important;
}

.pcg-real-section .pcg-visual-btn:hover {
  transform: \;
}

/* REAL ESTATE HERO — FINAL IMAGE READABILITY FIX */

.pcg-real-hero {
  min-height: 92vh !important;
  padding: 170px 0 150px !important;
  align-items: center !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

.pcg-real-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, rgba(2,8,20,0.96) 0%, rgba(7,20,39,0.88) 38%, rgba(2,8,20,0.42) 72%, rgba(2,8,20,0.18) 100%), linear-gradient(180deg, rgba(2,8,20,0.20), rgba(2,8,20,0.45)) !important;
}

.pcg-real-hero::after {
  z-index: 2 !important;
  opacity: 0.12 !important;
}

.pcg-real-hero .pcg-real-container {
  position: relative !important;
  z-index: 5 !important;
}

.pcg-real-hero-card {
  max-width: 680px !important;
  padding: 48px !important;
  border-radius: 34px !important;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.14), transparent 40%), rgba(2,8,20,0.62) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  box-shadow: 0 38px 110px rgba(0,0,0,0.42), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.pcg-real-hero-card::before {
  top: 28px !important;
  left: 48px !important;
}

.pcg-real-eyebrow {
  padding-top: 18px !important;
}

.pcg-real-hero-title {
  font-size: clamp(44px, 4.8vw, 76px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.065em !important;
  max-width: 660px !important;
}

.pcg-real-hero-text {
  font-size: 18px !important;
  line-height: 1.7 !important;
  max-width: 620px !important;
}

/* ===== REAL ESTATE PAGE — PROOF SECTION ===== */

.pcg-real-proof {
  padding: 150px 0;
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-real-proof-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-real-proof-title {
  color: #071427;
  font-size: clamp(44px, 5.5vw, 82px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-real-proof-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 860px;
  margin-bottom: 72px;
}

.pcg-real-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.pcg-real-proof-card {
  position: relative;
  min-height: 260px;
  padding: 34px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.14), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.95), rgba(244,239,231,0.78));
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 28px 80px rgba(7,20,39,0.12), inset 0 1px 0 rgba(255,255,255,0.65);
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease;
}

.pcg-real-proof-card::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 34px;
  width: 76px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
}

.pcg-real-proof-card:hover {
  transform: translateY(-9px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 42px 115px rgba(7,20,39,0.20), 0 0 60px rgba(199,165,107,0.14);
}

.pcg-real-proof-number {
  display: block;
  color: #6f90b7;
  font-size: 14px;
  letter-spacing: 2.5px;
  font-weight: 900;
  margin-top: 42px;
  margin-bottom: 20px;
}

.pcg-real-proof-card-title {
  color: #071427;
  font-size: 32px;
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 16px;
}

.pcg-real-proof-card-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.65;
  font-weight: 650;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-real-proof-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pcg-real-proof {
    padding: 105px 0;
  }
}

/* ===== REAL ESTATE PAGE — IMAGE GALLERY ===== */

.pcg-real-gallery {
  padding: 150px 0;
  background: radial-gradient(circle at 82% 20%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #ffffff 0%, #f4efe7 100%);
}

.pcg-real-gallery-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-real-gallery-title {
  color: #071427;
  font-size: clamp(44px, 5.5vw, 82px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 1050px;
  margin-bottom: 24px;
}

.pcg-real-gallery-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 860px;
  margin-bottom: 72px;
}

.pcg-real-gallery-grid {
  columns: 3 280px;
  column-gap: 22px;
}

.pcg-real-photo-card {
  display: inline-block;
  width: 100%;
  margin: 0 0 22px;
  overflow: hidden;
  border-radius: 28px;
  background: #071427;
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 28px 80px rgba(7,20,39,0.14), inset 0 1px 0 rgba(255,255,255,0.14);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-real-photo-card:hover {
  transform: translateY(-8px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 42px 115px rgba(7,20,39,0.22), 0 0 60px rgba(199,165,107,0.14);
}

.pcg-real-photo-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  transition: transform 0.7s ease, filter 0.7s ease;
}

.pcg-real-photo-card:hover .pcg-real-photo-img {
  transform: scale(1.025);
  filter: contrast(1.04) saturate(1.04);
}

@media (max-width: 767px) {
  .pcg-real-gallery {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-real-gallery-grid {
    columns: 1;
  }
}

/* ===== REAL ESTATE PAGE — DRONE / MEDIA FEATURE ===== */

.pcg-real-media-feature {
  display: grid;
  grid-template-columns: 1.12fr 0.88fr;
  gap: 64px;
  align-items: center;
  margin-top: 72px;
}

.pcg-real-video-panel {
  position: relative;
}

.pcg-real-video-panel::before {
  content: "";
  position: absolute;
  inset: 8% -5% -8% 16%;
  border-radius: 34px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 42%), rgba(199,165,107,0.12);
  filter: blur(2px);
  z-index: 0;
}

.pcg-real-video {
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  height: auto;
  border-radius: 34px;
  background: #071427;
  border: 1px solid rgba(7,20,39,0.12);
  box-shadow: 0 40px 115px rgba(7,20,39,0.22), 0 0 70px rgba(199,165,107,0.12);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-real-video:hover {
  transform: translateY(-10px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 54px 135px rgba(7,20,39,0.28), 0 0 80px rgba(199,165,107,0.18);
}

.pcg-real-media-copy {
  position: relative;
  padding-top: 36px;
}

.pcg-real-media-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 112px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 26px rgba(199,165,107,0.30);
}

.pcg-real-media-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-real-media-title {
  color: #071427;
  font-size: clamp(38px, 4.7vw, 72px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  margin-bottom: 24px;
}

.pcg-real-media-text {
  color: #425466;
  font-size: 18px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 620px;
  margin-bottom: 34px;
}

@media (max-width: 991px) {
  .pcg-real-media-feature {
    grid-template-columns: 1fr;
    gap: 52px;
  }
}

/* ===== REAL ESTATE PAGE — SELECTED PROPERTY STILLS ===== */

.pcg-real-stills {
  padding: 150px 0;
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-real-stills-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-real-stills-title {
  color: #071427;
  font-size: clamp(44px, 5.5vw, 82px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 1040px;
  margin-bottom: 24px;
}

.pcg-real-stills-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 860px;
  margin-bottom: 72px;
}

.pcg-real-stills-layout {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 28px;
  align-items: start;
}

.pcg-real-stills-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}

.pcg-real-still-card {
  overflow: hidden;
  border-radius: 28px;
  background: #071427;
  border: 1px solid rgba(7,20,39,0.10);
  box-shadow: 0 28px 80px rgba(7,20,39,0.14), inset 0 1px 0 rgba(255,255,255,0.14);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-real-still-card:hover {
  transform: translateY(-8px);
  border-color: rgba(199,165,107,0.42);
  box-shadow: 0 42px 115px rgba(7,20,39,0.22), 0 0 60px rgba(199,165,107,0.14);
}

.pcg-real-still-img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  transition: transform 0.7s ease, filter 0.7s ease;
}

.pcg-real-still-card:hover .pcg-real-still-img {
  transform: scale(1.022);
  filter: contrast(1.04) saturate(1.04);
}

.pcg-real-still-caption {
  padding: 24px 28px 28px;
  background: linear-gradient(135deg, rgba(2,8,20,0.98), rgba(7,20,39,0.88));
  border-top: 1px solid rgba(255,255,255,0.12);
}

.pcg-real-still-kicker {
  display: block;
  color: #c7a56b;
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 10px;
}

.pcg-real-still-title {
  color: #ffffff;
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 0;
}

.pcg-real-still-mini-caption {
  padding: 16px 18px 18px;
  background: linear-gradient(135deg, rgba(2,8,20,0.98), rgba(7,20,39,0.88));
  border-top: 1px solid rgba(255,255,255,0.10);
}

.pcg-real-still-mini-text {
  color: rgba(255,255,255,0.82);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.02em;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-real-stills-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .pcg-real-stills {
    padding: 105px 0;
  }
}

@media (max-width: 575px) {
  .pcg-real-stills-grid {
    grid-template-columns: 1fr;
  }
}

/* REAL ESTATE STILLS — STOP SMALL CARDS FROM STRETCHING */

.pcg-real-stills-grid {
  align-items: start !important;
}

.pcg-real-still-card {
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
}

.pcg-real-still-mini-caption {
  min-height: 0 !important;
}

/* ===== REAL ESTATE PAGE — EDITING + PRESENTATION SUPPORT ===== */

.pcg-real-editing {
  padding: 135px 0;
  background: radial-gradient(circle at 18% 18%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%);
}

.pcg-real-editing-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-real-editing-title {
  color: #ffffff;
  font-size: clamp(44px, 5.2vw, 78px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-real-editing-text {
  color: rgba(255,255,255,0.74);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 860px;
  margin-bottom: 64px;
}

.pcg-real-editing-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.pcg-real-editing-card {
  position: relative;
  min-height: 250px;
  padding: 32px;
  border-radius: 28px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.16), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.13);
  box-shadow: 0 30px 90px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,255,255,0.08);
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease, background 0.4s ease;
}

.pcg-real-editing-card::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 32px;
  width: 70px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
}

.pcg-real-editing-card:hover {
  transform: translateY(-9px);
  border-color: rgba(199,165,107,0.42);
  background: radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.095), rgba(255,255,255,0.045));
  box-shadow: 0 44px 120px rgba(0,0,0,0.44), 0 0 70px rgba(199,165,107,0.14);
}

.pcg-real-editing-number {
  display: block;
  color: #6f90b7;
  font-size: 14px;
  letter-spacing: 2.5px;
  font-weight: 900;
  margin-top: 42px;
  margin-bottom: 20px;
}

.pcg-real-editing-card-title {
  color: #ffffff;
  font-size: 30px;
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 16px;
}

.pcg-real-editing-card-text {
  color: rgba(255,255,255,0.72);
  font-size: 15.5px;
  line-height: 1.65;
  font-weight: 650;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-real-editing-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575px) {
  .pcg-real-editing {
    padding: 105px 0;
  }
}

/* ===== REAL ESTATE PAGE — FINAL CTA ===== */

.pcg-real-final-cta {
  padding: 145px 0;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-real-final-card {
  position: relative;
  overflow: hidden;
  padding: 72px;
  border-radius: 38px;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 40%), radial-gradient(circle at bottom left, rgba(111,144,183,0.20), transparent 42%), linear-gradient(135deg, #071427, #020814);
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 70px rgba(111,144,183,0.14);
}

.pcg-real-final-card::before {
  content: "";
  position: absolute;
  top: 42px;
  left: 72px;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 28px rgba(199,165,107,0.42);
}

.pcg-real-final-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
  padding-top: 34px;
}

.pcg-real-final-title {
  color: #ffffff;
  font-size: clamp(42px, 5.5vw, 82px);
  line-height: 0.96;
  font-weight: 900;
  letter-spacing: -0.065em;
  max-width: 980px;
  margin-bottom: 24px;
}

.pcg-real-final-text {
  color: rgba(255,255,255,0.76);
  font-size: 19px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 820px;
  margin-bottom: 38px;
}

.pcg-real-final-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

@media (max-width: 767px) {
  .pcg-real-final-cta {
    padding: 105px 0;
  }
}

@media (max-width: 767px) {
  .pcg-real-final-card {
    padding: 46px 28px;
    border-radius: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-real-final-card::before {
    left: 28px;
    top: 32px;
  }
}

/* ===== PCG NEW RESPONSIVE FOOTER ===== */

.pcg-footer-new {
  width: 100% !important;
  overflow-x: hidden !important;
  padding: 82px 0 38px !important;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.14), transparent 30%), linear-gradient(180deg, #071427 0%, #020814 100%) !important;
  border-top: 1px solid rgba(255,255,255,0.10) !important;
}

.pcg-footer-container {
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}

.pcg-footer-grid {
  display: grid !important;
  grid-template-columns: 1.25fr 0.75fr 1fr !important;
  gap: 56px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
}

.pcg-footer-title {
  color: #ffffff !important;
  font-size: 28px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  margin-bottom: 18px !important;
}

.pcg-footer-title::after {
  content: "" !important;
  display: block !important;
  width: 78px !important;
  height: 3px !important;
  margin-top: 18px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 22px rgba(199,165,107,0.34) !important;
}

.pcg-footer-kicker {
  color: #c7a56b !important;
  font-size: 12px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-footer-text {
  color: rgba(255,255,255,0.68) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 460px !important;
  margin-bottom: 0 !important;
}

.pcg-footer-links {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}

.pcg-footer-links .pcg-footer-link, .pcg-footer-contact .pcg-footer-link {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  color: rgba(255,255,255,0.72) !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  margin-bottom: 10px !important;
  overflow-wrap: anywhere !important;
  transition: color 0.3s ease, transform 0.3s ease !important;
}

.pcg-footer-link:hover {
  color: #ffffff !important;
  transform: translateX(4px) !important;
}

.pcg-footer-email {
  margin-top: 18px !important;
  color: #c7a56b !important;
}

.pcg-footer-bottom {
  margin-top: 58px !important;
  padding-top: 26px !important;
  border-top: 1px solid rgba(255,255,255,0.10) !important;
}

.pcg-footer-copy {
  color: rgba(255,255,255,0.48) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  font-weight: 600 !important;
  margin-bottom: 0 !important;
}

/* Tablet */

@media (max-width: 991px) {
  .pcg-footer-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 42px !important;
  }
}

@media (max-width: 991px) {
  .pcg-footer-brand {
    grid-column: 1 / -1 !important;
  }
}

/* Phone */

@media (max-width: 575px) {
  .pcg-footer-new {
    padding: 64px 0 34px !important;
  }
}

@media (max-width: 575px) {
  .pcg-footer-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

@media (max-width: 575px) {
  .pcg-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }
}

@media (max-width: 575px) {
  .pcg-footer-title {
    font-size: 24px !important;
  }
}

@media (max-width: 575px) {
  .pcg-footer-text, .pcg-footer-link {
    font-size: 14px !important;
  }
}

@media (max-width: 575px) {
  .pcg-footer-bottom {
    margin-top: 42px !important;
  }
}

/* WEBSITE DEVELOPMENT — HERO HEIGHT FIX */

.pcg-web-hero {
  min-height: auto !important;
  height: auto !important;
  padding-top: 120px !important;
  padding-bottom: 110px !important;
  display: flex !important;
  align-items: center !important;
}

.pcg-web-hero .container, .pcg-web-hero .pcg-web-container {
  min-height: auto !important;
  height: auto !important;
}

/* WEBSITE DEVELOPMENT — SIMPLE HERO SPACING FIX */

.pcg-website-hero, .pcg-web-hero, .website-hero {
  padding-top: 90px !important;
  padding-bottom: 80px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  min-height: auto !important;
  height: auto !important;
}

.pcg-website-hero .container, .pcg-web-hero .container, .website-hero .container {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* WEBSITE DEVELOPMENT — REMOVE HERO DEAD SPACE */

body .pcg-website-hero, body .pcg-web-hero, body .pcg-web-dev-hero, body section.pcg-website-hero, body section.pcg-web-hero, body section.pcg-web-dev-hero {
  padding-top: 110px !important;
  padding-bottom: 110px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  min-height: unset !important;
  height: auto !important;
}

/* ===== HOMEPAGE / INDEX — MOBILE RESPONSIVE SAFETY FIX ===== */

@media (max-width: 991px) {
  body, html {
    overflow-x: hidden !important;
  }
}

@media (max-width: 991px) {
  #index, body {
    max-width: 100% !important;
  }
}

/* Prevent any homepage section from forcing horizontal overflow */

@media (max-width: 991px) {
  body section, body .section, body .container, body .row, body [class*="container"], body [class*="row"] {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Kill desktop-only wide blocks */

@media (max-width: 991px) {
  body section div, body section article, body section aside {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Make all homepage grids collapse safely */

@media (max-width: 991px) {
  body section [style*="grid"], body section .grid, body section [class*="grid"] {
    grid-template-columns: 1fr !important;
  }
}

/* Make Bootstrap columns stack correctly */

@media (max-width: 991px) {
  body section [class*="col"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* Prevent images/cards from blowing out mobile */

@media (max-width: 991px) {
  body section img, body section video {
    max-width: 100% !important;
    height: auto !important;
  }
}

/* ===== HOMEPAGE / INDEX — PHONE FIX ===== */

@media (max-width: 575px) {
  body section {
    overflow-x: hidden !important;
  }
}

@media (max-width: 575px) {
  body section .container, body section [class*="container"] {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

@media (max-width: 575px) {
  body section h1, body section h2 {
    max-width: 100% !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 575px) {
  body section p {
    max-width: 100% !important;
    overflow-wrap: normal !important;
  }
}

/* ===== DRONE PAGE — HERO ===== */

.pcg-drone-page-section {
  position: relative;
}

.pcg-drone-page-container {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-drone-page-hero {
  min-height: 92vh;
  display: flex;
  align-items: center;
  padding: 165px 0 140px;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(2,8,20,0.94), rgba(7,20,39,0.78), rgba(2,8,20,0.44)), radial-gradient(circle at 18% 36%, rgba(111,144,183,0.26), transparent 34%), linear-gradient(135deg, #071427, #020814);
}

.pcg-drone-page-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(255,255,255,0.028) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.024) 1px, transparent 1px);
  background-size: 58px 58px;
  opacity: 0.16;
  pointer-events: none;
}

.pcg-drone-page-hero-card {
  position: relative;
  z-index: 2;
  max-width: 900px;
  padding: 52px;
  border-radius: 36px;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.14), transparent 40%), rgba(2,8,20,0.58);
  border: 1px solid rgba(255,255,255,0.14);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 38px 110px rgba(0,0,0,0.42), inset 0 1px 0 rgba(255,255,255,0.08);
}

.pcg-drone-page-hero-card::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 52px;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 28px rgba(199,165,107,0.42);
}

.pcg-drone-page-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
  padding-top: 26px;
}

.pcg-drone-page-hero-title {
  color: #ffffff;
  font-size: clamp(46px, 6vw, 90px);
  line-height: 0.94;
  font-weight: 900;
  letter-spacing: -0.075em;
  max-width: 980px;
  margin-bottom: 28px;
  text-shadow: 0 22px 64px rgba(0,0,0,0.52);
}

.pcg-drone-page-hero-text {
  color: rgba(255,255,255,0.78);
  font-size: 20px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 760px;
  margin-bottom: 38px;
}

.pcg-drone-page-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  .pcg-drone-page-hero {
    min-height: auto;
    padding: 110px 0 90px;
  }
}

@media (max-width: 767px) {
  .pcg-drone-page-hero-card {
    padding: 44px 28px;
    border-radius: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-drone-page-hero-card::before {
    left: 28px;
    top: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-drone-page-hero-title {
    font-size: clamp(42px, 12vw, 58px);
    line-height: 0.98;
  }
}

/* ===== DRONE PAGE — HERO SPACING + BUTTON FIX ===== */

.pcg-drone-page-hero {
  min-height: auto !important;
  height: auto !important;
  padding-top: 115px !important;
  padding-bottom: 95px !important;
}

.pcg-drone-page-hero-card {
  padding: 46px 48px !important;
}

.pcg-drone-page-hero-card::before {
  top: 28px !important;
}

.pcg-drone-page-eyebrow {
  padding-top: 22px !important;
}

.pcg-drone-page-hero-title {
  font-size: clamp(44px, 5.4vw, 82px) !important;
  line-height: 0.96 !important;
}

.pcg-drone-page-hero-text {
  margin-bottom: 30px !important;
}

/* Kill Bootstrap blue buttons on Drone page */

.pcg-drone-page-section .pcg-visual-btn, .pcg-drone-page-section a.pcg-visual-btn, .pcg-drone-page-section button.pcg-visual-btn, .pcg-drone-page-section .btn.pcg-visual-btn, .pcg-drone-page-section .btn-primary.pcg-visual-btn, .pcg-drone-page-section a.btn.btn-primary.pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 165px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.pcg-drone-page-section .pcg-visual-btn-primary, .pcg-drone-page-section a.pcg-visual-btn-primary, .pcg-drone-page-section .btn.pcg-visual-btn-primary, .pcg-drone-page-section .btn-primary.pcg-visual-btn-primary, .pcg-drone-page-section a.btn.btn-primary.pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  background-color: #c7a56b !important;
  border: 1px solid rgba(244,239,231,0.40) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-drone-page-section .pcg-visual-btn-secondary, .pcg-drone-page-section a.pcg-visual-btn-secondary, .pcg-drone-page-section .btn.pcg-visual-btn-secondary, .pcg-drone-page-section .btn-primary.pcg-visual-btn-secondary, .pcg-drone-page-section a.btn.btn-primary.pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08) !important;
  background-color: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-drone-page-section .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

@media (max-width: 767px) {
  .pcg-drone-page-hero {
    padding-top: 95px !important;
    padding-bottom: 75px !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-page-hero-card {
    padding: 42px 28px !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-page-actions {
    gap: 12px !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-page-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

/* DRONE VIDEO — PLACEHOLDER / BACKGROUND FIX */

.pcg-drone-video-feature, .pcg-drone-video-wrap, .pcg-drone-feature-video {
  background: #020814 !important;
}

.pcg-drone-video-wrap {
  min-height: 360px !important;
}

/* ===== DRONE PAGE — CLEAN YOUTUBE VIDEO FEATURE ===== */

.pcg-drone-video-feature {
  padding: 115px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #020814 0%, #071427 100%);
}

.pcg-drone-video-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 42px;
  background: #020814 !important;
  border: 1px solid rgba(255,255,255,0.14);
  box-shadow: 0 52px 150px rgba(0,0,0,0.54), 0 0 95px rgba(111,144,183,0.18);
}

/* Targets iframe/video embeds */

.pcg-drone-video-wrap iframe, .pcg-drone-video-wrap video, .pcg-drone-feature-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 420px !important;
  border: 0 !important;
  background: #020814 !important;
}

.pcg-drone-video-wrap iframe {
  border-radius: 42px !important;
}

/* Dark cinematic edge overlay */

.pcg-drone-video-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(2,8,20,0.10), rgba(2,8,20,0.30)), radial-gradient(circle at center, transparent 40%, rgba(2,8,20,0.28) 100%);
}

/* Caption sits above overlay */

.pcg-drone-video-caption {
  position: absolute;
  left: 34px;
  right: 34px;
  bottom: 34px;
  z-index: 4;
  max-width: 660px;
  padding: 26px 30px;
  border-radius: 28px;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.16), transparent 42%), linear-gradient(135deg, rgba(2,8,20,0.90), rgba(7,20,39,0.74));
  border: 1px solid rgba(255,255,255,0.16);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 28px 80px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,255,255,0.08);
}

.pcg-drone-video-eyebrow {
  color: #c7a56b;
  font-size: 12px;
  letter-spacing: 2.8px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 12px;
}

.pcg-drone-video-title {
  color: #ffffff;
  font-size: clamp(30px, 4vw, 56px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-bottom: 14px;
}

.pcg-drone-video-text {
  color: rgba(255,255,255,0.76);
  font-size: 16px;
  line-height: 1.65;
  font-weight: 650;
  margin-bottom: 0;
  max-width: 560px;
}

@media (max-width: 767px) {
  .pcg-drone-video-feature {
    padding: 90px 0;
  }
}

@media (max-width: 767px) {
  .pcg-drone-video-wrap {
    border-radius: 30px;
  }
}

@media (max-width: 767px) {
  .pcg-drone-video-wrap iframe, .pcg-drone-video-wrap video, .pcg-drone-feature-video {
    min-height: 240px !important;
    border-radius: 30px 30px 0 0 !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-video-caption {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    max-width: 100%;
    border-radius: 0 0 28px 28px;
  }
}

/* ===== DRONE PAGE — VIDEO CAPTION OVERLAY ===== */

.pcg-drone-video-wrap {
  position: relative !important;
  overflow: hidden !important;
}

.pcg-drone-video-caption {
  position: absolute !important;
  left: 34px !important;
  bottom: 34px !important;
  z-index: 5 !important;
  max-width: 620px !important;
  padding: 24px 28px !important;
  border-radius: 26px !important;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.16), transparent 42%), linear-gradient(135deg, rgba(2,8,20,0.88), rgba(7,20,39,0.72)) !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  box-shadow: 0 28px 80px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.pcg-drone-video-eyebrow {
  color: #c7a56b !important;
  font-size: 11px !important;
  letter-spacing: 2.8px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 10px !important;
}

.pcg-drone-video-title {
  color: #ffffff !important;
  font-size: clamp(28px, 3.4vw, 48px) !important;
  line-height: 0.98 !important;
  font-weight: 900 !important;
  letter-spacing: -0.055em !important;
  margin-bottom: 12px !important;
}

.pcg-drone-video-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 15.5px !important;
  line-height: 1.6 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
  max-width: 540px !important;
}

@media (max-width: 767px) {
  .pcg-drone-video-caption {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    max-width: 100% !important;
    border-radius: 0 0 28px 28px !important;
  }
}

/* ===== DRONE PAGE — AERIAL USE CASES ===== */

.pcg-drone-usecases-section {
  padding: 145px 0;
  background: radial-gradient(circle at 82% 18%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%);
}

.pcg-drone-usecases-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-drone-usecases-title {
  color: #071427 !important;
  font-size: clamp(44px, 5.5vw, 82px) !important;
  line-height: 0.96 !important;
  font-weight: 900 !important;
  letter-spacing: -0.065em !important;
  max-width: 1050px !important;
  margin-bottom: 24px !important;
}

.pcg-drone-usecases-text {
  color: #425466 !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 860px !important;
  margin-bottom: 72px !important;
}

.pcg-drone-usecases-grid {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 18px !important;
}

.pcg-drone-usecase-card {
  position: relative !important;
  min-height: 285px !important;
  padding: 30px !important;
  border-radius: 28px !important;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.14), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,239,231,0.78)) !important;
  border: 1px solid rgba(7,20,39,0.10) !important;
  box-shadow: 0 28px 80px rgba(7,20,39,0.12), inset 0 1px 0 rgba(255,255,255,0.65) !important;
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease !important;
}

.pcg-drone-usecase-card::before {
  content: "" !important;
  position: absolute !important;
  top: 28px !important;
  left: 30px !important;
  width: 70px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
}

.pcg-drone-usecase-card:hover {
  transform: translateY(-9px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 42px 115px rgba(7,20,39,0.20), 0 0 60px rgba(199,165,107,0.14) !important;
}

.pcg-drone-usecase-number {
  display: block !important;
  color: #6f90b7 !important;
  font-size: 14px !important;
  letter-spacing: 2.5px !important;
  font-weight: 900 !important;
  margin-top: 42px !important;
  margin-bottom: 20px !important;
}

.pcg-drone-usecase-card-title {
  color: #071427 !important;
  font-size: 26px !important;
  line-height: 1.04 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  margin-bottom: 16px !important;
}

.pcg-drone-usecase-card-text {
  color: #425466 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 1199px) {
  .pcg-drone-usecases-grid {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-usecases-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-usecases-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ===== DRONE PAGE — AERIAL MOMENTS FINAL ===== */

.pcg-drone-moments-section {
  padding: 145px 0 !important;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.14), transparent 30%), radial-gradient(circle at 82% 78%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%) !important;
}

.pcg-drone-moments-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-drone-moments-title {
  color: #ffffff !important;
  font-size: clamp(44px, 5.5vw, 82px) !important;
  line-height: 0.96 !important;
  font-weight: 900 !important;
  letter-spacing: -0.065em !important;
  max-width: 1050px !important;
  margin-bottom: 24px !important;
}

.pcg-drone-moments-text {
  color: rgba(255,255,255,0.74) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 860px !important;
  margin-bottom: 72px !important;
}

.pcg-drone-moments-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
}

.pcg-drone-moment-card {
  overflow: hidden !important;
  border-radius: 30px !important;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.16), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035)) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 34px 100px rgba(0,0,0,0.36), inset 0 1px 0 rgba(255,255,255,0.08) !important;
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease !important;
}

.pcg-drone-moment-card:hover {
  transform: translateY(-9px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 48px 125px rgba(0,0,0,0.46), 0 0 70px rgba(199,165,107,0.14) !important;
}

.pcg-drone-moment-card iframe, .pcg-drone-moment-card video, .pcg-drone-moment-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 220px !important;
  border: 0 !important;
  background: #020814 !important;
}

.pcg-drone-moment-caption {
  padding: 22px 24px 26px !important;
  background: linear-gradient(135deg, rgba(2,8,20,0.98), rgba(7,20,39,0.88)) !important;
  border-top: 1px solid rgba(255,255,255,0.10) !important;
}

.pcg-drone-moment-kicker {
  color: #c7a56b !important;
  font-size: 11px !important;
  letter-spacing: 2.4px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 10px !important;
}

.pcg-drone-moment-title {
  color: #ffffff !important;
  font-size: 24px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  margin-bottom: 0 !important;
}

/* Make YouTube embeds cleaner inside the cards */

.pcg-drone-moment-card iframe {
  filter: contrast(1.04) saturate(1.06) !important;
}

/* Tablet */

@media (max-width: 991px) {
  .pcg-drone-moments-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 991px) {
  .pcg-drone-moment-card iframe, .pcg-drone-moment-card video, .pcg-drone-moment-video {
    min-height: 260px !important;
  }
}

/* Phone */

@media (max-width: 575px) {
  .pcg-drone-moments-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moments-title {
    font-size: clamp(40px, 12vw, 56px) !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moments-text {
    font-size: 17px !important;
    margin-bottom: 48px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-card {
    border-radius: 24px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-card iframe, .pcg-drone-moment-card video, .pcg-drone-moment-video {
    min-height: 220px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-caption {
    padding: 20px 20px 22px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-title {
    font-size: 22px !important;
  }
}

/* ===== DRONE PAGE — AERIAL MOMENTS PREMIUM LAYOUT FIX ===== */

/* Make the section container wider only for this section */

.pcg-drone-moments-section .pcg-drone-page-container {
  max-width: 1280px !important;
}

/* Change from 3 cramped cards to a 2 + 1 editorial layout */

.pcg-drone-moments-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 30px !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
}

/* Let the third card become a wide cinematic card */

.pcg-drone-moment-card:nth-child(3) {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: 1.35fr 0.65fr !important;
  align-items: stretch !important;
}

/* Do NOT force video height — this prevents black bars from getting worse */

.pcg-drone-moment-card iframe, .pcg-drone-moment-card video, .pcg-drone-moment-video {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 0 !important;
  border: 0 !important;
  background: #020814 !important;
}

/* Bigger, cleaner captions */

.pcg-drone-moment-caption {
  padding: 28px 30px 32px !important;
  min-height: auto !important;
}

.pcg-drone-moment-kicker {
  font-size: 11px !important;
  letter-spacing: 2.6px !important;
  margin-bottom: 12px !important;
}

.pcg-drone-moment-title {
  font-size: 28px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.04em !important;
  max-width: 100% !important;
}

/* Special styling for the wide third card caption */

.pcg-drone-moment-card:nth-child(3) .pcg-drone-moment-caption {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 38px !important;
}

.pcg-drone-moment-card:nth-child(3) .pcg-drone-moment-title {
  font-size: clamp(30px, 3vw, 44px) !important;
  line-height: 1.02 !important;
}

/* Tablet and phone: stack everything cleanly */

@media (max-width: 991px) {
  .pcg-drone-moments-grid {
    grid-template-columns: 1fr !important;
    max-width: 820px !important;
  }
}

@media (max-width: 991px) {
  .pcg-drone-moment-card:nth-child(3) {
    grid-column: auto !important;
    display: block !important;
  }
}

@media (max-width: 991px) {
  .pcg-drone-moment-card:nth-child(3) .pcg-drone-moment-caption {
    display: block !important;
    padding: 28px 30px 32px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moments-grid {
    max-width: 100% !important;
    gap: 24px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-caption {
    padding: 22px 22px 26px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-title {
    font-size: 23px !important;
  }
}

/* ===== DRONE PAGE — AERIAL MOMENTS CLEAN 3-CARD FIX ===== */

.pcg-drone-moments-section .pcg-drone-page-container {
  max-width: 1320px !important;
}

.pcg-drone-moments-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
}

/* Undo the broken wide third-card layout */

.pcg-drone-moment-card:nth-child(3) {
  grid-column: auto !important;
  display: block !important;
  grid-template-columns: none !important;
}

.pcg-drone-moment-card {
  overflow: hidden !important;
  border-radius: 30px !important;
  min-height: 0 !important;
}

/* Do NOT force video height — prevents ugly black bars */

.pcg-drone-moment-card iframe, .pcg-drone-moment-card video, .pcg-drone-moment-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 0 !important;
  border: 0 !important;
  background: #020814 !important;
}

/* Give caption room without stretching the card weirdly */

.pcg-drone-moment-caption, .pcg-drone-moment-card:nth-child(3) .pcg-drone-moment-caption {
  display: block !important;
  padding: 24px 26px 28px !important;
  min-height: 128px !important;
}

.pcg-drone-moment-kicker {
  font-size: 10.5px !important;
  letter-spacing: 2.3px !important;
  margin-bottom: 10px !important;
}

.pcg-drone-moment-title, .pcg-drone-moment-card:nth-child(3) .pcg-drone-moment-title {
  font-size: 23px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  max-width: 100% !important;
  margin-bottom: 0 !important;
}

/* Tablet: stack as large cards */

@media (max-width: 991px) {
  .pcg-drone-moments-grid {
    grid-template-columns: 1fr !important;
    max-width: 760px !important;
    gap: 30px !important;
  }
}

@media (max-width: 991px) {
  .pcg-drone-moment-title {
    font-size: 26px !important;
  }
}

@media (max-width: 991px) {
  .pcg-drone-moment-caption {
    min-height: auto !important;
  }
}

/* Phone */

@media (max-width: 575px) {
  .pcg-drone-moments-grid {
    max-width: 100% !important;
    gap: 24px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-card {
    border-radius: 24px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-caption {
    padding: 20px 20px 22px !important;
    min-height: auto !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-title {
    font-size: 22px !important;
  }
}

/* ===== DRONE PAGE — AERIAL MOMENTS FEATURED REEL LAYOUT ===== */

.pcg-drone-moments-section .pcg-drone-page-container {
  max-width: 1180px !important;
}

/* Stop the 3 tiny cards */

.pcg-drone-moments-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 32px !important;
  max-width: 980px !important;
  margin: 0 auto !important;
}

/* First clip becomes the big cinematic feature */

.pcg-drone-moment-card.pcg-moment-featured {
  grid-column: 1 / -1 !important;
}

/* Make all cards clean and balanced */

.pcg-drone-moment-card {
  overflow: hidden !important;
  border-radius: 30px !important;
  min-height: 0 !important;
}

/* Do NOT force height — avoids black bars */

.pcg-drone-moment-card iframe, .pcg-drone-moment-card video, .pcg-drone-moment-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 0 !important;
  border: 0 !important;
  background: #020814 !important;
}

/* Bigger caption for the featured clip */

.pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-caption {
  padding: 30px 34px 34px !important;
}

/* Regular card captions */

.pcg-drone-moment-caption {
  padding: 24px 26px 28px !important;
  min-height: auto !important;
}

/* Kicker */

.pcg-drone-moment-kicker {
  font-size: 10.5px !important;
  letter-spacing: 2.4px !important;
  margin-bottom: 10px !important;
}

/* Regular headings */

.pcg-drone-moment-title {
  font-size: 24px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  max-width: 100% !important;
  margin-bottom: 0 !important;
}

/* Featured heading */

.pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-title {
  font-size: clamp(30px, 3vw, 42px) !important;
  line-height: 1.04 !important;
  max-width: 780px !important;
}

/* Tablet / phone */

@media (max-width: 991px) {
  .pcg-drone-moments-grid {
    grid-template-columns: 1fr !important;
    max-width: 760px !important;
  }
}

@media (max-width: 991px) {
  .pcg-drone-moment-card.pcg-moment-featured {
    grid-column: auto !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moments-grid {
    max-width: 100% !important;
    gap: 24px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-card {
    border-radius: 24px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-caption, .pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-caption {
    padding: 20px 20px 22px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-title, .pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-title {
    font-size: 22px !important;
  }
}

/* ===== DRONE PAGE — REAL CAPTION FIX AFTER WRAPPER ADDED ===== */

.pcg-drone-moment-card {
  overflow: hidden !important;
  border-radius: 30px !important;
}

.pcg-drone-moment-caption, .pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-caption {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 22px 32px 26px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  background: linear-gradient(135deg, rgba(2,8,20,0.98), rgba(7,20,39,0.88)) !important;
  border-top: 1px solid rgba(255,255,255,0.10) !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

.pcg-drone-moment-kicker {
  display: block !important;
  color: #c7a56b !important;
  font-size: 10px !important;
  letter-spacing: 2.1px !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
}

.pcg-drone-moment-title, .pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-title {
  display: block !important;
  color: #ffffff !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  font-weight: 900 !important;
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  overflow: visible !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-title {
  font-size: clamp(25px, 2.2vw, 32px) !important;
}

@media (max-width: 575px) {
  .pcg-drone-moment-caption, .pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-caption {
    padding: 20px 22px 24px !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-moment-title, .pcg-drone-moment-card.pcg-moment-featured .pcg-drone-moment-title {
    font-size: 20px !important;
  }
}

/* ===== DRONE PAGE — PROCESS SECTION ===== */

.pcg-drone-process-section {
  padding: 145px 0 !important;
  background: radial-gradient(circle at 82% 18%, rgba(111,144,183,0.12), transparent 30%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%) !important;
}

.pcg-drone-process-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-drone-process-title {
  color: #071427 !important;
  font-size: clamp(44px, 5.5vw, 82px) !important;
  line-height: 0.96 !important;
  font-weight: 900 !important;
  letter-spacing: -0.065em !important;
  max-width: 1050px !important;
  margin-bottom: 24px !important;
}

.pcg-drone-process-text {
  color: #425466 !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 860px !important;
  margin-bottom: 72px !important;
}

.pcg-drone-process-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 22px !important;
}

.pcg-drone-process-card {
  position: relative !important;
  min-height: 270px !important;
  padding: 34px !important;
  border-radius: 30px !important;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.14), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.96), rgba(244,239,231,0.78)) !important;
  border: 1px solid rgba(7,20,39,0.10) !important;
  box-shadow: 0 28px 80px rgba(7,20,39,0.12), inset 0 1px 0 rgba(255,255,255,0.65) !important;
  transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease !important;
}

.pcg-drone-process-card::before {
  content: "" !important;
  position: absolute !important;
  top: 30px !important;
  left: 34px !important;
  width: 76px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
}

.pcg-drone-process-card:hover {
  transform: translateY(-9px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 42px 115px rgba(7,20,39,0.20), 0 0 60px rgba(199,165,107,0.14) !important;
}

.pcg-drone-process-number {
  display: block !important;
  color: #6f90b7 !important;
  font-size: 14px !important;
  letter-spacing: 2.5px !important;
  font-weight: 900 !important;
  margin-top: 42px !important;
  margin-bottom: 20px !important;
}

.pcg-drone-process-card-title {
  color: #071427 !important;
  font-size: 34px !important;
  line-height: 1.02 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  margin-bottom: 16px !important;
}

.pcg-drone-process-card-text {
  color: #425466 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 991px) {
  .pcg-drone-process-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 575px) {
  .pcg-drone-process-section {
    padding: 105px 0 !important;
  }
}

/* ===== DRONE PAGE — FINAL CTA ===== */

.pcg-drone-final-cta {
  padding: 145px 0 !important;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%) !important;
}

.pcg-drone-final-card {
  position: relative !important;
  overflow: hidden !important;
  padding: 72px !important;
  border-radius: 38px !important;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 40%), radial-gradient(circle at bottom left, rgba(111,144,183,0.20), transparent 42%), linear-gradient(135deg, #071427, #020814) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 70px rgba(111,144,183,0.14) !important;
}

.pcg-drone-final-card::before {
  content: "" !important;
  position: absolute !important;
  top: 42px !important;
  left: 72px !important;
  width: 118px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(199,165,107,0.42) !important;
}

.pcg-drone-final-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
  padding-top: 34px !important;
}

.pcg-drone-final-title {
  color: #ffffff !important;
  font-size: clamp(42px, 5.5vw, 82px) !important;
  line-height: 0.96 !important;
  font-weight: 900 !important;
  letter-spacing: -0.065em !important;
  max-width: 980px !important;
  margin-bottom: 24px !important;
}

.pcg-drone-final-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 820px !important;
  margin-bottom: 38px !important;
}

.pcg-drone-final-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

/* Make sure CTA buttons stay premium, not Bootstrap blue */

.pcg-drone-final-actions .pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 180px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.pcg-drone-final-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.40) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-drone-final-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.22) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-drone-final-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

@media (max-width: 767px) {
  .pcg-drone-final-cta {
    padding: 105px 0 !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-final-card {
    padding: 46px 28px !important;
    border-radius: 28px !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-final-card::before {
    left: 28px !important;
    top: 32px !important;
  }
}

@media (max-width: 767px) {
  .pcg-drone-final-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

/* ===== REAL ESTATE PAGE — PROPERTY PRESENTATION BUTTON ROW ===== */

.pcg-real-media-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 30px !important;
}

.pcg-real-media-actions .pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 170px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.pcg-real-media-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.40) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.22), 0 0 42px rgba(199,165,107,0.10) !important;
}

.pcg-real-media-actions .pcg-visual-btn-secondary {
  color: #071427 !important;
  background: rgba(255,255,255,0.72) !important;
  border: 1px solid rgba(7,20,39,0.14) !important;
}

.pcg-real-media-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

@media (max-width: 575px) {
  .pcg-real-media-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

/* ===== REAL ESTATE — DRONE BUTTON ROW HARD FIX ===== */

.real-media-actions, .pcg-real-media-actions {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 30px !important;
}

/* Both buttons */

.real-media-actions a, .pcg-real-media-actions a, .real-media-actions .btn, .pcg-real-media-actions .btn, .real-media-actions .pcg-visual-btn, .pcg-real-media-actions .pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 172px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
}

/* Primary button */

.real-media-actions .pcg-visual-btn-primary, .pcg-real-media-actions .pcg-visual-btn-primary, .real-media-actions .btn-primary, .pcg-real-media-actions .btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  background-color: #c7a56b !important;
  border: 1px solid rgba(199,165,107,0.48) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.22), 0 0 42px rgba(199,165,107,0.10) !important;
}

/* Secondary button */

.real-media-actions .pcg-visual-btn-secondary, .pcg-real-media-actions .pcg-visual-btn-secondary, .real-media-actions .btn-link, .pcg-real-media-actions .btn-link {
  color: #071427 !important;
  background: rgba(255,255,255,0.84) !important;
  background-color: rgba(255,255,255,0.84) !important;
  border: 1px solid rgba(7,20,39,0.18) !important;
  box-shadow: 0 14px 34px rgba(7,20,39,0.08) !important;
}

.real-media-actions a:hover, .pcg-real-media-actions a:hover, .real-media-actions .btn:hover, .pcg-real-media-actions .btn:hover {
  transform: translateY(-3px) !important;
}

/* Phone */

@media (max-width: 575px) {
  .real-media-actions, .pcg-real-media-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}

@media (max-width: 575px) {
  .real-media-actions a, .pcg-real-media-actions a, .real-media-actions .btn, .pcg-real-media-actions .btn {
    width: 100% !important;
  }
}

/* ===== REAL ESTATE — PROPERTY PRESENTATION BUTTON ROW ONLY ===== */

.real-media-actions, .pcg-real-media-actions {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 30px !important;
}

/* Only links/buttons inside the button row */

.real-media-actions > a, .pcg-real-media-actions > a, .real-media-actions > .btn, .pcg-real-media-actions > .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 178px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  opacity: 1 !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Start a Real Estate Project */

.real-media-actions > .pcg-visual-btn-primary, .pcg-real-media-actions > .pcg-visual-btn-primary, .real-media-actions > a.pcg-visual-btn-primary, .pcg-real-media-actions > a.pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  background-color: #c7a56b !important;
  border: 1px solid rgba(199,165,107,0.52) !important;
  box-shadow: 0 16px 38px rgba(199,165,107,0.20), 0 0 34px rgba(199,165,107,0.10) !important;
}

/* View Drone Work */

.real-media-actions > .pcg-visual-btn-secondary, .pcg-real-media-actions > .pcg-visual-btn-secondary, .real-media-actions > a.pcg-visual-btn-secondary, .pcg-real-media-actions > a.pcg-visual-btn-secondary, .real-media-actions > a.btn-link.pcg-visual-btn-secondary, .pcg-real-media-actions > a.btn-link.pcg-visual-btn-secondary {
  color: #071427 !important;
  background: rgba(255,255,255,0.94) !important;
  background-color: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(7,20,39,0.22) !important;
  box-shadow: 0 14px 34px rgba(7,20,39,0.10) !important;
}

.real-media-actions > a:hover, .pcg-real-media-actions > a:hover, .real-media-actions > .btn:hover, .pcg-real-media-actions > .btn:hover {
  transform: translateY(-3px) !important;
  text-decoration: none !important;
}

@media (max-width: 575px) {
  .real-media-actions, .pcg-real-media-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}

@media (max-width: 575px) {
  .real-media-actions > a, .pcg-real-media-actions > a, .real-media-actions > .btn, .pcg-real-media-actions > .btn {
    width: 100% !important;
  }
}

/* ===== EMERGENCY RESTORE — REAL ESTATE PROPERTY PRESENTATION SECTION ===== */

.pcg-real-presentation-section {
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.13), transparent 32%), radial-gradient(circle at 82% 78%, rgba(199,165,107,0.16), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #fbf8f2 52%, #ffffff 100%) !important;
  padding-top: 135px !important;
  padding-bottom: 135px !important;
  overflow: hidden !important;
}

.pcg-real-presentation-section .container, .pcg-real-presentation-section .pcg-real-container, .pcg-real-presentation-section .pcg-real-media-container {
  background: transparent !important;
}

/* ===== REAL ESTATE — PROPERTY PRESENTATION BUTTONS ONLY ===== */

.pcg-real-presentation-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 30px !important;
}

.pcg-real-presentation-actions > a, .pcg-real-presentation-actions > .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 176px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

/* First button */

.pcg-real-presentation-actions > a:first-child {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(199,165,107,0.52) !important;
  box-shadow: 0 16px 38px rgba(199,165,107,0.20) !important;
}

/* Second button */

.pcg-real-presentation-actions > a:nth-child(2) {
  color: #071427 !important;
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(7,20,39,0.22) !important;
  box-shadow: 0 14px 34px rgba(7,20,39,0.10) !important;
}

.pcg-real-presentation-actions > a:hover {
  transform: translateY(-3px) !important;
}

@media (max-width: 575px) {
  .pcg-real-presentation-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}

@media (max-width: 575px) {
  .pcg-real-presentation-actions > a {
    width: 100% !important;
  }
}

/* ===== REAL ESTATE — PROPERTY PRESENTATION BUTTONS ONLY ===== */

.pcg-real-presentation-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 30px !important;
}

.pcg-real-presentation-actions > a, .pcg-real-presentation-actions > .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 176px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

/* First button */

.pcg-real-presentation-actions > a:first-child {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(199,165,107,0.52) !important;
  box-shadow: 0 16px 38px rgba(199,165,107,0.20) !important;
}

/* Second button */

.pcg-real-presentation-actions > a:nth-child(2) {
  color: #071427 !important;
  background: rgba(255,255,255,0.94) !important;
  border: 1px solid rgba(7,20,39,0.22) !important;
  box-shadow: 0 14px 34px rgba(7,20,39,0.10) !important;
}

.pcg-real-presentation-actions > a:hover {
  transform: translateY(-3px) !important;
}

@media (max-width: 575px) {
  .pcg-real-presentation-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}

@media (max-width: 575px) {
  .pcg-real-presentation-actions > a {
    width: 100% !important;
  }
}

/* ===== EMERGENCY RESTORE — PROPERTY PRESENTATION SECTION BACKGROUND ===== */

section:has(.pcg-real-presentation-actions), section.pcg-real-presentation-section {
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.12), transparent 32%), radial-gradient(circle at 82% 78%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #fbf8f2 52%, #ffffff 100%) !important;
  padding-top: 135px !important;
  padding-bottom: 135px !important;
  overflow: hidden !important;
}

/* Make sure inner wrappers are not creating the white slab */

section:has(.pcg-real-presentation-actions) .container, section:has(.pcg-real-presentation-actions) .pcg-real-container, section:has(.pcg-real-presentation-actions) .pcg-real-media-container, section:has(.pcg-real-presentation-actions) .row, section:has(.pcg-real-presentation-actions) [class*="col"], section.pcg-real-presentation-section .container, section.pcg-real-presentation-section .pcg-real-container, section.pcg-real-presentation-section .pcg-real-media-container, section.pcg-real-presentation-section .row, section.pcg-real-presentation-section [class*="col"] {
  background: transparent !important;
}

/* ===== REAL ESTATE — DARKEN VIEW DRONE WORK BUTTON ONLY ===== */

.pcg-real-presentation-actions > a:nth-child(2), .pcg-real-presentation-actions > .btn:nth-child(2), .real-media-actions > a:nth-child(2), .real-media-actions > .btn:nth-child(2) {
  color: #ffffff !important;
  background: linear-gradient(135deg, #071427, #10243f) !important;
  background-color: #071427 !important;
  border: 1px solid rgba(111,144,183,0.38) !important;
  box-shadow: 0 16px 38px rgba(7,20,39,0.18), 0 0 38px rgba(111,144,183,0.10) !important;
  opacity: 1 !important;
  text-decoration: none !important;
}

.pcg-real-presentation-actions > a:nth-child(2):hover, .real-media-actions > a:nth-child(2):hover {
  color: #ffffff !important;
  background: linear-gradient(135deg, #10243f, #071427) !important;
  transform: translateY(-3px) !important;
}

/* ===== REAL ESTATE — VIEW DRONE WORK BUTTON EXACT FIX ===== */

a.pcg-real-drone-btn, a.pcg-real-drone-btn:link, a.pcg-real-drone-btn:visited, a.btn.pcg-real-drone-btn, a.btn-link.pcg-real-drone-btn, a.pcg-visual-btn-secondary.pcg-real-drone-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 178px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  color: #071427 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid rgba(7,20,39,0.28) !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  opacity: 1 !important;
  box-shadow: none !important;
  transition: transform 0.3s ease, background 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

a.pcg-real-drone-btn:hover, a.pcg-real-drone-btn:focus, a.pcg-real-drone-btn:active {
  color: #ffffff !important;
  background: linear-gradient(135deg, #071427, #10243f) !important;
  background-color: #071427 !important;
  border-color: rgba(111,144,183,0.48) !important;
  text-decoration: none !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 38px rgba(7,20,39,0.18), 0 0 38px rgba(111,144,183,0.10) !important;
}

/* Kill the weird line on the first button too */

.pcg-real-presentation-actions a, .real-media-actions a {
  text-decoration: none !important;
}

/* ===== REAL ESTATE — CLEAN DRONE LINK BUTTON ===== */

.pcg-real-presentation-actions {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 30px !important;
}

/* Exact clean drone button — no Bootstrap dependency */

.pcg-real-presentation-actions .pcg-real-drone-clean, .pcg-real-presentation-actions a.pcg-real-drone-clean, a.pcg-real-drone-clean:link, a.pcg-real-drone-clean:visited {
  all: unset !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 178px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  color: #071427 !important;
  background: transparent !important;
  border: 1px solid rgba(7,20,39,0.32) !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  transition: transform 0.3s ease, background 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.pcg-real-presentation-actions .pcg-real-drone-clean:hover, .pcg-real-presentation-actions a.pcg-real-drone-clean:hover {
  color: #ffffff !important;
  background: linear-gradient(135deg, #071427, #10243f) !important;
  border-color: rgba(111,144,183,0.48) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 38px rgba(7,20,39,0.18), 0 0 38px rgba(111,144,183,0.10) !important;
}

/* Phone */

@media (max-width: 575px) {
  .pcg-real-presentation-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}

@media (max-width: 575px) {
  .pcg-real-presentation-actions .pcg-real-drone-clean {
    width: 100% !important;
  }
}

/* ===== REAL ESTATE — EDITING SUPPORT CARD LABELS ===== */

.pcg-real-edit-label {
  display: block !important;
  color: #c7a56b !important;
  font-size: 11px !important;
  letter-spacing: 2.4px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-top: 42px !important;
  margin-bottom: 18px !important;
}

STORY {
}

/* ===== DRONE PAGE — PROCESS CARDS WITHOUT NUMBER LABELS ===== */

.pcg-drone-process-card {
  padding-top: 42px !important;
}

.pcg-drone-process-card-title {
  margin-top: 38px !important;
}

/* ===== FILM PAGE — CINEMATIC HERO ===== */

.pcg-film-section {
  position: relative;
}

.pcg-film-container {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-film-hero {
  min-height: auto;
  padding: 125px 0 110px;
  overflow: hidden;
  background: radial-gradient(circle at 18% 28%, rgba(199,165,107,0.18), transparent 30%), radial-gradient(circle at 86% 72%, rgba(111,144,183,0.16), transparent 34%), linear-gradient(135deg, #020814 0%, #071427 48%, #020814 100%);
}

.pcg-film-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
  background-size: 62px 62px;
  opacity: 0.16;
  pointer-events: none;
}

.pcg-film-hero-shell {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;
  gap: 70px;
  align-items: center;
}

.pcg-film-hero-copy {
  position: relative;
  padding-top: 42px;
}

.pcg-film-hero-copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 118px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  box-shadow: 0 0 28px rgba(199,165,107,0.42);
}

.pcg-film-eyebrow {
  color: #c7a56b;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-film-hero-title {
  color: #ffffff;
  font-size: clamp(52px, 6.3vw, 104px);
  line-height: 0.9;
  font-weight: 950;
  letter-spacing: -0.08em;
  max-width: 880px;
  margin-bottom: 30px;
  text-shadow: 0 26px 72px rgba(0,0,0,0.58);
}

.pcg-film-hero-text {
  color: rgba(255,255,255,0.76);
  font-size: 20px;
  line-height: 1.75;
  font-weight: 600;
  max-width: 760px;
  margin-bottom: 38px;
}

.pcg-film-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

.pcg-film-hero-panel {
  position: relative;
  overflow: hidden;
  padding: 44px;
  border-radius: 38px;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.20), transparent 42%), radial-gradient(circle at bottom left, rgba(111,144,183,0.20), transparent 44%), linear-gradient(135deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.15);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 44px 130px rgba(0,0,0,0.44), inset 0 1px 0 rgba(255,255,255,0.08);
}

.pcg-film-hero-panel::before {
  content: "";
  display: block;
  width: 96px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #c7a56b, transparent);
  margin-bottom: 34px;
}

.pcg-film-panel-kicker {
  color: #c7a56b;
  font-size: 12px;
  letter-spacing: 2.8px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-film-panel-title {
  color: #ffffff;
  font-size: clamp(34px, 3.7vw, 56px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.055em;
  margin-bottom: 20px;
}

.pcg-film-panel-text {
  color: rgba(255,255,255,0.72);
  font-size: 16px;
  line-height: 1.7;
  font-weight: 650;
  margin-bottom: 28px;
}

.pcg-film-panel-tags {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.pcg-film-panel-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 13px;
  border-radius: 999px;
  color: rgba(255,255,255,0.88);
  font-size: 12.5px;
  font-weight: 850;
  letter-spacing: 0.02em;
  background: rgba(255,255,255,0.075);
  border: 1px solid rgba(255,255,255,0.14);
}

@media (max-width: 991px) {
  .pcg-film-hero-shell {
    grid-template-columns: 1fr;
    gap: 54px;
  }
}

@media (max-width: 575px) {
  .pcg-film-hero {
    padding: 100px 0 86px;
  }
}

@media (max-width: 575px) {
  .pcg-film-hero-title {
    font-size: clamp(46px, 14vw, 66px);
    line-height: 0.96;
  }
}

@media (max-width: 575px) {
  .pcg-film-hero-panel {
    padding: 34px 26px;
    border-radius: 28px;
  }
}

@media (max-width: 575px) {
  .pcg-film-hero-actions .pcg-visual-btn {
    width: 100%;
  }
}

/* ===== FILM PAGE — HERO BUTTON FIX ===== */

.pcg-film-hero-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.pcg-film-hero-actions .pcg-visual-btn, .pcg-film-hero-actions a.pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 178px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease, border-color 0.3s ease !important;
}

.pcg-film-hero-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.42) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-film-hero-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
  box-shadow: none !important;
}

.pcg-film-hero-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-film-hero-actions .pcg-visual-btn-secondary:hover {
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(199,165,107,0.45) !important;
}

/* ===== FILM PAGE — HERO VISUAL POSTER PANEL ===== */

.pcg-film-hero-panel {
  padding: 18px !important;
  border-radius: 38px !important;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035)) !important;
}

.pcg-film-poster-card {
  position: relative !important;
  overflow: hidden !important;
  min-height: 520px !important;
  border-radius: 30px !important;
  background: #020814 !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 40px 120px rgba(0,0,0,0.42), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.pcg-film-poster-img {
  display: block !important;
  width: 100% !important;
  height: 520px !important;
  object-fit: cover !important;
  filter: contrast(1.08) saturate(1.08) brightness(0.84) !important;
  transform: scale(1.01) !important;
  transition: transform 0.8s ease, filter 0.8s ease !important;
}

.pcg-film-poster-card:hover .pcg-film-poster-img {
  transform: scale(1.045) !important;
  filter: contrast(1.12) saturate(1.12) brightness(0.90) !important;
}

.pcg-film-poster-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(2,8,20,0.08) 0%, rgba(2,8,20,0.72) 100%), radial-gradient(circle at center, transparent 38%, rgba(2,8,20,0.34) 100%) !important;
}

.pcg-film-poster-overlay {
  position: absolute !important;
  left: 26px !important;
  right: 26px !important;
  bottom: 26px !important;
  z-index: 4 !important;
  padding: 24px 26px !important;
  border-radius: 24px !important;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.18), transparent 42%), linear-gradient(135deg, rgba(2,8,20,0.90), rgba(7,20,39,0.72)) !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  box-shadow: 0 24px 70px rgba(0,0,0,0.36), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.pcg-film-poster-kicker {
  color: #c7a56b !important;
  font-size: 11px !important;
  letter-spacing: 2.7px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 10px !important;
}

.pcg-film-poster-title {
  color: #ffffff !important;
  font-size: clamp(28px, 3.1vw, 44px) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: -0.052em !important;
  margin-bottom: 12px !important;
}

.pcg-film-poster-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 15px !important;
  line-height: 1.58 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

.pcg-film-mini-strip {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 12px !important;
  margin-top: 14px !important;
}

.pcg-film-mini-img {
  display: block !important;
  width: 100% !important;
  height: 118px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
  filter: contrast(1.06) saturate(1.05) brightness(0.82) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,0.26) !important;
  transition: transform 0.45s ease, filter 0.45s ease, border-color 0.45s ease !important;
}

.pcg-film-mini-img:hover {
  transform: translateY(-5px) !important;
  filter: contrast(1.1) saturate(1.12) brightness(0.92) !important;
  border-color: rgba(199,165,107,0.44) !important;
}

@media (max-width: 991px) {
  .pcg-film-poster-card, .pcg-film-poster-img {
    height: auto !important;
    min-height: 440px !important;
  }
}

@media (max-width: 991px) {
  .pcg-film-poster-img {
    height: 440px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-poster-card, .pcg-film-poster-img {
    min-height: 380px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-poster-img {
    height: 380px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-mini-strip {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-mini-img {
    height: 170px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-poster-overlay {
    left: 16px !important;
    right: 16px !important;
    bottom: 16px !important;
    padding: 20px !important;
  }
}

/* ===== FILM HERO — POSTER PANEL CORRECTION ===== */

.pcg-film-hero-panel {
  max-width: 460px !important;
  margin-left: auto !important;
  padding: 16px !important;
}

.pcg-film-poster-card {
  min-height: 430px !important;
  height: 430px !important;
  border-radius: 28px !important;
}

.pcg-film-poster-img {
  height: 430px !important;
  min-height: 430px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.pcg-film-poster-overlay {
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  padding: 20px 22px !important;
  border-radius: 22px !important;
}

.pcg-film-poster-title {
  font-size: clamp(28px, 2.6vw, 38px) !important;
  line-height: 0.98 !important;
  margin-bottom: 10px !important;
}

.pcg-film-poster-text {
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.pcg-film-mini-strip {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

.pcg-film-mini-img {
  width: 100% !important;
  height: 92px !important;
  object-fit: cover !important;
  border-radius: 16px !important;
}

/* Give the whole hero a little more breathing room */

.pcg-film-hero-shell {
  align-items: center !important;
}

@media (max-width: 991px) {
  .pcg-film-hero-panel {
    max-width: 100% !important;
    margin-left: 0 !important;
  }
}

@media (max-width: 991px) {
  .pcg-film-poster-card, .pcg-film-poster-img {
    height: 440px !important;
    min-height: 440px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-poster-card, .pcg-film-poster-img {
    height: 380px !important;
    min-height: 380px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-mini-strip {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-mini-img {
    height: 160px !important;
  }
}

/* ===== FILM HERO — MAKE IT FEEL LIKE A FESTIVAL / FILM PAGE ===== */

.pcg-film-hero {
  min-height: calc(100vh - 70px) !important;
  padding: 145px 0 150px !important;
  display: flex !important;
  align-items: center !important;
}

.pcg-film-hero-shell {
  grid-template-columns: 0.95fr 1.05fr !important;
  gap: 88px !important;
  align-items: center !important;
}

/* Left copy gets slightly more authority */

.pcg-film-hero-title {
  font-size: clamp(58px, 6.8vw, 112px) !important;
  line-height: 0.88 !important;
  max-width: 820px !important;
}

.pcg-film-hero-text {
  max-width: 700px !important;
}

/* Right panel becomes a true visual event */

.pcg-film-hero-panel {
  max-width: 560px !important;
  width: 100% !important;
  margin-left: auto !important;
  padding: 18px !important;
  border-radius: 40px !important;
}

/* Main poster card bigger */

.pcg-film-poster-card {
  height: 560px !important;
  min-height: 560px !important;
  border-radius: 32px !important;
}

.pcg-film-poster-img {
  height: 560px !important;
  min-height: 560px !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* Overlay cleaner and less bulky */

.pcg-film-poster-overlay {
  left: 22px !important;
  right: 22px !important;
  bottom: 22px !important;
  padding: 22px 24px !important;
  border-radius: 24px !important;
}

.pcg-film-poster-kicker {
  font-size: 10.5px !important;
  letter-spacing: 2.7px !important;
  margin-bottom: 10px !important;
}

.pcg-film-poster-title {
  font-size: clamp(31px, 3vw, 44px) !important;
  line-height: 0.96 !important;
  margin-bottom: 10px !important;
}

.pcg-film-poster-text {
  font-size: 14.5px !important;
  line-height: 1.55 !important;
}

/* Mini strip should feel like film frames, not tiny thumbnails */

.pcg-film-mini-strip {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 12px !important;
  margin-top: 14px !important;
}

.pcg-film-mini-img {
  height: 128px !important;
  border-radius: 18px !important;
  object-fit: cover !important;
}

/* Button cleanup */

.pcg-film-hero-actions .pcg-visual-btn {
  min-width: 178px !important;
  height: 48px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.pcg-film-hero-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.42) !important;
}

.pcg-film-hero-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
}

/* Tablet */

@media (max-width: 991px) {
  .pcg-film-hero {
    min-height: auto !important;
    padding: 120px 0 110px !important;
  }
}

@media (max-width: 991px) {
  .pcg-film-hero-shell {
    grid-template-columns: 1fr !important;
    gap: 64px !important;
  }
}

@media (max-width: 991px) {
  .pcg-film-hero-panel {
    max-width: 100% !important;
    margin-left: 0 !important;
  }
}

/* Phone */

@media (max-width: 575px) {
  .pcg-film-hero {
    padding: 105px 0 95px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-hero-title {
    font-size: clamp(46px, 14vw, 68px) !important;
    line-height: 0.96 !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-poster-card, .pcg-film-poster-img {
    height: 430px !important;
    min-height: 430px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-mini-strip {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-mini-img {
    height: 180px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-hero-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

/* ===== FILM HERO — EDITORIAL CARD FIX / NO OVERLAY ===== */

.pcg-film-hero-panel {
  max-width: 620px !important;
  width: 100% !important;
  padding: 20px !important;
  border-radius: 40px !important;
}

/* Main image card only holds the image now */

.pcg-film-poster-card {
  position: relative !important;
  overflow: hidden !important;
  height: 390px !important;
  min-height: 390px !important;
  border-radius: 30px !important;
  background: #020814 !important;
}

.pcg-film-poster-img {
  display: block !important;
  width: 100% !important;
  height: 390px !important;
  min-height: 390px !important;
  object-fit: cover !important;
  object-position: center center !important;
  filter: contrast(1.08) saturate(1.08) brightness(0.88) !important;
}

/* Remove dark overlay effect from the image card */

.pcg-film-poster-card::after {
  display: none !important;
}

/* Caption becomes a clean panel BELOW the photo */

.pcg-film-poster-overlay {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 2 !important;
  margin-top: 14px !important;
  padding: 22px 24px !important;
  border-radius: 24px !important;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.16), transparent 42%), linear-gradient(135deg, rgba(2,8,20,0.94), rgba(7,20,39,0.78)) !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  box-shadow: 0 24px 70px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.08) !important;
}

.pcg-film-poster-kicker {
  color: #c7a56b !important;
  font-size: 10.5px !important;
  letter-spacing: 2.7px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 10px !important;
}

.pcg-film-poster-title {
  color: #ffffff !important;
  font-size: clamp(30px, 2.8vw, 42px) !important;
  line-height: 0.98 !important;
  font-weight: 900 !important;
  letter-spacing: -0.05em !important;
  margin-bottom: 10px !important;
}

.pcg-film-poster-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 14.5px !important;
  line-height: 1.58 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

/* Make the film stills actually visible */

.pcg-film-mini-strip {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 14px !important;
  margin-top: 16px !important;
}

.pcg-film-mini-img {
  display: block !important;
  width: 100% !important;
  height: 145px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
  filter: contrast(1.06) saturate(1.05) brightness(0.88) !important;
  border: 1px solid rgba(255,255,255,0.13) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,0.26) !important;
}

.pcg-film-mini-img:hover {
  transform: translateY(-5px) !important;
  filter: contrast(1.1) saturate(1.12) brightness(0.96) !important;
  border-color: rgba(199,165,107,0.44) !important;
}

/* Give the hero enough room so it does not feel squeezed */

.pcg-film-hero {
  padding-top: 140px !important;
  padding-bottom: 145px !important;
}

.pcg-film-hero-shell {
  grid-template-columns: 0.92fr 1.08fr !important;
  gap: 84px !important;
  align-items: center !important;
}

@media (max-width: 991px) {
  .pcg-film-hero-shell {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 991px) {
  .pcg-film-hero-panel {
    max-width: 100% !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-poster-card, .pcg-film-poster-img {
    height: 340px !important;
    min-height: 340px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-mini-strip {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-mini-img {
    height: .;
  }
}

/* ===== FILM PAGE — FEATURED TRAILER SECTION ===== */

.pcg-film-featured-section {
  position: relative !important;
  padding: 150px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.14), transparent 30%), radial-gradient(circle at 84% 80%, rgba(111,144,183,0.14), transparent 34%), linear-gradient(180deg, #020814 0%, #071427 100%) !important;
}

.pcg-film-featured-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.14 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 60px 60px !important;
}

.pcg-film-featured-shell {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: 1.2fr 0.8fr !important;
  gap: 58px !important;
  align-items: center !important;
}

.pcg-film-featured-video {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 36px !important;
  background: #020814 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  box-shadow: 0 48px 140px rgba(0,0,0,0.48), 0 0 90px rgba(111,144,183,0.16) !important;
}

.pcg-film-featured-video iframe, .pcg-film-featured-video video, .pcg-film-trailer-video {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  border: 0 !important;
  background: #020814 !important;
}

.pcg-film-featured-copy {
  position: relative !important;
  padding-top: 42px !important;
}

.pcg-film-featured-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 118px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(199,165,107,0.42) !important;
}

.pcg-film-featured-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-film-featured-title {
  color: #ffffff !important;
  font-size: clamp(44px, 5vw, 78px) !important;
  line-height: 0.94 !important;
  font-weight: 950 !important;
  letter-spacing: -0.07em !important;
  margin-bottom: 24px !important;
}

.pcg-film-featured-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 18px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  margin-bottom: 18px !important;
}

.pcg-film-featured-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin-top: 34px !important;
}

.pcg-film-featured-actions .pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 178px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.pcg-film-featured-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.42) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-film-featured-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
}

.pcg-film-featured-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

@media (max-width: 991px) {
  .pcg-film-featured-shell {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-featured-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-featured-video {
    border-radius: 26px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-featured-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

/* ===== FILM PAGE — SELECTED FRAMES SECTION ===== */

.pcg-film-frames-section {
  position: relative !important;
  padding: 150px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.12), transparent 30%), radial-gradient(circle at 82% 76%, rgba(111,144,183,0.13), transparent 34%), linear-gradient(180deg, #071427 0%, #020814 100%) !important;
}

.pcg-film-frames-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-film-frames-title {
  color: #ffffff !important;
  font-size: clamp(44px, 5.4vw, 84px) !important;
  line-height: 0.94 !important;
  font-weight: 950 !important;
  letter-spacing: -0.07em !important;
  max-width: 1050px !important;
  margin-bottom: 24px !important;
}

.pcg-film-frames-text {
  color: rgba(255,255,255,0.74) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 820px !important;
  margin-bottom: 72px !important;
}

.pcg-film-frames-grid {
  display: grid !important;
  grid-template-columns: 1.25fr 0.75fr 0.75fr !important;
  grid-auto-rows: 245px !important;
  gap: 18px !important;
}

.pcg-film-frame-card {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 30px !important;
  background: #020814 !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 34px 100px rgba(0,0,0,0.32), inset 0 1px 0 rgba(255,255,255,0.08) !important;
  transition: transform 0.45s ease, border-color 0.45s ease, box-shadow 0.45s ease !important;
}

.pcg-film-frame-large {
  grid-row: span 2 !important;
}

.pcg-film-frame-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  filter: contrast(1.08) saturate(1.08) brightness(0.86) !important;
  transition: transform 0.7s ease, filter 0.7s ease !important;
}

.pcg-film-frame-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(2,8,20,0.06), rgba(2,8,20,0.34)), radial-gradient(circle at center, transparent 42%, rgba(2,8,20,0.26) 100%) !important;
}

.pcg-film-frame-card:hover {
  transform: translateY(-8px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 48px 130px rgba(0,0,0,0.44), 0 0 70px rgba(199,165,107,0.12) !important;
}

.pcg-film-frame-card:hover .pcg-film-frame-img {
  transform: scale(1.045) !important;
  filter: contrast(1.12) saturate(1.12) brightness(0.94) !important;
}

@media (max-width: 991px) {
  .pcg-film-frames-grid {
    grid-template-columns: 1fr 1fr !important;
    grid-auto-rows: 240px !important;
  }
}

@media (max-width: 991px) {
  .pcg-film-frame-large {
    grid-column: 1 / -1 !important;
    grid-row: span 2 !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-frames-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-frames-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: 230px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-frame-large {
    grid-column: auto !important;
    grid-row: span 1 !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-frame-card {
    border-radius: 24px !important;
  }
}

/* ===== FILM PAGE — TWO FILM WORLDS ===== */

.pcg-film-worlds-section {
  position: relative !important;
  padding: 155px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.15), transparent 30%), radial-gradient(circle at 82% 78%, rgba(111,144,183,0.16), transparent 34%), linear-gradient(180deg, #020814 0%, #071427 52%, #020814 100%) !important;
}

.pcg-film-worlds-section::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.13 !important;
  background: linear-gradient(rgba(255,255,255,0.026) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.022) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.pcg-film-worlds-section .pcg-film-container {
  position: relative !important;
  z-index: 2 !important;
}

.pcg-film-worlds-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-film-worlds-title {
  color: #ffffff !important;
  font-size: clamp(44px, 5.6vw, 88px) !important;
  line-height: 0.94 !important;
  font-weight: 950 !important;
  letter-spacing: -0.07em !important;
  max-width: 1080px !important;
  margin-bottom: 24px !important;
}

.pcg-film-worlds-text {
  color: rgba(255,255,255,0.74) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 860px !important;
  margin-bottom: 74px !important;
}

.pcg-film-worlds-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 30px !important;
}

.pcg-film-world-card {
  position: relative !important;
  overflow: hidden !important;
  min-height: 690px !important;
  border-radius: 38px !important;
  background: radial-gradient(circle at top left, rgba(199,165,107,0.16), transparent 40%), linear-gradient(135deg, rgba(255,255,255,0.085), rgba(255,255,255,0.035)) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 48px 140px rgba(0,0,0,0.42), inset 0 1px 0 rgba(255,255,255,0.08) !important;
  transition: transform 0.5s ease, border-color 0.5s ease, box-shadow 0.5s ease !important;
}

.pcg-film-world-ocean {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.20), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.078), rgba(255,255,255,0.032)) !important;
}

.pcg-film-world-card:hover {
  transform: translateY(-10px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 58px 155px rgba(0,0,0,0.52), 0 0 80px rgba(199,165,107,0.13) !important;
}

.pcg-film-world-img {
  display: block !important;
  width: 100% !important;
  height: 430px !important;
  object-fit: cover !important;
  filter: contrast(1.08) saturate(1.08) brightness(0.86) !important;
  transition: transform 0.8s ease, filter 0.8s ease !important;
}

.pcg-film-world-card:hover .pcg-film-world-img {
  transform: scale(1.045) !important;
  filter: contrast(1.12) saturate(1.12) brightness(0.94) !important;
}

.pcg-film-world-content {
  padding: 34px 36px 38px !important;
}

.pcg-film-world-kicker {
  color: #c7a56b !important;
  font-size: 11px !important;
  letter-spacing: 2.8px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 14px !important;
}

.pcg-film-world-card-title {
  color: #ffffff !important;
  font-size: clamp(34px, 3.8vw, 58px) !important;
  line-height: 0.96 !important;
  font-weight: 950 !important;
  letter-spacing: -0.065em !important;
  margin-bottom: 18px !important;
}

.pcg-film-world-card-text {
  color: rgba(255,255,255,0.74) !important;
  font-size: 16.5px !important;
  line-height: 1.68 !important;
  font-weight: 650 !important;
  margin-bottom: 26px !important;
}

.pcg-film-world-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 164px !important;
  height: 46px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.42) !important;
  font-size: 13.5px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  box-shadow: 0 16px 40px rgba(199,165,107,0.22), 0 0 34px rgba(199,165,107,0.10) !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.pcg-film-world-link:hover {
  transform: translateY(-3px) !important;
  text-decoration: none !important;
}

@media (max-width: 991px) {
  .pcg-film-worlds-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 991px) {
  .pcg-film-world-card {
    min-height: auto !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-worlds-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-world-img {
    height: 310px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-world-card {
    border-radius: 28px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-world-content {
    padding: 28px 24px 32px !important;
  }
}

/* ===== FILM PAGE — TWO FILM WORLDS CHAMPAGNE BREAK ===== */

.pcg-film-worlds-section {
  background: radial-gradient(circle at 16% 18%, rgba(199,165,107,0.18), transparent 30%), radial-gradient(circle at 84% 78%, rgba(111,144,183,0.12), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 52%, #f4efe7 100%) !important;
}

.pcg-film-worlds-section::before {
  opacity: 0.08 !important;
  background: linear-gradient(rgba(7,20,39,0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(7,20,39,0.028) 1px, transparent 1px) !important;
  background-size: 62px 62px !important;
}

.pcg-film-worlds-eyebrow {
  color: #c7a56b !important;
}

.pcg-film-worlds-title {
  color: #071427 !important;
  text-shadow: none !important;
}

.pcg-film-worlds-text {
  color: #425466 !important;
}

/* Keep the film cards dark and poster-like against the champagne background */

.pcg-film-world-card {
  background: radial-gradient(circle at top left, rgba(199,165,107,0.16), transparent 40%), linear-gradient(135deg, #071427, #020814) !important;
  border: 1px solid rgba(7,20,39,0.14) !important;
  box-shadow: 0 42px 120px rgba(7,20,39,0.24), 0 0 70px rgba(199,165,107,0.10) !important;
}

.pcg-film-world-ocean {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 42%), linear-gradient(135deg, #071427, #020814) !important;
}

/* ===== FILM PAGE — SELECTED FRAMES WARM EDITORIAL BREAK ===== */

.pcg-film-frames-section {
  background: radial-gradient(circle at 18% 20%, rgba(199,165,107,0.15), transparent 30%), radial-gradient(circle at 82% 76%, rgba(111,144,183,0.10), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 52%, #f4efe7 100%) !important;
}

.pcg-film-frames-eyebrow {
  color: #c7a56b !important;
}

.pcg-film-frames-title {
  color: #071427 !important;
  text-shadow: none !important;
}

.pcg-film-frames-text {
  color: #425466 !important;
}

.pcg-film-frame-card {
  border: 1px solid rgba(7,20,39,0.12) !important;
  box-shadow: 0 34px 100px rgba(7,20,39,0.16), 0 0 60px rgba(199,165,107,0.08) !important;
}

/* ===== FILM PAGE — SELECTED FRAMES IMAGE BRIGHTNESS FIX ===== */

/* Remove the dark overlay sitting on top of the film frames */

.pcg-film-frame-card::after {
  display: none !important;
}

/* Brighten the stills so the images can actually be appreciated */

.pcg-film-frame-img {
  filter: contrast(1.04) saturate(1.06) brightness(1) !important;
}

/* Keep hover elegant, not overly dark */

.pcg-film-frame-card:hover .pcg-film-frame-img {
  transform: scale(1.035) !important;
  filter: contrast(1.08) saturate(1.1) brightness(1.04) !important;
}

/* ===== FILM PAGE — FILM + EDITING CAPABILITIES ===== */

.pcg-film-capabilities-section {
  position: relative !important;
  padding: 155px 0 !important;
  overflow: hidden !important;
  background: radial-gradient(circle at 20% 18%, rgba(199,165,107,0.12), transparent 30%), radial-gradient(circle at 84% 76%, rgba(111,144,183,0.16), transparent 34%), linear-gradient(180deg, #020814 0%, #071427 100%) !important;
}

.pcg-film-capabilities-shell {
  display: grid !important;
  grid-template-columns: 0.9fr 1.1fr !important;
  gap: 72px !important;
  align-items: start !important;
}

.pcg-film-capabilities-copy {
  position: sticky !important;
  top: 120px !important;
  padding-top: 42px !important;
}

.pcg-film-capabilities-copy::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 118px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(199,165,107,0.42) !important;
}

.pcg-film-capabilities-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
}

.pcg-film-capabilities-title {
  color: #ffffff !important;
  font-size: clamp(42px, 5.2vw, 78px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: -0.07em !important;
  margin-bottom: 24px !important;
}

.pcg-film-capabilities-text {
  color: rgba(255,255,255,0.74) !important;
  font-size: 18px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 620px !important;
}

.pcg-film-capabilities-list {
  display: grid !important;
  gap: 16px !important;
}

.pcg-film-capability-row {
  position: relative !important;
  overflow: hidden !important;
  padding: 28px 30px !important;
  border-radius: 26px !important;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.10), transparent 42%), linear-gradient(135deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035)) !important;
  border: 1px solid rgba(255,255,255,0.13) !important;
  box-shadow: 0 28px 90px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.08) !important;
  transition: transform 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease !important;
}

.pcg-film-capability-row:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(199,165,107,0.42) !important;
  box-shadow: 0 38px 110px rgba(0,0,0,0.42), 0 0 65px rgba(199,165,107,0.12) !important;
}

.pcg-film-capability-kicker {
  display: block !important;
  color: #c7a56b !important;
  font-size: 10.5px !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 10px !important;
}

.pcg-film-capability-title {
  color: #ffffff !important;
  font-size: 30px !important;
  line-height: 1.04 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
  margin-bottom: 10px !important;
}

.pcg-film-capability-text {
  color: rgba(255,255,255,0.72) !important;
  font-size: 15.5px !important;
  line-height: 1.65 !important;
  font-weight: 650 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 991px) {
  .pcg-film-capabilities-shell {
    grid-template-columns: 1fr !important;
    gap: 54px !important;
  }
}

@media (max-width: 991px) {
  .pcg-film-capabilities-copy {
    position: relative !important;
    top: auto !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-capabilities-section {
    padding: 105px 0 !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-capability-row {
    padding: 24px 22px !important;
  }
}

@media (max-width: 575px) {
  .pcg-film-capability-title {
    font-size: 26px !important;
  }
}

/* ===== FILM PAGE — FINAL CTA ===== */

.pcg-film-final-cta {
  padding: 145px 0 !important;
  background: radial-gradient(circle at 18% 22%, rgba(111,144,183,0.16), transparent 30%), radial-gradient(circle at 82% 74%, rgba(199,165,107,0.14), transparent 34%), linear-gradient(180deg, #f4efe7 0%, #ffffff 100%) !important;
}

.pcg-film-final-card {
  position: relative !important;
  overflow: hidden !important;
  padding: 72px !important;
  border-radius: 38px !important;
  background: radial-gradient(circle at top right, rgba(199,165,107,0.18), transparent 40%), radial-gradient(circle at bottom left, rgba(111,144,183,0.20), transparent 42%), linear-gradient(135deg, #071427, #020814) !important;
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 44px 120px rgba(7,20,39,0.24), 0 0 70px rgba(111,144,183,0.14) !important;
}

.pcg-film-final-card::before {
  content: "" !important;
  position: absolute !important;
  top: 42px !important;
  left: 72px !important;
  width: 118px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #c7a56b, transparent) !important;
  box-shadow: 0 0 28px rgba(199,165,107,0.42) !important;
}

.pcg-film-final-eyebrow {
  color: #c7a56b !important;
  font-size: 13px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  margin-bottom: 18px !important;
  padding-top: 34px !important;
}

.pcg-film-final-title {
  color: #ffffff !important;
  font-size: clamp(42px, 5.5vw, 82px) !important;
  line-height: 0.96 !important;
  font-weight: 950 !important;
  letter-spacing: -0.065em !important;
  max-width: 980px !important;
  margin-bottom: 24px !important;
}

.pcg-film-final-text {
  color: rgba(255,255,255,0.76) !important;
  font-size: 19px !important;
  line-height: 1.75 !important;
  font-weight: 600 !important;
  max-width: 860px !important;
  margin-bottom: 38px !important;
}

.pcg-film-final-actions {
  display: flex !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

.pcg-film-final-actions .pcg-visual-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 178px !important;
  height: 48px !important;
  padding: 0 20px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.pcg-film-final-actions .pcg-visual-btn-primary {
  color: #071427 !important;
  background: linear-gradient(135deg, #c7a56b, #f4efe7) !important;
  border: 1px solid rgba(244,239,231,0.42) !important;
  box-shadow: 0 18px 46px rgba(199,165,107,0.28), 0 0 42px rgba(199,165,107,0.14) !important;
}

.pcg-film-final-actions .pcg-visual-btn-secondary {
  color: #ffffff !important;
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.28) !important;
}

.pcg-film-final-actions .pcg-visual-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-film-final-actions .pcg-visual-btn-secondary:hover {
  background: rgba(255,255,255,0.10) !important;
  border-color: rgba(199,165,107,0.45) !important;
}

@media (max-width: 767px) {
  .pcg-film-final-cta {
    padding: 105px 0 !important;
  }
}

@media (max-width: 767px) {
  .pcg-film-final-card {
    padding: 46px 28px !important;
    border-radius: 28px !important;
  }
}

@media (max-width: 767px) {
  .pcg-film-final-card::before {
    left: 28px !important;
    top: 32px !important;
  }
}

@media (max-width: 767px) {
  .pcg-film-final-actions .pcg-visual-btn {
    width: 100% !important;
  }
}

:root {
  --pcg-web-navy: #0b1f3a;
  --pcg-web-slate: #102544;
  --pcg-web-blue: #6f90b7;
  --pcg-web-ice: #eef5fb;
  --pcg-web-white: #ffffff;
  --pcg-web-muted: #b9c4d3;
  --pcg-web-charcoal: #1f2937;
}

.pcg-web-section {
  padding: 120px 0;
}

.pcg-web-container {
  max-width: 1180px;
}

.pcg-web-eyebrow {
  color: var(--pcg-web-blue);
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 800;
  margin-bottom: 18px;
}

.pcg-web-title {
  color: #ffffff;
  font-size: clamp(44px, 6vw, 76px);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.055em;
  margin-bottom: 28px;
}

.pcg-web-text {
  color: #d8e2ee;
  font-size: 19px;
  line-height: 1.75;
  max-width: 680px;
}

.pcg-web-browser-top {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 18px;
}

.pcg-web-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: rgba(255,255,255,0.25);
}

.pcg-web-dot:nth-child(1) {
  background: #ff5f57;
}

.pcg-web-dot:nth-child(2) {
  background: #febc2e;
}

.pcg-web-dot:nth-child(3) {
  background: #28c840;
}

.pcg-browser-screen {
  overflow: hidden;
  border-radius: 18px;
  margin-top: 18px;
  border: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.03);
}

.pcg-browser-screen img {
  width: 100%;
  display: block;
  transition: transform 0.6s ease;
}

.pcg-browser:hover .pcg-browser-screen img {
  transform: scale(1.04);
}

.pcg-web-hero {
  min-height: 100vh !important;
  padding: 120px 0 140px !important;
}

.pcg-web-hero .row {
  align-items: center !important;
}

.pcg-browser-wrap {
  margin-top: 40px;
}

@media (min-width: 992px) {
  .pcg-browser-wrap {
    margin-top: 0;
  }
}

.pcg-web-actions .btn, .pcg-web-actions button {
  border-radius: 10px !important;
  padding: 11px 20px !important;
  font-weight: 800 !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
}

.pcg-web-actions .btn:first-child, .pcg-web-actions button:first-child {
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  color: #ffffff !important;
}

.pcg-web-actions .btn:last-child, .pcg-web-actions button:last-child {
  background: transparent !important;
  color: #ffffff !important;
}

.pcg-browser {
  box-shadow: 0 44px 110px rgba(0,0,0,0.45), 0 0 90px rgba(111,144,183,0.22) !important;
}

.pcg-web-actions {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.pcg-web-actions .btn, .pcg-web-actions button {
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease !important;
}

.pcg-web-actions .btn:hover, .pcg-web-actions button:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(111,144,183,0.28), 0 0 28px rgba(111,144,183,0.22);
}

.pcg-web-actions .btn:first-child:hover, .pcg-web-actions button:first-child:hover {
  background: linear-gradient( 135deg, #86a7ca, #b7c9dc ) !important;
}

.pcg-browser-top {
  background: transparent !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

.pcg-browser-screen {
  width: 100% !important;
  display: block !important;
  overflow: hidden !important;
  border-radius: 0 0 22px 22px !important;
  margin-top: -8px !important;
  background: transparent !important;
}

.pcg-browser-screen img {
  width: 100% !important;
  display: block !important;
  border-radius: 0 0 22px 22px !important;
}

.pcg-browser-top {
  background: transparent !important;
  height: 18px !important;
  min-height: 18px !important;
  padding: 0 !important;
  margin: 0 0 10px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.pcg-browser-top .pcg-web-dot {
  width: 12px !important;
  height: 12px !important;
  border-radius: 50% !important;
  flex: 0 0 auto !important;
}

.pcg-browser-top, .pcg-web-browser-top {
  background: transparent !important;
  height: auto !important;
  padding: 0 0 14px 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
}

.pcg-browser {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.pcg-browser-screen {
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 32px 90px rgba(0,0,0,0.42), 0 0 70px rgba(111,144,183,0.18) !important;
}

.pcg-build-section {
  position: relative;
  overflow: hidden;
  padding: 130px 0;
  background: radial-gradient(circle at top left, rgba(111,144,183,0.16), transparent 34%), linear-gradient(180deg, #f6f8fb 0%, #eef3f8 100%);
}

.pcg-build-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.055em;
  max-width: 920px;
  margin-bottom: 24px;
}

.pcg-build-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  max-width: 860px;
  margin-bottom: 70px;
}

.pcg-build-card {
  position: relative;
  height: 100%;
  min-height: 360px;
  padding: 38px;
  border-radius: 30px;
  overflow: hidden;
  background: linear-gradient(145deg, #ffffff 0%, #eef4fa 100%);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 24px 70px rgba(11,31,58,0.12), inset 0 1px 0 rgba(255,255,255,0.9);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-build-card::before {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  top: -70px;
  right: -70px;
  background: radial-gradient(circle, rgba(111,144,183,0.24), transparent 70%);
  transition: transform 0.45s ease, opacity 0.45s ease;
  pointer-events: none;
}

.pcg-build-card:hover {
  transform: translateY(-10px);
  border-color: rgba(111,144,183,0.32);
  box-shadow: 0 34px 90px rgba(11,31,58,0.18), 0 0 46px rgba(111,144,183,0.16);
}

.pcg-build-card:hover::before {
  transform: scale(1.25);
  opacity: 1;
}

.pcg-card-high {
  margin-top: -24px;
}

.pcg-card-low {
  margin-top: 34px;
}

.pcg-build-number {
  color: #6f90b7;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-bottom: 34px;
}

.pcg-build-card-title {
  color: #0b1f3a;
  font-size: 31px;
  line-height: 1.05;
  font-weight: 900;
  letter-spacing: -0.035em;
  margin-bottom: 20px;
}

.pcg-build-card-text {
  color: #425466;
  font-size: 16px;
  line-height: 1.75;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-card-high, .pcg-card-low {
    margin-top: 0;
  }
}

@media (max-width: 991px) {
  .pcg-build-card {
    min-height: 300px;
  }
}

.pcg-process-section {
  position: relative;
  overflow: hidden;
  padding: 140px 0;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.12), transparent 28%), #0d1522;
}

.pcg-process-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.055em;
  max-width: 860px;
  margin-bottom: 24px;
}

.pcg-process-text {
  color: #b8c4d3;
  font-size: 19px;
  line-height: 1.75;
  max-width: 820px;
  margin-bottom: 90px;
}

.pcg-process-wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 34px;
}

.pcg-process-line {
  position: absolute;
  top: 42px;
  left: 5%;
  width: 90%;
  height: 2px;
  background: linear-gradient( 90deg, rgba(111,144,183,0.05), rgba(111,144,183,0.45), rgba(111,144,183,0.05) );
  z-index: 1;
}

.pcg-process-item {
  position: relative;
  z-index: 2;
  padding: 20px;
  border-radius: 24px;
  transition: transform 0.45s ease, box-shadow 0.45s ease;
}

.pcg-process-item:hover {
  transform: translateY(-10px);
  box-shadow: 0 24px 60px rgba(0,0,0,0.25);
}

.pcg-process-circle {
  width: 84px;
  height: 84px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin-bottom: 30px;
  color: #ffffff;
  font-size: 24px;
  font-weight: 900;
  background: linear-gradient(145deg, #6f90b7, #88a8c8);
  box-shadow: 0 0 40px rgba(111,144,183,0.35), inset 0 1px 0 rgba(255,255,255,0.45);
  transition: transform 0.45s ease, box-shadow 0.45s ease;
}

.pcg-process-item:hover .pcg-process-circle {
  transform: scale(1.08);
  box-shadow: 0 0 60px rgba(111,144,183,0.55), 0 0 120px rgba(111,144,183,0.25);
}

.pcg-process-item-title {
  color: #ffffff;
  font-size: 28px;
  font-weight: 800;
  margin-bottom: 16px;
}

.pcg-process-item-text {
  color: #b8c4d3;
  font-size: 16px;
  line-height: 1.75;
}

@media (max-width: 991px) {
  .pcg-process-wrap {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-process-line {
    display: none;
  }
}

.pcg-feature-section {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.12), transparent 40%), #071427;
  padding: 120px 0;
  position: relative;
  overflow: hidden;
}

.pcg-feature-title {
  color: #ffffff;
  font-size: clamp(40px,5vw,66px);
  font-weight: 800;
  line-height: 1.02;
  max-width: 900px;
  margin-bottom: 24px;
}

.pcg-feature-text {
  color: #c8d3e7;
  font-size: 20px;
  line-height: 1.8;
  max-width: 760px;
  margin-bottom: 70px;
}

.pcg-feature-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 32px;
}

.pcg-feature-card {
  background: rgba(9,20,38,0.78);
  border: 1px solid rgba(111,144,183,0.18);
  border-radius: 28px;
  padding: 42px;
  position: relative;
  overflow: hidden;
  transition: all 0.35s ease;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.pcg-feature-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 45%);
  opacity: 0;
  transition: 0.35s ease;
}

.pcg-feature-card:hover {
  transform: translateY(-10px);
  border-color: rgba(111,144,183,0.42);
  box-shadow: 0 25px 70px rgba(0,0,0,0.45), 0 0 50px rgba(111,144,183,0.18);
}

.pcg-feature-card:hover::before {
  opacity: 1;
}

.pcg-feature-icon {
  color: #6f90b7;
  font-size: 30px;
  margin-bottom: 26px;
}

.pcg-feature-number {
  color: #6f90b7;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.24em;
  margin-bottom: 18px;
}

.pcg-feature-card-title {
  color: #ffffff;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 18px;
}

.pcg-feature-card-text {
  color: #d3dded;
  font-size: 18px;
  line-height: 1.8;
}

@media (max-width:991px) {
  .pcg-feature-grid {
    grid-template-columns: 1fr;
  }
}

.pcg-upgrade-section {
  position: relative;
  overflow: hidden;
  padding: 140px 0;
  background: radial-gradient(circle at bottom right, rgba(111,144,183,0.16), transparent 34%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-upgrade-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.055em;
  max-width: 920px;
  margin-bottom: 24px;
}

.pcg-upgrade-text {
  color: #425466;
  font-size: 19px;
  line-height: 1.75;
  max-width: 820px;
  margin-bottom: 70px;
}

.pcg-upgrade-card {
  position: relative;
  min-height: 420px;
  padding: 48px;
  border-radius: 34px;
  overflow: hidden;
  transition: transform 0.45s ease, box-shadow 0.45s ease;
}

.pcg-before-card {
  background: linear-gradient(145deg, #f2f4f7, #dfe6ee);
  border: 1px solid rgba(11,31,58,0.08);
}

.pcg-after-card {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.28), transparent 38%), linear-gradient(145deg, #0b1f3a, #102544);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 34px 90px rgba(11,31,58,0.24);
}

.pcg-upgrade-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 36px 95px rgba(11,31,58,0.22);
}

.pcg-upgrade-label {
  color: #6f90b7;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-bottom: 32px;
}

.pcg-upgrade-card-title {
  font-size: 42px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 26px;
}

.pcg-before-card .pcg-upgrade-card-title {
  color: #0b1f3a;
}

.pcg-before-card .pcg-upgrade-card-text {
  color: #425466;
}

.pcg-after-card .pcg-upgrade-card-title {
  color: #ffffff;
}

.pcg-after-card .pcg-upgrade-card-text {
  color: rgba(255,255,255,0.76);
}

.pcg-upgrade-card-text {
  font-size: 18px;
  line-height: 1.8;
  max-width: 520px;
}

@media (max-width: 991px) {
  .pcg-upgrade-card {
    min-height: 340px;
    padding: 38px;
  }
}

.pcg-upgrade-section .row {
  position: relative;
}

.pcg-upgrade-arrow {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  color: #ffffff;
  font-size: 34px;
  font-weight: 900;
  box-shadow: 0 18px 46px rgba(11,31,58,0.22), 0 0 44px rgba(111,144,183,0.36);
  z-index: 5;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.pcg-upgrade-arrow:hover {
  transform: translate(-50%, -50%) scale(1.08);
  box-shadow: 0 24px 60px rgba(11,31,58,0.28), 0 0 60px rgba(111,144,183,0.48);
}

@media (max-width: 991px) {
  .pcg-upgrade-arrow {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    margin: 28px auto;
  }
}

.pcg-upgrade-section .pcg-web-container {
  position: relative;
}

.pcg-upgrade-arrow {
  position: absolute !important;
  left: 50% !important;
  top: 58% !important;
  transform: translate(-50%, -50%) !important;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  color: #ffffff;
  font-size: 34px;
  font-weight: 900;
  box-shadow: 0 18px 46px rgba(11,31,58,0.22), 0 0 44px rgba(111,144,183,0.36);
  z-index: 20;
}

@media (max-width: 991px) {
  .pcg-upgrade-arrow {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 32px auto;
  }
}

.pcg-upgrade-section .pcg-web-container {
  position: relative;
}

.pcg-upgrade-arrow {
  position: absolute !important;
  left: 50% !important;
  top: 58% !important;
  transform: translate(-50%, -50%) !important;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  color: #ffffff;
  font-size: 34px;
  font-weight: 900;
  box-shadow: 0 18px 46px rgba(11,31,58,0.22), 0 0 44px rgba(111,144,183,0.36);
  z-index: 20;
}

@media (max-width: 991px) {
  .pcg-upgrade-arrow {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    margin: 32px auto;
  }
}

.pcg-upgrade-arrow {
  top: 53% !important;
}

.pcg-showcase-section {
  position: relative;
  overflow: hidden;
  padding: 140px 0;
  background: radial-gradient(circle at top left, rgba(111,144,183,0.16), transparent 34%), linear-gradient(180deg, #0b1f3a 0%, #071427 100%);
}

.pcg-showcase-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 68px);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.055em;
  max-width: 940px;
  margin-bottom: 24px;
}

.pcg-showcase-text {
  color: #c8d3e7;
  font-size: 19px;
  line-height: 1.75;
  max-width: 820px;
  margin-bottom: 70px;
}

.pcg-showcase-track {
  display: flex;
  gap: 28px;
  overflow-x: auto;
  padding: 12px 4px 38px;
  scroll-snap-type: x mandatory;
}

.pcg-showcase-track::-webkit-scrollbar {
  height: 8px;
}

.pcg-showcase-track::-webkit-scrollbar-thumb {
  background: rgba(111,144,183,0.45);
  border-radius: 999px;
}

.pcg-showcase-card {
  flex: 0 0 520px;
  scroll-snap-align: start;
  border-radius: 30px;
  padding: 18px;
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 32px 90px rgba(0,0,0,0.34);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-showcase-card:hover {
  transform: translateY(-10px);
  border-color: rgba(111,144,183,0.42);
  box-shadow: 0 42px 110px rgba(0,0,0,0.45), 0 0 70px rgba(111,144,183,0.22);
}

.pcg-showcase-browser-top {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 0 14px;
}

.pcg-showcase-dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: rgba(255,255,255,0.35);
}

.pcg-showcase-dot:nth-child(1) {
  background: #ff5f57;
}

.pcg-showcase-dot:nth-child(2) {
  background: #febc2e;
}

.pcg-showcase-dot:nth-child(3) {
  background: #28c840;
}

.pcg-showcase-image {
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.04);
}

.pcg-showcase-image img {
  width: 100%;
  display: block;
  transition: transform 0.7s ease;
}

.pcg-showcase-card:hover .pcg-showcase-image img {
  transform: scale(1.06);
}

.pcg-showcase-card-title {
  color: #ffffff;
  font-size: 28px;
  font-weight: 850;
  line-height: 1.1;
  margin: 28px 8px 12px;
}

.pcg-showcase-card-text {
  color: rgba(255,255,255,0.72);
  font-size: 16px;
  line-height: 1.75;
  margin: 0 8px 8px;
}

@media (max-width: 767px) {
  .pcg-showcase-card {
    flex: 0 0 86vw;
  }
}

/* ===== PCG PREMIUM NAVBAR ===== */

.pcg-main-nav {
  position: sticky;
  top: 0;
  z-index: 999;
  background: rgba(7,26,56,0.82);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(255,255,255,0.06);
  padding: 18px 0;
  transition: all 0.35s ease;
}

.pcg-nav-brand {
  color: #ffffff !important;
  font-size: 1.15rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  transition: all 0.3s ease;
}

.pcg-nav-brand:hover {
  color: #6f90b7 !important;
}

.pcg-nav-list {
  gap: 10px;
}

.pcg-nav-link {
  color: rgba(255,255,255,0.78) !important;
  font-size: 0.92rem;
  font-weight: 500;
  padding: 10px 14px !important;
  border-radius: 12px;
  transition: all 0.3s ease;
}

.pcg-nav-link:hover {
  color: #ffffff !important;
  background: rgba(111,144,183,0.12);
  transform: translateY(-2px);
}

.pcg-nav-link.active {
  color: #ffffff !important;
}

.pcg-nav-cta {
  background: linear-gradient(135deg, #6f90b7, #8ea9c7);
  color: #ffffff !important;
  padding: 11px 18px !important;
  border-radius: 14px;
  margin-left: 10px;
  font-weight: 600;
  box-shadow: 0 12px 35px rgba(111,144,183,0.28);
  transition: all 0.35s ease;
}

.pcg-nav-cta:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 45px rgba(111,144,183,0.38);
  color: #ffffff !important;
}

.navbar-toggler {
  border: none !important;
  box-shadow: none !important;
}

.navbar-toggler:focus {
  box-shadow: none !important;
}

.navbar-toggler-icon {
  filter: invert(1);
}

/* ===== MOBILE NAV ===== */

@media (max-width: 1199px) {
  .pcg-main-nav {
    padding: 16px 0;
  }
}

@media (max-width: 1199px) {
  .pcg-nav-list {
    padding-top: 20px;
    gap: 6px;
  }
}

@media (max-width: 1199px) {
  .pcg-nav-link {
    width: 100%;
    padding: 14px 16px !important;
  }
}

@media (max-width: 1199px) {
  .pcg-nav-cta {
    margin-top: 10px;
    margin-left: 0;
    text-align: center;
    display: inline-block;
  }
}

/* ===== PCG PREMIUM NAVBAR ===== */

.pcg-main-nav {
  position: sticky;
  top: 0;
  z-index: 999;
  background: rgba(7,26,56,0.82);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(255,255,255,0.06);
  padding: 18px 0;
  transition: all 0.35s ease;
}

.pcg-nav-brand {
  color: #ffffff !important;
  font-size: 1.15rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  transition: all 0.3s ease;
}

.pcg-nav-brand:hover {
  color: #6f90b7 !important;
}

.pcg-nav-list {
  gap: 10px;
}

.pcg-nav-link {
  color: rgba(255,255,255,0.78) !important;
  font-size: 0.92rem;
  font-weight: 500;
  padding: 10px 14px !important;
  border-radius: 12px;
  transition: all 0.3s ease;
}

.pcg-nav-link:hover {
  color: #ffffff !important;
  background: rgba(111,144,183,0.12);
  transform: translateY(-2px);
}

.pcg-nav-link.active {
  color: #ffffff !important;
}

.pcg-nav-cta {
  background: linear-gradient(135deg, #6f90b7, #8ea9c7);
  color: #ffffff !important;
  padding: 11px 18px !important;
  border-radius: 14px;
  margin-left: 10px;
  font-weight: 600;
  box-shadow: 0 12px 35px rgba(111,144,183,0.28);
  transition: all 0.35s ease;
}

.pcg-nav-cta:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 45px rgba(111,144,183,0.38);
  color: #ffffff !important;
}

.navbar-toggler {
  border: none !important;
  box-shadow: none !important;
}

.navbar-toggler:focus {
  box-shadow: none !important;
}

.navbar-toggler-icon {
  filter: invert(1);
}

/* ===== MOBILE NAV ===== */

@media (max-width: 1199px) {
  .pcg-main-nav {
    padding: 16px 0;
  }
}

@media (max-width: 1199px) {
  .pcg-nav-list {
    padding-top: 20px;
    gap: 6px;
  }
}

@media (max-width: 1199px) {
  .pcg-nav-link {
    width: 100%;
    padding: 14px 16px !important;
  }
}

@media (max-width: 1199px) {
  .pcg-nav-cta {
    margin-top: 10px;
    margin-left: 0;
    text-align: center;
    display: inline-block;
  }
}

/* FORCE PCG NAVBAR VISIBILITY FIX */

nav.pcg-main-nav, .navbar.pcg-main-nav {
  background: rgba(7,26,56,0.94) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  padding: 16px 0 !important;
}

.pcg-main-nav .pcg-nav-brand, .pcg-main-nav .navbar-brand {
  color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.pcg-main-nav .pcg-nav-link, .pcg-main-nav .nav-link {
  color: rgba(255,255,255,0.82) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.pcg-main-nav .pcg-nav-link:hover, .pcg-main-nav .nav-link:hover {
  color: #ffffff !important;
  background: rgba(111,144,183,0.16) !important;
}

.pcg-main-nav .pcg-nav-cta {
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  color: #ffffff !important;
  border-radius: 14px !important;
  padding: 10px 16px !important;
}

/* NAV CTA SIZE OVERRIDE */

.pcg-main-nav .pcg-nav-cta {
  border-radius: 12px !important;
  padding: 8px 14px !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
}

/* ===== WHY PCG PAGE ===== */

:root {
  --pcg-navy: #0b1f3a;
  --pcg-deep: #071427;
  --pcg-black: #020814;
  --pcg-blue: #6f90b7;
  --pcg-blue-soft: #9db7d4;
  --pcg-ice: #eef3f8;
  --pcg-white: #ffffff;
  --pcg-muted: #b9c4d3;
  --pcg-charcoal: #1f2937;
}

.pcg-why-section {
  position: relative;
  overflow: hidden;
}

.pcg-why-container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.pcg-why-eyebrow {
  color: var(--pcg-blue-soft);
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-why-title {
  font-size: clamp(46px, 6vw, 92px);
  line-height: 0.94;
  font-weight: 900;
  letter-spacing: -0.07em;
  margin-bottom: 28px;
}

.pcg-why-text {
  font-size: 20px;
  line-height: 1.75;
  max-width: 850px;
}

/* ===== WHY PCG HERO ===== */

.pcg-why-hero {
  min-height: 92vh;
  display: flex;
  align-items: center;
  padding: 150px 0 135px;
  background: radial-gradient(circle at 16% 22%, rgba(111,144,183,0.24), transparent 30%), radial-gradient(circle at 86% 72%, rgba(111,144,183,0.12), transparent 34%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-why-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 24% 42%, rgba(111,144,183,0.11), transparent 34%), radial-gradient(circle at 78% 40%, rgba(111,144,183,0.10), transparent 38%), linear-gradient(90deg, rgba(7,20,39,0.20), transparent 46%, rgba(7,20,39,0.18));
  pointer-events: none;
}

.pcg-why-hero::after {
  content: "";
  position: absolute;
  right: 8%;
  top: 18%;
  width: 430px;
  height: 430px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(111,144,183,0.25), transparent 68%);
  filter: blur(8px);
  animation: pcgWhyPulse 5s ease-in-out infinite;
  pointer-events: none;
}

.pcg-why-hero .pcg-why-container {
  position: relative;
  z-index: 2;
}

.pcg-why-hero-title {
  color: #ffffff;
  max-width: 920px;
}

.pcg-why-hero-text {
  color: rgba(255,255,255,0.76);
  margin-bottom: 38px;
}

.pcg-why-hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}

.pcg-why-btn, a.pcg-why-btn, button.pcg-why-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-why-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  border: 1px solid rgba(157,183,212,0.24) !important;
  box-shadow: 0 18px 46px rgba(111,144,183,0.28) !important;
}

.pcg-why-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.065) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-why-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-why-btn-primary:hover {
  box-shadow: 0 24px 60px rgba(111,144,183,0.42) !important;
}

.pcg-why-btn-secondary:hover {
  background: rgba(111,144,183,0.16) !important;
  border-color: rgba(157,183,212,0.42) !important;
}

/* Proof panel */

.pcg-why-proof-panel {
  position: relative;
  overflow: hidden;
  padding: 38px;
  border-radius: 34px;
  min-height: 560px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.22), transparent 42%), rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 42px 120px rgba(0,0,0,0.38), 0 0 80px rgba(111,144,183,0.16);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  transition: transform 0.45s ease, box-shadow 0.45s ease, border-color 0.45s ease;
}

.pcg-why-proof-panel:hover {
  transform: translateY(-8px);
  border-color: rgba(157,183,212,0.36);
  box-shadow: 0 54px 135px rgba(0,0,0,0.48), 0 0 100px rgba(111,144,183,0.24);
}

.pcg-why-proof-panel::before {
  content: "";
  position: absolute;
  top: 34px;
  left: 38px;
  width: 88px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.42);
}

.pcg-why-proof-label {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: 52px;
  margin-bottom: 20px;
}

.pcg-why-proof-title {
  color: #ffffff;
  font-size: clamp(32px, 3.5vw, 50px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.05em;
  margin-bottom: 36px;
}

.pcg-why-proof-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.pcg-why-proof-item {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 16px;
  align-items: start;
  padding: 20px;
  border-radius: 22px;
  background: rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.10);
  transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease;
}

.pcg-why-proof-item:hover {
  transform: translateX(8px);
  background: rgba(111,144,183,0.13);
  border-color: rgba(157,183,212,0.32);
}

.pcg-why-proof-number {
  color: #9db7d4;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
}

.pcg-why-proof-text {
  color: rgba(255,255,255,0.78);
  font-size: 17px;
  line-height: 1.5;
  font-weight: 750;
  margin-bottom: 0;
}

@keyframes pcgWhyPulse {
  0%, 100% {
    opacity: 0.38;
    transform: scale(1);
  }
  50% {
    opacity: 0.85;
    transform: scale(1.08);
  }
}

@media (max-width: 991px) {
  .pcg-why-proof-panel {
    margin-top: 50px;
  }
}

@media (max-width: 767px) {
  .pcg-why-hero {
    min-height: auto;
    padding: 120px 0;
  }
}

@media (max-width: 767px) {
  .pcg-why-btn {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .pcg-why-proof-panel {
    min-height: auto;
    padding: 34px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-why-proof-panel::before {
    left: 28px;
  }
}

/* ===== WHY PCG DIFFERENCE SECTION ===== */

.pcg-why-difference {
  padding: 175px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-difference-layout {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 58px;
  align-items: start;
}

.pcg-difference-statement {
  position: sticky;
  top: 120px;
}

.pcg-difference-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-difference-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.06em;
  margin-bottom: 26px;
}

.pcg-difference-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 620px;
}

.pcg-difference-stack {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.pcg-difference-item {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 22px;
  align-items: start;
  padding: 34px;
  border-radius: 30px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.88);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 24px 76px rgba(11,31,58,0.11), inset 0 1px 0 rgba(255,255,255,0.9);
  transition: transform 0.42s ease, box-shadow 0.42s ease, border-color 0.42s ease;
}

.pcg-difference-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 28px;
  bottom: 28px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #6f90b7, transparent);
}

.pcg-difference-item:hover {
  transform: translateX(10px);
  border-color: rgba(111,144,183,0.34);
  box-shadow: 0 36px 100px rgba(11,31,58,0.18), 0 0 60px rgba(111,144,183,0.14);
}

.pcg-difference-number {
  color: #6f90b7;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 2px;
}

.pcg-difference-item-title {
  color: #0b1f3a;
  font-size: clamp(26px, 3vw, 40px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 12px;
}

.pcg-difference-item-text {
  color: #425466;
  font-size: 17px;
  line-height: 1.65;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-difference-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-difference-statement {
    position: relative;
    top: auto;
  }
}

@media (max-width: 767px) {
  .pcg-why-difference {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-difference-item {
    grid-template-columns: 1fr;
    padding: 30px;
  }
}

/* WHY PCG DIFFERENCE OVERLAP FIX */

.pcg-difference-layout {
  align-items: start !important;
}

.pcg-difference-statement {
  padding-bottom: 40px !important;
  z-index: 3 !important;
}

.pcg-difference-text {
  position: relative !important;
  z-index: 4 !important;
  color: #425466 !important;
  opacity: 1 !important;
  margin-bottom: 0 !important;
}

.pcg-difference-stack {
  margin-top: 115px !important;
  position: relative !important;
  z-index: 2 !important;
}

/* WHY PCG DIFFERENCE GAP ONLY FIX */

.pcg-difference-stack {
  gap: 6px !important;
}

.pcg-difference-stack {
  gap: 0 !important;
}

/* ===== WHY PCG RISK TO CONTROL ===== */

.pcg-why-control {
  padding: 175px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.18), transparent 30%), radial-gradient(circle at 86% 72%, rgba(111,144,183,0.10), transparent 34%), linear-gradient(180deg, #071427 0%, #0b1f3a 100%);
}

.pcg-control-eyebrow {
  color: #9db7d4;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-control-title {
  color: #ffffff;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 0.98;
  font-weight: 900;
  letter-spacing: -0.06em;
  max-width: 1040px;
  margin-bottom: 24px;
}

.pcg-control-text {
  color: rgba(255,255,255,0.74);
  font-size: 20px;
  line-height: 1.75;
  max-width: 920px;
  margin-bottom: 78px;
}

.pcg-control-band {
  display: grid;
  grid-template-columns: 1fr 220px 1fr;
  gap: 24px;
  align-items: stretch;
}

.pcg-control-column {
  position: relative;
  overflow: hidden;
  padding: 42px;
  border-radius: 34px;
  min-height: 520px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 34px 95px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.05);
}

.pcg-control-column::before {
  content: "";
  position: absolute;
  top: 34px;
  left: 42px;
  width: 82px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.38);
}

.pcg-control-risk {
  opacity: 0.82;
}

.pcg-control-outcome {
  border-color: rgba(157,183,212,0.30);
  box-shadow: 0 38px 110px rgba(0,0,0,0.36), 0 0 70px rgba(111,144,183,0.18);
}

.pcg-control-column-label {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-top: 52px;
  margin-bottom: 18px;
}

.pcg-control-column-title {
  color: #ffffff;
  font-size: clamp(32px, 3.7vw, 54px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.05em;
  margin-bottom: 34px;
}

.pcg-control-list {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.pcg-control-list-item {
  color: rgba(255,255,255,0.78);
  font-size: 17px;
  line-height: 1.45;
  font-weight: 750;
  margin-bottom: 0;
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.09);
}

.pcg-control-outcome .pcg-control-list-item {
  background: rgba(111,144,183,0.13);
  border-color: rgba(157,183,212,0.22);
}

.pcg-control-arrow {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 22px;
  text-align: center;
}

.pcg-control-arrow::before {
  content: "";
  position: absolute;
  top: 18%;
  bottom: 18%;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(157,183,212,0.70), transparent);
  box-shadow: 0 0 34px rgba(111,144,183,0.32);
}

.pcg-control-arrow-symbol {
  position: relative;
  z-index: 2;
  width: 82px;
  height: 82px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 42px;
  font-weight: 900;
  background: linear-gradient(135deg, #6f90b7, #9db7d4);
  box-shadow: 0 18px 55px rgba(111,144,183,0.32), 0 0 55px rgba(111,144,183,0.24);
}

.pcg-control-arrow-text {
  position: relative;
  z-index: 2;
  color: rgba(255,255,255,0.76);
  font-size: 15px;
  line-height: 1.5;
  font-weight: 750;
  max-width: 170px;
  margin-bottom: 0;
}

@media (max-width: 991px) {
  .pcg-control-band {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-control-arrow {
    min-height: 130px;
  }
}

@media (max-width: 991px) {
  .pcg-control-arrow::before {
    top: 50%;
    bottom: auto;
    left: 14%;
    right: 14%;
    width: auto;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(157,183,212,0.70), transparent);
  }
}

@media (max-width: 991px) {
  .pcg-control-arrow-symbol {
    transform: rotate(90deg);
  }
}

@media (max-width: 767px) {
  .pcg-why-control {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-control-column {
    min-height: auto;
    padding: 34px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-control-column::before {
    left: 28px;
  }
}

/* WHY PCG RISK TO CONTROL — LIGHT VERSION TEXT FIX */

.pcg-why-control {
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.14), transparent 30%), linear-gradient(180deg, #ffffff 0%, #eef3f8 100%) !important;
}

.pcg-control-eyebrow {
  color: #6f90b7 !important;
  opacity: 1 !important;
}

.pcg-control-title {
  color: #0b1f3a !important;
  opacity: 1 !important;
}

.pcg-control-text {
  color: #425466 !important;
  opacity: 1 !important;
  font-weight: 650 !important;
}

.pcg-control-column {
  background: radial-gradient(circle at top right, rgba(111,144,183,0.16), transparent 42%), rgba(255,255,255,0.88) !important;
  border: 1px solid rgba(11,31,58,0.08) !important;
  box-shadow: 0 28px 85px rgba(11,31,58,0.12), inset 0 1px 0 rgba(255,255,255,0.9) !important;
}

.pcg-control-column-label {
  color: #6f90b7 !important;
  opacity: 1 !important;
}

.pcg-control-column-title {
  color: #0b1f3a !important;
  opacity: 1 !important;
}

.pcg-control-list-item {
  color: #26384c !important;
  background: rgba(238,243,248,0.78) !important;
  border: 1px solid rgba(11,31,58,0.08) !important;
}

.pcg-control-outcome .pcg-control-list-item {
  color: #0b1f3a !important;
  background: rgba(111,144,183,0.14) !important;
  border-color: rgba(111,144,183,0.20) !important;
}

.pcg-control-arrow-text {
  color: #425466 !important;
  opacity: 1 !important;
}

/* FINAL RISK TO CONTROL READABILITY FIX */

.pcg-why-control .pcg-control-risk .pcg-control-list-item, .pcg-why-control .pcg-control-outcome .pcg-control-list-item {
  color: #26384c !important;
  opacity: 1 !important;
  text-shadow: none !important;
  font-weight: 750 !important;
}

.pcg-why-control .pcg-control-outcome .pcg-control-list-item {
  color: #0b1f3a !important;
  background: rgba(111,144,183,0.14) !important;
  border-color: rgba(111,144,183,0.22) !important;
}

.pcg-why-control .pcg-control-risk .pcg-control-list-item {
  background: rgba(238,243,248,0.82) !important;
  border-color: rgba(11,31,58,0.08) !important;
}

/* RISK TO CONTROL — FORCE ALL LIST TEXT DARK */

.pcg-why-control .pcg-control-list p, .pcg-why-control .pcg-control-list-item, .pcg-why-control .pcg-control-risk .pcg-control-list p, .pcg-why-control .pcg-control-outcome .pcg-control-list p {
  color: #26384c !important;
  opacity: 1 !important;
  text-shadow: none !important;
  font-weight: 750 !important;
}

.pcg-why-control .pcg-control-outcome .pcg-control-list p, .pcg-why-control .pcg-control-outcome .pcg-control-list-item {
  color: #0b1f3a !important;
}

.pcg-why-control .pcg-control-list {
  background: transparent !important;
}

/* RISK TO CONTROL — HARD TEXT OVERRIDE */

.pcg-why-control .pcg-control-list * {
  color: #0b1f3a !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* RISK TO CONTROL — DIRECT OUTCOME LIST FIX */

.pcg-control-outcome .pcg-control-list, .pcg-control-outcome .pcg-control-list * {
  color: #0b1f3a !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.pcg-control-outcome .pcg-control-list p, .pcg-control-outcome .pcg-control-list div, .pcg-control-outcome .pcg-control-list span, .pcg-control-outcome .pcg-control-list-item {
  color: #0b1f3a !important;
  opacity: 1 !important;
  text-shadow: none !important;
  font-weight: 750 !important;
}

/* RISK TO CONTROL — FINAL ALIGNMENT + CENTER CLEANUP */

/* Make both list columns behave the same */

.pcg-control-risk .pcg-control-list, .pcg-control-outcome .pcg-control-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 13px !important;
}

/* Make right-side items match left-side item spacing */

.pcg-control-outcome .pcg-control-list p, .pcg-control-outcome .pcg-control-list-item {
  display: block !important;
  padding: 16px 18px !important;
  margin: 0 !important;
  border-radius: 18px !important;
  line-height: 1.45 !important;
}

/* Fully remove any visible box/background from the center arrow area */

.pcg-control-arrow {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  outline: none !important;
}

/* If an accidental div/card class got added inside the arrow column, clear it too */

.pcg-control-arrow > div {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* RISK TO CONTROL — MAKE RIGHT LIST MATCH LEFT LIST */

.pcg-control-outcome .pcg-control-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 13px !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.pcg-control-outcome .pcg-control-list-item {
  display: block !important;
  color: #0b1f3a !important;
  opacity: 1 !important;
  font-weight: 750 !important;
  line-height: 1.45 !important;
  padding: 16px 18px !important;
  margin: 0 !important;
  border-radius: 18px !important;
  background: rgba(111,144,183,0.14) !important;
  border: 1px solid rgba(111,144,183,0.22) !important;
  text-shadow: none !important;
}

/* RISK TO CONTROL — LIST WIDTH + HOVER POLISH */

/* Make both inner lists use the same width */

.pcg-control-risk .pcg-control-list, .pcg-control-outcome .pcg-control-list {
  width: 100% !important;
}

/* Make every list item fill the available width */

.pcg-control-risk .pcg-control-list-item, .pcg-control-outcome .pcg-control-list-item, .pcg-control-risk .pcg-control-list p, .pcg-control-outcome .pcg-control-list p {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Give the left text more breathing room from the card edge */

.pcg-control-risk .pcg-control-list-item, .pcg-control-risk .pcg-control-list p {
  padding-left: 22px !important;
  padding-right: 22px !important;
}

/* Match right side spacing */

.pcg-control-outcome .pcg-control-list-item, .pcg-control-outcome .pcg-control-list p {
  padding-left: 22px !important;
  padding-right: 22px !important;
}

/* Hover effect for both sides */

.pcg-control-risk .pcg-control-list-item, .pcg-control-outcome .pcg-control-list-item, .pcg-control-risk .pcg-control-list p, .pcg-control-outcome .pcg-control-list p {
  transition: transform 0.35s ease, background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease !important;
}

.pcg-control-risk .pcg-control-list-item:hover, .pcg-control-risk .pcg-control-list p:hover {
  transform: translateX(8px) !important;
  background: rgba(238,243,248,0.96) !important;
  border-color: rgba(111,144,183,0.26) !important;
  box-shadow: 0 16px 42px rgba(11,31,58,0.10) !important;
}

.pcg-control-outcome .pcg-control-list-item:hover, .pcg-control-outcome .pcg-control-list p:hover {
  transform: translateX(8px) !important;
  background: rgba(111,144,183,0.22) !important;
  border-color: rgba(111,144,183,0.36) !important;
  box-shadow: 0 16px 42px rgba(11,31,58,0.12) !important;
}

.pcg-control-column {
  padding-left: 48px !important;
  padding-right: 48px !important;
}

/* ===== WHY PCG ENTERPRISE CONFIDENCE ===== */

.pcg-why-confidence {
  padding: 170px 0;
  background: radial-gradient(circle at 18% 20%, rgba(111,144,183,0.14), transparent 30%), linear-gradient(180deg, #eef3f8 0%, #ffffff 100%);
}

.pcg-confidence-eyebrow {
  color: #6f90b7;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 18px;
}

.pcg-confidence-title {
  color: #0b1f3a;
  font-size: clamp(42px, 5vw, 76px);
  line-height: 1;
  font-weight: 900;
  letter-spacing: -0.055em;
  max-width: 1050px;
  margin-bottom: 24px;
}

.pcg-confidence-text {
  color: #425466;
  font-size: 20px;
  line-height: 1.75;
  max-width: 900px;
  margin-bottom: 78px;
  font-weight: 600;
}

.pcg-confidence-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

.pcg-confidence-card {
  position: relative;
  overflow: hidden;
  min-height: 380px;
  padding: 36px;
  border-radius: 32px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.18), transparent 42%), rgba(255,255,255,0.9);
  border: 1px solid rgba(11,31,58,0.08);
  box-shadow: 0 28px 85px rgba(11,31,58,0.12), inset 0 1px 0 rgba(255,255,255,0.92);
  transition: transform 0.42s ease, box-shadow 0.42s ease, border-color 0.42s ease;
}

.pcg-confidence-card::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 36px;
  width: 74px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.32);
}

.pcg-confidence-card:hover {
  transform: translateY(-9px);
  border-color: rgba(111,144,183,0.34);
  box-shadow: 0 38px 105px rgba(11,31,58,0.17), 0 0 58px rgba(111,144,183,0.14);
}

.pcg-confidence-number {
  display: inline-block;
  color: #6f90b7;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 2.5px;
  margin-top: 50px;
  margin-bottom: 42px;
}

.pcg-confidence-card-title {
  color: #0b1f3a;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.04;
  font-weight: 900;
  letter-spacing: -0.045em;
  margin-bottom: 18px;
}

.pcg-confidence-card-text {
  color: #425466;
  font-size: 17px;
  line-height: 1.68;
  margin-bottom: 0;
  font-weight: 600;
}

@media (max-width: 991px) {
  .pcg-confidence-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-confidence-card {
    min-height: auto;
  }
}

@media (max-width: 767px) {
  .pcg-why-confidence {
    padding: 115px 0;
  }
}

@media (max-width: 767px) {
  .pcg-confidence-card {
    padding: 32px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-confidence-card::before {
    left: 28px;
  }
}

/* ===== WHY PCG FINAL CTA ===== */

.pcg-why-final-cta {
  padding: 95px 0 150px;
  background: radial-gradient(circle at 16% 50%, rgba(111,144,183,0.16), transparent 30%), linear-gradient(180deg, #ffffff 0%, #eef3f8 100%);
}

.pcg-why-final-bar {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 36px;
  align-items: center;
  padding: 42px;
  border-radius: 32px;
  background: radial-gradient(circle at top right, rgba(111,144,183,0.24), transparent 42%), linear-gradient(135deg, #071427 0%, #0b1f3a 100%);
  border: 1px solid rgba(157,183,212,0.24);
  box-shadow: 0 34px 100px rgba(11,31,58,0.24), 0 0 70px rgba(111,144,183,0.14);
}

.pcg-why-final-bar::before {
  content: "";
  position: absolute;
  top: 30px;
  left: 42px;
  width: 116px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, #6f90b7, transparent);
  box-shadow: 0 0 24px rgba(111,144,183,0.42);
}

.pcg-why-final-copy, .pcg-why-final-actions {
  position: relative;
  z-index: 2;
}

.pcg-why-final-copy {
  padding-top: 34px;
}

.pcg-why-final-eyebrow {
  color: #9db7d4;
  font-size: 12px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 900;
  margin-bottom: 14px;
}

.pcg-why-final-title {
  color: #ffffff;
  font-size: clamp(32px, 4vw, 54px);
  line-height: 1.02;
  font-weight: 900;
  letter-spacing: -0.05em;
  margin-bottom: 14px;
  max-width: 760px;
}

.pcg-why-final-text {
  color: rgba(255,255,255,0.74);
  font-size: 17px;
  line-height: 1.6;
  max-width: 820px;
  margin-bottom: 0;
}

.pcg-why-final-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pcg-why-final-btn, a.pcg-why-final-btn, button.pcg-why-final-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 165px !important;
  min-height: 48px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease, background 0.35s ease, border-color 0.35s ease !important;
}

.pcg-why-final-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #6f90b7, #9db7d4) !important;
  border: 1px solid rgba(157,183,212,0.24) !important;
  box-shadow: 0 16px 42px rgba(111,144,183,0.28) !important;
}

.pcg-why-final-btn-secondary {
  color: #ffffff !important;
  background: rgba(255,255,255,0.065) !important;
  border: 1px solid rgba(157,183,212,0.28) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.pcg-why-final-btn:hover {
  transform: translateY(-3px) !important;
}

.pcg-why-final-btn-primary:hover {
  box-shadow: 0 22px 55px rgba(111,144,183,0.42) !important;
}

.pcg-why-final-btn-secondary:hover {
  background: rgba(111,144,183,0.18) !important;
  border-color: rgba(157,183,212,0.48) !important;
}

@media (max-width: 991px) {
  .pcg-why-final-bar {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991px) {
  .pcg-why-final-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .pcg-why-final-cta {
    padding: 80px 0 115px;
  }
}

@media (max-width: 767px) {
  .pcg-why-final-bar {
    padding: 36px 28px;
  }
}

@media (max-width: 767px) {
  .pcg-why-final-bar::before {
    left: 28px;
  }
}

@media (max-width: 767px) {
  .pcg-why-final-btn {
    width: 100% !important;
  }
}

/* ===== WHY PCG — REMOVE PROOF PANEL NUMBERS ===== */

.pcg-why-proof-number {
  display: none !important;
}

/* ===== WHY PCG — PROOF ROW SPACING AFTER NUMBER REMOVAL ===== */

.pcg-why-proof-row, .pcg-why-proof-item, .pcg-why-proof-card {
  padding-left: 24px !important;
}

.pcg-why-proof-row h3, .pcg-why-proof-item h3, .pcg-why-proof-card h3, .pcg-why-proof-row p, .pcg-why-proof-item p, .pcg-why-proof-card p {
  margin-left: 0 !important;
}

/* ===== WHY PCG — PROOF PANEL CLEAN ROW FIX ===== */

/* Hide the numbers */

.pcg-why-proof-number {
  display: none !important;
}

/* Stop the row from reserving space for the old number column */

.pcg-why-proof-row {
  display: block !important;
  grid-template-columns: none !important;
  padding: 18px 22px !important;
}

/* Make all text use the full row width */

.pcg-why-proof-row h3, .pcg-why-proof-row h4, .pcg-why-proof-row h5, .pcg-why-proof-row p {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* If the proof title is inside a paragraph instead of heading */

.pcg-why-proof-row p:first-of-type {
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  margin-bottom: 0 !important;
}

/* ===== WHY PCG — PROOF ITEMS AFTER NUMBER REMOVAL ===== */

/* Hide proof panel numbers */

.pcg-why-proof-number {
  display: none !important;
}

/* Rebuild each proof row without the number column */

.pcg-why-proof-item {
  display: block !important;
  grid-template-columns: none !important;
  width: 100% !important;
  padding: 20px 24px !important;
}

/* Let the text breathe across the full row */

.pcg-why-proof-item h3, .pcg-why-proof-item h4, .pcg-why-proof-item h5, .pcg-why-proof-item p {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

/* Main row text/title */

.pcg-why-proof-item h3, .pcg-why-proof-item h4, .pcg-why-proof-item h5, .pcg-why-proof-item p:first-of-type {
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 850 !important;
  margin-bottom: 0 !important;
}

/* ==========================================   SALT AND FEATHER — CINEMATIC FOUNDATION========================================== */

:root {
  --sf-black: #030608;
  --sf-deep: #071016;
  --sf-ivory: #eee9df;
  --sf-muted: #aaa59c;
  --sf-gold: #a98550;
  --sf-line: rgba(255, 255, 255, 0.14);
}

html, body {
  margin: 0;
  min-height: 100%;
  background: var(--sf-black) !important;
}

body.sf-home {
  color: var(--sf-ivory);
  overflow-x: hidden;
}

/* ==========================================   CINEMATIC HERO========================================== */

.sf-hero {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  background-color: var(--sf-black) !important;
  background: linear-gradient( 90deg, rgba(3, 6, 8, 0.98) 0%, rgba(3, 6, 8, 0.90) 32%, rgba(3, 6, 8, 0.48) 58%, rgba(3, 6, 8, 0.12) 100% ), url("../../assets/img/DJI_20240922083333_0047_D.jpg") center right / cover no-repeat;
}

.sf-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient( circle at 72% 42%, rgba(50, 98, 108, 0.15), transparent 34% );
  pointer-events: none;
}

.sf-hero-inner {
  position: relative;
  z-index: 2;
  min-height: 100vh;
  padding: 0;
}

/* ==========================================   CINEMATIC NAVIGATION========================================== */

.sf-nav {
  position: relative;
  z-index: 10;
  width: 100%;
  min-height: 92px;
  padding: 22px 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.sf-brand h1 {
  margin: 0;
  color: var(--sf-ivory);
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 0.22em;
  line-height: 1;
}

.sf-brand p {
  margin: 7px 0 0;
  color: var(--sf-muted);
  font-size: 8px;
  font-weight: 500;
  letter-spacing: 0.42em;
}

.sf-nav-links {
  display: flex;
  align-items: center;
  gap: 34px;
}

.sf-nav-links a {
  position: relative;
  color: rgba(238, 233, 223, 0.78);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-decoration: none;
  transition: color 240ms ease, transform 240ms ease;
}

.sf-nav-links a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -8px;
  height: 1px;
  background: var(--sf-gold);
  transition: right 260ms ease;
}

.sf-nav-links a:hover {
  color: var(--sf-ivory);
  transform: translateY(-1px);
}

.sf-nav-links a:hover::after {
  right: 0;
}

@media (max-width: 767px) {
  .sf-nav {
    min-height: 76px;
    padding: 18px 22px;
  }
}

@media (max-width: 767px) {
  .sf-nav-links {
    display: none;
  }
}

@media (max-width: 767px) {
  .sf-brand h1 {
    font-size: 14px;
  }
}

/* ==========================================   HERO CONTENT========================================== */

.sf-hero-content {
  position: relative;
  z-index: 4;
  width: min(620px, calc(100% - 84px));
  margin-top: clamp(90px, 13vh, 170px);
  margin-left: 42px;
  padding-bottom: 170px;
}

.sf-eyebrow {
  margin: 0 0 22px;
  color: var(--sf-gold);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.22em;
  line-height: 1.6;
}

.sf-title {
  margin: 0;
  max-width: 580px;
  color: var(--sf-ivory);
  font-size: clamp(48px, 5.8vw, 88px);
  font-weight: 400;
  letter-spacing: -0.035em;
  line-height: 0.94;
}

.sf-intro {
  max-width: 470px;
  margin: 30px 0 0;
  color: rgba(238, 233, 223, 0.72);
  font-size: 15px;
  line-height: 1.75;
}

.sf-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

.sf-button {
  min-width: 164px;
  padding: 15px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  color: var(--sf-ivory);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-decoration: none;
  transition: background-color 240ms ease, border-color 240ms ease, color 240ms ease, transform 240ms ease;
}

.sf-button:hover {
  transform: translateY(-2px);
}

.sf-button-primary {
  border-color: var(--sf-gold);
  background: rgba(169, 133, 80, 0.12);
}

.sf-button-primary:hover {
  background: var(--sf-gold);
  color: var(--sf-black);
}

.sf-button-secondary {
  border-color: rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.025);
}

.sf-button-secondary:hover {
  border-color: rgba(255, 255, 255, 0.5);
  background: rgba(255, 255, 255, 0.08);
}

@media (max-width: 767px) {
  .sf-hero-content {
    width: calc(100% - 44px);
    margin-top: 80px;
    margin-left: 22px;
    padding-bottom: 130px;
  }
}

@media (max-width: 767px) {
  .sf-title {
    font-size: clamp(42px, 13vw, 64px);
  }
}

@media (max-width: 767px) {
  .sf-intro {
    font-size: 14px;
  }
}

@media (max-width: 767px) {
  .sf-actions {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 767px) {
  .sf-button {
    width: 100%;
    max-width: 260px;
  }
}

/* HERO PHOTO — SIMPLE OVERRIDE */

.sf-hero {
  background-image: linear-gradient( 90deg, rgba(3, 6, 8, 0.96) 0%, rgba(3, 6, 8, 0.82) 30%, rgba(3, 6, 8, 0.28) 68%, rgba(3, 6, 8, 0.06) 100% ), url("../../assets/img/DJI_20240922083333_0047_D.jpg") !important;
  background-size: cover !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
}

/* =========================================================   SALT & FEATHER — FINAL TYPOGRAPHY + NAVBAR SYSTEM========================================================= */

/* Clean supporting font throughout the site */

html, body, p, a, button, input, textarea, select, label {
  font-family: "Manrope", sans-serif !important;
}

/* Editorial font for cinematic page and section headings */

h1, h2, h3, h4, h5, h6 {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 400 !important;
}

/* Keep the main hero title modern and graphic */

.sf-title, .sf-title h1, .sf-title h2, .sf-title h3, .sf-title h4, .sf-title h5, .sf-title h6 {
  font-family: "Manrope", sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: -0.045em !important;
}

/* SALT & FEATHER navbar brand */

.sf-brand h1, .sf-brand h2, .sf-brand h3, .sf-brand h4, .sf-brand h5, .sf-brand h6 {
  margin: 0 !important;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(18px, 1.35vw, 24px) !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: 0.15em !important;
  white-space: nowrap !important;
}

/* Make navbar links readable */

.sf-nav-links {
  display: flex !important;
  align-items: center !important;
  gap: clamp(22px, 2.4vw, 42px) !important;
}

.sf-nav-links a {
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(12px, 0.82vw, 15px) !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: rgba(244, 239, 231, 0.82) !important;
  transition: color 0.3s ease, transform 0.3s ease !important;
}

.sf-nav-links a:hover {
  color: #ffffff !important;
  transform: translateY(-2px) !important;
}

/* Labels and buttons stay clean and disciplined */

.sf-eyebrow, .sf-frame-overlay p, .sf-button, .sf-actions a {
  font-family: "Manrope", sans-serif !important;
}

/* Preserve modern filmstrip titles */

.sf-frame-overlay h1, .sf-frame-overlay h2, .sf-frame-overlay h3, .sf-frame-overlay h4, .sf-frame-overlay h5, .sf-frame-overlay h6 {
  font-family: "Manrope", sans-serif !important;
}

/* Comfortable laptop sizing */

@media (max-width: 1100px) {
  .sf-brand h1, .sf-brand h2, .sf-brand h3, .sf-brand h4, .sf-brand h5, .sf-brand h6 {
    font-size: 18px !important;
  }
}

@media (max-width: 1100px) {
  .sf-nav-links {
    gap: 22px !important;
  }
}

@media (max-width: 1100px) {
  .sf-nav-links a {
    font-size: 12px !important;
  }
}

/* SALT & FEATHER — FORCE FINAL FONT STYLES */

/* Main cinematic editorial headings */

.sf-services-new-header h1, .sf-services-new-header h2, .sf-services-new-header h3, .sf-intro-title h1, .sf-intro-title h2, .sf-intro-title h3, .sf-showcase-header h1, .sf-showcase-header h2, .sf-showcase-header h3, .sf-inquiry-content h1, .sf-inquiry-content h2, .sf-inquiry-content h3, .sf-footer-contact h1, .sf-footer-contact h2, .sf-footer-contact h3 {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 400 !important;
}

/* Clean modern text */

body, p, a, button, .sf-nav-links a, .sf-brand, .sf-button, .sf-eyebrow {
  font-family: "Manrope", sans-serif !important;
}

/* Keep the large hero statement modern, not serif */

.sf-title, .sf-title h1, .sf-title h2, .sf-title h3 {
  font-family: "Manrope", sans-serif !important;
}

/* SALT & FEATHER — VISIBLE CINEMATIC TYPOGRAPHY */

.sf-hero .sf-title {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 400 !important;
  font-size: clamp(56px, 6vw, 104px) !important;
  line-height: 0.84 !important;
  letter-spacing: -0.045em !important;
}

/* Keep navigation and readable copy modern */

.sf-brand h1, .sf-nav-links a, .sf-hero p, .sf-actions a, .sf-frame-overlay p, .sf-frame-overlay h1, .sf-frame-overlay h2, .sf-frame-overlay h3 {
  font-family: "Manrope", sans-serif !important;
}

.sf-hero .sf-title {
  font-size: clamp(52px, 5.2vw, 88px) !important;
  line-height: 0.9 !important;
}

/* =========================================================   SALT & FEATHER — SERVICES SECTION========================================================= */

.sf-services-new {
  background: #0b0b0b;
  color: #f4efe7;
  padding: clamp(88px, 10vw, 150px) 0;
}

.sf-services-new-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: 0 !important;
}

.sf-services-new-header {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
  gap: clamp(40px, 7vw, 110px);
  align-items: end;
  padding-bottom: clamp(55px, 7vw, 95px);
}

.sf-services-new-header > p:first-child {
  grid-column: 1 / -1;
  margin: 0 0 18px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.9);
}

.sf-services-new-header h1, .sf-services-new-header h2, .sf-services-new-header h3, .sf-services-new-header h4, .sf-services-new-header h5, .sf-services-new-header h6 {
  margin: 0;
  max-width: 900px;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(48px, 5.4vw, 86px) !important;
  font-weight: 400 !important;
  line-height: 0.92 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7;
}

.sf-services-new-header > p:last-child {
  margin: 0;
  max-width: 560px;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.8;
  color: rgba(244, 239, 231, 0.64);
}

.sf-services-new-list {
  border-top: 1px solid rgba(244, 239, 231, 0.16);
}

.sf-service-new-row {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, 0.8fr) minmax(0, 1.2fr);
  gap: clamp(35px, 6vw, 100px);
  align-items: center;
  min-height: clamp(110px, 9vw, 145px);
  padding: 28px 0;
  border-bottom: 1px solid rgba(244, 239, 231, 0.14);
  overflow: hidden;
  transition: padding-left 0.35s ease, background 0.35s ease;
}

.sf-service-new-row::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 2px;
  background: rgba(205, 177, 120, 0.92);
  transition: width 0.45s ease;
}

.sf-service-new-row:hover {
  padding-left: 18px;
  background: linear-gradient( 90deg, rgba(205, 177, 120, 0.06), transparent 45% );
}

.sf-service-new-row:hover::before {
  width: 100%;
}

.sf-service-new-row h1, .sf-service-new-row h2, .sf-service-new-row h3, .sf-service-new-row h4, .sf-service-new-row h5, .sf-service-new-row h6 {
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(30px, 3vw, 48px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: -0.02em !important;
  color: #f4efe7;
}

.sf-service-new-row p {
  margin: 0;
  max-width: 720px;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(14px, 1vw, 17px);
  line-height: 1.75;
  color: rgba(244, 239, 231, 0.62);
}

@media (max-width: 900px) {
  .sf-services-new-header {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

@media (max-width: 900px) {
  .sf-services-new-header > p:first-child {
    margin-bottom: 0;
  }
}

@media (max-width: 900px) {
  .sf-service-new-row {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 28px 0;
  }
}

@media (max-width: 900px) {
  .sf-service-new-row:hover {
    padding-left: 10px;
  }
}

/* Slightly shorter hero */

.sf-hero {
  min-height: 88vh !important;
}

/* =========================================================   SALT & FEATHER — STUDIO STATEMENT========================================================= */

.sf-intro {
  background: #050708;
  color: #f4efe7;
  padding: clamp(90px, 11vw, 170px) 0;
}

.sf-intro-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: 0 !important;
}

.sf-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
  gap: clamp(55px, 9vw, 150px);
  align-items: end;
}

.sf-intro-title > p {
  margin: 0 0 28px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.9);
}

.sf-intro-title h1, .sf-intro-title h2, .sf-intro-title h3, .sf-intro-title h4, .sf-intro-title h5, .sf-intro-title h6 {
  margin: 0;
  max-width: 980px;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(52px, 6vw, 96px) !important;
  font-weight: 400 !important;
  line-height: 0.92 !important;
  letter-spacing: -0.04em !important;
  color: #f4efe7;
}

.sf-intro-copy {
  max-width: 560px;
  padding-bottom: 8px;
}

.sf-intro-copy p {
  margin: 0;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.85;
  color: rgba(244, 239, 231, 0.64);
}

.sf-intro-copy p + p {
  margin-top: 28px;
}

@media (max-width: 900px) {
  .sf-intro-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }
}

@media (max-width: 900px) {
  .sf-intro-copy {
    max-width: 680px;
  }
}

/* FIX INTRO WIDTH + LAYOUT */

.sf-intro-inner {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: clamp(48px, 8vw, 140px) !important;
  padding-right: clamp(48px, 8vw, 140px) !important;
}

.sf-intro-grid {
  width: 100% !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr) !important;
}

.sf-intro-title {
  min-width: 0 !important;
}

.sf-intro-title h1, .sf-intro-title h2, .sf-intro-title h3, .sf-intro-title h4, .sf-intro-title h5, .sf-intro-title h6 {
  max-width: 1050px !important;
  white-space: normal !important;
}

.sf-intro-copy {
  width: 100% !important;
  max-width: 560px !important;
  justify-self: end !important;
}

/* FORCE INTRO SECTION TO FULL WIDTH */

section.sf-intro {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* COMPACT INTRO SECTION */

.sf-intro {
  padding: clamp(65px, 7vw, 105px) 0 !important;
}

.sf-intro-grid {
  gap: clamp(45px, 7vw, 110px) !important;
  align-items: center !important;
}

.sf-intro-title > p {
  margin-bottom: 18px !important;
}

.sf-intro-title h1, .sf-intro-title h2, .sf-intro-title h3, .sf-intro-title h4, .sf-intro-title h5, .sf-intro-title h6 {
  max-width: 780px !important;
  font-size: clamp(42px, 4.4vw, 70px) !important;
  line-height: 0.96 !important;
  letter-spacing: -0.03em !important;
}

.sf-intro-copy p {
  font-size: clamp(14px, 1vw, 16px) !important;
  line-height: 1.75 !important;
}

.sf-intro-copy p + p {
  margin-top: 20px !important;
}

/* =========================================================   SALT & FEATHER — START A PROJECT========================================================= */

.sf-inquiry {
  position: relative;
  background: #080909;
  color: #f4efe7;
  overflow: hidden;
}

.sf-inquiry-inner {
  position: relative;
  width: 100%;
  min-height: clamp(520px, 62vh, 720px);
  padding: 0 !important;
  overflow: hidden;
}

.sf-inquiry-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.sf-inquiry-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient( 90deg, rgba(5, 7, 8, 0.94) 0%, rgba(5, 7, 8, 0.78) 38%, rgba(5, 7, 8, 0.34) 68%, rgba(5, 7, 8, 0.12) 100% );
  z-index: 1;
}

.sf-inquiry-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: clamp(520px, 62vh, 720px);
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: clamp(70px, 9vw, 135px) 0;
}

.sf-inquiry-content > p:first-child {
  margin: 0 0 22px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.95);
}

.sf-inquiry-content h1, .sf-inquiry-content h2, .sf-inquiry-content h3, .sf-inquiry-content h4, .sf-inquiry-content h5, .sf-inquiry-content h6 {
  margin: 0;
  max-width: 820px;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(46px, 5.4vw, 78px) !important;
  font-weight: 400 !important;
  line-height: 0.94 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7;
}

.sf-inquiry-content > p:nth-of-type(2) {
  max-width: 640px;
  margin: 28px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.1vw, 18px);
  line-height: 1.8;
  color: rgba(244, 239, 231, 0.7);
}

.sf-inquiry-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 38px;
}

.sf-inquiry-actions .sf-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 150px;
  min-height: 48px;
  padding: 14px 24px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}

.sf-inquiry-actions .sf-button-primary {
  background: #f4efe7;
  border: 1px solid #f4efe7;
  color: #080909 !important;
}

.sf-inquiry-actions .sf-button-secondary {
  background: transparent;
  border: 1px solid rgba(244, 239, 231, 0.48);
  color: #f4efe7 !important;
}

.sf-inquiry-actions .sf-button:hover {
  transform: translateY(-3px);
}

.sf-inquiry-actions .sf-button-primary:hover {
  background: #ffffff;
  border-color: #ffffff;
}

.sf-inquiry-actions .sf-button-secondary:hover {
  background: rgba(244, 239, 231, 0.09);
  border-color: rgba(244, 239, 231, 0.9);
}

@media (max-width: 700px) {
  .sf-inquiry-inner, .sf-inquiry-content {
    min-height: 560px;
  }
}

@media (max-width: 700px) {
  .sf-inquiry-inner::after {
    background: linear-gradient( 90deg, rgba(5, 7, 8, 0.92), rgba(5, 7, 8, 0.54) );
  }
}

@media (max-width: 700px) {
  .sf-inquiry-content {
    width: min(88%, 1500px);
  }
}

@media (max-width: 700px) {
  .sf-inquiry-actions {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 700px) {
  .sf-inquiry-actions .sf-button {
    width: 100%;
    max-width: 260px;
  }
}

/* GIVE THE INQUIRY IMAGE A LITTLE MORE VERTICAL ROOM */

.sf-inquiry-inner, .sf-inquiry-content {
  min-height: clamp(560px, 66vh, 760px) !important;
}

.sf-inquiry-image {
  object-position: center center !important;
}

/* =========================================================   SALT & FEATHER — SELECTED STORIES========================================================= */

.sf-showcase {
  background: #070808;
  color: #f4efe7;
  padding: clamp(90px, 10vw, 150px) 0;
}

.sf-showcase-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: 0 !important;
}

.sf-showcase-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.7fr);
  gap: clamp(40px, 7vw, 110px);
  align-items: end;
  margin-bottom: clamp(55px, 7vw, 90px);
}

.sf-showcase-header > p {
  margin: 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.92);
}

.sf-showcase-header h1, .sf-showcase-header h2, .sf-showcase-header h3, .sf-showcase-header h4, .sf-showcase-header h5, .sf-showcase-header h6 {
  margin: 0;
  max-width: 820px;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(48px, 5.2vw, 82px) !important;
  font-weight: 400 !important;
  line-height: 0.94 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7;
}

.sf-showcase-stage {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  grid-template-rows: minmax(320px, 52vw) minmax(260px, 32vw);
  gap: clamp(18px, 2vw, 30px);
}

.sf-story {
  position: relative;
  overflow: hidden;
  background: #101111;
}

.sf-story-main {
  grid-column: 1;
  grid-row: 1;
}

.sf-story-tall {
  grid-column: 2;
  grid-row: 1 / 3;
}

.sf-story-wide {
  grid-column: 1;
  grid-row: 2;
}

.sf-story img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s ease;
}

.sf-story::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient( 180deg, transparent 42%, rgba(4, 5, 5, 0.22) 66%, rgba(4, 5, 5, 0.88) 100% );
  z-index: 1;
}

.sf-story:hover img {
  transform: scale(1.035);
}

.sf-story-caption {
  position: absolute;
  z-index: 2;
  left: clamp(24px, 3vw, 48px);
  right: clamp(24px, 3vw, 48px);
  bottom: clamp(24px, 3vw, 46px);
}

.sf-story-caption p {
  margin: 0 0 10px;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.95);
}

.sf-story-caption h1, .sf-story-caption h2, .sf-story-caption h3, .sf-story-caption h4, .sf-story-caption h5, .sf-story-caption h6 {
  margin: 0;
  max-width: 620px;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(30px, 3.2vw, 52px) !important;
  font-weight: 400 !important;
  line-height: 0.96 !important;
  letter-spacing: -0.025em !important;
  color: #ffffff;
}

.sf-story-tall .sf-story-caption h1, .sf-story-tall .sf-story-caption h2, .sf-story-tall .sf-story-caption h3, .sf-story-tall .sf-story-caption h4, .sf-story-tall .sf-story-caption h5, .sf-story-tall .sf-story-caption h6 {
  font-size: clamp(28px, 2.5vw, 44px) !important;
}

.sf-story-tall img {
  object-position: 68% center !important;
}

@media (max-width: 900px) {
  .sf-showcase-header {
    grid-template-columns: 1fr;
    gap: 22px;
  }
}

@media (max-width: 900px) {
  .sf-showcase-stage {
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }
}

@media (max-width: 900px) {
  .sf-story-main, .sf-story-tall, .sf-story-wide {
    grid-column: 1;
    grid-row: auto;
    min-height: 420px;
  }
}

@media (max-width: 900px) {
  .sf-story-tall {
    min-height: 560px;
  }
}

/* SHOW MORE OF THE PROPERTY PHOTO */

.sf-story-tall img {
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(0.88);
}

.sf-story-tall {
  background: #111212;
}

/* FIX PROPERTY IMAGE SIZE */

.sf-story-tall img {
  transform: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* FIX PROPERTY FRAME WIDTH + RESTORE HOVER */

.sf-showcase-stage {
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr) !important;
}

.sf-story-tall img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1) !important;
}

.sf-story-tall:hover img {
  transform: scale(1.035) !important;
}

/* =========================================================   FINAL HERO SPACING + MOBILE SELECTED STORIES FIX========================================================= */

/* Shorten the main hero image slightly */

.sf-hero {
  min-height: 82vh !important;
}

/* Tighten the hero wording */

.sf-hero .sf-title {
  line-height: 0.86 !important;
  margin-bottom: 18px !important;
}

.sf-hero .sf-title + p, .sf-hero-content > p {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}

.sf-hero .sf-actions {
  margin-top: 0 !important;
}

/* Proper mobile Selected Stories layout */

@media (max-width: 900px) {
  .sf-showcase {
    padding: 70px 0 !important;
    overflow: hidden !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-inner {
    width: 88% !important;
    max-width: none !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-header {
    display: block !important;
    margin-bottom: 38px !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-header > p {
    margin-bottom: 16px !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-header h1, .sf-showcase-header h2, .sf-showcase-header h3, .sf-showcase-header h4, .sf-showcase-header h5, .sf-showcase-header h6 {
    font-size: clamp(42px, 11vw, 62px) !important;
    line-height: 0.94 !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-stage {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 18px !important;
  }
}

@media (max-width: 900px) {
  .sf-story-main, .sf-story-tall, .sf-story-wide {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
}

@media (max-width: 900px) {
  .sf-story-main {
    min-height: 420px !important;
  }
}

@media (max-width: 900px) {
  .sf-story-tall {
    min-height: 560px !important;
  }
}

@media (max-width: 900px) {
  .sf-story-wide {
    min-height: 350px !important;
  }
}

@media (max-width: 900px) {
  .sf-story img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transform: scale(1) !important;
  }
}

@media (max-width: 900px) {
  .sf-story:hover img {
    transform: scale(1.035) !important;
  }
}

@media (max-width: 900px) {
  .sf-story-tall img {
    object-position: center center !important;
  }
}

@media (max-width: 900px) {
  .sf-story-caption {
    left: 24px !important;
    right: 24px !important;
    bottom: 26px !important;
  }
}

@media (max-width: 900px) {
  .sf-story-caption h1, .sf-story-caption h2, .sf-story-caption h3, .sf-story-caption h4, .sf-story-caption h5, .sf-story-caption h6 {
    font-size: clamp(30px, 8vw, 44px) !important;
    max-width: 100% !important;
  }
}

/* Keep the hero compact on phones */

@media (max-width: 700px) {
  .sf-hero {
    min-height: 76vh !important;
  }
}

@media (max-width: 700px) {
  .sf-hero .sf-title {
    font-size: clamp(47px, 13vw, 66px) !important;
    line-height: 0.88 !important;
    margin-bottom: 16px !important;
  }
}

/* =========================================================   FINAL HERO SPACING + MOBILE SELECTED STORIES FIX========================================================= */

/* Shorten the main hero image slightly */

.sf-hero {
  min-height: 82vh !important;
}

/* Tighten the hero wording */

.sf-hero .sf-title {
  line-height: 0.86 !important;
  margin-bottom: 18px !important;
}

.sf-hero .sf-title + p, .sf-hero-content > p {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}

.sf-hero .sf-actions {
  margin-top: 0 !important;
}

/* Proper mobile Selected Stories layout */

@media (max-width: 900px) {
  .sf-showcase {
    padding: 70px 0 !important;
    overflow: hidden !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-inner {
    width: 88% !important;
    max-width: none !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-header {
    display: block !important;
    margin-bottom: 38px !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-header > p {
    margin-bottom: 16px !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-header h1, .sf-showcase-header h2, .sf-showcase-header h3, .sf-showcase-header h4, .sf-showcase-header h5, .sf-showcase-header h6 {
    font-size: clamp(42px, 11vw, 62px) !important;
    line-height: 0.94 !important;
  }
}

@media (max-width: 900px) {
  .sf-showcase-stage {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 18px !important;
  }
}

@media (max-width: 900px) {
  .sf-story-main, .sf-story-tall, .sf-story-wide {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
}

@media (max-width: 900px) {
  .sf-story-main {
    min-height: 420px !important;
  }
}

@media (max-width: 900px) {
  .sf-story-tall {
    min-height: 560px !important;
  }
}

@media (max-width: 900px) {
  .sf-story-wide {
    min-height: 350px !important;
  }
}

@media (max-width: 900px) {
  .sf-story img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transform: scale(1) !important;
  }
}

@media (max-width: 900px) {
  .sf-story:hover img {
    transform: scale(1.035) !important;
  }
}

@media (max-width: 900px) {
  .sf-story-tall img {
    object-position: center center !important;
  }
}

@media (max-width: 900px) {
  .sf-story-caption {
    left: 24px !important;
    right: 24px !important;
    bottom: 26px !important;
  }
}

@media (max-width: 900px) {
  .sf-story-caption h1, .sf-story-caption h2, .sf-story-caption h3, .sf-story-caption h4, .sf-story-caption h5, .sf-story-caption h6 {
    font-size: clamp(30px, 8vw, 44px) !important;
    max-width: 100% !important;
  }
}

/* Keep the hero compact on phones */

@media (max-width: 700px) {
  .sf-hero {
    min-height: 76vh !important;
  }
}

@media (max-width: 700px) {
  .sf-hero .sf-title {
    font-size: clamp(47px, 13vw, 66px) !important;
    line-height: 0.88 !important;
    margin-bottom: 16px !important;
  }
}

/* TIGHTEN THE HERO CONTENT STACK */

.sf-hero-content {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  gap: 0 !important;
}

.sf-hero .sf-title {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

.sf-hero-content > p:last-of-type {
  margin-top: 0 !important;
  margin-bottom: 26px !important;
}

.sf-hero .sf-actions {
  margin-top: 0 !important;
}

/* FORCE HERO WORDING INTO ONE TIGHT STACK */

.sf-hero-content {
  height: auto !important;
  min-height: 0 !important;
  display: block !important;
}

.sf-hero-content > * {
  position: static !important;
  transform: none !important;
}

.sf-hero-content .sf-eyebrow {
  margin: 0 0 12px !important;
}

.sf-hero-content .sf-title {
  margin: 0 0 16px !important;
}

.sf-hero-content > p:not(.sf-eyebrow), .sf-hero-content > div > p {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

.sf-hero-content > div, .sf-hero-content .sf-actions {
  margin-top: 0 !important;
}

/* =========================================================   SALT & FEATHER — FOOTER========================================================= */

.sf-footer {
  background: #050606;
  color: #f4efe7;
  border-top: 1px solid rgba(244, 239, 231, 0.12);
}

.sf-footer-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: clamp(70px, 8vw, 120px) 0 28px !important;
}

.sf-footer-main {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(160px, 0.45fr) minmax(300px, 0.85fr);
  gap: clamp(45px, 7vw, 110px);
  align-items: start;
  padding-bottom: clamp(60px, 7vw, 95px);
}

.sf-footer-brand h1, .sf-footer-brand h2, .sf-footer-brand h3, .sf-footer-brand h4, .sf-footer-brand h5, .sf-footer-brand h6 {
  margin: 0 0 20px;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(20px, 1.7vw, 27px) !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  color: #f4efe7;
}

.sf-footer-brand p {
  max-width: 430px;
  margin: 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 15px;
  line-height: 1.75;
  color: rgba(244, 239, 231, 0.58);
}

.sf-footer-navigation > p, .sf-footer-contact > p {
  margin: 0 0 24px;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.92);
}

.sf-footer-links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}

.sf-footer-links a {
  position: relative;
  font-family: "Manrope", sans-serif !important;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none !important;
  color: rgba(244, 239, 231, 0.72) !important;
  transition: color 0.3s ease, transform 0.3s ease;
}

.sf-footer-links a:hover {
  color: #ffffff !important;
  transform: translateX(5px);
}

.sf-footer-contact h1, .sf-footer-contact h2, .sf-footer-contact h3, .sf-footer-contact h4, .sf-footer-contact h5, .sf-footer-contact h6 {
  max-width: 560px;
  margin: 0 0 28px;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(38px, 4vw, 64px) !important;
  font-weight: 400 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.03em !important;
  color: #f4efe7;
}

.sf-footer-contact-link {
  display: inline-block;
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(205, 177, 120, 0.72);
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none !important;
  color: rgba(244, 239, 231, 0.88) !important;
  transition: color 0.3s ease, border-color 0.3s ease;
}

.sf-footer-contact-link:hover {
  color: #ffffff !important;
  border-color: #ffffff;
}

.sf-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  padding-top: 26px;
  border-top: 1px solid rgba(244, 239, 231, 0.1);
}

.sf-footer-bottom > p {
  margin: 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  line-height: 1.6;
  color: rgba(244, 239, 231, 0.42);
}

.sf-footer-legal {
  display: flex;
  align-items: center;
  gap: 24px;
}

.sf-footer-legal a {
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none !important;
  color: rgba(244, 239, 231, 0.42) !important;
  transition: color 0.3s ease;
}

.sf-footer-legal a:hover {
  color: #ffffff !important;
}

@media (max-width: 900px) {
  .sf-footer-main {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 900px) {
  .sf-footer-contact {
    grid-column: 1 / -1;
    padding-top: 20px;
  }
}

@media (max-width: 620px) {
  .sf-footer-inner {
    width: 88%;
  }
}

@media (max-width: 620px) {
  .sf-footer-main {
    grid-template-columns: 1fr;
    gap: 44px;
  }
}

@media (max-width: 620px) {
  .sf-footer-contact {
    grid-column: auto;
  }
}

@media (max-width: 620px) {
  .sf-footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* MAKE GATEWAY SMALL LABELS READABLE */

.sf-frame-overlay p {
  font-size: clamp(11px, 0.75vw, 13px) !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  color: rgba(255, 232, 184, 0.98) !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9) !important;
  margin-bottom: 6px !important;
}

.sf-frame::after {
  background: linear-gradient( 180deg, rgba(0, 0, 0, 0.08) 20%, rgba(0, 0, 0, 0.72) 100% ) !important;
}

/* MAKE GATEWAY SMALL LABELS READABLE */

.sf-frame-overlay p {
  font-size: clamp(11px, 0.75vw, 13px) !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  color: rgba(255, 232, 184, 0.98) !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9) !important;
  margin-bottom: 6px !important;
}

.sf-frame::after {
  background: linear-gradient( 180deg, rgba(0, 0, 0, 0.08) 20%, rgba(0, 0, 0, 0.72) 100% ) !important;
}

/* =========================================================   SMOOTHER INTRO → SHOWCASE TRANSITION========================================================= */

/* Unify the dark background */

.sf-intro, .sf-showcase {
  background: transperant !important;
}

/* Let the intro flow into the showcase */

.sf-intro {
  position: relative;
  padding-bottom: clamp(70px, 7vw, 105px) !important;
}

.sf-intro::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: min(92%, 1500px);
  height: 1px;
  transform: translateX(-50%);
  background: linear-gradient( 90deg, transparent, rgba(205, 177, 120, 0.38), transparent );
}

/* Pull Selected Stories closer to the statement */

.sf-showcase {
  padding-top: clamp(65px, 7vw, 100px) !important;
}

/* Make the showcase heading feel anchored instead of floating */

.sf-showcase-header {
  position: relative;
  margin-bottom: clamp(48px, 6vw, 75px) !important;
}

.sf-showcase-header::before {
  content: "";
  position: absolute;
  left: 0;
  top: -24px;
  width: 52px;
  height: 1px;
  background: rgba(205, 177, 120, 0.85);
}

/* Slightly tighten the large statement block */

.sf-intro-grid {
  align-items: center !important;
}

.sf-intro-title h1, .sf-intro-title h2, .sf-intro-title h3, .sf-intro-title h4, .sf-intro-title h5, .sf-intro-title h6 {
  line-height: 0.94 !important;
}

/* FINAL TIGHTENING BETWEEN INTRO + SELECTED STORIES */

.sf-intro {
  padding-bottom: 60px !important;
}

.sf-showcase {
  padding-top: 55px !important;
}

.sf-showcase-header {
  margin-bottom: 55px !important;
}

/* TIGHTEN THE TWO INTRO HEADINGS */

.sf-intro-title {
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
}

.sf-intro-title > p {
  margin-bottom: 8px !important;
}

.sf-intro-title h1, .sf-intro-title h2, .sf-intro-title h3, .sf-intro-title h4, .sf-intro-title h5, .sf-intro-title h6 {
  margin: 0 !important;
}

/* =========================================================   SALT & FEATHER — GALLERIES HERO========================================================= */

.sf-gallery-hero {
  background: #060707;
  color: #f4efe7;
  border-top: 1px solid rgba(244, 239, 231, 0.08);
}

.sf-gallery-hero-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: clamp(95px, 11vw, 170px) 0 clamp(75px, 9vw, 130px) !important;
}

.sf-gallery-hero-inner > p:first-child {
  margin: 0 0 22px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.95);
}

.sf-gallery-hero-inner h1, .sf-gallery-hero-inner h2, .sf-gallery-hero-inner h3, .sf-gallery-hero-inner h4, .sf-gallery-hero-inner h5, .sf-gallery-hero-inner h6 {
  max-width: 1000px;
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(64px, 8vw, 124px) !important;
  font-weight: 400 !important;
  line-height: 0.88 !important;
  letter-spacing: -0.045em !important;
  color: #f4efe7;
}

.sf-gallery-hero-inner > p:last-child {
  max-width: 760px;
  margin: 34px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.2vw, 19px);
  line-height: 1.8;
  color: rgba(244, 239, 231, 0.66);
}

@media (max-width: 700px) {
  .sf-gallery-hero-inner {
    width: 88%;
    padding: 80px 0 70px !important;
  }
}

@media (max-width: 700px) {
  .sf-gallery-hero-inner h1, .sf-gallery-hero-inner h2, .sf-gallery-hero-inner h3, .sf-gallery-hero-inner h4, .sf-gallery-hero-inner h5, .sf-gallery-hero-inner h6 {
    font-size: clamp(54px, 16vw, 78px) !important;
  }
}

/* =========================================================   SALT & FEATHER — FEATURED GALLERY COLLECTION========================================================= */

.sf-gallery-collection {
  background: #060707;
  color: #f4efe7;
  padding: clamp(80px, 9vw, 140px) 0;
}

.sf-gallery-collection-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: 0 !important;
}

.sf-gallery-collection-header {
  display: grid;
  grid-template-columns: minmax(0, 0.75fr) minmax(320px, 1.25fr);
  gap: clamp(40px, 7vw, 110px);
  align-items: end;
  margin-bottom: clamp(55px, 7vw, 90px);
}

.sf-gallery-collection-header > p:first-child {
  margin: 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.95);
}

.sf-gallery-collection-header h1, .sf-gallery-collection-header h2, .sf-gallery-collection-header h3, .sf-gallery-collection-header h4, .sf-gallery-collection-header h5, .sf-gallery-collection-header h6 {
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(48px, 5.4vw, 84px) !important;
  font-weight: 400 !important;
  line-height: 0.92 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7;
}

.sf-gallery-collection-header > p:last-child {
  grid-column: 2;
  max-width: 680px;
  margin: 22px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.1vw, 18px);
  line-height: 1.8;
  color: rgba(244, 239, 231, 0.64);
}

.sf-gallery-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.65fr);
  grid-template-rows: minmax(360px, 48vw) minmax(280px, 30vw);
  gap: clamp(18px, 2vw, 30px);
}

.sf-gallery-item {
  position: relative;
  overflow: hidden;
  background: #111212;
}

.sf-gallery-item-featured {
  grid-column: 1;
  grid-row: 1;
}

.sf-gallery-item-tall {
  grid-column: 2;
  grid-row: 1 / 3;
}

.sf-gallery-item-wide {
  grid-column: 1;
  grid-row: 2;
}

.sf-gallery-item img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s ease;
}

.sf-gallery-item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient( 180deg, transparent 42%, rgba(4, 5, 5, 0.2) 65%, rgba(4, 5, 5, 0.9) 100% );
  z-index: 1;
}

.sf-gallery-item:hover img {
  transform: scale(1.035);
}

.sf-gallery-item-caption {
  position: absolute;
  z-index: 2;
  left: clamp(24px, 3vw, 48px);
  right: clamp(24px, 3vw, 48px);
  bottom: clamp(24px, 3vw, 46px);
}

.sf-gallery-item-caption p {
  margin: 0 0 10px;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.96);
}

.sf-gallery-item-caption h1, .sf-gallery-item-caption h2, .sf-gallery-item-caption h3, .sf-gallery-item-caption h4, .sf-gallery-item-caption h5, .sf-gallery-item-caption h6 {
  margin: 0;
  max-width: 620px;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(30px, 3.2vw, 52px) !important;
  font-weight: 400 !important;
  line-height: 0.96 !important;
  letter-spacing: -0.025em !important;
  color: #ffffff;
}

.sf-gallery-item-tall .sf-gallery-item-caption h1, .sf-gallery-item-tall .sf-gallery-item-caption h2, .sf-gallery-item-tall .sf-gallery-item-caption h3, .sf-gallery-item-tall .sf-gallery-item-caption h4, .sf-gallery-item-tall .sf-gallery-item-caption h5, .sf-gallery-item-tall .sf-gallery-item-caption h6 {
  font-size: clamp(28px, 2.5vw, 44px) !important;
}

@media (max-width: 900px) {
  .sf-gallery-collection-header {
    grid-template-columns: 1fr;
    gap: 22px;
  }
}

@media (max-width: 900px) {
  .sf-gallery-collection-header > p:last-child {
    grid-column: auto;
    margin-top: 0;
  }
}

@media (max-width: 900px) {
  .sf-gallery-grid {
    display: flex;
    flex-direction: column;
    gap: 18px;
  }
}

@media (max-width: 900px) {
  .sf-gallery-item-featured, .sf-gallery-item-tall, .sf-gallery-item-wide {
    min-height: 440px;
  }
}

@media (max-width: 900px) {
  .sf-gallery-item-tall {
    min-height: 560px;
  }
}

@media (max-width: 620px) {
  .sf-gallery-collection-inner {
    width: 88%;
  }
}

@media (max-width: 620px) {
  .sf-gallery-item-featured, .sf-gallery-item-wide {
    min-height: 390px;
  }
}

@media (max-width: 620px) {
  .sf-gallery-item-tall {
    min-height: 520px;
  }
}

/* FIX GALLERY HEADER SPACING + TALL BIRD CROP */

.sf-gallery-collection-header {
  display: block !important;
  margin-bottom: clamp(45px, 5vw, 70px) !important;
}

.sf-gallery-collection-header > p:first-child {
  margin: 0 0 14px !important;
}

.sf-gallery-collection-header h1, .sf-gallery-collection-header h2, .sf-gallery-collection-header h3, .sf-gallery-collection-header h4, .sf-gallery-collection-header h5, .sf-gallery-collection-header h6 {
  margin: 0 !important;
}

.sf-gallery-collection-header > p:last-child {
  margin: 20px 0 0 !important;
  max-width: 680px !important;
}

/* Show more of the vertical bird photo */

.sf-gallery-item-tall img {
  object-fit: contain !important;
  object-position: center center !important;
  background: #111212;
}

/* Keep the hover effect */

.sf-gallery-item-tall:hover img {
  transform: scale(1.025) !important;
}

/* KEEP TALL BIRD FULL-SIZE + PROTECT THE FACE */

.sf-gallery-item-tall img {
  object-fit: cover !important;
  object-position: 58% center !important;
  transform: scale(1) !important;
}

.sf-gallery-item-tall:hover img {
  transform: scale(1.035) !important;
}

/* WIDEN THE HERON COLUMN SO THE FULL BEAK + FISH SHOW */

.sf-gallery-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr) !important;
}

.sf-gallery-item-tall img {
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1) !important;
}

.sf-gallery-item-tall:hover img {
  transform: scale(1.035) !important;
}

/* REDUCE OVER-CROPPING IN GALLERY CARDS */

.sf-gallery-grid {
  grid-template-columns: minmax(0, 1.1fr) minmax(420px, 0.9fr) !important;
  grid-template-rows: minmax(420px, 38vw) minmax(320px, 27vw) !important;
}

.sf-gallery-item img {
  object-fit: cover !important;
  object-position: center center !important;
  transform: scale(1) !important;
}

.sf-gallery-item:hover img {
  transform: scale(1.025) !important;
}

/* LANDSCAPE COLLECTION — WIDE IMAGE LAYOUT */

.sf-gallery-landscape .sf-gallery-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: auto !important;
}

.sf-gallery-landscape .sf-gallery-item-featured, .sf-gallery-landscape .sf-gallery-item-tall, .sf-gallery-landscape .sf-gallery-item-wide {
  grid-column: auto !important;
  grid-row: auto !important;
  min-height: 420px !important;
}

.sf-gallery-landscape .sf-gallery-item-wide {
  grid-column: 1 / -1 !important;
  min-height: 500px !important;
}

.sf-gallery-landscape .sf-gallery-item img {
  object-fit: cover !important;
  object-position: center center !important;
}

@media (max-width: 900px) {
  .sf-gallery-landscape .sf-gallery-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 900px) {
  .sf-gallery-landscape .sf-gallery-item-wide {
    grid-column: auto !important;
  }
}

/* FORCE FOOTER INQUIRY LINK COLOR */

.sf-footer-contact-link, .sf-footer-contact-link:link, .sf-footer-contact-link:visited {
  color: rgba(244, 239, 231, 0.88) !important;
  border-bottom-color: rgba(205, 177, 120, 0.72) !important;
  text-decoration: none !important;
}

.sf-footer-contact-link:hover, .sf-footer-contact-link:focus {
  color: #ffffff !important;
  border-bottom-color: #ffffff !important;
}

/* FORCE FOOTER INQUIRY LINK COLOR */

.sf-footer-contact-link, .sf-footer-contact-link:link, .sf-footer-contact-link:visited {
  color: rgba(244, 239, 231, 0.88) !important;
  border-bottom-color: rgba(205, 177, 120, 0.72) !important;
  text-decoration: none !important;
}

.sf-footer-contact-link:hover, .sf-footer-contact-link:focus {
  color: #ffffff !important;
  border-bottom-color: #ffffff !important;
}

/* =========================================================   SALT & FEATHER — GALLERY SERVICES CTA========================================================= */

.sf-gallery-cta {
  position: relative;
  overflow: hidden;
  background: radial-gradient( circle at 82% 20%, rgba(176, 142, 87, 0.12), transparent 34% ), #080909;
  color: #f4efe7;
  border-top: 1px solid rgba(244, 239, 231, 0.1);
}

.sf-gallery-cta-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: clamp(90px, 10vw, 150px) 0 !important;
}

.sf-gallery-cta-inner > p:first-child {
  margin: 0 0 20px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(205, 177, 120, 0.95);
}

.sf-gallery-cta-inner h1, .sf-gallery-cta-inner h2, .sf-gallery-cta-inner h3, .sf-gallery-cta-inner h4, .sf-gallery-cta-inner h5, .sf-gallery-cta-inner h6 {
  max-width: 950px;
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(52px, 6vw, 96px) !important;
  font-weight: 400 !important;
  line-height: 0.92 !important;
  letter-spacing: -0.04em !important;
  color: #f4efe7;
}

.sf-gallery-cta-inner > p:nth-of-type(2) {
  max-width: 820px;
  margin: 28px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.8;
  color: rgba(244, 239, 231, 0.68);
}

.sf-gallery-cta-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 38px;
}

.sf-gallery-cta-actions .sf-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 190px;
  min-height: 50px;
  padding: 14px 26px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none !important;
  transition: transform 0.3s ease, background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}

.sf-gallery-cta-actions .sf-button-primary {
  background: #f4efe7;
  border: 1px solid #f4efe7;
  color: #080909 !important;
}

.sf-gallery-cta-actions .sf-button-secondary {
  background: transparent;
  border: 1px solid rgba(244, 239, 231, 0.48);
  color: #f4efe7 !important;
}

.sf-gallery-cta-actions .sf-button:hover {
  transform: translateY(-3px);
}

.sf-gallery-cta-actions .sf-button-primary:hover {
  background: #ffffff;
  border-color: #ffffff;
}

.sf-gallery-cta-actions .sf-button-secondary:hover {
  background: rgba(244, 239, 231, 0.08);
  border-color: #f4efe7;
}

@media (max-width: 620px) {
  .sf-gallery-cta-inner {
    width: 88%;
    padding: 75px 0 !important;
  }
}

@media (max-width: 620px) {
  .sf-gallery-cta-actions {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 620px) {
  .sf-gallery-cta-actions .sf-button {
    width: 100%;
    max-width: 280px;
  }
}

/* SERVICE OFFER LINKS */

.sf-services-offer-link, .sf-services-offer-link:link, .sf-services-offer-link:visited {
  color: #1b1b1b !important;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(27, 27, 27, 0.45);
  padding-bottom: 5px;
}

.sf-services-offer-link:hover, .sf-services-offer-link:focus {
  color: #9b7948 !important;
  border-bottom-color: #9b7948;
}

/* SERVICE OFFER LINKS */

.sf-services-offer-link, .sf-services-offer-link:link, .sf-services-offer-link:visited {
  color: #f4efe7 !important;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(244, 239, 231, 0.55);
  padding-bottom: 5px;
}

.sf-services-offer-link:hover, .sf-services-offer-link:focus {
  color: #cdb178 !important;
  border-bottom-color: #cdb178;
}

/* =========================================================   HOMEPAGE — CLEAR SERVICES OVERVIEW========================================================= */

.sf-services-overview {
  position: relative;
  overflow: hidden;
  background: #050707;
  color: #f4efe7;
  border-top: 1px solid rgba(244, 239, 231, 0.1);
  border-bottom: 1px solid rgba(244, 239, 231, 0.1);
}

.sf-services-overview-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: clamp(85px, 9vw, 145px) 0 !important;
}

.sf-services-overview-header {
  max-width: 1050px;
  margin-bottom: clamp(50px, 6vw, 85px);
}

.sf-services-overview-header > p:first-child {
  margin: 0 0 18px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #cdb178;
}

.sf-services-overview-header h1, .sf-services-overview-header h2, .sf-services-overview-header h3, .sf-services-overview-header h4, .sf-services-overview-header h5, .sf-services-overview-header h6 {
  max-width: 950px;
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(48px, 5.5vw, 88px) !important;
  font-weight: 400 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7 !important;
}

.sf-services-overview-header > p:nth-of-type(2) {
  max-width: 900px;
  margin: 28px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.8;
  color: rgba(244, 239, 231, 0.7);
}

.sf-services-offer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: rgba(244, 239, 231, 0.15);
  border: 1px solid rgba(244, 239, 231, 0.15);
}

.sf-services-offer-card {
  display: flex;
  flex-direction: column;
  min-height: 390px;
  padding: clamp(30px, 3.5vw, 52px);
  background: #0a0c0c;
}

.sf-services-offer-card > p:first-child {
  margin: 0 0 24px;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #cdb178;
}

.sf-services-offer-card h1, .sf-services-offer-card h2, .sf-services-offer-card h3, .sf-services-offer-card h4, .sf-services-offer-card h5, .sf-services-offer-card h6 {
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(34px, 3vw, 48px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  color: #f4efe7 !important;
}

.sf-services-offer-card > p:nth-of-type(2) {
  margin: 24px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 15px;
  line-height: 1.75;
  color: rgba(244, 239, 231, 0.68);
}

.sf-services-offer-card > p:nth-of-type(3) {
  margin: auto 0 24px;
  padding-top: 34px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(244, 239, 231, 0.92);
}

@media (max-width: 1050px) {
  .sf-services-offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .sf-services-overview-inner {
    width: 88%;
    padding: 75px 0 !important;
  }
}

@media (max-width: 680px) {
  .sf-services-offer-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .sf-services-offer-card {
    min-height: 350px;
  }
}

/* HOMEPAGE HERO GATEWAY STRIP — RAISED + TALLER */

.sf-hero-gateway-strip {
  position: relative;
  z-index: 5;
  margin-top: -70px;
}

.sf-hero-gateway-strip .sf-frame {
  height: clamp(210px, 15vw, 285px) !important;
  min-height: 210px !important;
}

.sf-hero-gateway-strip .sf-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover !important;
}

/* Keep the strip clean and readable on phones */

@media (max-width: 767px) {
  .sf-hero-gateway-strip {
    margin-top: 0;
  }
}

@media (max-width: 767px) {
  .sf-hero-gateway-strip .sf-frame {
    height: clamp(240px, 65vw, 360px) !important;
  }
}

/* SAFE HOMEPAGE HERO LENGTH FIX — MOVE STRIP ONLY */

@media (min-width: 768px) {
  .sf-hero-gateway-strip {
    position: relative !important;
    z-index: 10 !important;
    margin-top: 0 !important;
    transform: translateY(-120px) !important;
    margin-bottom: -120px !important;
  }
}

/* MAIN HERO HEADLINE — SLIGHTLY LARGER ONLY */

.sf-hero-title {
  font-size: clamp(58px, 4.6vw, 78px) !important;
  line-height: 0.9 !important;
  max-width: 570px !important;
}

/* FIX FOUR-IMAGE STRIP HEIGHT + LABELS */

@media (min-width: 768px) {
  .sf-hero-gateway-strip {
    height: 220px !important;
    min-height: 180px !important;
    align-items: stretch !important;
    overflow: visible !important;
  }
}

@media (min-width: 768px) {
  .sf-hero-gateway-strip > a.sf-frame {
    height: 220px !important;
    min-height: 180px !important;
    overflow: hidden !important;
  }
}

/* MAIN HERO TITLE — UNIQUE ID ONLY */

@media (min-width: 992px) {
  #hero-main-title {
    width: auto !important;
    max-width: 640px !important;
    height: auto !important;
    font-size: clamp(66px, 5.2vw, 90px) !important;
    line-height: 0.88 !important;
    letter-spacing: -0.035em !important;
  }
}

/* HERO COPY BLOCK — TITLE SIZE + TIGHTER SPACING */

@media (min-width: 992px) {
  .sf-hero-copy-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    height: auto !important;
    min-height: 0 !important;
  }
}

/* Small gold label */

@media (min-width: 992px) {
  .sf-hero-copy-block > p:first-of-type {
    margin: 0 0 12px !important;
  }
}

/* Main headline only */

@media (min-width: 992px) {
  .sf-hero-copy-block > #hero-main-title {
    width: 700px !important;
    max-width: 700px !important;
    height: auto !important;
    margin: 0 !important;
    font-size: clamp(82px, 6.3vw, 108px) !important;
    line-height: 0.84 !important;
    letter-spacing: -0.04em !important;
  }
}

/* Descriptive paragraph */

@media (min-width: 992px) {
  .sf-hero-copy-block > p:nth-of-type(2) {
    max-width: 560px !important;
    margin: 24px 0 0 !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }
}

/* Button wrapper */

@media (min-width: 992px) {
  .sf-hero-copy-block > div:last-child {
    margin-top: 28px !important;
  }
}

/* FINAL FOOTER INQUIRY LINK COLOR */

a.sf-footer-contact-link, a.sf-footer-contact-link:link, a.sf-footer-contact-link:visited, a.sf-footer-contact-link:active {
  color: rgba(244, 239, 231, 0.88) !important;
  text-decoration: none !important;
  border-bottom-color: rgba(205, 177, 120, 0.72) !important;
}

a.sf-footer-contact-link:hover, a.sf-footer-contact-link:focus {
  color: #ffffff !important;
  border-bottom-color: #ffffff !important;
}

/* =========================================================   HOMEPAGE — SELECTED STORIES HEADER========================================================= */

.sf-home-selected-stories .sf-selected-stories-header {
  display: block !important;
  width: 100% !important;
  max-width: 920px !important;
  margin: 0 0 clamp(45px, 6vw, 78px) !important;
  padding: 0 !important;
}

/* Small gold label */

.sf-home-selected-stories .sf-selected-stories-header > p:first-child {
  margin: 0 0 18px !important;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #cdb178 !important;
}

/* Main heading */

.sf-home-selected-stories .sf-selected-stories-header > h1, .sf-home-selected-stories .sf-selected-stories-header > h2, .sf-home-selected-stories .sf-selected-stories-header > h3, .sf-home-selected-stories .sf-selected-stories-header > h4, .sf-home-selected-stories .sf-selected-stories-header > h5, .sf-home-selected-stories .sf-selected-stories-header > h6 {
  width: 100% !important;
  max-width: 820px !important;
  margin: 0 !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(52px, 5.5vw, 86px) !important;
  font-weight: 400 !important;
  line-height: 0.95 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7 !important;
}

/* Supporting description */

.sf-home-selected-stories .sf-selected-stories-header > p:last-child {
  max-width: 700px !important;
  margin: 24px 0 0 !important;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.1vw, 18px) !important;
  line-height: 1.75 !important;
  color: rgba(244, 239, 231, 0.68) !important;
}

@media (max-width: 767px) {
  .sf-home-selected-stories .sf-selected-stories-header {
    margin-bottom: 38px !important;
  }
}

@media (max-width: 767px) {
  .sf-home-selected-stories .sf-selected-stories-header > h1, .sf-home-selected-stories .sf-selected-stories-header > h2, .sf-home-selected-stories .sf-selected-stories-header > h3, .sf-home-selected-stories .sf-selected-stories-header > h4, .sf-home-selected-stories .sf-selected-stories-header > h5, .sf-home-selected-stories .sf-selected-stories-header > h6 {
    font-size: clamp(44px, 12vw, 64px) !important;
  }
}

/* HOMEPAGE — TIGHTEN SELECTED STORIES SPACING */

.sf-home-selected-stories {
  margin-top: 0 !important;
  padding-top: 70px !important;
}

.sf-home-selected-stories .sf-selected-stories-header {
  margin-top: 0 !important;
}

@media (max-width: 767px) {
  .sf-home-selected-stories {
    padding-top: 55px !important;
  }
}

/* HOMEPAGE — CLOSE GAP AFTER SERVICES */

.sf-services-overview-inner {
  padding-bottom: 45px !important;
}

.sf-home-selected-stories {
  padding-top: 55px !important;
}

/* HOMEPAGE — FOUR SERVICE CARDS, 2 × 2 */

@media (min-width: 900px) {
  .sf-services-offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* =========================================================   SERVICES DETAIL PAGE — SHARED SECTION STYLING========================================================= */

.sf-service-detail-section {
  position: relative;
  overflow: hidden;
  background: #070909;
  color: #f4efe7;
  border-top: 1px solid rgba(244, 239, 231, 0.1);
}

.sf-service-detail-inner {
  width: min(92%, 1500px);
  margin: 0 auto;
  padding: clamp(85px, 9vw, 145px) 0 !important;
}

.sf-service-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(55px, 9vw, 150px);
  align-items: start;
}

.sf-service-detail-label {
  margin: 0 0 22px;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #cdb178;
}

.sf-service-detail-title {
  max-width: 670px;
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(52px, 5vw, 84px) !important;
  font-weight: 400 !important;
  line-height: 0.94 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7 !important;
}

.sf-service-detail-copy {
  max-width: 720px;
  margin: 0;
  font-family: "Manrope", sans-serif !important;
  font-size: clamp(15px, 1.1vw, 18px);
  line-height: 1.8;
  color: rgba(244, 239, 231, 0.72);
}

.sf-service-detail-list {
  margin: 34px 0 0;
  padding-left: 20px;
  font-family: "Manrope", sans-serif !important;
  font-size: 15px;
  line-height: 1.9;
  color: rgba(244, 239, 231, 0.88);
}

.sf-service-detail-price {
  margin: 34px 0 26px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: #f4efe7;
}

.sf-service-detail-link, .sf-service-detail-link:link, .sf-service-detail-link:visited, .sf-service-detail-link:active {
  display: inline-block;
  padding-bottom: 6px;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  text-decoration: none !important;
  color: #f4efe7 !important;
  border-bottom: 1px solid rgba(205, 177, 120, 0.75);
}

.sf-service-detail-link:hover, .sf-service-detail-link:focus {
  color: #cdb178 !important;
  border-bottom-color: #cdb178;
}

@media (max-width: 850px) {
  .sf-service-detail-inner {
    width: 88%;
    padding: 75px 0 !important;
  }
}

@media (max-width: 850px) {
  .sf-service-detail-layout {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

@media (max-width: 850px) {
  .sf-service-detail-title {
    max-width: 620px;
  }
}

/* SERVICES — CINEMATIC FEATURE IMAGE */

.sf-service-detail-media {
  position: relative;
  width: 100%;
  height: clamp(430px, 52vw, 760px);
  margin-top: clamp(55px, 7vw, 105px);
  overflow: hidden;
  border-top: 1px solid rgba(244, 239, 231, 0.12);
  border-bottom: 1px solid rgba(244, 239, 231, 0.12);
}

.sf-service-detail-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.8s ease;
}

.sf-service-detail-media:hover .sf-service-detail-image {
  transform: scale(1.015);
}

@media (max-width: 767px) {
  .sf-service-detail-media {
    height: clamp(300px, 78vw, 480px);
    margin-top: 48px;
  }
}

/* =========================================================   EDITING & PRODUCTION — PACKAGE GRID========================================================= */

.sf-service-package-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin-top: 42px;
  background: rgba(244, 239, 231, 0.14);
  border: 1px solid rgba(244, 239, 231, 0.14);
}

.sf-service-package-card {
  display: flex;
  flex-direction: column;
  min-height: 310px;
  padding: clamp(28px, 3vw, 44px);
  background: #0b0d0d;
}

.sf-service-package-title {
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(30px, 2.6vw, 42px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  color: #f4efe7 !important;
}

.sf-service-package-price {
  margin: 22px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #cdb178;
}

.sf-service-package-description {
  margin: 24px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 14px;
  line-height: 1.75;
  color: rgba(244, 239, 231, 0.68);
}

.sf-service-package-note {
  max-width: 760px;
  margin: 32px 0 0;
  padding-left: 20px;
  border-left: 1px solid rgba(205, 177, 120, 0.6);
  font-family: "Manrope", sans-serif !important;
  font-size: 14px;
  line-height: 1.75;
  color: rgba(244, 239, 231, 0.72);
}

@media (max-width: 720px) {
  .sf-service-package-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .sf-service-package-card {
    min-height: 0;
  }
}

/* =========================================================   EDITING & PRODUCTION — VISUAL FEATURE ROW========================================================= */

.sf-service-production-media {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 18px;
  margin-top: clamp(60px, 8vw, 110px);
}

.sf-service-production-still, .sf-service-production-film {
  position: relative;
  min-height: clamp(430px, 42vw, 650px);
  overflow: hidden;
  background: #0b0d0d;
}

.sf-service-production-image, .sf-service-production-film-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s ease;
}

/* Preserve the feather-duster detail */

.sf-service-production-image {
  object-position: center;
}

/* Darken the film still for readable text */

.sf-service-production-film::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient( 180deg, rgba(4, 6, 6, 0.08) 20%, rgba(4, 6, 6, 0.78) 100% );
  pointer-events: none;
}

.sf-service-production-film-overlay {
  position: absolute;
  z-index: 2;
  left: clamp(28px, 4vw, 58px);
  right: clamp(28px, 4vw, 58px);
  bottom: clamp(30px, 4vw, 58px);
}

.sf-service-production-film-label {
  margin: 0 0 14px;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #cdb178;
}

.sf-service-production-film-title {
  max-width: 620px;
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(42px, 4.5vw, 72px) !important;
  font-weight: 400 !important;
  line-height: 0.94 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7 !important;
}

.sf-service-production-film-link, .sf-service-production-film-link:link, .sf-service-production-film-link:visited {
  display: inline-block;
  margin-top: 26px;
  padding-bottom: 6px;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-decoration: none !important;
  color: #f4efe7 !important;
  border-bottom: 1px solid rgba(205, 177, 120, 0.8);
}

.sf-service-production-film-link:hover, .sf-service-production-film-link:focus {
  color: #cdb178 !important;
  border-bottom-color: #cdb178;
}

.sf-service-production-still:hover .sf-service-production-image, .sf-service-production-film:hover .sf-service-production-film-image {
  transform: scale(1.02);
}

@media (max-width: 800px) {
  .sf-service-production-media {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 800px) {
  .sf-service-production-still, .sf-service-production-film {
    min-height: clamp(360px, 90vw, 540px);
  }
}

/* EDITING & PRODUCTION — PHOTO EDITING OVERLAY */

.sf-service-production-still::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient( 180deg, rgba(4, 6, 6, 0.02) 30%, rgba(4, 6, 6, 0.86) 100% );
  pointer-events: none;
}

.sf-service-production-still-overlay {
  position: absolute;
  z-index: 2;
  left: clamp(26px, 3.5vw, 48px);
  right: clamp(26px, 3.5vw, 48px);
  bottom: clamp(28px, 3.5vw, 48px);
}

.sf-service-production-still-label {
  margin: 0 0 12px;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #cdb178;
}

.sf-service-production-still-title {
  max-width: 430px;
  margin: 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(38px, 3.7vw, 58px) !important;
  font-weight: 400 !important;
  line-height: 0.94 !important;
  letter-spacing: -0.035em !important;
  color: #f4efe7 !important;
}

.sf-service-production-still-copy {
  max-width: 430px;
  margin: 18px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 13px;
  line-height: 1.65;
  color: rgba(244, 239, 231, 0.76);
}

/* =========================================================   REAL ESTATE — PACKAGE GRID========================================================= */

.sf-real-estate-package-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin-top: 42px;
  background: rgba(244, 239, 231, 0.14);
  border: 1px solid rgba(244, 239, 231, 0.14);
}

.sf-real-estate-package-card {
  display: flex;
  flex-direction: column;
  min-height: 330px;
  padding: clamp(26px, 2.6vw, 40px);
  background: #0b0d0d;
}

.sf-real-estate-package-label {
  margin: 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #cdb178;
}

.sf-real-estate-package-price {
  margin: 24px 0 0;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(42px, 3.5vw, 58px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  color: #f4efe7 !important;
}

.sf-real-estate-package-size {
  margin: 22px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: rgba(244, 239, 231, 0.9);
}

.sf-real-estate-package-description {
  margin: 22px 0 0;
  font-family: "Manrope", sans-serif !important;
  font-size: 14px;
  line-height: 1.75;
  color: rgba(244, 239, 231, 0.68);
}

.sf-real-estate-package-note {
  max-width: 760px;
  margin: 32px 0 0;
  padding-left: 20px;
  border-left: 1px solid rgba(205, 177, 120, 0.6);
  font-family: "Manrope", sans-serif !important;
  font-size: 14px;
  line-height: 1.75;
  color: rgba(244, 239, 231, 0.72);
}

@media (max-width: 1000px) {
  .sf-real-estate-package-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1000px) {
  .sf-real-estate-package-card {
    min-height: 0;
  }
}

/* =========================================================   REAL ESTATE — THREE-IMAGE SHOWCASE========================================================= */

.sf-real-estate-media {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(320px, 0.85fr);
  gap: 16px;
  height: clamp(520px, 48vw, 720px);
  margin-top: clamp(60px, 8vw, 110px);
}

.sf-real-estate-media-main, .sf-real-estate-media-side {
  min-width: 0;
  overflow: hidden;
}

.sf-real-estate-media-side {
  display: grid;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.sf-real-estate-media-main .sf-real-estate-media-image, .sf-real-estate-media-side .sf-real-estate-media-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.8s ease;
}

.sf-real-estate-media-main:hover .sf-real-estate-media-image, .sf-real-estate-media-side .sf-real-estate-media-image:hover {
  transform: scale(1.02);
}

@media (max-width: 850px) {
  .sf-real-estate-media {
    grid-template-columns: 1fr;
    height: auto;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-main {
    height: clamp(340px, 75vw, 520px);
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-side {
    grid-template-columns: 1fr;
    grid-template-rows: none;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-side .sf-real-estate-media-image {
    height: clamp(280px, 65vw, 440px);
  }
}

/* =========================================================   REAL ESTATE — CLEAN EDITORIAL IMAGE LAYOUT========================================================= */

.sf-real-estate-media {
  display: block !important;
  height: auto !important;
}

/* Full-width lead photograph */

.sf-real-estate-media-main {
  width: 100% !important;
  height: clamp(430px, 44vw, 680px) !important;
  overflow: hidden !important;
}

.sf-real-estate-media-main .sf-real-estate-media-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 72% !important;
}

/* Two matching photographs underneath */

.sf-real-estate-media-side {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-rows: none !important;
  gap: 16px !important;
  width: 100% !important;
  height: clamp(260px, 25vw, 380px) !important;
  margin-top: 16px !important;
  overflow: visible !important;
}

.sf-real-estate-media-side .sf-real-estate-media-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Phone layout */

@media (max-width: 850px) {
  .sf-real-estate-media-main {
    height: clamp(340px, 78vw, 520px) !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-side {
    grid-template-columns: 1fr !important;
    height: auto !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-side .sf-real-estate-media-image {
    height: clamp(280px, 68vw, 440px) !important;
  }
}

/* =========================================================   REAL ESTATE — FINAL SIDE-BY-SIDE SHOWCASE========================================================= */

@media (min-width: 851px) {
  .sf-real-estate-media {
    display: grid !important;
    grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr) !important;
    gap: 16px !important;
    width: 100% !important;
    height: clamp(600px, 50vw, 760px) !important;
    margin-top: clamp(60px, 8vw, 110px) !important;
  }
}

/* Large photograph on the left */

@media (min-width: 851px) {
  .sf-real-estate-media-main {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }
}

/* Two perfectly stacked photographs on the right */

@media (min-width: 851px) {
  .sf-real-estate-media-side {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    overflow: hidden !important;
  }
}

@media (min-width: 851px) {
  .sf-real-estate-media-main .sf-real-estate-media-image, .sf-real-estate-media-side .sf-real-estate-media-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: cover !important;
  }
}

/* Keep the bed and lower room visible */

@media (min-width: 851px) {
  .sf-real-estate-media-main .sf-real-estate-media-image {
    object-position: center 64% !important;
  }
}

@media (min-width: 851px) {
  .sf-real-estate-media-side .sf-real-estate-media-image {
    object-position: center !important;
  }
}

/* Keep phones stacked cleanly */

@media (max-width: 850px) {
  .sf-real-estate-media {
    display: block !important;
    height: auto !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-main {
    height: clamp(360px, 80vw, 540px) !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-side {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: none !important;
    gap: 16px !important;
    height: auto !important;
    margin-top: 16px !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-side .sf-real-estate-media-image {
    height: clamp(300px, 68vw, 450px) !important;
  }
}

/* REAL ESTATE — TRUE EQUAL SIDE STACK */

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media {
    display: grid !important;
    grid-template-columns: minmax(0, 1.85fr) minmax(280px, 0.95fr) !important;
    gap: 16px !important;
    width: 100% !important;
    height: clamp(580px, 48vw, 720px) !important;
    align-items: stretch !important;
  }
}

/* Large image fills the complete left column */

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-main {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }
}

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-main > .sf-real-estate-media-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 88% !important;
  }
}

/* Right column is exactly the same total height as the left */

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-side {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
}

/* Each side image receives exactly half the available height */

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-side > .sf-real-estate-media-image {
    display: block !important;
    flex: 1 1 0 !important;
    width: 100% !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center !important;
  }
}

/* =========================================================   REAL ESTATE — ISOLATED FINAL IMAGE LAYOUT========================================================= */

@media (min-width: 851px) {
  .sf-real-estate-media-final {
    display: grid !important;
    grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr) !important;
    grid-template-rows: minmax(0, 1fr) !important;
    gap: 16px !important;
    width: 100% !important;
    height: 620px !important;
    margin-top: 75px !important;
    margin-bottom: 110px !important;
    overflow: hidden !important;
    align-items: stretch !important;
  }
}

@media (min-width: 851px) {
  .sf-real-estate-media-final .sf-real-estate-media-main {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }
}

@media (min-width: 851px) {
  .sf-real-estate-media-final .sf-real-estate-media-side {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
}

@media (min-width: 851px) {
  .sf-real-estate-lead-image, .sf-real-estate-side-image {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
  }
}

/* Crops the excessive ceiling while preserving the bed */

@media (min-width: 851px) {
  .sf-real-estate-lead-image {
    object-position: center 82% !important;
  }
}

/* Each right-side image fills one exact equal half */

@media (min-width: 851px) {
  .sf-real-estate-side-image {
    object-position: center !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-final {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin-top: 55px !important;
    margin-bottom: 75px !important;
    overflow: visible !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-final .sf-real-estate-media-main {
    height: 480px !important;
    overflow: hidden !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-media-final .sf-real-estate-media-side {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    height: auto !important;
    margin-top: 16px !important;
  }
}

@media (max-width: 850px) {
  .sf-real-estate-side-image {
    height: 360px !important;
  }
}

/* =========================================================   REAL ESTATE — HARD RESET OF IMAGE GRID========================================================= */

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-final {
    display: grid !important;
    grid-template-columns: minmax(0, 1.8fr) minmax(300px, 0.9fr) !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
    height: 560px !important;
    margin: 75px 0 100px !important;
    overflow: hidden !important;
  }
}

/* Remove the two wrapper Divs from the layout equation */

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-final > .sf-real-estate-media-main, .sf-service-real-estate .sf-real-estate-media-final > .sf-real-estate-media-side {
    display: contents !important;
  }
}

/* Large image spans both rows */

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-final .sf-real-estate-lead-image {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center 68% !important;
  }
}

/* Both side images are mathematically equal */

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-final .sf-real-estate-side-image {
    grid-column: 2 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    flex: none !important;
    object-fit: cover !important;
    object-position: center !important;
  }
}

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-final .sf-real-estate-side-image:first-child {
    grid-row: 1 !important;
  }
}

@media (min-width: 851px) {
  .sf-service-real-estate .sf-real-estate-media-final .sf-real-estate-side-image:last-child {
    grid-row: 2 !important;
  }
}

/* =========================================================   PROPERTY SHOWCASE — CLEAN THREE-IMAGE ROW========================================================= */

.sf-property-showcase-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  width: 100%;
  margin-top: clamp(60px, 7vw, 95px);
  margin-bottom: clamp(75px, 8vw, 115px);
}

.sf-property-showcase-image {
  display: block;
  width: 100%;
  height: clamp(360px, 34vw, 520px);
  object-fit: cover;
  object-position: center;
  transition: transform 0.8s ease;
}

.sf-property-showcase-image:hover {
  transform: scale(1.015);
}

@media (max-width: 850px) {
  .sf-property-showcase-row {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 55px;
    margin-bottom: 75px;
  }
}

@media (max-width: 850px) {
  .sf-property-showcase-image {
    height: clamp(320px, 75vw, 500px);
  }
}

/* =========================================================   FIELD WORK — STILL + UNDERWATER VIDEO========================================================= */

.sf-field-work-media {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  gap: 18px;
  width: 100%;
  height: clamp(480px, 43vw, 680px);
  margin-top: clamp(60px, 8vw, 110px);
  margin-bottom: clamp(75px, 8vw, 115px);
}

.sf-field-work-media-main, .sf-field-work-media-side {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 0;
  overflow: hidden;
  background: #080a0a;
}

.sf-field-work-main-image, .sf-field-work-video {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Keep Heidi and the casting action visible */

.sf-field-work-main-image {
  object-position: center;
}

/* Fill the panel without video controls or black bars */

.sf-field-work-video {
  object-position: center;
  border: 0 !important;
}

@media (max-width: 850px) {
  .sf-field-work-media {
    grid-template-columns: 1fr;
    height: auto;
    gap: 16px;
    margin-top: 55px;
    margin-bottom: 75px;
  }
}

@media (max-width: 850px) {
  .sf-field-work-media-main, .sf-field-work-media-side {
    height: clamp(340px, 75vw, 520px);
  }
}

/* Inquiry links positioned beneath package notes */

.sf-service-link-after-note {
  display: inline-block !important;
  margin-top: 20px !important;
  margin-left: 21px !important;
}

/* Gallery / Prints action links */

.sf-service-gallery-browse-link {
  margin-left: 28px !important;
}

@media (max-width: 650px) {
  .sf-service-gallery-browse-link {
    display: block !important;
    width: fit-content;
    margin-top: 16px !important;
    margin-left: 0 !important;
  }
}

/* ABOUT — THE STUDIO */

.sf-about-story {
  background: #070909;
  color: #f4efe7;
  padding: clamp(90px, 10vw, 150px) 0;
}

.sf-about-story-inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding-right: clamp(24px, 5vw, 84px);
  padding-left: clamp(24px, 5vw, 84px);
}

.sf-about-story-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(55px, 8vw, 130px);
  align-items: start;
}

.sf-about-story-label {
  margin: 0 0 22px;
  color: #cdb178;
  font-family: "Manrope", sans-serif;
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.2em;
}

.sf-about-story-title {
  max-width: 650px;
  margin: 0;
  color: #f4efe7;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3rem, 5vw, 5.3rem);
  font-weight: 400;
  line-height: 0.98;
}

.sf-about-story-copy {
  max-width: 720px;
  margin: 0;
  color: rgba(244, 239, 231, 0.76);
  font-family: "Manrope", sans-serif;
  font-size: clamp(1rem, 1.15vw, 1.12rem);
  line-height: 1.9;
}

.sf-about-story-copy + .sf-about-story-copy {
  margin-top: 28px;
}

@media (max-width: 900px) {
  .sf-about-story-layout {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}

@media (max-width: 900px) {
  .sf-about-story-title {
    max-width: 760px;
  }
}

/* ABOUT — THE APPROACH */

.sf-about-philosophy {
  background: #0c0f0f;
  border-top: 1px solid rgba(205, 177, 120, 0.14);
}

/* ABOUT — THE APPROACH: EDITORIAL CONTRAST PANEL */

.sf-about-philosophy {
  background: #f1ece3 !important;
  color: #0b0e0e !important;
  border-top: 0 !important;
  padding-top: clamp(100px, 11vw, 170px);
  padding-bottom: clamp(100px, 11vw, 170px);
}

.sf-about-philosophy .sf-about-story-layout {
  display: block !important;
}

.sf-about-philosophy .sf-about-story-heading {
  max-width: 1180px;
  margin-bottom: clamp(65px, 8vw, 115px);
}

.sf-about-philosophy .sf-about-story-label {
  color: #8c7040 !important;
}

.sf-about-philosophy .sf-about-story-title {
  max-width: 1120px;
  color: #0b0e0e !important;
  font-size: clamp(4rem, 7.2vw, 7.6rem);
  line-height: 0.9;
}

.sf-about-philosophy .sf-about-story-content {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(45px, 7vw, 110px);
  padding-top: 38px;
  border-top: 1px solid rgba(11, 14, 14, 0.22);
}

.sf-about-philosophy .sf-about-story-copy {
  max-width: none;
  margin: 0 !important;
  color: rgba(11, 14, 14, 0.72) !important;
}

@media (max-width: 760px) {
  .sf-about-philosophy .sf-about-story-content {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}

@media (max-width: 760px) {
  .sf-about-philosophy .sf-about-story-title {
    font-size: clamp(3.4rem, 14vw, 5.3rem);
  }
}

/* Clickable Salt & Feather navbar brand */

.sf-navbar-brand-link, .sf-navbar-brand-link:hover, .sf-navbar-brand-link:focus {
  display: inline-block;
  color: inherit !important;
  text-decoration: none !important;
}

/* HOMEPAGE — FULL CAPABILITIES INTRO */

.sf-home-capabilities-intro {
  position: relative;
  overflow: hidden;
  background: #f1ece3;
  color: #0b0e0e;
  padding: clamp(110px, 12vw, 190px) 0;
}

.sf-home-capabilities-inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding-right: clamp(24px, 5vw, 84px);
  padding-left: clamp(24px, 5vw, 84px);
}

.sf-home-capabilities-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr);
  gap: clamp(70px, 10vw, 160px);
  align-items: start;
}

.sf-home-capabilities-label {
  margin: 0 0 28px;
  color: #8c7040;
  font-family: "Manrope", sans-serif;
  font-size: 0.76rem;
  font-weight: 650;
  letter-spacing: 0.22em;
}

.sf-home-capabilities-title {
  max-width: 850px;
  margin: 0;
  color: #0b0e0e;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.8rem, 6.8vw, 7.4rem);
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: -0.025em;
}

.sf-home-capabilities-copy {
  max-width: 610px;
  margin: 4px 0 clamp(48px, 6vw, 76px);
  color: rgba(11, 14, 14, 0.7);
  font-family: "Manrope", sans-serif;
  font-size: clamp(1rem, 1.15vw, 1.15rem);
  line-height: 1.9;
}

.sf-home-capabilities-list {
  border-top: 1px solid rgba(11, 14, 14, 0.22);
}

.sf-home-capability-item {
  position: relative;
  margin: 0;
  padding: 23px 38px 23px 0;
  border-bottom: 1px solid rgba(11, 14, 14, 0.18);
  color: #0b0e0e;
  font-family: "Manrope", sans-serif;
  font-size: clamp(0.78rem, 1vw, 0.94rem);
  font-weight: 650;
  letter-spacing: 0.16em;
}

.sf-home-capability-item::after {
  content: "↗";
  position: absolute;
  top: 50%;
  right: 2px;
  color: #8c7040;
  font-size: 1rem;
  transform: translateY(-50%);
}

@media (max-width: 980px) {
  .sf-home-capabilities-layout {
    grid-template-columns: 1fr;
    gap: 65px;
  }
}

@media (max-width: 980px) {
  .sf-home-capabilities-title {
    max-width: 900px;
  }
}

@media (max-width: 980px) {
  .sf-home-capabilities-content {
    max-width: 720px;
  }
}

@media (max-width: 600px) {
  .sf-home-capabilities-intro {
    padding: 90px 0;
  }
}

@media (max-width: 600px) {
  .sf-home-capabilities-title {
    font-size: clamp(3.25rem, 15vw, 5rem);
  }
}

@media (max-width: 600px) {
  .sf-home-capability-item {
    padding-top: 20px;
    padding-bottom: 20px;
    letter-spacing: 0.11em;
  }
}

/* HOMEPAGE — CAPABILITIES ACTION */

.sf-home-capability-item {
  padding-right: 0;
}

.sf-home-capability-item::after {
  display: none !important;
}

.sf-home-capabilities-link {
  display: inline-block;
  margin-top: 36px;
  padding-bottom: 8px;
  border-bottom: 1px solid #8c7040;
  color: #0b0e0e !important;
  font-family: "Manrope", sans-serif;
  font-size: 0.78rem;
  font-weight: 650;
  letter-spacing: 0.16em;
  text-decoration: none !important;
  transition: opacity 0.25s ease, padding-left 0.25s ease;
}

.sf-home-capabilities-link:hover, .sf-home-capabilities-link:focus {
  padding-left: 8px;
  color: #0b0e0e !important;
  opacity: 0.68;
}

/* INQUIRY — allow content to be edited/clicked */

.sf-inquiry-inner {
  position: relative;
}

.sf-inquiry-inner::after {
  pointer-events: none !important;
  z-index: 0 !important;
}

.sf-inquiry-layout {
  position: relative;
  z-index: 1;
}

.sf-inquiry-label {
  color: #cdb178 !important;
  font-family: "Manrope", sans-serif;
  font-size: 0.76rem;
  font-weight: 650;
  letter-spacing: 0.2em;
}

/* =========================================================   SALT AND FEATHER — INQUIRY FORM   ========================================================= */

.sf-inquiry-section {
  position: relative;
  overflow: hidden;
  background: #070909;
  color: #f4efe7;
  padding: clamp(100px, 11vw, 175px) 0;
}

.sf-inquiry-inner {
  position: relative;
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding-right: clamp(24px, 5vw, 84px);
  padding-left: clamp(24px, 5vw, 84px);
}

.sf-inquiry-layout {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(420px, 1.2fr);
  gap: clamp(70px, 10vw, 150px);
  align-items: start;
}

.sf-inquiry-copy {
  position: sticky;
  top: 120px;
}

.sf-inquiry-label {
  margin: 0 0 24px;
  color: #cdb178 !important;
  font-family: "Manrope", sans-serif;
  font-size: 0.76rem;
  font-weight: 650;
  letter-spacing: 0.2em;
}

.sf-inquiry-title {
  max-width: 620px;
  margin: 0;
  color: #f4efe7;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(3.5rem, 5.5vw, 6.2rem);
  font-weight: 400;
  line-height: 0.92;
  letter-spacing: -0.025em;
}

.sf-inquiry-support {
  max-width: 520px;
  margin: 38px 0 0;
  color: rgba(244, 239, 231, 0.62);
  font-family: "Manrope", sans-serif;
  font-size: 1rem;
  line-height: 1.85;
}

.sf-inquiry-form {
  width: 100%;
}

.sf-inquiry-field {
  margin-bottom: 34px;
}

.sf-inquiry-field-label {
  display: block;
  margin: 0 0 11px;
  color: #cdb178 !important;
  font-family: "Manrope", sans-serif;
  font-size: 0.7rem;
  font-weight: 650;
  letter-spacing: 0.16em;
}

.sf-inquiry-input {
  display: block;
  width: 100%;
  min-height: 58px;
  padding: 15px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(244, 239, 231, 0.28) !important;
  border-radius: 0 !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #f4efe7 !important;
  font-family: "Manrope", sans-serif;
  font-size: 1rem;
  transition: border-color 0.25s ease;
}

.sf-inquiry-input::placeholder {
  color: rgba(244, 239, 231, 0.38) !important;
}

.sf-inquiry-input:focus {
  border-bottom-color: #cdb178 !important;
  background: transparent !important;
  color: #f4efe7 !important;
  box-shadow: none !important;
}

select.sf-inquiry-input {
  cursor: pointer;
}

select.sf-inquiry-input option {
  background: #0b0d0d;
  color: #f4efe7;
}

.sf-inquiry-textarea {
  min-height: 150px;
  resize: vertical;
  line-height: 1.7;
}

.sf-inquiry-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  margin-top: 14px;
  padding: 15px 28px;
  border: 1px solid #cdb178 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #f4efe7 !important;
  font-family: "Manrope", sans-serif;
  font-size: 0.74rem;
  font-weight: 650;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  box-shadow: none !important;
  transition: background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.sf-inquiry-submit:hover, .sf-inquiry-submit:focus {
  background: #cdb178 !important;
  color: #070909 !important;
  transform: translateY(-2px);
}

@media (max-width: 900px) {
  .sf-inquiry-layout {
    grid-template-columns: 1fr;
    gap: 70px;
  }
}

@media (max-width: 900px) {
  .sf-inquiry-copy {
    position: static;
  }
}

@media (max-width: 900px) {
  .sf-inquiry-title {
    max-width: 800px;
  }
}

@media (max-width: 900px) {
  .sf-inquiry-form-wrap {
    max-width: 760px;
  }
}

@media (max-width: 600px) {
  .sf-inquiry-section {
    padding: 85px 0 95px;
  }
}

@media (max-width: 600px) {
  .sf-inquiry-title {
    font-size: clamp(3.1rem, 14vw, 4.8rem);
  }
}

@media (max-width: 600px) {
  .sf-inquiry-field {
    margin-bottom: 28px;
  }
}

@media (max-width: 600px) {
  .sf-inquiry-submit {
    width: 100%;
  }
}

/* =========================================================   SALT AND FEATHER — MOBILE NAV FIX   ========================================================= */

@media (max-width: 700px) {
  .sf-nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 18px !important;
  }
}

@media (max-width: 700px) {
  .sf-nav-brand-wrap {
    display: block !important;
    width: 100% !important;
  }
}

@media (max-width: 700px) {
  .sf-nav-brand-wrap a {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 700px) {
  .sf-nav-brand-wrap h1 {
    margin: 0 !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 700px) {
  .sf-nav-links {
    display: flex !important;
    width: 100% !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
  }
}

@media (max-width: 700px) {
  .sf-nav-links a {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    font-size: clamp(0.52rem, 2.5vw, 0.64rem) !important;
    letter-spacing: 0.08em !important;
  }
}

/* =========================================================   SERVICES — PRODUCTION MEDIA MOBILE TYPE FIX   ========================================================= */

@media (max-width: 700px) {
  .sf-service-production-media {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
}

@media (max-width: 700px) {
  .sf-service-production-still, .sf-service-production-film {
    width: 100% !important;
    min-height: 360px !important;
    overflow: hidden !important;
  }
}

@media (max-width: 700px) {
  .sf-service-production-still :is(h1, h2, h3, h4, h5, h6), .sf-service-production-film :is(h1, h2, h3, h4, h5, h6) {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 10px !important;
    font-size: clamp(1.65rem, 8vw, 2.15rem) !important;
    line-height: 0.98 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
}

@media (max-width: 700px) {
  .sf-service-production-still p, .sf-service-production-film p {
    max-width: 30ch !important;
    font-size: 0.78rem !important;
    line-height: 1.5 !important;
    white-space: normal !important;
  }
}

@media (max-width: 700px) {
  .sf-service-production-film a {
    display: inline-block !important;
    font-size: 0.68rem !important;
    line-height: 1.3 !important;
    white-space: normal !important;
  }
}

/* SERVICES — EXACT MOBILE OVERLAY FIX */

@media (max-width: 700px) {
  .sf-service-production-film-title, .sf-service-production-still-title {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    font-size: 1.7rem !important;
    line-height: 1 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 700px) {
  .sf-service-production-film-title {
    max-width: 220px !important;
  }
}

@media (max-width: 700px) {
  .sf-service-production-still-title {
    max-width: 220px !important;
  }
}

/* =========================================================   SALT AND FEATHER — LEGAL PAGES   ========================================================= */

.sf-legal-section {
  background: #070909;
  color: #f4efe7;
  padding: clamp(90px, 10vw, 150px) 0 clamp(110px, 12vw, 175px);
}

.sf-legal-inner {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding-right: clamp(24px, 5vw, 84px);
  padding-left: clamp(24px, 5vw, 84px);
}

.sf-legal-copy {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.sf-legal-date {
  margin: 0 0 30px;
  color: #cdb178;
  font-family: "Manrope", sans-serif;
  font-size: 0.7rem;
  font-weight: 650;
  letter-spacing: 0.18em;
}

.sf-legal-intro {
  max-width: 820px;
  margin: 0 0 clamp(70px, 8vw, 105px);
  color: rgba(244, 239, 231, 0.78);
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.8rem, 3vw, 2.8rem);
  font-weight: 400;
  line-height: 1.25;
}

.sf-legal-heading {
  margin: clamp(60px, 7vw, 88px) 0 18px;
  padding-top: clamp(40px, 5vw, 60px);
  border-top: 1px solid rgba(244, 239, 231, 0.15);
  color: #f4efe7;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(2rem, 3.3vw, 3rem);
  font-weight: 400;
  line-height: 1.05;
}

.sf-legal-text {
  max-width: 780px;
  margin: 0;
  color: rgba(244, 239, 231, 0.66);
  font-family: "Manrope", sans-serif;
  font-size: 0.97rem;
  line-height: 1.9;
}

@media (max-width: 600px) {
  .sf-legal-section {
    padding: 75px 0 95px;
  }
}

@media (max-width: 600px) {
  .sf-legal-intro {
    font-size: 1.65rem;
    line-height: 1.3;
    margin-bottom: 60px;
  }
}

@media (max-width: 600px) {
  .sf-legal-heading {
    margin-top: 50px;
    padding-top: 36px;
    font-size: 2rem;
  }
}

@media (max-width: 600px) {
  .sf-legal-text {
    font-size: 0.9rem;
    line-height: 1.8;
  }
}

#services .text-muted {
  color: #777;
}

section#services {
  padding: 100px 0;
}

section#services h2.section-heading {
  font-size: 40px;
  margin-top: 0;
  margin-bottom: 15px;
}

section#services h3.section-subheading {
  font-size: 16px;
  text-transform: none;
  font-weight: 400;
  margin-bottom: 75px;
}

@media (min-width:768px) {
  section#services {
    padding: 150px 0;
  }
}

#services .service-heading {
  margin: 15px 0;
  text-transform: none;
}

body {
  background-color: #ffffff;
}

.custom-fade-shadow {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease-in-out;
}

.custom-fade-shadow:hover {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

.custom-fade-shadow {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease-in-out;
}

.custom-fade-shadow:hover {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

.custom-fade-shadow {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease-in-out;
}

.custom-fade-shadow:hover {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.custom-fade-shadow {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease-in-out;
}

.custom-fade-shadow:hover {
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.btn-pcg {
  transition: all 0.2s ease;
}

.btn-pcg:hover {
  transform: translateY(-1px);
  background-color: #0a1a30;
}

.btn-pcg {
  transition: all 0.2s ease;
}

.btn-pcg:hover {
  transform: translateY(-1px);
  background-color: #0a1a30;
}

.bs-icon {
  --bs-icon-size: .75rem;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: var(--bs-icon-size);
  width: calc(var(--bs-icon-size) * 2);
  height: calc(var(--bs-icon-size) * 2);
  color: var(--bs-primary);
}

.bs-icon-xs {
  --bs-icon-size: 1rem;
  width: calc(var(--bs-icon-size) * 1.5);
  height: calc(var(--bs-icon-size) * 1.5);
}

.bs-icon-sm {
  --bs-icon-size: 1rem;
}

.bs-icon-md {
  --bs-icon-size: 1.5rem;
}

.bs-icon-lg {
  --bs-icon-size: 2rem;
}

.bs-icon-xl {
  --bs-icon-size: 2.5rem;
}

.bs-icon.bs-icon-primary {
  color: var(--bs-white);
  background: var(--bs-primary);
}

.bs-icon.bs-icon-primary-light {
  color: var(--bs-primary);
  background: rgba(var(--bs-primary-rgb), .2);
}

.bs-icon.bs-icon-semi-white {
  color: var(--bs-primary);
  background: rgba(255, 255, 255, .5);
}

.bs-icon.bs-icon-rounded {
  border-radius: .5rem;
}

.bs-icon.bs-icon-circle {
  border-radius: 50%;
}

.img-hover:hover {
  transform: scale(1.03);
}

