anchor.diff:  <% end %>
   <% end %>
   
  +
   <% function 'adjust-hue($color, $degrees)', returns: 'color' do %>
   Increases or decreases `$color`'s hue.
   
  
positive.code: %>
  Increases or decreases one or more properties of `$color` by fixed amounts.
  
  The value passed for each keyword is added to the corresponding property of the
  color, and the adjusted color is returned. It's an error to specify an RGB
  property (`$red`, `$green`, and/or `$blue`) at the same time as an HSL property
  (`$hue`, `$saturation`, and/or `$alpha`).
  
  All optional arguments must be numbers. The `$red`, `$green`, and `$blue`
  arguments must be [unitless][] and between -255 and 255 (inclusive). The `$hue`
  
negative.code: <% end %>
  
  
  <% function 'saturate($color, $amount)', returns: 'color' do %>
  Makes `$color` more saturated.
  
  The `$amount` must be a number between `0%` and `100%` (inclusive). Increases
  the HSL saturation of `$color` by that amount.
  
  <% heads_up do %>
  The `saturate()` function increases saturation by a fixed amount, which is often
  not the desired effect. To make a color a certain percentage more saturated than
  it was before, use [`scale-color()`](#scale-color) instead.
  
  <% example(autogen_css: false) do %>
  // #0e4982 has saturation 80%, so when saturate() adds 30% it just becomes
  // fully saturated.
  @debug saturate(#0e4982, 30%); // #004990
  
  // scale-color() instead makes it 30% more saturated than it was originally.
  @debug scale-color(#0e4982, $saturation: 30%); // #0a4986
  ===
  // #0e4982 has saturation 80%, so when saturate() adds 30% it just becomes
  // fully saturated.
  @debug saturate(#0e4982, 30%)  // #004990
  
  // scale-color() instead makes it 30% more saturated than it was originally.
  @debug scale-color(#0e4982, $saturation: 30%)  // #0a4986
  <% end %>
  <% end %>
  
  <% example(autogen_css: false) do %>
  // Saturation 50% becomes 70%.
  @debug saturate(#c69, 20%); // #e05299
  
  // Saturation 35% becomes 85%.
  @debug desaturate(#f2ece4, 50%); // #ebebeb
  
  // Saturation 80% becomes 100%.
  @debug saturate(#0e4982, 30%)  // #004990
  ===
  // Saturation 50% becomes 70%.
  @debug saturate(#c69, 20%); // #e05299
  
  // Saturation 35% becomes 85%.
  @debug desaturate(#f2ece4, 50%); // #ebebeb
  
  // Saturation 80% becomes 100%.
  @debug saturate(#0e4982, 30%)  // #004990
  <% end %>
  <% end %>
  
  
  <% function 'saturation($color)', returns: 'number' do %>
  Returns the HSL saturation of `$color` as a number between `0%` and `100%`.
  
  See also:
  * [`red()`](#red) for getting a color's red channel.
  * [`green()`](#green) for getting a color's green channel.
  * [`blue()`](#blue) for getting a color's blue channel.
  * [`hue()`](#hue) for getting a color's hue.
  * [`lightness()`](#lightness) for getting a color's lightness.
  * [`alpha()`](#alpha) for getting a color's alpha channel.
  
  <% example(autogen_css: false) do %>
  @debug saturation(#e1d7d2); // 20%
  @debug saturation(#f2ece4); // 30%
  @debug saturation(#dadbdf); // 7.2463768116%
  ===
  @debug saturation(#e1d7d2)  // 20%
  @debug saturation(#f2ece4)  // 30%
  @debug saturation(#dadbdf)  // 7.2463768116%
  <% end %>
  <% end %>
  
  
  <% function <<SIGNATURE, returns: 'color' do 
  scale-color($color,
    $red: null, $green: null, $blue: null,
    $saturation: null, $lightness: null,
    $alpha: null)
  SIGNATURE
  %>
  Fluidly scales one or more properties of `$color`.
  
  Each keyword argument must be a number between `-100%` and `100%` (inclusive).
  This indicates how far the corresponding property should be moved from its
  original position towards the maximum (if the argument is positive) or the
  minimum (if the argument is negative). This means that, for example,
  `$lightness: 50%` will make all colors `50%` closer to maximum lightness without
  making them fully white.
  
  It's an error to specify an RGB property (`$red`, `$green`, and/or `$blue`) at
  the same time as an HSL property (`$saturation`, and/or `$lightness`).
  
  See also:
  * [`adjust-color()`](#adjust-color) for changing a color's properties by fixed
    amounts.
  * [`change-color()`](#change-color) for setting a color's properties.
  
  <% example(autogen_css: false) do %>
  @debug scale-color(#6b717f, $red: 15%); // #81717f
  @debug scale-color(#d2e1dd, $lightness: -10%, $saturation: 10%); // #b3d4cb
  @debug scale-color(#998099, $alpha: -40%); // rgba(153, 128, 153, 0.6)
  ===
  @debug scale-color(#6b717f, $red: 15%)  // #81717f
  @debug scale-color(#d2e1dd, $lightness: -10%, $saturation: 10%)  // #b3d4cb
  @debug scale-color(#998099, $alpha: -40%)  // rgba(153, 128, 153, 0.6)
  <% end %>
  <% end %>
  
  
  <% function 'transparentize($color, $amount)', 'fade-out($color, $amount)', returns: 'color' do %>
  Makes `$color` more transparent.
  
  The `$amount` must be a number between `0` and `1` (inclusive). Decreases the
  alpha channel of `$color` by that amount.
  
  <% heads_up do %>
  The `transparentize()` function decreases the alpha channel by a fixed amount,
  which is often not the desired effect. To make a color a certain percentage more
  transparent than it was before, use [`scale-color()`](#scale-color) instead.
  
  <% example(autogen_css: false) do %>
  // rgba(#036, 0.3) has alpha 0.3, so when transparentize() subtracts 0.3 it
  // returns a fully transparent color.
  @debug transparentize(rgba(#036, 0.3), 0.3); // rgba(0, 51, 102, 0)
  
  // scale-color() instead makes it 30% more transparent than it was originally.
  @debug scale-color(rgba(#036, 0.3), $alpha: -30%); // rgba(0, 51, 102, 0.21)
  ===
  // rgba(#036, 0.3) has alpha 0.3, so when transparentize() subtracts 0.3 it
  // returns a fully transparent color.
  @debug transparentize(rgba(#036, 0.3), 0.3)  // rgba(0, 51, 102, 0)
  
  // scale-color() instead makes it 30% more transparent than it was originally.
  @debug scale-color(rgba(#036, 0.3), $alpha: -30%)  // rgba(0, 51, 102, 0.21)
  <% end %>
  <% end %>
  
  <% example(autogen_css: false) do %>
  @debug transparentize(rgba(#6b717f, 0.5), 0.2)  // rgba(107, 113, 127, 0.3)
  @debug fade-out(rgba(#e1d7d2, 0.5), 0.4)  // rgba(225, 215, 210, 0.1)
  @debug transparentize(rgba(#036, 0.3), 0.3)  // rgba(0, 51, 102, 0)
  ===
  @debug transparentize(rgba(#6b717f, 0.5), 0.2)  // rgba(107, 113, 127, 0.3)
  @debug fade-out(rgba(#e1d7d2, 0.5), 0.4)  // rgba(225, 215, 210, 0.1)
  @debug transparentize(rgba(#036, 0.3), 0.3)  // rgba(0, 51, 102, 0)
  <% end %>
  <% end %>
  