/* roulang page: index */
:root {
            --ink: #18252c;
            --muted: #68777b;
            --paper: #f7f6f1;
            --surface: #fffefa;
            --line: #dfe5df;
            --sage: #739382;
            --sage-dark: #456c5a;
            --clay: #c47759;
            --gold: #c89d5e;
            --shadow: 0 18px 50px rgba(40, 61, 51, .10);
            --radius: 18px;
        }
        * { box-sizing: border-box; }
        html { scroll-behavior: smooth; }
        body {
            margin: 0;
            color: var(--ink);
            background: var(--paper);
            font-family: 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
            line-height: 1.75;
            text-rendering: optimizeLegibility;
        }
        a { color: inherit; text-decoration: none; }
        img { display: block; width: 100%; object-fit: cover; }
        button, input { font: inherit; }
        button { cursor: pointer; }
        .container { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }
        .site-header {
            position: sticky; top: 0; z-index: 30;
            background: rgba(247, 246, 241, .92);
            border-bottom: 1px solid rgba(223,229,223,.9);
            backdrop-filter: blur(18px);
        }
        .nav-wrap { min-height: 76px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
        .brand { display:flex; align-items:center; gap:12px; min-width:250px; }
        .brand-mark {
            width:42px; height:42px; display:grid; place-items:center;
            color:#fff; background:var(--sage-dark); border-radius:12px;
            font-size:20px; font-weight:800; box-shadow:0 8px 18px rgba(69,108,90,.22);
        }
        .brand-name { font-size:18px; font-weight:800; letter-spacing:0; white-space:nowrap; }
        .brand-sub { display:block; color:var(--muted); font-size:11px; line-height:1.2; font-weight:500; }
        .nav-links { display:flex; align-items:center; gap:6px; }
        .nav-links a {
            padding:9px 12px; color:#526268; border-radius:10px; font-size:14px;
            transition:color .2s, background .2s, transform .2s;
        }
        .nav-links a:hover, .nav-links a.active { color:var(--sage-dark); background:#e8eee8; }
        .nav-cta { color:#fff !important; background:var(--clay) !important; padding:10px 16px !important; }
        .nav-cta:hover { background:#a95e42 !important; transform:translateY(-1px); }
        .menu-btn { display:none; border:1px solid var(--line); background:var(--surface); color:var(--ink); border-radius:10px; padding:8px 11px; }
        .hero {
            min-height: 650px; display:flex; align-items:center; position:relative; overflow:hidden;
            background:
                linear-gradient(90deg, rgba(25,45,39,.86) 0%, rgba(25,45,39,.60) 47%, rgba(25,45,39,.20) 100%),
                url('https://images.unsplash.com/photo-1517604931442-7e0c8ed2963c?auto=format&fit=crop&w=1900&q=88') center/cover;
        }
        .hero:after { content:""; position:absolute; inset:auto 0 0; height:180px; background:linear-gradient(transparent, var(--paper)); }
        .hero-inner { position:relative; z-index:1; padding:110px 0 130px; color:#fff; max-width:700px; }
        .eyebrow { display:inline-flex; align-items:center; gap:8px; color:#e9c990; font-size:13px; font-weight:700; letter-spacing:.08em; }
        .eyebrow:before { content:""; width:28px; height:1px; background:#e9c990; }
        h1 { margin:18px 0 20px; font-size:clamp(38px, 5vw, 68px); line-height:1.15; letter-spacing:0; font-weight:900; }
        .hero h1 em { color:#e9c990; font-style:normal; }
        .hero-lead { max-width:650px; color:rgba(255,255,255,.86); font-size:17px; line-height:1.9; }
        .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
        .btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:0 20px; border-radius:11px; border:1px solid transparent; font-weight:700; font-size:14px; transition:all .2s; }
        .btn-primary { background:var(--clay); color:#fff; box-shadow:0 10px 20px rgba(196,119,89,.25); }
        .btn-primary:hover { background:#aa5c40; transform:translateY(-2px); }
        .btn-light { color:#fff; border-color:rgba(255,255,255,.42); background:rgba(255,255,255,.10); }
        .btn-light:hover { background:rgba(255,255,255,.2); }
        .section { padding:92px 0; }
        .section-alt { background:#eef2ec; }
        .section-dark { color:#fff; background:#223632; }
        .section-head { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:30px; }
        .section-kicker { color:var(--clay); font-size:12px; font-weight:800; letter-spacing:.12em; }
        h2 { margin:7px 0 0; font-size:clamp(25px,3vw,38px); line-height:1.25; letter-spacing:0; }
        .section-desc { max-width:600px; margin:12px 0 0; color:var(--muted); font-size:15px; }
        .section-dark .section-desc { color:#bdcbc3; }
        .text-link { color:var(--sage-dark); font-size:14px; font-weight:800; white-space:nowrap; }
        .text-link:hover { color:var(--clay); }
        .value-grid { display:grid; grid-template-columns:1.2fr .8fr .8fr; gap:18px; }
        .value-card { padding:28px; min-height:190px; border:1px solid var(--line); background:var(--surface); border-radius:var(--radius); box-shadow:var(--shadow); }
        .value-card.featured { background:var(--sage-dark); color:#fff; border-color:var(--sage-dark); }
        .value-icon { font-size:27px; color:var(--clay); margin-bottom:24px; }
        .value-card h3 { margin:0 0 10px; font-size:20px; }
        .value-card p { margin:0; color:var(--muted); font-size:14px; }
        .featured p { color:#d9e3dc; }
        .rail { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:18px; }
        .content-card { overflow:hidden; border:1px solid var(--line); background:var(--surface); border-radius:var(--radius); transition:transform .25s, box-shadow .25s; }
        .content-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
        .card-image { position:relative; aspect-ratio:4/5; overflow:hidden; background:#dce6df; }
        .card-image img { height:100%; transition:transform .5s; }
        .content-card:hover .card-image img { transform:scale(1.045); }
        .badge { position:absolute; top:12px; left:12px; color:#fff; background:rgba(30,53,44,.82); border-radius:7px; padding:4px 8px; font-size:11px; font-weight:800; backdrop-filter:blur(5px); }
        .rating { color:#bd8d43; font-size:13px; font-weight:800; }
        .card-body { padding:17px; }
        .card-body h3 { margin:0 0 7px; font-size:17px; line-height:1.4; }
        .card-body p { color:var(--muted); margin:0; font-size:13px; line-height:1.65; }
        .meta { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:13px; color:#80908b; font-size:12px; }
        .feature-stage { display:grid; grid-template-columns:1fr 1.2fr; gap:54px; align-items:center; }
        .feature-stage h2 { max-width:520px; }
        .feature-copy { color:var(--muted); font-size:15px; }
        .check-list { display:grid; gap:13px; margin:25px 0 0; padding:0; list-style:none; }
        .check-list li { display:flex; gap:12px; align-items:flex-start; font-size:14px; }
        .check-list strong { color:var(--sage-dark); }
        .check { flex:0 0 24px; height:24px; display:grid; place-items:center; color:#fff; background:var(--clay); border-radius:50%; font-size:12px; }
        .visual-panel { position:relative; padding:15px; background:#d9e4db; border-radius:24px; }
        .visual-panel img { aspect-ratio:1.35/1; border-radius:16px; }
        .visual-note { position:absolute; right:-18px; bottom:28px; width:190px; padding:17px; color:#fff; background:var(--sage-dark); border-radius:14px; box-shadow:var(--shadow); }
        .visual-note strong { display:block; font-size:25px; line-height:1.2; }
        .visual-note span { font-size:12px; color:#d8e4dc; }
        .steps { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
        .step { padding:26px 0 0; border-top:2px solid var(--line); position:relative; }
        .step-number { color:var(--clay); font-size:13px; font-weight:900; letter-spacing:.08em; }
        .step h3 { margin:13px 0 8px; font-size:20px; }
        .step p { margin:0; color:var(--muted); font-size:14px; }
        .channel-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
        .channel { padding:22px; border:1px solid var(--line); background:rgba(255,255,255,.6); border-radius:14px; }
        .channel h3 { margin:0 0 8px; font-size:17px; }
        .channel p { margin:0; color:var(--muted); font-size:13px; }
        .rank-layout { display:grid; grid-template-columns:1.1fr .9fr; gap:40px; align-items:start; }
        .rank-list { margin:0; padding:0; list-style:none; }
        .rank-item { display:grid; grid-template-columns:42px 1fr auto auto; gap:16px; align-items:center; padding:16px 0; border-bottom:1px solid rgba(223,229,223,.55); }
        .rank-num { color:var(--clay); font-size:21px; font-weight:900; }
        .rank-item strong { display:block; font-size:15px; }
        .rank-item small { color:#8b9995; font-size:12px; }
        .heat { color:#ca7654; font-size:13px; font-weight:800; }
        .quote-box { padding:34px; background:#fffdf7; border:1px solid #eadfca; border-radius:20px; }
        .quote-mark { color:var(--gold); font-size:48px; line-height:1; }
        blockquote { margin:10px 0 25px; font-size:20px; line-height:1.65; font-weight:700; }
        .quote-user { color:var(--muted); font-size:13px; }
        .stats { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #486259; border-bottom:1px solid #486259; }
        .stat { padding:28px 18px; border-right:1px solid #486259; }
        .stat:last-child { border-right:0; }
        .stat strong { display:block; color:#e8c98f; font-size:32px; line-height:1.2; }
        .stat span { color:#c3d0c8; font-size:13px; }
        .news-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
        .news-item { display:grid; grid-template-columns:116px 1fr; gap:16px; align-items:center; padding:14px; background:var(--surface); border:1px solid var(--line); border-radius:14px; transition:box-shadow .2s, transform .2s; }
        .news-item:hover { transform:translateY(-3px); box-shadow:var(--shadow); }
        .news-item img { aspect-ratio:1.2/1; border-radius:10px; }
        .news-item h3 { margin:0 0 5px; font-size:15px; line-height:1.45; }
        .news-item time { color:#8b9995; font-size:12px; }
        .faq-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
        details { padding:19px 20px; background:var(--surface); border:1px solid var(--line); border-radius:12px; }
        summary { cursor:pointer; font-weight:800; font-size:15px; }
        details p { color:var(--muted); margin:12px 0 0; font-size:14px; line-height:1.8; }
        .closing { text-align:center; padding:88px 20px; background:#dfe9df; }
        .closing h2 { max-width:650px; margin:0 auto 14px; }
        .closing p { max-width:650px; margin:0 auto 25px; color:var(--muted); }
        footer { color:#c0cec6; background:#182a27; padding:56px 0 24px; }
        .footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:35px; padding-bottom:40px; }
        footer .brand-name { color:#fff; }
        footer .brand-sub { color:#8fa49a; }
        .footer-title { color:#fff; font-size:14px; font-weight:800; margin-bottom:14px; }
        footer p, footer a { color:#9db0a7; font-size:13px; }
        footer a { display:block; margin:7px 0; transition:color .2s; }
        footer a:hover { color:#e8c98f; }
        .copyright { display:flex; justify-content:space-between; gap:20px; padding-top:20px; border-top:1px solid #355048; color:#80958b; font-size:12px; }
        :focus-visible { outline:3px solid rgba(196,119,89,.45); outline-offset:3px; }
        @media (max-width: 1024px) {
            .rail { grid-template-columns:repeat(3,1fr); }
            .value-grid, .rank-layout { grid-template-columns:1fr 1fr; }
            .value-card:first-child { grid-column:span 2; }
            .feature-stage { gap:30px; }
            .channel-grid { grid-template-columns:repeat(2,1fr); }
            .news-grid { grid-template-columns:1fr 1fr; }
            .footer-grid { grid-template-columns:1.4fr 1fr 1fr; }
        }
        @media (max-width: 768px) {
            .container { width:min(100% - 28px, 600px); }
            .nav-wrap { min-height:66px; }
            .brand { min-width:0; }
            .brand-name { font-size:15px; }
            .brand-sub { display:none; }
            .menu-btn { display:block; }
            .nav-links { display:none; position:absolute; left:14px; right:14px; top:70px; padding:10px; flex-direction:column; align-items:stretch; background:var(--surface); border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); }
            .nav-links.open { display:flex; }
            .nav-links a { text-align:center; }
            .hero { min-height:610px; }
            .hero-inner { padding:90px 0 125px; }
            .hero-lead { font-size:15px; }
            .section { padding:66px 0; }
            .section-head { display:block; }
            .section-head .text-link { display:inline-block; margin-top:15px; }
            .rail { grid-template-columns:repeat(2,1fr); gap:12px; }
            .value-grid, .feature-stage, .rank-layout, .faq-grid { grid-template-columns:1fr; }
            .value-card:first-child { grid-column:auto; }
            .visual-note { right:10px; bottom:20px; }
            .steps { grid-template-columns:1fr; gap:25px; }
            .channel-grid { grid-template-columns:1fr 1fr; }
            .stats { grid-template-columns:1fr 1fr; }
            .stat:nth-child(2) { border-right:0; }
            .stat:nth-child(-n+2) { border-bottom:1px solid #486259; }
            .news-grid { grid-template-columns:1fr; }
            .footer-grid { grid-template-columns:1fr 1fr; }
            .footer-grid > div:first-child { grid-column:span 2; }
            .copyright { display:block; }
            .copyright span { display:block; margin-top:7px; }
        }
        @media (max-width: 520px) {
            h1 { font-size:37px; }
            .hero-actions .btn { width:100%; }
            .rail { grid-template-columns:1fr 1fr; }
            .card-body { padding:13px; }
            .card-body h3 { font-size:15px; }
            .channel-grid { grid-template-columns:1fr; }
            .rank-item { grid-template-columns:32px 1fr auto; gap:10px; }
            .rank-item .heat { display:none; }
            .footer-grid { grid-template-columns:1fr; }
            .footer-grid > div:first-child { grid-column:auto; }
        }

/* roulang page: category1 */
:root {
 --ink:#18252c;
 --muted:#68777b;
 --paper:#f7f6f1;
 --surface:#fffefa;
 --line:#dfe5df;
 --sage:#739382;
 --sage-dark:#456c5a;
 --clay:#c47759;
 --gold:#c89d5e;
 --shadow:0 18px 50px rgba(40,61,51,.10);
 --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--paper);font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.75;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;object-fit:cover}
button,input{font:inherit}
button{cursor:pointer}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:30;background:rgba(247,246,241,.94);border-bottom:1px solid rgba(223,229,223,.9);backdrop-filter:blur(18px)}
.nav-wrap{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;min-width:250px}
.brand-mark{width:42px;height:42px;display:grid;place-items:center;color:#fff;background:var(--sage-dark);border-radius:12px;font-size:20px;font-weight:800;box-shadow:0 8px 18px rgba(69,108,90,.22)}
.brand-name{font-size:18px;font-weight:800;letter-spacing:0;white-space:nowrap}
.brand-sub{display:block;color:var(--muted);font-size:11px;line-height:1.2;font-weight:500}
.nav-links{display:flex;align-items:center;gap:6px}
.nav-links a{padding:9px 12px;color:#526268;border-radius:10px;font-size:14px;transition:color .2s,background .2s,transform .2s}
.nav-links a:hover,.nav-links a.active{color:var(--sage-dark);background:#e8eee8}
.nav-cta{color:#fff!important;background:var(--clay)!important;padding:10px 16px!important}
.nav-cta:hover{background:#a95e42!important;transform:translateY(-1px)}
.menu-btn{display:none;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:10px;padding:8px 11px}
.page-intro{padding:82px 0 68px;background:#eef2ec;border-bottom:1px solid var(--line)}
.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--clay);font-size:12px;font-weight:800;letter-spacing:.12em}
.eyebrow:before{content:"";width:28px;height:1px;background:var(--clay)}
h1,h2,h3,p{margin-top:0}
h1{margin-bottom:18px;font-size:clamp(38px,5vw,68px);line-height:1.16;letter-spacing:-1px}
h1 em{color:var(--clay);font-style:normal}
.intro-text{max-width:650px;color:var(--muted);font-size:17px}
.intro-aside{padding:25px 26px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.intro-aside strong{display:block;margin-bottom:8px;color:var(--sage-dark);font-size:15px}
.intro-aside p{margin:0;color:var(--muted);font-size:14px}
.section{padding:82px 0}
.section-alt{background:#eef2ec}
.section-dark{color:#fff;background:#223632}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:30px}
.section-kicker{color:var(--clay);font-size:12px;font-weight:800;letter-spacing:.12em}
.section h2{margin:5px 0 0;font-size:clamp(27px,3.5vw,42px);line-height:1.25}
.section-desc{max-width:620px;margin:12px 0 0;color:var(--muted);font-size:15px}
.section-dark .section-desc{color:#bdcbc3}
.text-link{color:var(--sage-dark);font-size:14px;font-weight:800;white-space:nowrap}
.text-link:hover{color:var(--clay)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:11px;border:1px solid transparent;font-weight:700;font-size:14px;transition:all .2s}
.btn-primary{background:var(--clay);color:#fff;box-shadow:0 10px 20px rgba(196,119,89,.22)}
.btn-primary:hover{background:#aa5c40;transform:translateY(-2px)}
.btn-outline{color:var(--sage-dark);border-color:#b8c9bc;background:transparent}
.btn-outline:hover{background:#e8eee8;border-color:var(--sage)}
.feature-layout{display:grid;grid-template-columns:1.06fr .94fr;gap:22px}
.feature-large{position:relative;min-height:430px;overflow:hidden;border-radius:var(--radius);background:#30483d}
.feature-large img{position:absolute;inset:0;height:100%;transition:transform .5s}
.feature-large:hover img{transform:scale(1.04)}
.feature-large:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(18,34,29,.85))}
.feature-content{position:absolute;z-index:1;right:30px;bottom:27px;left:30px;color:#fff}
.feature-content h3{margin:6px 0 8px;font-size:29px;line-height:1.3}
.feature-content p{max-width:560px;margin:0;color:rgba(255,255,255,.82);font-size:14px}
.story-stack{display:grid;gap:14px}
.story-item{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:15px;transition:transform .2s,box-shadow .2s}
.story-item:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.story-item img{height:126px;border-radius:10px}
.story-item h3{margin:3px 0 6px;font-size:17px;line-height:1.4}
.story-item p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.tag{display:inline-block;color:var(--sage-dark);background:#e8eee8;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:800}
.matrix{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.matrix-item{min-height:190px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);transition:transform .2s,background .2s}
.matrix-item:nth-child(2){background:#f4ede5}
.matrix-item:nth-child(3){background:#e6eee8}
.matrix-item:nth-child(4){background:#f1f0e8}
.matrix-item:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.matrix-no{color:var(--clay);font-size:13px;font-weight:800}
.matrix-item h3{margin:20px 0 8px;font-size:20px}
.matrix-item p{margin:0;color:var(--muted);font-size:13px}
.data-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}
.data-point{padding:27px 20px;border-right:1px solid rgba(255,255,255,.18)}
.data-point:last-child{border-right:0}
.data-point strong{display:block;color:#f0d29a;font-size:32px;line-height:1.2}
.data-point span{display:block;margin-top:5px;color:#c5d2c9;font-size:13px}
.timeline{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.timeline:before{content:"";position:absolute;top:17px;right:10%;left:10%;height:1px;background:#cbd8cd}
.timeline-step{position:relative;padding-top:45px}
.timeline-step:before{content:"";position:absolute;top:10px;left:0;width:15px;height:15px;border:4px solid var(--paper);border-radius:50%;background:var(--clay);box-shadow:0 0 0 1px var(--clay)}
.timeline-step h3{margin-bottom:7px;font-size:18px}
.timeline-step p{margin:0;color:var(--muted);font-size:14px}
.quote-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;align-items:center}
.quote-mark{color:var(--gold);font-size:80px;line-height:.6;font-family:Georgia,serif}
.quote-text{margin:18px 0;font-size:26px;line-height:1.55}
.quote-name{color:#c9d9ce;font-size:13px}
.news-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.news-card{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:15px}
.news-card img{height:165px}
.news-card-body{padding:17px}
.news-card h3{margin:7px 0;font-size:17px;line-height:1.45}
.news-card p{margin:0;color:var(--muted);font-size:13px}
.date{color:#8b9892;font-size:12px}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
details{padding:20px 22px;background:var(--surface);border:1px solid var(--line);border-radius:13px}
summary{cursor:pointer;font-weight:800;list-style:none}
summary::-webkit-details-marker{display:none}
summary:after{content:"＋";float:right;color:var(--clay);font-size:20px;line-height:1}
details[open] summary:after{content:"－"}
details p{margin:14px 25px 0 0;color:var(--muted);font-size:14px}
.cta-band{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:32px 36px;background:#e6eee8;border:1px solid #cbd9ce;border-radius:var(--radius)}
.cta-band h2{margin:0 0 8px;font-size:27px}
.cta-band p{margin:0;color:var(--muted);font-size:14px}
.cta-actions{display:flex;flex-wrap:wrap;gap:10px}
footer{padding:65px 0 22px;background:#1e302b;color:#c6d2ca}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:38px}
footer .brand-name{color:#fff}
footer .brand-sub{color:#aebfb5}
footer .brand-mark{background:var(--clay)}
footer p{color:#aebfb5;font-size:13px}
.footer-title{margin-bottom:15px;color:#f0d29a;font-weight:800;font-size:14px}
.footer-grid>div>a:not(.brand){display:block;margin:8px 0;color:#b8c8bf;font-size:13px}
.footer-grid>div>a:not(.brand):hover{color:#fff}
.copyright{display:flex;justify-content:space-between;gap:20px;margin-top:45px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);color:#8da097;font-size:12px}
:focus-visible{outline:3px solid rgba(196,119,89,.45);outline-offset:3px}
@media(max-width:1024px){
 .nav-links{gap:2px}.nav-links a{padding:8px 9px;font-size:13px}
 .intro-grid,.feature-layout,.quote-layout{gap:32px}
 .matrix{grid-template-columns:repeat(2,1fr)}
 .footer-grid{grid-template-columns:1.4fr 1fr 1fr}
}
@media(max-width:768px){
 .container{width:min(100% - 30px,620px)}
 .nav-wrap{min-height:68px}.brand{min-width:0}.brand-name{font-size:15px}.brand-sub{font-size:10px}
 .menu-btn{display:block}
 .nav-links{display:none;position:absolute;top:68px;right:15px;left:15px;padding:10px;flex-direction:column;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
 .nav-links.open{display:flex}.nav-links a{padding:11px 13px}
 .page-intro{padding:60px 0 48px}.intro-grid{grid-template-columns:1fr;gap:25px}
 h1{font-size:43px}
 .section{padding:62px 0}.section-head{display:block}.section-head .text-link{display:inline-block;margin-top:15px}
 .feature-layout,.quote-layout{grid-template-columns:1fr}.feature-large{min-height:360px}
 .news-list{grid-template-columns:1fr 1fr}.data-strip{grid-template-columns:1fr 1fr}
 .data-point:nth-child(2){border-right:0}.data-point:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.18)}
 .timeline{grid-template-columns:1fr;gap:22px}.timeline:before{top:0;bottom:0;left:7px;width:1px;height:auto}
 .timeline-step{padding:0 0 0 35px}.timeline-step:before{top:4px}
 .faq-grid{grid-template-columns:1fr}.cta-band{display:block}.cta-actions{margin-top:20px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:28px}
 .copyright{display:block}.copyright span{display:block;margin-top:6px}
}
@media(max-width:520px){
 .container{width:calc(100% - 28px)}
 .brand-name{max-width:190px;overflow:hidden;text-overflow:ellipsis}
 .page-intro h1{font-size:37px}.intro-text{font-size:15px}
 .story-item{grid-template-columns:105px 1fr;gap:12px}.story-item img{height:105px}.story-item h3{font-size:15px}
 .matrix{grid-template-columns:1fr}.news-list{grid-template-columns:1fr}
 .feature-content{right:20px;bottom:20px;left:20px}.feature-content h3{font-size:23px}
 .data-point{padding:21px 13px}.data-point strong{font-size:26px}
 .footer-grid{grid-template-columns:1fr}
 .footer-grid>div:first-child{margin-bottom:5px}
}
