/* ==========================================
   ROOFING & CONSTRUCTION — PAGE-SPECIFIC STYLE
   Same brand palette/type as the rest of the site
   (navy / gold / white, from variables.css) — its
   own layout language lives here, isolated from
   css/industry-page.css and css/home-service-page.css
   so no other page is touched.
========================================== */

/* ==========================================
   HERO — full-bleed cinematic photo, centered
   headline set into a spotlight vignette, slow
   Ken Burns drift, staggered fade-up entrance.
========================================== */

.rc-hero{

    position:relative;

    min-height:100vh;

    display:flex;

    align-items:center;

    justify-content:center;

    overflow:hidden;

    padding-top:120px;

}
.rc-hero__media{

    position:absolute;

    inset:-5%;

    z-index:0;

}
.rc-hero__media img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:center 46%;

    animation:rcHeroZoom 36s ease-in-out infinite alternate;

    will-change:transform;

}
.rc-hero__scrim{

    position:absolute;

    inset:0;

    z-index:0;

    background:

        radial-gradient(ellipse 62% 54% at 50% 40%, rgba(8,21,45,.85) 0%, rgba(8,21,45,.32) 62%, rgba(8,21,45,0) 100%),

        linear-gradient(180deg, rgba(8,21,45,.55) 0%, rgba(8,21,45,.12) 24%, rgba(8,21,45,.12) 68%, rgba(8,21,45,.68) 100%);

}
.rc-hero__grain{

    position:absolute;

    inset:0;

    z-index:0;

    opacity:.05;

    mix-blend-mode:overlay;

    pointer-events:none;

    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");

}
.rc-hero__inner{

    position:relative;

    z-index:1;

    text-align:center;

    margin-top:-48px;

}
.rc-hero__copy{

    max-width:820px;

    margin:0 auto;

}
.rc-hero__tag{

    display:inline-flex;

    align-items:center;

    gap:12px;

    color:var(--color-gold);

    letter-spacing:3px;

    font-size:.82rem;

    font-weight:700;

    text-transform:uppercase;

    margin-bottom:26px;

}
.rc-hero__tag::before,
.rc-hero__tag::after{

    content:"";

    width:28px;

    height:1px;

    background:linear-gradient(90deg, rgba(216,177,75,0), var(--color-gold));

}
.rc-hero__tag::after{

    background:linear-gradient(90deg, var(--color-gold), rgba(216,177,75,0));

}
.rc-hero__copy h1{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(2.4rem, 4.4vw, 3.7rem);

    line-height:1.24;

    letter-spacing:-.5px;

    color:var(--color-white);

    text-shadow:0 10px 34px rgba(0,0,0,.55);

    margin-bottom:28px;

}
.rc-hero__copy h1 em{

    font-style:italic;

    color:var(--color-gold);

}
.rc-hero__lede{

    font-size:1.18rem;

    line-height:1.85;

    color:var(--color-text);

    text-shadow:0 4px 18px rgba(0,0,0,.5);

    max-width:640px;

    margin:0 auto 42px;

}
.rc-hero .hero__buttons{

    justify-content:center;

}
.rc-hero__tag,
.rc-hero__copy h1,
.rc-hero__lede,
.rc-hero .hero__buttons{

    opacity:0;

    animation:rcHeroFadeUp .85s cubic-bezier(.22,.68,0,1) forwards;

}
.rc-hero__tag{ animation-delay:.15s; }
.rc-hero__copy h1{ animation-delay:.32s; }
.rc-hero__lede{ animation-delay:.5s; }
.rc-hero .hero__buttons{ animation-delay:.68s; }

.rc-hero__scrollcue{

    position:absolute;

    left:50%;

    bottom:32px;

    z-index:1;

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:8px;

    color:rgba(255,255,255,.55);

    font-size:.68rem;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    transform:translateX(-50%);

    opacity:0;

    animation:rcHeroFadeUp .8s cubic-bezier(.22,.68,0,1) forwards;

    animation-delay:1s;

}
.rc-hero__scrollcue svg{

    width:16px;

    height:16px;

    animation:rcHeroBob 2.2s ease-in-out infinite;

}
@keyframes rcHeroZoom{

    from{ transform:scale(1); }

    to{ transform:scale(1.09); }

}
@keyframes rcHeroFadeUp{

    from{ opacity:0; transform:translateY(20px); }

    to{ opacity:1; transform:translateY(0); }

}
@keyframes rcHeroBob{

    0%, 100%{ transform:translateY(0); }

    50%{ transform:translateY(6px); }

}
/* ==========================================
   SECTION 2 — THE DISCONNECT
========================================== */

.rc-disconnect{

    background:var(--color-white);

    padding:var(--space-3xl) 0;

}
.rc-disconnect__grid{

    display:grid;

    grid-template-columns:1.05fr .95fr;

    gap:80px;

    align-items:start;

}
.rc-disconnect__copy h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.9rem, 3vw, 2.6rem);

    line-height:1.32;

    letter-spacing:-.5px;

    color:var(--color-background);

}
.rc-disconnect__copy h2 em{

    font-style:italic;

    color:var(--color-gold);

}
.rc-disconnect__bar{

    display:block;

    width:64px;

    height:4px;

    border-radius:var(--radius-pill);

    background:var(--color-gold);

    margin:26px 0 30px;

}
.rc-disconnect__copy p{

    font-size:1.05rem;

    line-height:1.85;

    color:rgba(8,21,45,.68);

}
.rc-disconnect__copy p + p{

    margin-top:20px;

}
.rc-disconnect__card{

    position:relative;

    overflow:hidden;

    background:var(--color-white);

    border:1px solid rgba(8,21,45,.1);

    border-radius:var(--radius-lg);

    box-shadow:var(--shadow-card);

    padding:44px 40px;

}
.rc-disconnect__card-icon{

    position:absolute;

    top:-10px;

    right:-6px;

    width:120px;

    height:120px;

    color:var(--color-background);

    opacity:.05;

}
.rc-disconnect__card h3{

    position:relative;

    font-family:var(--font-heading);

    font-weight:600;

    font-size:1.5rem;

    color:var(--color-background);

    margin-bottom:22px;

}
.rc-disconnect__list{

    position:relative;

}
.rc-disconnect__list li{

    display:flex;

    align-items:flex-start;

    gap:16px;

    padding:18px 0;

    font-size:1.02rem;

    color:rgba(8,21,45,.78);

}
.rc-disconnect__list li + li{

    border-top:1px solid rgba(8,21,45,.08);

}
.rc-disconnect__list li strong{

    color:var(--color-background);

}
.rc-disconnect__icon{

    flex:none;

    display:flex;

    align-items:center;

    justify-content:center;

    width:22px;

    height:22px;

    margin-top:1px;

}
.rc-disconnect__icon svg{

    width:100%;

    height:100%;

}
.rc-disconnect__list li.is-bad .rc-disconnect__icon{ color:#C0433A; }
.rc-disconnect__list li.is-good .rc-disconnect__icon{ color:var(--color-gold); }

/* ==========================================
   SECTION 3 — REAL PROBLEMS. REAL SEARCHES.
   (hover-triggered card animations)
========================================== */

.rc-searches{

    background:var(--color-background-alt);

    padding:var(--space-3xl) 0;

}
.rc-searches__head{

    max-width:640px;

    margin:0 auto 60px;

    text-align:center;

}
.rc-searches__head h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(2rem, 3.4vw, 2.6rem);

    color:var(--color-white);

    letter-spacing:-.5px;

    margin-bottom:16px;

}
.rc-searches__head p{

    font-size:1.1rem;

    color:var(--color-text);

}
.rc-searches__grid{

    display:grid;

    grid-template-columns:repeat(3, 1fr);

    gap:32px;

}

/* -- card shell -- */

.rc-search-card{

    position:relative;

    overflow:hidden;

    background:var(--color-white);

    border-radius:var(--radius-lg);

    padding:36px 30px 34px;

    box-shadow:var(--shadow-card);

    transition:transform .35s ease, box-shadow .35s ease;

}
.rc-search-card:hover{

    transform:translateY(-6px);

    box-shadow:0 30px 60px rgba(0,0,0,.35);

}
.rc-search-card__tag{

    position:relative;

    z-index:1;

    display:flex;

    align-items:center;

    gap:10px;

    color:var(--color-gold);

    font-size:.78rem;

    font-weight:700;

    letter-spacing:1.6px;

    text-transform:uppercase;

    margin-bottom:22px;

}
.rc-search-card__tag svg{

    width:18px;

    height:18px;

    flex:none;

}
.rc-search-card h3{

    position:relative;

    z-index:1;

    font-family:var(--font-heading);

    font-weight:600;

    font-size:1.4rem;

    line-height:1.35;

    color:var(--color-background);

    margin-bottom:14px;

}
.rc-search-card p{

    position:relative;

    z-index:1;

    font-size:.95rem;

    line-height:1.7;

    color:rgba(8,21,45,.62);

}

/* -- card 1: leak drip -- */

.rc-search-card__fx{

    position:absolute;

    inset:0;

    z-index:0;

    pointer-events:none;

}
.rc-drip{

    position:absolute;

    top:-12%;

    width:5px;

    height:22px;

    border-radius:3px 3px 10px 10px;

    background:linear-gradient(180deg, rgba(93,164,255,.05), rgba(72,142,235,.65));

    opacity:0;

}
.rc-drip--1{ left:18%; }
.rc-drip--2{ left:50%; }
.rc-drip--3{ left:80%; }

.rc-search-card--leak:hover .rc-drip--1{ animation:rcDrip 1.7s ease-in .05s infinite; }
.rc-search-card--leak:hover .rc-drip--2{ animation:rcDrip 2s ease-in .5s infinite; }
.rc-search-card--leak:hover .rc-drip--3{ animation:rcDrip 1.5s ease-in .95s infinite; }

@keyframes rcDrip{

    0%{ top:-12%; opacity:0; transform:scaleY(.7); }

    12%{ opacity:.85; }

    78%{ opacity:.7; }

    100%{ top:104%; opacity:0; transform:scaleY(1.5); }

}

/* -- card 2: blueprint draw-on -- */

.rc-search-card__blueprint{

    position:absolute;

    left:0;

    right:0;

    bottom:0;

    width:100%;

    height:142px;

    z-index:0;

    pointer-events:none;

}
.rc-search-card__blueprint .bp-line{

    fill:none;

    stroke:var(--color-gold);

    stroke-width:1.1;

    stroke-linecap:round;

    stroke-linejoin:round;

    opacity:.55;

    stroke-dasharray:1000;

    stroke-dashoffset:1000;

}
.rc-search-card__blueprint .bp-line--bold{

    stroke-width:1.8;

    opacity:.7;

}
.rc-search-card--plans:hover .bp-line{

    animation-name:rcDraw;

    animation-duration:1.3s;

    animation-timing-function:ease;

    animation-fill-mode:forwards;

    animation-delay:calc(var(--i, 0) * .06s);

}

@keyframes rcDraw{ to{ stroke-dashoffset:0; } }

/* -- card 3: search bar typing + result -- */

.rc-search-card__mockbar{

    position:relative;

    z-index:1;

    display:flex;

    align-items:center;

    gap:10px;

    margin-top:24px;

    padding:12px 16px;

    border:1px solid rgba(8,21,45,.14);

    border-radius:var(--radius-pill);

    background:rgba(8,21,45,.04);

    transition:border-color .3s ease, background-color .3s ease;

}
.rc-search-card__mockbar-icon{

    width:16px;

    height:16px;

    flex:none;

    color:rgba(8,21,45,.4);

}
.rc-search-card__mocktype{

    position:relative;

    display:inline-block;

    white-space:nowrap;

    font-size:.88rem;

    font-weight:600;

    color:var(--color-background);

    clip-path:inset(0 100% 0 0);

}
.rc-search-card--query:hover .rc-search-card__mocktype{

    animation:rcType 1.5s steps(41,end) forwards;

}
@keyframes rcType{ to{ clip-path:inset(0 0 0 0); } }

.rc-search-card__mockcaret{

    position:absolute;

    top:1px;

    left:0;

    width:2px;

    height:1em;

    background:var(--color-background);

    opacity:0;

}
.rc-search-card--query:hover .rc-search-card__mockcaret{

    animation:rcCaretMove 1.5s steps(41,end) forwards, rcBlink .8s steps(1,end) infinite;

}
@keyframes rcCaretMove{ to{ left:100%; } }
@keyframes rcBlink{ 0%,49%{ opacity:1; } 50%,100%{ opacity:0; } }

.rc-search-card--query:hover .rc-search-card__mockbar{

    animation:rcEnterFlash .5s ease;

    animation-delay:1.5s;

}
@keyframes rcEnterFlash{

    0%{ border-color:rgba(8,21,45,.14); background-color:rgba(8,21,45,.04); }

    45%{ border-color:var(--color-gold); background-color:rgba(216,177,75,.14); }

    100%{ border-color:rgba(8,21,45,.14); background-color:rgba(8,21,45,.04); }

}
.rc-search-card__mockresult{

    position:relative;

    z-index:1;

    display:flex;

    align-items:center;

    gap:10px;

    margin-top:14px;

    padding:10px 16px;

    border-radius:var(--radius-pill);

    background:rgba(216,177,75,.14);

    color:var(--color-background);

    font-size:.85rem;

    font-weight:700;

    opacity:0;

    transform:translateY(6px);

}
.rc-search-card--query:hover .rc-search-card__mockresult{

    animation:rcResultIn .5s ease forwards;

    animation-delay:1.75s;

}
@keyframes rcResultIn{ to{ opacity:1; transform:translateY(0); } }

.rc-search-card__mockresult-check{

    width:18px;

    height:18px;

    flex:none;

    color:var(--color-gold);

}
.rc-search-card__mockresult-check svg{

    width:100%;

    height:100%;

}

/* ==========================================
   SECTION 4 — THE STEPPING STONE
   (image grows into place on scroll)
========================================== */

.rc-stepping{

    background:var(--color-white);

    padding:var(--space-3xl) 0;

}
.rc-stepping__grid{

    display:flex;

    align-items:center;

    gap:80px;

}
.rc-stepping__media{

    position:relative;

    flex:none;

    width:38%;

    transition:width 2.6s cubic-bezier(.16,.8,.24,1);

    will-change:width;

}
.rc-stepping__media.is-visible{

    width:56%;

}
.rc-stepping__frame{

    position:relative;

    overflow:hidden;

    border-radius:var(--radius-lg);

    box-shadow:var(--shadow-card);

    aspect-ratio:4/3;

}
.rc-stepping__img{

    width:100%;

    height:100%;

    object-fit:cover;

}
.rc-stepping__copy{

    flex:1;

    min-width:0;

    max-width:520px;

    opacity:0;

    transform:translateY(24px);

    transition:opacity .7s ease, transform .7s ease;

}
.rc-stepping__copy.is-visible{

    opacity:1;

    transform:translateY(0);

}
.rc-stepping__tag{

    display:inline-block;

    color:var(--color-gold);

    letter-spacing:2.5px;

    font-size:.8rem;

    font-weight:700;

    text-transform:uppercase;

    margin-bottom:18px;

}
.rc-stepping__copy h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.9rem, 3vw, 2.5rem);

    line-height:1.32;

    letter-spacing:-.5px;

    color:var(--color-background);

    margin-bottom:26px;

}
.rc-stepping__copy p{

    font-size:1.05rem;

    line-height:1.85;

    color:rgba(8,21,45,.68);

}
.rc-stepping__copy p + p{

    margin-top:20px;

}

/* ==========================================
   SECTION 5 — OUR METHODOLOGY
========================================== */

.rc-method{

    background:var(--color-background);

    padding:var(--space-3xl) 0;

}
.rc-method__head{

    max-width:640px;

    margin:0 auto 64px;

    text-align:center;

}
.rc-method__head h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(2rem, 3.4vw, 2.6rem);

    color:var(--color-white);

    letter-spacing:-.5px;

    margin-bottom:16px;

}
.rc-method__head p{

    font-size:1.1rem;

    color:var(--color-text);

}
.rc-method__grid{

    display:grid;

    grid-template-columns:repeat(4, 1fr);

    gap:20px 44px;

}
.rc-method__item{

    padding-top:28px;

    border-top:1px solid rgba(255,255,255,.14);

    opacity:0;

    transform:translateY(20px);

    transition:opacity .6s ease, transform .6s ease;
}
.rc-method__item.is-visible{

    opacity:1;

    transform:translateY(0);

}
.rc-method__item:nth-child(1){ transition-delay:0s; }
.rc-method__item:nth-child(2){ transition-delay:.1s; }
.rc-method__item:nth-child(3){ transition-delay:.2s; }
.rc-method__item:nth-child(4){ transition-delay:.3s; }
.rc-method__icon{

    width:26px;

    height:26px;

    color:var(--color-gold);

    margin-bottom:18px;

}
.rc-method__item h3{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:1.28rem;

    line-height:1.3;

    color:var(--color-white);

    margin-bottom:14px;

}
.rc-method__item p{

    font-size:.95rem;

    line-height:1.7;

    color:var(--color-text);

}

/* ==========================================
   SECTION 6 — THE MOMENT OF TRUTH
========================================== */

.rc-truth{

    background:var(--color-white);

    padding:var(--space-3xl) 0;

    overflow:hidden;

}
.rc-truth__grid{

    display:grid;

    grid-template-columns:.92fr 1.08fr;

    gap:70px;

    align-items:center;

}
.rc-truth__tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:#C0433A;

    letter-spacing:2.5px;

    font-size:.8rem;

    font-weight:700;

    text-transform:uppercase;

    margin-bottom:20px;

}
.rc-truth__tag svg{

    width:16px;

    height:16px;

    flex:none;

}
.rc-truth__copy h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.9rem, 3vw, 2.5rem);

    line-height:1.28;

    letter-spacing:-.5px;

    color:var(--color-background);

    margin-bottom:24px;

}
.rc-truth__copy p{

    font-size:1.05rem;

    line-height:1.8;

    color:rgba(8,21,45,.68);

}
.rc-truth__copy p + p{

    margin-top:18px;

}
.rc-truth__copy p.rc-truth__lead-in{

    font-weight:700;

    color:var(--color-background);

}
.rc-truth__options{

    margin:16px 0 24px;

    display:flex;

    flex-direction:column;

    gap:12px;

}
.rc-truth__options li{

    display:flex;

    align-items:flex-start;

    gap:12px;

    font-size:1rem;

    line-height:1.7;

    color:rgba(8,21,45,.68);

}
.rc-truth__opt-icon{

    flex:none;

    width:20px;

    height:20px;

    margin-top:2px;

}
.rc-truth__options li.is-bad .rc-truth__opt-icon{ color:#C0433A; }
.rc-truth__options li.is-good .rc-truth__opt-icon{ color:var(--color-gold); }

.rc-truth__options li.is-good{

    color:var(--color-background);

    background:linear-gradient(135deg, rgba(216,177,75,.16), rgba(216,177,75,.05));

    border:1px solid rgba(216,177,75,.4);

    border-radius:var(--radius-md);

    padding:16px 18px;

    box-shadow:0 14px 32px rgba(216,177,75,.14);

}
.rc-truth__options li.is-good strong{

    color:var(--color-background);

}
.rc-truth__copy p.rc-truth__closing{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:1.24rem;

    line-height:1.5;

    color:var(--color-background);

    border-top:1px solid rgba(8,21,45,.12);

    padding-top:22px;

    margin-top:6px;

}

/* -- media: glow, frame, ambient rain -- */

.rc-truth__media{

    position:relative;

}
.rc-truth__glow{

    position:absolute;

    inset:-16% -12%;

    background:radial-gradient(closest-side, rgba(216,177,75,.35), rgba(216,177,75,0) 68%);

    filter:blur(34px);

    z-index:0;

    pointer-events:none;

}
.rc-truth__frame{

    position:relative;

    z-index:1;

    overflow:hidden;

    border-radius:var(--radius-lg);

    aspect-ratio:4/3;

    box-shadow:

        inset 0 0 70px rgba(0,0,0,.28),

        0 40px 90px rgba(8,21,45,.4);

}
.rc-truth__img{

    width:100%;

    height:100%;

    object-fit:cover;

    animation:rcTruthZoom 26s ease-in-out infinite alternate;

    will-change:transform;

}
@keyframes rcTruthZoom{

    from{ transform:scale(1); }

    to{ transform:scale(1.08); }

}

/* ==========================================
   SECTION 7 — FINAL CTA
========================================== */

.rc-cta{

    position:relative;

    background:var(--color-background);

    padding:var(--space-3xl) 0 var(--space-lg);

    overflow:hidden;

}
.rc-cta__glow{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    pointer-events:none;

    z-index:0;

}
.rc-cta__glow--one{

    width:560px;

    height:560px;

    top:-260px;

    left:4%;

    background:radial-gradient(circle, rgba(216,177,75,.24), rgba(216,177,75,0) 70%);

}
.rc-cta__glow--two{

    width:460px;

    height:460px;

    bottom:-220px;

    right:6%;

    background:radial-gradient(circle, rgba(216,177,75,.14), rgba(216,177,75,0) 70%);

}
.rc-cta__card{

    position:relative;

    z-index:1;

    max-width:760px;

    margin:0 auto;

    text-align:center;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(216,177,75,.22);

    border-radius:calc(var(--radius-lg) + 6px);

    padding:66px 60px;

    backdrop-filter:blur(18px);

    -webkit-backdrop-filter:blur(18px);

    box-shadow:0 40px 90px rgba(0,0,0,.35);

}
.rc-cta__tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:var(--color-gold);

    letter-spacing:2.5px;

    font-size:.8rem;

    font-weight:700;

    text-transform:uppercase;

    margin-bottom:22px;

}
.rc-cta__tag-dot{

    width:7px;

    height:7px;

    border-radius:50%;

    background:var(--color-gold);

    box-shadow:0 0 0 4px rgba(216,177,75,.22);

    animation:rcCtaPulse 2.4s ease-in-out infinite;

}
@keyframes rcCtaPulse{

    0%, 100%{ box-shadow:0 0 0 4px rgba(216,177,75,.22); }

    50%{ box-shadow:0 0 0 8px rgba(216,177,75,.1); }

}
.rc-cta__card h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(2rem, 3.6vw, 2.7rem);

    line-height:1.28;

    color:var(--color-white);

    letter-spacing:-.5px;

    margin-bottom:22px;

}
.rc-cta__card > p{

    font-size:1.1rem;

    line-height:1.8;

    color:var(--color-text);

    max-width:580px;

    margin:0 auto 36px;

}
.rc-cta__trust{

    display:flex;

    align-items:center;

    justify-content:center;

    flex-wrap:wrap;

    gap:12px 28px;

    margin-top:34px;

    padding-top:28px;

    border-top:1px solid rgba(255,255,255,.14);

}
.rc-cta__trust span{

    display:inline-flex;

    align-items:center;

    gap:8px;

    font-size:.85rem;

    font-weight:600;

    color:var(--color-text);

}
.rc-cta__trust-check{

    flex:none;

    width:19px;

    height:19px;

    border-radius:50%;

    background:rgba(216,177,75,.16);

    color:var(--color-gold);

    display:inline-flex;

    align-items:center;

    justify-content:center;

}
.rc-cta__trust-check svg{ width:11px; height:11px; }

@media (max-width:900px){

    .rc-hero{ min-height:92vh; padding:130px 0 60px; }

    .rc-hero__scrollcue{ display:none; }

    .rc-disconnect__grid{ grid-template-columns:1fr; gap:44px; }

    .rc-disconnect__card{ padding:36px 28px; }

    .rc-searches__grid{ grid-template-columns:1fr; gap:26px; }

    .rc-stepping__grid{ flex-direction:column; gap:40px; }

    .rc-stepping__media,
    .rc-stepping__media.is-visible{ width:100%; }

    .rc-stepping__copy{ max-width:none; }

    .rc-method__grid{ grid-template-columns:1fr 1fr; gap:36px 40px; }

    .rc-truth__grid{ grid-template-columns:1fr; gap:44px; }

}
@media (max-width:560px){

    .rc-hero{ padding:70px 0 50px; }

    .rc-method__grid{ grid-template-columns:1fr; gap:32px; }

}
@media (max-width:700px){

    .rc-cta__card{ padding:48px 26px; }

    .rc-cta__trust{ flex-direction:column; gap:12px; }

}
@media (prefers-reduced-motion: reduce){

    .rc-hero__media img{ animation:none; }

    .rc-hero__tag,
    .rc-hero__copy h1,
    .rc-hero__lede,
    .rc-hero .hero__buttons,
    .rc-hero__scrollcue,
    .rc-hero__scrollcue svg{

        animation:none;

        opacity:1;

    }

    .rc-search-card:hover{ transform:none; }

    .rc-drip,
    .rc-search-card--leak:hover .rc-drip--1,
    .rc-search-card--leak:hover .rc-drip--2,
    .rc-search-card--leak:hover .rc-drip--3{ animation:none; opacity:0; }

    .rc-search-card--plans:hover .bp-line{ animation:none; }

    .rc-search-card--query:hover .rc-search-card__mocktype{ animation:none; clip-path:inset(0 0 0 0); }

    .rc-search-card--query:hover .rc-search-card__mockcaret{ animation:none; opacity:0; }

    .rc-search-card--query:hover .rc-search-card__mockbar{ animation:none; }

    .rc-search-card--query:hover .rc-search-card__mockresult{ animation:none; opacity:1; transform:none; }

    .rc-stepping__media{ transition:none; width:48%; }

    .rc-stepping__copy{ transition:none; opacity:1; transform:none; }

    .rc-method__item{ transition:none; opacity:1; transform:none; }

    .rc-truth__img{ animation:none; }

    .rc-cta__tag-dot{ animation:none; }

}
