/* Contact / Enquiry refresh — guided enquiry layout */
.contact-refresh-page{
  --contact-cyan:#36d8e8;
  --contact-violet:#8d6ff0;
  --contact-ink:#f6f8fb;
  --contact-muted:#9aa4af;
  --contact-panel:#0b0f15;
  --contact-line:rgba(255,255,255,.105);
  background:#05070b;
  color:var(--contact-ink);
}
.contact-refresh-page .topbar{background:rgba(5,7,11,.94);backdrop-filter:blur(16px)}
.contact-refresh-page .simple-enquiry-wrap.contact-enquiry-layout{
  position:relative;
  min-height:100vh;
  width:100%;
  padding-top:86px;
  display:grid;
  grid-template-columns:minmax(360px,.82fr) minmax(620px,1.18fr);
  overflow:visible;
  background:
    radial-gradient(circle at 8% 20%,rgba(141,111,240,.15),transparent 25%),
    radial-gradient(circle at 90% 18%,rgba(54,216,232,.08),transparent 23%),
    linear-gradient(135deg,#06070c 0%,#080b11 48%,#071016 100%)!important;
}
.contact-refresh-page .simple-enquiry-wrap.contact-enquiry-layout::before{
  content:"";
  position:absolute;
  inset:86px 0 auto;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(141,111,240,.42),rgba(54,216,232,.34),transparent);
  pointer-events:none;
}

/* Intro / reassurance */
.contact-refresh-page .contact-enquiry-intro{
  position:relative;
  padding:clamp(54px,6vw,84px) clamp(28px,4.8vw,72px) 54px!important;
  border-right:1px solid rgba(255,255,255,.075)!important;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-width:0;
}
.contact-refresh-page .contact-enquiry-intro::after{display:none!important}
.contact-refresh-page .contact-intro-copy{max-width:610px}
.contact-refresh-page .contact-intro-copy .eyebrow{margin-bottom:14px!important;color:#79e9f3!important}
.contact-refresh-page .contact-intro-copy h1{
  max-width:620px!important;
  margin:0 0 22px!important;
  font-size:clamp(3.15rem,5.1vw,5.9rem)!important;
  line-height:.94!important;
  letter-spacing:-.052em!important;
  text-transform:none!important;
  text-wrap:balance;
}
.contact-refresh-page .contact-intro-copy h1 span{
  display:inline;
  background:linear-gradient(105deg,#8d6ff0 0%,#b9a7ff 43%,#e7faff 70%,#64dce8 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
}
.contact-refresh-page .contact-intro-copy>p:not(.eyebrow){
  max-width:570px!important;
  margin:0!important;
  color:#b8c0ca!important;
  font-size:clamp(1rem,1.25vw,1.13rem)!important;
  line-height:1.72!important;
}
.contact-enquiry-points{
  margin-top:34px;
  display:grid;
  gap:0;
  max-width:610px;
  border-top:1px solid rgba(255,255,255,.10);
}
.contact-enquiry-points article{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:15px;
  padding:17px 0;
  border-bottom:1px solid rgba(255,255,255,.09);
}
.contact-enquiry-points article>span{
  color:#77e4ee;
  font-size:.68rem;
  line-height:1.4;
  letter-spacing:.13em;
  font-weight:850;
}
.contact-enquiry-points b{display:block;color:#f5f7fa;font-size:.9rem;letter-spacing:.015em}
.contact-enquiry-points p{margin:5px 0 0;color:#8f99a5;font-size:.82rem;line-height:1.52}

.contact-planning-card{
  position:relative;
  display:block;
  margin-top:28px;
  max-width:610px;
  aspect-ratio:16/8.2;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:18px;
  background:#0c1016;
  color:#fff;
  box-shadow:0 22px 54px rgba(0,0,0,.26);
}
.contact-planning-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(7,8,13,.88) 0%,rgba(7,8,13,.64) 45%,rgba(7,8,13,.10) 80%),linear-gradient(0deg,rgba(7,8,13,.54),transparent 55%);
}
.contact-planning-card img{width:100%;height:100%;object-fit:cover;object-position:52% 50%;filter:saturate(.9) contrast(1.02);transition:transform .45s ease,filter .45s ease}
.contact-planning-card>span{position:absolute;z-index:2;left:20px;bottom:18px;max-width:62%;display:grid;gap:4px}
.contact-planning-card small{color:#7fe7f0;font-size:.61rem;letter-spacing:.15em;text-transform:uppercase;font-weight:850}
.contact-planning-card strong{font-size:1rem;line-height:1.25}
.contact-planning-card em{color:#b7c1cc;font-style:normal;font-size:.72rem}
.contact-planning-card:hover img,.contact-planning-card:focus-visible img{transform:scale(1.025);filter:saturate(1) contrast(1.04)}
.contact-planning-card:focus-visible{outline:2px solid var(--contact-cyan);outline-offset:3px}

.contact-refresh-page .contact-enquiry-note{
  margin-top:24px!important;
  max-width:610px!important;
  padding:16px 0 0!important;
  border:0!important;
  border-top:1px solid rgba(255,255,255,.095)!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  gap:5px!important;
}
.contact-refresh-page .contact-enquiry-note::before{display:none!important}
.contact-refresh-page .contact-enquiry-note b{color:#e7ebf0!important;font-size:.7rem!important;letter-spacing:.055em!important;line-height:1.45}
.contact-refresh-page .contact-enquiry-note span{color:#7f8995!important;font-size:.75rem!important;line-height:1.5}

/* Form panel */
.contact-refresh-page .contact-enquiry-panel{
  position:relative;
  padding:clamp(48px,5.2vw,76px) clamp(30px,5vw,76px) 72px!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(54,216,232,.055),transparent 27%),
    linear-gradient(180deg,rgba(13,17,24,.97),rgba(8,12,17,.98))!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.contact-refresh-page .contact-enquiry-panel::before{display:none!important}
.contact-form-head{max-width:830px;margin:0 auto 30px}
.contact-form-head .eyebrow{margin-bottom:10px!important;color:#7be5ef!important}
.contact-form-head h2{margin:0 0 12px;color:#f5f7fa;font-size:clamp(2rem,3.2vw,3.2rem);line-height:1.03;letter-spacing:-.038em;text-wrap:balance}
.contact-form-head h2 span{color:#a694f1}
.contact-form-head>p:not(.eyebrow){max-width:690px;margin:0;color:#8f99a5;font-size:.92rem;line-height:1.62}
.contact-refresh-page .contact-enquiry-form{max-width:830px!important;margin:0 auto!important}

.contact-form-section{
  min-width:0;
  margin:0 0 16px;
  padding:21px 22px 22px;
  border:1px solid rgba(255,255,255,.095);
  border-radius:18px;
  background:linear-gradient(150deg,rgba(255,255,255,.04),rgba(255,255,255,.015) 62%),rgba(8,11,16,.62);
  box-shadow:inset 0 1px rgba(255,255,255,.025),0 16px 34px rgba(0,0,0,.12);
}
.contact-form-section>legend{
  width:100%;
  padding:0 0 17px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.contact-form-section>legend>span:first-child{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  flex:0 0 32px;
  border:1px solid rgba(54,216,232,.24);
  border-radius:9px;
  background:rgba(54,216,232,.055);
  color:#70e2ec;
  font-size:.61rem;
  line-height:1;
  letter-spacing:.1em;
  font-weight:850;
}
.contact-form-section>legend .legend-copy{
  display:grid;
  gap:3px;
  min-width:0;
  width:auto;
  height:auto;
  flex:1 1 auto;
  place-items:initial;
  padding-top:1px;
  border:0;
  border-radius:0;
  background:none;
  color:inherit;
  font-size:inherit;
  line-height:normal;
  letter-spacing:normal;
  font-weight:inherit;
}
.contact-form-section>legend b{color:#eef1f5;font-size:.86rem;letter-spacing:.025em}
.contact-form-section>legend small{color:#7f8995;font-size:.72rem;line-height:1.4;font-weight:400}
.contact-form-section .simple-form-grid{margin-top:20px;gap:17px 18px!important}
.contact-form-section .simple-form-grid label{gap:7px!important}
.contact-refresh-page .contact-form-section .simple-form-grid label>span{
  color:#bfc7d0!important;
  font-size:.66rem!important;
  letter-spacing:.075em!important;
  font-weight:760!important;
}
.contact-refresh-page .contact-form-section .simple-form-grid label>span small{color:#6f7985!important;font-size:.61rem!important}
.contact-refresh-page .contact-form-section .simple-form-grid input,
.contact-refresh-page .contact-form-section .simple-form-grid select,
.contact-refresh-page .contact-form-section .simple-form-grid textarea{
  min-height:48px;
  padding:12px 13px!important;
  border:1px solid rgba(255,255,255,.105)!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.027)!important;
  color:#f4f6f8!important;
  box-shadow:inset 0 1px rgba(255,255,255,.018)!important;
}
.contact-refresh-page .contact-form-section .simple-form-grid textarea{min-height:154px;resize:vertical;line-height:1.55}
.contact-refresh-page .contact-form-section .simple-form-grid input:focus,
.contact-refresh-page .contact-form-section .simple-form-grid select:focus,
.contact-refresh-page .contact-form-section .simple-form-grid textarea:focus{
  border-color:rgba(54,216,232,.58)!important;
  background:rgba(54,216,232,.028)!important;
  box-shadow:0 0 0 3px rgba(54,216,232,.055)!important;
}
.contact-refresh-page .contact-form-section .simple-form-grid input::placeholder,
.contact-refresh-page .contact-form-section .simple-form-grid textarea::placeholder{color:#59636f!important}
.contact-phone-field{max-width:calc(50% - 9px)}

/* Event-aware context card */
.event-context-card{
  --event-accent:#36d8e8;
  --event-accent2:#8d6ff0;
  position:relative;
  overflow:hidden;
  margin-top:16px;
  padding:14px 16px;
  display:grid;
  grid-template-columns:5px minmax(0,1fr);
  gap:13px;
  border:1px solid color-mix(in srgb,var(--event-accent) 24%,rgba(255,255,255,.08));
  border-radius:13px;
  background:linear-gradient(105deg,color-mix(in srgb,var(--event-accent) 7%,transparent),rgba(255,255,255,.018) 46%,color-mix(in srgb,var(--event-accent2) 6%,transparent));
}
.event-context-mark{display:block;width:5px;height:100%;min-height:52px;border-radius:999px;background:linear-gradient(180deg,var(--event-accent),var(--event-accent2));box-shadow:0 0 20px color-mix(in srgb,var(--event-accent) 35%,transparent)}
.event-context-card>div{display:grid;gap:3px;align-content:center}
.event-context-card small{color:var(--event-accent);font-size:.59rem;letter-spacing:.14em;text-transform:uppercase;font-weight:850}
.event-context-card strong{color:#f4f6f9;font-size:.84rem}
.event-context-card p{margin:1px 0 0;color:#89939e;font-size:.72rem;line-height:1.47}
.event-context-card[data-event="wedding"]{--event-accent:#d5b475;--event-accent2:#eee0c7}
.event-context-card[data-event="prom"]{--event-accent:#a66cff;--event-accent2:#ff72c8}
.event-context-card[data-event="venue-night"]{--event-accent:#35d6e5;--event-accent2:#5b70e6}
.event-context-card[data-event="themed-night"]{--event-accent:#00e5ff;--event-accent2:#7b2cff}
.event-context-card[data-event="karaoke"]{--event-accent:#ff4ca4;--event-accent2:#7f5cff}
.event-context-card[data-event="christmas-party"]{--event-accent:#d6b56d;--event-accent2:#4d8069}
.event-context-card[data-event="corporate"]{--event-accent:#9aaad7;--event-accent2:#6578b6}
.event-context-card[data-event="brand-event"]{--event-accent:#a795e6;--event-accent2:#7187c8}
.event-context-card[data-event="private-party"]{--event-accent:#37d5e5;--event-accent2:#8d6ff0}
.event-context-card[data-event="other"]{--event-accent:#c1cad4;--event-accent2:#6f7d8d}

/* Wedding setup brought into the form rather than the intro column */
.contact-refresh-page .contact-form-section .wedding-enquiry-setup{
  margin-top:16px!important;
  padding:15px 16px!important;
  border:1px solid rgba(213,180,117,.20)!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,rgba(213,180,117,.075),rgba(255,255,255,.025))!important;
  box-shadow:none!important;
}
.contact-refresh-page .contact-form-section .wedding-enquiry-setup-kicker{color:#d7b878!important;font-size:.61rem!important;margin-bottom:5px!important}
.contact-refresh-page .contact-form-section .wedding-enquiry-setup-summary{color:#f5efe5!important;font-size:.9rem!important}
.contact-refresh-page .contact-form-section .wedding-enquiry-setup-note{color:#8f9293!important;font-size:.72rem!important;line-height:1.48!important}
.contact-refresh-page .contact-form-section .wedding-enquiry-setup-tags span{
  padding:6px 9px!important;
  border-color:rgba(213,180,117,.17)!important;
  background:rgba(213,180,117,.055)!important;
  color:#d9ccba!important;
  font-size:.68rem!important;
}
.contact-refresh-page .contact-form-section .ghost-action{
  min-height:38px!important;
  padding:0 12px!important;
  border-color:rgba(213,180,117,.22)!important;
  background:rgba(213,180,117,.055)!important;
  color:#e5d9c8!important;
  font-size:.68rem!important;
}
.contact-refresh-page .wedding-enquiry-mini-preview{margin-top:12px}

.contact-refresh-page .simple-enquiry-help{margin:14px 0 0!important;color:#79838e!important;font-size:.74rem!important;line-height:1.5!important}
.contact-refresh-page .form-submit-error{
  margin:14px 0 0;
  padding:12px 14px;
  border:1px solid rgba(255,110,135,.28);
  border-radius:11px;
  background:rgba(132,35,51,.16);
  color:#ffd2da;
  font-size:.78rem;
  line-height:1.45;
}
.contact-refresh-page .contact-enquiry-submit{
  position:relative;
  margin-top:21px!important;
  padding-top:20px!important;
  border-top:1px solid rgba(255,255,255,.09)!important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.contact-refresh-page .contact-enquiry-submit::before{display:none!important}
.contact-submit-notes{display:grid;gap:4px;max-width:420px}
.contact-submit-notes span{color:#77818d;font-size:.71rem;line-height:1.45}
.contact-submit-notes a{width:max-content;max-width:100%;color:#aab7c4;font-size:.71rem;text-decoration:none;border-bottom:1px solid rgba(170,183,196,.28)}
.contact-submit-notes a:hover,.contact-submit-notes a:focus-visible{color:#74e3ed;border-bottom-color:#74e3ed}
.contact-refresh-page .contact-enquiry-submit .primary{min-width:180px;min-height:48px;background:linear-gradient(105deg,#704fd3,#775ddc 44%,#26b8ca)!important;box-shadow:0 12px 26px rgba(80,73,196,.16)}
.contact-refresh-page .contact-enquiry-submit .primary:hover{transform:translateY(-1px);box-shadow:0 16px 32px rgba(54,180,205,.20)}

/* Confirmation state */
.contact-refresh-page .contact-sent{max-width:720px!important;margin:0 auto;padding:18px 0!important}
.contact-refresh-page .contact-sent>.sent-check{
  display:grid;
  place-items:center;
  width:50px;
  height:50px;
  margin-bottom:20px;
  border:1px solid rgba(54,216,232,.55);
  border-radius:50%;
  background:rgba(54,216,232,.06);
  color:#70e4ee;
  font-size:1.2rem;
}
.contact-refresh-page .contact-sent h2{margin:10px 0 12px!important;font-size:clamp(2.25rem,4vw,4rem)!important;line-height:.98!important;text-transform:none!important;letter-spacing:-.04em!important}
.contact-refresh-page .contact-sent>p:not(.eyebrow){max-width:620px;margin:0 0 24px!important;color:#98a2ad!important;line-height:1.6}
.contact-sent-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 24px}
.contact-sent-steps article{padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.025)}
.contact-sent-steps span{display:block;color:#6edee9;font-size:.58rem;letter-spacing:.12em;font-weight:850;margin-bottom:5px}
.contact-sent-steps b{display:block;color:#edf1f5;font-size:.76rem;margin-bottom:4px}
.contact-sent-steps p{margin:0;color:#7f8994;font-size:.68rem;line-height:1.42}
.contact-refresh-page .contact-sent .page-actions{justify-content:flex-start;gap:12px}
.contact-refresh-page .contact-sent .line-link{color:#75e2ec!important;border-color:#75e2ec!important}

.contact-refresh-page .local-coverage-note{background:#080b10;border-top:1px solid rgba(255,255,255,.08)}

@media(max-width:1080px){
  .contact-refresh-page .simple-enquiry-wrap.contact-enquiry-layout{grid-template-columns:minmax(320px,.72fr) minmax(540px,1.28fr)}
  .contact-refresh-page .contact-enquiry-intro{padding-left:30px!important;padding-right:30px!important}
  .contact-refresh-page .contact-planning-card>span{max-width:72%}
}

@media(max-width:900px){
  .contact-refresh-page .simple-enquiry-wrap.contact-enquiry-layout{grid-template-columns:1fr;padding-top:72px}
  .contact-refresh-page .simple-enquiry-wrap.contact-enquiry-layout::before{top:72px}
  .contact-refresh-page .contact-enquiry-intro{padding:52px 24px 38px!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
  .contact-refresh-page .contact-intro-copy,.contact-enquiry-points,.contact-planning-card,.contact-refresh-page .contact-enquiry-note{max-width:760px!important;margin-left:auto!important;margin-right:auto!important;width:100%}
  .contact-refresh-page .contact-intro-copy h1{max-width:700px!important}
  .contact-planning-card{aspect-ratio:16/7.5}
  .contact-refresh-page .contact-enquiry-panel{margin:0!important;padding:40px 24px 58px!important;border-radius:0!important}
  .contact-phone-field{max-width:none}
}

@media(max-width:620px){
  .contact-refresh-page .contact-enquiry-intro{padding:42px 18px 30px!important}
  .contact-refresh-page .contact-intro-copy h1{font-size:clamp(2.7rem,13.5vw,4.2rem)!important;line-height:.96!important;margin-bottom:16px!important}
  .contact-refresh-page .contact-intro-copy>p:not(.eyebrow){font-size:.94rem!important;line-height:1.62!important}
  .contact-enquiry-points{margin-top:25px}
  .contact-enquiry-points article{grid-template-columns:36px minmax(0,1fr);gap:10px;padding:14px 0}
  .contact-enquiry-points p{font-size:.76rem}
  .contact-planning-card{aspect-ratio:4/3;margin-top:22px}
  .contact-planning-card::after{background:linear-gradient(0deg,rgba(7,8,13,.92) 0%,rgba(7,8,13,.38) 64%,rgba(7,8,13,.06) 100%)}
  .contact-planning-card img{object-position:58% center}
  .contact-planning-card>span{left:16px;right:16px;bottom:15px;max-width:none}
  .contact-refresh-page .contact-enquiry-note{margin-top:20px!important}
  .contact-refresh-page .contact-enquiry-panel{padding:32px 14px 48px!important}
  .contact-form-head{margin-bottom:22px;padding:0 4px}
  .contact-form-head h2{font-size:2rem}
  .contact-form-section{padding:16px 14px 17px;border-radius:15px}
  .contact-form-section>legend{padding-bottom:14px}
  .contact-form-section .simple-form-grid{grid-template-columns:1fr!important;gap:15px!important;margin-top:16px}
  .contact-form-section .simple-form-grid label.wide{grid-column:auto!important}
  .contact-refresh-page .contact-form-section .simple-form-grid input,
  .contact-refresh-page .contact-form-section .simple-form-grid select,
  .contact-refresh-page .contact-form-section .simple-form-grid textarea{padding:13px 12px!important;border-radius:10px!important}
  .event-context-card{padding:12px 13px;margin-top:14px}
  .event-context-card p{font-size:.69rem}
  .contact-refresh-page .contact-enquiry-submit{align-items:stretch;flex-direction:column;gap:16px}
  .contact-refresh-page .contact-enquiry-submit .primary{width:100%;min-width:0}
  .contact-submit-notes a{width:auto}
  .contact-sent-steps{grid-template-columns:1fr}
  .contact-refresh-page .contact-sent .page-actions{align-items:stretch;flex-direction:column}
  .contact-refresh-page .contact-sent .page-actions .primary,.contact-refresh-page .contact-sent .page-actions .line-link{width:100%;justify-content:center;text-align:center}
}

@media(prefers-reduced-motion:reduce){
  .contact-planning-card img,.contact-refresh-page .contact-enquiry-submit .primary{transition:none!important}
}
