/* Bao Bì Vĩnh Nguyên homepage. Existing subpages keep their original selectors. */
@font-face{font-family:"BVN Poppins";src:url("../fonts/FZPoppins/FZ Poppins-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"BVN Poppins";src:url("../fonts/FZPoppins/FZ Poppins-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"BVN Poppins";src:url("../fonts/FZPoppins/FZ Poppins-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"BVN Poppins";src:url("../fonts/FZPoppins/FZ Poppins-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"BVN Poppins";src:url("../fonts/FZPoppins/FZ Poppins-ExtraBold.woff2") format("woff2");font-weight:800;font-style:normal;font-display:swap}
.bvn-site{--bvn-green:#064729;--bvn-light:#dfe8dd;position:relative;isolation:isolate;color:#111;background:#fff;font-family:"BVN Poppins",Arial,sans-serif;font-size:18px;font-weight:400;line-height:1.5;width:100%;min-width:0}
.bvn-site *,.bvn-site *::before,.bvn-site *::after{box-sizing:border-box}
.bvn-site h1,.bvn-site h2,.bvn-site h3,.bvn-site p,.bvn-site ul{margin:0}
.bvn-site ul{padding:0;list-style:none}
.bvn-site a{color:inherit;text-decoration:none}
.bvn-site img{display:block;max-width:100%;height:auto}
.bvn-site button,.bvn-site input{font:inherit}
.bvn-site button{cursor:pointer;border:0}
.bvn-site button:disabled{cursor:default;opacity:.35}
.bvn-site [hidden]{display:none!important}
.bvn-site a:focus-visible,.bvn-site button:focus-visible,.bvn-site summary:focus-visible,.bvn-site input:focus-visible{outline:3px solid #38a36b;outline-offset:4px}
.bvn-site .bvn-container{width:calc(100% - 48px);max-width:1440px;margin-inline:auto;min-width:0}
.bvn-site .bvn-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.bvn-site .bvn-heading{font-size:36px;line-height:54px;font-weight:700;color:var(--bvn-green)}
.bvn-site .bvn-heading--center{text-align:center}
.bvn-site .bvn-section-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}
.bvn-site .bvn-all-link{display:inline-flex;align-items:center;gap:8px;color:var(--bvn-green);font-size:18px;white-space:nowrap}
.bvn-site .bvn-all-link:hover{text-decoration:underline}
.bvn-site .bvn-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:63px;padding:15px 31px;border:1px solid var(--bvn-green);border-radius:40px;background:var(--bvn-green);color:#fff;font-size:18px;font-weight:500;line-height:27px;text-align:center;transition:background .25s,color .25s,box-shadow .25s;max-width:100%}
.bvn-site .bvn-button:hover,.bvn-site .bvn-button:focus-visible{background:#157847;border-color:#157847;box-shadow:0 5px 16px #06472925}
.bvn-site .bvn-button--outline{color:var(--bvn-green);background:transparent}
.bvn-site .bvn-button--outline:hover{color:#fff;background:var(--bvn-green)}
.bvn-site .bvn-button--white{color:var(--bvn-green);background:#fff;border-color:#fff}
.bvn-site .bvn-button--white:hover{color:#fff;background:#157847;border-color:#fff}
.bvn-site .bvn-header{position:relative;z-index:70}
.bvn-site .bvn-topbar{min-height:43px;background:var(--bvn-green);color:#fff;font:500 13px/20px "BVN Poppins",Arial,sans-serif}
.bvn-site .bvn-topbar__inner{min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.bvn-site .bvn-topbar__contacts,.bvn-site .bvn-topbar__right{display:flex;align-items:center;gap:17px;min-width:0}
.bvn-site .bvn-topbar__contacts>a,.bvn-site .bvn-topbar__contacts>span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.bvn-site .bvn-topbar__contacts>*+*{position:relative}
.bvn-site .bvn-topbar__contacts>*+*::before{content:"";position:absolute;left:-9px;top:0;bottom:0;border-left:1px solid #ffffff60}
.bvn-site .bvn-topbar a:hover{color:#c9e5c7}
.bvn-site .bvn-socials{display:flex;align-items:center;gap:22px}
.bvn-site .bvn-socials a{display:inline-flex;align-items:center;justify-content:center;flex:none}
.bvn-site .bvn-socials i,.bvn-site .bvn-socials img{transition:transform .35s}
.bvn-site .bvn-socials a:hover i,.bvn-site .bvn-socials a:hover img{transform:rotate(360deg)}
.bvn-site .bvn-languages{display:flex;align-items:center;gap:4px;flex:none;font-size:11px}
.bvn-site .bvn-language-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:26px;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;color:#fff;font:700 11px/1 "BVN Poppins",Arial,sans-serif;cursor:pointer;transition:background-color .18s,color .18s,border-color .18s}
.bvn-site .bvn-language-button:hover,.bvn-site .bvn-language-button:focus-visible{border-color:#ffffff80;background:#ffffff1f;color:#fff;outline:0}
.bvn-site .bvn-language-button.is-active{border-color:#fff;background:#fff;color:#064e2f;box-shadow:0 2px 9px #0003;cursor:default;font-weight:800}
.bvn-site .bvn-searchbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.bvn-site .bvn-search{position:relative;display:flex;width:352px;height:47px;border:1px solid #dedede;border-radius:8px;isolation:isolate;margin:0;flex-shrink:0}
.bvn-site .bvn-search input.search-auto{display:block;position:static;width:100%;min-width:0;height:45px;border:0;box-shadow:none;background:#fff;color:#333;padding:10px 15px;border-radius:8px 0 0 8px;opacity:1;visibility:visible;font-size:16px}
.bvn-site .bvn-search>button{width:47px;height:47px;margin:-1px -1px -1px 0;flex:none;border-radius:0 8px 8px 0;background:var(--bvn-green);color:#fff;font-size:23px}
.bvn-site .bvn-search .show-search{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;color:#222;box-shadow:0 5px 25px #0002;border-radius:8px;max-height:420px;overflow-y:auto;z-index:100}
.bvn-site .bvn-searchbar__hotline{font-size:20px;font-weight:600;min-height:53px;padding:10px 24px}
.bvn-site .bvn-navigation{position:sticky;top:0;z-index:60;height:106px;background:#f2f5f3ed;backdrop-filter:blur(12px);transition:box-shadow .2s}
.bvn-site .bvn-navigation.is-stuck{box-shadow:0 4px 16px #0002;background:#f4f7f5}
.bvn-site .bvn-navigation__inner,.bvn-site .bvn-menu,.bvn-site .bvn-menu__list{height:100%}
.bvn-site .bvn-menu__list{display:flex;align-items:center;justify-content:space-between;gap:clamp(10px,1.15vw,22px)}
.bvn-site .bvn-menu__list>li{position:relative;flex:0 1 auto;min-width:0}
.bvn-site .bvn-menu__list>li>a,.bvn-site .bvn-menu__list>li>.bvn-menu__item>a{font-size:clamp(14px,1vw,18px);font-weight:600;display:flex;align-items:center;min-height:60px;position:relative;white-space:nowrap}
.bvn-site .bvn-menu__list>li>a[aria-current]::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--bvn-green)}
.bvn-site .bvn-menu a:hover,.bvn-site .bvn-menu a[aria-current],.bvn-site .bvn-menu a:focus-visible{color:var(--bvn-green)}
.bvn-site .bvn-menu__item{display:flex;align-items:center;justify-content:space-between;gap:10px}
.bvn-site .bvn-menu__item>button{background:none;color:inherit;padding:8px;line-height:1}
.bvn-site .bvn-menu__brand{flex:0 0 auto!important}
.bvn-site .bvn-nav-logo{display:flex;align-items:center;justify-content:center;width:153px;height:76px;max-width:100%;color:var(--bvn-green);font-size:14px;font-weight:700;text-align:center}
.bvn-site .bvn-nav-logo img{width:153px;height:76px;object-fit:contain}
.bvn-site .bvn-submenu{position:absolute;top:100%;left:-18px;width:275px;z-index:3;background:#fff;box-shadow:0 10px 24px #0002;border-top:3px solid var(--bvn-green);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s}
.bvn-site .bvn-submenu li{position:relative}
.bvn-site .bvn-submenu a{display:block;font-size:15px;line-height:1.5;padding:11px 10px;flex:1;white-space:normal}
.bvn-site .bvn-submenu .bvn-submenu{left:100%;top:0}
.bvn-site .bvn-has-submenu:hover>.bvn-submenu,.bvn-site .bvn-has-submenu:focus-within>.bvn-submenu,.bvn-site .bvn-has-submenu.is-open>.bvn-submenu{opacity:1;visibility:visible;transform:none}
.bvn-site .bvn-submenu li:hover{background:#f0f6f1}
.bvn-site .bvn-menu-toggle,.bvn-site .bvn-menu-close,.bvn-site .bvn-nav-logo--mobile{display:none}
.bvn-site .bvn-hero{position:relative;margin-top:-106px;background:#edf4e9;min-width:0}
.bvn-site .bvn-hero__slide{position:relative;min-height:870px;height:auto;overflow:hidden}
.bvn-site .bvn-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.bvn-site .bvn-hero__inner{position:relative;z-index:1;display:flex;align-items:flex-start;padding-top:220px;padding-bottom:140px;min-height:870px}
.bvn-site .bvn-hero__copy{width:922px;max-width:66%;margin-left:-80px;text-align:center;color:var(--bvn-green)}
.bvn-site .bvn-hero__copy h1,.bvn-site .bvn-hero__copy h2{font:800 45px/68px "BVN Poppins",Arial,sans-serif;color:var(--bvn-green);overflow-wrap:anywhere}
.bvn-site .bvn-hero__copy h1 span,.bvn-site .bvn-hero__copy h2 span{display:block}
.bvn-site .bvn-hero__copy p{max-width:653px;margin:28px auto 0;font-size:21px;font-weight:600;line-height:31px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.bvn-site .bvn-hero__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin-top:34px}
.bvn-site .bvn-hero__controls{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:2;display:flex;align-items:center;gap:12px;background:#ffffffbd;border-radius:40px;padding:5px 10px}
.bvn-site .bvn-hero__controls>button{width:38px;height:38px;border-radius:50%;background:transparent;color:var(--bvn-green)}
.bvn-site .bvn-hero__controls>button:hover{background:#dceade}
.bvn-site .bvn-hero__pagination{display:flex;width:auto;gap:5px;align-items:center}
.bvn-site .bvn-hero__pagination .swiper-pagination-bullet-active{background:var(--bvn-green)}
.bvn-site .bvn-categories{position:relative;padding:69px 0 63px;isolation:isolate;overflow:hidden}
.bvn-site .bvn-categories__background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:1;z-index:-2}
.bvn-site .bvn-categories::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.22));z-index:-1;pointer-events:none}
.bvn-site .bvn-categories .bvn-heading{margin-bottom:38px}
.bvn-site .bvn-categories__swiper{padding:3px 0 10px;margin:-3px 0 -10px}
.bvn-site .bvn-categories__swiper .swiper-slide{height:auto}
.bvn-site .bvn-category{display:block;padding-bottom:0}
.bvn-site .bvn-categories__swiper .swiper-slide:nth-child(even){padding-top:60px}
.bvn-site .bvn-category__image{display:flex;align-items:center;justify-content:center;position:relative;height:332px;background:#eee;border-radius:20px;overflow:hidden}
.bvn-site .bvn-category__image img{width:186px;height:253px;max-width:100%;max-height:100%;object-fit:contain;padding:0;transition:transform .4s}
.bvn-site .bvn-category:hover img{transform:scale(1.055)}
.bvn-site .bvn-category__name{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:43px;margin-top:0;font-size:20px;line-height:30px;font-weight:600;color:var(--bvn-green)}
.bvn-site .bvn-category__name i{font-size:13px;width:27px;height:27px;border:1px solid var(--bvn-green);border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;transition:transform .25s}
.bvn-site .bvn-category:hover .bvn-category__name i{transform:translateX(3px)}
.bvn-site .bvn-featured{padding:75px 0 115px}
.bvn-site .bvn-carousel-shell{position:relative}
.bvn-site .bvn-products__swiper{padding:3px 0 10px;margin:-3px 0 -10px}
.bvn-site .bvn-products__swiper .swiper-slide{height:auto}
.bvn-site .bvn-product-card{position:relative;display:flex;flex-direction:column;height:427px;overflow:hidden;background:#fff;border:1px solid #e0e0e0;border-radius:20px;box-shadow:0 5px 7px #0002;transition:border-color .3s,box-shadow .3s}
.bvn-site .bvn-product-card__image{position:relative;display:flex;width:100%;height:345px;align-items:center;justify-content:center;padding:25px 18px 0;overflow:hidden;flex:none}
.bvn-site .bvn-product-card__image img{width:100%;height:100%;object-fit:contain;transition:transform .4s}
.bvn-site .bvn-product-card h3{font-size:24px;font-weight:500;line-height:32px;text-align:center;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:auto 12px}
.bvn-site .bvn-product-card::before{content:"";position:absolute;inset:0;border:2px solid transparent;border-radius:inherit;z-index:2;pointer-events:none;transition:border-color .3s}
.bvn-site .bvn-product-card::after{content:"";position:absolute;top:-25%;left:-90%;width:50%;height:150%;transform:skewX(-24deg);background:linear-gradient(90deg,transparent,#ffffff90,transparent);pointer-events:none}
.bvn-site .bvn-product-card:hover,.bvn-site .bvn-product-card:focus-visible{border-color:var(--bvn-green);box-shadow:0 6px 16px #06472930}
.bvn-site .bvn-product-card:hover::before{border-color:var(--bvn-green)}
.bvn-site .bvn-product-card:hover::after{animation:bvn-shine .8s ease}
.bvn-site .bvn-product-card:hover img{transform:scale(1.035)}
.bvn-site .bvn-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:48px;background:transparent;font-size:24px;color:#111;border-radius:50%}
.bvn-site .bvn-carousel-arrow:hover{background:#edf5ee;color:var(--bvn-green)}
.bvn-site .bvn-carousel-arrow--prev{left:-68px}.bvn-site .bvn-carousel-arrow--next{right:-68px}
.bvn-site .swiper-button-lock{display:none!important}
.bvn-site .bvn-about{padding-bottom:124px}
.bvn-site .bvn-about__grid{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center;min-height:696px}
.bvn-site .bvn-about__copy{min-width:0}
.bvn-site .bvn-about .bvn-heading span{display:block;margin-top:6px}
.bvn-site .bvn-about__description{font-size:18px;line-height:27px;margin-top:22px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}
.bvn-site .bvn-criteria{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:42px}
.bvn-site .bvn-criterion{display:flex;align-items:flex-start;gap:17px;min-width:0}
.bvn-site .bvn-criterion__icon{position:relative;display:flex;align-items:center;justify-content:center;width:100px;height:100px;flex:none;background:var(--bvn-green);color:#fff;border-radius:50%;font-size:36px}
.bvn-site .bvn-criterion__icon img{width:42px;height:42px;object-fit:contain}
.bvn-site .bvn-criterion__icon::after{content:"";position:absolute;inset:-7px;border:2px solid rgba(0,81,48,.3);border-radius:inherit;pointer-events:none;animation:bvn-icon-pulse 2.8s ease-out infinite}
.bvn-site .bvn-criterion__icon>i,.bvn-site .bvn-criterion__icon>img{position:relative;z-index:1;animation:bvn-icon-float 2.6s ease-in-out infinite}
.bvn-site .bvn-criterion:nth-child(2n) .bvn-criterion__icon::after,.bvn-site .bvn-criterion:nth-child(2n) .bvn-criterion__icon>i,.bvn-site .bvn-criterion:nth-child(2n) .bvn-criterion__icon>img{animation-delay:-1.3s}
.bvn-site .bvn-criterion h3{font-size:18px;font-weight:600;line-height:27px;margin-bottom:6px}
.bvn-site .bvn-criterion p{font-size:14px;line-height:21px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.bvn-site .bvn-criterion:hover .bvn-criterion__icon,.bvn-site .bvn-hotline:hover>i{animation:bvn-shake .6s ease}
.bvn-site .bvn-about__actions{display:flex;align-items:center;gap:100px;flex-wrap:wrap;margin-top:52px}
.bvn-site .bvn-about__actions .bvn-button{min-width:188px}
.bvn-site .bvn-hotline{display:inline-flex;align-items:center;gap:15px;color:var(--bvn-green)}
.bvn-site .bvn-hotline>i{display:flex;align-items:center;justify-content:center;width:63px;height:63px;border-radius:50%;background:var(--bvn-green);color:#fff;font-size:23px;flex:none}
.bvn-site .bvn-hotline>i{animation:bvn-hotline-breathe 2.6s ease-in-out infinite}
.bvn-site .bvn-hotline span{display:flex;flex-direction:column;font-size:16px}
.bvn-site .bvn-hotline small{font-size:14px;line-height:21px;font-weight:700}
.bvn-site .bvn-hotline strong{font-size:16px;line-height:24px;font-weight:600}
.bvn-site .bvn-about__album{height:696px;position:relative;min-width:0}
.bvn-site .bvn-about__photo{position:absolute;display:block;overflow:hidden;border-radius:20px;background:#f1f3f0}
.bvn-site .bvn-about__photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.bvn-site .bvn-about__photo:hover img{transform:scale(1.04)}
.bvn-site .bvn-about__photo--1{left:0;top:0;width:57%;height:58%}
.bvn-site .bvn-about__photo--2{right:7%;top:4%;width:30%;height:31%}
.bvn-site .bvn-about__photo--3{left:7%;bottom:7%;width:30%;height:31%}
.bvn-site .bvn-about__photo--4{right:0;bottom:0;width:57%;height:58%;border:7px solid #fff}
.bvn-site .bvn-about__album[data-count="1"] .bvn-about__photo{inset:0;width:100%;height:100%}
.bvn-site .bvn-about__album[data-count="2"] .bvn-about__photo--1{height:75%}
.bvn-site .bvn-about__album[data-count="2"] .bvn-about__photo--2{top:auto;right:0;bottom:0;width:50%;height:65%;border:7px solid #fff}
.bvn-site .bvn-about__album[data-count="3"] .bvn-about__photo--3{left:auto;right:0;bottom:0;width:57%;height:58%;border:7px solid #fff}
.bvn-site .bvn-album-controls{position:absolute;bottom:8px;left:8px;display:flex;gap:8px;z-index:2}
.bvn-site .bvn-album-controls button{width:40px;height:40px;border-radius:50%;background:var(--bvn-green);color:#fff}
.bvn-site .bvn-gallery{padding-bottom:86px}
.bvn-site .bvn-gallery .bvn-heading{margin-bottom:32px}
.bvn-site .bvn-products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:20px;row-gap:31px}
.bvn-site .bvn-section-action{text-align:center;margin-top:31px}
.bvn-site .bvn-section-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;pointer-events:none}
/* BVN stats / Figma 2071857746: 1920x446; three 467x252 cards at 21px spacing. */
.bvn-site .bvn-stats{position:relative;isolation:isolate;background:#123b2c;color:#fff;min-height:446px;padding:95px 0 99px;display:flex;align-items:center}
.bvn-site .bvn-stats::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.8);z-index:-1}
.bvn-site .bvn-stats__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;align-items:stretch;max-width:1443px}
.bvn-site .bvn-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:252px;border:1px solid #f2f2f2;border-radius:20px;background:rgba(255,255,255,.21);padding:30px 20px;text-align:center}
.bvn-site .bvn-stat>strong,.bvn-site .bvn-stat h2,.bvn-site .bvn-stat p{display:block;width:100%;max-width:268px;overflow-wrap:break-word}
.bvn-site .bvn-stat>strong{font-size:40px;line-height:60px;font-weight:700}
.bvn-site .bvn-stat h2{font-size:20px;font-weight:600;line-height:30px;margin:3px 0 9px}
.bvn-site .bvn-stat p{font-size:14px;font-weight:500;line-height:21px}
.bvn-site .bvn-stats__grid.is-animated .bvn-stat{animation:bvn-stat-enter .7s cubic-bezier(.2,.75,.25,1) both}
.bvn-site .bvn-stats__grid.is-animated .bvn-stat:nth-child(2){animation-delay:.12s}
.bvn-site .bvn-stats__grid.is-animated .bvn-stat:nth-child(3){animation-delay:.24s}
.bvn-site .bvn-factory{position:relative;isolation:isolate;padding:54px 0 75px;min-height:0;background:#edf0ed}
.bvn-site .bvn-factory::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(rgba(255,255,255,.16),rgba(255,255,255,.24) 75%,rgba(255,255,255,.18))}
.bvn-site .bvn-process{scroll-margin-top:126px;min-height:0}
.bvn-site .bvn-process .bvn-heading{font-size:30px;line-height:45px;margin-bottom:28px}
.bvn-site .bvn-accordion{width:100%;max-width:none;margin-inline:auto}
.bvn-site .bvn-process-step{border-bottom:1px solid #a1a1a1;padding:0 0 28px;margin:0 0 28px;color:var(--bvn-green)}
.bvn-site .bvn-process-step:last-child{border-bottom:0;padding-bottom:0;margin-bottom:0}
.bvn-site .bvn-process-step summary{display:flex;align-items:center;gap:20px;cursor:pointer;list-style:none;height:40px;min-height:40px;padding:0;transition:color .18s ease}
.bvn-site .bvn-process-step summary::-webkit-details-marker{display:none}
.bvn-site .bvn-process-step summary:hover,.bvn-site .bvn-process-step summary:focus-visible{color:#157847}
.bvn-site .bvn-process-step summary:hover h3{color:#157847}
.bvn-site .bvn-process-step summary:focus-visible{outline:2px solid var(--bvn-green);outline-offset:2px}
.bvn-site .bvn-process-step__icon{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;font-size:30px;flex:none}
.bvn-site .bvn-process-step__icon img{width:40px;height:40px;object-fit:contain}
.bvn-site .bvn-process-step h3{font-size:24px;line-height:36px;font-weight:600}
.bvn-site .bvn-process-step__toggle{width:40px;height:40px;position:relative;flex:none;margin-left:auto}
.bvn-site .bvn-process-step__toggle::before,.bvn-site .bvn-process-step__toggle::after{content:"";position:absolute;background:var(--bvn-green);width:24px;height:2px;left:8px;top:19px}
.bvn-site .bvn-process-step__toggle::after{transform:rotate(90deg);transition:transform .2s}
.bvn-site .bvn-process-step[open] .bvn-process-step__toggle::after{transform:rotate(0)}
.bvn-site .bvn-process-step__body{display:flex;align-items:flex-end;justify-content:space-between;gap:76px;min-height:63px;margin:12px 0 0;padding:0;color:#000;background:transparent;border:0;border-radius:0;box-shadow:none}
.bvn-site .bvn-process-step__body p{width:1196px;max-width:calc(100% - 244px);font-size:20px;line-height:30px;margin:0;white-space:normal}
.bvn-site .bvn-process-step__body .bvn-button{flex:none;width:168px;height:63px;min-height:63px;padding:18px 24px;font-size:18px;font-weight:600;line-height:27px}
.bvn-site .bvn-partners{margin-top:40px}
.bvn-site .bvn-partners .bvn-heading{margin-bottom:48px}
.bvn-site .bvn-partners__swiper{width:calc(100% - 96px);margin:auto}
.bvn-site .bvn-partner{display:flex;align-items:center;justify-content:center;height:130px;background:#fff;border-radius:12px;padding:20px;position:relative;overflow:hidden}
.bvn-site .bvn-partner img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform .3s}
.bvn-site .bvn-partner:hover img{transform:scale(1.05)}
.bvn-site .bvn-consultation{min-height:295px;padding:56px 0 57px;background:linear-gradient(91deg,#064729,#02552e);color:#fff;text-align:center}
.bvn-site .bvn-consultation p{max-width:1150px;margin:0 auto;font-size:20px;line-height:30px;font-weight:500;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:90px}
.bvn-site .bvn-consultation__actions{display:flex;align-items:center;justify-content:center;gap:110px;margin-top:29px}
.bvn-site .bvn-hotline--white{background:#fff!important;border-radius:40px;padding:4px 21px 4px 10px;min-height:63px;gap:10px}
.bvn-site .bvn-hotline--white>i{background:transparent;color:var(--bvn-green);width:40px;height:40px}
.bvn-site .bvn-hotline--white small,.bvn-site .bvn-hotline--white strong{font-size:13px;line-height:19px;text-align:left}
.bvn-site .bvn-news{padding:89px 0 88px}
.bvn-site .bvn-news .bvn-section-head{margin-bottom:19px}
.bvn-site .bvn-news-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.bvn-site .bvn-news-card{display:flex;flex-direction:column;min-height:463px;padding:12px;background:#fff;border:1px solid #e6e6e6;box-shadow:0 3px 5px #0001;min-width:0}
.bvn-site .bvn-news-card__image{position:relative;display:block;width:304px;max-width:100%;height:186px;overflow:hidden;border-radius:5.25px;opacity:1;flex:none}
.bvn-site .bvn-news-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.bvn-site .bvn-news-card:hover img{transform:scale(1.04)}
.bvn-site .bvn-news-card__body{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding-top:20px}
.bvn-site .bvn-news-card time{font-size:12px;line-height:18px;color:#666;margin-bottom:6px}
.bvn-site .bvn-news-card h3{font-size:20px;line-height:28px;font-weight:600;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.bvn-site .bvn-news-card h3 a:hover{color:var(--bvn-green)}
.bvn-site .bvn-news-card p{font-size:16px;line-height:24px;margin:10px 0 16px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.bvn-site .bvn-news-card .bvn-button{font-size:12px;line-height:18px;min-height:37px;padding:8px 16px;margin-top:auto}
.bvn-site .bvn-footer{position:relative;isolation:isolate;background:#dfe8dd;min-height:0;padding:150px 0 28px;color:var(--bvn-green)}
.bvn-site .bvn-footer>.bvn-section-background{opacity:.12}
.bvn-site .bvn-footer__grid{display:grid;grid-template-columns:1.45fr .75fr .85fr 1.1fr;gap:60px;align-items:start}
.bvn-site .bvn-footer__grid>*{min-width:0}
.bvn-site .bvn-footer h2{font-size:20px;line-height:30px;font-weight:600;margin:0 0 18px}
.bvn-site .bvn-footer__logo{display:block;width:235px;max-width:100%;height:158px;margin:0 0 16px;position:relative}
.bvn-site .bvn-footer__logo img{width:100%;height:100%;object-fit:contain;object-position:left center}
.bvn-site .bvn-footer__intro{font-size:15px;line-height:23px;color:#526259;max-width:340px}
.bvn-site .bvn-footer__intro p{margin:0 0 8px}
.bvn-site .bvn-footer__social-row{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:26px}
.bvn-site .bvn-footer__social-row>span{font-size:14px;font-weight:600}
.bvn-site .bvn-footer .bvn-socials{gap:8px}
.bvn-site .bvn-footer .bvn-socials a{width:29px;height:29px;background:var(--bvn-green);color:#fff;border-radius:3px;font-size:13px}
.bvn-site .bvn-footer__links li{margin-bottom:12px;font-size:16px;line-height:24px;color:#526259}
.bvn-site .bvn-footer__links a:hover{text-decoration:underline;color:var(--bvn-green)}
.bvn-site .bvn-footer__contact{font-size:16px;line-height:25px;color:#526259;overflow-wrap:anywhere}
.bvn-site .bvn-footer__contact h2{color:var(--bvn-green)}
.bvn-site .bvn-footer__contact>p{display:flex;gap:14px;margin-bottom:16px;align-items:baseline}
.bvn-site .bvn-footer__contact-content p{margin-bottom:12px}
.bvn-site .bvn-footer__contact-content p:last-child{margin-bottom:0}
.bvn-site .bvn-footer__contact-content a{color:var(--bvn-green);text-decoration:none;overflow-wrap:anywhere}
.bvn-site .bvn-footer__contact-content a:hover{text-decoration:underline}
.bvn-site .bvn-footer__contact-content ul,.bvn-site .bvn-footer__contact-content ol{margin:0 0 12px;padding-left:20px}
.bvn-site .bvn-footer__contact-content table{display:block;width:100%;max-width:100%;overflow-x:auto}
.bvn-site .bvn-footer__contact-content img{max-width:100%;height:auto}
.bvn-site .bvn-footer__map{margin-top:18px}
.bvn-site .bvn-footer__map summary,.bvn-site .bvn-map-link{display:flex;align-items:center;justify-content:center;gap:9px;min-height:36px;border:1px solid var(--bvn-green);border-radius:30px;font-size:12px;line-height:18px;color:var(--bvn-green);cursor:pointer;padding:7px 12px;list-style:none;text-align:center}
.bvn-site .bvn-footer__map summary::-webkit-details-marker{display:none}
.bvn-site .bvn-footer__map summary:hover{background:#cbdcc8}
.bvn-site .bvn-footer__map iframe{display:block;width:100%;height:230px;border:0;margin-top:16px;border-radius:8px}
.bvn-site .bvn-footer__copyright{font-size:13px;line-height:20px;text-align:center;margin:26px auto 0;padding:0 20px;color:#526259}
.bvn-site .bvn-floating-phone{position:fixed;bottom:24px;left:24px;z-index:55;display:flex;align-items:center;gap:10px;background:var(--bvn-green);color:#fff;padding:12px 20px;border-radius:40px;box-shadow:0 4px 18px #0002;font-size:16px}
.bvn-site .bvn-floating-phone>i{font-size:22px}
.bvn-site .bvn-floating-phone:hover>i{animation:bvn-shake .6s ease}
.bvn-site .bvn-back-top{display:none;position:fixed;right:24px;bottom:25px;z-index:55;width:44px;height:44px;background:var(--bvn-green);color:#fff;border-radius:50%;font-size:23px}
/* Floating hotline/social: same visual size and evenly spaced pulse rings. */
.bvn-site #hotline.btn-frame{left:var(--left,22px);right:var(--right,auto);bottom:var(--bottom,26px);transform:none}
.bvn-site #social{left:var(--left,auto);right:var(--right,16px);bottom:var(--bottom,95px);width:48px;flex-direction:column;align-items:center;gap:12px}
.bvn-site #hotline.btn-frame,.bvn-site #social .btn-frame{position:fixed;width:48px;height:48px;border-radius:50%;isolation:isolate;overflow:visible;transform:none;--bvn-floating-delay:0s}
.bvn-site #social .btn-frame{position:relative;display:flex;align-items:center;justify-content:center;margin:0}
.bvn-site #social .btn-frame:nth-child(2){--bvn-floating-delay:-.75s}
.bvn-site #social .btn-frame:nth-child(3){--bvn-floating-delay:-1.5s}
.bvn-site #hotline.btn-frame i,.bvn-site #social .btn-frame i{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.16)}
.bvn-site #social .btn-frame i img{display:block;width:36px;height:36px;max-width:100%;max-height:100%;object-fit:contain;transition:transform .3s ease}
.bvn-site #hotline.btn-frame .kenit-alo-circle,.bvn-site #social .btn-frame .kenit-alo-circle{display:block;position:absolute;z-index:0;inset:-7px;width:auto;height:auto;border:2px solid var(--background);border-radius:50%;opacity:0;pointer-events:none;animation:bvn-floating-ring 2.4s ease-out infinite!important;animation-delay:var(--bvn-floating-delay)!important}
.bvn-site #hotline.btn-frame .kenit-alo-circle-fill,.bvn-site #social .btn-frame .kenit-alo-circle-fill{display:block;position:absolute;z-index:0;inset:-3px;width:auto;height:auto;border-radius:50%;background:var(--background);opacity:0;pointer-events:none;animation:bvn-floating-glow 2.4s ease-out infinite!important;animation-delay:calc(var(--bvn-floating-delay) - .35s)!important}
.bvn-site #social .btn-frame:hover i img{transform:scale(1.1) rotate(-7deg)}
.bvn-site #hotline.btn-frame:hover i{animation:bvn-shake .6s ease}
.bvn-site .social-template-4{left:auto;right:16px;bottom:86px;max-width:44px;width:44px}
.bvn-site .social-template-4__item{width:44px;height:44px;min-width:44px;min-height:44px}
.bvn-site .social-template-4__icon{width:34px;height:34px}
.bvn-site .social-template-4__item img{max-width:34px;max-height:34px;width:auto;height:auto;object-fit:contain}

.bvn-site .bvn-image-unavailable{background-color:#f1f3f0}
.bvn-site .bvn-image-unavailable>img{visibility:hidden}
.bvn-site .bvn-image-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#90a696;font-size:32px;pointer-events:none}
@keyframes bvn-shine{to{left:140%}}
@keyframes bvn-shake{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(-12deg)}40%,80%{transform:rotate(12deg)}}
@keyframes bvn-icon-float{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.06)}}
@keyframes bvn-icon-pulse{0%{opacity:.7;transform:scale(.88)}70%,100%{opacity:0;transform:scale(1.18)}}
@keyframes bvn-hotline-breathe{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(0,81,48,.22)}50%{transform:scale(1.07);box-shadow:0 0 0 11px rgba(0,81,48,0)}}
@keyframes bvn-stat-enter{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes bvn-floating-ring{0%{opacity:.72;transform:scale(.78)}70%,100%{opacity:0;transform:scale(1.18)}}
@keyframes bvn-floating-glow{0%{opacity:.24;transform:scale(.82)}75%,100%{opacity:0;transform:scale(1.32)}}

@media (prefers-reduced-motion:reduce){
  .bvn-site .bvn-criterion__icon::after,.bvn-site .bvn-criterion__icon>i,.bvn-site .bvn-criterion__icon>img,.bvn-site .bvn-hotline>i,.bvn-site .bvn-stats__grid.is-animated .bvn-stat,.bvn-site #hotline .kenit-alo-circle,.bvn-site #hotline .kenit-alo-circle-fill,.bvn-site #social .kenit-alo-circle,.bvn-site #social .kenit-alo-circle-fill{animation:none!important}
}

.bvn-site .bvn-about__album.is-changing .bvn-about__photo:not([hidden]){animation:bvn-album-enter .45s ease both}
@keyframes bvn-album-enter{from{opacity:.3;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}

/* Bao Bi Vinh Nguyen - unified inner pages (same typography/green palette as home). */
.bvn-site .bvn-page-hero{position:relative;background:linear-gradient(115deg,#eef5ec 0%,#dceadc 100%);border-top:1px solid #e0e9df;border-bottom:1px solid #d1e1d5;padding:18px 0}
.bvn-site .bvn-page-hero__title{font-size:clamp(27px,2.5vw,40px);font-weight:700;line-height:1.3;color:var(--bvn-green);overflow-wrap:anywhere}
.bvn-site .bvn-page-hero__crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:14px;line-height:23px;color:#52725e;margin-top:0}
.bvn-site .bvn-page-hero__crumbs a:hover{color:var(--bvn-green);text-decoration:underline}
.bvn-site .bvn-page-hero__crumbs span{min-width:0;overflow-wrap:anywhere}
.bvn-site .bvn-page-hero__crumbs ul,.bvn-site .bvn-page-hero__crumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.bvn-site .bvn-subpage-body{min-height:480px;background:#fff;color:#182b20;font-size:16px;line-height:1.7;overflow-wrap:anywhere}
.bvn-site .bvn-subpage-body .wrap-content{width:calc(100% - 48px);max-width:1440px;margin-left:auto;margin-right:auto}
.bvn-site .bvn-subpage-body img,.bvn-site .bvn-subpage-body iframe{max-width:100%}
.bvn-site .bvn-subpage-body h1,.bvn-site .bvn-subpage-body h2,.bvn-site .bvn-subpage-body h3{color:var(--bvn-green);font-family:"BVN Poppins",Arial,sans-serif;line-height:1.35}
.bvn-site .bvn-subpage-body h1{font-size:clamp(25px,2.25vw,34px);font-weight:700}
.bvn-site .bvn-subpage-body h2{font-size:clamp(22px,1.75vw,28px);font-weight:650}
.bvn-site .bvn-subpage-body .content-main p,.bvn-site .bvn-subpage-body .article-cke-content p{margin-bottom:16px}
.bvn-site .bvn-subpage-body .content-main ul,.bvn-site .bvn-subpage-body .article-cke-content ul{list-style:disc;padding-left:24px;margin-bottom:16px}
.bvn-site .bvn-subpage-body .content-main ol,.bvn-site .bvn-subpage-body .article-cke-content ol{padding-left:24px;margin-bottom:16px}
.bvn-site .bvn-subpage-body .content-main a{color:var(--bvn-green)}
.bvn-site .bvn-subpage-body .content-main img{height:auto;border-radius:10px}
.bvn-site .bvn-subpage-body .title-detail{margin-bottom:26px}
.bvn-site .bvn-subpage-body .title-detail h1{text-align:center}
.bvn-site .bvn-subpage-body .title-detail h1::after{content:"";display:block;width:75px;height:3px;background:#268a55;margin:13px auto 0;border-radius:4px}
.bvn-site .bvn-subpage-body .title-detail .filter{display:none}
.bvn-site .bvn-listing,.bvn-site .bvn-subpage-section{padding:65px 0 85px}
.bvn-site .bvn-listing__heading{display:flex;justify-content:center;align-items:center;gap:20px;text-align:center}
.bvn-site .bvn-product-listing .product-list-main{max-width:none;margin:0}
.bvn-site .bvn-product-listing .product-list-heading{display:none}
.bvn-site .bvn-product-listing .product-list-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.bvn-site .bvn-product-listing .product-list-card{border:1px solid #e3eae4;border-radius:16px;box-shadow:0 4px 18px rgba(6,71,41,.06);overflow:hidden;background:#fff}
.bvn-site .bvn-product-listing .product-list-card:hover{border-color:#a8d2b5;box-shadow:0 10px 30px rgba(6,71,41,.13)}
.bvn-site .bvn-product-listing .product-list-photo{background:#f6f9f6}
.bvn-site .bvn-product-listing .product-list-photo a{aspect-ratio:1 / 1;padding:18px}
.bvn-site .bvn-product-listing .product-list-info{display:block;padding:18px 18px 21px}
.bvn-site .bvn-product-listing .product-list-name{font-size:18px;line-height:1.45;min-height:52px}
.bvn-site .bvn-product-listing .product-list-name a{color:#153b24}
.bvn-site .bvn-product-listing .product-list-name a:hover{color:#16844a}
.bvn-site .bvn-product-listing .product-list-price{text-align:left;margin-top:10px;font-size:16px}
.bvn-site .bvn-product-listing .price-new{color:var(--bvn-green)}
.bvn-site .bvn-product-listing .product-list-cart{background:var(--bvn-green);box-shadow:none}
.bvn-site .bvn-product-listing .product-list-cart:hover{background:#187347}
.bvn-site .bvn-product-listing .sort-select{margin-bottom:25px}
.bvn-site .bvn-product-listing .pagination,.bvn-site .bvn-listing .pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:40px}
.bvn-site .bvn-subpage-body .page-link,.bvn-site .bvn-subpage-body .pagination a{border-color:#d6e5da;color:var(--bvn-green)}
.bvn-site .bvn-subpage-body .page-item.active .page-link{background:var(--bvn-green);border-color:var(--bvn-green);color:#fff}
/* About, projects, services, news and detail templates retain their dynamic CMS content. */
.bvn-site .dap-subpage,.bvn-site .tbl-about-shell,.bvn-site .product-detail-page,.bvn-site .news-detail-template,.bvn-site .news-detail-content-only{background:#fff;color:#263b2d}
.bvn-site .dap-about-article,.bvn-site .dap-projects-articles,.bvn-site .dap-services-page{padding:65px 0 85px}
.bvn-site .dap-about-article__container,.bvn-site .dap-projects-articles__container,.bvn-site .dap-services__container,.bvn-site .dap-detail-container{width:calc(100% - 48px);max-width:1440px;margin:0 auto}
.bvn-site .dap-about-article__body,.bvn-site .dap-detail-article{border:1px solid #e1eae2;border-radius:18px;padding:clamp(20px,3vw,48px);background:#fff;box-shadow:0 8px 35px rgba(6,71,41,.045)}
.bvn-site .dap-about-article__gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:35px}
.bvn-site .dap-about-article__gallery-item{display:block;aspect-ratio:4/3;border-radius:14px;overflow:hidden}
.bvn-site .dap-about-article__gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.bvn-site .dap-about-article__gallery-item:hover img{transform:scale(1.04)}
.bvn-site .dap-projects-articles__heading,.bvn-site .dap-services--subpage__heading,.bvn-site .dap-listing-page-title{margin-bottom:30px;text-align:center}
.bvn-site .dap-projects-articles__grid,.bvn-site .dap-services__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.bvn-site .dap-project-post,.bvn-site .dap-services__card{border:1px solid #e1eae3;border-radius:16px;background:#fff;box-shadow:0 6px 25px rgba(6,71,41,.055);overflow:hidden;min-width:0}
.bvn-site .dap-project-post__media,.bvn-site .dap-services__image{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#edf4ed}
.bvn-site .dap-project-post__media>img,.bvn-site .dap-services__image>img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.bvn-site .dap-project-post:hover img,.bvn-site .dap-services__card:hover .dap-services__image>img{transform:scale(1.035)}
.bvn-site .dap-project-post__body,.bvn-site .dap-services__body{padding:24px}
.bvn-site .dap-project-post__body h2,.bvn-site .dap-services__body h3{font-size:21px;line-height:1.45;margin-bottom:10px}
.bvn-site .dap-project-post__body p,.bvn-site .dap-services__body p{font-size:15px;line-height:1.65;color:#56695c;margin-bottom:15px}
.bvn-site .dap-project-post__read,.bvn-site .dap-services__read-more{color:var(--bvn-green);font-weight:600}
.bvn-site .dap-services__line{background:#c5e0cb}
.bvn-site .dap-projects-articles__pagination,.bvn-site .dap-news-page__pagination{display:flex;justify-content:center;gap:8px;margin-top:32px;flex-wrap:wrap}
.bvn-site .dap-projects-articles__pagination a,.bvn-site .dap-news-page__pagination a{padding:7px 13px;border:1px solid #c9ddcf;color:var(--bvn-green);border-radius:7px}
.bvn-site .dap-projects-articles__pagination a.is-active{background:var(--bvn-green);color:#fff}
.bvn-site .dap-news-page__filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:25px}
.bvn-site .dap-news-page__filters a,.bvn-site .bvn-blog-page__tabs a{padding:10px 17px;border:1px solid #bdd5c5;border-radius:100px;color:var(--bvn-green);font-weight:500;font-size:14px}
.bvn-site .dap-news-page__filters a.is-active,.bvn-site .bvn-blog-page__tabs a.is-current,.bvn-site .dap-news-page__filters a:hover{background:var(--bvn-green);color:#fff;border-color:var(--bvn-green)}
.bvn-site .bvn-news-listing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.bvn-site .bvn-news-listing__card{min-width:0;border:1px solid #e1eae3;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 5px 22px rgba(6,71,41,.06)}
.bvn-site .bvn-news-listing__media{display:block;position:relative;aspect-ratio:16/10;background:#eef5ee;overflow:hidden}
.bvn-site .bvn-news-listing__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.bvn-site .bvn-news-listing__card:hover img{transform:scale(1.045)}
.bvn-site .bvn-news-listing__fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#94af9a;font-size:30px}
.bvn-site .bvn-news-listing__content{padding:22px}
.bvn-site .bvn-news-listing__label,.bvn-site .bvn-eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#13834b;font-weight:700}
.bvn-site .bvn-news-listing__content h2{font-size:20px;margin:8px 0 12px}
.bvn-site .bvn-news-listing__content p{font-size:15px;color:#617365;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:14px}
.bvn-site .bvn-news-listing__more{color:var(--bvn-green);font-weight:600;font-size:14px}
.bvn-site .news-detail-content-only,.bvn-site .product-detail-page>.wrap-content{padding:50px 0 75px}
/* Legacy blog URLs are still supported, but without old art-school branding. */
.bvn-site .bvn-blog-page{padding:55px 0 85px}
.bvn-site .bvn-blog-page__container{max-width:1440px;width:calc(100% - 48px);margin:auto}
.bvn-site .bvn-blog-page__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-bottom:36px}
.bvn-site .bvn-blog-page__tabs{display:flex;gap:10px;flex-wrap:wrap}
.bvn-site .bvn-blog-page__section{margin:0 0 48px}
.bvn-site .bvn-blog-page__section-heading{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:24px}
.bvn-site .bvn-blog-page__section-kicker{display:block;color:#16844a;font-weight:600;font-size:13px;letter-spacing:.06em;margin-bottom:5px}
.bvn-site .bvn-blog-page__view-all{color:var(--bvn-green);font-weight:600;white-space:nowrap}
.bvn-site .bvn-blog-news,.bvn-site .bvn-blog-press{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.bvn-site .bvn-blog-news__card,.bvn-site .bvn-blog-press__card{border:1px solid #e0eae1;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 6px 20px rgba(6,71,41,.07);min-width:0}
.bvn-site .bvn-blog-news__image,.bvn-site .bvn-blog-press__image{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:16/10;background:#edf3ed;overflow:hidden}
.bvn-site .bvn-blog-news__image img,.bvn-site .bvn-blog-press__image img{width:100%;height:100%;object-fit:cover}
.bvn-site .bvn-blog-news__body,.bvn-site .bvn-blog-press__body{padding:22px}
.bvn-site .bvn-blog-news__body h3,.bvn-site .bvn-blog-press__body h3{font-size:19px;line-height:1.45;margin:9px 0}
.bvn-site .bvn-blog-news__body p,.bvn-site .bvn-blog-press__body p{font-size:15px;line-height:1.6;color:#596d60;margin-bottom:12px}
.bvn-site .bvn-blog-news__more,.bvn-site .bvn-blog-press__link{font-weight:600;font-size:14px;color:var(--bvn-green)}
.bvn-site .bvn-blog-page__pagination{display:flex;justify-content:center;margin-top:26px}
/* Contact - one article from the existing static-page CMS and original mail workflow. */
.bvn-site .bvn-contact__head{text-align:center;max-width:880px;margin:0 auto 40px}
.bvn-site .bvn-contact__head h1{margin:8px 0 12px}
.bvn-site .bvn-contact__head p{color:#596c60}
.bvn-site .bvn-contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start}
.bvn-site .bvn-contact__details,.bvn-site .bvn-contact__form-card{border:1px solid #dce8de;background:#fff;border-radius:20px;padding:38px;min-width:0;box-shadow:0 8px 32px rgba(6,71,41,.06)}
.bvn-site .bvn-contact__details h2,.bvn-site .bvn-contact__form-card h2{font-size:24px;margin:6px 0 18px}
.bvn-site .bvn-contact__editor p{margin-bottom:16px}
.bvn-site .bvn-contact__details a{color:var(--bvn-green)}
.bvn-site .bvn-contact__details>p{display:flex;gap:12px;margin-bottom:16px}
.bvn-site .bvn-contact__office{width:100%;height:auto;max-height:340px;object-fit:cover;border-radius:13px;margin-top:25px}
.bvn-site .bvn-contact__form-card{background:#f4f8f4}
.bvn-site .bvn-contact__form-card>p{font-size:15px;line-height:1.7;color:#526657;margin-bottom:24px}
.bvn-site .bvn-contact__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.bvn-site .bvn-contact__fields label{display:flex;flex-direction:column;gap:8px;color:#2d4735;font-weight:600;font-size:14px}
.bvn-site .bvn-contact__fields .bvn-contact__wide{grid-column:1/-1}
.bvn-site .bvn-contact__fields input,.bvn-site .bvn-contact__fields textarea{width:100%;min-width:0;padding:13px 15px;border:1px solid #cfdfd2;border-radius:9px;background:#fff;color:#243d2d;box-shadow:none;font-weight:400;font-size:15px;outline-offset:3px}
.bvn-site .bvn-contact__fields input:focus,.bvn-site .bvn-contact__fields textarea:focus{border-color:#2a9457;outline:2px solid #b9e4c7}
.bvn-site .bvn-contact__fields textarea{resize:vertical;min-height:140px}
.bvn-site .bvn-contact__form .bvn-button{margin-top:24px}
.bvn-site .bvn-contact__honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;pointer-events:none}

/* CMS detail templates inherit the BVN palette rather than previous demo brand colors. */
.bvn-site .news-template{--news-primary:#064729;--news-accent:#16844a;--news-text:#173e26;--news-muted:#5f7164;--news-border:#d1e2d5;--news-soft-border:#e1ece4;--news-surface-muted:#f5f9f5}
.bvn-site .product-list-template{--product-red:#064729;--product-gold:#16844a;--product-navy:#064729;--product-text:#1b3524;--product-border:#dbe7de;--product-soft:#f4f8f4}
.bvn-site .product-list-template .title-detail h1{color:var(--bvn-green);font-family:"BVN Poppins",Arial,sans-serif;font-size:clamp(25px,2.25vw,34px);text-align:center}
.bvn-site .product-detail-page .grid-pro-detail{padding:12px 0 36px}
.bvn-site .product-detail-page .right-pro-detail h1,.bvn-site .product-detail-page .right-pro-detail h2{color:var(--bvn-green)}
.bvn-site .product-detail-page .product-detail-tabs-wrap{border-color:#d9e7dc}
.bvn-site .news-template .news-template-title h1{color:var(--bvn-green)}
.bvn-site .news-template .news-template-title-4 h1{color:#fff}
.bvn-site .news-detail-content-only{max-width:1080px;margin:auto}
.bvn-site .news-detail-content-only h1{text-align:center;margin-bottom:24px}
.bvn-site .bvn-process-article{max-width:1440px;padding-inline:0}
.bvn-site .bvn-process-article h1{font-size:40px;line-height:1.35;color:var(--bvn-green);margin-bottom:32px}
.bvn-site .bvn-process-article__image{width:min(100%,960px);margin:0 auto 32px;overflow:hidden;border-radius:10px}
.bvn-site .bvn-process-article__image img{display:block;width:100%;height:auto;max-height:620px;object-fit:cover}
.bvn-site .bvn-process-article__description{font-size:20px;line-height:32px;font-weight:500;color:#263b2d;margin:0 0 24px}
.bvn-site .bvn-process-article__description p{margin-bottom:16px}
.bvn-site .bvn-process-article>.article-cke-content{font-size:18px;line-height:30px;color:#263b2d}
.bvn-site .news-detail-template .news-template-detail-title{text-align:center}
.bvn-site .dap-detail-page .dap-detail-section{padding:42px 0 82px}
.bvn-site .dap-detail-page .dap-detail-related{clear:both;margin-top:42px;padding-top:38px;border-top:1px solid #dce8df}
.bvn-site .dap-detail-page .dap-detail-related__title{position:relative;margin:0 0 26px;padding-bottom:13px;color:var(--bvn-green);font-family:"BVN Poppins",Arial,sans-serif;font-size:clamp(24px,2vw,30px);font-weight:700;line-height:1.35;text-align:center}
.bvn-site .dap-detail-page .dap-detail-related__title::after{content:"";position:absolute;left:50%;bottom:0;width:64px;height:3px;border-radius:4px;background:#268a55;transform:translateX(-50%)}
.bvn-site .dap-detail-page .dap-detail-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.bvn-site .dap-detail-page .dap-news-card{min-width:0;overflow:hidden;border:1px solid #dce8df;border-radius:16px;background:#fff;box-shadow:0 6px 24px rgba(6,71,41,.08);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.bvn-site .dap-detail-page .dap-news-card:hover{border-color:#a9cfb5;box-shadow:0 12px 32px rgba(6,71,41,.14);transform:translateY(-4px)}
.bvn-site .dap-detail-page .dap-news-card__media{position:relative;display:block;width:100%;aspect-ratio:16/10;overflow:hidden;background:#edf4ee}
.bvn-site .dap-detail-page .dap-news-card__fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#8baa94;font-size:36px}
.bvn-site .dap-detail-page .dap-news-card__media>img{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.bvn-site .dap-detail-page .dap-news-card:hover .dap-news-card__media>img{transform:scale(1.045)}
.bvn-site .dap-detail-page .dap-news-card__shade{position:absolute;z-index:2;inset:38% 0 0;background:linear-gradient(180deg,transparent 0%,rgba(3,49,28,.88) 100%);pointer-events:none}
.bvn-site .dap-detail-page .dap-news-card__label{position:absolute;z-index:3;top:15px;left:15px;padding:6px 11px;border-radius:100px;background:rgba(255,255,255,.94);color:var(--bvn-green);font-size:12px;font-weight:700;line-height:1.2;text-transform:uppercase;letter-spacing:.04em}
.bvn-site .dap-detail-page .dap-news-card__content{position:absolute;z-index:3;right:18px;bottom:17px;left:18px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;color:#fff}
.bvn-site .dap-detail-page .dap-news-card__content strong{display:-webkit-box;min-width:0;overflow:hidden;color:#fff;font-family:"BVN Poppins",Arial,sans-serif;font-size:18px;font-weight:600;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.bvn-site .dap-detail-page .dap-news-card__more{display:inline-flex;align-items:center;gap:5px;flex:none;color:#fff;font-size:13px;font-weight:600;white-space:nowrap}
.bvn-site .dap-detail-page .dap-news-card__more i{font-style:normal;font-size:16px}
.bvn-site .bvn-page-hero__crumbs .breadcrumb{display:flex;flex-wrap:wrap;gap:0;margin:0;background:transparent;padding:0;list-style:none}
.bvn-site .bvn-page-hero__crumbs .breadcrumb-item{font-size:14px;line-height:24px;color:#446551}
.bvn-site .bvn-page-hero__crumbs .breadcrumb-item:not(:first-child):not(:last-child){display:none}
.bvn-site .bvn-page-hero__crumbs .breadcrumb-item.active{color:#234931;font-weight:600}
.bvn-site .bvn-page-hero__crumbs .breadcrumb-item + .breadcrumb-item::before{color:#87a28c}
.bvn-site .bvn-subpage-body .dap-services__icon{background:var(--bvn-green);color:#fff}
