@font-face{font-family:"Montserrat";font-style:normal;font-weight:100;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:200;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:100;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:200;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
/* Giraffe shared typography: self-hosted original OFL Montserrat variable fonts. */
@font-face{font-family:"Montserrat";font-style:normal;font-weight:300;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:800;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:900;font-display:swap;src:url("/assets/fonts/montserrat-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:300;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:400;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:500;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:600;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:700;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:800;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:italic;font-weight:900;font-display:swap;src:url("/assets/fonts/montserrat-italic-variable.ttf") format("truetype")}
:root{--font-interface:"Montserrat",system-ui,sans-serif}
html,body,body *,body *::before,body *::after{font-family:var(--font-interface)!important}
body{font-synthesis:none}

/* One semantic scale for the public storefront. Admin sizing stays separate. */
:root{--type-page-title:40px;--type-section-title:32px;--type-block-title:20px;--type-card-title:16px;--type-body:16px;--type-small:14px;--type-label:12px;--type-button:14px}
html:root body.giraffe-store{font-size:var(--type-body);line-height:1.6}
html:root body.giraffe-store.giraffe-store.giraffe-store h1{font-size:var(--type-page-title)!important;line-height:1.2!important;font-weight:800;letter-spacing:-.035em}
html:root body.giraffe-store.giraffe-store.giraffe-store h2{font-size:var(--type-section-title)!important;line-height:1.25!important;font-weight:700;letter-spacing:-.025em}
html:root body.giraffe-store.giraffe-store.giraffe-store h3{font-size:var(--type-block-title)!important;line-height:1.35!important;font-weight:700}
html:root body.giraffe-store.giraffe-store.giraffe-store :is(.catalog-card h2,.catalog-card h3,.card h3,.related-grid h3,.care-item h3){font-size:var(--type-card-title)!important;line-height:1.45!important;font-weight:700}
html:root body.giraffe-store.giraffe-store.giraffe-store :is(p,.lead,.desc,.product-description,.page-body,.page-description,.account-wrap){font-size:var(--type-body)!important;line-height:1.65!important}
html:root body.giraffe-store.giraffe-store.giraffe-store :is(.gh-identity h2,.product-care h2,.product-description h2,.gh-extra h3,.mega-intro h2,.mega-links h3){font-size:var(--type-block-title)!important;line-height:1.35!important}
html:root body.giraffe-store.giraffe-store.giraffe-store :is(.catalog-card p,.gh-price,.product-price,.price,.product-care p){font-size:var(--type-body)!important}
html:root body.giraffe-store.giraffe-store.giraffe-store :is(.gh-description,.gh-extra p,.gh-variant-label,.collection-crumb,.product-crumb,.collection-count,.product-sku,.product-note,.meta,.crumb,.collection-sidebar a,.collection-sidebar summary,.mega-item,.menu-trigger,.nav>a,.drawer-nav a,.giraffe-shared-footer p,.giraffe-shared-footer .foot a){font-size:var(--type-small)!important;line-height:1.5!important}
html:root body.giraffe-store.giraffe-store.giraffe-store :is(.badge,.eyebrow,.gh-eyebrow,.collections-eyebrow,.gh-swatch-tooltip,.giraffe-shared-footer .bottom){font-size:var(--type-label)!important;line-height:1.5!important}
html:root body.giraffe-store.giraffe-store.giraffe-store :is(.cta,.gh-product-link,.gh-option-name,.pill,.checkout,.product-add,.mag,.filter,.collection-filters summary,.account-wrap button,.account-wrap a.button,.drawer-login,.drawer-sign){font-size:var(--type-button)!important;line-height:1.45!important;font-weight:600}
html:root body.giraffe-store.giraffe-store.giraffe-store :is(main input,main select,main textarea){font-size:var(--type-body)!important;line-height:1.45!important}
html:root body.giraffe-store.giraffe-store.giraffe-store header :is(.search,.search input){font-size:var(--type-small)!important}
html:root body.giraffe-store.giraffe-store.giraffe-store footer h4{font-size:var(--type-card-title)!important;line-height:1.4!important}
@media(max-width:767px){
 html:root body.giraffe-store.giraffe-store.giraffe-store h1{font-size:calc(var(--type-page-title)*.8)!important}
 html:root body.giraffe-store.giraffe-store.giraffe-store h2{font-size:calc(var(--type-section-title)*.8125)!important}
 html:root body.giraffe-store.giraffe-store.giraffe-store h3,html:root body.giraffe-store.giraffe-store.giraffe-store :is(.gh-identity h2,.product-care h2,.product-description h2,.gh-extra h3,.mega-intro h2,.mega-links h3){font-size:calc(var(--type-block-title)*.9)!important}
 html:root body.giraffe-store.giraffe-store.giraffe-store :is(.catalog-card h2,.catalog-card h3,.card h3,.related-grid h3,.care-item h3){font-size:var(--type-card-title)!important}
 html:root body.giraffe-store.giraffe-store.giraffe-store header .search input{font-size:var(--type-body)!important}
}

/* Clean footer signature and policy grouping. */
html:root body.giraffe-store>footer .foot>div:first-child>p{display:none!important}
html:root body.giraffe-store>footer .bottom{border-top:0!important;color:inherit!important}
html:root body.giraffe-store>footer .bottom *{color:inherit!important}
