/*
Theme Name:   Women Rise Africa
Theme URI:    https://example.com
Description:  Standalone theme for Women Rise Africa, built for Elementor HTML widgets.
Author:       Muse Sayid Ahmed
Version:      1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain:  wra
*/

/* ==========================================================
   1. DESIGN TOKENS (laga soo qaaday Lovable styles.css)
   ========================================================== */
:root {
  --radius: 0.5rem;

  --background: oklch(0.986 0.008 85);
  --foreground: oklch(0.28 0.055 48);
  --card: oklch(1 0 0);

  --primary: oklch(0.36 0.075 48);            /* deep warm brown */
  --primary-foreground: oklch(0.98 0.01 85);
  --secondary: oklch(0.94 0.021 84);
  --secondary-foreground: oklch(0.32 0.065 48);
  --muted: oklch(0.955 0.015 85);
  --muted-foreground: oklch(0.52 0.035 55);
  --accent: oklch(0.93 0.028 82);

  --gold: oklch(0.72 0.125 79);               /* elegant gold */
  --gold-soft: oklch(0.85 0.075 85);
  --gold-foreground: oklch(0.26 0.06 48);

  --cream: oklch(0.975 0.014 85);
  --beige: oklch(0.925 0.026 83);

  --espresso: oklch(0.235 0.045 45);          /* dramatic sections */
  --espresso-foreground: oklch(0.97 0.012 85);

  --border: oklch(0.89 0.022 82);
  --input: oklch(0.89 0.022 82);
  --ring: oklch(0.72 0.125 79);

  --shadow-soft: 0 1px 2px oklch(0.28 0.055 48 / 0.04), 0 12px 32px -12px oklch(0.28 0.055 48 / 0.14);
  --shadow-lift: 0 2px 4px oklch(0.28 0.055 48 / 0.05), 0 28px 60px -24px oklch(0.28 0.055 48 / 0.28);
  --gradient-espresso: linear-gradient(180deg,
    oklch(0.235 0.045 45 / 0.92) 0%,
    oklch(0.19 0.04 42 / 0.72) 55%,
    oklch(0.19 0.04 42 / 0.94) 100%);
  --gradient-gold: linear-gradient(100deg, var(--gold-soft), var(--gold));

  --font-display: "Fraunces", Georgia, serif;
  --font-sans: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;

  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --header-h: 78px;
}

/* ==========================================================
   2. RESET & BASE
   ========================================================== */
*, *::before, *::after { box-sizing: border-box; border-color: var(--border); }
html { scroll-behavior: smooth; -webkit-tap-highlight-color: transparent; }
body {
  margin: 0;
  background-color: var(--background);
  color: var(--foreground);
  font-family: var(--font-sans);
  font-size: 1rem;
  line-height: 1.6;
  font-synthesis-weight: none;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
h1, h2, h3, h4 {
  font-family: var(--font-display);
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.04;
  margin: 0;
}
p { margin: 0; }
::selection { background: var(--gold-soft); color: var(--gold-foreground); }

.screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px); white-space: nowrap;
}
.wra-skip {
  position: absolute; left: -9999px; top: 0; z-index: 1000;
  background: var(--gold); color: var(--gold-foreground);
  padding: .75rem 1rem; font-weight: 600; text-decoration: none;
}
.wra-skip:focus { left: 1rem; top: 1rem; }

/* ==========================================================
   3. TYPOGRAPHY SCALE
   ========================================================== */
.wra-display-hero { font-family: var(--font-display); font-size: clamp(2.6rem, 7.2vw, 6rem); line-height: .98; letter-spacing: -.03em; }
.wra-display-xl   { font-family: var(--font-display); font-size: clamp(2.1rem, 4.6vw, 4rem); line-height: 1.04; letter-spacing: -.025em; }
.wra-display-lg   { font-family: var(--font-display); font-size: clamp(1.65rem, 3.1vw, 2.6rem); line-height: 1.12; letter-spacing: -.02em; }
.wra-display-md   { font-family: var(--font-display); font-size: clamp(1.3rem, 2vw, 1.7rem); line-height: 1.2; letter-spacing: -.015em; }
.wra-body-lg      { font-size: clamp(1.02rem, 1.25vw, 1.2rem); line-height: 1.68; }
.wra-eyebrow      { font-size: .72rem; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; }
.wra-text-gold {
  background: var(--gradient-gold);
  -webkit-background-clip: text; background-clip: text;
  color: transparent;
}

/* ==========================================================
   4. LAYOUT & DECORATION
   ========================================================== */
.wra-shell {
  width: 100%; max-width: 82rem; margin-inline: auto;
  padding-inline: 1.25rem;
}
@media (min-width: 48rem) { .wra-shell { padding-inline: 2.5rem; } }
@media (min-width: 80rem) { .wra-shell { padding-inline: 3.5rem; } }

.wra-section-y { padding-block: clamp(3.75rem, 8vw, 8rem); }

.wra-rule-gold {
  display: block; height: 1px; width: 100%;
  background: linear-gradient(90deg, var(--gold) 0%,
    color-mix(in oklab, var(--gold) 35%, transparent) 55%, transparent 100%);
}
.wra-card-soft {
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: calc(var(--radius) + 8px);
  box-shadow: var(--shadow-soft);
  transition: transform .5s var(--ease-out), box-shadow .5s var(--ease-out), border-color .4s ease;
}
.wra-card-soft:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-lift);
  border-color: color-mix(in oklab, var(--gold) 55%, transparent);
}
.wra-overlay-espresso { background: var(--gradient-espresso); }
.wra-pattern-geo {
  background-image: radial-gradient(circle at 1px 1px,
    color-mix(in oklab, var(--gold) 45%, transparent) 1px, transparent 0);
  background-size: 22px 22px;
}
.wra-media-frame { position: relative; overflow: hidden; background: var(--beige); }
.wra-media-frame img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.1s var(--ease-out); }
.wra-media-frame:hover img { transform: scale(1.045); }

/* ==========================================================
   5. BUTTONS
   ========================================================== */
a.wra-btn, button.wra-btn, .wra-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .55rem;
  border-radius: 999px;
  font-family: var(--font-sans); font-size: .9rem; font-weight: 600; letter-spacing: .01em; line-height: 1;
  padding: .95rem 1.6rem; min-height: 2.9rem;
  text-decoration: none; cursor: pointer;
  border: 1px solid transparent;
  transition: background-color .35s ease, color .35s ease, border-color .35s ease, transform .35s ease, box-shadow .35s ease;
}
.wra-btn:hover { transform: translateY(-2px); }
.wra-btn:focus-visible { outline: 2px solid var(--ring); outline-offset: 3px; }

.wra-btn--primary { background: var(--primary); color: var(--primary-foreground); border-color: var(--primary); }
.wra-btn--primary:hover { background: var(--espresso); border-color: var(--espresso); color: var(--primary-foreground); box-shadow: var(--shadow-soft); }

.wra-btn--gold { background: var(--gold); color: var(--gold-foreground); border-color: var(--gold); }
.wra-btn--gold:hover { background: var(--gold-soft); border-color: var(--gold-soft); color: var(--gold-foreground); }

.wra-btn--outline { background: transparent; color: var(--foreground); border-color: color-mix(in oklab, var(--foreground) 28%, transparent); }
.wra-btn--outline:hover { border-color: var(--gold); color: var(--gold-foreground); background: color-mix(in oklab, var(--gold) 14%, transparent); }

.wra-btn--on-dark { background: transparent; color: var(--espresso-foreground); border-color: color-mix(in oklab, var(--espresso-foreground) 45%, transparent); }
.wra-btn--on-dark:hover { background: var(--espresso-foreground); color: var(--espresso); border-color: var(--espresso-foreground); }

/* ==========================================================
   6. FORMS
   ========================================================== */
.wra-field {
  width: 100%; background: var(--card);
  border: 1px solid var(--input); border-radius: var(--radius);
  padding: .85rem 1rem; font: inherit; font-size: .95rem; color: var(--foreground);
  transition: border-color .3s ease, box-shadow .3s ease;
}
.wra-field::placeholder { color: color-mix(in oklab, var(--muted-foreground) 85%, transparent); }
.wra-field:focus { outline: none; border-color: var(--gold); box-shadow: 0 0 0 3px color-mix(in oklab, var(--gold) 22%, transparent); }
.wra-field-label {
  display: block; font-size: .78rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
  color: var(--muted-foreground); margin-bottom: .45rem;
}

/* ==========================================================
   7. SHARED COMPONENTS (Eyebrow, ArrowLink, dots, chips)
   ========================================================== */
.wra-eyebrow-line { display: flex; align-items: center; gap: .75rem; color: var(--muted-foreground); }
.wra-eyebrow-line::before { content: ""; display: inline-block; width: 2rem; height: 1px; background: var(--gold); flex-shrink: 0; }
.wra-eyebrow-line--dark { color: var(--gold); }
.wra-eyebrow-line--center { justify-content: center; }

.wra-arrow-link {
  display: inline-flex; align-items: center; gap: .5rem;
  font-size: .875rem; font-weight: 600; color: var(--primary); text-decoration: none;
}
.wra-arrow-link--dark { color: var(--gold); }
.wra-arrow-link__text { border-bottom: 1px solid transparent; padding-bottom: .125rem; transition: border-color .3s ease; }
.wra-arrow-link__arrow { transition: transform .3s ease; }
.wra-arrow-link:hover .wra-arrow-link__text { border-bottom-color: var(--gold); }
.wra-arrow-link:hover .wra-arrow-link__arrow { transform: translateX(.375rem); }

.wra-dot { display: inline-block; width: .375rem; height: .375rem; border-radius: 50%; background: var(--gold); flex-shrink: 0; }

/* Section header (SectionHeader component) */
.wra-sh { max-width: 48rem; }
.wra-sh--center { margin-inline: auto; text-align: center; }
.wra-sh__title { margin-top: 1.25rem; color: var(--primary); }
.wra-sh__lead  { margin-top: 1.25rem; color: var(--muted-foreground); }
.wra-sh--dark .wra-sh__title { color: var(--espresso-foreground); }
.wra-sh--dark .wra-sh__lead  { color: color-mix(in oklab, var(--espresso-foreground) 75%, transparent); }

/* Anchor links: ka hor tag header-ka fixed-ka ah */
[id] { scroll-margin-top: 6rem; }

/* Form card (Join, Contact, Partner) */
.wra-form {
  display: grid; gap: 1.25rem;
  padding: 1.75rem;
  border: 1px solid var(--border); border-radius: 1.5rem;
  background: var(--card); box-shadow: var(--shadow-soft);
}
@media (min-width: 40rem) { .wra-form { padding: 2.25rem; } }
.wra-form__row { display: grid; gap: 1.25rem; }
@media (min-width: 40rem) { .wra-form__row { grid-template-columns: 1fr 1fr; } }
.wra-form textarea.wra-field { resize: vertical; min-height: 7rem; }
select.wra-field {
  appearance: none; -webkit-appearance: none;
  padding-right: 2.75rem; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23704a2d' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 1rem center;
}
.wra-form__submit { justify-self: stretch; }
@media (min-width: 40rem) { .wra-form__submit { justify-self: start; } }
.wra-form__note { min-height: 1.25rem; font-size: .875rem; color: var(--muted-foreground); }
.wra-form__note.is-ok { color: var(--primary); font-weight: 500; }
.wra-form__note.is-error { color: oklch(0.5 0.16 30); font-weight: 500; }
.wra-form__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.wra-required { color: var(--gold); }

/* ==========================================================
   8. MOTION (reveal + marquee)
   Isticmaal: class="wra-reveal" style="transition-delay:140ms"
   ========================================================== */
.js .wra-reveal {
  opacity: 0; transform: translateY(26px);
  transition-property: opacity, transform;
  transition-duration: .9s;
  transition-timing-function: var(--ease-out);
}
.js .wra-reveal.is-in { opacity: 1; transform: none; }
/* Elementor editor-ka dhexdiisa had iyo jeer muuji */
.elementor-editor-active .wra-reveal { opacity: 1 !important; transform: none !important; }

.wra-marquee-track { display: flex; width: max-content; animation: wra-marquee 38s linear infinite; }
@keyframes wra-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ==========================================================
   9. HEADER (fixed, transparent ilaa scroll)
   ========================================================== */
.wra-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 50;
  background: transparent;
  border-bottom: 1px solid transparent;
  transition: background-color .5s ease, border-color .5s ease, backdrop-filter .5s ease;
}
.wra-header.is-scrolled, .wra-header.is-open {
  background: color-mix(in oklab, var(--background) 92%, transparent);
  border-bottom-color: color-mix(in oklab, var(--border) 70%, transparent);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
.admin-bar .wra-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .wra-header { top: 46px; } }

.wra-header__inner {
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  padding-block: 1.25rem;
  transition: padding .5s ease;
}
.wra-header.is-scrolled .wra-header__inner { padding-block: .75rem; }

.wra-logo { display: inline-flex; align-items: center; flex-shrink: 0; text-decoration: none; }
.wra-logo__img { width: auto; height: 2.75rem; transition: height .5s ease; }
@media (min-width: 48rem) { .wra-logo__img { height: 3.5rem; } }
.wra-header.is-scrolled .wra-logo__img { height: 2.25rem; }
.wra-logo__text { font-family: var(--font-display); font-size: 1.35rem; color: var(--primary); letter-spacing: -.02em; }

.wra-nav { display: none; align-items: center; gap: 1.75rem; }
.wra-nav a {
  position: relative; font-size: .875rem; font-weight: 500; text-decoration: none;
  color: var(--muted-foreground); transition: color .3s ease;
}
.wra-nav a::after {
  content: ""; position: absolute; left: 0; bottom: -.375rem; height: 1px; width: 0;
  background: var(--gold); transition: width .3s ease;
}
.wra-nav a:hover, .wra-nav a[aria-current="page"] { color: var(--primary); }
.wra-nav a:hover::after, .wra-nav a[aria-current="page"]::after { width: 100%; }

.wra-header__actions { display: none; align-items: center; gap: .75rem; }
.wra-header__actions .wra-btn { padding: .625rem 1.25rem; font-size: .82rem; min-height: 0; }

.wra-burger {
  position: relative; z-index: 50;
  display: flex; align-items: center; justify-content: center;
  width: 2.75rem; height: 2.75rem; padding: 0;
  border: 1px solid var(--border); border-radius: 50%; background: var(--card); cursor: pointer;
}
.wra-burger__icon { position: relative; display: block; width: 1.25rem; height: .75rem; }
.wra-burger__icon span {
  position: absolute; left: 0; width: 1.25rem; height: 1px; background: var(--primary);
  transition: top .3s ease, transform .3s ease;
}
.wra-burger__icon span:first-child { top: 0; }
.wra-burger__icon span:last-child  { top: .75rem; }
.wra-burger[aria-expanded="true"] .wra-burger__icon span:first-child { top: .375rem; transform: rotate(45deg); }
.wra-burger[aria-expanded="true"] .wra-burger__icon span:last-child  { top: .375rem; transform: rotate(-45deg); }
.wra-burger:focus-visible { outline: 2px solid var(--ring); outline-offset: 3px; }

@media (min-width: 64rem) {
  .wra-nav, .wra-header__actions { display: flex; }
  .wra-burger { display: none; }
}

/* Mobile menu (full screen) */
.wra-mobile-menu {
  position: fixed; inset: 0; z-index: 40;
  display: flex; flex-direction: column;
  background: var(--background);
  opacity: 0; transform: translateY(-.75rem); pointer-events: none;
  transition: opacity .5s ease, transform .5s ease;
}
.wra-mobile-menu.is-open { opacity: 1; transform: none; pointer-events: auto; }
.wra-mobile-menu__inner { display: flex; flex-direction: column; justify-content: center; flex-grow: 1; padding-block: 6rem 3rem; overflow-y: auto; }
.wra-mobile-menu__nav { display: flex; flex-direction: column; gap: .25rem; }
.wra-mobile-menu__nav a {
  font-family: var(--font-display); font-size: clamp(1.3rem, 2vw, 1.7rem); line-height: 1.2; letter-spacing: -.015em;
  color: var(--primary); text-decoration: none;
  padding-block: 1rem;
  border-bottom: 1px solid color-mix(in oklab, var(--border) 70%, transparent);
  opacity: 0; transform: translateY(.75rem);
  transition: opacity .5s ease, transform .5s ease;
}
.wra-mobile-menu.is-open .wra-mobile-menu__nav a { opacity: 1; transform: none; }
.wra-mobile-menu__nav a[aria-current="page"] { color: var(--gold); }
.wra-mobile-menu__actions { display: flex; flex-direction: column; gap: .75rem; margin-top: 2.25rem; }
.wra-mobile-menu__actions .wra-btn { width: 100%; }
.wra-mobile-menu__statement { margin-top: 2.5rem; color: var(--muted-foreground); }
@media (min-width: 64rem) { .wra-mobile-menu { display: none; } }
body.wra-menu-open { overflow: hidden; }

/* Header on dark page hero (bogagga gudaha) — kahor scroll */
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-nav a { color: color-mix(in oklab, var(--espresso-foreground) 75%, transparent); }
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-nav a:hover,
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-nav a[aria-current="page"] { color: var(--espresso-foreground); }
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-header__actions .wra-btn--outline {
  color: var(--espresso-foreground);
  border-color: color-mix(in oklab, var(--espresso-foreground) 45%, transparent);
}
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-header__actions .wra-btn--outline:hover {
  background: var(--espresso-foreground); color: var(--espresso); border-color: var(--espresso-foreground);
}
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-header__actions .wra-btn--primary {
  background: var(--gold); border-color: var(--gold); color: var(--gold-foreground);
}
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-header__actions .wra-btn--primary:hover {
  background: var(--gold-soft); border-color: var(--gold-soft);
}
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-logo {
  padding: .35rem .6rem; border-radius: calc(var(--radius) - 2px); background: var(--espresso-foreground);
}
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-logo .wra-logo__img { height: 2.25rem; }
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-burger {
  background: transparent; border-color: color-mix(in oklab, var(--espresso-foreground) 35%, transparent);
}
.wra-header.is-on-dark:not(.is-scrolled):not(.is-open) .wra-burger__icon span { background: var(--espresso-foreground); }

/* ==========================================================
   9b. PAGE HERO (bogagga gudaha) + CLOSING CTA — la wadaago
   ========================================================== */
.wra-page-hero { position: relative; isolation: isolate; overflow: hidden; background: var(--espresso); }
.wra-page-hero__img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; opacity: .6; }
.wra-page-hero__overlay { position: absolute; inset: 0; z-index: -1; }
.wra-page-hero__inner { padding-block: 8rem 4rem; }
@media (min-width: 48rem) { .wra-page-hero__inner { padding-block: 11rem 6rem; } }

.wra-crumbs { font-size: .75rem; letter-spacing: .18em; text-transform: uppercase; }
.wra-crumbs ol {
  display: flex; flex-wrap: wrap; align-items: center; gap: .5rem;
  list-style: none; margin: 0; padding: 0;
  color: color-mix(in oklab, var(--espresso-foreground) 60%, transparent);
}
.wra-crumbs a { color: inherit; text-decoration: none; transition: color .3s ease; }
.wra-crumbs a:hover { color: var(--gold); }
.wra-crumbs [aria-current="page"] { color: var(--gold); }

.wra-page-hero__content { margin-top: 2rem; max-width: 56rem; }
.wra-page-hero__title { margin-top: 1.5rem; color: var(--espresso-foreground); }
.wra-page-hero__lead { margin-top: 1.75rem; max-width: 42rem; color: color-mix(in oklab, var(--espresso-foreground) 80%, transparent); }

.wra-cta { position: relative; isolation: isolate; overflow: hidden; background: var(--espresso); }
.wra-cta__img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; opacity: .45; }
.wra-cta__overlay { position: absolute; inset: 0; z-index: -1; }
.wra-cta__content { max-width: 48rem; margin-inline: auto; text-align: center; }
.wra-cta__title { margin-top: 1.5rem; color: var(--espresso-foreground); }
.wra-cta__title span { color: var(--gold); }
.wra-cta__lead { margin-top: 1.5rem; color: color-mix(in oklab, var(--espresso-foreground) 78%, transparent); }
.wra-cta__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; margin-top: 2.5rem; }
@media (max-width: 40rem) { .wra-cta__actions .wra-btn { width: 100%; } }

/* Kaarka lambarka leh + liiska network-ga (About, Home) */
.wra-beige-section { background: color-mix(in oklab, var(--beige) 60%, var(--background)); }

/* ==========================================================
   10. FOOTER
   ========================================================== */
.wra-footer { background: var(--espresso); color: var(--espresso-foreground); }
.wra-footer__wrap { padding-block: 4rem 2.5rem; }
@media (min-width: 48rem) { .wra-footer__wrap { padding-top: 5rem; } }

.wra-footer__grid { display: grid; gap: 3rem; }
@media (min-width: 40rem) { .wra-footer__grid { grid-template-columns: 1fr 1fr; } .wra-footer__brand { grid-column: 1 / -1; } }
@media (min-width: 64rem) { .wra-footer__grid { grid-template-columns: 1.3fr 1fr 1fr 1.2fr; } .wra-footer__brand { grid-column: auto; } }

.wra-footer__logo {
  display: inline-flex; padding: .75rem 1rem;
  border-radius: calc(var(--radius) - 2px); background: var(--espresso-foreground);
}
.wra-footer__logo img { height: 2.5rem; width: auto; }
.wra-footer__logo .wra-logo__text { font-size: 1.1rem; }
.wra-footer__tagline { margin-top: 1.5rem; color: var(--gold); }
.wra-footer__intro {
  margin-top: 1rem; max-width: 24rem; font-size: .875rem; line-height: 1.625;
  color: color-mix(in oklab, var(--espresso-foreground) 70%, transparent);
}

.wra-footer__heading { color: var(--gold); margin: 0; }
.wra-footer__list { list-style: none; margin: 1.25rem 0 0; padding: 0; display: grid; gap: .75rem; font-size: .875rem; }
.wra-footer__list a {
  color: color-mix(in oklab, var(--espresso-foreground) 72%, transparent);
  text-decoration: none; transition: color .3s ease;
}
.wra-footer__list a:hover { color: var(--gold); }

.wra-newsletter { margin-top: 1.25rem; }
.wra-newsletter__row { display: flex; flex-direction: column; gap: .75rem; }
@media (min-width: 40rem) { .wra-newsletter__row { flex-direction: row; } }
.wra-newsletter .wra-field {
  border-color: color-mix(in oklab, var(--espresso-foreground) 25%, transparent);
  background: color-mix(in oklab, var(--espresso-foreground) 5%, transparent);
  color: var(--espresso-foreground);
}
.wra-newsletter .wra-field::placeholder { color: color-mix(in oklab, var(--espresso-foreground) 45%, transparent); }
.wra-newsletter .wra-btn { flex-shrink: 0; }
.wra-newsletter__note {
  margin-top: .75rem; min-height: 1.25rem; font-size: .75rem;
  color: color-mix(in oklab, var(--espresso-foreground) 65%, transparent);
}
.wra-newsletter__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

.wra-footer__follow { margin-top: 2rem; }
.wra-footer__social { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 1rem 0 0; padding: 0; }
.wra-footer__social a {
  display: inline-flex; padding: .375rem .875rem; font-size: .75rem;
  border: 1px solid color-mix(in oklab, var(--espresso-foreground) 25%, transparent); border-radius: 999px;
  color: color-mix(in oklab, var(--espresso-foreground) 70%, transparent);
  text-decoration: none; transition: color .3s ease, border-color .3s ease;
}
.wra-footer__social a:hover { border-color: var(--gold); color: var(--gold); }

.wra-footer__rule { margin-top: 3.5rem; }
.wra-footer__bottom {
  display: flex; flex-direction: column; gap: .75rem; margin-top: 1.5rem;
  font-size: .75rem; color: color-mix(in oklab, var(--espresso-foreground) 55%, transparent);
}
@media (min-width: 48rem) { .wra-footer__bottom { flex-direction: row; align-items: center; justify-content: space-between; } }
.wra-footer__statement { letter-spacing: .22em; text-transform: uppercase; color: var(--gold); }

/* ==========================================================
   11. DEFAULT CONTENT (bogagga aan Elementor lagu dhisin)
   ========================================================== */
.wra-content { padding-block: 9rem clamp(3rem, 6vw, 5rem); }
.wra-content h1 { font-size: clamp(2.1rem, 4.6vw, 3.4rem); color: var(--primary); margin-bottom: 1.5rem; }
.wra-content h2 { font-size: clamp(1.65rem, 3vw, 2.3rem); color: var(--primary); margin: 2.5rem 0 1rem; }
.wra-content p { margin-bottom: 1.2rem; max-width: 70ch; color: var(--muted-foreground); }
.wra-content a:not(.wra-btn) { color: var(--primary); text-decoration-color: var(--gold); text-underline-offset: 3px; }

/* ==========================================================
   12. REDUCED MOTION
   ========================================================== */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .js .wra-reveal { opacity: 1; transform: none; transition: none; }
  .wra-marquee-track { animation: none; }
  .wra-btn:hover, .wra-card-soft:hover { transform: none; }
  .wra-media-frame:hover img { transform: none; }
}
