/* ========================================================================== 
   PPTP FAQ 2026 — reference-calibrated layout

   The supplied 1024 px design is a 0.533 export of a roughly 1920 px canvas.
   Desktop dimensions below are therefore calibrated for a 1920 px viewport.
   Everything is scoped to the FAQ page to avoid changing shared components.
   ========================================================================== */

body.page-id-3249 {
  --faq-v2-navy: #003e7e;
  --faq-v2-navy-deep: #002f66;
  --faq-v2-ink: #07366f;
  --faq-v2-pink: #ed1878;
  --faq-v2-cyan: #03aeef;
  --faq-v2-copy: #364152;
  --faq-v2-line: #dce4eb;
  --faq-v2-rose: #fff3f8;
  --faq-v2-sky: #f1f8fc;
}

body.page-id-3249 .pptp-2026-faq-hero-title__accent,
body.page-id-3249 .pptp-2026-faq-hero-title__rest {
  display: block;
}

body.page-id-3249 .pptp-2026-faq .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.page-id-3249 .pptp-2026-faq-hero-title__accent {
  color: var(--faq-v2-cyan);
}

body.page-id-3249 .pptp-2026-faq-hero-title__rest {
  color: #fff;
}

body.page-id-3249 .pptp-2026-faq-section > .pptp-2026-container,
body.page-id-3249 .pptp-2026-faq-contact > .pptp-2026-container {
  max-width: none;
}

body.page-id-3249 .pptp-2026-contact-card__copy small {
  display: block;
  color: var(--faq-v2-copy);
  font: inherit;
}

body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon-circle {
  color: var(--faq-v2-navy);
  border: 0;
  background: #fde3ee;
}

body.page-id-3249 .pptp-2026-contact-card .pptp-2026-icon-circle {
  color: var(--faq-v2-navy);
  border: 0;
  background: #eef6fc;
}

body.page-id-3249 .pptp-2026-contact-card:nth-child(2) .pptp-2026-icon-circle {
  color: var(--faq-v2-pink);
  background: #fde9f2;
}

body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon__primary,
body.page-id-3249 .pptp-2026-contact-card .pptp-2026-icon__primary,
body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-icon__primary {
  stroke: var(--faq-v2-navy);
}

body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon__accent,
body.page-id-3249 .pptp-2026-contact-card .pptp-2026-icon__accent,
body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-icon__accent {
  stroke: var(--faq-v2-pink);
}

body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon__primary-fill,
body.page-id-3249 .pptp-2026-contact-card .pptp-2026-icon__primary-fill,
body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-icon__primary-fill {
  fill: var(--faq-v2-navy);
}

body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon__accent-fill,
body.page-id-3249 .pptp-2026-contact-card .pptp-2026-icon__accent-fill,
body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-icon__accent-fill {
  fill: var(--faq-v2-pink);
}

body.page-id-3249 .pptp-2026-contact-card:nth-child(2) .pptp-2026-icon__primary {
  stroke: var(--faq-v2-pink);
}

/* Desktop reference canvas: 1920 × approximately 2880 before the global footer. */
@media (min-width: 1700px) {
  body.page-id-3249 .pptp-2026-image-hero--faq {
    min-height: 463px;
    background-image:
      linear-gradient(
        90deg,
        rgba(0, 35, 79, 0.99) 0%,
        rgba(0, 47, 101, 0.96) 31%,
        rgba(0, 62, 126, 0.72) 54%,
        rgba(0, 62, 126, 0.16) 100%
      ),
      var(--pptp-2026-hero-image);
    background-position: center 52%;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-image-hero__copy {
    width: 1060px;
    max-width: 64%;
    padding: 82px 0 70px;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq h1 {
    max-width: 820px;
    margin: 0;
    font-size: 76px;
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.06;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-title-mark {
    width: 88px;
    height: 7px;
    margin-top: 34px;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-lead {
    max-width: 1040px;
    margin-top: 34px;
    color: #fff;
    font-size: 29px;
    font-weight: 700;
    line-height: 1.45;
  }

  body.page-id-3249 .pptp-2026-breadcrumbs {
    min-height: 128px;
    padding: 45px 0;
    border-bottom: 0;
    font-size: 22px;
    line-height: 38px;
  }

  body.page-id-3249 .pptp-2026-breadcrumbs .pptp-2026-container {
    gap: 8px;
  }

  body.page-id-3249 .pptp-2026-faq-section {
    min-height: 1512px;
    padding: 0 0 40px;
  }

  body.page-id-3249 .pptp-2026-accordion {
    gap: 8px;
  }

  body.page-id-3249 .pptp-2026-accordion__item {
    border-color: var(--faq-v2-line);
    border-radius: 16px;
    box-shadow: 0 7px 22px rgba(7, 45, 91, 0.065);
  }

  body.page-id-3249 .pptp-2026-accordion__item.is-open {
    border-color: rgba(237, 24, 120, 0.18);
    background: linear-gradient(110deg, #fff7fa 0%, #fff1f7 100%);
  }

  body.page-id-3249 .pptp-2026-accordion__button {
    min-height: 90px;
    padding: 18px 30px;
    grid-template-columns: 49px minmax(0, 1fr) 49px;
    gap: 30px;
  }

  body.page-id-3249 .pptp-2026-accordion__number {
    width: 49px;
    height: 49px;
    font-size: 23px;
    font-weight: 800;
  }

  body.page-id-3249 .pptp-2026-accordion__question {
    color: var(--faq-v2-ink);
    font-size: 31px;
    font-weight: 500;
    line-height: 1.25;
  }

  body.page-id-3249 .pptp-2026-accordion__item.is-open .pptp-2026-accordion__question {
    color: var(--faq-v2-pink);
    font-weight: 600;
  }

  body.page-id-3249 .pptp-2026-accordion__toggle {
    width: 49px;
    height: 49px;
    border: 2px solid var(--faq-v2-navy);
  }

  body.page-id-3249 .pptp-2026-accordion__toggle::before,
  body.page-id-3249 .pptp-2026-accordion__toggle::after {
    width: 20px;
    height: 3px;
    background: var(--faq-v2-navy);
  }

  body.page-id-3249 .pptp-2026-accordion__item.is-open .pptp-2026-accordion__toggle {
    border-color: var(--faq-v2-pink);
  }

  body.page-id-3249 .pptp-2026-accordion__item.is-open .pptp-2026-accordion__toggle::before,
  body.page-id-3249 .pptp-2026-accordion__item.is-open .pptp-2026-accordion__toggle::after {
    background: var(--faq-v2-pink);
  }

  body.page-id-3249 .pptp-2026-accordion__panel {
    padding: 32px 48px 44px 108px;
  }

  body.page-id-3249 .pptp-2026-accordion__answer {
    min-height: 126px;
    padding: 0;
    grid-template-columns: 126px minmax(0, 1050px);
    gap: 48px;
    align-items: center;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon-circle {
    width: 126px;
    height: 126px;
    padding: 29px;
    color: var(--faq-v2-navy);
    border: 0;
    background: #fde3ee;
  }

  body.page-id-3249 .pptp-2026-accordion__answer p {
    color: var(--faq-v2-copy);
    font-size: 26px;
    line-height: 1.52;
  }

  body.page-id-3249 .pptp-2026-faq-contact {
    min-height: 478px;
    padding: 58px 0 49px;
    background: linear-gradient(105deg, #f4f9fc 0%, #eef7fc 100%);
  }

  body.page-id-3249 .pptp-2026-faq-contact > .pptp-2026-container {
    display: grid;
    grid-template-columns: minmax(0, 440px) minmax(0, 1fr);
    gap: 32px;
    align-items: stretch;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro {
    display: flex;
    min-width: 0;
    min-height: 371px;
    margin: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro h2 {
    max-width: 440px;
    margin: 0 0 20px;
    color: var(--faq-v2-navy);
    font-size: 42px;
    font-weight: 800;
    line-height: 1.13;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro p:last-child {
    max-width: 440px;
    margin: 0;
    color: var(--faq-v2-copy);
    font-size: 20px;
    line-height: 1.55;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro .pptp-2026-button {
    width: 394px;
    min-height: 81px;
    padding: 20px 34px;
    gap: 26px;
    border-radius: 5px;
    font-size: 22px;
    white-space: nowrap;
  }

  body.page-id-3249 .pptp-2026-faq-contact__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
  }

  body.page-id-3249 .pptp-2026-contact-card {
    display: flex;
    min-height: 371px;
    padding: 36px 22px 30px;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 22px;
    border-radius: 14px;
    text-align: center;
  }

  body.page-id-3249 .pptp-2026-contact-card .pptp-2026-icon-circle {
    width: 110px;
    height: 110px;
    padding: 26px;
  }

  body.page-id-3249 .pptp-2026-contact-card:nth-child(2) .pptp-2026-icon-circle {
    color: var(--faq-v2-pink);
    background: #fde9f2;
  }

  body.page-id-3249 .pptp-2026-contact-card__copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    line-height: 1.35;
  }

  body.page-id-3249 .pptp-2026-contact-card__copy strong {
    margin-bottom: 12px;
    font-size: 26px;
    line-height: 1.2;
  }

  body.page-id-3249 .pptp-2026-contact-card__copy span,
  body.page-id-3249 .pptp-2026-contact-card__copy small {
    font-size: 20px;
    line-height: 1.42;
    overflow-wrap: normal;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats {
    width: 100%;
    min-height: 152px;
    color: var(--faq-v2-navy);
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__item {
    min-height: 152px;
    padding: 28px 8px 28px 88px;
    grid-template-columns: 52px minmax(0, 1fr);
    column-gap: 29px;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__item + .pptp-2026-stats__item::before {
    top: 27px;
    bottom: 27px;
    background: #d7e0e8;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__icon {
    width: 52px;
    height: 58px;
    padding: 2px;
    color: var(--faq-v2-navy);
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__value {
    color: var(--faq-v2-navy);
    font-size: 34px;
    line-height: 1.05;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__label {
    margin-top: 8px;
    color: #46566b;
    font-size: 18px;
    letter-spacing: -0.01em;
    line-height: 1.25;
    white-space: nowrap;
  }
}

/* Laptop / smaller desktop: preserve the reference hierarchy without the
   large-canvas scale used at 1920 px. */
@media (min-width: 992px) and (max-width: 1699px) {
  body.page-id-3249 .pptp-2026-image-hero--faq {
    min-height: clamp(350px, 30vw, 440px);
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-image-hero__copy {
    max-width: 760px;
    padding: 58px 0;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq h1 {
    max-width: 700px;
    margin: 0;
    font-size: clamp(48px, 4.6vw, 66px);
    line-height: 1.07;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-title-mark {
    margin-top: 26px;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-lead {
    max-width: 760px;
    margin-top: 25px;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
  }

  body.page-id-3249 .pptp-2026-breadcrumbs {
    padding: 27px 0;
    border-bottom: 0;
    font-size: 16px;
  }

  body.page-id-3249 .pptp-2026-faq-section {
    padding: 0 0 32px;
  }

  body.page-id-3249 .pptp-2026-accordion {
    gap: 7px;
  }

  body.page-id-3249 .pptp-2026-accordion__button {
    min-height: 72px;
    padding: 12px 22px;
    grid-template-columns: 42px minmax(0, 1fr) 38px;
    gap: 20px;
  }

  body.page-id-3249 .pptp-2026-accordion__number {
    width: 42px;
    height: 42px;
    font-size: 15px;
  }

  body.page-id-3249 .pptp-2026-accordion__question {
    font-size: 20px;
    font-weight: 600;
  }

  body.page-id-3249 .pptp-2026-accordion__item.is-open .pptp-2026-accordion__question {
    color: var(--faq-v2-pink);
  }

  body.page-id-3249 .pptp-2026-accordion__toggle {
    width: 38px;
    height: 38px;
    border-color: var(--faq-v2-navy);
  }

  body.page-id-3249 .pptp-2026-accordion__panel {
    padding: 22px 34px 30px 84px;
  }

  body.page-id-3249 .pptp-2026-accordion__answer {
    padding: 0;
    grid-template-columns: 78px minmax(0, 760px);
    gap: 30px;
    align-items: center;
    border: 0;
    background: transparent;
  }

  body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon-circle {
    width: 78px;
    height: 78px;
    padding: 18px;
    border: 0;
    background: #fde3ee;
  }

  body.page-id-3249 .pptp-2026-accordion__answer p {
    font-size: 17px;
    line-height: 1.55;
  }

  body.page-id-3249 .pptp-2026-faq-contact {
    padding: 42px 0;
  }

  body.page-id-3249 .pptp-2026-faq-contact > .pptp-2026-container {
    display: grid;
    grid-template-columns: minmax(280px, 0.92fr) minmax(0, 2.25fr);
    gap: 34px;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro {
    display: flex;
    margin: 0;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro h2 {
    margin-bottom: 18px;
    font-size: clamp(32px, 2.75vw, 42px);
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro p:last-child {
    font-size: 17px;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro .pptp-2026-button {
    width: auto;
    min-height: 58px;
  }

  body.page-id-3249 .pptp-2026-contact-card {
    display: flex;
    min-height: 260px;
    padding: 30px 18px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
    text-align: center;
  }

  body.page-id-3249 .pptp-2026-contact-card .pptp-2026-icon-circle {
    width: 82px;
    height: 82px;
    padding: 20px;
  }

  body.page-id-3249 .pptp-2026-contact-card__copy strong {
    font-size: 20px;
  }

  body.page-id-3249 .pptp-2026-contact-card__copy span,
  body.page-id-3249 .pptp-2026-contact-card__copy small {
    font-size: 15px;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats {
    min-height: 110px;
    background: #fff;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__item {
    min-height: 110px;
    color: var(--faq-v2-navy);
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__value {
    color: var(--faq-v2-navy);
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__label {
    color: var(--faq-v2-copy);
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__item + .pptp-2026-stats__item::before {
    background: #d7e0e8;
  }
}

/* Tablet and mobile. The reference has no mobile artboard, so this section
   keeps the same content order while prioritising compact, unobstructed UI. */
@media (max-width: 991px) {
  body.page-id-3249 .pptp-2026-image-hero--faq {
    min-height: 430px;
    background-position: 58% center;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-image-hero__copy {
    max-width: 670px;
    padding: 58px 0;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq h1 {
    max-width: 660px;
    margin: 0;
    font-size: clamp(42px, 7.8vw, 58px);
    line-height: 1.07;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-title-mark {
    margin-top: 24px;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-lead {
    margin-top: 24px;
    color: #fff;
    font-weight: 700;
  }

  body.page-id-3249 .pptp-2026-breadcrumbs {
    border-bottom: 0;
  }

  body.page-id-3249 .pptp-2026-faq-section {
    padding: 24px 0 42px;
  }

  body.page-id-3249 .pptp-2026-accordion__item.is-open .pptp-2026-accordion__question {
    color: var(--faq-v2-pink);
  }

  body.page-id-3249 .pptp-2026-accordion__item.is-open .pptp-2026-accordion__toggle {
    border-color: var(--faq-v2-pink);
  }

  body.page-id-3249 .pptp-2026-accordion__panel {
    padding: 10px 18px 22px 58px;
  }

  body.page-id-3249 .pptp-2026-accordion__answer {
    padding: 0;
    grid-template-columns: 60px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
    border: 0;
    background: transparent;
  }

  body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon-circle {
    width: 60px;
    height: 60px;
    padding: 14px;
    border: 0;
    background: #fde3ee;
  }

  body.page-id-3249 .pptp-2026-faq-contact > .pptp-2026-container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 34px;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro {
    display: flex;
    margin: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 26px;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro .pptp-2026-button {
    justify-self: auto;
  }

  body.page-id-3249 .pptp-2026-faq-contact__grid {
    grid-template-columns: 1fr;
  }

  body.page-id-3249 .pptp-2026-contact-card {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  body.page-id-3249 .pptp-2026-contact-card__copy small {
    font-size: 14px;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats,
  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__item {
    color: var(--faq-v2-navy);
    background: #fff;
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__value {
    color: var(--faq-v2-navy);
  }

  body.page-id-3249 .pptp-2026-faq > .pptp-2026-stats .pptp-2026-stats__label {
    color: var(--faq-v2-copy);
  }
}

@media (max-width: 575px) {
  body.page-id-3249 .pptp-2026-image-hero--faq {
    min-height: 410px;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-image-hero__copy {
    padding: 48px 0;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq h1 {
    font-size: clamp(34px, 9.2vw, 42px);
    line-height: 1.08;
  }

  body.page-id-3249 .pptp-2026-image-hero--faq .pptp-2026-lead {
    font-size: 16px;
    line-height: 1.55;
  }

  body.page-id-3249 .pptp-2026-faq-section {
    padding-top: 18px;
  }

  body.page-id-3249 .pptp-2026-accordion__button {
    min-height: 66px;
    padding: 10px 12px;
    grid-template-columns: 34px minmax(0, 1fr) 30px;
    gap: 10px;
  }

  body.page-id-3249 .pptp-2026-accordion__number {
    width: 34px;
    height: 34px;
  }

  body.page-id-3249 .pptp-2026-accordion__question {
    font-size: 15px;
    font-weight: 700;
  }

  body.page-id-3249 .pptp-2026-accordion__panel {
    padding: 8px 14px 18px;
  }

  body.page-id-3249 .pptp-2026-accordion__answer {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 14px;
  }

  body.page-id-3249 .pptp-2026-accordion__answer .pptp-2026-icon-circle {
    width: 48px;
    height: 48px;
    padding: 11px;
  }

  body.page-id-3249 .pptp-2026-accordion__answer p {
    font-size: 14px;
    line-height: 1.55;
  }

  body.page-id-3249 .pptp-2026-faq-contact {
    padding: 50px 0;
  }

  body.page-id-3249 .pptp-2026-faq-contact__intro h2 {
    font-size: 34px;
  }

  body.page-id-3249 .pptp-2026-contact-card {
    display: grid;
    min-height: 118px;
    padding: 20px;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    text-align: left;
  }

  body.page-id-3249 .pptp-2026-contact-card .pptp-2026-icon-circle {
    width: 54px;
    height: 54px;
    padding: 13px;
  }

  body.page-id-3249 .pptp-2026-contact-card__copy {
    align-items: start;
  }

  body.page-id-3249 .pptp-2026-contact-card__copy strong {
    font-size: 18px;
  }

  body.page-id-3249 .pptp-2026-contact-card__copy span,
  body.page-id-3249 .pptp-2026-contact-card__copy small {
    font-size: 14px;
  }
}
