/* roulang page: index */
:root{
  --bg:#f5f4ef;
  --bg-soft:#fbfaf6;
  --surface:#ffffff;
  --surface-2:#f2efe7;
  --text:#16202f;
  --text-2:#4f5b6a;
  --text-3:#6f7884;
  --line:#e1ddd3;
  --line-2:#d2ccbf;
  --primary:#1b2432;
  --primary-2:#0f1723;
  --accent:#d9822b;
  --accent-2:#c46b17;
  --accent-soft:rgba(217,130,43,.12);
  --success:#2f7a56;
  --shadow:0 18px 50px rgba(16,24,40,.08);
  --shadow-soft:0 10px 28px rgba(16,24,40,.06);
  --radius:20px;
  --radius-sm:14px;
  --radius-xs:10px;
  --container:1180px;
  --header-h:78px;
  --space-1:6px;
  --space-2:10px;
  --space-3:14px;
  --space-4:18px;
  --space-5:24px;
  --space-6:32px;
  --space-7:44px;
  --space-8:64px;
  --space-9:92px;
  --transition:.26s cubic-bezier(.2,.8,.2,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(217,130,43,.10), transparent 35%),
    radial-gradient(circle at top right, rgba(27,36,50,.06), transparent 34%),
    linear-gradient(180deg, #f8f6f1 0%, #f5f4ef 42%, #efece3 100%);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Segoe UI",sans-serif;
  line-height:1.7;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
::selection{background:rgba(217,130,43,.22);color:var(--primary)}
.container{
  width:min(var(--container), calc(100% - 32px));
  margin:0 auto;
}
.skip-link{
  position:absolute;
  left:-9999px;
  top:12px;
  z-index:9999;
  background:var(--primary);
  color:#fff;
  padding:10px 16px;
  border-radius:999px;
}
.skip-link:focus{left:16px}
.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  backdrop-filter:saturate(180%) blur(16px);
  background:rgba(245,244,239,.82);
  border-bottom:1px solid rgba(209,202,189,.8);
}
.header-inner{
  min-height:var(--header-h);
  display:flex;
  align-items:center;
  gap:20px;
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
}
.brand-mark{
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:800;
  letter-spacing:.04em;
  background:
    linear-gradient(160deg, var(--primary) 0%, #243246 54%, var(--accent) 100%);
  box-shadow:0 12px 24px rgba(27,36,50,.18);
}
.brand-text{
  display:flex;
  flex-direction:column;
  line-height:1.2;
}
.brand-text strong{
  font-size:1rem;
  letter-spacing:.02em;
}
.brand-text span{
  font-size:.82rem;
  color:var(--text-3);
}
.nav-wrap{
  display:flex;
  align-items:center;
  gap:16px;
  margin-left:auto;
}
.nav-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--text);
  box-shadow:var(--shadow-soft);
}
.nav{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  color:var(--text-2);
  border:1px solid transparent;
  transition:transform var(--transition), background var(--transition), color var(--transition), border-color var(--transition), box-shadow var(--transition);
}
.nav a:hover,
.nav a:focus-visible{
  color:var(--primary);
  background:rgba(255,255,255,.82);
  border-color:rgba(209,202,189,.9);
  box-shadow:0 10px 18px rgba(16,24,40,.06);
  transform:translateY(-1px);
  outline:none;
}
.nav a.active{
  color:var(--primary);
  background:rgba(217,130,43,.10);
  border-color:rgba(217,130,43,.22);
}
.header-action{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  min-height:42px;
  border-radius:999px;
  border:1px solid rgba(27,36,50,.12);
  background:linear-gradient(180deg, #fff 0%, #f8f6f1 100%);
  color:var(--primary);
  box-shadow:var(--shadow-soft);
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.header-action:hover,
.header-action:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(217,130,43,.35);
  box-shadow:0 14px 26px rgba(16,24,40,.09);
  outline:none;
}
.hero{
  position:relative;
  overflow:hidden;
  padding:32px 0 18px;
}
.hero-shell{
  position:relative;
  border:1px solid rgba(255,255,255,.52);
  background:
    linear-gradient(90deg, rgba(14,20,31,.82) 0%, rgba(14,20,31,.70) 54%, rgba(14,20,31,.35) 100%),
    var(--hero-bg) center/cover no-repeat;
  border-radius:34px;
  box-shadow:0 28px 80px rgba(16,24,40,.16);
  overflow:hidden;
}
.hero-shell::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(120deg, rgba(217,130,43,.16), transparent 35%),
    radial-gradient(circle at 85% 20%, rgba(255,255,255,.14), transparent 28%);
  pointer-events:none;
}
.hero-inner{
  position:relative;
  display:grid;
  grid-template-columns:1.25fr .85fr;
  gap:28px;
  padding:44px;
  min-height:520px;
  align-items:center;
}
.hero-copy{
  color:#f7f8fa;
}
.hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
  color:#f5d7b7;
  font-size:.92rem;
  margin-bottom:18px;
  backdrop-filter:blur(8px);
}
.hero h1{
  margin:0;
  font-size:clamp(2.2rem, 4vw, 4.2rem);
  line-height:1.08;
  letter-spacing:-.03em;
}
.hero p{
  margin:18px 0 0;
  max-width:64ch;
  font-size:1.05rem;
  color:rgba(247,248,250,.82);
}
.hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:28px;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid transparent;
  font-weight:700;
  transition:transform var(--transition), box-shadow var(--transition), background var(--transition), color var(--transition), border-color var(--transition);
  will-change:transform;
}
.btn:hover,
.btn:focus-visible{
  transform:translateY(-1px);
  outline:none;
}
.btn-primary{
  background:linear-gradient(180deg, var(--accent) 0%, var(--accent-2) 100%);
  color:#fff;
  box-shadow:0 16px 28px rgba(217,130,43,.26);
}
.btn-primary:hover,
.btn-primary:focus-visible{
  box-shadow:0 20px 34px rgba(217,130,43,.30);
}
.btn-secondary{
  background:rgba(255,255,255,.08);
  color:#fff;
  border-color:rgba(255,255,255,.18);
}
.btn-secondary:hover,
.btn-secondary:focus-visible{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.28);
}
.btn-light{
  background:#fff;
  color:var(--primary);
  border-color:rgba(27,36,50,.08);
  box-shadow:var(--shadow-soft);
}
.btn-light:hover,
.btn-light:focus-visible{
  box-shadow:0 16px 28px rgba(16,24,40,.10);
}
.hero-meta{
  display:grid;
  gap:12px;
  grid-template-columns:repeat(2, minmax(0,1fr));
  margin-top:26px;
}
.mini-card{
  border-radius:22px;
  padding:16px 18px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(12px);
}
.mini-card strong{
  display:block;
  color:#fff;
  font-size:1.18rem;
  line-height:1.2;
}
.mini-card span{
  display:block;
  margin-top:6px;
  color:rgba(247,248,250,.72);
  font-size:.92rem;
}
.hero-visual{
  position:relative;
  display:grid;
  gap:14px;
}
.visual-frame{
  position:relative;
  border-radius:26px;
  overflow:hidden;
  min-height:310px;
  background:#111827;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 22px 44px rgba(0,0,0,.22);
}
.visual-frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.92;
}
.visual-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(14,20,31,.06) 0%, rgba(14,20,31,.50) 100%);
}
.visual-badge{
  position:absolute;
  left:16px;
  top:16px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(14,20,31,.72);
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
  font-size:.9rem;
}
.visual-note{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;
  padding:16px;
  border-radius:20px;
  background:rgba(14,20,31,.74);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  backdrop-filter:blur(12px);
}
.visual-note strong{display:block;font-size:1.02rem}
.visual-note p{margin:8px 0 0;color:rgba(255,255,255,.78);font-size:.92rem}
.search-bar{
  display:flex;
  gap:10px;
  padding:12px;
  border-radius:22px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
}
.search-bar input{
  flex:1;
  min-width:0;
  height:44px;
  border:none;
  outline:none;
  border-radius:14px;
  padding:0 14px;
  color:#fff;
  background:rgba(255,255,255,.10);
}
.search-bar input::placeholder{color:rgba(255,255,255,.62)}
.search-bar button{
  border:none;
  padding:0 18px;
  height:44px;
  border-radius:14px;
  background:linear-gradient(180deg, #f0a04a 0%, #d9822b 100%);
  color:#fff;
  font-weight:700;
  box-shadow:0 12px 22px rgba(217,130,43,.25);
}
.section{
  padding:var(--space-8) 0;
}
.section.tight{
  padding-top:var(--space-6);
}
.section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:24px;
}
.section-title{
  margin:0;
  font-size:clamp(1.4rem, 2vw, 2rem);
  line-height:1.15;
}
.section-subtitle{
  margin:10px 0 0;
  color:var(--text-2);
  max-width:68ch;
}
.section-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--primary);
  font-weight:700;
}
.section-link:hover{color:var(--accent)}
.badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  font-size:.84rem;
  font-weight:700;
  letter-spacing:.02em;
  border:1px solid transparent;
}
.badge.warn{
  color:var(--accent-2);
  background:var(--accent-soft);
  border-color:rgba(217,130,43,.22);
}
.badge.dark{
  color:#fff;
  background:rgba(27,36,50,.86);
}
.badge.soft{
  color:var(--primary);
  background:#f4efe5;
  border-color:rgba(27,36,50,.08);
}
.grid{
  display:grid;
  gap:18px;
}
.grid-4{grid-template-columns:repeat(4, minmax(0, 1fr))}
.grid-3{grid-template-columns:repeat(3, minmax(0, 1fr))}
.grid-2{grid-template-columns:repeat(2, minmax(0, 1fr))}
.card{
  background:var(--surface);
  border:1px solid rgba(210,204,191,.9);
  border-radius:var(--radius);
  box-shadow:var(--shadow-soft);
  overflow:hidden;
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.card:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow);
  border-color:rgba(217,130,43,.24);
}
.card-media{
  position:relative;
  overflow:hidden;
  aspect-ratio:16/10;
  background:var(--surface-2);
}
.card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s cubic-bezier(.2,.8,.2,1);
}
.card:hover .card-media img{
  transform:scale(1.03);
}
.card-body{
  padding:18px;
}
.card-top{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.card-title{
  margin:0;
  font-size:1.06rem;
  line-height:1.35;
  color:var(--primary);
}
.card-desc{
  margin:10px 0 0;
  color:var(--text-2);
  font-size:.96rem;
  line-height:1.75;
}
.card-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:16px;
}
.meta{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--text-3);
  font-size:.86rem;
}
.meta .dot{
  width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.45
}
.link-arrow{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--accent-2);
  font-weight:700;
}
.link-arrow svg{transition:transform var(--transition)}
.link-arrow:hover svg{transform:translateX(2px)}
.split{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:22px;
  align-items:start;
}
.panel{
  background:rgba(255,255,255,.74);
  border:1px solid rgba(210,204,191,.88);
  border-radius:28px;
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.panel-inner{padding:22px}
.list{
  display:grid;
  gap:12px;
}
.list-item{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:14px;
  align-items:start;
  padding:14px 0;
  border-bottom:1px solid rgba(210,204,191,.7);
}
.list-item:last-child{border-bottom:none;padding-bottom:0}
.list-index{
  width:34px;height:34px;border-radius:12px;
  display:grid;place-items:center;
  background:rgba(217,130,43,.12);
  color:var(--accent-2);
  font-weight:800;
}
.list-main h3{
  margin:0;
  font-size:1rem;
  line-height:1.4;
}
.list-main p{
  margin:6px 0 0;
  color:var(--text-2);
  font-size:.94rem;
  line-height:1.7;
}
.list-side{
  color:var(--text-3);
  font-size:.86rem;
  white-space:nowrap;
}
.side-box{
  position:relative;
  padding:22px;
  border-radius:26px;
  background:
    linear-gradient(180deg, rgba(27,36,50,.96) 0%, rgba(27,36,50,.90) 100%),
    var(--side-bg) center/cover no-repeat;
  color:#fff;
  overflow:hidden;
}
.side-box::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(217,130,43,.18), transparent 36%);
}
.side-box > *{position:relative}
.side-box h3{
  margin:0;
  font-size:1.2rem;
}
.side-box p{
  margin:10px 0 0;
  color:rgba(255,255,255,.78);
}
.side-list{
  margin:18px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}
.side-list li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:rgba(255,255,255,.88);
}
.side-list i{
  width:18px;height:18px;border-radius:50%;
  background:rgba(255,255,255,.14);
  display:grid;place-items:center;
  flex:none;
  margin-top:2px;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:12px;
  color:var(--accent-2);
  font-weight:800;
  letter-spacing:.04em;
  text-transform:none;
}
.feature-band{
  background:
    linear-gradient(180deg, rgba(255,255,255,.78) 0%, rgba(245,244,239,.92) 100%),
    url('/assets/images/backpic/back-2.jpg') center/cover no-repeat;
}
.feature-band .grid .card{
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(8px);
}
.feature-card{
  display:grid;
  grid-template-rows:auto 1fr;
}
.feature-card .card-media{aspect-ratio:4/3}
.feature-card .card-body{display:grid;gap:12px}
.feature-card ul{
  margin:0;
  padding:0 0 0 18px;
  color:var(--text-2);
}
.info-band{
  border-radius:30px;
  padding:28px;
  background:
    linear-gradient(135deg, rgba(27,36,50,.96), rgba(27,36,50,.86)),
    url('/assets/images/backpic/back-3.jpg') center/cover no-repeat;
  color:#fff;
  box-shadow:0 24px 60px rgba(16,24,40,.14);
  overflow:hidden;
  position:relative;
}
.info-band::after{
  content:"";
  position:absolute;
  inset:auto -20% -30% auto;
  width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle, rgba(217,130,43,.30), transparent 62%);
  pointer-events:none;
}
.info-band h2{margin:0;font-size:clamp(1.4rem,2vw,2rem)}
.info-band p{margin:12px 0 0;color:rgba(255,255,255,.78);max-width:70ch}
.info-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
  margin-top:20px;
}
.info-box{
  padding:18px;
  border-radius:22px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.11);
}
.info-box strong{
  display:block;
  font-size:1.02rem;
}
.info-box span{
  display:block;
  margin-top:8px;
  color:rgba(255,255,255,.74);
  font-size:.94rem;
}
.faq{
  display:grid;
  gap:14px;
}
.faq details{
  background:rgba(255,255,255,.84);
  border:1px solid rgba(210,204,191,.88);
  border-radius:20px;
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.faq summary{
  list-style:none;
  padding:18px 20px;
  cursor:pointer;
  font-weight:800;
  color:var(--primary);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"+";
  width:28px;height:28px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(217,130,43,.12);
  color:var(--accent-2);
  flex:none;
}
.faq details[open] summary::after{content:"—"}
.faq .answer{
  padding:0 20px 18px;
  color:var(--text-2);
}
.cta{
  position:relative;
  overflow:hidden;
}
.cta-shell{
  position:relative;
  border-radius:32px;
  padding:32px;
  background:
    linear-gradient(90deg, rgba(27,36,50,.94) 0%, rgba(27,36,50,.84) 60%, rgba(27,36,50,.64) 100%),
    url('/assets/images/backpic/back-2.webp') center/cover no-repeat;
  color:#fff;
  box-shadow:0 26px 70px rgba(16,24,40,.16);
}
.cta-shell::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(217,130,43,.18), transparent 38%);
}
.cta-grid{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
}
.cta h2{
  margin:0;
  font-size:clamp(1.5rem,2.2vw,2.2rem);
}
.cta p{
  margin:10px 0 0;
  color:rgba(255,255,255,.78);
  max-width:66ch;
}
.cta-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.footer{
  padding:28px 0 38px;
}
.footer-shell{
  padding:28px;
  border-radius:30px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(210,204,191,.9);
  box-shadow:var(--shadow-soft);
}
.footer-top{
  display:grid;
  grid-template-columns:1.1fr .9fr .9fr;
  gap:22px;
  align-items:start;
}
.footer h3{
  margin:0 0 14px;
  font-size:1rem;
  color:var(--primary);
}
.footer p{
  margin:0;
  color:var(--text-2);
}
.footer-links{
  display:grid;
  gap:10px;
}
.footer-links a{
  color:var(--text-2);
  transition:color var(--transition), transform var(--transition);
}
.footer-links a:hover,
.footer-links a:focus-visible{
  color:var(--accent-2);
  transform:translateX(2px);
  outline:none;
}
.footer-bottom{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(210,204,191,.8);
  display:flex;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  color:var(--text-3);
  font-size:.92rem;
}
.empty-state{
  padding:22px;
  border-radius:20px;
  background:rgba(255,255,255,.86);
  border:1px dashed rgba(210,204,191,.95);
  color:var(--text-3);
  text-align:center;
}
.article-list{
  display:grid;
  gap:12px;
}
.article-item{
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:start;
  padding:16px 18px;
  border-radius:20px;
  border:1px solid rgba(210,204,191,.88);
  background:rgba(255,255,255,.82);
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.article-item:hover{
  transform:translateY(-2px);
  border-color:rgba(217,130,43,.24);
  box-shadow:var(--shadow-soft);
}
.article-item h3{
  margin:0;
  font-size:1.02rem;
  line-height:1.45;
}
.article-item p{
  margin:8px 0 0;
  color:var(--text-2);
  font-size:.94rem;
  line-height:1.75;
}
.article-meta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
  color:var(--text-3);
  font-size:.85rem;
}
.article-item .article-go{
  align-self:center;
  color:var(--accent-2);
  font-weight:800;
  white-space:nowrap;
}
.article-item .article-go span{
  display:inline-block;
  transition:transform var(--transition);
}
.article-item:hover .article-go span{
  transform:translateX(2px);
}
.focus-ring:focus-visible{
  outline:3px solid rgba(217,130,43,.28);
  outline-offset:2px;
}
.scroll-top{
  position:fixed;
  right:18px;
  bottom:18px;
  width:46px;
  height:46px;
  border-radius:50%;
  border:1px solid rgba(27,36,50,.10);
  background:rgba(255,255,255,.90);
  box-shadow:var(--shadow);
  color:var(--primary);
  display:grid;
  place-items:center;
  opacity:0;
  visibility:hidden;
  transform:translateY(12px);
  transition:opacity var(--transition), visibility var(--transition), transform var(--transition), background var(--transition);
  z-index:900;
}
.scroll-top.show{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.scroll-top:hover{background:#fff}
@media (max-width: 1080px){
  .hero-inner{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .hero-visual{
    grid-template-columns:1fr 1fr;
    align-items:stretch;
  }
  .visual-frame{min-height:280px}
  .split,
  .footer-top{
    grid-template-columns:1fr;
  }
  .grid-4{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .grid-3{grid-template-columns:repeat(2, minmax(0, 1fr))}
}
@media (max-width: 768px){
  :root{--header-h:72px}
  .container{width:min(var(--container), calc(100% - 22px))}
  .header-inner{
    gap:12px;
  }
  .nav-toggle{display:inline-flex}
  .nav-wrap{
    position:relative;
    margin-left:auto;
  }
  .nav{
    position:absolute;
    top:56px;
    right:0;
    width:min(320px, calc(100vw - 22px));
    padding:12px;
    border-radius:20px;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(210,204,191,.92);
    box-shadow:var(--shadow);
    display:none;
    flex-direction:column;
    align-items:stretch;
  }
  .nav.is-open{display:flex}
  .nav a{
    justify-content:flex-start;
    width:100%;
  }
  .header-action{
    display:none;
  }
  .hero{
    padding-top:18px;
  }
  .hero-shell{
    border-radius:26px;
  }
  .hero-inner{
    padding:24px;
    gap:22px;
  }
  .hero-visual{
    grid-template-columns:1fr;
  }
  .hero-meta,
  .info-grid{
    grid-template-columns:1fr;
  }
  .grid-4,
  .grid-3,
  .grid-2{
    grid-template-columns:1fr;
  }
  .section{
    padding:56px 0;
  }
  .section-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .cta-shell,
  .footer-shell,
  .panel-inner{
    padding:20px;
  }
  .article-item,
  .list-item{
    grid-template-columns:1fr;
  }
  .list-side,
  .article-go{
    justify-self:start;
  }
}
@media (max-width: 520px){
  .brand-text span{display:none}
  .hero h1{
    font-size:2rem;
  }
  .hero p,
  .section-subtitle,
  .info-band p,
  .cta p{
    font-size:.96rem;
  }
  .hero-actions,
  .cta-actions{
    width:100%;
  }
  .btn{
    flex:1 1 100%;
  }
  .btn-secondary,
  .btn-light{
    width:100%;
  }
  .search-bar{
    flex-direction:column;
  }
  .search-bar button{
    width:100%;
  }
  .card-body{
    padding:16px;
  }
  .footer-bottom{
    flex-direction:column;
  }
}

/* roulang page: article */
:root{
  --bg:#f5f4ef;
  --bg-soft:#fbfaf6;
  --surface:#ffffff;
  --surface-2:#f2efe7;
  --text:#16202f;
  --text-2:#4f5b6a;
  --text-3:#6f7884;
  --line:#e1ddd3;
  --line-2:#d2ccbf;
  --primary:#1b2432;
  --primary-2:#0f1723;
  --accent:#d9822b;
  --accent-2:#c46b17;
  --accent-soft:rgba(217,130,43,.12);
  --success:#2f7a56;
  --shadow:0 18px 50px rgba(16,24,40,.08);
  --shadow-soft:0 10px 28px rgba(16,24,40,.06);
  --radius:20px;
  --radius-sm:14px;
  --radius-xs:10px;
  --container:1180px;
  --header-h:78px;
  --space-1:6px;
  --space-2:10px;
  --space-3:14px;
  --space-4:18px;
  --space-5:24px;
  --space-6:32px;
  --space-7:44px;
  --space-8:64px;
  --space-9:92px;
  --transition:.26s cubic-bezier(.2,.8,.2,1);
}
*,
*::before,
*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(217,130,43,.10), transparent 35%),
    radial-gradient(circle at top right, rgba(27,36,50,.06), transparent 34%),
    linear-gradient(180deg, #f8f6f1 0%, #f5f4ef 42%, #efece3 100%);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Segoe UI",sans-serif;
  line-height:1.7;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
::selection{background:rgba(217,130,43,.25)}
.container{
  width:min(var(--container), calc(100% - 32px));
  margin:0 auto;
}
.focus-ring:focus-visible,
.article-body a:focus-visible,
.footer a:focus-visible{
  outline:3px solid rgba(217,130,43,.34);
  outline-offset:3px;
}
.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  backdrop-filter:saturate(180%) blur(16px);
  background:rgba(245,244,239,.82);
  border-bottom:1px solid rgba(209,202,189,.8);
}
.header-inner{
  min-height:var(--header-h);
  display:flex;
  align-items:center;
  gap:20px;
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
}
.brand-mark{
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:800;
  letter-spacing:.04em;
  background:
    linear-gradient(160deg, var(--primary) 0%, #243246 54%, var(--accent) 100%);
  box-shadow:0 12px 24px rgba(27,36,50,.18);
}
.brand-text{
  display:flex;
  flex-direction:column;
  line-height:1.2;
}
.brand-text strong{
  font-size:1rem;
  letter-spacing:.02em;
}
.brand-text span{
  font-size:.82rem;
  color:var(--text-3);
}
.nav-wrap{
  display:flex;
  align-items:center;
  gap:16px;
  margin-left:auto;
}
.nav-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid var(--line);
  background:var(--surface);
  color:var(--text);
  box-shadow:var(--shadow-soft);
}
.nav{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  color:var(--text-2);
  border:1px solid transparent;
  transition:transform var(--transition), background var(--transition), color var(--transition), border-color var(--transition), box-shadow var(--transition);
}
.nav a:hover,
.nav a:focus-visible{
  color:var(--primary);
  background:rgba(255,255,255,.82);
  border-color:rgba(209,202,189,.9);
  box-shadow:0 10px 18px rgba(16,24,40,.06);
  transform:translateY(-1px);
  outline:none;
}
.nav a.active{
  color:var(--primary);
  background:rgba(217,130,43,.10);
  border-color:rgba(217,130,43,.22);
}
.header-action{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  min-height:42px;
  border-radius:999px;
  border:1px solid rgba(27,36,50,.12);
  background:linear-gradient(180deg, #fff 0%, #f8f6f1 100%);
  color:var(--primary);
  box-shadow:var(--shadow-soft);
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.header-action:hover,
.header-action:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(217,130,43,.35);
  box-shadow:0 14px 26px rgba(16,24,40,.09);
  outline:none;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:48px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid transparent;
  font-weight:700;
  transition:transform var(--transition), box-shadow var(--transition), background var(--transition), color var(--transition), border-color var(--transition);
  will-change:transform;
}
.btn:hover,
.btn:focus-visible{
  transform:translateY(-1px);
  outline:none;
}
.btn-primary{
  background:linear-gradient(180deg, var(--accent) 0%, var(--accent-2) 100%);
  color:#fff;
  box-shadow:0 16px 28px rgba(217,130,43,.26);
}
.btn-primary:hover,
.btn-primary:focus-visible{
  color:#fff;
  box-shadow:0 20px 34px rgba(217,130,43,.30);
}
.btn-secondary{
  background:#fff;
  color:var(--primary);
  border-color:var(--line);
  box-shadow:var(--shadow-soft);
}
.btn-secondary:hover,
.btn-secondary:focus-visible{
  border-color:rgba(217,130,43,.38);
  color:var(--primary);
}
.btn-ghost{
  background:rgba(255,255,255,.08);
  color:#fff;
  border-color:rgba(255,255,255,.18);
}
.btn-ghost:hover,
.btn-ghost:focus-visible{
  color:#fff;
  background:rgba(255,255,255,.14);
}
.badge-soft{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 12px;
  border-radius:999px;
  background:var(--accent-soft);
  color:#8d4e14;
  border:1px solid rgba(217,130,43,.18);
  font-size:.88rem;
  font-weight:700;
}
.page-hero{
  padding:32px 0 0;
}
.article-banner{
  position:relative;
  overflow:hidden;
  border-radius:32px;
  min-height:320px;
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 28px 80px rgba(16,24,40,.14);
  background:
    linear-gradient(90deg, rgba(15,23,35,.90) 0%, rgba(15,23,35,.76) 58%, rgba(15,23,35,.34) 100%),
    url('/assets/images/backpic/back-2.webp') center/cover no-repeat;
}
.article-banner::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 80% 10%, rgba(217,130,43,.28), transparent 27%),
    linear-gradient(120deg, rgba(255,255,255,.08), transparent 46%);
  pointer-events:none;
}
.article-hero-content{
  position:relative;
  z-index:1;
  width:min(860px, 100%);
  padding:42px;
  color:#fff;
}
.breadcrumbs{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
  font-size:.92rem;
  color:rgba(255,255,255,.72);
}
.breadcrumbs a{
  color:#f9d9b8;
  transition:color var(--transition);
}
.breadcrumbs a:hover{color:#fff}
.breadcrumbs span{color:rgba(255,255,255,.58)}
.article-hero-content h1{
  margin:18px 0 0;
  font-size:clamp(2rem, 4vw, 3.6rem);
  line-height:1.12;
  letter-spacing:-.035em;
  font-weight:850;
}
.article-summary{
  margin:18px 0 0;
  color:rgba(255,255,255,.78);
  font-size:1.02rem;
  max-width:760px;
}
.article-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.meta-pill{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.15);
  color:rgba(255,255,255,.86);
  backdrop-filter:blur(8px);
  font-size:.9rem;
}
.main-wrap{
  padding:var(--space-8) 0 var(--space-9);
}
.article-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 330px;
  gap:32px;
  align-items:start;
}
.article-panel{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(225,221,211,.92);
  border-radius:28px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.article-cover{
  position:relative;
  aspect-ratio:16/8;
  overflow:hidden;
  background:var(--surface-2);
}
.article-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s ease;
}
.article-panel:hover .article-cover img{transform:scale(1.025)}
.article-cover::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 45%, rgba(15,23,35,.42) 100%);
}
.article-cover-note{
  position:absolute;
  left:22px;
  bottom:18px;
  z-index:1;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.article-content-shell{
  padding:34px;
}
.reader-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding-bottom:22px;
  margin-bottom:28px;
  border-bottom:1px solid var(--line);
}
.reader-toolbar strong{
  display:block;
  color:var(--primary);
  font-size:1.02rem;
}
.reader-toolbar span{
  display:block;
  color:var(--text-3);
  font-size:.9rem;
  margin-top:2px;
}
.article-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.article-body{
  color:#263142;
  font-size:1.05rem;
  line-height:1.95;
  overflow-wrap:anywhere;
}
.article-body > *:first-child{margin-top:0}
.article-body p{
  margin:0 0 1.2em;
}
.article-body h2,
.article-body h3,
.article-body h4{
  color:var(--primary);
  line-height:1.35;
  letter-spacing:-.015em;
  margin:1.9em 0 .72em;
  font-weight:850;
}
.article-body h2{
  font-size:1.55rem;
  padding-left:14px;
  border-left:4px solid var(--accent);
}
.article-body h3{font-size:1.28rem}
.article-body h4{font-size:1.12rem}
.article-body a{
  color:#9a5619;
  font-weight:700;
  border-bottom:1px solid rgba(217,130,43,.36);
  transition:color var(--transition), border-color var(--transition), background var(--transition);
}
.article-body a:hover{
  color:var(--accent-2);
  border-color:var(--accent-2);
  background:rgba(217,130,43,.08);
}
.article-body img{
  width:auto;
  max-width:100%;
  border-radius:20px;
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  margin:26px auto;
}
.article-body blockquote{
  margin:28px 0;
  padding:22px 24px;
  border-left:5px solid var(--accent);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(217,130,43,.10), rgba(217,130,43,.05));
  color:#3b4655;
}
.article-body ul,
.article-body ol{
  margin:18px 0 24px;
  padding-left:1.3em;
}
.article-body li{margin:.45em 0}
.article-body hr{
  border:0;
  height:1px;
  background:var(--line);
  margin:34px 0;
}
.article-body table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  margin:26px 0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}
.article-body th,
.article-body td{
  padding:12px 14px;
  border-bottom:1px solid var(--line);
  vertical-align:top;
}
.article-body th{
  color:var(--primary);
  background:var(--surface-2);
}
.article-body tr:last-child th,
.article-body tr:last-child td{border-bottom:0}
.article-empty{
  text-align:center;
  padding:52px 20px;
  border-radius:24px;
  background:linear-gradient(180deg, #fff, #fbfaf6);
  border:1px dashed var(--line-2);
}
.article-empty h2{
  margin:0 0 10px;
  color:var(--primary);
  font-size:1.7rem;
}
.article-empty p{
  margin:0 auto 22px;
  max-width:520px;
  color:var(--text-2);
}
.note-box{
  margin-top:30px;
  padding:22px;
  border-radius:22px;
  background:linear-gradient(135deg, rgba(27,36,50,.96), rgba(39,52,71,.96));
  color:#fff;
  box-shadow:0 16px 36px rgba(16,24,40,.16);
}
.note-box strong{
  display:block;
  margin-bottom:6px;
}
.note-box p{
  margin:0;
  color:rgba(255,255,255,.76);
}
.post-nav{
  margin-top:28px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.post-nav a{
  min-height:86px;
  padding:18px;
  border-radius:20px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.post-nav a:hover,
.post-nav a:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(217,130,43,.34);
  box-shadow:0 18px 32px rgba(16,24,40,.08);
  outline:none;
}
.post-nav span{
  display:block;
  color:var(--text-3);
  font-size:.9rem;
}
.post-nav strong{
  display:block;
  margin-top:4px;
  color:var(--primary);
}
.sidebar{
  position:sticky;
  top:calc(var(--header-h) + 24px);
  display:grid;
  gap:18px;
}
.side-card{
  padding:22px;
  border-radius:24px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(225,221,211,.92);
  box-shadow:var(--shadow-soft);
}
.side-card.dark{
  background:linear-gradient(155deg, var(--primary) 0%, #26364b 72%, #9d5e21 130%);
  color:#fff;
  border-color:rgba(255,255,255,.10);
}
.side-card h2,
.side-card h3{
  margin:0 0 14px;
  font-size:1.1rem;
  line-height:1.4;
  color:var(--primary);
}
.side-card.dark h2,
.side-card.dark h3{color:#fff}
.side-card p{
  margin:0;
  color:var(--text-2);
  font-size:.95rem;
}
.side-card.dark p{color:rgba(255,255,255,.72)}
.info-list{
  display:grid;
  gap:10px;
}
.info-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid var(--line);
}
.info-row:last-child{border-bottom:0}
.info-row span:first-child{color:var(--text-3)}
.info-row span:last-child{
  color:var(--primary);
  font-weight:700;
  text-align:right;
}
.tag-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.tag-cloud a,
.tag-cloud span{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 11px;
  border-radius:999px;
  background:var(--surface-2);
  border:1px solid var(--line);
  color:var(--text-2);
  font-size:.88rem;
  transition:background var(--transition), color var(--transition), border-color var(--transition), transform var(--transition);
}
.tag-cloud a:hover,
.tag-cloud a:focus-visible{
  background:var(--accent-soft);
  color:#8d4e14;
  border-color:rgba(217,130,43,.25);
  transform:translateY(-1px);
  outline:none;
}
.related-section{
  margin-top:34px;
}
.section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.section-head h2{
  margin:0;
  color:var(--primary);
  font-size:1.45rem;
  letter-spacing:-.02em;
}
.section-head p{
  margin:4px 0 0;
  color:var(--text-3);
}
.related-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
}
.related-card{
  overflow:hidden;
  border-radius:22px;
  background:rgba(255,255,255,.88);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}
.related-card:hover,
.related-card:focus-within{
  transform:translateY(-3px);
  border-color:rgba(217,130,43,.32);
  box-shadow:0 20px 36px rgba(16,24,40,.10);
}
.related-card img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
.related-card-body{
  padding:16px;
}
.related-card .badge-soft{
  font-size:.78rem;
  padding:5px 9px;
}
.related-card h3{
  margin:10px 0 8px;
  font-size:1.02rem;
  line-height:1.45;
  color:var(--primary);
}
.related-card p{
  margin:0;
  color:var(--text-3);
  font-size:.9rem;
}
.cta-strip{
  margin-top:34px;
  padding:30px;
  border-radius:28px;
  background:
    linear-gradient(90deg, rgba(27,36,50,.95), rgba(27,36,50,.86)),
    url('/assets/images/backpic/back-1.webp') center/cover no-repeat;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  box-shadow:0 24px 60px rgba(16,24,40,.16);
  overflow:hidden;
}
.cta-strip h2{
  margin:0;
  font-size:1.45rem;
}
.cta-strip p{
  margin:6px 0 0;
  color:rgba(255,255,255,.74);
}
.footer{
  padding:0 0 32px;
}
.footer-shell{
  border-radius:30px;
  background:linear-gradient(180deg, #172131 0%, #101722 100%);
  color:#fff;
  overflow:hidden;
  box-shadow:0 28px 80px rgba(16,24,40,.20);
}
.footer-top{
  display:grid;
  grid-template-columns:1.4fr .8fr .8fr;
  gap:34px;
  padding:38px;
}
.footer p{
  margin:0;
  color:rgba(255,255,255,.66);
  max-width:58ch;
}
.footer h3{
  margin:0 0 14px;
  font-size:1rem;
  color:#fff;
}
.footer .brand-text span{color:rgba(255,255,255,.58)}
.footer-links{
  display:grid;
  gap:9px;
}
.footer-links a{
  color:rgba(255,255,255,.68);
  transition:color var(--transition), transform var(--transition);
}
.footer-links a:hover,
.footer-links a:focus-visible{
  color:#f3c18e;
  transform:translateX(2px);
  outline:none;
}
.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 38px;
  border-top:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.58);
  font-size:.92rem;
}
.footer-bottom a{
  color:#f3c18e;
}
@media (max-width:1100px){
  .header-action{display:none}
  .nav{gap:6px}
  .nav a{padding:0 10px}
  .article-layout{
    grid-template-columns:1fr;
  }
  .sidebar{
    position:static;
    grid-template-columns:repeat(3, 1fr);
  }
  .related-grid{grid-template-columns:repeat(2, 1fr)}
}
@media (max-width:820px){
  :root{--header-h:72px}
  .header-inner{min-height:72px}
  .brand-text span{display:none}
  .nav-toggle{display:inline-flex}
  .nav{
    position:absolute;
    left:16px;
    right:16px;
    top:calc(100% + 10px);
    display:none;
    padding:12px;
    border-radius:20px;
    background:rgba(255,255,255,.96);
    border:1px solid var(--line);
    box-shadow:var(--shadow);
  }
  .nav.is-open{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .nav a{
    min-height:44px;
    border-color:var(--line);
    background:#fff;
  }
  .page-hero{padding-top:22px}
  .article-banner{border-radius:24px}
  .article-hero-content{padding:30px 24px}
  .article-meta{gap:8px}
  .main-wrap{padding:42px 0 64px}
  .article-content-shell{padding:24px}
  .reader-toolbar{
    align-items:flex-start;
    flex-direction:column;
  }
  .sidebar{grid-template-columns:1fr}
  .post-nav{grid-template-columns:1fr}
  .cta-strip{
    align-items:flex-start;
    flex-direction:column;
    padding:24px;
  }
  .footer-top{grid-template-columns:1fr; padding:30px 24px}
  .footer-bottom{
    align-items:flex-start;
    flex-direction:column;
    padding:18px 24px;
  }
}
@media (max-width:560px){
  .container{width:min(100% - 24px, var(--container))}
  .brand-mark{width:38px;height:38px;border-radius:12px}
  .brand-text strong{font-size:.95rem}
  .nav-wrap{gap:10px}
  .nav.is-open{grid-template-columns:1fr}
  .article-hero-content h1{font-size:1.85rem}
  .article-summary{font-size:.96rem}
  .article-banner{min-height:300px}
  .article-content-shell{padding:20px 18px}
  .article-body{font-size:1rem;line-height:1.88}
  .article-body h2{font-size:1.32rem}
  .article-cover{aspect-ratio:4/3}
  .related-grid{grid-template-columns:1fr}
  .section-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .btn{
    width:100%;
    min-height:46px;
  }
  .article-actions,
  .cta-strip .btn{
    width:100%;
  }
}

/* roulang: framework shim */
/* 覆盖 Bootstrap 等对 a/btn 的全局默认，避免导航出现下划线/蓝链 */
.site-header a,.site-header a:hover,.navbar a,.navbar a:hover,.nav-links a,.nav-links a:hover,header nav a,header nav a:hover{text-decoration:none}
.site-header .btn,.navbar .btn,.nav-cta{text-decoration:none}
