/* SINJO type system — self-hosted Inter 4.1; split Latin ranges reduce first-view font transfer. OFL is included. */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/inter/Inter-latin-core.woff2') format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2100-214F,U+2190-21FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/inter/Inter-latin-extra.woff2') format('woff2');unicode-range:U+0100-024F,U+0300-036F,U+1E00-1EFF}
@font-face{font-family:'Inter';font-style:italic;font-weight:100 900;font-display:swap;src:url('../fonts/inter/Inter-latin-core-italic.woff2') format('woff2');unicode-range:U+0000-00FF,U+2000-206F,U+20A0-20CF,U+2100-214F,U+2190-21FF}
@font-face{font-family:'Inter';font-style:italic;font-weight:100 900;font-display:swap;src:url('../fonts/inter/Inter-latin-extra-italic.woff2') format('woff2');unicode-range:U+0100-024F,U+0300-036F,U+1E00-1EFF}
:root{--sinjo-font:'Inter',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;--sinjo-type-body:1rem;--sinjo-type-small:.875rem;--sinjo-type-leading:1.6}
html{font-size:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%;scroll-padding-block:6rem 2rem}
/* Text nodes only: icon fonts on i/pseudo-elements are intentionally untouched. */
body,body :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,th,td,a,button,label,input,select,textarea,figcaption,summary,strong,b,em){font-family:var(--sinjo-font)!important;font-optical-sizing:auto;font-synthesis:none}
body{font-size:var(--sinjo-type-body);line-height:var(--sinjo-type-leading)}
body :is(h1,h2,h3,h4,h5,h6){font-weight:600!important;text-wrap:pretty;overflow-wrap:break-word}
body h1{font-size:clamp(2rem,3.6vw,3.25rem)!important;line-height:1.15!important;letter-spacing:-.025em!important}
body h2{font-size:clamp(1.5rem,2.4vw,2.125rem)!important;line-height:1.25!important;letter-spacing:-.018em!important}
body h3{font-size:clamp(1.125rem,1.55vw,1.375rem)!important;line-height:1.35!important;letter-spacing:-.012em!important}
body :is(h4,h5,h6){font-size:1rem;line-height:1.4;letter-spacing:normal}
body :is(.sfv-intro,.sinjo-home-intro p,.sinjo-home-about p,.sinjo-capability-hero>p:not(.sinjo-eyebrow),.sfe-intro,.sinjo-insight-intro){font-size:1.0625rem!important;font-weight:400!important;line-height:1.65!important;max-width:70ch}
body :is(.sfv-hero,.sav-showcase-hero,.sinjo-home-hero)>div>p:not(.sinjo-eyebrow){font-size:1.0625rem!important;font-weight:400!important;line-height:1.65!important}
body :is(.sinjo-eyebrow,.sav-direction-tag,.sinjo-mega-kicker){font-size:.75rem!important;line-height:1.45!important;letter-spacing:.08em!important;font-weight:600!important}
body :is(.sav-reference-copy,.ssa-copy,.sfv-reference-copy,.sfv-card-copy) h3{font-size:1.25rem!important;line-height:1.35!important;font-weight:600!important}
body :is(.sav-reference-copy,.ssa-copy,.sfv-reference-copy,.sfv-card-copy) p:not(.sinjo-eyebrow):not(.ssa-category):not(.ssa-status):not(.ssa-boundary):not(.ssa-code):not(.sav-reference-code):not(.sav-reference-role):not(.sav-reference-specs){font-size:1rem!important;line-height:1.6!important;font-weight:400}
body :is(.sav-reference-specs,.sfv-specs,.ssa-specs,.sfe-specs,.sfe-spec-table,.sfv-reference-meta){font-size:.9375rem!important;line-height:1.55!important;font-variant-numeric:tabular-nums}
body :is(.ssa-specs dt,.ssa-specs dd,.sfv-specs dt,.sfv-specs dd,.sfe-spec-table th,.sfe-spec-table td){font-size:.9375rem!important;line-height:1.55!important}
body :is(.ssa-specs dd,.sfv-specs dd){font-weight:500!important}
body :is(.ssa-code,.sav-reference-code,.sav-reference-role,.sav-reference-meta,.ssa-category,.ssa-status,.sav-reference-source){font-size:.8125rem!important;line-height:1.45!important;font-weight:500!important;letter-spacing:.015em!important}
body :is(.ssa-boundary,.ssa-note,.ssa-use,.sav-garment-guide figcaption,.sfv-photo-note){font-size:.8125rem!important;line-height:1.55!important}
body :is(.ssa-use,.ssa-note) p{font-size:.9375rem!important;line-height:1.55!important}
body .sfv-guide-card-text strong{font-size:1.0625rem!important;line-height:1.4!important;font-weight:600!important}
body .sfv-guide-summary{font-size:.9375rem!important;line-height:1.6!important;-webkit-line-clamp:unset;max-height:none}
body :is(.sfv-guide-arrow,.sav-reference-actions a,.ssa-text-link,.sfv-reference-link,.sfe-guide-list a){font-size:.9375rem!important;line-height:1.5!important;font-weight:600!important}
body :is(.sav-zone-table p,.sav-workflow p,.sav-faq p,.sfv-faq p,.sav-requirement-grid p,.sfv-brief-grid li,.sinjo-insight-content p,.sinjo-insight-content li){font-size:1rem!important;line-height:1.6!important}
body :is(.sav-zone-table strong,.sav-zone-table a){font-size:.9375rem!important;line-height:1.5!important}
body :is(.sav-workflow h3,.sav-requirement-grid h3,.sinjo-mega-card strong){font-size:1rem!important;line-height:1.4!important}
body :is(.sinjo-button,.ssa-actions .sinjo-button,.ssa-view-more){font-size:.9375rem!important;font-weight:600!important;line-height:1.45!important;white-space:normal;min-height:44px}
body :is(input,select,textarea){font-size:1rem;line-height:1.5}
body :is(.sinjo-nav-list>li>a,.sinjo-header-cta){font-size:.875rem;font-weight:500!important;letter-spacing:0;text-transform:none}
body :is(.sinjo-consent-copy p,.sinjo-consent-note,.sinjo-consent-option p){font-size:.875rem!important;line-height:1.5!important}
body .sinjo-consent-button{font-size:.875rem!important;font-weight:600!important;min-height:44px}
body :is(.ssa-specs,.sfv-specs)>div{grid-template-columns:minmax(5.75rem,.65fr) minmax(0,1.35fr)}
body :is(.ssa-copy,.sav-reference-copy,.sfv-card-copy,.sfv-reference-copy,.sfv-guide-card-text,.sav-zone-table article){min-width:0}
body :is(.ssa-code,.sav-reference-code,.sfe-code){overflow-wrap:anywhere}
body .sav-reference-grid-curated{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
body :is(.sinjo-insight-article,.sinjo-legal){line-height:1.65}
@media(max-width:1100px){body .sav-workflow{grid-template-columns:1fr;overflow:visible}body .sav-workflow li{border-top:0;border-left:2px solid #237456;padding:0 0 18px 18px}}
@media(max-width:767px){
 body h1{font-size:clamp(1.875rem,7.5vw,2.25rem)!important;line-height:1.2!important}
 body h2{font-size:clamp(1.5rem,6vw,1.75rem)!important;line-height:1.3!important}
 body :is(.sfv-intro,.sfv-hero>div>p:not(.sinjo-eyebrow),.sav-showcase-hero>div>p:not(.sinjo-eyebrow)){font-size:1rem!important}
 body :is(.ssa-specs,.sfv-specs)>div{grid-template-columns:1fr;gap:3px}
 body :is(.sinjo-fabric-visual,.sinjo-application-visual) .sfv-wrap:not(.sav-showcase-hero){width:calc(100% - 32px);margin-inline:auto}
 body :is(.sav-reference-grid-curated,.sfv-guide-grid){grid-template-columns:1fr!important}
 body :is(.ssa-controls input,.ssa-controls select,.sfv-catalogue-tools input,.sfv-catalogue-tools select){font-size:1rem!important;width:100%;max-width:100%}
 body .sinjo-consent-banner{max-height:40vh}
}
