.elementor-207 .elementor-element.elementor-element-a519f4a > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-207 .elementor-element.elementor-element-a519f4a:not(.elementor-motion-effects-element-type-background), .elementor-207 .elementor-element.elementor-element-a519f4a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#111111;background-image:url("https://relentlessink.com/wp-content/uploads/2026/07/HomeHeroImage.jpg");background-position:center center;background-size:cover;}.elementor-207 .elementor-element.elementor-element-a519f4a > .elementor-container{max-width:1280px;min-height:700px;}.elementor-207 .elementor-element.elementor-element-a519f4a{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;color:#FFFFFF;}.elementor-207 .elementor-element.elementor-element-a519f4a > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-207 .elementor-element.elementor-element-a519f4a .elementor-heading-title{color:#FFFFFF;}.elementor-207 .elementor-element.elementor-element-b4f94e0{color:var( --e-global-color-accent );}.elementor-207 .elementor-element.elementor-element-c2131a7{--spacer-size:30px;}.elementor-207 .elementor-element.elementor-element-01b3d3c.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-207 .elementor-element.elementor-element-01b3d3c > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:10px;}.elementor-207 .elementor-element.elementor-element-e830c79 .elementor-button{border-radius:3px 3px 3px 3px;}.elementor-207 .elementor-element.elementor-element-ff96cd3:not(.elementor-motion-effects-element-type-background), .elementor-207 .elementor-element.elementor-element-ff96cd3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-207 .elementor-element.elementor-element-ff96cd3{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-207 .elementor-element.elementor-element-ff96cd3 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-207 .elementor-element.elementor-element-96a4137:not(.elementor-motion-effects-element-type-background), .elementor-207 .elementor-element.elementor-element-96a4137 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0F0F0;}.elementor-207 .elementor-element.elementor-element-96a4137{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-207 .elementor-element.elementor-element-96a4137 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-207 .elementor-element.elementor-element-5f6c9ed{width:var( --container-widget-width, 101.791% );max-width:101.791%;--container-widget-width:101.791%;--container-widget-flex-grow:0;}.elementor-207 .elementor-element.elementor-element-f41f0eb:not(.elementor-motion-effects-element-type-background), .elementor-207 .elementor-element.elementor-element-f41f0eb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-207 .elementor-element.elementor-element-f41f0eb{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:15px 0px 0px 0px;}.elementor-207 .elementor-element.elementor-element-f41f0eb > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-207 .elementor-element.elementor-element-f41f0eb > .elementor-shape-top .elementor-shape-fill{fill:#F0F0F0;}.elementor-207 .elementor-element.elementor-element-2e16fb6:not(.elementor-motion-effects-element-type-background), .elementor-207 .elementor-element.elementor-element-2e16fb6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3F3F3;}.elementor-207 .elementor-element.elementor-element-2e16fb6{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:-10px;margin-bottom:0px;}.elementor-207 .elementor-element.elementor-element-2e16fb6 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-207 .elementor-element.elementor-element-2e16fb6 > .elementor-shape-top .elementor-shape-fill{fill:#FFFFFF;}.elementor-207 .elementor-element.elementor-element-cb51747:not(.elementor-motion-effects-element-type-background), .elementor-207 .elementor-element.elementor-element-cb51747 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-207 .elementor-element.elementor-element-cb51747{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-207 .elementor-element.elementor-element-cb51747 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-207 .elementor-element.elementor-element-89c4b9b:not(.elementor-motion-effects-element-type-background), .elementor-207 .elementor-element.elementor-element-89c4b9b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3F3F3;}.elementor-207 .elementor-element.elementor-element-89c4b9b{border-style:none;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-207 .elementor-element.elementor-element-89c4b9b, .elementor-207 .elementor-element.elementor-element-89c4b9b > .elementor-background-overlay{border-radius:0px 0px 0px 0px;}.elementor-207 .elementor-element.elementor-element-89c4b9b > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-207 .elementor-element.elementor-element-6dfa7c6:not(.elementor-motion-effects-element-type-background), .elementor-207 .elementor-element.elementor-element-6dfa7c6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://relentlessink.com/wp-content/uploads/2026/06/relentless-ink-FAQs-hero.jpg");background-position:center center;background-size:cover;}.elementor-207 .elementor-element.elementor-element-6dfa7c6{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-207 .elementor-element.elementor-element-6dfa7c6 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}/* Start custom CSS for button, class: .elementor-element-e830c79 */.ri-btn,
.elementor-button {
    background: #af0000;
    color: #fff;
    border: 3px solid #000;
    border-radius: 8px;
    box-shadow: 5px 5px 0 #000;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    transition: all .2s ease;
}

.ri-btn:hover,
.elementor-button:hover {
    background: #000;
    color: #fff;
    transform: translate(-3px, -3px);
    box-shadow: 8px 8px 0 #af0000;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-a519f4a *//* ==========================
   RELENTLESS INK HERO
========================== */

.ri-hero {
    background: #111111;
    padding: 100px 30px;
    overflow: hidden;
    position: relative;
    isolation: isolate;
}

/* Background image layer */

.ri-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.94) 0%,
            rgba(0,0,0,.82) 42%,
            rgba(0,0,0,.48) 72%,
            rgba(0,0,0,.34) 100%
        ),
        var(--ri-hero-image, none);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -3;
    pointer-events: none;
}

/* Comic halftone + ink texture overlay */

.ri-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(
            circle,
            rgba(255,255,255,.12) 1px,
            transparent 1.5px
        ),
        repeating-linear-gradient(
            -12deg,
            transparent 0,
            transparent 14px,
            rgba(0,0,0,.16) 15px,
            rgba(0,0,0,.16) 16px
        ),
        linear-gradient(
            115deg,
            rgba(175,0,0,.18) 0%,
            transparent 24%,
            transparent 72%,
            rgba(244,180,0,.10) 100%
        );
    background-size:
        7px 7px,
        100% 100%,
        100% 100%;
    background-position:
        center,
        center,
        center;
    mix-blend-mode: overlay;
    opacity: .78;
    z-index: -1;
    pointer-events: none;
}

/* Optional comic burst behind the content */

.ri-hero-inner::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -220px;
    width: 680px;
    height: 680px;
    transform: translateY(-50%) rotate(-8deg);
    background:
        repeating-conic-gradient(
            from 0deg,
            rgba(175,0,0,.14) 0deg 4deg,
            transparent 4deg 12deg
        );
    -webkit-mask-image: radial-gradient(
        circle,
        #000 0%,
        rgba(0,0,0,.9) 42%,
        transparent 72%
    );
    mask-image: radial-gradient(
        circle,
        #000 0%,
        rgba(0,0,0,.9) 42%,
        transparent 72%
    );
    opacity: 1;
    z-index: -1;
    pointer-events: none;
}

.ri-hero-inner {
    max-width: 1280px;
    margin: 0 auto;
    align-items: center;
    position: relative;
    z-index: 2;
}

.ri-hero-content {
    position: relative;
    z-index: 2;
}

/* Kicker */

.ri-hero-kicker {
    color: #AF0000;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

/* Heading */

.ri-hero h1 {
    font-size: clamp(3rem, 8vw, 8rem);
    font-weight: 900;
    line-height: .94;
    color: #ffffff;
    margin: 0 0 25px;
    text-transform: uppercase;
    letter-spacing: -.04em;
    text-shadow:
        3px 3px 0 rgba(0,0,0,.92),
        7px 7px 0 rgba(175,0,0,.22);
}

.ri-hero h1 span {
    color: #AF0000;
    text-shadow:
        2px 2px 0 #ffffff,
        5px 5px 0 rgba(0,0,0,.9);
}

/* Description */

.ri-hero-text {
    font-size: 1.25rem;
    line-height: 1.8;
    color: rgba(255,255,255,.85);
    max-width: 650px;
    margin-bottom: 40px;
    text-shadow: 0 2px 8px rgba(0,0,0,.7);
}

/* Buttons */

.ri-hero-buttons {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    margin-bottom: 35px;
}

.ri-btn-primary,
.ri-btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 16px 28px;
    border-radius: 3px;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .04em;
    position: relative;
    overflow: hidden;
    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease;
}

.ri-btn-primary {
    background: #AF0000;
    color: #ffffff;
    border: 2px solid #AF0000;
    box-shadow:
        4px 4px 0 #000000,
        6px 6px 0 rgba(244,180,0,.55);
}

.ri-btn-primary:hover {
    background: #8f0000;
    border-color: #8f0000;
    color: #ffffff;
    transform: translate(-2px, -2px);
    box-shadow:
        6px 6px 0 #000000,
        8px 8px 0 rgba(244,180,0,.55);
}

.ri-btn-secondary {
    background: rgba(0,0,0,.35);
    color: #ffffff;
    border: 2px solid rgba(255,255,255,.55);
    box-shadow: 4px 4px 0 rgba(0,0,0,.85);
    backdrop-filter: blur(3px);
}

.ri-btn-secondary:hover {
    border-color: #F4B400;
    background: rgba(0,0,0,.62);
    color: #ffffff;
    transform: translate(-2px, -2px);
}

/* Reviews */

.ri-hero-rating {
    color: rgba(255,255,255,.9);
    font-size: 15px;
    font-weight: 700;
    text-shadow: 0 2px 6px rgba(0,0,0,.8);
}

.ri-hero-rating i {
    color: #F4B400;
    margin-right: 2px;
}

/* Image Side */

.ri-hero-image {
    position: relative;
    z-index: 2;
}

/* Comic frame behind image */

.ri-hero-image::before {
    content: "";
    position: absolute;
    inset: 6% -3% -4% 7%;
    background: #AF0000;
    clip-path: polygon(
        3% 8%,
        94% 0,
        100% 86%,
        86% 100%,
        0 94%
    );
    transform: rotate(2deg);
    z-index: -2;
}

/* Halftone shadow behind image */

.ri-hero-image::after {
    content: "";
    position: absolute;
    inset: 12% -7% -9% 13%;
    background-image:
        radial-gradient(
            circle,
            rgba(244,180,0,.72) 2px,
            transparent 2.5px
        );
    background-size: 10px 10px;
    opacity: .45;
    transform: rotate(-3deg);
    z-index: -3;
}

.ri-hero-image img {
    width: 100%;
    max-width: 700px;
    display: block;
    margin-left: auto;
    position: relative;
    filter:
        contrast(1.12)
        saturate(.92)
        drop-shadow(0 30px 60px rgba(0,0,0,.52));
    clip-path: polygon(
        2% 5%,
        96% 0,
        100% 88%,
        91% 100%,
        0 94%
    );
}

/* Mobile */

@media (max-width: 1024px) {

    .ri-hero {
        padding: 80px 25px;
    }

    .ri-hero::before {
        background:
            linear-gradient(
                180deg,
                rgba(0,0,0,.90) 0%,
                rgba(0,0,0,.78) 56%,
                rgba(0,0,0,.46) 100%
            ),
            var(--ri-hero-image, none);
        background-position: center;
    }

    .ri-hero-inner {
        flex-direction: column;
        gap: 50px;
    }

    .ri-hero-content {
        text-align: center;
    }

    .ri-hero-inner::before {
        left: 50%;
        transform: translate(-50%, -50%) rotate(-8deg);
    }

    .ri-hero-content::before {
        display: none;
    }

    .ri-hero-text {
        margin-left: auto;
        margin-right: auto;
    }

    .ri-hero-buttons {
        justify-content: center;
    }

    .ri-hero-image img {
        margin: 0 auto;
        max-width: 550px;
    }
}

@media (max-width: 767px) {

    .ri-hero {
        padding: 60px 20px;
    }

    .ri-hero::after {
        background-size:
            6px 6px,
            100% 100%,
            100% 100%;
        opacity: .58;
    }

    .ri-hero h1 {
        font-size: clamp(3rem, 15vw, 4.5rem);
        line-height: .96;
        text-shadow:
            2px 2px 0 rgba(0,0,0,.92),
            4px 4px 0 rgba(175,0,0,.22);
    }

    .ri-hero h1 span {
        text-shadow:
            1px 1px 0 #ffffff,
            3px 3px 0 rgba(0,0,0,.9);
    }

    .ri-hero-text {
        font-size: 1.05rem;
        line-height: 1.7;
    }

    .ri-hero-buttons {
        flex-direction: column;
    }

    .ri-btn-primary,
    .ri-btn-secondary {
        width: 100%;
    }

    .ri-hero-image::before {
        inset: 5% -2% -3% 5%;
    }

    .ri-hero-image::after {
        inset: 11% -4% -6% 10%;
        background-size: 8px 8px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-78b2b23 *//* ==================================
   RELENTLESS INK LOGO SECTION
================================== */

.ri-logo-section {
    background: #ffffff;
    padding: 80px 0;
    overflow: hidden;
    position: relative;
}

.ri-logo-header {
    text-align: center;
    margin-bottom: 50px;
    padding: 0 20px;
}

.ri-kicker {
    color: #AF0000;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.ri-logo-header h2 {
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.2;
    color: #000;
    margin: 0;
}

/* Fade edges */

.ri-logo-section {
    position: relative;
    overflow: hidden;
}

.ri-logo-section::before,
.ri-logo-section::after {
    content: '';
    position: absolute;
    top: 0;
    width: 120px;
    height: 100%;
    z-index: 5;
    pointer-events: none;
}

.ri-logo-section::before {
    left: 0;
    background: linear-gradient(
        to right,
        #ffffff 0%,
        rgba(246,243,238,0) 100%
    );
}

.ri-logo-section::after {
    right: 0;
    background: linear-gradient(
        to left,
        #ffffff 0%,
        rgba(246,243,238,0) 100%
    );
}

/* Marquee */

.ri-logo-marquee {
    width: 100%;
    overflow: hidden;
    margin: 12px 0;
}

.ri-logo-track {
    display: flex;
    align-items: center;
    gap: 80px;
    width: max-content;
    animation: ri-scroll 40s linear infinite;
}

/* Reverse row */

.ri-logo-marquee-reverse .ri-logo-track {
    animation: ri-scroll-reverse 50s linear infinite;
}

/* Logos */

.ri-logo-track img {
    height: 70px;
    width: auto;
    max-width: 220px;
    object-fit: contain;
    transition: all .3s ease;
}

.ri-logo-track img:hover {
    opacity: 1;
    filter: grayscale(0%);
    transform: scale(1.05);
}

/* Animation */

@keyframes ri-scroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-50%);
    }
}

@keyframes ri-scroll-reverse {
    from {
        transform: translateX(-50%);
    }
    to {
        transform: translateX(0);
    }
}

/* Tablet */

@media (max-width: 1024px) {

    .ri-logo-track {
        gap: 60px;
    }

    .ri-logo-track img {
        height: 55px;
        max-width: 180px;
    }
}

/* Mobile */

@media (max-width: 767px) {

    .ri-logo-section {
        padding: 70px 0;
    }

    .ri-logo-track {
        gap: 40px;
    }

    .ri-logo-track img {
        height: 45px;
        max-width: 140px;
    }

    .ri-logo-section::before,
    .ri-logo-section::after {
        width: 50px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5f6c9ed *//* ==================================
   RELENTLESS INK SERVICES SECTION
   COMIC BOOK STYLE
================================== */

.ri-services {
  background:
    radial-gradient(rgba(0,0,0,.06) 1px, transparent 1px),
    #f0f0f0;
  background-size: 18px 18px;
  padding: 110px 24px;
  overflow: hidden;
}

.ri-services-header {
  max-width: 920px;
  margin: 0 auto 65px;
  text-align: center;
}

.ri-section-label {
  display: inline-block;
  background: #AF0000;
  color: #ffffff!important;
  border: 3px solid #000000;
  box-shadow: 4px 4px 0 #000000;
  padding: 8px 14px;
  transform: rotate(-2deg);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.ri-services-header h2 {
  color: #000000;
  font-size: clamp(2.4rem, 5vw, 4.5rem);
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
  margin: 0 0 22px;
}

.ri-services-header p {
  color: #444444;
  font-size: 1.12rem;
  line-height: 1.8;
  margin: 0 auto;
  max-width: 760px;
}

.ri-services-grid {
  max-width: 1320px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 32px;
}

.ri-service-featured,
.ri-service-card {
  position: relative;
  overflow: hidden;
  text-decoration: none;
  background: #000000;
  border-radius: 18px;

  border-top: 4px solid #000000;
  border-left: 4px solid #000000;
  border-right: 2px solid #000000;
  border-bottom: 2px solid #000000;

  box-shadow:
    6px 6px 0 #AF0000,
    12px 12px 0 #000000;

  transition: all .25s ease;
}

.ri-service-featured {
  min-height: 620px;
  transform: rotate(-1deg);
}

.ri-service-card {
  min-height: 190px;
  display: flex;
  align-items: flex-end;
}

.ri-service-card:nth-child(odd) {
  transform: rotate(1deg);
}

.ri-service-card:nth-child(even) {
  transform: rotate(-1deg);
}

.ri-service-bg {
  position: absolute;
  inset: 0;
}

.ri-service-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .6s ease;
}

.ri-service-featured::before,
.ri-service-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(rgba(255,255,255,.10) 1px, transparent 1px),
    linear-gradient(
      to top,
      rgba(0,0,0,.92) 0%,
      rgba(0,0,0,.62) 45%,
      rgba(0,0,0,.18) 100%
    );
  background-size: 10px 10px, auto;
  z-index: 1;
  pointer-events: none;
}

.ri-service-content {
  position: relative;
  z-index: 2;
  padding: 34px;
}

.ri-service-featured .ri-service-content {
  position: absolute;
  left: 38px;
  right: 38px;
  bottom: 38px;
  padding: 0;
}

.ri-service-content span {
  display: inline-block;
  background: #F4B400;
  color: #000000;
  border: 3px solid #000000;
  box-shadow: 3px 3px 0 #AF0000;
  padding: 6px 14px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 2px;
  text-transform: uppercase;
  border-radius: 8px;
  transform: rotate(-2deg);
  margin-bottom: 18px;
}

.ri-service-content h3 {
  color: #ffffff;
  font-size: 1.45rem;
  line-height: 1.1;
  font-weight: 900;
  text-transform: uppercase;
  margin: 0 0 10px;
  text-shadow: 3px 3px 0 #000000;
}

.ri-service-featured .ri-service-content h3 {
  font-size: clamp(2.6rem, 4vw, 4.5rem);
  line-height: .95;
  margin-bottom: 18px;
}

.ri-service-content p {
  color: rgba(255,255,255,.86);
  font-size: .98rem;
  line-height: 1.6;
  margin: 0;
}

.ri-service-featured .ri-service-content p {
  font-size: 1.08rem;
  line-height: 1.7;
  max-width: 520px;
}

.ri-service-stack {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}

/* Tablet */

@media (max-width: 1100px) {
  .ri-services-grid {
    grid-template-columns: 1fr;
  }

  .ri-service-featured {
    min-height: 500px;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .ri-services {
    padding: 75px 20px;
  }

  .ri-services-header {
    text-align: left;
    margin-bottom: 42px;
  }

  .ri-services-header h2 {
    font-size: clamp(2.5rem, 12vw, 3.5rem);
  }

  .ri-service-stack {
    grid-template-columns: 1fr;
  }

  .ri-service-featured,
  .ri-service-card {
    transform: none;
    border-radius: 14px;
  }

  .ri-service-featured:hover,
  .ri-service-card:hover {
    transform: none;
  }

  .ri-service-featured {
    min-height: 430px;
  }

  .ri-service-card {
    min-height: 220px;
  }

  .ri-service-featured .ri-service-content {
    left: 24px;
    right: 24px;
    bottom: 24px;
  }

  .ri-service-content {
    padding: 24px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e56e857 *//* ==================================
   RELENTLESS INK WHY SECTION
================================== */

.ri-why {
  padding: 100px 24px;
  overflow: hidden;
}

.ri-why-inner {
  max-width: 1320px;
  margin: 0 auto;
}

.ri-why-header {
  max-width: 820px;
  margin-bottom: 60px;
}

.ri-why .ri-section-label {
  display: inline-block;
  color: #ffffff;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.ri-why-header h2 {
  color: #000000;
  font-size: clamp(2.5rem, 5vw, 5rem);
  line-height: .98;
  font-weight: 900;
  margin: 0 0 22px;
}

.ri-why-header p {
  color: #555555;
  font-size: 1.12rem;
  line-height: 1.8;
  max-width: 720px;
  margin: 0;
}

/* Cards */

.ri-why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.ri-why-card {
    background:radial-gradient(#d9d9d9 1px, transparent 1px);
    background-size: 10px 10px;
    background-color: #fff;
    border: 3px solid #000;
    border-radius: 18px;
    padding: 30px;
    box-shadow: 8px 8px 0 #000;
}

.ri-why-number {
  display: block;
  color: #AF0000;
  font-size: 18px;
  font-weight: 900;
  letter-spacing: 2px;
  margin-bottom: 20px;
}

.ri-why-card h3 {
  color: #000000;
  font-size: 1.65rem;
  line-height: 1.15;
  font-weight: 900;
  margin: 0 0 16px;
}

.ri-why-card p {
  color: #666666;
  font-size: 1rem;
  line-height: 1.75;
  margin: 0;
}

/* Tablet */

@media (max-width: 1024px) {
  .ri-why-grid {
    grid-template-columns: 1fr;
  }

  .ri-why-card {
    min-height: auto;
  }

  .ri-why-number {
    margin-bottom: 40px;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .ri-why {
    padding: 75px 20px;
  }

  .ri-why-header {
    margin-bottom: 40px;
  }

  .ri-why-card {
    padding: 30px;
    border-radius: 14px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f8b96b1 *//* ==================================
   RELENTLESS INK REVIEWS
================================== */

.ri-reviews {
    padding: 110px 24px;
}

.ri-reviews-inner {
    max-width: 1320px;
    margin: 0 auto;
}

.ri-reviews-header {
    max-width: 820px;
    margin: 0 auto 55px;
    text-align: center;
}

.ri-section-label {
    display: inline-block;
    color: #AF0000;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.ri-reviews-header h2 {
    color: #000;
    font-size: clamp(2.5rem, 5vw, 4.5rem);
    line-height: 1;
    font-weight: 900;
    margin: 0 0 20px;
}

.ri-reviews-header p {
    color: #555;
    font-size: 1.12rem;
    line-height: 1.8;
    max-width: 720px;
    margin: 0 auto;
}

.ri-google-reviews-wrap {
    background: #ffffff;
    border-top: 4px solid #000;
    border-left: 4px solid #000;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    border-radius: 18px;
    box-shadow:
        6px 6px 0 #af0000,
        10px 10px 0 #000;
    padding: 30px;
    position: relative;
    overflow: hidden;
}

.ri-google-reviews-wrap::before {

    content: '';

    position: absolute;

    inset: 0;

    background:

        radial-gradient(circle, rgba(0,0,0,.08) 1px, transparent 1px);

    background-size: 10px 10px;

    pointer-events: none;

}

@media (max-width: 767px) {

    .ri-reviews {
        padding: 75px 20px;
    }

    .ri-reviews-header {
        text-align: left;
    }

    .ri-google-reviews-wrap {
        padding: 20px;
        border-radius: 14px;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e3043a4 *//* ==================================
   RELENTLESS INK PROCESS SECTION
   COMIC STYLE - SAFE VERSION
================================== */

section.ri-process {
  background: #000000 !important;
  padding: 120px 24px !important;
  position: relative !important;
  overflow: hidden !important;
}

section.ri-process::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(rgba(255,255,255,.05) 1px, transparent 1px) !important;
  background-size: 10px 10px !important;
  pointer-events: none !important;
}

section.ri-process .ri-process-inner {
  max-width: 1320px !important;
  margin: 0 auto !important;
  position: relative !important;
  z-index: 2 !important;
}

section.ri-process .ri-process-header {
  text-align: center !important;
  max-width: 850px !important;
  margin: 0 auto 80px !important;
}

section.ri-process .ri-section-label {
  display: inline-block !important;
  color: #F4B400 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  margin-bottom: 15px !important;
}

section.ri-process h2 {
  color: #ffffff !important;
  font-size: clamp(2.5rem, 5vw, 5rem) !important;
  line-height: .95 !important;
  font-weight: 900 !important;
  margin: 0 0 25px !important;
}

section.ri-process .ri-process-header p {
  color: rgba(255,255,255,.72) !important;
  font-size: 1.1rem !important;
  line-height: 1.8 !important;
  margin: 0 !important;
}

section.ri-process .ri-process-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 40px !important;
  position: relative !important;
}

section.ri-process .ri-process-grid::before {
  content: "" !important;
  position: absolute !important;
  top: 55px !important;
  left: 10% !important;
  right: 10% !important;
  height: 4px !important;
  background: #ffffff !important;
  box-shadow: 0 4px 0 #AF0000 !important;
  z-index: 0 !important;
}

section.ri-process .ri-process-step {
  position: relative !important;
  z-index: 2 !important;
}

/* Comic Icon Circle */

section.ri-process .ri-process-icon {
  width: 100px !important;
  height: 100px !important;
  border-radius: 50% !important;
  background:
    radial-gradient(circle, rgba(0,0,0,.22) 1.5px, transparent 1.5px),
    #ffffff !important;
  background-size: 10px 10px !important;

  border: 4px solid #000000 !important;

  box-shadow:
    5px 5px 0 #AF0000,
    10px 10px 0 #000000 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin-bottom: 34px !important;
  position: relative !important;
  z-index: 3 !important;

  transform: rotate(-3deg) !important;
  transition: all .25s ease !important;
}

section.ri-process .ri-process-step:nth-child(even) .ri-process-icon {
  transform: rotate(3deg) !important;
}

/* Inner comic ink ring */

section.ri-process .ri-process-icon::before {
  content: "" !important;
  position: absolute !important;
  inset: 8px !important;
  border: 2px solid #000000 !important;
  border-radius: 50% !important;
  pointer-events: none !important;
}

/* Hover */

section.ri-process .ri-process-step:hover .ri-process-icon {
  transform: translate(-4px, -4px) rotate(-3deg) !important;
  box-shadow:
    8px 8px 0 #AF0000,
    14px 14px 0 #000000 !important;
}

section.ri-process .ri-process-step:nth-child(even):hover .ri-process-icon {
  transform: translate(-4px, -4px) rotate(3deg) !important;
}

/* Font Awesome Icons */

section.ri-process .ri-fa {
  display: inline-block !important;
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  font-style: normal !important;
  font-size: 2.25rem !important;
  color: #000000 !important;
  line-height: 1 !important;
  position: relative !important;
  z-index: 5 !important;
  text-shadow: 2px 2px 0 #AF0000 !important;
}

section.ri-process .ri-fa-quote::before {
  content: "\f573" !important;
}

section.ri-process .ri-fa-design::before {
  content: "\f5ae" !important;
}

section.ri-process .ri-fa-production::before {
  content: "\f553" !important;
}

section.ri-process .ri-fa-delivery::before {
  content: "\f49e" !important;
}

section.ri-process .ri-process-step h3 {
  color: #ffffff !important;
  font-size: 1.45rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .5px !important;
  margin: 0 0 15px !important;
}

section.ri-process .ri-process-step p {
  color: rgba(255,255,255,.72) !important;
  line-height: 1.8 !important;
  margin: 0 !important;
}

@media (max-width: 1024px) {
  section.ri-process .ri-process-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 50px !important;
  }

  section.ri-process .ri-process-grid::before {
    display: none !important;
  }
}

@media (max-width: 767px) {
  section.ri-process {
    padding: 80px 20px !important;
  }

  section.ri-process .ri-process-header {
    text-align: left !important;
    margin-bottom: 50px !important;
  }

  section.ri-process .ri-process-grid {
    grid-template-columns: 1fr !important;
    gap: 42px !important;
  }

  section.ri-process .ri-process-icon {
    width: 90px !important;
    height: 90px !important;
  }

  section.ri-process .ri-fa {
    font-size: 2rem !important;
  }

  section.ri-process h2 {
    font-size: clamp(2.5rem, 12vw, 4rem) !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d3f3658 *//* ==================================
   RELENTLESS INK ONLINE STORES
   COMIC BOOK STYLE
================================== */

.ri-stores {
  background:
    radial-gradient(rgba(0,0,0,.08) 1px, transparent 1px),
    #f3f3f3;
  background-size: 18px 18px;
  padding: 120px 24px;
  overflow: visible;
}

.ri-stores-inner {
  max-width: 1320px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 80px;
  align-items: start;
}

/* Sticky Screenshot */

.ri-stores-media {
  position: sticky;
  top: 120px;
  align-self: start;
}

.ri-store-browser {
  position: relative;
  background: #ffffff;
  border-radius: 18px;
  overflow: hidden;
  border: 4px solid #000000;
  box-shadow:
    8px 8px 0 #AF0000,
    14px 14px 0 #000000;
  transform: rotate(-2deg);
  transition: all .3s ease;
}

.ri-store-browser:hover {
  transform: translate(-4px, -4px) rotate(0deg);
  box-shadow:
    12px 12px 0 #AF0000,
    20px 20px 0 #000000;
}

.ri-browser-bar {
  height: 46px;
  background: #000000;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 18px;
  border-bottom: 4px solid #000000;
}

.ri-browser-bar span {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #AF0000;
  border: 2px solid #ffffff;
}

.ri-browser-bar span:nth-child(2) {
  background: #F4B400;
}

.ri-browser-bar span:nth-child(3) {
  background: #ffffff;
}

.ri-store-preview {
  aspect-ratio: 16 / 11;
  background: #ffffff;
  position: relative;
}

.ri-store-preview::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(rgba(0,0,0,.12) 1px, transparent 1px);
  background-size: 10px 10px;
  mix-blend-mode: multiply;
  pointer-events: none;
  opacity: .35;
}

.ri-store-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Content */

.ri-stores .ri-section-label {
  display: inline-block;
  color: #ffffff;
  background: #AF0000;
  border: 3px solid #000000;
  box-shadow: 4px 4px 0 #000000;
  padding: 7px 12px;
  transform: rotate(-2deg);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-bottom: 20px;
}

.ri-stores-content h2 {
  color: #000000;
  font-size: clamp(2.5rem, 5vw, 4.75rem);
  line-height: .98;
  font-weight: 900;
  margin: 0 0 24px;
  text-transform: uppercase;
}

.ri-stores-content p {
  color: #444444;
  font-size: 1.12rem;
  line-height: 1.8;
  margin: 0 0 36px;
  max-width: 680px;
}

/* Comic Timeline Feature List */

.ri-store-features {
  position: relative;
  display: grid;
  gap: 22px;
  margin-bottom: 42px;
  padding-left: 46px;
}

.ri-store-features::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  bottom: 8px;
  width: 4px;
  background: #000000;
  box-shadow: 4px 0 0 #AF0000;
}

.ri-store-features div {
  position: relative;
  background:
    radial-gradient(rgba(0,0,0,.07) 1px, transparent 1px),
    #ffffff;
  background-size: 12px 12px;
  border: 3px solid #000000;
  border-radius: 16px;
  padding: 24px 26px;
  box-shadow: 6px 6px 0 #000000;
  transition: all .25s ease;
}

.ri-store-features div:hover {
  transform: translate(-3px, -3px);
  box-shadow: 9px 9px 0 #AF0000;
}

.ri-store-features div::before {
  content: "";
  position: absolute;
  left: -46px;
  top: 50%;
  width: 46px;
  height: 4px;
  background: #000000;
  transform: translateY(-50%);
}

.ri-store-features div::after {
  content: "";
  position: absolute;
  left: -57px;
  top: 50%;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #F4B400;
  border: 4px solid #000000;
  box-shadow: 3px 3px 0 #AF0000;
  transform: translateY(-50%);
}

.ri-store-features strong {
  display: block;
  color: #000000;
  font-size: 1.08rem;
  font-weight: 900;
  text-transform: uppercase;
  margin-bottom: 6px;
}

.ri-store-features span {
  display: block;
  color: #555555;
  line-height: 1.6;
}

/* Button */

.ri-btn-primary {
  display: inline-block;
  background: #AF0000;
  color: #ffffff;
  padding: 16px 30px;
  border: 3px solid #000000;
  border-radius: 6px;
  box-shadow: 5px 5px 0 #000000;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
  text-decoration: none;
  transition: all .25s ease;
}

.ri-btn-primary:hover {
  background: #000000;
  color: #ffffff;
  transform: translate(-3px, -3px);
  box-shadow: 8px 8px 0 #AF0000;
}

/* Tablet */

@media (max-width: 1024px) {
  .ri-stores-inner {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  .ri-stores-media {
    position: relative;
    top: auto;
    order: 2;
  }

  .ri-stores-content {
    order: 1;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .ri-stores {
    padding: 80px 20px;
  }

  .ri-store-browser {
    border-radius: 14px;
    transform: none;
  }

  .ri-store-browser:hover {
    transform: none;
  }

  .ri-browser-bar {
    height: 38px;
  }

  .ri-stores-content h2 {
    font-size: clamp(2.5rem, 12vw, 3.5rem);
  }

  .ri-store-features {
    padding-left: 34px;
  }

  .ri-store-features div::before {
    left: -34px;
    width: 34px;
  }

  .ri-store-features div::after {
    left: -45px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-bfcb400 *//* ==================================
   RELENTLESS INK FINAL CTA
================================== */

.ri-cta {
    position: relative;
    overflow: hidden;

    background-size: cover;
    background-position: center;

    padding: 140px 24px;
}

.ri-cta-inner {
    position: relative;
    z-index: 2;

    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}

.ri-cta-kicker {
    display: inline-block;

    color: #F4B400;

    font-size: 14px;
    font-weight: 800;

    letter-spacing: 2px;
    text-transform: uppercase;

    margin-bottom: 18px;
}

.ri-cta h2 {
    color: #ffffff;

    font-size: clamp(4rem, 9vw, 7rem);

    line-height: .9;
    font-weight: 900;

    margin: 0 0 25px;
}

.ri-cta p {
    color: rgba(255,255,255,.78);

    font-size: 1.2rem;
    line-height: 1.8;

    max-width: 750px;
    margin: 0 auto 40px;
}

/* Buttons */

.ri-cta-buttons {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;

    margin-bottom: 50px;
}

.ri-btn-primary {
    background: #AF0000;
    color: #ffffff;

    padding: 18px 34px;

    border-radius: 3px;

    font-weight: 800;
    text-decoration: none;

    transition: .25s ease;
}

.ri-btn-primary:hover {
    background: #8e0000;
    color: #fff;

    transform: translateY(-2px);
}

.ri-btn-secondary {
    border: 2px solid rgba(255,255,255,.25);

    color: #ffffff;

    padding: 18px 34px;

    border-radius: 3px;

    font-weight: 800;
    text-decoration: none;

    transition: .25s ease;
}

.ri-btn-secondary:hover {
    border-color: #F4B400;
    color: #ffffff;
}

/* Contact */

.ri-cta-contact {
    display: flex;
    justify-content: center;
    gap: 60px;
    flex-wrap: wrap;
}

.ri-cta-contact strong {
    display: block;

    color: #F4B400;

    margin-bottom: 5px;

    font-size: .9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.ri-cta-contact span {
    color: rgba(255,255,255,.85);
}

/* Mobile */

@media (max-width: 767px) {

    .ri-cta {
        padding: 90px 20px;
    }

    .ri-cta h2 {
        font-size: clamp(3rem, 14vw, 4.5rem);
    }

    .ri-cta-contact {
        gap: 30px;
    }

}/* End custom CSS */