/*
Theme Name: BTH Productions
Author: BTH Productions
Description: BTH Productions wedding decor theme with a default homepage, bundled photography and fonts, a hero slideshow and gallery enquiry popups.
Version: 2.0.1
Requires at least: 6.0
Requires PHP: 7.4
Tested up to: 7.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: design-atelier
Tags: custom-menu, featured-images, full-width-template, translation-ready, one-column
*/

/* The admin bar is 32px of fixed chrome and every design has its own fixed
   header — without this they sit on top of each other while logged in.
   !important is required, not sloppiness: the header carries top:0 as an inline
   style, which a plain rule cannot outrank. */
body.admin-bar [data-x="nav"] { top: 32px !important; }
@media screen and (max-width: 782px) {
  body.admin-bar [data-x="nav"] { top: 46px !important; }
}

/* ---------------------------------------------------------------------------
   Fallback pages — 404, search, a post, or any page without a design template.
   The three designs are complete documents with their own inline CSS; these are
   not. They get a quiet, on-brand page instead of being handed a whole homepage,
   which is what used to happen.
   -------------------------------------------------------------------------- */
.tda-fallback {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: #1c1c1c;
  color: #fdfbf7;
  font-family: 'Montserrat', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.tda-fallback a { color: inherit; text-decoration: none; }
.tda-fallback__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 30px clamp(20px, 4vw, 56px);
  border-bottom: 1px solid rgba(197, 160, 89, 0.3);
}
/* Preserve the original transparent PNG proportions and gold colours. */
.tda-fallback__bar img {
  display: block;
  height: clamp(38px, 4vw, 52px);
  aspect-ratio: 2400 / 802;
  width: auto;
  object-fit: contain;
  object-position: center;
}
.tda-fallback__home {
  font-size: 9.5px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #c5a059;
  border-bottom: 1px solid transparent;
  padding-bottom: 4px;
  transition: border-color 400ms ease;
}
.tda-fallback__home:hover { border-bottom-color: #c5a059; }
.tda-fallback__main {
  flex: 1;
  display: flex;
  align-items: center;
  padding: clamp(56px, 9vw, 130px) clamp(20px, 4vw, 56px);
}
.tda-fallback__inner { max-width: 68ch; margin: 0 auto; width: 100%; }
.tda-fallback__eyebrow {
  font-size: 9.5px;
  letter-spacing: 0.36em;
  text-transform: uppercase;
  color: #c5a059;
  margin-bottom: 26px;
}
.tda-fallback h1, .tda-fallback h2 {
  font-family: 'Cormorant Garamond', Garamond, 'Times New Roman', serif;
  font-weight: 400;
  font-size: clamp(31px, 4.4vw, 62px);
  line-height: 1.18;
  letter-spacing: 0.008em;
  margin: 0 0 24px;
  text-wrap: pretty;
}
.tda-fallback h2 { font-size: clamp(23px, 2.4vw, 33px); margin-bottom: 12px; }
.tda-fallback em.script {
  font-family: 'Pinyon Script', 'Cormorant Garamond', cursive;
  font-style: normal;
  font-size: 1.1em;
  line-height: 0.82;
  color: #e8d6ae;
}
.tda-fallback p, .tda-fallback li {
  font-family: 'Cormorant Garamond', Garamond, 'Times New Roman', serif;
  font-size: 17.5px;
  line-height: 1.82;
  letter-spacing: 0.012em;
  color: rgba(253, 251, 247, 0.74);
}
.tda-fallback__cta {
  display: inline-block;
  margin-top: 34px;
  padding: 18px 46px;
  border: 1px solid #c5a059;
  font-size: 10px;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: #fdfbf7;
  transition: background 600ms ease, color 600ms ease, letter-spacing 600ms ease;
}
.tda-fallback__cta:hover { background: #c5a059; color: #1c1c1c; letter-spacing: 0.38em; }
.tda-fallback__list { list-style: none; margin: 0; padding: 0; }
.tda-fallback__list li { padding: 22px 0; border-bottom: 1px solid rgba(197, 160, 89, 0.22); }
.tda-fallback__meta {
  font-family: 'Montserrat', system-ui, sans-serif;
  font-size: 9px;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: rgba(253, 251, 247, 0.5);
}
/* WordPress markup expects the theme to provide this; without it the search
   form's label renders as visible text next to the field. */
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.screen-reader-text:focus {
  position: static !important;
  width: auto; height: auto;
  margin: 0; clip-path: none;
}

.tda-fallback__search { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 30px; }
.tda-fallback__search input {
  flex: 1 1 220px;
  border: 0;
  border-bottom: 1px solid rgba(197, 160, 89, 0.5);
  background: transparent;
  color: #fdfbf7;
  padding: 0 0 12px;
  font-family: 'Cormorant Garamond', Garamond, serif;
  font-size: 21px;
  outline: none;
  transition: border-color 500ms ease;
}
.tda-fallback__search input:focus { border-bottom-color: #c5a059; }
.tda-fallback__search button {
  border: 1px solid #c5a059;
  background: transparent;
  color: #fdfbf7;
  padding: 14px 30px;
  font-family: 'Montserrat', system-ui, sans-serif;
  font-size: 9.5px;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 600ms ease, color 600ms ease;
}
.tda-fallback__search button:hover { background: #c5a059; color: #1c1c1c; }
.tda-fallback__foot {
  padding: 30px clamp(20px, 4vw, 56px);
  border-top: 1px solid rgba(197, 160, 89, 0.3);
  font-size: 9px;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: rgba(253, 251, 247, 0.5);
}
body.admin-bar .tda-fallback { min-height: calc(100vh - 32px); }
