body {
    background-color: #6b4d18;
    background: url(../images/bg.png);
    font-family: "微軟正黑體", "標楷體", Arial;
}

#headdiv {
    width: 100%;
/*    background-color: #FFFFFF;*/
    padding: 0.5em 0 0 0;
    text-align: center;
}

#headdiv a {
    left: -50px;
    text-decoration: none;
    color: #000;
}

#headdiv a:hover {
    color: #080;
}

.img1 {
    margin-left: 60px;
    position: relative;
    top: 8px;
}

header {
    /*background-color: #ffaf32;*/
    background-image: url(../images/title.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    color: #FFFFFF;
    width: 100%;
    height: auto;
    padding: 3em 0em;
    margin-bottom: 0.5em;
    box-shadow: 0px 3px 10px #000000 inset;
}

header>img {
    max-width: 100%;
}



h1 {
    text-align: center;
    margin-top: 30px;
    text-shadow: 0 3px 5px #000;
}
h3,
.title h1 {
    text-align: center;
    text-shadow: 0 3px 5px #000;
}

.wrap_school_info>a {
    float: left;
    margin: 0px 20px 20px 0;
}

.wrap_school_info {
    padding: 0px 20px 0 20px;
}

.school_info_set {
    list-style-type: none;
    padding-top: 50px;
}

.school_info_set a {
    text-decoration: underline;
    text-decoration: none;
    color: #000000;
    max-width: 100%;
}

.school_info_set a:hover {
    color: #080;
}

.wrap_school_info+a {
    position: absolute;
    right: 40px;
}

.wrap_school_intro {
    margin: 20px 0;
}



.container {
    position: relative;
    margin: 0 auto;
}

.aod {
    position: relative;
    border-radius: 2px;
    background-color: #fff;
    display: inline-block;
    width: 100%;
    font-weight: bolder;
    vertical-align: middle;
    font-size: 28px;
    border-bottom: 1px solid #d0d0d0;
    height: 50px;
    margin-top: 10px;
}

.aod1 {
    /*    position: relative;*/
    /*    border-radius: 2px;*/
    background-color: #fff7f2;
    display: inline-block;
    width: 100%;
    font-weight: bolder;
    vertical-align: middle;
    font-size: 28px;

    /*    border-bottom: 1px solid #EEE;*/
    /*    height: 50px;*/
}

.aod1 .blue {
    color: #2418ba;
    padding-left: 20px;
}

.aod .red {
    padding-left: 10px;
}

.aod p,
.aod1 p {
    margin-right: 8px;
    text-align: right;
    font-size: 15px;
    padding-top: 5px;
    display: none;
}

.about {
    max-width: 100%;
    text-align: right;
}

.a-click {
    color: #000;
    background-color: #fffbf2;
    
}

.aod a,
.aod1 a {
    position: relative;
    display: block;
    color: #a0162b;
    padding: 0.2em 0.2em 0.2em 0.2em;
    text-decoration: none;
}

.aod a {
    letter-spacing: 2px;
}
/*
.aod img {
    margin-top: 5px;
}
*/

.aod a:hover {
    text-decoration: none;
    background-color: #EEE;
}

.aod-desc {
    background-color: #fffbf2;
    box-shadow: 0px 0px 3px #b7b7b7 inset;
    color: #000;
    z-index: 2;
    padding: 5px 30px;
}

.aod1all {
    border: 1px solid #EEE;
    margin-bottom: 8px;
}

.aod-desc1 {
    background-color: #fff7f2;
    /*    box-shadow: 0px 0px 3px #b7b7b7 inset;*/
    color: #000;
    z-index: 2;
    padding: 5px 30px;
}

.aod-desc h4,
.aod-desc1 h4 {
    font-weight: bold;
    font-size: 20px;
    text-align: left;
}

.aod-desc1 p {
    line-height: 28px;
}

.ds1-size {
    /*    font-size: 16px;*/
    font-weight: bold;
    margin: 25px 0;
    line-height: 25px;
}

.ds1-size span {
    color: #2418ba;
}

.aod-desc ul,
.aod-desc1 ul,
p {
    margin-left: 20px;
    font-size: 16px;
    /*margin-top: -15px;*/
}
.testp {
    margin-top: 10px;
    font-weight: bold;
}

.cc {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
}

.cc a {
    margin-right: 50px;
}

.dd {
    margin-left: -18px;
}
.dd a {
    text-decoration: none;
    color: #000;
}

.dd a:hover {
    color: #080;
}

#footer {
    position: relative;
    width: 100%;
    margin: 0 auto;
    margin-top: 10px;
    text-align: center;
    font-size: 14px;
}

.aod-title {
    font-size: 18px;
}

@media (min-width:320px) {
    .school_info_set {
        list-style-type: none;
        padding-top: 200px;
        margin-left: -40px;
    }
    h1 {
        font-size: 25px;
    }
    h3,
    .title h1 {
        font-size: 20px;
    }
    #headdiv a {
        font-size: 12px;
        margin-right: 10px;
    }
    .aod,
    .aod1 {
        height: 40px;
        line-height: 20px;
    }
    .aod p,
    .aod1 p {
        margin-top: -15px;
        line-height: 0px;
        font-size: 8px;
        margin-right: -4px;
    }
    .aod-title {
        font-size: 20px;
    }
    #footer {
        width: 100%;
        font-size: 12px;
    }
}


/*先來了解-綠  要報名囉-黃或菊  準備考試-紅 錯過報名-灰或藍*/

/* 顏色皆達 WCAG AA 對比 4.5:1（白底） */
.tag-green {
    color: #3e7738;
}

.tag-yellow {
    color: #9c5f00;
}

.tag-red {
    color: #ad3a5c;
}

.tag-gray {
    color: #5c6264;
}
/*
.yellow {
    color: #fcf558;
}
*/
@media (min-width:480px) {
    .school_info_set {
        list-style-type: none;
        padding-top: 200px;
        margin-left: -40px;
    }
    #headdiv a {
        font-size: 14px;
    }
    #footer {
        width: 80%;
    }
    .container {
        max-width: 95%;
    }
    .aod p,
    .aod1 p {
        margin-top: -10px;
        line-height: 4px;
    }
    .aod-title {
        font-size: 20px;
    }
}

@media (min-width:768px) {
    .school_info_set {
        list-style-type: none;
        padding-top: 50px;
    }
    #headdiv a {
        font-size: 16px;
    }
    header {
        padding: 3em 0em;
        background-size: 100%;
    }
    h1 {
        font-size: 40px;
    }
    h3,
    .title h1 {
        font-size: 40px;
    }
    #headdiv a {
        padding-right: 3em;
    }
    .container {
        max-width: 780px;
    }
    .aod,
    .aod1 {
        height: 50px;
    }
    .aod p,
    .aod1 p {
        display: block;
        margin-top: -25px;
        line-height: 5px;
        font-size: 16px;
    }
    .aod-desc1 p {
        font-size: 18px;
    }
    .aod-title {
        font-size: 25px;
        line-height: 40px;
    }
}

/* ===== 工具列：徽章圖例＋地區篩選 ===== */
.toolbar {
    margin: 14px 0 10px;
    padding: 10px 14px;
    background: #fffbf2;
    border: 1px solid #eee;
    border-radius: 4px;
    font-size: 14px;
}

.legend {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 24px;
    margin: 0 0 10px;
    line-height: 1.6;
}

.legend-item {
    white-space: nowrap;
}

.legend-item b {
    margin-right: 6px;
}

.filters {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
}

.filter-btn {
    padding: 4px 16px;
    border: 1px solid #c9a37a;
    border-radius: 16px;
    background: #fff;
    color: #7a4d1e;
    font-size: 14px;
    cursor: pointer;
}

.filter-btn:hover {
    background: #f5e9dc;
}

.filter-btn.active {
    background: #7a4d1e;
    border-color: #7a4d1e;
    color: #fff;
}

section.school[data-filtered="hide"] {
    display: none;
}

/* ===== 右下角自製聯絡按鈕（取代 getbutton.io） ===== */
#contact-float {
    position: fixed;
    right: 16px;
    bottom: 76px;
    z-index: 999;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

#contact-float a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    color: #fff;
    font-weight: bold;
    font-size: 13px;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .35);
}

#contact-float .cf-tel {
    background: #02b381;
    font-size: 24px;
}

#contact-float .cf-line {
    background: #38B900;
}

#contact-float a:hover {
    filter: brightness(1.1);
}

/* ===== 單一固定回頂按鈕 ===== */
#back-top {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 999;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #7a4d1e;
    color: #fff;
    font-size: 22px;
    line-height: 52px;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .35);
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s;
}

#back-top.show {
    opacity: 1;
    pointer-events: auto;
}

#back-top:hover {
    background: #935e26;
    color: #fff;
}

/* ===== 列印樣式：展開全部內容、隱藏互動元件 ===== */
@media print {
    #headdiv,
    .filters,
    #contact-float,
    #back-top,
    #div3 {
        display: none !important;
    }

    .aod-desc[hidden],
    .aod p,
    .aod1 p {
        display: block !important;
    }

    section.school[data-filtered="hide"] {
        display: block !important;
    }

    section.school,
    .aod1all {
        break-inside: avoid;
    }

    header {
        background: none;
        color: #000;
    }

    h3,
    .title h1 {
        text-shadow: none;
    }
}
