/* Honeyshade — coming soon page
   Palette: plum #2e1118 · honey #d5b096 · paper #dbcabf · olive #67552d · navy #14223b */

.hs, .hs * { box-sizing: border-box; }

.wp-site-blocks > .hs,
.entry-content > .hs {
  margin-block-start: 0 !important;
}

.hs {
  margin: 0;
  padding: 0;
  background: #2e1118;
  color: #dbcabf;
  font-family: 'EB Garamond', Georgia, serif;
  -webkit-font-smoothing: antialiased;
}

.hs a { color: #d5b096; text-decoration: none; transition: color .3s ease; }
.hs a:hover { color: #dbcabf; }

/* ---------- Hero ---------- */

.hs-hero {
  position: relative;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #2e1118;
}

.hs-slides { position: absolute; inset: 0; overflow: hidden; }

.hs-slide {
  position: absolute;
  inset: 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  opacity: 0;
  animation: hsShow 54s linear infinite;
}

@keyframes hsShow {
  0%    { opacity: 0; transform: scale(1.02); }
  3%    { opacity: 1; }
  15%   { opacity: 1; }
  18%   { opacity: 0; transform: scale(1.15); }
  18.2% { opacity: 0; transform: scale(1.02); }
  100%  { opacity: 0; transform: scale(1.02); }
}

.hs-wash { position: absolute; inset: 0; pointer-events: none; }

.hs-wash--warm {
  background: radial-gradient(120% 90% at 50% 8%,
    rgba(213,176,150,.16) 0%, rgba(103,85,45,.18) 34%,
    rgba(46,17,24,.58) 78%, rgba(46,17,24,.74) 100%);
}

/* day -> night drift */
.hs-wash--night {
  background: linear-gradient(180deg,
    rgba(20,34,59,.55) 0%, rgba(46,17,24,.60) 55%, rgba(46,17,24,.86) 100%);
  opacity: 0;
  animation: hsNightWash 72s ease-in-out infinite;
}

@keyframes hsNightWash {
  0%   { opacity: 0; }
  45%  { opacity: 1; }
  55%  { opacity: 1; }
  100% { opacity: 0; }
}

.hs-wash--vertical {
  background: linear-gradient(180deg,
    rgba(46,17,24,.60) 0%, rgba(46,17,24,.34) 26%,
    rgba(46,17,24,.40) 62%, rgba(46,17,24,.78) 100%);
}

.hs-wash--centre {
  background: radial-gradient(68% 58% at 50% 52%,
    rgba(46,17,24,.46) 0%, rgba(46,17,24,.24) 55%, rgba(46,17,24,0) 100%);
}

/* ---------- Top bar ---------- */

.hs-topbar {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 16px;
  padding: clamp(14px, 2.4vh, 30px) clamp(20px, 5vw, 58px);
  font-size: 11px;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: rgba(219,202,191,.72);
}

.hs-topbar__item { flex: 1 1 auto; text-align: center; letter-spacing: .24em; }
.hs a.hs-topbar__item { color: rgba(219,202,191,.72); }
.hs a.hs-topbar__item:hover { color: #d5b096; }

/* ---------- Hero content ---------- */

.hs-main {
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: clamp(6px, 1.4vh, 20px) clamp(22px, 6vw, 40px) clamp(20px, 4vh, 54px);
  animation: hsRise 1.1s ease-out both;
}

@keyframes hsRise {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: translateY(0); }
}

.hs-logo {
  width: min(74vw, clamp(210px, 30vh, 400px));
  height: auto;
  display: block;
  filter: drop-shadow(0 8px 34px rgba(46,17,24,.45));
}

.hs-rule {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: clamp(14px, 2.6vh, 32px);
  color: #d5b096;
}

.hs-rule__line { width: clamp(22px, 7vw, 54px); height: 1px; }
.hs-rule__line--l { background: linear-gradient(90deg, rgba(213,176,150,0), rgba(213,176,150,.75)); }
.hs-rule__line--r { background: linear-gradient(270deg, rgba(213,176,150,0), rgba(213,176,150,.75)); }

.hs-rule__text {
  font-family: Marcellus, serif;
  font-size: clamp(15px, 2.9vw, 20px);
  letter-spacing: .42em;
  text-indent: .42em;
  text-transform: uppercase;
}

.hs-intro {
  max-width: 42ch;
  margin: clamp(12px, 2vh, 22px) 0 0;
  font-size: clamp(17px, 2.4vh, 23px);
  line-height: 1.55;
  color: rgba(219,202,191,.94);
  text-shadow: 0 1px 18px rgba(46,17,24,.6);
  text-wrap: pretty;
}

/* ---------- Signup form ---------- */

.hs-form { width: min(100%, 460px); margin-top: clamp(18px, 3vh, 36px); }

.hs-form--embed {
  display: flex;
  justify-content: center;
}

.hs-form--embed iframe,
.hs-form--embed form {
  width: 100%;
  max-width: 100%;
}

.hs-form--embed iframe {
  border: 0;
}

.hs-form__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 10px;
}

.hs-field {
  flex: 1 1 210px;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 14px;
  background: rgba(250,246,242,.94);
  border: 1px solid rgba(213,176,150,.9);
  border-radius: 3px;
  box-shadow: 0 2px 18px rgba(46,17,24,.35);
}

.hs-field:focus-within { border-color: #d5b096; box-shadow: 0 2px 18px rgba(46,17,24,.35), 0 0 0 3px rgba(213,176,150,.3); }
.hs-field__icon { flex: 0 0 auto; }

.hs-field__input {
  flex: 1 1 auto;
  min-width: 0;
  background: transparent;
  border: 0;
  outline: none;
  color: #2e1118;
  font-family: inherit;
  font-size: 17px;
  letter-spacing: .01em;
  padding: 6px 0;
}

.hs-field__input::placeholder { color: rgba(46,17,24,.5); }
.hs-field__input:-webkit-autofill {
  -webkit-text-fill-color: #2e1118;
  -webkit-box-shadow: 0 0 0 40px #faf6f2 inset;
}

.hs-btn {
  flex: 0 1 auto;
  min-width: 160px;
  max-width: 260px;
  min-height: 52px;
  padding: 0 26px;
  background: #d5b096;
  color: #2e1118;
  border: 0;
  border-radius: 3px;
  cursor: pointer;
  font-family: Marcellus, serif;
  font-size: 13px;
  letter-spacing: .22em;
  text-transform: uppercase;
  transition: background .3s ease;
  animation: hsShake 9s ease-in-out 3s infinite;
}

.hs-btn:hover { background: #dbcabf; }

@keyframes hsShake {
  0%, 86%, 100% { transform: translateX(0); }
  88% { transform: translateX(-3px); }
  90% { transform: translateX(3px); }
  92% { transform: translateX(-2px); }
  94% { transform: translateX(2px); }
  96% { transform: translateX(-1px); }
}

.hs-consent {
  margin: 14px 0 0;
  font-size: 13.5px;
  line-height: 1.5;
  color: rgba(219,202,191,.78);
}

.hs-thanks { width: min(100%, 460px); margin-top: clamp(18px, 3vh, 36px); }

.hs-thanks__title {
  margin: 0;
  padding: 16px 0;
  font-family: Marcellus, serif;
  font-size: clamp(14px, 2.2vw, 17px);
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #d5b096;
}

.hs-thanks__sub { margin: 0; font-size: 14px; color: rgba(219,202,191,.6); }

.hs-book {
  margin-top: clamp(16px, 2.6vh, 30px);
  font-size: 16px;
  letter-spacing: .13em;
  text-transform: uppercase;
  padding-bottom: 5px;
  border-bottom: 1px solid rgba(213,176,150,.4);
}

.hs a.hs-book { color: rgba(219,202,191,.82); }
.hs a.hs-book:hover { color: #d5b096; border-bottom-color: #d5b096; }

/* ---------- Scroll cue ---------- */

.hs-cue {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding-bottom: clamp(12px, 2vh, 24px);
  font-size: 10px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: rgba(219,202,191,.5);
  animation: hsCue 2.6s ease-in-out infinite;
}

.hs-cue__line { width: 1px; height: 22px; background: linear-gradient(180deg, rgba(213,176,150,.7), rgba(213,176,150,0)); }

@keyframes hsCue {
  0%, 100% { transform: translateY(0); opacity: .5; }
  50%      { transform: translateY(5px); opacity: 1; }
}

/* ---------- Footer ---------- */

.hs-footer {
  position: relative;
  background: #2e1118;
  border-top: 1px solid rgba(213,176,150,.16);
}

.hs-crest {
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 3vw, 26px);
  padding: clamp(30px, 4vw, 46px) clamp(22px, 5vw, 58px) 0;
}

.hs-crest img { width: clamp(48px, 9vw, 64px); height: auto; opacity: .9; flex: 0 0 auto; }
.hs-crest__line { flex: 1 1 auto; height: 1px; }
.hs-crest__line--l { background: linear-gradient(90deg, rgba(213,176,150,0), rgba(213,176,150,.35)); }
.hs-crest__line--r { background: linear-gradient(270deg, rgba(213,176,150,0), rgba(213,176,150,.35)); }

.hs-cols {
  max-width: 1180px;
  margin: 0 auto;
  padding: clamp(26px, 3.4vw, 42px) clamp(22px, 5vw, 58px) clamp(26px, 3vw, 34px);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: clamp(22px, 3.4vw, 48px);
}

.hs-col { border-top: 1px solid rgba(213,176,150,.18); padding-top: clamp(16px, 2vw, 22px); }

.hs-col__label {
  margin: 0 0 12px;
  font-family: Marcellus, serif;
  font-size: 11px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: rgba(213,176,150,.7);
}

.hs-col__text { margin: 0; font-size: 16px; line-height: 1.68; color: rgba(219,202,191,.86); }
.hs-col__links { display: flex; flex-direction: column; gap: 9px; font-size: 16px; }

.hs-underline {
  display: inline-block;
  margin-top: 12px;
  font-size: 13px;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding-bottom: 3px;
  border-bottom: 1px solid rgba(213,176,150,.35);
}

.hs-legal {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 clamp(22px, 5vw, 58px) clamp(30px, 4vw, 44px);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
  gap: 8px 26px;
  font-size: 12px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(219,202,191,.78);
}

/* ---------- Accessibility ---------- */

@media (prefers-reduced-motion: reduce) {
  .hs-slide, .hs-wash--night, .hs-btn, .hs-cue, .hs-main { animation: none; }
  .hs-slide:first-child { opacity: 1; }
}
