* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { color: #24202a; background: #f6f0e6; font-family: "Microsoft YaHei", Arial, sans-serif; letter-spacing: 0; }
a { color: inherit; text-decoration: none; }
button { color: inherit; font: inherit; }
.topbar { position: sticky; top: 0; z-index: 50; color: #fffaf0; background: #3d1021; border-bottom: 4px solid #c9a34a; }
.inner { width: min(1200px, calc(100% - 40px)); height: 80px; margin: 0 auto; display: flex; align-items: center; gap: 26px; }
.logoa { display: flex; align-items: center; gap: 12px; flex: none; }
.logoa img { width: 48px; height: 48px; object-fit: cover; border: 2px solid #fffaf0; border-radius: 50%; }
.logoa span { display: flex; flex-direction: column; }
.logoa b { font-size: 19px; }
.logoa small { margin-top: 4px; color: #e9c769; font-size: 8px; font-weight: 800; }
.navset { margin-left: auto; display: flex; align-items: center; gap: 18px; }
.navset a, .footnv a { font-size: 13px; font-weight: 700; }
.navset a:hover, .footnv a:hover { color: #e9c769; }
.getapp { min-height: 44px; padding: 0 18px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; flex: none; color: #24202a; background: #e9c769; border: 1px solid #e9c769; border-radius: 2px; font-size: 14px; font-weight: 900; }
.getapp:hover { color: #ffffff; background: #167d85; border-color: #167d85; }
.menub { width: 42px; height: 42px; margin-left: auto; display: none; align-items: center; justify-content: center; color: #ffffff; background: transparent; border: 1px solid #a87687; font-size: 22px; cursor: pointer; }
.hero { overflow: hidden; color: #fffaf0; background: #3d1021; }
.stage { width: min(1200px, calc(100% - 40px)); min-height: 700px; margin: 0 auto; position: relative; display: grid; grid-template-columns: 48% 52%; border-left: 1px solid #71354a; border-right: 1px solid #71354a; }
.intro { padding: 87px 30px 70px 56px; position: relative; z-index: 3; display: flex; flex-direction: column; justify-content: center; }
.eyebrw { color: #e9c769; font-family: Georgia, serif; font-size: 11px; font-weight: 700; }
.logrow { margin: 29px 0 24px; display: flex; align-items: center; gap: 15px; }
.logrow img { width: 72px; height: 72px; object-fit: cover; border: 3px solid #fffaf0; border-radius: 50%; box-shadow: 8px 8px 0 #167d85; }
.logrow > span { display: flex; flex-direction: column; font-size: 25px; font-weight: 900; }
.logrow small { margin-top: 4px; color: #e9c769; font-size: 11px; }
.intro h1 { max-width: 590px; font-family: Georgia, "Microsoft YaHei", serif; font-size: 59px; line-height: 1.16; font-weight: 900; }
.intro > p { max-width: 555px; margin-top: 25px; color: #eadde1; font-size: 16px; line-height: 1.9; }
.mainbt { width: 230px; min-height: 59px; margin-top: 34px; padding: 0 22px; display: flex; align-items: center; justify-content: space-between; color: #24202a; background: #e9c769; box-shadow: 7px 7px 0 #167d85; font-size: 17px; font-weight: 900; }
.mainbt:hover { color: #ffffff; background: #167d85; box-shadow: 7px 7px 0 #e9c769; }
.visual { min-width: 0; position: relative; display: flex; align-items: flex-end; justify-content: center; background: #167d85; border-left: 1px solid #e9c769; }
.visual::before { content: ""; width: 310px; height: 520px; position: absolute; top: 90px; left: 50%; border: 1px solid #8fc5c9; transform: translateX(-50%) rotate(7deg); }
.tower { width: 300px; height: 570px; position: relative; z-index: 2; overflow: hidden; background: #ffffff; border: 9px solid #27202b; border-bottom: 0; border-radius: 32px 32px 0 0; box-shadow: 18px 0 0 rgba(30, 15, 24, .35); }
.tower img { width: 100%; height: auto; display: block; }
.seal { width: 96px; height: 96px; position: absolute; top: 52px; right: 34px; z-index: 4; display: flex; align-items: center; justify-content: center; color: #3d1021; background: #e9c769; border: 4px double #3d1021; border-radius: 50%; font-family: Georgia, serif; font-size: 18px; line-height: 1.05; text-align: center; font-weight: 900; transform: rotate(9deg); }
.chip { padding: 14px 18px; position: absolute; left: 24px; bottom: 43px; z-index: 4; display: flex; flex-direction: column; color: #3d1021; background: #fffaf0; border-left: 5px solid #e9c769; box-shadow: 6px 6px 0 #3d1021; }
.chip span { font-size: 9px; font-weight: 800; }
.chip b { margin-top: 4px; font-size: 13px; }
.scene { padding: 92px 0; border-bottom: 1px solid #d4cabc; }
.canvas { width: min(1200px, calc(100% - 40px)); margin: 0 auto; }
.title { margin-bottom: 48px; display: flex; flex-direction: column; align-items: center; color: #3d1021; font-family: Georgia, "Microsoft YaHei", serif; font-size: 37px; text-align: center; font-weight: 900; }
.title span { margin-bottom: 9px; color: #167d85; font-family: Arial, sans-serif; font-size: 10px; font-weight: 900; }
.showbg { background: #f6f0e6; }
.shots { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.shots figure { min-width: 0; padding: 10px; background: #fffaf0; border: 1px solid #bcae9b; box-shadow: 0 14px 28px rgba(61, 16, 33, .09); }
.shots figure:nth-child(even) { margin-top: 30px; }
.shots img { width: 100%; height: auto; display: block; }
.shots figcaption { padding: 14px 5px 5px; display: flex; align-items: center; justify-content: space-between; }
.shots figcaption span { color: #167d85; font-family: Georgia, serif; font-size: 20px; font-weight: 900; }
.shots figcaption b { font-size: 14px; }
.featbg { color: #fffaf0; background: #24202a; }
.featbg .title { color: #fffaf0; }
.featbg .title span { color: #e9c769; }
.featgr, .downgr { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.featcr { min-height: 235px; padding: 29px; border: 1px solid #625968; background: #302b35; }
.featcr > div { margin-bottom: 25px; display: flex; align-items: center; justify-content: space-between; }
.featcr i { width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; color: #24202a; background: #e9c769; font-size: 24px; }
.featcr:nth-child(2n) i { color: #ffffff; background: #167d85; }
.featcr > div span { color: #8f8494; font-family: Georgia, serif; font-size: 18px; }
.featcr > b, .downcr > div b { display: block; font-size: 20px; }
.featcr p { margin-top: 12px; color: #c8becb; font-size: 14px; line-height: 1.8; }
.downbg { background: #e9c769; }
.downcr { min-height: 250px; padding: 27px; background: #fffaf0; border-top: 5px solid #3d1021; }
.downcr > span { color: #167d85; font-size: 9px; font-weight: 900; }
.downcr > div { margin: 22px 0 12px; display: flex; align-items: center; gap: 14px; }
.downcr > div i { width: 45px; height: 45px; display: flex; align-items: center; justify-content: center; color: #ffffff; background: #3d1021; font-size: 23px; }
.downcr p { color: #6c5d5f; font-size: 14px; line-height: 1.7; }
.downcr > a { margin-top: 23px; padding-top: 15px; display: flex; align-items: center; justify-content: space-between; color: #3d1021; border-top: 1px solid #c8b98d; font-size: 14px; font-weight: 900; }
.stepbg { background: #f6f0e6; }
.timeln { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.timeln::before { content: ""; height: 2px; position: absolute; top: 33px; left: 9%; right: 9%; background: #167d85; }
.timeln article { position: relative; z-index: 2; text-align: center; }
.timeln article > span { width: 68px; height: 68px; margin: 0 auto 25px; display: flex; align-items: center; justify-content: center; color: #ffffff; background: #3d1021; border: 7px solid #f6f0e6; border-radius: 50%; box-shadow: 0 0 0 1px #167d85; font-family: Georgia, serif; font-weight: 900; }
.timeln article > i { display: block; color: #167d85; font-size: 28px; }
.timeln article > b { margin-top: 13px; display: block; font-size: 18px; }
.timeln article > p { margin-top: 8px; color: #756a6e; font-size: 13px; line-height: 1.7; }
.faqbg { color: #fffaf0; background: #167d85; }
.faqbg .title, .faqbg .title span { color: #fffaf0; }
.faqset { max-width: 990px; margin: 0 auto; border-top: 1px solid #8fc5c9; }
.faqrow { border-bottom: 1px solid #8fc5c9; }
.faqbtn { width: 100%; min-height: 76px; padding: 18px 10px; display: grid; grid-template-columns: 54px 1fr 40px; align-items: center; gap: 12px; color: #ffffff; background: transparent; border: 0; text-align: left; cursor: pointer; }
.faqbtn > span { color: #e9c769; font-family: Georgia, serif; font-size: 17px; font-weight: 900; }
.faqbtn > b { font-size: 16px; }
.faqbtn > i { width: 38px; height: 38px; display: flex; align-items: center; justify-content: center; color: #3d1021; background: #e9c769; font-size: 19px; }
.answer { display: none; }
.answer p { max-width: 820px; padding: 0 10px 24px 76px; color: #d6eeee; font-size: 14px; line-height: 1.8; }
.faqrow.active { background: rgba(20, 80, 85, .35); }
.faqrow.active .answer { display: block; }
.newsbg { background: #fffaf0; }
.newsgr { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: #c9bfae; border: 1px solid #c9bfae; }
.newscr { min-height: 220px; padding: 28px; background: #fffaf0; }
.newscr > div { margin-bottom: 23px; display: flex; justify-content: space-between; gap: 15px; color: #85787b; font-size: 10px; }
.newscr > div span { color: #167d85; font-weight: 900; }
.newscr > b { display: block; color: #3d1021; font-family: Georgia, "Microsoft YaHei", serif; font-size: 19px; line-height: 1.5; }
.newscr > p { margin-top: 12px; color: #756a6e; font-size: 14px; line-height: 1.8; }
.ratebg { background: #f6f0e6; }
.rategr { column-count: 3; column-gap: 20px; }
.ratecr { width: 100%; margin-bottom: 20px; padding: 25px; display: inline-block; background: #fffaf0; border: 1px solid #c8bcac; border-top: 4px solid #167d85; break-inside: avoid; }
.ratecr:nth-child(2n) { border-top-color: #3d1021; }
.ratecr > div { display: flex; justify-content: space-between; gap: 10px; font-size: 13px; font-weight: 900; }
.ratecr > div b { color: #c9a34a; font-size: 12px; }
.ratecr p { margin: 20px 0; color: #5f555a; font-size: 14px; line-height: 1.85; }
.ratecr time { color: #8c8180; font-size: 10px; }
.footer { color: #fffaf0; background: #3d1021; }
.footin { width: min(1200px, calc(100% - 40px)); min-height: 150px; margin: 0 auto; display: flex; align-items: center; gap: 28px; }
.footnv { margin-left: auto; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 13px 18px; }
.copyrt { padding: 17px 20px; color: #a87b8b; border-top: 1px solid #71354a; font-size: 10px; text-align: center; }
@media (max-width: 767px) {
    .inner { width: calc(100% - 28px); height: 70px; gap: 10px; }
    .logoa img { width: 42px; height: 42px; }
    .logoa b { font-size: 16px; }
    .logoa small { font-size: 7px; }
    .menub { display: flex; }
    .inner > .getapp { display: none; }
    .navset { width: 100%; padding: 9px 14px 17px; position: absolute; top: 70px; left: 0; display: none; grid-template-columns: repeat(2, 1fr); gap: 0; background: #3d1021; border-bottom: 4px solid #e9c769; }
    .navset.open { display: grid; }
    .navset a { padding: 12px 5px; border-bottom: 1px solid #71354a; text-align: center; }
    .stage { width: 100%; min-height: 0; grid-template-columns: 1fr; border: 0; }
    .intro { padding: 50px 20px 58px; }
    .logrow { margin: 25px 0 21px; }
    .logrow img { width: 63px; height: 63px; }
    .intro h1 { font-size: 40px; line-height: 1.18; }
    .intro > p { font-size: 15px; }
    .mainbt { width: 100%; }
    .visual { height: 550px; border-top: 1px solid #e9c769; border-left: 0; }
    .visual::before { width: 250px; height: 440px; top: 70px; }
    .tower { width: 255px; height: 500px; }
    .seal { width: 75px; height: 75px; top: 20px; right: 14px; font-size: 14px; }
    .chip { left: 10px; bottom: 30px; }
    .scene { padding: 68px 0; }
    .canvas { width: calc(100% - 28px); }
    .title { margin-bottom: 35px; font-size: 30px; }
    .shots { margin-right: -14px; padding: 0 14px 35px 0; display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; }
    .shots figure { width: 76vw; max-width: 285px; flex: 0 0 auto; scroll-snap-align: start; }
    .shots figure:nth-child(even) { margin-top: 0; }
    .featgr, .downgr, .newsgr { grid-template-columns: 1fr; }
    .featcr, .downcr { min-height: 0; }
    .timeln { grid-template-columns: 1fr; gap: 0; }
    .timeln::before { width: 2px; height: auto; top: 0; bottom: 30px; left: 33px; right: auto; }
    .timeln article { padding-bottom: 22px; display: grid; grid-template-columns: 68px 42px 1fr; align-items: center; gap: 10px; text-align: left; }
    .timeln article > span { margin: 0; }
    .timeln article > i, .timeln article > b { margin: 0; }
    .timeln article > p { grid-column: 3; margin: -10px 0 0; }
    .faqbtn { padding: 16px 6px; grid-template-columns: 35px 1fr 36px; gap: 8px; }
    .faqbtn > b { font-size: 14px; line-height: 1.55; }
    .answer p { padding: 0 6px 21px 49px; }
    .rategr { column-count: 1; }
    .footin { width: calc(100% - 28px); padding: 42px 0; align-items: flex-start; flex-direction: column; }
    .footnv { margin: 0; justify-content: flex-start; }
    .footer .getapp { width: 100%; }
}
