/* Homepage-only refinement; shared catalogue and transactional shells are unchanged. */
body.hkf-public-design.page-home .home-header-language { display: none; }
body.hkf-public-design.page-home .home-intro--atelier { align-items: center; gap: 18px 32px; grid-template-columns: minmax(0,1.08fr) minmax(0,1fr); margin: 24px 0 0; padding: 28px 28px 24px; border-radius: 16px; background: #f8f7f1; }
/* One existing sprig, kept in the gutter rather than behind copy or trust labels. */
body.hkf-public-design.page-home .home-intro--atelier::before { content: none; }
body.hkf-public-design.page-home .home-hero-botanical { display: block; top: 12px; right: 47%; color: #81917b; opacity: .16; transform: rotate(-18deg); }
body.hkf-public-design.page-home .home-hero-botanical :is(.public-icon,svg) { width: 66px; height: 90px; }
body.hkf-public-design.page-home .home-intro--atelier .home-intro-copy { padding: 0; min-width: 0; }
body.hkf-public-design.page-home .home-intro--atelier .home-eyebrow { margin: 0 0 12px; font-size: 12px; }
body.hkf-public-design.page-home .home-intro--atelier h1 { margin: 0; font-size: clamp(2.1rem,3.4vw,3rem) !important; line-height: 1.25 !important; }
body.hkf-public-design.page-home .home-intro--atelier h1 > span { margin-top: 8px; font-size: 16px; line-height: 1.6; letter-spacing: .06em; }
body.hkf-public-design.page-home .home-intro--atelier .home-intro-message { display: block; margin: 24px 0 22px; padding-left: 14px; font-size: 15px; line-height: 1.75; }
body.hkf-public-design.page-home .home-intro--atelier .home-intro-message strong { display: block; color: #35533f; font-weight: 600; }
body.hkf-public-design.page-home .home-intro--atelier .home-intro-message > span { display: block; margin-top: 4px; color: #65725f; font-size: 14px; font-weight: 400; }
body.hkf-public-design.page-home .home-intro--atelier .home-intro-description { margin: 12px 0; max-width: 36em; font-size: 15px; line-height: 1.75; }
body.hkf-public-design.page-home .home-hero-categories { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 16px 0 0; }
body.hkf-public-design.page-home .home-hero-categories a { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 44px; padding: 10px 14px; border: 1px solid #dce3d7; border-radius: 7px; background: #fffefa; color: #254d40; font-size: 14px; font-weight: 600; text-decoration: none; line-height: 1.4; }
body.hkf-public-design.page-home .home-hero-categories a > span:last-child { color: #8c743e; flex: 0 0 auto; }
body.hkf-public-design.page-home .home-hero-categories a:is(:hover,:focus-visible) { border-color: #8d9c82; background: #eff3eb; }
body.hkf-public-design.page-home .home-intro--atelier .home-intro-actions { margin-top: 18px; gap: 10px 16px; }
body.hkf-public-design.page-home .home-intro--atelier .home-intro-urgent { margin: 12px 0 0; font-size: 14px; }
body.hkf-public-design.page-home .home-intro--atelier .home-intro-art { padding: 0; min-width: 0; }
body.hkf-public-design.page-home .home-intro--atelier .home-shop-card { border: 1px solid #d8e0d2; border-radius: 12px; overflow: hidden; background: #fffefa; box-shadow: none; }
body.hkf-public-design.page-home .home-intro--atelier .home-shop-media { aspect-ratio: 4/3; border: 0; border-radius: 0; background: #f0eee4; box-shadow: none; }
body.hkf-public-design.page-home .home-intro--atelier .home-shop-image { object-fit: contain; width: 100%; height: 100%; }
body.hkf-public-design.page-home .home-intro--atelier .home-shop-caption { margin: 0; border: 0; border-top: 1px solid #e4e7db; padding: 12px 16px; background: #fffefa; box-shadow: none; }
body.hkf-public-design.page-home .home-intro--atelier .home-shop-arrow { min-height: 32px; }
body.hkf-public-design.page-home #home-categories .home-category-access-media { aspect-ratio: 1/1; max-height: 260px; }
body.hkf-public-design.page-home #home-categories .home-category-access-card > span.home-category-access-content { padding: 14px; gap: 4px; }
body.hkf-public-design.page-home .home-service-promises { margin-bottom: 30px; }
body.hkf-public-design.page-home .home-image-unavailable { display: flex; align-items: center; justify-content: center; padding: 20px; min-height: 100px; color: #657561; text-align: center; }
body.hkf-public-design.page-home .home-image-fallback-label { display: block; font-size: 13px; line-height: 1.7; }
@media (max-width: 1100px) {
    body.hkf-public-design.page-home #hkf-site-header .public-header-utility { display: none; }
    body.hkf-public-design.page-home #hkf-site-header .site-header-inner { display: grid !important; grid-template-columns: minmax(0,1fr) repeat(3,44px) !important; min-height: 68px; padding: 10px 18px !important; gap: 8px !important; }
    body.hkf-public-design.page-home #hkf-site-header .hkf-brand-wordmark { flex: 1 1 auto; gap: 8px; }
    body.hkf-public-design.page-home #hkf-site-header .public-brand-tagline { display: none; }
    body.hkf-public-design.page-home #hkf-site-header .public-mobile-menu-toggle { width: 44px; min-width: 44px; padding: 10px !important; }
    body.hkf-public-design.page-home #hkf-site-header .public-mobile-menu-toggle > span:last-child { display: none; }
    body.hkf-public-design.page-home #hkf-site-header .home-header-language { display: block; flex: 0 0 44px; }
    body.hkf-public-design.page-home #hkf-site-header .home-header-language summary { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-height: 44px; padding: 0; border: 0; background: transparent; }
    body.hkf-public-design.page-home #hkf-site-header .home-header-language summary > span { display: none; }
    body.hkf-public-design.page-home #hkf-site-header .home-header-language .public-language-icon { display: block; width: 20px; height: 20px; }
    body.hkf-public-design.page-home #hkf-site-header .home-header-language .public-language-options { position: absolute; right: 0; min-width: 210px; max-width: calc(100vw - 32px); }
    body.hkf-public-design.page-home .home-intro--atelier { padding: 24px; gap: 18px 24px; }
    body.hkf-public-design.page-home .home-intro--atelier .home-intro-message { display: block; }
}
/* Tablet uses the same unobtrusive action dock rather than floating over copy. */
@media (max-width: 1100px) {
    body.hkf-public-design.page-home { --home-action-space: calc(78px + env(safe-area-inset-bottom,0px)); padding-bottom: var(--home-action-space) !important; }
    body.hkf-public-design.page-home .public-floating-support { position: fixed; top: auto; bottom: 0; left: 0; right: 0; width: auto; margin: 0; padding: 10px 14px calc(10px + env(safe-area-inset-bottom,0px)); background: #fffefa; border-top: 1px solid #dce3d7; pointer-events: auto; z-index: 19; }
    body.hkf-public-design.page-home .public-floating-support-panel,body.hkf-public-design.page-home .public-floating-button--top { display: none; }
    body.hkf-public-design.page-home .public-floating-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 640px; margin: 0 auto; gap: 10px; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
    body.hkf-public-design.page-home .public-floating-actions .public-floating-button { display: flex; align-items: center; justify-content: center; justify-self: stretch; gap: 9px; width: 100%; height: auto; min-height: 46px; border-radius: 7px; }
    body.hkf-public-design.page-home .public-floating-actions .public-floating-button > span:not(.public-icon) { position: static; clip: auto; clip-path: none; height: auto; width: auto; font-size: 13px; }
    body.hkf-public-design.page-home .public-floating-actions .home-mobile-shop { background: #254d40; color: #fff; }
    body.hkf-public-design.page-home .public-floating-actions .public-floating-button--contact { background: #eef3eb; color: #254d40; box-shadow: none; border: 1px solid #c9d6c4; }
    body.hkf-public-design.page-home .public-site-footer { padding-bottom: 28px; }
    body.hkf-public-design.page-home.hkf-mobile-menu-open .public-floating-support { visibility: hidden; pointer-events: none; }
}
@media (max-width: 760px) {
    body.hkf-public-design.page-home { --home-action-space: calc(78px + env(safe-area-inset-bottom,0px)); padding-bottom: var(--home-action-space) !important; }
    body.hkf-public-design.page-home #hkf-site-header .site-header-inner { padding-left: 14px !important; padding-right: 14px !important; gap: 5px !important; }
    body.hkf-public-design.page-home #hkf-site-header .hkf-brand-wordmark__copy > strong { font-size: 16px; }
    body.hkf-public-design.page-home #hkf-site-header .public-brand-domain { font-size: 9px; }
    body.hkf-public-design.page-home .home-intro--atelier { grid-template-columns: minmax(0,1fr); margin-top: 16px; padding: 18px; gap: 16px; border-radius: 12px; }
    body.hkf-public-design.page-home .home-intro--atelier .home-eyebrow { font-size: 11px; gap: 6px; margin-bottom: 10px; }
    body.hkf-public-design.page-home .home-hero-botanical { right: 12px; top: 28px; opacity: .12; }
    body.hkf-public-design.page-home .home-hero-botanical :is(.public-icon,svg) { width: 44px; height: 60px; }
    body.hkf-public-design.page-home .home-intro--atelier h1 { font-size: 32px !important; line-height: 1.3; }
    body.hkf-public-design.page-home .home-intro--atelier h1 > span { font-size: 14px; letter-spacing: .02em; margin-top: 8px; }
    body.hkf-public-design.page-home .home-intro--atelier .home-intro-description { font-size: 15px; line-height: 1.75; margin: 12px 0; }
    body.hkf-public-design.page-home .home-hero-categories { margin-top: 16px; gap: 7px; }
    body.hkf-public-design.page-home .home-hero-categories a { padding: 10px 12px; font-size: 15px; }
    body.hkf-public-design.page-home .home-intro--atelier .home-intro-actions { display: flex; flex-wrap: wrap; gap: 8px 12px; margin-top: 16px; }
    body.hkf-public-design.page-home .home-intro--atelier .storefront-button.primary { min-height: 46px; padding: 10px 14px; }
    body.hkf-public-design.page-home .home-intro--atelier .home-contact-link { font-size: 14px; }
    body.hkf-public-design.page-home .home-intro--atelier .home-shop-media { aspect-ratio: 1.9; }
    body.hkf-public-design.page-home .home-intro--atelier .home-shop-image { object-fit: cover; object-position: center 65%; }
    body.hkf-public-design.page-home .home-intro--atelier .home-shop-caption { padding: 10px 12px; }
    body.hkf-public-design.page-home .home-intro--atelier .home-shop-since { display: none; }
    body.hkf-public-design.page-home #home-categories .home-category-access-media { aspect-ratio: 1; }
    body.hkf-public-design.page-home #home-categories .home-category-access-card strong { font-size: 17px; }
    body.hkf-public-design.page-home [id] { scroll-margin-top: 82px; }
}
@media (prefers-reduced-motion: reduce) {
    body.hkf-public-design.page-home #home-categories .home-category-access-card { transition: none; }
}
@media print {
    body.hkf-public-design.page-home .home-header-language,body.hkf-public-design.page-home .public-floating-support { display: none !important; }
    body.hkf-public-design.page-home { padding-bottom: 0 !important; }
}

body.hkf-public-design.page-home .home-image-unavailable img[hidden] { display: none !important; }
/* Keep focus visible against ivory cards as well as the green action buttons. */
body.hkf-public-design.page-home .home-intro--atelier a:focus-visible { outline: 3px solid #216c59; outline-offset: 3px; }
@media (max-width: 1100px) {
    body.hkf-public-design.page-home .public-floating-actions .public-floating-button--top { display: none !important; }
}

/* Keep the four purchase categories ahead of supporting copy in the first screen. */
body.hkf-public-design.page-home .home-intro--atelier .home-intro-actions{margin-top:14px}
body.hkf-public-design.page-home .home-intro--atelier .home-intro-message{margin-top:18px;margin-bottom:8px}
@media(max-width:600px){
 body.hkf-public-design.page-home .home-intro--atelier{margin-top:12px;padding-top:18px}
 body.hkf-public-design.page-home .home-intro--atelier .home-eyebrow{margin-bottom:8px}
 body.hkf-public-design.page-home .home-hero-categories{margin-top:12px}
 body.hkf-public-design.page-home .home-hero-categories a{min-height:44px;overflow-wrap:anywhere}
}
