/* html version */

/* general */

:root{
  --bg-color: #FFFFFF;
  --outline-color: #617042;
  --title-color: #062A3F;
  --content-color: #000000;

  --highlight-color: rgb(0, 38, 80);
}

@font-face {
    font-family: Times New Roman;
    src: url("font/LiberationSerif-Regular.ttf") format('truetype');
}
@font-face {
    font-family: Times New Roman;
    src: url("font/LiberationSerif-Italic.ttf") format('truetype');
    font-style: italic;
}
@font-face {
    font-family: Times New Roman;
    src: url("font/LiberationSerif-Bold.ttf") format('truetype');
    font-weight: bold;
}
@font-face {
    font-family: Times New Roman;
    src: url("font/LiberationSerif-BoldItalic.ttf") format('truetype');
    font-style: italic;
    font-weight: bold;
}

@font-face {
    font-family: "Noto San";
    src: url("font/NotoSans-Regular.ttf") format('truetype');
}

@font-face {
    font-family: "Noto San";
    src: url("font/NotoSans-Italic.ttf") format('truetype');
    font-style: italic;
}

@font-face {
    font-family: "Noto San";
    src: url("font/NotoSans-Bold.ttf") format('truetype');
    font-weight: bold;
}

@font-face {
    font-family: "Noto San";
    src: url("font/NotoSans-BoldItalic.ttf") format('truetype');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: Cinzel;
    src: url("font/Cinzel-Regular.ttf");
    font-weight: 400;
}
@font-face {
    font-family: Cinzel;
    src: url("font/Cinzel-Medium.ttf");
    font-weight: 500;
}
@font-face {
    font-family: Cinzel;
    src: url("font/Cinzel-SemiBold.ttf");
    font-weight: 600;
}
@font-face {
    font-family: Cinzel;
    src: url("font/Cinzel-Bold.ttf");
    font-weight: 700;
}
@font-face {
    font-family: Cinzel;
    src: url("font/Cinzel-ExtraBold.ttf");
    font-weight: 800;
}
@font-face {
    font-family: Cinzel;
    src: url("font/Cinzel-Black.ttf");
    font-weight: 900;
}

@font-face {
  font-family: Courgette;
  src: url("font/Courgette-Regular.ttf");
}

@font-face {
  font-family: LXGWWenKai;
  src: url("font/LXGWWenKai-Light.ttf");
  font-weight: 300;
}
@font-face {
  font-family: LXGWWenKai;
  src: url("font/LXGWWenKai-Regular.ttf");
  font-weight: 400;
}
@font-face {
  font-family: LXGWWenKai;
  src: url("font/LXGWWenKai-Bold.ttf");
  font-weight: 700;
}

:lang( en ){
  font-family: "Noto San";
}

:lang( zh ){
  font-family: "Noto San HK";
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html{
  width: 100%;
}

body{
  max-width: 500px;
  margin: auto;

  background-color: #FFFFFF;
  background-color: var( --bg-color );

  font-size: 16px;
  line-height: 1.2;
  letter-spacing: 0.015em;
  /* text-align: center; */
  /* text-align: justify; */
  text-align-last: center;
}


h1, h2, h3, h4, h5, h6{
  color: #062A3F;
  color: var( --title-color );
  line-height: 1.2em;
}

h1{
  font-size: 2.8em;
  margin: 0;
}

h2{
  font-size: 2em;
  margin: 0;
  margin-bottom: .5em;
}

h3{
  font-size: 1.6em;
}


:lang( zh ) body{
  font-size: 13px;
  line-height: 1.25;
}

:lang( zh ) main {
  font-size: 1.15em;
}

:lang( zh ) h1{
  font-size: 2.2em;
  margin: 0 0 .5em 0;
}

:lang( zh ) h2{
  font-size: 2em;
  margin: 0 0 .5em 0;
}

:lang( zh ) h3{
  font-size: 1.4em;
  margin: 0 0 .5em 0;
}

p{
  color: #000000;
  color: var( --content-color );
}


/* margin */
header,
main > *{
  margin-left: 20px;
  margin-right: 20px;
}

main > *.no-margin{
  margin-left: 0;
  margin-right: 0;
}

h1.no-margin,
h2.no-margin,
h3.no-margin,
h4.no-margin,
h5.no-margin,
h6.no-margin,
p.no-margin,
img.no-margin{
  margin: 0;
}


/*  header  */
#remark-1{
  margin-bottom: 5px;
}

#img-ac-logo{
  width: 145px;
  max-width: 25%;
  /* max-width: 40%; */
}

#img-news-logo{
  width: 260px;
  max-width: 40%;
  -ms-flex-item-align: end;
      align-self: flex-end;
  /* margin-bottom: 20px; */
  margin: auto 0;
}

section:not( :last-child ){
  margin-bottom: 20px;
}

section.highlight-section{
  background-color: var(--highlight-color);
  padding: 5px 15px;
}
section.highlight-section * {
  color: white;
}

footer,
.deco-bar {
  width: 100%;
  height: 35px;

  background-image: url("img/pattern_deco-01.jpg");
  background-repeat: repeat;
  background-size: cover;
}

p.remark{
  font-size: .75em;
  margin: 1em 0 0 0;
}

img{
  max-width: 100%;
  -ms-flex-negative: 1;
      flex-shrink: 1;
}



.mobile-only{
  display: block;
}

.desktop-only{
  display: none;
}

.flex-box{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.flex-box > div:not( :last-child ) {
  /* margin-bottom: 10px; */
}

.flex-box.flex-start,
.flex-box.flex-start.responsive
{
  align-items: flex-start;
}

.flex-box.responsive{
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.flex-box.separate{
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.flex-box.responsive.separate{
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.flex-box.three-item > .item-box {
  flex-basis: 33%;
}


.relative-wrapper{
  position: relative;
}

.absolute-wrapper{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.center-flex-wrapper{
  width: 100%;
  height: 100%;

  display: -webkit-box;

  display: -ms-flexbox;

  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.text-align-left{
  text-align: left;
  text-align-last: left;
}

.text-align-center{
  text-align: center;
  text-align-last: center;
}

.text-align-right{
  text-align: right;
  text-align-last: right;
}


.small-divider {
  width: 65px;
  margin:0;
}

.big-divider{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
}

.big-divider img{
  width: 20px;
  height: 20px;
}
.big-divider hr{
  border-width: 1px;
  border-color: #617042;
  border-color: var( --outline-color );
  width: auto;
  min-width: 20px;
  flex-grow: 1;
}

.big-divider h2{
  font-family: "Times New Roman";
  font-weight: normal;
  text-transform: uppercase;
  line-height: 1.2;
  margin: 0 10px;
  flex-shrink: 1;
  /* width: min-content; */
}

:lang( zh ) .big-divider h2{
  font-weight: bold;
  padding: 0 20px;
}


.big-divider-white{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
}

.big-divider-white img{
  width: 12px;
  height: 12px;
}

.big-divider-white hr{
  border: none;
  background: white;
  height: 2px;
  width: auto;
  min-width: 50px;
  flex-grow: 1;
}

.big-divider-white p{
  color: white;
  font-weight: bold;
  line-height: 1em;
  font-size: 1.2em;
  margin: 0 30px;
  flex-shrink: 1;
}


:lang( zh ) .big-divider h2{
  width: auto;
}

.border-box {
  border: 1px solid var( --highlight-color );
  text-align: center;
  text-align-last: center;
}

@media( min-width: 800px ){
  body{
    max-width: 800px;
    /* text-align: left; */
    /* text-align: justify; */
    text-align-last: auto;
  }


  header,
  main > * {
    margin-left: 45px;
    margin-right: 45px;
  }

  h1{
    font-size: 2.8em;
    margin: 0;
  }

  h2{
    font-size: 2.15em;
    margin: 1em 0;
  }

  h3{
    font-size: 1.6em;
  }


  :lang( zh ) body{
    /* font-size: 13px; */
    line-height: 1.25;
  }

  :lang( zh ) h1{
    font-size: 2.2em;
    margin: 0 0 .5em 0;
  }

  :lang( zh ) h2{
    /* font-size: 1.6em; */
    font-size: 2.35em;
    margin: 0 0 .5em 0;
  }

  :lang( zh ) h3{
    font-size: 1.4em;
    margin: 0 0 .5em 0;
  }

  .mobile-only{
    display: none;
  }

  .desktop-only{
    display: block;
  }

  .flex-box > div:not( :last-child ) {
    /* margin-right: 20px;
    margin-bottom: unset; */
  }

  .flex-box.responsive{
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .flex-box.responsive.separate{
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }

  .flex-box > .text-box {
    width: 100%;
  }

  .flex-box > .text-box:first-child {
    padding-right: 25px;
  }
  .flex-box > .text-box:last-child {
    padding-left: 25px;
  }

  .flex-box > .text-box h2 {
    margin-top: 0;
    margin-bottom: .5em;
  }

  .flex-box > .img-box{
    flex-shrink: .7;
  }

  footer{
    height: 60px;
  }


}




/* custom */
header {
  margin: 0;
}

#remark-1{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
