.platform-page {
    overflow: hidden;
}

/* ========================================
   SECTIONS
======================================== */

.platform-page section {
    position: relative;
    padding: 120px 0;
}

.sect-dark + section::before,
.sect-dark::before {
    background: rgba(255,255,255,.1);
}

/* ========================================
   MAIN LOCAL
======================================== */

.platform-page h1,
.platform-page h2,
.platform-page h3,
.platform-page h4,
.platform-page h5,
.platform-page h6,
.platform-page p {

}
.platform-page p:not(:last-child) {
    margin-bottom: 20px;
}
.text-label {
    font-size: 18px;
    margin-bottom: 20px;
}

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

.rx-hero {
    position: relative;
    overflow-y: clip;
}

.rx-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(0,41,35,1) 0%,
        rgba(0,41,35,.92) 40%,
        rgba(0,41,35,0) 100%
    );
    pointer-events: none;
}

.rx-hero__wrapper {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 640px 1fr;
    gap: 80px;
    align-items: center;
}

.rx-hero__title {
    margin: 24px 0 32px;
}

.rx-hero__text {
    margin-bottom: 40px;
}

.rx-hero__media {
    aspect-ratio: 1 / 1.15;
    clip-path: polygon(
        50% 0%,
        100% 25%,
        100% 75%,
        50% 100%,
        0% 75%,
        0% 25%
    );
    margin: -27% 0;
}

.rx-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ========================================
   INTRO
======================================== */

.platform-page section.rx-intro {
    position: relative;
    background: #f4f4f4;
    padding-bottom: 260px;
}

.rx-intro .h2 {
    margin: 0 0 20px;
}
.rx-intro .text-label,
.rx-intro .h2 span {
    color: var(--color-bright-green);
}

.rx-intro__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start;
}

.rx-intro__left {

}

.rx-intro__image {
    margin-top: 80px;
    position: relative;
}

.rx-intro__image img {
    height: auto;
}

.rx-intro__tl {
    line-height: 1.7;
}

.rx-intro__box-hex {
    aspect-ratio: 1 / 1.15;
    clip-path: polygon( 50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
    background: var(--color-dark-teal);
    color: #fff;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    gap: 16px;
    max-width: 200px;
    padding: 20px;
    text-align: center;
    position: absolute;
    right: 10%;
    bottom: -40px;
}
.rx-intro__box-hex img {
    max-width: 50px;
}
.rx-intro__box-hex .h4 {
    font-size: 16px;
}
.rx-intro__box-hex p {
    font-size: 14px;
}

.rx-intro__text {
    max-width: 550px;
    margin-bottom: 40px;
    line-height: 1.7;
}
.intro-blocks {
    margin: 80px 0 0;
}
.intro-blocks .row > div:not(:last-child) {
    border-right: 1px solid #000;
}
.intro-block-one {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.intro-block-one .h4 {
  margin: 0 0 5px;
  line-height: 1.2;
  font-size: 16px;
}
.intro-block-one p {
    font-size: 14px;
}


/* ========================================
   SYSTEM
======================================== */

.platform-page section.rx-system {
    position: relative;
    padding-bottom: 260px;
}

.rx-system  .sect-top-right {
    clip-path: polygon(41% 0, 100% 0, 100% 100%, 0% 100%);
    width: 29%;
    height: 130px;
    position: absolute;
    right: 0;
    transform: translateY(-100%);
    background: var(--color-dark-teal);
    top: 1px;
}
.rx-system .sect-bottom-right {
    clip-path: polygon(15% 0, 100% 0, 100% 100%, 0% 100%);
    width: 84%;
    height: 137px;
    position: absolute;
    right: 0;
    background: #F4F4F4;
    bottom: -1px;
}

.rx-system__wrapper {
    display: grid;
    grid-template-columns: 500px 1fr;
    align-items: center;
    gap: 100px;
}

.rx-system .text-label,
.rx-system .h2 span {
    color: var(--color-bright-green);
}

.rx-system__text {
    margin-top: 40px;
    margin-bottom: 50px;
    line-height: 1.7;
}
.rx-system__media {
    display: flex;
    align-items: center;
    gap: 30px;
    align-self: flex-end;
    margin-top: 0;
}
.rx-system__media.target-text svg {

}
.rx-system__media img {
    height: auto;
    width: 100%;
    max-width: 322px;
}

.cycle-process{
    padding:120px 0;
    background:#00352F;
    overflow:hidden;
}

.cycle-process__wrapper{
    position:relative;
    width:100%;
    max-width:900px;
    aspect-ratio:1;
    margin-inline:auto;
}

.cycle-process__circle{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.cycle-process__center{
    position:absolute;
    left:50%;
    top:50%;
    width:42%;
    aspect-ratio:1;
    transform:translate(-50%, -50%);
}

.cycle-process__slider,
.cycle-process__slider .swiper-slide{
    height:100%;
}

.cycle-process__slider img{
    width:100%;
    height:100%;
    object-fit:contain;
}

.cycle-process__step{
    position:absolute;
    width:130px;
    text-align:center;
    color:#fff;
    background: var(--color-dark-teal);
    padding: 10px 0;
}

.cycle-process__icon{
    width: 60%;
    aspect-ratio: 1;
    height: auto;
    border: 2px solid #82FF4F;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 10px;
}

.cycle-process__icon img{
    max-width: 80%;
    max-height: 80%;
}

.cycle-process__number{
    font-size:30px;
    font-weight:700;
    color:#82FF4F;
    line-height:1;
}

.cycle-process__step h3{
    margin:10px 0;
    color:#fff;
    font-size:16px;
    font-weight:700;
}

.cycle-process__desc{
    color:#fff;
    font-size:14px;
    line-height:1.4;
}

.cycle-process__step--1{
    position:absolute;
    left:0;
    top:32%;
}

.cycle-process__step--2{
    position:absolute;
    left:50%;
    top:0;
    transform:translateX(-50%);
}

.cycle-process__step--3{
    position:absolute;
    right:0;
    top:35%;
}

.cycle-process__step--4{
    position:absolute;
    right:15%;
    bottom: -3%;
}

.cycle-process__step--5{
    position:absolute;
    left:15%;
    bottom: -6%;
}

@media (max-width: 991px){

    .cycle-process__wrapper{
        width: 100%;
        height: auto;
        display: flex;
        align-items: flex-start;
        gap: 40px;
        flex-wrap: wrap;
        justify-content: center;
    }

    .cycle-process__circle{
        display:none;
    }

    .cycle-process__center{
        position:relative;
        left:auto;
        top:auto;
        transform:none;

        width:280px;
        height:280px;
        margin:0 auto;
        order:-1;
        flex-basis: 100%;
    }

    .cycle-process__step{
        position:relative;
        left:auto;
        right:auto;
        top:auto;
        bottom:auto;
        transform: none;
        flex-basis: calc(50% - 20px);
    }
    .cycle-process__icon {
        width: 100%;
        max-width: 120px;
    }
}

@media (max-width: 767px){
    .rx-intro__box-hex {right: 0%;bottom: -30px;}
}



/* ========================================
   BENEFITS
======================================== */

.rx-benefits {
    background: #f4f4f4;
}

.rx-benefits__top {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 80px;
    align-items: center;
}

.rx-benefits__title {
    max-width: 620px;
}

.rx-benefits__grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 40px;
    margin-top: 80px;
}

.rx-benefit-card {
    position: relative;
    padding-right: 24px;
}

.rx-benefit-card:not(:last-child)::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    background: rgba(0,0,0,.08);
}

.rx-benefit-card__icon {
    width: 48px;
    margin-bottom: 32px;
}

.rx-benefit-card__title {
    margin-bottom: 20px;
    font-weight: 600;
}

.rx-benefits__content .text-label {
    color: var(--color-bright-green);
}
.rx-benefits__content .h2 {
    margin: 0 0 26px;
    max-width: 440px;
}
.rx-benefits__text {
    max-width: 580px;
}

.rx-benefits__bottom {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px;
    margin-top: 70px;
}


/* ========================================
   CTA
======================================== */

.hp-cta {
    background-color: var(--color-bright-green);
    text-align: center;
    background-attachment: fixed;
    background-image: url('../../../../wp-content/uploads/2026/05/reXtore_BrandMark_LightGreen-scaled.png');
    background-size: cover;
    min-height: 525px;
    display: flex;
    align-items: center;
}
.hp-cta-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    max-width: 1140px;
    margin: 0 auto;
}
.hp-cta-inner .h2 {
    max-width: 1100px;
}
.hp-cta-inner .text-big {
    font-size: 25px;
    margin: 0 auto 20px;
}
.hp-cta-inner .h2,
.hp-cta-inner .text-big {
    color: var(--color-dark-teal);
}

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

@media (max-width: 1920px) {

}

@media (max-width: 1600px) {
    .text-label {
        font-size: 15px;
    }
    .rx-hero__text {
        max-width: 550px;
    }
    .platform-page section {
        padding: 80px 0;
    }
    .platform-page section.rx-hero {
        padding: 120px 0 80px;
    }
    .rx-hero__wrapper {
        grid-template-columns: 800px 1fr;
    }
    .rx-hero__media {
        transform: scale(1.7) translateX(-20%);
        margin: 0;
    }
    .rx-hero__content {
        max-width: 550px;
    }
    .rx-intro__quote {
        font-size: 46px;
    }
    .platform-page section.rx-intro {
        padding-bottom: 140px;
    }
    .platform-page section.rx-system {
        padding-bottom: 170px;
    }
    .rx-system .sect-bottom-right,
    .rx-system .sect-top-right {
        height: 95px;
    }
    .hp-cta-inner {
        max-width: 990px;
    }
    .hp-cta-inner .text-big {
        font-size: 22px;
    }

}

@media (max-width: 1200px) {
    .rx-hero__wrapper {
        grid-template-columns: 650px 1fr;
    }
    .rx-intro__quote {
        font-size: 36px;
    }
    .intro-blocks .row > div {
        max-width: 50%;
        flex: 0 0 50%;
    }
    .intro-blocks .row {
        gap: 30px 0;
    }
    .intro-blocks .row > div:not(:last-child) {
        border-right: none;
    }
    .rx-system__wrapper {
        grid-template-columns: 1fr;
        gap: 50px;
    }
    .rx-system__media.target-text svg {
        min-width: 70px;
    }
}

@media (max-width: 991px) {

    .rx-hero__wrapper,
    .rx-intro__grid,
    .rx-system__wrapper,
    .rx-benefits__bottom {
        grid-template-columns: 1fr;
    }

    .rx-benefits__grid {
        grid-template-columns: repeat(2,1fr);
    }

    .rx-hero__media {
        transform: none;
    }
    .rx-hero__content, .rx-hero__text {
        max-width: unset;
    }
    .rx-intro__left {
        margin-top: 0;
    }
    .rx-intro__quote {
        font-size: 30px;
    }
    .rx-benefits__title {
        max-width: unset;
    }
    .rx-intro__text {
    max-width: unset;
    }
    .rx-intro__image {
        margin-top: 30px;
    }
    .rx-system .sect-bottom-right, .rx-system .sect-top-right {
        height: 60px;
    }
    .rx-benefits__content .h2 {
        max-width: unset;
    }
    .rx-benefits__top {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .rx-benefit-card:not(:last-child)::after {
        width: 0;
    }
    .rx-benefits__grid {
        margin-top: 0;
    }
    .rx-benefits__text {
        max-width: unset;
        margin-bottom: 48px;
    }
    .rx-system__media {
        justify-content: center;
    }
}

@media (max-width: 767px) {

    .wrapper {
        width: calc(100% - 48px);
    }

    .platform-page section {
        padding: 60px 0;
    }
    .platform-page section.rx-hero {
        padding: 110px 0 60px;
    }
	.rx-hero__text {
	  margin-bottom: 0;
	}
	.rx-hero__text p br {
	  display: none;
	}
    .rx-intro__quote {
        font-size: 28px;
    }
    .platform-page section.rx-system,
    .platform-page section.rx-intro {
        padding-bottom: 90px;
    }

    .rx-system .sect-bottom-right, .rx-system .sect-top-right {
        height: 40px;
    }

    .rx-system__media {
        gap: 20px;
    }
    .rx-system__media.target-text svg {
        min-width: 50px;
        width: 50px;
        height: 180px;
    }

    .rx-hero__wrapper,
    .rx-intro__grid,
    .rx-system__wrapper {
        gap: 48px;
    }

    .rx-benefits__grid {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 60px;
    }

    .rx-benefit-card {
        padding-right: 0;
        padding-bottom: 32px;
        text-align: center;
    }
    .rx-benefit-card__icon {
        margin: 0 auto 24px;
    }

    .rx-benefit-card::after {
        display: none;
    }
    .rx-benefits__bottom {
        margin-top: 20px;
    }

    .rx-intro::after,
    .rx-system::before {
        width: 180px;
        height: 80px;
    }
}


@media (min-width: 992px) {
	.platform-page section.rx-hero .container > .btn {display: none;}
}