/* roulang page: index */
:root {
            --ink: #17202b;
            --ink-soft: #52606d;
            --paper: #f7f8f5;
            --white: #ffffff;
            --line: #dce3e0;
            --navy: #102a43;
            --navy-deep: #091c2d;
            --teal: #1d8275;
            --mint: #d7eee8;
            --coral: #ed765d;
            --yellow: #f4c95d;
            --radius-sm: 10px;
            --radius-md: 18px;
            --radius-lg: 28px;
            --shadow-sm: 0 8px 22px rgba(16, 42, 67, .07);
            --shadow-md: 0 18px 42px rgba(16, 42, 67, .12);
            --max: 1240px;
        }

        * { box-sizing: border-box; margin: 0; padding: 0; }
        html { scroll-behavior: smooth; }
        body {
            color: var(--ink);
            background: var(--paper);
            font-family: "Noto Sans SC", "Manrope", sans-serif;
            font-size: 15px;
            line-height: 1.8;
            -webkit-font-smoothing: antialiased;
        }
        a { color: inherit; text-decoration: none; }
        img { display: block; width: 100%; max-width: 100%; object-fit: cover; }
        button, input, textarea, select { font: inherit; }
        button { cursor: pointer; }
        :focus-visible { outline: 3px solid rgba(237, 118, 93, .45); outline-offset: 3px; }
        .container { width: min(var(--max), calc(100% - 56px)); margin: 0 auto; }
        .eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            color: var(--teal);
            font-size: 12px;
            font-weight: 800;
            letter-spacing: .08em;
            text-transform: uppercase;
        }
        .eyebrow::before { content: ""; width: 22px; height: 2px; background: var(--coral); }
        h1, h2, h3, h4 { line-height: 1.25; font-weight: 900; letter-spacing: 0; }
        h2 { font-size: clamp(28px, 4vw, 48px); }
        h3 { font-size: 21px; }
        .section-head { max-width: 700px; margin-bottom: 38px; }
        .section-head h2 { margin-top: 14px; }
        .section-head p { margin-top: 15px; color: var(--ink-soft); max-width: 660px; }
        .muted { color: var(--ink-soft); }

        .site-shell { min-height: 100vh; }
        .side-nav {
            position: fixed;
            z-index: 30;
            inset: 0 auto 0 0;
            width: 246px;
            display: flex;
            flex-direction: column;
            padding: 30px 20px;
            background: var(--navy-deep);
            color: #eaf4f1;
            border-right: 1px solid rgba(255,255,255,.09);
        }
        .brand {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 0 10px;
            margin-bottom: 58px;
        }
        .brand-mark {
            width: 42px;
            height: 42px;
            display: grid;
            place-items: center;
            border-radius: 12px;
            background: var(--coral);
            color: var(--navy-deep);
            font-size: 19px;
            font-weight: 900;
        }
        .brand strong { display: block; font-size: 19px; line-height: 1.1; }
        .brand small { display: block; margin-top: 4px; color: #94b7b3; font-size: 11px; }
        .nav-label {
            padding: 0 12px;
            margin-bottom: 11px;
            color: #789997;
            font-size: 11px;
            letter-spacing: .12em;
        }
        .nav-list { list-style: none; display: grid; gap: 6px; }
        .nav-list a {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 13px 12px;
            border-radius: 10px;
            color: #a9c3c0;
            transition: .25s ease;
        }
        .nav-list a:hover, .nav-list a.active { background: rgba(255,255,255,.1); color: #fff; }
        .nav-list a.active { box-shadow: inset 3px 0 var(--coral); }
        .nav-icon { width: 19px; text-align: center; color: var(--yellow); font-weight: 800; }
        .nav-note {
            margin-top: auto;
            padding: 18px 14px;
            border: 1px solid rgba(255,255,255,.12);
            border-radius: var(--radius-md);
            background: rgba(255,255,255,.045);
        }
        .nav-note strong { display: block; color: #fff; font-size: 14px; }
        .nav-note p { margin-top: 8px; color: #8faeab; font-size: 12px; line-height: 1.7; }

        .page { margin-left: 246px; }
        .mobile-bar { display: none; }
        .hero {
            position: relative;
            min-height: 720px;
            display: flex;
            align-items: center;
            overflow: hidden;
            background: var(--navy);
            color: #fff;
        }
        .hero-photo {
            position: absolute;
            inset: 0 0 0 43%;
            background: url("https://images.unsplash.com/photo-1542751371-adc38448a05e?auto=format&fit=crop&w=1600&q=85") center/cover no-repeat;
            opacity: .72;
        }
        .hero-photo::after {
            content: "";
            position: absolute;
            inset: 0;
            background: rgba(9, 28, 45, .32);
        }
        .hero::after {
            content: "";
            position: absolute;
            inset: 0 43% 0 0;
            background: var(--navy);
        }
        .hero-content { position: relative; z-index: 1; width: min(var(--max), calc(100% - 56px)); margin: 0 auto; }
        .hero-copy { width: 53%; padding: 95px 0 80px; }
        .hero .eyebrow { color: var(--mint); }
        .hero h1 { margin-top: 20px; max-width: 620px; font-size: clamp(46px, 6vw, 80px); }
        .hero-lead { max-width: 590px; margin-top: 25px; color: #c9d9d8; font-size: 17px; line-height: 2; }
        .hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
        .btn {
            min-height: 48px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 9px;
            padding: 0 19px;
            border: 1px solid transparent;
            border-radius: 9px;
            font-weight: 800;
            transition: .25s ease;
        }
        .btn-primary { background: var(--coral); color: #fff; }
        .btn-primary:hover { background: #d75e49; transform: translateY(-2px); box-shadow: 0 12px 24px rgba(237,118,93,.25); }
        .btn-light { background: #fff; color: var(--navy); }
        .btn-light:hover { background: var(--mint); transform: translateY(-2px); }
        .btn-outline { border-color: rgba(255,255,255,.3); color: #fff; }
        .btn-outline:hover { background: rgba(255,255,255,.1); border-color: #fff; }
        .hero-strip {
            position: absolute;
            z-index: 2;
            right: 7%;
            bottom: 42px;
            display: flex;
            gap: 10px;
        }
        .hero-chip {
            padding: 13px 17px;
            border: 1px solid rgba(255,255,255,.2);
            border-radius: 9px;
            background: rgba(9,28,45,.72);
            backdrop-filter: blur(10px);
            color: #e9f5f1;
            font-size: 12px;
        }
        .hero-chip b { display: block; margin-bottom: 2px; color: var(--yellow); font-size: 20px; }

        section { padding: 100px 0; }
        .section-white { background: var(--white); }
        .section-mint { background: var(--mint); }
        .section-dark { background: var(--navy-deep); color: #fff; }
        .section-dark .section-head p, .section-dark .muted { color: #a9c5c1; }

        .capability-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
        .capability {
            min-height: 240px;
            padding: 26px;
            border: 1px solid var(--line);
            border-radius: var(--radius-md);
            background: var(--white);
            transition: .25s ease;
        }
        .capability:hover { transform: translateY(-5px); border-color: var(--teal); box-shadow: var(--shadow-md); }
        .capability:nth-child(2) { background: var(--navy); color: #fff; }
        .capability:nth-child(2) p { color: #bdd1ce; }
        .capability:nth-child(3) { background: #fff7e2; }
        .cap-number { color: var(--coral); font: 800 13px "Manrope", sans-serif; }
        .capability h3 { margin: 37px 0 11px; }
        .capability p { color: var(--ink-soft); font-size: 14px; line-height: 1.8; }

        .parameter-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 70px; align-items: start; }
        .parameter-layout h2 { max-width: 420px; }
        .parameter-list { border-top: 1px solid var(--line); }
        .parameter-row {
            display: grid;
            grid-template-columns: 1fr 1.2fr;
            gap: 20px;
            padding: 17px 0;
            border-bottom: 1px solid var(--line);
        }
        .parameter-row strong { color: var(--navy); }
        .parameter-row span { color: var(--ink-soft); }

        .case-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 18px; }
        .case-main, .case-side { position: relative; min-height: 400px; overflow: hidden; border-radius: var(--radius-lg); }
        .case-main img, .case-side img { height: 100%; }
        .case-main::after, .case-side::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(9,28,45,.85)); }
        .case-copy { position: absolute; z-index: 1; right: 28px; bottom: 25px; left: 28px; color: #fff; }
        .case-copy h3 { font-size: 28px; }
        .case-copy p { margin-top: 8px; color: #d9e6e2; font-size: 14px; }
        .case-side { min-height: 190px; }
        .case-stack { display: grid; gap: 18px; }
        .case-side .case-copy h3 { font-size: 19px; }

        .flow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; }
        .flow-step { position: relative; padding: 25px 24px 20px 0; border-top: 2px solid var(--coral); }
        .flow-step:not(:last-child)::after { content: "→"; position: absolute; top: 14px; right: 13px; color: var(--coral); font-size: 23px; }
        .flow-step strong { display: block; color: var(--coral); font: 800 12px "Manrope", sans-serif; }
        .flow-step h3 { margin: 21px 0 9px; }
        .flow-step p { color: var(--ink-soft); font-size: 14px; line-height: 1.8; padding-right: 16px; }

        .article-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: 18px; }
        .article-feature { padding: 32px; border-radius: var(--radius-md); background: var(--navy); color: #fff; }
        .article-feature .tag, .article-item .tag { display: inline-block; color: var(--coral); font-size: 12px; font-weight: 800; }
        .article-feature h3 { max-width: 520px; margin: 35px 0 14px; font-size: 29px; }
        .article-feature p { max-width: 530px; color: #bdd1ce; }
        .article-list { display: grid; gap: 10px; }
        .article-item { display: grid; grid-template-columns: 105px 1fr; gap: 17px; align-items: center; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: #fff; transition: .25s ease; }
        .article-item:hover { border-color: var(--coral); transform: translateX(4px); }
        .article-item img { height: 78px; border-radius: 8px; }
        .article-item h3 { margin-top: 5px; font-size: 16px; }
        .article-item p { margin-top: 3px; color: var(--ink-soft); font-size: 12px; }

        .partner-row { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
        .partner {
            padding: 25px 14px;
            border: 1px solid rgba(255,255,255,.15);
            border-radius: 12px;
            color: #d5e8e3;
            text-align: center;
            font-weight: 700;
            background: rgba(255,255,255,.04);
        }
        .partner span { display: block; margin-bottom: 5px; color: var(--yellow); font: 800 11px "Manrope", sans-serif; }

        .inquiry { background: var(--coral); color: #fff; }
        .inquiry-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 75px; align-items: start; }
        .inquiry h2 { max-width: 420px; }
        .inquiry p { margin-top: 17px; max-width: 440px; color: #fff3ed; }
        .inquiry-meta { display: flex; gap: 28px; margin-top: 32px; }
        .inquiry-meta strong { display: block; font-size: 21px; }
        .inquiry-meta span { color: #ffe4dc; font-size: 12px; }
        .form-box { padding: 28px; border-radius: var(--radius-md); background: #fff; color: var(--ink); box-shadow: var(--shadow-md); }
        .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
        .field { display: grid; gap: 6px; }
        .field.full { grid-column: 1 / -1; }
        .field label { color: var(--ink-soft); font-size: 12px; font-weight: 700; }
        .field input, .field select, .field textarea {
            width: 100%;
            border: 1px solid var(--line);
            border-radius: 8px;
            background: #fbfcfb;
            color: var(--ink);
            padding: 12px 13px;
            outline: none;
            transition: .2s ease;
        }
        .field input:focus, .field select:focus, .field textarea:focus { border-color: var(--teal); box-shadow: 0 0 0 3px rgba(29,130,117,.12); }
        .field textarea { min-height: 100px; resize: vertical; }
        .form-box .btn { width: 100%; margin-top: 16px; }

        footer { padding: 55px 0 28px; background: #071827; color: #fff; }
        .footer-top { display: flex; justify-content: space-between; gap: 40px; padding-bottom: 42px; border-bottom: 1px solid rgba(255,255,255,.12); }
        .footer-brand { max-width: 320px; }
        .footer-brand .brand { padding: 0; margin-bottom: 18px; }
        .footer-brand p { color: #91aaa8; font-size: 13px; }
        .footer-links { display: flex; gap: 75px; }
        .footer-links h4 { margin-bottom: 13px; color: #d9eae6; font-size: 13px; }
        .footer-links a { display: block; margin: 7px 0; color: #91aaa8; font-size: 13px; transition: .2s ease; }
        .footer-links a:hover { color: var(--coral); }
        .footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 22px; color: #718d8b; font-size: 12px; }

        @media (max-width: 1100px) {
            .side-nav { width: 210px; }
            .page { margin-left: 210px; }
            .hero-photo { inset-left: 36%; }
            .hero::after { right: 36%; }
            .hero-copy { width: 65%; }
            .capability-grid { grid-template-columns: repeat(2, 1fr); }
        }
        @media (max-width: 768px) {
            .side-nav { display: none; }
            .page { margin-left: 0; }
            .mobile-bar {
                position: sticky;
                z-index: 40;
                top: 0;
                display: flex;
                align-items: center;
                justify-content: space-between;
                min-height: 68px;
                padding: 0 22px;
                background: var(--navy-deep);
                color: #fff;
            }
            .mobile-bar .brand { margin: 0; padding: 0; }
            .mobile-bar .brand-mark { width: 36px; height: 36px; font-size: 16px; }
            .mobile-menu { display: flex; gap: 17px; align-items: center; }
            .mobile-menu a { color: #c9d9d8; font-size: 13px; }
            .mobile-menu a.active { color: var(--coral); }
            .container, .hero-content { width: min(100% - 36px, var(--max)); }
            section { padding: 72px 0; }
            .hero { min-height: 680px; }
            .hero-photo { inset: 42% 0 0; opacity: .62; }
            .hero::after { inset: 0 0 42%; }
            .hero-copy { width: 100%; padding: 70px 0 250px; }
            .hero h1 { font-size: clamp(42px, 12vw, 66px); }
            .hero-lead { font-size: 15px; }
            .hero-strip { right: 18px; bottom: 24px; left: 18px; gap: 7px; }
            .hero-chip { flex: 1; padding: 10px; font-size: 11px; }
            .hero-chip b { font-size: 17px; }
            .parameter-layout, .case-grid, .article-layout, .inquiry-grid { grid-template-columns: 1fr; gap: 30px; }
            .flow { grid-template-columns: 1fr 1fr; gap: 22px; }
            .flow-step:not(:last-child)::after { display: none; }
            .partner-row { grid-template-columns: repeat(2, 1fr); }
            .footer-top, .footer-bottom { flex-direction: column; }
            .footer-links { gap: 45px; flex-wrap: wrap; }
        }
        @media (max-width: 520px) {
            .capability-grid { grid-template-columns: 1fr; }
            .capability { min-height: auto; }
            .case-main { min-height: 330px; }
            .case-side { min-height: 190px; }
            .flow { grid-template-columns: 1fr; }
            .form-grid { grid-template-columns: 1fr; }
            .field.full { grid-column: auto; }
            .inquiry-meta { gap: 16px; }
            .footer-links { gap: 25px; }
            .footer-bottom { font-size: 11px; }
        }

/* roulang page: category1 */
:root{
 --ink:#17202b;--ink-soft:#52606d;--paper:#f7f8f5;--white:#fff;--line:#dce3e0;
 --navy:#102a43;--navy-deep:#091c2d;--teal:#1d8275;--mint:#d7eee8;
 --coral:#ed765d;--yellow:#f4c95d;--radius-sm:10px;--radius-md:18px;--radius-lg:28px;
 --shadow-sm:0 8px 22px rgba(16,42,67,.07);--shadow-md:0 18px 42px rgba(16,42,67,.12);
 --max:1240px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{color:var(--ink);background:var(--paper);font-family:"Noto Sans SC","Manrope",sans-serif;font-size:15px;line-height:1.8;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{display:block;width:100%;max-width:100%;object-fit:cover}
button,input,textarea,select{font:inherit}button{cursor:pointer}
.container{width:min(var(--max),calc(100% - 56px));margin:0 auto}
h1,h2,h3,h4{line-height:1.25;font-weight:900}p{color:var(--ink-soft)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--teal);font-size:12px;font-weight:800;letter-spacing:.08em}
.eyebrow:before{content:"";width:22px;height:2px;background:var(--coral)}
.section-head{max-width:700px;margin-bottom:38px}.section-head h2{margin-top:14px;font-size:clamp(28px,3vw,42px)}.section-head p{margin-top:15px;max-width:660px}
.side-nav{position:fixed;z-index:30;inset:0 auto 0 0;width:246px;display:flex;flex-direction:column;padding:30px 20px;background:var(--navy-deep);color:#eaf4f1;border-right:1px solid rgba(255,255,255,.09)}
.side-nav-logo{display:block;padding:0 10px;margin-bottom:58px}.logo-main{display:block;color:#fff;font-size:17px;font-weight:900;line-height:1.4}.logo-sub{display:block;margin-top:4px;color:#94b7b3;font-size:11px}
.side-nav-links{list-style:none;display:grid;gap:6px}.side-nav-link{display:flex;align-items:center;gap:12px;padding:13px 12px;border-radius:10px;color:#a9c3c0;transition:.25s ease}.side-nav-link:hover,.side-nav-link.active{background:rgba(255,255,255,.1);color:#fff}.side-nav-link.active{box-shadow:inset 3px 0 var(--coral)}.nav-icon{width:19px;text-align:center;color:var(--yellow);font-weight:800}
.side-nav-footer{margin-top:auto;color:#789997;font-size:11px;letter-spacing:.08em;padding:0 12px}
.mobile-bar{display:none}.mobile-menu{display:none}
.page{margin-left:246px}.hero{position:relative;min-height:600px;display:flex;align-items:center;overflow:hidden;background:var(--navy);color:#fff}
.hero-photo{position:absolute;inset:0 0 0 38%;background:url("https://images.unsplash.com/photo-1542751371-adc38448a05e?auto=format&fit=crop&w=1600&q=85") center/cover no-repeat;opacity:.68}
.hero-photo:after{content:"";position:absolute;inset:0;background:rgba(9,28,45,.42)}.hero:after{content:"";position:absolute;inset:0 62% 0 0;background:var(--navy)}
.hero-content{position:relative;z-index:1;width:min(var(--max),calc(100% - 56px));margin:0 auto}.hero-copy{width:56%;padding:90px 0 100px}.hero .eyebrow{color:var(--mint)}.hero h1{margin-top:20px;max-width:680px;font-size:clamp(42px,5.5vw,72px)}.hero-lead{max-width:610px;margin-top:24px;color:#c9d9d8;font-size:17px;line-height:2}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 19px;border:1px solid transparent;border-radius:9px;font-weight:800;transition:.25s ease}.btn-primary{background:var(--coral);color:#fff}.btn-primary:hover{background:#d75e49;transform:translateY(-2px);box-shadow:0 12px 24px rgba(237,118,93,.25)}.btn-light{background:#fff;color:var(--navy)}.btn-light:hover{background:var(--mint);transform:translateY(-2px)}.btn-outline{border-color:rgba(255,255,255,.3);color:#fff}.btn-outline:hover{background:rgba(255,255,255,.1);border-color:#fff}
.hero-panel{position:absolute;z-index:2;right:7%;bottom:48px;width:300px;padding:22px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);background:rgba(9,28,45,.75);backdrop-filter:blur(12px)}.hero-panel strong{display:block;color:#fff;font-size:18px}.hero-panel p{margin-top:8px;color:#b8cfcb;font-size:13px}.panel-line{height:1px;margin:17px 0;background:rgba(255,255,255,.16)}.panel-meta{display:flex;justify-content:space-between;color:#d7eee8;font-size:12px}.panel-meta b{color:var(--yellow);font-size:18px}
section{padding:92px 0}.section-light{background:var(--paper)}.section-white{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-dark{background:var(--navy-deep);color:#fff}.section-dark p{color:#afc6c3}
.topic-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}.topic-feature{min-height:330px;position:relative;overflow:hidden;border-radius:var(--radius-lg);background:var(--navy);color:#fff;padding:34px}.topic-feature:before{content:"";position:absolute;inset:0;background:url("https://images.unsplash.com/photo-1550745165-9bc0b252726f?auto=format&fit=crop&w=1100&q=80") center/cover;opacity:.25}.topic-feature>*{position:relative}.topic-feature h3{max-width:480px;font-size:30px;margin-top:15px}.topic-feature p{max-width:500px;margin-top:16px;color:#d3e3df}.feature-label{display:inline-block;padding:5px 10px;border-radius:20px;background:var(--yellow);color:var(--navy-deep);font-size:12px;font-weight:900}
.topic-list{display:grid;gap:12px}.topic-item{display:flex;gap:17px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;transition:.25s ease}.topic-item:hover{transform:translateX(4px);box-shadow:var(--shadow-sm);border-color:#b9d4cf}.topic-number{flex:0 0 34px;color:var(--coral);font:800 22px/1 "Manrope",sans-serif}.topic-item h3{font-size:17px}.topic-item p{margin-top:6px;font-size:13px;line-height:1.7}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.17);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-md);overflow:hidden}.metric{padding:28px 24px;background:rgba(255,255,255,.04)}.metric strong{display:block;color:var(--yellow);font:800 35px/1 "Manrope",sans-serif}.metric span{display:block;margin-top:10px;color:#c3d8d4;font-size:13px}
.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.capability{padding:26px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;transition:.25s ease}.capability:nth-child(2){background:var(--mint)}.capability:nth-child(3){background:#fff1e8}.capability:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.cap-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--navy);color:var(--yellow);font-weight:900}.capability h3{margin-top:20px;font-size:20px}.capability p{margin-top:10px;font-size:14px}
.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:68px;align-items:start}.split h2{font-size:clamp(28px,3.5vw,46px)}.split-intro{margin-top:18px}.check-list{list-style:none;display:grid;gap:16px}.check-list li{display:flex;gap:13px;padding-bottom:16px;border-bottom:1px solid var(--line)}.check-list li:last-child{border-bottom:0}.check{flex:0 0 25px;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--teal);color:#fff;font-size:12px;font-weight:900}.check-list strong{display:block;font-size:16px}.check-list span{display:block;margin-top:4px;color:var(--ink-soft);font-size:13px}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;transition:.25s ease}.news-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.news-image{height:170px;background:var(--navy) center/cover}.news-card:nth-child(1) .news-image{background-image:url("https://images.unsplash.com/photo-1603481546238-487240415921?auto=format&fit=crop&w=800&q=80")}.news-card:nth-child(2) .news-image{background-image:url("https://images.unsplash.com/photo-1593305841991-05c297ba4575?auto=format&fit=crop&w=800&q=80")}.news-card:nth-child(3) .news-image{background-image:url("https://images.unsplash.com/photo-1511512578047-dfb367046420?auto=format&fit=crop&w=800&q=80")}.news-body{padding:22px}.news-tag{color:var(--teal);font-size:12px;font-weight:800}.news-card h3{margin-top:10px;font-size:19px}.news-card p{margin-top:9px;font-size:13px}.news-date{display:block;margin-top:16px;color:#8a969e;font-size:12px}
.quote-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.quote-mark{color:var(--coral);font:900 90px/.7 Georgia,serif}.quote{font-size:25px;line-height:1.65;color:#fff}.quote-author{margin-top:20px;color:var(--mint);font-size:13px}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.faq{padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.faq h3{font-size:16px}.faq p{margin-top:10px;font-size:13px}
.cta{padding:54px 60px;border-radius:var(--radius-lg);background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:32px}.cta p{margin-top:10px;color:#d6eeea}.cta .btn{flex:none}
footer{padding:58px 0 26px;background:var(--navy-deep);color:#eaf4f1}.footer-top{display:flex;justify-content:space-between;gap:50px}.brand{display:flex;align-items:center;gap:12px}.footer-brand .brand{margin-bottom:18px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--coral);color:var(--navy-deep);font-size:19px;font-weight:900}.brand strong{display:block;font-size:19px;line-height:1.1}.brand small{display:block;margin-top:4px;color:#94b7b3;font-size:11px}.footer-brand p{max-width:390px;color:#91ada9;font-size:13px}.footer-links{display:flex;gap:80px}.footer-links h4{margin-bottom:14px;color:#fff;font-size:14px}.footer-links a{display:block;margin:8px 0;color:#9ab6b1;font-size:13px;transition:.2s}.footer-links a:hover{color:var(--yellow)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:45px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);color:#76938f;font-size:12px}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
@media(max-width:1024px){.side-nav{width:210px}.page{margin-left:210px}.hero-copy{width:62%}.hero-panel{right:4%}.split{gap:35px}.footer-links{gap:35px}}
@media(max-width:768px){.side-nav{display:none}.page{margin-left:0}.mobile-bar{display:block;position:relative;background:var(--navy-deep);color:#fff;padding:16px 20px}.mobile-bar>.brand{margin:0}.mobile-menu{display:flex;overflow-x:auto;gap:8px;padding:0 20px 14px;background:var(--navy-deep)}.mobile-menu a{white-space:nowrap;padding:8px 14px;border-radius:8px;color:#a9c3c0;font-size:13px}.mobile-menu a.active{background:rgba(255,255,255,.12);color:#fff}.hero{min-height:650px}.hero:after{inset:0 35% 0 0;opacity:.93}.hero-photo{inset:0}.hero-copy{width:75%;padding:75px 0}.hero-panel{right:5%;bottom:25px;width:270px}.topic-grid,.split,.quote-section{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.capability-grid,.news-grid{grid-template-columns:1fr 1fr}.quote-section{gap:20px}.cta{padding:38px 30px;align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.container,.hero-content{width:calc(100% - 36px)}section{padding:66px 0}.hero:after{inset:0}.hero-copy{width:100%;padding:62px 0 190px}.hero h1{font-size:42px}.hero-lead{font-size:15px}.hero-panel{left:18px;right:18px;bottom:22px;width:auto}.topic-feature{min-height:370px;padding:25px}.capability-grid,.news-grid,.faq-grid{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.metric{padding:22px 15px}.metric strong{font-size:28px}.footer-top,.footer-bottom{display:block}.footer-links{margin-top:35px;gap:35px;flex-wrap:wrap}.footer-bottom span{display:block;margin-top:8px}.cta h2{font-size:27px}}
