:root{--navy:#082f55;--navy-dark:#061f39;--red:#c80000;--red-dark:#a90000;--cream:#f6f3ee;--light:#f5f7f9;--text:#17212b;--muted:#69737d;--white:#fff;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",Arial,sans-serif;color:var(--text);background:#fff;line-height:1.65}img{max-width:100%;display:block}a{text-decoration:none}.container{width:min(1380px,calc(100% - 70px));margin:0 auto}
.utility-bar{position:absolute;top:0;left:0;width:100%;height:48px;z-index:1100;color:#fff;transition:opacity .3s ease,transform .3s ease}.utility-inner{height:48px;display:flex;align-items:center;justify-content:flex-end}.utility-right,.social-icons,.utility-phone{display:flex;align-items:center}.utility-right{gap:20px}.social-icons{gap:17px}.social-icons a{color:#fff;font-size:16px;opacity:.92;transition:.25s}.social-icons a:hover,.utility-phone:hover{color:#ef3b43}.optional-social[href="#"]{display:none}.utility-divider{color:rgba(255,255,255,.45);font-size:20px}.utility-phone{gap:10px;color:#fff;font-size:15px;font-weight:700}
.header{position:absolute;top:48px;left:0;width:100%;z-index:1000;color:#fff;background:transparent;transition:background .3s,top .3s,box-shadow .3s}.header-inner{height:112px;display:flex;align-items:center;justify-content:space-between;gap:45px;transition:height .3s}.logo{display:flex;align-items:center;flex:0 0 auto}.logo img{height:auto;transition:width .3s}.logo-default{display:block;width:255px}.logo-scrolled{display:none;width:175px}.nav{display:flex;align-items:center;gap:34px}.nav>a,.nav-item>a{position:relative;color:#fff;font-size:16px;font-weight:600;padding:41px 0;transition:.25s}.nav>a:not(.nav-quote):after,.nav-item>a:after{content:"";position:absolute;left:0;bottom:29px;width:0;height:2px;background:var(--red);transition:.25s}.nav>a:hover:after,.nav-item:hover>a:after{width:100%}.nav i{font-size:10px;margin-left:4px}.nav-quote{border:1px solid rgba(255,255,255,.78);border-radius:100px;padding:14px 26px!important}.nav-quote:hover{background:#fff;color:#111!important}.nav-item{position:relative}.dropdown-menu{position:absolute;top:88px;left:-24px;min-width:230px;background:#fff;padding:13px 0;box-shadow:0 18px 45px rgba(0,0,0,.14);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s}.nav-item:hover .dropdown-menu{opacity:1;visibility:visible;transform:none}.dropdown-menu a{display:block;color:#111;padding:10px 22px;font-size:14px;font-weight:600}.dropdown-menu a:hover{color:var(--red);background:#fafafa}.menu-btn{display:none;background:none;border:0;color:#fff;font-size:28px;cursor:pointer}
body.header-scrolled .utility-bar{opacity:0;pointer-events:none;transform:translateY(-100%)}body.header-scrolled .header{position:fixed;top:0;background:#fff;box-shadow:0 5px 25px rgba(0,0,0,.1)}body.header-scrolled .header-inner{height:74px}body.header-scrolled .logo-default{display:none}body.header-scrolled .logo-scrolled{display:block;width:170px;max-height:54px;object-fit:contain}body.header-scrolled .nav{gap:29px}body.header-scrolled .nav>a,body.header-scrolled .nav-item>a{color:#111;font-size:14px;padding:25px 0}body.header-scrolled .nav>a:not(.nav-quote):after,body.header-scrolled .nav-item>a:after{bottom:16px}body.header-scrolled .nav-quote{padding:10px 21px!important;background:var(--red);border-color:var(--red);color:#fff!important}body.header-scrolled .dropdown-menu{top:62px}
.hero{position:relative;min-height:870px;display:flex;align-items:center;color:#fff;overflow:hidden;background:#111}.hero-media{position:absolute;inset:0;z-index:0}.hero-media video,.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.30)}.hero:after{content:"";position:absolute;width:650px;height:650px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-260px;top:170px;z-index:2}.hero-inner{position:relative;z-index:3}.hero-content{max-width:820px;padding-top:165px;padding-bottom:130px}.hero-kicker{display:flex;align-items:center;gap:15px;margin-bottom:30px;font-family:"Manrope",sans-serif;font-size:12px;letter-spacing:3px;text-transform:uppercase;font-weight:700}.hero-kicker:before{content:"";width:46px;height:2px;background:var(--red)}.hero h1{margin:0;font-family:"Manrope",sans-serif;font-size:clamp(64px,7.1vw,112px);line-height:.92;letter-spacing:-5px;font-weight:700;text-shadow:0 2px 15px rgba(0,0,0,.18)}.hero h1 span{display:block;font-weight:500}.hero p{max-width:625px;margin:38px 0 37px;font-size:19px;line-height:1.7;color:rgba(255,255,255,.9)}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.primary-btn,.white-btn,.cta-button{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 31px;border-radius:100px;font-weight:700;transition:.25s}.primary-btn{background:var(--red);color:#fff}.primary-btn:hover{background:var(--red-dark);transform:translateY(-2px)}.text-link{color:#fff;font-weight:700}.text-link span{margin-left:8px}.hero-bottom{position:absolute;left:0;bottom:0;width:100%;z-index:4}.hero-bottom-inner{display:flex;justify-content:flex-end}.hero-contact{width:650px;display:grid;grid-template-columns:1fr 1fr;background:#fff}.hero-contact a{padding:29px 38px;color:var(--text);transition:.25s}.hero-contact a:first-child{border-right:1px solid #e4e4e4}.hero-contact a:hover{background:#f6f6f6}.hero-contact small{display:block;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.hero-contact strong{font-family:"Manrope",sans-serif;color:#111;font-size:17px}
.home-cms-content{padding:70px 0 20px}.cms-content-inner{font-size:17px;color:#4f5962}.cms-content-inner p{margin:0 0 1.2em}.intro{padding:140px 0 130px}.intro-grid{display:grid;grid-template-columns:.65fr 1.6fr;gap:120px}.section-number{color:var(--red);font-family:"Manrope",sans-serif;font-size:12px;letter-spacing:1px;font-weight:700;text-transform:uppercase}.intro h2{max-width:980px;margin:0 0 42px;font-family:"Manrope",sans-serif;font-size:clamp(46px,5vw,78px);line-height:1.03;letter-spacing:-3.3px;color:#111}.intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:900px}.intro-copy p{margin:0;color:var(--muted);font-size:17px}
.insurance{position:relative;padding:130px 0;background:#082f55;color:#fff;overflow:hidden}.insurance-top{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:75px}.insurance-top h2{margin:18px 0 0;font-family:"Manrope",sans-serif;font-size:clamp(46px,5vw,76px);line-height:.99;letter-spacing:-3px;font-weight:600}.insurance-top p{width:400px;margin:0;color:rgba(255,255,255,.62)}.insurance-list{border-top:1px solid rgba(255,255,255,.18)}.insurance-row{display:grid;grid-template-columns:80px 1fr 320px 70px;align-items:center;min-height:145px;border-bottom:1px solid rgba(255,255,255,.18);color:#fff;transition:.3s}.insurance-row:hover{padding-left:18px;background:rgba(255,255,255,.04)}.insurance-index{color:rgba(255,255,255,.35);font-size:12px}.insurance-row h3{margin:0;font-family:"Manrope",sans-serif;font-size:38px;font-weight:500;letter-spacing:-1.4px}.insurance-row p{margin:0;color:rgba(255,255,255,.55);font-size:14px}.insurance-arrow{text-align:right;font-size:28px}
.story{background:var(--cream)}.story-grid{display:grid;grid-template-columns:1fr 1fr;min-height:760px}.story-image{min-height:760px;background:url('/assets/about-rig.jpg') center/cover no-repeat}.story-copy{padding:110px 9vw;display:flex;flex-direction:column;justify-content:center}.story-copy h2{max-width:620px;margin:20px 0 36px;font-family:"Manrope",sans-serif;font-size:clamp(45px,5vw,74px);line-height:1;letter-spacing:-3px;color:#111}.story-copy p{max-width:620px;color:#5f6870;font-size:17px}.dark-link{margin-top:18px;color:#111;font-weight:700}.dark-link:hover{color:var(--red)}
.other-coverage{padding:120px 0;background:var(--light)}.other-top{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:55px}.other-top h2{margin:15px 0 0;font-family:"Manrope",sans-serif;font-size:clamp(42px,4vw,64px);line-height:1;letter-spacing:-2.5px;color:#111}.other-top p{max-width:450px;color:var(--muted)}.other-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ddd}.other-item{min-height:250px;padding:45px;background:#fff;color:var(--text);transition:.25s}.other-item:hover{background:#111;color:#fff}.other-item-number{display:block;margin-bottom:50px;color:var(--red);font-size:12px;font-weight:700}.other-item h3{margin:0 0 10px;font-family:"Manrope",sans-serif;font-size:27px}.other-item p{margin:0;color:var(--muted);font-size:14px}.other-item:hover p{color:rgba(255,255,255,.68)}
.quote-section{padding:125px 0}.quote-box{min-height:410px;padding:75px;display:flex;align-items:center;justify-content:space-between;gap:100px;background:var(--red);color:#fff}.quote-box h2{max-width:760px;margin:0;font-family:"Manrope",sans-serif;font-size:clamp(52px,5.5vw,84px);line-height:.94;letter-spacing:-4px}.quote-right{width:340px;flex:0 0 340px}.white-btn{margin-top:25px;background:#fff;color:#111}.white-btn:hover{background:#111;color:#fff;transform:translateY(-2px)}
.interior-hero{position:relative;min-height:550px;display:flex;align-items:flex-end;background:#111;color:#fff;overflow:hidden}.interior-hero .hero-media{position:absolute;inset:0}.interior-overlay{position:absolute;inset:0;background:rgba(0,0,0,.42);z-index:1}.interior-hero-inner{position:relative;z-index:2;padding-top:180px;padding-bottom:70px}.interior-kicker{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:2.5px;color:#fff;margin-bottom:12px}.interior-hero h1{margin:0;font-family:"Manrope",sans-serif;font-size:clamp(42px,5vw,72px);line-height:1;letter-spacing:-2.5px}.interior-main{padding:85px 0}.interior-content-inner{max-width:1050px;font-size:17px}.interior-content-inner h2,.interior-content-inner h3{font-family:"Manrope",sans-serif;color:#111;line-height:1.15}.interior-content-inner h2{font-size:38px}.interior-content-inner a{color:var(--red)}.interior-content-inner img{height:auto}.interior-content-inner p{margin:0 0 1.25em}
.big-cta{padding:95px 0;background:#111;color:#fff}.cta-content{max-width:980px}.cta-eyebrow{color:#ef6167;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:2px}.cta-content h2{margin:12px 0 20px;font-family:"Manrope",sans-serif;font-size:clamp(42px,5vw,70px);line-height:1}.cta-details{max-width:720px;color:rgba(255,255,255,.72);font-size:17px}.cta-actions{display:flex;gap:25px;align-items:center;margin-top:30px}.cta-button{background:var(--red);color:#fff}.cta-phone{color:#fff;font-weight:700}
.footer{padding:100px 0 35px;background:#082f55;color:#fff}.footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:70px}.footer-logo{max-width:225px;margin-bottom:25px}.footer-brand p{max-width:350px}.footer h4{margin:0 0 22px;font-family:"Manrope",sans-serif}.footer p,.footer a{color:rgba(255,255,255,.6);font-size:14px}.footer a{display:block;width:max-content;margin-bottom:10px}.footer a:hover{color:#fff}.footer-social{display:flex;gap:14px;margin-top:25px}.footer-social a{margin:0;color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:80px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.42);font-size:12px}
@media(max-width:1100px){.nav{gap:20px}.nav>a,.nav-item>a{font-size:14px}.logo-default{width:220px}.insurance-row{grid-template-columns:60px 1fr 250px 50px}.intro-grid{gap:70px}}
@media(max-width:900px){.container{width:calc(100% - 34px)}.utility-inner{justify-content:center}.header{top:48px}.header-inner{height:88px}.logo-default{width:190px}.nav{display:none;position:fixed;top:0;right:0;width:min(360px,88vw);height:100vh;background:#fff;padding:95px 30px 35px;flex-direction:column;align-items:stretch;gap:0;box-shadow:-10px 0 35px rgba(0,0,0,.16);overflow:auto}.nav.is-open{display:flex}.nav>a,.nav-item>a,body.header-scrolled .nav>a,body.header-scrolled .nav-item>a{color:#111;font-size:17px;padding:14px 0}.nav>a:after,.nav-item>a:after{display:none}.nav-quote,body.header-scrolled .nav-quote{margin-top:15px;text-align:center;padding:12px 20px!important}.dropdown-menu{position:static;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;padding:0 0 8px 15px}.nav-item.is-open .dropdown-menu{display:block}.dropdown-menu a{padding:8px 0}.menu-btn{display:block;position:relative;z-index:1200}body.header-scrolled .header{top:0}body.header-scrolled .header-inner{height:68px}body.header-scrolled .logo-scrolled{width:150px}body.header-scrolled .menu-btn,.nav-open .menu-btn{color:#111}.hero{min-height:780px}.hero-content{padding-top:170px;padding-bottom:165px}.hero h1{font-size:62px;letter-spacing:-3px}.hero-contact{width:100%}.intro{padding:90px 0}.intro-grid{grid-template-columns:1fr;gap:25px}.intro-copy{grid-template-columns:1fr;gap:18px}.insurance{padding:90px 0}.insurance-top,.other-top{display:block}.insurance-top p{width:auto;max-width:520px;margin-top:28px}.insurance-row{grid-template-columns:45px 1fr 40px;min-height:110px}.insurance-row p{display:none}.insurance-row h3{font-size:28px}.story-grid{grid-template-columns:1fr}.story-image{min-height:470px}.story-copy{padding:80px 35px}.other-grid{grid-template-columns:1fr}.other-top p{margin-top:25px}.quote-box{display:block;padding:60px 40px}.quote-right{width:auto;margin-top:35px}.footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.utility-bar,.utility-inner{height:44px}.utility-right{gap:10px}.social-icons{gap:9px}.social-icons a{font-size:12px}.utility-phone{font-size:11px}.header{top:44px}.header-inner{height:78px}.logo-default{width:170px}.hero{min-height:760px}.hero-media video,.hero-media img{object-position:60% center}.hero-content{padding-top:150px}.hero h1{font-size:49px;letter-spacing:-2.5px}.hero p{font-size:16px}.hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.hero-contact{grid-template-columns:1fr}.hero-contact a{padding:18px 24px}.hero-contact a:first-child{border-right:0;border-bottom:1px solid #e4e4e4}.intro h2{font-size:42px;letter-spacing:-2px}.insurance-top h2{font-size:45px}.story-image{min-height:360px}.story-copy{padding:60px 22px}.other-coverage{padding:80px 0}.quote-section{padding:65px 0}.quote-box{padding:48px 27px;min-height:auto}.quote-box h2{font-size:48px;letter-spacing:-2px}.footer-main{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}.cta-actions{align-items:flex-start;flex-direction:column}.interior-hero{min-height:360px}.interior-hero-inner{padding-top:145px;padding-bottom:55px}.interior-main{padding:60px 0}}

/* =========================================================
   RANKIN INSURANCE BLOG
========================================================= */
.rig-blog-intro{max-width:950px;margin:0 0 60px}.rig-blog-label{margin-bottom:16px;color:var(--red);font-family:"Manrope",sans-serif;font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase}.rig-blog-intro h2{margin:0 0 24px;color:var(--navy-dark);font-family:"Manrope",sans-serif;font-size:clamp(42px,5vw,72px);line-height:1.02;letter-spacing:-3px}.rig-blog-intro p{max-width:760px;margin:0;color:var(--muted);font-size:18px;line-height:1.75}.rig-blog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid #e2e5e8;color:var(--muted);font-size:13px}.rig-blog-toolbar span:first-child{color:var(--navy-dark);font-weight:700}.rig-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 28px}.rig-blog-card{min-width:0;background:#fff}.rig-blog-image{position:relative;display:block;overflow:hidden;aspect-ratio:1.48/1;background:#eef1f3}.rig-blog-image:after{content:"";position:absolute;inset:0;background:rgba(6,31,57,0);transition:.3s ease}.rig-blog-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.rig-blog-card:hover .rig-blog-image img{transform:scale(1.035)}.rig-blog-card:hover .rig-blog-image:after{background:rgba(6,31,57,.08)}.rig-blog-card-body{padding:25px 4px 0}.rig-blog-meta{display:flex;align-items:center;gap:12px;margin-bottom:14px;color:#838c95;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.rig-blog-meta span:first-child{color:var(--red)}.rig-blog-meta span+span:before{content:"/";margin-right:12px;color:#c6cbd0}.rig-blog-card h3{margin:0 0 15px;font-family:"Manrope",sans-serif;font-size:25px;line-height:1.2;letter-spacing:-.8px}.rig-blog-card h3 a{color:var(--navy-dark);transition:.2s ease}.rig-blog-card h3 a:hover{color:var(--red)}.rig-blog-summary{margin-bottom:20px;color:var(--muted);font-size:15px;line-height:1.7}.rig-blog-summary p{margin:0}.rig-blog-readmore{display:inline-flex;align-items:center;gap:9px;color:var(--navy-dark);font-size:14px;font-weight:800}.rig-blog-readmore span{transition:transform .2s ease}.rig-blog-readmore:hover{color:var(--red)}.rig-blog-readmore:hover span{transform:translateX(5px)}.rig-blog-empty{padding:55px;background:var(--light);text-align:center}.rig-blog-empty h3{margin:0 0 10px;color:var(--navy-dark);font:700 30px/1.2 "Manrope",sans-serif}.rig-blog-empty p{margin:0;color:var(--muted)}.rig-blog-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;margin-top:70px;padding-top:30px;border-top:1px solid #e2e5e8}.rig-page-arrow{color:var(--navy-dark);font-size:14px;font-weight:700}.rig-page-arrow:last-child{text-align:right}.rig-page-arrow:hover{color:var(--red)}.rig-page-numbers{display:flex;align-items:center;gap:8px}.rig-page-numbers a,.rig-page-numbers span{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--navy-dark);font-weight:700;font-size:13px}.rig-page-numbers a:hover,.rig-page-numbers .is-current{background:var(--red);color:#fff}.rig-article{max-width:960px;margin:0 auto}.rig-article-topline{display:flex;align-items:center;gap:18px;margin-bottom:26px;color:#8a9299;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.rig-article-topline a{color:var(--red)}.rig-article-topline span:before{content:"/";margin-right:18px;color:#c4c9cd}.rig-article-lead{max-width:850px;margin:0 0 38px;color:#56616b;font-family:"Manrope",sans-serif;font-size:22px;line-height:1.65}.rig-article-lead p{margin:0}.rig-article-featured{margin:0 0 48px}.rig-article-featured img{width:100%;height:auto}.rig-article-content{color:#3f4952;font-size:17px;line-height:1.85}.rig-article-content h2,.rig-article-content h3,.rig-article-content h4{font-family:"Manrope",sans-serif;color:var(--navy-dark);line-height:1.2}.rig-article-content h2{margin:52px 0 20px;font-size:36px;letter-spacing:-1.2px}.rig-article-content h3{margin:40px 0 18px;font-size:27px}.rig-article-content p{margin:0 0 22px}.rig-article-content a{color:var(--red);font-weight:600}.rig-article-content ul,.rig-article-content ol{margin:0 0 26px;padding-left:24px}.rig-article-content li{margin-bottom:9px}.rig-article-content img{max-width:100%;height:auto;margin:28px 0}.rig-article-pdf{margin-top:45px}.rig-article-back{margin-top:60px;padding-top:28px;border-top:1px solid #e2e5e8}.rig-article-back a{color:var(--navy-dark);font-weight:800}.rig-article-back a:hover{color:var(--red)}
@media(max-width:980px){.rig-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.rig-blog-intro{margin-bottom:42px}.rig-blog-intro h2{font-size:42px;letter-spacing:-2px}.rig-blog-intro p{font-size:16px}.rig-blog-toolbar{display:block}.rig-blog-toolbar span{display:block;margin-bottom:5px}.rig-blog-grid{grid-template-columns:1fr;gap:42px}.rig-blog-card h3{font-size:23px}.rig-blog-pagination{grid-template-columns:1fr 1fr}.rig-page-numbers{grid-row:2;grid-column:1/-1;justify-content:center}.rig-article-lead{font-size:19px}.rig-article-content{font-size:16px}.rig-article-content h2{font-size:30px}}

/* =========================================================
   RANKIN INSURANCE BLOG - ARTICLE DETAIL / SIDEBAR / TAGS
========================================================= */
.rig-article-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:78px;
    align-items:start;
    max-width:1260px;
    margin:0 auto;
}
.rig-article-main{min-width:0;}
.rig-article-sidebar{
    min-width:0;
    position:sticky;
    top:105px;
}
.rig-sidebar-heading{
    margin-bottom:22px;
    padding-bottom:20px;
    border-bottom:1px solid #e1e5e8;
}
.rig-sidebar-heading span{
    display:block;
    margin-bottom:6px;
    color:var(--red);
    font-size:11px;
    font-weight:800;
    letter-spacing:1.6px;
    text-transform:uppercase;
}
.rig-sidebar-heading h2{
    margin:0;
    color:var(--navy-dark);
    font-family:"Manrope",sans-serif;
    font-size:28px;
    line-height:1.15;
    letter-spacing:-1px;
}
.rig-sidebar-post{
    padding:0 0 24px;
    margin:0 0 24px;
    border-bottom:1px solid #e5e8eb;
}
.rig-sidebar-post:last-child{margin-bottom:0;}
.rig-sidebar-post-link{
    display:grid;
    grid-template-columns:100px minmax(0,1fr);
    gap:18px;
    align-items:start;
}
.rig-sidebar-post-link:has(.rig-sidebar-post-copy:only-child){grid-template-columns:1fr;}
.rig-sidebar-post-image{
    overflow:hidden;
    aspect-ratio:1/1;
    background:#eef1f3;
}
.rig-sidebar-post-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}
.rig-sidebar-post-link:hover .rig-sidebar-post-image img{transform:scale(1.05);}
.rig-sidebar-post-date{
    display:block;
    margin:0 0 7px;
    color:#929aa1;
    font-size:10px;
    font-weight:700;
    letter-spacing:.8px;
    text-transform:uppercase;
}
.rig-sidebar-post h3{
    margin:0 0 9px;
    color:var(--navy-dark);
    font-family:"Manrope",sans-serif;
    font-size:17px;
    line-height:1.32;
    letter-spacing:-.35px;
    transition:color .2s ease;
}
.rig-sidebar-post-link:hover h3{color:var(--red);}
.rig-sidebar-read{
    color:var(--red);
    font-size:11px;
    font-weight:800;
    letter-spacing:.2px;
}
.rig-sidebar-empty{margin:0;color:var(--muted);font-size:14px;line-height:1.65;}
.rig-article-tags{
    margin-top:52px;
    padding-top:28px;
    border-top:1px solid #e2e5e8;
}
.rig-article-tags-title{
    margin-bottom:14px;
    color:var(--navy-dark);
    font-family:"Manrope",sans-serif;
    font-size:13px;
    font-weight:800;
    letter-spacing:1px;
    text-transform:uppercase;
}
.rig-tag-list{display:flex;flex-wrap:wrap;gap:9px;}
.rig-tag{
    display:inline-flex;
    align-items:center;
    min-height:35px;
    padding:7px 13px;
    border:1px solid #dde2e6;
    border-radius:100px;
    background:#f7f8f9;
    color:#56616b;
    font-size:12px;
    font-weight:600;
    line-height:1.2;
}

/* Short description is intentionally not shown on article detail pages. */
.rig-article-layout .rig-article-lead{display:none;}

@media(max-width:1050px){
    .rig-article-layout{grid-template-columns:minmax(0,1fr) 300px;gap:48px;}
    .rig-sidebar-post-link{grid-template-columns:82px minmax(0,1fr);gap:14px;}
    .rig-sidebar-post h3{font-size:15px;}
}
@media(max-width:820px){
    .rig-article-layout{grid-template-columns:1fr;gap:65px;}
    .rig-article-sidebar{position:static;}
    .rig-sidebar-posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;}
    .rig-sidebar-post{margin:0;padding:0 0 22px;}
}
@media(max-width:560px){
    .rig-sidebar-posts{grid-template-columns:1fr;}
    .rig-sidebar-post-link{grid-template-columns:95px minmax(0,1fr);}
}

/* =========================================================
   RANKIN INSURANCE BLOG - WIDER DETAIL LAYOUT
   Wide page, left-aligned article copy, centered featured image
========================================================= */
.rig-article-layout{
    width:calc(100% - 20px);
    max-width:1760px;
    margin-left:auto;
    margin-right:auto;
    grid-template-columns:minmax(0,1fr) 400px;
    gap:90px;
}
.rig-article-main,
.rig-article-content{
    width:100%;
    max-width:none;
    text-align:left;
}
.rig-article-content p,
.rig-article-content h2,
.rig-article-content h3,
.rig-article-content h4,
.rig-article-content ul,
.rig-article-content ol{
    text-align:left;
}
.rig-article-featured{
    width:100%;
    margin:0 auto 48px;
    text-align:center;
}
.rig-article-featured img{
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    margin-left:auto;
    margin-right:auto;
}
.rig-article-sidebar{text-align:left;}

@media(min-width:1800px){
    .rig-article-layout{
        max-width:1800px;
        grid-template-columns:minmax(0,1fr) 420px;
        gap:100px;
    }
}
@media(max-width:1200px){
    .rig-article-layout{
        width:100%;
        grid-template-columns:minmax(0,1fr) 330px;
        gap:55px;
    }
}
@media(max-width:820px){
    .rig-article-layout{
        width:100%;
        grid-template-columns:1fr;
        gap:60px;
    }
}


/* =========================================================
   RANKIN INSURANCE BLOG - TRUE FULL-WIDTH DETAIL BREAKOUT
   Escapes any HD Admin parent .container width constraint.
========================================================= */
.rig-article-layout{
    position:relative;
    left:50%;
    transform:translateX(-50%);
    width:min(1760px, calc(100vw - 60px)) !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    display:grid;
    grid-template-columns:minmax(0, 1fr) 400px;
    gap:90px;
    align-items:start;
}

.rig-article-main{
    min-width:0;
    width:100%;
    text-align:left;
}

.rig-article-content{
    width:100%;
    max-width:none;
    text-align:left;
}

.rig-article-featured{
    width:100%;
    margin:0 auto 48px;
    text-align:center;
}

.rig-article-featured img{
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    margin-left:auto;
    margin-right:auto;
}

.rig-article-sidebar{
    width:100%;
    text-align:left;
}

@media(max-width:1200px){
    .rig-article-layout{
        width:calc(100vw - 40px) !important;
        grid-template-columns:minmax(0, 1fr) 330px;
        gap:55px;
    }
}

@media(max-width:820px){
    .rig-article-layout{
        width:calc(100vw - 34px) !important;
        grid-template-columns:1fr;
        gap:60px;
    }
}


/* ============================================================
   RANKIN GLOBAL CTA — FULL-WIDTH RED SECTION
   Red background spans edge-to-edge on every page.
   Content stays aligned to the normal centered site width.
   ============================================================ */
.site-cta,
.rankin-quote-cta{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    background:var(--red) !important;
    color:#fff !important;
    border-radius:0 !important;
}

.site-cta > .container,
.rankin-quote-cta > .container{
    width:calc(100% - 48px) !important;
    max-width:1280px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-top:72px !important;
    padding-bottom:72px !important;
}

.site-cta .cta-content{
    max-width:none !important;
}

.site-cta .cta-eyebrow,
.rankin-quote-cta .rankin-eyebrow-light{
    color:rgba(255,255,255,.78) !important;
}

.site-cta .cta-details,
.rankin-quote-cta p{
    color:rgba(255,255,255,.88) !important;
}

.site-cta .cta-button,
.rankin-quote-cta .rankin-white-button{
    background:#fff !important;
    color:var(--red) !important;
}

.site-cta .cta-button:hover,
.rankin-quote-cta .rankin-white-button:hover{
    background:#f7f7f7 !important;
    color:var(--red-dark) !important;
}

.site-cta .cta-phone{
    color:#fff !important;
}

/* If the homepage CTA previously used a contained red box,
   remove that inner-box treatment so the section itself is the red area. */
.rankin-quote-cta .rankin-quote-box{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
}

@media(max-width:600px){
    .site-cta > .container,
    .rankin-quote-cta > .container{
        width:calc(100% - 28px) !important;
        padding-top:55px !important;
        padding-bottom:55px !important;
    }
}


/* ========================================================================
   RANKIN ORIGINAL HERO-CARD DESIGN RESTORE
   Master reference: index-transparent-header.html
   Keeps current HD Admin data/functions; restores approved visual treatment.
   ======================================================================== */
:root{
    --rankin-original-red:#be1e2d;
    --rankin-original-dark:#16181b;
    --rankin-original-muted:#667085;
    --rankin-original-line:#e7e7e7;
    --rankin-original-max:1320px;
}

/* Original design uses a 1320px centered wrapper. */
.container{
    width:min(calc(100% - 40px), var(--rankin-original-max));
    max-width:var(--rankin-original-max);
    margin-left:auto;
    margin-right:auto;
}

/* Top utility bar from the approved concept. */
.rankin-original-topbar{
    position:absolute;
    top:0;
    left:0;
    right:0;
    width:100%;
    height:36px;
    z-index:1100;
    background:var(--rankin-original-dark);
    color:#fff;
    font-size:14px;
}
.rankin-original-topbar .rankin-original-topbar-inner{
    height:36px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}
.rankin-original-topbar .utility-right{
    display:flex;
    align-items:center;
    gap:20px;
}
.rankin-original-topbar .utility-phone,
.rankin-original-topbar .utility-location{
    color:#fff;
    font-size:14px;
    font-weight:400;
}

/* Transparent header over the hero. */
.rankin-original-header{
    position:absolute;
    top:36px;
    left:0;
    right:0;
    width:100%;
    z-index:1000;
    color:#fff;
    background:rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.22);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
    box-shadow:none;
}
.rankin-original-header .rankin-original-nav{
    min-height:86px;
    height:86px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}
.rankin-original-brand{
    display:flex;
    align-items:center;
    gap:12px;
    color:#fff;
}
.rankin-original-brandmark{
    width:46px;
    height:46px;
    border-radius:50%;
    display:grid;
    place-items:center;
    flex:0 0 46px;
    background:var(--rankin-original-red);
    color:#fff;
    font-family:Arial,Helvetica,sans-serif;
    font-size:21px;
    font-weight:800;
}
.rankin-original-brandtext strong{
    display:block;
    color:#fff;
    font-size:22px;
    line-height:1;
    font-weight:800;
}
.rankin-original-brandtext small{
    display:block;
    margin-top:4px;
    color:rgba(255,255,255,.8);
    font-size:12px;
    line-height:1;
    letter-spacing:1.8px;
}
.rankin-original-navlinks{
    display:flex;
    align-items:center;
    gap:30px;
}
.rankin-original-navlinks > a{
    color:#fff !important;
    font-size:15px !important;
    font-weight:700;
    padding:0 !important;
}
.rankin-original-navlinks > a:after{display:none !important;}
.rankin-original-quote-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:13px 20px !important;
    border:0 !important;
    border-radius:7px !important;
    background:var(--rankin-original-red) !important;
    color:#fff !important;
}
.rankin-original-quote-btn:hover{filter:brightness(.94);}

/* Do not switch the approved header to the unrelated white/logo-scrolled treatment. */
body.header-scrolled .rankin-original-header{
    position:fixed;
    top:0;
    background:rgba(22,24,27,.97);
    border-bottom:1px solid rgba(255,255,255,.15);
    box-shadow:0 5px 25px rgba(0,0,0,.15);
}
body.header-scrolled .rankin-original-header .rankin-original-nav{
    height:74px;
    min-height:74px;
}
body.header-scrolled .rankin-original-header .rankin-original-navlinks > a{color:#fff !important;}
body.header-scrolled .rankin-original-header .rankin-original-quote-btn{color:#fff !important;}

/* Homepage hero: left copy + approved white card on right. */
.hero.rankin-blog-hero{
    position:relative;
    min-height:650px;
    display:block;
    color:#fff;
    padding-top:122px;
    overflow:hidden;
    background:#25282d;
}
.hero.rankin-blog-hero:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    width:auto;
    height:auto;
    border:0;
    border-radius:0;
    background:linear-gradient(90deg,rgba(8,10,12,.68),rgba(8,10,12,.28));
}
.hero.rankin-blog-hero .hero-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(rgba(10,12,15,.20),rgba(10,12,15,.35));
}
.hero.rankin-blog-hero .approved-hero-grid{
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:60px;
    align-items:center;
    min-height:528px;
    padding-top:72px;
    padding-bottom:72px;
}
.approved-hero-copy{max-width:720px;}
.approved-eyebrow{
    color:#ff9aa4;
    font-size:13px;
    font-weight:800;
    letter-spacing:1.7px;
    text-transform:uppercase;
}
.hero.rankin-blog-hero .approved-hero-copy h1{
    margin:12px 0 22px;
    color:#fff;
    font-family:Arial,Helvetica,sans-serif;
    font-size:clamp(42px,5vw,72px);
    font-weight:800;
    line-height:.98;
    letter-spacing:-2px;
    text-shadow:none;
}
.hero.rankin-blog-hero .approved-hero-copy h1 span{display:inline;font-weight:800;}
.hero.rankin-blog-hero .approved-hero-copy > p{
    max-width:680px;
    margin:0;
    color:#e3e4e6;
    font-size:19px;
    line-height:1.6;
}
.approved-hero-actions{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-top:30px;
}
.approved-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:auto;
    padding:14px 22px;
    border:0;
    border-radius:7px;
    background:var(--rankin-original-red);
    color:#fff !important;
    font-weight:800;
}
.approved-btn:hover{filter:brightness(.94);transform:none;}
.approved-btn-light{background:#fff;color:#191b1f !important;}

.approved-hero-card{
    width:100%;
    max-width:none;
    margin:0;
    padding:28px;
    border:0;
    border-radius:16px;
    background:#fff;
    color:#222;
    box-shadow:0 25px 70px rgba(0,0,0,.24);
}
.approved-card-label{
    margin:0;
    color:#777;
    font-size:13px;
    font-weight:400;
    line-height:1.4;
    letter-spacing:1px;
    text-transform:uppercase;
}
.approved-hero-card h1,
.approved-hero-card h2,
.approved-hero-card h3,
.approved-hero-widget-content > h1,
.approved-hero-widget-content > h2,
.approved-hero-widget-content > h3{
    margin:8px 0;
    color:#222 !important;
    font-family:Arial,Helvetica,sans-serif;
    font-size:28px;
    font-weight:800;
    line-height:1.15;
    letter-spacing:0;
}
.approved-hero-card p,
.approved-hero-widget-content > p{
    margin:0 0 12px;
    color:#666 !important;
    font-size:15px;
    line-height:1.6;
}
.approved-hero-phone,
.approved-hero-widget-content a[href^="tel:"]{
    display:inline-block;
    margin-top:14px;
    color:var(--rankin-original-red) !important;
    font-size:24px;
    font-weight:800;
}

/* Original concept did not use the newer white contact slab at the bottom of hero. */
.hero.rankin-blog-hero .hero-bottom{display:none !important;}

@media(max-width:900px){
    .rankin-original-header .rankin-original-nav{height:86px;min-height:86px;}
    .rankin-original-header .rankin-original-navlinks{
        display:none;
        position:fixed;
        top:0;
        right:0;
        width:min(360px,88vw);
        height:100vh;
        padding:95px 30px 35px;
        flex-direction:column;
        align-items:stretch;
        gap:0;
        background:#fff;
        box-shadow:-10px 0 35px rgba(0,0,0,.16);
        overflow:auto;
    }
    .rankin-original-header .rankin-original-navlinks.is-open{display:flex;}
    .rankin-original-header .rankin-original-navlinks > a{
        color:#111 !important;
        font-size:17px !important;
        padding:14px 0 !important;
    }
    .rankin-original-header .rankin-original-quote-btn{
        margin-top:15px;
        padding:12px 20px !important;
        color:#fff !important;
        text-align:center;
    }
    .rankin-original-header .menu-btn{display:block;color:#fff;position:relative;z-index:1200;}
    body.header-scrolled .rankin-original-header .menu-btn,
    body.nav-open .rankin-original-header .menu-btn{color:#fff;}
    .hero.rankin-blog-hero .approved-hero-grid{
        grid-template-columns:1fr;
        min-height:auto;
        padding-top:54px;
        padding-bottom:54px;
    }
    .approved-hero-card{max-width:560px;}
}

@media(max-width:620px){
    .container{width:min(calc(100% - 28px),var(--rankin-original-max));}
    .rankin-original-topbar .rankin-original-topbar-inner{
        display:block;
        height:auto;
        padding:5px 0;
        text-align:center;
    }
    .rankin-original-topbar{height:52px;}
    .rankin-original-topbar .utility-right{justify-content:center;margin-top:1px;}
    .rankin-original-header{top:52px;}
    .rankin-original-brandmark{width:40px;height:40px;flex-basis:40px;}
    .rankin-original-brandtext strong{font-size:18px;}
    .rankin-original-brandtext small{font-size:10px;}
    .hero.rankin-blog-hero{padding-top:138px;}
    .hero.rankin-blog-hero .approved-hero-copy h1{font-size:44px;}
    .hero.rankin-blog-hero .approved-hero-copy > p{font-size:16px;}
    .approved-hero-actions{flex-direction:column;align-items:flex-start;}
    .approved-hero-card h1,
    .approved-hero-card h2,
    .approved-hero-card h3,
    .approved-hero-widget-content > h1,
    .approved-hero-widget-content > h2,
    .approved-hero-widget-content > h3{font-size:24px;}
}


/* ============================================================
   RANKIN HOMEPAGE CORRECTIONS
   Desktop quote button + intro strip + blog title links
   ============================================================ */

/* Original homepage intro strip: light gray */
.approved-intro-strip{
    background:#f6f7f8 !important;
    border-bottom:1px solid #e7e7e7 !important;
}

/* Homepage article title links stay black */
#latest-articles .approved-article-card h3 a,
#latest-articles .approved-article-card h3 a:visited,
#latest-articles .approved-article-card h3 a:hover,
#latest-articles .approved-article-card h3 a:focus{
    color:#111 !important;
    text-decoration:none !important;
}

/* Desktop header quote button only.
   Mobile rules remain untouched. */
@media (min-width: 901px){
    #siteHeader .nav-quote,
    #siteHeader .header-quote,
    #siteHeader a[href*="quotamation"],
    #siteHeader a[href*="direct-quote"]{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        min-height:46px !important;
        padding:0 24px !important;
        margin:0 0 0 18px !important;
        border:0 !important;
        border-radius:8px !important;
        background:#c91f32 !important;
        color:#fff !important;
        font-weight:700 !important;
        line-height:1 !important;
        text-decoration:none !important;
        white-space:nowrap !important;
        box-shadow:none !important;
        transform:none !important;
    }
    #siteHeader .nav-quote:hover,
    #siteHeader .header-quote:hover,
    #siteHeader a[href*="quotamation"]:hover,
    #siteHeader a[href*="direct-quote"]:hover{
        background:#ad1728 !important;
        color:#fff !important;
        transform:translateY(-1px) !important;
    }
}


/* Homepage article title links */
#latest-articles .approved-article-card a:not(.approved-read-more),
#latest-articles .approved-article-card a:not(.approved-read-more):visited,
#latest-articles .approved-article-card a:not(.approved-read-more):hover,
#latest-articles .approved-article-card a:not(.approved-read-more):focus,
#latest-articles .approved-article-title,
#latest-articles .approved-article-title:visited,
#latest-articles .approved-article-title:hover,
#latest-articles .article-title,
#latest-articles .article-title:visited,
#latest-articles .article-title:hover,
#latest-articles h2 a,
#latest-articles h2 a:visited,
#latest-articles h2 a:hover,
#latest-articles h3 a,
#latest-articles h3 a:visited,
#latest-articles h3 a:hover {
    color:#111 !important;
    text-decoration:none !important;
}


/* Footer credit — keep Halstead Design | Website Design | SEO on one line */
.hd-footer-credit{
    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    gap:8px !important;
    white-space:nowrap !important;
}
.hd-footer-credit a{
    display:inline !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
}
.hd-footer-credit a + a::before{
    content:"|" !important;
    display:inline !important;
    margin:0 8px 0 0 !important;
    color:rgba(255,255,255,.42) !important;
}
