{: versionI"3.2.19 (Media Mark):EF:shaI"-aeaf70f59bf2933b0700638f19096bfa8e465102;F: contents"g o:Sass::Tree::RootNode :@children[o:Sass::Tree::CommentNode : @value[I"/* Scaling Variables */:ET: @type: silent;[: @linei: @options{o:Sass::Tree::VariableNode : @nameI" golden; T: @expro:Sass::Script::Number ;f 1.618:@numerator_units[:@denominator_units[; i:@originalI" 1.618; F; @ : @guarded0;[; i; @ o; ;I"minor-second; T;o; ;f 1.067;[;@; i;I" 1.067; F; @ ;0;[; i; @ o; ;I"major-second; T;o; ;f 1.125;[;@; i ;I" 1.125; F; @ ;0;[; i ; @ o; ;I"minor-third; T;o; ;f1.2;[;@; i ;I"1.2; F; @ ;0;[; i ; @ o; ;I"major-third; T;o; ;f 1.25;[;@; i ;I" 1.25; F; @ ;0;[; i ; @ o; ;I"perfect-fourth; T;o; ;f 1.333;[;@; i ;I" 1.333; F; @ ;0;[; i ; @ o; ;I"augmented-fourth; T;o; ;f 1.414;[;@; i ;I" 1.414; F; @ ;0;[; i ; @ o; ;I"perfect-fifth; T;o; ;f1.5;[;@; i;I"1.5; F; @ ;0;[; i; @ o; ;I"minor-sixth; T;o; ;f1.6;[;@; i;I"1.6; F; @ ;0;[; i; @ o; ;I"major-sixth; T;o; ;f 1.667;[;@; i;I" 1.667; F; @ ;0;[; i; @ o; ;I"minor-seventh; T;o; ;f 1.778;[;@; i;I" 1.778; F; @ ;0;[; i; @ o; ;I"major-seventh; T;o; ;f 1.875;[;@; i;I" 1.875; F; @ ;0;[; i; @ o; ;I" octave; T;o; ;i;[;@; i;I"2; F; @ ;0;[; i; @ o; ;I"major-tenth; T;o; ;f2.5;[;@; i;I"2.5; F; @ ;0;[; i; @ o; ;I"major-eleventh; T;o; ;f 2.667;[;@; i;I" 2.667; F; @ ;0;[; i; @ o; ;I"major-twelfth; T;o; ;i;[;@; i;I"3; F; @ ;0;[; i; @ o; ;I"double-octave; T;o; ;i ;[;@; i;I"4; F; @ ;0;[; i; @ o:Sass::Tree::FunctionNode ;I"modular-scale; T: @args[[o:Sass::Script::Variable;I" value; T:@underscored_nameI" value; T; @ 0[o;;I"increment; T;I"increment; T; @ 0[o;;I" ratio; T;I" ratio; T; @ 0: @splat0;[o; ;I"v1; T;o:Sass::Script::Funcall ;I"nth; T;[o; ;I" value; T;I" value; T; @ ; io; ;i;[;@; i;I"1; F; @ :@keywords{;0; i; @ ;0;[; i; @ o; ;I"v2; T;o; ;I"nth; T;[o; ;I" value; T;I" value; T; @ ; io; ;I" length; T;[o; ;I" value; T;I" value; T; @ ; i;{;0; i; @ ;{;0; i; @ ;0;[; i; @ o; ;I" value; T;o; ;I"v1; T;I"v1; T; @ ; i;0;[; i; @ o; ;[I"&/* scale $v2 to just above $v1 */; T; ; ;[; i; @ o:Sass::Tree::WhileNode ;o:Sass::Script::Operation :@operand1o; ;I"v2; T;I"v2; T; @ ; i:@operand2o; ;I"v1; T;I"v1; T; @ ; i:@operator:gt; i; @ ;[o; ;I"v2; T;o; ;o; ;I"v2; T;I"v2; T; @ ; i ; o; ;I" ratio; T;I" ratio; T; @ ; i ;!:div; i ; @ ;0;[; i ; @ o; ;[I"/* will be off-by-1 */; T; ; ;[; i ; @ ; i:@has_childrenT; @ o; ;o; ;o; ;I"v2; T;I"v2; T; @ ; i"; o; ;I"v1; T;I"v1; T; @ ; i";!:lt; i"; @ ;[o; ;I"v2; T;o; ;o; ;I"v2; T;I"v2; T; @ ; i#; o; ;I" ratio; T;I" ratio; T; @ ; i#;!: times; i#; @ ;0;[; i#; @ o; ;[I"/* will fix off-by-1 */; T; ; ;[; i#; @ ; i";$T; @ o; ;[I"I/* check AFTER scaling $v2 to prevent double-counting corner-case */; T; ; ;[; i&; @ o; ;I"double-stranded; T;o; ;o; ;I"v2; T;I"v2; T; @ ; i'; o; ;I"v1; T;I"v1; T; @ ; i';!;"; i'; @ ;0;[; i'; @ u:Sass::Tree::IfNodeÀ[o:Sass::Script::Operation :@operand1o:Sass::Script::Variable : @nameI"increment:ET:@underscored_nameI"increment; T: @options{: @linei):@operand2o:Sass::Script::Number : @valuei:@numerator_units[:@denominator_units[; i):@originalI"0; F; @ :@operator:gt; i); @ 0[o:Sass::Tree::ForNode : @varI"i; T: @fromo; ;i;[;@ ; i*;I"1; F; @ :@too; ;I"increment; T; I"increment; T; @ ; i*:@exclusiveF:@children[u:Sass::Tree::IfNodeÓ[o:Sass::Script::Operation :@operand1o:Sass::Script::Variable : @nameI"double-stranded:ET:@underscored_nameI"double_stranded; T: @options{: @linei+:@operand2o; ;o; ;o; ;I"v1; T; I"v1; T; @ ; i+; o; ;I" ratio; T; I" ratio; T; @ ; i+:@operator: times; i+; @ ; o; ;I"v2; T; I"v2; T; @ ; i+;:gt; i+; @ ;:and; i+; @ u:Sass::Tree::IfNodej[00[o:Sass::Tree::VariableNode : @nameI"v1:ET: @expro:Sass::Script::Operation :@operand1o:Sass::Script::Variable ;I"v1;T:@underscored_nameI"v1;T: @options{: @linei/:@operand2o; ;I" ratio;T; I" ratio;T; @ ;i/:@operator: times;i/; @ : @guarded0:@children[;i/; @ o; ;I" value;T;o; ;I"v1;T; I"v1;T; @ ;i0;0;[;i0; @ [o:Sass::Tree::VariableNode ;I" value; T: @expro; ;I"v2; T; I"v2; T; @ ; i,: @guarded0:@children[; i,; @ o; ;I"v2; T;o; ;o; ;I"v2; T; I"v2; T; @ ; i-; o; ;I" ratio; T; I" ratio; T; @ ; i-;;; i-; @ ;0;[; i-; @ ; i*:@has_childrenT; @ u;'„[o:Sass::Script::Operation :@operand1o:Sass::Script::Variable : @nameI"increment:ET:@underscored_nameI"increment; T: @options{: @linei5:@operand2o:Sass::Script::Number : @valuei:@numerator_units[:@denominator_units[; i5:@originalI"0; F; @ :@operator:lt; i5; @ 0[o:Sass::Tree::CommentNode ;[I"'/* adjust $v2 to just below $v1 */; T: @type: silent:@children[; i6; @ u:Sass::Tree::IfNode^[o:Sass::Script::Variable : @nameI"double-stranded:ET:@underscored_nameI"double_stranded;T: @options{: @linei70[o:Sass::Tree::VariableNode ;I"v2;T: @expro:Sass::Script::Operation :@operand1o; ;I"v2;T;I"v2;T; @ ; i8:@operand2o; ;I" ratio;T;I" ratio;T; @ ; i8:@operator:div; i8; @ : @guarded0:@children[; i8; @ o:Sass::Tree::ForNode : @varI"i; T: @fromo; ;I"increment; T; I"increment; T; @ ; i;:@too; ;iú;[;@ ; i;;I"-1; F; @ :@exclusiveF;[u;Ï[o:Sass::Script::Operation :@operand1o:Sass::Script::Variable : @nameI"double-stranded:ET:@underscored_nameI"double_stranded; T: @options{: @linei<:@operand2o; ;o; ;o; ;I"v1; T; I"v1; T; @ ; i<; o; ;I" ratio; T; I" ratio; T; @ ; i<:@operator:div; i<; @ ; o; ;I"v2; T; I"v2; T; @ ; i<;:lt; i<; @ ;:and; i<; @ u:Sass::Tree::IfNodeh[00[o:Sass::Tree::VariableNode : @nameI"v1:ET: @expro:Sass::Script::Operation :@operand1o:Sass::Script::Variable ;I"v1;T:@underscored_nameI"v1;T: @options{: @linei@:@operand2o; ;I" ratio;T; I" ratio;T; @ ;i@:@operator:div;i@; @ : @guarded0:@children[;i@; @ o; ;I" value;T;o; ;I"v1;T; I"v1;T; @ ;iA;0;[;iA; @ [o:Sass::Tree::VariableNode ;I" value; T: @expro; ;I"v2; T; I"v2; T; @ ; i=: @guarded0:@children[; i=; @ o; ;I"v2; T;o; ;o; ;I"v2; T; I"v2; T; @ ; i>; o; ;I" ratio; T; I" ratio; T; @ ; i>;;; i>; @ ;0;[; i>; @ ; i;:@has_childrenT; @ o:Sass::Tree::ReturnNode ;o; ;I" value; T;I" value; T; @ ; iF;[; iF; @ ; i;$T; @ :@templateI"½// Scaling Variables $golden: 1.618; $minor-second: 1.067; $major-second: 1.125; $minor-third: 1.2; $major-third: 1.25; $perfect-fourth: 1.333; $augmented-fourth: 1.414; $perfect-fifth: 1.5; $minor-sixth: 1.6; $major-sixth: 1.667; $minor-seventh: 1.778; $major-seventh: 1.875; $octave: 2; $major-tenth: 2.5; $major-eleventh: 2.667; $major-twelfth: 3; $double-octave: 4; @function modular-scale($value, $increment, $ratio) { $v1: nth($value, 1); $v2: nth($value, length($value)); $value: $v1; // scale $v2 to just above $v1 @while $v2 > $v1 { $v2: ($v2 / $ratio); // will be off-by-1 } @while $v2 < $v1 { $v2: ($v2 * $ratio); // will fix off-by-1 } // check AFTER scaling $v2 to prevent double-counting corner-case $double-stranded: $v2 > $v1; @if $increment > 0 { @for $i from 1 through $increment { @if $double-stranded and ($v1 * $ratio) > $v2 { $value: $v2; $v2: ($v2 * $ratio); } @else { $v1: ($v1 * $ratio); $value: $v1; } } } @if $increment < 0 { // adjust $v2 to just below $v1 @if $double-stranded { $v2: ($v2 / $ratio); } @for $i from $increment through -1 { @if $double-stranded and ($v1 / $ratio) < $v2 { $value: $v2; $v2: ($v2 / $ratio); } @else { $v1: ($v1 / $ratio); $value: $v1; } } } @return $value; } ; T; i;$T; @