@charset "utf-8";

.desc p:not(:last-child) {margin-bottom: 22px;}

.bottom-btn-area {margin-top:50px; text-align:center;}
.bottom-btn-area .btn-pack.xlarge {min-width:190px; margin:0 8px; font-weight:700;}

.about .photo {padding: 130px 15px; color :#fff;}
.about .desc {background: url('/images/sub/about-logo.png') no-repeat center center; background-size: contain; padding: 80px 0; color:#454545;line-height: 1.63635em;}
.about .bgc1 {padding: var(--section-padding);}
.quotes {position: relative; padding: 0 50px; width: fit-content; margin: 0 auto;}
.quotes:before, .quotes:after {position: absolute; content: ''; width: 32px; height: 28px; top: -18px; opacity: .1;}
.quotes:before {left: 0; background: url('/images/sub/txt-prev.png') no-repeat center center; background-size: contain;}
.quotes:after {right: 0; background: url('/images/sub/txt-next.png') no-repeat center center; background-size: contain;}

.value-items {display: flex;justify-content: space-around; gap: 30px;}
.value-items .item {display: flex; align-items: center; gap: 40px;}

.greetings-top {display:flex; flex-direction: column; align-items: center; justify-content: center; text-align:center; height:clamp(240px, calc(350 / var(--inner) * 100vw), 350px); background: url('/images/sub/greetings.jpg') no-repeat center center; background-size: cover; color:#fff; padding:20px; margin-bottom:clamp(30px, calc(50 / var(--inner) * 100vw), 50px);}
.greetings-top .since {margin-bottom:24px; font-size: var(--font-size-18); line-height: 1.4em; font-weight:600;}
.greetings-top .text {font-size: var(--font-size-28); line-height: 1.4em; font-weight: 700;}
.greetings-top .text em {color:#358ff5; font-style: normal;}

.greetings {display:flex; gap:clamp(30px, calc(80 / var(--inner) * 100vw), 80px);}
.greetings .image {width:32%; max-width:320px; flex-shrink:0;}
.greetings .image .img {display:block; width:100%; aspect-ratio:1; background:#eee;}
.greetings .image .sign {display:flex; align-items:center; justify-content:center; gap:10px; font-weight:700; line-height:1.5em; margin-top:20px;}
.greetings .image .sign img {width:50px;}
.greetings .content h2 {margin-bottom:clamp(24px, calc(30 / var(--inner) * 100vw), 30px); margin-left:-1em; display:inline-block; padding:0 1em; position:relative; font-size:clamp(24px, calc(34 / var(--inner) * 100vw), 34px); line-height: 1.3em; font-weight: 700; color:#242424;}
.greetings .content h2 em {color:#1d3a5b; font-style:normal;}
.greetings .content h2:before, .greetings .content h2:after {content: ''; position: absolute; top: 0; display: inline-block; width: 22px; height: 22px; opacity: .1; vertical-align: top;}
.greetings .content h2:before {left:0; background: url('/images/sub/txt-prev.png') no-repeat center center; background-size: contain;}
.greetings .content h2:after {right:0; background: url('/images/sub/txt-next.png') no-repeat center center; background-size: contain;}
.greetings .content p {margin-bottom:1em; font-size:clamp(15px, calc(16 / var(--inner) * 100vw), 16px);}
.greetings .content p:last-child {margin-bottom:0;}
.greetings .content .sign {margin-top:2.3em; margin-bottom:0; font-weight:600; color:#242424; font-size:1.1em;}

/* .greetings-content {position: relative; text-align:center; }
.greetings-content:before {content: ''; position: absolute;  top:40%; left:50%; -webkit-transform:translate(-50%, -50%); transform:translate(-50%, -50%); width:80%; max-width:447px; aspect-ratio:1/1; opacity:.06; background:url('/images/sub/logo.svg') 50% 50%/contain no-repeat; z-index: -1;}
.greetings-content h2 {position: relative; display:inline-block; padding:0 1em; margin-bottom:clamp(24px, calc(70 / var(--inner) * 100vw), 70px); font-size: var(--font-size-40); line-height: 1.3em; font-weight: 700; color:#242424;}
.greetings-content h2:before,
.greetings-content h2:after {content:''; position:absolute; top:0; display:inline-block; width:22px; height:22px; opacity: .1; vertical-align: top;}
.greetings-content h2:before {left:0; background: url('/images/sub/txt-prev.png') no-repeat center center; background-size: contain;}
.greetings-content h2:after {right:0; background: url('/images/sub/txt-next.png') no-repeat center center; background-size: contain;}
.greetings-content h2 em {color:#1d3a5b; font-style: normal;}
.greetings-content p {margin-bottom:1.64em; font-size:clamp(16px, calc(22 / var(--inner) * 100vw), 22px); line-height: 1.64em; color:#454545;}
.greetings-content p.sign {margin-top:2.3em; margin-bottom:0; font-weight:600; color:#242424;} */

.executives .item {display: flex; align-items: flex-end;}
.executives .item .img {padding-bottom: 80px; width: 23.3334%;}
.executives .item .txt {position: relative; width: 832px; padding: 60px 0; padding-left: 110px; padding-right: 75px; background: url('/images/sub/txt-box-left.png') no-repeat center left; background-size: 100% 100%; }
.executives .item .txt:before {position: absolute; content: ''; z-index: -1;}
.executives .item:nth-child(1) .txt:before {right: -20px; top: -25px; width: 72px; height: 72px; background: url('/images/sub/executives-deco01.png') no-repeat center center; background-size: contain;}
.executives .item:nth-child(2) .txt:before {left: 44px; top: -42px; width: 72px; height: 72px; background: url('/images/sub/executives-deco02.png') no-repeat center center; background-size: contain;}
.executives .item:nth-child(3) .txt:before {right: 65px; top: -40px; width: 72px; height: 72px; background: url('/images/sub/executives-deco03.png') no-repeat center center; background-size: contain;}
.executives .item:nth-child(4) .txt:before {left: 35px; top: -25px; width: 72px; height: 72px; background: url('/images/sub/executives-deco04.png') no-repeat center center; background-size: contain;}
.executives .item:nth-child(5) .txt:before {right: -20px; top: -25px; width: 72px; height: 72px; background: url('/images/sub/executives-deco05.png') no-repeat center center; background-size: contain;}

.executives .item:nth-child(even) {flex-direction: row-reverse; text-align: right;}
.executives .item:nth-child(even) .txt {padding-left: 75px; padding-right: 110px; background: url('/images/sub/txt-box-right.png') no-repeat center right; background-size: 100% 100%;}
.executives .item:not(:last-child) {margin-bottom: 60px;}

.history {position: relative;}
.history:before {position: absolute; content: ''; left: 50%; top: 0; height: 100%; width: 1px; background: #ddd;}
.history .item {width: 50%; padding-right: 65px; padding-bottom: 75px; position: relative; text-align: right;}
.history .item:before {position: absolute; content: ''; right: -31px; top: -10px; width: 62px; height: 62px; background: #fff;}
.history .item:after {position: absolute; content: ''; top: 6px; right: -15px; width: 30px; height: 30px; border-radius: 100%; border: 8px solid #fe4101;}
.history .item:last-child{padding-bottom: 0;}
.history-year {position: relative; font-weight: 800; font-size: 40px; line-height: 1em; margin-bottom: 30px;}
.history-year:before {position: absolute; content: ''; width: 20px; height: 1px; top: 50%; right: -38px; margin-top: -1px; background: #ddd;}
.history-date {font-weight: 700; min-width: 54px;}
.history ul li {display: flex; color: #454545;}
.history ul li:not(:last-child) {margin-bottom: 4px;}
.history .item:nth-child(odd) ul li {flex-direction: row-reverse;}

.history .item:nth-child(even) {text-align: left; margin-left: auto; padding-right: 0;padding-left: 65px;}
.history .item:nth-child(even):after {right: auto; left: -15px;}
.history .item:nth-child(even):before {right: auto; left: -27px;}
.history .item:nth-child(even) .history-year:before {right: auto; left: -38px;}
.short-date .history-date {min-width: 35px;}

.rules h2:not(:first-child) {margin-top:50px;}
.rules h3 {margin-top:30px; margin-bottom:10px;}
.rules ul {margin-top:15px;  list-style:disc; margin-left:1.7em;}
.rules p {margin-bottom:15px;}
.rules ol {margin-bottom:15px; margin-left:1.5em;}

.rules ol>li:before {margin-left:-1.5em; width:1.5em; display:inline-block;}
.rules ol>li:nth-child(1):before {content:'①';}
.rules ol>li:nth-child(2):before {content:'②';}
.rules ol>li:nth-child(3):before {content:'③';}
.rules ol>li:nth-child(4):before {content:'④';}
.rules ol>li:nth-child(5):before {content:'⑤';}
.rules ol>li:nth-child(6):before {content:'⑥';}
.rules ol>li:nth-child(7):before {content:'⑦';}
.rules ol>li:nth-child(8):before {content:'⑧';}
.rules ol>li:nth-child(9):before {content:'⑨';}
.rules ol>li:nth-child(10):before {content:'⑩';}
.rules ol>li:nth-child(11):before {content:'⑪';}
.rules ol>li:nth-child(12):before {content:'⑫';}
.rules ol>li:nth-child(13):before {content:'⑬';}
.rules ol>li:nth-child(14):before {content:'⑭';}
.rules ol ol {list-style:decimal;}
.rules ol ol li:before {display:none;}
.rules li:not(:last-child) {margin-bottom:4px;}
.rules .note {font-size:14px; color:#666;}
.rules-table {width:100%; max-width:600px; table-layout: fixed; margin-top:15px; line-height:1.5em; border-collapse:collapse; border-spacing:0;}
.rules-table th {padding:10px; border:1px solid #ddd; background:#fafafa; font-weight:700; color:#242424; text-align:center;}
.rules-table td {padding:10px; border:1px solid #ddd; color:#454545; text-align:center;}

.rules-header {margin-bottom:50px;}
.rules-header p {margin-bottom:8px;}

.previous-rules {margin-top:50px; border:1px solid #ddd; padding:16px; border-radius:10px;}
.previous-rules h4 {display:inline-block; background:var(--color-primary); color:#fff; padding:8px 16px; border-radius:50px; font-size:16px; font-weight:700; line-height:1.5em; margin-bottom:12px;}
.previous-rules ul {list-style:disc; margin-left:1.5em;}
.previous-rules ul li {margin-bottom:10px;}
.previous-rules ul li:last-child {margin-bottom:0;}
.previous-rules ul li a {color:#242424; font-size:16px; font-weight:500; line-height:1.5em;}
.previous-rules ul li a:hover {color:#1d3a5b;}

.management .wrap {display: flex; align-items: center; gap: 54px; background: #f8f8f8; padding: 60px 45px;}
.management .photo {width: 37.4%; max-width: 415px; position: relative;}
.management .photo img {position: absolute; width: 100%; top: -60px; transform: translateY(-50%);}
.management .txt {flex: 1;}
.management .item {position: relative; padding-left: 37px;}
.management .item:before {position: absolute; content: '';left: 0; top: 0; width: 26px; height: 22px; background: url('/images/sub/chk-management.png') no-repeat center center; background-size: contain;}

.business-txt {line-height: 1.66667em;}
.business-txt h2 {line-height: 1em;}

.business-txt .btn-link {padding:15px 26px;background: #fe4101; border-radius:6px;color: #fff; font-size: 16px;}

.sec-donation-shortcut {display: flex; gap: 30px clamp(10px, calc(50 / var(--inner) * 100vw), 50px); text-align: center;}
.donation-shortcut {display: block; flex: 1;}
.btn-round {padding: clamp(7px, calc(12 / var(--inner) * 100vw), 12px) clamp(30px, calc(50 / var(--inner) * 100vw), 50px); border-radius: 60px; width: fit-content; margin: clamp(15px, calc(30 / var(--inner) * 100vw), 30px) auto 0; font-size: var(--font-size-24); line-height: 1.5em; font-weight: 500; color: #fff; background: #fe4101; border: 1px solid #fe4101; transition: .2s;}
.donation-shortcut:hover .btn-round {background: #fff; color: #fe4101;}
.sec-info-box {margin-top:clamp(40px, calc(70 / var(--inner) * 100vw), 70px);border: 1px solid #ddd; padding: clamp(30px, calc(60 / var(--inner) * 100vw), 60px) clamp(20px, calc(30 / var(--inner) * 100vw), 30px); font-size: clamp(15px, calc(18 / var(--inner) * 100vw), 18px); line-height: 1.5em;}
.sec-info-box ul {width: max-content; max-width: 100%; margin: 0 auto;}
.sec-info-box li:not(:last-child) {margin-bottom: 5px;}
.sec-info-box li {text-indent: -12px; padding-left: 12px;}
.sec-info-box strong {text-decoration: underline; text-underline-offset: 4px;}

/* 표 스타일 */
.our-works {display:flex; gap:clamp(24px, calc(80 / var(--inner) * 100vw), 80px); margin-bottom:clamp(50px, calc(100 / var(--inner) * 100vw), 100px);}
.our-works .img-area {width:45%; max-width:520px;}
.our-works .cnt-area {flex:1 1 auto; min-width:0; width:1%;}
.our-works .title {margin-bottom:clamp(20px, calc(40 / var(--inner) * 100vw), 40px);}
.our-works .title h2 {font-size: var(--font-size-35); line-height: 1.33em; font-weight: 700; color:var(--color-primary);}
.our-works .title p {font-size: var(--font-size-20); line-height: 1.33em; font-weight: 500; color:var(--color-secondary);}
.our-works .text {line-height: 1.65em;}
.our-works .text h3 {margin:clamp(20px, calc(30 / var(--inner) * 100vw), 30px) 0 10px; font-size: var(--font-size-20); line-height: 1.33em; color:#242424;}
.our-works .text h3:first-child {margin-top:0;}
.our-works .text p {margin-bottom:clamp(15px, calc(30 / var(--inner) * 100vw), 30px);}
.our-works .text ul {list-style:disc; margin-left:1.7em;}    
.our-works .text ul ul {list-style:none; margin:0;}
.our-works .text ul ul li {position:relative; padding-left:10px;}
.our-works .text ul ul li:before {content:"·"; position:absolute; left:0; top:0;}
.our-works .text ol {list-style:decimal; margin-left:1.7em;}
.our-works .text li:not(:last-child) {margin-bottom:clamp(2px, calc(4 / var(--inner) * 100vw), 4px);}
.our-works .text .note {margin-top:15px; margin-left:1em;}
.our-works:nth-child(even) .img-area {order:2;}
.our-works table {width:100%; border-collapse:collapse; border-spacing:0px; margin:15px 0; border:1px solid #ddd;}
.our-works table th {background:#f8f9fa; padding:10px; font-weight:600; color:#242424; text-align:center; border:1px solid #ddd; line-height:1.4em;}
.our-works table td {padding:10px; color:#454545; text-align:center; border:1px solid #ddd; line-height:1.4em;}
.our-works table td:first-child {font-weight:600; background:#f8f9fa;}

.btn-donate {display:inline-block; color:#242424; font-size:var(--font-size-20); color:#fe4101; line-height:1.4em; font-weight:700; padding:15px 30px; border-radius:10px; background:#fff; border:2px solid #fe4101;}
.btn-donate:hover {background:#fe4101; color:#fff;}

/* 임원진 소개 */
.member-list {display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(30px, calc(50 / var(--inner) * 100vw), 50px) clamp(16px, calc(150 / var(--inner) * 100vw), 150px);}
.member-list .none {grid-column:1/-1; width:100%; padding:70px 0; margin:0; text-align:center; color:#767676;}
.member-list .link-item {display:block; text-align:center;}
.member-list .link-item .thumb {aspect-ratio:300/375; overflow:hidden; margin-bottom:clamp(12px, calc(25 / var(--inner) * 100vw), 25px);}
.member-list .link-item .thumb img {display:block; width:100%; height:100%; transition:.4s;}
.member-list .link-item .name {margin-bottom:5px; font-size:var(--font-size-22); line-height:1.4em; font-weight:700; color:#242424;}
.member-list .link-item .year {margin-bottom:5px; font-size:var(--font-size-18); font-weight:500; line-height:1.4em; color:var(--color-primary);}
.member-list .link-item .position {margin-bottom:5px; font-size:var(--font-size-18); line-height:1.4em; color:#454545;}
.member-list .link-item .more {display:inline-flex; align-items:center; gap:10px; padding:10px 18px; border:1px solid #ddd; border-radius:50px; line-height:1.2em; font-weight:500; font-size:15px; transition:.2s;}
.member-list .link-item .more svg {display:block;}
.member-list .link-item:hover .thumb img {transform:scale(1.05);}
.member-list .link-item:hover .more {border-color:var(--color-primary); color:var(--color-primary); box-shadow:2px 2px 2px rgba(0,0,0,0.2);}

.member-detail {position:relative; width:88vw; max-width:1200px; background:#fff; padding:clamp(20px, calc(50 / var(--inner) * 100vw), 50px); border-radius:clamp(10px, calc(20 / var(--inner) * 100vw), 20px);}
.member-detail .inner-wrap {position:relative; display:flex; align-items:flex-start; gap:clamp(20px, calc(70 / var(--inner) * 100vw), 70px);}
.member-detail .image {width:42%; max-width:460px; flex-shrink:0;}
.member-detail .image img {display:block; width:100%; height:auto;}
.member-detail .content {flex:1;}
.member-detail .title {margin-bottom:clamp(20px, calc(60 / var(--inner) * 100vw), 60px); margin-top:clamp(0px, calc(22 / var(--inner) * 100vw), 22px);}
.member-detail .name {margin-bottom:clamp(10px, calc(16 / var(--inner) * 100vw), 16px); color:#242424; font-size:clamp(20px, calc(32 / var(--inner) * 100vw), 32px); line-height:1.3em; font-weight:700;}
.member-detail .name small {font-weight:500;}
.member-detail .position {font-size:var(--font-size-16); line-height:1.4em; color:#454545;}
.member-detail .position strong {font-weight:600; color:#999; font-size:var(--font-size-18); margin-right:clamp(10px, calc(20 / var(--inner) * 100vw), 20px);}
.member-detail .profile h3 {margin-bottom:12px; font-size:var(--font-size-18); line-height:1.4em; font-weight:600; color:#242424;}
.member-detail .profile ul {color:#454545; line-height:1.65em;}
.member-detail .profile ul li {display:flex; gap:8px;}
.member-detail .profile ul li:before {content:'•'; flex-shrink:0; position:relative; top:-.2em;}
.member-detail .btn-close {position:absolute; top:0; right:0; width:clamp(32px, calc(48 / var(--inner) * 100vw), 48px); aspect-ratio:1; background:#fff; border:1px solid #ddd; border-radius:50%; display:flex; align-items:center; justify-content:center; cursor:pointer; color:#868686; transition:.2s;}
.member-detail .btn-close svg {display:block; margin:0 auto; width:clamp(12px, calc(16 / var(--inner) * 100vw), 16px); height:auto;}
.member-detail .btn-close:hover {border-color:#505050; color:#242424;}

/* 기부의 전당 */
.sub-section {padding:clamp(60px, calc(100 / var(--inner) * 100vw), 100px) 0;}
.sub-section.bg {background:#f7f7f7;}
.sub-section.first {padding-top:0;}
.sub-section.last {padding-bottom:0;}

.donate-certificate {padding:clamp(40px, calc(110 / var(--inner) * 100vw), 110px) 20px clamp(30px, calc(60 / var(--inner) * 100vw), 60px); background:url('/images/sub/donation-bg.jpg') no-repeat center center; background-size:cover; text-align:center; color:#fff;}
.donate-certificate .content {margin-bottom:clamp(30px, calc(80 / var(--inner) * 100vw), 80px);}
.donate-certificate .content h3 {margin-bottom:clamp(16px, calc(20 / var(--inner) * 100vw), 20px); font-size:clamp(24px, calc(34 / var(--inner) * 100vw), 34px); line-height:1.4em; font-weight:700;}
.donate-certificate .content h3 em{color:#9f7e4c; font-style:normal;}
.donate-certificate .content p {font-size:var(--font-size-20); line-height:1.5em; font-weight:500;}
.donate-certificate .image img {box-shadow:0 0 30px rgba(0,0,0,0.2);}

.donate-header {text-align:center; margin-bottom:clamp(24px, calc(50 / var(--inner) * 100vw), 50px);}
.donate-header .en {margin-bottom:clamp(14px, calc(20 / var(--inner) * 100vw), 20px); font-size:14px; line-height:1.4em; font-weight:500; color:#1d3a5b;}
.donate-header .en span {display:inline-flex; align-items:center; gap:15px; padding:0; background:none; border-radius:0; color:#1d3a5b; font-family:Georgia, "Times New Roman", serif; font-size:var(--font-size-15); line-height:1.4em; letter-spacing:0.25em;}
.donate-header .en span:before, .donate-header .en span:after {content:''; display:block; width:clamp(60px, calc(150 / var(--inner) * 100vw), 150px); height:1px; background:#ddd;}
.donate-header .tit {margin-bottom:12px; font-size:clamp(24px, calc(34 / var(--inner) * 100vw), 34px); line-height:1.3em; font-weight:700; color:#242424;}
.donate-header .txt {font-size:var(--font-size-16); line-height:1.6em; font-weight:400; color:#242424;}

.honor-roll-list {display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px, calc(40 / var(--inner) * 100vw), 40px);}
.honor-roll-item {padding:clamp(24px, calc(38 / var(--inner) * 100vw), 38px) 16px; background:#fff; border:1px solid #e5e5e5; border-top:2px solid #1d3a5b; text-align:center;}
.honor-roll-item .thumb {position:relative; width:180px; aspect-ratio:1; margin:0 auto clamp(16px, calc(30 / var(--inner) * 100vw), 30px); border-radius:50%; overflow:hidden;}
.honor-roll-item .thumb img {display:block; width:100%; height:100%; object-fit:cover;}
.honor-roll-item .thumb img.fit-contain {object-fit:contain; padding:18px; background:#fff; border:1px solid #e5e5e5; border-radius:50%;}
.member-detail .image img.fit-contain {aspect-ratio:460/575; object-fit:contain; padding:30px; background:#fff; border:1px solid #e5e5e5;}
.honor-roll-item .rank {margin:0 auto 14px; display:flex; align-items:center; justify-content:center; width:30px; aspect-ratio:1; border-radius:50%; background:#1d3a5b; color:#fff; font-size:16px; line-height:1em;}
.honor-roll-item .name {margin-bottom:10px; font-size:clamp(24px, calc(30 / var(--inner) * 100vw), 30px); letter-spacing:.2em; line-height:1.3em; font-weight:700; color:#242424;}
.honor-roll-item .info {margin-bottom:clamp(20px, calc(30 / var(--inner) * 100vw), 30px); font-size:var(--font-size-18); line-height:1.5em; color:#454545;}
.honor-roll-item .amount {margin-bottom:clamp(20px, calc(35 / var(--inner) * 100vw), 35px);  line-height:1.3em; font-weight:700; color:#1d3a5b;}
.honor-roll-item .amount strong {font-size:28px; line-height:1em;}
.honor-roll-item .grade {margin-bottom:20px;}
.honor-roll-item .grade span {display:inline-block; padding:5px 18px; border:1px solid #1d3a5b; line-height:1.4em; color:#1d3a5b; transition:.2s;}
.honor-roll-item .date {line-height:1.4em; color:#454545;}
.honor-roll-item:hover .grade span {background:#1d3a5b; color:#fff;}

@media (max-width:640px) {
	.honor-roll-list {grid-template-columns:1fr;}
}

/* 헌액 기부자 명단 */
.donor-toolbar {display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; padding-bottom:20px; gap:16px; border-bottom:1px solid #ddd;}
.donor-toolbar .total { line-height:1.4em; font-weight:500; color:#242424;}
.donor-toolbar .total strong {font-weight:700; color:#1d3a5b; font-size:1.5em;}
.donor-toolbar .sort {display:flex; gap:6px;}
.donor-toolbar .sort button {min-width:110px; padding:10px 16px; border:1px solid #ddd; background:#fff; font-size:var(--space-16); line-height:1.4em; font-weight:500; color:#454545; cursor:pointer; transition:.2s;}
.donor-toolbar .sort button:first-child {margin-left:0;}
.donor-toolbar .sort button.active {position:relative; z-index:1; background:#1d3a5b; border-color:#1d3a5b; color:#fff; font-weight:600;}
.donor-list-pc {display:block;}
.donor-list-mo {display:none;}
.donor-table {width:100%; border-collapse:collapse; border-spacing:0; border-top:1px solid #1d3a5b;}
.donor-table thead th {padding:18px 10px; background:#1d3a5b; color:#fff; font-size:var(--font-size-18); line-height:1.4em; font-weight:600; text-align:center; border-bottom:1px solid #1d3a5b;}
.donor-table tbody td {padding:18px 10px; font-size:var(--font-size-16); line-height:1.4em; color:#454545; text-align:center; border-bottom:1px solid #ddd; background:#fff;}
.donor-table tbody td.amount {font-weight:700; color:#242424;}
.donor-table tbody td.grade {color:#1d3a5b; font-size:var(--font-size-18);  font-family:Georgia, "Times New Roman", serif;}
.donor-card-list {list-style:none; margin:0; padding:0;}
.donor-card-item {padding:20px 16px; background:#fff; border:1px solid #e5e5e5; border-top:2px solid #1d3a5b;}
.donor-card-item:not(:last-child) {margin-bottom:12px;}
.donor-card-item .card-head {display:flex; align-items:center; justify-content:space-between; margin-bottom:8px;}
.donor-card-item .name {font-size:17px; line-height:1.4em; font-weight:700; color:#242424;}
.donor-card-item .year {font-size:14px; line-height:1.4em; color:#767676;}
.donor-card-item .org {margin-bottom:6px; font-size:14px; line-height:1.4em; color:#767676;}
.donor-card-item .amount {margin-bottom:14px; font-size:24px; line-height:1.3em; font-weight:700; color:#1d3a5b;}
.donor-card-item .card-info {display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:0; padding-top:14px; border-top:1px solid #eee;}
.donor-card-item .card-info > div {text-align:center;}
.donor-card-item .card-info dt {margin-bottom:4px; font-size:12px; line-height:1.3em; font-weight:500; color:#999;}
.donor-card-item .card-info dd {margin:0; font-size:14px; line-height:1.4em; font-weight:500; color:#454545;}
.donor-card-item .card-info dd.grade {font-weight:700; color:#1d3a5b; letter-spacing:0.05em;  font-family:Georgia, "Times New Roman", serif;}
@media (max-width:640px) {
	.donor-toolbar {flex-direction:column; align-items:flex-start;}
	.donor-toolbar .sort {width:100%;}
	.donor-toolbar .sort button {flex:1; min-width:0; padding:10px 8px; font-size:13px;}
	.donor-list-pc {display:none;}
	.donor-list-mo {display:block;}
}