﻿body.portal-body {
    margin: 0;
    --portal-bg: url("/themes/Mar-em-Furia/images/fundo.jpg");
    background:
        linear-gradient(rgba(8, 7, 9, 0.62), rgba(10, 8, 10, 0.82)),
        var(--portal-bg) center top / cover no-repeat fixed;
    color: #e7ddc2;
    font: 14px/1.7 Verdana, Arial, Helvetica, sans-serif;
}

.portal-shell {
    width: 1003px;
    margin: 0 auto;
    padding: 38px 0 72px;
}

.portal-card {
    width: 592px;
    margin: 0 auto;
    background: rgba(13, 9, 10, 0.9);
    border: 1px solid #654827;
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.45);
}

.portal-header {
    padding: 26px 30px 18px;
    background:
        linear-gradient(180deg, rgba(124, 91, 52, 0.5), rgba(18, 12, 10, 0.08)),
        linear-gradient(90deg, rgba(255, 210, 103, 0.08), transparent 45%);
    border-bottom: 1px solid rgba(193, 154, 0, 0.24);
}

.portal-kicker {
    color: #c9a34c;
    font-size: 11px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.portal-title {
    margin: 8px 0 6px;
    color: #f4e2a4;
    font: 31px Georgia, "Times New Roman", serif;
}

.portal-summary {
    margin: 0;
    color: #e2d4b0;
}

.portal-content {
    padding: 26px 30px 34px;
}

.portal-content p {
    margin: 0 0 15px;
}

.portal-actions,
.portal-links {
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
}

.portal-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
}

.portal-actions li,
.portal-links li {
    margin: 0 0 8px;
}

.portal-actions a,
.portal-links a {
    color: #f5d679;
    text-decoration: none;
}

.portal-actions a:hover,
.portal-links a:hover {
    text-decoration: underline;
}

.portal-actions a {
    display: inline-block;
    padding: 7px 14px;
    border: 1px solid #7f6036;
    background: rgba(52, 33, 17, 0.72);
}

.portal-note {
    margin-top: 22px;
    padding: 12px 14px;
    border-left: 3px solid #b78a31;
    background: rgba(93, 69, 43, 0.2);
    color: #d8c59a;
    font-size: 12px;
}

.portal-gallery {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 24px;
}

.portal-gallery figure {
    margin: 0;
    border: 1px solid #6d522f;
    background: rgba(18, 13, 11, 0.9);
    overflow: hidden;
}

.portal-gallery img {
    display: block;
    width: 100%;
    height: 168px;
    object-fit: cover;
}

.portal-gallery figcaption {
    padding: 8px 10px 9px;
    color: #d8c8a6;
    font-size: 11px;
}

.portal-empty {
    margin-top: 24px;
    color: #d2c4a0;
}

@media (max-width: 1020px) {
    .portal-shell {
        width: auto;
        padding: 20px 14px 46px;
    }

    .portal-card {
        width: auto;
    }
}

@media (max-width: 640px) {
    .portal-gallery {
        grid-template-columns: 1fr;
    }
}
