/*
 * RegimeMinimi.com
 * Guide Hub V2
 */

/* Nasconde il vecchio titolo Genesis */
.category-guide-fiscali .archive-description {
    display:none;
}

/* Contenitore */
.category-guide-fiscali .site-inner {
    max-width:1280px;
}

.category-guide-fiscali .content {
    max-width:1120px;
}

.rm-guides-hub {
    width:100%;
}

/* INTRO */

.rm-guides-heading {
    max-width:760px;
    margin:4px 0 42px;
}

.rm-guides-eyebrow {
    display:block;
    margin-bottom:10px;
    color:var(--rm-color-primary);
    font-size:14px;
    font-weight:650;
}

.rm-guides-heading h1 {
    margin:0 0 16px;
    font-size:clamp(42px,5vw,58px);
    font-weight:700;
    line-height:1;
    letter-spacing:-.045em;
}

.rm-guides-heading p {
    margin:0;
    max-width:720px;
    color:var(--rm-color-muted);
    font-size:19px;
    line-height:1.55;
}

/* FEATURED */

.rm-guides-featured {
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    min-height:420px;
    margin:0 0 38px;
    overflow:hidden;
    border-radius:18px;
    background:#edf3ff;
}

.rm-guides-featured-media {
    min-height:400px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#fff;
}

.rm-guides-featured-media img {
    display:block;
    width:100%;
    height:100%;
    min-height:400px;
    max-height:none;
    object-fit:cover;
    object-position:left center;
}

.rm-guides-featured-fallback {
    height:100%;
    min-height:420px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:18px;
    background:#082f68;
    color:#fff;
}

.rm-guides-featured-fallback img {
    width:150px;
    height:150px;
    min-height:0;
    object-fit:contain;
}

.rm-guides-featured-fallback span {
    font-size:18px;
    font-weight:650;
}

.rm-guides-featured-copy {
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:36px 44px;
}

.rm-guides-badge {
    align-self:flex-start;
    display:inline-flex;
    align-items:center;
    margin-bottom:16px;
    padding:7px 11px;
    border-radius:8px;
    background:#fff;
    color:var(--rm-color-heading);
    font-size:13px;
    font-weight:650;
}

.rm-guides-featured-copy h2 {
    margin:0 0 14px;
    font-size:clamp(30px,3vw,37px);
    line-height:1.08;
    letter-spacing:-.035em;
}

.rm-guides-featured-copy p {
    margin:0 0 20px;
    color:#4b5563;
    font-size:16px;
    line-height:1.55;
}

.rm-guides-featured-button {
    align-self:flex-start;
    display:inline-flex;
    padding:12px 18px;
    border-radius:8px;
    background:var(--rm-color-primary);
    color:#fff !important;
    font-size:15px;
    font-weight:650;
    text-decoration:none !important;
}

.rm-guides-featured-button:hover {
    background:var(--rm-color-primary-hover);
}

/* PERCORSI */

.rm-guides-paths {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin:0 0 46px;
}

.rm-guides-paths > span {
    margin-right:6px;
    color:var(--rm-color-heading);
    font-size:16px;
    font-weight:650;
}

.rm-guides-paths a {
    display:inline-flex;
    padding:8px 13px;
    border:1px solid #cfd6e2;
    border-radius:999px;
    color:var(--rm-color-text);
    font-size:14px;
    font-weight:550;
    text-decoration:none;
}

.rm-guides-paths a:hover {
    border-color:var(--rm-color-primary);
    color:var(--rm-color-primary);
}

/* MAIN GRID */

.rm-guides-grid {
    display:grid;
    grid-template-columns:minmax(0,2.15fr) minmax(240px,.85fr);
    gap:72px;
    align-items:start;
}

/* LISTA */

.rm-guides-list-heading {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    padding-bottom:18px;
    border-bottom:1px solid var(--rm-color-border);
}

.rm-guides-list-heading h2 {
    margin:0;
    font-size:27px;
    letter-spacing:-.025em;
}

.rm-guides-list-heading span {
    color:var(--rm-color-muted);
    font-size:14px;
}

.rm-guide-row {
    margin:0;
    padding:28px 0 30px;
    border-bottom:1px solid var(--rm-color-border);
}

.rm-guide-row h3 {
    margin:0 0 10px;
    font-size:26px;
    font-weight:650;
    line-height:1.16;
    letter-spacing:-.02em;
}

.rm-guide-row h3 a {
    color:var(--rm-color-heading);
    text-decoration:none;
}

.rm-guide-row h3 a:hover {
    color:var(--rm-color-primary);
}

.rm-guide-row p {
    margin:0 0 10px;
    color:#4b5563;
    font-size:15.5px;
    line-height:1.55;
}

.rm-guide-read {
    color:var(--rm-color-primary);
    font-size:14px;
    font-weight:650;
    text-decoration:none;
}

/* PROFESSIONI */

.rm-guides-professions {
    position:sticky;
    top:105px;
}

.rm-guides-professions h2 {
    margin:0 0 10px;
    padding-bottom:18px;
    border-bottom:1px solid var(--rm-color-border);
    font-size:25px;
}

.rm-guides-professions-intro {
    margin:0 0 18px;
    color:var(--rm-color-muted);
    font-size:14px;
    line-height:1.5;
}

.rm-guides-professions-list {
    display:flex;
    flex-direction:column;
}

.rm-guides-professions-list a {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 0;
    border-bottom:1px solid #f0f1f3;
    color:var(--rm-color-text);
    font-size:15px;
    font-weight:550;
    text-decoration:none;
}

.rm-guides-professions-list a span {
    opacity:.45;
}

.rm-guides-professions-list a:hover {
    color:var(--rm-color-primary);
}

/* PAGINATION */

.rm-guides-pagination {
    margin-top:38px;
}

.rm-guides-pagination ul {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.rm-guides-pagination li {
    list-style:none;
}

.rm-guides-pagination a,
.rm-guides-pagination span {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:38px;
    height:38px;
    padding:0 10px;
    border:1px solid var(--rm-color-border);
    border-radius:8px;
    text-decoration:none;
}

.rm-guides-pagination .current {
    border-color:var(--rm-color-primary);
    background:var(--rm-color-primary);
    color:#fff;
}

/* MOBILE */

@media(max-width:850px) {

    .rm-guides-featured {
        grid-template-columns:1fr;
    }

    .rm-guides-featured-media,
    .rm-guides-featured-media img {
        min-height:300px;
        max-height:380px;
    }

    .rm-guides-featured-copy {
        padding:34px 28px 38px;
    }

    .rm-guides-grid {
        grid-template-columns:1fr;
        gap:52px;
    }

    .rm-guides-professions {
        position:static;
    }
}

@media(max-width:640px) {

    .rm-guides-heading {
        margin-bottom:30px;
    }

    .rm-guides-heading h1 {
        font-size:40px;
    }

    .rm-guides-heading p {
        font-size:17px;
    }

    .rm-guides-featured {
        border-radius:14px;
    }

    .rm-guides-featured-media,
    .rm-guides-featured-media img {
        min-height:230px;
    }

    .rm-guides-featured-copy h2 {
        font-size:29px;
    }

    .rm-guides-paths {
        margin-bottom:34px;
    }

    .rm-guides-paths > span {
        width:100%;
        margin-bottom:3px;
    }

    .rm-guide-row {
        padding:24px 0 26px;
    }

    .rm-guide-row h3 {
        font-size:24px;
    }
}
