
.site-main { overflow: hidden; }  /* Set in main.php */

/* NAVBAR
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.site-header {
   position: absolute;
   top: 24px;
   left: 0;
   width: 100%;
   z-index: 1000;
}

.site-navbar {
   min-height: 82px;
   padding: 0 38px;
   background: rgba(0, 25, 18, .72);
   border: 3px solid var(--primas-green);
   border-radius: 50px;
}

.site-navbar .navbar-nav { gap: 18px; }

.site-navbar .nav-link {
   position: relative;
   padding: 27px 8px !important;
   color: var(--primas-white);
   font-family: var(--font-h);
   font-size: 20px;
   font-weight: 600;
   transition: color .2s ease;
}

.site-navbar .nav-link:hover, .site-navbar .nav-link:focus, .site-navbar .nav-link.active { color: var(--primas-yellow); }
.site-navbar .dropdown-toggle::after { margin-left: 5px; vertical-align: .15em; }


/* Dropdown */

.site-navbar .dropdown-menu {
   margin-top: 0;
   padding: 8px 0;
   background: rgba(0, 40, 25, .96);
   border: 0;
   border-radius: 10px;
   box-shadow: 0 8px 25px rgba(0, 0, 0, .18);
}

.site-navbar .dropdown-item {
   padding: 9px 20px;
   color: var(--primas-white);
   font-family: var(--font-h);
   font-size: 20px;
   font-weight: 600;
}

.site-navbar .dropdown-item:hover, .site-navbar .dropdown-item:focus {
   color: var(--primas-yellow);
   background: rgba(255, 255, 255, .06);
}


/* Mobile toggler */

.site-navbar .navbar-toggler {
   margin-left: auto;
   padding: 8px 10px;
   color: var(--primas-white);
   border: 0;
   box-shadow: none;
}

.site-navbar .navbar-toggler:focus { box-shadow: none; }
.site-navbar .navbar-toggler i { font-size: 24px; }


/* Responsive */

@media (max-width: 991.98px) {
   .site-header { top: 15px; }

   .site-navbar {
      min-height: 60px;
      padding: 8px 16px;
      border-radius: 30px;
   }
   .site-navbar .navbar-collapse { padding: 10px 5px 15px; }
   .site-navbar .navbar-nav { align-items: stretch !important; gap: 0; }
   .site-navbar .nav-link { padding: 10px 12px !important; }
   .site-navbar .dropdown-menu {
      padding: 3px 0;
      background: rgba(255, 255, 255, .05);
      box-shadow: none;
   }
   .site-navbar .dropdown-item { padding-left: 28px; }
}

@media (max-width: 575.98px) {
   .site-header .container { padding-left: 12px; padding-right: 12px; }
   .site-navbar { border-width: 2px; }
}



/* HERO SLIDER
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.hero-section { position: relative; width: 100%; }
.hero-swiper { width: 100%; }
.hero-slide { width: 100%; }
.hero-slide img { display: block; width: 100%; height: auto; }


/* Pagination */

.hero-pagination { bottom: 45px !important; z-index: 20; }

.hero-pagination .swiper-pagination-bullet {
   width: 9px;
   height: 9px;
   background: rgba(255, 255, 255, .65);
   opacity: 1;
}

.hero-pagination .swiper-pagination-bullet-active { background: var(--primas-yellow); }


/* Responsive */

@media (max-width: 575.98px) {
   .hero-pagination { bottom: 28px !important; }
}



/* PAGE HEADER
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.page-header {
   position: relative;
   min-height: 390px;
   background: linear-gradient(rgba(0, 0, 0, .42), rgba(0, 0, 0, .42)), url('../images/website/page-header.jpg') center center / cover no-repeat;
}

.page-header-content { padding-top: 185px; }

.page-breadcrumb {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 8px;
   margin-bottom: 5px;
   color: var(--primas-white);
}

.page-breadcrumb a, .page-breadcrumb span {
   color: var(--primas-white);
   font-weight: 400;
}
.page-breadcrumb a:hover { color: var(--primas-yellow); }
.page-breadcrumb i { font-size: 10px; }

.page-header h1 { color: var(--primas-white); }


/* Responsive */

@media (max-width: 991.98px) {
   .page-header { min-height: 340px; }
   .page-header-content { padding-top: 160px; }
}

@media (max-width: 575.98px) {
   .page-header { min-height: 290px; }
   .page-header-content { padding-top: 135px; }
   .page-breadcrumb a, .page-breadcrumb span { font-size: 13px; }
}



/* ANIMATED BOTTOM EDGE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.edge-wave { position: relative; }
.edge-wave::after {
   content: '';
   position: absolute;
   left: 0;
   bottom: -1px;
   z-index: 15;
   width: 100%;
   height: 45px;
   background-image: url('../images/website/zigzag.svg');
   background-repeat: repeat-x;
   background-position: 0 bottom;
   background-size: 1920px 45px;
   animation: edgeWaveScroll 30s linear infinite;
   pointer-events: none;
}

@keyframes edgeWaveScroll {
   from { background-position-x: 0; }
   to { background-position-x: -1920px; }
}


/* Responsive */

@media (max-width: 575.98px) {
   .edge-wave::after { height: 25px; background-size: 1067px 25px; }
}



/* HOME OBJECTIVES
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.home-objectives { position: relative; z-index: 30; }

.objective-slider-wrap {
   position: relative;
   padding-bottom: 38px;
}

.objective-swiper { padding: 10px; }
.objective-swiper .swiper-slide { height: auto; }
.objective-card { box-shadow: 0 0 10px rgba(0, 0, 0, .1); }
.objective-card .card-body { min-height: 265px; }

.objective-icon {
   color: var(--primas-red);
   font-size: 62px;
   line-height: 1;
}

.objective-description {
   display: -webkit-box;
   overflow: hidden;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 2;
   line-clamp: 2;
}

.objective-link {
   display: inline-flex;
   align-items: center;
   gap: 7px;
   color: var(--primas-green);
   font-size: 15px;
   font-weight: 500;
}

.objective-link:hover { color: var(--primas-dark-green); }

.objective-link i {
   font-size: 13px;
   transition: transform .2s ease;
}

.objective-link:hover i { transform: translateX(3px); }


/* Navigation */

.objective-navigation {
   position: absolute;
   left: 50%;
   bottom: 0;
   display: flex;
   align-items: center;
   transform: translateX(-50%);
}

.objective-navigation button {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 28px;
   height: 30px;
   padding: 0;
   color: var(--primas-red);
   background: transparent;
   border: 0;
}

.objective-navigation button:hover { color: var(--primas-dark-green); }
.objective-navigation i { font-size: 14px; }


/* Responsive */

@media (min-width: 992px) {
   .objective-slider-wrap { margin-top: -50px; }
}

@media (max-width: 575.98px) {
   .objective-icon { font-size: 58px; }
}



/* HOME NEWS & EVENTS
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.home-news-events { position: relative; width: 100%; }

.news-events-title-col {
   position: relative;
   z-index: 2;
   min-height: 430px;
   background: var(--primas-purple);
}

.news-events-heading {
   position: relative;
   width: 100%;
   max-width: 320px;
   transform: translateX(60px);
}

.news-events-heading h2 {
   color: var(--primas-white);
   line-height: 1.15;
}

.news-events-content-col {
   min-height: 430px;
   background: var(--primas-dark);
}

.news-events-content {
   position: relative;
   width: 100%;
   max-width: 950px;
   margin: 0 auto;
   padding: 0 50px 45px 130px;
}

.news-event-item { color: var(--primas-white); }

.news-event-badge {
   color: var(--primas-white);
   background: var(--primas-purple);
   font-family: var(--font-p);
   font-size: 14px;
   font-weight: 600;
}

.news-event-item h5 {
   color: var(--primas-white);
   line-height: 1.35;
}

.news-event-summary {
   display: -webkit-box;
   overflow: hidden;
   color: rgba(255, 255, 255, .88);
   line-height: 1.7;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 2;
   line-clamp: 2;
}

.news-event-link {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   color: var(--primas-yellow);
   font-size: 16px;
   font-weight: 500;
}

.news-event-link:hover { color: var(--primas-white); }

.news-event-link i {
   font-size: 14px;
   transition: transform .2s ease;
}

.news-event-link:hover i { transform: translateX(4px); }


/* Navigation */

.news-events-navigation {
   position: absolute;
   left: 50%;
   bottom: 0;
   display: flex;
   align-items: center;
   transform: translateX(-50%);
}

.news-events-navigation button {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 28px;
   height: 30px;
   padding: 0;
   color: var(--primas-white);
   background: transparent;
   border: 0;
}

.news-events-navigation button:hover { color: var(--primas-yellow); }
.news-events-navigation i { font-size: 14px; }


/* Responsive */

@media (max-width: 1199.98px) {
   .news-events-heading { transform: translateX(20px); }
   .news-events-content { padding-left: 45px; padding-right: 45px; }
}

@media (max-width: 991.98px) {
   .news-events-title-col { min-height: auto; }
   .news-events-heading { max-width: none; transform: none; }
   .news-events-heading h2 br { display: none; }
   .news-events-content { max-width: 760px; padding: 0 45px 45px; }
}

@media (max-width: 575.98px) {
   .news-events-content { padding: 0 25px 42px; }
   .news-event-summary { -webkit-line-clamp: 3; line-clamp: 3; }
}



/* HOME PRESIDENT MESSAGE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.home-president { background: var(--primas-white); }
.president-content { max-width: 1250px; }

.president-label {
   font-size: 15px;
   font-weight: 400;
   line-height: 1.4;
}

.president-image {
   display: block;
   width: 270px;
   height: 270px;
   margin: 0 auto;
   object-fit: cover;
   border-radius: 50%;
}

.president-message {
   display: -webkit-box;
   max-width: 1200px;
   margin: 0 auto;
   overflow: hidden;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 4;
   line-clamp: 4;
}

.president-link {
   display: inline-flex;
   align-items: center;
   gap: 8px;
   color: var(--primas-green);
   font-size: 16px;
   font-weight: 500;
}

.president-link:hover { color: var(--primas-dark-green); }
.president-link i { font-size: 14px; transition: transform .2s ease; }
.president-link:hover i { transform: translateX(4px); }


/* Responsive */

@media (max-width: 991.98px) {
   .president-message { -webkit-line-clamp: 5; line-clamp: 5; }
}

@media (max-width: 575.98px) {
   .president-image { width: 210px; height: 210px; }
   .president-message { -webkit-line-clamp: 6; line-clamp: 6; }
}



/* NEWS
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.news-card {
   height: 100%;
   overflow: hidden;
   display: flex;
   flex-direction: column;
   background: var(--primas-white);
   border: 4px solid var(--primas-purple);
   border-radius: 30px;
   box-shadow: 0 5px 20px rgba(0, 0, 0, .06);
   transition: transform .25s ease, box-shadow .25s ease;
}

.news-card-body {
   flex: 1;
   display: flex;
   flex-direction: column;
   padding: 24px;
}

.news-card-summary {
   display: -webkit-box;
   margin-bottom: 20px;
   overflow: hidden;
   color: var(--primas-muted);
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 3;
   line-clamp: 3;
}

.news-card-link {
   margin-top: auto;
   color: var(--primas-green);
   font-weight: 600;
   text-decoration: none;
}

.news-card:hover {
   transform: translateY(-4px);
   box-shadow: 0 10px 28px rgba(0, 0, 0, .10);
}

.news-card-image {
   height: 230px;
   display: block;
   overflow: hidden;
   background: #f3f4f5;
}

.news-card-image img {
   width: 100%;
   height: 100%;
   display: block;
   object-fit: cover;
   transition: transform .35s ease;
}

.news-card:hover .news-card-image img { transform: scale(1.04); }

.news-card-date {
   margin-bottom: 12px;
   color: var(--primas-green);
   font-size: .82rem;
   font-weight: 600;
}

.news-card h5 {
   margin-bottom: 14px;
   line-height: 1.4;
}

.news-card h5 a {
   color: var(--primas-dark-green);
   text-decoration: none;
}

.news-card h5 a:hover { color: var(--primas-green); }

.news-card-link i {
   margin-left: 6px;
   transition: transform .2s ease;
}

.news-card-link:hover { color: var(--primas-dark-green); }
.news-card-link:hover i { transform: translateX(4px); }


/* Responsive */

@media (max-width: 575.98px) {
   .news-card-image { height: 210px; }
   .news-card-body { padding: 20px; }
}



/* NEWS DETAIL
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.news-detail-card {
   max-width: 920px;
   overflow: hidden;
   padding-left: 40px;
   padding-right: 40px;
}

.news-detail-image img {
   border-radius: 20px;
   border: 5px solid var(--primas-purple);
}

.news-detail-badge {
   display: inline-block;
   padding: 7px 18px;
   color: var(--primas-white);
   background: var(--primas-purple);
   border-radius: 30px;
   font-size: .75rem;
   font-weight: 700;
   letter-spacing: .08em;
}

.news-detail-title {
   margin: 15px 0 0;
   color: var(--primas-dark-green);
   font-family: var(--font-h);
   line-height: 1.35;
}

.news-detail-date {
   color: var(--primas-green);
   font-size: .9rem;
   font-weight: 600;
}

.news-detail-divider {
   width: 80px;
   height: 5px;
   margin: 25px 0 30px;
   background: var(--primas-yellow);
   border-radius: 5px;
}

.news-detail-attachment {
   margin-top: 40px;
   padding: 22px 25px;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 25px;
   background: var(--admin-green-soft, rgba(0, 152, 70, .08));
   border-left: 5px solid var(--primas-green);
   border-radius: 8px;
}

.news-detail-attachment small {
   color: var(--primas-green);
   font-weight: 700;
   letter-spacing: .05em;
}

.news-detail-pdf {
   flex-shrink: 0;
   padding: 11px 18px;
   color: var(--primas-white);
   background: var(--primas-purple);
   border-radius: 6px;
   font-weight: 600;
   text-decoration: none;
}

.news-detail-pdf:hover {
   color: var(--primas-purple);
   background: var(--primas-white);
}

.news-detail-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--primas-dark-green);
  font-weight: 600;
  text-decoration: none;
  margin-top: 2rem;
  justify-content: flex-end;  /* push content to the right */
  width: 100%;                /* expand full width so flex-end works */
}

.news-detail-back:hover { color: var(--primas-green); }



/* FOOTER
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.site-footer {
   color: var(--primas-white);
   background: var(--primas-dark-green);
}

.footer-logo { width: 165px; }


/* Social */

.footer-social {
   width: 42px;
   height: 42px;
   color: var(--primas-dark-green) !important;
   background: var(--primas-white);
}

.footer-social i { font-size: 24px; }

.footer-social:hover {
   color: var(--primas-white) !important;
   background: var(--primas-green);
}


/* Divider */

.footer-divider {
   border: 0;
   border-top: 1px solid rgba(244, 208, 0, .55);
   opacity: 1;
}


/* Links */

.footer-links li {
   margin: 0;
   font-weight: 400;
   line-height: 1.7;
}

.footer-links a, .footer-contact a { color: rgba(255, 255, 255, .9); }
.footer-links a:hover, .footer-contact a:hover { color: var(--primas-yellow); }


/* Contact */

.footer-contact { font-style: normal; }



/* OBJECTIVE PAGE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.objective-item-icon {
   flex: 0 0 auto;
   color: var(--primas-red);
   font-size: 52px;
   line-height: .9;
}

.img-achievements { width: 520px; }


/* Responsive */

@media (max-width: 1199.98px) {
   .img-achievements { width: 480px; }
}

@media (max-width: 991.98px) {
   .img-achievements { width: 410px; }
}

@media (max-width: 767.98px) {
   .img-achievements { width: 100%; max-width: 520px; }
}



/* HISTORY - FIRST MEETING
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.history-meeting-side {
   position: relative;
   z-index: 2;
   background: var(--primas-purple);
}

.history-meeting-feature {
   width: 100%;
   transform: translateX(120px);
}

.history-meeting-feature h2 { font-size: 50px; }
.history-meeting-content { background: var(--primas-dark); padding-left: 50px; padding-right: 50px; }
.history-meeting-text { width: 100%; padding: 0 60px 0 150px; }


/* Responsive */

@media (max-width: 1199.98px) {
   .history-meeting-text { padding-left: 100px; }
}

@media (max-width: 991.98px) {
   .history-meeting-feature { max-width: 520px; transform: none; }
   .history-meeting-text { padding: 0 45px; }
}

@media (max-width: 575.98px) {
   .history-meeting-text { padding: 0 25px; }
}



/* MEMBERS PAGE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.members-visual {
   position: relative;
   width: 100%;
   max-width: 500px;
}

.members-count {
   position: absolute;
   left: -30px;
   bottom: 55px;
   min-width: 220px;
   padding: 14px 30px;
   background: var(--primas-white);
   border-radius: 18px;
   box-shadow: 0 8px 12px rgba(0, 0, 0, .2);
   font-weight: 600;
   animation: membersFloat 2s ease-in-out infinite;
}

@keyframes membersFloat {
   0%, 100% { transform: translateY(0); }
   50% { transform: translateY(-10px); }
}

.members-fee-side {
   position: relative;
   z-index: 2;
   min-height: 430px;
   background: var(--primas-purple);
}

.members-fee-feature {
   width: 100%;
   max-width: 420px;
   transform: translateX(135px);
}

.members-fee-content {
   min-height: 430px;
   background: var(--primas-dark);
}

.members-fee-text {
   width: 100%;
   padding: 0 80px 0 140px;
}


/* Responsive */

@media (max-width: 1199.98px) {
   .members-fee-feature { transform: translateX(60px); }
   .members-fee-text { padding-left: 90px; padding-right: 50px; }
}

@media (max-width: 991.98px) {
   .members-count { left: 0; }
   .members-fee-side, .members-fee-content { min-height: auto; }
   .members-fee-feature { max-width: none; transform: none; }
   .members-fee-text { padding: 0 45px; }
}

@media (max-width: 575.98px) {
   .members-count {
      left: 50%;
      bottom: 25px;
      min-width: 200px;
      padding: 12px 22px;
      transform: translateX(-50%);
      animation: none;
   }
   .members-fee-text { padding: 0 25px; }
}



/* ABOUT KoPRIMAS PAGE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.card-savings {
	background: url('../images/website/abstract-bg.jpg');
	background-position: center center;
	background-repeat: repeat-x;
}




/* MEMBERSHIP RENEWAL
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.renewal-card {
   overflow: hidden;
   background: var(--primas-white);
   border: 4px solid var(--primas-purple);
   border-radius: 30px;
   box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
}

.renewal-info {
   color: var(--primas-white);
   background: var(--primas-dark-green);
}

.renewal-info-inner { padding: 55px 45px; }

.renewal-label {
   color: var(--primas-yellow);
   font-size: 14px;
   font-weight: 700;
   letter-spacing: .08em;
}

.renewal-info h2 { color: var(--primas-white); }

.renewal-info p {
   color: rgba(255, 255, 255, .88);
   line-height: 1.7;
}

.renewal-divider {
   width: 70px;
   height: 5px;
   margin: 25px 0;
   background: var(--primas-yellow);
   border-radius: 5px;
}

.renewal-points {
   padding: 0;
   list-style: none;
}

.renewal-points li {
   display: flex;
   align-items: flex-start;
   gap: 10px;
   margin-bottom: 14px;
   color: rgba(255, 255, 255, .92);
}

.renewal-points li:last-child { margin-bottom: 0; }

.renewal-points i {
   margin-top: 5px;
   color: var(--primas-yellow);
   font-size: 14px;
}

.renewal-form-wrap {
   display: flex;
   align-items: center;
}

.renewal-form {
   width: 100%;
   padding: 55px;
}

.renewal-form h4 { color: var(--primas-dark-green); }

.renewal-input { position: relative; }

.renewal-input > i {
   position: absolute;
   top: 50%;
   left: 18px;
   z-index: 2;
   color: var(--primas-green);
   transform: translateY(-50%);
}

.renewal-input .form-control {
   min-height: 54px;
   padding-left: 48px;
   border-radius: 10px;
}

.renewal-input .form-control:focus {
   border-color: var(--primas-green);
   box-shadow: 0 0 0 .2rem rgba(0, 152, 70, .12);
}

.renewal-notice {
   display: flex;
   align-items: flex-start;
   gap: 10px;
   padding: 15px 18px;
   background: rgba(244, 208, 0, .12);
   border-left: 4px solid var(--primas-yellow);
   border-radius: 8px;
   font-size: .9rem;
}

.renewal-notice i {
   margin-top: 3px;
   color: var(--primas-dark-green);
}

/* Button */

.renewal-submit {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 12px;
   min-height: 56px;
   padding: 14px 28px;
   color: var(--primas-white);
   background: var(--primas-green);
   border: 2px solid var(--primas-green);
   border-radius: 12px;
   font-family: var(--font-h);
   font-size: 17px;
   font-weight: 600;
   transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.renewal-submit i {
   font-size: 14px;
   transition: transform .2s ease;
}

.renewal-submit:hover {
   color: var(--primas-dark-green);
   background: var(--primas-yellow);
   border-color: var(--primas-yellow);
   transform: translateY(-2px);
   box-shadow: 0 8px 20px rgba(0, 0, 0, .12);
}

.renewal-submit:hover i { transform: translateX(5px); }

.renewal-submit:active {
   transform: translateY(0);
   box-shadow: none;
}

.renewal-submit:focus-visible {
   outline: 3px solid rgba(244, 208, 0, .45);
   outline-offset: 3px;
}


/* Responsive */

@media (max-width: 991.98px) {
   .renewal-info-inner, .renewal-form { padding: 40px; }
}

@media (max-width: 575.98px) {
   .renewal-card { border-width: 3px; border-radius: 22px; }
   .renewal-info-inner, .renewal-form { padding: 30px 22px; }
}


/* PRIMAS COMMITTEE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

.primas-committee, .koprimas-committee { background: #f8f9fa; }


/* Intro */

.committee-intro-label {
   margin-bottom: 5px;
   color: var(--primas-green);
   font-size: 14px;
   font-weight: 700;
   letter-spacing: .1em;
}

.committee-intro-text {
   max-width: 650px;
   margin: 10px auto 0;
   color: var(--primas-muted);
}


/* Card */

.committee-card {
   position: relative;
   min-height: 390px;
   overflow: hidden;
   display: flex;
   flex-direction: column;
   align-items: center;
   background: var(--primas-white);
   border: 1px solid #e6e8eb;
   border-radius: 24px;
   box-shadow: 0 7px 25px rgba(0, 0, 0, .07);
   transition:
      transform .25s ease,
      box-shadow .25s ease,
      border-color .25s ease;
}

.committee-card:hover {
   transform: translateY(-7px);
   border-color: rgba(67, 43, 123, .25);
   box-shadow: 0 16px 38px rgba(0, 0, 0, .12);
}


/* Top Brand Accent */

.committee-card-top {
   width: 100%;
   height: 8px;
   flex: 0 0 auto;
   background: linear-gradient(
      90deg,
      var(--primas-purple) 0 70%,
      var(--primas-yellow) 70% 100%
   );
}


/* Photo */

.committee-photo-wrap {
   position: relative;
   margin: 35px auto 25px;
}

.committee-photo {
   width: 175px;
   height: 175px;
   padding: 5px;
   overflow: hidden;
   background: var(--primas-white);
   border: 4px solid var(--primas-purple);
   border-radius: 50%;
   box-shadow: 0 8px 22px rgba(0, 0, 0, .14);
   transition:
      border-color .25s ease,
      transform .25s ease;
}

.committee-card:hover .committee-photo {
   border-color: var(--primas-green);
   transform: scale(1.025);
}

.committee-photo img {
   width: 100%;
   height: 100%;
   display: block;
   object-fit: cover;
   border-radius: 50%;
}

.committee-photo-placeholder {
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
   color: #adb5bd;
   background: #f1f3f4;
   border-radius: 50%;
   font-size: 4.2rem;
}


/* Year */

.committee-year {
   position: absolute;
   right: -10px;
   bottom: 10px;
   min-width: 62px;
   padding: 6px 13px;
   color: var(--primas-dark);
   background: var(--primas-yellow);
   border: 3px solid var(--primas-white);
   border-radius: 25px;
   box-shadow: 0 4px 12px rgba(0, 0, 0, .14);
   font-size: 13px;
   font-weight: 700;
   line-height: 1;
   text-align: center;
}


/* Content */

.committee-card-body {
   width: 100%;
   flex: 1;
   padding: 0 28px 32px;
   text-align: center;
}

.committee-position {
   margin-bottom: 10px;
   color: var(--primas-purple);
   font-size: 14px;
   font-weight: 700;
   letter-spacing: .045em;
   line-height: 1.45;
   text-transform: uppercase;
}

.committee-name {
   margin: 0;
   color: var(--primas-dark-green);
   font-family: var(--font-h);
   font-weight: 700;
   line-height: 1.45;
}


/* Bottom Accent */

.committee-card-bottom {
   width: 52px;
   height: 5px;
   margin-bottom: 24px;
   flex: 0 0 auto;
   background: var(--primas-yellow);
   border-radius: 10px;
   transition: width .25s ease;
}

.committee-card:hover .committee-card-bottom { width: 85px; }


/* Empty */

.committee-empty {
   padding: 70px 20px;
   color: var(--primas-muted);
}

.committee-empty i {
   margin-bottom: 15px;
   color: var(--primas-green);
   font-size: 48px;
}


/* Responsive */

@media (max-width: 991.98px) {
   .committee-card { min-height: 370px; }

   .committee-photo {
      width: 160px;
      height: 160px;
   }
}

@media (max-width: 575.98px) {
   .committee-card {
      min-height: auto;
      border-radius: 20px;
   }

   .committee-photo-wrap { margin-top: 30px; }

   .committee-photo {
      width: 145px;
      height: 145px;
   }

   .committee-card-body { padding: 0 22px 27px; }

   .committee-card:hover { transform: translateY(-4px); }
}
