/* ===== PREMIUM V2 — luxury editorial direction ===== */

    :root {
      --ink: #514541;
      --muted: #716b64;
      --paper: #f7f2ec;
      --card: #fffdfa;
      --rose: #a96f69;
      --rose-2: #e5cac3;
      --sand: #e9e0d7;
      --sage: #92988f;
      --line: rgba(81, 69, 65, .105);
      --shadow: 0 30px 90px rgba(81, 69, 65, .13);
      --radius: 34px;
      --max: 1200px;
      --ease: cubic-bezier(.2, .72, .2, 1);
    }

    body {
      background:
        radial-gradient(circle at 92% 3%, rgba(217, 199, 181, .25), transparent 28rem),
        radial-gradient(circle at 3% 24%, rgba(124, 80, 79, .07), transparent 26rem),
        var(--paper);
      -webkit-font-smoothing: antialiased;
    }

    ::selection {
      background: var(--rose);
      color: #fff
    }

    h1,
    h2,
    h3 {
      font-weight: 400
    }

    h1 {
      font-size: clamp(4rem, 8.3vw, 8rem);
      line-height: .89;
      letter-spacing: -.055em
    }

    h2 {
      font-size: clamp(3rem, 6vw, 5.5rem);
      line-height: .93;
      letter-spacing: -.045em
    }

    h3 {
      font-size: 1.8rem
    }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-size: .69rem;
      letter-spacing: .19em
    }

    .eyebrow:before {
      content: "";
      width: 23px;
      height: 1px;
      background: currentColor;
      opacity: .55
    }

    .scroll-progress {
      position: fixed;
      top: 0;
      left: 0;
      z-index: 100;
      width: 100%;
      height: 2px;
      background: linear-gradient(90deg, var(--rose), #d7bfae);
      transform: scaleX(0);
      transform-origin: left;
      pointer-events: none
    }

    .spotlight {
      position: fixed;
      z-index: -1;
      width: 430px;
      height: 430px;
      border-radius: 50%;
      pointer-events: none;
      background: radial-gradient(circle, rgba(124, 80, 79, .09), transparent 67%);
      transform: translate(-50%, -50%);
      opacity: 0;
      transition: opacity .3s ease
    }

    .nav-wrap {
      inset: 20px 0 auto;
      transition: transform .46s var(--ease)
    }

    .nav-wrap.hidden {
      transform: translateY(-130%)
    }

    nav {
      background: rgba(244, 240, 234, .72);
      backdrop-filter: blur(22px) saturate(125%);
      border-color: rgba(255, 255, 255, .76);
      padding: 10px 11px 10px 18px;
      box-shadow: 0 14px 45px rgba(81, 69, 65, .07);
      transition: .35s ease
    }

    .nav-wrap.scrolled nav {
      background: rgba(251, 249, 246, .91);
      box-shadow: 0 18px 55px rgba(81, 69, 65, .1);
      border-color: rgba(81, 69, 65, .06)
    }

    .brand {
      font-size: .88rem
    }

    .brand-mark {
      width: 37px;
      height: 37px;
      background: var(--rose);
      font-size: 1.28rem;
      font-weight: 400
    }

    .nav-links {
      gap: 24px;
      font-size: .83rem
    }

    .nav-links a {
      position: relative;
      padding: 7px 0
    }

    .nav-links a:after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 1px;
      height: 1px;
      background: var(--rose);
      transform: scaleX(0);
      transform-origin: right;
      transition: transform .32s var(--ease)
    }

    .nav-links a:hover:after {
      transform: scaleX(1);
      transform-origin: left
    }

    .btn {
      --mx: 0px;
      --my: 0px;
      min-height: 50px;
      padding: 0 22px;
      font-size: .87rem;
      transform: translate(var(--mx), var(--my));
      transition: transform .3s var(--ease), box-shadow .3s ease, background .3s ease, border-color .3s ease
    }

    .btn:hover {
      transform: translate(var(--mx), calc(var(--my) - 2px))
    }

    .btn-dark {
      background: var(--rose);
      box-shadow: 0 14px 34px rgba(81, 69, 65, .15)
    }

    .btn-dark:hover {
      background: #865753;
      box-shadow: 0 19px 40px rgba(87, 55, 55, .2)
    }

    .btn-soft {
      background: rgba(255, 255, 255, .34);
      backdrop-filter: blur(8px)
    }

    header {
      padding: 150px 0 90px;
      min-height: 100svh;
      position: relative
    }

    .hero {
      gap: clamp(48px, 7vw, 96px)
    }

    .hero h1 span {
      color: var(--rose)
    }

    .hero-copy .eyebrow {
      margin-bottom: 26px
    }

    .hero-lead {
      font-size: clamp(1rem, 1.5vw, 1.14rem);
      max-width: 585px;
      margin: 30px 0 34px
    }

    .hero-actions {
      gap: 11px
    }

    .micro {
      font-size: .78rem;
      margin-top: 25px
    }

    .status-dot {
      position: relative;
      background: #788c76
    }

    .status-dot:after {
      content: "";
      position: absolute;
      inset: -5px;
      border: 1px solid rgba(120, 140, 118, .35);
      border-radius: 50%;
      animation: pulseV2 2.4s ease-out infinite
    }

    .hero-visual {
      min-height: min(72svh, 720px)
    }

    .portrait-card {
      inset: 0 0 0 42px;
      border-radius: 230px 230px 36px 36px;
      clip-path: inset(100% 0 0 0 round 230px 230px 36px 36px);
      animation: portraitRevealV2 1.25s .14s var(--ease) forwards;
      box-shadow: var(--shadow)
    }

    .portrait-card img {
      height: 108%;
      object-position: center 8%;
      transform: scale(1.07);
      animation: imageSettleV2 1.7s .18s var(--ease) forwards;
      will-change: transform
    }

    .portrait-card:before {
      content: "";
      position: absolute;
      inset: 24px -24px -24px 28px;
      border: 1px solid rgba(124, 80, 79, .19);
      border-radius: 230px 230px 36px 36px;
      z-index: -1
    }

    .portrait-card:after {
      background: linear-gradient(180deg, transparent 55%, rgba(81, 69, 65, .16))
    }

    .orbit {
      right: -25px;
      top: 58px;
      width: 126px;
      height: 126px;
      background: rgba(250, 248, 245, .78);
      border-color: rgba(255, 255, 255, .82);
      box-shadow: 0 20px 56px rgba(81, 69, 65, .11);
      animation: sealFloatV2 6s ease-in-out infinite
    }

    .orbit:before {
      content: "";
      position: absolute;
      inset: 11px;
      border: 1px solid rgba(124, 80, 79, .2);
      border-radius: 50%
    }

    .orbit span {
      max-width: 78px;
      font-size: .61rem;
      color: var(--rose)
    }

    .floating-note {
      left: -16px;
      bottom: 42px;
      width: min(305px, 78%);
      padding: 20px 22px;
      background: rgba(251, 249, 246, .82);
      border-color: rgba(255, 255, 255, .92);
      backdrop-filter: blur(18px);
      box-shadow: 0 20px 58px rgba(81, 69, 65, .11);
      animation: none
    }

    .floating-note strong {
      font-family: "Instrument Serif", Georgia, serif;
      font-size: 1.35rem;
      font-weight: 400;
      line-height: 1.13
    }

    .floating-note span {
      font-size: .75rem
    }

    .trust {
      margin-top: 0;
      padding-bottom: 70px
    }

    .trust-grid {
      border-left: 0;
      border-right: 0;
      border-radius: 0;
      background: transparent
    }

    .trust-item {
      padding: 27px 24px
    }

    .trust-item b {
      font-family: "Instrument Serif", Georgia, serif;
      font-size: 1.5rem;
      font-weight: 400
    }

    .trust-item span {
      font-size: .74rem
    }

    section {
      padding: clamp(95px, 10vw, 150px) 0
    }

    .section-head {
      grid-template-columns: .78fr 1.22fr;
      gap: 60px;
      margin-bottom: 58px
    }

    .section-head p {
      font-size: 1rem
    }

    .about-grid {
      grid-template-columns: .9fr 1.1fr;
      gap: clamp(54px, 7vw, 96px)
    }

    .about-image {
      min-height: 650px;
      border-radius: 32px
    }

    .about-image img {
      transition: transform 1.25s var(--ease)
    }

    .about-image:hover img {
      transform: scale(1.025)
    }

    .badge {
      right: 18px;
      bottom: 18px;
      background: var(--rose);
      color: #fff;
      padding: 20px 21px;
      border-radius: 19px
    }

    .badge .eyebrow {
      color: #d9c4b8
    }

    .badge strong {
      font-family: "Instrument Serif", Georgia, serif;
      font-size: 1.28rem;
      font-weight: 400
    }

    .about-copy p {
      font-size: 1rem;
      margin: 18px 0
    }

    .signature {
      font-size: 1.55rem;
      color: var(--rose)
    }

    .process-section {
      padding-top: 15px
    }

    .process {
      background: #fbf9f6;
      border: 1px solid rgba(81, 69, 65, .07);
      border-radius: 42px;
      padding: clamp(32px, 5vw, 62px);
      box-shadow: 0 20px 70px rgba(81, 69, 65, .055)
    }

    .process-head {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 40px;
      margin-bottom: 45px
    }

    .process-head h2 {
      max-width: 770px;
      margin-top: 16px
    }

    .process-head p {
      max-width: 390px
    }

    .process-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      border-top: 1px solid var(--line)
    }

    .process-step {
      position: relative;
      padding: 34px 34px 4px 0;
      min-height: 235px
    }

    .process-step:not(:last-child) {
      border-right: 1px solid var(--line);
      margin-right: 34px
    }

    .process-number {
      display: flex;
      align-items: center;
      justify-content: space-between;
      color: var(--rose);
      font-size: .68rem;
      font-weight: 700;
      letter-spacing: .14em
    }

    .process-icon {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      border: 1px solid var(--line);
      display: grid;
      place-items: center;
      transition: .4s var(--ease)
    }

    .process-step:hover .process-icon {
      transform: rotate(8deg) scale(1.05);
      background: var(--rose);
      color: #fff
    }

    .process-step h3 {
      margin: 42px 0 12px
    }

    .process-step p {
      font-size: .88rem;
      max-width: 300px
    }

    .pillars-wrap {
      border-radius: 42px;
      padding: clamp(40px, 6vw, 70px);
      background: var(--rose)
    }

    .pillars-wrap:before {
      width: 620px;
      height: 620px;
      right: -210px;
      top: -250px;
      background: radial-gradient(circle, rgba(124, 80, 79, .42), transparent 68%)
    }

    .pillars-wrap:after {
      content: "";
      position: absolute;
      inset: 20px;
      border: 1px solid rgba(255, 255, 255, .045);
      border-radius: 32px;
      pointer-events: none
    }

    .pillars-head {
      margin-bottom: 46px
    }

    .pillars {
      gap: 1px;
      background: rgba(255, 255, 255, .1);
      border: 1px solid rgba(255, 255, 255, .1);
      border-radius: 25px;
      overflow: hidden
    }

    .pillar {
      min-height: 310px;
      border: 0;
      border-radius: 0;
      background: #9b746f;
      position: relative;
      overflow: hidden;
      isolation: isolate
    }

    .pillar:before {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(150deg, rgba(124, 80, 79, .37), transparent 58%);
      opacity: 0;
      transition: opacity .55s var(--ease);
      z-index: -1
    }

    .pillar:after {
      content: "";
      position: absolute;
      left: 24px;
      right: 24px;
      bottom: 0;
      height: 2px;
      background: #d2b7aa;
      transform: scaleX(0);
      transform-origin: left;
      transition: transform .55s var(--ease)
    }

    .pillar:hover {
      transform: none;
      background: #9b746f
    }

    .pillar:hover:before {
      opacity: 1
    }

    .pillar:hover:after {
      transform: scaleX(1)
    }

    .symptoms-grid {
      grid-template-columns: .88fr 1.12fr;
      gap: clamp(55px, 8vw, 110px)
    }

    .symptoms-grid>div:first-child {
      position: sticky;
      top: 130px
    }

    .symptom-list {
      grid-template-columns: 1fr;
      gap: 0;
      border-top: 1px solid var(--line)
    }

    .symptom {
      border: 0;
      border-bottom: 1px solid var(--line);
      border-radius: 0;
      background: transparent;
      padding: 19px 6px;
      transition: padding .35s var(--ease), background .35s ease
    }

    .symptom:hover {
      transform: none;
      padding-left: 16px;
      background: rgba(255, 255, 255, .34)
    }

    .symptom i {
      width: 7px;
      height: 7px;
      background: var(--rose)
    }

    .note-card {
      border-radius: 0;
      background: rgba(255, 255, 255, .32);
      border-left: 2px solid var(--rose)
    }

    .reviews {
      background: #fbf9f6
    }

    .review {
      min-height: 305px;
      border-color: rgba(81, 69, 65, .075);
      border-radius: 22px;
      box-shadow: 0 10px 35px rgba(81, 69, 65, .04);
      transition: transform .38s var(--ease), box-shadow .38s ease
    }

    .review:hover {
      transform: translateY(-6px);
      box-shadow: 0 24px 55px rgba(81, 69, 65, .09)
    }

    .quote {
      font-size: 1.43rem;
      line-height: 1.32
    }

    .stars {
      font-size: .75rem
    }

    .circle-btn {
      transition: .3s var(--ease)
    }

    .circle-btn:hover {
      background: var(--rose);
      color: #fff;
      transform: translateY(-2px)
    }

    .clinic {
      grid-template-columns: 1.12fr .88fr;
      min-height: 580px;
      border-radius: 42px;
      background: var(--rose);
      color: #fff;
      box-shadow: var(--shadow)
    }

    .clinic-image {
      min-height: 580px;
      overflow: hidden
    }

    .clinic-image img {
      transition: transform 1.25s var(--ease)
    }

    .clinic:hover .clinic-image img {
      transform: scale(1.025)
    }

    .clinic-copy {
      padding: clamp(44px, 6vw, 75px)
    }

    .clinic-copy p {
      color: rgba(255, 255, 255, .58)
    }

    .clinic-copy .eyebrow {
      color: #ddc6ba
    }

    .address {
      border-color: rgba(255, 255, 255, .12);
      color: rgba(255, 255, 255, .67)
    }

    .final-cta {
      padding-top: 35px
    }

    .cta-box {
      padding: clamp(70px, 9vw, 112px) 25px;
      border-radius: 42px;
      background: linear-gradient(135deg, #e7d8cd 0%, #f3ece5 45%, #dfd4c8 100%)
    }

    .cta-box:before {
      content: "";
      position: absolute;
      width: 460px;
      height: 460px;
      border-radius: 50%;
      border: 1px solid rgba(124, 80, 79, .16);
      left: -180px;
      bottom: -260px
    }

    .cta-box:after {
      width: 230px;
      height: 230px;
      background: radial-gradient(circle, rgba(124, 80, 79, .13), transparent 70%);
      right: 2%;
      top: -50px;
      bottom: auto;
      border: 0
    }

    .cta-box h2 {
      max-width: 900px;
      margin: 18px auto 22px
    }

    .whatsapp-float {
      background: var(--rose);
      font-size: 0
    }

    .whatsapp-float:after {
      content: "✦";
      font-size: 1.2rem
    }

    .whatsapp-float:hover {
      background: #865753;
      transform: translateY(-5px) rotate(-3deg)
    }

    .reveal {
      opacity: 0;
      transform: translateY(45px);
      transition: opacity .9s var(--ease), transform .9s var(--ease)
    }

    .reveal.in {
      opacity: 1;
      transform: none
    }

    .reveal-left {
      opacity: 0;
      transform: translateX(-45px);
      transition: opacity 1s var(--ease), transform 1s var(--ease)
    }

    .reveal-right {
      opacity: 0;
      transform: translateX(45px);
      transition: opacity 1s var(--ease), transform 1s var(--ease)
    }

    .reveal-left.in,
    .reveal-right.in {
      opacity: 1;
      transform: none
    }

    [data-stagger]>* {
      opacity: 0;
      transform: translateY(24px);
      transition: opacity .7s var(--ease), transform .7s var(--ease)
    }

    [data-stagger].in>* {
      opacity: 1;
      transform: none
    }

    [data-stagger].in>*:nth-child(2) {
      transition-delay: .07s
    }

    [data-stagger].in>*:nth-child(3) {
      transition-delay: .14s
    }

    [data-stagger].in>*:nth-child(4) {
      transition-delay: .21s
    }

    [data-stagger].in>*:nth-child(5) {
      transition-delay: .28s
    }

    @keyframes portraitRevealV2 {
      to {
        clip-path: inset(0 0 0 0 round 230px 230px 36px 36px)
      }
    }

    @keyframes imageSettleV2 {
      to {
        transform: scale(1)
      }
    }

    @keyframes sealFloatV2 {
      50% {
        transform: translateY(-10px) rotate(2deg)
      }
    }

    @keyframes pulseV2 {
      0% {
        transform: scale(.7);
        opacity: .8
      }

      70%,
      100% {
        transform: scale(1.55);
        opacity: 0
      }
    }

    @media(max-width:980px) {
      .process-head {
        align-items: flex-start;
        flex-direction: column
      }

      .process-grid {
        grid-template-columns: 1fr
      }

      .process-step {
        min-height: auto;
        padding: 28px 0
      }

      .process-step:not(:last-child) {
        border-right: 0;
        border-bottom: 1px solid var(--line);
        margin-right: 0
      }

      .process-step h3 {
        margin-top: 26px
      }

      .symptoms-grid>div:first-child {
        position: static
      }

      .clinic {
        grid-template-columns: 1fr
      }

      .clinic-image {
        min-height: 500px
      }
    }

    @media(max-width:680px) {
      .nav-wrap {
        inset: 12px 0 auto
      }

      .brand span:last-child {
        display: none
      }

      nav .btn {
        min-height: 43px;
        padding: 0 15px;
        font-size: .77rem
      }

      header {
        padding-top: 112px
      }

      h1 {
        font-size: clamp(3.7rem, 18.8vw, 5.6rem)
      }

      h2 {
        font-size: clamp(2.9rem, 14vw, 4.5rem)
      }

      .hero-actions .btn {
        width: 100%
      }

      .hero-visual {
        min-height: 520px
      }

      .portrait-card {
        inset: 0 8px 0 34px;
        border-radius: 160px 160px 28px 28px
      }

      .orbit {
        width: 92px;
        height: 92px;
        right: -4px;
        top: 42px
      }

      .orbit span {
        font-size: .49rem;
        max-width: 58px
      }

      .floating-note {
        left: 0;
        bottom: 25px;
        width: 245px;
        padding: 16px 17px
      }

      .floating-note strong {
        font-size: 1.15rem
      }

      .process {
        border-radius: 30px;
        padding: 30px 22px
      }

      .pillars-wrap,
      .clinic,
      .cta-box {
        border-radius: 30px
      }

      .pillars-wrap:after {
        inset: 10px;
        border-radius: 22px
      }

      .pillar {
        min-height: 230px
      }

      .clinic-image {
        min-height: 350px
      }

      .clinic-copy {
        padding: 40px 25px
      }
    }

    @media(pointer:coarse) {
      .spotlight {
        display: none
      }
    }

    @media(prefers-reduced-motion:reduce) {
      .portrait-card {
        clip-path: none;
        animation: none
      }

      .portrait-card img {
        transform: none;
        animation: none
      }

      .orbit {
        animation: none
      }

      .status-dot:after {
        animation: none
      }

      .spotlight {
        display: none
      }

      .reveal-left,
      .reveal-right,
      [data-stagger]>* {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important
      }
    }

/* ===== V0.2 — warm clinical palette + qualified contact ===== */
.niaf-landing{--ink:#514541;--muted:#786b66;--paper:#f7f2ec;--card:#fffdf9;--rose:#a96f69;--rose-2:#e5cac3;--sand:#efe4dc;--sage:#a5afa1;--line:rgba(81,69,65,.12);background:radial-gradient(circle at 92% 3%,rgba(229,202,195,.30),transparent 28rem),radial-gradient(circle at 3% 24%,rgba(169,111,105,.075),transparent 26rem),var(--paper)}
.niaf-landing .brand-mark{background:var(--rose);color:#fff}.niaf-landing .btn-dark{background:var(--rose);color:#fff;box-shadow:0 14px 34px rgba(134,87,83,.16)}.niaf-landing .btn-dark:hover{background:#865753;box-shadow:0 19px 40px rgba(134,87,83,.20)}
.niaf-landing .pillars-wrap{background:linear-gradient(145deg,#9a746f,#85635f)}.niaf-landing .pillars-wrap:before{background:radial-gradient(circle,rgba(238,209,203,.30),transparent 68%)}.niaf-landing .pillar{background:rgba(255,255,255,.075)}.niaf-landing .pillar:hover{background:rgba(255,255,255,.12)}.niaf-landing .pillar:before{background:linear-gradient(150deg,rgba(255,240,236,.16),transparent 58%)}.niaf-landing .clinic{background:linear-gradient(145deg,#94706b,#80605c);color:#fff}.niaf-landing .badge{background:#9a746f;color:#fff}.niaf-landing .circle-btn:hover{background:var(--rose);color:#fff}.niaf-landing .nav-patient{white-space:nowrap}.niaf-landing .whatsapp-float{display:none!important}
.niaf-landing .cta-box{display:grid;grid-template-columns:minmax(0,.82fr) minmax(360px,1.18fr);gap:clamp(30px,6vw,78px);align-items:center;text-align:left;padding:clamp(48px,7vw,82px)}.niaf-landing .contact-heading h2{margin:18px 0 20px}.niaf-landing .contact-heading p{margin:0;max-width:520px}.niaf-landing .contact-form{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:rgba(255,253,249,.78);border:1px solid rgba(255,255,255,.75);backdrop-filter:blur(14px);padding:24px;border-radius:24px;box-shadow:0 20px 55px rgba(81,69,65,.08)}.niaf-landing .contact-form label{display:grid;gap:7px;font-size:.76rem;font-weight:750;color:#665651}.niaf-landing .contact-form input,.niaf-landing .contact-form textarea{width:100%;border:1px solid rgba(81,69,65,.14);background:#fffdf9;border-radius:13px;padding:13px 14px;color:#514541;outline:none;transition:.2s ease}.niaf-landing .contact-form input:focus,.niaf-landing .contact-form textarea:focus{border-color:var(--rose);box-shadow:0 0 0 3px rgba(169,111,105,.10)}.niaf-landing .contact-message,.niaf-landing .contact-privacy,.niaf-landing .contact-form .btn{grid-column:1/-1}.niaf-landing .contact-form textarea{resize:vertical;min-height:120px}.niaf-landing .contact-form .btn{width:100%;min-height:52px}.niaf-landing .contact-privacy{font-size:.68rem;line-height:1.5;color:var(--muted);margin:0}.niaf-landing .contact-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.niaf-landing .contact-alert{position:relative;z-index:3;margin:0 0 14px;padding:12px 14px;border-radius:13px;background:#fff0ee;border:1px solid #e7c6c1;color:#865753;font-size:.8rem}.niaf-landing .final-cta{scroll-margin-top:100px}
@media(max-width:900px){.niaf-landing .cta-box{grid-template-columns:1fr;text-align:left}.niaf-landing .contact-form{max-width:none}}
@media(max-width:620px){.niaf-landing .nav-patient{min-height:42px;padding:0 14px;font-size:.72rem}.niaf-landing .cta-box{padding:42px 18px}.niaf-landing .contact-form{grid-template-columns:1fr;padding:18px;border-radius:19px}.niaf-landing .contact-form label,.niaf-landing .contact-message,.niaf-landing .contact-privacy,.niaf-landing .contact-form .btn{grid-column:1}}

/* ===== V0.2.3 — refined motion system ===== */
.niaf-landing{overflow-x:hidden}.niaf-landing header{overflow:hidden}.niaf-landing .hero-copy{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.niaf-loaded .hero-copy{opacity:1;transform:none}.niaf-landing .hero-copy .eyebrow{opacity:0;transform:translateY(10px);transition:opacity .6s .12s var(--ease),transform .6s .12s var(--ease)}.niaf-loaded .hero-copy .eyebrow{opacity:1;transform:none}.niaf-landing .hero-copy h1{opacity:0;transform:translateY(24px);transition:opacity .95s .18s var(--ease),transform .95s .18s var(--ease)}.niaf-loaded .hero-copy h1{opacity:1;transform:none}.niaf-landing .hero-lead{opacity:0;transform:translateY(18px);transition:opacity .8s .33s var(--ease),transform .8s .33s var(--ease)}.niaf-loaded .hero-lead{opacity:1;transform:none}.niaf-landing .hero-actions,.niaf-landing .micro{opacity:0;transform:translateY(14px);transition:opacity .7s .46s var(--ease),transform .7s .46s var(--ease)}.niaf-landing .micro{transition-delay:.56s}.niaf-loaded .hero-actions,.niaf-loaded .micro{opacity:1;transform:none}
.niaf-landing .hero-scroll-cue{position:absolute;left:50%;bottom:24px;z-index:3;display:flex;align-items:center;gap:9px;transform:translateX(-50%);color:var(--muted);text-decoration:none;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;opacity:.76}.niaf-landing .hero-scroll-cue span{position:relative;width:28px;height:28px;border:1px solid var(--line);border-radius:50%}.niaf-landing .hero-scroll-cue span:after{content:"";position:absolute;left:50%;top:8px;width:1px;height:9px;background:var(--rose);transform:translateX(-50%);animation:scrollCue 1.8s ease-in-out infinite}.niaf-landing .nav-links a.is-active{color:var(--rose)}.niaf-landing .nav-links a.is-active:after{transform:scaleX(1)}
.niaf-landing .reveal{filter:blur(7px);transform:translateY(38px) scale(.992);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}.niaf-landing .reveal.in{filter:none;transform:none}.niaf-landing .reveal-left,.niaf-landing .reveal-right{filter:blur(5px);transition:opacity 1s var(--ease),transform 1s var(--ease),filter 1s var(--ease)}.niaf-landing .reveal-left.in,.niaf-landing .reveal-right.in{filter:none}.niaf-landing [data-stagger]>*{filter:blur(4px);transition:opacity .7s var(--ease),transform .7s var(--ease),filter .7s var(--ease)}.niaf-landing [data-stagger].in>*{filter:none}
.niaf-landing section{position:relative}.niaf-landing section:not(.final-cta):before{content:"";position:absolute;left:50%;top:0;width:min(1180px,calc(100% - 40px));height:1px;transform:translateX(-50%) scaleX(.18);transform-origin:center;background:linear-gradient(90deg,transparent,var(--line),transparent);opacity:.35;transition:transform 1.2s var(--ease),opacity 1.2s ease}.niaf-landing section:has(.in):before{transform:translateX(-50%) scaleX(1);opacity:.68}
.niaf-landing [data-motion-card]{--tilt-x:0deg;--tilt-y:0deg;--glow-x:50%;--glow-y:50%;transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .35s var(--ease),box-shadow .35s ease,background .35s ease;will-change:transform}.niaf-landing [data-motion-card]:before{pointer-events:none}.niaf-landing .review[data-motion-card]:after,.niaf-landing .process-step[data-motion-card]:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--glow-x) var(--glow-y),rgba(255,255,255,.42),transparent 42%);opacity:0;pointer-events:none;transition:opacity .3s ease}.niaf-landing .review[data-motion-card]:hover:after,.niaf-landing .process-step[data-motion-card]:hover:after{opacity:.55}.niaf-landing .process-step,.niaf-landing .review{position:relative;isolation:isolate}.niaf-landing .process-step:hover{transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-4px)}.niaf-landing .review:hover{transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateY(-6px)}.niaf-landing .pillar:hover{transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y))}
.niaf-landing [data-parallax]{--parallax-y:0px;transform:translate3d(0,var(--parallax-y),0) scale(1.035)!important;will-change:transform}.niaf-landing .about-image,.niaf-landing .clinic-image{overflow:hidden}.niaf-landing .about-image:after,.niaf-landing .clinic-image:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 25%,rgba(255,255,255,.12) 48%,transparent 72%);transform:translateX(-120%);transition:transform 1.2s var(--ease)}.niaf-landing .about-image:hover:after,.niaf-landing .clinic:hover .clinic-image:after{transform:translateX(120%)}.niaf-landing .clinic-image{position:relative}
.niaf-landing .trust-item{transition:transform .35s var(--ease),background .35s ease}.niaf-landing .trust-item:hover{transform:translateY(-3px);background:rgba(255,255,255,.3)}.niaf-landing .symptom i{box-shadow:0 0 0 0 rgba(169,111,105,.18);transition:box-shadow .35s ease,transform .35s var(--ease)}.niaf-landing .symptom:hover i{transform:scale(1.18);box-shadow:0 0 0 8px rgba(169,111,105,.09)}.niaf-landing .contact-form{transition:transform .45s var(--ease),box-shadow .45s ease}.niaf-landing .contact-form:focus-within{transform:translateY(-4px);box-shadow:0 26px 70px rgba(81,69,65,.12)}.niaf-landing .contact-form label{transition:color .2s ease}.niaf-landing .contact-form label:focus-within{color:var(--rose)}
.niaf-landing .cta-box:before{animation:ctaOrbit 18s linear infinite}.niaf-landing .orbit{will-change:transform}.niaf-landing .ambient{will-change:transform}.niaf-landing .review-track{will-change:transform}.niaf-landing .circle-btn{transition:transform .25s var(--ease),background .25s ease,color .25s ease}.niaf-landing .circle-btn:hover{transform:translateY(-3px) scale(1.03)}
@keyframes scrollCue{0%,100%{transform:translate(-50%,0);opacity:.35}50%{transform:translate(-50%,6px);opacity:1}}@keyframes ctaOrbit{to{transform:rotate(360deg)}}
@media(max-width:900px){.niaf-landing .hero-scroll-cue{display:none}.niaf-landing [data-motion-card]{transform:none!important}.niaf-landing [data-parallax]{transform:none!important}.niaf-landing section:not(.final-cta):before{width:calc(100% - 24px)}}
@media(prefers-reduced-motion:reduce){.niaf-landing .hero-copy,.niaf-landing .hero-copy .eyebrow,.niaf-landing .hero-copy h1,.niaf-landing .hero-lead,.niaf-landing .hero-actions,.niaf-landing .micro{opacity:1!important;transform:none!important;transition:none!important}.niaf-landing .hero-scroll-cue span:after,.niaf-landing .cta-box:before{animation:none!important}.niaf-landing .reveal,.niaf-landing .reveal-left,.niaf-landing .reveal-right,.niaf-landing [data-stagger]>*{filter:none!important;transition:none!important}.niaf-landing [data-motion-card],[data-parallax]{transform:none!important;transition:none!important}}

/* ===== V0.2.4 — media-led sections, local icons, moderated testimonials, cinematic motion ===== */
.niaf-landing section[id],.niaf-landing header[id]{scroll-margin-top:110px}
.niaf-landing .process-head,.niaf-landing .pillars-head{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);gap:clamp(38px,6vw,78px);align-items:stretch!important}
.niaf-landing .process-title-block,.niaf-landing .pillars-title-block{align-self:center;min-width:0}
.niaf-landing .process-side,.niaf-landing .pillars-side{display:grid;gap:16px;align-content:end;min-width:0}
.niaf-landing .process-head.no-media .process-side,.niaf-landing .pillars-head.no-media .pillars-side{align-content:center}
.niaf-landing .process-intro,.niaf-landing .pillars-intro{margin:0;padding:18px 20px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.44);font-size:.93rem;line-height:1.7;box-shadow:0 12px 34px rgba(81,69,65,.045)}
.niaf-landing .pillars-intro{color:rgba(255,255,255,.79);background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12);box-shadow:none}
.niaf-landing .section-media{position:relative;margin:0;height:230px;border-radius:26px;overflow:hidden;border:1px solid rgba(81,69,65,.10);background:#eaded7;box-shadow:0 22px 55px rgba(81,69,65,.10);isolation:isolate}
.niaf-landing .section-media img{width:100%;height:112%;object-fit:cover;display:block}
.niaf-landing .section-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(81,69,65,.16));pointer-events:none}
.niaf-landing .section-media .media-shine{position:absolute;z-index:2;inset:0;background:linear-gradient(120deg,transparent 22%,rgba(255,255,255,.2) 48%,transparent 72%);transform:translateX(-125%);transition:transform 1.15s var(--ease);pointer-events:none}
.niaf-landing .section-media:hover .media-shine{transform:translateX(125%)}
.niaf-landing .pillars-media{border-color:rgba(255,255,255,.14);box-shadow:0 24px 55px rgba(69,45,43,.16)}

.niaf-landing .process-grid{grid-template-columns:repeat(auto-fit,minmax(235px,1fr));border-top:1px solid var(--line);gap:0}
.niaf-landing .process-step{min-height:320px;padding:32px 28px 28px 0;display:flex;flex-direction:column;align-items:flex-start}
.niaf-landing .process-step:not(:last-child){margin-right:28px}
.niaf-landing .process-number{width:100%;justify-content:flex-start}
.niaf-landing .process-step-icon,.niaf-landing .pillar-icon{display:grid;place-items:center;flex:0 0 auto}
.niaf-landing .process-step-icon{width:62px;height:62px;margin:30px 0 18px;border-radius:22px;background:linear-gradient(145deg,#f1dfd9,#fffaf7);border:1px solid rgba(169,111,105,.16);color:var(--rose);box-shadow:0 15px 34px rgba(81,69,65,.075);transition:transform .45s var(--ease),background .45s ease,color .45s ease}
.niaf-landing .process-step-icon svg,.niaf-landing .pillar-icon svg{width:30px;height:30px}
.niaf-landing .process-step:hover .process-step-icon{transform:translateY(-5px) rotate(-3deg);background:var(--rose);color:#fff}
.niaf-landing .process-step h3{margin:0 0 12px}
.niaf-landing .process-step p{margin-top:auto;max-width:315px}
.niaf-landing .process-icon{display:none!important}

.niaf-landing .pillars{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:stretch}
.niaf-landing .pillar{min-height:350px;padding:25px 27px 28px;display:flex;flex-direction:column;justify-content:flex-start}
.niaf-landing .pillar .num{display:block}
.niaf-landing .pillar-icon{width:74px;height:74px;margin:42px 0 28px;border-radius:26px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.11);transition:transform .48s var(--ease),background .48s ease,border-color .48s ease}
.niaf-landing .pillar-icon svg{width:34px;height:34px}
.niaf-landing .pillar:hover .pillar-icon{transform:translateY(-6px) rotate(-3deg) scale(1.03);background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.26)}
.niaf-landing .pillar-copy{margin-top:auto}.niaf-landing .pillar-copy h3{margin-bottom:10px}.niaf-landing .pillar-copy p{margin:0}

.niaf-landing .reviews-head{align-items:center}.niaf-landing .reviews-intro{display:grid;gap:12px}.niaf-landing .reviews-intro>span{font-size:.72rem;line-height:1.55;color:var(--muted);padding-left:15px;border-left:2px solid var(--rose-2)}
.niaf-landing .testimonial-submit-wrap{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:clamp(28px,5vw,68px);align-items:center;margin:0 0 48px;padding:clamp(28px,4vw,46px);border-radius:30px;border:1px solid var(--line);background:linear-gradient(140deg,rgba(255,253,249,.92),rgba(239,228,220,.72));box-shadow:0 24px 65px rgba(81,69,65,.075);position:relative;overflow:hidden}
.niaf-landing .testimonial-submit-wrap:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-130px;background:radial-gradient(circle,rgba(169,111,105,.13),transparent 68%);pointer-events:none}
.niaf-landing .testimonial-submit-copy{position:relative;z-index:1}.niaf-landing .testimonial-submit-copy h3{font-size:clamp(2rem,3.2vw,3.15rem);margin:14px 0 14px}.niaf-landing .testimonial-submit-copy p{line-height:1.7}
.niaf-landing .testimonial-form{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:22px;border-radius:22px;background:rgba(255,255,255,.76);border:1px solid rgba(255,255,255,.85);backdrop-filter:blur(14px);box-shadow:0 18px 46px rgba(81,69,65,.065)}
.niaf-landing .testimonial-form label{display:grid;gap:7px;font-size:.73rem;font-weight:760;color:#665651}.niaf-landing .testimonial-form label>span{font-weight:500;color:var(--muted)}
.niaf-landing .testimonial-form input,.niaf-landing .testimonial-form textarea,.niaf-landing .testimonial-form select{width:100%;border:1px solid rgba(81,69,65,.14);background:#fffdf9;border-radius:12px;padding:12px 13px;color:var(--ink);font:inherit;outline:none;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}
.niaf-landing .testimonial-form input:focus,.niaf-landing .testimonial-form textarea:focus,.niaf-landing .testimonial-form select:focus{border-color:var(--rose);box-shadow:0 0 0 3px rgba(169,111,105,.10);transform:translateY(-1px)}
.niaf-landing .testimonial-message,.niaf-landing .testimonial-consent,.niaf-landing .testimonial-form>.btn{grid-column:1/-1}.niaf-landing .testimonial-message textarea{resize:vertical;min-height:115px}.niaf-landing .testimonial-consent{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start!important;gap:9px!important;font-weight:500!important;line-height:1.5!important;color:var(--muted)!important}.niaf-landing .testimonial-consent input{width:17px;height:17px;margin-top:2px;padding:0}.niaf-landing .testimonial-form>.btn{width:100%;min-height:50px}.niaf-landing .testimonial-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.niaf-landing .testimonial-alert{margin:-24px 0 38px;padding:13px 15px;border-radius:14px;font-size:.8rem;border:1px solid}.niaf-landing .testimonial-alert.success{background:#edf4eb;border-color:#cbdcc8;color:#426b44}.niaf-landing .testimonial-alert.error{background:#fff0ee;border-color:#e6c3bf;color:#87504b}

/* Granular, editorial entrance choreography. */
.niaf-landing .motion-fragment{opacity:0;transform:translate3d(0,34px,0);filter:blur(8px);transition:opacity .95s var(--ease),transform .95s var(--ease),filter .95s var(--ease);transition-delay:var(--motion-delay,0ms)}
.niaf-landing .motion-fragment.motion-in{opacity:1;transform:none;filter:none}
.niaf-landing .motion-media{clip-path:inset(0 0 100% 0 round 28px);transform:translateY(18px);transition:clip-path 1.05s var(--ease),transform 1.05s var(--ease);transition-delay:var(--motion-delay,0ms)}
.niaf-landing .motion-media.motion-in{clip-path:inset(0 0 0 0 round 28px);transform:none}
.niaf-landing .motion-line{position:relative}.niaf-landing .motion-line:after{content:"";position:absolute;left:0;bottom:-11px;width:min(110px,28%);height:1px;background:var(--rose);transform:scaleX(0);transform-origin:left;transition:transform .8s .2s var(--ease)}.niaf-landing .motion-line.motion-in:after{transform:scaleX(1)}
.niaf-landing .pillars-wrap .motion-line:after{background:rgba(255,255,255,.58)}

@media(max-width:980px){
  .niaf-landing .process-head,.niaf-landing .pillars-head{grid-template-columns:1fr!important;gap:28px}.niaf-landing .process-side,.niaf-landing .pillars-side{grid-template-columns:minmax(0,1.1fr) minmax(220px,.9fr);align-items:center}.niaf-landing .process-head.no-media .process-side,.niaf-landing .pillars-head.no-media .pillars-side{grid-template-columns:1fr}.niaf-landing .section-media{height:210px}.niaf-landing .process-grid{grid-template-columns:1fr}.niaf-landing .process-step{min-height:0;padding:27px 0}.niaf-landing .process-step:not(:last-child){margin-right:0}.niaf-landing .process-step p{margin-top:0}.niaf-landing .process-step-icon{margin:22px 0 16px}.niaf-landing .testimonial-submit-wrap{grid-template-columns:1fr}.niaf-landing .testimonial-submit-copy{max-width:680px}
}
@media(max-width:680px){
  .niaf-landing section[id],.niaf-landing header[id]{scroll-margin-top:82px}.niaf-landing .process-side,.niaf-landing .pillars-side{grid-template-columns:1fr}.niaf-landing .section-media{height:190px;border-radius:20px}.niaf-landing .process-intro,.niaf-landing .pillars-intro{padding:16px}.niaf-landing .pillars{grid-template-columns:1fr}.niaf-landing .pillar{min-height:260px}.niaf-landing .pillar-icon{margin:28px 0 22px}.niaf-landing .testimonial-submit-wrap{padding:24px 18px;border-radius:24px}.niaf-landing .testimonial-form{grid-template-columns:1fr;padding:17px}.niaf-landing .testimonial-message,.niaf-landing .testimonial-consent,.niaf-landing .testimonial-form>.btn{grid-column:1}.niaf-landing .testimonial-submit-copy h3{font-size:2.35rem}
}
@media(prefers-reduced-motion:reduce){.niaf-landing .motion-fragment,.niaf-landing .motion-media{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important;transition:none!important}.niaf-landing .motion-line:after{transform:scaleX(1)!important;transition:none!important}}
.niaf-landing .review-controls.is-hidden{display:none!important}
.niaf-landing .reviews-head h2{font-size:clamp(3.15rem,5.2vw,5.15rem);max-width:760px}.niaf-landing .reviews-head .reviews-intro{max-width:520px}.niaf-landing .review-track{transition:transform .68s cubic-bezier(.22,.7,.2,1)}

/* ===== V0.2.5 — landing refinement: editorial testimonials, smoother anchors, clearer CTA ===== */
html.niaf-js{scroll-behavior:auto!important}

/* Hero: one clear action and a real down-arrow cue. */
.niaf-landing .hero-actions{align-items:center}
.niaf-landing .hero-contact-cta{min-width:245px}
.niaf-landing .hero-scroll-cue{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;bottom:18px;opacity:.82;transition:opacity .28s ease,color .28s ease,transform .28s var(--ease)}
.niaf-landing .hero-scroll-cue:hover{opacity:1;color:var(--rose);transform:translateX(-50%) translateY(2px)}
.niaf-landing .hero-scroll-cue .cue-icon{width:34px;height:34px;border:1px solid rgba(169,111,105,.2);border-radius:50%;display:grid;place-items:center;background:rgba(255,253,249,.48);box-shadow:0 10px 26px rgba(81,69,65,.05);animation:niafCueBounce 2.15s ease-in-out infinite}
.niaf-landing .hero-scroll-cue .cue-icon svg{width:17px;height:17px;color:var(--rose)}
.niaf-landing .hero-scroll-cue .cue-label{width:auto;height:auto;border:0;border-radius:0;background:none;font-size:.61rem;letter-spacing:.15em;font-weight:800;text-transform:uppercase;color:inherit}
.niaf-landing .hero-scroll-cue .cue-label:after{display:none}
@keyframes niafCueBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

/* Physical-health icon: cleaner activity/vitality symbol. */
.niaf-landing .pillar-icon{position:relative;overflow:hidden}
.niaf-landing .pillar-icon:after{content:"";position:absolute;inset:-45%;background:linear-gradient(120deg,transparent 38%,rgba(255,255,255,.18),transparent 62%);transform:translateX(-80%) rotate(12deg);transition:transform .75s var(--ease);pointer-events:none}
.niaf-landing .pillar:hover .pillar-icon:after{transform:translateX(80%) rotate(12deg)}

/* Reviews: title on the left; compact contribution form + context on the right. */
.niaf-landing .reviews-head{grid-template-columns:minmax(0,.92fr) minmax(390px,1.08fr);gap:clamp(50px,7vw,105px);align-items:start;margin-bottom:58px}
.niaf-landing .reviews-title-col{position:sticky;top:128px;align-self:start}
.niaf-landing .reviews-title-col h2{font-size:clamp(3.55rem,6vw,6.4rem);line-height:.9;max-width:650px}
.niaf-landing .reviews-side{display:grid;gap:22px;align-content:start;padding-top:4px}
.niaf-landing .testimonial-compact{padding:20px 21px 19px;border:1px solid rgba(81,69,65,.11);border-radius:22px;background:rgba(255,253,249,.68);box-shadow:0 14px 42px rgba(81,69,65,.052);backdrop-filter:blur(12px)}
.niaf-landing .testimonial-compact-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:14px}
.niaf-landing .testimonial-compact-head .eyebrow{font-size:.61rem;white-space:nowrap}
.niaf-landing .testimonial-compact-head h3{font-family:"Instrument Serif",Georgia,serif;font-size:1.38rem;line-height:1.05;font-weight:400;text-align:right;color:var(--ink);margin:0}
.niaf-landing .testimonial-form-compact{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
.niaf-landing .testimonial-form-compact label{gap:5px;font-size:.64rem;letter-spacing:.015em;font-weight:720;color:#6a5954}
.niaf-landing .testimonial-form-compact label>span{display:flex;gap:5px;align-items:baseline;font-weight:720;color:#6a5954}
.niaf-landing .testimonial-form-compact label>span em{font-style:normal;font-size:.58rem;font-weight:500;color:var(--muted)}
.niaf-landing .testimonial-form-compact input,.niaf-landing .testimonial-form-compact textarea,.niaf-landing .testimonial-form-compact select{min-height:39px;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.82);font-size:.72rem}
.niaf-landing .testimonial-form-compact .testimonial-message,.niaf-landing .testimonial-form-compact .testimonial-consent,.niaf-landing .testimonial-form-compact>.btn{grid-column:1/-1}
.niaf-landing .testimonial-form-compact .testimonial-message textarea{min-height:66px;max-height:150px}
.niaf-landing .testimonial-form-compact .testimonial-consent{font-size:.61rem!important;line-height:1.35!important;gap:7px!important;margin-top:1px}
.niaf-landing .testimonial-form-compact .testimonial-consent input{width:15px;height:15px;min-height:0;margin-top:1px}
.niaf-landing .testimonial-form-compact>.btn{min-height:42px;font-size:.76rem;margin-top:1px}
.niaf-landing .reviews-intro{display:grid;gap:10px;padding:2px 4px 0}
.niaf-landing .reviews-intro p{font-size:.93rem;line-height:1.65;color:var(--muted)}
.niaf-landing .reviews-intro>span{font-size:.68rem;line-height:1.52;color:var(--muted);padding-left:13px;border-left:2px solid var(--rose-2)}
.niaf-landing .testimonial-alert{margin:0;padding:11px 13px;border-radius:12px;font-size:.72rem}
.niaf-landing .review-track{margin-top:0}

/* More perceptible, still restrained editorial motion. */
.niaf-landing .motion-fragment{transform:translate3d(0,52px,0);filter:blur(10px);transition-duration:1.08s}
.niaf-landing .motion-media{clip-path:inset(0 100% 0 0 round 28px);transform:translate3d(22px,0,0) scale(.985);transition:clip-path 1.2s var(--ease),transform 1.2s var(--ease),filter 1.2s var(--ease);filter:saturate(.92)}
.niaf-landing .motion-media.motion-in{clip-path:inset(0 0 0 0 round 28px);transform:none;filter:none}
.niaf-landing [data-stagger].in>*:nth-child(1){transition-delay:.03s}
.niaf-landing [data-stagger].in>*:nth-child(2){transition-delay:.12s}
.niaf-landing [data-stagger].in>*:nth-child(3){transition-delay:.21s}
.niaf-landing [data-stagger].in>*:nth-child(4){transition-delay:.30s}
.niaf-landing [data-stagger].in>*:nth-child(5){transition-delay:.39s}
.niaf-landing .process-step-icon,.niaf-landing .pillar-icon{will-change:transform}
.niaf-landing .section-media img,.niaf-landing .about-image img,.niaf-landing .clinic-image img{transform:translate3d(0,var(--parallax-y,0),0) scale(1.025);transition:transform .2s linear}
.niaf-landing .hero-contact-cta{position:relative;overflow:hidden}
.niaf-landing .hero-contact-cta:after{content:"";position:absolute;top:-55%;bottom:-55%;width:42px;left:-60px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:rotate(18deg);transition:left .7s var(--ease);pointer-events:none}
.niaf-landing .hero-contact-cta:hover:after{left:calc(100% + 45px)}

@media(max-width:980px){
  .niaf-landing .reviews-head{grid-template-columns:1fr;gap:34px}
  .niaf-landing .reviews-title-col{position:static}
  .niaf-landing .reviews-title-col h2{max-width:760px}
  .niaf-landing .reviews-side{max-width:760px}
}
@media(max-width:680px){
  .niaf-landing .hero-contact-cta{width:100%;min-width:0}
  .niaf-landing .hero-scroll-cue{bottom:12px}
  .niaf-landing .reviews-head{gap:26px;margin-bottom:38px}
  .niaf-landing .reviews-title-col h2{font-size:clamp(3rem,14vw,4.65rem)}
  .niaf-landing .testimonial-compact{padding:17px 15px;border-radius:18px}
  .niaf-landing .testimonial-compact-head{display:grid;gap:7px;margin-bottom:12px}
  .niaf-landing .testimonial-compact-head h3{text-align:left;font-size:1.32rem}
  .niaf-landing .testimonial-form-compact{grid-template-columns:1fr}
  .niaf-landing .testimonial-form-compact .testimonial-message,.niaf-landing .testimonial-form-compact .testimonial-consent,.niaf-landing .testimonial-form-compact>.btn{grid-column:1}
}
@media(prefers-reduced-motion:reduce){
  .niaf-landing .hero-scroll-cue .cue-icon{animation:none!important}
  .niaf-landing .hero-contact-cta:after,.niaf-landing .pillar-icon:after{display:none!important}
}
.testimonial-reward-note{grid-column:1/-1;margin:2px 0 0;font-size:.66rem;line-height:1.5;color:rgba(81,69,65,.68)}


/* ===== V0.3.10 — mobile landing navigation + about composition ===== */
.niaf-landing .nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto}
.niaf-landing .mobile-menu-toggle{display:none;width:43px;height:43px;padding:0;border:1px solid rgba(81,69,65,.10);border-radius:50%;background:rgba(255,253,249,.72);color:var(--ink);box-shadow:0 8px 24px rgba(81,69,65,.055);cursor:pointer;place-items:center;position:relative;transition:background .25s ease,border-color .25s ease,transform .25s var(--ease)}
.niaf-landing .mobile-menu-toggle span{position:absolute;left:12px;width:17px;height:1.5px;border-radius:999px;background:currentColor;transform-origin:center;transition:transform .28s var(--ease),opacity .2s ease,top .28s var(--ease)}
.niaf-landing .mobile-menu-toggle span:nth-child(1){top:14px}.niaf-landing .mobile-menu-toggle span:nth-child(2){top:20px}.niaf-landing .mobile-menu-toggle span:nth-child(3){top:26px}
.niaf-landing .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){top:20px;transform:rotate(45deg)}
.niaf-landing .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(.35)}
.niaf-landing .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){top:20px;transform:rotate(-45deg)}
.niaf-landing .mobile-nav-panel{display:none;pointer-events:none}

@media(max-width:900px){
  .niaf-landing .nav-wrap.menu-open{transform:none!important}
  .niaf-landing nav{gap:12px}
  .niaf-landing .mobile-menu-toggle{display:grid}
  .niaf-landing .mobile-nav-panel{display:block;position:absolute;left:50%;top:calc(100% + 9px);width:min(calc(100% - 24px),var(--max));padding:10px;transform:translate(-50%,-10px) scale(.985);transform-origin:top center;opacity:0;visibility:hidden;pointer-events:none;background:rgba(251,249,246,.965);border:1px solid rgba(255,255,255,.84);border-radius:24px;box-shadow:0 24px 64px rgba(81,69,65,.13);backdrop-filter:blur(22px) saturate(125%);transition:opacity .22s ease,transform .28s var(--ease),visibility .22s ease}
  .niaf-landing .nav-wrap.menu-open .mobile-nav-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0) scale(1)}
  .niaf-landing .mobile-nav-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .niaf-landing .mobile-nav-links a{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 16px;border-radius:15px;color:var(--ink);font-size:.84rem;font-weight:720;text-decoration:none;transition:background .22s ease,color .22s ease,transform .22s var(--ease)}
  .niaf-landing .mobile-nav-links a:after{content:"↓";font-size:.72rem;color:var(--rose);opacity:.72;transform:rotate(-45deg)}
  .niaf-landing .mobile-nav-links a:hover,.niaf-landing .mobile-nav-links a.is-active{background:rgba(229,202,195,.24);color:var(--rose)}

  /* landing-base already collapses this grid, but premium desktop rules load later;
     keep the responsive rule here so the portrait never becomes a narrow strip. */
  .niaf-landing .about-grid{grid-template-columns:minmax(0,1fr)!important;gap:38px;align-items:start}
  .niaf-landing .about-image{width:100%;min-height:0!important;max-height:520px;aspect-ratio:16/10;border-radius:28px}
  .niaf-landing .about-image img{width:100%;height:100%;object-fit:cover;object-position:center 24%}
  .niaf-landing .about-copy{width:100%;max-width:760px}
}

@media(max-width:680px){
  .niaf-landing nav{padding:8px 9px 8px 12px;gap:8px}
  .niaf-landing .nav-actions{gap:6px}
  .niaf-landing .mobile-menu-toggle{width:42px;height:42px}
  .niaf-landing .nav-patient{min-height:42px;padding:0 14px}
  .niaf-landing .mobile-nav-panel{top:calc(100% + 7px);border-radius:21px;padding:8px}
  .niaf-landing .mobile-nav-links{grid-template-columns:1fr;gap:3px}
  .niaf-landing .mobile-nav-links a{min-height:46px;padding:0 15px;font-size:.82rem}
  .niaf-landing .about-grid{gap:30px}
  .niaf-landing .about-image{aspect-ratio:4/5;max-height:none;border-radius:25px}
  .niaf-landing .about-image img{object-position:center 18%}
  .niaf-landing .about-image .badge{right:12px;bottom:12px;max-width:calc(100% - 24px);padding:15px 16px;border-radius:16px}
}

@media(max-width:390px){
  .niaf-landing .nav-patient{padding:0 12px;font-size:.7rem}
  .niaf-landing .mobile-menu-toggle{width:40px;height:40px}
  .niaf-landing .mobile-menu-toggle span{left:11px}
}


/* ===== V0.3.11 — brand name visible in mobile navbar ===== */
@media(max-width:680px){
  .niaf-landing .brand{display:flex;align-items:center;gap:7px;min-width:0;flex:1 1 auto;max-width:min(48vw,178px)}
  .niaf-landing .brand span:last-child{display:block!important;min-width:0;max-width:132px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;line-height:1.05;letter-spacing:-.012em;color:var(--ink)}
  .niaf-landing .brand-mark{flex:0 0 auto;width:38px;height:38px}
  .niaf-landing .nav-actions{margin-left:auto;flex:0 0 auto}
}
@media(max-width:390px){
  .niaf-landing .brand{max-width:146px;gap:6px}
  .niaf-landing .brand span:last-child{max-width:101px;font-size:.68rem}
  .niaf-landing .brand-mark{width:36px;height:36px}
}
@media(max-width:350px){
  .niaf-landing .brand{max-width:126px}
  .niaf-landing .brand span:last-child{max-width:83px;font-size:.64rem}
  .niaf-landing .nav-patient{padding:0 10px;font-size:.66rem}
  .niaf-landing .mobile-menu-toggle{width:38px;height:38px}
}


/* 0.3.15 — migration/mobile-safe image visibility.
   Motion must never be able to hide editorial photos permanently. */
.niaf-landing .motion-media{
  clip-path:inset(0 0 0 0 round 28px)!important;
  opacity:.985;
  transform:translate3d(0,10px,0) scale(.995)!important;
  transition:opacity .75s var(--ease),transform .9s var(--ease),filter .9s var(--ease)!important;
}
.niaf-landing .motion-media.motion-in{
  clip-path:inset(0 0 0 0 round 28px)!important;
  opacity:1;
  transform:none!important;
  filter:none!important;
}
.niaf-landing .about-image img,
.niaf-landing .section-media img,
.niaf-landing .clinic-image img{
  opacity:1!important;
  visibility:visible!important;
}
