#ep-proof,
    #ep-proof *,
    #ep-proof *::before,
    #ep-proof *::after{
      box-sizing:border-box;
    }


    #ep-proof{
      --epp-ivory:#f5f0e6;
      --epp-paper:#fbf8f1;
      --epp-white:#fffdf8;
      --epp-ink:#0d1d35;
      --epp-ink-2:#1a2d4a;
      --epp-soft:#3a4a66;
      --epp-muted:#5a6880;
      --epp-gold:#b08d57;
      --epp-gold-d:#7a5c2d;
      --epp-gold-l:#ead6ad;
      --epp-hair:rgba(13,29,53,.10);
      --epp-hair-2:rgba(13,29,53,.16);

      --epp-serif:
        'Fraunces',
        Georgia,
        serif;

      --epp-sans:
        'Inter Tight',
        Inter,
        system-ui,
        sans-serif;

      position:relative;

      isolation:isolate;

      overflow:hidden;

      padding:
        56px
        30px;

      background:
        radial-gradient(
          62% 58% at 12% 0%,
          rgba(176,141,87,.11) 0%,
          transparent 62%
        ),

        radial-gradient(
          52% 58% at 95% 100%,
          rgba(13,29,53,.06) 0%,
          transparent 58%
        ),

        var(--epp-ivory);

      color:var(--epp-ink);

      font-family:var(--epp-sans);

      font-size:17px;

      line-height:1.65;

      -webkit-font-smoothing:antialiased;
    }


    #ep-proof::before{
      content:"";

      position:absolute;

      inset:0;

      z-index:-1;

      pointer-events:none;

      opacity:.13;

      background-image:
        url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.20'/%3E%3C/svg%3E");

      background-size:
        180px
        180px;
    }


    #ep-proof .ep-proof-inner{
      display:grid;

      grid-template-columns:
        240px
        minmax(0,1fr);

      align-items:center;

      gap:58px;

      width:100%;

      max-width:1180px;

      margin:0 auto;

      padding:
        38px
        42px;

      border:
        1px solid
        rgba(13,29,53,.10);

      border-radius:20px;

      background:
        rgba(255,253,248,.80);

      box-shadow:
        0 22px 54px
        rgba(13,29,53,.08);

      backdrop-filter:
        blur(10px);

      -webkit-backdrop-filter:
        blur(10px);
    }



    /* =====================================================
       RATING MEDALLION
    ====================================================== */

    #ep-proof .ep-rosette{
      position:relative;

      display:grid;

      width:220px;

      height:220px;

      place-items:center;

      justify-self:center;
    }


    #ep-proof .ep-rosette::before,
    #ep-proof .ep-rosette::after{
      content:"";

      position:absolute;

      border-radius:50%;

      pointer-events:none;
    }


    #ep-proof .ep-rosette::before{
      inset:0;

      border:
        1px dashed
        rgba(176,141,87,.68);

      animation:
        epProofSpin
        42s
        linear
        infinite;
    }


    #ep-proof .ep-rosette::after{
      inset:16px;

      border:
        1px solid
        rgba(176,141,87,.22);
    }


    @keyframes epProofSpin{

      to{
        transform:rotate(360deg);
      }

    }


    #ep-proof .ep-rosette-core{
      position:relative;

      z-index:2;

      display:flex;

      width:164px;

      height:164px;

      flex-direction:column;

      align-items:center;

      justify-content:center;

      gap:8px;

      border:
        1px solid
        rgba(176,141,87,.70);

      border-radius:50%;

      background:
        radial-gradient(
          circle at 35% 25%,
          rgba(255,255,255,.90),
          transparent 45%
        ),
        var(--epp-paper);

      box-shadow:
        inset 0 0 0 5px
        var(--epp-paper),

        inset 0 0 0 6px
        rgba(176,141,87,.20),

        0 16px 34px
        rgba(13,29,53,.10);
    }


    #ep-proof .ep-rosette-stars{
      display:flex;

      gap:4px;

      color:var(--epp-gold);

      font-size:15px;

      line-height:1;

      letter-spacing:.03em;
    }


    #ep-proof .ep-rosette-score{
      color:var(--epp-gold-d);

      font-family:var(--epp-serif);

      font-size:54px;

      font-style:italic;

      font-weight:500;

      line-height:.86;

      letter-spacing:-.04em;
    }


    #ep-proof .ep-rosette-score sup{
      color:var(--epp-gold);

      font-size:.34em;

      font-weight:500;

      letter-spacing:.05em;

      vertical-align:super;
    }


    #ep-proof .ep-rosette-label{
      color:var(--epp-soft);

      font-size:11px;

      font-weight:750;

      line-height:1.2;

      letter-spacing:.16em;

      text-transform:uppercase;
    }


    #ep-proof .ep-rosette-note{
      position:absolute;

      right:-4px;

      bottom:18px;

      z-index:3;

      padding:
        8px
        11px;

      border:
        1px solid
        rgba(176,141,87,.30);

      border-radius:999px;

      background:var(--epp-ink);

      color:#fff;

      font-size:10px;

      font-weight:750;

      line-height:1.2;

      letter-spacing:.12em;

      text-transform:uppercase;

      box-shadow:
        0 8px 20px
        rgba(13,29,53,.18);
    }



    /* =====================================================
       CONTENT
    ====================================================== */

    #ep-proof .ep-proof-content{
      min-width:0;
    }


    #ep-proof .ep-meta{
      display:flex;

      align-items:center;

      gap:13px;

      margin-bottom:18px;

      color:var(--epp-gold-d);

      font-size:12px;

      font-weight:750;

      line-height:1.3;

      letter-spacing:.17em;

      text-transform:uppercase;
    }


    #ep-proof .ep-meta::before{
      content:"";

      width:34px;

      height:1px;

      background:var(--epp-gold);
    }


    #ep-proof .ep-title{
      max-width:820px;

      margin:
        0
        0
        17px;

      color:var(--epp-ink);

      font-family:var(--epp-serif);

      font-size:
        clamp(38px,4vw,58px);

      font-weight:500;

      line-height:1.04;

      letter-spacing:-.028em;

      text-wrap:balance;
    }


    #ep-proof .ep-title em{
      color:var(--epp-gold-d);

      font-style:italic;

      font-weight:500;
    }


    #ep-proof .ep-sub{
      max-width:830px;

      margin:
        0
        0
        25px;

      color:var(--epp-ink-2);

      font-family:var(--epp-serif);

      font-size:20px;

      font-weight:400;

      line-height:1.62;

      letter-spacing:-.006em;
    }


    #ep-proof .ep-sub strong{
      color:var(--epp-gold-d);

      font-style:italic;

      font-weight:600;
    }


    #ep-proof .ep-proof-divider{
      width:100%;

      height:1px;

      margin-bottom:18px;

      background:
        linear-gradient(
          90deg,
          var(--epp-hair-2),
          transparent
        );
    }



    /* =====================================================
       PATIENT ORIGINS
    ====================================================== */

    #ep-proof .ep-origins-label{
      margin:
        0
        0
        11px;

      color:var(--epp-muted);

      font-size:11px;

      font-weight:750;

      line-height:1.3;

      letter-spacing:.15em;

      text-transform:uppercase;
    }


    #ep-proof .ep-origins{
      display:flex;

      flex-wrap:wrap;

      gap:9px;
    }


    #ep-proof .ep-origin{
      display:inline-flex;

      min-height:39px;

      align-items:center;

      gap:8px;

      padding:
        9px
        13px;

      border:
        1px solid
        rgba(13,29,53,.11);

      border-radius:999px;

      background:
        rgba(255,255,255,.66);

      color:var(--epp-soft);

      font-size:11px;

      font-weight:750;

      line-height:1.2;

      letter-spacing:.10em;

      text-transform:uppercase;

      box-shadow:
        0 5px 14px
        rgba(13,29,53,.04);
    }


    #ep-proof .ep-origin-flag{
      font-size:16px;

      line-height:1;
    }



    /* =====================================================
       TABLET
    ====================================================== */

    @media(max-width:900px){

      #ep-proof{
        padding:
          46px
          24px;
      }


      #ep-proof .ep-proof-inner{
        grid-template-columns:1fr;

        gap:27px;

        padding:
          34px
          30px;

        text-align:center;
      }


      #ep-proof .ep-meta{
        justify-content:center;
      }


      #ep-proof .ep-sub{
        margin-right:auto;

        margin-left:auto;
      }


      #ep-proof .ep-proof-divider{
        background:
          linear-gradient(
            90deg,
            transparent,
            var(--epp-hair-2),
            transparent
          );
      }


      #ep-proof .ep-origins{
        justify-content:center;
      }


      #ep-proof .ep-origins-label{
        text-align:center;
      }

    }



    /* =====================================================
       MOBILE
    ====================================================== */

    @media(max-width:640px){

      #ep-proof{
        padding:
          30px
          20px
          34px;
      }


      #ep-proof .ep-proof-inner{
        gap:22px;

        padding:
          27px
          20px
          25px;

        border-radius:17px;
      }


      #ep-proof .ep-rosette{
        width:166px;

        height:166px;
      }


      #ep-proof .ep-rosette-core{
        width:126px;

        height:126px;

        gap:5px;
      }


      #ep-proof .ep-rosette-score{
        font-size:41px;
      }


      #ep-proof .ep-rosette-stars{
        font-size:13px;
      }


      #ep-proof .ep-rosette-label{
        font-size:9.5px;

        letter-spacing:.12em;
      }


      #ep-proof .ep-rosette-note{
        right:-12px;

        bottom:10px;

        font-size:9px;
      }


      #ep-proof .ep-meta{
        margin-bottom:14px;

        font-size:11px;

        letter-spacing:.12em;
      }


      #ep-proof .ep-meta::before{
        width:25px;
      }


      #ep-proof .ep-title{
        font-size:
          clamp(32px,9vw,43px);

        line-height:1.07;
      }


      #ep-proof .ep-sub{
        margin-bottom:20px;

        font-size:17px;

        line-height:1.65;
      }


      /* MOBILE COUNTRY CAROUSEL */

      #ep-proof .ep-origins{
        width:
          calc(100% + 20px);

        flex-wrap:nowrap;

        justify-content:flex-start;

        gap:9px;

        margin-right:-20px;

        padding:
          2px
          20px
          10px
          0;

        overflow-x:auto;

        overflow-y:hidden;

        scroll-snap-type:x mandatory;

        scroll-behavior:smooth;

        overscroll-behavior-x:contain;

        scrollbar-width:none;

        -webkit-overflow-scrolling:touch;
      }


      #ep-proof
      .ep-origins::-webkit-scrollbar{
        display:none;
      }


      #ep-proof .ep-origin{
        flex:
          0
          0
          auto;

        scroll-snap-align:start;

        scroll-snap-stop:always;

        min-height:41px;

        padding:
          10px
          14px;

        font-size:11px;
      }

    }



    /* =====================================================
       SMALL MOBILE
    ====================================================== */

    @media(max-width:380px){

      #ep-proof{
        padding-right:16px;

        padding-left:16px;
      }


      #ep-proof .ep-proof-inner{
        padding-right:17px;

        padding-left:17px;
      }


      #ep-proof .ep-title{
        font-size:30px;
      }


      #ep-proof .ep-sub{
        font-size:16.5px;
      }

    }



    /* =====================================================
       REDUCED MOTION
    ====================================================== */

    @media(prefers-reduced-motion:reduce){

      #ep-proof
      .ep-rosette::before{
        animation:none;
      }

    }