:root{
    --bg:#FFF8EF;
    --white:#FFFFFF;
    --soft:#FFF2DF;
    --soft2:#FFF7EC;
    --blue:#F8FAFF;
    --orange:#FF8A00;
    --orange-light:#FFA726;
    --orange-dark:#E66A00;
    --gold:#FFC15A;
    --dark:#1E2430;
    --text:#222222;
    --muted:#5F6472;
    --footer:#1F1408;
    --footer-text:#FFF3E2;
    --grad:linear-gradient(135deg,#FFB23F 0%,#FF8A00 48%,#E66A00 100%);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",Arial,sans-serif;
    line-height:1.75;
    overflow-x:hidden;
}
a{color:var(--orange);text-decoration:none}
a:hover{color:var(--orange-dark)}
img{max-width:100%;height:auto;display:block}
.site-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:100;
    background:rgba(255,255,255,0.94);
    backdrop-filter:blur(12px);
    box-shadow:0 8px 24px rgba(230,106,0,0.08);
}
.top-nav{
    max-width:1200px;
    margin:0 auto;
    height:68px;
    padding:0 20px;
    display:flex;
    align-items:center;
    gap:24px;
}
.brand-logo{display:flex;align-items:center;flex:0 0 auto}
.brand-logo img{width:128px;max-height:44px;object-fit:contain}
.nav-core{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:24px;
    flex:1;
    min-width:0;
}
.nav-core a{
    color:var(--dark);
    position:relative;
    font-weight:600;
    white-space:nowrap;
    padding:8px 2px;
}
.nav-core a:hover,.nav-core a.active{color:var(--orange)}
.nav-core a.active::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:-12px;
    width:28px;
    height:3px;
    border-radius:999px;
    background:var(--orange);
    transform:translateX(-50%);
}
.main-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:8px 22px;
    background:var(--grad);
    color:#FFFFFF;
    border-radius:999px;
    font-weight:700;
    box-shadow:0 12px 26px rgba(230,106,0,0.20);
    border:none;
    transition:transform .2s ease, box-shadow .2s ease;
    white-space:nowrap;
}
.main-btn:hover{
    color:#FFFFFF;
    transform:translateY(-2px);
    box-shadow:0 16px 30px rgba(230,106,0,0.28);
}
.channel-bar{
    background:rgba(255,242,223,0.88);
    border-top:1px solid rgba(255,138,0,0.10);
    border-bottom:1px solid rgba(255,138,0,0.10);
    overflow-x:auto;
    overflow-y:hidden;
    white-space:nowrap;
}
.channel-inner{
    max-width:1200px;
    margin:0 auto;
    display:flex;
    gap:10px;
    padding:10px 20px;
}
.channel-bar a{
    color:var(--muted);
    border-radius:999px;
    padding:6px 14px;
    font-size:14px;
    flex:0 0 auto;
}
.channel-bar a:hover,.channel-bar a.active{
    color:var(--orange);
    background:rgba(255,138,0,0.08);
}
.mobile-menu-btn,.mobile-logo,.mobile-register{display:none}
.site-main{
    padding-top:112px;
}
.container{
    max-width:1200px;
    margin:0 auto;
    padding:0 20px;
}
.banner-slider{
    max-width:1200px;
    height:340px;
    margin:24px auto 34px;
    border-radius:22px;
    background:#FFFFFF;
    box-shadow:0 16px 40px rgba(230,106,0,0.10);
    overflow:hidden;
    position:relative;
    z-index:1;
}
.banner-slider .slide{
    display:none;
    width:100%;
    height:100%;
}
.banner-slider .slide.active{display:block}
.banner-slider img{
    width:100%;
    height:100%;
    object-fit:contain;
    background:#FFFFFF;
}
.slider-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:3;
    width:42px;
    height:42px;
    border:none;
    border-radius:999px;
    background:rgba(255,255,255,0.88);
    color:var(--orange);
    box-shadow:0 8px 20px rgba(230,106,0,0.14);
    font-size:28px;
    cursor:pointer;
}
.slider-arrow.prev{left:14px}
.slider-arrow.next{right:14px}
.slider-dots{
    position:absolute;
    left:50%;
    bottom:14px;
    transform:translateX(-50%);
    display:flex;
    gap:8px;
    z-index:3;
}
.slider-dots button{
    width:9px;
    height:9px;
    padding:0;
    border-radius:50%;
    border:none;
    background:rgba(255,138,0,0.24);
    cursor:pointer;
}
.slider-dots button.active{background:var(--orange)}
section{margin:34px 0}
.card,.zone-card,.info-card,.review-card,.faq-card,.notice-card,.hero-panel,.text-panel{
    background:#FFFFFF;
    border:1px solid rgba(255,138,0,0.12);
    box-shadow:0 16px 40px rgba(230,106,0,0.08);
    border-radius:22px;
}
.hero-panel{
    padding:36px;
    background:linear-gradient(135deg,#FFFFFF 0%,#FFF2DF 100%);
}
.hero-grid,.two-col,.split-grid{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:26px;
    align-items:center;
}
.hero-copy h1,.inner-hero h1{
    margin:0 0 14px;
    color:var(--orange-dark);
    font-size:clamp(30px,4vw,48px);
    line-height:1.2;
}
.hero-copy p,.inner-hero p{
    margin:0 0 18px;
    color:var(--muted);
    font-size:17px;
}
.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.text-link{
    color:var(--orange);
    font-weight:700;
}
.hero-visual,.content-visual{
    background:#FFFFFF;
    border-radius:20px;
    padding:16px;
    border:1px solid rgba(255,138,0,0.10);
}
.hero-visual img,.content-img,.zone-card img,.app-section img{
    width:100%;
    max-height:300px;
    object-fit:contain;
}
.section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
}
.section-head h2,.section-title{
    margin:0;
    color:var(--orange-dark);
    font-size:28px;
    line-height:1.25;
}
.section-head p{
    margin:0;
    color:var(--muted);
    max-width:560px;
}
.pill-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
}
.pill-item{
    background:#FFFFFF;
    border:1px solid rgba(255,138,0,0.13);
    border-radius:18px;
    padding:18px;
}
.pill-item h3{margin:0 0 6px;color:var(--dark)}
.pill-item p{margin:0 0 8px;color:var(--muted);font-size:14px}
.platform-strip{
    padding:24px 28px;
    background:linear-gradient(135deg,#FFFFFF 0%,#FFF2DF 68%,#FFF7EC 100%);
    border-radius:22px;
    border:1px solid rgba(255,138,0,0.12);
    color:var(--dark);
    box-shadow:0 16px 40px rgba(230,106,0,0.08);
}
.info-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}
.info-card{
    padding:22px;
}
.num{
    display:inline-flex;
    width:38px;
    height:38px;
    align-items:center;
    justify-content:center;
    color:var(--orange);
    background:#FFF2DF;
    border-radius:14px;
    font-weight:800;
    margin-bottom:8px;
}
.info-card h3,.card h3,.zone-card h3,.review-card h3,.faq-card h3{
    margin:0 0 8px;
    color:var(--dark);
}
.info-card p,.card p,.zone-card p,.review-card p,.faq-card p{
    margin:0;
    color:var(--muted);
}
.card,.zone-card{padding:22px}
.card ul,.zone-card ul{
    margin:12px 0 0;
    padding-left:20px;
    color:var(--muted);
}
.media-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}
.wall-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}
.zone-card img{height:170px;margin-bottom:14px}
.app-section{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:24px;
    align-items:center;
    padding:24px;
}
.feature-list{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
    margin:16px 0;
}
.feature-list span{
    background:#FFF7EC;
    color:var(--dark);
    border-radius:14px;
    padding:10px 12px;
    border:1px solid rgba(255,138,0,0.10);
}
.text-wall{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}
.review-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}
.review-card{
    padding:20px;
}
.review-card h3{font-size:16px}
.faq-list{
    display:grid;
    gap:14px;
}
.faq-card{padding:20px}
.about-summary{
    padding:28px;
}
.compliance-band{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:34px;
}
.notice-card{padding:18px}
.notice-card strong{color:var(--orange-dark)}
.notice-card p{margin:6px 0 0;color:var(--muted)}
.inner-hero{
    padding:34px;
    background:linear-gradient(135deg,#FFFFFF 0%,#FFF2DF 100%);
    border-radius:24px;
    border:1px solid rgba(255,138,0,0.12);
    box-shadow:0 16px 40px rgba(230,106,0,0.08);
}
.inner-hero .main-btn{margin-top:6px}
.inner-content{
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
}
.inner-lead{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:24px;
    align-items:center;
}
.inner-lead .text-panel{padding:26px}
.inner-lead .content-visual img{max-height:285px}
.detail-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}
.detail-grid .card{min-height:180px}
.highlight-list{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
}
.highlight-list .card{padding:20px}
.site-footer{
    background:var(--footer);
    color:var(--footer-text);
    margin-top:46px;
}
.footer-inner{
    max-width:1200px;
    margin:0 auto;
    padding:40px 20px;
    display:grid;
    grid-template-columns:1.2fr 1fr 1.1fr;
    gap:28px;
}
.footer-brand img{width:130px;max-height:48px;object-fit:contain;margin-bottom:12px}
.footer-brand p,.footer-reminder p{margin:0;color:rgba(255,243,226,0.78)}
.footer-links{display:grid;gap:10px;align-content:start}
.footer-links a{color:#FFF3E2}
.footer-links a:hover{color:var(--gold)}
.footer-reminder strong{color:var(--gold)}
.footer-bottom{
    border-top:1px solid rgba(255,243,226,0.16);
    text-align:center;
    padding:16px 20px;
    color:rgba(255,243,226,0.72);
}
.floating-service{
    position:fixed;
    right:18px;
    top:42%;
    z-index:60;
    display:grid;
    gap:10px;
}
.floating-service a{
    background:#FFFFFF;
    color:var(--orange);
    border:1px solid rgba(255,138,0,0.14);
    box-shadow:0 14px 30px rgba(230,106,0,0.10);
    border-radius:999px;
    padding:10px 14px;
    text-align:center;
    font-weight:700;
}
.floating-service a.register-link{
    background:var(--grad);
    color:#FFFFFF;
}
.drawer-mask,.mobile-drawer,.mobile-bottom-nav{display:none}
@media (max-width:980px){
    .nav-core{gap:16px}
    .banner-slider{height:280px;margin-left:20px;margin-right:20px}
    .pill-grid,.wall-grid,.review-grid,.detail-grid{grid-template-columns:repeat(2,1fr)}
    .info-grid,.compliance-band{grid-template-columns:repeat(2,1fr)}
    .footer-inner{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
    body{padding-bottom:72px}
    .site-main{padding-top:72px}
    .top-nav{
        height:64px;
        padding:0 14px;
        justify-content:space-between;
        gap:10px;
    }
    .brand-logo,.nav-core,.nav-register,.channel-bar,.floating-service{display:none}
    .mobile-menu-btn,.mobile-logo,.mobile-register{display:inline-flex}
    .mobile-menu-btn{
        width:42px;
        height:42px;
        border:none;
        border-radius:14px;
        background:#FFF2DF;
        color:var(--orange-dark);
        font-size:24px;
        align-items:center;
        justify-content:center;
    }
    .mobile-logo{position:absolute;left:50%;transform:translateX(-50%)}
    .mobile-logo img{width:112px;max-height:38px;object-fit:contain}
    .mobile-register{padding:7px 16px;min-height:36px}
    .drawer-mask{
        display:block;
        position:fixed;
        inset:0;
        background:rgba(31,20,8,0.38);
        z-index:140;
        opacity:0;
        pointer-events:none;
        transition:opacity .25s ease;
    }
    .mobile-drawer{
        display:block;
        position:fixed;
        top:0;
        left:0;
        bottom:0;
        width:84vw;
        max-width:320px;
        background:#FFFFFF;
        z-index:150;
        transform:translateX(-102%);
        transition:transform .25s ease;
        overflow-y:auto;
        box-shadow:20px 0 40px rgba(31,20,8,0.18);
    }
    body.drawer-open{overflow:hidden}
    body.drawer-open .drawer-mask{opacity:1;pointer-events:auto}
    body.drawer-open .mobile-drawer{transform:translateX(0)}
    .drawer-head{
        display:flex;
        justify-content:space-between;
        align-items:center;
        padding:18px;
        background:#FFF2DF;
    }
    .drawer-logo img{width:118px;max-height:44px;object-fit:contain}
    .drawer-close{
        width:38px;
        height:38px;
        border:none;
        border-radius:999px;
        background:#FFFFFF;
        color:var(--orange-dark);
        font-size:26px;
    }
    .drawer-nav{
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:10px;
        padding:18px;
    }
    .drawer-nav a{
        padding:10px 12px;
        border-radius:14px;
        color:var(--dark);
        background:#FFF7EC;
        font-weight:600;
    }
    .drawer-nav a.active{background:#FF8A00;color:#FFFFFF}
    .mobile-bottom-nav{
        position:fixed;
        left:12px;
        right:12px;
        bottom:10px;
        z-index:120;
        background:#FFFFFF;
        border:1px solid rgba(255,138,0,0.14);
        box-shadow:0 12px 30px rgba(230,106,0,0.16);
        border-radius:22px;
        display:grid;
        grid-template-columns:repeat(4,1fr);
        overflow:hidden;
    }
    .mobile-bottom-nav a{
        padding:10px 4px;
        text-align:center;
        color:var(--muted);
        font-size:13px;
        font-weight:700;
    }
    .mobile-bottom-nav a:hover{color:var(--orange)}
    .container{padding:0 14px}
    .banner-slider{
        height:190px;
        margin:16px 14px 24px;
        border-radius:18px;
    }
    .slider-arrow{
        width:34px;
        height:34px;
        font-size:22px;
    }
    .hero-panel,.inner-hero{padding:24px}
    .hero-grid,.two-col,.split-grid,.inner-lead,.app-section{
        grid-template-columns:1fr;
    }
    .section-head{display:block}
    .section-head h2{font-size:24px;margin-bottom:8px}
    .pill-grid,.wall-grid,.review-grid,.detail-grid,.info-grid,.compliance-band,.media-grid,.text-wall,.highlight-list{
        grid-template-columns:1fr;
    }
    .feature-list{grid-template-columns:1fr}
    .footer-inner{grid-template-columns:1fr}
    .zone-card img{height:auto;max-height:190px}
}

.image-showcase{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}
.image-showcase .zone-card{padding:16px}
.image-showcase .zone-card img{
    height:170px;
    object-fit:contain;
    margin-bottom:10px;
}
.long-copy p{margin:0 0 14px;color:var(--muted)}
.contact-list{
    display:grid;
    gap:12px;
    margin-top:12px;
}
.contact-list span{
    display:block;
    background:#FFF7EC;
    padding:12px 14px;
    border-radius:14px;
    color:var(--dark);
    border:1px solid rgba(255,138,0,0.10);
}
@media (max-width:760px){
    .image-showcase{grid-template-columns:1fr}
    .image-showcase .zone-card img{height:auto;max-height:190px}
}
