/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
body {
    margin: 0;
}
a, span {
	text-underline-offset: 2px;
}
@keyframes moveX {
	0%   { opacity: 1;transform: translateX(0); }
	25%  { opacity: 0;transform: translateX(5px); }
	28%  { opacity: 0;transform: translateX(-5px); }
	55% { opacity: 1;transform: translateX(0); }
}
@keyframes bounceAlpha {
	0% {opacity: 1;transform: translateX(0px) scale(1);}
	25% {opacity: 0;transform: translateX(10px) scale(0.9);}
	26% {opacity: 0;transform: translateX(-10px) scale(0.9);}
	55% {opacity: 1;transform: translateX(0px) scale(1);}
}
/* 1024px ～ 1919px */
@media (min-width: 1024px) and (max-width: 1919px) {
  .news-section {
    padding-top: 90px;
    padding-left: 90px;
    padding-right: 90px;
  }
}

/* 1920px 以上 */
@media (min-width: 1920px) {
  .news-section {
    padding-top: 90px;
    padding-left: 180px;
    padding-right: 180px;
  }
}
.head-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
	overflow: hidden;
}

.header-blur .e-con-inner {
    background: #ffffffa6;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border-radius: 10px;
	padding-inline-end: 40px;
    padding-inline-start: 40px;
	box-shadow: 0 .5rem 1rem #00000026 !important;
}
.headline:after {
    content: "";
    display: block;
    width: 50px;
    height: 4px;
    background-color: #2c576e;
    margin: 10px auto;
}
.headline.white:after {
    background-color: #FFFFFF;
}

.service-card {
    border-radius: 20px;
    overflow: hidden;
}
.service-card .elementor-flip-box__layer.elementor-flip-box__front .elementor-flip-box__layer__inner {
    background-color: #000000A6;
}
.file-item .elementor-icon-box-wrapper {
    display: inline-flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
a .news-shorts,
a .news-shorts p {
	font-size: 16px;
	-webkit-text-size-adjust: 100%;
}
.news-title > * {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.news-card {
    border-radius: 20px;
    overflow: hidden;
}
.news-img {
	aspect-ratio: 8 / 5;
    overflow: hidden;
}
.news-img img {
	aspect-ratio: 8 / 5;
    transition: .8s ease;
}
.news-img:hover img {
    transform: scale(1.05);
}
.news-date ul.elementor-post-info {
    list-style: none;
    margin: 0;
    padding: 0;
}
.url-link {
    color: #2C576E;
    font-family: "Noto Sans TC";
    font-size: 16px;
    font-weight: 500;
    text-decoration-line: underline;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 4px;
}
span.right-arrow {
    width: 7px;
    margin-left: 7px;
    fill: #2C576E;
}
.btn-right-arrow > a .elementor-button-icon,
.url-link > span.right-arrow {
    transition: .5s ease;
}
.btn-right-arrow > a:hover .elementor-button-icon,
.url-link:hover > span.right-arrow {
    will-change: transform;           /* 效能最佳化 */
  	animation: moveX 1.5s ease-in-out infinite;
}
span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #2C576E !important;
}
span.swiper-pagination-bullet {
    background: #FFFFFF;
    opacity: 1;
}
.e-n-tab-title {
    cursor: pointer;
}

.donation-search {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: flex-start;
	width: 100%;
	gap: 16px;
}
.form-field {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    flex-wrap: nowrap;
	gap: 16px;
}
.form-field label {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    text-transform: capitalize;
}
.form-field  input {
    border-radius: 10px;
    border: 1px solid #CACACA;
    background: #FFF;
    padding: 20px;
    color: #1E1E1E;
    font-family: "Noto Sans TC";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-transform: capitalize;
	transition: .3s ease;
}
.form-field  input.error {
    border: 1px solid #B40000;
}
button#search-btn {
    color: #FFF;
    font-family: "Noto Sans TC";
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    text-transform: capitalize;
    padding: 17px;
    border-radius: 10px;
    background: #000;
	cursor: pointer;
}
.width-40 {
    width: 40%;
	flex: 2;
}
.width-20 {
    width: 20%;
	flex: 1;
}
p#error-res {
    width: 100%;
    margin: 5px 0;
    color: #B40000;
    font-family: "Noto Sans TC";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-transform: capitalize;
}
.donation-head {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px dashed #E2E2E2;
}
h3.result-head {
    margin: 0;
    color: #1E1E1E;
    font-family: "Noto Sans TC";
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    text-transform: capitalize;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: 9px;
}
h3.result-head:before {
    content: '';
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_202_395)"><path d="M19 3H4.99C3.89 3 3 3.9 3 5L3.01 19C3.01 20.1 3.9 21 5 21H15L21 15V5C21 3.9 20.1 3 19 3ZM7 8H17V10H7V8ZM12 14H7V12H12V14ZM14 19.5V14H19.5L14 19.5Z" fill="%231E1E1E"/></g><defs><clipPath id="clip0_202_395"><rect width="24" height="24" fill="white"/></clipPath></defs></svg>');
    display: inline-block;
    width: 24px;
    height: 24px;
    background-size: contain;
}
.empty {
    color: #989898;
    font-family: "Noto Sans TC";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-transform: none;
    margin-left: 33px;
    margin-top: 27px;
}
.empty a {
    text-decoration: underline;
    color: inherit;
}
.donation-filter {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    flex-wrap: nowrap;
    align-items: center;
    gap: 30px;
}
span.select2-selection__placeholder {
    color: #000 !important;
    font-family: "Noto Sans TC";
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 1.5em;
    text-transform: capitalize;
}
.select2-container--default .select2-selection--single {
    border-width: 0px !important;
}
.donation-filter b {
    display: none;
}
span.select2-selection__arrow {
    background-image: url('data:image/svg+xml,<svg width="10" height="6" viewBox="0 0 10 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.00156 5.23123C4.90156 5.23123 4.80481 5.21248 4.71131 5.17498C4.61731 5.13748 4.53906 5.08748 4.47656 5.02498L1.02656 1.57498C0.889062 1.43748 0.820312 1.26248 0.820312 1.04998C0.820312 0.837475 0.889062 0.662475 1.02656 0.524975C1.16406 0.387475 1.33906 0.318726 1.55156 0.318726C1.76406 0.318726 1.93906 0.387475 2.07656 0.524975L5.00156 3.44998L7.92656 0.524975C8.06406 0.387475 8.23906 0.318726 8.45156 0.318726C8.66406 0.318726 8.83906 0.387475 8.97656 0.524975C9.11406 0.662475 9.18281 0.837475 9.18281 1.04998C9.18281 1.26248 9.11406 1.43748 8.97656 1.57498L5.52656 5.02498C5.45156 5.09998 5.37031 5.15298 5.28281 5.18398C5.19531 5.21548 5.10156 5.23123 5.00156 5.23123Z" fill="%231E1E1E"/></svg>');
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: center;
}
span.select2-dropdown.select2-dropdown--below {
    padding: 17px 0px;
    border-radius: 10px;
    border: 1px solid #EBEBEB;
    background: #FFF;
    box-shadow: 6px 6px 8px 0 rgba(0, 0, 0, 0.15);
	min-width: 84px;
}
.select2-container .select2-selection--single .select2-selection__rendered {
    padding-left: 8px;
    padding-right: 23px;
}
ul#select2-year-filter-results > li {
    color: #000;
    font-family: "Noto Sans TC";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 1.12px;
    text-transform: capitalize;
    text-align: center;
}
.select2-results__option--selected,
.select2-results__option--highlighted {
    background: rgba(30, 30, 30, 0.82) !important;
    color: #FFF !important;
}
button#toggle-date-sort,
button.toggle-date-sort {
	cursor: pointer;
    color: #1E1E1E;
    font-family: "Noto Sans TC";
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.42px;
    text-transform: capitalize;
    border: 0px;
    background-color: transparent;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
	padding: 0px;
}
button#toggle-date-sort:after,
button.toggle-date-sort:after {
    content: '';
    display: inline-block;
    width: 26px;
    height: 26px;
    background-image: url('data:image/svg+xml,<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.24961 2.59999L2.07461 4.77499C1.93711 4.91249 1.76211 4.98124 1.54961 4.98124C1.33711 4.98124 1.16211 4.91249 1.02461 4.77499C0.887109 4.63749 0.818359 4.46249 0.818359 4.24999C0.818359 4.03749 0.887109 3.86249 1.02461 3.72499L4.47461 0.274988C4.62461 0.124988 4.79961 0.0499878 4.99961 0.0499878C5.19961 0.0499878 5.37461 0.124988 5.52461 0.274988L8.97461 3.72499C9.11211 3.86249 9.18086 4.03749 9.18086 4.24999C9.18086 4.46249 9.11211 4.63749 8.97461 4.77499C8.83711 4.91249 8.66211 4.98124 8.44961 4.98124C8.23711 4.98124 8.06211 4.91249 7.92461 4.77499L5.74961 2.59999V8.74999C5.74961 8.96249 5.67773 9.14061 5.53398 9.28436C5.39023 9.42811 5.21211 9.49999 4.99961 9.49999C4.78711 9.49999 4.60898 9.42811 4.46523 9.28436C4.32148 9.14061 4.24961 8.96249 4.24961 8.74999V2.59999Z" fill="%230B6AC6"/></svg>');
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: center;
	transition: .3s ease;
}
button#toggle-date-sort.sort-asc:after,
button.toggle-date-sort.sort-asc:after{
	transform: rotate(180deg);
}
table#record-table thead > tr {
    background: #2C576E;
    color: #FFF;
    font-family: "Noto Sans TC";
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.54px;
    text-transform: capitalize;
}
td#total-amount {
    font-weight: 500 !important;
}
table#record-table {
    border-radius: 10px 10px 0 0;
    overflow: hidden;
	margin: 23px 0;
	box-shadow: 0 6px 8px 0 rgba(0, 0, 0, 0.10);
}
table#record-table th,
table#record-table td{
    text-align: center !important;
	padding: 18px 0px 18px 0px;
	
}
table#record-table td {
    color: #000;
	font-family: "Noto Sans TC";
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 0.48px;
	text-transform: capitalize;
}
table#record-table tbody tr.even td {
    background-color: #F7F7F7;
}
table#record-table tbody tr:not(:first-child) td {
    border-top: 1px dashed #E2E2E2;
}
table#record-table th:last-child,
table#record-table td:last-child{
    border-left: 1px dashed #E2E2E2;
	position: relative;
}
table#record-table th:before,
table#record-table th:after{
    display: none;
}
table#record-table th:last-child:after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    background: #2C576E;
    position: absolute;
    top: 0;
    left: -5px;
    z-index: 1;
    opacity: 1;
}
table#record-table tfoot td:last-child:after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    background: #FFFFFF;
    position: absolute;
    bottom: 0;
    left: -5px;
    z-index: 1;
    opacity: 1;
}
table#record-table tfoot td {
    border-top: 3px solid #E2E2E2 !important;
}
table#record-table tfoot td:first-child {
    color: #2C576E;
    font-family: "Noto Sans TC";
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 0.54px;
    text-transform: capitalize;
}
table#record-table th:first-child,
table#record-table td:first-child {
    text-align: left !important;
    padding-left: 54px;
}
div#record-table_paginate {
    color: #989898;
    font-family: "Noto Sans TC";
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    text-transform: capitalize;
    background-color: transparent;
}
.dataTables_wrapper .dataTables_paginate a.paginate_button {
    border-width: 0px !important;
}
.dataTables_wrapper .dataTables_paginate  a.paginate_button.current {
    background: transparent !important;
    border-width: 0px !important;
    color: #000 !important;
}
.dataTables_wrapper .dataTables_paginate a.paginate_button:hover {
    color: #000 !important;
    border-width: 0px !important;
    background: transparent !important;
}
.archive-bg .elementor .elementor-background-video-hosted {
    object-position: left bottom;
}
.news-img a {
    width: 100%;
}
figure.wp-caption {
    margin-left: 0px;
    margin-right: 0px;
}
figcaption.wp-caption-text {
    color: #979797;
    font-family: "Noto Sans TC";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    text-transform: capitalize;
    margin: 10px 6px;
}
.elementor-widget-post-navigation span.post-navigation__prev--title, .elementor-widget-post-navigation span.post-navigation__next--title {
    color: #1E1E1E;
    font-family: "Noto Sans TC";
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    text-transform: capitalize;
    display: inline-block;
    max-width: calc(17 * 1em);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: middle;
}
ul.elementor-toc__list-wrapper {
    border-left: 1px solid #C7C7C7;
    padding-left: 28px;
    margin-left: 28px;
}
ul.elementor-toc__list-wrapper .elementor-item-active {
    font-weight: 500;
}
@media only screen and (min-width: 1024px) {
	.head-menu .sub-menu.elementor-nav-menu--dropdown {
		padding: 15px 0 !important;
		background-color: #FFFFFF !important;
	}
	.head-menu .sub-menu.elementor-nav-menu--dropdown:before {
		content: "";
		position: absolute;
		top: -10px;
		left: 20px;
		border-width: 0px 10px 10px 10px;
		border-style: solid;
		border-color: transparent transparent #fff transparent;
	}
}
.elementor-post-navigation__separator-wrapper {
    padding: 0px 16px;
}
@media only screen and (max-width: 1025px) {
	.elementor-widget-post-navigation span.post-navigation__prev--title, .elementor-widget-post-navigation span.post-navigation__next--title {
		font-size: 14px;
		max-width: calc(8 * 1em);
	}
	.news-tabs .e-n-tabs-heading {
		margin: 0px 27px;
	}
  .head-menu {
		width: 100%;
	}
	.header-blur .e-con-inner {
		padding-inline-end: 20px;
		padding-inline-start: 20px;
	}
	body.elementor-page-282 {
		background-size: auto 465px;
	}
	.head-menu .sub-menu.elementor-nav-menu--dropdown {
		margin-left: 10px;
		margin-top: 8px;
		border-left: 1px solid #d0d0d0;
		border-radius: 0px;
		padding-left: 10px;
	}
	.head-menu a.elementor-sub-item.elementor-item-anchor {
		padding: 0px !important;
	}
	.head-menu .sub-menu li.menu-item:not(:last-child) {
		margin-bottom: 16px;
	}
	.width-20 {
		width: 100%;
	}
	.width-40 {
		width: 100%;
		flex: auto;
	}
	.form-field {
		gap: 10px;
	}
	.form-field input {
		padding: 13px;
		font-size: 14px;
	}
	button#search-btn {
		font-size: 16px;
		padding: 13px;
	}
	.donation-head {
		margin-bottom: 50px;
	}
	.donation-filter {
		border-bottom: 2px solid #E1E1E1;
	}
	table#record-table {
		margin: 0px 0;
		border-radius: 0px;
		box-shadow: unset;
	}
	/* Force table to not be like tables anymore */
	table#record-table, #record-table thead, #record-table tbody, #record-table th, #record-table td, #record-table tr { 
		display: block; 
	}
	
	/* Hide table headers (but not display: none;, for accessibility) */
	table#record-table thead tr { 
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	table#record-table th:first-child, table#record-table td:first-child {
		text-align: right !important;
		padding-left: unset;
	}
	table#record-table tbody tr {
        border-bottom: 2px solid #989898;
        padding: 20px 0px;
    }
	table#record-table tbody tr:not(:first-child) td {
		border-width: 0px;
	}
	table#record-table tbody tr.even td {
		background-color: transparent;
	}
	table#record-table tbody td { 
		border: none;
        border-bottom: 0px solid #eee;
        position: relative;
        padding: 6px 0;
        text-align: right !important;
        color: #1E1E1E;
        font-family: "Noto Sans TC";
        font-size: 14px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
        letter-spacing: 0.42px;
        text-transform: capitalize;
	}
	table#record-table tbody td:before { 
		position: absolute;
        top: auto;
        left: 0;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        text-align: left;
		color: #2C576E;
		font-family: "Noto Sans TC";
		font-size: 14px;
		font-style: normal;
		font-weight: 500;
		line-height: normal;
		letter-spacing: 0.42px;
		text-transform: capitalize;
	}
	table#record-table tbody td:nth-of-type(1):before { content: "捐款日期"; }
	table#record-table tbody td:nth-of-type(2):before { content: "收據編號"; }
	table#record-table tbody td:nth-of-type(3):before { content: "名稱/抬頭"; }
	table#record-table tbody td:nth-of-type(4):before { content: "捐款金額(元)"; }
	table#record-table tfoot {
		display: block;
		width: 100%;
	}
	table#record-table tfoot tr {
		display: flex;
		flex-direction: row;
		align-items: center;
		flex-wrap: nowrap;
		justify-content: space-between;
	}
	table#record-table tfoot td {
		border-top: 0px solid #E2E2E2 !important;
		border-left: 0px !important;
		font-size: 14px;
	}
	button#toggle-date-sort {
		font-size: 12px;
		padding: 0px;
	}
	button#toggle-date-sort:after {
		width: 17px;
        height: 17px;
        background-size: 10px;
        background-position-y: 65%;
	}
	span.select2-selection__placeholder {
		font-size: 12px;
	}
	ul#select2-year-filter-results > li {
		font-size: 12px;
	}
	span.select2-selection__arrow {
		background-size: 10px;
	}
	span.select2-dropdown.select2-dropdown--above {
		min-width: 76px;
	}
	.empty {
		font-size: 14px;
		margin-left: 0px;
	}
	p#error-res {
		font-size: 14px;
	}
	.archive-bg .elementor .elementor-background-video-hosted {
		object-position: left top;
	}
	.elementor-widget-theme-site-logo {
		max-width: 70%;
	}
	.elementor-widget-theme-site-logo > a {
		width: 170px;
	}
	.news-shorts,
    .news-shorts p {
        font-size: 16px !important;
    }
}