﻿/** VARIABLE SETUP **/
:root {
    --font-base: system-ui, -apple-system, "Roboto", "Helvetica Neue", "Noto Sans TC";
    
    --color-primary: #1f6fff;
    --color-primary-hover: #125fff;
    --color-secondary: #6c757d;
    --color-success: #22c55e;
    --color-danger: #d5001c;
    --color-warning: #ffc107;
    --color-info: #00bcd4;
    --color-light: #f8f9fa;
    --color-dark: #212529;
    --color-black: #000;
    --color-white: #fff;

    --success-rgba: rgba(40, 167, 69, .2);
    --success-bg-subtle: #d1e7dd;
    --body-color-rgb: rgb(0, 0, 0);
    --body-color: #000;
    --body-bg: #f0f0f0;

    --border-color: #ced4da;
    
    --spacing: .25rem;
    --border-radius: .25rem;
    --padding: .25rem .5rem;
    --btn-padding-x: .75rem;
    --btn-padding-y: .375rem;

    --h1-size: 2.5rem;
    --h2-size: 2rem;
    --h3-size: 1.75rem;
    --h4-size: 1.5rem;
    --h5-size: 1.25rem;
    --h6-size: 1rem;

    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --blur-sm: 8px;
    --blur-md: 12px;
    --blur-lg: 16px;

    --transition: all .2s ease-in-out;
}

/** BASE **/

/** Reboot **/
*, *::after, *::before {box-sizing: border-box;}
body {margin: 0; font-family: var(--font-base); font-size: 1rem; line-height: 1.5; -webkit-text-size-adjust: 100%;-webkit-font-smoothing: antialiased;}
/* body {background: var(--body-bg); color: var(--body-color);} */

h1, h2, h3, h4, h5, h6 {margin-top: 0; margin-bottom: 0; /*.5rem*/ line-height: 1.2;}
p {margin-top: 0; margin-bottom: 0; /*1rem;*/}
/* p+p {margin-top: 1rem;} */
a {text-decoration: none;}
a, button, input[type="submit"] {transition: var(--transition)}
button, input, optgroup, select, textarea {margin: 0; font-family: inherit; font-size: inherit; line-height: inherit;}
button, [type="button"], [type="reset"], [type="submit"] {-webkit-appearance: button;}
button:focus:not(:focus-visible) {outline: 0;}
button, select {text-transform: none;}
[role="button"] {cursor: pointer;}
select {word-wrap: normal;}
select:disabled {opacity: 1;}
input, button, select, optgroup, textarea {margin: 0; font-family: inherit; font-size: inherit; line-height: inherit;}
textarea {resize: vertical;}
ol, ul {margin-top: 0; margin-bottom: 0; /*1rem*/ padding-left: 2rem;}
dl {margin-top: 0; margin-bottom: 0; /*1rem*/}
dt {font-weight: bold;}
dd {margin-bottom: 0; /*.5rem*/ margin-left: 0;}
figure {margin: 0 0 1rem;}
table {caption-side: bottom; border-collapse: collapse;}
th {text-align: inherit; text-align: -webkit-match-parent;}
iframe {border: 0;}
hr {margin: 1rem 0; color: inherit; border: 0; border-top: 1px solid currentColor; opacity: .25;}
[hidden] {display: none !important;}

/** Images **/
img, svg {vertical-align: middle;}
.img-thumbnail {max-width: 100%; height: auto; object-fit: cover; overflow: hidden;}
.img-thumbnail {padding: var(--thumbnail-padding); background-color: var(--thumbnail-bg); border: var(--thumbnail-border-width) solid var(--thumbnail-border-color); border-radius: var(--thumbnail-border-radius); box-shadow: var(--thumbnail-box-shadow);}
.icon {display: inline-block; vertical-align: -.125em; fill: currentcolor; font-style: normal;}

/** CUSTOM LAYOUT (AKT THEME) **/
/* #container {width:100%;max-width:1440px;margin:auto;background:#fff;box-shadow:0px 1px 5px #555;overflow:hidden;} */

header {background: #006fcf; line-height: 0; position: relative; z-index: 100; padding-top: env(safe-area-inset-top); width: 100%}

main {background: #fff; min-height: calc(100vh - 60px - 40px - 124px);}

footer {background: #00335f; color: #fff; padding-bottom: env(safe-area-inset-bottom);}
footer .footer-links {display:flex;}
footer .footer-links a {color:#fff;font-weight:bold;text-decoration:none;}
footer .footer-links a:hover {color:#a1c5d2;}
footer .footer-links ul+ul {margin-left:auto;}
footer ul {display:block;list-style:none;margin:0;padding:0;}
footer li {display:inline-block;margin:0 0 0 -5px;padding:0 10px;}
footer li+li {border-left:1px solid #069;}
footer li:first-child {margin-left:0;padding-left:0;}
footer li:last-child {margin-right:0;padding-right:0;}
footer .container {padding:10px 20px 60px 20px;}
footer .license {font-size:.75em;}

/** Navigation **/
.main-nav {height: 60px; display: flex; align-items: center; justify-content: space-between;}
.main-nav > .container {display: grid; grid-template-columns: 1fr auto 1fr; grid-template-rows: 1fr; gap: 0; grid-template-areas: "left center right"; inline-size: 100%;}
    .logo {display: flex; height: auto; align-items: center; position: relative; /*padding: 0 20px;*/ transition: var(--transition);}
    .logo:hover {opacity: .65;}
    .logo-image {height: 40px;}
    .left-icons {grid-area: left; justify-self: start;}
    .right-icons {grid-area: right; justify-self: end;}

.global-nav {background: #00335f; color: #fff;}
.global-nav .container {display: flex;}
.global-nav ul {display:flex;padding:0;margin:0;}
.global-nav li {display:flex;}
.global-nav a {background:#00335f;color:#fff;text-decoration:none;padding:10px 20px;line-height:20px;}
.global-nav a:hover, .global-nav a.active {background:#003D71;color:#fff;}
.global-nav a.action {background:#d5001c;color:#fff;}
.global-nav a.action:hover {background:#960014;color:#fff;}
    .cta-button {display:none;} /** Hidden on desktop devices **/
    .call-button {align-items: center; display: flex !important; gap: .25em; line-height: inherit !important; margin-right: .5em;}

/** Page Headings **/
.banner {display: block; width: 100%; background: #f2f2f2;}
.banner {aspect-ratio: 4/1; object-fit: cover;} /** For desktop devices **/

#profile, .page-header {background:#f2f2f2;}

/** LAYOUT **/
/** Grid **/
.row:after {clear:both;content:"";display:block;}
.row {display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;}
.col {position:relative;}
	/** New Version **/
	.col-1 {width:8.3333%;}
	.col-2 {width:16.6667%;}
	.col-3 {width:25%;}
	.col-4 {width:33.3333%;}
	.col-5 {width:41.6667%;}
	.col-6 {width:50%;}
	.col-7 {width:58.3333%;}
	.col-8 {width:66.6667%;}
	.col-9 {width:75%;}
	.col-10 {width:83.3333%;}
	.col-11 {width:91.6667%;}
	.col-12 {width:100%;}
	
	@media screen and (max-width: 768px), screen and (max-device-width: 768px) {
		.col-sm-1 {width:8.3333%;}
		.col-sm-2 {width:16.6667%;}
		.col-sm-3 {width:25%;}
		.col-sm-4 {width:33.3333%;}
		.col-sm-5 {width:41.6667%;}
		.col-sm-6 {width:50%;}
		.col-sm-7 {width:58.3333%;}
		.col-sm-8 {width:66.6667%;}
		.col-sm-9 {width:75%;}
		.col-sm-10 {width:83.3333%;}
		.col-sm-11 {width:91.6667%;}
		.col-sm-12 {width:100%;}
	}

  .grid { /* Auto Grid */
		display: grid;
    grid-template-columns: repeat(auto-fit,minmax(var(--min-col-size,15rem),1fr));
    gap: var(--grid-gap,1rem);
	}

/** Container **/
.container, .container-xl, .container-lg, .container-md, .container-sm, .content-fluid {width: 100%; margin: auto;}
@media (min-width: 576px) { .container, .container-sm { max-width: 540px; } }
@media (min-width: 768px) { .container, .container-md, .container-sm { max-width: 720px; } }
@media (min-width: 992px) { .container, .container-lg, .container-md, .container-sm { max-width: 960px; } }
@media (min-width: 1200px) { .container, .container-xl, .container-lg, .container-md, .container-sm { max-width: 1140px; } }
@media (min-width: 1400px) { .container, .container-xxl, .container-xl, .container-lg, .container-md, .container-sm { max-width: 1320px; } }

/** UTILITIES **/

/** Position **/
.absolute {position: absolute;}
.fixed {position: fixed;}
.relative {position: relative;}
.static {position: static;}
.sticky {position: sticky;}

.top-0 {top: calc(var(--spacing) * 0);}
.bottom-0 {bottom: calc(var(--spacing) * 0);}

.z-0 {z-index: 0;}
.z-10 {z-index: 10;}
.z-20 {z-index: 20;}
.z-30 {z-index: 30;}
.z-40 {z-index: 40;}
.z-50 {z-index: 50;}

/** Display **/
.d-block {display: block !important;}
.d-inline-block {display: inline-block !important;}
.d-grid {display: grid !important;}
.d-inline-grid {display: inline-grid !important;}
.d-flex {display: flex !important;}
.d-inline-flex {display: inline-flex !important;}
.d-none {display: none !important;}

.align-items-start {align-items: start !important;}
.align-items-end {align-items: end !important;}
.align-items-center {align-items: center !important;}
.align-items-baseline {align-items: baseline !important;}
.align-items-stretch {align-items: stretch !important;}

.align-content-start {align-content: flex-start !important;}
.align-content-end {align-content: flex-end !important;}
.align-content-center {align-content: center !important;}
.align-content-between {align-content: space-between !important;}
.align-content-around {align-content: space-around !important;}
.align-content-stretch {align-content: stretch !important;}

.justify-content-start {justify-content: flex-start !important;}
.justify-content-end {justify-content: flex-end !important;}
.justify-content-center {justify-content: center !important;}
.justify-content-between {justify-content: space-between !important;}
.justify-content-around {justify-content: space-around !important;}
.justify-content-evenly {justify-content: space-evenly !important;}

.flex-row {flex-direction: row !important;}
.flex-column {flex-direction: column !important;}
.flex-nowrap {flex-wrap: nowrap !important;}
.flex-shrink-0 {flex-shrink: 0 !important;}
.flex-shrink-1 {flex-shrink: 1 !important;}
.flex-grow-0 {flex-grow: 0 !important;}
.flex-grow-1 {flex-grow: 1 !important;}
.flex-wrap {flex-wrap: wrap !important;}
.flex-nowrap {flex-wrap: nowrap !important;}

.gap-1 {gap: calc(var(--spacing) * 1);}
.gap-2 {gap: calc(var(--spacing) * 2);}
.gap-3 {gap: calc(var(--spacing) * 3);}
.gap-4 {gap: calc(var(--spacing) * 4);}
.gap-5 {gap: calc(var(--spacing) * 5);}

/** Overflow **/
.overflow-auto {overflow: auto !important;}
.overflow-x-auto {overflow-x: auto !important;}
.overflow-y-auto {overflow-y: auto !important;}
.overflow-hidden {overflow: hidden !important;}
.overflow-x-hidden {overflow-x: hidden !important;}
.overflow-y-hidden {overflow-y: hidden !important;}
.overflow-visible {overflow: visible !important;}
.overflow-x-visible {overflow-x: visible !important;}
.overflow-y-visible {overflow-y: visible !important;}
.overflow-scroll {overflow: scroll !important;}
.overflow-x-scroll {overflow-x: scroll !important;}
.overflow-y-scroll {overflow-y: scroll !important;}

/** Ratio (replaced by Aspect) **/
.ratio {position: relative; width: 100%;}
.ratio > * {position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%;}
.ratio-16x9:before {display: block; padding-top: 56.25%; content: "";} /* 16:9 */
.ratio-4x3:before {padding-top: 75%;} /* 4:3 */
.ratio-1x1:before {padding-top: 100%;} /* 1:1 */
.ratio img, .ratio video {object-fit: cover;}

/** Aspect **/
.aspect-auto {aspect-ratio: var(--aspect-ratio, auto);}
.aspect-square {aspect-ratio: 1 / 1;}
.aspect-video {aspect-ratio: 16 / 9;}
.aspect-4\/3 {aspect-ratio: 4 / 3;}

/* Sizing */
.h-100 {height: 100% !important;}
.w-100 {width: 100% !important;}
.h-auto {height: var(--height, auto);}
.w-auto {width: var(--width, auto);}
.h {height: calc(var(--spacing) * var(--size));}
.w {width: calc(var(--spacing) * var(--size));}

.w-0 {width: 0;}
.w-px {width: 1px;}
.w-1 {width: calc(var(--spacing) * 1);}
.w-2 {width: calc(var(--spacing) * 2);}
.w-4 {width: calc(var(--spacing) * 4);}
.w-8 {width: calc(var(--spacing) * 8);}
.w-16 {width: calc(var(--spacing) * 16);}
.w-32 {width: calc(var(--spacing) * 32);}
.w-64 {width: calc(var(--spacing) * 64);}
.w-96 {width: calc(var(--spacing) * 96);}

.w-full {width: 100%;}
.w-screen {width: 100vw;}
.w-min {width: min-content;}
.w-max {width: max-content;}
.w-fit {width: fit-content;}

/** Borders **/
.rounded-1 {border-radius: .2rem !important; overflow: hidden !important;}
.rounded-2 {border-radius: .25rem !important; overflow: hidden !important;}
.rounded-3 {border-radius: .3rem !important; overflow: hidden !important;}
.rounded-4 {border-radius: .375rem !important; overflow: hidden !important;}
.rounded-5 {border-radius: .5rem !important; overflow: hidden !important;}
.rounded-pill {border-radius: 50rem !important; overflow: hidden !important;}
.rounded-circle {border-radius: 50% !important; overflow: hidden !important;}

.rounded-sm {border-radius: calc(var(--spacing) * 0.5);}
.rounded {border-radius: calc(var(--spacing) * 1);}
.rounded-md {border-radius: calc(var(--spacing) * 1.5);}
.rounded-lg {border-radius: calc(var(--spacing) * 2);}
.rounded-xl {border-radius: calc(var(--spacing) * 3);}
.rounded-2xl {border-radius: calc(var(--spacing) * 4);}
.rounded-3xl {border-radius: calc(var(--spacing) * 6);}
.rounded-4xl {border-radius: calc(var(--spacing) * 8);}
.rounded-full {border-radius: 9999px;}

.border {border-style: var(--border-style); border-width: 1px;}

/** Spacing **/
.padding, .container.padding {padding:20px;} /** to be phased out **/
.padding-sm, .container.padding-sm {padding:10px 20px;}
.padding-lg, .container.padding-lg {padding:40px 20px;}

.p-1 {padding: calc(var(--spacing) * 1);}
.p-2 {padding: calc(var(--spacing) * 2);}
.p-3 {padding: calc(var(--spacing) * 3);}
.p-4 {padding: calc(var(--spacing) * 4);}
.p-5 {padding: calc(var(--spacing) * 5);}
.px-1 {padding-inline: calc(var(--spacing) * 1);}
.px-2 {padding-inline: calc(var(--spacing) * 2);}
.px-3 {padding-inline: calc(var(--spacing) * 3);}
.px-4 {padding-inline: calc(var(--spacing) * 4);}
.px-5 {padding-inline: calc(var(--spacing) * 5);}
.py-1 {padding-block: calc(var(--spacing) * 1);}
.py-2 {padding-block: calc(var(--spacing) * 2);}
.py-3 {padding-block: calc(var(--spacing) * 3);}
.py-4 {padding-block: calc(var(--spacing) * 4);}
.py-5 {padding-block: calc(var(--spacing) * 5);}

.m-1 {margin: calc(var(--spacing) * 1);}
.m-2 {margin: calc(var(--spacing) * 2);}
.m-3 {margin: calc(var(--spacing) * 3);}
.m-4 {margin: calc(var(--spacing) * 4);}
.m-5 {margin: calc(var(--spacing) * 5);}
.mt-1 {margin-top: calc(var(--spacing) * 1);}
.mt-2 {margin-top: calc(var(--spacing) * 2);}
.mt-3 {margin-top: calc(var(--spacing) * 3);}
.mt-4 {margin-top: calc(var(--spacing) * 4);}
.mt-5 {margin-top: calc(var(--spacing) * 5);}
.mb-1 {margin-bottom: calc(var(--spacing) * 1);}
.mb-2 {margin-bottom: calc(var(--spacing) * 2);}
.mb-3 {margin-bottom: calc(var(--spacing) * 3);}
.mb-4 {margin-bottom: calc(var(--spacing) * 4);}
.mb-5 {margin-bottom: calc(var(--spacing) * 5);}
.ms-1 {margin-left: calc(var(--spacing) * 1);}
.ms-2 {margin-left: calc(var(--spacing) * 2);}
.ms-3 {margin-left: calc(var(--spacing) * 3);}
.ms-4 {margin-left: calc(var(--spacing) * 4);}
.ms-5 {margin-left: calc(var(--spacing) * 5);}
.ms-auto {margin-left: auto !important;}
.me-1 {margin-right: calc(var(--spacing) * 1);}
.me-2 {margin-right: calc(var(--spacing) * 2);}
.me-3 {margin-right: calc(var(--spacing) * 3);}
.me-4 {margin-right: calc(var(--spacing) * 4);}
.me-5 {margin-right: calc(var(--spacing) * 5);}
.me-auto {margin-right: auto !important;}
.mx-1 {margin-inline: calc(var(--spacing) * 1) !important;}
.mx-2 {margin-inline: calc(var(--spacing) * 2) !important;}
.mx-3 {margin-inline: calc(var(--spacing) * 3) !important;}
.mx-4 {margin-inline: calc(var(--spacing) * 4) !important;}
.mx-5 {margin-inline: calc(var(--spacing) * 5) !important;}
.mx-auto {margin-inline: auto !important;}
.my-1 {margin-block: calc(var(--spacing) * 1) !important;}
.my-2 {margin-block: calc(var(--spacing) * 2) !important;}
.my-3 {margin-block: calc(var(--spacing) * 3) !important;}
.my-4 {margin-block: calc(var(--spacing) * 4) !important;}
.my-5 {margin-block: calc(var(--spacing) * 5) !important;}
.my-auto {margin-block: auto !important;}

/** Text **/
.text-left {text-align: left;}
.text-center {text-align: center;}
.text-right {text-align: right;}
.text-justify {text-align: justify;}
.text-nowrap {text-wrap: nowrap;}
.whitespace-nowrap {white-space: nowrap;}
.text-lowercase {text-transform: lowercase;}
.text-uppercase {text-transform: uppercase;}
.text-capitalize {text-transform: capitalize;}
.text-muted {color: var(--color-secondary);}
.align-top {vertical-align: top;}
.align-middle {vertical-align: middle;}
.align-bottom {vertical-align: bottom;}
.font-light {font-weight: var(--font-weight-light);}
.font-normal {font-weight: var(--font-weight-normal);}
.font-medium {font-weight: var(--font-weight-medium);}
.font-semibold {font-weight: var(--font-weight-semibold);}
.font-bold {font-weight: var(--font-weight-bold);}

h1 { font-size: calc(var(--h1-size) * .8); }
h2 { font-size: calc(var(--h2-size) * .8); }
h3 { font-size: calc(var(--h3-size) * .8); }
h4 { font-size: calc(var(--h4-size) * .8); }
h5 { font-size: calc(var(--h5-size) * .8); }
h6 { font-size: calc(var(--h6-size) * .8); }

/** CUSTOM UTILITIES **/

/** Article - Eyebrow, Headline, Subheadline, Byline, Dateline **/
.headline {font-size: 2em; font-weight: 700; text-wrap-style: balance;}
.subheadline {font-size: 1.5em; font-weight: 500; text-wrap-style: balance; color: var(--color-secondary);}
.lead {font-size: 1.25em; text-wrap-style: pretty;}
.article-body :is(h1, h2, h3, h4, h5) {text-wrap-style: balance;}
.article-body p {text-align: justify; text-wrap-style: pretty;}
.footnote {color: #555; font-style: italic;}

/** Text Divider (Previously "Headline") **/
.text-divider:before {right: .5em; margin-left: -50%;}
.text-divider:after {left: .5em; margin-right: -50%;}
.text-divider:before, .text-divider:after {background-color: #ccc; content: ""; display: inline-block; height: 1px; position: relative; vertical-align: middle; width: 50%;}
.text-divider {text-align: center; margin-bottom: 10px; overflow: hidden;}

/** Section **/
/* .section {clear:both;content:"";display:block;} */
.section+.section {border-top:1px solid #f2f2f2;}

.bg-current {background-color: currentcolor;}
.bg-transparent {background-color: rgba(0, 0, 0, 0);}
.bg-white {background-color: var(--color-white);}
.fill-current {fill: currentcolor;}
.stroke-current {stroke: currentcolor;}

.bg-success {background: var(--success-rgba);}
.bg-success-subtle {background: var(--success-bg-subtle);}
.bg-light {background: var(--color-light);}
.bg-dark {background: var(--color-dark);}
.text-white {color: #fff;}

/** HELPERS **/

.clearfix {display: block; clear: both; content: "";}
.hidden {display: none !important;}
.ellipsis {overflow: hidden; text-overflow: ellipsis; max-width: 100%; white-space: nowrap;}

/** COMPONENTS **/

/** Accordion **/
.accordion {border: 1px solid var(--border-color); border-radius: var(--border-radius); overflow: hidden;}
.accordion-item {border-bottom: 1px solid var(--border-color);}
.accordion-item:last-child {border-bottom: 0;}
.accordion-header {margin: 0;}
.accordion-button {background: transparent; border: 0; width: 100%; text-align: left; padding: var(--padding); font-size: 1rem; font-weight: 600; cursor: pointer; display: flex; align-items: center; justify-content: space-between;}
.accordion-button:after {content: 'expand_more'; font-family: 'Material Icons'; line-height: inherit; text-decoration: none; transition: transform .24s ease-in-out;}
.accordion-button.collapsed:after {transform: rotate(-90deg);}
.accordion-body {padding: var(--padding); border-top: 1px solid var(--border-color);}
.accordion-collapse {display: none;}
.accordion-collapse.show {display: block;}
.accordion-button:focus {outline: 0;}
.accordion-button:hover {background: #f8f9fa;}
.accordion-button:active {background: #e9ecef;}
.accordion-button.disabled, .accordion-button:disabled {pointer-events: none; opacity: .65;}
.accordion-flush {border: 0;}
.accordion-flush .accordion-item {border-bottom: 0;}
.accordion-flush .accordion-button {border-radius: 0;}
.accordion-flush .accordion-body {border-top: 0;}
.accordion-flush .accordion-item:last-child .accordion-button {border-bottom-left-radius: var(--border-radius); border-bottom-right-radius: var(--border-radius);}
.accordion-flush .accordion-item:first-child .accordion-button {border-top-left-radius: var(--border-radius); border-top-right-radius: var(--border-radius);}
.accordion-flush .accordion-item:first-child .accordion-body {border-top: 1px solid var(--border-color);}
.accordion-flush .accordion-item:last-child .accordion-body {border-bottom: 1px solid var(--border-color);}
.accordion-flush .accordion-item:last-child {border-bottom: 1px solid var(--border-color);}
.accordion-flush .accordion-button:hover {background: #f8f9fa;}
.accordion-flush .accordion-button:active {background: #e9ecef;}
.accordion-flush .accordion-button.disabled, .accordion-flush .accordion-button:disabled {pointer-events: none; opacity: .65;}
.accordion-flush .accordion-body {padding: var(--padding);}
.accordion-flush .accordion-button {padding: var(--padding);}
.accordion-button[aria-expanded="false"]::after {transform: rotate(0deg);}
.accordion-button[aria-expanded="true"]::after {transform: rotate(180deg);}
.accordion-collapse {opacity: 0; transition: height 260ms ease, opacity 200ms ease;}
.accordion-collapse.show {opacity: 1;}

/** Alert **/
.alert {position: relative; padding: var(--padding); border: 1px solid transparent; border-radius: var(--border-radius);}
.alert-success {background-color: #dff0d8; border: #d6e9c6; color: #3c763d;}
.alert-info {background-color: #d9edf7; border: 1px solid #bce8f1; color: #31708f;}
.alert-warning {background-color: #fcf8e3; border: 1px solid #faebcc; color: #8a6d3b;}
.alert-danger {background-color: #f2dede; border: 1px solid #ebccd1; color: #a94442;}

.alert.banner {position: relative; z-index: 1;}

/** Badge **/
.badge {
    display: inline-block;
    padding: .25em .4em; /* recommend .35em .65em */
    font-size: .75rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: text-bottom; /* recommend baseline */
    border-radius: var(--border-radius);
}
.badge-primary {color: #fff; background-color: var(--color-primary);}
.badge-secondary {color: #fff; background-color: var(--color-secondary);}
.badge-success {color: #fff; background-color: var(--color-success);}
.badge-danger {color: #fff; background-color: var(--color-danger);}
.badge-warning {color: #fff; background-color: var(--color-warning);}
.badge-info {color: #000; background-color: var(--color-info);}
.badge-light {color: #000; background-color: var(--color-light);}
.badge-dark {color: #fff; background-color: var(--color-dark);}

/** Button **/
.button {display: inline-block; font-weight: 600; padding: var(--btn-padding-y) var(--btn-padding-x); font-size: 1rem; line-height: inherit /*original => line-height: 1.5*/; background-color: transparent; border: 1px solid transparent; border-radius: var(--border-radius); text-align: center; text-decoration: none; text-overflow: ellipsis; font-family: inherit; cursor: pointer;}
.button-sm {padding: .25rem .5rem; font-size: .875rem;}
.button-lg {padding: .75rem 1.5rem; font-size: 1.25rem;}

.button-primary {background: #0070BA; color: #FFF;} /**PP**/
.button-primary:hover {background: #005EA6;}
.button-primary:active {background: #00598E;}

.button-default {background: #E1E7EB; color: #2C2E2F;} /**PP**/
.button-default:hover {background: #D1DAE0;}
.button-default:active {background: #C2CED6;}

.button-outline-primary {background: transparent; border: 1px solid #0070BA; color: #0070BA;}
.button-outline-primary:hover, .button-outline-default:active {background: #0070BA; color: #fff;}

.button-outline-default {background: transparent; border: 1px solid #E1E7EB; color: #E1E7EB;}
.button-outline-default:hover, .button-outline-default:active {background: #E1E7EB; color: #fff;}

.button-outline-light {background: transparent; border: 1px solid #fff; color: #fff;}
.button-outline-light:hover, .button-outline-light:active {background: #fff !important;color: #00335f !important;}

.button-block {display: block; width: 100%; height: 100%;}
.button.disabled, .button:disabled {pointer-events: none; opacity: .65;}

/** Button Group **/
	.button-group {
	  position: relative;
		display: -ms-flexbox;
		display: flex;
		vertical-align: middle;
	}
	.button-group .button {
		position: relative;
		-ms-flex: 0 1 auto;
		flex: 0 1 auto;
	}
	.button-group-sm>.button {
		padding: .25em .5em;
    		/*font-size: .875em;*/
	}
	.button-group>.button:not(:last-child) {
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
	}
	.button-group>.button:not(:first-child) {
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
		margin-left: -1px;
	}
	@media screen and (max-width: 768px), screen and (max-device-width: 768px) {
		.button-group>.button {
			display: inline-block;
		}
	}

/** Link **/
.link {color:#005ea6; text-decoration:none; text-underline-offset: .25em; display: inline-block;}
.link:hover {color: #00598e; text-decoration: underline;}
.link-action:after {content: 'chevron_right'; font-family: 'Material Symbols Outlined'; text-decoration: none; position: relative; display: inline-block; vertical-align: bottom; margin-inline-start: .25rem ; font-size: inherit; line-height: inherit;}
.stretched-link:after {position: absolute; top: 0; right: 0; bottom: 0; left: 0; content: "";}

/** OL/UL: List Group **/
.list-group {list-style:none;padding:0;margin:0;}

.list-group {display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;}
.list-group-item {position:relative;display:block;border:1px solid #dfdfdf;margin-bottom:-1px;overflow:hidden;}
.list-group-item.active {z-index:2;background:#c00;color:#fff;}

.list-group-item:first-child {border-top-left-radius:.25em;border-top-right-radius:.25em;}
.list-group-item:last-child {border-bottom-left-radius:.25em;border-bottom-right-radius:.25em;margin-bottom:0;}
/*.list-group-item > a {position:absolute;top:0;right:0;bottom:0;left:0;}
.list-group-item > a:hover {z-index:1;border:1px solid #c00;color:#c00;}*/

.list-group-flush .list-group-item {border-right: 0;border-left: 0;border-radius: 0;}

/* .list-group-item+.list-group-item {
    border-top-width: 0;
} */
.list-group-item-action:active {
    color: #212529;
    background-color: #e9ecef;
}
.list-group-item-action:focus, .list-group-item-action:hover {
    z-index: 1;
    color: #000;
    text-decoration: none;
    background-color: #f8f9fa;
}

/* .list-group-item.active {
    z-index: 2;
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
} */

/** OL/UL: Nav Group (Sitemap) **/
.nav {list-style:none;margin:0;padding:0;}
.nav-link {color:var(--color-dark);display:block;text-decoration:none;}
.nav-link:hover {color:#c00;}
.nav-title {color:var(--color-secondary);font-size:1.2em;font-weight:bold;margin-bottom:.25em;}

/** Card **/
.card {border: 1px solid #dfdfdf; position: relative; display: flex; flex-direction: column;}
.card {-moz-border-radius:.25rem;-webkit-border-radius:.25rem;border-radius:.25rem;overflow:hidden;}
.card {-moz-transition:all .24s ease-in-out;-webkit-transition:all .24s ease-in-out;transition:all .24s ease-in-out;}
.card:hover {border-color:#c00;color:#c00;}	
.card > a {position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;}
.card img {display:block;}

.card-container {padding:20px 0 0 20px;}
.card-container>.row>.col {padding:0 20px 20px 0;} /* card grid inside container */
.card-body {padding: 10px 20px;}
.card-footer {margin-top: auto;}

.card-img, .card-cover {object-fit: cover; height: 100%; width: 100%;}
.card-img, .card-cover {transform: scale3d(1, 1, 1);transition: transform .24s ease-in-out;}
.card:hover>.card-img, .card:hover>.card-cover {transform: scale3d(1.05, 1.05, 1.05); transition: transform .24s ease-in-out;}
.card-img-overlay, .card-caption {position: absolute; bottom: 0; background: linear-gradient(rgba(39, 39, 39, 0) 0%, rgba(39, 39, 39, 0.082) 20%, rgba(36, 36, 36, 0.333) 40%, rgba(33, 33, 33, 0.667) 60%, rgba(31, 31, 31, 0.9) 80%, rgba(31, 31, 31, 0.9) 100%); color: #fff; padding: 1em; width: 100%;}

/** Material Icons **/
.material-icons {display: inline-block; vertical-align: -0.125em; fill: currentcolor; font-size: inherit !important;}
.material-icons.md-18 {font-size:18px !important;}
.material-icons.md-24 {font-size:24px !important;}
.material-icons.md-36 {font-size:36px !important;}
.material-icons.md-48 {font-size:48px !important;}

/** Material Symbols **/
.icon {font-family: 'Material Symbols Outlined'; font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;}
.icon-btn {display: inline-flex; align-items: center; justify-content: center;}
.icon-btn .icon {font-variation-settings: 'FILL' 0; line-height: initial; font-weight: initial;}
.icon-btn:hover .icon {font-variation-settings: 'FILL' 1;}
.icon.md-36 {font-size: 36px !important;}

/** FORMS **/

/** Form and Input **/
button,input,textarea,select,option {font-family:inherit;font-size:1em; /* reboot */}
label {color: #495057; display: inline-block; line-height: inherit; padding: .3125rem 0; /* phrase out */}
.input-block {display: block; width: 100%; /* ?? */}

.form-label {margin-bottom: .5rem; font-weight: 600; line-height: inherit;}
.col-form-label {padding: .625rem 0; /* alignment for inline form // original => calc(.625rem - 2px) */}

/*.form-control {display: block; width: 100%; padding: .375rem .75rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #495057; background-color: #fff; background-clip: padding-box; border: 1px solid var(--border-color); border-radius: var(--border-radius); transition: border-color .2s ease-in-out, box-shadow .2s ease-in-out;}*/
.form-control:hover {border-color: #80bdff;}
.form-control:focus {color: #495057; background-color: #fff; border-color: #80bdff; outline: 0; box-shadow: 0 0 0 .2rem rgba(0,123,255,.25);}
.form-control:placeholder {color: #6c757d; opacity: 1;}
.form-control:disabled {background-color: #e9ecef; opacity: 1;}
.form-control-plaintext {display: block; width: 100%; padding: .375rem 0; margin-bottom: 0; line-height: 1.5; color: #212529; background-color: transparent; border: solid transparent; border-width: 1px 0;}
.form-control-plaintext:focus {outline: 0;}
/*.form-select {display: block; width: 100%; padding: .375rem 2.25rem .375rem .75rem; background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='none' stroke='%23343a40' stroke-width='.8' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e"); background-repeat: no-repeat; background-position: right .75rem center; background-size: 8px 10px; appearance: none; -webkit-appearance: none; -moz-appearance: none;}*/
.form-control,
.form-select {
  display: block;
  width: 100%;
  font-size: 1rem;
  line-height: 1.5;
  font-weight: 400;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius);
  box-sizing: border-box;
  /* height: calc(1.5em + .75rem + 2px); // height = line-height + padding + border */
}

.form-control {
  padding: .375rem .75rem;
}

.form-control::placeholder {
  line-height: inherit;
}

.form-select {
  padding: .375rem 2.25rem .375rem .75rem;
  background-image: url("data:image/svg+xml,...");
  background-repeat: no-repeat;
  background-position: right .75rem center;
  background-size: 8px 10px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.form-select:focus {border-color: #80bdff; box-shadow: 0 0 0 .2rem rgba(0,123,255,.25);}
.form-floating {position: relative;}
.form-floating>.form-control, .form-floating>.form-control-plaintext {padding: 1rem .75rem;}
.form-floating>.form-control, .form-floating>.form-control-plaintext, .form-floating>.form-select {
    height: calc(3.5rem + 1px * 2);
    min-height: calc(3.5rem + 1px * 2);
    line-height: 1.25;
}
.form-floating>label {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    max-width: 100%;
    height: 100%;
    padding: 1rem .75rem;
    overflow: hidden;
    color: rgba(var(--body-color-rgb), .65);
    text-align: start;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
    border: 1px solid transparent;
    transform-origin: 0 0;
    transition: var(--transition);
}
.form-floating>.form-control-plaintext:focus, .form-floating>.form-control-plaintext:not(:placeholder-shown), .form-floating>.form-control:focus, .form-floating>.form-control:not(:placeholder-shown) {
    padding-top: 1.625rem;
    padding-bottom: .625rem;
}
.form-floating>.form-control-plaintext~label, .form-floating>.form-control:focus~label, .form-floating>.form-control:not(:placeholder-shown)~label, .form-floating>.form-select~label {
    transform: scale(.85) translateY(-.5rem) translateX(.15rem);
}
.form-floating>.form-select {
    padding-top: 1.625rem;
    padding-bottom: .625rem;
    padding-left: .75rem;
}
.form-text {margin-top: .25rem; font-size: .875rem; color: var(--color-secondary);}
.invalid-feedback {width: 100%; font-size: .8em; color: var(--color-danger);}

/* List Group Radio (Form Use) */
.list-group-radio .radio-hidden {position: absolute; clip: rect(0, 0, 0, 0);}
.list-group-radio .list-group-item {cursor: pointer; border-radius: .25rem;}
.list-group-radio .list-group-item:hover, .list-group-radio .list-group-item:focus {background-color: #e9ecef;}
.list-group-radio .form-check-input:checked + .list-group-item {background-color: transparent; border-color: #0d6efd; box-shadow: 0 0 0 1px #0d6efd;}

/** Tooltips **/
.tooltip {
    position: relative;
    display: inline-block;
}
.tooltip .tooltiptext {
    visibility: hidden;
    width: 120px;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    padding: 5px 0;
    position: absolute;
    z-index: 1;
    opacity: 0;
    transition: opacity 0.24s ease-in-out;
}
.tooltip-top {
    bottom: 125%;
    left: 50%;
    margin-left: -60px;
}
.tooltip-left {
    top: -5px;
    bottom: auto;
    right: 128%;
}
.tooltip .tooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #555 transparent transparent transparent;
}
.tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}

/** CUSTOM COMPONENTS **/

/** Date Picker (jQuery) **/
.ui-widget {font-family:inherit !important;}
.ui-datepicker .ui-datepicker-header {padding:2px 0 !important;}
.ui-datepicker .ui-datepicker-prev-hover {top:2px !important; left:2px !important;}
.ui-datepicker .ui-datepicker-next-hover {top:2px !important; right:2px !important;}

/** Search Box (DEPRECATED) **/
.search-box .row {margin-right: -.25em; margin-bottom: -.25em;}
.search-box .col {padding-right: .25em; padding-bottom: .25em;}

/** DL: FAQ **/
.faq dl {}
.faq dt {font-weight:bold;}
.faq dd {color:#555;margin-left:0;}
.faq dd+dt {margin-top:0.5em;}

/** DL: Information List (Flex w/ Justify Content) **/
.section-title {border-bottom: 2px solid #ccc; margin-top: 1em; padding-bottom: 1em;}
	
.information-list dl {display:flex;margin:0;padding:10px 0;}
.information-list dl+dl {border-top:1px solid #f2f2f2;}
.information-list dt {color:#3e4146;white-space:nowrap;}
.information-list dd {margin-left:auto;text-align:right;}

/** Teaser and Product Tile **/
.teaser-preview {box-sizing:border-box;border-bottom:5px solid transparent;}
.teaser-caption {display:block;}
	
.teaser-item {position:relative;}
.teaser-item:after {display:block;clear:both;content:'';}
.teaser-item:hover {color:#c00;}
.teaser-item:hover .teaser-preview {border-bottom:5px solid #c00;}
.teaser-item a {color:#000;position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;}

/** Products **/
.product-brand {width: 100%; text-overflow: ellipsis; font-size: .9em; color: #555; font-weight: bold;}
.product-name {width: 100%; text-overflow: ellipsis; font-size: 1.1em; margin-top: .25em;}
.product-thumbnail {width: 100%; aspect-ratio: 4 / 3; object-fit: cover;}
.product-prices {margin-top: .5em;}
.discount-badge {position: absolute; top: 1em; left: 1em; background: #c00; color: #fff; padding: .25em .5em; font-weight: bold; border-radius: .25em; z-index: 1;}

/** Prices - Current, Discount, Retail/Recommend **/
.price-cp {color: #036; font-size: 1.2em;}
.price-dp {color: #c00; font-size: 1.2em; font-weight: bold;}
.price-rp {color: #555; font-size: .9em; text-decoration: line-through;}

/** UPDATE REQUIRED **/

  /** Sticky Bar - Scroll Margin Top Hack **/
  a[name] {display: block; position: relative; top: -60px; visibility: hidden;}
  
  /** Sticky Bar v1 **/
  .sticky-header {background: inherit; z-index: 1;}
  .sticky-header.is_stuck {background :rgba(255,255,255,0.5); backdrop-filter: blur(32px); -webkit-backdrop-filter: blur(32px); z-index: 1;}
  
  /** Sticky Bar v2 (Update Required) **/
  /* .sticky-bar {z-index:100;} */
  /* .sticky-bar.is_stuck {background :#fff; box-shadow: 0 5px 5px -2.5px rgba(0,0,0,.2);} */

  /** Sticky Bar v3 (Non-JS) **/
  .sticky-bar {position: sticky; background :rgba(255,255,255,0.5); backdrop-filter: blur(2rem); -webkit-backdrop-filter: blur(2rem); z-index: 1;}

/** Popup (replaced by Modal) **/
.popup-container {background: #fff; border-radius: .25em; padding: 20px; position: relative; margin: auto; width: 100%; max-width: 500px; width: auto !important;}
.popup-sm {max-width: 300px;}
.popup-md {max-width: 500px;}
.popup-lg {max-width: 800px;}
.popup-xl {max-width: 1140px;}

/** Modal **/
.modal-dialog {max-width: 500px; width: auto; position: relative; margin: auto;}
.modal-sm {max-width: 300px !important;}
.modal-md {max-width: 500px !important; /* default */}
.modal-lg {max-width: 800px !important;}
.modal-xl {max-width: 1140px !important;}

.modal-content {background: #fff; display: flex; flex-direction: column; border-radius: var(--border-radius);}
.modal-header {padding: 1rem; border-bottom: 1px solid var(--border-color); font-size: 1.25rem; font-weight: 600;}
.modal-body {padding: 1rem;}
.modal-footer {padding: 1rem; border-top: 1px solid var(--border-color);}

.mfp-bg {
    backdrop-filter: blur(32px);
    -webkit-backdrop-filter: blur(32px);
    background-color: rgba(0, 0, 0, 0.6) !important;
    opacity: 1 !important;
}
.mfp-close {
    width: 40px !important;
    height: 40px !important;
    line-height: 40px !important;
    right: 8px !important;
    top: 8px !important;
}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
    text-align: center !important;
}

/** Welcome Dialog **/
.dialog-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  display: none; /* 默認隱藏 */
  }

  .dialog-box {
      background: white;
      padding: 20px;
      border-radius: 8px;
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
      text-align: center;
  }

  .dialog-box button, .dialog-box a {
      /** background: #007bff;
      color: white;
      border: none;
      padding: 10px 20px;
      border-radius: .25em;
      text-decoration: none;
      display: inline-block;
      text-align: center; **/
      cursor: pointer;
  }

  .dialog-box button:hover, .dialog-box a:hover {
      /** background: #0056b3; **/
  }
  
/** RESPONSIVE **/

/** For screen width more than 768px **/
@media screen and (min-width: 768px), screen and (min-device-width: 768px) {
}

/** For screen width less than 768px **/
@media screen and (max-width: 768px), screen and (max-device-width: 768px) {
body {font-size:1em;}
main {min-height:calc(100vh - 48px - 277px);}
footer .footer-links {display:block !important;}
footer ul+ul {margin-top:10px;}
footer li {display:block;padding:.375rem 0;margin:0;}
footer li a {display:block;}
footer li+li {border-left:0;border-top:1px solid #069;}

.main-nav {background:#006fcf;height:48px;position:relative;z-index:1;}
.cta-button {color:#fff;display:block;height:3rem;width:3rem;padding:.75rem;font-size:1.5rem;background: none; border: none; cursor: pointer;}
.cta-button-active {background:#00335f;}

/* Navbar (to be phrased out) */
/* .main-nav {position:absolute;width:100%;display:none;flex-direction:column;}
.main-nav.responsive {display:block;z-index:10;}
.nav-overlay.responsive {background:rgba(0,0,0,.6);display:block;position:fixed;top:0;left:0;right:0;bottom:0;z-index:1;backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);background-color:rgba(0,0,0,0.6)!important;opacity:1!important;} */

.is-scroll-locked {
    overflow: hidden;
  }
  .global-nav {
    position: absolute;
    top: 100%;
    left: 0;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity 200ms ease, transform 200ms ease, visibility 0s linear 200ms;
    width: 100%;
  }
.global-nav.is-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    transition: opacity 200ms ease, transform 200ms ease, visibility 0s;
  }
  .global-nav .container {
    display: flex;
    flex-direction: column;
  }
  .nav-overlay {
    position: fixed;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 200ms ease, visibility 0s linear 200ms;
    backdrop-filter: blur(32px);
    -webkit-backdrop-filter: blur(32px);
    background-color: rgba(0,0,0,0.6);
    z-index: -1;
  }
  .nav-overlay.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 200ms ease, visibility 0s;
  }
  .nav-toggle.is-active {background:#00335f;}

.global-nav a {font-size:1.25em;}
.global-nav ul {display:block;width:100%;}
.global-nav li, .global-nav a {display:block;}
.global-nav li+li {border-top:1px solid #069;}
.logo-image {height:30px;}
.call-button {display: none !important;}
	
#profile {text-align:center;font-size:0.9em;}
.banner {aspect-ratio: 3/2; object-fit: cover;}
.title {font-size:24px;text-overflow:ellipsis;padding:0px 10px;}
.button-container {display: grid; gap: .25rem;}
}

/** For screen width less than 480px **/
@media screen and (max-width: 480px) {
}

/** Mobile Only **/
.mobile-only {display: none;}
@media screen and (max-width:576px) {
		.mobile-only {display: block;}
	}

/** DEPRECATED **/

/* Nav Bar Scroll Behavior (DEPRECATED) */
/* .navbar-scroll {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
    transition: (--transition);
  }
  .navbar-scroll.hide {
    transform: translateY(-100%);
  }
  .navbar-scroll.show {
    transform: translateY(0%);
  } */
  
/* Juicer (DEPRECATED) */
/* .juicer-feed, .juicer-feed.hip, .juicer-feed h1 {font-family: inherit !important;}
.juicer-button {border-color: #f2f2f2 !important; color: #f2f2f2 !important;}
.juicer-button:hover {background-color: #f2f2f2 !important; color: #000 !important;} */