/* Isolated CSS for vyh-who. Source: Design Library draft. */
.vyh-who summary { list-style: none; }
.vyh-who summary::marker { content: ""; }
.vyh-who .wp-block-group.is-layout-flex { gap: unset; align-items: unset; }
.vyh-who figure.wp-block-image { margin: 0px !important; }
.vyh-who__header { text-align: center !important; }
.vyh-who__header > * { margin-block: 0px !important; }
.vyh-who__grid { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 20px !important; }
.vyh-who__grid > .wp-block-group { width: auto !important; }
.vyh-who__card > .wp-block-heading, .vyh-who__card > .wp-block-paragraph { width: auto !important; margin-block: 0px !important; }
figure.vyh-who__card-icon { margin: 0px 0px 12px !important; }
.vyh-who__more { display: none; margin-top: 14px; text-align: center; border-width: medium !important; border-style: none !important; border-color: currentcolor !important; border-image: none !important; background: none !important; padding: 0px !important; box-shadow: none !important; }
.vyh-who__more summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; font-weight: 700; font-size: 16px; color: rgb(26, 26, 46); padding: 10px 16px; user-select: none; }
.vyh-who__more summary::-webkit-details-marker { display: none; }
.vyh-who__more summary::marker { content: ""; }
.vyh-who__more summary::after { content: ""; width: 16px; height: 16px; flex-shrink: 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%231a1a2e' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center center / contain no-repeat; transition: transform 0.2s; }
.vyh-who__more[open] summary::after { transform: rotate(180deg); }
.vyh-who__more-less { display: none; }
.vyh-who__more[open] .vyh-who__more-more { display: none; }
.vyh-who__more[open] .vyh-who__more-less { display: inline; }
@media (max-width: 768px) {
.vyh-who__grid { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; }
.vyh-who__grid { grid-template-columns: 1fr !important; }
.vyh-who__card:nth-child(n+5) { display: none !important; }
.vyh-who__more { display: block !important; }
.vyh-who__container:has(.vyh-who__more[open]) .vyh-who__card { display: flex !important; }
.vyh-who [class*="__card-title"] { overflow-wrap: break-word !important; }
.vyh-who figure[class*="vyh-"] { max-width: 100% !important; }
.vyh-who figure[class*="vyh-"] img { max-width: 100% !important; }
.vyh-who[class*="vyh-"], .vyh-who [class*="vyh-"] { min-width: 0px !important; }
.vyh-who [class*="vyh-"][class*="__container"] { width: 100% !important; max-width: 100% !important; }
.vyh-who { overflow-x: clip !important; }
}
.vyh-who { background: rgb(240, 244, 254); padding: 20px 0px; width: 100%; }
.vyh-who__container { max-width: 1200px; margin: 0px auto; padding: 0px 40px; }
.vyh-who__header { text-align: center; margin-bottom: 48px; }
.vyh-who__title { font-size: 36px; font-weight: 900; color: rgb(17, 24, 39); line-height: 1.2; margin: 0px; }
.vyh-who__subtitle { font-size: 16px; color: rgb(107, 114, 128); margin: 0px; line-height: 1.6; }
.vyh-who__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.vyh-who__card { background: rgb(255, 255, 255); border: 1px solid rgb(229, 233, 240); border-radius: 12px; padding: 20px; }
figure.vyh-who__card-icon { width: 40px; height: 40px; margin: 0px 0px 12px; border-radius: 8px; overflow: hidden; }
figure.vyh-who__card-icon img { width: 40px; height: 40px; display: block; }
.vyh-who__card-title { font-size: 14px; font-weight: 700; color: rgb(17, 24, 39); margin: 0px; line-height: 1.4; }
.vyh-who__card-desc { font-size: 13px; color: rgb(107, 114, 128); line-height: 1.6; margin: 0px; }
.vyh-who__card-desc a { color: rgb(17, 24, 39); text-decoration: underline; }
@media (max-width: 1024px) {
.vyh-who__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
.vyh-who { padding: 40px 0px; }
.vyh-who__container { padding: 0px 20px; }
.vyh-who__grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
.vyh-who__title { font-size: 26px; }
}
.vyh-who__header { animation: 0.6s ease 0s 1 normal both running vyh-who--vyhUp; }
.vyh-who__card { transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s; }
.vyh-who__card:hover { transform: translateY(-4px); box-shadow: rgba(17, 17, 17, 0.08) 0px 12px 28px; }
@media (prefers-reduced-motion: reduce) {
.vyh-who__header { opacity: 1; animation: auto ease 0s 1 normal none running none; }
.vyh-who__card:hover { transform: none; }
}
.vyh-who, .vyh-who * { -webkit-tap-highlight-color: transparent; }
.vyh-who img { max-width: 100%; height: auto; }
@media (max-width: 768px) {
.vyh-who [class*="vyh-"][class*="__title"], .vyh-who [class*="vyh-"][class*="__subtitle"] { text-align: center !important; }
}

@keyframes vyh-who--vyhUp { 
  0% { opacity: 0; transform: translateY(18px); }
  100% { opacity: 1; transform: none; }
}
