/* ============================================================================
   G Golf Ireland — LIVE FIXES (v2)
   Loaded LAST. Targets the HTML that WordPress actually renders.
   ============================================================================ */

/* ============================================================================
   FLUSH-TOP / FULL-BLEED — kill WP's injected top margins so the hero sits
   flush against the viewport edges (top + sides) on the homepage.
   WP core injects:
     :where(.wp-site-blocks) > * { margin-block-start: 24px; }
     :root :where(.is-layout-constrained) > * { margin-block-start: 24px; }
   These push the <main> down 24px and the hero down another 24px inside main.
   ============================================================================ */
html, body { margin: 0 !important; padding: 0 !important; }

.wp-site-blocks > main,
.wp-site-blocks > .gg-page,
.wp-site-blocks > header,
.wp-site-blocks > * { margin-top: 0 !important; margin-block-start: 0 !important; }

.gg-page,
.gg-home,
.gg-single { padding-top: 0 !important; margin-top: 0 !important; }

/* First child of <main> on the homepage is the hero — it must sit flush. */
.gg-home > .wp-block-cover:first-child,
.gg-home > .gg-hero,
main.gg-home > *:first-child { margin-top: 0 !important; margin-block-start: 0 !important; }

/* Full-bleed for any alignfull block (defensive — should already span). */
.gg-home .alignfull,
.gg-page .alignfull {
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        max-width: 100vw !important;
        width: 100vw !important;
}

/* Hero specifically — guarantee full-width and full-height. */
.gg-hero {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        min-height: 100vh !important;
}

/* ============================================================================
   GLOBAL — section padding, max widths, typography
   ============================================================================ */

.gg-features,
.gg-journey,
.gg-trusted,
.gg-process,
.gg-stories,
.gg-vip-intro,
.gg-vip-conversation,
.gg-partners,
.gg-newsletter,
.gg-final-cta,
.gg-cta {
        padding-left: clamp(20px, 5vw, 80px) !important;
        padding-right: clamp(20px, 5vw, 80px) !important;
}

/* Section title rhythm */
.gg-section__title,
.gg-final-cta__title {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: clamp(36px, 4.5vw, 56px) !important;
        line-height: 1.08 !important;
        font-weight: 300 !important;
        letter-spacing: -0.01em !important;
        margin: 16px auto 48px !important;
        max-width: 880px;
}

/* Eyebrow — consistent gold pretitle */
.gg-eyebrow,
.gg-eyebrow--gold {
        font-family: 'Inter', sans-serif !important;
        font-size: 11px !important;
        font-weight: 500 !important;
        letter-spacing: 0.22em !important;
        text-transform: uppercase !important;
        color: var(--gg-gold) !important;
        margin: 0 0 16px !important;
        display: block;
}
/* Defensive centring — guarantees the eyebrow + section title sit on the
   horizontal centre of any homepage section that renders a centred header. */
.gg-features > .gg-eyebrow,
.gg-features > .has-text-align-center,
.gg-process > .gg-eyebrow,
.gg-process > .has-text-align-center,
.gg-trusted .gg-eyebrow.has-text-align-center,
.gg-trusted .has-text-align-center,
.gg-stories > .gg-eyebrow,
.gg-stories > .has-text-align-center,
.gg-eyebrow.has-text-align-center {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
}

/* ============================================================================
   HERO
   ============================================================================ */
.gg-hero .wp-block-cover__inner-container {
        max-width: 880px;
        text-align: center;
}
.gg-hero__title {
        margin: 0 0 28px !important;
        font-size: clamp(40px, 6.5vw, 84px) !important;
        line-height: 1 !important;
        color: #fff !important;
}
.gg-hero__title em {
        font-style: italic;
        font-weight: 300;
        color: #d9bf85;
}
.gg-hero__subhead {
        max-width: 580px;
        margin: 0 auto 44px !important;
        font-size: 16px;
        line-height: 1.75;
        color: rgba(255,255,255,0.78);
}
.gg-hero__credentials {
        font-size: 11px !important;
        letter-spacing: 0.28em !important;
        text-transform: uppercase !important;
        color: rgba(255,255,255,0.42) !important;
        margin: 36px 0 0 !important;
}

/* ============================================================================
   FORCE GRID on column rows — overrides .is-layout-flex
   ============================================================================ */
.wp-block-columns.gg-features__grid,
.wp-block-columns.gg-features__grid--text {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 56px !important;
        max-width: 1200px;
        margin: 0 auto !important;
}

.wp-block-columns.gg-journey__head {
        display: grid !important;
        grid-template-columns: 1.4fr 1fr;
        gap: 64px !important;
        align-items: end;
        max-width: 1200px;
        margin: 0 auto 56px !important;
}

.wp-block-columns.gg-journey__row {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 24px !important;
        max-width: 1200px;
        margin: 0 auto 24px !important;
}

.wp-block-columns.gg-trusted__grid {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 56px !important;
        max-width: 1200px;
        margin: 0 auto !important;
}

.wp-block-columns.gg-process__row {
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 80px !important;
        max-width: 1200px;
        margin: 0 auto !important;
        align-items: center;
}

.wp-block-columns.gg-stories__head {
        display: grid !important;
        grid-template-columns: 1fr auto;
        gap: 32px !important;
        align-items: end;
        max-width: 1200px;
        margin: 0 auto 56px !important;
}

.wp-block-columns.gg-stories__row {
        display: grid !important;
        grid-template-columns: 1.55fr 1fr;
        gap: 32px !important;
        max-width: 1200px;
        margin: 0 auto !important;
        align-items: start;
}

.wp-block-columns.gg-partners__row,
.wp-block-columns.gg-vip-intro__row {
        display: grid !important;
        gap: 40px !important;
        max-width: 1200px;
        margin: 0 auto !important;
}
.wp-block-columns.gg-partners__row { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wp-block-columns.gg-vip-intro__row { grid-template-columns: 1.4fr 1fr; gap: 64px !important; }

/* Reset WP's injected flex-basis/width on grid children */
.gg-features__grid > .wp-block-column,
.gg-features__grid--text > .wp-block-column,
.gg-journey__head > .wp-block-column,
.gg-journey__row > .wp-block-column,
.gg-trusted__grid > .wp-block-column,
.gg-process__row > .wp-block-column,
.gg-stories__head > .wp-block-column,
.gg-stories__row > .wp-block-column,
.gg-partners__row > .wp-block-column,
.gg-vip-intro__row > .wp-block-column {
        flex-basis: auto !important;
        width: auto !important;
        min-width: 0 !important;
}

/* ============================================================================
   FEATURES — 3-up text cards (the section right under the hero)
   - Subtle off-white background that contrasts with pure cream
   - Small gold "01 / 02 / 03" with a thin gold underline below
   - Horizontal rule separating the columns from anything below
   ============================================================================ */

/* Section background — slightly warmer than pure cream for contrast */
.gg-features {
        background: #f4efe5 !important;          /* warm off-white */
        background-color: #f4efe5 !important;
        position: relative;
        padding-top: 110px !important;
        padding-bottom: 110px !important;
}

/* Horizontal rule beneath the column row */
.gg-features__grid--text,
.gg-features .gg-features__grid {
        position: relative;
        padding-bottom: 56px !important;
}
.gg-features__grid--text::after,
.gg-features .gg-features__grid::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 1px;
        background: rgba(61, 61, 53, 0.14);
}

.gg-feature-card--text {
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        text-align: left;
}

/* Number — smaller, gold, with a thin gold underline beneath */
.gg-feature-card__num {
        font-family: var(--gg-font-sans) !important;
        font-size: 13px !important;
        line-height: 1 !important;
        color: var(--gg-gold) !important;
        font-weight: 500 !important;
        letter-spacing: 0.22em !important;
        text-transform: uppercase !important;
        position: relative !important;
        padding-bottom: 18px !important;
        margin: 0 0 22px !important;
        display: block !important;
}
.gg-feature-card__num::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 36px;
        height: 1px;
        background: var(--gg-gold);
}

.gg-feature-card__title {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 26px !important;
        font-weight: 400 !important;
        margin: 0 0 12px !important;
        color: var(--gg-ink);
}
.gg-feature-card--text > p:not(.gg-feature-card__num) {
        font-size: 15px !important;
        line-height: 1.7 !important;
        color: rgba(61,61,53,0.72) !important;
        margin: 0 !important;
}

/* ============================================================================
   JOURNEY — image cards with title overlay (wp:cover blocks)
   ============================================================================ */
.gg-journey__head h2 {
        text-align: left !important;
        margin: 0 !important;
        max-width: none !important;
}
.gg-journey__head .gg-eyebrow { margin-bottom: 20px !important; }
.gg-journey__head p {
        margin: 0 !important;
        font-size: 16px;
        line-height: 1.7;
        color: rgba(61,61,53,0.7);
}

.gg-journey-card.wp-block-cover,
.gg-journey-card {
        min-height: 380px !important;
        margin: 0 !important;
        overflow: hidden;
        position: relative;
        display: flex !important;
        align-items: flex-end !important;
        justify-content: stretch !important;
}
.gg-journey-card .wp-block-cover__inner-container {
        position: relative;
        z-index: 2;
        padding: 28px !important;
        width: 100%;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-end !important;
        gap: 0 !important;
}
.gg-journey-card .wp-block-cover__inner-container > * {
        margin-block-start: 0 !important;
        margin-block-end: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        width: 100%;
}
.gg-journey-card::after {
        content: "";
        position: absolute; inset: 0;
        background: linear-gradient(to top, rgba(10,35,28,0.92) 0%, rgba(10,35,28,0.35) 45%, transparent 75%);
        z-index: 1;
        pointer-events: none;
}
.gg-journey-card .gg-eyebrow,
.gg-journey-card .gg-journey-card__eyebrow {
        color: var(--gg-gold) !important;
        margin: 0 0 10px !important;
        font-family: 'Inter', sans-serif !important;
        font-size: 10px !important;
        font-weight: 600 !important;
        letter-spacing: 0.22em !important;
        text-transform: uppercase !important;
        line-height: 1 !important;
}
.gg-journey-card h3,
.gg-journey-card .gg-journey-card__title {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 26px !important;
        line-height: 1.15 !important;
        font-weight: 400 !important;
        color: #fff !important;
        margin: 0 0 10px !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
}
.gg-journey-card p:not(.gg-eyebrow):not(.gg-journey-card__more):not(.gg-journey-card__eyebrow) {
        font-size: 13px !important;
        line-height: 1.55 !important;
        color: rgba(255,255,255,0.82) !important;
        margin: 0 0 14px !important;
}
.gg-journey-card .gg-journey-card__more,
.gg-journey-card__more,
.gg-journey-card a {
        font-family: 'Inter', sans-serif !important;
        font-size: 10px !important;
        font-weight: 600 !important;
        letter-spacing: 0.22em !important;
        text-transform: uppercase !important;
        color: var(--gg-gold) !important;
        text-decoration: none !important;
        margin: 0 !important;
        position: static !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
}

/* ============================================================================
   TRUSTED (dark green section)
   ============================================================================ */
.gg-trusted {
        padding-top: 120px !important;
        padding-bottom: 120px !important;
        text-align: center;
}
.gg-trusted .gg-section__title,
.gg-trusted h2,
.gg-trusted h3,
.gg-trusted .wp-block-heading,
.gg-trusted p:not(.gg-eyebrow):not(.gg-traveller-quote__name):not(.gg-traveller-quote__role):not(.gg-trusted__partners-eyebrow):not(.gg-trusted__partners) {
        color: #f5f0e6 !important;
}

/* Hero pull-quote at top of section */
.gg-trusted__hero-quote {
        max-width: 880px !important;
        margin: 24px auto 0 !important;
        text-align: center !important;
}
.gg-trusted__quote-mark {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 96px !important;
        line-height: 0.6 !important;
        color: var(--gg-gold) !important;
        text-align: center !important;
        margin: 32px 0 8px !important;
        font-weight: 400 !important;
        letter-spacing: 0 !important;
}
.gg-trusted__hero-quote .wp-block-quote {
        border: 0 !important;
        padding: 0 !important;
        margin: 0 auto 32px !important;
        background: transparent !important;
        text-align: center !important;
        max-width: 880px !important;
}
.gg-trusted__hero-quote .wp-block-quote p,
.gg-trusted__hero-quote .wp-block-quote .has-text-align-center {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: clamp(24px, 2.6vw, 36px) !important;
        font-style: italic !important;
        font-weight: 300 !important;
        line-height: 1.35 !important;
        color: #f5f0e6 !important;
        margin: 0 auto !important;
        text-align: center !important;
        max-width: 820px !important;
}
.gg-trusted .gg-testimonial__attribution {
        font-family: 'Inter', sans-serif !important;
        font-size: 12px !important;
        letter-spacing: 0.22em !important;
        text-transform: uppercase !important;
        color: var(--gg-gold) !important;
        font-weight: 500 !important;
        margin: 0 !important;
}
.gg-trusted .gg-testimonial__role {
        font-family: 'Inter', sans-serif !important;
        font-size: 11px !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
        color: rgba(245,240,230,0.55) !important;
        margin: 8px 0 0 !important;
}

/* 3-up traveller quotes */
.gg-traveller-quote {
        text-align: left;
        padding: 0 !important;
}
.gg-traveller-quote__mark {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 80px !important;
        line-height: 0.5 !important;
        color: var(--gg-gold) !important;
        margin: 0 0 24px !important;
        height: 32px;
}
.gg-traveller-quote > p:not(.gg-traveller-quote__mark):not(.gg-traveller-quote__name):not(.gg-traveller-quote__role) {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 19px !important;
        font-style: italic !important;
        line-height: 1.55 !important;
        color: rgba(245,240,230,0.92) !important;
        margin: 0 0 28px !important;
}
.gg-traveller-quote__name {
        font-family: 'Inter', sans-serif !important;
        font-size: 12px !important;
        letter-spacing: 0.16em !important;
        text-transform: uppercase !important;
        color: var(--gg-gold) !important;
        font-weight: 500 !important;
        margin: 0 !important;
}
.gg-traveller-quote__role {
        font-family: 'Inter', sans-serif !important;
        font-size: 11px !important;
        color: rgba(245,240,230,0.55) !important;
        margin: 6px 0 0 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
}

/* Partners tagline */
.gg-trusted__partners-eyebrow {
        font-size: 10px !important;
        letter-spacing: 0.28em !important;
        color: rgba(245,240,230,0.45) !important;
        margin: 0 0 8px !important;
}
.gg-trusted__partners {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 18px !important;
        letter-spacing: 0.14em !important;
        color: rgba(245,240,230,0.85) !important;
        margin: 0 !important;
}

/* ============================================================================
   PROCESS — image left + 4 steps right
   ============================================================================ */
.gg-process { padding-top: 120px !important; padding-bottom: 120px !important; }
.gg-process .gg-section__title { margin-bottom: 64px !important; }

.gg-process__img figure { margin: 0 !important; }
.gg-process__img img {
        width: 100% !important;
        height: auto;
        aspect-ratio: 4 / 5;
        object-fit: cover;
        display: block;
}

.gg-process-step {
        padding: 28px 0 !important;
        border-bottom: 1px solid rgba(61,61,53,0.12);
        margin: 0 !important;
}
.gg-process-step:last-of-type { border-bottom: 0; }

.gg-process-step__title {
        display: flex !important;
        align-items: baseline;
        gap: 16px !important;
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 26px !important;
        line-height: 1.2 !important;
        font-weight: 400 !important;
        color: var(--gg-ink) !important;
        margin: 0 0 10px !important;
}
/* Style the inline <span>+</span> from the markup, not a duplicate ::before */
.gg-process-step__title::before { content: none !important; }
.gg-process-step__title span {
        color: var(--gg-gold) !important;
        font-size: 28px;
        font-weight: 300;
        line-height: 1;
        flex-shrink: 0;
}
.gg-process-step p {
        margin: 0 0 0 32px !important;
        font-size: 15px !important;
        line-height: 1.7 !important;
        color: rgba(61,61,53,0.7) !important;
}

/* ============================================================================
   STORIES — editorial card layout (image stacked, text below)
   ============================================================================ */
.gg-stories { padding-top: 120px !important; padding-bottom: 120px !important; }
.gg-stories__head h2 {
        text-align: left !important;
        margin: 0 !important;
        max-width: none !important;
}
.gg-stories__head .gg-eyebrow { margin-bottom: 16px !important; }
.gg-stories__view-all {
        font-family: 'Inter', sans-serif !important;
        font-size: 11px !important;
        letter-spacing: 0.22em !important;
        text-transform: uppercase !important;
        margin: 0 !important;
}
.gg-stories__view-all a {
        color: var(--gg-gold) !important;
        text-decoration: none !important;
}

/* Card-wrapping link (dynamic posts): make whole card clickable, no underline */
.gg-story-card__link,
a.gg-story-card__link {
        display: block;
        color: inherit !important;
        text-decoration: none !important;
}
a.gg-story-card--side {
        color: inherit !important;
        text-decoration: none !important;
}
.gg-story-card__link:hover .gg-story-card__title,
a.gg-story-card--side:hover .gg-story-card__title {
        color: var(--gg-gold) !important;
}

/* Featured (large, left) story card */
.gg-story-card--feature {
        padding: 0 !important;
        background: transparent !important;
}
.gg-story-card--feature::after { content: none !important; }
.gg-story-card--feature .gg-story-card__title,
.gg-story-card--feature p {
        color: var(--gg-ink) !important;
}
.gg-story-card--feature .gg-story-card__meta {
        color: var(--gg-gold) !important;
}
.gg-story-card--feature .gg-story-card__link { display: block !important; }
.gg-story-card--feature .gg-story-card__img,
.gg-story-card--feature figure.wp-block-image {
        margin: 0 0 24px !important;
        overflow: hidden;
        aspect-ratio: 16 / 10 !important;
        width: 100% !important;
        max-height: 460px;
        display: block;
}
.gg-story-card--feature .gg-story-card__img img,
.gg-story-card--feature figure.wp-block-image img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
        display: block;
        transition: transform 0.6s ease;
}
.gg-story-card--feature:hover .gg-story-card__img img { transform: scale(1.04); }

.gg-story-card--feature .gg-eyebrow { margin-bottom: 12px !important; }
.gg-story-card--feature .gg-story-card__title,
.gg-story-card--feature h3 {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 32px !important;
        line-height: 1.18 !important;
        font-weight: 400 !important;
        color: var(--gg-ink) !important;
        margin: 0 0 14px !important;
        position: static !important;
}
.gg-story-card--feature p:not(.gg-eyebrow):not(.gg-story-card__meta),
.gg-story-card--feature .gg-story-card__link > p:not(.gg-eyebrow):not(.gg-story-card__meta) {
        font-size: 15px !important;
        line-height: 1.7 !important;
        color: rgba(61,61,53,0.72) !important;
        margin: 0 0 16px !important;
        font-family: 'Inter', sans-serif !important;
        font-weight: 300 !important;
}
.gg-story-card__meta {
        font-family: 'Inter', sans-serif !important;
        font-size: 11px !important;
        font-weight: 600 !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
        color: var(--gg-gold) !important;
        margin: 0 !important;
}

/* Sidebar — vertical stack of side cards */
.gg-stories__sidebar {
        display: flex !important;
        flex-direction: column;
        gap: 28px !important;
}

/* Side cards: image-left + text-right, rendered via inner core/columns */
.gg-story-card--side {
        display: grid !important;
        grid-template-columns: 130px 1fr !important;
        gap: 18px !important;
        align-items: start;
        padding: 0 !important;
        position: static !important;
        aspect-ratio: auto !important;
        background: transparent !important;
}
.gg-story-card--side::after { content: none !important; }
.gg-story-card--side > .wp-block-column {
        flex-basis: auto !important;
        width: auto !important;
}
.gg-story-card--side .gg-story-card__img,
.gg-story-card--side figure.wp-block-image {
        margin: 0 !important;
        aspect-ratio: 1 / 1;
        overflow: hidden;
}
.gg-story-card--side .gg-story-card__img img,
.gg-story-card--side figure.wp-block-image img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover;
}
.gg-story-card--side .gg-eyebrow {
        font-size: 9px !important;
        letter-spacing: 0.2em !important;
        margin: 0 0 8px !important;
}
.gg-story-card--side .gg-story-card__title,
.gg-story-card--side h3,
.gg-story-card--side h4 {
        font-family: 'Cormorant Garamond', Georgia, serif !important;
        font-size: 18px !important;
        line-height: 1.25 !important;
        font-weight: 400 !important;
        color: var(--gg-ink) !important;
        margin: 0 0 6px !important;
        position: static !important;
}
.gg-story-card--side p:not(.gg-eyebrow):not(.gg-story-card__meta) {
        font-size: 13px !important;
        line-height: 1.55 !important;
        color: rgba(61,61,53,0.65) !important;
        margin: 0 0 8px !important;
}
.gg-story-card--side .gg-story-card__meta {
        font-size: 9px !important;
        letter-spacing: 0.18em !important;
}

/* ============================================================================
   FINAL CTA (dark cover)
   ============================================================================ */
.gg-final-cta { min-height: 60vh !important; }
.gg-final-cta .wp-block-cover__inner-container {
        max-width: 780px;
        text-align: center;
}
.gg-final-cta__title {
        color: #fff !important;
        margin: 16px auto 24px !important;
}
.gg-final-cta__sub {
        color: rgba(255,255,255,0.78) !important;
        font-size: 16px;
        line-height: 1.7;
        margin: 0 auto 36px !important;
        max-width: 580px;
}
.gg-final-cta__contact {
        margin: 32px 0 0 !important;
        font-size: 11px;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: rgba(255,255,255,0.55) !important;
}
.gg-final-cta__contact a {
        color: var(--gg-gold) !important;
        text-decoration: none;
}

/* Ghost button override on dark covers */
.gg-final-cta .wp-block-button.is-style-ghost-light .wp-block-button__link,
.gg-hero .wp-block-button.is-style-ghost-light .wp-block-button__link {
        background: transparent !important;
        border: 1px solid rgba(255,255,255,0.6) !important;
        color: #fff !important;
        padding: 16px 36px !important;
        border-radius: 0 !important;
}
.gg-final-cta .wp-block-button.is-style-ghost-light .wp-block-button__link:hover,
.gg-hero .wp-block-button.is-style-ghost-light .wp-block-button__link:hover {
        background: var(--gg-gold) !important;
        border-color: var(--gg-gold) !important;
        color: var(--gg-deep) !important;
}

/* Play button (▶ WATCH OUR STORY) */
.gg-btn--play .wp-block-button__link,
.is-style-play .wp-block-button__link {
        background: transparent !important;
        border: 0 !important;
        color: rgba(255,255,255,0.85) !important;
        padding: 16px 24px !important;
        font-size: 11px !important;
        letter-spacing: 0.22em !important;
}
.gg-btn--play .wp-block-button__link:hover,
.is-style-play .wp-block-button__link:hover {
        color: var(--gg-gold) !important;
        background: transparent !important;
}

/* ============================================================================
   MOBILE
   ============================================================================ */
@media (max-width: 781px) {
        .wp-block-columns.gg-features__grid,
        .wp-block-columns.gg-features__grid--text,
        .wp-block-columns.gg-journey__head,
        .wp-block-columns.gg-journey__row,
        .wp-block-columns.gg-trusted__grid,
        .wp-block-columns.gg-process__row,
        .wp-block-columns.gg-stories__head,
        .wp-block-columns.gg-stories__row,
        .wp-block-columns.gg-partners__row,
        .wp-block-columns.gg-vip-intro__row {
                grid-template-columns: 1fr !important;
                gap: 32px !important;
        }
        .gg-stories__head { text-align: left; }
        .gg-stories__view-all { text-align: left !important; }
        .gg-story-card--side {
                grid-template-columns: 100px 1fr !important;
                gap: 14px !important;
        }
        .gg-process-step p { margin-left: 0 !important; }
        .gg-trusted, .gg-process, .gg-stories, .gg-features {
                padding-top: 80px !important;
                padding-bottom: 80px !important;
        }
}
@media (max-width: 600px) {
        .gg-section__title, .gg-final-cta__title { font-size: 32px !important; }
        .gg-hero__title { font-size: 42px !important; }
}

/* ============================================================================
   HERO — "WATCH OUR STORY" play button (matches design sample)
   Circular outlined play icon + uppercase letterspaced label, NO rectangle.
   Overrides the older .gg-btn--play border treatment above.
   ============================================================================ */

/* Kill the wrapping rectangle/border from earlier .gg-btn--play rules */
.gg-hero .gg-btn--play,
.gg-hero .is-style-play,
.gg-hero .wp-block-button.is-style-play {
        background: transparent !important;
        border: 0 !important;
        padding: 0 !important;
}

/* The link itself: flat, transparent, just icon + label inline */
.gg-hero .gg-btn--play .wp-block-button__link,
.gg-hero .is-style-play .wp-block-button__link {
        background: transparent !important;
        background-color: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        padding: 14px 8px !important;
        color: #fafaf6 !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 14px !important;
        font-family: var(--gg-font-sans) !important;
        font-size: 0.78rem !important;
        font-weight: 500 !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
        text-decoration: none !important;
        width: auto !important;
        height: auto !important;
        transition: opacity 0.25s ease !important;
}

.gg-hero .gg-btn--play .wp-block-button__link:hover,
.gg-hero .is-style-play .wp-block-button__link:hover {
        opacity: 0.78 !important;
        background: transparent !important;
        color: #fafaf6 !important;
}

/* Circular outlined play icon (CSS-drawn triangle inside) */
.gg-play-icon {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 38px !important;
        height: 38px !important;
        border-radius: 50% !important;
        border: 1.5px solid rgba(250, 250, 246, 0.9) !important;
        background: transparent !important;
        flex-shrink: 0 !important;
        transition: background 0.25s ease, border-color 0.25s ease !important;
}

.gg-play-icon::before {
        content: "" !important;
        display: block !important;
        width: 0 !important;
        height: 0 !important;
        border-style: solid !important;
        border-width: 5px 0 5px 8px !important;
        border-color: transparent transparent transparent #fafaf6 !important;
        margin-left: 2px !important;
}

.gg-hero .gg-btn--play .wp-block-button__link:hover .gg-play-icon {
        background: rgba(250, 250, 246, 0.12) !important;
        border-color: #fafaf6 !important;
}

.gg-play-label {
        display: inline-block !important;
        line-height: 1 !important;
}

/* Hide any stray emoji <img> WordPress might still inject */
.gg-hero .gg-btn--play img.emoji,
.gg-hero .is-style-play img.emoji,
.gg-hero .wp-block-button__link img.emoji { display: none !important; }
