.home-v3 {
    --v3-blue: #073b70;
    --v3-blue-deep: #052b54;
    --v3-blue-bright: #086be8;
    --v3-gold: #c58a16;
    --v3-ink: #082653;
    --v3-muted: #587092;
    --v3-line: #dbe6f2;
    --v3-gutter: 1.35rem;
    background: #fff;
    color: var(--v3-ink);
    margin: 0;
    min-height: 100vh;
    overflow: hidden;
    width: 100%;
}

.home-v3 *, .home-v3 *::before, .home-v3 *::after { box-sizing: border-box; }
.home-v3 a { text-decoration: none; }
.home-v3 h1, .home-v3 blockquote { font-family: Georgia, "Times New Roman", serif; }

.home-v3-header {
    align-items: center;
    background: #fff;
    display: grid;
    gap: 1rem;
    grid-template-columns: 15rem minmax(0, 1fr) auto;
    min-height: 4.4rem;
    margin: 0 auto;
    max-width: 1266px;
    padding: .55rem var(--v3-gutter);
    width: 100%;
}
.home-v3-brand { align-items: center; color: var(--v3-blue); display: flex; min-width: 0; }
.home-v3-brand img { height: 2.55rem; object-fit: contain; width: auto; }
.home-v3-brand > span { display: flex; flex-direction: column; margin-left: -.3rem; }
.home-v3-brand strong { color: var(--v3-gold); font-family: Georgia, "Times New Roman", serif; font-size: .95rem; line-height: 1; }
.home-v3-brand small { color: var(--v3-blue); font-size: .55rem; margin-top: .2rem; }
.home-v3-nav { align-items: stretch; display: flex; height: 4.4rem; justify-content: center; }
.home-v3-nav a { align-items: center; border-bottom: 3px solid transparent; color: var(--v3-blue); display: flex; font-size: .72rem; font-weight: 600; padding: 0 .9rem; }
.home-v3-nav a:hover, .home-v3-nav a.is-active { border-bottom-color: var(--v3-gold); color: var(--v3-blue-deep); }
.home-v3-header__tools { align-items: center; display: flex; gap: .65rem; }
.home-v3-language { align-items: center; background: transparent; border: 0; color: var(--v3-blue); display: flex; gap: .35rem; min-height: 2.5rem; padding: .35rem; }
.home-v3-language .bi-globe2 { font-size: 1.05rem; }
.home-v3-language .bi-chevron-down { font-size: .65rem; }
.home-v3-login { align-items: center; background: var(--v3-blue); border-radius: 6px; color: #fff; display: flex; font-size: .76rem; font-weight: 700; gap: .55rem; min-height: 2.6rem; padding: .55rem 1rem; }
.home-v3-login:hover { background: var(--v3-blue-deep); color: #fff; }
.home-v3-menu-button { align-items: center; background: transparent; border: 0; color: var(--v3-blue); display: none; font-size: 1.6rem; height: 2.5rem; justify-content: center; width: 2.5rem; }

.home-v3-hero {
    background-image: linear-gradient(90deg, #f0f7fe 0%, rgba(240,247,254,.99) 42%, rgba(240,247,254,.9) 62%, rgba(240,247,254,.4) 78%, rgba(240,247,254,.05) 90%), url("../img/plamoges_online_hero_v2.1ea92ace219c.png");
    background-position: center, center 52%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 20rem;
    position: relative;
}
.home-v3-hero__inner { align-items: center; display: flex; margin: 0 auto; max-width: 1266px; min-height: 20rem; padding: 1.8rem var(--v3-gutter); position: relative; width: 100%; }
.home-v3-hero__copy { max-width: 38rem; position: relative; z-index: 1; }
.home-v3-eyebrow { color: var(--v3-blue-bright); font-size: .7rem; font-weight: 700; letter-spacing: .18rem; margin: 0 0 .75rem; text-transform: uppercase; }
.home-v3-hero h1 { color: var(--v3-blue-deep); font-size: 2.75rem; font-weight: 700; letter-spacing: 0; line-height: 1; margin: 0; max-width: 38rem; }
.home-v3-hero__copy > p:not(.home-v3-eyebrow) { color: #294f7d; font-size: .93rem; line-height: 1.45; margin: .85rem 0 0; max-width: 31rem; }
.home-v3-gold-line { background: var(--v3-gold); display: block; height: 3px; margin-top: .9rem; width: 3.4rem; }
.home-v3-actions { display: flex; gap: .8rem; margin-top: 1rem; }
.home-v3-button { align-items: center; background: rgba(255,255,255,.9); border: 1px solid var(--v3-blue-bright); border-radius: 6px; color: var(--v3-blue); display: flex; font-size: .76rem; font-weight: 700; gap: .65rem; justify-content: center; min-height: 2.9rem; padding: .55rem 1rem; }
.home-v3-button .bi-arrow-right { margin-left: .3rem; }
.home-v3-button--primary { background: var(--v3-blue); border-color: var(--v3-blue); color: #fff; }
.home-v3-button:hover { background: var(--v3-blue-deep); border-color: var(--v3-blue-deep); color: #fff; }
.home-v3-hero blockquote { bottom: 1.8rem; color: #fff; font-size: 1rem; font-style: italic; line-height: 1.35; margin: 0; max-width: 22rem; padding-bottom: .8rem; position: absolute; right: var(--v3-gutter); text-shadow: 0 1px 4px rgba(0,30,65,.55); }
.home-v3-hero blockquote::after { background: var(--v3-gold); bottom: 0; content: ""; height: 3px; left: 0; position: absolute; width: 2.6rem; }

.home-v3-main { margin: 0 auto; max-width: 1266px; padding: 1rem var(--v3-gutter) 1.5rem; width: 100%; }
.home-v3-quick-grid { display: grid; gap: .9rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.home-v3-quick { background: #eef6ff; border: 1px solid transparent; border-radius: 8px; color: var(--v3-ink); display: grid; gap: .25rem; grid-template-columns: 1fr auto; min-height: 9.3rem; padding: .9rem; position: relative; }
.home-v3-quick:hover { border-color: currentColor; color: var(--v3-ink); }
.home-v3-icon { align-items: center; background: #dcecff; border-radius: 8px; color: var(--v3-blue-bright); display: flex; font-size: 1.45rem; height: 2.65rem; justify-content: center; width: 2.65rem; }
.home-v3-quick strong { align-self: end; font-size: .95rem; grid-column: 1; margin-top: .25rem; }
.home-v3-quick small { color: var(--v3-muted); font-size: .68rem; grid-column: 1; line-height: 1.35; }
.home-v3-quick > i { align-items: center; align-self: end; background: #dcecff; border-radius: 50%; color: var(--v3-blue-bright); display: flex; grid-column: 2; grid-row: 2 / 4; height: 1.8rem; justify-content: center; width: 1.8rem; }
.home-v3-quick--green { background: #edf9f1; }
.home-v3-quick--green .home-v3-icon, .home-v3-quick--green > i { background: #d9f4e3; color: #0b8b47; }
.home-v3-quick--gold { background: #fff7e9; }
.home-v3-quick--gold .home-v3-icon, .home-v3-quick--gold > i { background: #ffedca; color: #b77a09; }
.home-v3-quick--violet { background: #f5f0ff; }
.home-v3-quick--violet .home-v3-icon, .home-v3-quick--violet > i { background: #e9ddff; color: #7048ce; }

.home-v3-dashboard { display: grid; gap: .9rem; grid-template-columns: 1.35fr .8fr .68fr; margin-top: 1rem; }
.home-v3-panel, .home-v3-tool { border: 1px solid var(--v3-line); border-radius: 8px; min-width: 0; }
.home-v3-panel__header { align-items: center; border-bottom: 1px solid var(--v3-line); display: flex; justify-content: space-between; min-height: 3.2rem; padding: .65rem .9rem; }
.home-v3-panel__header h2, .home-v3-tool h2 { align-items: center; color: var(--v3-blue-deep); display: flex; font-size: .95rem; font-weight: 700; gap: .7rem; margin: 0; }
.home-v3-panel__header h2 i, .home-v3-tool h2 > i { color: var(--v3-blue-bright); font-size: 1.25rem; }
.home-v3-panel__header > a { align-items: center; color: var(--v3-blue-bright); display: flex; font-size: .65rem; gap: .45rem; white-space: nowrap; }
.home-v3-news__row { align-items: center; border-bottom: 1px solid var(--v3-line); color: var(--v3-ink); display: grid; gap: .7rem; grid-template-columns: 3.5rem minmax(0, 1fr) auto; min-height: 5.2rem; padding: .65rem .9rem; }
.home-v3-news__row:last-child { border-bottom: 0; }
.home-v3-news__row:hover { color: var(--v3-blue-bright); }
.home-v3-news__row time { align-items: center; background: #f1f7ff; border-radius: 6px; color: var(--v3-blue-bright); display: flex; flex-direction: column; height: 3.4rem; justify-content: center; text-transform: uppercase; }
.home-v3-news__row time strong { font-size: 1.05rem; line-height: 1; }
.home-v3-news__row time small { font-size: .52rem; margin-top: .2rem; }
.home-v3-news__row > span { display: flex; flex-direction: column; min-width: 0; }
.home-v3-news__row > span strong { font-size: .76rem; line-height: 1.25; }
.home-v3-news__row > span small { color: var(--v3-muted); font-size: .64rem; line-height: 1.3; margin-top: .2rem; }
.home-v3-news__row > i { color: var(--v3-blue-bright); font-size: .75rem; }
.home-v3-empty { color: var(--v3-muted); font-size: .72rem; padding: 1.2rem; }
.home-v3-timeline { display: flex; flex-direction: column; padding: .7rem .9rem .7rem 2rem; }
.home-v3-timeline a { color: var(--v3-ink); display: flex; flex-direction: column; min-height: 3.7rem; padding: .25rem 0 .25rem .9rem; position: relative; }
.home-v3-timeline a::before { background: var(--v3-blue-bright); border: 2px solid #fff; border-radius: 50%; content: ""; height: .75rem; left: -.4rem; position: absolute; top: .45rem; width: .75rem; z-index: 1; }
.home-v3-timeline a::after { background: #90c0fa; bottom: -.35rem; content: ""; left: -.05rem; position: absolute; top: 1rem; width: 1px; }
.home-v3-timeline a:last-child::after { display: none; }
.home-v3-timeline time { font-size: .72rem; font-weight: 700; }
.home-v3-timeline span { color: var(--v3-muted); font-size: .65rem; line-height: 1.25; margin-top: .1rem; }
.home-v3-timeline p { color: var(--v3-muted); font-size: .72rem; margin: .5rem 0; }
.home-v3-side { display: flex; flex-direction: column; gap: .9rem; min-width: 0; }
.home-v3-tool { background: #f4f8fd; padding: .9rem; }
.home-v3-tool p { color: var(--v3-muted); font-size: .67rem; line-height: 1.35; margin: .55rem 0 .65rem; }
.home-v3-follow input { background: #fff; border: 1px solid var(--v3-line); border-radius: 6px; color: var(--v3-ink); font-size: .7rem; height: 2.5rem; padding: .55rem .7rem; width: 100%; }
.home-v3-follow button { align-items: center; background: var(--v3-blue); border: 0; border-radius: 6px; color: #fff; display: flex; font-size: .7rem; font-weight: 700; justify-content: center; margin-top: .55rem; min-height: 2.5rem; width: 100%; }
.home-v3-follow button i { margin-left: .9rem; }
.home-v3-help > a { align-items: center; color: var(--v3-blue-bright); display: grid; font-size: .7rem; gap: .55rem; grid-template-columns: 1rem 1fr auto; padding: .35rem 0; }
.home-v3-help > a > i:last-child { font-size: .6rem; }

.home-v3-faculties { margin-top: 1rem; padding-bottom: .75rem; }
.home-v3-faculty-grid { display: grid; gap: .75rem; grid-template-columns: repeat(5, minmax(0, 1fr)); padding: .8rem .9rem .45rem; }
.home-v3-faculty { border: 1px solid var(--v3-line); border-radius: 6px; color: var(--v3-ink); display: flex; flex-direction: column; min-width: 0; overflow: hidden; }
.home-v3-faculty:hover { border-color: var(--v3-blue-bright); color: var(--v3-blue-bright); }
.home-v3-faculty__photo { align-items: center; background: #eaf3fe url("../img/plamoges_online_hero_v2.1ea92ace219c.png") center/cover; display: flex; height: 6.5rem; justify-content: center; overflow: hidden; }
.home-v3-faculty__photo img { background: rgba(255,255,255,.9); border-radius: 6px; max-height: 4rem; max-width: 55%; object-fit: contain; padding: .3rem; }
.home-v3-faculty__photo > i { color: #fff; font-size: 2rem; text-shadow: 0 1px 4px rgba(0,35,70,.45); }
.home-v3-faculty > strong { font-size: .72rem; padding: .55rem .6rem .12rem; }
.home-v3-faculty > span { color: var(--v3-muted); font-size: .62rem; line-height: 1.3; min-height: 3rem; padding: 0 .6rem .55rem; }
.home-v3-dots { align-items: center; display: flex; gap: .35rem; justify-content: center; margin-top: .2rem; }
.home-v3-dots > * { background: #ccd9e8; border-radius: 999px; display: block; height: .45rem; width: .45rem; }
.home-v3-dots b { background: var(--v3-blue-bright); width: 1.1rem; }

.home-v3-kpis { background: #f3f8fe; }
.home-v3-kpis__inner { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0 auto; max-width: 1266px; padding: 1.25rem var(--v3-gutter); width: 100%; }
.home-v3-kpis__inner > div { align-items: center; border-right: 1px solid var(--v3-line); display: grid; gap: .05rem .7rem; grid-template-columns: auto 1fr; justify-content: center; padding: 0 2rem; }
.home-v3-kpis__inner > div:last-child { border-right: 0; }
.home-v3-kpis i { font-size: 1.9rem; grid-row: 1 / 3; }
.home-v3-kpis i.violet { color: #7048ce; }.home-v3-kpis i.cyan { color: #06a5c9; }.home-v3-kpis i.blue { color: var(--v3-blue-bright); }.home-v3-kpis i.gold { color: #d79508; }
.home-v3-kpis strong { color: var(--v3-blue-deep); font-size: 1.25rem; line-height: 1; }
.home-v3-kpis span { color: var(--v3-muted); font-size: .62rem; }

.home-v3-footer { background: var(--v3-blue-deep); color: #fff; }
.home-v3-footer__main { display: grid; gap: 2.5rem; grid-template-columns: 1.25fr 1fr .65fr .95fr .75fr; margin: 0 auto; max-width: 1266px; padding: 2rem calc(var(--v3-gutter) + 1rem) 1.45rem; }
.home-v3-footer__brand img { height: 2.4rem; object-fit: contain; width: auto; }
.home-v3-footer__brand strong { color: #efbd3e; font-family: Georgia, "Times New Roman", serif; font-size: .95rem; margin-left: -.35rem; }
.home-v3-footer__brand small { color: #b8c9dd; display: block; font-size: .55rem; line-height: 1.35; margin-left: 2.8rem; max-width: 11rem; }
.home-v3-footer blockquote { border-left: 1px solid rgba(255,255,255,.2); color: #d1ddeb; font-size: .82rem; font-style: italic; line-height: 1.4; margin: 0; padding: .3rem 0 .8rem 1.5rem; position: relative; }
.home-v3-footer blockquote::after { background: var(--v3-gold); bottom: 0; content: ""; height: 2px; left: 1.5rem; position: absolute; width: 2rem; }
.home-v3-footer nav, .home-v3-social { display: flex; flex-direction: column; gap: .35rem; }
.home-v3-footer nav strong, .home-v3-social strong { font-size: .66rem; margin-bottom: .2rem; }
.home-v3-footer nav a { color: #b8c9dd; font-size: .62rem; }
.home-v3-social span { color: #b8c9dd; display: flex; font-size: 1.15rem; gap: .75rem; }
.home-v3-footer__bottom { align-items: center; border-top: 1px solid rgba(255,255,255,.16); color: #b8c9dd; display: grid; font-size: .57rem; gap: 1rem; grid-template-columns: 1fr auto 1fr; margin: 0 auto; max-width: calc(1266px - (var(--v3-gutter) + 1rem) * 2); padding: .85rem 0; }
.home-v3-footer__bottom a { color: #b8c9dd; }
.home-v3-footer__bottom em { font-style: normal; letter-spacing: .16rem; text-align: right; }
.home-v3-offcanvas-nav { display: flex; flex-direction: column; }
.home-v3-offcanvas-nav a { border-bottom: 1px solid var(--v3-line); color: var(--v3-blue); font-weight: 600; padding: .8rem 0; }

@media (max-width: 1199.98px) {
    .home-v3 { --v3-gutter: 1rem; }
    .home-v3-header { grid-template-columns: 13rem minmax(0, 1fr) auto; }
    .home-v3-nav a { padding: 0 .55rem; }
    .home-v3-hero__inner { padding-left: var(--v3-gutter); }
    .home-v3-dashboard { grid-template-columns: 1.2fr .8fr; }
    .home-v3-side { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, 1fr); }
    .home-v3-footer__main { grid-template-columns: 1.2fr 1fr .7fr .9fr; }
    .home-v3-social { display: none; }
}

@media (max-width: 991.98px) {
    .home-v3-header { grid-template-columns: 1fr auto; min-height: 4.7rem; padding: .7rem var(--v3-gutter); }
    .home-v3-nav, .home-v3-login { display: none; }
    .home-v3-menu-button { display: flex; }
    .home-v3-hero { background-image: linear-gradient(180deg, rgba(240,247,254,0) 9%, rgba(240,247,254,.88) 27%, #f0f7fe 43%, #fff 60%), url("../img/plamoges_online_hero_v2.1ea92ace219c.png"); background-position: 64% top; min-height: 30rem; }
    .home-v3-hero__inner { align-items: flex-start; flex-direction: column; min-height: 30rem; padding: 7rem var(--v3-gutter) 1.25rem; }
    .home-v3-hero__copy { max-width: 31rem; width: 100%; }
    .home-v3-hero blockquote { color: var(--v3-blue-deep); margin-top: 1.2rem; max-width: 24rem; position: relative; bottom: auto; right: auto; text-shadow: none; }
    .home-v3-quick-grid { grid-template-columns: repeat(2, 1fr); }
    .home-v3-dashboard { grid-template-columns: 1fr; }
    .home-v3-side { grid-column: auto; }
    .home-v3-faculty-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
    .home-v3-faculty { flex: 0 0 42%; scroll-snap-align: start; }
    .home-v3-footer__main { grid-template-columns: repeat(3, 1fr); }
    .home-v3-footer blockquote { display: none; }
}

@media (max-width: 767.98px) {
    .home-v3 { --v3-gutter: .9rem; }
    .home-v3-brand img { height: 2.3rem; }
    .home-v3-brand strong { font-size: .82rem; }
    .home-v3-brand small { font-size: .5rem; }
    .home-v3-header__tools { gap: .2rem; }
    .home-v3-language { font-size: .75rem; }
    .home-v3-header__tools .online-account-menu__trigger { height: 2.35rem; width: 2.35rem; }
    .home-v3-hero { background-position: 67% top; min-height: 30rem; }
    .home-v3-hero__inner { min-height: 30rem; padding-top: 7rem; }
    .home-v3-eyebrow { font-size: .62rem; }
    .home-v3-hero h1 { font-size: 2.35rem; max-width: 21rem; }
    .home-v3-hero__copy > p:not(.home-v3-eyebrow) { font-size: .84rem; max-width: 23rem; }
    .home-v3-actions { flex-direction: column; }
    .home-v3-button { width: 100%; }
    .home-v3-hero blockquote { font-size: .95rem; }
    .home-v3-main { padding-top: .8rem; }
    .home-v3-quick-grid { gap: .65rem; }
    .home-v3-quick { min-height: 10.3rem; padding: .8rem; }
    .home-v3-quick strong { font-size: .88rem; }
    .home-v3-quick small { font-size: .64rem; }
    .home-v3-panel__header { align-items: flex-start; }
    .home-v3-panel__header > a { font-size: .6rem; }
    .home-v3-side { display: flex; }
    .home-v3-faculty { flex-basis: 78%; }
    .home-v3-kpis__inner { gap: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 1.1rem .3rem; }
    .home-v3-kpis__inner > div { display: flex; flex-direction: column; gap: .15rem; padding: 0 .25rem; text-align: center; }
    .home-v3-kpis i { font-size: 1.4rem; }
    .home-v3-kpis strong { font-size: .92rem; }
    .home-v3-kpis span { font-size: .48rem; line-height: 1.2; }
    .home-v3-footer__main { grid-template-columns: repeat(2, 1fr); padding: 1.7rem var(--v3-gutter); }
    .home-v3-footer__brand { grid-column: 1 / -1; }
    .home-v3-footer__bottom { align-items: flex-start; display: flex; flex-direction: column; margin: 0 var(--v3-gutter); }
    .home-v3-footer__bottom em { text-align: left; }
}

@media (max-width: 379.98px) {
    .home-v3-brand img { height: 2.05rem; }
    .home-v3-brand small { display: none; }
    .home-v3-hero h1 { font-size: 2.1rem; }
    .home-v3-hero { min-height: 29rem; }
    .home-v3-hero__inner { min-height: 29rem; padding-top: 6.5rem; }
    .home-v3-quick { min-height: 9.7rem; }
}
