.president-gallery{overflow:hidden;padding:0!important;border-radius:24px;background:var(--panel,#fff);border:1px solid #15936e25;margin-block:36px}
.president-gallery-stage{position:relative;aspect-ratio:3/2;overflow:hidden;background:#102e25;touch-action:pan-y;outline-offset:4px}
.president-slide{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease;pointer-events:none}
.president-slide.is-current{opacity:1}
.president-slide-portrait{object-fit:contain}
.president-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;padding:0;border:1px solid #ffffff70;border-radius:50%;background:#05251bb3;color:#fff;font-size:36px;line-height:1;cursor:pointer;z-index:2}
.president-gallery-arrow:hover{background:#087953}.president-gallery-arrow.previous{left:18px}.president-gallery-arrow.next{right:18px}
.president-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 28px;color:inherit}
.president-gallery-count{font-size:14px;min-width:48px;font-variant-numeric:tabular-nums}
.president-gallery-dots{display:flex;align-items:center;gap:10px}
.president-gallery-dots button{padding:0;border:0;border-radius:50%;height:10px;width:10px;background:#819e9280;cursor:pointer;position:relative}
.president-gallery-dots button:before{content:'';position:absolute;inset:-10px}.president-gallery-dots button[aria-pressed=true]{background:#099367;width:24px;border-radius:9px}
.president-gallery-pause{width:44px;height:36px;border:1px solid #819e9270;border-radius:10px;background:transparent;color:inherit;cursor:pointer;font-size:18px}
.president-gallery-quote{text-align:center;padding:16px clamp(20px,5vw,72px) 36px;border-top:1px solid #15936e20}
.president-gallery-quote blockquote{margin:18px auto 22px;max-width:1000px;font-size:clamp(26px,3.1vw,42px);font-weight:650;line-height:1.4;letter-spacing:-.02em;text-wrap:balance;overflow-wrap:break-word}
.president-gallery-quote p{margin:0;font-size:clamp(18px,1.8vw,22px);font-weight:600;color:#15936e}
@media(max-width:600px){.president-gallery{margin-block:24px;border-radius:18px}.president-gallery-stage{aspect-ratio:3/2}.president-gallery-arrow{width:40px;height:40px;font-size:30px}.president-gallery-arrow.previous{left:10px}.president-gallery-arrow.next{right:10px}.president-gallery-controls{padding:12px 16px}.president-gallery-quote{padding:10px 20px 26px}}
@media(prefers-reduced-motion:reduce){.president-slide{transition:none}}
