:root {
  --safa-ink: #151513;
  --safa-muted: #77766f;
  --safa-paper: #f6f5f1;
  --safa-line: rgba(21, 21, 19, .12);
  --safa-brass: #b59a70;
}

html { scroll-behavior: smooth; }
body { background: #fff; }
.safa-home { overflow: clip; color: var(--safa-ink); }
.safa-eyebrow { display: inline-flex; align-items: center; gap: .65rem; color: #8b795d; font-size: .67rem; line-height: 1.4; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.safa-eyebrow > i { width: 1.5rem; height: 1px; background: currentColor; }

/* Immersive first frame */
.safa-hero { position: relative; isolation: isolate; height: min(880px, 94svh); min-height: 650px; margin-top: -1px; overflow: hidden; background: #171613; color: #fff; }
.hero-carousel-container { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; overflow: hidden; }
.hero-carousel-container .carousel-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.2s cubic-bezier(.22,.61,.36,1); }
.hero-carousel-container .carousel-slide.is-active { opacity: 1; }
.hero-carousel-container .carousel-slide img { width: 100%; height: 100%; object-fit: cover; object-position: center; transform: scale(1.045) translateY(var(--hero-parallax, 0px)); transition: transform 8s cubic-bezier(.16,1,.3,1); }
.hero-carousel-container .carousel-slide.is-active img { transform: scale(1) translateY(var(--hero-parallax, 0px)); }
#hero-carousel-mobile .carousel-slide img { object-position: 53% center; }
.safa-hero-shade { position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(13,13,12,.84) 0%, rgba(13,13,12,.68) 34%, rgba(13,13,12,.15) 70%, rgba(13,13,12,.04) 100%), linear-gradient(0deg, rgba(10,10,9,.38), transparent 32%); }
.safa-hero-content { position: relative; z-index: 2; display: flex; align-items: center; width: min(1320px, calc(100% - 96px)); height: 100%; margin: auto; padding-top: 72px; }
.safa-hero-copy { width: min(670px, 57%); padding-bottom: 12px; }
.safa-hero-eyebrow { color: #d6c3a4; }
.safa-hero-copy h1 { margin: 1.5rem 0 1rem; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(4.6rem, 8.1vw, 8rem); line-height: .84; font-weight: 400; letter-spacing: -.055em; }
.safa-hero-copy h1 em, .safa-editorial-copy h2 em, .safa-service-heading h2 em { color: #d3b991; font-weight: 300; }
.safa-hero-copy p { max-width: 440px; color: rgba(255,255,255,.75); font-size: .98rem; line-height: 1.8; }
.safa-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1.8rem; margin-top: 2rem; }
.safa-button { display: inline-flex; align-items: center; justify-content: center; gap: 1.25rem; min-height: 52px; padding: .9rem 1.3rem; font-size: .76rem; font-weight: 600; letter-spacing: .06em; transition: transform .25s ease, background .25s ease, color .25s ease; }
.safa-button:hover { transform: translateY(-3px); }
.safa-button-light { background: #f7f5ef; color: var(--safa-ink); }
.safa-button-light:hover { background: #d6c2a0; }
.safa-text-link { display: inline-flex; gap: .7rem; align-items: center; color: rgba(255,255,255,.86); font-size: .77rem; }
.safa-text-link span { color: #d6c2a0; transition: transform .2s ease; }
.safa-text-link:hover span { transform: translateY(4px); }
.safa-hero-note { position: absolute; right: 0; bottom: 16%; display: grid; gap: .25rem; padding: 1rem 1.25rem; border-left: 1px solid rgba(255,255,255,.55); color: rgba(255,255,255,.72); font-size: .63rem; letter-spacing: .14em; text-transform: uppercase; }
.safa-hero-note b { color: white; font-family: "Cormorant Garamond", Georgia, serif; font-size: 1.25rem; font-weight: 500; letter-spacing: .01em; text-transform: none; }
.safa-scroll-cue { position: absolute; bottom: 2rem; left: 0; display: flex; align-items: center; gap: .8rem; color: rgba(255,255,255,.7); font-size: .6rem; letter-spacing: .17em; text-transform: uppercase; }
.safa-scroll-cue i { position: relative; width: 44px; height: 1px; background: rgba(255,255,255,.45); overflow: hidden; }
.safa-scroll-cue i::after { content: ""; position: absolute; inset: 0; background: white; transform: translateX(-100%); animation: safa-line 2s ease-in-out infinite; }
@keyframes safa-line { 50%,100% { transform: translateX(100%); } }

/* Brand proof strip */
.safa-trust-strip { display: flex; justify-content: center; align-items: center; gap: clamp(1.2rem, 5vw, 5.5rem); min-height: 86px; padding: 1rem 24px; border-bottom: 1px solid var(--safa-line); background: #fff; }
.safa-trust-item { display: flex; align-items: center; gap: .7rem; color: #55534d; font-size: .7rem; letter-spacing: .07em; text-transform: uppercase; }
.safa-trust-icon { color: #967c57; font-size: 1.15rem; }
.safa-trust-divider { width: 1px; height: 24px; background: var(--safa-line); }

/* Collections mosaic */
.safa-section { width: min(1320px, calc(100% - 96px)); margin: 0 auto; padding: 112px 0; }
.safa-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 34px; }
.safa-section-heading h2, .safa-community h2 { margin: .7rem 0 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(2.8rem, 5vw, 4.7rem); line-height: .95; font-weight: 500; letter-spacing: -.04em; }
.safa-section-heading h2 > span, .safa-community h2 > span { color: var(--safa-brass); }
.safa-arrow-link { display: inline-flex; align-items: center; gap: 1.15rem; padding-bottom: .55rem; border-bottom: 1px solid #a99575; color: #49463f; font-size: .73rem; white-space: nowrap; }
.safa-arrow-link span { color: #9b825e; transition: transform .2s ease; }
.safa-arrow-link:hover span { transform: translate(3px,-3px); }
.safa-collection-grid { display: grid; grid-template-columns: 1.18fr 1fr 1fr; grid-template-rows: repeat(2, minmax(230px, 24vw)); gap: 14px; perspective: 1200px; }
.safa-collection-card { position: relative; display: block; overflow: hidden; min-height: 235px; background: #e9e7e0; color: #fff; transform-style: preserve-3d; transition: box-shadow .45s ease, transform .45s cubic-bezier(.2,.8,.2,1); }
.safa-collection-card-tall { grid-column: 1; grid-row: 1 / span 2; }
.safa-collection-card:nth-child(4) { grid-column: 2 / span 2; }
.safa-collection-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(13,13,12,.06) 20%, rgba(13,13,12,.7) 100%); transition: opacity .35s ease; }
.safa-collection-card img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.2,1), filter .5s ease; }
.safa-collection-card:hover { z-index: 2; box-shadow: 0 24px 65px rgba(24,22,17,.2); }
.safa-collection-card:hover img { transform: scale(1.065); filter: saturate(1.08); }
.safa-card-index { position: absolute; z-index: 1; top: 1.25rem; left: 1.25rem; color: rgba(255,255,255,.83); font-size: .58rem; letter-spacing: .16em; }
.safa-collection-caption { position: absolute; z-index: 1; right: 1.4rem; bottom: 1.35rem; left: 1.4rem; display: flex; align-items: end; justify-content: space-between; gap: 1rem; transform: translateZ(26px); }
.safa-collection-caption > span { display: grid; gap: .25rem; }
.safa-collection-caption small { color: rgba(255,255,255,.77); font-size: .69rem; }
.safa-collection-caption strong { font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(1.7rem, 2.8vw, 2.55rem); line-height: .95; font-weight: 500; }
.safa-collection-caption > i { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; font-style: normal; transition: background .2s ease, color .2s ease, transform .2s ease; }
.safa-collection-card:hover .safa-collection-caption > i { transform: rotate(45deg); background: white; color: #151513; }

/* Editorial story */
.safa-editorial { position: relative; display: grid; grid-template-columns: 1.02fr .98fr; min-height: 555px; margin: 0 24px; overflow: hidden; background: #171715; color: white; }
.safa-editorial-image { position: relative; min-height: 440px; overflow: hidden; transform-style: preserve-3d; }
.safa-editorial-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 60%, rgba(23,23,21,.48)); pointer-events: none; }
.safa-editorial-image img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; transition: transform .8s ease; }
.safa-editorial-image:hover img { transform: scale(1.045); }
.safa-editorial-copy { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: clamp(3rem, 8vw, 8rem); overflow: hidden; }
.safa-eyebrow-light { color: #c7ad86; }
.safa-editorial-copy h2, .safa-service-heading h2 { position: relative; z-index: 1; margin: 1.1rem 0 1rem; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(3.5rem, 6vw, 6rem); line-height: .86; font-weight: 400; letter-spacing: -.045em; }
.safa-editorial-copy p, .safa-service-heading > p { position: relative; z-index: 1; max-width: 425px; color: rgba(255,255,255,.67); font-size: .88rem; line-height: 1.9; }
.safa-button-outline { position: relative; z-index: 1; margin-top: 1rem; border: 1px solid rgba(255,255,255,.45); color: white; }
.safa-button-outline:hover { background: white; color: #151513; }
.safa-editorial-mark { position: absolute; right: 0; bottom: -8rem; color: rgba(255,255,255,.035); font-family: "Cormorant Garamond", Georgia, serif; font-size: 28rem; line-height: 1; }

/* Product storytelling */
.safa-product-section { padding-top: 105px; padding-bottom: 95px; }
.safa-product-section + .safa-product-section { padding-top: 75px; border-top: 1px solid var(--safa-line); }
.safa-product-group + .safa-product-group { margin-top: 52px; }
.safa-subsection-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: 2rem 0 1.25rem; }
.safa-subsection-heading h3 { margin: 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: 1.8rem; font-weight: 500; }
.safa-subsection-heading a { color: #817054; font-size: .7rem; }
.safa-subsection-heading a span { margin-left: .4rem; }
.safa-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.safa-product-card > .group { overflow: hidden; border: 1px solid rgba(20,20,17,.075); background: #faf9f6; transition: transform .45s cubic-bezier(.2,.8,.2,1), box-shadow .45s ease; }
.safa-product-card > .group:hover { transform: translateY(-6px); box-shadow: 0 20px 45px rgba(30,28,23,.1); }
.safa-product-card img { aspect-ratio: 1 / 1; background: #f1f0ec; }
.safa-product-card .group > a > div:last-child { min-height: 92px; background: #faf9f6; }
.safa-product-card .group p:first-child { font-size: .83rem; line-height: 1.4; }
.safa-product-card .group p:nth-child(2) { font-size: .78rem; color: #8a7555; }
.safa-best-sellers { background: linear-gradient(180deg, #f8f7f3, #fff); }

/* Service pillars and community */
.safa-service-band { position: relative; display: grid; grid-template-columns: .85fr 1.15fr; gap: 5vw; padding: 100px max(48px, calc((100vw - 1320px) / 2)); overflow: hidden; background: #1b1b19; color: white; }
.safa-service-band::before { content: ""; position: absolute; top: -240px; right: -130px; width: 560px; height: 560px; border: 1px solid rgba(210,188,154,.12); border-radius: 50%; box-shadow: 0 0 0 65px rgba(210,188,154,.025), 0 0 0 130px rgba(210,188,154,.02); pointer-events: none; }
.safa-service-heading { position: relative; z-index: 1; }
.safa-service-heading h2 { margin-top: 1rem; font-size: clamp(3.2rem, 5vw, 5rem); }
.safa-service-heading > p { max-width: 370px; }
.safa-service-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); align-self: center; gap: 14px; }
.safa-service-card { position: relative; min-height: 230px; padding: 1.3rem 1.15rem; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.025); transition: transform .35s ease, background .35s ease, border-color .35s ease; }
.safa-service-card:hover { transform: translateY(-7px); border-color: rgba(210,188,154,.5); background: rgba(255,255,255,.06); }
.safa-service-number { position: absolute; top: 1.2rem; right: 1.1rem; color: rgba(255,255,255,.4); font-size: .58rem; letter-spacing: .14em; }
.safa-service-card > i { display: block; margin: 1.5rem 0 1.8rem; color: #c9ac7e; font-size: 1.5rem; }
.safa-service-card h3 { margin: 0 0 .6rem; font-family: "Cormorant Garamond", Georgia, serif; font-size: 1.45rem; font-weight: 500; }
.safa-service-card p { margin: 0; color: rgba(255,255,255,.58); font-size: .7rem; line-height: 1.65; }
.safa-community { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: 4rem; }
.safa-community > div:first-child > p { max-width: 400px; margin-top: 1rem; color: var(--safa-muted); font-size: .83rem; line-height: 1.8; }
.safa-social-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.safa-social-card { position: relative; display: flex; flex-direction: column; align-items: flex-start; min-height: 126px; padding: 1.3rem; border: 1px solid var(--safa-line); transition: background .25s ease, transform .25s ease; }
.safa-social-card:hover { transform: translateY(-4px); background: var(--safa-paper); }
.safa-social-card > i { color: #947b57; font-size: 1.05rem; }
.safa-social-card > span { margin-top: .4rem; font-family: "Cormorant Garamond", Georgia, serif; font-size: 1.8rem; }
.safa-social-card small { color: var(--safa-muted); font-size: .61rem; letter-spacing: .09em; text-transform: uppercase; }
.safa-social-card > b { position: absolute; top: 1.3rem; right: 1.3rem; color: #8d7857; font-size: .8rem; font-weight: 400; }

/* Scroll reveal */
html.safa-motion-ready [data-reveal] { opacity: 0; transform: translate3d(0, 28px, 0); transition: opacity .75s cubic-bezier(.2,.7,.2,1), transform .75s cubic-bezier(.2,.7,.2,1); transition-delay: var(--reveal-delay, 0ms); }
html.safa-motion-ready [data-reveal="left"] { transform: translate3d(-32px,0,0); }
html.safa-motion-ready [data-reveal].is-visible { opacity: 1; transform: translate3d(0,0,0); }

@media (max-width: 900px) {
  .safa-hero { height: min(800px, 88svh); min-height: 600px; }
  .safa-hero-content, .safa-section { width: min(100% - 48px, 720px); }
  .safa-hero-copy { width: min(620px, 75%); }
  .safa-hero-copy h1 { font-size: clamp(4.2rem, 10vw, 6.8rem); }
  .safa-collection-grid { grid-template-rows: repeat(2, minmax(210px, 31vw)); gap: 10px; }
  .safa-editorial { grid-template-columns: 1fr 1fr; margin: 0 12px; }
  .safa-editorial-copy { padding: 3.2rem; }
  .safa-product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
  .safa-service-band { grid-template-columns: 1fr; gap: 2rem; padding: 75px 32px; }
  .safa-service-heading h2 { font-size: 4rem; }
  .safa-community { grid-template-columns: 1fr; gap: 2rem; }
}

@media (max-width: 600px) {
  .safa-hero { height: 83svh; min-height: 590px; max-height: 760px; }
  .safa-hero-shade { background: linear-gradient(180deg, rgba(13,13,12,.18) 0%, rgba(13,13,12,.03) 26%, rgba(13,13,12,.68) 62%, rgba(13,13,12,.92) 100%); }
  .safa-hero-content { align-items: flex-end; width: calc(100% - 42px); padding-top: 100px; padding-bottom: 82px; }
  .safa-hero-copy { width: 100%; padding: 0; }
  .safa-hero-eyebrow { max-width: 300px; font-size: .55rem; letter-spacing: .13em; }
  .safa-hero-copy h1 { margin: 1rem 0 .8rem; font-size: clamp(3.7rem, 15vw, 5.2rem); }
  .safa-hero-copy p { max-width: 345px; font-size: .8rem; line-height: 1.65; }
  .safa-hero-actions { gap: 1rem; margin-top: 1.3rem; }
  .safa-button { min-height: 47px; padding: .75rem .9rem; font-size: .66rem; }
  .safa-text-link { font-size: .68rem; }
  .safa-hero-note { display: none; }
  .safa-scroll-cue { bottom: 1.5rem; }
  .safa-trust-strip { justify-content: flex-start; gap: 1.1rem; min-height: 67px; padding: 0 20px; overflow-x: auto; scrollbar-width: none; }
  .safa-trust-strip::-webkit-scrollbar { display: none; }
  .safa-trust-item { gap: .45rem; font-size: .55rem; white-space: nowrap; }
  .safa-trust-icon { font-size: .9rem; }
  .safa-trust-divider { height: 18px; flex: 0 0 1px; }
  .safa-section { width: calc(100% - 40px); padding: 72px 0; }
  .safa-section-heading { align-items: flex-start; flex-direction: column; gap: 1rem; margin-bottom: 24px; }
  .safa-section-heading h2, .safa-community h2 { font-size: 3.15rem; }
  .safa-arrow-link { font-size: .67rem; }
  .safa-collection-grid { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: 250px 170px 170px; gap: 9px; }
  .safa-collection-card { min-height: 0; }
  .safa-collection-card-tall { grid-column: 1 / span 2; grid-row: auto; }
  .safa-collection-card:nth-child(4) { grid-column: auto; }
  .safa-collection-card:first-child { grid-column: 1 / span 2; }
  .safa-collection-card:nth-child(2), .safa-collection-card:nth-child(3), .safa-collection-card:nth-child(4) { grid-column: span 1; }
  .safa-collection-card:nth-child(2) { grid-row: 2; }
  .safa-collection-card:nth-child(3) { grid-row: 2; }
  .safa-collection-card:nth-child(4) { grid-column: 1 / span 2; grid-row: 3; }
  .safa-collection-caption { right: .85rem; bottom: .9rem; left: .85rem; }
  .safa-collection-caption small { font-size: .58rem; }
  .safa-collection-caption strong { font-size: 1.55rem; }
  .safa-collection-caption > i { width: 32px; height: 32px; }
  .safa-card-index { top: .85rem; left: .85rem; font-size: .5rem; }
  .safa-editorial { grid-template-columns: 1fr; margin: 0 8px; }
  .safa-editorial-image { min-height: 320px; }
  .safa-editorial-image::after { background: linear-gradient(0deg, rgba(23,23,21,.42), transparent 60%); }
  .safa-editorial-copy { min-height: 390px; padding: 2.7rem 1.8rem; }
  .safa-editorial-copy h2 { font-size: 4.15rem; }
  .safa-editorial-copy p { font-size: .8rem; }
  .safa-editorial-mark { right: -1rem; bottom: -5rem; font-size: 19rem; }
  .safa-product-section { padding-top: 72px; padding-bottom: 65px; }
  .safa-product-section + .safa-product-section { padding-top: 60px; }
  .safa-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .safa-product-card .group > a > div:last-child { min-height: 79px; padding: .7rem .45rem; }
  .safa-product-card .group p:first-child { font-size: .72rem; }
  .safa-product-card .group p:nth-child(2) { margin-top: .3rem; font-size: .68rem; }
  .safa-subsection-heading h3 { font-size: 1.55rem; }
  .safa-subsection-heading a { font-size: .62rem; }
  .safa-service-band { gap: 1.3rem; padding: 70px 22px; }
  .safa-service-heading h2 { font-size: 3.8rem; }
  .safa-service-grid { grid-template-columns: 1fr; gap: 9px; }
  .safa-service-card { display: grid; grid-template-columns: 40px 32px 1fr; align-items: center; column-gap: .7rem; min-height: 96px; padding: .9rem; }
  .safa-service-card > i { margin: 0; font-size: 1.2rem; }
  .safa-service-card h3 { margin: 0; font-size: 1.3rem; }
  .safa-service-card p { grid-column: 3; margin-top: -.4rem; font-size: .63rem; }
  .safa-service-number { position: static; }
  .safa-social-grid { gap: 8px; }
  .safa-social-card { min-height: 110px; padding: .9rem; }
  .safa-social-card > b { top: .9rem; right: .9rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
  html.safa-motion-ready [data-reveal] { opacity: 1; transform: none; }
}
/* Fixed image reveal between homepage stories */
.safa-home-scroll-reveal {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  min-height: min(72vh, 760px);
  min-height: min(72svh, 760px);
  margin: 18px 0 0;
  overflow: clip;
  isolation: isolate;
  padding: 5rem max(48px, calc((100vw - 1320px) / 2));
  color: #fff;
  background: #1d1d1a;
}
.safa-home-scroll-reveal__image {
  position: fixed;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 54%;
  opacity: 0;
  visibility: hidden;
  transform: scale(1.045);
  transition: opacity .85s ease, transform 1.4s cubic-bezier(.2,.7,.2,1), visibility .85s;
  will-change: opacity, transform;
}
.safa-home-scroll-reveal.is-visible .safa-home-scroll-reveal__image {
  opacity: .88;
  visibility: visible;
  transform: scale(1);
}
.safa-home-scroll-reveal__shade {
  position: absolute;
  z-index: 0;
  inset: 0;
  background: linear-gradient(90deg, rgba(14,14,13,.82), rgba(14,14,13,.58) 34%, rgba(14,14,13,.08) 78%), linear-gradient(0deg, rgba(12,12,11,.32), transparent 42%);
}
.safa-home-scroll-reveal__content { position: relative; z-index: 1; width: min(640px, 65%); }
.safa-home-scroll-reveal__content h2 {
  margin: 1.2rem 0 1.7rem;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(3.7rem, 7vw, 7rem);
  font-weight: 400;
  line-height: .86;
  letter-spacing: -.045em;
}
.safa-home-scroll-reveal__content h2 em { color: #d3b991; font-weight: 300; }
.safa-home-scroll-reveal__content .safa-button { margin-top: .5rem; }
@media (max-width: 900px) {
  .safa-home-scroll-reveal { min-height: 62vh; min-height: 62svh; padding: 4rem 32px; }
  .safa-home-scroll-reveal__content { width: min(580px, 82%); }
}
@media (max-width: 600px) {
  .safa-home-scroll-reveal { min-height: 70svh; padding: 3rem 22px; }
  .safa-home-scroll-reveal__image { object-position: 60% center; }
  .safa-home-scroll-reveal__shade { background: linear-gradient(180deg, rgba(12,12,11,.14), rgba(12,12,11,.38) 36%, rgba(12,12,11,.8) 100%); }
  .safa-home-scroll-reveal__content { width: 100%; align-self: flex-end; }
  .safa-home-scroll-reveal__content h2 { font-size: clamp(3.7rem, 14vw, 5.1rem); }
}
@media (prefers-reduced-motion: reduce) {
  .safa-home-scroll-reveal__image { transition: none; transform: none; }
}
