/* ==========================================================================
   贝博看台 · 共享样式表 /assets/site.css
   轨道导航 + 规格校订台
   ========================================================================== */

/* 1. 变量与基础 ---------------------------------------------------------- */
:root{
  --bb-blue:#1B4F9C;
  --bb-indigo:#11213C;
  --bb-teal:#14585C;
  --bb-wine:#7B2E3F;
  --bb-orange:#F05A28;
  --bb-red:#C0392B;
  --bb-paper:#F4F1EA;
  --bb-gray:#E2E4E8;
  --bb-ink:#1C1F24;
  --bb-yellow:#F3C24E;

  --bb-line:rgba(28,31,36,.14);
  --bb-line-strong:rgba(28,31,36,.28);
  --bb-on-dark:rgba(255,255,255,.84);
  --bb-on-dark-soft:rgba(255,255,255,.58);

  --font-display:"Barlow Condensed","Archivo Narrow","Oswald","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;
  --font-serif:"Noto Serif SC","Source Han Serif SC","Songti SC","SimSun",Georgia,serif;
  --font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --font-hand:"Ma Shan Zheng","Xingkai SC",cursive;

  --rail-w:276px;
  --topbar-h:62px;

  --r-sm:8px;
  --r-md:16px;
  --r-lg:28px;
  --r-xl:40px;

  --wrap:1280px;
  --gutter:clamp(20px,4vw,64px);
  --shadow-soft:0 18px 44px -30px rgba(17,33,60,.6);
}

*,*::before,*::after{box-sizing:border-box;}

html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  scroll-padding-top:24px;
}

body{
  margin:0;
  padding-left:var(--rail-w);
  min-height:100vh;
  background-color:var(--bb-paper);
  background-image:
    linear-gradient(rgba(28,31,36,.03) 1px,transparent 1px),
    linear-gradient(90deg,rgba(28,31,36,.03) 1px,transparent 1px);
  background-size:32px 32px;
  background-attachment:fixed;
  color:var(--bb-ink);
  font-family:var(--font-serif);
  font-size:16px;
  line-height:1.85;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img,svg{max-width:100%;}
img{height:auto;display:block;}

h1,h2,h3,h4,h5,h6{
  margin:0 0 .6em;
  font-family:var(--font-serif);
  font-weight:600;
  line-height:1.3;
  letter-spacing:.01em;
  color:inherit;
}
h1{font-size:clamp(30px,4.4vw,54px);}
h2{font-size:clamp(24px,3.2vw,40px);}
h3{font-size:clamp(19px,2.2vw,25px);}
h4{font-size:17px;}
p{margin:0 0 1.1em;}
p:last-child{margin-bottom:0;}
ul,ol{margin:0 0 1.1em;padding-left:1.4em;}
a{color:var(--bb-blue);text-decoration-thickness:1px;text-underline-offset:3px;}
a:hover{color:var(--bb-indigo);}
strong{font-weight:600;}
small{font-size:13px;}
code,kbd,samp,pre{font-family:var(--font-mono);font-size:.92em;}
hr{border:0;border-top:1px solid var(--bb-line);margin:32px 0;}

::selection{background:var(--bb-yellow);color:var(--bb-ink);}

:focus-visible{
  outline:2px solid var(--bb-orange);
  outline-offset:3px;
  border-radius:4px;
}
.site-header :focus-visible{outline-color:var(--bb-yellow);}

/* 2. 跳至主内容 ---------------------------------------------------------- */
.skip-link{
  position:fixed;
  top:10px;
  left:10px;
  z-index:200;
  padding:10px 20px;
  border-radius:999px;
  background:var(--bb-indigo);
  color:#fff;
  font-family:var(--font-serif);
  font-size:14px;
  text-decoration:none;
  transform:translateY(-180%);
  transition:transform .18s ease-out;
}
.skip-link:focus{transform:none;color:#fff;}

/* 3. 侧边轨道头部 -------------------------------------------------------- */
.site-header{
  position:fixed;
  top:0;bottom:0;left:0;
  z-index:80;
  width:var(--rail-w);
  display:flex;
  flex-direction:column;
  gap:24px;
  padding:30px 22px 26px;
  background-color:var(--bb-blue);
  background-image:repeating-linear-gradient(180deg,rgba(255,255,255,.055) 0 1px,transparent 1px 34px);
  border-right:1px solid rgba(255,255,255,.16);
  color:#fff;
  overflow-y:auto;
  overscroll-behavior:contain;
}

.brand{
  display:block;
  padding-bottom:16px;
  border-bottom:1px solid rgba(255,255,255,.24);
  color:#fff;
  text-decoration:none;
}
.brand__mark{
  display:block;
  font-family:var(--font-serif);
  font-size:26px;
  font-weight:600;
  letter-spacing:.06em;
  line-height:1.2;
}
.brand__sub{
  display:block;
  margin-top:8px;
  font-size:12px;
  letter-spacing:.16em;
  color:var(--bb-on-dark-soft);
}
.brand:hover .brand__mark{color:var(--bb-yellow);}

.nav-toggle{
  display:none;
  align-items:center;
  gap:10px;
  padding:8px 16px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:999px;
  background:rgba(255,255,255,.1);
  color:#fff;
  font-family:var(--font-serif);
  font-size:14px;
  line-height:1;
  cursor:pointer;
  transition:background-color .16s ease-out,border-color .16s ease-out;
}
.nav-toggle:hover{background:rgba(255,255,255,.2);}
.nav-toggle__label{letter-spacing:.08em;}
.nav-toggle__bars{
  position:relative;
  display:block;
  width:16px;height:2px;
  border-radius:2px;
  background:currentColor;
}
.nav-toggle__bars::before,
.nav-toggle__bars::after{
  content:"";
  position:absolute;
  left:0;
  width:16px;height:2px;
  border-radius:2px;
  background:currentColor;
  transition:transform .18s ease-out,top .18s ease-out;
}
.nav-toggle__bars::before{top:-5px;}
.nav-toggle__bars::after{top:5px;}

.site-nav{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  min-height:0;
}

.nav-caption{
  margin:0 0 12px;
  font-family:var(--font-display);
  font-size:11px;
  font-weight:600;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--bb-on-dark-soft);
}

.nav-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}

.nav-item{list-style:none;}

.nav-link{
  position:relative;
  display:flex;
  align-items:baseline;
  gap:12px;
  padding:10px 12px 10px 16px;
  border-radius:var(--r-sm);
  color:var(--bb-on-dark);
  font-family:var(--font-serif);
  font-size:16px;
  line-height:1.5;
  text-decoration:none;
  transition:background-color .16s ease-out,color .16s ease-out,padding-left .16s ease-out;
}
.nav-link::before{
  content:"";
  position:absolute;
  left:4px;
  top:50%;
  width:3px;
  height:0;
  border-radius:999px;
  background:var(--bb-orange);
  transform:translateY(-50%);
  transition:height .16s ease-out;
}
.nav-link:hover{background:rgba(255,255,255,.1);color:#fff;}
.nav-link:hover::before{height:58%;}

.nav-link[aria-current="page"]{
  background:var(--bb-paper);
  color:var(--bb-blue);
  font-weight:600;
}
.nav-link[aria-current="page"]::before{height:64%;}

.nav-num{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--bb-orange);
}
.nav-link[aria-current="page"] .nav-num{color:var(--bb-red);}
.nav-label{flex:1 1 auto;}

.rail-shortcuts{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:auto;
  padding-top:20px;
  border-top:1px dashed rgba(255,255,255,.3);
}

.pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 14px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-family:var(--font-serif);
  font-size:13px;
  line-height:1.3;
  text-decoration:none;
  transition:background-color .16s ease-out,border-color .16s ease-out,color .16s ease-out;
}
.pill:hover,.pill:focus-visible{
  background:var(--bb-orange);
  border-color:var(--bb-orange);
  color:var(--bb-indigo);
}

/* 4. 页脚 ---------------------------------------------------------------- */
.site-footer{
  background-color:var(--bb-indigo);
  background-image:repeating-linear-gradient(180deg,rgba(255,255,255,.04) 0 1px,transparent 1px 30px);
  color:var(--bb-on-dark);
  font-family:var(--font-serif);
  font-size:14px;
  line-height:1.8;
}

.footer-inner{
  max-width:var(--wrap);
  margin:0 auto;
  padding:clamp(44px,6vw,72px) var(--gutter) clamp(28px,4vw,44px);
  display:grid;
  grid-template-columns:1fr;
  gap:32px;
}

.footer-brand__mark{
  margin:0;
  font-family:var(--font-serif);
  font-size:24px;
  font-weight:600;
  letter-spacing:.06em;
  color:#fff;
}
.footer-brand__note{
  margin:8px 0 0;
  font-size:12px;
  letter-spacing:.16em;
  color:var(--bb-on-dark-soft);
}

.footer-col__title{
  margin:0 0 14px;
  font-family:var(--font-display);
  font-size:12px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--bb-orange);
}
.footer-col__note{
  margin:16px 0 0;
  font-size:12px;
  line-height:1.75;
  color:var(--bb-on-dark-soft);
}

.footer-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:9px;
}
.footer-list a{
  color:var(--bb-on-dark);
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.18);
  padding-bottom:2px;
  transition:color .16s ease-out,border-color .16s ease-out;
}
.footer-list a:hover,.footer-list a:focus-visible{
  color:#fff;
  border-color:var(--bb-orange);
}

.footer-list--contact{gap:12px;}
.footer-list--contact li{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:10px;
  align-items:start;
}
.footer-key{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--bb-on-dark-soft);
  padding-top:3px;
}
.footer-val{color:#fff;}

.footer-icp{
  margin:18px 0 0;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.04em;
  color:var(--bb-on-dark-soft);
}

.footer-base{
  max-width:var(--wrap);
  margin:0 auto;
  padding:18px var(--gutter) 26px;
  border-top:1px dashed rgba(255,255,255,.22);
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:12px;
  letter-spacing:.04em;
  color:var(--bb-on-dark-soft);
}
.footer-base p{margin:0;}

/* 5. 布局与容器 ---------------------------------------------------------- */
.container{
  width:100%;
  max-width:var(--wrap);
  margin:0 auto;
  padding:0 var(--gutter);
}
.container--narrow{max-width:860px;}

.section{padding:clamp(48px,7vw,96px) 0;}
.section--tight{padding:clamp(28px,4vw,48px) 0;}

.grid{display:grid;gap:24px;grid-template-columns:1fr;}
.grid--split{grid-template-columns:1fr;}
.grid--split > *{grid-column:span 12;}
.span-4,.span-5,.span-7,.span-8{grid-column:span 12;}

.divider{
  height:1px;
  border:0;
  margin:32px 0;
  background:var(--bb-line);
}
.divider--dashed{
  height:0;
  background:none;
  border-top:1px dashed var(--bb-line-strong);
}

/* 6. 色彩分区 ------------------------------------------------------------ */
.zone{padding:clamp(40px,6vw,80px) 0;}
.zone--blue{background:var(--bb-blue);color:#fff;}
.zone--indigo{background:var(--bb-indigo);color:#fff;}
.zone--teal{background:var(--bb-teal);color:#fff;}
.zone--wine{background:var(--bb-wine);color:#fff;}
.zone--gray{background:var(--bb-gray);color:var(--bb-ink);}
.zone--blue a:not(.btn):not(.pill),
.zone--indigo a:not(.btn):not(.pill),
.zone--teal a:not(.btn):not(.pill),
.zone--wine a:not(.btn):not(.pill){
  color:#fff;
  text-decoration-color:rgba(255,255,255,.45);
}
.zone--blue .lede,.zone--indigo .lede,.zone--teal .lede,.zone--wine .lede{
  color:rgba(255,255,255,.8);
}
.zone--blue .kicker,.zone--indigo .kicker,.zone--teal .kicker,.zone--wine .kicker{
  color:var(--bb-yellow);
}
.zone--blue .divider,.zone--indigo .divider,.zone--teal .divider,.zone--wine .divider{
  background:rgba(255,255,255,.22);
}

/* 7. 通用文本组件 -------------------------------------------------------- */
.kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0 0 14px;
  font-family:var(--font-display);
  font-size:12px;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--bb-blue);
}
.kicker::before{
  content:"";
  width:28px;
  height:2px;
  border-radius:2px;
  background:var(--bb-orange);
}

.lede{
  max-width:64ch;
  font-size:17px;
  line-height:1.9;
  color:rgba(28,31,36,.78);
}

.annotation{
  font-family:var(--font-hand);
  font-size:18px;
  line-height:1.6;
  color:var(--bb-red);
  transform:rotate(-1.2deg);
}
.annotation--ink{color:var(--bb-blue);}

.tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 12px;
  border:1px solid rgba(27,79,156,.35);
  border-radius:999px;
  background:rgba(27,79,156,.06);
  color:var(--bb-blue);
  font-family:var(--font-serif);
  font-size:12px;
  letter-spacing:.06em;
  line-height:1.6;
  text-decoration:none;
  cursor:pointer;
  transition:background-color .16s ease-out,color .16s ease-out,border-color .16s ease-out;
}
.tag:hover{border-color:var(--bb-blue);}
.tag[aria-pressed="true"]{
  background:var(--bb-blue);
  border-color:var(--bb-blue);
  color:#fff;
}

/* 8. 按钮 ---------------------------------------------------------------- */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:13px 26px;
  border:1px solid transparent;
  border-radius:999px;
  font-family:var(--font-serif);
  font-size:15px;
  font-weight:600;
  line-height:1.2;
  text-decoration:none;
  cursor:pointer;
  transition:background-color .16s ease-out,color .16s ease-out,border-color .16s ease-out,transform .16s ease-out;
}
.btn:hover{transform:translateY(-1px);}
.btn--primary{background:var(--bb-blue);border-color:var(--bb-blue);color:#fff;}
.btn--primary:hover{background:var(--bb-indigo);border-color:var(--bb-indigo);color:#fff;}
.btn--accent{background:var(--bb-orange);border-color:var(--bb-orange);color:var(--bb-indigo);}
.btn--accent:hover{background:var(--bb-yellow);border-color:var(--bb-yellow);color:var(--bb-indigo);}
.btn--ghost{background:transparent;border-color:currentColor;color:var(--bb-blue);}
.btn--ghost:hover{background:rgba(27,79,156,.08);color:var(--bb-blue);}

/* 9. 面包屑 -------------------------------------------------------------- */
.breadcrumb{padding:22px 0 0;}
.breadcrumb__list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
  font-size:12px;
  letter-spacing:.06em;
  color:rgba(28,31,36,.62);
}
.breadcrumb__list li{list-style:none;}
.breadcrumb__list li:not(:first-child)::before{
  content:"/";
  margin-right:8px;
  color:var(--bb-red);
}
.breadcrumb__list a{
  color:inherit;
  text-decoration:none;
  border-bottom:1px solid rgba(28,31,36,.22);
}
.breadcrumb__list a:hover{color:var(--bb-blue);border-color:var(--bb-blue);}

/* 10. 数字锚点 ----------------------------------------------------------- */
.stat{display:flex;flex-direction:column;gap:6px;}
.stat__num{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(56px,9vw,140px);
  line-height:.86;
  letter-spacing:.02em;
  font-variant-numeric:tabular-nums;
  color:var(--bb-orange);
}
.stat__unit{
  margin-left:.2em;
  font-size:.26em;
  letter-spacing:.16em;
  color:currentColor;
}
.stat__label{
  font-size:12px;
  letter-spacing:.14em;
  color:rgba(28,31,36,.64);
}
.zone--blue .stat__num,.zone--indigo .stat__num,.zone--teal .stat__num,.zone--wine .stat__num{
  color:var(--bb-yellow);
}
.zone--blue .stat__label,.zone--indigo .stat__label,.zone--teal .stat__label,.zone--wine .stat__label{
  color:var(--bb-on-dark-soft);
}

/* 11. 规格表 ------------------------------------------------------------- */
.table-wrap{
  overflow-x:auto;
  border:1px solid var(--bb-line);
  border-radius:var(--r-md);
  background:#FBF9F4;
  box-shadow:var(--shadow-soft);
}
.spec-table{
  width:100%;
  border-collapse:collapse;
  font-family:var(--font-mono);
  font-size:14px;
  font-variant-numeric:tabular-nums;
  color:var(--bb-ink);
}
.spec-table caption{
  padding:14px 16px;
  text-align:left;
  font-family:var(--font-serif);
  font-size:13px;
  color:rgba(28,31,36,.66);
  border-bottom:1px solid var(--bb-line);
}
.spec-table thead th{
  position:sticky;
  top:0;
  z-index:3;
  padding:12px 14px;
  background:var(--bb-indigo);
  color:#fff;
  font-family:var(--font-display);
  font-size:13px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:left;
  white-space:nowrap;
}
.spec-table td{
  padding:11px 14px;
  border-top:1px solid var(--bb-gray);
  vertical-align:top;
}
.spec-table tbody tr:nth-child(even){background:rgba(226,228,232,.45);}
.spec-table tbody tr:hover{background:rgba(243,194,78,.4);}
.spec-table th:first-child,
.spec-table td:first-child{
  position:sticky;
  left:0;
  z-index:2;
  background:#FBF9F4;
  border-right:1px solid var(--bb-gray);
  white-space:nowrap;
}
.spec-table thead th:first-child{z-index:4;background:var(--bb-indigo);}
.spec-table tbody tr:hover td:first-child{background:#F7EFD8;}

/* 12. 图片容器（页面阶段放图） ------------------------------------------- */
.figure{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:0;
}
.figure__frame{
  position:relative;
  overflow:hidden;
  border:1px solid var(--bb-line);
  border-radius:var(--r-lg);
  background:var(--bb-gray);
  aspect-ratio:4 / 3;
}
.figure__frame img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.figure__frame--wide{aspect-ratio:16 / 9;}
.figure__frame--tall{aspect-ratio:3 / 4;}
.figure__cap{
  font-size:12px;
  line-height:1.7;
  letter-spacing:.04em;
  color:rgba(28,31,36,.62);
}
.zone--blue .figure__cap,.zone--indigo .figure__cap,.zone--teal .figure__cap,.zone--wine .figure__cap{
  color:var(--bb-on-dark-soft);
}

/* 13. 返回顶部 ----------------------------------------------------------- */
.to-top{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:70;
  width:46px;
  height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  background:var(--bb-indigo);
  color:#fff;
  font-family:var(--font-display);
  font-size:18px;
  line-height:1;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:opacity .2s ease-out,transform .2s ease-out,visibility .2s ease-out,background-color .16s ease-out;
}
.to-top[data-visible]{
  opacity:1;
  visibility:visible;
  transform:none;
}
.to-top:hover{background:var(--bb-blue);}

/* 14. 滚动显现 ----------------------------------------------------------- */
.has-js [data-reveal]{
  opacity:0;
  transform:translateY(16px);
  transition:opacity .34s ease-out,transform .34s ease-out;
}
.has-js [data-reveal].is-visible{
  opacity:1;
  transform:none;
}

/* 15. 平板 --------------------------------------------------------------- */
@media (min-width:768px){
  .grid--split{grid-template-columns:repeat(12,1fr);}
  .grid--split > *{grid-column:span 12;}
  .grid--split > .span-4{grid-column:span 4;}
  .grid--split > .span-5{grid-column:span 5;}
  .grid--split > .span-7{grid-column:span 7;}
  .grid--split > .span-8{grid-column:span 8;}

  .footer-inner{grid-template-columns:repeat(2,1fr);gap:36px;}
  .footer-base{flex-direction:row;justify-content:space-between;align-items:center;}
}

/* 16. 桌面：轨道常驻 ----------------------------------------------------- */
@media (min-width:1024px){
  .footer-inner{grid-template-columns:1.3fr 1fr 1fr 1.5fr;gap:40px;}
  .to-top{right:32px;bottom:32px;}
}

/* 17. 移动与平板：顶栏 + 抽屉 -------------------------------------------- */
@media (max-width:1023px){
  :root{--rail-w:0px;}
  html{scroll-padding-top:calc(var(--topbar-h) + 14px);}

  body{padding-left:0;padding-top:var(--topbar-h);}

  .site-header{
    top:0;right:0;bottom:auto;left:0;
    width:100%;
    height:var(--topbar-h);
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:0 16px;
    background-image:none;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.16);
    overflow:visible;
  }

  .brand{
    display:flex;
    align-items:baseline;
    gap:10px;
    padding-bottom:0;
    border-bottom:0;
  }
  .brand__mark{font-size:20px;letter-spacing:.04em;}
  .brand__sub{display:none;}

  .nav-toggle{display:inline-flex;}

  .site-nav{
    position:fixed;
    top:var(--topbar-h);
    right:0;bottom:0;left:0;
    z-index:79;
    padding:22px 18px 40px;
    background-color:var(--bb-indigo);
    background-image:repeating-linear-gradient(180deg,rgba(255,255,255,.04) 0 1px,transparent 1px 30px);
    overflow-y:auto;
    overscroll-behavior:contain;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-10px);
    transition:opacity .22s ease-out,transform .22s ease-out,visibility .22s ease-out;
  }
  .site-header[data-open] .site-nav{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }

  .nav-link{font-size:18px;padding:14px 14px 14px 18px;}
  .nav-caption{margin-bottom:16px;}
  .rail-shortcuts{margin-top:28px;padding-top:24px;}
  .pill{font-size:13px;padding:9px 16px;}

  .site-header[data-open] .nav-toggle{
    background:rgba(255,255,255,.22);
    border-color:rgba(255,255,255,.45);
  }
  .site-header[data-open] .nav-toggle__bars{background:transparent;}
  .site-header[data-open] .nav-toggle__bars::before{top:0;transform:rotate(45deg);}
  .site-header[data-open] .nav-toggle__bars::after{top:0;transform:rotate(-45deg);}

  .figure__frame{border-radius:var(--r-md);}
  .to-top{right:14px;bottom:14px;width:42px;height:42px;}
}

/* 18. reduced-motion ----------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  .has-js [data-reveal]{opacity:1;transform:none;}
  .to-top{transition:none;}
  .btn:hover{transform:none;}
}
