/* ==========================================================================
   Boxesden Pro – Refinement layer (v2.3)
   Goal: a calmer, more professional scale. Smaller headings, tighter section
   rhythm, shorter cards, and NO inner scrollbars on any component.
   Loaded after every other theme stylesheet.
   ========================================================================== */
:root{--db-max:1160px;--db-radius:18px;--db-shadow:0 12px 36px rgba(23,23,23,.08)}

/* ---- base rhythm ---- */
body{font-size:15.5px;line-height:1.6}
.container{width:min(var(--db-max),calc(100% - 48px))}
.section{padding:64px 0}
.content-wrap{padding:48px 0}
.cart-layout{padding:48px 0}
.section-head{margin-bottom:28px;align-items:end}
.section-head h2,.db-section-intro h2,.faq-teaser h2{font-size:clamp(26px,2.9vw,38px);line-height:1.08;letter-spacing:-.03em}
.section-head p{font-size:15px;max-width:440px}
.db-section-intro{margin-bottom:28px}
.db-section-intro p{font-size:15px}
.eyebrow{font-size:11px;margin-bottom:10px}

/* ---- header ---- */
.brand--logo{display:inline-flex;align-items:center;line-height:0}
.brand--logo img{height:34px;width:auto;max-height:none;display:block}
.site-footer .brand--logo img{height:32px}
.custom-logo-link img,.brand img{max-height:40px;width:auto}
.topbar__inner{min-height:34px}
.topbar{font-size:12.5px}
.nav-main{min-height:68px}
.primary-menu>li>a{padding:24px 13px;font-size:13.5px}
.brand{font-size:22px}
.brand-mark{width:36px;height:36px;border-radius:10px}
.btn{padding:10px 17px;font-size:14px}
.btn--lg{padding:12px 22px;font-size:15px}
.mega-panel{padding:22px 0}
.mega-card img,.mega-ph{height:90px}
.mega-card__art{height:104px}
.mega-card__art svg{height:96px}

/* ---- home hero ---- */
.hero,.hero--v2{padding:44px 0 52px}
.hero--v2 .hero-grid,.hero-grid{gap:40px}
.hero h1,.hero--v2 h1{font-size:clamp(34px,4.3vw,56px);line-height:1.02;letter-spacing:-.045em;margin-bottom:16px}
.hero p{font-size:16.5px;max-width:540px}
.hero-actions{margin-top:22px}
.hero-badge{margin-bottom:16px;font-size:12.5px}
.hero-checks{margin-top:22px;font-size:13.5px}
.hero-stage{min-height:0}
.hero-blob{border-radius:26px}
.hero-box{padding:22px 18px 0}
.hero-box svg{width:min(250px,56%)}
.quick{margin:14px;padding:16px 16px 14px;border-radius:20px}
.quick-style svg{width:44px}
.chip{padding:6px 12px;font-size:12px}
.chip--a{top:22px;left:20px}.chip--b{top:70px;right:20px}.chip--c{top:150px;left:14px}
.hero-art{min-height:380px;border-radius:26px}
.trust{padding:14px 0}

/* ---- cards & grids ---- */
.fmt-grid,.feat-grid,.category-grid,.db-testimonial-grid,.db-blog-grid{gap:16px}
.fmt-card{border-radius:20px}
.fmt-card:hover,.feat:hover,.db-testimonial:hover,.db-blog-card:hover{transform:translateY(-3px)}
.fmt-card__art{min-height:160px;padding:20px 16px 14px}
.fmt-card__art svg{max-width:150px}
.fmt-card__body{padding:16px 18px 18px}
.fmt-card h3{font-size:18px}
.fmt-card p{font-size:13.5px;margin-bottom:12px}
.feat{padding:20px;border-radius:18px}
.feat__ic{width:42px;height:42px;margin-bottom:12px}
.feat h3{font-size:17px}
.feat p{font-size:14px}
.category-card{min-height:200px;padding:20px;border-radius:20px}
.category-card h3{font-size:21px}
.feature-card{min-height:260px;padding:28px;border-radius:22px}
.feature-card h3{font-size:26px}
.steps .step{min-height:0;padding:22px}
.steps .step .num{font-size:36px}
.steps .step h3{font-size:18px;margin:12px 0 6px}
.steps--v2 .num{width:40px;height:40px}
.stat{padding:18px 0}
.stat strong{font-size:36px}
.split{gap:44px}
.split-art{min-height:340px;border-radius:24px}
.split h2{font-size:clamp(28px,3.4vw,44px);line-height:1.04}

/* ---- showcase / quote / faq ---- */
.showcase{border-radius:24px}
.showcase__text{padding:44px 40px}
.showcase h2{font-size:clamp(26px,3vw,40px)}
.showcase__list{margin:18px 0 22px;gap:12px}
.showcase__art{min-height:340px;padding:26px}
.quote-panel{padding:36px;border-radius:24px;gap:28px}
.quote-panel h2{font-size:34px}
.quote-form{padding:22px;border-radius:18px}
.faq-teaser{gap:40px}
.faq-teaser summary,.db-faq-card summary{padding:15px 0;font-size:15px}
.faq-teaser details,.db-faq-card{border-radius:14px}

/* ---- testimonials / blog / tabs ---- */
.db-testimonial{padding:22px;border-radius:20px}
.db-testimonial__quote{min-height:0;font-size:15px}
.db-blog-card{border-radius:20px}
.db-tabs{border-radius:20px}
.db-tab-panel{padding:26px}
/* tabs wrap instead of scrolling sideways */
.db-tabs__nav{overflow:visible;flex-wrap:wrap}

/* ---- inner pages ---- */
.page-hero{padding:48px 0 34px}
.page-hero h1{font-size:clamp(32px,4.2vw,50px);line-height:1}
.page-hero p{font-size:16px}
.db-inner-hero,.db-dieline-hero{padding:54px 0 42px}
.db-inner-hero h1,.db-dieline-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.02;margin:6px 0 14px}
.db-inner-hero p,.db-dieline-hero p{font-size:16px}
.db-inner-hero:after,.db-dieline-hero:after{width:340px;height:340px;border-width:52px}
.db-card,.db-dieline-card{padding:22px;border-radius:20px}
.db-dieline-preview{border-radius:22px;padding:14px}
.prose h2{font-size:28px;margin-top:32px}
.not-found{min-height:50vh}.not-found h1{font-size:84px}

/* ---- shop ---- */
.single-product-grid{gap:40px}
.single-product-image{padding:24px;border-radius:22px}
.single-product-summary h1{font-size:clamp(30px,3.6vw,46px)}
.product-grid{gap:16px}
.product-card{border-radius:18px}
.checkout-card{border-radius:18px;padding:20px}

/* ---- footer ---- */
.site-footer{padding:48px 0 20px}
.footer-grid{gap:32px}
.footer-bottom{margin-top:32px;padding-top:16px;font-size:13px}

/* ---- no inner scrollbars anywhere ---- */
.mega-panel,.mobile-nav,.db-tabs__nav,.db-tab-panel,.cart-table-wrap,.woocommerce-cart-form,.shop-sidebar,.faq-grid{overflow-y:visible}
.db-tabs__nav{overflow-x:visible}

@media(max-width:1000px){
	.section{padding:52px 0}
	.hero,.hero--v2{padding:36px 0 44px}
	.showcase__text{padding:32px 24px}
	.split{gap:28px}
}
@media(max-width:600px){
	body{font-size:15px}
	.container{width:min(var(--db-max),calc(100% - 32px))}
	.section{padding:42px 0}
	.hero h1,.hero--v2 h1{font-size:34px}
	.page-hero,.db-inner-hero,.db-dieline-hero{padding:38px 0 30px}
	.quote-panel{padding:22px}
	.quote-panel h2{font-size:28px}
}
.site-footer .brand--logo{margin-bottom:14px}
