/* roulang page: index */
:root{
      --bg:#FFF7ED;
      --bg-soft:#FEF3E2;
      --primary:#E8893C;
      --primary-deep:#C86E28;
      --rose:#B86B5C;
      --caramel:#9A5A2E;
      --ink:#2F241D;
      --muted:#57534E;
      --line:rgba(154,90,46,.16);
      --line-strong:rgba(232,137,60,.32);
      --green:#7A8B45;
      --shadow:0 18px 50px rgba(154,90,46,.14);
      --shadow-hover:0 24px 70px rgba(154,90,46,.20);
      --radius:28px;
      --radius-lg:36px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
      color:var(--ink);
      background:
        radial-gradient(circle at 8% 12%, rgba(232,137,60,.16), transparent 26%),
        radial-gradient(circle at 86% 18%, rgba(184,107,92,.14), transparent 28%),
        linear-gradient(135deg,#FFF7ED 0%,#FEF3E2 52%,#FFF9F1 100%);
      line-height:1.75;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      z-index:-1;
      opacity:.42;
      background-image:
        radial-gradient(rgba(154,90,46,.18) 1px, transparent 1px),
        repeating-radial-gradient(circle at 18% 20%, transparent 0 28px, rgba(154,90,46,.10) 29px, transparent 31px);
      background-size:26px 26px, 620px 620px;
      mask-image:linear-gradient(to bottom, #000, transparent 88%);
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,textarea,select{font:inherit}
    button{cursor:pointer}
    :focus-visible{outline:3px solid rgba(232,137,60,.45);outline-offset:3px}
    .site-container{width:min(var(--container), calc(100% - 40px));margin-inline:auto}
    .section{padding:94px 0}
    .section-tight{padding:72px 0}
    .eyebrow{
      display:inline-flex;align-items:center;gap:8px;
      padding:8px 14px;border-radius:999px;
      background:rgba(232,137,60,.12);border:1px solid rgba(232,137,60,.24);
      color:var(--caramel);font-size:13px;font-weight:800;letter-spacing:.03em;
    }
    .eyebrow:before{content:"";width:8px;height:8px;border-radius:999px;background:var(--primary);box-shadow:0 0 0 5px rgba(232,137,60,.16)}
    .section-title{font-size:clamp(28px,4vw,44px);line-height:1.14;font-weight:900;letter-spacing:-.04em;margin:16px 0 14px}
    .section-desc{font-size:16px;color:var(--muted);max-width:720px}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      min-height:48px;padding:13px 20px;border-radius:999px;
      font-weight:850;transition:.25s ease;border:1px solid transparent;
      white-space:nowrap;
    }
    .btn-primary{background:linear-gradient(135deg,var(--primary),#F59E0B);color:#fff;box-shadow:0 16px 34px rgba(232,137,60,.28)}
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 22px 48px rgba(232,137,60,.36);background:linear-gradient(135deg,var(--primary-deep),var(--primary))}
    .btn-secondary{background:rgba(255,247,237,.86);color:var(--ink);border-color:var(--line);box-shadow:0 10px 24px rgba(154,90,46,.08)}
    .btn-secondary:hover{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:var(--shadow)}
    .text-link{color:var(--primary-deep);font-weight:850;display:inline-flex;gap:6px;align-items:center}
    .text-link:hover{text-decoration:underline}
    .badge{
      display:inline-flex;align-items:center;gap:6px;border-radius:999px;
      padding:7px 11px;font-size:12px;font-weight:800;color:var(--caramel);
      background:rgba(255,247,237,.75);border:1px solid var(--line);
    }
    .badge.green{color:var(--green);background:rgba(122,139,69,.10);border-color:rgba(122,139,69,.22)}
    .card{
      border:1px solid var(--line);
      background:rgba(255,247,237,.78);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      transition:.25s ease;
      position:relative;
      overflow:hidden;
    }
    .card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow-hover)}
    .card:after{
      content:"";position:absolute;right:18px;top:18px;width:10px;height:10px;border-radius:999px;
      background:rgba(232,137,60,.36);transition:.25s ease;
    }
    .card:hover:after{background:var(--primary);box-shadow:0 0 0 7px rgba(232,137,60,.14)}
    .site-header{
      position:sticky;top:0;z-index:50;
      backdrop-filter:blur(18px);
      background:rgba(255,247,237,.78);
      border-bottom:1px solid rgba(154,90,46,.14);
    }
    .nav-wrap{height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
    .brand{display:flex;align-items:center;gap:10px;font-weight:950;letter-spacing:-.03em}
    .brand-mark{
      width:38px;height:38px;border-radius:16px;
      background:conic-gradient(from 160deg,#F59E0B,#E8893C,#B86B5C,#F59E0B);
      position:relative;box-shadow:0 12px 24px rgba(232,137,60,.26);
    }
    .brand-mark:before{content:"";position:absolute;inset:11px;border-radius:999px;background:#FFF7ED}
    .brand-text{font-size:18px}
    .desktop-nav{display:flex;align-items:center;gap:6px}
    .nav-link{
      height:42px;display:flex;align-items:center;padding:0 14px;border-radius:999px;
      color:rgba(47,36,29,.78);font-size:14px;font-weight:800;transition:.2s ease;
    }
    .nav-link:hover,.nav-link.active{background:rgba(232,137,60,.12);color:var(--primary-deep)}
    .mega-holder{position:relative}
    .mega-panel{
      position:absolute;right:0;top:54px;width:min(680px, calc(100vw - 44px));
      opacity:0;visibility:hidden;transform:translateY(8px);
      transition:.22s ease;padding:18px;border-radius:28px;
      background:rgba(255,247,237,.96);border:1px solid var(--line-strong);box-shadow:var(--shadow-hover);
    }
    .mega-holder:hover .mega-panel,.mega-holder:focus-within .mega-panel{opacity:1;visibility:visible;transform:translateY(0)}
    .mega-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px}
    .mega-card{padding:16px;border-radius:22px;background:rgba(254,243,226,.78);border:1px solid var(--line)}
    .mega-card strong{display:block;margin-bottom:6px}
    .mega-card p{font-size:13px;color:var(--muted);margin:0}
    .mobile-toggle{display:none;width:44px;height:44px;border-radius:16px;border:1px solid var(--line);background:rgba(255,247,237,.88)}
    .mobile-menu{
      display:none;padding:0 0 18px;
    }
    .mobile-panel{
      border-radius:24px;background:rgba(255,247,237,.96);border:1px solid var(--line);box-shadow:var(--shadow);
      padding:12px;display:grid;gap:8px;
    }
    .hero{padding:74px 0 88px;min-height:760px;display:flex;align-items:center}
    .hero-stage{
      display:grid;grid-template-columns:1.04fr .96fr;gap:34px;align-items:stretch;
    }
    .hero-copy{
      padding:44px;border-radius:42px;
      background:linear-gradient(145deg,rgba(255,247,237,.86),rgba(254,243,226,.62));
      border:1px solid var(--line);
      box-shadow:var(--shadow);
      position:relative;overflow:hidden;
    }
    .hero-copy:before{
      content:"";position:absolute;inset:auto -80px -100px auto;width:260px;height:260px;border-radius:50%;
      background:rgba(232,137,60,.14);
    }
    h1{font-size:clamp(38px,6vw,66px);line-height:1.08;font-weight:950;letter-spacing:-.065em;margin:18px 0 20px}
    .hero-intro{font-size:17px;color:var(--muted);max-width:720px;margin-bottom:24px}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}
    .hero-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
    .hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}
    .point{
      padding:16px;border-radius:22px;background:rgba(255,247,237,.78);border:1px solid var(--line);
    }
    .point b{display:block;font-size:22px;color:var(--primary-deep);line-height:1}
    .point span{font-size:12px;color:var(--muted);font-weight:750}
    .choice-board{
      border-radius:42px;padding:20px;
      background:linear-gradient(145deg,rgba(255,247,237,.72),rgba(254,243,226,.92));
      border:1px solid var(--line);box-shadow:var(--shadow);
      position:relative;overflow:hidden;
    }
    .choice-board:before{
      content:"";position:absolute;inset:18px;border-radius:34px;
      border:1px dashed rgba(154,90,46,.23);pointer-events:none;
    }
    .recommend-card{
      position:relative;z-index:1;padding:22px;border-radius:30px;
      background:linear-gradient(135deg,#2F241D,#5A3422);
      color:#FFF7ED;box-shadow:0 22px 50px rgba(47,36,29,.22);margin-bottom:14px;
    }
    .recommend-card p{color:rgba(255,247,237,.78);margin:8px 0 0;font-size:14px}
    .node-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .node{
      min-height:132px;padding:18px;border-radius:28px;background:rgba(255,247,237,.82);
      border:1px solid var(--line);transition:.25s ease;
    }
    .node:hover{transform:translateY(-3px);border-color:var(--line-strong)}
    .node.large{grid-row:span 2;min-height:278px;background:linear-gradient(160deg,rgba(232,137,60,.15),rgba(255,247,237,.82))}
    .node-dot{width:16px;height:16px;border-radius:999px;background:var(--primary);box-shadow:0 0 0 8px rgba(232,137,60,.13);margin-bottom:18px}
    .node h3{font-size:18px;font-weight:900;margin:0 0 8px}
    .node p{font-size:13px;color:var(--muted);margin:0}
    .avatar-wall{display:flex;align-items:center;margin-top:18px}
    .avatar{
      width:36px;height:36px;border-radius:999px;border:3px solid #FFF7ED;margin-left:-9px;
      display:grid;place-items:center;color:#fff;font-size:12px;font-weight:900;
      background:linear-gradient(135deg,#E8893C,#B86B5C);
    }
    .avatar:first-child{margin-left:0}
    .avatar-note{margin-left:12px;color:var(--muted);font-size:13px;font-weight:750}
    .service-map{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;margin-top:34px}
    .service-big{padding:30px;min-height:390px;background:linear-gradient(155deg,rgba(232,137,60,.13),rgba(255,247,237,.84))}
    .service-side{display:grid;grid-template-columns:1fr 1fr;gap:18px}
    .service-card{padding:24px}
    .service-card.wide{grid-column:span 2}
    .service-card h3{font-size:21px;font-weight:900;margin:12px 0 8px}
    .service-card p{color:var(--muted);font-size:15px;margin:0 0 16px}
    .icon-bubble{width:46px;height:46px;border-radius:18px;background:rgba(232,137,60,.14);display:grid;place-items:center;color:var(--primary-deep);font-weight:950}
    .route-board{
      margin-top:36px;border-radius:36px;padding:30px;
      background:rgba(255,247,237,.72);border:1px solid var(--line);box-shadow:var(--shadow);
      position:relative;overflow:hidden;
    }
    .route-line{
      position:absolute;left:8%;right:8%;top:112px;border-top:2px dashed rgba(154,90,46,.22);
    }
    .route-nodes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}
    .metric{padding:20px;border-radius:26px;background:rgba(254,243,226,.72);border:1px solid var(--line)}
    .metric-num{font-size:36px;font-weight:950;color:var(--primary-deep);line-height:1}
    .metric h3{font-size:18px;font-weight:900;margin:16px 0 8px}
    .metric p{font-size:14px;color:var(--muted);margin:0}
    .bubble-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:18px;margin-top:34px}
    .bubble{
      padding:24px;border-radius:30px;background:rgba(255,247,237,.86);border:1px solid var(--line);
      box-shadow:var(--shadow);position:relative;
    }
    .bubble:before{
      content:"";position:absolute;left:34px;bottom:-10px;width:20px;height:20px;
      background:inherit;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transform:rotate(45deg);
    }
    .bubble.large{grid-row:span 2;background:linear-gradient(145deg,rgba(255,247,237,.92),rgba(254,243,226,.76))}
    .bubble p{color:var(--muted);margin:12px 0 0}
    .profile{display:flex;align-items:center;gap:12px}
    .profile .avatar{margin:0;width:42px;height:42px}
    .profile strong{display:block}
    .profile span{font-size:12px;color:var(--caramel);font-weight:800}
    .plan-grid{display:grid;grid-template-columns:.95fr 1.1fr .95fr;gap:18px;margin-top:34px;align-items:start}
    .plan{padding:26px}
    .plan.featured{margin-top:-16px;background:linear-gradient(145deg,rgba(232,137,60,.16),rgba(255,247,237,.86));border-color:var(--line-strong)}
    .plan h3{font-size:23px;font-weight:950;margin:12px 0 8px}
    .plan p{color:var(--muted);font-size:15px}
    .steps{display:grid;gap:10px;margin:18px 0}
    .step{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:14px}
    .step i{width:20px;height:20px;border-radius:999px;background:var(--primary);color:white;font-style:normal;display:grid;place-items:center;font-size:12px;font-weight:900;flex:0 0 auto;margin-top:2px}
    .news-wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:22px;margin-top:34px}
    .news-list{padding:10px;border-radius:32px;background:rgba(255,247,237,.78);border:1px solid var(--line);box-shadow:var(--shadow)}
    .news-item{
      display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;
      padding:18px;border-radius:24px;transition:.22s ease;border:1px solid transparent;
    }
    .news-item:hover{background:rgba(254,243,226,.72);border-color:var(--line);transform:translateX(3px)}
    .date-pill{width:66px;text-align:center;border-radius:18px;padding:8px 6px;background:rgba(232,137,60,.12);color:var(--primary-deep);font-weight:900;font-size:13px}
    .news-item h3{font-size:17px;font-weight:900;margin:0 0 4px}
    .news-item p{font-size:13px;color:var(--muted);margin:0}
    .side-pick{padding:26px;background:linear-gradient(155deg,rgba(47,36,29,.96),rgba(91,55,34,.96));color:#FFF7ED}
    .side-pick p{color:rgba(255,247,237,.76)}
    .faq-list{display:grid;gap:14px;margin-top:34px}
    .faq-item{
      border:1px solid var(--line);border-radius:24px;background:rgba(255,247,237,.82);
      overflow:hidden;box-shadow:0 10px 30px rgba(154,90,46,.08);transition:.22s ease;
    }
    .faq-q{
      width:100%;padding:20px 22px;background:transparent;border:0;text-align:left;
      display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--ink);font-weight:900;
    }
    .faq-icon{width:28px;height:28px;border-radius:999px;background:rgba(232,137,60,.12);display:grid;place-items:center;color:var(--primary-deep);transition:.22s ease;flex:0 0 auto}
    .faq-a{max-height:0;overflow:hidden;transition:max-height .28s ease}
    .faq-a div{padding:0 22px 22px;color:var(--muted);font-size:15px}
    .faq-item.open{border-color:var(--line-strong)}
    .faq-item.open .faq-a{max-height:180px}
    .faq-item.open .faq-icon{transform:rotate(45deg);background:var(--primary);color:white}
    .contact-shell{
      border-radius:42px;padding:34px;
      background:linear-gradient(135deg,rgba(232,137,60,.22),rgba(254,243,226,.88));
      border:1px solid var(--line-strong);box-shadow:var(--shadow-hover);
      display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:start;
    }
    .contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .field{display:grid;gap:7px}
    .field.full{grid-column:span 2}
    label{font-size:13px;font-weight:850;color:var(--caramel)}
    input,textarea,select{
      width:100%;border:1px solid var(--line);background:rgba(255,247,237,.92);
      border-radius:17px;padding:13px 14px;color:var(--ink);transition:.22s ease;
    }
    textarea{min-height:126px;resize:vertical}
    input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 5px rgba(232,137,60,.12);outline:0}
    .site-footer{
      background:linear-gradient(135deg,#2F241D,#4A2D1E);
      color:#FFF7ED;padding:58px 0 26px;margin-top:80px;
    }
    .footer-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr .9fr;gap:28px}
    .footer-brand{display:flex;align-items:center;gap:10px;font-weight:950;font-size:18px;margin-bottom:14px}
    .footer-grid p,.footer-grid a{color:rgba(255,247,237,.68);font-size:14px}
    .footer-grid a{display:block;margin:8px 0;transition:.2s ease}
    .footer-grid a:hover{color:#fff;transform:translateX(2px)}
    .footer-title{font-weight:900;color:#fff;margin-bottom:12px}
    .copyright{border-top:1px solid rgba(255,247,237,.12);margin-top:34px;padding-top:20px;color:rgba(255,247,237,.58);font-size:13px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
    @media (max-width:1024px){
      .hero{min-height:auto;padding-top:52px}
      .hero-stage,.service-map,.news-wrap,.contact-shell{grid-template-columns:1fr}
      .plan-grid{grid-template-columns:1fr}
      .plan.featured{margin-top:0}
      .bubble-grid{grid-template-columns:1fr 1fr}
      .route-nodes{grid-template-columns:repeat(2,1fr)}
      .route-line{display:none}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .site-container{width:min(100% - 28px, var(--container))}
      .section{padding:64px 0}
      .desktop-nav,.nav-cta{display:none}
      .mobile-toggle{display:grid;place-items:center}
      .mobile-menu.open{display:block}
      .nav-wrap{height:68px}
      .hero-copy{padding:26px;border-radius:32px}
      .choice-board{border-radius:32px}
      .node-grid,.service-side,.hero-points,.bubble-grid,.contact-form{grid-template-columns:1fr}
      .service-card.wide,.field.full{grid-column:auto}
      .route-nodes{grid-template-columns:1fr}
      .news-item{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1fr}
    }
    @media (max-width:520px){
      h1{font-size:38px}
      .section-title{font-size:30px}
      .hero-actions{display:grid}
      .btn{width:100%}
      .contact-shell{padding:22px;border-radius:30px}
      .brand-text{font-size:16px}
    }

/* roulang page: category1 */
:root{
      --bg:#fff7ed;
      --bg-soft:#fef3e2;
      --card:#fffaf3;
      --text:#2f241d;
      --muted:#70665d;
      --weak:#9a8d80;
      --primary:#e8893c;
      --primary-dark:#c96f26;
      --amber:#f59e0b;
      --rose:#b86b5c;
      --caramel:#9a5a2e;
      --olive:#7a8b45;
      --border:rgba(154,90,46,.16);
      --border-strong:rgba(232,137,60,.34);
      --shadow:0 18px 50px rgba(154,90,46,.13);
      --shadow-hover:0 26px 70px rgba(154,90,46,.20);
      --radius:28px;
      --radius-sm:18px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 12% 8%, rgba(245,158,11,.18), transparent 32%),
        radial-gradient(circle at 85% 18%, rgba(184,107,92,.14), transparent 30%),
        linear-gradient(180deg,#fff7ed 0%,#fef3e2 48%,#fffaf3 100%);
      line-height:1.8;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      opacity:.38;
      background-image:
        radial-gradient(rgba(154,90,46,.16) 1px, transparent 1px),
        repeating-radial-gradient(ellipse at 18% 18%, transparent 0 18px, rgba(154,90,46,.07) 19px 20px, transparent 21px 38px);
      background-size:26px 26px, 620px 420px;
      mask-image:linear-gradient(180deg,rgba(0,0,0,.9),rgba(0,0,0,.35));
      z-index:-1;
    }
    a{color:inherit;text-decoration:none}
    img,svg{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    button{cursor:pointer}
    ::selection{background:rgba(232,137,60,.25)}
    .site-container{width:min(var(--container),calc(100% - 40px));margin:0 auto}
    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      border-bottom:1px solid rgba(154,90,46,.12);
      background:rgba(255,247,237,.82);
      backdrop-filter:blur(18px);
    }
    .nav-wrap{
      min-height:78px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
    }
    .brand,.footer-brand{
      display:flex;
      align-items:center;
      gap:12px;
      font-weight:900;
      letter-spacing:-.02em;
      color:var(--text);
    }
    .brand-text{font-size:20px;white-space:nowrap}
    .brand-mark{
      width:38px;
      height:38px;
      border-radius:16px;
      display:inline-block;
      position:relative;
      background:linear-gradient(135deg,var(--primary),#f8c06d);
      box-shadow:0 12px 28px rgba(232,137,60,.32);
      flex:0 0 auto;
    }
    .brand-mark:after{
      content:"";
      position:absolute;
      width:12px;height:12px;border-radius:50%;
      background:#fff7ed;
      left:13px;top:13px;
      box-shadow:12px 8px 0 rgba(255,247,237,.62), -7px 10px 0 rgba(255,247,237,.45);
    }
    .desktop-nav{display:flex;align-items:center;gap:6px}
    .nav-link{
      min-height:44px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:10px 15px;
      border-radius:999px;
      color:#5f5146;
      font-weight:700;
      font-size:15px;
      border:1px solid transparent;
      transition:.22s ease;
      background:transparent;
    }
    .nav-link:hover,.nav-link:focus-visible{
      color:var(--text);
      background:rgba(232,137,60,.10);
      border-color:rgba(232,137,60,.18);
      outline:none;
    }
    .nav-link.active{
      color:var(--primary-dark);
      background:rgba(232,137,60,.16);
      border-color:rgba(232,137,60,.28);
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:46px;
      padding:12px 20px;
      border-radius:999px;
      font-weight:800;
      border:1px solid transparent;
      transition:.22s ease;
      white-space:nowrap;
    }
    .btn-primary{
      color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--amber));
      box-shadow:0 14px 34px rgba(232,137,60,.28);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 45px rgba(232,137,60,.36);background:linear-gradient(135deg,var(--primary-dark),var(--primary))}
    .btn-secondary{
      color:var(--text);
      background:rgba(255,250,243,.78);
      border-color:var(--border-strong);
      box-shadow:0 10px 28px rgba(154,90,46,.08);
    }
    .btn-secondary:hover{transform:translateY(-2px);border-color:rgba(232,137,60,.55);background:#fffaf3}
    .btn:focus-visible,.mobile-toggle:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
      outline:3px solid rgba(232,137,60,.34);
      outline-offset:3px;
    }
    .mega-holder{position:relative}
    .mega-panel{
      position:absolute;
      right:0;
      top:calc(100% + 14px);
      width:min(760px,calc(100vw - 48px));
      padding:18px;
      border-radius:28px;
      background:rgba(255,250,243,.96);
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      opacity:0;
      visibility:hidden;
      transform:translateY(8px);
      transition:.22s ease;
    }
    .mega-holder:hover .mega-panel,.mega-holder:focus-within .mega-panel{opacity:1;visibility:visible;transform:translateY(0)}
    .mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
    .mega-card{
      display:block;
      padding:18px;
      border-radius:22px;
      background:linear-gradient(180deg,#fff7ed,#fffaf3);
      border:1px solid rgba(154,90,46,.13);
      transition:.22s ease;
    }
    .mega-card:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:0 14px 30px rgba(154,90,46,.12)}
    .mega-card strong{display:block;margin-bottom:6px;color:var(--text)}
    .mega-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}
    .mobile-toggle{
      display:none;
      width:46px;height:46px;
      border-radius:16px;
      border:1px solid var(--border);
      background:#fffaf3;
      color:var(--text);
      font-size:22px;
    }
    .mobile-menu{display:none}
    .mobile-panel{
      padding:14px 0 22px;
      display:grid;
      gap:10px;
    }
    .section{padding:86px 0}
    .section-tight{padding:58px 0}
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border-radius:999px;
      color:var(--primary-dark);
      background:rgba(232,137,60,.13);
      border:1px solid rgba(232,137,60,.22);
      font-weight:800;
      font-size:13px;
    }
    .eyebrow:before{
      content:"";
      width:8px;height:8px;border-radius:50%;
      background:var(--primary);
      box-shadow:0 0 0 5px rgba(232,137,60,.16);
    }
    h1,h2,h3,p{margin-top:0}
    h1{
      margin:18px 0 20px;
      font-size:clamp(36px,5.2vw,62px);
      line-height:1.1;
      letter-spacing:-.055em;
      font-weight:900;
    }
    h2{
      font-size:clamp(28px,3.5vw,42px);
      line-height:1.18;
      letter-spacing:-.035em;
      font-weight:900;
      margin-bottom:16px;
    }
    h3{font-size:22px;line-height:1.35;font-weight:850;margin-bottom:10px}
    .lead{font-size:17px;color:var(--muted);line-height:1.9}
    .muted{color:var(--muted)}
    .hero{
      padding:78px 0 54px;
      min-height:450px;
      position:relative;
    }
    .hero-grid{
      display:grid;
      grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
      gap:42px;
      align-items:center;
    }
    .hero-card{
      position:relative;
      padding:26px;
      border-radius:34px;
      background:rgba(255,250,243,.82);
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .hero-card:before{
      content:"";
      position:absolute;
      inset:-80px -80px auto auto;
      width:220px;height:220px;
      border-radius:50%;
      background:rgba(232,137,60,.17);
    }
    .trust-strip{
      margin-top:24px;
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      align-items:center;
    }
    .trust-item{
      display:flex;
      align-items:center;
      gap:8px;
      padding:9px 13px;
      border-radius:999px;
      background:rgba(255,250,243,.82);
      border:1px solid rgba(154,90,46,.13);
      color:#5f5146;
      font-size:14px;
      font-weight:750;
    }
    .dot{width:9px;height:9px;border-radius:50%;background:var(--olive);box-shadow:0 0 0 4px rgba(122,139,69,.13)}
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
    .bullet-list{display:grid;gap:12px;margin:24px 0 0;padding:0;list-style:none}
    .bullet-list li{
      display:flex;
      gap:10px;
      color:var(--muted);
    }
    .bullet-list li:before{
      content:"";
      width:10px;height:10px;border-radius:50%;
      background:var(--primary);
      margin-top:10px;
      flex:0 0 auto;
      box-shadow:0 0 0 5px rgba(232,137,60,.12);
    }
    .filter-panel{
      display:grid;
      gap:14px;
      position:relative;
      z-index:1;
    }
    .search-box{
      display:flex;
      gap:10px;
      padding:12px;
      border-radius:22px;
      background:#fff7ed;
      border:1px solid var(--border);
    }
    .search-box input{
      width:100%;
      border:0;
      background:transparent;
      color:var(--text);
      outline:none;
      padding:8px 10px;
    }
    .tag-cloud,.filter-row{display:flex;flex-wrap:wrap;gap:10px}
    .tag{
      display:inline-flex;
      align-items:center;
      gap:7px;
      padding:8px 12px;
      border-radius:999px;
      background:rgba(255,247,237,.86);
      border:1px solid rgba(154,90,46,.14);
      color:#67584c;
      font-size:13px;
      font-weight:750;
    }
    .tag.active{background:linear-gradient(135deg,var(--primary),var(--amber));color:white;border-color:transparent}
    .tag.green{background:rgba(122,139,69,.12);color:#5f6f2d;border-color:rgba(122,139,69,.22)}
    .mini-path{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
    }
    .path-node{
      padding:16px;
      border-radius:22px;
      background:linear-gradient(180deg,#fffaf3,#fff7ed);
      border:1px solid rgba(154,90,46,.14);
      position:relative;
      min-height:112px;
    }
    .path-node:before{
      content:"";
      position:absolute;
      right:16px;top:16px;
      width:13px;height:13px;border-radius:50%;
      background:var(--primary);
      box-shadow:0 0 0 6px rgba(232,137,60,.13);
    }
    .path-node span{display:block;color:var(--weak);font-size:12px;font-weight:800;margin-bottom:10px}
    .path-node strong{display:block;font-size:17px;line-height:1.35}
    .toolbar{
      display:flex;
      justify-content:space-between;
      gap:18px;
      align-items:center;
      padding:18px;
      border-radius:28px;
      background:rgba(255,250,243,.86);
      border:1px solid var(--border);
      box-shadow:0 12px 35px rgba(154,90,46,.08);
    }
    .select-like{
      padding:11px 14px;
      border-radius:999px;
      border:1px solid var(--border);
      background:#fff7ed;
      color:#5f5146;
      font-weight:750;
    }
    .card-grid{
      display:grid;
      grid-template-columns:1.05fr .95fr 1fr;
      gap:18px;
      margin-top:24px;
      align-items:stretch;
    }
    .content-card{
      position:relative;
      padding:24px;
      border-radius:28px;
      background:rgba(255,250,243,.88);
      border:1px solid rgba(154,90,46,.14);
      box-shadow:0 14px 40px rgba(154,90,46,.08);
      transition:.22s ease;
      overflow:hidden;
    }
    .content-card:nth-child(2){transform:translateY(22px)}
    .content-card:nth-child(5){transform:translateY(-10px)}
    .content-card:hover{
      transform:translateY(-5px);
      border-color:var(--border-strong);
      box-shadow:var(--shadow-hover);
    }
    .content-card:nth-child(2):hover,.content-card:nth-child(5):hover{transform:translateY(-5px)}
    .content-card:after{
      content:"";
      position:absolute;
      right:18px;
      bottom:18px;
      width:12px;height:12px;
      border-radius:50%;
      background:rgba(232,137,60,.25);
      transition:.22s ease;
    }
    .content-card:hover:after{background:var(--primary);box-shadow:0 0 0 8px rgba(232,137,60,.13)}
    .card-meta{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin:14px 0 18px;
    }
    .text-link{
      color:var(--primary-dark);
      font-weight:850;
      display:inline-flex;
      align-items:center;
      gap:6px;
      transition:.22s ease;
    }
    .text-link:hover{color:var(--primary);transform:translateX(3px)}
    .route-section{
      position:relative;
      padding:30px;
      border-radius:34px;
      background:linear-gradient(135deg,rgba(255,250,243,.92),rgba(254,243,226,.82));
      border:1px solid var(--border);
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .route-line{
      position:absolute;
      left:52px;
      top:96px;
      bottom:38px;
      border-left:2px dashed rgba(232,137,60,.34);
    }
    .route-list{display:grid;gap:18px;position:relative;z-index:1}
    .route-item{
      display:grid;
      grid-template-columns:54px 1fr;
      gap:14px;
      align-items:start;
      padding:18px;
      border-radius:24px;
      background:rgba(255,250,243,.76);
      border:1px solid rgba(154,90,46,.12);
    }
    .route-num{
      width:42px;height:42px;
      display:grid;place-items:center;
      border-radius:16px;
      background:linear-gradient(135deg,var(--primary),var(--amber));
      color:#fff;
      font-weight:900;
      box-shadow:0 12px 26px rgba(232,137,60,.25);
    }
    .proof-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:22px;
      align-items:start;
    }
    .bubble{
      position:relative;
      padding:22px;
      border-radius:28px;
      background:#fffaf3;
      border:1px solid rgba(184,107,92,.20);
      box-shadow:0 16px 40px rgba(154,90,46,.10);
    }
    .bubble:after{
      content:"";
      position:absolute;
      left:34px;
      bottom:-10px;
      width:22px;height:22px;
      background:#fffaf3;
      border-right:1px solid rgba(184,107,92,.20);
      border-bottom:1px solid rgba(184,107,92,.20);
      transform:rotate(45deg);
    }
    .avatar-row{display:flex;align-items:center;margin:14px 0 0}
    .avatar{
      width:38px;height:38px;
      border-radius:50%;
      display:grid;
      place-items:center;
      color:#fff;
      font-weight:900;
      border:3px solid #fff7ed;
      margin-left:-10px;
      background:linear-gradient(135deg,var(--rose),var(--primary));
      box-shadow:0 8px 18px rgba(154,90,46,.16);
    }
    .avatar:first-child{margin-left:0}
    .avatar:nth-child(2n){background:linear-gradient(135deg,#c88956,#f59e0b)}
    .avatar:nth-child(3n){background:linear-gradient(135deg,#7a8b45,#d7a24d)}
    .recommend-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
    }
    .small-entry{
      padding:20px;
      border-radius:24px;
      background:rgba(255,250,243,.84);
      border:1px solid rgba(154,90,46,.14);
      transition:.22s ease;
    }
    .small-entry:hover{transform:translateY(-4px);border-color:var(--border-strong);box-shadow:0 18px 40px rgba(154,90,46,.12)}
    .faq-list{display:grid;gap:14px;margin-top:28px}
    .faq-item{
      border-radius:24px;
      background:rgba(255,250,243,.86);
      border:1px solid rgba(154,90,46,.14);
      overflow:hidden;
      transition:.22s ease;
    }
    .faq-question{
      width:100%;
      min-height:58px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding:18px 22px;
      background:transparent;
      border:0;
      color:var(--text);
      font-weight:850;
      text-align:left;
    }
    .faq-icon{transition:.22s ease;color:var(--primary-dark);font-size:20px}
    .faq-answer{
      max-height:0;
      overflow:hidden;
      transition:max-height .28s ease;
    }
    .faq-answer p{padding:0 22px 20px;margin:0;color:var(--muted)}
    .faq-item.open{border-color:var(--border-strong);box-shadow:0 14px 34px rgba(154,90,46,.09)}
    .faq-item.open .faq-answer{max-height:220px}
    .faq-item.open .faq-icon{transform:rotate(45deg)}
    .contact-card{
      display:grid;
      grid-template-columns:.95fr 1.05fr;
      gap:28px;
      padding:34px;
      border-radius:36px;
      background:
        radial-gradient(circle at 10% 20%,rgba(255,255,255,.46),transparent 28%),
        linear-gradient(135deg,rgba(232,137,60,.22),rgba(184,107,92,.15),rgba(255,250,243,.86));
      border:1px solid var(--border-strong);
      box-shadow:var(--shadow);
    }
    .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .form-field{display:grid;gap:7px}
    .form-field.full{grid-column:1/-1}
    label{font-size:13px;font-weight:850;color:#5d5045}
    input,select,textarea{
      width:100%;
      border:1px solid rgba(154,90,46,.16);
      background:rgba(255,250,243,.86);
      color:var(--text);
      border-radius:18px;
      padding:13px 15px;
      transition:.22s ease;
    }
    textarea{min-height:126px;resize:vertical}
    input:focus,select:focus,textarea:focus{
      border-color:rgba(232,137,60,.62);
      box-shadow:0 0 0 4px rgba(232,137,60,.12);
      outline:none;
      background:#fffaf3;
    }
    .site-footer{
      padding:58px 0 28px;
      color:#f8ead9;
      background:
        radial-gradient(circle at 80% 20%,rgba(232,137,60,.20),transparent 32%),
        linear-gradient(135deg,#2f241d,#3b2b20);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.35fr .75fr .75fr 1fr;
      gap:34px;
      padding-bottom:34px;
      border-bottom:1px solid rgba(255,247,237,.13);
    }
    .footer-brand{color:#fff;margin-bottom:14px}
    .site-footer p{color:#d8c5b2;margin:0}
    .site-footer a{
      display:block;
      color:#ead8c6;
      margin:8px 0;
      transition:.22s ease;
    }
    .site-footer a:hover{color:#fff;transform:translateX(3px)}
    .footer-title{font-weight:900;color:#fff;margin-bottom:12px}
    .copyright{
      padding-top:22px;
      display:flex;
      justify-content:space-between;
      gap:20px;
      color:#cdb9a4;
      font-size:13px;
      flex-wrap:wrap;
    }
    @media (max-width:1024px){
      .desktop-nav,.nav-cta{display:none}
      .mobile-toggle{display:grid;place-items:center}
      .mobile-menu.is-open{display:block}
      .hero-grid,.proof-grid,.contact-card{grid-template-columns:1fr}
      .card-grid{grid-template-columns:repeat(2,1fr)}
      .content-card:nth-child(2),.content-card:nth-child(5){transform:none}
      .recommend-grid{grid-template-columns:repeat(2,1fr)}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .site-container{width:min(100% - 28px,var(--container))}
      .nav-wrap{min-height:68px}
      .brand-text{font-size:17px}
      .brand-mark{width:34px;height:34px;border-radius:14px}
      .hero{padding:52px 0 34px}
      .section{padding:62px 0}
      .section-tight{padding:42px 0}
      .hero-card,.route-section,.contact-card{padding:22px;border-radius:28px}
      .mini-path,.card-grid,.recommend-grid,.form-grid{grid-template-columns:1fr}
      .toolbar{align-items:flex-start;flex-direction:column}
      .filter-row{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:4px}
      .tag{white-space:nowrap}
      .footer-grid{grid-template-columns:1fr}
      .copyright{display:grid}
    }
    @media (max-width:520px){
      h1{font-size:36px}
      h2{font-size:28px}
      .hero-actions .btn{width:100%}
      .trust-strip{align-items:stretch}
      .trust-item{width:100%}
      .path-node{min-height:auto}
      .faq-question{padding:16px 18px}
    }

/* roulang page: category2 */
:root{
      --sand:#FFF7ED;
      --apricot:#FEF3E2;
      --cream:#FFFDF8;
      --orange:#E8893C;
      --amber:#F59E0B;
      --rose:#B86B5C;
      --caramel:#9A5A2E;
      --olive:#7A8B45;
      --text:#2F241D;
      --muted:#6F6259;
      --soft:#8B7A70;
      --border:rgba(154,90,46,.16);
      --border-strong:rgba(232,137,60,.34);
      --shadow:0 18px 50px rgba(154,90,46,.12);
      --shadow-hover:0 24px 70px rgba(154,90,46,.18);
      --radius-xl:32px;
      --radius-lg:24px;
      --radius-md:18px;
      --header-h:78px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 8% 12%, rgba(245,158,11,.16), transparent 28%),
        radial-gradient(circle at 82% 18%, rgba(184,107,92,.14), transparent 32%),
        linear-gradient(180deg,var(--sand) 0%,#fffaf1 48%,#fff7ed 100%);
      line-height:1.8;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      z-index:-1;
      opacity:.55;
      background-image:
        radial-gradient(rgba(154,90,46,.14) 1px, transparent 1px),
        repeating-radial-gradient(ellipse at 18% 20%, transparent 0 22px, rgba(154,90,46,.055) 23px 24px, transparent 25px 48px);
      background-size:28px 28px, 640px 480px;
      mask-image:linear-gradient(to bottom, rgba(0,0,0,.9), rgba(0,0,0,.25));
    }
    a{color:inherit;text-decoration:none}
    img,svg{max-width:100%;display:block}
    button,input,textarea,select{font:inherit}
    button{cursor:pointer;border:0;background:none}
    input,textarea,select{outline:none}
    ::selection{background:rgba(232,137,60,.25)}
    .site-container{
      width:min(1180px, calc(100% - 40px));
      margin:0 auto;
    }
    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(255,247,237,.82);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(154,90,46,.13);
    }
    .nav-wrap{
      min-height:var(--header-h);
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
    }
    .brand,.footer-brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      font-weight:900;
      letter-spacing:-.02em;
      color:var(--text);
      white-space:nowrap;
    }
    .brand-text{font-size:20px}
    .brand-mark{
      width:38px;
      height:38px;
      border-radius:16px;
      background:
        radial-gradient(circle at 66% 32%, #fff 0 11%, transparent 12%),
        linear-gradient(135deg,var(--orange),var(--rose));
      position:relative;
      box-shadow:0 10px 24px rgba(232,137,60,.25);
      flex:0 0 auto;
    }
    .brand-mark::after{
      content:"";
      position:absolute;
      width:12px;
      height:12px;
      right:-3px;
      bottom:5px;
      border-radius:999px;
      background:var(--olive);
      border:3px solid var(--sand);
    }
    .desktop-nav{
      display:flex;
      align-items:center;
      gap:6px;
      padding:8px;
      border:1px solid rgba(154,90,46,.12);
      border-radius:999px;
      background:rgba(255,253,248,.66);
    }
    .nav-link{
      display:inline-flex;
      min-height:42px;
      align-items:center;
      justify-content:center;
      padding:0 16px;
      border-radius:999px;
      color:var(--muted);
      font-weight:700;
      font-size:14px;
      transition:all .22s ease;
      white-space:nowrap;
    }
    .nav-link:hover,.nav-link:focus-visible{
      color:var(--text);
      background:rgba(232,137,60,.12);
    }
    .nav-link.active{
      color:#fff;
      background:linear-gradient(135deg,var(--orange),var(--amber));
      box-shadow:0 12px 28px rgba(232,137,60,.26);
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:46px;
      padding:0 22px;
      border-radius:999px;
      font-weight:800;
      transition:all .22s ease;
      line-height:1;
      white-space:nowrap;
    }
    .btn-primary{
      color:#fff;
      background:linear-gradient(135deg,var(--orange),var(--amber));
      box-shadow:0 14px 32px rgba(232,137,60,.28);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(232,137,60,.36)}
    .btn-secondary{
      color:var(--text);
      background:rgba(255,253,248,.8);
      border:1px solid var(--border-strong);
      box-shadow:0 10px 26px rgba(154,90,46,.08);
    }
    .btn-secondary:hover{transform:translateY(-2px);border-color:rgba(232,137,60,.58);background:#fff}
    .btn:focus-visible,.mobile-toggle:focus-visible,.faq-q:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{
      outline:3px solid rgba(245,158,11,.34);
      outline-offset:3px;
    }
    .mega-holder{position:relative}
    .mega-panel{
      position:absolute;
      top:calc(100% + 14px);
      right:0;
      width:680px;
      max-width:calc(100vw - 48px);
      padding:18px;
      border:1px solid var(--border);
      border-radius:28px;
      background:rgba(255,253,248,.96);
      box-shadow:var(--shadow-hover);
      opacity:0;
      visibility:hidden;
      transform:translateY(8px);
      transition:all .22s ease;
    }
    .mega-holder:hover .mega-panel,.mega-holder:focus-within .mega-panel{
      opacity:1;
      visibility:visible;
      transform:translateY(0);
    }
    .mega-grid{
      display:grid;
      grid-template-columns:1fr 1fr 1fr;
      gap:12px;
    }
    .mega-card{
      padding:18px;
      min-height:132px;
      border-radius:22px;
      border:1px solid rgba(154,90,46,.14);
      background:linear-gradient(180deg,#fffdf8,#fff5e8);
      transition:all .22s ease;
    }
    .mega-card:hover{transform:translateY(-3px);border-color:rgba(232,137,60,.42);box-shadow:0 16px 36px rgba(154,90,46,.12)}
    .mega-card strong{display:block;font-size:16px;margin-bottom:8px}
    .mega-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}
    .mobile-toggle{
      display:none;
      width:46px;
      height:46px;
      border-radius:16px;
      color:var(--text);
      background:#fff8ef;
      border:1px solid var(--border);
      font-weight:900;
      font-size:20px;
    }
    .mobile-menu{display:none}
    .mobile-panel{
      padding:14px;
      margin-bottom:14px;
      border:1px solid var(--border);
      border-radius:24px;
      background:rgba(255,253,248,.96);
      box-shadow:var(--shadow);
      display:grid;
      gap:8px;
    }
    .section{padding:84px 0}
    .section-tight{padding:62px 0}
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border-radius:999px;
      color:var(--caramel);
      background:rgba(232,137,60,.12);
      border:1px solid rgba(232,137,60,.22);
      font-size:13px;
      font-weight:900;
      letter-spacing:.04em;
    }
    .eyebrow::before{
      content:"";
      width:8px;
      height:8px;
      border-radius:999px;
      background:var(--orange);
      box-shadow:0 0 0 6px rgba(232,137,60,.12);
    }
    h1,h2,h3,p{margin-top:0}
    h1{
      font-size:clamp(36px,6vw,64px);
      line-height:1.1;
      font-weight:900;
      letter-spacing:-.055em;
      margin:20px 0 22px;
    }
    h2{
      font-size:clamp(28px,4.2vw,42px);
      line-height:1.16;
      font-weight:900;
      letter-spacing:-.035em;
      margin:0 0 16px;
    }
    h3{font-size:21px;font-weight:850;line-height:1.25;margin-bottom:10px}
    .lead{font-size:17px;color:var(--muted);line-height:1.9}
    .muted{color:var(--muted)}
    .hero{
      position:relative;
      padding:54px 0 48px;
      overflow:hidden;
    }
    .hero::after{
      content:"";
      position:absolute;
      left:8%;
      right:8%;
      bottom:24px;
      height:2px;
      background:linear-gradient(90deg,transparent,rgba(232,137,60,.35),rgba(184,107,92,.22),transparent);
      border-radius:999px;
    }
    .profile-hero{
      border:1px solid var(--border);
      border-radius:40px;
      overflow:hidden;
      background:rgba(255,253,248,.74);
      box-shadow:var(--shadow);
      position:relative;
    }
    .profile-cover{
      min-height:214px;
      padding:30px;
      background:
        radial-gradient(circle at 20% 28%, rgba(255,255,255,.62) 0 11%, transparent 12%),
        radial-gradient(circle at 72% 34%, rgba(122,139,69,.18), transparent 25%),
        linear-gradient(135deg,rgba(232,137,60,.24),rgba(184,107,92,.16),rgba(255,247,237,.78));
      position:relative;
    }
    .route-line{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
      margin-top:36px;
      position:relative;
    }
    .route-line::before{
      content:"";
      position:absolute;
      left:6%;
      right:6%;
      top:25px;
      border-top:2px dashed rgba(154,90,46,.26);
    }
    .route-node{
      position:relative;
      z-index:1;
      padding:14px;
      border-radius:22px;
      background:rgba(255,253,248,.78);
      border:1px solid rgba(154,90,46,.14);
      box-shadow:0 12px 28px rgba(154,90,46,.08);
    }
    .route-dot{
      width:50px;
      height:50px;
      display:grid;
      place-items:center;
      border-radius:18px;
      color:#fff;
      font-weight:900;
      background:linear-gradient(135deg,var(--orange),var(--rose));
      box-shadow:0 12px 25px rgba(232,137,60,.25);
      margin-bottom:10px;
    }
    .profile-body{
      padding:0 32px 32px;
      display:grid;
      grid-template-columns:1.45fr .9fr;
      gap:28px;
      align-items:end;
      margin-top:-56px;
      position:relative;
      z-index:2;
    }
    .profile-main{
      display:grid;
      grid-template-columns:auto 1fr;
      gap:18px;
      align-items:end;
    }
    .big-avatar{
      width:112px;
      height:112px;
      border-radius:34px;
      border:6px solid rgba(255,253,248,.95);
      background:
        radial-gradient(circle at 34% 30%, #fff 0 8%, transparent 9%),
        linear-gradient(135deg,var(--orange),var(--rose));
      box-shadow:0 18px 34px rgba(154,90,46,.2);
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin-top:24px;
    }
    .badge-row,.tag-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:16px;
    }
    .badge,.tag{
      display:inline-flex;
      align-items:center;
      gap:7px;
      border-radius:999px;
      padding:8px 12px;
      font-size:13px;
      font-weight:800;
      color:var(--caramel);
      background:rgba(255,247,237,.9);
      border:1px solid rgba(154,90,46,.14);
    }
    .tag.active,.badge.hot{color:#fff;background:linear-gradient(135deg,var(--orange),var(--amber));border-color:transparent}
    .tag.green{color:#526328;background:rgba(122,139,69,.12);border-color:rgba(122,139,69,.22)}
    .stat-panel{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
    }
    .stat-card{
      padding:18px;
      border-radius:24px;
      border:1px solid var(--border);
      background:rgba(255,253,248,.9);
      box-shadow:0 14px 32px rgba(154,90,46,.09);
    }
    .stat-card strong{
      display:block;
      color:var(--orange);
      font-size:28px;
      line-height:1;
      margin-bottom:8px;
    }
    .avatar-wall{
      display:flex;
      align-items:center;
      gap:12px;
      margin-top:18px;
      color:var(--muted);
      font-size:13px;
      font-weight:700;
    }
    .avatars{display:flex}
    .avatar{
      width:34px;
      height:34px;
      display:grid;
      place-items:center;
      border-radius:999px;
      border:2px solid #fff8ef;
      margin-left:-8px;
      color:#fff;
      font-size:12px;
      font-weight:900;
      background:linear-gradient(135deg,var(--orange),var(--rose));
    }
    .avatar:first-child{margin-left:0}
    .layout{
      display:grid;
      grid-template-columns:282px 1fr;
      gap:28px;
      align-items:start;
    }
    .sidebar{
      position:sticky;
      top:calc(var(--header-h) + 22px);
      padding:20px;
      border-radius:28px;
      border:1px solid var(--border);
      background:rgba(255,253,248,.82);
      box-shadow:var(--shadow);
    }
    .sidebar-title{font-weight:900;margin-bottom:12px}
    .filter-list{display:grid;gap:10px}
    .filter-btn{
      width:100%;
      min-height:46px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      padding:0 14px;
      border-radius:16px;
      border:1px solid rgba(154,90,46,.12);
      background:#fff9f0;
      color:var(--muted);
      font-weight:800;
      transition:all .2s ease;
    }
    .filter-btn:hover,.filter-btn.active{
      color:var(--text);
      background:rgba(232,137,60,.14);
      border-color:rgba(232,137,60,.35);
      transform:translateX(2px);
    }
    .search-box{
      display:flex;
      gap:8px;
      margin:18px 0;
      padding:8px;
      border-radius:20px;
      border:1px solid rgba(154,90,46,.14);
      background:#fffdf8;
    }
    .search-box input{
      flex:1;
      min-width:0;
      border:0;
      background:transparent;
      padding:0 8px;
      color:var(--text);
    }
    .search-box button{
      width:40px;
      height:40px;
      border-radius:14px;
      color:#fff;
      background:var(--orange);
      font-weight:900;
    }
    .notice-bubble,.remark{
      position:relative;
      padding:14px 16px;
      border-radius:20px;
      background:rgba(254,243,226,.88);
      border:1px solid rgba(184,107,92,.22);
      color:var(--muted);
      font-size:13px;
      line-height:1.65;
    }
    .notice-bubble::after,.remark::after{
      content:"";
      position:absolute;
      left:22px;
      bottom:-8px;
      width:16px;
      height:16px;
      background:inherit;
      border-right:1px solid rgba(184,107,92,.22);
      border-bottom:1px solid rgba(184,107,92,.22);
      transform:rotate(45deg);
    }
    .content-head{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:20px;
      margin-bottom:22px;
    }
    .content-head p{max-width:680px;margin-bottom:0}
    .card-flow{display:grid;gap:16px}
    .list-card{
      display:grid;
      grid-template-columns:1fr 230px;
      gap:18px;
      padding:22px;
      border-radius:28px;
      border:1px solid var(--border);
      background:rgba(255,253,248,.86);
      box-shadow:0 14px 34px rgba(154,90,46,.08);
      transition:all .22s ease;
      position:relative;
      overflow:hidden;
    }
    .list-card::before{
      content:"";
      position:absolute;
      left:0;
      top:24px;
      width:5px;
      height:54px;
      border-radius:0 999px 999px 0;
      background:linear-gradient(var(--orange),var(--rose));
      opacity:.68;
      transition:all .22s ease;
    }
    .list-card:hover{
      transform:translateY(-4px);
      border-color:rgba(232,137,60,.38);
      box-shadow:var(--shadow-hover);
      background:#fffdf8;
    }
    .list-card:hover::before{height:78px;opacity:1}
    .card-meta{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin:12px 0 14px;
    }
    .card-summary{
      color:var(--muted);
      margin-bottom:16px;
      line-height:1.8;
    }
    .text-link{
      display:inline-flex;
      align-items:center;
      gap:6px;
      color:var(--orange);
      font-weight:900;
      transition:all .2s ease;
    }
    .text-link:hover{gap:10px;text-decoration:underline;text-underline-offset:4px}
    .side-note{
      display:flex;
      flex-direction:column;
      gap:12px;
      justify-content:space-between;
      min-height:100%;
    }
    .time{
      color:var(--soft);
      font-size:13px;
      font-weight:800;
    }
    .compare-card{
      margin-top:32px;
      padding:30px;
      border-radius:34px;
      border:1px solid rgba(184,107,92,.22);
      background:
        linear-gradient(135deg,rgba(255,253,248,.9),rgba(254,243,226,.78)),
        radial-gradient(circle at 90% 10%, rgba(232,137,60,.18), transparent 28%);
      box-shadow:var(--shadow);
    }
    .compare-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:14px;
      margin-top:22px;
    }
    .compare-item{
      padding:20px;
      border-radius:24px;
      background:#fffdf8;
      border:1px solid rgba(154,90,46,.13);
    }
    .compare-item .num{
      display:inline-grid;
      place-items:center;
      width:36px;
      height:36px;
      border-radius:14px;
      color:#fff;
      background:linear-gradient(135deg,var(--orange),var(--rose));
      font-weight:900;
      margin-bottom:12px;
    }
    .entry-grid{
      display:grid;
      grid-template-columns:1.15fr .85fr 1fr;
      gap:16px;
      margin-top:26px;
    }
    .entry-card{
      min-height:168px;
      padding:24px;
      border-radius:30px;
      border:1px solid var(--border);
      background:rgba(255,253,248,.86);
      box-shadow:0 14px 36px rgba(154,90,46,.08);
      transition:all .22s ease;
      position:relative;
      overflow:hidden;
    }
    .entry-card.tall{grid-row:span 2}
    .entry-card::after{
      content:"";
      position:absolute;
      width:86px;
      height:86px;
      right:-28px;
      bottom:-28px;
      border-radius:999px;
      background:rgba(232,137,60,.13);
    }
    .entry-card:hover{transform:translateY(-4px);border-color:rgba(232,137,60,.38);box-shadow:var(--shadow-hover)}
    .feedback-strip{
      display:grid;
      grid-template-columns:1fr 1fr 1fr;
      gap:16px;
      margin-top:28px;
    }
    .bubble-card{
      position:relative;
      padding:20px;
      border-radius:26px;
      border:1px solid rgba(184,107,92,.22);
      background:#fffdf8;
      box-shadow:0 14px 34px rgba(154,90,46,.08);
    }
    .bubble-card::after{
      content:"";
      position:absolute;
      left:30px;
      bottom:-9px;
      width:18px;
      height:18px;
      transform:rotate(45deg);
      background:#fffdf8;
      border-right:1px solid rgba(184,107,92,.22);
      border-bottom:1px solid rgba(184,107,92,.22);
    }
    .bubble-user{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:10px;
      font-weight:900;
    }
    .mini-avatar{
      width:34px;
      height:34px;
      border-radius:999px;
      display:grid;
      place-items:center;
      color:#fff;
      font-size:12px;
      font-weight:900;
      background:linear-gradient(135deg,var(--rose),var(--orange));
    }
    .faq-list{display:grid;gap:12px;max-width:900px;margin:28px auto 0}
    .faq-item{
      border:1px solid var(--border);
      border-radius:24px;
      background:rgba(255,253,248,.88);
      box-shadow:0 12px 28px rgba(154,90,46,.07);
      overflow:hidden;
      transition:all .22s ease;
    }
    .faq-item.open{border-color:rgba(232,137,60,.42)}
    .faq-q{
      width:100%;
      min-height:62px;
      display:flex;
      justify-content:space-between;
      align-items:center;
      gap:14px;
      padding:18px 22px;
      color:var(--text);
      font-weight:900;
      text-align:left;
    }
    .faq-icon{
      width:30px;
      height:30px;
      flex:0 0 auto;
      border-radius:999px;
      display:grid;
      place-items:center;
      background:rgba(232,137,60,.12);
      color:var(--orange);
      transition:transform .22s ease;
    }
    .faq-item.open .faq-icon{transform:rotate(45deg);background:var(--orange);color:#fff}
    .faq-a{
      display:none;
      padding:0 22px 20px;
      color:var(--muted);
    }
    .faq-item.open .faq-a{display:block}
    .contact-box{
      display:grid;
      grid-template-columns:.9fr 1.1fr;
      gap:30px;
      align-items:start;
      padding:36px;
      border-radius:38px;
      border:1px solid rgba(232,137,60,.28);
      background:
        radial-gradient(circle at 18% 24%, rgba(255,255,255,.52), transparent 22%),
        linear-gradient(135deg,rgba(232,137,60,.22),rgba(254,243,226,.94) 42%,rgba(184,107,92,.16));
      box-shadow:var(--shadow-hover);
    }
    .form-card{
      padding:22px;
      border-radius:28px;
      background:rgba(255,253,248,.82);
      border:1px solid rgba(154,90,46,.14);
      box-shadow:0 16px 36px rgba(154,90,46,.1);
    }
    .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .field{display:grid;gap:8px}
    .field.full{grid-column:1/-1}
    label{font-size:13px;font-weight:900;color:var(--caramel)}
    input,textarea,select{
      width:100%;
      border:1px solid rgba(154,90,46,.18);
      background:#fffdf8;
      color:var(--text);
      border-radius:17px;
      padding:0 15px;
      transition:all .2s ease;
    }
    input,select{height:52px}
    textarea{min-height:128px;padding-top:13px;resize:vertical}
    input:focus,textarea:focus,select:focus{
      border-color:rgba(232,137,60,.65);
      box-shadow:0 0 0 4px rgba(232,137,60,.12);
    }
    .site-footer{
      padding:58px 0 28px;
      background:linear-gradient(135deg,#2F241D,#3b291f);
      color:rgba(255,247,237,.82);
      margin-top:40px;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.35fr .75fr .75fr 1fr;
      gap:34px;
      padding-bottom:32px;
      border-bottom:1px solid rgba(255,247,237,.12);
    }
    .footer-brand{color:#fff;font-size:20px;margin-bottom:14px}
    .footer-title{
      color:#fff;
      font-weight:900;
      margin-bottom:14px;
    }
    .site-footer a{
      display:block;
      color:rgba(255,247,237,.72);
      margin:8px 0;
      transition:color .2s ease, transform .2s ease;
    }
    .site-footer a:hover{color:#fff;transform:translateX(3px)}
    .site-footer p{color:rgba(255,247,237,.66);margin:0}
    .copyright{
      padding-top:22px;
      display:flex;
      justify-content:space-between;
      gap:18px;
      color:rgba(255,247,237,.55);
      font-size:13px;
    }
    @media (max-width:1024px){
      .desktop-nav,.nav-cta{display:none}
      .mobile-toggle{display:grid;place-items:center}
      .mobile-menu.show{display:block}
      .profile-body{grid-template-columns:1fr;margin-top:-44px}
      .layout{grid-template-columns:1fr}
      .sidebar{position:relative;top:auto}
      .filter-list{grid-template-columns:repeat(3,1fr)}
      .compare-grid,.feedback-strip{grid-template-columns:1fr 1fr}
      .entry-grid{grid-template-columns:1fr 1fr}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .site-container{width:min(100% - 28px,1180px)}
      .section{padding:62px 0}
      .profile-cover{padding:22px;min-height:250px}
      .route-line{
        grid-template-columns:repeat(4,190px);
        overflow-x:auto;
        padding-bottom:8px;
        margin-left:-4px;
      }
      .profile-main{grid-template-columns:1fr}
      .big-avatar{width:94px;height:94px;border-radius:28px}
      .stat-panel,.list-card,.contact-box,.form-grid{grid-template-columns:1fr}
      .filter-list{
        display:flex;
        overflow-x:auto;
        padding-bottom:6px;
      }
      .filter-btn{min-width:160px}
      .content-head{display:block}
      .compare-grid,.feedback-strip,.entry-grid,.footer-grid{grid-template-columns:1fr}
      .entry-card.tall{grid-row:auto}
      .copyright{flex-direction:column}
      .nav-wrap{min-height:70px}
      .brand-text{font-size:17px}
      .brand-mark{width:34px;height:34px;border-radius:14px}
    }
    @media (max-width:520px){
      h1{font-size:36px;letter-spacing:-.04em}
      .profile-body{padding:0 18px 22px}
      .hero-actions .btn{width:100%}
      .profile-cover{padding:18px}
      .list-card,.compare-card,.contact-box{padding:20px}
      .sidebar{padding:16px;border-radius:24px}
      .footer-grid{gap:22px}
    }
