/* StudioMatsu | Ecofit UI system. Identity: Ecofit; approved TT 1.25 type scale.
 * Scoped overrides use !important only where legacy Elementor generated rules
 * explicitly set competing dimensions. Content and commerce contracts stay intact. */
:root {
  --studiomatsu-space-1:4px; --studiomatsu-space-2:8px;
  --studiomatsu-space-3:12px; --studiomatsu-space-4:16px;
  --studiomatsu-space-5:20px; --studiomatsu-space-6:24px;
  --studiomatsu-space-8:32px; --studiomatsu-space-12:48px;
  --studiomatsu-space-section:96px; --studiomatsu-gutter:32px;
  --studiomatsu-color-bg:#0e0e0e; --studiomatsu-color-surface:#121212;
  --studiomatsu-color-text:#fff; --studiomatsu-color-muted:#d1d1d1;
  --studiomatsu-color-border:#ffffff40; --studiomatsu-color-action:#fec200;
  --studiomatsu-font:'Plus Jakarta Sans',sans-serif;
  --studiomatsu-type-1:61px; --studiomatsu-type-2:49px;
  --studiomatsu-type-3:39px; --studiomatsu-type-4:31px;
  --studiomatsu-type-5:20px; --studiomatsu-type-6:20px;
}
body {font-family:var(--studiomatsu-font);font-size:16px;line-height:1.6}
body .elementor :is(h1,h2,h3,h4,h5,h6){font-weight:700;line-height:1.2;letter-spacing:0;overflow-wrap:break-word}
body .elementor h1.elementor-heading-title{font-size:var(--studiomatsu-type-1)}
body .elementor h2.elementor-heading-title{font-size:var(--studiomatsu-type-2)}
body .elementor h3.elementor-heading-title{font-size:var(--studiomatsu-type-3)}
body .elementor h4.elementor-heading-title{font-size:var(--studiomatsu-type-4)}
body .elementor h5.elementor-heading-title{font-size:var(--studiomatsu-type-5)}
body .elementor h6.elementor-heading-title{font-size:var(--studiomatsu-type-6)}
body .elementor .elementor-widget-text-editor{font-size:16px;line-height:1.6}
body .elementor .elementor-widget-text-editor p{margin:0 0 16px;max-width:72ch}
body .elementor .elementor-widget-text-editor p:last-child{margin-bottom:0}
body .elementor p.elementor-heading-title{font-size:14px;line-height:1.4;letter-spacing:.1em}
body .elementor .studiomatsu-section{padding:var(--studiomatsu-space-section) var(--studiomatsu-gutter)}
body .elementor .elementor-button{font-size:16px;line-height:1.25;min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:16px 24px}
body .elementor .studiomatsu-hero h1{font-size:var(--studiomatsu-type-1);line-height:1.2;letter-spacing:0}
body .elementor .studiomatsu-hero::before{z-index:0;pointer-events:none}
body .elementor .studiomatsu-hero>.e-con-inner{position:relative;z-index:1}
body .elementor .studiomatsu-value-card{padding:24px!important;gap:16px}
body .elementor .studiomatsu-value-icon{margin-bottom:8px}
body .elementor .studiomatsu-category-card{padding:24px!important;gap:20px}
body .elementor :is(.studiomatsu-value-card,.studiomatsu-category-card) .elementor-heading-title{font-size:25px;line-height:1.25}
body .elementor .studiomatsu-project-card .elementor-heading-title{font-size:31px;line-height:1.25}
body .elementor .studiomatsu-count .elementor-heading-title{font-size:39px;line-height:1.2}
body .elementor .studiomatsu-metrics p{line-height:1.5}
body .elementor .elementor-tab-title{font-size:16px;font-weight:700;line-height:1.4}
body .elementor .elementor-tab-content{font-size:16px;line-height:1.6}
body .elementor .studiomatsu-footer{padding-top:64px;padding-bottom:32px}
body .elementor .studiomatsu-story-open{min-height:44px}
body .elementor .studiomatsu-story-controls [data-action="close"]{width:44px!important;height:44px!important;top:-6px;position:relative}
body .woocommerce ul.products li.product{padding:24px!important}
body .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:20px;line-height:1.25;padding:20px 0 12px}
body .woocommerce :is(input,select,textarea){font-size:16px;line-height:1.5}
body .woocommerce .button{min-height:48px;line-height:1.25}
body .ecofit-quote-panel{padding:32px}
body .ecofit-quote-panel h2{font-size:31px;line-height:1.2;margin:0 0 16px}
body :is(a,button,input,select,textarea):focus-visible{outline:2px solid var(--studiomatsu-color-action);outline-offset:4px}
body .elementor .elementor-nav-menu a{font-size:14px}
body .elementor .studiomatsu-hero-support{font-size:18px;line-height:1.6}
body .elementor .studiomatsu-hero-support p{max-width:none}
body .elementor .studiomatsu-quote-note{font-size:14px;line-height:1.6}
body .woocommerce .ecofit-consulta{font-size:16px;line-height:1.5}
body .elementor .product_title,body .woocommerce .woocommerce-Tabs-panel--description>h5{font-size:20px;line-height:1.2}
@media(max-width:1366px){:root{--studiomatsu-type-1:49px;--studiomatsu-type-2:49px}}
@media(max-width:1024px){
  :root{--studiomatsu-space-section:64px;--studiomatsu-gutter:24px;--studiomatsu-type-1:39px;--studiomatsu-type-2:39px}
  body .elementor .studiomatsu-value-grid{grid-template-columns:1fr}
  body .elementor .studiomatsu-count .elementor-heading-title{font-size:31px}
}
@media(max-width:767px){
  :root{--studiomatsu-space-section:48px;--studiomatsu-gutter:20px;--studiomatsu-type-1:31px;--studiomatsu-type-2:31px;--studiomatsu-type-3:31px;--studiomatsu-type-4:25px}
  body .elementor .studiomatsu-project-card .elementor-heading-title{font-size:25px}
  body .elementor .studiomatsu-hero-support br{display:none}
  body .elementor .studiomatsu-header{padding:16px 20px}
  body .elementor .studiomatsu-header .e-con-inner>.e-con{gap:16px}
  body .elementor .studiomatsu-footer{padding-top:48px;padding-bottom:32px}
  body .ecofit-quote-panel{padding:24px}
  body .elementor .studiomatsu-story-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  body .elementor .studiomatsu-story-open{width:100%!important;min-width:0;font-size:12px;line-height:1.4}
  body .elementor .studiomatsu-story-open>span{width:100%!important;max-width:118px;height:auto!important}
}
