/*
Theme Name: Results Digital
Theme URI: https://resultsdigital.io
Description: Clean Divi 5 child theme for the Results Digital website rebuild. Custom CSS/JS and PHP live here so they survive Divi updates.
Author: Results Digital
Author URI: https://resultsdigital.io
Template: Divi
Version: 1.0.0
Text Domain: results-digital
*/

/* Results Digital custom styles */
:root{
  --rd-navy:#06172E; --rd-deep:#03101F; --rd-card:#0B2545;
  --rd-cyan:#1FD9EE; --rd-blue:#2F9BF5; --rd-cyan-bright:#7FF0FB;
  --rd-text:#BBD3E8; --rd-text-2:#A9C4DC; --rd-muted:#9FB6CE; --rd-faint:#7C9AB8;
  --rd-light:#F4F8FC; --rd-cream:#F7F5EF;
}

/* CTA bounce (signature wiggle) */
@keyframes ctaBounce{
  0%,55%{transform:rotate(0deg);}
  58%{transform:rotate(-4deg);} 61%{transform:rotate(4deg);}
  64%{transform:rotate(-3deg);} 67%{transform:rotate(3deg);}
  70%,100%{transform:rotate(0deg);}
}
.cta-bounce{display:inline-block;animation:ctaBounce 3.2s ease-in-out infinite;}
.cta-bounce:hover{animation-play-state:paused;}

/* ============================================================
   HEADER
   ============================================================ */
#site-header{
  z-index:1000;
  background:rgba(6,23,46,0.92)!important;
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
  border-bottom:1px solid rgba(255,255,255,0.08);
  padding:16px 0!important;
}
/* keep the translucent look while Divi's native sticky holds it in place */
#site-header.et_pb_sticky,#site-header.et_pb_section--sticky{background:rgba(6,23,46,0.92)!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
#site-header .et_pb_menu{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;background:transparent!important;}
#site-header .et_pb_menu__logo-wrap,#site-header .et_pb_menu__logo{max-width:none;}
#site-header img{height:38px!important;width:auto!important;}
@media(min-width:981px){#site-header .et-menu{display:flex;flex-wrap:nowrap;align-items:center;gap:26px;}}
#site-header .et-menu>li{margin:0!important;padding:0!important;}
#site-header .et-menu>li>a{
  color:#E8F1FA!important;font-family:'Barlow',sans-serif;font-weight:600;font-size:14px;
  letter-spacing:.02em;padding:0;opacity:1;
}
#site-header .et-menu>li>a:hover{color:var(--rd-cyan)!important;}
/* active page — WordPress adds these classes to the nav item for the current page.
   :not(.nav-cta) keeps the gradient CTA pill from being recoloured. */
#site-header .et-menu>li.current-menu-item:not(.nav-cta)>a,
#site-header .et-menu>li.current_page_item:not(.nav-cta)>a,
#site-header .et-menu>li.current-menu-ancestor:not(.nav-cta)>a,
#site-header .et-menu>li.current-menu-parent:not(.nav-cta)>a,
#site-header .et-menu>li.current_page_parent:not(.nav-cta)>a{color:var(--rd-cyan)!important;}
/* submenu entries (e.g. a single trade under Marketing Services) */
#site-header .et-menu li ul.sub-menu li.current-menu-item>a,
#site-header .et-menu li ul.sub-menu li.current_page_item>a{color:var(--rd-cyan)!important;}
/* dropdown */
#site-header .et-menu li ul.sub-menu,
#site-header .et-menu li li{background:var(--rd-deep)!important;}
#site-header .et-menu li ul.sub-menu{
  border:1px solid rgba(31,217,238,0.25);border-radius:14px;padding:8px;min-width:240px;
  box-shadow:0 24px 60px rgba(0,0,0,.5);
}
#site-header .et-menu li ul.sub-menu a{color:#E8F1FA!important;border-radius:9px;padding:10px 12px!important;}
#site-header .et-menu li ul.sub-menu a:hover{background:rgba(31,217,238,.12);color:var(--rd-cyan)!important;}
/* CTA pill in nav */
#site-header .et-menu>li.nav-cta>a{
  background:linear-gradient(90deg,var(--rd-cyan),var(--rd-blue));
  color:var(--rd-deep)!important;border-radius:999px;padding:13px 22px!important;
  font-family:'Archivo',sans-serif;font-weight:700;white-space:nowrap;
}
#site-header .et-menu>li.nav-cta{margin-left:6px!important;}
/* dropdown caret color */
#site-header .et-menu>li a .et-menu-icon,#site-header .et-menu li>a:after{color:var(--rd-cyan)!important;}

/* ============================================================
   FOOTER
   ============================================================ */
#site-footer{padding-top:0;}
#site-footer .footer-cta-card{
  background:var(--rd-cream)!important;border-radius:20px;
  padding:28px 34px!important;display:flex;flex-wrap:wrap;align-items:center;
  justify-content:space-between;gap:20px;margin:0 auto 44px!important;max-width:1180px;
  box-shadow:0 26px 60px rgba(0,0,0,.35);
}
#site-footer .footer-cta-card .et_pb_column{width:auto!important;margin:0!important;}
#site-footer .footer-cta-card h3{color:var(--rd-card)!important;font-family:'Archivo';font-weight:800;font-size:28px;line-height:1.15;margin:0;}
#site-footer .footer-cta-btn.et_pb_button{
  background:var(--rd-card)!important;color:#fff!important;border:none!important;border-radius:999px!important;
  padding:16px 30px!important;font-family:'Archivo';font-weight:700;font-size:15px;
}
#site-footer .footer-cta-btn.et_pb_button:after{display:none!important;}
#site-footer .footer-cta-btn.et_pb_button:hover{background:var(--rd-cyan)!important;color:var(--rd-deep)!important;}
#site-footer .footer-main{max-width:1180px;margin:0 auto!important;}
#site-footer .footer-logo img{height:44px;width:auto;}
#site-footer .footer-tagline p{color:var(--rd-text-2)!important;font-size:16px;max-width:280px;margin-top:18px;}
#site-footer .footer-contact h4{color:#fff!important;font-family:'Archivo';font-weight:700;font-size:16px;margin:0 0 14px;}
#site-footer .footer-contact a{color:var(--rd-text-2)!important;}
#site-footer .footer-contact a:hover{color:var(--rd-cyan)!important;}
#site-footer .footer-bottom{max-width:1180px;margin:30px auto 0!important;border-top:1px solid rgba(255,255,255,.12);padding-top:22px;}
#site-footer .footer-bottom p{color:var(--rd-faint)!important;font-size:14px;margin:0;}

/* Mobile */
/* mobile: let Divi's native hamburger menu handle the nav */

/* ============================================================
   HOMEPAGE
   ============================================================ */
.rd-sec .et_pb_row{width:100%!important;max-width:1280px!important;}
.rd-hero{background:radial-gradient(1100px 620px at 78% -10%,rgba(47,155,245,.32),transparent 60%),radial-gradient(760px 520px at 8% 106%,rgba(31,217,238,.18),transparent 62%),#0B2545!important;padding:clamp(48px,5vw,80px) 0 clamp(40px,5vw,72px)!important;}
.rd-hero-inner{max-width:1280px;margin:0 auto;display:flex;flex-wrap:wrap;gap:clamp(28px,4vw,64px);align-items:center;}
.rd-hero-copy{flex:1 1 440px;min-width:0;}
.rd-eyebrow-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid rgba(31,217,238,.4);border-radius:999px;margin-bottom:26px;}
.rd-eyebrow-pill .dot{width:7px;height:7px;border-radius:50%;background:#1FD9EE;display:block;}
.rd-eyebrow-pill .lbl{font:600 12px/1 'Barlow';letter-spacing:.16em;text-transform:uppercase;color:#9FE8F5!important;}
.rd-hero-h1{margin:0;font-family:'Archivo';font-weight:800;font-size:clamp(40px,5.6vw,76px);line-height:.98;letter-spacing:-.025em;color:#fff!important;}
.rd-hero-h1 .grad{background:linear-gradient(90deg,#1FD9EE,#6BC8FF);-webkit-background-clip:text;background-clip:text;color:transparent!important;}
.rd-hero-sub{margin:26px 0 0;max-width:520px;font:400 clamp(16px,1.3vw,19px)/1.6 'Barlow';color:#BBD3E8!important;}
.rd-hero-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px;}
.rd-btn{display:inline-block;padding:17px 30px;border-radius:999px;font:700 16px/1 'Archivo';text-decoration:none;}
.rd-btn-grad{background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F!important;}
.rd-btn-ghost{border:1px solid rgba(255,255,255,.28);color:#fff!important;}
.rd-btn-ghost:hover{border-color:#1FD9EE;color:#1FD9EE!important;}
.rd-hero-media{flex:1 1 380px;min-width:0;position:relative;}
.rd-hero-media video,.rd-hero-media img{width:100%;aspect-ratio:4/5;max-height:600px;object-fit:cover;border-radius:26px;border:1px solid rgba(31,217,238,.3);box-shadow:0 40px 90px rgba(0,0,0,.45);background:#06172E;display:block;}
.rd-hero-badge{position:absolute;bottom:-18px;left:-10px;padding:22px 30px;background:#03101F;border:1px solid rgba(31,217,238,.3);border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.5);}
.rd-hero-badge .big{font:800 clamp(26px,3.4vw,42px)/1 'Archivo';color:#1FD9EE!important;}
.rd-hero-badge .small{margin-top:6px;font:500 clamp(12px,1.2vw,15px)/1.3 'Barlow';letter-spacing:.1em;text-transform:uppercase;color:#8FAFCB!important;}
.rd-hero-stats{max-width:1280px;margin:clamp(44px,6vw,80px) auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:18px;overflow:hidden;}
.rd-hero-stats .stat{background:#06172E;padding:26px 24px;}
.rd-hero-stats .stat .k{font:800 clamp(22px,2.4vw,32px)/1 'Archivo';color:#fff!important;}
.rd-hero-stats .stat .v{margin-top:8px;font:500 12px/1.4 'Barlow';letter-spacing:.11em;text-transform:uppercase;color:#8FAFCB!important;}
@media(max-width:980px){.rd-hero-stats{grid-template-columns:1fr;}}

/* shared homepage type */
.rd-h2{font-family:'Archivo';font-weight:800;font-size:clamp(30px,3.6vw,50px);line-height:1.04;letter-spacing:-.02em;margin:0;}
.rd-h2.navy{color:#0B2545!important;} .rd-h2.white{color:#fff!important;} .rd-h2.center{text-align:center;}
.rd-h2 .blue{color:#2F9BF5!important;}
.rd-h3{font:700 19px/1.3 'Archivo';} .rd-h3.navy{color:#0B2545!important;}
.rd-eyebrow{font:600 12px/1 'Barlow';letter-spacing:.18em;text-transform:uppercase;} .rd-eyebrow.blue{color:#2F9BF5!important;}
.rd-lead{font:400 17px/1.65 'Barlow';color:#41618A!important;} .rd-lead.light{color:#BBD3E8!important;}
.rd-btn-navy{background:#0B2545;color:#fff!important;}
.rd-btn-cyanline{border:1px solid #1FD9EE;color:#1FD9EE!important;} .rd-btn-cyanline:hover{background:#1FD9EE;color:#03101F!important;}

/* ABOUT */
.rd-about{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-about-inner{max-width:1280px;margin:0 auto;display:flex;flex-wrap:wrap;gap:clamp(30px,4vw,70px);align-items:flex-start;}
.rd-about-media{flex:1 1 380px;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.rd-about-media .a-wide{grid-column:1/span 2;aspect-ratio:16/10;border-radius:20px;overflow:hidden;}
.rd-about-media .a-sq{aspect-ratio:1/1;border-radius:20px;overflow:hidden;}
.rd-about-media img{width:100%;height:100%;object-fit:cover;display:block;}
.rd-about-media .a-stat{aspect-ratio:1/1;border-radius:20px;background:#0B2545;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;}
.a-stat .big{font:800 clamp(32px,4.2vw,52px)/1 'Archivo';color:#1FD9EE!important;} .a-stat .small{margin-top:10px;font:500 15px/1.45 'Barlow';color:#BBD3E8!important;}
.rd-about-copy{flex:1 1 440px;min-width:0;}
.rd-about-copy .rd-h2{margin-top:16px;} .rd-about-copy .rd-lead{margin-top:20px;} .rd-about-copy .rd-h3{margin-top:34px;}
.rd-why{display:flex;flex-direction:column;margin-top:18px;border-top:1px solid #D9E5F1;}
.why-row{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid #D9E5F1;}
.why-row .check{flex:0 0 auto;width:20px;height:20px;margin-top:2px;border-radius:50%;background:#1FD9EE;display:flex;align-items:center;justify-content:center;font:700 11px/1 'Archivo';color:#03101F!important;}
.why-row p{margin:0;font:400 16px/1.55 'Barlow';color:#41618A!important;} .why-row strong{color:#0B2545!important;font-weight:600;}
.rd-btn-navy{display:inline-block;margin-top:30px;padding:16px 30px;border-radius:999px;font:700 15px/1 'Archivo';}

/* SERVICES */
.rd-services{background:#fff!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-services .rd-h2{margin-top:16px;max-width:820px;}
.rd-services-grid{margin-top:clamp(28px,3.5vw,52px);display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:#DDE8F3;border:1px solid #DDE8F3;border-radius:22px;overflow:hidden;}
.rd-service{background:#fff;padding:30px 26px 34px;display:flex;flex-direction:column;gap:12px;text-decoration:none;}
.rd-service:hover{background:#F4F8FC;}
.rd-service .num{font:700 12px/1 'Archivo';letter-spacing:.14em;color:#8FAFCB!important;}
.rd-service .t{font:700 20px/1.2 'Archivo';color:#0B2545!important;}
.rd-service .d{font:400 15px/1.6 'Barlow';color:#5A7AA0!important;}
.rd-service .more{margin-top:auto;padding-top:18px;font:600 13px/1 'Barlow';letter-spacing:.06em;color:#2F9BF5!important;}

/* INDUSTRIES */
.rd-industries{background:linear-gradient(160deg,#0B2545,#123A6B 55%,#0B2545)!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-quote{margin:24px 0 0;max-width:860px;padding-left:22px;border-left:3px solid #1FD9EE;font:400 17px/1.65 'Barlow';color:#C7DCEE!important;} .rd-quote strong{color:#fff!important;font-weight:600;}
.rd-ind-cols{margin-top:clamp(32px,4vw,60px);display:flex;flex-wrap:wrap;gap:clamp(28px,3.5vw,56px);}
.rd-ind-left{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:28px;}
.rd-ind-left .anchor h3{margin:0;font:700 clamp(19px,2vw,23px)/1.25 'Archivo';color:#1FD9EE!important;}
.rd-ind-left .anchor p{margin:10px 0 0;font:400 16px/1.6 'Barlow';color:#BBD3E8!important;}
.rd-ind-left .rd-btn{align-self:flex-start;}
.rd-ind-right{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:10px;}
.rd-ind-right .trade{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.03);}
.rd-ind-right .trade:hover{border-color:#1FD9EE;background:rgba(31,217,238,.08);}
.rd-ind-right .trade span:first-child{font:500 16px/1.35 'Barlow';color:#E8F1FA!important;} .rd-ind-right .trade .chk{font:700 13px/1 'Archivo';color:#1FD9EE!important;}

/* YOUTUBE */
.rd-youtube{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-yt-main{display:block;margin-top:clamp(26px,3vw,44px);position:relative;width:100%;aspect-ratio:16/9;border-radius:22px;overflow:hidden;box-shadow:0 30px 70px rgba(11,37,69,.18);cursor:pointer;}
.rd-yt-main img{width:100%;height:100%;object-fit:cover;display:block;}
.rd-yt-grid{margin-top:16px;display:flex;gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;padding-bottom:8px;scrollbar-width:thin;}
.rd-yt-grid::-webkit-scrollbar{height:6px;}
.rd-yt-grid::-webkit-scrollbar-thumb{background:#D9E5F1;border-radius:999px;}
.rd-yt-grid .rd-yt-card{flex:0 0 auto;width:min(46vw,260px);scroll-snap-align:start;}
@media(max-width:600px){.rd-yt-grid .rd-yt-card{width:78vw;}}
.rd-yt-card{display:block;position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:border-color .3s,transform .3s;}
.rd-yt-card:hover{border-color:#1FD9EE;transform:translateY(-4px) scale(1.02);}
.rd-yt-card img{width:100%;height:100%;object-fit:cover;display:block;}
.rd-yt-main .play,.rd-yt-card .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;color:#0B2545!important;font-family:'Archivo';font-weight:700;}
.rd-yt-main .play{width:64px;height:64px;font-size:20px;} .rd-yt-card .play.sm{width:38px;height:38px;font-size:13px;}

/* GROW */
.rd-grow{background:#06172E!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-grow-inner{max-width:1280px;margin:0 auto;display:flex;flex-wrap:wrap;gap:clamp(30px,4vw,64px);align-items:center;}
.rd-grow-copy{flex:1 1 420px;min-width:0;}
.rd-grow-tag{margin:22px 0 0;padding-left:20px;border-left:3px solid #1FD9EE;font:700 18px/1.4 'Archivo';color:#1FD9EE!important;}
.rd-grow-copy .rd-lead{margin-top:16px;max-width:520px;} .rd-grow-copy .rd-lead:first-of-type{margin-top:24px;}
.rd-grow-media{flex:1 1 380px;min-width:0;aspect-ratio:4/3;border-radius:22px;overflow:hidden;border:1px solid rgba(31,217,238,.25);}
.rd-grow-media img{width:100%;height:100%;object-fit:cover;display:block;}

@media(max-width:980px){.rd-about-media{grid-template-columns:1fr 1fr;}}

/* homepage link/underline reset + overflow guard */
.rd-sec a,.rd-sec a *{text-decoration:none!important;}
.rd-sec{overflow:hidden;}
.rd-sec .et_pb_text{width:100%;}

.rd-service{position:relative;} .rd-service .more{position:static;} .rd-service .more::after{content:"";position:absolute;inset:0;}

.rd-eyebrow.center{display:block;text-align:center;} .rd-eyebrow.dark{color:#053349!important;}
.rd-h2.dark{color:#03242F!important;} .rd-h2 .white{color:#fff!important;}

/* CLICKS */
.rd-clicks{background:#fff!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-clicks-head{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-end;justify-content:space-between;}
.rd-clicks-head .rd-h2{max-width:640px;}
.rd-clicks-grid{margin-top:clamp(28px,3.5vw,52px);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;}
.rd-click{padding:22px 18px;border-top:2px solid #0B2545;transition:background .3s,border-color .3s;}
.rd-click:hover{background:#0B2545;border-top-color:#1FD9EE;}
.rd-click .num{font:700 12px/1 'Archivo';letter-spacing:.14em;color:#8FAFCB!important;}
.rd-click h3{margin:12px 0 0;font:700 21px/1.25 'Archivo';color:#2F9BF5!important;}
.rd-click p{margin:10px 0 0;font:400 16px/1.6 'Barlow';color:#5A7AA0!important;}
.rd-click:hover .num{color:#1FD9EE!important;} .rd-click:hover h3{color:#fff!important;} .rd-click:hover p{color:#C7DCEE!important;}

/* BRANDS MARQUEE */
.rd-brands{background:#F4F8FC!important;padding:clamp(32px,4vw,56px) 0!important;}
@keyframes brandMarquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
/* .rd-marquee-track uses width:max-content for the infinite-scroll effect;
   without an explicit width here the block ancestors (text_inner, the reveal
   wrapper, the heading) shrink-wrapped to that huge intrinsic width instead
   of the section's 976px, pushing the "Trusted by Leading Brands" heading
   thousands of pixels off-screen. */
body .rd-marquee.rd-marquee.rd-marquee{width:100%!important;overflow:hidden;margin-top:34px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.rd-marquee-track{display:flex;width:max-content;gap:16px;animation:brandMarquee 40s linear infinite;}
.rd-marquee-track:hover{animation-play-state:paused;}
.rd-brand{flex:0 0 auto;width:190px;height:100px;background:#fff;border:1px solid #E2EBF5;border-radius:16px;padding:20px;display:flex;align-items:center;justify-content:center;}
.rd-brand img{max-width:100%;max-height:56px;width:auto;object-fit:contain;} .rd-brand img.brand-invert{filter:invert(1) brightness(.5);}

/* REVIEWS */
.rd-reviews{background:#fff!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-reviews-grid{margin-top:clamp(28px,3.5vw,48px);display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;}
.rd-review{background:#fff;border:1px solid #E2EBF5;border-radius:18px;padding:26px;display:flex;flex-direction:column;gap:16px;box-shadow:0 12px 30px rgba(11,37,69,.06);}
.rev-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.rev-score{font:700 17px/1 'Archivo';color:#0B2545!important;} .rev-score .stars{color:#F5B417!important;letter-spacing:2px;font-size:15px;}
.rev-date{font:400 13px/1 'Barlow';color:#8FAFCB!important;}
.rev-body{margin:0;font:400 16px/1.6 'Barlow';color:#41618A!important;}
.rev-foot{margin-top:auto;padding-top:14px;border-top:1px solid #EEF3F9;display:flex;align-items:center;gap:10px;}
.rev-init{width:30px;height:30px;border-radius:50%;background:#EDF3FA;display:flex;align-items:center;justify-content:center;font:600 11px/1 'Barlow';color:#5A7AA0!important;}
.rev-name{font:500 14px/1 'Barlow';color:#0B2545!important;} .rev-g{margin-left:auto;font:700 13px/1 'Archivo';color:#4285F4!important;}

/* CERTS */
.rd-certs{background:linear-gradient(120deg,#1FD9EE,#2F9BF5)!important;padding:clamp(28px,3.5vw,48px) 0!important;text-align:center;}
.rd-certs .rd-h2{margin-top:16px;}
.rd-certs-lead{margin:24px auto 0;max-width:720px;font:500 17px/1.65 'Barlow';color:#042C3B!important;}
.rd-hirelist{margin:28px auto 0!important;max-width:740px;width:100%!important;box-sizing:border-box;text-align:left;display:flex;flex-direction:column;gap:10px;}
.rd-hirelist .hire{display:flex;gap:12px;padding:14px 18px;background:rgba(255,255,255,.22);border-radius:12px;}
.rd-hirelist .chk{flex:0 0 auto;font:700 14px/1.4 'Archivo';color:#03242F!important;}
.rd-hirelist .hire span:last-child{font:500 16px/1.45 'Barlow';color:#042C3B!important;}
.rd-certs-foot{margin:26px auto 0;max-width:720px;font:600 17px/1.6 'Barlow';color:#03242F!important;}
.rd-certs-badges{margin-top:38px;display:flex;flex-wrap:wrap;gap:18px;justify-content:center;}
.rd-certs-badges .cert{width:170px;height:150px;background:#fff;border-radius:16px;padding:14px;box-shadow:0 18px 40px rgba(3,36,47,.18);}
.rd-certs-badges .cert img{width:100%;height:100%;object-fit:contain;}

/* PILLARS */
.rd-pillars{background:#fff!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-pillars .rd-h2{margin-top:16px;max-width:900px;}
.rd-pillars-grid{margin-top:clamp(28px,3.5vw,52px);display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;}
.rd-pillar{padding:30px;background:#F4F8FC;border-radius:20px;border:1px solid #E2EBF5;}
.rd-pillar .badge{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#1FD9EE,#2F9BF5);display:flex;align-items:center;justify-content:center;font:800 17px/1 'Archivo';color:#03101F!important;}
.rd-pillar h3{margin:20px 0 0;font:700 21px/1.25 'Archivo';color:#0B2545!important;}
.rd-pillar .lead{margin:12px 0 0;font:600 16px/1.55 'Barlow';color:#2F9BF5!important;}
.rd-pillar .items{display:flex;flex-direction:column;gap:8px;margin-top:14px;}
.rd-pillar .item{display:flex;gap:10px;} .rd-pillar .item .dot{color:#1FD9EE!important;font:700 14px/1.5 'Archivo';} .rd-pillar .item span:last-child{font:400 16px/1.55 'Barlow';color:#5A7AA0!important;}

/* CONTACT */
.rd-contact{background:#0B2545!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-contact-head{text-align:center;}
.rd-contact-sub{margin:16px 0 0;font:700 17px/1.5 'Archivo';color:#1FD9EE!important;}
.rd-contact-note{margin:8px 0 0;font:400 17px/1.6 'Barlow';color:#BBD3E8!important;}
.rd-contact-body{display:flex!important;flex-wrap:wrap;gap:0!important;margin-top:clamp(28px,3.5vw,48px)!important;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.12);max-width:1180px!important;}
.rd-contact-body .et_pb_column{flex:1 1 320px;width:auto!important;margin:0!important;padding:0!important;}
.rd-contact-info{background:#06172E;padding:34px;height:100%;}
.rd-contact-info .ci-icon{width:52px;height:auto;display:block;}
.rd-contact-info h3{margin:22px 0 0;font:700 23px/1.25 'Archivo';color:#fff!important;}
.rd-contact-info .ci-pill{margin-top:14px;display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;border:1px solid rgba(31,217,238,.4);font:600 13px/1 'Barlow';color:#9FE8F5!important;}
.rd-contact-info p{margin:20px 0 0;font:400 16px/1.6 'Barlow';color:#A9C4DC!important;}
.rd-ghl-embed{background:#fff;padding:20px;height:100%;}
.rd-ghl-embed iframe{width:100%;border:none;min-height:720px;}

/* FAQ */
.rd-faqs{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-faq-head{text-align:center;} .rd-faq-head .rd-h2{margin-top:16px;}
.rd-faq-grid{margin-top:clamp(26px,3vw,44px);display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;align-items:start;}
.rd-faq{background:#fff;border:1px solid #E2EBF5;border-radius:14px;overflow:hidden;}
.rd-faq summary{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;}
.rd-faq summary::-webkit-details-marker{display:none;}
.rd-faq .q{font:700 16px/1.35 'Archivo';color:#0B2545!important;}
.rd-faq .sign{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:#2F9BF5;color:#fff!important;display:flex;align-items:center;justify-content:center;font:700 16px/1 'Archivo';}
.rd-faq .sign::before{content:"+";}
.rd-faq[open] .sign::before{content:"−";}
.rd-faq .a{padding:0 22px 20px;font:400 15px/1.6 'Barlow';color:#5A7AA0!important;}
.rd-map{margin-top:clamp(28px,3.5vw,48px);width:100%;aspect-ratio:21/9;border-radius:20px;overflow:hidden;border:1px solid #E2EBF5;}
.rd-map iframe{width:100%;height:100%;border:0;display:block;}
@media(max-width:820px){.rd-map{aspect-ratio:4/5;}}

/* ============================================================
   MOBILE PASS
   ============================================================ */
@media(max-width:980px){
  .rd-hero,.rd-about,.rd-services,.rd-industries,.rd-youtube,.rd-grow,.rd-clicks,.rd-reviews,.rd-certs,.rd-pillars,.rd-brands,.rd-faqs,.rd-contact{padding-left:20px!important;padding-right:20px!important;}
  .rd-hero{padding-top:40px!important;}
  .rd-hero-h1{font-size:clamp(34px,10vw,48px);}
  .rd-hero-btns .rd-btn{flex:1 1 auto;text-align:center;}
  .rd-clicks-head{align-items:flex-start;}
  .rd-marquee{margin-left:-20px;margin-right:-20px;} /* let marquee stay full-bleed */
  .rd-contact-body{margin-left:0!important;margin-right:0!important;}
  .rd-ghl-embed{padding:12px;} .rd-ghl-embed iframe{min-height:640px;}
}
@media(max-width:600px){
  .rd-about-media{grid-template-columns:1fr 1fr;gap:10px;}
  .rd-hero-stats{margin-top:32px;}
}

/* header: right-align nav group like the design (desktop only) */
@media(min-width:981px){
  #site-header .et_pb_menu__menu{margin-left:auto!important;}
  #site-header .et_pb_menu__logo-wrap{margin-right:auto;}
  #site-header .et-menu{justify-content:flex-end;}
}

@media(max-width:980px){
  #site-header .et_pb_menu{justify-content:space-between!important;flex-wrap:nowrap!important;}
  #site-header .et_pb_menu__logo-wrap{margin:0!important;flex:0 1 auto!important;justify-content:flex-start!important;text-align:left!important;}
  #site-header .et_pb_menu__logo-wrap img{margin:0!important;}
}

@media(max-width:980px){
  #site-header .et_pb_menu_inner_container{width:100%!important;display:flex!important;justify-content:space-between!important;align-items:center;margin:0!important;}
}

/* ============================================================
   HEADER FIX — full-width inner container (logo left edge, nav right edge)
   ============================================================ */
#site-header .et_pb_menu_inner_container{width:100%!important;display:flex!important;justify-content:space-between!important;align-items:center;}

/* ============================================================
   FOOTER (rebuilt to match design)
   ============================================================ */
#site-footer .et_pb_row{max-width:100%!important;width:100%!important;padding-left:24px!important;padding-right:24px!important;}
.rd-footer{max-width:1180px;margin:0 auto;}
.rd-footer-cta{background:#F7F5EF;border-radius:20px;padding:clamp(24px,3vw,34px);display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;box-shadow:0 26px 60px rgba(0,0,0,.35);}
.rd-footer-cta h3{margin:0;font:800 clamp(22px,2.4vw,30px)/1.15 'Archivo';letter-spacing:-.01em;color:#0B2545!important;}
.footer-card-btn{background:#0B2545;color:#fff!important;padding:17px 30px;font:700 15px/1 'Archivo';}
.footer-card-btn:hover{background:#1FD9EE;color:#03101F!important;}
.rd-footer-cols{display:flex;flex-wrap:wrap;gap:clamp(26px,3vw,48px);margin-top:-18px;}
.rd-footer-cols .fcol{flex:1 1 170px;min-width:0;}
.rd-footer-cols .fcol-brand{flex:1 1 260px;}
.rd-footer-cols .footer-logo{height:44px;width:auto;display:block;}
.rd-footer-cols .fcol-brand p{margin:20px 0 0;max-width:260px;font:400 16px/1.6 'Barlow';color:#A9C4DC!important;}
.rd-footer-cols .fh{font:700 16px/1 'Archivo';color:#fff!important;}
.rd-footer-cols .flinks{margin-top:18px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;}
.rd-footer-cols .flinks a{font:400 15px/1.3 'Barlow';color:#A9C4DC!important;}
.rd-footer-cols .flinks a:hover{color:#1FD9EE!important;}
.rd-footer-cols .rep-link{color:#1FD9EE!important;line-height:1.4;}
.rd-footer-bottom{margin-top:clamp(30px,4vw,48px);padding-top:22px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;}
.rd-footer-bottom .copy{font:400 14px/1 'Barlow';color:#7C9AB8!important;}
.rd-footer-bottom .socials{display:flex;gap:10px;}
.rd-footer-bottom .soc{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font:600 12px/1 'Barlow';color:#BBD3E8!important;text-decoration:none;}
.rd-footer-bottom .soc:hover{border-color:#1FD9EE;color:#1FD9EE!important;}

/* ============================================================
   BACK TO TOP (Divi native, styled to match design)
   ============================================================ */
#et_back_to_top.et-visible{background:linear-gradient(90deg,#1FD9EE,#2F9BF5)!important;border-radius:50%!important;width:48px!important;height:48px!important;box-shadow:0 12px 28px rgba(11,37,69,.35)!important;display:flex!important;align-items:center;justify-content:center;}
#et_back_to_top .et-pb-icon,#et_back_to_top:before{color:#03101F!important;}

/* ============================================================
   UPDATED BUTTON HOVERS (synced from Claude Design)
   ============================================================ */
.rd-btn,.rd-btn-navy,.footer-card-btn,#site-header .et-menu>li.nav-cta>a{transition:background .3s ease,box-shadow .3s ease,transform .3s ease,border-color .3s ease,color .3s ease;}
/* gradient CTAs: glow + lift */
.rd-btn-grad:hover,#site-header .et-menu>li.nav-cta>a:hover{box-shadow:0 10px 26px rgba(31,217,238,.45);transform:translateY(-2px);}
/* solid navy buttons: fill with gradient */
.rd-btn-navy:hover,.footer-card-btn:hover{background:linear-gradient(90deg,#1FD9EE,#2F9BF5)!important;color:#03101F!important;box-shadow:0 10px 26px rgba(31,217,238,.45);transform:translateY(-2px);}

/* ============================================================
   FOOTER LINK RESET (match design: no underline, muted gray)
   ============================================================ */
#site-footer a{text-decoration:none!important;}
#site-footer .flinks a{color:#A9C4DC!important;font:400 15px/1.3 'Barlow';}
#site-footer .flinks a:hover{color:#1FD9EE!important;}
#site-footer .rep-link{color:#1FD9EE!important;line-height:1.4!important;}
#site-footer .rd-footer-cols .fcol-brand p{color:#A9C4DC!important;}
#site-footer .soc{color:#BBD3E8!important;border:1px solid rgba(255,255,255,.2)!important;}
#site-footer .soc:hover{color:#1FD9EE!important;border-color:#1FD9EE!important;}
#site-footer .copy{color:#7C9AB8!important;}

#site-footer .flinks a.rep-link{color:#1FD9EE!important;}
/* active page — .is-active is applied by the footer script (these are plain
   links in a text module, so WordPress does not mark them itself) */
#site-footer .flinks a.is-active,
.rd-footer-cols .flinks a.is-active{color:#1FD9EE!important;font-weight:600;}
#site-footer .flinks a.rep-link:hover{color:#7FF0FB!important;}

/* footer: remove Divi row top padding so the CTA card overlaps the section above like the design */
#site-footer .et_pb_row{padding-top:0!important;}

/* ============================================================
   HOW WE WORK (dual pricing/marketing section)
   ============================================================ */
.rd-dual{background:#0B2545!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-eyebrow.center{text-align:center;} .rd-eyebrow.muted{color:#8FAFCB!important;} .rd-eyebrow.cyan{color:#1FD9EE!important;}
.rd-h2.center{text-align:center;}
.rd-dual h2{margin:16px auto 0;max-width:760px;}
.rd-dual-grid{margin-top:clamp(32px,4vw,56px);display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;}
.rd-dual-card{padding:34px;background:#06172E;border-radius:22px;border:1px solid rgba(255,255,255,.1);}
.rd-dual-card-accent{background:linear-gradient(160deg,#123A6B,#0B2545);border:1px solid rgba(31,217,238,.35);}
.rd-dual-card h3{margin:14px 0 0;font:700 24px/1.25 'Archivo';color:#fff!important;}
.rd-dual-card p{margin:14px 0 0;font:400 16px/1.6 'Barlow';color:#BBD3E8!important;}
.rd-dual-price{margin-top:20px;font:800 22px/1 'Archivo';color:#1FD9EE!important;}
.rd-dual-card .rd-btn{margin-top:22px;padding:15px 26px;font-size:14px;}

/* ============================================================
   PRICING PAGE
   ============================================================ */
.rd-h1.white{color:#fff!important;font-family:'Archivo';font-weight:800;font-size:clamp(32px,4.4vw,58px);line-height:1.05;letter-spacing:-.02em;margin:16px auto 0;max-width:760px;}
.rd-h1.center{text-align:center;}
.rd-page-sub{margin:20px auto 0;max-width:620px;font:400 clamp(16px,1.3vw,18px)/1.6 'Barlow';color:#BBD3E8!important;}
.rd-page-sub.center{text-align:center;} .rd-page-sub.light{color:#BBD3E8!important;}
.rd-page-hero{background:radial-gradient(1100px 620px at 78% -10%,rgba(47,155,245,.28),transparent 60%),#0B2545!important;padding:clamp(52px,7vw,96px) 0 clamp(40px,5vw,64px)!important;text-align:center;}
.rd-pricing-tiers{background:#F4F8FC!important;padding:clamp(48px,6vw,80px) 0!important;}
.rd-pricing-tiers .et_pb_row,.rd-marketing-cta .et_pb_row{max-width:1180px!important;}
.tiers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;}
.tier-card{position:relative;overflow:visible;padding:34px;background:#fff;border-radius:20px;border:1px solid #E2EBF5;display:flex;flex-direction:column;}
.tier-card.tier-popular{border:2px solid #1FD9EE;box-shadow:0 30px 60px rgba(31,217,238,.18);}
/* static so the badge positions against .tier-card and straddles its top
   border, as the design shows, rather than against this zero-height slot */
.tier-badge-slot{position:static;height:0;}
.tier-badge{position:absolute;top:-17px;left:50%;transform:translateX(-50%);background:#0B2545;color:#fff!important;font:700 11px/1 'Archivo';letter-spacing:.08em;text-transform:uppercase;padding:8px 20px;border-radius:999px;white-space:nowrap;}
.tier-name{font:700 13px/1 'Archivo';letter-spacing:.1em;text-transform:uppercase;}
.tier-name.accent-blue{color:#2F9BF5!important;} .tier-name.accent-cyan{color:#1FD9EE!important;}
.tier-price{margin-top:14px;display:flex;align-items:baseline;gap:6px;}
.tier-price .amt{font:800 44px/1 'Archivo';color:#0B2545!important;} .tier-price .per{font:500 15px/1 'Barlow';color:#5A7AA0!important;}
.tier-feats{margin-top:18px;display:flex;flex-direction:column;gap:12px;}
.tier-feat{display:flex;gap:10px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid #E2EBF5;}
.tier-feat .chk{flex:0 0 auto;font:700 14px/1.4 'Archivo';}
.tier-feat .chk.accent-blue{color:#2F9BF5!important;} .tier-feat .chk.accent-cyan{color:#1FD9EE!important;}
.tier-feat span:last-child{font:400 15px/1.5 'Barlow';color:#41618A!important;}
.tier-card .rd-btn{display:block;margin-top:24px;padding:16px;text-align:center;font-size:15px;}
.tier-guarantee{margin-top:10px;text-align:center;font:400 12px/1 'Barlow';color:#8FAFCB!important;}
.rd-includes-box{margin-top:44px;padding:30px;background:#fff;border:1px solid #E2EBF5;border-radius:20px;}
.inc-title{font:700 17px/1 'Archivo';color:#0B2545!important;}
.inc-grid{margin-top:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
.inc-item{display:flex;gap:10px;align-items:flex-start;}
.inc-item .chk{flex:0 0 auto;color:#2F9BF5!important;font:700 14px/1.4 'Archivo';}
.inc-item span:last-child{font:400 15px/1.5 'Barlow';color:#41618A!important;}
.rd-pricing-note{margin:20px 0 0;text-align:center;font:600 15px/1.5 'Barlow';color:#5A7AA0!important;}
.rd-pricing-fine{margin:8px 0 0;text-align:center;font:400 13px/1.5 'Barlow';color:#8FAFCB!important;}
.rd-pricing-note2{margin:6px 0 0;text-align:center;font:400 15px/1.5 'Barlow';color:#8FAFCB!important;}
.rd-pricing-note2 a{color:#1FD9EE!important;}
.rd-marketing-cta{background:linear-gradient(160deg,#0B2545,#123A6B 55%,#0B2545)!important;padding:clamp(28px,3.5vw,48px) 0!important;text-align:center;}
.rd-marketing-cta .rd-h2{margin:16px auto 0;}
.rd-center-btn{margin-top:26px;text-align:center!important;}

/* ============================================================
   UPGRADES PAGE
   ============================================================ */
.rd-upgrades-hero{background:#06172E!important;}
.rd-addons{background:#06172E!important;padding:0 0 clamp(56px,7vw,90px)!important;}
.addons-grid{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;}
.addon-card{padding:26px;background:#0B2545;border-radius:18px;border:1px solid rgba(31,217,238,.15);}
.addon-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.addon-top h3{margin:0;font:700 19px/1.3 'Archivo';color:#fff!important;}
.addon-price{flex:0 0 auto;font:700 15px/1 'Archivo';color:#1FD9EE!important;}
.addon-card p{margin:12px 0 0;font:400 15px/1.6 'Barlow';color:#BBD3E8!important;}

/* ============================================================
   MOBILE PASS 2 (new sections: dual, pricing, upgrades)
   ============================================================ */
@media(max-width:980px){
  .rd-dual,.rd-page-hero,.rd-pricing-tiers,.rd-marketing-cta,.rd-addons{padding-left:20px!important;padding-right:20px!important;}
}

/* ============================================================
   SCHEDULE A CONSULTATION PAGE (no site header/footer, focused CRO page)
   ============================================================ */
.rd-sched-hero{background:radial-gradient(1100px 620px at 50% -20%,rgba(47,155,245,.32),transparent 60%),#0B2545!important;padding:clamp(24px,3vw,40px) 0 clamp(24px,3vw,36px)!important;text-align:center;}
.rd-sched-hero{ /* wpautop may wrap the loose logo link in its own <p>; force-center every direct text block in this section */ }
.rd-sched-hero p{text-align:center;}
.sched-logo-link{display:inline-flex;align-items:center;margin-bottom:30px;}
.sched-logo-link img{height:38px;width:auto;display:block;}
.rd-sched-hero .rd-h1{margin:0 auto;text-align:center;}
.sched-lead{margin:16px auto 0;max-width:520px;text-align:center;font:600 clamp(15px,1.4vw,18px)/1.5 'Barlow';color:#9FE8F5!important;}
.sched-sub{margin:8px auto 0;max-width:520px;text-align:center;font:400 15px/1.6 'Barlow';color:#BBD3E8!important;}
.rd-sched-card-sec{background:#0B2545!important;padding:0 0 clamp(56px,7vw,90px)!important;margin-top:-36px;}
.sched-card{max-width:640px!important;margin:0 auto!important;background:#fff;border-radius:22px;padding:clamp(26px,4vw,44px);box-shadow:0 40px 90px rgba(0,0,0,.35);}
.sched-ghl{background:transparent;padding:0;margin-top:0;}
.sched-ghl iframe{min-height:760px;}
.sched-phone{margin:18px 0 0;text-align:center;font:600 14px/1.4 'Barlow';color:#5A7AA0!important;}
.sched-phone a{color:#2F9BF5!important;font-weight:700;}
@media(max-width:980px){.rd-sched-hero,.rd-sched-card-sec{padding-left:20px!important;padding-right:20px!important;}}

/* ============================================================
   SCROLL REVEAL (site-wide, matches design's reveal-on-scroll spec)
   ============================================================ */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:none;}
.reveal-footer-card{opacity:0;transform:translateY(-38px) translateY(32px);transition:opacity .7s ease,transform .7s ease;}
.reveal-footer-card.in{opacity:1;transform:translateY(-38px);}
/* design keeps the -38px lift at every width */

/* ============================================================
   SINGLE PROJECT TEMPLATE
   ============================================================ */
.pd-hero{background:#06172E!important;padding:clamp(48px,6vw,84px) 0 0!important;text-align:center;}
.pd-eyebrow{font:600 12px/1 'Barlow';letter-spacing:.18em;text-transform:uppercase;color:#2F9BF5!important;}
.pd-h1{display:inline;margin:16px 0 0;font-family:'Archivo';font-weight:800;font-size:clamp(32px,4.4vw,54px);line-height:1.08;letter-spacing:-.02em;}.pd-h1-static.pd-h1-static.pd-h1-static{color:#fff!important;}.pd-h1-cyan.pd-h1-cyan.pd-h1-cyan{color:#1FD9EE!important;}
.pd-hero .et_pb_row{max-width:900px!important;}
/* single semantic <h1>, rendered by the [rd_project_title] shortcode */
.pd-h1-heading.pd-h1-heading.pd-h1-heading{
  margin:16px 0 0;font-family:'Archivo';font-weight:800;
  font-size:clamp(32px,4.4vw,54px);line-height:1.08;letter-spacing:-.02em;color:#fff!important;
}
.pd-shot-sec{background:#06172E!important;padding:clamp(36px,5vw,56px) 0 0!important;}
.pd-shot-sec .et_pb_row{max-width:1000px!important;}
.pd-shot-img.et_pb_image{position:relative;width:100%;aspect-ratio:16/10;border-radius:20px;overflow:hidden;border:1px solid rgba(31,217,238,.25);box-shadow:0 30px 70px rgba(0,0,0,.4);}
.pd-shot-img img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.pd-about-sec{background:#06172E!important;padding:clamp(40px,5vw,64px) 0!important;}
.pd-about-sec .et_pb_row{max-width:800px!important;}
.pd-h2{margin:0;font:700 24px/1.3 'Archivo';color:#fff!important;}
.pd-p-run{display:inline!important;font:400 17px/1.7 'Barlow';color:#BBD3E8!important;}
.pd-about-sec .et_pb_module.pd-p-run{margin:0;}
.pd-p-run .et_pb_text_inner,.pd-p-run .et_pb_text_inner p{display:inline!important;margin:0!important;}
.pd-p2{display:block;margin:18px 0 0;font:400 17px/1.7 'Barlow';color:#BBD3E8!important;}
.pd-highlights-sec{background:#06172E!important;padding:0 0 clamp(40px,5vw,64px)!important;}
.pd-highlights-sec .et_pb_row{max-width:1000px!important;}
.pd-highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
.pd-highlight{padding:20px;background:#0B2545;border-radius:14px;border:1px solid rgba(31,217,238,.15);}
.pd-highlight .check{font:700 14px/1 'Archivo';color:#1FD9EE!important;}
.pd-highlight div{margin-top:10px;font:500 15px/1.5 'Barlow';color:#E8F1FA!important;}
.pd-cta-sec{background:#0B2545!important;padding:clamp(48px,6vw,80px) 0!important;text-align:center;}
.pd-cta-h2{margin:0;font-family:'Archivo';font-weight:800;font-size:clamp(26px,3vw,38px);color:#fff!important;}
.pd-cta-btn.et_pb_button{display:inline-block;margin-top:26px;padding:17px 32px;border-radius:999px;background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F!important;font:700 16px/1 'Archivo';border:none;}
.pd-cta-btn.et_pb_button:after{display:none!important;}
/* kill Divi's button hover (padding shift, bg swap, border, arrow) — match .rd-btn-grad hover */
body .pd-cta-sec .pd-cta-btn.et_pb_button,body .pd-cta-sec .pd-cta-btn.et_pb_button:hover{padding:17px 32px!important;border:none!important;border-radius:999px!important;background:linear-gradient(90deg,#1FD9EE,#2F9BF5)!important;color:#03101F!important;letter-spacing:normal!important;font:700 16px/1 'Archivo'!important;transition:box-shadow .25s,transform .25s!important;}
body .pd-cta-sec .pd-cta-btn.et_pb_button:hover{box-shadow:0 10px 26px rgba(31,217,238,.45)!important;transform:translateY(-2px);}
body .pd-cta-sec .pd-cta-btn.et_pb_button:before,body .pd-cta-sec .pd-cta-btn.et_pb_button:after{display:none!important;content:none!important;}
.pd-hero,.pd-shot-sec,.pd-about-sec,.pd-highlights-sec,.pd-cta-sec{padding-left:24px!important;padding-right:24px!important;}
@media(max-width:980px){.pd-hero,.pd-shot-sec,.pd-about-sec,.pd-highlights-sec,.pd-cta-sec{padding-left:20px!important;padding-right:20px!important;}}

/* ============================================================
   PORTFOLIO PAGE
   ============================================================ */
.rd-portfolio-hero{background:radial-gradient(1100px 620px at 78% -10%,rgba(47,155,245,.28),transparent 60%),#0B2545!important;padding:clamp(52px,7vw,96px) 0 clamp(40px,5vw,64px)!important;text-align:center;}
.rd-portfolio-hero .rd-h1{margin:16px auto 0;max-width:760px;}
.rd-portfolio-hero .rd-eyebrow{color:#9FE8F5!important;}
.rd-portfolio-grid-sec{background:#F4F8FC!important;padding:clamp(30px,4vw,44px) 0 clamp(56px,7vw,110px)!important;}
@media(max-width:980px){.rd-portfolio-hero,.rd-portfolio-grid-sec{padding-left:20px!important;padding-right:20px!important;}}

/* ============================================================
   PORTFOLIO GRID + FILTER (Divi native Filterable Portfolio)
   ============================================================ */
.rd-portfolio-module{max-width:1280px;margin:0 auto;}
/* filter tabs -> pill buttons matching brand */
/* Divi wraps the filter <ul> in a container div, so the flex context has to go on
   the <ul> itself or the per-item `order` below is ignored. */
.rd-portfolio-module .et_pb_portfolio_filters,
.rd-portfolio-module .et_pb_filterable_portfolio_filters{margin:0 0 34px;padding:0;}
.rd-portfolio-module .et_pb_portfolio_filters ul,
.rd-portfolio-module .et_pb_filterable_portfolio_filters ul{
  display:flex!important;flex-wrap:wrap;gap:10px;justify-content:center;list-style:none;margin:0;padding:0;
}
.rd-portfolio-module .et_pb_portfolio_filters li,
.rd-portfolio-module .et_pb_filterable_portfolio_filters li{margin:0!important;list-style:none;}
.rd-portfolio-module .et_pb_portfolio_filters li a,
.rd-portfolio-module .et_pb_filterable_portfolio_filters li a{
  display:inline-block;padding:11px 20px;border-radius:999px!important;border:1px solid #D9E5F1;
  background:#fff;color:#41618A!important;font:600 13px/1 'Barlow';letter-spacing:.02em;text-decoration:none;
  transition:background .25s ease,color .25s ease,border-color .25s ease;
}
.rd-portfolio-module .et_pb_portfolio_filters li a:hover{border-color:#2F9BF5;color:#0B2545!important;}
/* Divi sorts filter terms alphabetically; the design orders them by trade importance.
   Reordering the flex items keeps Divi's own filtering behaviour intact. */
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="all"]){order:0;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="roofing"]){order:1;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="fire-protection"]){order:2;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="siding"]){order:3;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="general-contractors"]){order:4;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="home-builders"]){order:5;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="pool-cage-builders"]){order:6;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="dock-builders"]){order:7;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="pool-services"]){order:8;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="painting"]){order:9;}
.rd-portfolio-module .et_pb_portfolio_filters li:has(a[data-category-slug="sandblasting-painting"]){order:10;}
/* Divi puts .active on the <a>, not the <li>, so the active pill must be
   targeted there or it never picks up the design's filled treatment. */
.rd-portfolio-module .et_pb_portfolio_filters li a.active,
.rd-portfolio-module .et_pb_filterable_portfolio_filters li a.active{
  background:#0B2545!important;border-color:#2F9BF5!important;color:#fff!important;
}
.rd-portfolio-module .et_pb_portfolio_filters li a.active:hover,
.rd-portfolio-module .et_pb_filterable_portfolio_filters li a.active:hover{
  background:#0B2545!important;color:#fff!important;border-color:#2F9BF5!important;
}
/* grid layout */
.rd-portfolio-module .et_pb_portfolio_items{
  display:grid!important;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;
}
.rd-portfolio-module .et_pb_portfolio_item{
  position:relative!important;left:auto!important;top:auto!important;width:100%!important;
  background:#fff;border-radius:18px;overflow:hidden;border:1px solid #E2EBF5;
  transition:transform .3s ease,box-shadow .3s ease;
}
.rd-portfolio-module .et_pb_portfolio_item:hover{transform:translateY(-5px);box-shadow:0 26px 50px rgba(11,37,69,.18);}
.rd-portfolio-module .et_portfolio_image{display:block;position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;border-bottom:1px solid #E2EBF5;}
.rd-portfolio-module .et_portfolio_image img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.rd-portfolio-module .et_pb_module_header{margin:22px 22px 0;font:700 20px/1.25 'Archivo';}
.rd-portfolio-module .et_pb_module_header a{color:#0B2545!important;text-decoration:none!important;}
.rd-portfolio-module p.post-meta{margin:10px 22px 22px;font:700 11px/1 'Archivo';letter-spacing:.12em;text-transform:uppercase;}
.rd-portfolio-module p.post-meta a{color:#2F9BF5!important;text-decoration:none!important;}
.rd-portfolio-module p.post-meta:before{content:"";}
/* hide isotope sizer helper elements if present */
.rd-portfolio-module .et_pb_portfolio_item[style*="visibility: hidden"]{display:none!important;}

/* Design puts the trade eyebrow ABOVE the project name and ends the card with a
   "View Project" link. Divi outputs image -> title -> category, so reorder via flex. */
.rd-portfolio-module .et_pb_portfolio_item{display:flex!important;flex-direction:column;}
.rd-portfolio-module .et_pb_portfolio_item > a:first-of-type{order:1;}
.rd-portfolio-module .et_pb_portfolio_item p.post-meta{order:2;margin:22px 22px 0!important;}
.rd-portfolio-module .et_pb_portfolio_item .et_pb_module_header{order:3;margin:8px 22px 0!important;}
.rd-portfolio-module .et_pb_portfolio_item::after{
  order:4;content:"View Project \2192";margin:12px 22px 22px;
  font:600 13px/1 'Barlow';color:#2F9BF5;
}


/* ============================================================
   SPECIFICITY BOOST — companion rules to beat Divi's default
   text-module heading preset (.preset--module--divi-text--default
   .et_pb_text_inner h1..h6 { color:#000 !important }) which otherwise
   forces black text on headings embedded via raw HTML.
   ============================================================ */
.rd-hero-h1.rd-hero-h1.rd-hero-h1{margin:0;font-family:'Archivo';font-weight:800;font-size:clamp(40px,5.6vw,76px);line-height:.98;letter-spacing:-.025em;color:#fff!important;}
.rd-ind-left.rd-ind-left.rd-ind-left .anchor h3{margin:0;font:700 clamp(19px,2vw,23px)/1.25 'Archivo';color:#1FD9EE!important;}
.rd-click.rd-click.rd-click h3{margin:12px 0 0;font:700 21px/1.25 'Archivo';color:#2F9BF5!important;}
.rd-click:hover.rd-click:hover.rd-click:hover h3{color:#fff!important;}
.rd-pillar.rd-pillar.rd-pillar h3{margin:20px 0 0;font:700 21px/1.25 'Archivo';color:#0B2545!important;}
.rd-contact-info.rd-contact-info.rd-contact-info h3{margin:22px 0 0;font:700 23px/1.25 'Archivo';color:#fff!important;}
.rd-footer-cta.rd-footer-cta.rd-footer-cta h3{margin:0;font:800 clamp(22px,2.4vw,30px)/1.15 'Archivo';letter-spacing:-.01em;color:#0B2545!important;}
.rd-dual-card.rd-dual-card.rd-dual-card h3{margin:14px 0 0;font:700 24px/1.25 'Archivo';color:#fff!important;}
.addon-top.addon-top.addon-top h3{margin:0;font:700 19px/1.3 'Archivo';color:#fff!important;}
.pd-h1.pd-h1.pd-h1{display:inline;margin:16px 0 0;font-family:'Archivo';font-weight:800;font-size:clamp(32px,4.4vw,54px);line-height:1.08;letter-spacing:-.02em;}.pd-h1-static.pd-h1-static.pd-h1-static{color:#fff!important;}.pd-h1-cyan.pd-h1-cyan.pd-h1-cyan{color:#1FD9EE!important;}
.pd-h2.pd-h2.pd-h2{margin:0;font:700 24px/1.3 'Archivo';color:#fff!important;}
.pd-cta-h2.pd-cta-h2.pd-cta-h2{margin:0;font-family:'Archivo';font-weight:800;font-size:clamp(26px,3vw,38px);color:#fff!important;}

/* additional compound-class heading utility rules (no element tag, still vulnerable to Divi's h1-h6 preset) */
.rd-h2.rd-h2.rd-h2.navy{color:#0B2545!important;}
.rd-h2.rd-h2.rd-h2.white{color:#fff!important;}
.rd-h3.rd-h3.rd-h3.navy{color:#0B2545!important;}
.rd-h2.rd-h2.rd-h2.dark{color:#03242F!important;}
.rd-h1.rd-h1.rd-h1.white{color:#fff!important;}
.rd-h2.rd-h2.rd-h2 .blue{color:#2F9BF5!important;}
.rd-h2.rd-h2.rd-h2 .white{color:#fff!important;}

/* CTA button placements added to Grow / Certs / Pillars sections */
.rd-grow-copy .rd-btn{display:inline-block;margin-top:30px;}
.rd-pillars-cta{margin-top:clamp(30px,4vw,44px);text-align:center;}

/* ============================================================
   ABOUT PAGE
   ============================================================ */
.ab-hero{background:radial-gradient(1100px 620px at 78% -10%,rgba(47,155,245,.28),transparent 60%),#0B2545!important;padding:clamp(52px,7vw,96px) 0 clamp(44px,5.5vw,72px)!important;}
.ab-hero-h1.ab-hero-h1.ab-hero-h1{margin:0!important;max-width:none!important;text-align:left!important;}
.ab-hero-btn{display:inline-block;margin-top:26px;}
.ab-intro{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.ab-intro-top{display:flex;flex-wrap:wrap;gap:clamp(30px,4vw,70px);align-items:flex-start;}
.ab-intro-copy{flex:1 1 440px;min-width:0;}
.ab-intro-copy .rd-h2{margin-top:16px;} .ab-intro-copy .rd-lead{margin-top:20px;}
.ab-quote{margin:22px 0 0;padding-left:20px;border-left:3px solid #2F9BF5;font:600 18px/1.5 'Barlow';color:#0B2545!important;}
.ab-intro-media{flex:1 1 380px;min-width:0;position:relative;width:100%;aspect-ratio:4/3;border-radius:20px;overflow:hidden;box-shadow:0 30px 70px rgba(11,37,69,.18);}
.ab-intro-media img{width:100%;height:100%;object-fit:cover;display:block;}
.ab-intro-bottom{max-width:1280px;margin:clamp(40px,5vw,60px) auto 0;}
.ab-strong{margin:20px 0 0;font:700 17px/1.5 'Archivo';color:#0B2545!important;}
.ab-intro-bottom .rd-why{margin-top:14px;}
.ab-story{background:linear-gradient(160deg,#0B2545,#123A6B 55%,#0B2545)!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.ab-story .reveal{display:flex;flex-wrap:wrap-reverse;gap:clamp(30px,4vw,64px);align-items:center;}
.ab-story-copy{flex:1 1 420px;min-width:0;}
.ab-story-copy .rd-lead{margin-top:22px;} .ab-story-copy .rd-lead strong{color:#fff!important;}
.ab-story-items{display:flex;flex-direction:column;gap:22px;margin-top:28px;}
.ab-story-item h3{margin:0;font:700 clamp(19px,2vw,22px)/1.25 'Archivo';color:#1FD9EE!important;}
.ab-story-item p{margin:8px 0 0;font:400 16px/1.6 'Barlow';color:#BBD3E8!important;}
.ab-story-media{flex:1 1 380px;min-width:0;position:relative;width:100%;aspect-ratio:4/3;border-radius:22px;overflow:hidden;border:1px solid rgba(31,217,238,.25);}
.ab-story-media img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.ab-certs{padding-bottom:clamp(90px,10vw,140px)!important;}
.ab-hero,.ab-intro,.ab-story{padding-left:24px!important;padding-right:24px!important;}
@media(max-width:980px){.ab-hero,.ab-intro,.ab-story{padding-left:20px!important;padding-right:20px!important;}}

/* ============================================================
   REVIEWS PAGE
   ============================================================ */
.rv-hero{background:radial-gradient(1100px 620px at 78% -10%,rgba(47,155,245,.28),transparent 60%),#0B2545!important;padding:clamp(52px,7vw,88px) 24px clamp(40px,5vw,64px)!important;}
.rv-hero-h1.rv-hero-h1.rv-hero-h1{margin:0!important;max-width:none!important;text-align:left!important;}
.rv-breadcrumb{margin-top:14px;display:flex;align-items:center;gap:8px;font:500 14px/1 'Barlow';}
.rv-breadcrumb a{color:#9FB6CE!important;} .rv-breadcrumb .current{color:#fff!important;}
.rv-subhead-sec{background:#06172E!important;padding:clamp(48px,6vw,80px) 24px 0!important;}
.rv-subhead{margin:0;font-family:'Archivo';font-weight:800;font-size:clamp(26px,3.2vw,42px);line-height:1.15;letter-spacing:-.02em;}
.rv-subhead .white{color:#fff!important;}
.rv-subhead .grad{background:linear-gradient(90deg,#1FD9EE,#6BC8FF);-webkit-background-clip:text;background-clip:text;color:transparent!important;}
.rv-reviews-sec{background:#06172E!important;padding:clamp(32px,4vw,44px) 24px clamp(56px,7vw,90px)!important;}
.rv-grid,.rv-page{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;}
.rv-page[hidden]{display:none;}
.rv-pager{margin-top:36px;display:flex;align-items:center;justify-content:center;gap:16px;}
.rv-pager button{border:none;background:transparent;cursor:pointer;color:#9FB6CE;font:700 14px/1 'Archivo';}
.rv-pg-num{width:36px;height:36px;border-radius:50%;transition:background .25s ease,color .25s ease;}
.rv-pg-num.active{background:#1FD9EE;color:#03101F;}
.rv-pg-num:not(.active):hover{color:#fff;}
.rv-pg-arrow{font-size:20px;padding:0 4px;}
.rv-pg-arrow:disabled{opacity:.35;cursor:default;}
.rv-card{background:#0B2545;border:1px solid rgba(31,217,238,.15);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:14px;}
.rv-top{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.rv-score{font:700 17px/1 'Archivo';color:#fff!important;} .rv-score .stars{color:#F5B417!important;letter-spacing:2px;font-size:15px;}
.rv-date{font:400 13px/1 'Barlow';color:#8FAFCB!important;}
.rv-body{margin:0;font:400 15px/1.6 'Barlow';color:#BBD3E8!important;}
.rv-foot{margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;gap:10px;}
.rv-init{width:32px;height:32px;border-radius:50%;background:#123A6B;display:flex;align-items:center;justify-content:center;font:700 12px/1 'Archivo';color:#9FE8F5!important;}
.rv-name{font:500 14px/1 'Barlow';color:#E8F1FA!important;} .rv-g{margin-left:auto;font:800 16px/1 'Archivo';color:#4285F4!important;}
@media(max-width:980px){.rv-hero,.rv-subhead-sec,.rv-reviews-sec{padding-left:20px!important;padding-right:20px!important;}}

/* fix: About story heading color specificity */
.ab-story-item.ab-story-item.ab-story-item h3{color:#1FD9EE!important;}
/* fix: footer columns were pulled up too tight against the CTA card */
.rd-footer-cols{margin-top:30px!important;}
/* fix: About hero CTA should match design's exact hover (fills with gradient, not just border) */
.ab-hero-btn{border:1px solid rgba(255,255,255,.3)!important;color:#fff!important;transition:background .3s ease,color .3s ease,border-color .3s ease;}
.ab-hero-btn:hover{background:linear-gradient(90deg,#1FD9EE,#2F9BF5)!important;color:#03101F!important;border-color:transparent!important;}

/* fix: project-detail CTA button wasn't centering (Divi's own button-wrapper alignment default) */
.pd-cta-sec .et_pb_button_module_wrapper{text-align:center!important;}

/* ===== ARTICLES PAGE ===== */
.ar-hero.ar-hero{text-align:left!important;padding-left:24px!important;padding-right:24px!important;}
.ar-hero-h1.ar-hero-h1.ar-hero-h1{font-size:clamp(34px,4.6vw,58px)!important;margin:0!important;max-width:none!important;text-align:left!important;}
.ar-blog-sec{background:#06172E!important;padding:clamp(40px,5vw,60px) 24px clamp(56px,7vw,90px)!important;}
#rd-articles-app{max-width:1280px;margin:0 auto;}

/* featured "Latest" spotlight */
.ar-feat-card{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,44px);align-items:center;
  background:#0B2545;border-radius:22px;overflow:hidden;text-decoration:none!important;
  transition:transform .3s ease,box-shadow .3s ease;}
.ar-feat-card:hover{transform:translateY(-3px);box-shadow:0 26px 54px rgba(0,0,0,.34);}
.ar-feat-img{min-height:360px;height:100%;overflow:hidden;}
.ar-feat-img img{width:100%;height:100%;object-fit:cover;display:block;}
.ar-feat-body{padding:clamp(28px,3.5vw,48px);}
.ar-feat-eyebrow{font:700 11px/1 'Archivo';letter-spacing:.12em;text-transform:uppercase;color:#1FD9EE!important;}
.ar-feat-title{margin:14px 0 0;font:700 clamp(24px,2.8vw,34px)/1.25 'Archivo';color:#fff!important;}
.ar-feat-meta{margin-top:12px;font:500 14px/1 'Barlow';color:#8FAFCB!important;}
.ar-feat-excerpt{margin:16px 0 0;font:400 16px/1.6 'Barlow';color:#BBD3E8!important;}
.ar-readmore{margin-top:22px;display:inline-flex;align-items:center;gap:8px;color:#1FD9EE!important;font:700 15px/1 'Archivo';}

/* category tabs */
.ar-tabs{margin-top:clamp(32px,4vw,44px);display:flex;gap:10px;flex-wrap:wrap;}
.ar-tab{padding:9px 18px;border-radius:999px;cursor:pointer;font:600 13px/1 'Barlow';
  border:1px solid rgba(255,255,255,.15);background:transparent;color:#9FB6CE;
  transition:background .25s ease,color .25s ease,border-color .25s ease;}
.ar-tab:hover{color:#fff;border-color:rgba(255,255,255,.35);}
.ar-tab.active{background:#1FD9EE;border-color:#1FD9EE;color:#03101F;}

/* card grid */
.ar-grid{margin-top:clamp(28px,3.5vw,40px);display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.ar-grid.is-loading{opacity:.45;transition:opacity .2s ease;}
.ar-card{display:flex;flex-direction:column;background:#0B2545;border-radius:16px;overflow:hidden;
  border:1px solid rgba(31,217,238,.12);text-decoration:none!important;
  transition:transform .3s ease,box-shadow .3s ease;}
.ar-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(0,0,0,.3);}
.ar-card-img{aspect-ratio:16/10;overflow:hidden;}
.ar-card-img img{width:100%;height:100%;object-fit:cover;display:block;}
.ar-card-body{padding:22px;}
.ar-card-title{margin:0;font:700 19px/1.3 'Archivo';color:#fff!important;}
.ar-card-date{margin-top:10px;font:500 13px/1 'Barlow';color:#8FAFCB!important;}
.ar-card-excerpt{margin:12px 0 0;font:400 14px/1.55 'Barlow';color:#BBD3E8!important;}
.ar-empty{grid-column:1/-1;font:400 16px/1.6 'Barlow';color:#BBD3E8!important;text-align:center;}

/* numbered pagination */
.ar-pager{margin-top:36px;display:flex;align-items:center;justify-content:center;gap:16px;}
.ar-pager button{border:none;background:transparent;cursor:pointer;color:#9FB6CE;font:700 14px/1 'Archivo';}
.ar-pg-num{width:36px;height:36px;border-radius:50%;transition:background .25s ease,color .25s ease;}
.ar-pg-num.active{background:#1FD9EE;color:#03101F;}
.ar-pg-num:not(.active):hover{color:#fff;}
.ar-pg-arrow{font-size:20px;padding:0 4px;}
.ar-pager button:disabled{opacity:.35;cursor:default;}

@media (max-width:980px){
  .ar-feat-card{grid-template-columns:1fr;}
  .ar-feat-img{min-height:0;aspect-ratio:16/10;}
  .ar-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){ .ar-grid{grid-template-columns:1fr;} }

/* ===== PRIVACY POLICY PAGE ===== */
.pp-sec{background:#F4F8FC!important;padding:clamp(40px,5vw,60px) 24px clamp(56px,7vw,90px)!important;}
.pp-sec .et_pb_row{max-width:800px!important;}
.pp-h1.pp-h1.pp-h1{margin:0 0 22px;font-family:'Archivo';font-weight:800;font-size:clamp(28px,3.6vw,42px);letter-spacing:-.02em;color:#0B2545!important;}
.pp-body.pp-body.pp-body h2{margin:28px 0 12px!important;font:700 22px/1.3 'Archivo'!important;color:#0B2545!important;}
.pp-body.pp-body.pp-body h2:first-child{margin-top:0!important;}
.pp-body p{margin:0 0 14px;font:400 16px/1.65 'Barlow';color:#41618A!important;}
.pp-body p strong{color:#0B2545!important;}

/* ===== TERMS OF SERVICE PAGE ===== */
.tos-hero{background:#F4F8FC!important;padding:clamp(40px,5vw,60px) 24px 0!important;}
.tos-hero .et_pb_row{max-width:900px!important;}
.tos-hero-inner{text-align:center;}
.tos-h1.tos-h1.tos-h1{margin:0;font-family:'Archivo';font-weight:800;font-size:clamp(28px,3.6vw,42px);letter-spacing:-.02em;color:#0B2545!important;}
.tos-meta{margin:6px 0 0;font:400 15px/1.5 'Barlow';color:#5A7AA0!important;}
.tos-meta.italic{font-style:italic;margin-top:18px;}
.tos-meta.italic.light{font-size:14px;color:#8FAFCB!important;margin-top:14px;}
.tos-body-sec{background:#F4F8FC!important;padding:0 24px clamp(56px,7vw,90px)!important;}
.tos-body-sec .et_pb_row{max-width:900px!important;}
.tos-section{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid rgba(11,37,69,.1);}
.tos-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.tos-body.tos-body.tos-body h2{margin:0 0 12px!important;font:700 22px/1.3 'Archivo'!important;color:#0B2545!important;}
.tos-body.tos-body.tos-body h3{margin:20px 0 8px!important;font:700 17px/1.3 'Archivo'!important;color:#0B2545!important;}
.tos-body p{margin:0 0 12px;font:400 16px/1.6 'Barlow';color:#41618A!important;}
.tos-body p strong{color:#0B2545!important;}
.tos-body p.italic{font-style:italic;}
.tos-body p.strong{font-weight:600;color:#0B2545!important;}
.tos-body ul{margin:0 0 12px;padding-left:20px;}
.tos-body ul li{margin:0 0 8px;font:400 16px/1.6 'Barlow';color:#41618A!important;}
@media(max-width:980px){.pp-sec,.tos-hero,.tos-body-sec{padding-left:20px!important;padding-right:20px!important;}}

/* ============================================================
   BACK TO TOP
   Every design file specifies a sticky circular control, bottom-right,
   that fades in past 500px of scroll. Sits beside the chat launcher
   (58px, 20px from the corner) — stacked above it, the widget's greeting
   bubble covered it.
   ============================================================ */
#rd-to-top{
  position:fixed;right:92px;bottom:25px;z-index:2147483000;
  width:48px;height:48px;border-radius:50%;border:none;cursor:pointer;
  background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F;
  font:700 16px/1 'Archivo';box-shadow:0 12px 28px rgba(11,37,69,.35);
  opacity:0;transform:translateY(16px);pointer-events:none;
  transition:opacity .3s ease,transform .3s ease;
}
#rd-to-top.show{opacity:1;transform:translateY(0);pointer-events:auto;}
@media(max-width:980px){#rd-to-top{right:88px;bottom:27px;width:44px;height:44px;}}

/* ============================================================
   SERVICE PAGES (website-design, digital-marketing, seo-services,
   google-ads, lsa-management, youtube-ads, meta-ads, tiktok-ads,
   ai-automations) — all nine share this one template.
   ============================================================ */
.svc-h1{margin:0;font-family:'Archivo';font-weight:800;font-size:clamp(34px,4.8vw,62px);line-height:1.02;letter-spacing:-.025em;color:#fff!important;}
.svc-h1 .grad{background:linear-gradient(90deg,#1FD9EE,#6BC8FF);-webkit-background-clip:text;background-clip:text;color:transparent!important;}
.svc-h2{margin:16px 0 0;font-family:'Archivo';font-weight:800;font-size:clamp(28px,3.4vw,44px);line-height:1.08;letter-spacing:-.02em;color:#0B2545!important;}
.svc-h2.white.svc-h2.white{color:#fff!important;}
.svc-h2 .blue{color:#2F9BF5!important;} .svc-h2.white .blue{color:#1FD9EE!important;}
.svc-h2.center,.svc-eyebrow.center,.svc-lead.center{text-align:center;}
.svc-h2.center{margin-left:auto;margin-right:auto;max-width:820px;}
.svc-eyebrow{font:600 12px/1 'Barlow';letter-spacing:.18em;text-transform:uppercase;color:#2F9BF5!important;}
.svc-eyebrow.cyan{color:#1FD9EE!important;}
.svc-lead{margin:18px 0 0;font:400 17px/1.7 'Barlow';color:#5A7AA0!important;}
.svc-lead.light{color:#BBD3E8!important;}
.svc-lead.center{margin-left:auto;margin-right:auto;max-width:720px;}
.svc-lead a{color:#2F9BF5!important;}
/* buttons */
.svc-btn{display:inline-block;margin-top:26px;padding:16px 30px;border-radius:999px;font:700 15px/1 'Archivo';text-decoration:none!important;transition:background .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease;}
.svc-btn-grad{background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F!important;}
.svc-btn-grad:hover{box-shadow:0 10px 26px rgba(31,217,238,.45);transform:translateY(-2px);}
.svc-btn-navy{background:#0B2545;color:#fff!important;}
.svc-btn-navy:hover{background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F!important;}
.svc-btn-ghost{border:1px solid rgba(255,255,255,.3);color:#fff!important;}
.svc-btn-ghost:hover{background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F!important;border-color:transparent;}
.svc-center-btn{text-align:center;}
/* hero */
.svc-hero{background:radial-gradient(1100px 620px at 78% -10%,rgba(47,155,245,.28),transparent 60%),#0B2545!important;padding:clamp(48px,5vw,80px) 0 clamp(40px,5vw,72px)!important;}
.svc-hero-grid{display:flex;flex-wrap:wrap;gap:clamp(30px,4vw,64px);align-items:center;}
.svc-hero-copy{flex:1 1 440px;min-width:0;}
.svc-hero-media{flex:1 1 380px;min-width:0;width:100%;aspect-ratio:4/3;border-radius:26px;overflow:hidden;border:1px solid rgba(31,217,238,.3);box-shadow:0 40px 90px rgba(0,0,0,.45);}
.svc-hero-media img{width:100%;height:100%;object-fit:cover;display:block;}
.svc-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid rgba(31,217,238,.4);border-radius:999px;margin-bottom:26px;font:600 12px/1 'Barlow';letter-spacing:.16em;text-transform:uppercase;color:#9FE8F5!important;}
.svc-pill .dot{width:7px;height:7px;border-radius:50%;background:#1FD9EE;display:block;}
.svc-hero-sub{margin:24px 0 0;max-width:540px;font:400 clamp(16px,1.3vw,19px)/1.6 'Barlow';color:#BBD3E8!important;}
.svc-hero-em{margin:14px 0 0;font:600 16px/1.5 'Barlow';color:#9FE8F5!important;}
.svc-hero-btns{display:flex;flex-wrap:wrap;gap:14px;}
/* stats */
.svc-stats{background:#06172E!important;padding:clamp(40px,5vw,64px) 0!important;border-bottom:1px solid rgba(255,255,255,.08);}
.svc-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:clamp(20px,3vw,40px);text-align:center;}
.svc-stat .k{font:800 clamp(30px,4vw,48px)/1 'Archivo';color:#1FD9EE!important;}
.svc-stat .v{margin-top:10px;font:500 clamp(14px,1.2vw,16px)/1.45 'Barlow';color:#BBD3E8!important;}
/* shared two-column split */
.svc-split{display:flex;flex-wrap:wrap;gap:clamp(30px,4vw,64px);align-items:center;}
.svc-copy{flex:1 1 440px;min-width:0;}
.svc-media{flex:1 1 380px;min-width:0;width:100%;aspect-ratio:4/3;border-radius:20px;overflow:hidden;box-shadow:0 30px 70px rgba(11,37,69,.18);}
.svc-media img{width:100%;height:100%;object-fit:cover;display:block;}
.svc-map-frame{border:0;width:100%;height:100%;display:block;}
.svc-intro{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.svc-checks{display:flex;flex-direction:column;gap:14px;margin-top:24px;}
.svc-check{display:flex;gap:12px;align-items:flex-start;}
.svc-check .tick{flex:0 0 auto;width:20px;height:20px;margin-top:2px;border-radius:50%;background:#1FD9EE;display:flex;align-items:center;justify-content:center;font:700 11px/1 'Archivo';color:#03101F!important;}
.svc-check p{margin:0;font:400 16px/1.55 'Barlow';color:#41618A!important;}
.svc-check p strong{color:#0B2545!important;font-weight:600;}
/* fee / inline pricing */
.svc-fee{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.svc-fee .svc-h2 .blue{color:#2F9BF5!important;}
/* website-design tiers */
.svc-pricing{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.svc-tiers{margin-top:clamp(34px,4vw,54px);display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;align-items:start;}
.svc-tier{padding:34px;background:#fff;border-radius:20px;border:1px solid #E2EBF5;display:flex;flex-direction:column;height:100%;}
.svc-tier.popular{border:2px solid #1FD9EE;box-shadow:0 30px 60px rgba(31,217,238,.18);}
.svc-tier .name{font:700 13px/1 'Archivo';letter-spacing:.1em;text-transform:uppercase;color:#2F9BF5!important;}
.svc-tier.popular .name{color:#1FD9EE!important;}
.svc-tier .price{margin-top:14px;display:flex;align-items:baseline;gap:6px;}
.svc-tier .amt{font:800 44px/1 'Archivo';color:#0B2545!important;}
.svc-tier .per{font:500 15px/1 'Barlow';color:#5A7AA0!important;}
.svc-tier .sub{margin-top:6px;font:500 14px/1.4 'Barlow';color:#8FAFCB!important;}
.svc-tier .feats{margin-top:20px;display:flex;flex-direction:column;gap:12px;}
.svc-tier .f{display:flex;gap:10px;align-items:flex-start;padding-bottom:12px;border-bottom:1px solid #E2EBF5;font:400 15px/1.5 'Barlow';color:#41618A!important;}
.svc-tier .f .tick{flex:0 0 auto;color:#2F9BF5!important;font:700 14px/1.4 'Archivo';}
.svc-tier .svc-btn{margin-top:auto;text-align:center;}
/* market / proof / case study */
.svc-market{background:#fff!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.svc-proof{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.svc-proof .svc-split,.svc-case .svc-split{flex-wrap:wrap-reverse;}
.svc-case{background:linear-gradient(160deg,#0B2545,#123A6B 55%,#0B2545)!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.svc-case .svc-media{border-radius:22px;border:1px solid rgba(31,217,238,.25);}
.svc-case .svc-media img{object-position:top;}
.svc-stars{margin-top:22px;font:700 16px/1.4 'Archivo';color:#1FD9EE!important;}
/* services grid */
.svc-grid-sec,.svc-grid{--x:0;}
.rd-sec.svc-grid{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.rd-sec.svc-grid .svc-grid{margin-top:clamp(28px,3.5vw,48px);display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;background:#E2EBF5;border:1px solid #E2EBF5;border-radius:20px;overflow:hidden;}
.svc-card{position:relative;background:#fff;padding:30px 26px 34px;display:flex;flex-direction:column;gap:12px;transition:background .25s ease;}
/* stretched link keeps the whole card clickable without an <a> wrapping blocks */
.svc-card-link{position:absolute;inset:0;z-index:1;text-decoration:none!important;}
.svc-card:hover{background:#F4F8FC;}
.svc-card .n{font:700 12px/1 'Archivo';letter-spacing:.14em;color:#8FAFCB!important;}
.svc-card .t{font:700 20px/1.2 'Archivo';color:#0B2545!important;}
.svc-card .d{font:400 15px/1.6 'Barlow';color:#5A7AA0!important;}
.svc-card .more{margin-top:auto;padding-top:18px;font:600 13px/1 'Barlow';letter-spacing:.06em;color:#2F9BF5!important;}
/* closing CTA + FAQ */
.svc-cta{background:linear-gradient(160deg,#0B2545,#123A6B 55%,#0B2545)!important;padding:clamp(28px,3.5vw,48px) 0!important;text-align:center;}
.svc-faq{background:#F4F8FC!important;padding:clamp(28px,3.5vw,48px) 0!important;}
.svc-faq .et_pb_row{max-width:1000px!important;}
.svc-faq-list{margin-top:clamp(28px,3.5vw,48px);display:flex;flex-direction:column;gap:14px;}
@media(max-width:980px){
  .svc-hero-media,.svc-media{aspect-ratio:16/10;}
  .svc-h2.center{max-width:none;}
}

/* ============================================================
   ARTICLE DETAIL (single blog post)
   Design: full-bleed featured image hero with a dark gradient scrim,
   then a two-column body + sidebar.
   ============================================================ */
/* Divi paints the featured image as a background on the module itself
   (.et_pb_featured_bg), so the scrim and full-bleed go on .ad-title. */
.ad-hero{padding:0!important;background:#06172E!important;position:relative;}
.ad-hero .et_pb_row{max-width:none!important;width:100%!important;padding:0!important;margin:0!important;}
.ad-hero .et_pb_column{padding:0!important;margin:0!important;}
.ad-title.et_pb_post_title{
  position:relative;min-height:clamp(320px,38vw,460px);
  display:flex;align-items:flex-end;
  background-size:cover!important;background-position:center!important;
  padding:24px 0 clamp(28px,4vw,44px)!important;margin:0!important;
}
.ad-title:before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(6,23,46,.35),rgba(6,23,46,.88) 85%);}
.ad-title .et_pb_title_container{position:relative;z-index:2;width:100%;max-width:1280px;margin:0 auto;padding:0 24px;}
.ad-title .entry-title{margin:0;max-width:900px;font-family:'Archivo';font-weight:800;font-size:clamp(28px,4vw,50px);line-height:1.12;letter-spacing:-.02em;color:#fff!important;}
.ad-title .et_pb_title_meta_container{margin-top:16px;font:500 14px/1 'Barlow';color:#BBD3E8!important;}
.ad-title .et_pb_title_meta_container a,.ad-title .et_pb_title_meta_container span{color:#BBD3E8!important;}
/* breadcrumb sits inside the hero over the image, per the design */
.ad-crumbs{position:relative;z-index:3;max-width:1280px;margin:-34px auto 0!important;padding:0 24px clamp(24px,3vw,34px);font:500 13px/1.4 'Barlow';color:#9FB6CE!important;}
.ad-crumbs *{color:#9FB6CE!important;font:500 13px/1.4 'Barlow'!important;}
.ad-crumbs .et-breadcrumb .et-breadcrumb-item:last-child,.ad-crumbs span:last-child{color:#fff!important;}
/* body + sidebar */
.ad-body-sec{background:#F4F8FC!important;padding:clamp(40px,5vw,60px) 0 clamp(56px,7vw,90px)!important;}
.ad-body-sec .et_pb_row{max-width:1280px!important;display:grid!important;grid-template-columns:2.2fr 1fr;gap:clamp(30px,4vw,56px);align-items:start;}
.ad-body-sec .et_pb_column{width:100%!important;margin:0!important;float:none!important;}
.ad-content{font:400 17px/1.75 'Barlow';color:#41618A!important;}
.ad-content h2{margin:34px 0 14px;font:700 clamp(22px,2.4vw,30px)/1.25 'Archivo';color:#0B2545!important;}
.ad-content h3{margin:26px 0 12px;font:700 clamp(18px,2vw,22px)/1.3 'Archivo';color:#0B2545!important;}
.ad-content p{margin:0 0 18px;font:400 17px/1.75 'Barlow';color:#41618A!important;}
.ad-content p strong,.ad-content li strong{color:#0B2545!important;}
.ad-content a{color:#2F9BF5!important;}
.ad-content ul,.ad-content ol{margin:0 0 18px;padding-left:22px;}
.ad-content li{margin:0 0 10px;font:400 17px/1.7 'Barlow';color:#41618A!important;}
.ad-content img{max-width:100%;height:auto;border-radius:14px;}
.ad-nav{margin-top:40px;padding-top:24px;border-top:1px solid #D9E5F1;}
.ad-nav a{font:600 15px/1 'Barlow';color:#2F9BF5!important;}
/* sidebar */
.ad-aside .et_pb_module{margin-bottom:34px!important;}
.ad-search input.et_pb_s{padding:13px 14px!important;border-radius:8px!important;border:1px solid #D9E5F1!important;background:#fff!important;font:400 14px/1 'Barlow'!important;color:#0B2545!important;}
.ad-search input.et_pb_searchsubmit{border:none!important;border-radius:8px!important;background:#D9E5F1!important;color:#41618A!important;font:600 13px/1 'Barlow'!important;padding:0 18px!important;}
/* The widget area outputs block markup (wp-block-heading / -categories-list),
   not the classic widget classes, so target those. */
.ad-sidebar .widgettitle,.ad-sidebar h2,.ad-sidebar h3,.ad-sidebar h4,
.ad-sidebar .wp-block-heading{font:700 17px/1.2 'Archivo'!important;color:#0B2545!important;margin:0 0 16px!important;}
.ad-sidebar ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.ad-sidebar li{border:none!important;padding:0!important;margin:0!important;}
.ad-sidebar a{font:400 15px/1.3 'Barlow'!important;color:#41618A!important;text-decoration:none!important;}
.ad-sidebar a:hover{color:#2F9BF5!important;}
.ad-sidebar .et_pb_widget{margin-bottom:34px!important;float:none!important;width:100%!important;}
.ad-sidebar .wp-block-separator{border:0;border-top:1px solid #D9E5F1;margin:28px 0;}
.ad-sidebar .wp-block-search__inside-wrapper{display:flex;gap:10px;}
.ad-sidebar .wp-block-search__input{flex:1 1 auto;min-width:0;padding:13px 14px!important;border-radius:8px!important;
  border:1px solid #D9E5F1!important;background:#fff!important;font:400 14px/1 'Barlow'!important;color:#0B2545!important;}
.ad-sidebar .wp-block-search__button{flex:0 0 auto;border:none!important;border-radius:8px!important;
  background:#D9E5F1!important;color:#41618A!important;font:600 13px/1 'Barlow'!important;padding:0 18px!important;}
.ad-sidebar .wp-block-search__label{display:none;}
@media(max-width:980px){
  .ad-body-sec .et_pb_row{grid-template-columns:1fr;}
}

/* ============================================================
   HEADING TYPEFACE
   Divi's text-module preset (.preset--module--divi-text--default
   .et_pb_text_inner h1..h6) sets Poppins at specificity 0,2,1, which beats
   every single-class heading rule here — so headings inside text modules were
   silently rendering in Poppins instead of the design's Archivo. Force it.
   ============================================================ */
.et_pb_text_inner h1,.et_pb_text_inner h2,.et_pb_text_inner h3,
.et_pb_text_inner h4,.et_pb_text_inner h5,.et_pb_text_inner h6,
.rd-h1,.rd-h2,.rd-h3,.rd-hero-h1,.svc-h1,.svc-h2,.pd-h1-heading,
.rv-subhead,.tos-h1,.pp-h1,.ar-feat-title,.ar-card-title,
.et_pb_post_title .entry-title{
  font-family:'Archivo',system-ui,sans-serif!important;
}
/* the design's headings are 800; Divi's preset forces 700 */
.rd-h1,.rd-h2,.rd-hero-h1,.svc-h1,.svc-h2,.pd-h1-heading,.rv-subhead,
.tos-h1,.pp-h1,.et_pb_post_title .entry-title{font-weight:800!important;}
.rd-h3,.ar-feat-title,.ar-card-title{font-weight:700!important;}
/* headings that live in raw HTML inside text modules keep their own sizes */
.et_pb_text_inner h2.rd-h2{font-size:clamp(30px,3.6vw,50px)!important;}
.et_pb_text_inner h2.svc-h2{font-size:clamp(28px,3.4vw,44px)!important;}

/* ============================================================
   DESIGN-MATCH CORRECTIONS (audit pass)
   ============================================================ */
/* FAQ accordion — design uses Barlow 600 17px questions and a 30px toggle that
   inverts when open. */
.rd-faq .q{font:600 17px/1.4 'Barlow'!important;color:#0B2545!important;}
.rd-faq .sign{width:30px!important;height:30px!important;background:#EAF2FA!important;color:#2F9BF5!important;}
.rd-faq[open] .sign{background:#0B2545!important;color:#fff!important;}
.rd-faq .a{font:400 16px/1.65 'Barlow'!important;color:#41618A!important;}

/* Services grid — white band, design grid metrics, heading row with CTA */
.rd-sec.svc-grid{background:#fff!important;}
/* The design's auto-fit rule only yields 5 columns because its preview always
   renders at a logical 1280px. Pin the column count so the intended 5-up row
   holds at real desktop widths instead of collapsing to 4. */
.rd-sec.svc-grid .svc-grid{background:#DDE8F3;border-color:#DDE8F3;border-radius:22px;
  grid-template-columns:repeat(5,1fr);}
@media(max-width:1180px){.rd-sec.svc-grid .svc-grid{grid-template-columns:repeat(4,1fr);}}
@media(max-width:900px){.rd-sec.svc-grid .svc-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:680px){.rd-sec.svc-grid .svc-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:460px){.rd-sec.svc-grid .svc-grid{grid-template-columns:1fr;}}
/* heading and CTA share one row; wpautop wraps the button in a <p>, so the
   paragraph is the flex item that must not wrap or carry margins */
.svc-grid-head,.rd-services-head{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;}
.svc-grid-head>div:first-child,.rd-services-head>h2,.svc-grid-head>h2{flex:1 1 380px;min-width:0;}
/* design: max-width:820px and clamp(30px,3.6cqw,50px) - the cap is what makes
   the heading wrap to two lines beside the CTA */
.svc-grid-head .svc-h2,.rd-services-head .rd-h2{margin:16px 0 0;text-align:left;max-width:820px;}
.svc-grid-head .svc-h2{font-size:clamp(30px,3.6vw,50px)!important;line-height:1.05;}
.svc-grid-head>p,.rd-services-head>p{margin:0!important;flex:0 0 auto;}
.svc-grid-head .svc-btn,.rd-services-head .rd-btn{margin-top:0;white-space:nowrap;}

/* Button sizes per design: hero and fee CTAs are larger than section buttons */
.svc-hero-btns .svc-btn{padding:17px 30px;font-size:16px;}
.svc-fee .svc-btn,.svc-pricing .svc-center-btn .svc-btn,.svc-cta .svc-btn{padding:17px 32px;font-size:16px;margin-top:34px;}

/* Pricing tiers — badge, lead-in, guarantee, includes panel */
.svc-tier{position:relative;}
.tier-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  padding:6px 16px;border-radius:999px;background:#0B2545;color:#fff!important;
  font:700 11px/1 'Archivo';letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;}
.tier-lead{font:600 15px/1.4 'Barlow';color:#0B2545!important;margin-bottom:4px;}
.tier-guarantee{margin-top:14px;text-align:center;font:500 13px/1.4 'Barlow';color:#8FAFCB!important;}
.svc-tier.popular .f .tick{color:#1FD9EE!important;}
.svc-tier>.svc-btn{margin-top:auto;text-align:center;}
/* min gap between last feature divider and the button (matches /pricing tier-card 24px) */
.svc-tier .feats{margin-bottom:24px;}
.svc-includes{margin-top:clamp(28px,3.5vw,44px);padding:clamp(24px,3vw,34px);
  background:#fff;border:1px solid #E2EBF5;border-radius:20px;}
.svc-includes .inc-head{font:700 18px/1 'Archivo';color:#0B2545!important;margin-bottom:18px;text-align:center;}
.svc-includes .inc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;}
.svc-includes .inc{display:flex;gap:10px;align-items:flex-start;font:400 15px/1.5 'Barlow';color:#41618A!important;}
.svc-includes .inc .tick{color:#2F9BF5!important;font:700 14px/1.4 'Archivo';}
.svc-note{margin:14px auto 0;max-width:760px;text-align:center;font:400 14px/1.6 'Barlow';color:#5A7AA0!important;}
.svc-note a{color:#2F9BF5!important;}

/* Case study quote + attribution (design: italic quote, white name) */
.svc-quote{margin:12px 0 0;font:italic 400 16px/1.6 'Barlow';color:#BBD3E8!important;}
.svc-attrib{margin:14px 0 0;font:600 15px/1.4 'Barlow';color:#fff!important;}

/* Marketing CTA headings are smaller in the design than the global .rd-h2 */
.rd-marketing-cta .rd-h2{font-size:clamp(26px,3vw,38px)!important;}
.rd-pricing-hero .rd-eyebrow,.rd-page-hero .rd-eyebrow.blue{color:#9FE8F5!important;}
.rd-upgrades-hero .rd-h1{font-size:clamp(30px,4vw,50px)!important;max-width:700px;}

/* Homepage hero: dot-grid overlay and stat hover from the design */
.rd-hero{position:relative;}
.rd-hero:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background-image:radial-gradient(rgba(255,255,255,.14) 1px,transparent 1px);
  background-size:26px 26px;opacity:.35;}
.rd-hero>*{position:relative;z-index:1;}
.rd-hero-stats .stat{transition:background .3s ease,transform .3s ease;}
.rd-hero-stats .stat:hover{background:#0F2E56;transform:translateY(-3px);}
.rd-yt-main{transition:border-color .3s ease,transform .3s ease,box-shadow .3s ease;}
.rd-yt-main:hover{border-color:#1FD9EE!important;transform:translateY(-4px);box-shadow:0 20px 44px rgba(31,217,238,.25);}


@media(max-width:700px){
  .svc-grid-head,.rd-services-head{flex-direction:column;align-items:flex-start;}
}

/* ============================================================
   GLOBAL SECTION GUTTER
   Every design section specifies `padding: <vertical> 24px`. The per-section
   rules above only set vertical padding, so between 980px and 1280px the
   content ran edge-to-edge. This enforces the horizontal gutter everywhere.
   Declared last so it wins over the shorthand `padding: X 0 Y !important`.
   ============================================================ */
.rd-sec{padding-left:24px!important;padding-right:24px!important;}
@media(max-width:980px){.rd-sec{padding-left:20px!important;padding-right:20px!important;}}

/* ============================================================
   TEXT RENDERING
   Divi applies -webkit-font-smoothing:antialiased globally. The design files
   never set it, so they render with the browser default (subpixel). On macOS
   antialiased draws noticeably thinner/lighter, which made every heading and
   paragraph look lighter than the design. Restore the default.
   ============================================================ */
html,body,body #page-container,.et_pb_module,.et_pb_text_inner,
h1,h2,h3,h4,h5,h6,p,li,a,span,div{
  -webkit-font-smoothing:auto!important;
  -moz-osx-font-smoothing:auto!important;
}

/* ============================================================
   LEGAL PAGES - remaining deltas vs the design spec
   ============================================================ */
/* Divi's preset forces Poppins on list items inside text modules
   (.preset--module--divi-text--default .et_pb_text_inner ul > li, 0,2,2). */
.et_pb_text_inner ul>li,.et_pb_text_inner ol>li,
.tos-body li,.pp-body li,.ad-content li{
  font-family:'Barlow',system-ui,sans-serif!important;
}
.tos-body.tos-body li,.pp-body.pp-body li{font:400 16px/1.6 'Barlow'!important;color:#41618A!important;margin-bottom:6px;}
.tos-body.tos-body p,.pp-body.pp-body p{font:400 16px/1.65 'Barlow'!important;color:#41618A!important;}
/* design: .tos-section{padding:30px 0;border-bottom:1px solid #D9E5F1} */
.tos-section{padding:30px 0!important;margin-bottom:0!important;border-bottom:1px solid #D9E5F1!important;}
.tos-section:first-child{padding-top:0!important;}
.tos-section:last-child{border-bottom:none!important;padding-bottom:0!important;}

/* dark tier variant (digital-marketing "Market Domination") */
.svc-tier.dark{background:#0B2545!important;border-color:#0B2545!important;}
.svc-tier.dark .name{color:#1FD9EE!important;}
.svc-tier.dark .amt{color:#fff!important;}
.svc-tier.dark .per,.svc-tier.dark .sub{color:#A9C4DC!important;}
.svc-tier.dark .f{color:#BBD3E8!important;border-bottom-color:rgba(255,255,255,.12)!important;}
.svc-tier.dark .f .tick{color:#1FD9EE!important;}
.svc-tier.dark .tier-lead{color:#fff!important;}
.svc-tier.dark .tier-guarantee{color:#8FAFCB!important;}

/* Divi renders its own back-to-top even with the theme option off in Divi 5;
   the design's button (#rd-to-top) is the one we use, so hide the duplicate. */
.et_pb_scroll_top{display:none!important;}

/* Divi's own default hard-sets text-align:left on .et_pb_text_inner, which
   breaks normal CSS inheritance for any section relying on text-align:center
   cascading down from the section (.rd-certs, .rd-pricing-hero, etc.) rather
   than an explicit .center class on every child. Restore natural inheritance
   so a section-level text-align actually reaches its raw-HTML content. */
body .et_pb_text_inner.et_pb_text_inner.et_pb_text_inner{text-align:inherit!important;}

/* Divi 5's flex columns are themselves flex items with the browser default
   min-width:auto, which stops them shrinking below their content's intrinsic
   minimum size. Any overflow-x content inside one (the horizontal brand
   marquee) forced the WHOLE column - and everything downstream of it,
   including headings sitting beside it - out to that un-shrunk width. This
   is what actually pushed the brands heading 5700px off-screen; every fix
   applied further down the tree (.rd-marquee, .et_pb_text_inner) was just
   inheriting a column that was already the wrong width. */
/* min-width:0 lets the column shrink to fit an overflow-x child (the
   marquee); flex-grow:1 is needed too or it settles at that shrunk
   content width instead of growing back to fill the row. */
body .et_pb_column.et_flex_column{min-width:0!important;flex-grow:1!important;}

.rd-certs .et_pb_text_inner,.rd-certs p,.rd-certs-lead,.rd-certs-foot{text-align:center!important;}

/* Several global blocks ended up with a nested .reveal div - the original
   content already had one, then extracting it into the shared block wrapped
   it again. The inner div has no explicit width, and it was shrink-wrapping
   to its content instead of filling the outer .reveal, which is what pulled
   the certs checklist and any similarly-doubled section out of center. */
.reveal .reveal{width:100%!important;}

/* Global blocks render their own section inside a host column, which caps
   the background at the column width. Break the inner section out to the
   full viewport; the inner row still centers the content. */
html,body{overflow-x:clip;}
.rd-global-slot,.rd-global-ref{overflow:visible!important;}
.rd-global-slot .rd-sec,.rd-global-ref .rd-sec{
  width:100vw!important;max-width:100vw!important;box-sizing:border-box;
  position:relative;left:50%;margin-left:-50vw!important;margin-right:0!important;
}
/* host wrappers add no spacing of their own */
.rd-global-slot,.rd-global-ref,
.rd-global-slot>.et_pb_row,.rd-global-ref>.et_pb_row{padding-top:0!important;padding-bottom:0!important;}

/* Divi's text preset forces h3 inside text modules to black */
body .et_pb_text_inner h3.ar-card-title{color:#fff!important;}

/* project detail CTA: Divi's text module resets alignment to start */
.pd-cta-sec .et_pb_text,.pd-cta-sec .et_pb_text_inner,.pd-cta-h2.pd-cta-h2.pd-cta-h2{text-align:center!important;}

/* portfolio category labels are plain text now, not links */
.rd-portfolio-module p.post-meta{color:#2F9BF5!important;}

/* ============================================================
   DESKTOP NAV: slightly larger menu font
   ============================================================ */
@media(min-width:981px){#site-header .et-menu>li:not(.nav-cta)>a{font-size:16px!important;}}

/* ============================================================
   TABLET / MOBILE HEADER ([rd_mobile_header], GlobalMobileMenu design)
   ============================================================ */
#site-header .rd-mh-module{display:none!important;}
#site-header .et_pb_menu{margin-bottom:0!important;}
#site-header .et-menu li.rd-mobile-only{display:none!important;}
.rd-mh a{text-decoration:none!important;}
.rd-mh [hidden]{display:none!important;}
@media(max-width:980px){
  #site-header{padding:0!important;}
  #site-header .et_pb_row{padding:0!important;width:100%!important;max-width:100%!important;position:relative;}
  #site-header .et_pb_menu{display:none!important;}
  #site-header .rd-mh-module{display:block!important;margin:0!important;width:100%!important;flex:1 1 100%!important;}
  #site-header .et_pb_column{width:100%!important;}
  .rd-mh-bar{display:flex;align-items:center;gap:14px;padding:14px 18px;}
  .rd-mh-logo{display:flex;align-items:center;}
  #site-header .rd-mh-logo img{height:30px!important;width:auto!important;display:block;}
  .rd-mh-actions{margin-left:auto;display:flex;align-items:center;gap:14px;}
  .rd-mh-phone{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;color:#1FD9EE!important;font-size:16px;line-height:1;}
  .rd-mh-toggle{width:36px;height:36px;border:none;background:transparent;color:#E8F1FA;font-size:22px;line-height:1;cursor:pointer;padding:0;}
  .rd-mh-cta-tab{display:none;}
  .rd-mh-cta-bar{display:block;width:100%;box-sizing:border-box;padding:15px;background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F!important;font:700 14px/1 'Archivo'!important;letter-spacing:.02em;text-align:center;}
  .rd-mh-nav{position:absolute;left:0;right:0;top:100%;z-index:5;background:#03101F;border-top:3px solid #1FD9EE;box-shadow:0 24px 50px rgba(0,0,0,.45);max-height:calc(100vh - 140px);overflow-y:auto;text-align:left;}
  .rd-mh-item{border-bottom:1px solid rgba(255,255,255,.08);}
  .rd-mh-row{display:flex;align-items:center;}
  .rd-mh-item.open .rd-mh-row{background:#06172E;}
  .rd-mh-link{flex:1 1 auto;display:block;padding:17px 20px;font:700 15px/1 'Archivo'!important;letter-spacing:.01em;color:#fff!important;}
  .rd-mh-link:hover,.rd-mh-link.active{color:#1FD9EE!important;}
  .rd-mh-sub-toggle{flex:0 0 auto;width:28px;height:28px;margin-right:18px;border:none;border-radius:6px;cursor:pointer;padding:0;background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F;font:700 18px/28px 'Archivo'!important;text-align:center;}
  .rd-mh-item.open .rd-mh-sub-toggle{background:#fff;}
  .rd-mh-sub{background:#0B2545;border-top:1px solid rgba(255,255,255,.06);}
  .rd-mh-sublink{display:block;padding:15px 20px 15px 40px;border-bottom:1px solid rgba(255,255,255,.05);font:500 14px/1 'Barlow'!important;letter-spacing:.01em;color:#BBD3E8!important;}
  .rd-mh-sublink:hover{color:#1FD9EE!important;background:rgba(31,217,238,.06);}
  .rd-mh-sublink.active{color:#1FD9EE!important;}
  .rd-mh-btns{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;}
  .rd-mh-btn-grad,.rd-mh-btn-call{display:block;padding:16px;border-radius:10px;font:700 15px/1 'Archivo'!important;text-align:center;}
  .rd-mh-btn-grad{background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F!important;}
  .rd-mh-btn-call{background:#0B2545;border:1px solid rgba(31,217,238,.35);color:#fff!important;}
}
/* tablet: CTA sits in the bar, next to the menu icon */
@media(min-width:768px) and (max-width:980px){
  .rd-mh-cta-bar{display:none;}
  .rd-mh-cta-tab{display:inline-block;padding:12px 20px;border-radius:999px;background:linear-gradient(90deg,#1FD9EE,#2F9BF5);color:#03101F!important;font:700 14px/1 'Archivo'!important;white-space:nowrap;}
  .rd-mh-nav{max-height:calc(100vh - 80px);}
}

/* mobile header CTA bar: vertical bounce instead of the wiggle */
@keyframes ctaHop{
  0%,55%{transform:translateY(0);}
  59%{transform:translateY(-5px);} 63%{transform:translateY(0);}
  66%{transform:translateY(-2px);} 69%,100%{transform:translateY(0);}
}
.rd-mh-cta-label{display:inline-block;animation:ctaHop 3.2s ease-in-out infinite;}
.rd-mh-cta-bar:hover .rd-mh-cta-label{animation-play-state:paused;}
@media(prefers-reduced-motion:reduce){.rd-mh-cta-label{animation:none;}}

/* The footer card is lifted 38px into the last body section on desktop
   (.reveal-footer-card). Sections that end a page need the extra room or
   their content butts against the card. (All widths, per design.) */
@media all{
  .svc-faq,.rd-marketing-cta{padding-bottom:calc(clamp(28px,3.5vw,48px) + 56px)!important;}
}

/* In-page anchors (Explore Services, See Pricing ...) glide instead of jump,
   and stop below the sticky header. */
html{scroll-behavior:smooth;scroll-padding-top:90px;}
@media(max-width:980px){html{scroll-padding-top:120px;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}

/* Desktop dropdown opens below the header bar, not over it. The parent li's
   padding (cancelled by negative margin, so layout is unchanged) carries the
   hover area down to the dropdown so it doesn't close in the gap. */
@media(min-width:981px){
  #site-header .et-menu>li.menu-item-has-children{padding-bottom:40px!important;margin-bottom:-40px!important;}
  #site-header .et-menu>li.menu-item-has-children>ul.sub-menu{top:100%!important;margin-top:0!important;}
}

/* Hero: section padding alone sets the space under the header (Divi's row
   padding was adding another ~20-35px on top). */
.rd-hero>.et_pb_row,.svc-hero>.et_pb_row{padding-top:0!important;}
/* home: FAQ + map section ends the page — a touch more room above the footer card */
@media all{.rd-faqs:last-child{padding-bottom:calc(clamp(28px,3.5vw,48px) + 32px)!important;}}

/* Footer CTA: title and button share one centered line (the button's
   wrapping <p> carried a bottom margin that pushed the title up). */
.rd-footer-cta p{margin:0!important;padding:0!important;}
/* Tablet footer: 3-column grid so the wrapped second row (Quick Links,
   Contact) lines up under the first row's columns. */
@media(min-width:768px) and (max-width:980px){
  .rd-footer-cols{display:grid!important;grid-template-columns:1.3fr 1fr 1fr;column-gap:32px;row-gap:40px;}
  .rd-footer-cols .fcol-brand p{margin-top:20px;}
}

/* Footer CTA under 900px (GlobalFooter design "compact"): centered column. */
@media(max-width:899px){
  .rd-footer-cta{flex-direction:column;justify-content:center;text-align:center;}
  .rd-footer-cta h3{text-align:center!important;}
}

/* ============================================================
   iPhone QA fixes (9/28)
   ============================================================ */
/* Services grid global: its own "padding:.. 0" rule removed the side gutter */
.rd-sec.svc-grid,.rd-services{padding-left:24px!important;padding-right:24px!important;}
@media(max-width:980px){
  .rd-sec.svc-grid,.rd-services{padding-left:20px!important;padding-right:20px!important;}
  /* heading block was flex:1 1 <basis> — in a column layout that basis became a ~380px height */
  .svc-grid-head>*,.rd-services-head>*{flex:0 0 auto!important;}
  .svc-grid-head,.rd-services-head{gap:22px!important;}
}
/* Service hero CTAs: when they stack, each button's top margin added to the gap */
.svc-hero-btns{margin-top:26px;}
.svc-hero-btns .svc-btn{margin-top:0!important;}
@media(max-width:600px){.svc-hero-btns{gap:12px;}}
/* Project detail hero: Divi row/module spacing stacked up above and below the heading */
@media(max-width:980px){
  .pd-hero{padding-top:32px!important;}
  .pd-hero .et_pb_row{padding-top:0!important;padding-bottom:0!important;}
  .pd-hero .et_pb_module{margin-bottom:12px!important;}
  .pd-hero .et_pb_module:last-child{margin-bottom:0!important;}
  .pd-hero+.et_pb_section{padding-top:24px!important;}
}
/* Portfolio filter: Divi gives each pill a fixed 50% width + float on mobile */
.et_pb_portfolio_filters ul{display:flex!important;flex-wrap:wrap;justify-content:center;gap:10px;padding:0!important;}
.et_pb_portfolio_filters li{width:auto!important;float:none!important;margin:0!important;}
@media(max-width:600px){.et_pb_portfolio_filters ul{gap:8px;}}
/* YouTube play buttons in YouTube's red (the ▶ glyph rendered as an emoji on iOS) */
.rd-yt-main .play,.rd-yt-card .play{background:#FF0000!important;border-radius:14px!important;width:68px!important;height:48px!important;font-size:0!important;color:transparent!important;box-shadow:0 6px 18px rgba(0,0,0,.35);}
.rd-yt-main .play::before,.rd-yt-card .play::before{content:"";display:block;margin-left:4px;border-style:solid;border-width:10px 0 10px 17px;border-color:transparent transparent transparent #fff;}
.rd-yt-card .play.sm{width:44px!important;height:31px!important;border-radius:9px!important;}
.rd-yt-card .play.sm::before{border-width:7px 0 7px 12px;margin-left:3px;}
/* mobile header phone: line icon (the ☎ glyph rendered as a red emoji on iOS) */
.rd-mh-phone svg{width:17px;height:17px;display:block;}

/* ============================================================
   Converted legacy (generator) pages — extra local sections
   ============================================================ */
.svc-program{background:#fff!important;padding-top:clamp(28px,3.5vw,48px)!important;padding-bottom:clamp(28px,3.5vw,48px)!important;}
.svc-program .svc-lead.center{max-width:820px;}
.svc-checks-2{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px!important;max-width:1100px;margin-left:auto;margin-right:auto;}
@media(max-width:767px){.svc-checks-2{grid-template-columns:1fr;}}
.svc-h3,body .et_pb_text_inner h3.svc-h3{margin:clamp(30px,3.5vw,44px) 0 0;font:800 clamp(20px,2vw,26px)/1.2 'Archivo'!important;letter-spacing:-.01em;color:#0B2545!important;}
.svc-h3.center{text-align:center;}
.svc-copy .svc-h3{margin-top:30px;}
.svc-trust{margin-top:20px!important;}
.svc-faq-local{background:#fff!important;}
.svc-program .svc-center-btn,.svc-market .svc-center-btn{margin-top:clamp(26px,3vw,36px);}

/* converted pages: roomier checklists */
.svc-checks-2{gap:22px 36px!important;}
.svc-checks-2 .svc-check{padding:18px 20px;background:#F4F8FC;border:1px solid #E2EBF5;border-radius:14px;}
.svc-proof .svc-checks-2 .svc-check{background:#fff;}
@media(max-width:767px){.svc-checks-2{gap:12px!important;} .svc-checks-2 .svc-check{padding:16px;}}
body .svc-check p a,body .svc-lead a{font:inherit!important;color:#2F9BF5!important;text-decoration:underline;text-underline-offset:2px;}
/* tablet: a roomier side gutter than phones (20px felt tight at 768–980) */
@media(min-width:768px) and (max-width:980px){
  .rd-sec,.rd-sec.svc-grid,.rd-services{padding-left:32px!important;padding-right:32px!important;}
  #site-footer .et_pb_row{padding-left:32px!important;padding-right:32px!important;}
}

/* converted location pages: breadcrumb bar above the footer (links up to the parent service) */
.svc-crumbs-sec{background:#F4F8FC!important;padding-top:0!important;padding-bottom:calc(38px + clamp(28px,3vw,40px))!important;}
.svc-faq-ref:has(+ .svc-crumbs-sec) .svc-faq{padding-bottom:clamp(20px,2.5vw,32px)!important;}
.svc-crumbs{max-width:1000px;margin:0 auto;padding-top:18px;border-top:1px solid #E2EBF5;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font:500 14px/1.5 'Barlow';color:#5A7AA0!important;}
body .svc-crumbs a{font:600 14px/1.5 'Barlow'!important;color:#2F9BF5!important;text-decoration:none;}
body .svc-crumbs a:hover{text-decoration:underline;}
.svc-crumbs .sep{color:#8FAFCB!important;}
.svc-crumbs span[aria-current]{color:#5A7AA0!important;}
.svc-parent-link{margin-top:18px!important;}
body .svc-parent-link a{font:600 16px/1.4 'Archivo'!important;color:#2F9BF5!important;text-decoration:none;}
.svc-parent-link a:hover{text-decoration:underline;}
.svc-related{background:#fff!important;padding-top:clamp(28px,3.5vw,48px)!important;padding-bottom:clamp(28px,3.5vw,48px)!important;}
.svc-related-list{list-style:none;margin:clamp(22px,3vw,32px) auto 0!important;padding:0!important;max-width:1100px;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;}
.svc-related-list li{margin:0!important;padding:0!important;}
.svc-related-list li::before{display:none!important;}
body .svc-related-list a{display:block;height:100%;padding:14px 18px;border:1px solid #E2EBF5;border-radius:12px;background:#F4F8FC;font:500 15px/1.4 'Barlow'!important;color:#0B2545!important;text-decoration:none;transition:border-color .2s,color .2s;}
body .svc-related-list a:hover{border-color:#1FD9EE;color:#2F9BF5!important;}
/* website plans: term line under each price (matches Scalable Websites) */
.tier-term{margin-top:6px;font:500 14px/1.4 'Barlow';color:#8FAFCB!important;}
.svc-tier .sub{font-weight:500;}
/* related pages: no list bullets/markers, cards centred */
body .svc-related-list,body .svc-related-list li{list-style:none!important;}
.svc-related-list li::marker{content:''!important;}
.svc-related-list{justify-content:center;}

/* ===== Utility pages (contact, onboarding, thank-you, founder bio, sitemap) ===== */
.ut-hero .rd-h1 .grad{background:linear-gradient(90deg,#1FD9EE,#6BC8FF);-webkit-background-clip:text;background-clip:text;color:transparent!important;}
.ut-hero .ut-btns{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:30px;}
.ut-hero .ut-phone-light{color:#BBD3E8!important;margin-top:22px;}
.ut-hero .ut-phone-light a{color:#1FD9EE!important;}
/* contact */
.ut-contact-sec{background:#F4F8FC!important;padding:clamp(48px,6vw,88px) 0!important;}
.ut-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(24px,3vw,44px);max-width:1180px;margin:0 auto;align-items:start;}
.ut-contact-info{display:flex;flex-direction:column;gap:14px;}
.ut-info-card{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid #E1EAF4;border-radius:18px;padding:18px 22px;box-shadow:0 10px 30px rgba(11,37,69,.06);}
.ut-ic{flex:0 0 46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#03101F;background:linear-gradient(135deg,#1FD9EE,#2F9BF5);}
.ut-lbl{font:600 12px/1 'Barlow';letter-spacing:.16em;text-transform:uppercase;color:#5A7AA0;margin-bottom:6px;}
.ut-val{margin:0!important;padding:0!important;font:600 17px/1.4 'Archivo';color:#0B2545!important;}
.ut-val a{color:#0B2545!important;text-decoration:none;} .ut-val a:hover{color:#2F9BF5!important;}
.ut-map{border-radius:18px;overflow:hidden;border:1px solid #E1EAF4;height:260px;}
.ut-map iframe{width:100%;height:100%;border:0;display:block;}
.ut-contact-form.sched-card{max-width:none!important;margin:0!important;box-shadow:0 30px 70px rgba(11,37,69,.14);}
.ut-form-h{margin:0 0 10px!important;font:800 clamp(22px,2vw,28px)/1.2 'Archivo';color:#0B2545!important;text-align:center;}
.ut-contact-form .ut-form iframe{min-height:757px;}
/* onboarding */
.ut-card-sec{margin-top:0;padding-top:clamp(8px,1vw,16px)!important;}
.sched-card.ut-card-wide{max-width:860px!important;}
.ut-card-wide .ut-form iframe{min-height:1510px;}
/* founder bio */
.ut-bio-sec{background:#fff!important;padding:clamp(48px,6vw,88px) 20px!important;}
.ut-bio{max-width:760px;margin:0 auto;text-align:center;}
.ut-bio-lead{font:400 clamp(17px,1.4vw,20px)/1.7 'Barlow';color:#2B4A6F!important;margin:0 0 18px!important;}
.ut-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:26px 0 8px;}
.ut-chips a{padding:10px 18px;border-radius:999px;border:1px solid #CFE0F1;background:#F4F8FC;font:600 14px/1 'Barlow';color:#0B2545!important;text-decoration:none;}
.ut-chips a:hover{border-color:#2F9BF5;color:#2F9BF5!important;}
.ut-bio .rd-center-btn{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.ut-bio .rd-btn-ghost.ut-ghost-dark{border-color:#CFE0F1;color:#0B2545!important;}
.ut-bio .rd-btn-ghost.ut-ghost-dark:hover{border-color:#2F9BF5;color:#2F9BF5!important;}
/* html sitemap */
.ut-sitemap-sec{background:#F4F8FC!important;padding:clamp(48px,6vw,88px) 20px!important;}
.rd-sitemap{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(28px,3vw,44px);}
.rd-sm-h{margin:0 0 16px!important;font:800 clamp(22px,2vw,28px)/1.2 'Archivo';color:#0B2545!important;}
.rd-sm-list{list-style:none!important;margin:0!important;padding:0!important;}
.rd-sm-list li{list-style:none!important;padding:0!important;margin:0 0 8px!important;break-inside:avoid;}
.rd-sm-list li::marker{content:none;}
.rd-sm-list a{font:500 15px/1.45 'Barlow';color:#2B4A6F!important;text-decoration:none;}
.rd-sm-list a:hover{color:#2F9BF5!important;}
.rd-sm-cols{columns:3 260px;column-gap:32px;}
.rd-sm-block > .rd-sm-cols{background:#fff;border:1px solid #E1EAF4;border-radius:18px;padding:22px 26px!important;}
.rd-sm-svc{background:#fff;border:1px solid #E1EAF4;border-radius:18px;margin-bottom:12px;overflow:hidden;}
.rd-sm-svc summary{display:flex;align-items:center;gap:14px;padding:18px 24px;cursor:pointer;list-style:none;}
.rd-sm-svc summary::-webkit-details-marker{display:none;}
.rd-sm-svc summary a{font:700 18px/1.3 'Archivo';color:#0B2545!important;text-decoration:none;}
.rd-sm-svc summary a:hover{color:#2F9BF5!important;}
.rd-sm-count{margin-left:auto;font:600 12px/1 'Barlow';letter-spacing:.12em;text-transform:uppercase;color:#5A7AA0;}
.rd-sm-svc .sign{position:relative;width:14px;height:14px;flex:0 0 14px;}
.rd-sm-svc .sign::before,.rd-sm-svc .sign::after{content:'';position:absolute;left:0;top:6px;width:14px;height:2px;background:#2F9BF5;transition:transform .25s;}
.rd-sm-svc .sign::after{transform:rotate(90deg);} .rd-sm-svc[open] .sign::after{transform:rotate(0);}
.rd-sm-svc > .rd-sm-cols{padding:4px 24px 20px!important;border-top:1px solid #EEF3F9;padding-top:18px!important;}
.rd-sm-more{margin:14px 0 0!important;} .rd-sm-more a{font:700 15px/1 'Archivo';color:#2F9BF5!important;}
@media(max-width:900px){
  .ut-contact-grid{grid-template-columns:1fr;}
  .ut-contact-sec{padding-left:20px!important;padding-right:20px!important;}
  .rd-sm-svc summary{padding:16px 18px;flex-wrap:wrap;} .rd-sm-count{margin-left:0;order:3;flex-basis:100%;}
  .rd-sm-svc .sign{margin-left:auto;}
}
/* thank-you page: reviews block is the last section — clear the footer CTA card that overlaps the footer top */
.ut-reviews-ref .rd-reviews{padding-bottom:calc(clamp(28px,3.5vw,48px) + 72px)!important;}
