/* =========================================
   home.css
   Landing Impregnadora San Jorge
========================================= */

/* Hero */
.sj-hero{
    position:relative;
    min-height:100vh;
    overflow:hidden;
    background:var(--sj-tertiary);
}

.sj-hero-video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:0;
}

.sj-hero-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    background:
        linear-gradient(90deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.50) 48%, rgba(0,0,0,.18) 100%),
        linear-gradient(0deg, rgba(0,0,0,.35), rgba(0,0,0,.15));
}

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

.sj-logo{
    display:block;
    max-width:600px;
    height:auto;
    margin-bottom:34px;
    filter:drop-shadow(0 10px 24px rgba(0,0,0,.28));
}

.sj-hero h1{
    color:var(--sj-white);
    max-width:850px;
    text-shadow:0 5px 22px rgba(0,0,0,.35);
}

.sj-hero .sj-kicker{
    color:var(--sj-white);
    background:rgba(153,26,30,.88);
    padding:10px 16px;
    border-radius:var(--sj-radius);
    backdrop-filter:blur(4px);
}

.sj-hero .sj-kicker:before{
    background:var(--sj-white);
}

.sj-hero-text{
    max-width:720px;
    color:rgba(255,255,255,.92);
    font-size:1.22rem;
    line-height:1.72;
    margin:24px 0 34px;
}

.sj-hero-text strong a{
    color:var(--sj-white);
    text-decoration-color:rgba(255,255,255,.65);
}

.sj-hero-text strong a:hover{
    color:#f4dfd1;
}

.sj-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

/* Intro */
.sj-intro{
    background:
        radial-gradient(circle at top left, rgba(26,95,49,.08), transparent 34%),
        var(--sj-white);
}

/* Beneficios */
.sj-beneficios{
    background:var(--sj-light);
}

.sj-video-vertical{
    display:block;
    width:100%;
    min-height:640px;
    max-height:760px;
    object-fit:cover;
    border-radius:var(--sj-radius);
    box-shadow:var(--sj-shadow);
    background:var(--sj-tertiary);
}

.sj-benefit-grid{
    margin-top:12px;
}

.sj-benefit-item{
    height:100%;
    padding:26px;
    border-radius:var(--sj-radius);
    background:var(--sj-white);
    border:1px solid rgba(71,50,18,.10);
    box-shadow:var(--sj-shadow-soft);
    transition:all .22s ease;
}

.sj-benefit-item:hover{
    transform:translateY(-4px);
    box-shadow:var(--sj-shadow);
}

.sj-benefit-item i{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:54px;
    height:54px;
    margin-bottom:18px;
    border-radius:var(--sj-radius);
    background:rgba(26,95,49,.10);
    color:var(--sj-secondary);
    font-size:1.7rem;
}

.sj-benefit-item h3{
    margin-bottom:10px;
    color:var(--sj-tertiary);
}

.sj-benefit-item p{
    margin:0;
    color:var(--sj-muted);
    font-size:.96rem;
    line-height:1.65;
}

/* Productos */
.sj-products{
    background:var(--sj-white);
}

.sj-product-card{
    height:100%;
    padding:34px 30px;
    border-radius:var(--sj-radius);
    background:linear-gradient(180deg, #ffffff 0%, #fbfaf7 100%);
    border:1px solid var(--sj-border);
    box-shadow:var(--sj-shadow-soft);
    transition:all .22s ease;
}

.sj-product-card:hover{
    transform:translateY(-5px);
    box-shadow:var(--sj-shadow);
    border-color:rgba(153,26,30,.25);
}

.sj-product-card h3{
    color:var(--sj-primary);
    margin-bottom:14px;
}

.sj-product-card p{
    color:var(--sj-muted);
    font-size:.98rem;
    line-height:1.68;
    margin-bottom:22px;
}

.sj-product-card ul{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:9px;
}

.sj-product-card li strong{
    display:block;
}

.sj-product-card li a{
    display:flex;
    align-items:center;
    gap:10px;
    padding:9px 12px;
    border-radius:var(--sj-radius);
    background:rgba(26,95,49,.07);
    color:var(--sj-dark);
    font-weight:800;
    font-size:.94rem;
    text-decoration:none;
}

.sj-product-card li a:before{
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--sj-secondary);
    flex:0 0 7px;
}

.sj-product-card li a:hover{
    background:var(--sj-primary);
    color:var(--sj-white);
}

.sj-product-card li a:hover:before{
    background:var(--sj-white);
}

/* Servicios */
.sj-services{
    background:
        linear-gradient(120deg, rgba(71,50,18,.06), transparent 48%),
        var(--sj-light);
}

.sj-service-item{
    position:relative;
    padding:26px 26px 26px 32px;
    margin-top:20px;
    border-radius:var(--sj-radius);
    background:var(--sj-white);
    border-left:5px solid var(--sj-secondary);
    box-shadow:var(--sj-shadow-soft);
}

.sj-service-item h3{
    color:var(--sj-tertiary);
    margin-bottom:10px;
}

.sj-service-item p{
    margin:0;
    color:var(--sj-muted);
}

/* Video proceso */
.sj-process-video{
    position:relative;
    min-height:520px;
    overflow:hidden;
    display:flex;
    align-items:center;
    background:var(--sj-tertiary);
}

.sj-process-video video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:0;
}

.sj-process-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    background:
        linear-gradient(90deg, rgba(71,50,18,.68), rgba(71,50,18,.42)),
        linear-gradient(0deg, rgba(0,0,0,.25), rgba(0,0,0,.25));
}

.sj-process-video .container{
    position:relative;
    z-index:2;
}

.sj-process-content{
    max-width:780px;
    padding:90px 0;
}

.sj-process-content h2{
    color:var(--sj-white);
    font-size:clamp(2rem,3.6vw,3.7rem);
}

.sj-process-content p{
    max-width:650px;
    color:rgba(255,255,255,.9);
    font-size:1.15rem;
}

/* Aplicaciones */
.sj-applications{
    background:var(--sj-white);
}

.sj-app-card{
    min-height:112px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:22px;
    border-radius:var(--sj-radius);
    color:var(--sj-white);
    background: rgba(26,95,49,.96);
    box-shadow:var(--sj-shadow-soft);
    font-weight:900;
    text-align:center;
    transition:all .22s ease;
}

.sj-app-card:hover{
    transform:translateY(-4px);
    background: rgba(153,26,30,.96);
}

/* FAQ */
.sj-faq{
    background:var(--sj-light);
}

.sj-accordion{
    max-width:920px;
    margin:0 auto;
}

.sj-accordion .accordion-item{
    border:0;
    margin-bottom:14px;
    border-radius:var(--sj-radius);
    overflow:hidden;
    box-shadow:var(--sj-shadow-soft);
}

.sj-accordion .accordion-button{
    font-weight:900;
    color:var(--sj-tertiary);
    padding:20px 24px;
    box-shadow:none;
}

.sj-accordion .accordion-button:not(.collapsed){
    color:var(--sj-white);
    background:var(--sj-primary);
}

.sj-accordion .accordion-button:focus{
    box-shadow:none;
}

.sj-accordion .accordion-body{
    padding:24px;
    color:var(--sj-muted);
    line-height:1.75;
}

/* Contacto */
.sj-contact{
    background:
        radial-gradient(circle at bottom right, rgba(153,26,30,.10), transparent 38%),
        var(--sj-white);
}

.sj-contact-list{
    list-style:none;
    margin:28px 0 0;
    padding:0;
    display:grid;
    gap:14px;
}

.sj-contact-list li{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:16px 18px;
    border-radius:var(--sj-radius);
    background:var(--sj-light);
    color:var(--sj-dark);
    font-weight:700;
}

.sj-contact-list i{
    color:var(--sj-primary);
    font-size:1.35rem;
    line-height:1.2;
    margin-top:1px;
}

.sj-contact-list a{
    color:var(--sj-dark);
}

.sj-contact-list a:hover{
    color:var(--sj-primary);
}
