/*
Theme Name: HF Blank Shell Theme
Theme URI: https://homesandfloors.co.uk/
Author: Homes & Floors
Description: Ultra-minimal shell theme for Homes & Floors custom shortcode/MU-plugin system. Outputs no theme header, no theme footer, no page title, no sidebar, no navigation. Keeps wp_head, wp_body_open, the_content and wp_footer only.
Version: 1.0.2
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: hf-blank-shell-theme
License: GPL-2.0-or-later
*/

html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100%;
}

body {
  background: #fff;
}

img {
  max-width: 100%;
  height: auto;
}

*, *::before, *::after {
  box-sizing: border-box;
}

.hf-shell-main {
  width: 100%;
  margin: 0;
  padding: 0;
}

.hf-shell-content {
  width: 100%;
  margin: 0;
  padding: 0;
}


/* HF Shell homepage gap stabilizer */
html, body,
body.home,
body.front-page {
  margin-top: 0 !important;
}

body.home .hf-shell-main,
body.home .hf-shell-content,
body.front-page .hf-shell-main,
body.front-page .hf-shell-content,
.hf-shell-front-page,
.hf-shell-front-page .hf-shell-content {
  display: block;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.home .hf-shell-content > :first-child,
body.front-page .hf-shell-content > :first-child,
.hf-shell-front-page .hf-shell-content > :first-child {
  margin-top: 0 !important;
}

body.home .hf-shell-content > :last-child,
body.front-page .hf-shell-content > :last-child,
.hf-shell-front-page .hf-shell-content > :last-child {
  margin-bottom: 0 !important;
}

/* Prevent temporary browser/theme whitespace before the shortcode paints. */
body.home main#primary,
body.front-page main#primary {
  min-height: 0 !important;
  transform: translateZ(0);
}


/* HF Shell V3 — hard homepage first-paint gap removal
   The theme wrapper must not create any physical box before the shortcode output. */
body.home main#primary.hf-shell-front-page,
body.front-page main#primary.hf-shell-front-page,
body.home main#primary.hf-shell-front-page > .hf-shell-content,
body.front-page main#primary.hf-shell-front-page > .hf-shell-content {
  display: contents !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  min-height: 0 !important;
  height: auto !important;
}

body.home .hf-homepage,
body.front-page .hf-homepage,
body.home .hf-homepage > :first-child,
body.front-page .hf-homepage > :first-child,
body.home #hfHero,
body.front-page #hfHero,
body.home .hf-hero,
body.front-page .hf-hero {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.home .hfh-shell,
body.front-page .hfh-shell,
body.home .hfh-header,
body.front-page .hfh-header {
  margin-bottom: 0 !important;
}
