p:empty{
  display: none;
}

/* Header user */

.alumni-portal-header-user,
.alumni-portal-header-guest {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.ap-profile-top-container {
  justify-content: space-between;
  margin-bottom: 24px;
}
@media screen and (max-width: 1440px){
.ap-profile-top-container {
  padding:0 20px;
}

}

.alumni-portal-header-user .ap-avatar img {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: block;
}
@media screen and (max-width: 980px){
.alumni-portal-header-user .ap-avatar img {
    width: 32px;
    height: 32px;
}

}


.ap-logout {
  font-size: 14px;
  font-weight: 600;
  text-decoration:none;
  white-space:nowrap;  
  display: block;  
  padding-right: 30px;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 12H19M19 12L16 15M19 12L16 9' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19 6V5C19 3.89543 18.1046 3 17 3H7C5.89543 3 5 3.89543 5 5V19C5 20.1046 5.89543 21 7 21H17C18.1046 21 19 20.1046 19 19V18' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 28x 28px;  
}

.alumni-portal-header-user.selected .ap-avatar {
  outline: 2px solid var(--wp--preset--color--accent-1);
  border-radius: 50%;
}

/* Guest links */
.alumni-portal-header-guest a {
  color: #000;
  text-decoration: none;
  font-weight: 500;
  margin-right:20px;
}
.alumni-portal-header-guest a:hover {
  color: var(--wp--preset--color--accent-1)
}
.alumni-portal-header-guest .sep {
  opacity: 0.6;
}

.ap-action{
  text-align: right;
}

.alumni-portal-form input{
  box-sizing: border-box;
}

.ap-label{

}

.ap-input,
.ap-select,
.ap-textarea {
  margin-top:8px;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1.5px solid #D1D5DB;
  line-height: 24px;
  font-size: 16px; 
  width: 100%;
  background: #fff;
}

.ap-field-error{
  background: rgb(243, 11, 11, .1);
}

.ap-input:focus,
.ap-textarea:focus,
.ap-select:focus {
  border: 1.5px solid #1A66D9;
  outline: none;
}

.ap-button {
  margin-top: 24px;  
  background: var(--wp--preset--color--accent-1);
  font-family: var(--wp--preset--font-family--inter);
  padding: 12px 2.5em 12px 24px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  background: var(--wp--preset--color--accent-1);
  color: #fff;
  transition: 0.2s;
  position: relative;
  text-decoration: none;
}

/* pseudo-elemento */
.ap-button::after {
  content: "→";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-family: Inter, system-ui, sans-serif;
  font-size: 1.2em;
  font-weight: 400;
  color: white;
  line-height: 1;
  pointer-events: none;
  transition: transform 0.2s ease;
}

.ap-button:hover {
  background: var(--wp--preset--color--accent-3);
}

.ap-btn-avatar{
  width: 100%;
  box-sizing: border-box;
  text-align: left;
  background: #EBF3FD;
  padding: 12px 24px 12px 2.5em;  
  color: var(--wp--preset--color--accent-1);
}

.ap-button.ap-btn-avatar::after {
  content: "";

}
.ap-button.ap-btn-avatar::before {
  content: "+";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-family: Inter, system-ui, sans-serif;
  font-size: 1.2em;
  font-weight: 600;
  color: var(--wp--preset--color--accent-1);
  line-height: 1;
  pointer-events: none;
  transition: transform 0.2s ease;    
}
.ap-button.ap-btn-avatar:hover {
  background-color: #EBF3FD;
  opacity: 0.8;
}

.ap-info {
  border-radius: 8px;
  font-size: 14px;
  padding: 8px 12px;
  color: #0095FF;
  background: #E6F4FF;
}

.ap-info{
  visibility: hidden;
opacity: 0;
  height: 0;
  overflow: hidden;
  transition: opacity 0.2s ease;  
}
.ap-info.is-visible {
  visibility: visible;
  opacity: 1;
  height: auto;
}
.alumni-portal-flash {
  margin: 12px 0;
  padding: 10px 12px;
  border-radius: 8px;
}

#ap_avatar_required_error{
  display:none;
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: 8px;
  color: #EE443F;
  background: #FDECEC;

}

.alumni-portal-flash-error {
  color: #EE443F;
  background: #FDECEC;
}

.alumni-portal-flash-success {
  color: #43B75D;
  background: #ECF8EF;
}
.alumni-portal-flash-info {
  color: #0095FF;
  background: #E6F4FF;
}

.ap-profile-view {
  background: #fff;
  border-radius: 16px;
  padding-bottom: 32px;
}
.ap-profile-wrapper{
  padding: 0 30px;
}
.ap-modal.is-hidden { display: none; }

.ap-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  width: 100vw;
}

.ap-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.45);
  width: 100vw;  
}

.ap-modal__panel {
  position: relative;
  width: min(720px, calc(100% - 40px));
  margin: 48px auto;
  background: #fff;
  border-radius: 14px;
  padding: 18px;

}
.ap-modal__panel > form.alumni-portal-profile-form .ap-scrollbar-wrapper{
  max-height: calc(100vh - 300px);
  min-height: 200px;
  overflow-y: auto;
  padding-right: 6px;
}
.ap-modal__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  padding-bottom:12px;
  border-bottom: 1px solid #CCCCCC;

}
.ap-modal__title{
  font-size: 20px;
  font-weight: 500;
}
.ap-modal .ap-action {
  display:flex;
  gap:10px;
  justify-content:flex-end;
  align-items: center;
  margin-top: 12px;
  padding-top:12px;
  border-top: 1px solid #CCCCCC;  
}


.ap-modal .ap-loader{
  margin-top: 24px;
}

.ap-modal__close {
  background: transparent;
  border: 0;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}

/* opzionale: scrollbar più pulita (webkit) */
.ap-modal__panel  form .ap-scrollbar-wrapper::-webkit-scrollbar {
  width: 6px;
}

.ap-modal__panel form .ap-scrollbar-wrapper::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,.25);
  border-radius: 4px;
}

html.ap-modal-open { overflow: hidden; }

.ap-profile-top{
  display: flex;
  align-items:center;
  gap: 8px;
  font-weight: 500;
}

.ap-profile-head{
  display: flex;
  position:relative;
  justify-content: space-between;
  flex-wrap: wrap;
}

.ap-profile-head:before{
  content:"";
  display: block;
  background: #00654540;
  width: 100%;
  height: 200px;
  position:absolute;
  border-radius: 16px;
  top:0;
  left:0;
  z-index: 0;
}

.ap-profile-head__avatar img {
  margin: 60px 40px 20px;
  position:relative;
  border-radius: 50%; 
  z-index: 1;
  border: 2px solid #006545;
  background: #e3e3e3;
}

@media screen and (max-width: 960px){
  .ap-profile-head__avatar img{
    max-width: 160px;
    max-height: 160px;
  }
  .ap-profile-head:before{
      height: 100px;
  }
}


.ap-profile-head__actions{
  margin-top: 110px;
  display:flex;
  gap: 24px;
  align-items: center;
  justify-content: flex-end;
  padding:0 24px;
}

.alumni-portal-form.is-loading .ap-loader{
  visibility: visible !important;
}

.ap-loader.is-hidden{
  display:none !important;
}

.ap-profile-grid{
  padding: 12px 0;
}

.ap-card__title{
  font-size: 16px;
  color: #6B7280;
  font-weight: 400;
  padding-bottom: 12px;
}
.ap-row{
  padding-bottom: 6px;

}
.ap-value {
  font-size: 16px;
}

.ap-value.ico-email{
  padding-left: 36px;
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='40' height='40' rx='20' fill='none'/%3E%3Cpath d='M15 17L20 20.5L25 17' stroke='%231A66D9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10 25V15C10 13.8954 10.8954 13 12 13H28C29.1046 13 30 13.8954 30 15V25C30 26.1046 29.1046 27 28 27H12C10.8954 27 10 26.1046 10 25Z' stroke='%231A66D9' stroke-width='2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left -4px center;
  background-size: 36px 36px;  
}
.ap-value.ico-tel{
  padding-left: 36px;
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M26.1182 22.702L22 23.5C19.2183 22.1038 17.5 20.5 16.5 18L17.27 13.8699L15.8145 10L12.0636 10C10.936 10 10.0481 10.9318 10.2165 12.0467C10.6369 14.83 11.8765 19.8765 15.5 23.5C19.3052 27.3052 24.7857 28.9564 27.802 29.6127C28.9668 29.8662 30 28.9575 30 27.7655L30 24.1812L26.1182 22.702Z' stroke='%231A66D9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left -4px center;
  background-size: 36px 36px;  
}
.ap-value.ico-cds{
  padding-left: 36px;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.16675 16.25V4.5C4.16675 3.39543 5.06218 2.5 6.16675 2.5H15.2334C15.5648 2.5 15.8334 2.76863 15.8334 3.1V17.5' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M7.5 5.83331L12.5 5.83331' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M5.41675 12.5L15.8334 12.5' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M5.41675 15L15.8334 15' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M5.41675 17.5L15.8334 17.5' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M5.41675 15C4.58341 15 4.16675 14.4404 4.16675 13.75C4.16675 13.0596 4.58341 12.5 5.41675 12.5' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.41675 17.5C4.58341 17.5 4.16675 16.9404 4.16675 16.25C4.16675 15.5596 4.58341 15 5.41675 15' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left -2px top;
  background-size: 26px 26px;  
}
.ap-value.ico-cdst{
  padding-left: 36px;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.32331 6.96332L9.31501 3.46748C9.48392 3.38302 9.68275 3.38302 9.85167 3.46748L16.8434 6.96332C17.2856 7.18444 17.2856 7.81552 16.8434 8.03664L9.85167 11.5325C9.68275 11.6169 9.48392 11.6169 9.31501 11.5325L2.32331 8.03664C1.88108 7.81552 1.88108 7.18444 2.32331 6.96332Z' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M18.7499 10.8333L18.7499 7.91665L17.0833 7.08331' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3.75 8.75V13.0494C3.75 13.8216 4.19459 14.5248 4.8922 14.8561L8.72553 16.6761C9.26836 16.9338 9.89831 16.9338 10.4411 16.6761L14.2745 14.8561C14.9721 14.5248 15.4167 13.8216 15.4167 13.0494V8.75' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 26px 26px;  
}

.ap-value.ico-cal{
  padding-left: 36px;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5 3.33329V1.66663M12.5 3.33329V4.99996M12.5 3.33329H8.75M2.5 8.33329V15.8333C2.5 16.7538 3.24619 17.5 4.16667 17.5H15.8333C16.7538 17.5 17.5 16.7538 17.5 15.8333V8.33329H2.5Z' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M2.5 8.33337V5.00004C2.5 4.07957 3.24619 3.33337 4.16667 3.33337H5.83333' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.83325 1.66663V4.99996' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17.5001 8.33337V5.00004C17.5001 4.07957 16.7539 3.33337 15.8334 3.33337H15.4167' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 24px 24px;  
}

.ap-value.ico-institution{
  padding-left: 36px;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.33325 7.50833L8.34159 7.49907' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M11.6667 7.50833L11.6751 7.49907' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.33325 10.8416L8.34159 10.8324' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M11.6667 10.8416L11.6751 10.8324' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.33325 14.175L8.34159 14.1658' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M11.6667 14.175L11.6751 14.1658' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5 16.9V4.76667C5 4.4353 5.26863 4.16667 5.6 4.16667H10V3.1C10 2.76863 10.2686 2.5 10.6 2.5H14.4C14.7314 2.5 15 2.76863 15 3.1V16.9C15 17.2314 14.7314 17.5 14.4 17.5H5.6C5.26863 17.5 5 17.2314 5 16.9Z' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left -2px center;
  background-size: 26px 26px;  
}

.ap-value.ico-pin{
  padding-left: 36px;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.6666 8.33335C16.6666 12.0153 9.99992 18.3334 9.99992 18.3334C9.99992 18.3334 3.33325 12.0153 3.33325 8.33335C3.33325 4.65146 6.31802 1.66669 9.99992 1.66669C13.6818 1.66669 16.6666 4.65146 16.6666 8.33335Z' stroke='%231A66D9' stroke-width='1.5'/%3E%3Cpath d='M10.0001 9.16667C10.4603 9.16667 10.8334 8.79357 10.8334 8.33333C10.8334 7.8731 10.4603 7.5 10.0001 7.5C9.53984 7.5 9.16675 7.8731 9.16675 8.33333C9.16675 8.79357 9.53984 9.16667 10.0001 9.16667Z' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 24px 24px;  
}

.ap-value.ico-jobtype{
  padding-left: 36px;
  background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.5 2.5L4.5 2.5C3.39543 2.5 2.5 3.39543 2.5 4.5L2.5 15.5C2.5 16.6046 3.39543 17.5 4.5 17.5H15.5C16.6046 17.5 17.5 16.6046 17.5 15.5V4.5C17.5 3.39543 16.6046 2.5 15.5 2.5Z' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.83325 5.83331L14.1666 5.83331' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.83325 10L14.1666 10' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M5.83325 14.1667L10.8333 14.1667' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 24px 24px;  
}

.ap-profile-head-name {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 12px;
  margin-bottom:24px;
  border-bottom: 1px solid #D1D5DB;
}

.ap-profile-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr); 
  grid-auto-flow: row;                  
  gap: 24px;
  align-items: start; 
}

.ap-card {
  align-self: start;
}
/* forza il layout verticale per colonna */
@media (min-width: 769px) {
  .ap-profile-grid {
    grid-auto-flow: column;
    grid-template-rows: repeat(2, auto); /* 👈 CHIAVE */
  }
}

/* mobile */
@media (max-width: 768px) {
  .ap-profile-grid {
    grid-template-columns: 1fr;
    grid-auto-flow: row;
    grid-template-rows: auto;
  }
}


.ap-profile-head-name h1{
  font-weight: 600;
  color: #000;
  font-size: clamp(26px, 32px, 40px)
}

.ap-profile-button-city{
  color: var(--wp--preset--color--accent-1);
  font-size: 20px;
  font-weight: 500;
  padding: 4px 26px 4px;
  border-radius: 999px;
  border: 1px solid var(--wp--preset--color--accent-1);
  padding-left: 40px; /* spazio per icona */
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='40' height='40' rx='20' fill='none'/%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M28 18C28 22.4183 20 30 20 30C20 30 12 22.4183 12 18C12 13.5817 15.5817 10 20 10C24.4183 10 28 13.5817 28 18Z' stroke='%232563EB' stroke-width='2'/%3E%3Cpath d='M20 19C20.5523 19 21 18.5523 21 18C21 17.4477 20.5523 17 20 17C19.4477 17 19 17.4477 19 18C19 18.5523 19.4477 19 20 19Z' fill='none' stroke='%232563EB' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='24' height='24' fill='white' transform='translate(8 8)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left 12px center;
  background-size: 28px 28px;
}

.ap-profile-subhead h2{
  font-size: 24px;
  color: #000000;
  font-weight: 500;
  padding-left: 40px;
  background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M24 26.6667L29.1576 21.5091C29.2701 21.3965 29.3333 21.2439 29.3333 21.0848V14C29.3333 12.8954 28.4379 12 27.3333 12C26.2288 12 25.3333 12.8954 25.3333 14V20' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.9999 21.3333L25.1575 20.1757C25.27 20.0632 25.3333 19.9106 25.3333 19.7515V19.7042C25.3333 19.4769 25.2049 19.2691 25.0016 19.1675L23.9559 18.6447C23.1859 18.2597 22.256 18.4106 21.6473 19.0193L19.919 20.7475C19.544 21.1226 19.3333 21.6313 19.3333 22.1618V26.6667' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.00008 26.6667L2.84248 21.5091C2.72996 21.3965 2.66675 21.2439 2.66675 21.0848V14C2.66675 12.8954 3.56218 12 4.66675 12C5.77132 12 6.66675 12.8954 6.66675 14V20' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.00008 21.3333L6.84248 20.1757C6.72996 20.0632 6.66675 19.9106 6.66675 19.7515V19.7042C6.66675 19.4769 6.79515 19.2691 6.99842 19.1675L8.04408 18.6447C8.81406 18.2597 9.744 18.4106 10.3527 19.0193L12.081 20.7475C12.456 21.1226 12.6667 21.6313 12.6667 22.1618V26.6667' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M18.2223 16H13.7779V12.8889H10.6667V8.44442H13.7779V5.33331H18.2223V8.44442H21.3334V12.8889H18.2223V16Z' stroke='%231A66D9' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 32px 32px;  
  margin-bottom: 8px;
}

.ap-profile-subhead p{
  margin-top:0;
  font-size: 16px;
  color: #6B7280;
}

.ap-button-modifica {
  margin-top: 24px;  
  background: #fff;
  font-family: var(--wp--preset--font-family--inter);
  padding: 8px 2.3em 8px 20px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  color: var(--wp--preset--color--accent-1);
  border: 2px solid var(--wp--preset--color--accent-1);
  transition: 0.2s;
  position: relative;
  text-decoration: none;
}

/* pseudo-elemento */
.ap-button-modifica::after {
  content: "";
  background-image: url(../img/icon-edit.svg);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: contain;
  position: absolute;
  width: 16px;
  height: 16px;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-family: Inter, system-ui, sans-serif;
  font-size: 1.2em;
  font-weight: 400;
  color: white;
  line-height: 1;
  pointer-events: none;
  transition: transform 0.2s ease;
}

.ap-button-modifica:hover {
  background: var(--wp--preset--color--accent-2);
}

.ap-button-cancel{
  color: #71717A;
  border: 2px solid #71717A;
  margin-top: 24px;  
  background: #fff;
  font-family: var(--wp--preset--font-family--inter);
  padding: 12px 24px 12px 24px;
  border-radius: 8px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  transition: 0.2s;
  position: relative;
  text-decoration: none;

}

.ap-button-cancel:after {
  content:"";
}

.ap-button-cancel:hover {
  background: #f3f3f3;
}

.ap-profile-btn-linkdn{
  margin-top: 24px;  
  background: var(--wp--preset--color--accent-1);
  font-family: var(--wp--preset--font-family--inter);
  padding: 8px 20px 8px 2.5em;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  border: 2px solid var(--wp--preset--color--accent-1);
  transition: 0.2s;
  position: relative;
  text-decoration: none;
}

.ap-profile-btn-linkdn::before {
  content: "";
  background-image: url(../img/icon-linkdn.svg);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: contain;
  position: absolute;
  width: 20px;
  height: 20px;

  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: white;
  pointer-events: none;
  transition: transform 0.2s ease;
}

.ap-profile-btn-linkdn:hover {
  background: var(--wp--preset--color--accent-3);
}

.alumni-portal-avatar-preview img{
  object-fit: cover;
}

.alumni-portal-group-label{
  font-size: 20px;
  font-weight: 500;
  color: #1A66D9;
  margin-bottom: 20px;
}

p.ap-field {
  margin-bottom:0
}
.ap-field label,
.alumni-portal-field-label{
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 12px;
  color: #000;
}

.alumni-portal-field-description{
  font-size: 12px ;
  font-weight: 400;
  color: #6B7280;
  margin-top: 0;
}


.ap-pill-group{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:6px;
}

.ap-pill{
  position:relative;
  display:inline-flex;
  align-items:center;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid #6B7280;
  background:#fff;
  cursor:pointer;
  user-select:none;
  font-size:14px;
  transition:all .2s ease;
  color: #6B7280;
}

/* nascondiamo la checkbox */
.ap-pill input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

/* hover */
.ap-pill:hover{
  border-color:var(--wp--preset--color--accent-3);
}

/* stato attivo */
.ap-pill input:checked + span{
  /* font-weight:600; */
}

.ap-pill input:checked ~ span{
  color:var(--wp--preset--color--accent-1);
}

/* pill attiva */
.ap-pill input:checked{
  /* solo per stato */
   border:1px solid var(--wp--preset--color--accent-1);
}

.ap-pill input:checked ~ span{
  position:relative;
  z-index:1;
}

/* background attivo */
.ap-pill input:checked ~ span::before{
  content:'';
  position:absolute;
  inset:-8px -14px;
  background: #EBF3FD;
  border-radius:999px;
  z-index:-1;
}

/* disabled */
.ap-pill input:disabled ~ span{
  opacity:.5;
  cursor:not-allowed;
}



.mt-1{
  margin-top: 0.6em;
}

.mt-4{
  margin-top: 1.6em;
}

/* wrapper relativo */
.ap-city-wrap { position: relative; }

/* dropdown */
.ap-city-dd{
  position:absolute;
  left:0; right:0; top:100%;
  z-index:9999;
  background:#fff;
  border:1px solid rgba(0,0,0,.15);
  border-radius:10px;
  box-shadow:0 10px 24px rgba(0,0,0,.08);
  margin-top:6px;
  overflow:hidden;
  display:none;
  max-height:260px;
}

.ap-city-dd.is-open{ display:block; }

.ap-city-empty{
  padding:10px 12px;
  font-size:14px;
  opacity:.75;
}

.ap-city-item{
  width:100%;
  text-align:left;
  border:0;
  background:transparent;
  padding:10px 12px;
  cursor:pointer;
  font-family:inherit;
}

.ap-city-item:hover{ background:rgba(0,0,0,.04); }

.ap-city-item__title{
  font-size:14px;
  line-height:1.2;
}

.ap-city-item__sub{
  font-size:12px;
  opacity:.7;
  margin-top:2px;
}



/* input city con icona location a sinistra */
.ap-input[name="profile[city]"]{
  padding-left:52px; /* spazio per icona */
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='40' height='40' rx='20' fill='none'/%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M28 18C28 22.4183 20 30 20 30C20 30 12 22.4183 12 18C12 13.5817 15.5817 10 20 10C24.4183 10 28 13.5817 28 18Z' stroke='%23000000' stroke-width='2'/%3E%3Cpath d='M20 19C20.5523 19 21 18.5523 21 18C21 17.4477 20.5523 17 20 17C19.4477 17 19 17.4477 19 18C19 18.5523 19.4477 19 20 19Z' fill='none' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='24' height='24' fill='white' transform='translate(8 8)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left 8px center;
  background-size: 36px 36px;
}

.ap-input.ap-city-valid{
  padding-left:52px; /* spazio per icona */
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='40' height='40' rx='20' fill='%23ECF8EF'/%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M28 18C28 22.4183 20 30 20 30C20 30 12 22.4183 12 18C12 13.5817 15.5817 10 20 10C24.4183 10 28 13.5817 28 18Z' stroke='%234CAF50' stroke-width='2'/%3E%3Cpath d='M20 19C20.5523 19 21 18.5523 21 18C21 17.4477 20.5523 17 20 17C19.4477 17 19 17.4477 19 18C19 18.5523 19.4477 19 20 19Z' fill='none' stroke='%234CAF50' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='24' height='24' fill='white' transform='translate(8 8)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left 8px center;
  background-size: 36px 36px;
}

.ap-inline-list{
    margin:0;
    padding:0;
    padding-left: 10px;
    list-style:disc;
}

.ap-inline-list li{
    margin:0;
    padding:0;
}

.ap-community{
  margin: 0 !important;
}
.ap-community .ap-row{
  display:flex;
  gap:20px;
  flex-wrap:nowrap;
  align-items:center;
}

.ap-community .ap-row--small{
  margin-top:8px;
}
.ap-community .ap-input{
  padding:8px 10px;
  min-width:240px;
  width:auto;
  flex:1
}
.ap-community .ap-select{
  padding:10px;
  min-width:200px;
  max-width:400px;
  width:auto;
}
.ap-community .ap-button.no-arrow{
  padding: 10px 16px;
  margin-top: 7px;
  display: inline-block;
}
.ap-community .ap-button.no-arrow:after{
  content:"";
}

.ap-community .ap-button.outline{
  display: inline-block;
  background: transparent;
  color: #1A66D9;
  border : 1.5px solid #1A66D9;
  padding: 8px 16px;
  text-align:center;
}
.ap-community .ap-button.outline:hover{
  background: #e7eef9;
}

.ap-community__results{
  margin-top: 40px;
}
.ap-community .ap-grid{
  display:grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap:24px
}

.ap-community__grid.ap-grid{
  grid-template-columns: repeat(5,minmax(0,1fr));
}

@media(max-width:1400px){.ap-community .ap-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:960px){.ap-community .ap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ap-community .ap-grid{grid-template-columns:repeat(1,minmax(0,1fr))}}


.ap-community .ap-card,
.ap-events-completed .ap-card{
  background: #fff;
  border:1px solid #e5e5e5;
  border-radius:12px;
  display:  flex;
  gap:12px;
  cursor:pointer;
  max-width: 400px;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 2px;
  flex-direction: column;
  height: 100%;
}
.ap-events-completed{
  padding:0;
  margin:0;
}
.ap-events-completed .ap-card{
  max-width: 600px;
  gap:0;
}
.ap-community .ap-card__avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius: 12px 12px 0 0;
}

.ap-community .ap-card__body,
.ap-events-completed .ap-card__body{
  padding: 8px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ap-community .ap-card__name{
  font-size: 20px;
  font-weight:600;
  color: #2563EB;
  margin-bottom: 12px;
}

.ap-community .ap-card__meta{
  font-size:14px;
  min-height: 22px;
}

.ap-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #D1D5DB;
  padding-bottom:18px;
  margin-bottom: 14px;
}

.ap-pager__total{
  display: flex;
  align-items: center;
  gap: 24px;
}

.ap-pager__total h3{
  font-size: 24px;
  line-height: 30px;
  font-weight: 500;
  margin:0;
  background: url("../img/ico-community.svg");
  background-repeat: no-repeat;
  background-position: center left;
  background-size: contain;
  padding-left: 34px;
}

.ap-pager__total .ap-total__pill{
  font-size: 20px;
  font-weight: 500;
  color: #2563EB;
  border: 1px solid #2563EB;
  padding: 0px 12px;
  min-width: 40px;
  text-align: center;
  border-radius: 99px;
}

.ap-pager__nav{
  display: flex; 
  align-items: center;
  gap: 16px;
  font-size: 16px;
}

.ap-pager__btn{
  border: 1.5px solid #1A66D9;
  color: #1A66D9;
  border-radius: 4px;
  font-size: 18px;
  padding: 2px 10px 0;
  text-decoration: none;
  text-align:center;
}

.ap-pager__btn:not(.is-disabled):hover{
  background: #eef5ff;
}

.ap-pager__btn.is-disabled{
  border-color: #E5E7EB;
  color: #6B7280;
}

.ap-pager__bottom{
  margin-top: 36px;
}

.ap-pager__bottom .ap-pager__nav{
  justify-content: space-between;
}

.ap-pager__bottom .ap-pager__info{
  display: flex;
  align-items: center;
  gap: 24px;
}

.ap-pager__bottom .ap-total__pill{
  font-size: 16px;
}

.ap-pager__bottom .ap-pager__btn{
  font-size: 14px;
  font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    line-height: 24px;  
}


.ap-loadmore,
.ap-loadmore__status{ display:none; }

@media (max-width: 960px){
  .ap-pager__nav, 
  .ap-pager__bottom{ 
    display:none;
  }

  .ap-loadmore{
    margin-top: 24px;
    font-size: 16px; 
    color: #4E61F6;
    font-weight: 600;
    display:flex;
    width:100%;
    justify-content:center;
    align-items:center;
    padding:14px 16px;
    border:0;
    background: transparent;
    cursor:pointer;
  }

  .ap-loadmore::after{
    content: "";
    background: url(../img/ico-arrow-down.svg);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: contain;
    width: 18px;
    height: 18px;
  }

  .ap-loadmore[disabled]{ opacity:.6; cursor:default; }

  .ap-loadmore__status{
    display:block;
    text-align:center;
    padding-top:10px;
    opacity:.75;
    font-size:16px;
  }
}
.ap-filters-dropdown{
  position:relative;
}

  .ap-group-card__thumb{
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
      border-radius: 12px 12px 0 0;
  }
  .ap-group-card__thumb img{
  width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }
  .ap-group-card__count {
    display:inline-block;
    font-size: 12px;
    font-weight: 500;
    color: #2563EB;
    border: 1px solid #2563EB;
    padding: 6px 12px;
    min-width: 40px;
    text-align: center;
    border-radius: 99px;
    margin-top: 12px;
}
.ap-group-card__link{
  text-decoration: none !important;
  padding-bottom: 60px;
}

.ap-card.ap-group-card{
  position: relative;
}
.ap-group-card__title{
  color: #000;
  font-size: 20px;
  fot-weight: 600;
  margin: 0;
  margin-top: 12px;
}
.ap-group-card__excerpt{
  color: #000;
  font-size: 16px;
  font-weight: 400;
}

.ap-group-card__link:hover .ap-group-card__title{
  color: var(--wp--preset--color--accent-1);  
} 

.ap-group-card__actions{
  position: absolute;
  bottom: 16px;
  padding: 0 24px;
  display:flex;
  gap: 12px;
}

.ap-group-card__actions button{
  margin: 0 !important;
  box-sizing: border-box;
  font-size: 12px;
  font-weight: 600;
  padding-top: 4px;
  padding-bottom: 4px;
  display:block;
}

.ap-group-card__actions button[data-action="join"]:after{
  content:"";
}
.ap-group-card__actions button[data-action="join"]{
  padding: 12px 24px 12px 2.5em;
}
.ap-group-card__actions button[data-action="join"]:before{
    content: "→";
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-family: Inter, system-ui, sans-serif;
    font-size: 1.2em;
    font-weight: 400;
    color: white;
    line-height: 1;
    pointer-events: none;
    transition: transform 0.2s ease;
}

.ap-group-card__actions button[data-action="unbookmark"], 
.ap-group-card__actions button[data-action="bookmark"]{
    display: flex !important;
    align-items: center;
    flex-wrap: nowrap;
    gap: 6px;
}

.ap-group-card__actions button[data-action="bookmark"]{
  border-color: transparent !important;
}
.ap-group-card__actions button[data-action="unbookmark"]:before{
  content:"";
  display: block;
  width: 24px;
  height: 24px;
  background: url(../img/ico-bookmark-filled.svg);
  background-repeat: no-repeat;
  background-position: center center;
}

.ap-group-card__actions button[data-action="bookmark"]:before{
  content:"";
  display: block;
  width: 24px;
  height: 24px;
  background: url(../img/ico-bookmark.svg);
  background-repeat: no-repeat;
  background-position: center center;
}
.ap-group-card__actions button.is-loading[data-action="unbookmark"], 
.ap-group-card__actions button.is-loading[data-action="bookmark"]{
    position: relative;
    pointer-events: none;
    color: transparent;

}
.ap-group-card__actions button.is-loading[data-action="unbookmark"]:after, 
.ap-group-card__actions button.is-loading[data-action="bookmark"]:after{
   content: "";
    position: absolute;
    inset: 0;
    background: url("../img/loading.svg") 50px / 24px 24px no-repeat;
    transform: translateY(0);
    transition: none;
}
.ap-group-card__actions button.is-loading[data-action="join"], 
.ap-group-card__actions button.is-loading[data-action="leave"]{
    position: relative;
    pointer-events: none;
    color: transparent;
}
.ap-group-card__actions button.is-loading[data-action="join"]:before, 
.ap-group-card__actions button.is-loading[data-action="leave"]:before{
  content: "";
    pointer-events: none;
    color: transparent;
}
.ap-group-card__actions button.is-loading[data-action="join"]:after, 
.ap-group-card__actions button.is-loading[data-action="leave"]:after{
   content: "";
    position: absolute;
    inset: 0;
    background: url("../img/loading_white.svg") center / 24px 24px no-repeat;
    transform: translateY(0);
    transition: none;
}

.ap-group-detail__actions .ap-group-card{
  margin-top: 24px;
  display: flex;
  gap: 16px;
}

.ap-group-detail__actions .ap-group-card button{
    margin: 0 !important;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: 600;
  padding-top: 4px;
  padding-bottom: 4px;
  display:block;
}

.ap-group-detail__actions .ap-group-card button[data-action="join"]:after{
  content:"";
}

.ap-group-detail__actions .ap-group-card button[data-action="join"]{
  padding: 8px 24px 8px 2.5em;
}

.ap-group-detail__actions .ap-group-card button[data-action="join"]:before{
    content: "→";
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-family: Inter, system-ui, sans-serif;
    font-size: 1.2em;
    font-weight: 400;
    color: white;
    line-height: 1;
    pointer-events: none;
    transition: transform 0.2s ease;
}


.ap-group-detail__actions button[data-action="unbookmark"], 
.ap-group-detail__actions button[data-action="bookmark"]{
    display: flex !important;
    align-items: center;
    flex-wrap: nowrap;
    gap: 6px;
}

.ap-group-detail__actions button[data-action="bookmark"]{
  border-color: transparent !important;
}
.ap-group-detail__actions button[data-action="unbookmark"]:before{
  content:"";
  display: block;
  width: 24px;
  height: 24px;
  background: url(../img/ico-bookmark-filled.svg);
  background-repeat: no-repeat;
  background-position: center center;
}

.ap-group-detail__actions button[data-action="bookmark"]:before{
  content:"";
  display: block;
  width: 24px;
  height: 24px;
  background: url(../img/ico-bookmark.svg);
  background-repeat: no-repeat;
  background-position: center center;
}
.ap-group-detail__actions button.is-loading[data-action="unbookmark"], 
.ap-group-detail__actions button.is-loading[data-action="bookmark"]{
    position: relative;
    pointer-events: none;
    color: transparent;

}
.ap-group-detail__actions button.is-loading[data-action="unbookmark"]:after, 
.ap-group-detail__actions button.is-loading[data-action="bookmark"]:after{
   content: "";
    position: absolute;
    inset: 0;
    background: url("../img/loading.svg") 50px / 24px 24px no-repeat;
    transform: translateY(0);
    transition: none;
}
.ap-group-detail__actions button.is-loading[data-action="join"], 
.ap-group-detail__actions button.is-loading[data-action="leave"]{
    position: relative;
    pointer-events: none;
    color: transparent;
}
.ap-group-detail__actions button.is-loading[data-action="join"]:before, 
.ap-group-detail__actions button.is-loading[data-action="leave"]:before{
  content: "";
    pointer-events: none;
    color: transparent;
}
.ap-group-detail__actions button.is-loading[data-action="join"]:after, 
.ap-group-detail__actions button.is-loading[data-action="leave"]:after{
   content: "";
    position: absolute;
    inset: 0;
    background: url("../img/loading_white.svg") center / 24px 24px no-repeat;
    transform: translateY(0);
    transition: none;
}

.ap-group-member-count{
      display: inline-block;
    font-size: 16px;
    font-weight: 500;
    color: #2563EB;
    border: 1px solid #2563EB;
    padding: 6px 12px;
    min-width: 40px;
    text-align: center;
    border-radius: 99px;
    margin-top: 0 !important;
    margin-right: auto !important;
    margin-bottom: 24px !important;    
}
.ap-group-members h3{
  font-size: 28px;
  font-weight: 600;
  margin-top: 0;
}

.ap-mcol.ap-mcol--who{
  display:flex;
  gap: 16px;
}
.ap-member-row.ap-card {
  margin-bottom: 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid #D1D5DB;
}

.ap-members-list .ap-member-name{
  font-size: 18px;
  font-weight: 600;
  color: var(--wp--preset--color--accent-1);
  margin-bottom: 4px;
}
.ap-members-list .ap-member-degree{
  font-size: 16px; 
  color:#000;
  font-weight: 500;
}
.ap-members-list .ap-mcol.ap-mcol--email{
  display: none;
}
.ap-load-more-wrap{
  text-align:center;
}

 .ap-group-members .ap-loadmore-desk{
    margin-top: 24px;
    font-size: 16px; 
    color: #4E61F6;
    font-weight: 600;
    display:flex;
    width:100%;
    justify-content:center;
    align-items:center;
    padding:14px 16px;
    border:0;
    background: transparent;
    cursor:pointer;
  }

.ap-group-members .ap-loadmore-desk::after{
    content: "";
    background: url(../img/ico-arrow-down.svg);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: contain;
    width: 18px;
    height: 18px;
  }
.ap-members-list{
  max-height: calc(100vh - 300px);
  overflow-y: auto;
}
.ap-members-list::-webkit-scrollbar {
  width: 6px;
}

.ap-members-list::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,.15);
  border-radius: 4px;
}

.ap-group-members .ap-loadmore-desk.ap-is-hidden{
  display:none !important;
}

@media (min-width: 961px){
  .ap-filters-toggle{ display:none; }
  .ap-filters-wrap{
    position:static;
    transform:none;
    box-shadow:none;
  }
}

/* mobile */
@media (max-width: 960px){
.ap-members-list{
  max-height: none;
  overflow-y: unset;
}
.ap-group-members h3{
  font-size: 20px;
}
.ap-group-detail-member{
  padding: 16px !important;
    margin-left: -20px;
    margin-right: -20px;  
}

.ap-group-detail-member h3 .ap-total__pill{
  display: inline-block;
}

  .ap-filters-toggle{
    padding:4px 16px 4px 0;
    border-radius:6px;
    border:1.5px solid #1A66D9;
    background:transparent;
    cursor:pointer;
    width: 100px;
    font-weight: 600;
    margin-left: auto;
    margin-top: -65px;    
    display:flex;
    justify-content: flex-end;
    color:#1A66D9;
    align-items: center;
    gap: 12px;
    line-height: 24px;
  }

  .ap-filters-wrap{
    position:absolute;
    left:0;
    right:0;
    top:calc(100% + 8px);
    z-index:3;

    background:#fff;
    border-radius:16px;
    padding:14px;
    box-shadow:0 12px 40px rgba(0,0,0,.12);

    display:none;
  }
  .ap-filters-wrap .ap-row{
    flex-direction: column;
    flex-wrap: wrap;
    align-items: normal;
  }

  .ap-filters-wrap .ap-row input, 
  .ap-filters-wrap .ap-row select{
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100%;
  } 

  .ap-filters-wrap .ap-row input[type="checkbox"]{
      width: auto !important;
  }
  .ap-filters-wrap .ap-row--action{
    display: flex;
    flex-direction: row;
    max-height:46px;
    gap: 24px;
  }
  
  .ap-filters-wrap .ap-row--action button, 
  .ap-filters-wrap .ap-row--action a{
    box-sizing: border-box;
    flex:1 1 0;
    width:100%;  
  } 

  .ap-filters-wrap .ap-row--action a{
    order:1;
  }
  .ap-filters-wrap .ap-row--action button{
    order:2;
  }
  .ap-filters-wrap.is-open{
    display:block;
  }
  
  .ap-pager__total h3 {
    font-size: 20px;
  }
  .ap-total__pill{
    display: none;
  }
  .ap-filters-toggle.is-active{
    border-color: var(--ap-accent, #0057ff);
    background: rgba(0,87,255,.08);
    color: var(--ap-accent, #0057ff);
    font-weight:600;
  }

}



/* Modal */ 
.ap-modal-search__loader{
  text-align:center;
  min-height: 60px;
  width: 100%;
}
.ap-modal-search__loader .wpcf7-spinner{
  visibility: visible;
}
.ap-modal-search{  
  position:fixed;
  z-index:9999;
  top:0;
  width:100%;
  height: 100%;
  pointer-events:none;  
}

.ap-modal-search.is-open{  

}

.ap-modal-search__backdrop{
  display: none;
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.0);
  opacity:0;
  transition:opacity .3s ease;

}

.ap-modal-search.is-open .ap-modal-search__backdrop{
  opacity:1;
}

.ap-modal-search__panel{
  position:absolute;
  top:0;
  right:0;
  height:100%;
  width:420px;
  max-width:90vw;
  transform:translateX(100%);
  transition:transform .35s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}

.ap-modal-search.is-open .ap-modal-search__panel{
  transform:translateX(0);
  pointer-events: auto;
}

.ap-modal-search__dialog{
  position:relative;
  max-width:760px;
  margin:100px auto;
  background:#fff;
  border-radius: 12px 0 0 12px;
  overflow:hidden;
  box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 2px;

}
.ap-modal-search__close{
  position:absolute;
  top:20px;
  left:42px;
  border:0;
  background:transparent;
  font-size:14px;
  font-weight: 600;
  line-height:1;
  color: #1A66D9;
  cursor:pointer;
  padding-left: 24px;
}

.ap-modal-search__close::before {
  content: "←";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font-family: Inter, system-ui, sans-serif;
  font-size: 1.2em;
  font-weight: 400;
  color: #1A66D9;
  line-height: 1;
  pointer-events: none;
  transition: transform 0.2s ease;
}

.ap-modal-search__avatar{
  width:100%;
  height:100%;
  border-radius:16px;
  overflow:hidden;
}
.ap-modal-search__action{
  background:#fff;
  height: 48px;
}
.ap-modal-search__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.ap-modal-search__title{
  font-weight:600;
  font-size:28px;
  margin-bottom:4px;
}

.ap-modal-search__jobpos{
  font-size:18px;
  font-weight: 400;
}

.ap-modal-search__profilelink{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 8px;
}

.ap-button-email {
  margin-top: 24px;  
  background: #fff;
  font-family: var(--wp--preset--font-family--inter);
  padding: 8px 2.5em 8px 20px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  color: var(--wp--preset--color--accent-1);
  border: 2px solid var(--wp--preset--color--accent-1);
  transition: 0.2s;
  position: relative;
  text-decoration: none;
}

/* pseudo-elemento */
.ap-button-email::after {
  content: "";
  background-image: url(../img/ico-send-mail.svg);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: contain;
  position: absolute;
  width: 20px;
  height: 20px;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-family: Inter, system-ui, sans-serif;
  font-size: 1.2em;
  font-weight: 400;
  color: white;
  line-height: 1;
  pointer-events: none;
  transition: transform 0.2s ease;
}

.ap-button-email:hover {
  background: var(--wp--preset--color--accent-2);
}


.ap-modal-search__wrapper{
  padding:4px 22px;
  margin-right: 6px;
  max-height: calc(100vh - 300px);
  overflow-y: auto;;
  margin-bottom: 32px;
}
/*
.ap-modal-search__wrapper:hover{
  overflow-y: auto;
  margin-right: 0;
}
*/
.ap-modal-search__wrapper::-webkit-scrollbar {
  width: 6px;
}

.ap-modal-search__wrapper::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,.15);
  border-radius: 4px;
}

.ap-modal-search__row{
  padding:6px 0;
}

.ap-modal-search__label{
  font-size:14px;
  margin:8px 0 8px;
  color: #6B7280;
}
.ap-modal-search__value{font-size:16px}

.ap-modal-search__list{margin:0;padding:0;list-style:none}
.ap-modal-search__list li{margin:0;padding:0; padding-bottom: 4px;}
.ap-modal-search__list li:last-child{padding-bottom: 0;}
.ap-modal-search__row .ap-value{
  margin-bottom:8px;
}


/* lock scroll */
body.ap-modal-search-open{overflow:auto}

.ap-community .ap-card.ap-story-card, 
.ap-community .ap-card.ap-event-card{
  box-sizing: border-box;
  cursor: default;
  position: relative;
  padding-bottom: 60px;
}
.ap-community .ap-card.ap-story-card .ap-card__body{
  gap: 0;
}
.ap-story-card__title{
  font-size: 20px;
  font-weight: 600;
}
.ap-story-card__alumni{
  font-size: 16px;
  font-weight: 600;
  color: var(--wp--preset--color--accent-1);
  margin: 0;
}

.ap-story-card__degree{
  font-size: 14px;
  font-weight: 500;
  color: #000000;
  padding: 0;
  margin: 0;
}
.ap-story-card__title{
  padding-top: 10px;
  border-top: 1px solid #D1D5DB;
  font-size: 20px;
  font-weight: 600;
  color: #000;
  margin: 4px 0 0 0;
}
.ap-story-card__date{
  font-size: 12px;
  font-weight: 400;
  color: #4B5563;
  margin: 8px 0 16px;
}
button.open-book{
  padding-left: 2.5rem !important;
}
button.open-book:before{
 content: "";
  background-image: url(../img/ico-open-book.svg);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: contain;
  position: absolute;
  width: 20px;
  height: 20px;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-family: Inter, system-ui, sans-serif;
  font-size: 1.2em;
  font-weight: 400;
  color: white;
  line-height: 1;
  pointer-events: none;
  transition: transform 0.2s ease;
}


.ap-group-card__actions  button.bookmark{
    display: flex !important;
    align-items: center;
    flex-wrap: nowrap;
    gap: 6px;
    border-color: transparent !important;
}
.ap-group-card__actions button.bookmark.is-active{
    border-color: inherit !important;

}
.ap-group-card__actions button.bookmark.is-active:before{
  content:"";
  display: block;
  width: 24px;
  height: 24px;
  background: url(../img/ico-bookmark-filled.svg);
  background-repeat: no-repeat;
  background-position: center center;
}

.ap-group-card__actions button.bookmark:before{
  content:"";
  display: block;
  width: 24px;
  height: 24px;
  background: url(../img/ico-bookmark.svg);
  background-repeat: no-repeat;
  background-position: center center;
}
.ap-group-card__actions button.bookmark:disabled{
      position: relative;
    pointer-events: none;
    color: transparent;
}
.ap-group-card__actions button.bookmark:disabled:after{
   content: "";
    position: absolute;
    inset: 0;
    background: url("../img/loading.svg") 50px / 24px 24px no-repeat;
    transform: translateY(0);
    transition: none;
}

.ap-story-modal-shell {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 10;
}

.ap-story-modal-shell .ap-modal__panel{
  position: absolute;
  top: 50px;
  right: 0;
  width: 520px;
  max-width: 90vw;
  height: calc(100vh - 200px);

  background: #fff;

  transform: translateX(100%);
  transition: transform .25s ease;

  pointer-events: auto; /* SOLO il panel è cliccabile */
}

/* quando body/html ha ap-modal-open, fai entrare */
.ap-modal-open .ap-story-modal-shell .ap-modal__panel{
  transform: translateX(0);
}

/* loader area */
.ap-story-modal__loader{
  text-align: center;
  padding: 16px;
}

.ap-story-modal-shell.is-open .ap-modal__panel {
  transform: translateX(0);
}
.ap-story-modal__inner{
  margin: 0px 12px 24px 24px;
  max-height: calc(100% - 60px);
  overflow-y: auto;
  padding-right: 12px
}

.ap-story-modal__inner::-webkit-scrollbar {
  width: 6px;
}

.ap-story-modal__inner::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,.25);
  border-radius: 4px;
}

.ap-story-modal__media {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 16px;
}
.ap-story-modal__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;  
  display: block;
}
.ap-modal-story-title{
  display: flex;
  flex-wrap: nowrap;
  gap: 16px;
  margin: 12px 0;
}
.ap-story-modal__title{
  margin: 0;
  font-size: 22px;
  font-weight: 600;
}
.ap-story-modal__date{
  white-space: nowrap;
  font-size: 12px;
  color: #374151;
  padding: 2px 16px;
  border-radius: 99px;
  border: 1px solid #D1D5DB;
      max-height: 20px;
    line-height: 20px;
}
.ap-story-modal__alumni{
 border-top: 1px solid #D1D5DB;
 padding-top: 8px;
 margin-bottm: 10px;
}
.ap-story-modal__alumni-name{
  font-size: 18px;
  font-weight: 600;
  color: #1A66D9;
}
.ap-story-modal__alumni-degree{
    font-size: 16px;
  font-weight: 500;
  color: #000;
}
.ap-story-modal__alumni-contacts{
   border-bottom: 1px solid #D1D5DB;
 padding-bottom: 12px;
 margin-bottm: 10px;
 margin-top: 12px;
 display: flex;
 gap: 16px;
}
.ap-story-modal__alumni-contacts a{
  margin:0;
  font-size: 14px;
}
.ap-story-modal__alumni-contacts .ap-profile-btn-linkdn{
  padding-left: 40px;
}
.ap-story-modal__alumni-contacts .ap-button-email{
  padding-right: 40px;
}
.ap-story-modal__content{
  font-size: 14px;
}

.ap-member-row.ap-card{
  cursor: pointer;
}
.js-ap-stories-load-more{
  width:auto;
  margin: 16px auto 0;
  padding-right: 40px;
}

.js-ap-stories-load-more:disabled{
  display:none;
}


.ap-group-card__actions .ap-btn-event{
    display: inline-block;
    margin: 0 !important;
    box-sizing: border-box;
    font-size: 12px;
    font-weight: 600;
}

.ap-card.ap-event-card{
  --ap-cat-color: #4c688f;
  gap: 0;
}

.ap-group-card__time{
  display: flex; 
  flex-wrap: nowrap;
  border-bottom: 1px solid var(--ap-cat-color);
  font-size: 12px;
  color: #000;
}
.ap-group-card__time > div {
  flex: 0 1 100%;
  padding: 8px 12px;
  text-align:center;
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: center;
}
.ap-group-card__time > div:first-of-type{
  border-right: 1px solid var(--ap-cat-color);
}
.ap-group-card__time svg{
  color: var(--ap-cat-color) !important;
}

.ap-events-wrapper.ap-community .ap-card{
  width: 100%;
  max-width: calc(100vw - 40px);
  overflow: hidden;
}
.ap-community.ap-events-wrapper .ap-grid{
  display:grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap:24px
}

@media(max-width:1200px){.ap-community.ap-events-wrapper .ap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.ap-community.ap-events-wrapper .ap-grid{grid-template-columns:repeat(1,minmax(0,1fr))}}

.ap-community.ap-events-wrapper .ap-loadmore{
  width: auto;
  margin: 16px auto 0;
  padding-right: 40px;
}
.ap-community.ap-events-wrapper .ap-loadmore:disabled {
    display: none;
}

.ap-community.ap-events-wrapper h3{
  background: none;
  padding-left: 0;
}
.ap-community.ap-events-wrapper .ap-ev-location, 
.ap-events-completed .ap-ev-location,
.ap-profile-bookmarks .ap-ev-location{
  color: var(--wp--preset--color--accent-1);
  font-size: 14px;
  font-weight: 500;
  display: flex;
  gap: 6px;
  margin-top: 12px;
}
.ap-community.ap-events-wrapper .ap-card__excerpt,
.ap-events-completed .ap-card__excerpt, 
.ap-profile-bookmarks .ap-card__excerpt{
  font-size: 14px;
  color: #6B7280;
  font-weight: 400;
}
.ap-community.ap-events-wrapper .ap-card__title,
.ap-events-completed .ap-card__title, 
.ap--profile-bookmarks .ap-card__title{
  font-size: 18px;
  font-weight: 500;
  color: #000;
  margin:16px 0 0;
}

.ap-community.ap-events-wrapper .ap-toggle__text, 
.ap-events-completed .ap-toggle__text,
.ap--profile-bookmarks .ap-toggle__text {
  font-size: 14px;
}
.ap-events-completed .ap-card__body{
gap: 0;
}
.ap-events-completed .ap-card__body .ap-card__title{
  padding-bottom: 0;
}
.ap-community .ap-input.w-160{
  min-width: auto;
  max-width: 140px;

}
.ap-ev-cat{
  font-size: 14px;
  font-weight: 400;
  color: var(--ap-cat-color);
  border: 1px solid  var(--ap-cat-color);
  background: #ededed;
  border-radius: 99px;
  padding: 2px 12px;
  display: inline-block;
}
.ap-ev-cat.chapter{
   border: 1px solid  #797979;
   color: #797979;
  background: #ededed;
}
.ap-community.ap-events-wrapper .ap-group-card__actions{
  background-repeat: no-repeat;
  background-position: bottom right;
}

.ap-profile-bookmarks{
  margin:0;
  padding:0;
  list-style: none;
  display: flex;
}

.ap-profile-bookmarks .tns-slider > .tns-item {
  height: auto;
  display: flex;
}
.ap-profile-bookmarks .tns-slider > .tns-item > .ap-bookmarks__item,
.ap-profile-bookmarks .tns-slider > .tns-item > li {
  display: flex;
  width: 100%;
}
.ap-profile-bookmarks .ap-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  max-width: 600px;
}
.ap-profile-bookmarks .ap-card__body {
  flex: 1 1 auto;
}
.ap-bookmark-top-nav {
      display: flex;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 24px;
}
.ap-bookmark-top-nav h5{
  font-size: 20px;
  font-weight: 500;
  margin:0;
}
.ap-bookmark-top-nav .ap-pager__info{
  min-width: 40px;
  text-align: center;
  font-size: 16px;
}

.ap-bookmark-top-nav .ap-pager__btn{
  background:#fff;
  line-height: 22px;
  cursor: pointer;
}
.ap-bookmark-top-nav .ap-pager__btn:disabled{
  opacity: 0.5;
  cursor: default;
}

.ap-toggle{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:16px;
  margin-top: 8px;
}

/* contenitore cliccabile */
.ap-switch{
  position:relative;
  display:inline-block;
  width:46px;
  min-width:46px;
  height:22px;
}

.ap-switch__input{
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  cursor:pointer;
}

.ap-switch__slider{
  position:absolute;
  inset:0;
  background: #e5e7eb;
  border-radius:999px;
  transition:background .2s ease;
}

.ap-switch__slider::before{
  content:"";
  position:absolute;
  width:19px;
  height:19px;
  left:3px;
  top:1px;
  background:#fff;
  border-radius:50%;
  box-shadow:0 1px 2px rgba(0,0,0,.2);
  transition:transform .2s ease;
}

.ap-switch__input:checked + .ap-switch__slider{
  background: var(--wp--preset--color--accent-1);
}
.ap-switch__input:checked + .ap-switch__slider::before{
  transform:translateX(21px);
}
.ap-switch__input:focus-visible + .ap-switch__slider{
  outline:2px solid #111827;
  outline-offset:2px;
}

/* wrapper campo */
.ap-field-info{
  display:block;
  margin-bottom:16px;
}

.ap-field__labelrow{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.ap-info-toggle{
  position:absolute;
  opacity:0;
}

/* bottone ? */
.ap-info-btn{
  width:18px;
  height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  font-size:14px;
  font-weight:700;
  background: #E6F4FF;
  color: #131927;
  cursor:pointer;
  user-select:none;
  flex-shrink:0;
}

/* box info (chiusa di default) */
.ap-info-box{
  display:none;
  width:100%;
  margin-top:6px;
  padding:10px 12px;
  font-size:14px;
  line-height:1.4;
  background: #E6F4FF;
  border-radius:8px;
  color: #131927;
}
.ap-info-box a{
  font-size:14px;
  color: var(--wp--preset--color--accent-1);
}

/* toggle ON */
.ap-info-toggle:checked + .ap-info-btn + .ap-info-box{
  display:block;
}

.ap-input{
  width:100%;
  margin-top:6px;
}


@media (max-width: 820px){
  .ap-modal-search__dialog{margin:4vh 0}
}


.mobile-only{
  display: none;
}

@media screen and (max-width: 960px){
  .ap-load-more-wrap{
    text-align: center;
  }
  .menu-community{
    white-space: nowrap;
    overflow: auto;
    height: 40px;
    position: relative;
    margin-left: -20px;
    margin-right: -20px;
    scrollbar-width: none;
  }

  .menu-community::-webkit-scrollbar {
    display: none;
  }

.menu-community ul{
  padding: 0 16px;
}
  .desktop-only{
    display: none;
  }
  .mobile-only{
    display: block;
  }
  .ap-logout.mobile-only{
    height:20px;
    margin-top: 120px;
    margin-right: 20px;
  }
  .ap-profile-head__actions.mobile-only{
    margin-top: 30px;
    padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
        padding-bottom:20px;
        margin-bottom: 20px;
        border-bottom: 1px solid #D1D5DB;
  }
}