/**
Theme Name: astra-child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

:root {
  --ak-ink: #07131F;
  --ak-navy: #0B1F33;
  --ak-steel: #1D3650;
  --ak-slate: #314B63;
  --ak-gold: #B79B69;
  --ak-champagne: #D8C59A;
  --ak-cream: #F6F2E8;
  --ak-mist: #EEF1F3;
  --ak-white: #fff;
  --ak-text: #26384A;
  --ak-shell: 1180px;
}

html {
  scroll-behavior: smooth
}

.akvisa-site {
  margin: 0;
  color: var(--ak-text);
  font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
  background: #fff
}

.akvisa-site .ast-container {
  max-width: none;
  padding: 0
}

.akvisa-site #content {
  display: block
}

.akvisa-site .site-content .ast-container {
  display: block
}

.ak-shell {
  width: min(calc(100% - 48px), var(--ak-shell));
  margin-inline: auto
}

.ak-site-header {
  position: relative;
  z-index: 20;
  background: var(--ak-ink);
  border-top: 2px solid var(--ak-gold);
  color: #fff
}

.ak-header-inner {
  height: 82px;
  display: flex;
  align-items: center;
  gap: 36px
}

.ak-brand {
  display: flex;
  align-items: center;
  gap: 13px;
  color: #fff;
  text-decoration: none;
  min-width: 220px
}


.ak-primary-nav {
  margin-left: auto
}

.ak-menu {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 28px
}

.ak-menu a {
  color: #c7d0d8;
  text-decoration: none;
  font-size: 14px
}

.ak-menu a:hover,
.ak-menu .current-menu-item>a {
  color: var(--ak-champagne)
}

.ak-header-cta {
  color: var(--ak-champagne);
  border: 1px solid var(--ak-gold);
  padding: 11px 16px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap
}

.ak-header-cta:hover {
  background: var(--ak-gold);
  color: var(--ak-ink)
}

.ak-menu-toggle,
.ak-mobile-menu {
  display: none
}

.ak-kicker {
  font-size: 11px;
  letter-spacing: .22em;
  color: var(--ak-gold);
  font-weight: 800;
  text-transform: uppercase;
  margin-bottom: 14px
}




.ak-hero:after {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  border: 1px solid rgba(216, 197, 154, .08);
  border-radius: 50%;
  right: -80px;
  top: -180px;
  box-shadow: 0 0 0 70px rgba(49, 75, 99, .12), 0 0 0 140px rgba(49, 75, 99, .08)
}


.ak-feature-list {
  display: grid;
  gap: 14px;
  margin-top: 24px
}

.ak-feature {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 12px;
  align-items: start
}

.ak-feature i {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--ak-mist);
  display: grid;
  place-items: center;
  color: var(--ak-steel);
  font-style: normal;
  font-weight: 800;
  font-size: 11px
}

.ak-feature strong {
  display: block;
  color: var(--ak-navy);
  font-size: 14px
}

.ak-feature small {
  display: block;
  color: #7f8d99;
  line-height: 1.6;
  margin-top: 3px
}


ul.trail-items>li,
ul.trail-items>li a {
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--ak-champagne);
  font-weight: 700;
  margin-bottom: 28px
}

.whyAkNum {
  border-radius: 100%;
}

.commitmentList ul.elementor-icon-list-items>li>span {
  background: var(--ak-slate);
  border-left: 3px solid var(--ak-champagne);
  padding: 15px 18px;
  margin-top: 10px;
  width: 100%;
}

.commitmentList ul.elementor-icon-list-items>li>span>strong {
  color: #fff;
  font-size: 16px;
}

.tecoList ul.elementor-icon-list-items>li>span {
  border-left: 3px solid var(--ak-champagne);
  padding: 15px 18px;
  margin-top: 10px;
  width: 100%;
}

.tecoList ul.elementor-icon-list-items>li>span>strong {
  font-size: 16px;
}

.ak-hero {
  overflow: hidden;
}

.benefitGrid_1 {
  border-top: 4px solid var(--ak-gold) !important;
}

.benefitGrid_2 {
  border-top: 4px solid var(--ak-navy) !important;
}

.statusList li.elementor-icon-list-item {
  background-color: rgba(255, 255, 255, .2);
  padding: 8px 16px;
}

.helpDataList li.elementor-icon-list-item {
  background-color: #f2f2f2;
  padding: 16px;
}

.homeHeroCheck,
.homeTrustGrid {
  border-top: 4px solid var(--ak-gold);
}

.homeCheckList li.elementor-icon-list-item {
  padding: 13px 15px;
  border-left: 3px solid var(--ak-gold);
  background: rgba(255, 255, 255, .08);
}


/* Legal retirement age table — Elementor text editor widget. */
.ak-age-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.ak-age-table {
  width: 100%;
  margin: 0;
  border: 0;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
  color: var(--ak-steel);
}

.ak-age-table thead,
.ak-age-table tbody,
.ak-age-table tr,
.ak-age-table th,
.ak-age-table td {
  border: 0;
}

.ak-age-table thead th {
  background: var(--ak-steel);
  color: #fff;
  padding: 24px 18px;
  text-align: center;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.45;
  vertical-align: middle;
}

.ak-age-table tbody tr:nth-child(odd) {
  background: #fff;
}

.ak-age-table tbody tr:nth-child(even) {
  background: var(--ak-mist);
}

.ak-age-table tbody th,
.ak-age-table tbody td {
  padding: 26px 18px;
  text-align: center;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.45;
  vertical-align: middle;
}

.ak-age-table tbody th {
  font-weight: 700;
}

.ak-age-table-wrap:focus {
  outline: 2px solid var(--ak-gold);
  outline-offset: 3px;
}

@media (max-width: 767px) {
  .ak-age-table-wrap {
    overflow: visible;
  }

  .ak-age-table {
    display: block;
    table-layout: auto;
  }

  .ak-age-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }

  .ak-age-table tbody {
    display: grid;
    gap: 14px;
  }

  .ak-age-table tbody tr {
    display: block;
    background: #fff !important;
    border: 1px solid #dce2e7;
    box-shadow: 0 5px 15px rgba(7, 19, 31, .05);
  }

  .ak-age-table tbody th,
  .ak-age-table tbody td {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    padding: 13px 16px;
    text-align: right;
    font-size: 15px;
    border-bottom: 1px solid #e3e7ea;
  }

  .ak-age-table tbody th::before,
  .ak-age-table tbody td::before {
    content: attr(data-label);
    text-align: left;
    color: #66788a;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.45;
  }

  .ak-age-table tbody th {
    display: flex;
    justify-content: space-between;
    background: var(--ak-steel);
    color: #fff;
    text-align: left;
    font-size: 16px;
    padding: 15px 16px;
  }

  .ak-age-table tbody th::before {
    content: "出生年次（西元）";
    color: var(--ak-champagne);
  }

  .ak-age-table tbody td:last-child {
    border-bottom: 0;
  }
}

/* Homepage assembled from the existing eligibility, process and case content. */
.ak-home-hero {
  position: relative;
  overflow: hidden;
  background: var(--ak-navy);
  color: #fff;
}

.ak-home-hero::after {
  content: "";
  position: absolute;
  width: 650px;
  height: 650px;
  right: -120px;
  top: -135px;
  border: 1px solid rgba(216, 197, 154, .1);
  border-radius: 50%;
  box-shadow: 0 0 0 82px rgba(49, 75, 99, .11), 0 0 0 164px rgba(49, 75, 99, .06);
}

.ak-home-hero-grid {
  position: relative;
  z-index: 1;
  min-height: 620px;
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 76px;
  align-items: center;
}

.ak-home-eyebrow {
  margin-bottom: 25px;
  color: var(--ak-champagne);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .18em;
}

.ak-home-hero h1 {
  max-width: 720px;
  margin: 0 0 24px;
  color: #fff;
  font-family: Georgia, "Noto Serif TC", serif;
  font-size: clamp(42px, 4.3vw, 66px);
  font-weight: 500;
  line-height: 1.28;
}

.ak-home-hero h1 em {
  color: var(--ak-champagne);
  font-style: normal;
}

.ak-home-hero-copy>p {
  max-width: 710px;
  margin: 0;
  color: #b9c4ce;
  font-size: 16px;
  line-height: 1.95;
}

.ak-home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 30px;
}

.ak-home-btn {
  display: inline-block;
  padding: 14px 20px;
  border: 1px solid var(--ak-gold);
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
}

.ak-home-btn.is-gold {
  background: var(--ak-gold);
  color: var(--ak-ink);
}

.ak-home-btn:hover {
  background: var(--ak-champagne);
  color: var(--ak-ink);
}

.ak-home-notes {
  margin-top: 25px;
  color: #899aaa;
  font-size: 11px;
  letter-spacing: .04em;
}

.ak-home-check-card {
  padding: 34px 38px;
  border-top: 4px solid var(--ak-gold);
  background: #fff;
  color: var(--ak-navy);
  box-shadow: 0 18px 50px rgba(0, 0, 0, .2);
}

.ak-home-seal {
  width: 68px;
  height: 68px;
  margin: 0 auto 22px;
  border: 2px solid var(--ak-gold);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--ak-gold);
  text-align: center;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.15;
}

.ak-home-check-card h2 {
  margin: 0 0 8px;
  text-align: center;
  color: var(--ak-navy);
  font-family: Georgia, "Noto Serif TC", serif;
  font-size: 23px;
}

.ak-home-check-card>p {
  margin: 0 0 22px;
  text-align: center;
  color: #84919d;
  font-size: 12px;
}

.ak-home-check-list {
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}

.ak-home-check-list li {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 11px 0;
  border-top: 1px solid #e5e9ec;
  color: #55697b;
  font-size: 13px;
}

.ak-home-check-list strong {
  color: var(--ak-navy);
}

.ak-home-check-card .ak-home-btn {
  display: block;
  text-align: center;
}

.ak-home-stats {
  background: #fff;
  border-bottom: 1px solid #e1e6ea;
}

.ak-home-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.ak-home-stat {
  min-height: 112px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #e1e6ea;
}

.ak-home-stat:last-child {
  border-right: 0;
}

.ak-home-stat strong {
  color: var(--ak-gold);
  font-family: Georgia, serif;
  font-size: 27px;
}

.ak-home-stat span {
  margin-top: 7px;
  color: #7f8f9d;
  font-size: 11px;
}

.ak-home-section {
  padding: 94px 0;
}

.ak-home-section.is-mist {
  background: var(--ak-mist);
}

.ak-home-section.is-navy {
  background: var(--ak-navy);
  color: #fff;
}

.ak-home-heading {
  max-width: 820px;
  margin: 0 auto 44px;
  text-align: center;
}

.ak-home-heading h2 {
  margin: 0 0 14px;
  color: var(--ak-navy);
  font-family: Georgia, "Noto Serif TC", serif;
  font-size: 38px;
  font-weight: 500;
}

.ak-home-heading p {
  margin: 0;
  color: #71818f;
  line-height: 1.85;
}

.ak-home-section.is-navy .ak-home-heading h2 {
  color: #fff;
}

.ak-home-section.is-navy .ak-home-heading p {
  color: #9fafbd;
}

.ak-home-card-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}

.ak-home-card {
  min-height: 230px;
  padding: 28px;
  border-top: 4px solid var(--ak-gold);
  background: #fff;
}

.ak-home-card i {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--ak-mist);
  color: var(--ak-slate);
  font-style: normal;
  font-weight: 800;
}

.ak-home-card h3 {
  margin: 30px 0 10px;
  color: var(--ak-navy);
  font-size: 17px;
  line-height: 1.5;
}

.ak-home-card p {
  margin: 0;
  color: #71818f;
  font-size: 13px;
  line-height: 1.75;
}

.ak-home-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 34px;
  counter-reset: ak-step;
}

.ak-home-step {
  position: relative;
  padding-top: 58px;
  counter-increment: ak-step;
}

.ak-home-step::before {
  content: "0" counter(ak-step);
  position: absolute;
  top: 0;
  left: 0;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--ak-steel);
  color: var(--ak-champagne);
  font-weight: 800;
}

.ak-home-step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 20px;
  left: 56px;
  right: -18px;
  height: 1px;
  background: #c9d1d7;
}

.ak-home-step h3 {
  margin: 0 0 10px;
  color: var(--ak-navy);
  font-size: 16px;
}

.ak-home-step p {
  margin: 0;
  color: #71818f;
  font-size: 13px;
  line-height: 1.75;
}

.ak-home-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.ak-home-panel {
  padding: 42px;
  background: var(--ak-navy);
  color: #fff;
}

.ak-home-panel.is-cream {
  background: var(--ak-cream);
  color: var(--ak-navy);
}

.ak-home-panel h2 {
  margin: 0 0 20px;
  color: inherit;
  font-family: Georgia, "Noto Serif TC", serif;
  font-size: 31px;
  line-height: 1.4;
}

.ak-home-panel p {
  color: #6e7f8e;
  line-height: 1.85;
}

.ak-home-panel:not(.is-cream) p {
  color: #aab7c1;
}

.ak-home-ticks {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ak-home-ticks li {
  margin-top: 10px;
  padding: 13px 15px;
  border-left: 3px solid var(--ak-gold);
  background: rgba(255, 255, 255, .08);
  font-size: 13px;
}

.ak-home-cases {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 58px;
  align-items: center;
}

.ak-home-case-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.ak-home-case {
  min-height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: #d7e0e6;
}

.ak-home-case:nth-child(2) {
  background: #e0d1ac;
}

.ak-home-case:nth-child(3) {
  background: #c2d9d2;
}

.ak-home-case:nth-child(4) {
  background: #c9d0db;
}

.ak-home-case b {
  margin: auto;
  color: #718598;
  font-family: Georgia, serif;
  letter-spacing: .12em;
}

.ak-home-case span {
  padding: 11px 14px;
  background: var(--ak-ink);
  color: #fff;
  font-size: 10px;
}

.ak-home-case-copy h2 {
  margin: 0 0 20px;
  color: var(--ak-navy);
  font-family: Georgia, "Noto Serif TC", serif;
  font-size: 38px;
  line-height: 1.35;
}

.ak-home-quote {
  margin: 22px 0;
  padding-left: 18px;
  border-left: 3px solid var(--ak-gold);
  color: var(--ak-slate);
  font-family: Georgia, "Noto Serif TC", serif;
  font-size: 24px;
  line-height: 1.55;
}

.ak-home-faq-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 58px;
  align-items: start;
}

.ak-home-faq h2 {
  margin: 0 0 12px;
  color: #fff;
  font-family: Georgia, "Noto Serif TC", serif;
  font-size: 32px;
}

.ak-home-faq>p {
  color: #93a3b1;
  line-height: 1.8;
}

.ak-home-faq details {
  border: 1px solid #3f566b;
  border-bottom: 0;
}

.ak-home-faq details:last-child {
  border-bottom: 1px solid #3f566b;
}

.ak-home-faq summary {
  padding: 17px;
  cursor: pointer;
  color: #d7e0e6;
  font-size: 13px;
}

.ak-home-faq details p {
  padding: 0 17px 17px;
  color: #98a8b5;
  font-size: 12px;
  line-height: 1.75;
}

.ak-home-form-card {
  padding: 38px;
  border-top: 4px solid var(--ak-gold);
  background: #fff;
}

.ak-home-form-card h3 {
  margin: 0 0 8px;
  color: var(--ak-navy);
  font-family: Georgia, "Noto Serif TC", serif;
  font-size: 25px;
}

.ak-home-form-card p {
  margin: 0 0 22px;
  color: #7b8a97;
  font-size: 12px;
  line-height: 1.75;
}

.ak-home-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.ak-home-form-card input {
  width: 100%;
  min-height: 46px;
  padding: 10px 13px;
  border: 1px solid #d8dfe4;
  background: #fff;
  color: var(--ak-navy);
  font-size: 13px;
}

.ak-home-form-card input.is-wide {
  grid-column: 1 / -1;
}

.ak-home-form-card .ak-home-btn {
  width: 100%;
  margin-top: 12px;
  background: var(--ak-gold);
  color: var(--ak-ink);
  text-align: center;
}

@media (max-width: 960px) {

  .ak-home-hero-grid,
  .ak-home-cases,
  .ak-home-faq-grid {
    grid-template-columns: 1fr;
  }

  .ak-home-hero-grid {
    padding: 80px 0;
  }

  .ak-home-check-card {
    max-width: 620px;
  }

  .ak-home-card-grid,
  .ak-home-steps {
    grid-template-columns: 1fr 1fr;
  }

  .ak-home-step:nth-child(2)::after {
    display: none;
  }
}

@media (max-width: 640px) {
  .ak-home-hero-grid {
    min-height: auto;
    gap: 50px;
    padding: 64px 0;
  }

  .ak-home-hero h1 {
    font-size: 38px;
  }

  .ak-home-check-card,
  .ak-home-panel,
  .ak-home-form-card {
    padding: 28px 22px;
  }

  .ak-home-stat-grid,
  .ak-home-card-grid,
  .ak-home-steps,
  .ak-home-split,
  .ak-home-case-grid,
  .ak-home-form-grid {
    grid-template-columns: 1fr;
  }

  .ak-home-stat-grid {
    grid-template-columns: 1fr 1fr;
  }

  .ak-home-stat:nth-child(2) {
    border-right: 0;
  }

  .ak-home-stat:nth-child(-n+2) {
    border-bottom: 1px solid #e1e6ea;
  }

  .ak-home-section {
    padding: 70px 0;
  }

  .ak-home-heading h2,
  .ak-home-case-copy h2 {
    font-size: 31px;
  }

  .ak-home-step::after {
    display: none;
  }

  .ak-home-case {
    min-height: 160px;
  }

  .ak-home-form-card input.is-wide {
    grid-column: auto;
  }
}