/* Operant shell: Theme-specific chrome and native WordPress templates only.
   The imported Operant Page Builder BODY retains its own untouched source CSS. */
:root{--opr-theme-accent:#FF4800;--opr-theme-line:#E5E7EB}
body.operant-theme{margin:0;background:#fff;color:#1D1D1F}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;white-space:nowrap;width:1px}
.screen-reader-text:focus{clip:auto;clip-path:none;background:#fff;color:#111;display:block;height:auto;left:10px;line-height:normal;padding:12px;top:10px;width:auto;z-index:99999}
.site-header.opr-header-static{position:relative}
.site-header .opr-site-logo{display:block;width:auto;max-width:220px;max-height:55px;object-fit:contain}
.site-footer .opr-site-logo{display:block;width:auto;max-width:240px;max-height:65px;object-fit:contain}
.brand .opr-site-logo{flex:none}
.desktop-nav>.opr-nav-group{position:relative;display:inline-flex;align-items:center}
.desktop-nav .opr-nav-line{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.desktop-nav .opr-nav-line>a{color:#504943;font-size:14px;font-weight:500;transition:color .2s}
.desktop-nav .opr-nav-line>a:hover{color:var(--opr-theme-accent)}
.opr-submenu-toggle{border:0;background:transparent;color:inherit;cursor:pointer;font-size:18px;min-width:21px;min-height:29px;display:inline-flex;align-items:center;justify-content:center;transition:transform .25s}
.opr-nav-group.opr-open>.opr-nav-line>.opr-submenu-toggle{color:#FF4800}
.desktop-nav .opr-dropdown{display:none;position:absolute;top:100%;margin-top:9px;left:-18px;min-width:230px;padding:9px;background:#fff;border:1px solid var(--opr-theme-line);border-radius:11px;box-shadow:0 20px 55px #00000016;z-index:105;flex-direction:column;gap:1px}
.desktop-nav>.opr-nav-group>.opr-dropdown:before{content:'';position:absolute;top:-13px;left:0;width:100%;height:13px}
.desktop-nav .opr-nav-group:hover>.opr-dropdown,.desktop-nav .opr-nav-group:focus-within>.opr-dropdown,.desktop-nav .opr-nav-group.opr-open>.opr-dropdown{display:flex}
.desktop-nav .opr-dropdown>a,.desktop-nav .opr-dropdown>.opr-nav-group>.opr-nav-line>a{font-size:13px;color:#333;white-space:nowrap;display:block;padding:12px 14px;border-radius:7px;flex:1}
.desktop-nav .opr-dropdown>a:hover,.desktop-nav .opr-dropdown>.opr-nav-group>.opr-nav-line>a:hover{background:#FFF1E9;color:var(--opr-theme-accent)}
.desktop-nav .opr-dropdown .opr-nav-group{position:relative;display:flex;align-items:center}
.desktop-nav .opr-dropdown .opr-nav-line{width:100%;display:flex;align-items:center;justify-content:space-between}
.desktop-nav .opr-dropdown .opr-nav-group>.opr-dropdown{left:100%;margin-left:8px;margin-top:0;top:-9px}
.desktop-nav .opr-dropdown .opr-nav-group>.opr-dropdown:before{content:'';position:absolute;left:-12px;width:12px;top:0;height:100%}
.site-footer .footer-columns .opr-nav-group{display:flex;flex-direction:column;align-items:start;gap:8px}
.site-footer .footer-columns .opr-nav-line>a{color:#FFF0E6;font-size:14px}
.site-footer .footer-columns .opr-submenu-toggle{color:#fff}
.site-footer .footer-columns .opr-dropdown{display:none;position:static;margin:4px 0 6px 10px;border-left:1px solid #ffffff40;padding-left:12px}
.site-footer .footer-columns .opr-nav-group.opr-open>.opr-dropdown{display:flex;flex-direction:column;gap:11px}
.site-footer .footer-columns .opr-nav-group:hover>.opr-dropdown{display:flex;flex-direction:column;gap:11px}
.site-footer .footer-columns .opr-dropdown a{color:#FFF0E6;font-size:13px}
.opr-breadcrumb{font-size:12px;padding-block:14px;color:#666;display:flex;align-items:center;gap:8px}
.opr-breadcrumb a:hover{color:var(--opr-theme-accent)}
.opr-main{min-width:0}
.opr-builder-canvas,.opr-front-page-content{width:100%}
.opr-wordpress-h1{margin:0}
.opr-native-hero{padding-block:85px 70px;background:#FFF8F4}
.opr-native-hero h1{margin:14px 0 0;max-width:1020px;font-size:clamp(35px,4vw,61px);font-weight:600;line-height:1.12;letter-spacing:-.04em}
.opr-native-hero p{max-width:770px;margin-top:20px;font-size:17px;color:#555}
.opr-native-content{padding-block:65px 100px;max-width:1100px}
.entry-content{font-size:17px;line-height:1.8}
.entry-content p{margin:0 0 1.4em}
.entry-content h2{font-size:34px;margin:1.6em 0 .65em}
.entry-content h3{font-size:25px;margin:1.5em 0 .6em}
.entry-content img{max-width:100%;height:auto;border-radius:10px}
.entry-content ul,.entry-content ol{padding-left:1.6em}
.entry-content a{color:#E83F00;text-decoration:underline;text-underline-offset:3px}
.entry-content :is(blockquote,pre){max-width:100%;overflow:auto}
.opr-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.opr-post-card{overflow:hidden;border-radius:14px;background:white;border:1px solid #e5e7eb}
.opr-post-card .opr-post-image{margin:0;height:235px;display:block;overflow:hidden;border-radius:0;background:#FFF1E9}
.opr-post-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.opr-post-card:hover .opr-post-image img{transform:scale(1.035)}
.opr-image-empty{display:grid;place-items:center;height:100%;font-size:58px;color:#FF4800}
.opr-post-card .mp-article-text{padding:22px 23px 30px}
.opr-post-card-title{font-size:23px;line-height:1.3;font-weight:600;margin:10px 0}
.opr-post-card-title a:hover{color:var(--opr-theme-accent)}
.opr-post-card .mp-article-text p{font-size:14px;line-height:1.65;min-height:69px}
.opr-post-card .link-arrow{margin-top:13px;font-size:13px}
.opr-pagination{padding-top:40px}
.opr-pagination ul{padding:0;display:flex;flex-wrap:wrap;gap:9px;list-style:none}
.opr-pagination a,.opr-pagination span{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid #e5e7eb;padding:0 12px;border-radius:7px}
.opr-pagination .current,.opr-pagination a:hover{background:var(--opr-theme-accent);color:#fff;border-color:var(--opr-theme-accent)}
.opr-single-image{padding-block:45px 0;max-width:1080px}
.opr-single-image img{width:100%;height:auto;border-radius:15px}
.opr-single-grid{max-width:1080px;padding-block:60px 100px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:62px}
.opr-single-grid>.entry-content{min-width:0}
.opr-single-sidebar{width:270px}
.opr-sidebar-widget{padding:20px;border:1px solid #e5e7eb;border-radius:12px}
.opr-sidebar-widget h2{font-size:21px;margin:0 0 18px}
.opr-sidebar-widget ul{padding-left:18px}
.opr-sidebar-widget li{margin-bottom:12px}
.opr-post-tags{border-top:1px solid #e5e7eb;padding-top:25px;font-size:14px}
.opr-related{background:#FFF8F4}
.opr-related .mp-head h2{font-size:32px}
.opr-related .mp-articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px}
.opr-search-form{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px;max-width:650px}
.opr-search-form input{flex:1;min-width:210px;min-height:51px;border-radius:8px;background:#fff;border:1px solid #e5e7eb;padding:13px 18px;font-size:15px}
.opr-search-form input:focus{outline:2px solid #FF4800}
.opr-404{min-height:470px}
.opr-404 .button{margin-top:28px}
/* The theme owns its color accent, but never forces component colors inside Builder canvases. */
.site-header .brand-period,.site-header .brand-mark i,.site-header .nav-login span{color:var(--opr-theme-accent)}
.site-header .brand-mark i{border-color:var(--opr-theme-accent)}
.site-header .button-primary,.mobile-menu .button-primary{background:var(--opr-theme-accent)}
@media(max-width:990px){
 .desktop-nav .opr-dropdown{position:static}
 .mobile-menu .opr-nav-group{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .mobile-menu .opr-nav-line{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #FFF4ED}
 .mobile-menu .opr-nav-line>a{padding:12px 0;font-size:17px;flex:1}
 .mobile-menu .opr-submenu-toggle{width:44px;height:44px;border-left:1px solid #FFF4ED;color:#555}
 .mobile-menu .opr-dropdown{display:none;background:#FFF8F4;padding:4px 12px 9px;border-bottom:1px solid #FFF4ED}
 .mobile-menu .opr-nav-group.opr-open>.opr-dropdown{display:flex;flex-direction:column;gap:0}
 .mobile-menu .opr-dropdown>a,.mobile-menu .opr-dropdown>.opr-nav-group>.opr-nav-line>a{font-size:15px;padding:12px}
 .mobile-menu .opr-dropdown .opr-dropdown{background:#FFF1E9}
}
@media(max-width:800px){
 .opr-article-grid,.opr-related .mp-articles{grid-template-columns:repeat(2,minmax(0,1fr))}
 .opr-single-grid{grid-template-columns:1fr;gap:20px}
 .opr-single-sidebar{width:auto}
}
@media(max-width:600px){
 .opr-article-grid,.opr-related .mp-articles{grid-template-columns:1fr}
 .opr-native-hero{padding-block:58px 45px}
 .opr-native-content{padding-block:45px 70px}
 .opr-search-form{flex-direction:column}
 .opr-search-form input,.opr-search-form button{width:100%}
 .site-footer .footer-columns .opr-nav-line>a{font-size:12px}
}

/* Operant v3.1.1 — WordPress-defined homepage; no generated spacer above first Builder Section. */
body.operant-theme .opr-front-page-main,
body.operant-theme .opr-main:has(> .rvb-frontend-canvas),
body.operant-theme .opr-main:has(> .red-builder-output){margin:0!important;padding:0!important;min-height:0!important;}
body.operant-theme .opr-front-page-main > :not(.screen-reader-text):first-of-type,
body.operant-theme .opr-main > .rvb-frontend-canvas:first-of-type,
body.operant-theme .opr-main > .red-builder-output:first-of-type{margin-top:0!important;}
body.operant-theme .opr-front-page-main > .opr-front-page-content{margin:0;padding:0;}
.opr-header-mobile-search{display:none}
/* WordPress menu levels display below their parent, never on top of first level. */
.desktop-nav>.opr-nav-group>.opr-dropdown{top:100%;margin-top:9px;}
.desktop-nav .opr-dropdown .opr-dropdown{top:-9px;}
.desktop-nav .opr-dropdown{max-height:min(80vh,630px);overflow-y:auto;overflow-x:visible;}
.desktop-nav>.opr-nav-group>.opr-dropdown{overflow:visible;}
.opr-bottom-nav{display:none}
.opr-floating-zalo{display:none}
@media(max-width:990px){
  .nav-inner{gap:12px}
  .opr-header-mobile-search{display:flex;align-items:center;flex:1;min-width:0;max-width:430px;height:42px;margin-left:auto;border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow:hidden}
  .opr-header-mobile-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;padding:8px 11px;font-size:13px;color:#1D1D1F}
  .opr-header-mobile-search button{border:0;background:transparent;color:#FF4800;font-size:23px;padding:3px 12px;height:100%}
  .nav-actions{margin:0;flex-shrink:0}
  .desktop-nav .opr-dropdown{position:static}
}
@media(max-width:700px){
  .site-header .container.nav-inner{width:calc(100% - 28px)}
  .site-header .brand{flex:0 0 auto;max-width:37%;overflow:hidden}
  .site-header .opr-site-logo{max-width:125px;max-height:43px}
  .opr-header-mobile-search{height:39px}
  .opr-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:999;min-height:65px;padding:6px 4px max(7px, env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -6px 26px #0000000b}
  .opr-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:48px;text-align:center;font-size:11px;color:#444;text-decoration:none;font-weight:600;white-space:nowrap}
  .opr-bottom-nav a[aria-current=page],.opr-bottom-nav a:hover{color:#FF4800}
  body:has(.opr-bottom-nav){padding-bottom:calc(68px + env(safe-area-inset-bottom))}
  .opr-floating-zalo{position:fixed;right:15px;bottom:25px;z-index:999;display:grid;place-items:center;background:#0068ff;color:#fff!important;border-radius:50%;height:51px;width:51px;font-size:12px;font-weight:800;box-shadow:0 4px 18px #0002}
  .opr-floating-zalo.opr-has-bottom-nav{bottom:calc(77px + env(safe-area-inset-bottom))}
  .back-to-top{bottom:calc(90px + env(safe-area-inset-bottom))}
  body:has(.opr-floating-zalo) .back-to-top{right:75px}
}

/* v3.1.3: WordPress title H1 is accessibility-only; it cannot form a spacer above Builder Section. */
body.operant-theme .opr-main > .opr-wordpress-h1.screen-reader-text{position:absolute!important;clip-path:inset(50%)!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;}
body.operant-theme .opr-main > .red-builder-output{padding-top:0!important;margin-top:0!important;}
body.operant-theme .opr-main > .red-builder-output > .rvb-section-shell.opr-section{margin:0!important;padding:0!important;min-height:0!important;background:transparent!important;box-shadow:none!important;}

/* v3.1.5 mobile fix — Imported Page Builder pages omit source style.css.
   Restore ONLY Theme header/navigation chrome, never touch Builder content. */
body.operant-theme.opr-plugin-motion .site-header{
  position:sticky;top:0;z-index:1001;background:rgba(255,255,255,.97);
  border-bottom:1px solid #e5e7eb;
}
body.operant-theme.opr-plugin-motion .site-header.opr-header-static{position:relative}
body.operant-theme.opr-plugin-motion .site-header .nav-inner{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  min-height:83px;width:min(var(--container,1280px),calc(100% - 72px));margin-inline:auto;
}
body.operant-theme.opr-plugin-motion .site-header .brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}
body.operant-theme.opr-plugin-motion .site-header .desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto}
body.operant-theme.opr-plugin-motion .site-header .nav-actions{display:flex;align-items:center;gap:23px}
body.operant-theme.opr-plugin-motion .site-header .menu-toggle{
  display:none;position:relative;z-index:2;width:45px;height:43px;border:1px solid #e5e7eb;
  border-radius:8px;background:#fff;align-items:center;justify-content:center;flex-direction:column;
  gap:6px;cursor:pointer;flex-shrink:0;touch-action:manipulation;
}
body.operant-theme.opr-plugin-motion .site-header .menu-toggle span{
  display:block;width:20px;height:2px;background:#1D1D1F;transition:transform .25s;
}
body.operant-theme.opr-plugin-motion .site-header .menu-toggle.is-open span:first-child{transform:translateY(4px) rotate(45deg)}
body.operant-theme.opr-plugin-motion .site-header .menu-toggle.is-open span:last-child{transform:translateY(-4px) rotate(-45deg)}
body.operant-theme.opr-plugin-motion .site-header .mobile-menu{display:none}
@media(max-width:990px){
 body.operant-theme.opr-plugin-motion .site-header .nav-inner{min-height:70px;width:calc(100% - 40px);gap:12px}
 body.operant-theme.opr-plugin-motion .site-header .desktop-nav,
 body.operant-theme.opr-plugin-motion .site-header .nav-login,
 body.operant-theme.opr-plugin-motion .site-header .nav-cta{display:none}
 body.operant-theme.opr-plugin-motion .site-header .menu-toggle{display:flex}
 body.operant-theme.opr-plugin-motion .site-header .mobile-menu{
   display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;
   padding:0 28px;max-height:0;overflow:hidden;visibility:hidden;pointer-events:none;
   background:#fff;box-shadow:0 14px 25px #E94B120A;
 }
 body.operant-theme.opr-plugin-motion .site-header .mobile-menu.is-open{
   padding:14px 28px 24px;max-height:min(78dvh,720px);overflow-y:auto;
   visibility:visible;pointer-events:auto;border-top:1px solid #e5e7eb;
 }
 body.operant-theme.opr-plugin-motion .site-header .mobile-menu>a:not(.button){font-size:17px;padding:12px 0;border-bottom:1px solid #FFF4ED;color:#1D1D1F}
 body.operant-theme.opr-plugin-motion .site-header .mobile-menu .button{margin-top:18px}
}
@media(max-width:700px){
 body.operant-theme.opr-plugin-motion .site-header .nav-inner{width:calc(100% - 28px)}
 body.operant-theme.opr-plugin-motion .site-header .brand{max-width:37%;overflow:hidden}
}
/* Nested menus can exceed the old 450px cap on mobile; remain scrollable. */
@media(max-width:990px){
 body.operant-theme:not(.opr-plugin-motion) .site-header .mobile-menu.is-open{
   max-height:min(78dvh,720px);overflow-y:auto;overscroll-behavior:contain;
 }
 body.operant-theme .site-header .mobile-menu.is-open{overscroll-behavior:contain}
}

/* v3.1.6 — independent native <details>/<summary> hamburger for real WordPress pages.
   No JS is required to open the mobile menu; do not style Builder contents. */
body.operant-theme .site-header .opr-menu-native{display:none}
body.operant-theme .site-header .opr-menu-native > summary.menu-toggle{list-style:none;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}
body.operant-theme .site-header .opr-menu-native > summary.menu-toggle::-webkit-details-marker{display:none}
body.operant-theme .site-header .opr-menu-native > summary.menu-toggle::marker{content:''}
body.operant-theme .site-header .opr-menu-native:not([open]) > .mobile-menu{display:none!important}
@media(max-width:990px){
 body.operant-theme .site-header{z-index:10050!important;overflow:visible!important}
 body.operant-theme .site-header .opr-menu-native:not([hidden]){display:block;position:static;flex-shrink:0}
 body.operant-theme .site-header .opr-menu-native:not([hidden]) > summary.menu-toggle{display:flex!important;align-items:center;justify-content:center;flex-direction:column;gap:6px;width:45px;height:43px;position:relative;z-index:2}
 body.operant-theme .site-header .opr-menu-native[open] > .mobile-menu{display:flex!important;visibility:visible!important;pointer-events:auto!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;max-height:min(80dvh,720px)!important;overflow-y:auto!important;overscroll-behavior:contain;padding:14px 28px 24px!important;background:#fff;z-index:10055!important;border-top:1px solid #e5e7eb}
 body.operant-theme .site-header .opr-menu-native[open] > summary.menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}
 body.operant-theme .site-header .opr-menu-native[open] > summary.menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}
}
@media(max-width:990px){
 body.operant-theme .site-header .opr-menu-native > summary.menu-toggle{pointer-events:auto!important}
}
