.rt-content-hero {
    position: relative;
    min-height: calc(390px + var(--rt-header-height));
    margin-block-start: calc(-1 * var(--rt-header-height));
    display: flex;
    align-items: center;
    color: var(--rt-white);
    background: linear-gradient(125deg, #02090f, #06221d 68%, #07352f);
    overflow: hidden;
}

.rt-content-hero::before {
    content: "";
    position: absolute;
    inset-inline: 0;
    inset-block-end: 0;
    width: 100%;
    height: clamp(150px, 17.66vw, 260px);
    background: url('../../images/hero-logo-pattern.png') center bottom / 100% 100% no-repeat;
    opacity: .14;
    pointer-events: none;
}

.rt-content-hero__inner {
    position: relative;
    z-index: 1;
    width: 100%;
    min-height: inherit;
    padding-block: calc(var(--rt-header-height) + 38px) 48px;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr);
    gap: clamp(34px, 5vw, 80px);
    align-items: center;
}

.rt-content-hero__inner:not(.has-visual) { grid-template-columns: minmax(0, 850px); }
.rt-content-hero__eyebrow {
    margin: 0 0 20px;
    padding-inline-start: 18px;
    border-inline-start: 5px solid var(--rt-primary);
    color: var(--rt-primary);
    font-size: clamp(1.75rem, 2.2vw, 2.35rem);
    font-weight: 500;
    line-height: 1.35;
}
.rt-content-hero h1 { margin-block: 10px 14px; font-size: clamp(2.4rem, 4vw, 4.4rem); font-weight: 600; line-height: 1.18; }
.rt-content-hero p { max-width: 760px; margin: 0; color: rgba(255,255,255,.75); font-size: clamp(1rem, 1.2vw, 1.18rem); line-height: 1.85; }
.rt-content-hero__meta { margin-block-start: 15px; display: flex; flex-wrap: wrap; gap: 12px; color: rgba(255,255,255,.65); }
.rt-content-hero__visual { height: clamp(240px, 23vw, 350px); margin: 0; overflow: hidden; border: 1px solid rgba(0,180,129,.32); border-radius: var(--rt-radius-md); }
.rt-content-hero__visual img { width: 100%; height: 100%; display: block; object-fit: cover; }
.rt-service-content-hero.has-background {
    background-color: #02090f;
    background-image: linear-gradient(rgba(2, 9, 15, .76), rgba(2, 18, 20, .82)), var(--rt-service-hero-background);
    background-position: bottom center;
    background-size: 100%, cover;
    background-repeat: no-repeat;
    /* min-height: calc(372px + var(--rt-header-height)); */
}

.rt-content-page { padding-block: clamp(70px, 8vw, 120px); background: var(--rt-surface); }
.rt-prose-card { max-width: 1120px; margin-inline: auto; padding: clamp(28px, 4.5vw, 62px); border: 1px solid var(--rt-border); border-radius: var(--rt-radius-md); background: var(--rt-white); box-shadow: 0 18px 55px rgba(5,40,32,.06); }
.rt-prose { color: #45534f; font-size: clamp(1rem, 1.08vw, 1.1rem); line-height: 1.95; }
.rt-prose > :first-child { margin-block-start: 0; }
.rt-prose > :last-child { margin-block-end: 0; }
.rt-prose h2, .rt-prose h3, .rt-prose h4 { margin-block: 1.7em .65em; color: var(--rt-ink); font-weight: 600; }
.rt-prose a { color: var(--rt-primary-dark); font-weight: 600; }
.rt-prose img { max-width: 100%; height: auto; border-radius: var(--rt-radius-md); }
.rt-prose ul, .rt-prose ol { padding-inline-start: 1.4rem; }

.rt-archive { padding-block: clamp(72px, 8vw, 120px); }
.rt-service-archive .rt-home-services__items { margin-block-start: 0; }
.rt-service-archive .rt-home-services__item > img { height: auto; aspect-ratio: 855 / 515; object-fit: cover; }
.rt-service-archive .rt-pagination { margin-block-start: clamp(70px, 8vw, 120px); }
.rt-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(22px, 2.6vw, 38px); }
.rt-content-card { height: 100%; display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--rt-border); border-radius: var(--rt-radius-md); background: var(--rt-white); box-shadow: 0 14px 40px rgba(5,40,32,.055); transition: transform var(--rt-transition), box-shadow var(--rt-transition); }
.rt-content-card:hover { transform: translateY(-6px); box-shadow: 0 22px 55px rgba(5,40,32,.1); }
.rt-content-card__media { position: relative; aspect-ratio: 16 / 10; display: block; overflow: hidden; background: var(--rt-primary-soft); }
.rt-content-card__media img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .5s ease; }
.rt-content-card__media.is-empty { display: grid; place-items: center; }
.rt-content-card__placeholder { color: var(--rt-primary); font-size: clamp(2.5rem, 5vw, 4.5rem); opacity: .5; }
.rt-content-card:hover .rt-content-card__media img { transform: scale(1.045); }
.rt-content-card__date { position: absolute; inset-inline-start: 16px; inset-block-end: 16px; padding: 7px 11px; border-radius: 999px; color: var(--rt-white); background: rgba(2,15,16,.78); font-size: .82rem; backdrop-filter: blur(8px); }
.rt-content-card__body { padding: clamp(21px, 2vw, 30px); display: flex; flex: 1; flex-direction: column; }
.rt-content-card h2 { margin-block: 0 12px; color: var(--rt-ink); font-size: clamp(1.3rem, 1.55vw, 1.65rem); line-height: 1.4; }
.rt-content-card p { margin-block: 0 22px; color: #68746f; line-height: 1.75; }
.rt-content-card__link { margin-block-start: auto; color: var(--rt-primary-dark); font-weight: 600; }
.rt-content-card__link i { margin-inline-start: 7px; }
.rt-pagination { margin-block-start: 48px; display: flex; justify-content: center; }
.rt-empty-state { padding: 55px 25px; border: 1px dashed rgba(0,180,129,.4); border-radius: var(--rt-radius-md); text-align: center; color: #68746f; background: var(--rt-primary-soft); }

.rt-single-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(250px, 330px); gap: clamp(32px, 4vw, 68px); align-items: start; }
.rt-single-layout:not(.has-sidebar) { grid-template-columns: minmax(0, 1fr); }
.rt-related { position: sticky; inset-block-start: calc(var(--rt-header-height) + 24px); }
.rt-related h2 { margin-block: 0 20px; color: var(--rt-ink); font-size: 1.45rem; }
.rt-related__list { display: grid; gap: 14px; }
.rt-related-card { padding: 10px; display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 13px; align-items: center; border: 1px solid var(--rt-border); border-radius: var(--rt-radius-sm); background: var(--rt-white); }
.rt-related-card img { width: 92px; height: 76px; display: block; object-fit: cover; border-radius: 9px; }
.rt-related-card__media { width: 92px; height: 76px; display: block; }
.rt-related-card__media.is-empty { display: grid; place-items: center; border-radius: 9px; color: var(--rt-primary); background: var(--rt-primary-soft); font-size: 1.6rem; }
.rt-related-card h3 { margin: 0; color: var(--rt-ink); font-size: 1rem; line-height: 1.45; }

.rt-service-single__feature { margin-block-end: 34px; display: grid; grid-template-columns: minmax(240px, .8fr) minmax(0, 1.2fr); gap: clamp(26px, 4vw, 60px); align-items: center; }
.rt-service-single__feature img { width: 100%; max-height: 440px; display: block; object-fit: cover; border-radius: var(--rt-radius-md); }
.rt-service-single__intro { max-width: 1040px; margin-inline: auto; color: #45534f; text-align: center; }
.rt-service-single__intro + .rt-home-services__items { margin-block-start: clamp(58px, 7vw, 100px); }
.rt-service-single .rt-home-services__item > img { height: auto; aspect-ratio: 855 / 515; object-fit: cover; }
.rt-service-single .rt-home-services__item.has-no-image { min-height: 280px; justify-content: center; }
.rt-service-single .rt-home-services__item.has-no-image .rt-home-services__item-content { flex-basis: min(760px, 100%); }
.rt-service-single__share { margin-block-start: clamp(70px, 8vw, 120px); }
.rt-share {margin-block-start: 34px;padding-block-start: 24px;display: flex;align-items: center;gap: 14px;border-block-start: 1px solid var(--rt-border);display: none;}
.rt-share__links { display: flex; gap: 9px; }
.rt-share__links a { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; color: var(--rt-white); background: var(--rt-primary-dark); }

@media (max-width: 991px) {
    .rt-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rt-single-layout, .rt-service-single__feature { grid-template-columns: minmax(0, 1fr); }
    .rt-related { position: static; }
}

@media (max-width: 760px) {
    .rt-content-hero__inner, .rt-content-hero__inner.has-visual { grid-template-columns: minmax(0, 1fr); padding-block-end: 52px; }
    .rt-content-hero__visual { height: min(62vw, 330px); }
    .rt-card-grid { grid-template-columns: minmax(0, 1fr); }
}
