* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: #20312c; background: #fff; font-family: "Microsoft YaHei", Arial, sans-serif; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { color: inherit; font: inherit; }
.wraper, .navbox, .heroin, .footin { width: min(1200px, calc(100% - 40px)); margin: 0 auto; }
.topbar { position: sticky; top: 0; z-index: 30; background: #123d32; color: #fff; }
.navbox { height: 78px; display: flex; align-items: center; gap: 23px; }
.brand { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; }
.brand img { width: 45px; height: 45px; border-radius: 3px; object-fit: cover; }
.brand span { display: grid; }
.brand b { font-size: 18px; }
.brand small { margin-top: 3px; color: #e9be63; font-size: 9px; font-weight: 800; }
.navlst { margin-left: auto; display: flex; align-items: center; gap: 17px; font-size: 12px; font-weight: 700; }
.navlst a:hover, .footnv a:hover { color: #e9be63; }
.getapp, .herobt { display: inline-flex; align-items: center; justify-content: center; gap: 9px; background: #8c3042; color: #fff; font-weight: 800; }
.getapp { min-height: 42px; padding: 0 17px; font-size: 12px; }
.menbtn { display: none; border: 0; background: transparent; color: #fff; font-size: 25px; }
.heroaa { overflow: hidden; background: #edf2ef; border-bottom: 1px solid #b9c5c0; }
.heroin { min-height: 680px; display: grid; grid-template-columns: 1fr 470px; align-items: center; gap: 70px; }
.herotx { position: relative; z-index: 2; }
.labelx { display: inline-block; color: #8c3042; font: 800 11px Consolas, monospace; }
.labelx:after { content: ""; display: inline-block; width: 54px; margin-left: 12px; border-bottom: 2px solid #e9be63; vertical-align: middle; }
.herolg { width: 74px; height: 74px; margin: 27px 0 18px; border-radius: 3px; object-fit: cover; box-shadow: 7px 7px 0 #e9be63; }
h1 { margin: 0; max-width: 650px; color: #123d32; font-family: Georgia, "Microsoft YaHei", serif; font-size: 56px; line-height: 1.16; letter-spacing: 0; }
.herotx p { max-width: 590px; margin: 23px 0 29px; color: #5c6965; font-size: 16px; line-height: 1.95; }
.herobt { min-height: 57px; padding: 0 26px; border-bottom: 5px solid #5f1d2b; }
.herpic { position: relative; width: 470px; min-height: 560px; justify-self: end; background: #123d32; border-left: 15px solid #e9be63; }
.herpic:before { content: "BOOK / 001"; position: absolute; left: 18px; top: 20px; color: #e9be63; font: 800 11px Consolas, monospace; writing-mode: vertical-rl; }
.herpic > img { position: absolute; z-index: 2; width: 310px; height: auto; right: 42px; bottom: 0; border: 6px solid #202a27; border-bottom: 0; border-radius: 18px 18px 0 0; box-shadow: -18px -18px 0 #8c3042; }
.stamp { position: absolute; z-index: 3; right: -20px; top: 31px; width: 92px; height: 92px; display: grid; place-items: center; border-radius: 50%; background: #e9be63; color: #123d32; text-align: center; font: 900 10px/1.45 Arial, sans-serif; }
.note { position: absolute; z-index: 3; left: -55px; bottom: 50px; min-width: 215px; display: flex; align-items: center; gap: 12px; padding: 15px 17px; background: #fff; color: #20312c; border-left: 6px solid #8c3042; box-shadow: 0 12px 26px rgba(25, 50, 43, 0.18); }
.note i { color: #8c3042; font-size: 26px; }.note span { display: grid; font-size: 11px; }.note b { margin-top: 4px; font-size: 14px; }
.secton { padding: 92px 0; }
.secttl { margin: 0 auto 44px; width: max-content; color: #123d32; font-family: Georgia, "Microsoft YaHei", serif; font-size: 33px; font-weight: 900; text-align: center; }
.secttl:after { content: ""; display: block; width: 58px; margin: 12px auto 0; border-bottom: 4px double #e9be63; }
.showbg { background: #fff; }
.shots { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.shots figure { margin: 0; padding: 12px; border: 1px solid #cbd4d0; background: #f7f9f8; box-shadow: 8px 8px 0 #dfe8e4; }
.shots img { width: 100%; height: auto; aspect-ratio: 480 / 853; object-fit: contain; background: #e5ebe8; }
.shots figcaption { display: flex; align-items: center; gap: 10px; min-height: 58px; font-size: 13px; font-weight: 800; }
.shots figcaption b { color: #8c3042; font: 900 12px Georgia, serif; }
.featbg { background: #123d32; color: #fff; }
.featbg .secttl, .downbg .secttl { color: #fff; }
.featls { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.featcr { min-height: 215px; padding: 27px; border-top: 4px solid #e9be63; background: #1b4a3e; }
.featcr:nth-child(2n) { border-color: #b76574; }
.featcr i { display: block; margin-bottom: 34px; color: #e9be63; font-size: 31px; }
.featcr b, .downit b, .newsit > b { display: block; font-size: 18px; }
.featcr p, .downit p, .newsit p { margin: 10px 0 0; color: #697770; font-size: 14px; line-height: 1.8; }.featcr p { color: #c1d0ca; }
.downbg { background: #8c3042; }
.downls { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.downit { position: relative; min-height: 225px; padding: 25px; background: #fff; border-bottom: 6px solid #e9be63; }
.downit > span { position: absolute; right: 18px; top: 18px; color: #8c3042; font: 900 11px Georgia, serif; }
.downit > i { display: block; margin-bottom: 35px; color: #123d32; font-size: 31px; }
.downit a { display: flex; justify-content: space-between; margin-top: 22px; padding-top: 14px; border-top: 1px solid #d9dfdc; color: #8c3042; font-size: 13px; font-weight: 900; }
.stepbg { background: #edf2ef; }
.timeln { max-width: 1050px; margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); position: relative; }
.timeln:before { content: ""; position: absolute; left: 9%; right: 9%; top: 31px; border-top: 2px solid #91a49d; }
.timeln article { position: relative; padding: 0 22px; text-align: center; }
.timeln span { position: relative; z-index: 2; display: grid; width: 64px; height: 64px; place-items: center; margin: 0 auto 25px; border-radius: 50%; background: #123d32; color: #e9be63; font: 900 14px Georgia, serif; }
.timeln b { font-size: 16px; }.timeln p { color: #68756f; font-size: 13px; line-height: 1.7; }
.faqbg { background: #fff; }
.faqlst { max-width: 930px; margin: 0 auto; border-left: 5px solid #e9be63; }
.faqitm { border-top: 1px solid #c9d2ce; }.faqitm:last-child { border-bottom: 1px solid #c9d2ce; }
.faqbtn { width: 100%; min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 0 19px; border: 0; background: transparent; text-align: left; font-weight: 800; cursor: pointer; }
.faqbtn i { color: #8c3042; font-size: 20px; }.faqans { display: none; padding: 0 55px 22px 19px; color: #637069; line-height: 1.8; }.faqans p { margin: 0; }.faqitm.active .faqans { display: block; }
.newsbg { background: #edf2ef; }
.newsls { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.newsit { padding: 26px; background: #fff; border-left: 4px solid #123d32; }
.newsit:nth-child(2n) { border-color: #8c3042; }.newsit > div { display: flex; justify-content: space-between; margin-bottom: 22px; color: #8b9691; font-size: 11px; }.newsit > div span { color: #8c3042; font-weight: 900; }
.ratebg { background: #e9be63; }
.ratels { columns: 3; column-gap: 18px; }
.rateit { break-inside: avoid; margin: 0 0 18px; padding: 23px; background: #fff; border-top: 5px solid #123d32; box-shadow: 0 7px 18px rgba(57, 45, 20, 0.12); }
.rateit:nth-child(2n) { padding-bottom: 39px; border-color: #8c3042; }
.rateit > div { display: flex; justify-content: space-between; font-size: 13px; font-weight: 900; }.rateit > div b { color: #8c3042; letter-spacing: 0; }
.rateit p { margin: 24px 0; line-height: 1.85; }.rateit time { color: #7c8983; font-size: 11px; }
.footer { padding: 36px 0 20px; background: #102d26; color: #fff; }
.footin { display: flex; align-items: center; gap: 24px; }.footnv { margin-left: auto; display: flex; gap: 15px; font-size: 12px; }.copyrt { width: min(1200px, calc(100% - 40px)); margin: 28px auto 0; padding-top: 17px; border-top: 1px solid #416057; color: #92a69f; text-align: center; font-size: 11px; }
@media (max-width: 767px) {
    .wraper, .navbox, .heroin, .footin { width: min(100% - 28px, 1200px); }
    .navbox { height: 66px; }.brand img { width: 40px; height: 40px; }.brand b { font-size: 15px; }
    .menbtn { display: block; margin-left: auto; }.topbar .getapp { display: none; }
    .navlst { display: none; position: absolute; left: 0; right: 0; top: 66px; padding: 10px 14px; border-top: 1px solid #416057; background: #123d32; }.navlst.open { display: grid; }.navlst a { padding: 10px; }
    .heroin { min-height: 0; padding: 57px 0 74px; grid-template-columns: 1fr; gap: 67px; }.herolg { width: 62px; height: 62px; }h1 { font-size: 39px; }.herotx p { font-size: 15px; }.herobt { width: 100%; }
    .herpic { width: min(330px, 100%); min-height: 500px; justify-self: center; }.herpic > img { width: 260px; right: 22px; }.stamp { right: -10px; }.note { left: -10px; min-width: 200px; }
    .secton { padding: 66px 0; }.secttl { margin-bottom: 34px; font-size: 27px; }
    .shots { display: flex; gap: 14px; overflow-x: auto; padding: 0 8px 15px 0; scroll-snap-type: x mandatory; }.shots figure { flex: 0 0 79%; scroll-snap-align: start; }
    .featls, .downls, .newsls { grid-template-columns: 1fr; }.featcr { min-height: 0; }
    .timeln { grid-template-columns: 1fr; gap: 18px; }.timeln:before { left: 31px; right: auto; top: 20px; bottom: 20px; border-top: 0; border-left: 2px solid #91a49d; }.timeln article { min-height: 82px; padding-left: 84px; text-align: left; }.timeln span { position: absolute; left: 0; top: 0; margin: 0; }.timeln p { margin-bottom: 0; }
    .faqbtn { padding-inline: 14px; }.faqans { padding-left: 14px; }.ratels { columns: 1; }
    .footin { align-items: flex-start; flex-wrap: wrap; }.footnv { order: 3; width: 100%; margin: 10px 0 0; display: grid; grid-template-columns: repeat(2, 1fr); }.footer .getapp { margin-left: auto; }
}
