/* Bailuosen homepage — native Gutenberg blocks + CSS decoration. */
:root{--bls-primary:#00b8a5;--bls-primary-bright:#31d8c7;--bls-primary-dark:#009a8b;--bls-dark:#282c34;--bls-heading:#282c34;--bls-text:#5f6672;--bls-muted:#8a9099;--bls-bg:#fff;--bls-bg-alt:#ffffff;--bls-border:#e6e9ec;--bls-radius:10px;--bls-radius-sm:6px;--bls-container:1400px;--bls-gap:30px;--bls-font:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;}

/* ===== Front page resets ===== */
/* Blocksy header handled by the theme (Appearance > Header Builder) */
body.home main#main,body.home #main-container{padding-top:0 !important;margin-top:0 !important;}
body.home .entry-content{margin-top:0 !important;}
body.home .entry-content>*{margin-block:0;}
body.home .entry-content{max-width:none !important;}
body.home .bls-section,body.home .bls-hero{width:100%;}

/* ===== Section shells ===== */
.bls-section{padding:78px 0;}
.bls-section>.bls-container,.bls-container{max-width:var(--bls-container);margin-inline:auto;padding-inline:20px;}
.bls-section--alt{background:#ffffff;}
.bls-section--dark{background:var(--bls-dark);}
.bls-section--dark h2,.bls-section--dark h3,.bls-section--dark h4{color:#fff;}

.bls-head{text-align:center;max-width:820px;margin:0 auto 46px;}
.bls-head h2{font-size:44px;line-height:1.15;margin:0 0 12px;font-weight:800;}
.bls-head p{color:var(--bls-primary);font-weight:600;font-size:17px;margin:0;}
.bls-section--dark .bls-head p{color:var(--bls-primary-bright);}
@media(max-width:768px){.bls-head h2{font-size:32px;}}

/* ===== Buttons (core button restyle) ===== */
.bls-section .wp-block-button__link,.bls-hero .wp-block-button__link,a.bls-btn{background:var(--bls-primary);color:#fff !important;font-weight:700;font-size:15px;padding:11px 26px;border-radius:4px;text-decoration:none;border:0;}
.bls-section .wp-block-button__link:hover,a.bls-btn:hover{background:var(--bls-primary-dark);}

/* ===== NAV ===== */
.bls-nav{position:absolute;top:0;left:0;right:0;z-index:20;height:92px;display:flex;align-items:center;background:rgba(20,22,27,.35);border-bottom:1px solid rgba(255,255,255,.12);}
.bls-nav .bls-container{display:flex;align-items:center;justify-content:space-between;width:100%;}
.bls-logo{font-style:italic;font-weight:800;font-size:30px;color:var(--bls-primary-bright);text-decoration:none;}
.bls-menu{display:flex;gap:34px;list-style:none;margin:0;padding:0;}
.bls-menu a{color:#fff;text-decoration:none;font-size:15px;font-weight:500;opacity:.92;}
.bls-menu a:hover{color:var(--bls-primary-bright);}
.bls-nav a.bls-btn{padding:9px 20px;font-size:14px;}
@media(max-width:960px){.bls-menu{display:none;}}

/* ===== HERO ===== */
.bls-hero{position:relative;min-height:920px;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;background:#20242b center/cover no-repeat;}
.bls-hero::before{content:'';position:absolute;inset:0;background:rgba(20,22,27,.35);}
.bls-hero .bls-container{position:relative;z-index:1;}
.bls-hero h1{font-size:32px;font-weight:800;color:#fff;margin:0 auto 14px;line-height:1.2;}
.bls-hero p{font-size:26px;color:var(--bls-primary-bright);font-weight:700;margin:0;}
@media(max-width:768px){.bls-hero h1{font-size:32px;}.bls-hero p{font-size:20px;}}

/* ===== ADVANTAGES ===== */
.bls-adv-divider.wp-block-separator{width:100% !important;max-width:none !important;border:0;border-top:1px solid var(--bls-border);margin:0 0 44px !important;opacity:1;background:none;}
.bls-adv-wrap{display:grid !important;grid-template-columns:620px 1fr;gap:54px !important;align-items:center;}
.bls-adv-wrap>.wp-block-column:first-child{flex-basis:620px !important;flex-grow:0;}
.bls-adv-media{position:relative;margin:0;}
.bls-adv-media img{width:100%;aspect-ratio:700/479;object-fit:cover;border-radius:2px;display:block;}
.bls-adv-media::after{content:'';position:absolute;inset:0;margin:auto;width:64px;height:44px;background:rgba(255,255,255,.9);border-radius:8px;}
.bls-adv-media::before{content:'';position:absolute;left:calc(50% - 6px);top:calc(50% - 10px);z-index:1;border-left:16px solid var(--bls-dark);border-top:10px solid transparent;border-bottom:10px solid transparent;}
.bls-adv__item{position:relative;display:flex;gap:16px;align-items:flex-start;padding:18px 22px;border-radius:6px;margin:0;transition:background .2s;}
.bls-adv__item::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:0 3px 3px 0;background:var(--bls-primary);opacity:0;transition:opacity .2s;}.bls-adv__item:hover,.bls-adv__item.is-active{background:#eef1f2;}.bls-adv__item:hover::before,.bls-adv__item.is-active::before{opacity:1;}
.bls-adv__ico{flex:0 0 44px;width:44px;height:44px;border-radius:8px;background:#e7ebee;display:grid;place-items:center;overflow:hidden;transition:background .2s;}.bls-adv__ico img{width:24px;height:24px;object-fit:contain;}.bls-adv__item:hover .bls-adv__ico,.bls-adv__item.is-active .bls-adv__ico{background:var(--bls-primary);}.bls-adv__item:hover .bls-adv__ico img,.bls-adv__item.is-active .bls-adv__ico img{filter:brightness(0) invert(1);}
.bls-adv__item::after{position:absolute;left:24px;top:22px;color:#fff;font-size:15px;font-weight:700;}
.bls-adv__item:nth-child(1)::after{content:'▣';}
.bls-adv__item:nth-child(2)::after{content:'¥';}
.bls-adv__item:nth-child(3)::after{content:'✓';}
.bls-adv__item:nth-child(4)::after{content:'◷';}
.bls-adv__item h3{font-size:18px;margin:0 0 5px;color:var(--bls-heading);}
.bls-adv__item p{font-size:14px;color:var(--bls-text);margin:0;line-height:1.55;}
@media(max-width:960px){.bls-adv-wrap>.wp-block-column:first-child{flex-basis:100% !important;}}

/* ===== STATS ===== */
.bls-stats{display:grid !important;grid-template-columns:repeat(4,1fr);background:var(--bls-dark);border-radius:12px;padding:40px 24px;margin:0;gap:0 !important;}
.bls-stat{text-align:center;}
.bls-stat .bls-stat__num{font-size:56px;font-weight:800;color:var(--bls-primary-bright);line-height:1;margin:0;}
.bls-stat p{margin:12px 0 0;font-size:14px;color:#c9ced6;}
@media(max-width:768px){.bls-stat .bls-stat__num{font-size:42px;}}

/* ===== PRODUCTS featured ===== */
.bls-feat{display:grid !important;grid-template-columns:1.1fr 540px;position:relative;background:#20242b center/cover no-repeat;border-radius:2px;overflow:hidden;padding:64px 56px !important;gap:40px !important;align-items:center;margin:0;}
.bls-feat::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,22,27,.55),rgba(20,22,27,.12));}
.bls-feat>.wp-block-column{position:relative;z-index:1;}
.bls-feat .bls-feat__title{color:var(--bls-primary-bright);font-size:42px;font-weight:800;margin:0 0 16px;}
.bls-feat .bls-feat__desc{color:rgba(255,255,255,.85);font-size:15px;margin:0 0 24px;line-height:1.6;}
.bls-feat .wp-block-buttons{gap:22px;}
.bls-feat__cards{display:flex;flex-direction:column;gap:14px;}
.bls-fcard{display:grid;grid-template-columns:110px 1fr;gap:16px;background:#fff;border-radius:6px;padding:14px;align-items:center;text-decoration:none;}
.bls-fcard__img{width:110px;aspect-ratio:1/1;border-radius:4px;overflow:hidden;}
.bls-fcard__img img,.bls-fcard__img .bls-ph{width:100%;height:100%;object-fit:cover;}
.bls-fcard h3{font-size:17px;margin:0 0 6px;color:var(--bls-heading);}
.bls-fcard p{font-size:12.5px;color:var(--bls-text);margin:0;line-height:1.5;}
@media(max-width:960px){.bls-feat{padding:36px 26px !important;}}

/* ===== SERIES / product cards (shortcode) ===== */
.bls-series-row{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:34px;}
.bls-scard{background:#fff;border-radius:2px;overflow:hidden;}
.bls-scard__media{display:block;aspect-ratio:333/457;overflow:hidden;}
.bls-scard__media .bls-ph,.bls-scard__media img{width:100%;height:100%;object-fit:cover;}
.bls-scard__body{padding:20px 4px;}
.bls-scard__title{font-size:20px;margin:0 0 12px;}
.bls-scard__title a{color:var(--bls-heading);text-decoration:none;}
.bls-scard__rule{display:block;width:64px;height:2px;background:var(--bls-primary);margin-bottom:14px;}
.bls-scard__text{font-size:13px;color:var(--bls-text);margin:0;line-height:1.55;}
.bls-dots{display:flex;gap:9px;justify-content:center;margin-top:30px;}
.bls-dots i{width:12px;height:12px;border-radius:50%;background:#d3d8dc;}
.bls-dots i.on{background:var(--bls-primary);}
@media(max-width:960px){.bls-series-row{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.bls-series-row{grid-template-columns:1fr;}}

/* ===== SUPPLY CHAIN ===== */
.bls-sc-media{position:relative;margin:0;border-radius:2px;overflow:hidden;}
.bls-sc-media img{width:100%;aspect-ratio:1400/632;object-fit:cover;display:block;}
.bls-sc-card{position:absolute;top:0;left:0;width:46%;height:100%;background:linear-gradient(90deg,rgba(28,31,37,.92),rgba(28,31,37,.55));padding:56px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;color:#fff;margin:0;}
.bls-sc-card h3{color:#fff;font-size:28px;font-weight:800;margin:0 0 16px;}
.bls-sc-card p{color:rgba(255,255,255,.82);font-size:14px;line-height:1.6;margin:0 0 22px;}
/* Supply chain tabs (native blocks + JS) */
.bls-supply__stage{position:relative;}
.bls-supply__panel{display:none !important;position:relative;margin:0;border-radius:2px;overflow:hidden;}
.bls-supply__panel.is-active{display:block !important;}
/* In the block editor, show every panel so all tabs' content is editable */
.editor-styles-wrapper .bls-supply__panel{display:block !important;margin-bottom:14px;outline:1px dashed var(--bls-border);}
.bls-supply__panel img{width:100%;aspect-ratio:1400/560;object-fit:cover;display:block;}
/* dark info card = fixed box, top-left (not full height) */
.bls-supply .bls-sc-card{position:absolute;top:8%;left:3%;width:38%;height:auto;background:rgba(28,31,37,.9);padding:42px 44px;display:block;}
.bls-supply .bls-sc-card h3{color:#fff;font-size:26px;font-weight:800;margin:0 0 14px;}
.bls-supply .bls-sc-card p{color:rgba(255,255,255,.82);font-size:14px;line-height:1.6;margin:0 0 22px;}
.bls-supply .bls-sc-card .wp-block-buttons{margin:0;}
/* tab row */
.bls-supply__tabs{display:grid !important;grid-template-columns:repeat(4,1fr);margin:0 !important;gap:0 !important;background:transparent;}
.bls-supply__tab{position:relative;cursor:pointer;padding:30px 16px !important;text-align:center;transition:background .2s;}
.bls-supply__tab:not(:first-child)::after{content:'';position:absolute;left:0;top:26px;bottom:26px;width:1px;background:var(--bls-border);}
.bls-supply__tab::before{content:'';display:block;width:36px;height:36px;margin:0 auto 14px;background:center/contain no-repeat;}
.bls-supply__tab:nth-child(1)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23282c34' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M4 21V10l5 3V10l5 3V6l6 4v11'/%3E%3Cpath d='M9 21v-4h3v4'/%3E%3C/svg%3E");}
.bls-supply__tab:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23282c34' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3.5 8-7 10-3.5-2-7-5-7-10V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");}
.bls-supply__tab:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23282c34' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2h8l4 4v16H6z'/%3E%3Cpath d='M14 2v4h4'/%3E%3Cpath d='M9 14l2 2 4-4'/%3E%3C/svg%3E");}
.bls-supply__tab:nth-child(4)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23282c34' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='6'/%3E%3Cpath d='M9 14l-2 7 5-3 5 3-2-7'/%3E%3C/svg%3E");}
.bls-supply__tab h4{font-size:12px;margin:0;color:var(--bls-heading);font-weight:700;line-height:1.35;}
.bls-supply__tab.is-active{background:linear-gradient(to bottom, var(--bls-primary), transparent);}
.bls-supply__tab.is-active h4{}
.bls-supply__tab.is-active::before{filter:brightness(0) invert(1);}
.bls-supply__tab.is-active::after,.bls-supply__tab.is-active+.bls-supply__tab::after{display:none;}
@media(max-width:768px){.bls-supply__tabs{flex-wrap:wrap;}.bls-supply__tab{flex-basis:50% !important;}.bls-supply .bls-sc-card{position:static;width:100%;}}

/* ===== CUSTOMIZATION ===== */
.bls-cust{display:grid !important;grid-template-columns:repeat(3,1fr);gap:30px !important;}
.bls-ccard{background:#f4f7f7;border:1px solid var(--bls-border);border-radius:10px;overflow:hidden;text-align:center;padding:0 0 34px;}
.bls-ccard .bls-ccard__media{position:relative;margin:0 0 52px;}
.bls-ccard .bls-ccard__media img{object-fit:cover;display:block;}
.bls-ccard__ico{position:absolute;left:50%;bottom:-38px;transform:translateX(-50%);width:76px;height:76px;border-radius:50%;background:var(--bls-primary);display:grid;place-items:center;box-shadow:0 6px 16px rgba(0,184,165,.35);}.bls-ccard__ico img{width:auto;height:auto;max-width:76px;max-height:76px;}
.bls-ccard h3{font-size:24px;margin:0 0 10px;color:var(--bls-heading);}
.bls-ccard p{font-size:14px;color:var(--bls-text);margin:0 24px;line-height:1.55;}
.bls-steps-panel{margin-top:40px;background:#f4f7f7;border:1px solid #e4eceb;border-radius:14px;padding:56px 40px 44px;}
.bls-steps{display:grid !important;grid-template-columns:repeat(5,1fr);gap:0 !important;position:relative;counter-reset:step;}
.bls-steps::before{content:'';position:absolute;top:56px;left:12%;right:12%;height:1px;background:#d6dedd;}
.bls-step{text-align:center;padding:0 8px;position:relative;counter-increment:step;}
.bls-step__circle{position:relative;display:grid;place-items:center;width:112px;height:112px;margin:0 auto 16px;border-radius:50%;background:var(--bls-dark);z-index:1;}.bls-step__circle img{width:40px;height:40px;object-fit:contain;}
.bls-step__num{position:absolute;top:0;right:calc(50% - 56px);width:34px;height:34px;border-radius:50%;background:var(--bls-primary);color:#1b1d23;font-size:14px;font-weight:700;display:grid;place-items:center;z-index:2;}
.bls-step h3{font-size:17px;margin:0 0 6px;color:var(--bls-heading);}
.bls-step p{font-size:13px;color:var(--bls-text);margin:0;line-height:1.5;}
.bls-cust-cta{text-align:center;margin-top:40px;}
.bls-cust-cta .wp-block-button__link{padding:15px 34px;font-size:16px;border-radius:30px;}
@media(max-width:960px){.bls-steps::before{display:none;}.bls-step::after{left:calc(50% + 22px);}}

/* ===== FAQ ===== */
.bls-faq-head h2{color:#fff;font-size:44px;margin:0 0 10px;text-align:left;}
.bls-faq-head p{color:var(--bls-primary-bright);font-weight:600;margin:0 0 34px;text-align:left;}
.bls-faq{display:grid;grid-template-columns:1fr 1fr;gap:18px 40px;align-items:start;}
.bls-faq__item{border-radius:6px;overflow:hidden;background:#2d3238;}
.bls-faq__q{width:100%;text-align:left;cursor:pointer;font-weight:600;color:#e7eaee;padding:16px 20px;border:0;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15px;background:#2d3238;font-family:inherit;transition:background .35s ease,color .35s ease;}
.bls-faq__q::after{content:'+';font-size:22px;font-weight:300;line-height:1;}
.bls-faq__item.is-open .bls-faq__q{background:var(--bls-primary);color:#fff;}
.bls-faq__item.is-open .bls-faq__q::after{content:'\2013';}
.bls-faq__a-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s ease;background:#fff;}
.bls-faq__item.is-open .bls-faq__a-wrap{grid-template-rows:1fr;}
.bls-faq__a{overflow:hidden;min-height:0;}
.bls-faq__a-inner{color:#5f6672;font-size:14px;line-height:1.6;padding:16px 20px;}
.bls-faq__a-inner p{color:#5f6672;margin:0;}
@media(max-width:768px){.bls-faq{grid-template-columns:1fr;}.bls-faq-head h2{font-size:32px;}}

/* ===== NEWS (shortcode) ===== */
.bls-news{display:grid;grid-template-columns:686px 1fr;gap:30px;}
.bls-news__feature{background:#fff;border-radius:6px;overflow:hidden;}
.bls-news__media{display:block;aspect-ratio:686/386;overflow:hidden;}
.bls-news__media .bls-ph,.bls-news__media img{width:100%;height:100%;object-fit:cover;}
.bls-news__body{padding:22px 4px;}
.bls-news__date,.bls-ncard__date{font-size:13px;color:var(--bls-muted);display:inline-flex;align-items:center;gap:6px;}
.bls-news__title{font-size:22px;margin:10px 0;}
.bls-news__title a{color:var(--bls-heading);text-decoration:none;}
.bls-news__text{font-size:14px;color:var(--bls-text);margin:0 0 18px;line-height:1.6;}
.bls-news__grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;}
.bls-ncard__media{display:block;aspect-ratio:338/190;border-radius:6px;overflow:hidden;}
.bls-ncard__media .bls-ph,.bls-ncard__media img{width:100%;height:100%;object-fit:cover;}
.bls-ncard h4{font-size:15px;margin:6px 0 0;line-height:1.4;}
.bls-ncard h4 a{color:var(--bls-heading);text-decoration:none;}
@media(max-width:960px){.bls-news{grid-template-columns:1fr;}}
@media(max-width:560px){.bls-news__grid{grid-template-columns:1fr;}}

/* placeholder helper (shortcode images) */
.bls-ph{display:block;width:100%;height:100%;background:linear-gradient(135deg,#eef1f3,#dce1e6);}
.bls-empty{color:var(--bls-muted);text-align:center;padding:40px 0;}

/* shortcode layout responsive */
@media(max-width:1024px){.bls-feat{grid-template-columns:1fr !important;}}
@media(max-width:960px){.bls-adv-wrap{grid-template-columns:1fr !important;}.bls-cust{grid-template-columns:1fr !important;}.bls-supply__tabs{grid-template-columns:repeat(2,1fr) !important;}}
@media(max-width:768px){.bls-stats{grid-template-columns:repeat(2,1fr) !important;}.bls-steps{grid-template-columns:repeat(2,1fr) !important;}}

/* icon-image slots */
.bls-adv__item::after{content:none !important;display:none !important;}
.bls-supply__ico{width:36px;height:36px;margin:0 auto 14px;display:grid;place-items:center;}
.bls-supply__ico img{width:36px;height:36px;object-fit:contain;}
.bls-supply__ico:empty{display:none;}
.bls-supply__tab:has(.bls-supply__ico img)::before{display:none;}

/* Front page: hero flush under the theme header (remove content top gap) */
body.home #main{padding-top:0 !important;}
body.home .ct-container,body.home .ct-container-full{padding-top:0 !important;}
body.home .entry-content{margin-top:0 !important;padding-top:0 !important;}
body.home .entry-content>*:first-child{margin-top:0 !important;}
body.home article,body.home .ct-post-inner{margin-top:0 !important;padding-top:0 !important;}

/* Products featured band (full-bleed background) */
.bls-prod .bls-head{margin-bottom:34px;}
.bls-feat-band{position:relative;background:#20242b center/cover no-repeat;padding:72px 0;margin:0 0 44px;}
.bls-feat-band::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,22,27,.6),rgba(20,22,27,.12));}
.bls-feat-band .bls-container{position:relative;z-index:1;}
.bls-feat-inner{display:grid;grid-template-columns:1.1fr 540px;gap:40px;align-items:center;}
.bls-feat__cta{display:flex;align-items:center;gap:26px;margin-top:6px;}
.bls-feat__cta .bls-link{color:#fff;}
@media(max-width:960px){.bls-feat-inner{grid-template-columns:1fr;}}
/* Category carousel */
.bls-carousel{margin-top:34px;position:relative;}
.bls-carousel__viewport{overflow:hidden;}
.bls-carousel__track{display:flex;gap:26px;transition:transform .45s ease;}
.bls-carousel__track>.bls-scard{flex:0 0 calc((100% - 78px)/4);}
.bls-carousel__dots{display:flex;gap:9px;justify-content:center;margin-top:30px;}
.bls-carousel__dots i{width:12px;height:12px;border-radius:50%;background:#d3d8dc;cursor:pointer;transition:background .2s;}
.bls-carousel__dots i.on{background:var(--bls-primary);}
@media(max-width:960px){.bls-carousel__track>.bls-scard{flex-basis:calc((100% - 26px)/2);}}
@media(max-width:560px){.bls-carousel__track>.bls-scard{flex-basis:100%;}}
/* Featured band — height + title/desc styling (shortcode markup) */
.bls-feat-band{min-height:840px;display:flex;align-items:center;}
.bls-feat-band>.bls-container{width:100%;}
.bls-feat-band .bls-feat__title{color:var(--bls-primary-bright);font-size:44px;font-weight:800;line-height:1.15;margin:0 0 18px;}
.bls-feat-band .bls-feat__desc{color:rgba(255,255,255,.92);font-size:15px;line-height:1.7;margin:0 0 26px;max-width:46ch;}
.bls-feat-band .bls-feat__cta .bls-link{color:#fff;}
@media(max-width:960px){.bls-feat-band{min-height:0;padding:44px 0;}.bls-feat-band .bls-feat__title{font-size:32px;}}
/* supply section bg + tab tweaks */
.bls-section:has(.bls-supply){background:#ebeeed;}
