/* ===================================================================
   0. 字体 —— 本地自托管
   -------------------------------------------------------------------
   原先直接引 fonts.googleapis.com，这在国内是被墙的。后果不只是字体
   不显示：`window.load` 事件要等所有样式表有结果才触发，而本主题的
   全屏预加载层（#dt_preloader，z-index 9999999）正是靠 load 事件才
   隐藏 —— 于是整个页面会被一层看不见的遮罩盖住，点什么都没反应。

   所以字体一律改成随主题分发的本地文件，零外部请求。
   Inter / Plus Jakarta Sans 均为可变字体，一个文件覆盖全部字重。
   两者均为 SIL Open Font License 1.1，允许自托管与再分发。
   =================================================================== */

@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url('../fonts/Inter-400-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url('../fonts/Inter-400-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Plus Jakarta Sans';
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url('../fonts/PlusJakartaSans-600-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Plus Jakarta Sans';
	font-style: normal;
	font-weight: 200 800;
	font-display: swap;
	src: url('../fonts/PlusJakartaSans-600-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


/* ===================================================================
   0b. Font Awesome 图标字体 —— 本地自托管
   -------------------------------------------------------------------
   Ploto 把图标字体托管在 raw.githubusercontent.com，国内同样不可达。
   全站的箭头、社交图标、搜索图标、勾选标记都来自它，一旦拉不到，
   页面上所有图标都会变成空白方块。

   下面这些 @font-face 是从 ploto/assets/vendors/css/all.min.css 里
   原样提取的（unicode-range / font-display / 字重全部保留），
   只把 src 指向了随主题分发的本地文件。@font-face 同名同字重时
   后声明者生效，而本文件加载顺序在最后，所以能覆盖掉原始声明。
   =================================================================== */

@font-face {
	font-family:"Font Awesome 6 Brands";
	font-style:normal;
	font-weight:400;
	font-display:block;
	src:url('../fonts/fa-brands-400.woff2') format("woff2");
}

@font-face {
	font-family:"Font Awesome 6 Free";
	font-style:normal;
	font-weight:300;
	font-display:block;
	src:url('../fonts/fa-light-300.woff2') format("woff2");
}

@font-face {
	font-family:"Font Awesome 6 Free";
	font-style:normal;
	font-weight:400;
	font-display:block;
	src:url('../fonts/fa-regular-400.woff2') format("woff2");
}

@font-face {
	font-family:"Font Awesome 6 Free";
	font-style:normal;
	font-weight:900;
	font-display:block;
	src:url('../fonts/fa-solid-900.woff2') format("woff2");
}

@font-face {
	font-family:"Font Awesome 5 Brands";
	font-display:block;
	font-weight:400;
	src:url('../fonts/fa-brands-400.woff2') format("woff2");
}

@font-face {
	font-family:"Font Awesome 5 Pro";
	font-display:block;
	font-weight:900;
	src:url('../fonts/fa-solid-900.woff2') format("woff2");
}

@font-face {
	font-family:"Font Awesome 5 Pro";
	font-display:block;
	font-weight:400;
	src:url('../fonts/fa-regular-400.woff2') format("woff2");
}

@font-face {
	font-family:"Font Awesome 5 Pro";
	font-display:block;
	font-weight:300;
	src:url('../fonts/fa-light-300.woff2') format("woff2");
}

@font-face {
	font-family:"FontAwesome";
	font-display:block;
	src:url('../fonts/fa-solid-900.woff2') format("woff2");
}

@font-face {
	font-family:"FontAwesome";
	font-display:block;
	src:url('../fonts/fa-brands-400.woff2') format("woff2");
}

@font-face {
	font-family:"FontAwesome";
	font-display:block;
	src:url('../fonts/fa-regular-400.woff2') format("woff2");
	unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc;
}

@font-face {
	font-family:"FontAwesome";
	font-display:block;
	src:url('../fonts/fa-v4compatibility.woff2') format("woff2");
	unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a;
}

/* ===================================================================
   Softzen6 —— UI 定制层
   -------------------------------------------------------------------
   参考： popularaitools.ai/blog  (深色 + 橙强调 + 卡片网格)
          meetaitools.com         (字体 Inter / Plus Jakarta Sans、布局)

   全站最后一个加载的样式表，可覆盖 Ploto / Atromax 的任何样式。
   父主题大量使用 !important，因此本文件也需要对应使用。

   回滚：清空本文件即可 100% 还原 Atromax 原版外观。
   =================================================================== */


/* ===================================================================
   1. 设计 token
   =================================================================== */
:root {
	/* 强调色 —— 取自 popularaitools.ai (#ff6804)，与 Atromax 原橙 #FF5E14 极近 */
	--dt-main-rgb: 255, 104, 4;
	--dt-secondary-color: #0a0a0a;

	--sz-accent:        #ff6804;
	--sz-accent-hover:  #e55d00;
	--sz-accent-soft:   rgba(255, 104, 4, .12);
	--sz-accent-glow:   rgba(255, 104, 4, .28);

	/* 中性色阶 —— popularaitools 的层级 */
	--sz-bg:            #0a0a0a;   /* 页面底色 */
	--sz-bg-alt:        #0f0f0f;   /* 交替区块 */
	--sz-surface:       #141414;   /* 卡片 */
	--sz-surface-hover: #1a1a1a;
	--sz-border:        #1e1e1e;   /* 卡片描边 */
	--sz-border-strong: #27272a;   /* 分隔线 */

	--sz-text:          #fafafa;
	--sz-text-soft:     #d4d4d8;
	--sz-text-muted:    #a1a1aa;
	--sz-text-faint:    #71717a;

	/* 圆角 / 阴影 / 过渡 */
	--sz-r-sm: 8px;
	--sz-r:    12px;
	--sz-r-lg: 16px;
	--sz-r-xl: 24px;

	--sz-shadow:    0 1px 2px rgba(0,0,0,.4);
	--sz-shadow-lg: 0 12px 32px rgba(0,0,0,.55);

	--sz-ease: cubic-bezier(.22, .61, .36, 1);
	--sz-t:    .22s var(--sz-ease);

	/* 字体 */
	--sz-font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
	                   'PingFang SC', 'Microsoft YaHei', Roboto, sans-serif;
	--sz-font-display: 'Plus Jakarta Sans', 'Inter', -apple-system,
	                   BlinkMacSystemFont, 'PingFang SC', sans-serif;
}


/* ===================================================================
   2. 基础 / 排版
   =================================================================== */
html {
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}

body {
	background-color: var(--sz-bg) !important;
	color: var(--sz-text-muted) !important;
	font-family: var(--sz-font-body) !important;
	font-size: 16px;
	line-height: 1.7;
	letter-spacing: -0.005em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
.dt_slider-content .title,
.dt-section-title,
.sub-title {
	font-family: var(--sz-font-display) !important;
	color: var(--sz-text) !important;
	letter-spacing: -0.025em;
	line-height: 1.18;
	font-weight: 700;
}

h1 { font-size: clamp(36px, 4.2vw, 60px); font-weight: 800; }
h2 { font-size: clamp(28px, 3.0vw, 44px); }
h3 { font-size: clamp(20px, 1.9vw, 26px); }
h4 { font-size: 18px; }
h5 { font-size: 16px; }
h6 { font-size: 15px; }

p {
	color: var(--sz-text-muted) !important;
	line-height: 1.75;
}

a {
	color: var(--sz-text-soft);
	text-decoration: none;
	transition: color var(--sz-t);
}
a:hover, a:focus {
	color: var(--sz-accent) !important;
}

/* 小标签（Why Choose Us / Services / Faq's 这类） */
.sub-title {
	display: inline-flex !important;
	align-items: center;
	gap: .5em;
	font-family: var(--sz-font-body) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: .12em !important;
	text-transform: uppercase;
	color: var(--sz-accent) !important;
	background: var(--sz-accent-soft) !important;
	border: 1px solid rgba(255, 104, 4, .22) !important;
	border-radius: 999px !important;
	padding: .4em 1em !important;
}

::selection {
	background: var(--sz-accent);
	color: #fff;
}

/* 焦点可见性 —— 深色下原主题的 outline 几乎看不见 */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible {
	outline: 2px solid var(--sz-accent) !important;
	outline-offset: 2px !important;
	border-radius: var(--sz-r-sm);
}

/* 滚动条 */
* {
	scrollbar-width: thin;
	scrollbar-color: var(--sz-border-strong) var(--sz-bg);
}
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--sz-bg); }
::-webkit-scrollbar-thumb {
	background: var(--sz-border-strong);
	border-radius: 999px;
	border: 2px solid var(--sz-bg);
}
::-webkit-scrollbar-thumb:hover { background: #3f3f46; }


/* ===================================================================
   3. 通用区块底色
   父主题给各区块写死了浅色背景，这里统一压成深色，并交替明度做层次
   =================================================================== */
.site,
.site-content,
#content,
.dt_information,
.dt_choose,
.dt_service,
.dt_faq,
.dt_cta,
.dt_post,
.dt_posts,
.dt_breadcrumb,
.dt_page {
	background-color: var(--sz-bg) !important;
	background-image: none !important;
}

.dt_choose,
.dt_faq {
	background-color: var(--sz-bg-alt) !important;
}

/* ---------------------------------------------------------------
   预加载层 —— 点击陷阱防护
   #dt_preloader 是 position:fixed + z-index:9999999 的全屏遮罩，
   主题只在 $(window).on('load') 里把它 fadeOut。只要有任何一个
   外部资源慢或不可达，load 就迟迟不触发，这层遮罩就一直盖在页面上
   把所有点击吃掉 —— 表现就是「页面看着正常，点什么都没反应」。

   这里让它永远不接收指针事件：它是纯装饰，淡出动画照常播放，
   但无论何时都不会挡住用户操作。只给它自己的关闭按钮放行。
   --------------------------------------------------------------- */
.dt_preloader,
.dt_preloader * {
	pointer-events: none !important;
}
.dt_preloader .dt_preloader-close {
	pointer-events: auto !important;
}

.dt_preloader {
	background: var(--sz-bg) !important;
}
.dt_preloader-text { color: var(--sz-text) !important; }


/* ===================================================================
   4. 页眉 / 导航
   -------------------------------------------------------------------
   重要：Ploto 把 html 根字号设成了 12px（不是浏览器默认的 16px），
   所以本文件里的字号一律写成显式 px，绝对不要用 rem ——
   用 rem 的话实际渲染会缩水到 75%，页眉整排字会小得看不清。
   =================================================================== */
.dt_header-topbar {
	background: var(--sz-bg-alt) !important;
	border-bottom: 1px solid var(--sz-border) !important;
	font-size: 14px;
}
.dt_header-topbar,
.dt_header-topbar a,
.dt_header-topbar li,
.dt_header-topbar span,
.dt_header-widget a {
	color: var(--sz-text-muted) !important;
}
.dt_header-topbar a:hover { color: var(--sz-accent) !important; }

/* ---------------------------------------------------------------
   顶部条内的挂件 —— 复位成一行内联信息
   主题把「Trusted partner / 邮箱 / 营业时间 / 社交」每一项都写成
   <aside class="widget ...">，很容易被侧栏的卡片样式误伤。
   这里显式清掉卡片外观，并排成带细分隔线的一行。
   --------------------------------------------------------------- */
.dt_header-topbar .widget,
.dt_header-topbar aside.widget,
.dt_header-widget .widget {
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: visible !important;
}

.dt_header-topbar .dt-row > [class*="dt-col"] > div {
	display: flex;
	align-items: center;
	gap: 0;
	min-height: 44px;
}
.dt_header-topbar .widget--right > div,
.dt_header-topbar .widget--right {
	justify-content: flex-end;
}

/* 各项之间用一条细竖线分隔，而不是各自一个盒子 */
.dt_header-topbar .widget--right .widget + .widget {
	border-left: 1px solid var(--sz-border-strong) !important;
	margin-left: 16px !important;
	padding-left: 16px !important;
}

/* 每项内部：图标 + 文字 横向对齐 */
.dt_header-topbar .widget .contact__list {
	display: flex;
	align-items: center;
	gap: 8px;
}
.dt_header-topbar .widget .contact__body,
.dt_header-topbar .widget .contact__body .title,
.dt_header-topbar .widget .title,
.dt_header-topbar .widget h6 {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--sz-font-body) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	color: var(--sz-text-muted) !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	background: none !important;
	border: 0 !important;
}
.dt_header-topbar .widget .title a { color: var(--sz-text-muted) !important; }
.dt_header-topbar .widget .title a:hover { color: var(--sz-accent) !important; }

.dt_header-topbar .widget i {
	color: var(--sz-accent) !important;
	font-size: 14px !important;
}

/* 左侧那条「Trusted partner… Join us now →」 */
.dt_header-topbar .widget_text.info {
	display: flex;
	align-items: center;
	gap: 8px;
}
.dt_header-topbar .widget_text.info .line-normal {
	color: var(--sz-text) !important;
	font-weight: 600 !important;
	margin-left: 6px !important;
}
.dt_header-topbar .widget_text.info .line-normal i { font-size: 11px !important; }

/* 社交图标：去掉列表分隔线，排成一行小圆点 */
.dt_header-topbar .widget_social ul {
	display: flex !important;
	align-items: center;
	gap: 4px;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
.dt_header-topbar .widget_social li {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}
.dt_header-topbar .widget_social a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 999px !important;
	color: var(--sz-text-muted) !important;
	transition: background-color var(--sz-t), color var(--sz-t);
}
.dt_header-topbar .widget_social a:hover {
	background: var(--sz-accent-soft) !important;
	color: var(--sz-accent) !important;
}
.dt_header-topbar .widget_social a i { color: inherit !important; font-size: 13px !important; }

.dt_header,
.dt_header-inner,
.dt_header-navwrapper,
.dt_header-navwrapperinner,
.dt_navbar,
.dt_navbar-wrapper {
	background-color: var(--sz-bg) !important;
	background-image: none !important;
}

.dt_header-navwrapper {
	border-bottom: 1px solid var(--sz-border) !important;
}

/* 原主题在 logo 后面有一块斜切板，深色下会刺眼 */
.dt_navbar-wrapper::before,
.dt_navbar-wrapper::after,
.dt_header-navwrapperinner::before,
.dt_header-navwrapperinner::after {
	background: var(--sz-bg) !important;
	border-color: var(--sz-border) !important;
}

/* 主菜单 */
.dt_navbar-mainmenu > li > a,
.dt_navbar-mainmenu .nav-link,
.dt_navbar-nav .nav-link,
.dt_navbar-menu > nav a {
	color: var(--sz-text-soft) !important;
	font-family: var(--sz-font-body) !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	letter-spacing: -0.01em;
	transition: color var(--sz-t);
}
.dt_navbar-mainmenu > li > a:hover,
.dt_navbar-mainmenu .nav-link:hover,
.dt_navbar-mainmenu > li.active > a,
.dt_navbar-mainmenu > li.current-menu-item > a,
.dt_navbar-mainmenu > li.current_page_item > a {
	color: var(--sz-accent) !important;
}

/* 下拉菜单 */
.dt_navbar-mainmenu .sub-menu,
.dt_navbar-mainmenu .children,
.dt_navbar-nav .sub-menu,
.dt_navbar-menu .sub-menu {
	background: var(--sz-surface) !important;
	border: 1px solid var(--sz-border) !important;
	border-radius: var(--sz-r) !important;
	box-shadow: var(--sz-shadow-lg) !important;
	padding: 8px !important;
	overflow: hidden;
}
.dt_navbar-mainmenu .sub-menu li a,
.dt_navbar-nav .sub-menu li a,
.dt_navbar-menu .sub-menu li a {
	color: var(--sz-text-muted) !important;
	border: 0 !important;
	border-radius: var(--sz-r-sm) !important;
	padding: 9px 14px !important;
}
.dt_navbar-mainmenu .sub-menu li a:hover,
.dt_navbar-nav .sub-menu li a:hover,
.dt_navbar-menu .sub-menu li a:hover {
	background: var(--sz-surface-hover) !important;
	color: var(--sz-accent) !important;
}

/* 顶部条里的图标（邮件、时钟、社交）跟随 14px 正文放大 */
.dt_header-topbar i,
.dt_header-topbar .fa,
.dt_header-topbar [class^="fa"],
.dt_header-topbar [class*=" fa"] {
	font-size: 14px !important;
}
.dt_header-topbar .widget_social a,
.dt_header-topbar .social a {
	font-size: 15px !important;
}

/* Account 文字 / Get A Quote 按钮 */
.dt_user_btn,
.dt_navbar-user-item a {
	font-size: 15px !important;
	font-weight: 500 !important;
}
.dt_navbar-button-item .dt-btn {
	font-size: 15px !important;
}
.dt_navbar-search-toggle i,
.dt_navbar-search-toggle .fa {
	font-size: 18px !important;
}

/* 搜索 / 账号 图标 */
.dt_navbar-search-toggle,
.dt_user_btn,
.dt_navbar-user-item a,
.dt_navbar-search-item a {
	color: var(--sz-text-soft) !important;
	border-color: var(--sz-border-strong) !important;
}
.dt_navbar-search-toggle:hover,
.dt_user_btn:hover { color: var(--sz-accent) !important; }

/* ---------------------------------------------------------------
   搜索弹层
   原版打开动画是 `transition: all 1s ease`，并且子元素还挂了
   1200ms / 1500ms 的 transition-delay —— 点一下要等两秒多才完全
   可用，体感像是"点了没反应"。参考站这类浮层都在 200ms 级别。
   这里收紧到 .22s，并且只过渡必要的属性（all 会把 1s 过渡加到
   每一个属性上，开销大且容易卡住）。
   --------------------------------------------------------------- */
.dt_search.search--header {
	background: rgba(10, 10, 10, .94) !important;
	backdrop-filter: blur(14px);
	border: 0 !important;
	border-radius: 0 !important;
	transition: opacity .22s var(--sz-ease),
	            visibility .22s var(--sz-ease),
	            transform .28s var(--sz-ease) !important;
}

body.dt_header-search--active .dt_search.search--header {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) !important;
	margin-top: 0 !important;
	pointer-events: auto !important;
}

/* 子元素的长延迟一并收掉，否则输入框要 1.2 秒后才张开 */
.dt_search.search--header .dt_search-form,
.dt_search.search--header .dt_search-close,
.dt_search.search--header::before {
	transition-delay: 0s !important;
	transition-duration: .28s !important;
}
body.dt_header-search--active .dt_search.search--header .dt_search-form {
	transform: scaleX(1) !important;
}

.dt_search-form {
	background: transparent !important;
	border: 0 !important;
	border-bottom: 2px solid var(--sz-border-strong) !important;
	border-radius: 0 !important;
}
.dt_search.search--header .dt_search-field {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	color: var(--sz-text) !important;
	font-family: var(--sz-font-display) !important;
	font-size: 28px !important;
	padding: 14px 0 !important;
}
.dt_search.search--header .dt_search-field:focus {
	box-shadow: none !important;
}
.dt_search.search--header .dt_search-submit,
.dt_search.search--header .dt_search-close {
	color: var(--sz-text) !important;
}
.dt_search.search--header .dt_search-close:hover {
	color: var(--sz-accent) !important;
}

/* 移动端导航 */
.dt_mobilenav,
.dt_mobilenav-topbar,
.dt_mobilenav-topbar-content,
.dt_mobilenav-mainmenu,
.dt_mobilenav-mainmenu-content,
.dt_mobilenav-mainmenu-inner {
	background: var(--sz-bg) !important;
	border-color: var(--sz-border) !important;
}
.dt_mobilenav a,
.dt_mobilenav li > a { color: var(--sz-text-soft) !important; }
.dt_mobilenav a:hover { color: var(--sz-accent) !important; }


/* ===================================================================
   5. 按钮
   =================================================================== */
.dt-btn,
button[type="submit"],
input[type="submit"],
.wp-element-button {
	font-family: var(--sz-font-body) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: -0.01em !important;
	border-radius: 999px !important;
	padding: .8em 1.7em !important;
	border: 1px solid transparent !important;
	transition: background-color var(--sz-t), border-color var(--sz-t),
	            color var(--sz-t), transform var(--sz-t), box-shadow var(--sz-t) !important;
}

.dt-btn-primary,
button[type="submit"],
input[type="submit"] {
	background: var(--sz-accent) !important;
	border-color: var(--sz-accent) !important;
	color: #fff !important;
}
.dt-btn-primary:hover,
button[type="submit"]:hover,
input[type="submit"]:hover {
	background: var(--sz-accent-hover) !important;
	border-color: var(--sz-accent-hover) !important;
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 24px var(--sz-accent-glow) !important;
}

.dt-btn-border {
	background: transparent !important;
	border-color: var(--sz-border-strong) !important;
	color: var(--sz-text) !important;
}
.dt-btn-border:hover {
	background: var(--sz-surface-hover) !important;
	border-color: #3f3f46 !important;
	color: var(--sz-text) !important;
	transform: translateY(-2px);
}

.dt-btn-gray {
	background: var(--sz-surface) !important;
	border-color: var(--sz-border) !important;
	color: var(--sz-text-soft) !important;
}
.dt-btn-gray:hover {
	background: var(--sz-surface-hover) !important;
	color: var(--sz-text) !important;
}

.dt-btn-white {
	background: var(--sz-text) !important;
	border-color: var(--sz-text) !important;
	color: var(--sz-bg) !important;
}
.dt-btn-white:hover {
	background: #fff !important;
	color: var(--sz-bg) !important;
	transform: translateY(-2px);
}

/* 「了解更多」箭头链接 */
.dt-more {
	color: var(--sz-accent) !important;
	font-weight: 600 !important;
}

/* 回到顶部 */
button.dt_uptop {
	background: var(--sz-accent) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	box-shadow: 0 8px 24px var(--sz-accent-glow) !important;
}


/* ===================================================================
   6. 英雄轮播
   =================================================================== */
.dt_slider,
.dt_slider--one,
.dt_slider-wrapper,
.dt_slider-inner {
	background-color: var(--sz-bg) !important;
}

/* 控制英雄区高度，原主题会撑到很高留下大片空白 */
.dt_slider--one .dt_slider-item {
	position: relative;
	max-height: 78vh;
	min-height: 520px;
	overflow: hidden;
}
.dt_slider--one .dt_slider-item > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* 图片上压一层暗罩保证文字可读。
   左侧较重（文字区），右侧收到近乎透明，让照片本身仍然看得见。 */
.dt_slider-item::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			120% 90% at 50% 50%,
			rgba(10, 10, 10, .62) 0%,
			rgba(10, 10, 10, .34) 55%,
			rgba(10, 10, 10, .10) 100%
		),
		linear-gradient(
			180deg,
			rgba(10, 10, 10, .40) 0%,
			rgba(10, 10, 10, 0) 24%,
			rgba(10, 10, 10, 0) 72%,
			rgba(10, 10, 10, .58) 100%
		);
	pointer-events: none;
	z-index: 1;
}
.dt_slider-wrapper,
.dt_slider-inner,
.dt_slider-innercell,
.dt_slider-content {
	position: relative;
	z-index: 2;
}

/* 英雄区小标题做成和 .sub-title 一致的胶囊 */
.dt_slider-content .subtitle {
	display: inline-flex !important;
	align-items: center;
	gap: .5em;
	font-family: var(--sz-font-body) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: .12em !important;
	text-transform: uppercase;
	color: var(--sz-accent) !important;
	background: rgba(255, 104, 4, .14) !important;
	border: 1px solid rgba(255, 104, 4, .3) !important;
	border-radius: 999px !important;
	padding: .42em 1em !important;
	backdrop-filter: blur(6px);
	margin-bottom: 17.6px !important;
}

/* 标题里的高亮词。
   注意：SplitText 会把标题的每个词都包进 <span>，所以绝不能写
   `.title span { color: accent }` —— 那会把整个标题染成橙色。
   只针对主题自己标记的 .text-primary。 */
.dt_slider-content .title,
.dt_slider-content .title > span,
.dt_slider-content .title .word,
.dt_slider-content .title .char {
	color: var(--sz-text) !important;
}
.dt_slider-content .title .text-primary,
.dt_slider-content .title .text-primary > span,
.dt_slider-content .title .text-primary .word,
.dt_slider-content .title .text-primary .char {
	color: var(--sz-accent) !important;
}

.dt_slider-content .title,
.dt_slider-content h1,
.dt_slider-content h2 {
	font-family: var(--sz-font-display) !important;
	font-weight: 800 !important;
	letter-spacing: -0.035em !important;
	line-height: 1.08 !important;
	color: var(--sz-text) !important;
	/* Plus Jakarta Sans 比原字体宽，不限制会顶出容器 */
	font-size: clamp(36px, 4.4vw, 64px) !important;
	max-width: 17ch;
	overflow-wrap: break-word;
}
.dt_slider-content p,
.dt_slider-content .text {
	color: var(--sz-text-soft) !important;
	font-size: 17px !important;
	max-width: 52ch;
}

/* 标题和正文限宽之后，必须按所在幻灯片的对齐方式摆放，
   否则居中/右对齐的幻灯片上会出现标题居中、胶囊贴右的错位。 */
.dt_slider--one .dt-text-center .dt_slider-content .title,
.dt_slider--one .dt-text-center .dt_slider-content p,
.dt_slider--one .dt-text-center .dt_slider-content .text {
	max-width: 22ch;
	margin-left: auto !important;
	margin-right: auto !important;
}
.dt_slider--one .dt-text-center .dt_slider-content p,
.dt_slider--one .dt-text-center .dt_slider-content .text {
	max-width: 52ch;
}

.dt_slider--one .dt-text-right .dt_slider-content .title,
.dt_slider--one .dt-text-right .dt_slider-content p,
.dt_slider--one .dt-text-right .dt_slider-content .text {
	margin-left: auto !important;
	margin-right: 0 !important;
}

.dt_slider--one .dt-text-left .dt_slider-content .title,
.dt_slider--one .dt-text-left .dt_slider-content p,
.dt_slider--one .dt-text-left .dt_slider-content .text {
	margin-left: 0 !important;
	margin-right: auto !important;
}

/* 轮播导航箭头 / 圆点 */
.dt_owl_carousel.owl-carousel .owl-nav [class*="owl-"] {
	background: rgba(20, 20, 20, .72) !important;
	border: 1px solid var(--sz-border-strong) !important;
	color: var(--sz-text) !important;
	border-radius: 999px !important;
	backdrop-filter: blur(8px);
	transition: background var(--sz-t), border-color var(--sz-t);
}
.dt_owl_carousel.owl-carousel .owl-nav [class*="owl-"]:hover {
	background: var(--sz-accent) !important;
	border-color: var(--sz-accent) !important;
	color: #fff !important;
}
.dt_owl_carousel.owl-carousel .owl-dots .owl-dot span {
	background: #3f3f46 !important;
	border-radius: 999px !important;
}
.dt_owl_carousel.owl-carousel .owl-dots .owl-dot.active span {
	background: var(--sz-accent) !important;
}


/* ===================================================================
   7. 卡片 —— 全站统一成 popularaitools 那种深色描边卡
   =================================================================== */
.dt-information-box,
.dt-choose-single-box,
.dt_service-box,
.dt_service-item,
.dt_post_item,
.dt_post-item,
article.post,
.dt_blog-item {
	background: var(--sz-surface) !important;
	border: 1px solid var(--sz-border) !important;
	border-radius: var(--sz-r-lg) !important;
	box-shadow: none !important;
	overflow: hidden;
	transition: background-color var(--sz-t), border-color var(--sz-t),
	            transform var(--sz-t), box-shadow var(--sz-t);
}

.dt-information-box:hover,
.dt-choose-single-box:hover,
.dt_service-box:hover,
.dt_service-item:hover,
.dt_post_item:hover,
article.post:hover {
	background: var(--sz-surface-hover) !important;
	border-color: var(--sz-border-strong) !important;
	transform: translateY(-4px);
	box-shadow: var(--sz-shadow-lg) !important;
}

/* 卡内文字 */
.dt-information-box h3,
.dt-information-box h4,
.dt-choose-single-box h3,
.dt-choose-single-box h4,
.dt_service-box h3,
.dt_post_item h3,
.dt_post_item h2 {
	color: var(--sz-text) !important;
	font-size: 18px !important;
	line-height: 1.35 !important;
}
.dt-information-box p,
.dt-choose-single-box p,
.dt_service-box p,
.dt_post_item p {
	color: var(--sz-text-muted) !important;
	font-size: 15px !important;
}

/* 卡内分隔线 */
.dt-information-box hr,
.dt_service-box hr,
.dt-information-box .divider {
	border-color: var(--sz-border) !important;
	opacity: 1 !important;
}

/* 卡内图片统一 16:9 + 圆角 */
.dt-information-box img,
.dt_service-box img,
.dt_post_item img {
	border-radius: var(--sz-r) !important;
	width: 100%;
	height: auto;
	object-fit: cover;
	display: block;
}

/* 卡角的大号序号 01 02 03 —— 深色下调低存在感 */
.dt-information-box .number,
.dt-information-box .count,
.dt-information-box [class*="number"] {
	color: rgba(255, 104, 4, .10) !important;
	font-family: var(--sz-font-display) !important;
	font-weight: 800 !important;
}

/* 图标底板 */
.dt-information-box .icon-box .icon,
.dt-choose-single-box .icon,
.dt_service-box .icon {
	background: var(--sz-accent-soft) !important;
	color: var(--sz-accent) !important;
	border-radius: var(--sz-r) !important;
}

/* 卡片右下的圆形箭头按钮。
   父主题给它橙色实底，前面把图标也设成了橙色 → 橙底橙字看不见，这里改回白色。 */
.dt-information-box .dt-more,
.dt-choose-single-box .dt-more,
.dt_service-box .dt-more {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 999px !important;
	background: var(--sz-accent) !important;
	color: #fff !important;
	border: 0 !important;
	transition: background-color var(--sz-t), transform var(--sz-t),
	            box-shadow var(--sz-t);
}
.dt-information-box .dt-more i,
.dt-choose-single-box .dt-more i,
.dt_service-box .dt-more i {
	color: #fff !important;
}
.dt-information-box .dt-more:hover,
.dt-choose-single-box .dt-more:hover,
.dt_service-box .dt-more:hover {
	background: var(--sz-accent-hover) !important;
	transform: translateY(-2px) rotate(-45deg);
	box-shadow: 0 8px 20px var(--sz-accent-glow) !important;
}

/* 卡片标题里的链接 */
.dt-information-box .title a,
.dt_service-box .title a,
.dt_post_item .title a {
	color: var(--sz-text) !important;
}
.dt-information-box .title a:hover,
.dt_service-box .title a:hover,
.dt_post_item .title a:hover {
	color: var(--sz-accent) !important;
}

/* 卡内正文 */
.dt-information-box .text,
.dt-choose-single-box .text,
.dt_service-box .text {
	color: var(--sz-text-muted) !important;
	font-size: 15px !important;
}


/* ===================================================================
   8. 浅色工具类 & 区块标题
   主题用 .bg-light / .bg-secondary 给区块刷底色，深色下必须压掉
   =================================================================== */
.bg-light,
.bg-secondary,
section.bg-light,
section.bg-secondary {
	background-color: var(--sz-bg-alt) !important;
	background-image: none !important;
}

/* 区块标题（.sec-title）与其外层 .title-wrap */
.sec-title {
	font-family: var(--sz-font-display) !important;
	font-weight: 800 !important;
	color: var(--sz-text) !important;
	letter-spacing: -0.03em !important;
	line-height: 1.16 !important;
	font-size: clamp(28px, 3.1vw, 44px) !important;
}
.sec-title .text-primary,
.sec-title span.text-primary {
	color: var(--sz-accent) !important;
}
.title-wrap p,
.title-wrap .text {
	color: var(--sz-text-muted) !important;
}
.text-white,
.text-white * {
	color: var(--sz-text) !important;
}


/* ===================================================================
   9. FAQ 手风琴
   真实结构：.accordion-outer > .accordion(.accordion--open)
              > h4.accordion__title > i.accordion__icon
              + .accordion__content
   =================================================================== */
.accordion-outer {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.dt_faq .accordion,
.accordion-outer .accordion {
	background: var(--sz-surface) !important;
	border: 1px solid var(--sz-border) !important;
	border-radius: var(--sz-r) !important;
	box-shadow: none !important;
	overflow: hidden;
	transition: border-color var(--sz-t), background-color var(--sz-t);
}
.dt_faq .accordion:hover,
.accordion-outer .accordion:hover {
	border-color: var(--sz-border-strong) !important;
}

/* 展开态用极淡的橙色底 + 橙色左边框标识，而不是整块刷橙 */
.dt_faq .accordion.accordion--open,
.accordion-outer .accordion.accordion--open {
	background: linear-gradient(
		180deg,
		rgba(255, 104, 4, .07) 0%,
		rgba(255, 104, 4, .02) 100%
	) !important;
	border-color: rgba(255, 104, 4, .32) !important;
}

.dt_faq .accordion__title,
.accordion-outer .accordion__title {
	background: transparent !important;
	color: var(--sz-text) !important;
	font-family: var(--sz-font-display) !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	line-height: 1.45 !important;
	margin: 0 !important;
	padding: 17.6px 57.6px 17.6px 20px !important;
	position: relative;
	cursor: pointer;
	transition: color var(--sz-t);
}
.dt_faq .accordion__title:hover,
.accordion-outer .accordion__title:hover {
	color: var(--sz-accent) !important;
}
.dt_faq .accordion--open .accordion__title,
.accordion-outer .accordion--open .accordion__title {
	color: var(--sz-accent) !important;
}

/* 右侧圆形 +/× 图标 */
.dt_faq .accordion__icon,
.accordion-outer .accordion__icon {
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 34px;
	height: 34px;
	border-radius: 999px !important;
	background: var(--sz-accent-soft) !important;
	color: var(--sz-accent) !important;
	border: 1px solid rgba(255, 104, 4, .26) !important;
	transition: background-color var(--sz-t), color var(--sz-t),
	            transform var(--sz-t);
}
.dt_faq .accordion--open .accordion__icon,
.accordion-outer .accordion--open .accordion__icon {
	background: var(--sz-accent) !important;
	color: #fff !important;
	border-color: var(--sz-accent) !important;
}

.dt_faq .accordion__content,
.accordion-outer .accordion__content {
	background: transparent !important;
	border-top: 1px solid var(--sz-border) !important;
	padding: 17.6px 20px !important;
}
.dt_faq .accordion__content p,
.accordion-outer .accordion__content p {
	color: var(--sz-text-muted) !important;
	font-size: 15px !important;
	margin: 0;
}


/* ===================================================================
   10. CTA 区
   原结构：.bg-image > img（照片） + .overlay > .overlay-img（橙色图案）
   原版是一整幅橙色色带，和参考站的克制风格冲突 —— 去掉橙色图案，
   把照片压暗成背景，内容直接落在上面，做成整幅深色条带。
   =================================================================== */
.dt_cta,
.dt_cta--one,
section.dt_cta.bg-light {
	background: var(--sz-bg-alt) !important;
	position: relative;
	isolation: isolate;
}

.dt_cta .bg-image {
	position: absolute;
	inset: 0;
	z-index: 0;
}
.dt_cta .bg-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: .22;
	filter: grayscale(.35);
}

/* 橙色花纹图案去掉，换成自左向右的深色渐变 */
.dt_cta .overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(
		90deg,
		rgba(10, 10, 10, .96) 0%,
		rgba(10, 10, 10, .86) 45%,
		rgba(10, 10, 10, .72) 100%
	) !important;
}
.dt_cta .overlay-img {
	display: none !important;
}

.dt_cta .dt-container {
	position: relative;
	z-index: 2;
}

.dt_cta .sec-title,
.dt_cta h2,
.dt_cta h3 { color: var(--sz-text) !important; }
.dt_cta p  { color: var(--sz-text-muted) !important; }

/* 右侧「Need Help? +002 (345) 6789」 */
.dt_cta .widget_contact,
.dt_cta .callus-contact {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
}
.dt_cta .widget_contact .description { color: var(--sz-text-muted) !important; }
.dt_cta .widget_contact a,
.dt_cta .contact__body a,
.dt_cta .contact__body strong {
	color: var(--sz-text) !important;
	font-family: var(--sz-font-display) !important;
	font-weight: 700 !important;
}
.dt_cta .widget_contact i {
	color: var(--sz-accent) !important;
}


/* ===================================================================
   10b. 博客卡片
   真实结构：article.dt_post_item > .inner
              > .meta(.category/.date) + h5.title + .content + .meta-down
   白底就挂在 .inner 上 —— 不覆盖的话会白底白字，标题完全看不见。
   参考 popularaitools.ai/blog 的卡片：分类胶囊 + 标题 + 摘要 + 日期。
   =================================================================== */
.dt_post_item,
article.dt_post_item {
	background: transparent !important;
	border: 0 !important;
	overflow: visible;
}

.dt_post_item .inner,
.dt_posts--one .inner {
	background: var(--sz-surface) !important;
	border: 1px solid var(--sz-border) !important;
	border-radius: var(--sz-r-lg) !important;
	box-shadow: none !important;
	padding: 24px !important;
	height: 100%;
	transition: background-color var(--sz-t), border-color var(--sz-t),
	            transform var(--sz-t), box-shadow var(--sz-t);
}
.dt_post_item .inner:hover,
.dt_posts--one .inner:hover {
	background: var(--sz-surface-hover) !important;
	border-color: var(--sz-border-strong) !important;
	transform: translateY(-4px);
	box-shadow: var(--sz-shadow-lg) !important;
}

/* 标题是 h5.title —— 之前只写了 h2/h3 才漏掉 */
.dt_post_item .title,
.dt_post_item h5.title {
	font-family: var(--sz-font-display) !important;
	font-size: 19px !important;
	font-weight: 700 !important;
	line-height: 1.34 !important;
	letter-spacing: -0.02em !important;
	margin: 13.6px 0 9.6px !important;
}
.dt_post_item .title a {
	color: var(--sz-text) !important;
}
.dt_post_item .title a:hover {
	color: var(--sz-accent) !important;
}

/* 分类做成橙色胶囊，日期做成弱化灰字 */
.dt_post_item .meta ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10.4px;
	list-style: none;
	margin: 0 !important;
	padding: 0 !important;
}
.dt_post_item .meta li { margin: 0 !important; }

/* 分类胶囊。
   两个坑：
   1) 胶囊本体是 .category 这个 <div>（主题给了实心橙底 + 白字），
      不是里面的 <a>。给 <a> 单独上色会变成橙底橙字，文字直接消失。
   2) 模板里写成了嵌套 <a>（<a><a>分类名</a></a>）。HTML 不允许锚点
      嵌套，浏览器会拆成两个同级 <a>，第一个是空的，配合主题的
      gap:8px 会撑出一段空白。 */
.dt_post_item .meta .category,
.single-post .inner .category {
	display: inline-flex !important;
	align-items: center;
	/* 空锚点已 display:none，不参与 flex 布局，所以这里可以安全留间距
	   给详情页的标签图标用 */
	gap: .4em !important;
	background-color: var(--sz-accent-soft) !important;
	border: 1px solid rgba(255, 104, 4, .24) !important;
	border-radius: 999px !important;
	color: var(--sz-accent) !important;
	padding: .32em .9em !important;
	line-height: 1.6;
	transition: background-color var(--sz-t), border-color var(--sz-t);
}

.dt_post_item .meta .category a,
.single-post .inner .category a {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	color: var(--sz-accent) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .06em;
	text-transform: uppercase;
}

/* 隐藏被浏览器拆出来的那个空锚点 */
.dt_post_item .meta .category a:empty,
.single-post .inner .category a:empty {
	display: none !important;
}

.dt_post_item .meta .category:hover,
.single-post .inner .category:hover {
	background-color: var(--sz-accent) !important;
	border-color: var(--sz-accent) !important;
}
.dt_post_item .meta .category:hover a,
.single-post .inner .category:hover a {
	color: #fff !important;
}

.dt_post_item .date,
.dt_post_item .meta-down,
.dt_post_item .meta-down a,
.dt_post_item .author,
.dt_post_item .author a span {
	color: var(--sz-text-faint) !important;
	font-size: 13px !important;
}
.dt_post_item .meta-down i { color: var(--sz-text-faint) !important; }
.dt_post_item .meta-down {
	border-top: 1px solid var(--sz-border) !important;
	margin-top: 17.6px !important;
	padding-top: 14.4px !important;
}

.dt_post_item .content p {
	color: var(--sz-text-muted) !important;
	font-size: 15px !important;
	margin-bottom: 14.4px !important;
}
.dt_post_item .more-link {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	color: var(--sz-accent) !important;
	font-weight: 600 !important;
	font-size: 14px !important;
}


/* ===================================================================
   11. 页脚
   =================================================================== */
.dt_footer,
.dt_footer--two,
.dt_footer_middle {
	background: #060606 !important;
	background-image: none !important;
	border-top: 1px solid var(--sz-border) !important;
}
.dt_footer h3,
.dt_footer h4,
.dt_footer h5,
.dt_footer .widget-title {
	color: var(--sz-text) !important;
	font-family: var(--sz-font-display) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: .11em !important;
	text-transform: uppercase;
	margin-bottom: 17.6px !important;
}
.dt_footer,
.dt_footer p,
.dt_footer li,
.dt_footer a {
	color: var(--sz-text-faint) !important;
	font-size: 14px !important;
}
.dt_footer a:hover { color: var(--sz-accent) !important; }

.dt_footer_copyright {
	background: var(--sz-bg) !important;
	border-top: 1px solid var(--sz-border) !important;
}
.dt_footer_copyright-text,
.dt_footer_copyright p { color: var(--sz-text-faint) !important; }


/* ===================================================================
   11. 表单
   =================================================================== */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select,
.dt_search-field {
	background: var(--sz-surface) !important;
	border: 1px solid var(--sz-border-strong) !important;
	border-radius: var(--sz-r) !important;
	color: var(--sz-text) !important;
	font-family: var(--sz-font-body) !important;
	font-size: 15px !important;
	padding: 12px 16px !important;
	transition: border-color var(--sz-t), box-shadow var(--sz-t);
}
input:focus,
textarea:focus,
select:focus,
.dt_search-field:focus {
	border-color: var(--sz-accent) !important;
	box-shadow: 0 0 0 3px var(--sz-accent-soft) !important;
	outline: none !important;
}
::placeholder { color: var(--sz-text-faint) !important; opacity: 1; }


/* ===================================================================
   12. 文章 / 侧栏 / 分页
   =================================================================== */
/* 页面头图（.dt_pagetitle）—— 原图偏亮，与深色主题冲突，压暗处理 */
.dt_pagetitle {
	background-color: var(--sz-bg) !important;
	position: relative;
	isolation: isolate;
}
.dt_pagetitle_bgimage {
	opacity: .28;
	filter: grayscale(.4) brightness(.85);
}
.dt_pagetitle::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(
		180deg,
		rgba(10, 10, 10, .55) 0%,
		rgba(10, 10, 10, .30) 45%,
		rgba(10, 10, 10, .92) 100%
	);
	pointer-events: none;
}
.dt_pagetitle .dt-container { position: relative; z-index: 2; }

.dt_pagetitle .title h1 {
	font-family: var(--sz-font-display) !important;
	font-weight: 800 !important;
	color: var(--sz-text) !important;
	letter-spacing: -0.03em !important;
}
.dt_pagetitle_breadcrumb {
	display: inline-flex;
	align-items: center;
	gap: 7.2px;
	background: rgba(20, 20, 20, .72) !important;
	border: 1px solid var(--sz-border-strong) !important;
	border-radius: 999px !important;
	padding: 8px 17.6px !important;
	backdrop-filter: blur(8px);
}
.dt_pagetitle_breadcrumb li,
.dt_pagetitle_breadcrumb a {
	color: var(--sz-text-muted) !important;
	font-size: 14px !important;
}
.dt_pagetitle_breadcrumb a:hover { color: var(--sz-accent) !important; }
.dt_pagetitle_breadcrumb .active { color: var(--sz-text) !important; }


/* 侧栏挂件。
   原版给 .widget-title 刷了整条橙色色块，在深色下过于抢眼，
   改成参考站那种克制的小标签式标题 + 一段橙色短下划线。

   ⚠️ 作用域必须限定在侧栏容器内，不能用裸 .widget ——
   页眉顶部条的邮箱/营业时间/社交图标也是 <aside class="widget ...">，
   用裸选择器会把它们一个个套成深色小卡片，页眉直接变得很乱。 */
#dt-sidebar .widget,
.dt_widget-area .widget,
.sidebar .widget,
#secondary .widget {
	background: var(--sz-surface) !important;
	border: 1px solid var(--sz-border) !important;
	border-radius: var(--sz-r-lg) !important;
	padding: 24px !important;
	margin-bottom: 20px !important;
	overflow: hidden;
}

.widget-title,
.widget h3,
.widget h5.widget-title {
	background: transparent !important;
	background-image: none !important;
	color: var(--sz-text) !important;
	font-family: var(--sz-font-display) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: .11em !important;
	text-transform: uppercase;
	padding: 0 0 12px !important;
	margin: 0 0 17.6px !important;
	position: relative;
	border: 0 !important;
	border-bottom: 1px solid var(--sz-border) !important;
	border-radius: 0 !important;
}
.widget-title::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 34px;
	height: 2px;
	background: var(--sz-accent);
	border-radius: 2px;
}

.widget a { color: var(--sz-text-muted) !important; }
.widget a:hover { color: var(--sz-accent) !important; }
.widget ul { list-style: none; margin: 0; padding: 0; }
#dt-sidebar .widget ul li,
.dt_widget-area .widget ul li,
.sidebar .widget ul li,
#secondary .widget ul li {
	padding: 7.2px 0 !important;
	border-bottom: 1px solid var(--sz-border) !important;
}
#dt-sidebar .widget ul li:last-child,
.dt_widget-area .widget ul li:last-child,
.sidebar .widget ul li:last-child,
#secondary .widget ul li:last-child { border-bottom: 0 !important; }

.widget .search-form { display: flex; gap: 8px; }
.widget .search-form label { flex: 1; margin: 0; }
.widget .search-field { width: 100%; }

.entry-meta,
.post-meta,
.posted-on,
.byline,
time {
	color: var(--sz-text-faint) !important;
	font-size: 13px !important;
}

.page-numbers,
.nav-links a,
.pagination a,
.pagination span {
	background: var(--sz-surface) !important;
	border: 1px solid var(--sz-border) !important;
	border-radius: var(--sz-r-sm) !important;
	color: var(--sz-text-muted) !important;
	padding: 8px 14.4px !important;
	transition: all var(--sz-t);
}
.page-numbers.current,
.page-numbers:hover {
	background: var(--sz-accent) !important;
	border-color: var(--sz-accent) !important;
	color: #fff !important;
}

blockquote {
	background: var(--sz-surface) !important;
	border-left: 3px solid var(--sz-accent) !important;
	border-radius: 0 var(--sz-r) var(--sz-r) 0 !important;
	color: var(--sz-text-soft) !important;
	padding: 20px 24px !important;
}

code, pre {
	background: #111 !important;
	border: 1px solid var(--sz-border) !important;
	border-radius: var(--sz-r-sm) !important;
	color: #e4e4e7 !important;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
	font-size: .875em !important;
}

hr,
.dt-divider {
	border-color: var(--sz-border) !important;
	opacity: 1 !important;
}

table th, table td {
	border-color: var(--sz-border) !important;
	color: var(--sz-text-muted) !important;
}
table th { color: var(--sz-text) !important; }


/* ===================================================================
   13. 响应式
   =================================================================== */
@media (max-width: 991px) {
	body { font-size: 15.5px; }

	.dt_slider-item::after {
		background: linear-gradient(
			180deg,
			rgba(10, 10, 10, .72) 0%,
			rgba(10, 10, 10, .92) 100%
		);
	}
	.dt_slider-content p { max-width: none; }
}

@media (max-width: 767px) {
	h1 { font-size: 32px; }
	h2 { font-size: 26px; }

	.dt-btn {
		padding: .75em 1.4em !important;
		font-size: 14px !important;
	}
	.dt-information-box,
	.dt-choose-single-box,
	.dt_service-box,
	.dt_post_item .inner { border-radius: var(--sz-r) !important; }

	/* 英雄区：窄屏下统一改成左对齐并铺满容器。
	   原主题有 dt-text-left / -center / -right 三种幻灯片，右对齐那种
	   在窄屏会把标题顶到右边缘被裁掉（"…Solutio" 少半个词）。 */
	.dt_slider--one .dt_slider-item { min-height: 440px; }

	.dt_slider--one [class*="dt-text-"] .dt_slider-content,
	.dt_slider--one .dt_slider-content {
		text-align: left !important;
	}
	.dt_slider--one .dt_slider-content .title,
	.dt_slider--one .dt_slider-content p,
	.dt_slider--one .dt_slider-content .text {
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	.dt_slider--one .dt_slider-content .title {
		font-size: clamp(28px, 7.2vw, 38px) !important;
	}
	.dt_slider--one .dt_slider-content p,
	.dt_slider--one .dt_slider-content .text {
		font-size: 15px !important;
	}

	/* 轮播左右箭头在窄屏会压住文字，直接隐藏，保留圆点指示 */
	.dt_slider--one .dt_owl_carousel.owl-carousel .owl-nav {
		display: none !important;
	}
}

/* ===================================================================
   14. 减少动态效果（系统无障碍设置）
   -------------------------------------------------------------------
   坑：Ploto 把文字的「可见性」完全托管给了动画 —— 基础样式是
       .dt_slider-content > .text { opacity: 0 }
   再靠 `animation: blurSlideLeft .8s forwards` 把它推到 opacity:1。
   只要把动画关掉（或还在 animation-delay 期间），这些文字就永远
   停在 opacity:0，整块标题正文直接消失。

   所以这里除了关动画，必须显式把它们还原成可见终态。
   =================================================================== */
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }

	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-delay: 0s !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		transition-delay: 0s !important;
	}

	.dt_slider--one .dt_slider-content .subtitle,
	.dt_slider--one .dt_slider-content .title,
	.dt_slider--one .dt_slider-content .title > span,
	.dt_slider--one .dt_slider-content .title .text-primary,
	.dt_slider--one .dt_slider-content > .text,
	.dt_slider--one .dt_slider-content .text,
	.dt_slider--one .dt_slider-content .dt_btn-group,
	.dt_slider-content [class*="animate-"],
	.wow,
	[data-wow-delay],
	/* GSAP SplitText 拆出来的字符/词/行。GSAP 用内联样式把它们按在
	   opacity:0，且完全不理会 prefers-reduced-motion，所以必须用
	   !important 从 CSS 这边强制放出来。 */
	.char, .word, .line, .split-line,
	.dt-section-title .char,
	.dt-section-title .word {
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
		visibility: visible !important;
	}
}


/* ===================================================================
   15. 站点标题（未上传 Logo 时的回退）
   -------------------------------------------------------------------
   线上还没传过 logo，主题会回退成「站点标题 + 副标题」两行文字。
   原样式在深色下偏灰、层级也乱，这里按品牌字的规格重排。
   传了 logo 之后这段自动不生效。
   =================================================================== */
.site--logo .site--title,
.site--logo .site-title {
	display: block;
	margin: 0 !important;
	font-family: var(--sz-font-display) !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	letter-spacing: -0.03em !important;
	line-height: 1.15 !important;
	color: var(--sz-text) !important;
}
.site--logo .site--title:hover .site-title {
	color: var(--sz-accent) !important;
}
.site--logo .site-description {
	margin: 2px 0 0 !important;
	font-family: var(--sz-font-body) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: .04em;
	color: var(--sz-text-faint) !important;
	line-height: 1.4;
}


/* ===================================================================
   16. Cookie 同意弹窗（CookieAdmin 插件）
   -------------------------------------------------------------------
   插件自带白底浅色样式，压在深色站点上非常突兀。
   这里只改外观，不碰插件的任何逻辑和设置。
   =================================================================== */
.cookieadmin_law_container,
.cookieadmin_notice_con,
.cookieadmin_consent_inside,
.cookieadmin_cookie_modal,
.cookieadmin_details_wrapper,
.cookieadmin_preference_details {
	background: var(--sz-surface) !important;
	border-color: var(--sz-border-strong) !important;
	color: var(--sz-text-muted) !important;
}

.cookieadmin_law_container,
.cookieadmin_cookie_modal {
	border: 1px solid var(--sz-border-strong) !important;
	border-radius: var(--sz-r-lg) !important;
	box-shadow: var(--sz-shadow-lg) !important;
	font-family: var(--sz-font-body) !important;
}

.cookieadmin_header,
.cookieadmin_mod_head,
.cookieadmin_preference_title {
	background: transparent !important;
	color: var(--sz-text) !important;
	font-family: var(--sz-font-display) !important;
	font-weight: 700 !important;
}

.cookieadmin_desc,
.cookieadmin_desc *,
.cookieadmin_remark,
.cookieadmin_types {
	color: var(--sz-text-muted) !important;
	font-size: 13px !important;
	line-height: 1.65 !important;
}
.cookieadmin_desc a,
.cookieadmin_modal_footer_links a {
	color: var(--sz-accent) !important;
}

/* 三个按钮：接受=橙色主按钮，其余=描边次按钮 */
.cookieadmin_btn,
.cookieadmin_accept_btn,
.cookieadmin_reject_btn,
.cookieadmin_customize_btn,
.cookieadmin_save_btn {
	border-radius: 999px !important;
	font-family: var(--sz-font-body) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	padding: 9px 18px !important;
	transition: background-color var(--sz-t), border-color var(--sz-t),
	            color var(--sz-t) !important;
}
.cookieadmin_accept_btn,
.cookieadmin_save_btn {
	background: var(--sz-accent) !important;
	border: 1px solid var(--sz-accent) !important;
	color: #fff !important;
}
.cookieadmin_accept_btn:hover,
.cookieadmin_save_btn:hover {
	background: var(--sz-accent-hover) !important;
	border-color: var(--sz-accent-hover) !important;
}
.cookieadmin_reject_btn,
.cookieadmin_customize_btn {
	background: transparent !important;
	border: 1px solid var(--sz-border-strong) !important;
	color: var(--sz-text-soft) !important;
}
.cookieadmin_reject_btn:hover,
.cookieadmin_customize_btn:hover {
	background: var(--sz-surface-hover) !important;
	border-color: #3f3f46 !important;
	color: var(--sz-text) !important;
}

.cookieadmin-poweredby,
.cookieadmin-poweredby * {
	color: var(--sz-text-faint) !important;
	opacity: .65;
}

.cookieadmin_modal_footer,
.cookieadmin-modal-cookies-list {
	background: var(--sz-bg-alt) !important;
	border-color: var(--sz-border) !important;
}
