/* Child-template overrides for Cassiopeia (Assens Roklub) */

/* Logo til venstre, brand-module til højre — inden for navbar-bredden */
.container-header .container-brand .navbar-brand {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    width: 100%;
}

.container-header .container-brand .navbar-brand .brand-logo {
    flex: 0 0 auto;
}

.container-header .container-brand .navbar-brand .brand-module {
    flex: 0 1 auto;
    min-width: 0;
    margin-left: auto;
    text-align: right;
    overflow: hidden;
}

.container-header .container-brand .navbar-brand .brand-module .mod-custom,
.container-header .container-brand .navbar-brand .brand-module p {
    margin: 0;
}

.container-header .container-brand .navbar-brand .brand-module img {
    max-width: 100%;
    height: auto;
    display: inline-block;
    vertical-align: middle;
}

.container-header .container-brand .navbar-brand .site-description {
    flex: 1 0 100%;
    order: 3;
}

/* Divider efter hvert blog-item */
.blog-featured .blog-item,
.blog .blog-item {
    border-bottom: 1px solid #dee2e6;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
}

/* Bestyrelse — responsivt grid af medlems-kort */
.board-title { color: #003366; }
.board-contact { margin-bottom: 1rem; }
.board-note {
    background: #f8f9fa;
    border-left: 4px solid #003366;
    padding: .75rem 1rem;
    margin: 1rem 0 1.5rem;
    border-radius: .25rem;
}
.board-note ul { margin: .25rem 0 0 1.25rem; padding: 0; }
.board-note li { margin: .1rem 0; }
.board-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.25rem;
    margin-top: 1rem;
}
.board-card {
    display: flex;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid #dee2e6;
    border-radius: .5rem;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0,0,0,.03);
}
.board-card__photo { flex: 0 0 90px; }
.board-card__photo img {
    width: 90px;
    height: auto;
    border-radius: .375rem;
    display: block;
}
.board-card__photo--placeholder {
    width: 90px;
    height: 110px;
    background: #f1f3f5;
    border-radius: .375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #adb5bd;
    font-size: 1.75rem;
    font-weight: 600;
}
.board-card__info { flex: 1 1 auto; min-width: 0; }
.board-card__role {
    color: #003366;
    font-size: 1rem;
    margin: 0 0 .25rem;
    font-weight: 700;
}
.board-card__name { margin: 0 0 .5rem; font-weight: 600; }
.board-card__contact {
    margin: 0;
    font-size: .9rem;
    line-height: 1.4;
    word-break: break-word;
}

/* Udvalg — responsivt grid af udvalgs-sektioner */
.committees {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.25rem;
    margin-top: 1rem;
}
.committee {
    padding: 1rem 1.25rem;
    border: 1px solid #dee2e6;
    border-radius: .5rem;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0,0,0,.03);
}
.committee__title {
    color: #003366;
    margin: 0 0 .25rem;
    font-size: 1.1rem;
}
.committee__desc {
    margin: 0 0 .75rem;
    color: #6c757d;
    font-size: .9rem;
    font-style: italic;
}
.committee__empty {
    margin: 0;
    color: #adb5bd;
    font-size: .9rem;
}
.committee__members {
    list-style: none;
    margin: 0;
    padding: 0;
}
.committee__members li {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: .25rem 1rem;
    padding: .5rem 0;
    border-top: 1px solid #f1f3f5;
    font-size: .9rem;
}
.committee__members li:first-child { border-top: 0; }
.committee__role {
    grid-column: 1 / -1;
    color: #6c757d;
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.committee__role:empty { display: none; }
.committee__name { font-weight: 600; }
.committee__phone {
    text-align: right;
    color: #495057;
    word-break: break-word;
}

/* Materiel / flåde */
.fleet-title { color: #003366; }
.fleet-intro { margin-bottom: 1.5rem; }
.fleet-intro p { margin: 0 0 .75rem; }
.fleet-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.25rem;
}
.fleet-section {
    padding: 1rem 1.25rem;
    border: 1px solid #dee2e6;
    border-radius: .5rem;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0,0,0,.03);
}
.fleet-section--wide { grid-column: 1 / -1; }
.fleet-section__title {
    color: #003366;
    margin: 0 0 .75rem;
    font-size: 1.05rem;
    padding-bottom: .5rem;
    border-bottom: 2px solid #003366;
}
.fleet-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.fleet-list li {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: .25rem 1rem;
    padding: .4rem 0;
    border-top: 1px solid #f1f3f5;
    font-size: .9rem;
    align-items: baseline;
}
.fleet-list li:first-child { border-top: 0; }
.fleet-list__name { font-weight: 600; color: #212529; }
.fleet-list__material {
    color: #6c757d;
    font-size: .85rem;
    text-align: right;
}
.fleet-chips {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}
.fleet-chips li {
    background: #e7f1ff;
    color: #003366;
    padding: .35rem .75rem;
    border-radius: 999px;
    font-size: .85rem;
    font-weight: 600;
}

/* Sigplus/boxplus carousel — større og synlige navigationspile */
.boxplus-carousel .boxplus-paging {
    min-height: 32px;
    margin-top: .5rem;
}
.boxplus-carousel .boxplus-paging > div.boxplus-prev,
.boxplus-carousel .boxplus-paging > div.boxplus-next {
    width: 32px !important;
    height: 32px !important;
    background: #003366 !important;
    border-radius: 50%;
    cursor: pointer;
    top: 50% !important;
    transform: translateY(-50%);
    transition: background .15s;
}
.boxplus-carousel .boxplus-paging > div.boxplus-prev:hover,
.boxplus-carousel .boxplus-paging > div.boxplus-next:hover {
    background: #004a99 !important;
}
.boxplus-carousel .boxplus-paging > div.boxplus-prev::before,
.boxplus-carousel .boxplus-paging > div.boxplus-next::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
.boxplus-carousel .boxplus-paging > div.boxplus-prev::before {
    transform: translate(-30%, -50%) rotate(-135deg);
}
.boxplus-carousel .boxplus-paging > div.boxplus-next::before {
    transform: translate(-70%, -50%) rotate(45deg);
}
