fekkai.com Open in urlscan Pro
23.227.38.32  Public Scan

Submitted URL: http://fekkai.com/
Effective URL: https://fekkai.com/
Submission: On September 20 via api from US — Scanned from CA

Form analysis 17 forms found in the DOM

/search

<form action="/search" class="header-search__form"><button type="submit" title="Fetch search results" aria-label="Fetch search results"
    class="header-search__submit"><i class="header-search__submit-icon"><svg viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.271 16.598c-4.438 0-8.048-3.611-8.048-8.05C.223 4.112 3.833.5 8.27.5c4.438 0 8.05 3.61 8.05 8.049a.732.732 0 11-1.464 0A6.593 6.593 0 008.27 1.963 6.593 6.593 0 001.686 8.55a6.593 6.593 0 006.585 6.585c1.77 0 3.43-.692 4.676-1.948a.731.731 0 111.04 1.031 7.993 7.993 0 01-5.716 2.38z" fill="#212721"></path> <path fill-rule="evenodd" clip-rule="evenodd" d="M19.247 20.256a.73.73 0 01-.517-.214l-5.505-5.505a.731.731 0 111.035-1.035l5.505 5.505a.733.733 0 01-.518 1.25z" fill="#212721"></path></svg></i></button>
  <div class="header-search__input-wrapper"><input type="text" placeholder="Search by keyword, style, etc..." aria-label="Search by keyword, style, etc..." name="q" value="" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"
      class="header-search__input"></div> <input type="hidden" name="type" value="product,article">
</form>

/search

<form action="/search" class="header-search__form"><button type="submit" title="Fetch search results" aria-label="Fetch search results"
    class="header-search__submit"><i class="header-search__submit-icon"><svg viewBox="0 0 20 21" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.271 16.598c-4.438 0-8.048-3.611-8.048-8.05C.223 4.112 3.833.5 8.27.5c4.438 0 8.05 3.61 8.05 8.049a.732.732 0 11-1.464 0A6.593 6.593 0 008.27 1.963 6.593 6.593 0 001.686 8.55a6.593 6.593 0 006.585 6.585c1.77 0 3.43-.692 4.676-1.948a.731.731 0 111.04 1.031 7.993 7.993 0 01-5.716 2.38z" fill="#212721"></path> <path fill-rule="evenodd" clip-rule="evenodd" d="M19.247 20.256a.73.73 0 01-.517-.214l-5.505-5.505a.731.731 0 111.035-1.035l5.505 5.505a.733.733 0 01-.518 1.25z" fill="#212721"></path></svg></i></button>
  <div class="header-search__input-wrapper"><input type="text" placeholder="Search by keyword, style, etc..." aria-label="Search by keyword, style, etc..." name="q" value="" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"
      class="header-search__input"></div> <input type="hidden" name="type" value="product,article">
</form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="40053115519066"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="40053115519066"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="40053125578842"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="40053125578842"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="40053133508698"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="40053133508698"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="39855969304666"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="39855969304666"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="40053104246874"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="40053104246874"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="39970607038554"></form>

POST /cart/add

<form class="product-card__form js-product-form" action="/cart/add" method="post" enctype="multipart/form-data"><button class="btn btn btn-new--secondary product-card__form-button js-product-form-submit" type="submit">
    <div class="button__el">Add to Cart</div>
  </button><input type="hidden" name="id" value="39970607038554"></form>

POST https://manage.kmail-lists.com/ajax/subscriptions/subscribe

<form class="newsletter__form" action="https://manage.kmail-lists.com/ajax/subscriptions/subscribe" method="post" v-on:submit="submit" novalidate=""><input is="text-input" v-on:change="onInputChange" aria_labelledby="Email Address"
    class="newsletter__field text-input" modifier="newsletter" type="email" name="email" placeholder="Email Address" :autocorrect="false" :autocapitalize="false" :required="true" :validate-method="isValidEmail"
    error="Whoops%2C+something+went+wrong.+If+this+issue+persists%2C+please+%3Ca+href%3D%22%2Fpages%2Fcontact%22%3Econtact+us.%3C%2Fa%3E" :sr-only="true"><button class="btn newsletter__btn btn-new--secondary" type="submit">
    <div class="button__el">Sign Up</div>
  </button></form>

POST /cart

<form action="/cart" method="post" novalidate="" class="cart-grid__form">
  <transition name="fade-down">
    <div v-if="cart.errors &amp;&amp; cart.errors.length" class="error">
      <p>There are errors with your cart:</p>
      <ul>
        <li v-for="error in cart.errors" v-html="error"></li>
      </ul>
    </div>
  </transition>
  <div ref="cart" class="cart-grid__items w1" :class="{ 'is-loading': loading }">
    <div class="cart__header table__row-header label">
      <div class="cart__header__item table__cell">Item</div>
      <div class="cart__header__item table__cell align-l">Price</div>
      <div class="cart__header__item table__cell align-l">Quantity</div>
      <div class="cart__header__item table__cell align-r">Total</div>
    </div>
    <transition-group name="fade-left" tag="div" class="cart__body w1">
      <div v-for="(item, index) in cart.items" is="cart-item" class="cart__body-item" :url="item.url" :image="item.image" :original-price="item.original_price" :price="item.final_price" :title="item.product_title" :quantity="item.quantity"
        :type="item.product_type" :index="index" :key="'id--' + item.product_id + 'index--' + index" :variant-id="item.variant_id" :variant-title="item.variant_title" :handle="item.handle" :acf-title="acf[index].product_title_family"
        :acf-type="acf[index].product_title_type" :properties="item.properties" inline-template="">
        <div class="cart-item relative">
          <div class="cart-item__info relative clear align-t">
            <div class="cart-item__featured-wrapper">
              <a href="" :href="permalink" class="cart-item__featured block ratio">
          <div is="vue-image" :src="image" :size="960" :alt="title" spinner-size="sm" css="fit-cover"></div>
        </a>
            </div>
            <div class="cart-item__details pl05">
              <h4 class="h5-new cart-item__details__heading"><a :href="url" v-html="itemTitle"></a></h4>
              <span class="h3-new block cart-item__product-type" v-html="itemType"></span>
              <div class="cart-item__details-descriptions">
                <p class="cart-item-new__details-description">
                  <span class="p2" v-if="isGiftCard &amp;&amp; !properties">Amount</span>
                  <span class="p2" v-else="" v-html="variantTitle"></span>
                </p>
                <div class="cart-item__properties" v-if="getBundleProduct">
                  <p class="cart-item__bundle-title" v-for="(item, name)  in getBundleProduct" v-if="name !== '__lion_context' &amp;&amp; name !== '__lion_discount_applied'">
                    <span class="p2">
                      {{ quantity }} x {{ item | removeSku() }}
                    </span>
                  </p>
                  <div v-if="hasSubscription" class="f aic cart-item__properties-subscription"><svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 11">
                      <path d="M7 .7C4.112.7 1.75 2.995 1.75 5.8H0l2.625 3.4L5.25 5.8H3.5c0-1.887 1.558-3.4 3.5-3.4V.7zm4.375 1.7L8.75 5.8h1.75c0 1.887-1.557 3.4-3.5 3.4v1.7c2.887 0 5.25-2.295 5.25-5.1H14l-2.625-3.4z" fill="#000"></path>
                    </svg>
                    <span class="p2">Ships every </span>
                    <div class="select-input--cart-subscription">
                      <select class="select-input__el p1" @change="handleIntervalFrequencyChange">
                        <option v-for="item in intervalFrequencyOptions" :value="item.value" :selected="(properties.shipping_interval_frequency === item.value)" v-html="item.label">
                        </option>
                      </select>
                    </div>
                  </div>
                </div>
              </div>
              <div class="cart-item__details-quantity">
                <div class="f aic">
                  <div is="quantity-selector" :key="variantId + '-' + quantity" :initial="quantity" @change="updateQuantity" :max="maxQuantity">
                  </div>
                  <button class="cart-item__remove underline p2" :aria-label="'Remove ' + title" @click.prevent="remove"> Remove </button>
                </div>
              </div>
            </div>
          </div>
          <div class="cart-item__price align-t align-l">
            <span class="p2" v-html="formattedPrice"></span>
            <span class="p2 cart-item__compare-price" v-if="comparePriceFormatted &amp;&amp; !comparePrice" v-html="comparePriceFormatted"></span>
            <span class="p2 cart-item__compare-price" v-if="comparePrice" v-html="comparePriceFormatted"></span>
          </div>
          <div class="cart-item__quantity align-t align-l">
            <div class="f aic">
              <div is="quantity-selector" :key="variantId + '-' + quantity" :initial="quantity" @change="updateQuantity" :max="maxQuantity">
              </div>
              <button class="cart-item__remove underline p2" :aria-label="'Remove ' + title" @click.prevent="remove"> Remove </button>
            </div>
          </div>
          <div class="cart-item__total align-t align-r">
            <span class="p2 cart-item__compare-price" v-if="totalComparePriceFormatted" v-html="totalComparePriceFormatted"></span>
            <span class="p2 cart-item__total-inner align-r" v-html="totalFormattedPrice"></span>
          </div>
          <p class="sr-only" ref="cartItemStatus" aria-live="polite"></p>
        </div>
      </div>
    </transition-group>
  </div>
  <div class="cart__footer">
    <div class="cart__footer-left">
      <div class="cart__footer-product" v-if="(recommendedProducts.length || recommendedProductDefaultData.length) &amp;&amp; isLoad">
        <template v-for="(item, index) in recommendedProducts" v-if="item &amp;&amp; index == 0" v-cloak="">
          <div is="recommended-variants" :item="item" :cart-item-ids="cartItemIds" inline-template="">
            <div class="recommended-variants__wrapper">
              <div class="f ais recommended-variants__inner">
                <div class="ratio recommended-variants__featured ro-1">
                  <a :href="url">


<div class="picture picture--vue--bind-dynamic
 fit-cover recommended-variants__image" :sources="item.featuredImage" :alt="title" is="vue-picture" inline-template=""><picture :class="{ 'is-loaded': isLoaded }">
      <source v-for="(srcset, index) in srcsets" :media="breakpointsArr[index]" :data-srcset="srcset" sizes="(min-width: 1280px) 33vw ,(min-width: 1000px) 50vw ,(min-width: 620px) 50vw ,(min-width: 320px) 50vw ,100vw" :key="sourcesArr[index] + index" ref="source">

    <noscript>
      <img class="picture__img is-fallback" src="" alt="title">
    </noscript>

    <img class="picture__img " :data-src="sourcesArr[sourcesArr.length - 1]" :alt="alt" ref="img" loading="lazy">
  </picture>
</div>
</a>
                </div>
                <div class="recommended-variants__details">
                  <h4 class="h5-new recommended-variants__product-name">
                    <a :href="url" v-html="title"></a>
                    <span class="h3-new block recommended-variants__product-type" v-html="productType"></span>
                  </h4>
                  <div class="p2-new recommended-variants__product-price">
                    <span class="inline-block" v-html="formattedPrice"></span>
                  </div>
                  <div class="recommended-variants__form">
                    <div class="select-input recommended-variants__select" v-if="variants.length > 1">
                      <div class="select-input__wrap">
                        <div class="select-input__el-wrap">
                          <label :for="item.recommendedOptionsValue" class="select-input__label sr-only" ref="selectLabel" v-html="item.recommendedOptionsValue"></label>
                          <select :id="item.recommendedOptionsValue" class="capitalize recommended-variants__variants select-input__el p2-new" ref="selectEl" @change="setActiveId($event)">
                            <option v-for="variant in variants" v-if="variant.available &amp;&amp; !cartItemIds.includes(variant.id)" :selected="variant.id === variantId" :value="variant.id" v-html="variant.title"></option>
                          </select>
                          <span class="select-input__outline"></span>
                          <i class="select-input__icon"></i>
                        </div>
                      </div>
                    </div><button class="btn btn-new--link recommended-variants__cta" type="button" @click="addToCart" ref="addToCartButton" :disabled="!isAddToCart">
                      <div class="button__el" v-text="textButton">Click Here</div>
                    </button><button class="btn btn-new--link recommended-variants__cta recommended-variants__cta--skip" type="button" @click="$parent.skipId(activeVariant)">
                      <div class="button__el">No Thanks </div>
                    </button>
                    <p class="sr-only" ref="addToCartStatus" aria-live="assertive" role="alert" aria-hidden="true">Adding product to your cart</p>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </template>
        <template v-for="(item, index) in recommendedProductDefaultData" v-if="recommendedProducts.length == 0" v-cloak="">
          <div is="recommended-variants" :item="item" :cart-item-ids="cartItemIds" inline-template="">
            <div class="recommended-variants__wrapper">
              <div class="f ais recommended-variants__inner">
                <div class="ratio recommended-variants__featured ro-1">
                  <a :href="url">


<div class="picture picture--vue--bind-dynamic
 fit-cover recommended-variants__image" :sources="item.featuredImage" :alt="title" is="vue-picture" inline-template=""><picture :class="{ 'is-loaded': isLoaded }">
      <source v-for="(srcset, index) in srcsets" :media="breakpointsArr[index]" :data-srcset="srcset" sizes="(min-width: 1280px) 33vw ,(min-width: 1000px) 50vw ,(min-width: 620px) 50vw ,(min-width: 320px) 50vw ,100vw" :key="sourcesArr[index] + index" ref="source">

    <noscript>
      <img class="picture__img is-fallback" src="" alt="title">
    </noscript>

    <img class="picture__img " :data-src="sourcesArr[sourcesArr.length - 1]" :alt="alt" ref="img" loading="lazy">
  </picture>
</div>
</a>
                </div>
                <div class="recommended-variants__details">
                  <h4 class="h5-new recommended-variants__product-name">
                    <a :href="url" v-html="title"></a>
                    <span class="h3-new block recommended-variants__product-type" v-html="productType"></span>
                  </h4>
                  <div class="p2-new recommended-variants__product-price">
                    <span class="inline-block" v-html="formattedPrice"></span>
                  </div>
                  <div class="recommended-variants__form">
                    <div class="select-input recommended-variants__select" v-if="variants.length > 1">
                      <div class="select-input__wrap">
                        <div class="select-input__el-wrap">
                          <label :for="item.recommendedOptionsValue" class="select-input__label sr-only" ref="selectLabel" v-html="item.recommendedOptionsValue"></label>
                          <select :id="item.recommendedOptionsValue" class="capitalize recommended-variants__variants select-input__el p2-new" ref="selectEl" @change="setActiveId($event)">
                            <option v-for="variant in variants" v-if="variant.available &amp;&amp; !cartItemIds.includes(variant.id)" :selected="variant.id === variantId" :value="variant.id" v-html="variant.title"></option>
                          </select>
                          <span class="select-input__outline"></span>
                          <i class="select-input__icon"></i>
                        </div>
                      </div>
                    </div><button class="btn btn-new--link recommended-variants__cta" type="button" @click="addToCart" ref="addToCartButton" :disabled="!isAddToCart">
                      <div class="button__el" v-text="textButton">Click Here</div>
                    </button><button class="btn btn-new--link recommended-variants__cta recommended-variants__cta--skip" type="button" @click="$parent.skipId(activeVariant)">
                      <div class="button__el">No Thanks </div>
                    </button>
                    <p class="sr-only" ref="addToCartStatus" aria-live="assertive" role="alert" aria-hidden="true">Adding product to your cart</p>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </template>
      </div>
    </div>
    <div class="cart__footer-right">
      <h3 class="p1-new cart__subtotal">Subtotal<span class="inline-block p1-new" v-html="subtotal"></span>
      </h3>
      <p class="p2 cart__footer-bottom-text">Shipping &amp; taxes calculated at checkout</p>
      <div class="align-c cart__footer-bottom"><a class="btn btn-new--primary btn--full-width cart__checkout-button" href="/cart">
      <div class="button__el">Checkout</div>
    </a>
        <a class="btn btn-tiertiary cart__continue-link" href="https://fekkai.com">
      <div class="button__el">Continue Shopping</div>
    </a>
      </div>
    </div>
  </div>
</form>

POST #

<form class="acsb-form" data-acsb-search="form" enctype="multipart/form-data" action="#" method="POST"> <input type="text" tabindex="0" name="acsb_search" autocomplete="off" placeholder="Unclear content? Search in dictionary..."
    aria-label="Unclear content? Search in dictionary..."> <i class="acsbi-search"></i> <i class="acsbi-chevron_down"></i> </form>

Text Content

Skip to Content
↵ENTER
Skip to Menu
↵ENTER
Skip to Footer
↵ENTER
Skip to content


FREE shipping on orders $30+

Fekkai
 * Shop
   
    * Shop by Collection
      * 
        Blonde Rx
      * 
        Clean Stylers
      * 
        Apple Cider Detox
      * 
        Brilliant Gloss
      * 
        Technician Color
      * 
        Full Blown Volume
      * 
        Shea Butter
      * 
        Super Strength
      * 
        Baby Blonde
    * Product Type
      * 
        Shampoo
      * 
        Conditioner
      * 
        Shampoo & Conditioner
      * 
        Styling & Treatments
      * 
        Liters
      * 
        Bundles
      * 
        Travel Size
      * 
        Best Sellers
      * 
        Gift Sets
    * Benefit
      * 
        Clarifying
      * 
        Shine + Anti Frizz
      * 
        Color Protection
      * 
        Volume
      * 
        Repair + Restore
      * 
        Hydration
      * 
        Brightening + Toning

 * About
   
    * 
      Our Ingredients
      
      Powered by sustainability. Sourced from nature.
      
      Read More
    * 
      Earn Rewards
      A rewards and loyalty program designed to guarantee a good hair day.
      Start Now
    * 
      Professional. Clean. Sustainable
      
      Provence-born and Paris-trained, Frédéric Fekkai opened his groundbreaking
      namesake salon atop New York’s Bergdorf Goodman Department Store, cre...
      
      Hear Our Values

 * Blog
 * Take the Quiz

 * Find a Salon

Sign up for rewards
 * Search
 * Account
 * 


 * Shop
   * Shop
   * Shop by Collection
     * Shop by Collection
        * 
          Blonde Rx
        * 
          Clean Stylers
        * 
          Apple Cider Detox
        * 
          Brilliant Gloss
        * 
          Technician Color
        * 
          Full Blown Volume
        * 
          Shea Butter
        * 
          Super Strength
        * 
          Baby Blonde
   * Product Type
     * Product Type
        * 
          Shampoo
        * 
          Conditioner
        * 
          Shampoo & Conditioner
        * 
          Styling & Treatments
        * 
          Liters
        * 
          Bundles
        * 
          Travel Size
        * 
          Best Sellers
        * 
          Gift Sets
   * Benefit
     * Benefit
        * 
          Clarifying
        * 
          Shine + Anti Frizz
        * 
          Color Protection
        * 
          Volume
        * 
          Repair + Restore
        * 
          Hydration
        * 
          Brightening + Toning
   * Shop All
     
     
     FEATURED
     
     Apple Cider Detox has finally arrived. Get the details on our new
     clarifying collection.
     
     Learn More
 * About
   * About
   
   
   * OUR INGREDIENTS
     
     Powered by sustainability. Sourced from nature.
     
     Read More
   
   
   * EARN REWARDS
     
     A rewards and loyalty program designed to guarantee a good hair day.
     Start Now
   
   
   * PROFESSIONAL. CLEAN. SUSTAINABLE
     
     Provence-born and Paris-trained, Frédéric Fekkai opened his groundbreaking
     namesake salon atop...
     
     Hear Our Values
 * Blog
 * Take the Quiz

 * Find a Salon

Sign up for rewards
Account

Let me help you curate the best product for your hair

Take the Quiz
introducing


BLONDE RX
COLLECTION

Instantly tone, brighten & repair blonde hair.
shop now


SALON-LEVEL CARE

No appointment necessary


APPLE CIDER DETOX

Show your scalp love.

SHOP NOW


BABY BLONDE

Brighten + Lighten.

Shop Now


CLEAN STYLERS

Stylers that treat and treatments that style.

SHOP NOW


LET YOUR HAIR DOWN

These should help
Add to Cart

Blonde Rx

0.0
(0)

PURPLE TONING SHAMPOO

$28.00

More Sizes Available

Add to Cart
Add to Cart

Blonde Rx

0.0
(0)

ANTI-BRASS REPAIR PURPLE HAIR MASK

$36.00

Add to Cart
Add to Cart

Blonde Rx

0.0
(0)

BRIGHTENING OIL VITAMIN C ELIXIR

$28.00

Add to Cart
Add to Cart

Clean Stylers

4.5
(175)

STRAIGHT BALM

$26.00

More Sizes Available

Add to Cart
Add to Cart

Clean Stylers

4.7
(6)

SHEER DRY SHAMPOO

$26.00

Add to Cart
Add to Cart

Clean Stylers

4.0
(3)

FLEXIBLE HOLD HAIRSPRAY

$26.00

Add to Cart


FIND YOUR PERFECT PLAN

I'll curate your hair's ideal care

I believe in creating luxurious, sustainable formulas with the very
best ingredients that speak to your hair’s natural beauty.


Tell me about your hair


OUR IN-SALON TESTING PROCESS FEATURES:

0

Months of Weekly Salon Testing

0

Total Test Subjects Per Trial

0

Animals Were Harmed

Explore our ingredients


SHOW US YOUR FEKKAI STYLE

Tag #FEKKAI on social, and show us how you celebrate your hair.



STORIES

Explore our blog for better hair


SPRAY RESPONSIBLY

Looking good not at the expense of the planet.  
Read Now



HOW TO FIND THE RIGHT WINTER MOISTURIZER FOR YOUR HAIR

Olive Oil? Shea Butter? We break it all down.
Read Now



HOW FRÉDÉRIC FEKKAI STARTED THE SKINIFICIATION OF HAIRCARE MOVEMENT

It was a total gamechanger.
Read Now


Shipped within 4-6 days
30 day online returns. View details


PROFESSIONAL. CLEAN. SUSTAINABLE.

100% Vegan and Cruelty Free
Free of Gluten, Sulfates, Silicone, Parabens and Phthalate
Cruelty free
Bottle made from 95% recycled plastic


ABOUT

 * About Frédéric Fekkai
 * Ingredients
 * Join the Cause
 * Blog
 * Salons
 * Careers
 * Terms and Conditions
 * Privacy Policy
 * Authorized Retailer Terms and Conditions


ORDERS

 * My Account
 * My Orders
 * Shipping & Returns
 * FAQ
 * Contact Us


LEARN ABOUT YOUR HAIR

Subscribe to get hair tips from Frederic delivered to your inbox.

Sign Up




FOLLOW US

Facebook
Instagram
Youtube
Tiktok
Pinterest
Twitter
© Fekkai 2022




YOUR CART

Close cart

There are errors with your cart:

 * 

Item
Price
Quantity
Total

Amount

{{ quantity }} x {{ item | removeSku() }}

Ships every


Remove


Remove




<img class="picture__img is-fallback" src="" alt="title">
Click Here
No Thanks

Adding product to your cart

<img class="picture__img is-fallback" src="" alt="title">
Click Here
No Thanks

Adding product to your cart


SUBTOTAL

Shipping & taxes calculated at checkout

Checkout
Continue Shopping


YOUR CART IS CURRENTLY EMPTY.






REWARDS

You havepoints
Redeem your points!
$5 voucher
100 points

Redeem your points when you checkout
100 points per $1
Brilliant Gloss Shampoo 2oz
100% off160 points

View product
Full Blown Volume Shampoo 2oz
100% off160 points

View product
Technician Color Shampoo 2oz
100% off160 points

View product
Super Strength Conditioner 2oz
100% off160 points

View product
Shea Butter Intense Mask 2oz
100% off280 points

View product
Apple Cider Detox Scrub 2oz
100% off240 points

View product



English
Accessibility Adjustments
Reset Settings Statement Hide Interface

Choose the right accessibility profile for you
OFF ON
Seizure Safe Profile Clear flashes & reduces color
This profile enables epileptic and seizure prone users to browse safely by
eliminating the risk of seizures that result from flashing or blinking
animations and risky color combinations.
OFF ON
Vision Impaired Profile Enhances website's visuals
This profile adjusts the website, so that it is accessible to the majority of
visual impairments such as Degrading Eyesight, Tunnel Vision, Cataract,
Glaucoma, and others.
OFF ON
ADHD Friendly Profile More focus & fewer distractions
This profile significantly reduces distractions, to help people with ADHD and
Neurodevelopmental disorders browse, read, and focus on the essential elements
of the website more easily.
OFF ON
Cognitive Disability Profile Assists with reading & focusing
This profile provides various assistive features to help users with cognitive
disabilities such as Autism, Dyslexia, CVA, and others, to focus on the
essential elements of the website more easily.
OFF ON
Keyboard Navigation (Motor) Use website with the keyboard
This profile enables motor-impaired persons to operate the website using the
keyboard Tab, Shift+Tab, and the Enter keys. Users can also use shortcuts such
as “M” (menus), “H” (headings), “F” (forms), “B” (buttons), and “G” (graphics)
to jump to specific elements.

Note: This profile prompts automatically for keyboard users.
OFF ON
Blind Users (Screen Reader) Optimize website for screen-readers
This profile adjusts the website to be compatible with screen-readers such as
JAWS, NVDA, VoiceOver, and TalkBack. A screen-reader is software that is
installed on the blind user’s computer and smartphone, and websites should
ensure compatibility with it.

Note: This profile prompts automatically to screen-readers.
Content Adjustments
Content Scaling
Default

Readable Font
Highlight Titles
Highlight Links
Text Magnifier
Adjust Font Sizing
Default

Align Center
Adjust Line Height
Default

Align Left
Adjust Letter Spacing
Default

Align Right
Color Adjustments
Dark Contrast
Light Contrast
High Contrast
High Saturation
Adjust Text Colors
Cancel
Monochrome
Adjust Title Colors
Cancel
Low Saturation
Adjust Background Colors
Cancel
Orientation Adjustments
Mute Sounds
Hide Images
Read Mode
Reading Guide
Useful Links
Select an option Home Header Footer Main Content
Stop Animations
Reading Mask
Highlight Hover
Highlight Focus
Big Black Cursor
Big White Cursor
HIDDEN_ADJUSTMENTS
Keyboard Navigation
Accessible Mode
Screen Reader Adjustments
Read Mode
Web Accessibility Solution By accessiBe
Choose the Interface Language
English
Español
Deutsch
Português
Français
Italiano
עברית
繁體中文
Pусский
عربى
عربى
Nederlands
繁體中文
日本語
Polski
Türk
Accessibility StatementCompliance status

We firmly believe that the internet should be available and accessible to anyone
and are committed to providing a website that is accessible to the broadest
possible audience, regardless of ability.

To fulfill this, we aim to adhere as strictly as possible to the World Wide Web
Consortium’s (W3C) Web Content Accessibility Guidelines 2.1 (WCAG 2.1) at the AA
level. These guidelines explain how to make web content accessible to people
with a wide array of disabilities. Complying with those guidelines helps us
ensure that the website is accessible to blind people, people with motor
impairments, visual impairment, cognitive disabilities, and more.

This website utilizes various technologies that are meant to make it as
accessible as possible at all times. We utilize an accessibility interface that
allows persons with specific disabilities to adjust the website’s UI (user
interface) and design it to their personal needs.

Additionally, the website utilizes an AI-based application that runs in the
background and optimizes its accessibility level constantly. This application
remediates the website’s HTML, adapts its functionality and behavior for
screen-readers used by blind users, and for keyboard functions used by
individuals with motor impairments.

If you wish to contact the website’s owner please use the website's form

Screen-reader and keyboard navigation

Our website implements the ARIA attributes (Accessible Rich Internet
Applications) technique, alongside various behavioral changes, to ensure blind
users visiting with screen-readers can read, comprehend, and enjoy the website’s
functions. As soon as a user with a screen-reader enters your site, they
immediately receive a prompt to enter the Screen-Reader Profile so they can
browse and operate your site effectively. Here’s how our website covers some of
the most important screen-reader requirements:

 1. Screen-reader optimization: we run a process that learns the website’s
    components from top to bottom, to ensure ongoing compliance even when
    updating the website. In this process, we provide screen-readers with
    meaningful data using the ARIA set of attributes. For example, we provide
    accurate form labels; descriptions for actionable icons (social media icons,
    search icons, cart icons, etc.); validation guidance for form inputs;
    element roles such as buttons, menus, modal dialogues (popups), and others. 
    
    Additionally, the background process scans all of the website’s images. It
    provides an accurate and meaningful image-object-recognition-based
    description as an ALT (alternate text) tag for images that are not
    described. It will also extract texts embedded within the image using an OCR
    (optical character recognition) technology. To turn on screen-reader
    adjustments at any time, users need only to press the Alt+1 keyboard
    combination. Screen-reader users also get automatic announcements to turn
    the Screen-reader mode on as soon as they enter the website.
    
    These adjustments are compatible with popular screen readers such as JAWS,
    NVDA, VoiceOver, and TalkBack.
    
    
 2. Keyboard navigation optimization: The background process also adjusts the
    website’s HTML and adds various behaviors using JavaScript code to make the
    website operable by the keyboard. This includes the ability to navigate the
    website using the Tab and Shift+Tab keys, operate dropdowns with the arrow
    keys, close them with Esc, trigger buttons and links using the Enter key,
    navigate between radio and checkbox elements using the arrow keys, and fill
    them in with the Spacebar or Enter key.
    
    Additionally, keyboard users will find content-skip menus available at any
    time by clicking Alt+2, or as the first element of the site while navigating
    with the keyboard. The background process also handles triggered popups by
    moving the keyboard focus towards them as soon as they appear, not allowing
    the focus to drift outside.
    
    Users can also use shortcuts such as “M” (menus), “H” (headings), “F”
    (forms), “B” (buttons), and “G” (graphics) to jump to specific elements.

Disability profiles supported on our website
 * Epilepsy Safe Profile: this profile enables people with epilepsy to safely
   use the website by eliminating the risk of seizures resulting from flashing
   or blinking animations and risky color combinations.
 * Vision Impaired Profile: this profile adjusts the website so that it is
   accessible to the majority of visual impairments such as Degrading Eyesight,
   Tunnel Vision, Cataract, Glaucoma, and others.
 * Cognitive Disability Profile: this profile provides various assistive
   features to help users with cognitive disabilities such as Autism, Dyslexia,
   CVA, and others, to focus on the essential elements more easily.
 * ADHD Friendly Profile: this profile significantly reduces distractions and
   noise to help people with ADHD, and Neurodevelopmental disorders browse,
   read, and focus on the essential elements more easily.
 * Blind Users Profile (Screen-readers): this profile adjusts the website to be
   compatible with screen-readers such as JAWS, NVDA, VoiceOver, and TalkBack. A
   screen-reader is installed on the blind user’s computer, and this site is
   compatible with it.
 * Keyboard Navigation Profile (Motor-Impaired): this profile enables
   motor-impaired persons to operate the website using the keyboard Tab,
   Shift+Tab, and the Enter keys. Users can also use shortcuts such as “M”
   (menus), “H” (headings), “F” (forms), “B” (buttons), and “G” (graphics) to
   jump to specific elements.

Additional UI, design, and readability adjustments
 1. Font adjustments – users can increase and decrease its size, change its
    family (type), adjust the spacing, alignment, line height, and more.
 2. Color adjustments – users can select various color contrast profiles such as
    light, dark, inverted, and monochrome. Additionally, users can swap color
    schemes of titles, texts, and backgrounds with over seven different coloring
    options.
 3. Animations – epileptic users can stop all running animations with the click
    of a button. Animations controlled by the interface include videos, GIFs,
    and CSS flashing transitions.
 4. Content highlighting – users can choose to emphasize essential elements such
    as links and titles. They can also choose to highlight focused or hovered
    elements only.
 5. Audio muting – users with hearing devices may experience headaches or other
    issues due to automatic audio playing. This option lets users mute the
    entire website instantly.
 6. Cognitive disorders – we utilize a search engine linked to Wikipedia and
    Wiktionary, allowing people with cognitive disorders to decipher meanings of
    phrases, initials, slang, and others.
 7. Additional functions – we allow users to change cursor color and size, use a
    printing mode, enable a virtual keyboard, and many other functions.

Assistive technology and browser compatibility

We aim to support as many browsers and assistive technologies as possible, so
our users can choose the best fitting tools for them, with as few limitations as
possible. Therefore, we have worked very hard to be able to support all major
systems that comprise over 95% of the user market share, including Google
Chrome, Mozilla Firefox, Apple Safari, Opera and Microsoft Edge, JAWS, and NVDA
(screen readers), both for Windows and MAC users.

Notes, comments, and feedback

Despite our very best efforts to allow anybody to adjust the website to their
needs, there may still be pages or sections that are not fully accessible, are
in the process of becoming accessible, or are lacking an adequate technological
solution to make them accessible. Still, we are continually improving our
accessibility, adding, updating, improving its options and features, and
developing and adopting new technologies. All this is meant to reach the optimal
level of accessibility following technological advancements. If you wish to
contact the website’s owner, please use the website's form

Hide Accessibility Interface? Please note: If you choose to hide the
accessibility interface, you won't be able to see it anymore, unless you clear
your browsing history and data. Are you sure that you wish to hide the
interface?
Accept Cancel

Continue



Processing the data, please give it a few seconds...