/* CLEAN TIMELINE VERSION V11 - dotter centreret på streg, tekst tættere på tid */

.card-kicker,.section-label{display:none!important}
a:visited{color:inherit}

/* Fjern risiko for dobbelte/tilbageværende ikoner */
#program svg,
#program img{
    display:none!important;
}

.line-icon svg{
    display:none!important;
}

/* Vielse/Fest illustrationer */
.info-card{
    grid-template-columns:1fr!important;
    text-align:center!important;
    justify-items:center!important;
    gap:12px!important;
    min-height:300px!important;
    padding:28px 22px 30px!important;
}

.info-card > div:not(.line-icon){
    order:1!important;
}

.info-card .line-icon.large.custom-icon{
    order:2!important;
    width:100%!important;
    height:165px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
    margin-top:4px!important;
    color:inherit!important;
}

.custom-icon img{
    display:block!important;
    width:auto!important;
    height:160px!important;
    max-width:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    opacity:1!important;
    filter:none!important;
    transform:none!important;
}

#vielse .custom-icon img{
    height:165px!important;
}

#fest .custom-icon img{
    height:158px!important;
    max-width:105%!important;
}

/* Program: simpel lodret tidslinje med dotter */
.program-card{
    max-width:760px!important;
}

#program .program-list{
    list-style:none!important;
    margin:24px 0 0!important;
    padding:0!important;
    position:relative!important;
    counter-reset:none!important;
}

#program .program-list:before{
    content:""!important;
    position:absolute!important;
    left:19px!important;
    top:29px!important;
    bottom:29px!important;
    width:2px!important;
    background:rgba(95,81,67,.22)!important;
    border-radius:999px!important;
    z-index:0!important;
}

#program .program-list li{
    display:grid!important;
    grid-template-columns:40px 68px 1fr!important;
    column-gap:8px!important;
    row-gap:0!important;
    align-items:center!important;
    min-height:58px!important;
    padding:0!important;
    margin:0!important;
    position:relative!important;
}

/* Ny markup: dot */
#program .timeline-dot{
    display:block!important;
    width:14px!important;
    height:14px!important;
    min-width:14px!important;
    min-height:14px!important;
    border-radius:50%!important;
    background:#7f705e!important;
    box-shadow:0 0 0 5px rgba(127,112,94,.12)!important;
    justify-self:center!important;
    align-self:center!important;
    position:relative!important;
    z-index:2!important;
}

/* Fallback hvis en gammel index.php stadig har .program-icon: gør den til en dot og skjul alt ikonindhold */
#program .program-icon{
    display:block!important;
    width:14px!important;
    height:14px!important;
    min-width:14px!important;
    min-height:14px!important;
    padding:0!important;
    margin:0!important;
    border-radius:50%!important;
    background:#7f705e!important;
    box-shadow:0 0 0 5px rgba(127,112,94,.12)!important;
    justify-self:center!important;
    align-self:center!important;
    position:relative!important;
    z-index:2!important;
    overflow:hidden!important;
}

#program .program-icon svg,
#program .program-icon img,
#program .program-icon .program-svg{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    height:0!important;
}

#program .program-list time{
    font-size:1.06rem!important;
    font-weight:800!important;
    color:#5f5143!important;
    white-space:nowrap!important;
    justify-self:start!important;
}

#program .program-list span:last-child{
    font-size:1.16rem!important;
    justify-self:start!important;
}

@media(max-width:430px){
    .info-card{
        min-height:250px!important;
        padding:22px 14px 24px!important;
    }

    .info-card .line-icon.large.custom-icon{
        height:128px!important;
    }

    .custom-icon img,
    #vielse .custom-icon img,
    #fest .custom-icon img{
        height:124px!important;
        max-width:104%!important;
    }

    .program-card{
        padding:22px 16px!important;
    }

    #program .program-list{
        margin-top:20px!important;
    }

    #program .program-list:before{
        left:16px!important;
        top:27px!important;
        bottom:27px!important;
    }

    #program .program-list li{
        grid-template-columns:34px 56px 1fr!important;
        column-gap:8px!important;
        row-gap:0!important;
        min-height:54px!important;
    }

    #program .timeline-dot,
    #program .program-icon{
        width:13px!important;
        height:13px!important;
        min-width:13px!important;
        min-height:13px!important;
        box-shadow:0 0 0 4px rgba(127,112,94,.12)!important;
    }

    #program .program-list time{
        font-size:.96rem!important;
    }

    #program .program-list span:last-child{
        font-size:1.04rem!important;
    }
}
