/* WordPress integration — giữ layout HTML V5 và khung 1250px */
:root{--width:1250px}
body{font-family:Inter,Arial,sans-serif;font-weight:400}
h1,h2,h3,h4,h5,h6,.pin-name,.brand{font-weight:300!important}
strong,.fact strong{font-weight:400}
a{color:inherit}
.screen-reader-text{position:absolute;left:-9999px}.screen-reader-text:focus{left:10px;top:10px;background:white;padding:12px;z-index:9999}
.topbar{text-align:center;padding:5px 12px;background:#f7f7f4;font-size:11px;color:#656e64;border-bottom:1px solid #e9e9e4}
.main-content{min-height:400px}.nav-wrap .nav{display:flex;align-items:center}.nav .menu-item{position:relative;display:block;list-style:none}
.nav .menu-item>a{display:block;text-decoration:none;padding:12px 0;font-size:13px}.nav .menu-item-has-children>a:after{content:'+';font-size:12px;padding-left:7px;color:#88918a}
.nav .sub-menu{display:none;position:absolute;top:100%;left:0;z-index:90;min-width:230px;background:#fff;box-shadow:0 18px 40px #00000012;border:1px solid var(--line);margin:0;padding:8px 0;list-style:none}
.nav .menu-item:hover>.sub-menu,.nav .menu-item:focus-within>.sub-menu{display:block}
.nav .sub-menu .sub-menu{top:0;left:100%}.nav .sub-menu a{display:block;padding:10px 16px;text-decoration:none;white-space:nowrap}
.nav .sub-menu a:hover{background:#f7f7f4}.nav-item .plus{font-size:12px;margin-left:4px}.header-links [data-count-saved]{font-size:11px}
.pins{columns:4 220px;column-gap:16px;display:block}.pins.three{columns:3 235px}
.pin{break-inside:avoid;display:inline-block;width:100%;margin:0 0 21px;vertical-align:top}
.pin-image{position:relative;overflow:hidden;border-radius:8px}.pin-image img{display:block;width:100%;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}
.pin-image a{display:block}.heart{position:absolute;top:10px;right:10px;width:33px!important;height:33px!important;min-width:33px!important;min-height:33px!important;padding:0!important;display:flex!important;align-items:center;justify-content:center;font-size:20px!important;line-height:1!important;z-index:8;border-radius:50%;border:0;cursor:pointer;opacity:0;transform:translateY(-3px);background:#fffefbea!important;color:#252825!important;box-shadow:0 2px 12px #0002;transition:opacity .15s ease,transform .15s ease}
.pin-image:hover .heart,.heart:focus-visible,.heart.is-saved{opacity:1;transform:translateY(0)}.heart.is-saved{color:#d65358!important}
.cl-video-badge{position:absolute;left:12px;bottom:12px;background:#232622d9;color:#fff;padding:4px 8px;font-size:11px;border-radius:5px;pointer-events:none}
.row-switch{display:inline-flex;gap:4px;border:1px solid var(--line);border-radius:10px;padding:3px;margin:0 0 18px}.row-switch button{border:0;background:transparent;color:#666;padding:6px 12px;font-size:12px;cursor:pointer;border-radius:7px}.row-switch button.selected{background:#27302b;color:#fff}.cl-rows[data-rows="2"] .pin:nth-child(n+9){display:none}
.cl-card .pin-name{line-height:1.45}.cl-studio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.cl-studio-card{display:flex;flex-direction:column;gap:8px;text-decoration:none;background:#fafaf8;border:1px solid var(--line);padding:20px;border-radius:9px}
.cl-studio-avatar{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#e7e9e4;font-size:28px;font-weight:300}.cl-studio-card strong{font-size:16px}.cl-studio-card small{color:var(--muted)}
.cl-final-cta{padding:45px 30px;background:var(--wash);border-radius:14px;text-align:center}.cl-final-cta h2{font-size:34px}.cl-final-cta .btn{display:inline-block}
.page-intro{margin-top:30px}.cl-filter-form{display:contents}.cl-total{font-size:12px;color:var(--muted);margin:8px 0 18px}
.sidebar .reset{display:inline-block;padding:6px 0;font-size:12px;color:#667c6c;text-decoration:underline}.sidebar .filter-option{font-size:13px;cursor:pointer}.sidebar .filter-option input{accent-color:#67786a}
.result-pane .category-search input{box-sizing:border-box}.results-toolbar{display:flex;align-items:center;justify-content:space-between}
.pagination{clear:both;display:block;margin:26px 0}.pagination ul{display:flex;align-items:center;gap:6px;list-style:none;padding:0}.pagination li{display:inline-block}.pagination a,.pagination .current{display:inline-block;border:1px solid var(--line);border-radius:6px;padding:8px 12px;text-decoration:none}.pagination .current{background:#282f28;color:white}
.detail-gallery .cl-gallery-feature,.detail-gallery .cl-gallery-tile{position:relative;overflow:hidden;border-radius:8px}.detail-gallery img{width:100%;height:auto!important;object-fit:contain!important;display:block;cursor:zoom-in}.cl-gallery-feature .heart{opacity:1;top:16px;right:16px}
.cl-lightbox[hidden],.cl-video-modal[hidden]{display:none!important}.cl-lightbox,.cl-video-modal{position:fixed;inset:0;z-index:10000;background:#000e;display:flex;align-items:center;justify-content:center;padding:50px 20px}.cl-lightbox img{max-width:96vw;max-height:88vh;object-fit:contain}.cl-close{position:absolute;top:17px;right:25px;color:white;font-size:32px;background:none;border:0;cursor:pointer}.cl-video-frame{width:min(920px,95vw);aspect-ratio:16/9}.cl-video-frame iframe{width:100%;height:100%;border:0}.cl-watch{margin:12px 0}
@media(hover:none){.heart{opacity:1;transform:none}}
@media(max-width:1100px){.pins{columns:3 200px}.pins.three{columns:3 180px}.cl-studio-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.pins,.pins.three{columns:2 130px;column-gap:12px}.cl-card{margin-bottom:14px}.cl-studio-grid{grid-template-columns:repeat(2,1fr)}.header-main{flex-wrap:nowrap!important;gap:8px}.header-main>.brand{order:0;flex:0 0 auto}.header-search{order:1;flex:1 1 0!important;min-width:0}.header-links{order:2;flex:0 0 auto}.header-links>a{display:none!important}.hamburger{display:block}.mobile-nav{display:none}.mobile-nav.is-open{display:flex;flex-direction:column}.discovery .sidebar{display:none}.discovery.cl-filters-open .sidebar{display:block}.detail-gallery .cl-gallery-feature{grid-column:1/-1}.cl-final-cta{padding:30px 15px}.cl-final-cta h2{font-size:25px}.row-switch{margin-bottom:12px}}

/* Chi tiết concept: ảnh chính rộng 100%, giữ ảnh theo tỷ lệ tự nhiên. */
.detail-gallery .cl-gallery-feature{grid-column:1/-1;line-height:0}
.detail-gallery .cl-gallery-feature img{max-height:none;max-width:100%;height:auto;object-fit:contain}
.detail-gallery .cl-gallery-tile img{height:auto;max-height:none;object-fit:contain}
@media(min-width:721px){.detail-gallery .cl-gallery-feature{grid-column:1/-1}}
/* Menu mobile: giữ được menu WordPress 3 cấp. */
.mobile-nav .cl-mobile-menu,.mobile-nav .sub-menu{list-style:none;margin:0;padding:0}
.mobile-nav .cl-mobile-menu>li{position:relative;border-bottom:1px solid var(--line)}
.mobile-nav .menu-item>a{padding:11px 15px;display:block}
.mobile-nav .menu-item-has-children>a{padding-right:58px}
.mobile-nav .cl-subtoggle{position:absolute;right:8px;top:6px;width:36px;height:34px;border:1px solid var(--line);border-radius:5px;background:white;cursor:pointer;font-size:17px}
.mobile-nav .sub-menu{display:none;background:#f8f8f5;padding-left:15px}
.mobile-nav .menu-item.is-open>.sub-menu{display:block}
.mobile-nav details{border-bottom:1px solid var(--line);padding:0 12px}
.mobile-nav summary{cursor:pointer;padding:12px 0;list-style:none}
.mobile-nav summary:after{content:'+';float:right;font-size:16px}
.mobile-nav details[open] summary:after{content:'−'}
.mobile-nav details a{display:block;padding:9px 13px;font-size:12px}
.mobile-nav{max-height:calc(100vh - 80px);overflow-y:auto}

/* Master Specification V1: navigation, accessible filters, mobile fixed bar. */
.nav-wrap,.nav-wrap .nav{overflow:visible!important}
.nav .sub-menu{min-width:230px;max-width:min(310px,92vw);top:100%;padding:6px 0;z-index:110}
.nav .sub-menu .sub-menu{top:-7px;left:100%}
.nav .sub-menu.cl-flip{left:auto;right:0}
.nav .sub-menu .sub-menu.cl-flip{left:auto;right:100%}
.nav .menu-item:focus-within>.sub-menu{display:block}
.nav .menu-item>a:focus-visible,.mobile-nav a:focus-visible,.mobile-nav button:focus-visible{outline:2px solid #557860;outline-offset:2px}
.cl-filter-details{border-bottom:1px solid #e5e8e4;padding:10px 0}
.cl-filter-details summary{cursor:pointer;font-weight:400;font-size:13px;margin-bottom:8px}
.cl-filter-details .filter-option{display:flex;align-items:center;gap:7px;padding:3px 0}
.discovery.cl-is-loading .result-pane{opacity:.55;pointer-events:none;transition:opacity .2s}
.cl-bottom-nav,.cl-zalo-float{display:none}
.mobile-nav{overscroll-behavior:contain;max-height:min(70vh,650px);overflow-y:auto}
.mobile-nav .cl-subtoggle{z-index:3}
@media(max-width:720px){
 body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}
 .cl-bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #e8e8e5;height:calc(66px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);z-index:9000;box-shadow:0 -2px 15px #00000010}
 .cl-bottom-nav a{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#686d68;text-decoration:none;font-size:19px}
 .cl-bottom-nav a small{font-size:10px;line-height:1.3;font-weight:400}
 .cl-bottom-nav a.is-active{color:#293b30}
 .cl-zalo-float{display:grid;place-items:center;position:fixed;bottom:calc(82px + env(safe-area-inset-bottom,0px));right:16px;width:48px;height:48px;border-radius:50%;background:#0769d9;color:#fff;text-decoration:none;font-size:12px;box-shadow:0 3px 13px #0002;z-index:9001}
 .mobile-nav{padding-bottom:10px}
}

.mobile-nav .menu-item{position:relative}

.cl-active-filters{display:flex;gap:6px;flex-wrap:wrap;margin:13px 0}.cl-active-filter{font:400 11px Inter,Arial,sans-serif;border:1px solid #dfe4dd;background:#f7f9f6;border-radius:16px;padding:5px 11px;cursor:pointer}.cl-active-filter:hover{background:#e9f0e9}

/* Concept V1.2: one real Site Identity custom logo; same WP attachment in header/footer. */
.cl-brand-container{display:inline-flex;align-items:center;flex-shrink:0;min-width:0}
.cl-brand-container .custom-logo-link{display:inline-flex;align-items:center;max-width:245px;max-height:62px;line-height:0}
.cl-brand-container img.custom-logo{display:block;width:auto!important;max-width:245px;height:auto!important;max-height:62px!important;object-fit:contain}
.footer .cl-brand-container img.custom-logo{max-width:205px;max-height:58px!important}
.footer .cl-brand-container .custom-logo-link{max-width:205px;max-height:58px}
/* One-click WordPress Mega Menu; top-level item owns the entire panel; no invisible hover layer. */
@media(min-width:851px){
.nav-wrap .nav{display:flex;justify-content:space-between;gap:14px;position:relative}
.nav>.menu-item{flex:0 0 auto;position:relative}
.nav>.menu-item>a{font-size:11.5px;font-weight:400;white-space:nowrap;padding:13px 2px}
.nav>.menu-item>.sub-menu{position:absolute;display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:0 12px;top:100%;left:0;right:auto;width:min(890px,calc(100vw - 50px));max-width:none;max-height:min(75vh,650px);overflow-y:auto;overscroll-behavior:contain;background:#fff;padding:20px;border:1px solid #e9e9e4;box-shadow:0 18px 42px #11111116;border-radius:0 0 12px 12px;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:115}
.nav>.menu-item:hover>.sub-menu,.nav>.menu-item:focus-within>.sub-menu{visibility:visible;opacity:1;pointer-events:auto;display:grid}
.nav>.menu-item>.sub-menu.cl-flip{right:0;left:auto}
.nav>.menu-item>.sub-menu>li{position:static;padding:5px 6px 13px;border-bottom:1px solid #f0f0ed}
.nav>.menu-item>.sub-menu>li>a{font-size:13px;font-weight:500;padding:8px 4px;line-height:1.35;white-space:normal}
.nav>.menu-item>.sub-menu>li>.sub-menu{display:flex!important;position:static!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;box-shadow:none!important;border:0!important;min-width:0!important;max-width:none!important;background:transparent;padding:0!important;margin:0!important;flex-direction:column;max-height:none!important;overflow:visible!important}
.nav>.menu-item>.sub-menu>li>.sub-menu>li>a{font-size:11.5px;font-weight:400;line-height:1.45;padding:6px 4px;color:#737a72;white-space:normal;border-radius:4px}
.nav>.menu-item>.sub-menu>li>.sub-menu>li>a:hover{background:#f6f7f4;color:#202c23}
.nav>.menu-item>.sub-menu>li>a:after{display:none}
}
@media(max-width:1100px) and (min-width:851px){.nav>.menu-item>a{font-size:10px}.nav-wrap .nav{gap:9px}.nav>.menu-item>.sub-menu{width:min(700px,calc(100vw - 36px));grid-template-columns:repeat(3,minmax(130px,1fr))}}
@media(max-width:850px){.nav-wrap{display:none!important}.header-main{gap:9px}.header-links>a{display:none}.hamburger{display:block}.mobile-nav.is-open{display:flex;flex-direction:column}.cl-brand-container img.custom-logo{max-width:145px!important;max-height:47px!important}.cl-brand-container .custom-logo-link{max-width:145px;max-height:47px}.header-search{min-width:0!important}}

/* Faceted category sidebar: 3-level taxonomy term search, no long unbounded dropdown. */
.cl-filter-find{display:block;width:100%;height:32px;margin:7px 0 8px;padding:4px 8px;font-size:11px;border:1px solid #e6e6e1;border-radius:6px;background:#fff}
.cl-filter-options{max-height:245px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}
.cl-filter-options .filter-option{font-size:11.5px;line-height:1.4}
.cl-filter-options .filter-option[hidden]{display:none!important}
.cl-brand-text{font-weight:300!important;font-size:25px}
