* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: #252a35; background: #f8f7f2; font-family: "Microsoft YaHei", "PingFang SC", sans-serif; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { color: inherit; font: inherit; }
.shell { width: 1200px; max-width: calc(100% - 40px); margin: 0 auto; }
.topbar { position: sticky; top: 0; z-index: 40; color: #f7f5ed; background: #20242d; }
.navin { height: 76px; display: flex; align-items: center; gap: 24px; }
.brand { flex: 0 0 auto; display: flex; align-items: center; gap: 11px; font-size: 19px; font-weight: 900; }
.brand img { width: 43px; height: 43px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 4px rgba(255,255,255,.08); }
.brand span, .brand small { display: block; }
.brand small { margin-top: 2px; color: #6fd3ad; font-size: 8px; font-weight: 700; }
.navls { flex: 1; display: flex; justify-content: center; gap: 20px; font-size: 13px; font-weight: 700; }
.navls a { padding: 29px 0; color: #dadbd7; transition: .2s; }
.navls a:hover { color: #6fd3ad; }
.getap { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 19px; color: #20242d; background: #f3c85b; border-radius: 6px; font-size: 13px; font-weight: 900; transition: .2s; }
.getap:hover { background: #ff7468; transform: translateY(-2px); }
.menux { display: none; border: 0; color: #fff; background: none; font-size: 25px; }
.hero { position: relative; overflow: hidden; color: #fff; background: #20242d; }
.herin { min-height: 790px; padding-top: 68px; }
.herct { position: relative; z-index: 4; max-width: 790px; margin: 0 auto; text-align: center; }
.badge { display: inline-flex; align-items: center; gap: 11px; padding: 7px 15px 7px 7px; color: #252a35; background: #f8f7f2; border-radius: 28px; text-align: left; }
.badge img { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; }
.badge span, .badge small { display: block; }
.badge span { font-weight: 900; }
.badge small { margin-bottom: 3px; color: #7f827f; font-size: 9px; font-weight: 500; }
h1 { margin: 27px 0 0; font-size: 58px; line-height: 1.16; letter-spacing: 0; }
.herds { max-width: 680px; margin: 21px auto 0; color: #c4c7c8; font-size: 16px; line-height: 1.9; }
.herac { display: flex; align-items: center; justify-content: center; gap: 25px; margin-top: 29px; }
.mainb { min-height: 58px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 0 18px 0 25px; color: #20242d; background: #6fd3ad; border-radius: 6px; font-weight: 900; box-shadow: 0 15px 32px rgba(0,0,0,.24); }
.mainb span { margin-left: 6px; padding: 5px 8px; color: #fff; background: #20242d; border-radius: 4px; font-size: 9px; }
.viewb { padding: 8px 0; border-bottom: 1px solid #727780; color: #e1e2df; font-size: 13px; font-weight: 700; }
.stage { position: relative; height: 350px; margin-top: 24px; }
.stage:before { content: ""; position: absolute; left: 50%; bottom: -170px; width: 900px; height: 390px; border-radius: 50%; background: #313641; transform: translateX(-50%); }
.stage figure { position: absolute; z-index: 2; overflow: hidden; margin: 0; padding: 7px; background: #f8f7f2; border-radius: 8px 8px 0 0; box-shadow: 0 23px 55px rgba(0,0,0,.34); }
.stage figure img { width: 100%; height: auto; }
.shotl { width: 190px; left: 180px; top: 82px; transform: rotate(-7deg); }
.shotm { width: 245px; left: 50%; top: 22px; transform: translateX(-50%); }
.shotr { width: 190px; right: 180px; top: 82px; transform: rotate(7deg); }
.sheet { position: absolute; z-index: 3; left: 20px; top: 142px; width: 170px; padding: 15px; color: #252a35; background: #f3c85b; border-radius: 6px; box-shadow: 0 13px 30px rgba(0,0,0,.25); transform: rotate(-4deg); }
.sheet span, .sheet b, .sheet p { display: block; }
.sheet span { font-size: 8px; font-weight: 900; }
.sheet b { margin-top: 7px; }
.sheet p { margin: 4px 0 0; font-size: 10px; }
.float { position: absolute; z-index: 4; right: 18px; top: 155px; display: flex; align-items: center; gap: 10px; padding: 13px 15px; color: #252a35; background: #ff7468; border-radius: 6px; box-shadow: 0 13px 30px rgba(0,0,0,.26); transform: rotate(4deg); }
.float i { font-size: 22px; }
.float span, .float b, .float small { display: block; }
.float b { font-size: 12px; }
.float small { margin-top: 3px; font-size: 9px; }
.block { padding: 94px 0; }
.sectt { margin-bottom: 45px; text-align: center; font-size: 33px; font-weight: 900; letter-spacing: 0; }
.sectt:after { content: ""; display: block; width: 42px; height: 5px; margin: 12px auto 0; border-radius: 3px; background: #ff7468; box-shadow: 13px 0 0 #f3c85b; }
.shots { display: grid; grid-template-columns: repeat(4, 1fr); gap: 19px; align-items: start; }
.shots figure { margin: 0; overflow: hidden; background: #fff; border-radius: 8px; box-shadow: 0 15px 36px rgba(38, 42, 51, .09); }
.shots figure:nth-child(even) { margin-top: 28px; }
.shots img { width: 100%; height: auto; aspect-ratio: 262 / 460; object-fit: contain; background: #ecece7; }
.shots figcaption { display: grid; grid-template-columns: 30px 1fr; padding: 15px; }
.shots figcaption span { grid-row: 1 / span 2; color: #ff7468; font-size: 10px; font-weight: 900; }
.shots figcaption b { font-size: 14px; }
.shots figcaption small { margin-top: 4px; color: #838680; font-size: 10px; }
.featb { color: #fff; background: #2c5c50; }
.featb .sectt:after { background: #f3c85b; box-shadow: 13px 0 0 #ff7468; }
.featg { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.featg article { position: relative; min-height: 210px; padding: 27px; background: #376b5e; border-radius: 7px; }
.featg article:nth-child(2), .featg article:nth-child(6) { background: #416f64; }
.featg article > span { position: absolute; right: 23px; top: 22px; color: #87a99f; font-size: 11px; }
.featg i { color: #f3c85b; font-size: 29px; }
.featg b { display: block; margin-top: 23px; font-size: 18px; }
.featg p { margin: 10px 0 0; color: #cee0da; font-size: 13px; line-height: 1.8; }
.downb { background: #f1ede4; }
.downg { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.downg a { min-height: 108px; display: flex; align-items: center; gap: 15px; padding: 20px; background: #fff; border-radius: 7px; box-shadow: 0 12px 30px rgba(53, 49, 41, .07); transition: .2s; }
.downg a:hover { transform: translateY(-4px); box-shadow: 0 18px 35px rgba(53, 49, 41, .12); }
.downg a > i { width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; color: #fff; background: #ff7468; border-radius: 50%; font-size: 23px; }
.downg span { flex: 1; }
.downg b, .downg small { display: block; }
.downg small { margin-top: 5px; color: #85847f; }
.downg em { font-style: normal; }
.stepb { background: #fff; }
.times { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; }
.times:before { content: ""; position: absolute; top: 39px; left: 9%; right: 9%; height: 2px; background: #d9ddd8; }
.times article { position: relative; text-align: center; }
.times span { position: absolute; z-index: 2; top: 4px; left: calc(50% + 25px); color: #ff7468; font-size: 10px; font-weight: 900; }
.times i { position: relative; z-index: 1; width: 78px; height: 78px; display: grid; place-items: center; margin: 0 auto 20px; color: #20242d; background: #f3c85b; border-radius: 50%; box-shadow: 0 0 0 9px #fff; font-size: 27px; }
.times b { font-size: 17px; }
.times p { color: #7d817d; font-size: 13px; line-height: 1.7; }
.faqbg { background: #dff2eb; }
.faqin { max-width: 900px; }
.faqls { padding: 9px 27px; background: #f8f7f2; border-radius: 8px; box-shadow: 0 17px 40px rgba(42, 88, 76, .09); }
.faqls article { border-bottom: 1px solid #dfe3de; }
.faqls article:last-child { border-bottom: 0; }
.faqls button { width: 100%; min-height: 70px; display: flex; align-items: center; justify-content: space-between; padding: 0; border: 0; background: none; text-align: left; font-weight: 800; cursor: pointer; }
.faqls button i { color: #e85f54; font-size: 21px; transition: .2s; }
.faqls article > p { display: none; margin: -2px 45px 21px 0; color: #6f7672; line-height: 1.8; }
.faqls .openx > p { display: block; }
.faqls .openx button i { transform: rotate(45deg); }
.newsb { background: #f8f7f2; }
.newsg { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.newsg article { padding: 26px 28px; background: #fff; border-radius: 7px; box-shadow: 0 11px 29px rgba(38, 42, 51, .06); }
.newsg article > div { display: flex; justify-content: space-between; color: #8b8e89; font-size: 10px; }
.newsg article > div span { color: #e85f54; font-weight: 900; }
.newsg article > b { display: block; margin-top: 16px; font-size: 18px; }
.newsg article > p { margin: 9px 0 18px; color: #727873; line-height: 1.8; }
.newsg article > em { font-size: 12px; font-style: normal; font-weight: 800; }
.rateb { background: #20242d; color: #fff; }
.rateb .sectt:after { background: #6fd3ad; box-shadow: 13px 0 0 #f3c85b; }
.rates { columns: 3; column-gap: 16px; }
.rates article { break-inside: avoid; margin-bottom: 16px; padding: 24px; color: #252a35; background: #f8f7f2; border-radius: 7px; }
.rates article:nth-child(2), .rates article:nth-child(5) { padding-bottom: 39px; }
.stars { color: #e8a927; }
.rates article > p { line-height: 1.85; }
.userx { display: flex; justify-content: space-between; gap: 10px; padding-top: 15px; border-top: 1px solid #ddded9; font-size: 11px; }
.userx time { color: #898b87; }
.footer { padding: 46px 0 20px; color: #f0f0eb; background: #161920; }
.footin { display: flex; align-items: center; gap: 25px; }
.footin nav { flex: 1; display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 19px; color: #aeb1b0; font-size: 12px; }
.copyr { margin-top: 34px; padding-top: 18px; border-top: 1px solid #30343d; color: #70747a; text-align: center; font-size: 11px; }
@media (max-width: 767px) {
    .shell { max-width: calc(100% - 28px); }
    .navin { height: 66px; gap: 11px; }
    .brand { font-size: 17px; }
    .brand img { width: 38px; height: 38px; }
    .menux { display: block; margin-left: auto; padding: 5px; }
    .navin > .getap { display: none; }
    .navls { display: none; position: absolute; top: 66px; left: 0; right: 0; padding: 11px 18px 18px; background: #20242d; box-shadow: 0 15px 25px rgba(0,0,0,.2); }
    .navls.openx { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 15px; }
    .navls a { padding: 12px 0; }
    .herin { min-height: 800px; padding-top: 50px; }
    h1 { font-size: 40px; }
    .herds { font-size: 14px; }
    .herac { display: block; }
    .mainb { width: 100%; }
    .viewb { display: table; margin: 20px auto 0; }
    .stage { height: 355px; margin-top: 30px; }
    .stage:before { width: 560px; }
    .shotl { width: 135px; left: 3px; top: 90px; }
    .shotm { width: 190px; top: 33px; }
    .shotr { width: 135px; right: 3px; top: 90px; }
    .sheet { display: none; }
    .float { right: 0; top: 240px; }
    .block { padding: 69px 0; }
    .sectt { margin-bottom: 34px; font-size: 28px; }
    .shots { display: flex; overflow-x: auto; gap: 14px; padding: 5px 0 22px; scroll-snap-type: x mandatory; }
    .shots figure { flex: 0 0 76%; margin: 0 !important; scroll-snap-align: start; }
    .featg, .downg, .newsg { grid-template-columns: 1fr; }
    .featg article { min-height: auto; }
    .times { display: block; padding-left: 60px; }
    .times:before { top: 31px; bottom: 30px; left: 25px; right: auto; width: 2px; height: auto; }
    .times article { min-height: 128px; text-align: left; }
    .times i { position: absolute; left: -60px; top: 0; width: 52px; height: 52px; margin: 0; font-size: 21px; box-shadow: 0 0 0 7px #fff; }
    .times span { left: auto; right: 0; }
    .faqls { padding: 4px 18px; }
    .faqls article > p { margin-right: 0; }
    .rates { columns: 1; }
    .footin { flex-direction: column; text-align: center; }
    .footin nav { justify-content: center; }
    .footin .getap { width: 100%; }
}
