/* ============================================================
   RMG dark-glass CONTENT system — REUSABLE
   ------------------------------------------------------------
   This is the shared dark-glass content layer for the public
   site. It is the "proof" file that the Real Weddings page
   establishes and that About, Areas, Values, Events, Packages,
   FAQ and the galleries will adopt next.

   It is deliberately GENERIC. Class names describe what a thing
   IS (a content hero, a feature testimonial, a story row, a film
   card, a pull quote, an enquiry card), never "real-weddings".
   Reuse these on any dark page.

   It does NOT redefine tokens, .btn, .glass, .reveal, .container,
   .eyebrow, .script, .lead, .sec-head, .panel-glass or any base
   helper. Those all live in hub.css and are reused verbatim.
   Everything here is scoped under .v8hub so the dark theme can
   never leak into the homepage (.v8), the portal, the CRM /
   dashboard, or any other page. Google Fonts are already loaded
   in index.html, so nothing font-related is imported here.
   ============================================================ */

/* ============================================================
   CONTENT HERO  (.dhero)
   A tall, image-backed hero that sits inside the .v8hub dark
   field. The hub already paints a dark bg-field behind the page;
   the hero lays a real photo over it with a deep green→ink scrim
   so cream type and the gold script always read. Reusable on any
   content page that opens with a single full-width image.
   ============================================================ */
.v8hub .dhero{position:relative;min-height:100vh;display:flex;align-items:flex-end;overflow:hidden;padding:150px 0 60px}
.v8hub .dhero.tall{min-height:100vh}
.v8hub .dhero .dhero-bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;z-index:0}
.v8hub .dhero::after{content:"";position:absolute;inset:0;z-index:1;background:
  linear-gradient(180deg,rgba(15,21,18,.34),rgba(0,40,24,.5) 46%,rgba(15,21,18,.92)),
  radial-gradient(70% 60% at 18% 100%,rgba(0,96,58,.45),transparent 70%)}
.v8hub .dhero-in{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;width:100%;padding:0 40px;color:var(--cream)}
.v8hub .dhero .eyebrow{margin-bottom:16px}
.v8hub .dhero h1{font-size:clamp(2.6rem,6vw,5rem);line-height:.98;color:var(--cream);text-shadow:0 2px 30px rgba(0,0,0,.5)}
.v8hub .dhero h1 .script{color:var(--gold-light);font-size:.64em}
.v8hub .dhero p{font-size:var(--fs-lead);color:rgba(255,250,241,.9);font-weight:300;margin:18px 0 0;max-width:52ch}

/* ============================================================
   CONTENT SECTION HEADER  (.sec-top)
   A left-aligned section intro for dark content sections. The
   centred .sec-head already exists in hub.css for the Hub page;
   .sec-top is the left-aligned sibling for editorial content.
   ============================================================ */
.v8hub .content-sec{padding:clamp(80px,8vw,120px) 0;position:relative}
.v8hub .sec-top{max-width:720px;margin-bottom:48px}
.v8hub .sec-top .eyebrow{margin-bottom:12px}
.v8hub .sec-top h2 .script{display:block;font-size:clamp(2rem,3.6vw,2.6rem);margin-bottom:-2px}
.v8hub .sec-top p{color:rgba(255,250,241,.78);font-size:var(--fs-body);font-weight:300;margin-top:14px;max-width:60ch}

/* Two-column editorial layout for text-led sections (the E-E-A-T opener and
   the primary-service prose on the geo pages). The heading sits in a left
   rail and the body prose fills the right column, so the section width is
   used with intent instead of leaving a dead dark half. Targets ONLY the
   sections that contain a .prose-dark block (the 8 geo pages); the
   case-study, FAQ and link sections are untouched. Any .spec-card that
   follows the prose spans the full width beneath it. */
.v8hub .content-sec .container:has(> .prose-dark){
  display:grid;grid-template-columns:minmax(240px,340px) minmax(0,1fr);
  -moz-column-gap:64px;
       column-gap:64px;row-gap:28px;align-items:start}
.v8hub .content-sec .container:has(> .prose-dark) > .sec-top{margin-bottom:0;position:sticky;top:110px}
.v8hub .content-sec .container:has(> .prose-dark) > .prose-dark{max-width:70ch}
.v8hub .content-sec .container:has(> .prose-dark) > .spec-card{grid-column:1 / -1;margin-top:8px}

/* ============================================================
   FEATURE TESTIMONIAL  (.dtesti / .tfeature / .tcard)
   One hero review given the most weight (photo beside quote in
   a frosted glass panel with a gold bloom), plus a row of
   clearly-marked placeholder cards for "in their words" blocks.
   ============================================================ */
.v8hub .dtesti{padding:96px 0 60px}

/* the one real, hero review — compact frosted glass feature panel,
   photo in a rounded media well on the left, quote beside it */
.v8hub .tfeature{position:relative;border-radius:24px;overflow:hidden;max-width:1060px;margin:0 auto 26px;padding:42px;
  display:grid;grid-template-columns:minmax(0,336px) minmax(0,1fr);gap:44px;align-items:center;
  background:var(--glass);border:1px solid var(--glass-brd);
  backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--gshadow)}
.v8hub .tfeature::before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  background:radial-gradient(circle at 0 0,rgba(255,255,255,.14),transparent 45%),
  radial-gradient(circle at 100% 0,rgba(208,165,74,.2),transparent 58%)}
.v8hub .tfeature::after{content:"";position:absolute;top:-150px;right:-110px;width:440px;height:440px;border-radius:50%;
  background:radial-gradient(circle,rgba(208,165,74,.22),transparent 65%);pointer-events:none}
.v8hub .tfeature>*{position:relative;z-index:1}
.v8hub .tfeature .tf-media{border-radius:16px;overflow:hidden;aspect-ratio:4/5;max-height:420px}
.v8hub .tfeature .tf-media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 30%;object-position:center 30%;display:block}
.v8hub .tfeature .quote-mark{font-family:var(--font-display);font-size:2.5rem;line-height:.6;color:var(--gold-light);opacity:.7;height:22px;display:block}
.v8hub .tfeature .stars{display:flex;gap:5px;margin:10px 0 14px;color:var(--gold-light)}
.v8hub .tfeature .stars svg{width:16px;height:16px;fill:var(--gold-light)}
.v8hub .tfeature blockquote{font-family:var(--font-body);font-size:var(--fs-lead);line-height:1.7;color:var(--cream);max-width:58ch}
.v8hub .tfeature .attrib{font-family:var(--font-label);font-size:var(--fs-meta);letter-spacing:.04em;color:rgba(255,250,241,.78);margin-top:18px}
.v8hub .tfeature .attrib b{font-family:var(--font-display);font-weight:400;font-size:var(--fs-lead);letter-spacing:0;color:var(--gold-light);display:block;margin-bottom:2px}
.v8hub .tfeature .tf-links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px}
.v8hub .tfeature .tf-links a{font-family:var(--font-label);font-size:var(--fs-meta);font-weight:500;letter-spacing:.04em;color:var(--gold-light);
  text-decoration:none;border-bottom:1px solid var(--gold-soft);padding-bottom:2px;transition:border-color .25s ease,color .25s ease}
.v8hub .tfeature .tf-links a:hover{border-bottom-color:var(--gold-light);color:var(--cream)}

/* secondary review row */
.v8hub .tgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.v8hub .tcard{background:var(--glass);border:1px solid var(--glass-brd);border-radius:18px;padding:34px 32px;display:flex;flex-direction:column;
  backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--gshadow);position:relative;overflow:hidden}
.v8hub .tcard .stars{display:flex;gap:5px;margin-bottom:16px}
.v8hub .tcard .stars svg{width:17px;height:17px;fill:var(--gold-light)}
.v8hub .tcard p{font-family:var(--font-display);font-size:var(--fs-lead);color:var(--cream);line-height:1.5}
.v8hub .tcard .attrib{font-family:var(--font-label);font-size:var(--fs-meta);letter-spacing:.04em;color:rgba(255,250,241,.7);margin-top:18px}

/* placeholder treatment — clearly marked, never reads like a real review.
   Gold hairline dashed frame over a faint glass tint. */
.v8hub .tcard.placeholder{align-items:center;justify-content:center;text-align:center;min-height:180px;
  background:rgba(255,250,241,.04);border:1.5px dashed var(--gold-soft);box-shadow:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.v8hub .tcard.placeholder .ph-label{font-family:var(--font-label);font-size:var(--fs-meta);font-weight:700;letter-spacing:.04em;color:var(--gold-light)}
.v8hub .tcard.placeholder .ph-sub{font-family:var(--font-label);font-size:var(--fs-meta);color:rgba(255,250,241,.6);margin-top:8px;letter-spacing:.02em}

/* ============================================================
   STORY / CASE-STUDY ROW  (.story + .story.flip)
   Alternating image + glass copy panel. The image sits in a
   rounded media well, the copy in a frosted glass panel beside
   it. `.flip` mirrors the order. `.story-media.duo` stacks two
   photos. Reusable for any image-led editorial block.
   ============================================================ */
.v8hub .stories{padding:60px 0}
.v8hub .story{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;margin-bottom:30px;align-items:stretch}
.v8hub .story.flip{grid-template-columns:1fr 1.1fr}
.v8hub .story.flip .story-media{order:2}

/* media well */
.v8hub .story-media{position:relative;min-height:440px;border-radius:24px;overflow:hidden;
  border:1px solid var(--rule-light);box-shadow:0 30px 80px -34px rgba(0,0,0,.7)}
.v8hub .story-media .smimg{position:absolute;inset:0;background-size:cover;background-position:center 30%;transition:transform .9s var(--ease)}
.v8hub .story:hover .story-media .smimg{transform:scale(1.05)}
.v8hub .story-media::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 55%,rgba(0,40,24,.55))}
/* dual-image stack */
.v8hub .story-media.duo{display:grid;grid-template-rows:1fr 1fr;gap:4px}
.v8hub .story-media.duo .smimg{position:relative;inset:auto;min-height:0}
/* play button over the media */
.v8hub .story-media .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;
  border:1.5px solid var(--cream);background:rgba(255,250,241,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  display:flex;align-items:center;justify-content:center;transition:.3s var(--ease);z-index:3}
.v8hub .story-media .play:hover{background:var(--gold);border-color:var(--gold);transform:translate(-50%,-50%) scale(1.08)}
.v8hub .story-media .play svg{width:26px;height:26px;fill:var(--cream);margin-left:3px}
.v8hub .story-media .play:hover svg{fill:var(--ink)}

/* glass copy panel */
.v8hub .story-copy{position:relative;overflow:hidden;border-radius:24px;padding:48px 44px;display:flex;flex-direction:column;justify-content:center;
  background:var(--glass);border:1px solid var(--glass-brd);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--gshadow)}
.v8hub .story-copy::before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  background:radial-gradient(circle at 100% 0,rgba(208,165,74,.14),transparent 55%),radial-gradient(circle at 0 100%,rgba(255,255,255,.08),transparent 50%)}
.v8hub .story-copy>*{position:relative;z-index:1}
.v8hub .story-copy .pkgtag{font-family:var(--font-label);font-size:var(--fs-label);font-weight:700;letter-spacing:.06em;color:var(--gold-light);
  background:rgba(208,165,74,.16);border:1px solid var(--gold-soft);align-self:flex-start;padding:5px 13px;border-radius:100px;margin-bottom:14px}
.v8hub .story-copy h3{font-family:var(--font-display);font-size:2rem;color:var(--cream);line-height:1.1}
.v8hub .story-copy h3 .script{color:var(--gold-light);font-size:1.3em}
.v8hub .story-copy .venue{font-family:var(--font-label);font-size:var(--fs-meta);letter-spacing:.04em;color:rgba(255,250,241,.66);margin:4px 0 14px}
.v8hub .story-copy p{color:rgba(255,250,241,.82);font-weight:300}
.v8hub .story-copy .links{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap}

/* outline buttons used inside story/film copy (dark-glass variant of .btn-out) */
.v8hub .btn-out{border-color:rgba(255,250,241,.45);color:var(--cream);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.v8hub .btn-out:hover{background:rgba(255,250,241,.12);border-color:var(--cream)}
.v8hub .btn-film{border-color:var(--gold-soft);color:var(--gold-light)}
.v8hub .btn-film:hover{background:rgba(208,165,74,.16);border-color:var(--gold-light);color:var(--gold-light)}

/* ============================================================
   PULL QUOTE  (.pull)
   In-flow gold-hairline pull quote for use inside story copy or
   any prose block. Reusable anywhere a short emphasised quote is
   needed on a dark panel.
   ============================================================ */
.v8hub .pull{position:relative;border-left:2px solid var(--gold);padding:4px 0 4px 18px;margin:18px 0 4px;
  font-family:var(--font-display);font-size:var(--fs-body);line-height:1.5;color:var(--cream)}
.v8hub .pull cite{display:block;font-family:var(--font-label);font-style:normal;font-size:var(--fs-meta);letter-spacing:.04em;color:var(--gold-light);margin-top:8px}

/* ============================================================
   FILM CARDS  (.films / .filmcard)
   Image-backed cards with a play chip and a green→ink scrim, soft
   glow on hover. Reusable for any "watch it back" / video grid.
   ============================================================ */
.v8hub .films{padding:80px 0}

/* ============================================================
   LIGHT-BAND — one warm cream section inside the dark theme, for
   contrast and air. Add class "lightband" to any section. Child
   type colours flip to green/dark so they read on cream.
   ============================================================ */
.v8hub .lightband{background:var(--cream,#FFFAF1);color:#20241F;position:relative}
.v8hub .lightband::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(208,165,74,.34),transparent)}
.v8hub .lightband .eyebrow{color:var(--green,#00603A)}
.v8hub .lightband h1,.v8hub .lightband h2,.v8hub .lightband h3{color:var(--green-deep,#003D24)}
.v8hub .lightband p,.v8hub .lightband .lead,.v8hub .lightband .sec-top p{color:#5A5E52}
.v8hub .lightband .script{color:var(--gold-deep,#A8842F)}
.v8hub .films .container{position:relative}
.v8hub .films-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:36px}
.v8hub .filmcard{position:relative;border-radius:18px;overflow:hidden;min-height:300px;display:flex;align-items:flex-end;padding:28px;color:var(--cream);
  border:1px solid var(--rule-light);box-shadow:0 24px 60px -34px rgba(0,0,0,.7);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.v8hub .filmcard .fcbg{position:absolute;inset:0;background-size:cover;background-position:center 30%;transition:.8s var(--ease)}
.v8hub .filmcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 28%,rgba(0,40,24,.9))}
.v8hub .filmcard:hover{transform:translateY(-4px);box-shadow:0 36px 80px -30px rgba(208,165,74,.4)}
.v8hub .filmcard:hover .fcbg{transform:scale(1.06)}
.v8hub .filmcard>*{position:relative;z-index:2}
.v8hub .filmcard .fcplay{position:absolute;top:24px;right:24px;width:50px;height:50px;border-radius:50%;
  border:1.5px solid var(--cream);background:rgba(255,250,241,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  display:flex;align-items:center;justify-content:center;transition:.3s var(--ease)}
.v8hub .filmcard:hover .fcplay{background:var(--gold);border-color:var(--gold)}
.v8hub .filmcard .fcplay svg{width:18px;height:18px;fill:var(--cream);margin-left:2px}
.v8hub .filmcard:hover .fcplay svg{fill:var(--ink)}
.v8hub .filmcard h4{font-family:var(--font-display);font-size:1.5rem;color:var(--cream)}
.v8hub .filmcard .fcmeta{font-family:var(--font-label);font-size:var(--fs-meta);color:rgba(255,250,241,.8);margin-top:4px}

/* ============================================================
   FINAL CTA + ENQUIRY FORM  (.dfinal / .enquiry)
   A centred CTA card over a real photo with a deep scrim, then a
   dark-glass enquiry form card beneath it. The form card itself is
   a frosted glass panel with dark inputs and a gold focus ring, so
   it stays in the dark family rather than dropping a white box in.
   Reusable for any page that ends on a contact form.
   ============================================================ */
.v8hub .dfinal{padding:110px 0;position:relative;overflow:hidden}
.v8hub .dfinal.center{text-align:center}
.v8hub .dfinal .stage{position:absolute;inset:0;background-size:cover;background-position:center 30%;z-index:0}
.v8hub .dfinal::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(15,21,18,.78),rgba(0,40,24,.9)),radial-gradient(60% 50% at 50% 0,rgba(208,165,74,.16),transparent 65%)}
.v8hub .dfinal .container{position:relative;z-index:2}
.v8hub .dfinal .card{max-width:720px;margin:0 auto;color:var(--cream)}
.v8hub .dfinal h2{color:var(--cream)}
.v8hub .dfinal h2 .script{color:var(--gold-light);display:block}
.v8hub .dfinal p{color:rgba(255,250,241,.86);font-weight:300;margin:16px auto 0;max-width:44ch}

/* enquiry form — frosted glass card with dark fields */
.v8hub .enquiry{max-width:720px;margin:30px auto 0;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center}
/* Restore the shared enquiry-form card's own width + padding (the .v8hub *
   reset zeroes its base padding). */
.v8hub .enquiry .enqf{width:100%;max-width:640px;padding:clamp(24px,4vw,44px)}
.v8hub .enquiry .formcard{position:relative;overflow:hidden;border-radius:22px;padding:32px;
  background:var(--glass);border:1px solid var(--glass-brd);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--gshadow)}
.v8hub .enquiry .formcard::before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  background:radial-gradient(circle at 0 0,rgba(255,255,255,.12),transparent 45%),radial-gradient(circle at 100% 100%,rgba(208,165,74,.1),transparent 55%)}
.v8hub .enquiry .formcard>*{position:relative;z-index:1}
.v8hub .enquiry .frow{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.v8hub .enquiry label{display:block;font-family:var(--font-label);font-size:var(--fs-meta);font-weight:500;letter-spacing:.04em;color:rgba(255,250,241,.78);margin-bottom:6px}
.v8hub .enquiry input,.v8hub .enquiry textarea{width:100%;font-family:var(--font-body);font-size:var(--fs-body);color:var(--cream);
  background:rgba(255,250,241,.06);border:1px solid var(--rule-light);border-radius:12px;padding:13px 15px;transition:border-color .2s var(--ease),background .2s var(--ease)}
.v8hub .enquiry input::-moz-placeholder, .v8hub .enquiry textarea::-moz-placeholder{color:rgba(255,250,241,.4)}
.v8hub .enquiry input::placeholder,.v8hub .enquiry textarea::placeholder{color:rgba(255,250,241,.4)}
.v8hub .enquiry input:focus,.v8hub .enquiry textarea:focus{outline:none;border-color:var(--gold);background:rgba(255,250,241,.1)}
/* native date picker indicator stays visible on the dark field */
.v8hub .enquiry input[type="date"]{color-scheme:dark}
.v8hub .enquiry textarea{resize:none;margin-bottom:16px}
.v8hub .enquiry .submit-row{text-align:center}
.v8hub .enquiry .formnote{margin-top:14px;font-family:var(--font-label);font-size:var(--fs-meta);text-align:center}
.v8hub .enquiry .formnote.ok{color:var(--gold-light)}
.v8hub .enquiry .formnote.err{color:#ff9a8f}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:980px){
  .v8hub .dhero,.v8hub .dhero.tall{padding:120px 0 44px;min-height:100vh}
  .v8hub .dhero-in{padding:0 20px}
  .v8hub .content-sec{padding:80px 0}
  .v8hub .content-sec .container:has(> .prose-dark){grid-template-columns:1fr;row-gap:20px}
  .v8hub .content-sec .container:has(> .prose-dark) > .prose-dark{max-width:64ch}
  .v8hub .dtesti{padding:60px 0 40px}
  .v8hub .tfeature{grid-template-columns:1fr;gap:24px;padding:28px}
  .v8hub .tfeature .tf-media{width:100%;aspect-ratio:16/10;max-height:260px}
  .v8hub .tgrid{grid-template-columns:1fr;gap:18px}
  .v8hub .stories{padding:40px 0}
  .v8hub .story,.v8hub .story.flip{grid-template-columns:1fr;gap:16px}
  .v8hub .story.flip .story-media,.v8hub .story-media{order:0;min-height:300px}
  .v8hub .story-media.duo{grid-template-rows:1fr 1fr;min-height:360px}
  .v8hub .story-copy{padding:34px 26px}
  .v8hub .films{padding:60px 0}
  .v8hub .films-grid{grid-template-columns:1fr}
  .v8hub .dfinal{padding:70px 0}
  .v8hub .enquiry .frow{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .v8hub .reveal{opacity:1;transform:none}
  .v8hub *{animation:none!important;transition:none!important}
}

/* Enquiry form submit button: use the site glass border-draw pill, not the
   old solid gold fill. Scoped to the v8hub enquiry forms (Events, FAQ, geo). */
.v8hub .enquiry .enqf-btn{
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none;cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;
  padding:15px 40px !important;border-radius:100px !important;border:1px solid transparent !important;
  background:transparent !important;color:#F0D9A0 !important;width:auto !important;
  font-family:var(--font-label) !important;font-size:var(--fs-meta) !important;letter-spacing:.22em !important;text-transform:uppercase !important;font-weight:700 !important;
  isolation:isolate;transition:color .35s ease,transform .4s cubic-bezier(.22,.61,.36,1),background .25s ease;
}
.v8hub .enquiry .enqf-btn::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;border:1px solid rgba(233,200,126,.6);background:transparent;clip-path:inset(calc(100% - 1px) 22px 0 22px round 100px);-webkit-clip-path:inset(calc(100% - 1px) 22px 0 22px round 100px);transition:clip-path .3s cubic-bezier(.22,.61,.36,1) .18s;z-index:0}
.v8hub .enquiry .enqf-btn::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:calc(100% - 44px);height:1px;background:rgba(233,200,126,.6);pointer-events:none;z-index:1;opacity:1;transition:opacity .12s linear 0s}
.v8hub .enquiry .enqf-btn span{position:relative;z-index:2}
.v8hub .enquiry .enqf-btn:hover:not(:disabled),.v8hub .enquiry .enqf-btn:focus-visible:not(:disabled){color:#FFF5D6 !important;transform:scale(1.015);outline:none;background:linear-gradient(180deg,rgba(233,200,126,.22),rgba(208,165,74,.1)) !important}
.v8hub .enquiry .enqf-btn:hover:not(:disabled)::before,.v8hub .enquiry .enqf-btn:focus-visible:not(:disabled)::before{clip-path:inset(0 0 0 0 round 100px);-webkit-clip-path:inset(0 0 0 0 round 100px);transition-delay:0s}
.v8hub .enquiry .enqf-btn:hover:not(:disabled)::after,.v8hub .enquiry .enqf-btn:focus-visible:not(:disabled)::after{opacity:0;transition-delay:.26s}

/* Centred hero variant: content centred both axes, at the core-page height and
   content width. Shared by the v8hub pages that opt in with .dhero-center
   (Events, FAQ). The plain .dhero (Values) is untouched. */
.v8hub .dhero.dhero-center{align-items:center;justify-content:center;text-align:center;min-height:100vh;padding:130px 0 90px}
.v8hub .dhero.dhero-center .dhero-in{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:1180px}
.v8hub .dhero.dhero-center .dhero-in p{margin-left:auto;margin-right:auto}
