/*
 Secure Bytes Solutions
 R4.0.3 — Customer-First Homepage
*/

body.r4-home-unified.r403-home-customer-first .hero{
    min-height:560px !important;
}
body.r4-home-unified.r403-home-customer-first .hero-content{
    padding-top:clamp(70px,9vh,112px) !important;
    padding-bottom:72px !important;
}
body.r4-home-unified.r403-home-customer-first .hero-content h1{
    max-width:820px;
    font-size:clamp(2.8rem,6vw,5.6rem) !important;
}
body.r4-home-unified.r403-home-customer-first .hero-content h2{
    max-width:700px;
    margin-top:16px;
    font-size:clamp(1.15rem,2vw,1.55rem);
}
body.r4-home-unified.r403-home-customer-first .hero-content p{
    max-width:720px;
}
body.r4-home-unified.r403-home-customer-first .hero-tags{
    margin-top:22px;
}

.r403-customer-start{
    position:relative;
    padding:72px 0 58px;
    border-top:1px solid rgba(148,163,184,.15);
    border-bottom:1px solid rgba(148,163,184,.15);
    background:
        radial-gradient(circle at 88% 12%,rgba(56,189,248,.08),transparent 25rem),
        linear-gradient(180deg,rgba(7,17,32,.98),rgba(7,17,32,.93));
}
.r403-start-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);
    gap:34px;
    align-items:end;
    margin-bottom:26px;
}
.r403-start-head h2{
    margin:8px 0 0;
    color:#fff;
    font-size:clamp(2rem,4.4vw,3.8rem);
    line-height:1.02;
    letter-spacing:-.04em;
}
.r403-start-head p{
    margin:0;
    color:#9fb2c7;
    line-height:1.7;
}
.r403-path-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}
.r403-path-card{
    min-width:0;
    min-height:210px;
    padding:24px;
    border:1px solid rgba(148,163,184,.18);
    border-radius:18px;
    background:linear-gradient(180deg,rgba(13,27,47,.92),rgba(8,20,36,.90));
    color:#fff !important;
    text-decoration:none !important;
    box-shadow:0 18px 42px rgba(0,0,0,.16);
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.r403-path-card:hover{
    transform:translateY(-4px);
    border-color:rgba(56,189,248,.52);
    box-shadow:0 24px 54px rgba(0,0,0,.22);
}
.r403-path-card span{
    display:block;
    color:#38bdf8;
    font-size:.72rem;
    font-weight:850;
    letter-spacing:.12em;
}
.r403-path-card h3{
    margin:12px 0 10px;
    color:#fff;
    font-size:1.42rem;
}
.r403-path-card p{
    margin:0;
    color:#9fb2c7;
    line-height:1.62;
}
.r403-path-card strong{
    display:inline-flex;
    margin-top:18px;
    color:#dff6ff;
    font-size:.9rem;
}
.r403-proof-process{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.28fr);
    gap:18px;
    margin-top:18px;
}
.r403-proof{
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(120px,.72fr) minmax(0,1.28fr);
    border:1px solid rgba(148,163,184,.18);
    border-radius:18px;
    background:rgba(8,20,36,.78);
}
.r403-proof img{
    width:100%;
    height:100%;
    min-height:210px;
    object-fit:cover;
}
.r403-proof-copy{
    padding:22px;
}
.r403-proof-copy span,
.r403-process > span{
    color:#38bdf8;
    font-size:.7rem;
    font-weight:850;
    letter-spacing:.12em;
}
.r403-proof-copy h3,
.r403-process h3{
    margin:8px 0 13px;
    color:#fff;
    font-size:1.35rem;
}
.r403-proof-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px 14px;
}
.r403-proof-list div{
    color:#a9b9ca;
    font-size:.88rem;
}
.r403-proof-list b{
    display:block;
    margin-bottom:2px;
    color:#edf8ff;
}
.r403-process{
    padding:22px;
    border:1px solid rgba(148,163,184,.18);
    border-radius:18px;
    background:rgba(8,20,36,.78);
}
.r403-process-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.r403-process-step{
    min-width:0;
    padding:14px;
    border-radius:13px;
    background:rgba(56,189,248,.045);
}
.r403-process-step em{
    display:block;
    color:#38bdf8;
    font-style:normal;
    font-size:.68rem;
    font-weight:900;
}
.r403-process-step b{
    display:block;
    margin:6px 0 4px;
    color:#fff;
}
.r403-process-step small{
    display:block;
    color:#8fa3b7;
    line-height:1.45;
}

body.r4-home-unified.r403-home-customer-first .individual-services-section{
    padding:66px 0 !important;
}
body.r4-home-unified.r403-home-customer-first .individual-services-heading{
    max-width:850px;
    margin-bottom:18px;
}
body.r4-home-unified.r403-home-customer-first .individual-audience-strip,
body.r4-home-unified.r403-home-customer-first .service-transparency-notice{
    display:none !important;
}
body.r4-home-unified.r403-home-customer-first .r21-service-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:16px !important;
}
body.r4-home-unified.r403-home-customer-first .r21-service-card{
    min-width:0;
    min-height:0 !important;
    padding:20px !important;
    display:flex !important;
    flex-direction:column;
}
body.r4-home-unified.r403-home-customer-first .r21-service-card h3{
    margin:14px 0 6px;
    font-size:1.16rem !important;
}
body.r4-home-unified.r403-home-customer-first .r21-duration{
    margin:0 0 8px !important;
}
body.r4-home-unified.r403-home-customer-first .r21-service-card > p:not(.r21-duration){
    display:-webkit-box;
    margin:0 0 14px;
    overflow:hidden;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    color:#9fb2c7;
}
body.r4-home-unified.r403-home-customer-first .r4-package-options,
body.r4-home-unified.r403-home-customer-first .r21-audiences,
body.r4-home-unified.r403-home-customer-first .r21-details{
    display:none !important;
}
body.r4-home-unified.r403-home-customer-first .r356-service-detail-link{
    margin-top:auto !important;
}
body.r4-home-unified.r403-home-customer-first .individual-service-cta{
    margin-top:9px !important;
}
.r403-section-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
    margin:0 0 22px;
}
.r403-section-actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 15px;
    border:1px solid rgba(56,189,248,.34);
    border-radius:11px;
    background:rgba(56,189,248,.055);
    color:#dff6ff !important;
    text-decoration:none !important;
    font-size:.86rem;
    font-weight:800;
}

body.r4-home-unified.r403-home-customer-first .securecare-section{
    padding:66px 0 !important;
}
body.r4-home-unified.r403-home-customer-first .securecare-heading{
    max-width:900px;
    margin-bottom:18px;
}
body.r4-home-unified.r403-home-customer-first .securecare-value-strip{
    margin-bottom:14px;
}
body.r4-home-unified.r403-home-customer-first .securecare-price-explainer{
    margin-bottom:14px;
}
body.r4-home-unified.r403-home-customer-first .securecare-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:16px !important;
}
body.r4-home-unified.r403-home-customer-first .securecare-card{
    min-width:0;
    min-height:0 !important;
    padding:20px !important;
    display:flex;
    flex-direction:column;
}
body.r4-home-unified.r403-home-customer-first .securecare-fit{
    display:-webkit-box;
    overflow:hidden;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
}
body.r4-home-unified.r403-home-customer-first .securecare-annual,
body.r4-home-unified.r403-home-customer-first .securecare-emergency-benefit,
body.r4-home-unified.r403-home-customer-first .securecare-includes,
body.r4-home-unified.r403-home-customer-first .securecare-card > ul,
body.r4-home-unified.r403-home-customer-first .securecare-scope-note,
body.r4-home-unified.r403-home-customer-first .securecare-clarity-grid,
body.r4-home-unified.r403-home-customer-first .securecare-travel,
body.r4-home-unified.r403-home-customer-first .securecare-details{
    display:none !important;
}
body.r4-home-unified.r403-home-customer-first .securecare-plan-facts{
    margin-top:12px !important;
}
body.r4-home-unified.r403-home-customer-first .securecare-response{
    margin:12px 0 !important;
}
body.r4-home-unified.r403-home-customer-first .securecare-cta{
    margin-top:auto !important;
}

body.r4-home-unified.r403-home-customer-first .project.sbs-project-wizard{
    padding-top:58px !important;
}
body.r4-home-unified.r403-home-customer-first .sbs-wizard-brandbar{
    display:none !important;
}
body.r4-home-unified.r403-home-customer-first .sbs-wizard-title{
    margin-bottom:18px !important;
}
body.r4-home-unified.r403-home-customer-first #individual-services,
body.r4-home-unified.r403-home-customer-first #securecare,
body.r4-home-unified.r403-home-customer-first #project{
    scroll-margin-top:128px;
}

@media(max-width:980px){
    .r403-start-head,
    .r403-proof-process{
        grid-template-columns:1fr;
    }
    .r403-path-grid,
    body.r4-home-unified.r403-home-customer-first .r21-service-grid,
    body.r4-home-unified.r403-home-customer-first .securecare-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media(max-width:680px){
    body.r4-home-unified.r403-home-customer-first .hero{
        min-height:500px !important;
    }
    body.r4-home-unified.r403-home-customer-first .hero-content{
        padding-top:58px !important;
        padding-bottom:52px !important;
    }
    .r403-customer-start{
        padding:52px 0 44px;
    }
    .r403-start-head{
        gap:15px;
    }
    .r403-path-grid,
    body.r4-home-unified.r403-home-customer-first .r21-service-grid,
    body.r4-home-unified.r403-home-customer-first .securecare-grid{
        grid-template-columns:1fr !important;
    }
    .r403-path-card{
        min-height:0;
        padding:20px;
    }
    .r403-proof{
        grid-template-columns:1fr;
    }
    .r403-proof img{
        min-height:180px;
        max-height:220px;
    }
    .r403-proof-list{
        grid-template-columns:1fr 1fr;
    }
    .r403-process-grid{
        grid-template-columns:1fr 1fr;
    }
    body.r4-home-unified.r403-home-customer-first .individual-services-section,
    body.r4-home-unified.r403-home-customer-first .securecare-section{
        padding:52px 0 !important;
    }
}
@media(max-width:420px){
    .r403-proof-list,
    .r403-process-grid{
        grid-template-columns:1fr;
    }
}
