Make WordPress Core

Ticket #48110: 48110-beta-3.diff

File 48110-beta-3.diff, 266.1 KB (added by desrosj, 5 years ago)
  • src/wp-content/themes/twentytwenty/404.php

     
    1414
    1515        <div class="section-inner thin error404-content">
    1616
    17                 <h1 class="entry-title"><?php _e( 'Page Not Found', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></h1>
     17                <h1 class="entry-title"><?php _e( 'Page Not Found', 'twentytwenty' ); ?></h1>
    1818
    19                 <div class="intro-text"><p><?php _e( 'The page you were looking for could not be found. It might have been removed, renamed, or did not exist in the first place.', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></p></div>
     19                <div class="intro-text"><p><?php _e( 'The page you were looking for could not be found. It might have been removed, renamed, or did not exist in the first place.', 'twentytwenty' ); ?></p></div>
    2020
    2121                <?php
    2222                get_search_form(
    2323                        array(
    24                                 'label' => _x( '404 not found', 'Label', 'twentytwenty' ),
     24                                'label' => __( '404 not found', 'twentytwenty' ),
    2525                        )
    2626                );
    2727                ?>
    2828
    2929        </div><!-- .section-inner -->
    3030
    31         <?php get_template_part( 'template-parts/footer-menus-widgets' ); ?>
    32 
    3331</main><!-- #site-content -->
    3432
     33<?php get_template_part( 'template-parts/footer-menus-widgets' ); ?>
     34
    3535<?php
    3636get_footer();
  • src/wp-content/themes/twentytwenty/assets/css/editor-style-block-rtl.css

     
    7373        max-width: 610px;
    7474}
    7575
    76 .wp-block[data-align="wide"] .wp-block-group .wp-block {
    77         max-width: 100%;
     76.wp-block[data-align="wide"] .wp-block,
     77.wp-block[data-align="full"] .wp-block {
     78        max-width: none;
    7879}
    7980
    80 .wp-block[data-align="full"] .wp-block-group .wp-block {
    81         max-width: 100%;
     81.wp-block[data-align="wide"] .wp-block[data-align="wide"],
     82.wp-block[data-align="full"] .wp-block[data-align="wide"] {
     83        max-width: 1200px;
     84}
     85
     86.wp-block .wp-block[data-type="core/group"]:not([data-align="full"]):not([data-align="wide"]):not([data-align="left"]):not([data-align="right"]),
     87.wp-block .wp-block[data-type="core/cover"]:not([data-align="full"]):not([data-align="wide"]):not([data-align="left"]):not([data-align="right"]) {
     88        margin-right: auto;
     89        margin-left: auto;
     90        max-width: 610px;
     91}
     92
     93.wp-block .wp-block[data-align="full"] {
     94        margin-right: 0;
     95        margin-left: 0;
    8296}
    8397
    8498*[data-align="right"] .wp-block-edit,
     
    641655.editor-styles-wrapper .wp-block-cover .wp-block-cover__inner-container {
    642656        margin: 0 auto;
    643657        max-width: 1200px;
    644         width: calc(100% - 50px);
     658        width: calc(100% - 40px);
    645659}
    646660
    647661[data-align="left"] .wp-block-cover,
     
    651665        max-width: 260px;
    652666}
    653667
    654 .editor-styles-wrapper .wp-block-cover-image .wp-block,
    655 .editor-styles-wrapper .wp-block-cover .wp-block,
    656668.wp-block-cover-image .wp-block-cover-image-text,
    657669.wp-block-cover-image .wp-block-cover-text,
    658670.wp-block-cover-image h2,
     
    660672.wp-block-cover .wp-block-cover-text,
    661673.wp-block-cover h2 {
    662674        max-width: 100%;
    663         padding: 0;
    664 }
    665 
    666 .editor-styles-wrapper .wp-block-cover p {
    667         font-family: inherit;
    668675}
    669676
    670677.editor-styles-wrapper .wp-block-cover a {
    671678        color: inherit;
    672679}
    673680
     681/* Block: Shared Media Styles ---------------- */
     682
     683.wp-block[data-type*="core-embed"][data-align="full"] figcaption,
     684.wp-block[data-type="core/image"][data-align="full"] figcaption,
     685.wp-block[data-type="core/gallery"][data-align="full"] .blocks-gallery-caption {
     686        padding: 0 14px;
     687}
    674688
    675689/* Block: Paragraph -------------------------- */
    676690
     
    982996        margin-top: 0;
    983997}
    984998
     999.wp-block[data-type="core/group"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"],
     1000.wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] {
     1001        margin-right: 0;
     1002        width: 100%;
     1003}
     1004
    9851005/* Block: Paragraph -------------------------- */
    9861006
    9871007
     
    10411061@media ( min-width: 600px ) {
    10421062
    10431063
     1064        /* BLOCK: SHARED MEDIA STYLES */
     1065
     1066        .wp-block[data-type*="core-embed"][data-align="full"] figcaption,
     1067        .wp-block[data-type="core/image"][data-align="full"] figcaption,
     1068        .wp-block[data-type="core/gallery"][data-align="full"] .blocks-gallery-caption {
     1069                padding: 0 45px;
     1070        }
     1071
     1072        /* BLOCK: COLUMNS */
     1073
     1074        .editor-styles-wrapper .wp-block[data-type="core/column"] h1,
     1075        .editor-styles-wrapper .wp-block[data-type="core/column"] h2,
     1076        .editor-styles-wrapper .wp-block[data-type="core/column"] h3,
     1077        .editor-styles-wrapper .wp-block[data-type="core/column"] h4,
     1078        .editor-styles-wrapper .wp-block[data-type="core/column"] h5,
     1079        .editor-styles-wrapper .wp-block[data-type="core/column"] h6 {
     1080                margin: 35px 0 20px 0;
     1081        }
     1082
    10441083        /* BLOCK: PULLQUOTE */
    10451084
    10461085        .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit {
     
    12281267                font-size: 18px;
    12291268        }
    12301269
    1231         /* BLOCK: COVER */
    1232 
    1233         .editor-styles-wrapper .wp-block-cover-image .wp-block-cover__inner-container,
    1234         .editor-styles-wrapper .wp-block-cover .wp-block-cover__inner-container {
    1235                 width: calc(100% - 100px);
    1236         }
    1237 
    12381270        /* BLOCK: GROUP */
    12391271
    12401272        .wp-block[data-align="wide"] .wp-block-group.has-background,
  • src/wp-content/themes/twentytwenty/assets/css/editor-style-block.css

     
    7373        max-width: 610px;
    7474}
    7575
    76 .wp-block[data-align="wide"] .wp-block-group .wp-block {
    77         max-width: 100%;
     76.wp-block[data-align="wide"] .wp-block,
     77.wp-block[data-align="full"] .wp-block {
     78        max-width: none;
    7879}
    7980
    80 .wp-block[data-align="full"] .wp-block-group .wp-block {
    81         max-width: 100%;
     81.wp-block[data-align="wide"] .wp-block[data-align="wide"],
     82.wp-block[data-align="full"] .wp-block[data-align="wide"] {
     83        max-width: 1200px;
     84}
     85
     86.wp-block .wp-block[data-type="core/group"]:not([data-align="full"]):not([data-align="wide"]):not([data-align="left"]):not([data-align="right"]),
     87.wp-block .wp-block[data-type="core/cover"]:not([data-align="full"]):not([data-align="wide"]):not([data-align="left"]):not([data-align="right"]) {
     88        margin-left: auto;
     89        margin-right: auto;
     90        max-width: 610px;
     91}
     92
     93.wp-block .wp-block[data-align="full"] {
     94        margin-left: 0;
     95        margin-right: 0;
    8296}
    8397
    8498*[data-align="right"] .wp-block-edit,
     
    641655.editor-styles-wrapper .wp-block-cover .wp-block-cover__inner-container {
    642656        margin: 0 auto;
    643657        max-width: 1200px;
    644         width: calc(100% - 50px);
     658        width: calc(100% - 40px);
    645659}
    646660
    647661[data-align="left"] .wp-block-cover,
     
    651665        max-width: 260px;
    652666}
    653667
    654 .editor-styles-wrapper .wp-block-cover-image .wp-block,
    655 .editor-styles-wrapper .wp-block-cover .wp-block,
    656668.wp-block-cover-image .wp-block-cover-image-text,
    657669.wp-block-cover-image .wp-block-cover-text,
    658670.wp-block-cover-image h2,
     
    660672.wp-block-cover .wp-block-cover-text,
    661673.wp-block-cover h2 {
    662674        max-width: 100%;
    663         padding: 0;
    664 }
    665 
    666 .editor-styles-wrapper .wp-block-cover p {
    667         font-family: inherit;
    668675}
    669676
    670677.editor-styles-wrapper .wp-block-cover a {
    671678        color: inherit;
    672679}
    673680
     681/* Block: Shared Media Styles ---------------- */
     682
     683.wp-block[data-type*="core-embed"][data-align="full"] figcaption,
     684.wp-block[data-type="core/image"][data-align="full"] figcaption,
     685.wp-block[data-type="core/gallery"][data-align="full"] .blocks-gallery-caption {
     686        padding: 0 14px;
     687}
    674688
    675689/* Block: Paragraph -------------------------- */
    676690
     
    982996        margin-top: 0;
    983997}
    984998
     999.wp-block[data-type="core/group"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"],
     1000.wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] {
     1001        margin-left: 0;
     1002        width: 100%;
     1003}
     1004
    9851005/* Block: Paragraph -------------------------- */
    9861006
    9871007
     
    10411061@media ( min-width: 600px ) {
    10421062
    10431063
     1064        /* BLOCK: SHARED MEDIA STYLES */
     1065
     1066        .wp-block[data-type*="core-embed"][data-align="full"] figcaption,
     1067        .wp-block[data-type="core/image"][data-align="full"] figcaption,
     1068        .wp-block[data-type="core/gallery"][data-align="full"] .blocks-gallery-caption {
     1069                padding: 0 45px;
     1070        }
     1071
     1072        /* BLOCK: COLUMNS */
     1073
     1074        .editor-styles-wrapper .wp-block[data-type="core/column"] h1,
     1075        .editor-styles-wrapper .wp-block[data-type="core/column"] h2,
     1076        .editor-styles-wrapper .wp-block[data-type="core/column"] h3,
     1077        .editor-styles-wrapper .wp-block[data-type="core/column"] h4,
     1078        .editor-styles-wrapper .wp-block[data-type="core/column"] h5,
     1079        .editor-styles-wrapper .wp-block[data-type="core/column"] h6 {
     1080                margin: 35px 0 20px 0;
     1081        }
     1082
    10441083        /* BLOCK: PULLQUOTE */
    10451084
    10461085        .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit {
     
    12281267                font-size: 18px;
    12291268        }
    12301269
    1231         /* BLOCK: COVER */
    1232 
    1233         .editor-styles-wrapper .wp-block-cover-image .wp-block-cover__inner-container,
    1234         .editor-styles-wrapper .wp-block-cover .wp-block-cover__inner-container {
    1235                 width: calc(100% - 100px);
    1236         }
    1237 
    12381270        /* BLOCK: GROUP */
    12391271
    12401272        .wp-block[data-align="wide"] .wp-block-group.has-background,
  • src/wp-content/themes/twentytwenty/assets/css/editor-style-classic-rtl.css

     
    88
    99/*
    1010 * Chrome renders extra-wide &nbsp; characters for the Hoefler Text font.
    11  * This results in a jumping cursor when typing in both the Classic and block
    12  * editors. The following font-face override fixes the issue by manually
     11 * This results in a jumping cursor when typing in both the classic editor and
     12 * block editor. The following font-face override fixes the issue by manually
    1313 * inserting a custom font that includes just a Hoefler Text space replacement
    1414 * for that character instead.
    1515 */
     
    6565}
    6666
    6767body#tinymce.wp-editor * {
    68         -webkit-box-sizing: border-box;
    69         -moz-box-sizing: border-box;
    7068        box-sizing: border-box;
    7169        -webkit-font-smoothing: antialiased;
    7270}
     
    373371}
    374372
    375373body#tinymce.wp-editor .alignleft {
    376         float: right;
     374        float: left;
    377375        margin-left: 25px;
    378376        max-width: 260px;
    379377}
    380378
    381379body#tinymce.wp-editor .alignright {
    382         float: left;
     380        float: right;
    383381        margin-right: 25px;
    384382        max-width: 260px;
    385383}
  • src/wp-content/themes/twentytwenty/assets/css/editor-style-classic.css

     
    88
    99/*
    1010 * Chrome renders extra-wide &nbsp; characters for the Hoefler Text font.
    11  * This results in a jumping cursor when typing in both the Classic and block
    12  * editors. The following font-face override fixes the issue by manually
     11 * This results in a jumping cursor when typing in both the classic editor and
     12 * block editor. The following font-face override fixes the issue by manually
    1313 * inserting a custom font that includes just a Hoefler Text space replacement
    1414 * for that character instead.
    1515 */
     
    6565}
    6666
    6767body#tinymce.wp-editor * {
    68         -webkit-box-sizing: border-box;
    69         -moz-box-sizing: border-box;
    7068        box-sizing: border-box;
    7169        -webkit-font-smoothing: antialiased;
    7270}
     
    373371}
    374372
    375373body#tinymce.wp-editor .alignleft {
     374
     375        /*rtl:ignore*/
    376376        float: left;
    377377        margin-right: 25px;
    378378        max-width: 260px;
    379379}
    380380
    381381body#tinymce.wp-editor .alignright {
     382
     383        /*rtl:ignore*/
    382384        float: right;
    383385        margin-left: 25px;
    384386        max-width: 260px;
  • src/wp-content/themes/twentytwenty/assets/js/color-calculations.js

     
    133133 * @param {number} accentHue - The hue for our accent color.
    134134 * @return {Object} - this
    135135 */
    136 function twentyTwentyColor( backgroundColor, accentHue ) { // jshint ignore:line
     136function twentyTwentyColor( backgroundColor, accentHue ) {// jshint ignore:line
    137137        var color = new _twentyTwentyColor( backgroundColor, accentHue );
    138138        color.setAccentColorsArray();
    139139        return color;
  • src/wp-content/themes/twentytwenty/assets/js/index.js

     
    44
    55var twentytwenty = twentytwenty || {};
    66
     7// Set a default value for scrolled.
     8twentytwenty.scrolled = 0;
     9
    710// polyfill closest
    811// https://developer.mozilla.org/en-US/docs/Web/API/Element/closest#Polyfill
    912if ( ! Element.prototype.closest ) {
     
    3740}
    3841
    3942// event "polyfill"
    40 
    4143twentytwenty.createEvent = function( eventName ) {
    4244        var event;
    4345        if ( typeof window.Event === 'function' ) {
     
    5153
    5254// matches "polyfill"
    5355// https://developer.mozilla.org/es/docs/Web/API/Element/matches
    54 
    5556if ( ! Element.prototype.matches ) {
    5657        Element.prototype.matches =
    5758                Element.prototype.matchesSelector ||
     
    137138
    138139        // Hide and show modals before and after their animations have played out
    139140        hideAndShowModals: function() {
    140                 var modals = document.querySelectorAll( '.cover-modal' ),
    141                         htmlStyle = document.documentElement.style;
     141                var modals, htmlStyle, adminBar, _doc, _win;
     142
     143                _doc = document;
     144                _win = window;
     145                modals = _doc.querySelectorAll( '.cover-modal' );
     146                htmlStyle = _doc.documentElement.style;
     147                adminBar = _doc.querySelector( '#wpadminbar' );
    142148
    143                 var getAdminBarHeight = function( negativeValue ) {
    144                         var adminBar = document.querySelector( '#wpadminbar' );
     149                function getAdminBarHeight( negativeValue ) {
     150                        var currentScroll, height;
     151
     152                        currentScroll = _win.pageYOffset;
    145153
    146154                        if ( adminBar ) {
    147                                 return ( negativeValue ? '-' : '' ) + adminBar.getBoundingClientRect().height + 'px';
     155                                height = currentScroll + adminBar.getBoundingClientRect().height;
     156
     157                                return negativeValue ? -height : height;
    148158                        }
    149159
    150                         return 0;
    151                 };
     160                        return currentScroll === 0 ? 0 : -currentScroll;
     161                }
    152162
    153163                function htmlStyles() {
    154                         var overflow = window.innerHeight > document.documentElement.getBoundingClientRect().height;
     164                        var overflow = _win.innerHeight > _doc.documentElement.getBoundingClientRect().height;
    155165
    156166                        return {
    157167                                'overflow-y': overflow ? 'hidden' : 'scroll',
    158168                                position: 'fixed',
    159169                                width: '100%',
    160                                 top: getAdminBarHeight( true ),
     170                                top: getAdminBarHeight( true ) + 'px',
    161171                                left: 0
    162172                        };
    163173                }
     
    165175                // Show the modal
    166176                modals.forEach( function( modal ) {
    167177                        modal.addEventListener( 'toggle-target-before-inactive', function( event ) {
     178                                var styles, paddingTop, offsetY, mQuery;
     179
     180                                styles = htmlStyles();
     181                                offsetY = _win.pageYOffset;
     182                                paddingTop = ( Math.abs( getAdminBarHeight() ) - offsetY ) + 'px';
     183                                mQuery = _win.matchMedia( '(max-width: 600px)' );
     184
    168185                                if ( event.target !== modal ) {
    169186                                        return;
    170187                                }
    171188
    172                                 window.scrollTo( { top: 0 } );
    173 
    174                                 Object.keys( htmlStyles() ).forEach( function( styleKey ) {
    175                                         htmlStyle.setProperty( styleKey, htmlStyles()[ styleKey ] );
     189                                Object.keys( styles ).forEach( function( styleKey ) {
     190                                        htmlStyle.setProperty( styleKey, styles[ styleKey ] );
    176191                                } );
    177192
    178                                 document.body.style.setProperty( 'padding-top', getAdminBarHeight() );
     193                                _win.twentytwenty.scrolled = parseInt( styles.top );
     194
     195                                if ( adminBar ) {
     196                                        _doc.body.style.setProperty( 'padding-top', paddingTop );
     197
     198                                        if ( mQuery.matches ) {
     199                                                if ( offsetY >= getAdminBarHeight() ) {
     200                                                        modal.style.setProperty( 'top', 0 );
     201                                                } else {
     202                                                        modal.style.setProperty( 'top', ( getAdminBarHeight() - offsetY ) + 'px' );
     203                                                }
     204                                        }
     205                                }
    179206
    180207                                modal.classList.add( 'show-modal' );
    181208                        } );
     
    187214                                }
    188215
    189216                                setTimeout( function() {
     217                                        var clickedEl;
     218
     219                                        clickedEl = twentytwenty.toggles.clickedEl;
     220
    190221                                        modal.classList.remove( 'show-modal' );
    191222
    192223                                        Object.keys( htmlStyles() ).forEach( function( styleKey ) {
    193224                                                htmlStyle.removeProperty( styleKey );
    194225                                        } );
    195226
    196                                         document.body.style.removeProperty( 'padding-top' );
     227                                        if ( adminBar ) {
     228                                                _doc.body.style.removeProperty( 'padding-top' );
     229                                                modal.style.removeProperty( 'top' );
     230                                        }
     231
     232                                        _win.scrollTo( 0, Math.abs( _win.twentytwenty.scrolled + getAdminBarHeight() ) );
     233
     234                                        _win.twentytwenty.scrolled = 0;
     235
     236                                        if ( clickedEl !== false ) {
     237                                                clickedEl.focus();
     238                                                clickedEl = false;
     239                                        }
    197240                                }, 500 );
    198241                        } );
    199242                } );
     
    393436        // If the current menu item is the last one, return to close button when tab
    394437        goBackToCloseButton: function() {
    395438                document.addEventListener( 'keydown', function( event ) {
    396                         var desktopMenuButton = document.querySelector( '.toggle.close-nav-toggle' );
    397                         var mobileMenuButton = document.querySelector( '.toggle.mobile-nav-toggle' );
    398                         var isMobileMenu = desktopMenuButton ? window.getComputedStyle( desktopMenuButton, null ).getPropertyValue( 'display' ) === 'none' : false;
    399                         var firstMenuItem = isMobileMenu ? mobileMenuButton : desktopMenuButton;
    400 
    401                         var menuLinks = isMobileMenu ?
    402                                 document.querySelectorAll( '.menu-modal .mobile-menu li' ) :
    403                                 document.querySelectorAll( '.menu-modal .expanded-menu li' );
    404 
    405                         var socialLinks = document.querySelectorAll( '.menu-modal .social-menu > li' );
    406                         var hasSocialMenu = document.querySelectorAll( '.menu-modal .social-menu' ).length > 0;
    407                         var lastModalMenuItems = hasSocialMenu ? socialLinks : menuLinks;
    408                         var focusedElementParentLi = twentytwentyFindParents( event.target, 'li' );
    409                         var focusedElementIsInsideModal = twentytwentyFindParents( event.target, '.menu-modal' ).length > 0;
    410                         var lastMenuItem = lastModalMenuItems[lastModalMenuItems.length - 1];
    411 
    412                         var isFirstModalItem = isMobileMenu ?
    413                                 event.target === mobileMenuButton :
    414                                 focusedElementIsInsideModal && event.target === desktopMenuButton;
     439                        var closeMenuButton, mobileMenu, isDesktop, menuLinks, firstLevelmenuLinks, lastMenuLinkToggleButton, lastToogleSubMenuLinkNotOpened, lastMenuLinkHasSubClosedMenu, socialLinks, hasSocialMenu, lastModalMenuItems, focusedElementParentLi, focusedElementIsInsideModal, lastMenuItem, isFirstModalItem, isLastModalItem;
    415440
    416                         var isLastModalItem = focusedElementIsInsideModal && focusedElementParentLi[0] ?
     441                        closeMenuButton = document.querySelector( '.toggle.close-nav-toggle' );
     442                        mobileMenu = document.querySelector( '.mobile-menu' );
     443
     444                        if ( mobileMenu ) {
     445                                return false;
     446                        }
     447
     448                        isDesktop = window.getComputedStyle( mobileMenu, null ).getPropertyValue( 'display' ) === 'none';
     449
     450                        menuLinks = isDesktop ?
     451                                document.querySelectorAll( '.menu-modal .expanded-menu .modal-menu li' ) :
     452                                document.querySelectorAll( '.menu-modal .mobile-menu .modal-menu li' );
     453
     454                        firstLevelmenuLinks = isDesktop ?
     455                                document.querySelectorAll( '.menu-modal .expanded-menu .modal-menu > li' ) :
     456                                document.querySelectorAll( '.menu-modal .mobile-menu .modal-menu > li' );
     457
     458                        if ( firstLevelmenuLinks ) {
     459                                return false;
     460                        }
     461
     462                        lastMenuLinkToggleButton = firstLevelmenuLinks[firstLevelmenuLinks.length - 1].querySelector( '.sub-menu-toggle' ) || undefined;
     463                        lastMenuLinkHasSubClosedMenu = lastMenuLinkToggleButton && ! lastMenuLinkToggleButton.classList.contains( 'active' );
     464
     465                        lastToogleSubMenuLinkNotOpened = isDesktop ?
     466                                document.querySelector( '.menu-modal .expanded-menu .modal-menu .sub-menu .sub-menu-toggle:not(.active)' ) :
     467                                document.querySelector( '.menu-modal .mobile-menu .sub-menu .sub-menu-toggle:not(.active)' );
     468
     469                        socialLinks = document.querySelectorAll( '.menu-modal .social-menu li' );
     470                        hasSocialMenu = document.querySelectorAll( '.menu-modal .social-menu' ).length > 0;
     471                        lastModalMenuItems = hasSocialMenu ? socialLinks : menuLinks;
     472                        focusedElementParentLi = twentytwentyFindParents( event.target, 'li' );
     473                        focusedElementIsInsideModal = twentytwentyFindParents( event.target, '.menu-modal' ).length > 0;
     474
     475                        lastMenuItem = lastModalMenuItems[lastModalMenuItems.length - 1];
     476
     477                        isFirstModalItem = event.target === closeMenuButton;
     478
     479                        isLastModalItem = focusedElementIsInsideModal && focusedElementParentLi[0] ?
    417480                                focusedElementParentLi[0].className === lastMenuItem.className :
    418481                                undefined;
    419482
     483                        if ( lastMenuLinkToggleButton && lastMenuLinkHasSubClosedMenu && ! hasSocialMenu ) { // Last 1st level item has submenu and is closed
     484                                isLastModalItem = event.target === lastMenuLinkToggleButton;
     485                                lastMenuItem = lastMenuLinkToggleButton;
     486                        }
     487                        if ( lastMenuLinkToggleButton && ! lastMenuLinkHasSubClosedMenu && ! hasSocialMenu ) { // Last 1st level item has submenu is opened
     488                                isLastModalItem = event.target === lastToogleSubMenuLinkNotOpened || event.target === menuLinks[menuLinks.length - 1].querySelector( 'a' );
     489                                lastMenuItem = lastToogleSubMenuLinkNotOpened || menuLinks[menuLinks.length - 1].querySelector( 'a' );
     490                        }
     491
    420492                        if ( ! event.shiftKey && event.key === 'Tab' && isLastModalItem ) {
    421493                                // Forward
    422494                                event.preventDefault();
    423                                 firstMenuItem.focus();
     495                                closeMenuButton.focus();
    424496                        }
    425497                        if ( event.shiftKey && event.key === 'Tab' && isFirstModalItem ) {
    426498                                // Backward
    427499                                event.preventDefault();
    428                                 lastMenuItem.querySelector( 'a' ).focus();
     500                                if ( lastMenuItem.querySelector( 'a' ) ) {
     501                                        lastMenuItem.querySelector( 'a' ).focus();
     502                                } else {
     503                                        lastMenuItem.focus();
     504                                }
    429505                        }
    430506                } );
    431507        }
     
    445521        // by adding the '.focus' class to all 'li.menu-item-has-children' when the focus is on the 'a' element.
    446522        focusMenuWithChildren: function() {
    447523                // Get all the link elements within the primary menu.
    448                 var menu = document.querySelector( '.primary-menu-wrapper' );
    449                 var links = menu.getElementsByTagName( 'a' );
    450                 var i, len;
     524                var menu, links, i, len;
     525
     526                menu = document.querySelector( '.primary-menu-wrapper' );
     527
     528                if ( ! menu ) {
     529                        return false;
     530                }
     531
     532                links = menu.getElementsByTagName( 'a' );
    451533
    452534                // Each time a menu link is focused or blurred, toggle focus.
    453535                for ( i = 0, len = links.length; i < len; i++ ) {
     
    481563
    482564twentytwenty.toggles = {
    483565
     566        clickedEl: false,
     567
    484568        init: function() {
    485569                // Do the toggle
    486570                this.toggle();
     
    493577        },
    494578
    495579        performToggle: function( element, instantly ) {
    496                 var toggle, targetString, target, timeOutTime, classToToggle, activeClass;
     580                var self, toggle, _doc, targetString, target, timeOutTime, classToToggle, activeClass;
     581
     582                self = this;
     583                _doc = document;
    497584
    498585                // Get our targets
    499586                toggle = element;
    500587                targetString = toggle.dataset.toggleTarget;
    501588                activeClass = 'active';
    502589
     590                // Elements to focus after modals are closed
     591                if ( ! _doc.querySelectorAll( '.show-modal' ).length ) {
     592                        self.clickedEl = _doc.activeElement;
     593                }
     594
    503595                if ( targetString === 'next' ) {
    504596                        target = toggle.nextSibling;
    505597                } else {
    506                         target = document.querySelector( targetString );
     598                        target = _doc.querySelector( targetString );
    507599                }
    508600
    509601                // Trigger events on the toggle targets before they are toggled
     
    544636                                toggle.classList.toggle( activeClass );
    545637                        } else {
    546638                                // If not, toggle all toggles with this toggle target
    547                                 document.querySelector( '*[data-toggle-target="' + targetString + '"]' ).classList.toggle( activeClass );
     639                                _doc.querySelector( '*[data-toggle-target="' + targetString + '"]' ).classList.toggle( activeClass );
    548640                        }
    549641
    550642                        // Toggle aria-expanded on the target
     
    555647
    556648                        // Toggle body class
    557649                        if ( toggle.dataset.toggleBodyClass ) {
    558                                 document.querySelector( 'body' ).classList.toggle( toggle.dataset.toggleBodyClass );
     650                                _doc.querySelector( 'body' ).classList.toggle( toggle.dataset.toggleBodyClass );
    559651                        }
    560652
    561653                        // Check whether to set focus
    562654                        if ( toggle.dataset.setFocus ) {
    563                                 focusElement = document.querySelector( toggle.dataset.setFocus );
     655                                focusElement = _doc.querySelector( toggle.dataset.setFocus );
    564656
    565657                                if ( focusElement ) {
    566658                                        if ( target.classList.contains( activeClass ) ) {
     
    588680                var self = this;
    589681
    590682                document.querySelectorAll( '*[data-toggle-target]' ).forEach( function( element ) {
    591                         element.addEventListener( 'click', function() {
     683                        element.addEventListener( 'click', function( event ) {
     684                                event.preventDefault();
    592685                                self.performToggle( element );
    593686                        } );
    594687                } );
  • src/wp-content/themes/twentytwenty/classes/class-twentytwenty-customize.php

     
    9090                                        $wp_customize,
    9191                                        'header_footer_background_color',
    9292                                        array(
    93                                                 'label'   => esc_html__( 'Header & Footer Background Color', 'twentytwenty' ),
     93                                                'label'   => __( 'Header &amp; Footer Background Color', 'twentytwenty' ),
    9494                                                'section' => 'colors',
    9595                                        )
    9696                                )
    9797                        );
    9898
     99                        // Enable picking an accent color.
     100                        $wp_customize->add_setting(
     101                                'accent_hue_active',
     102                                array(
     103                                        'capability'        => 'edit_theme_options',
     104                                        'sanitize_callback' => array( __CLASS__, 'sanitize_select' ),
     105                                        'transport'         => 'postMessage',
     106                                        'default'           => 'default',
     107                                )
     108                        );
     109
     110                        $wp_customize->add_control(
     111                                'accent_hue_active',
     112                                array(
     113                                        'type'    => 'radio',
     114                                        'section' => 'colors',
     115                                        'label'   => __( 'Primary Color', 'twentytwenty' ),
     116                                        'choices' => array(
     117                                                'default' => __( 'Default', 'twentytwenty' ),
     118                                                'custom'  => __( 'Custom', 'twentytwenty' ),
     119                                        ),
     120                                )
     121                        );
     122
    99123                        /**
    100124                         * Implementation for the accent color.
    101125                         * This is different to all other color options because of the accessibility enhancements.
     
    136160                                        ),
    137161                                        'type'              => 'theme_mod',
    138162                                        'transport'         => 'postMessage',
    139                                         'sanitize_callback' => array( 'TwentyTwenty_Customize', 'sanitize_accent_accessible_colors' ),
     163                                        'sanitize_callback' => array( __CLASS__, 'sanitize_accent_accessible_colors' ),
    140164                                )
    141165                        );
    142166
     
    146170                                        $wp_customize,
    147171                                        'accent_hue',
    148172                                        array(
    149                                                 'label'    => esc_html__( 'Accent Color Hue', 'twentytwenty' ),
    150                                                 'section'  => 'colors',
    151                                                 'settings' => 'accent_hue',
    152                                                 'mode'     => 'hue',
     173                                                'section'         => 'colors',
     174                                                'settings'        => 'accent_hue',
     175                                                'description'     => __( 'Apply a custom color for links, buttons, featured images.', 'twentytwenty' ),
     176                                                'mode'            => 'hue',
     177                                                'active_callback' => function() use ( $wp_customize ) {
     178                                                        return ( 'custom' === $wp_customize->get_setting( 'accent_hue_active' )->value() );
     179                                                },
    153180                                        )
    154181                                )
    155182                        );
     
    164191                        $wp_customize->add_section(
    165192                                'options',
    166193                                array(
    167                                         'title'       => __( 'Theme Options', 'twentytwenty' ),
    168                                         'priority'    => 40,
    169                                         'capability'  => 'edit_theme_options',
    170                                         'description' => __( 'Specific settings for the Twenty Twenty theme.', 'twentytwenty' ),
     194                                        'title'      => __( 'Theme Options', 'twentytwenty' ),
     195                                        'priority'   => 40,
     196                                        'capability' => 'edit_theme_options',
    171197                                )
    172198                        );
    173199
     
    225251                                array(
    226252                                        'title'       => __( 'Cover Template', 'twentytwenty' ),
    227253                                        'capability'  => 'edit_theme_options',
    228                                         'description' => __( 'Settings for the "Cover Template" page template.', 'twentytwenty' ),
     254                                        'description' => __( 'Settings for the "Cover Template" page template. Add a featured image to use as background.', 'twentytwenty' ),
    229255                                        'priority'    => 42,
    230256                                )
    231257                        );
     
    294320                                        $wp_customize,
    295321                                        'cover_template_overlay_background_color',
    296322                                        array(
    297                                                 'label'       => __( 'Image Overlay Background Color', 'twentytwenty' ),
    298                                                 'description' => __( 'The color used for the featured image overlay. Defaults to the accent color.', 'twentytwenty' ),
     323                                                'label'       => __( 'Overlay Background Color', 'twentytwenty' ),
     324                                                'description' => __( 'The color used for the overlay. Defaults to the accent color.', 'twentytwenty' ),
    299325                                                'section'     => 'cover_template_options',
    300326                                        )
    301327                                )
     
    316342                                        $wp_customize,
    317343                                        'cover_template_overlay_text_color',
    318344                                        array(
    319                                                 'label'       => __( 'Image Overlay Text Color', 'twentytwenty' ),
    320                                                 'description' => __( 'The color used for the text in the featured image overlay.', 'twentytwenty' ),
     345                                                'label'       => __( 'Overlay Text Color', 'twentytwenty' ),
     346                                                'description' => __( 'The color used for the text in the overlay.', 'twentytwenty' ),
    321347                                                'section'     => 'cover_template_options',
    322348                                        )
    323349                                )
     
    337363                        $wp_customize->add_control(
    338364                                'cover_template_overlay_opacity',
    339365                                array(
    340                                         'label'       => __( 'Image Overlay Opacity', 'twentytwenty' ),
     366                                        'label'       => __( 'Overlay Opacity', 'twentytwenty' ),
    341367                                        'description' => __( 'Make sure that the contrast is high enough so that the text is readable.', 'twentytwenty' ),
    342368                                        'section'     => 'cover_template_options',
    343369                                        'type'        => 'range',
     
    383409                 *
    384410                 * @param string $input The input from the setting.
    385411                 * @param object $setting The selected setting.
     412                 *
     413                 * @return string $input|$setting->default The input from the setting or the default setting.
    386414                 */
    387415                public static function sanitize_select( $input, $setting ) {
    388416                        $input   = sanitize_key( $input );
     
    393421                /**
    394422                 * Sanitize boolean for checkbox.
    395423                 *
    396                  * @param bool $checked Wethere or not a blox is checked.
     424                 * @param bool $checked Whether or not a box is checked.
     425                 *
     426                 * @return bool
    397427                 */
    398428                public static function sanitize_checkbox( $checked ) {
    399429                        return ( ( isset( $checked ) && true === $checked ) ? true : false );
  • src/wp-content/themes/twentytwenty/classes/class-twentytwenty-svg-icons.php

     
    1818                 * Get the SVG code for the specified icon
    1919                 *
    2020                 * @param string $icon Icon name.
     21                 * @param string $group Icon group.
    2122                 * @param string $color Color.
    2223                 */
    23                 public static function get_svg( $icon, $color = '#1A1A1B' ) {
    24                         $arr = apply_filters( 'twentytwenty_svg_icons', self::$icons );
     24                public static function get_svg( $icon, $group = 'ui', $color = '#1A1A1B' ) {
     25                        if ( 'ui' === $group ) {
     26                                $arr = self::$ui_icons;
     27                        } elseif ( 'social' === $group ) {
     28                                $arr = self::$social_icons;
     29                        } else {
     30                                $arr = array();
     31                        }
    2532                        if ( array_key_exists( $icon, $arr ) ) {
    2633                                $repl = '<svg class="svg-icon" aria-hidden="true" role="img" focusable="false" ';
    2734                                $svg  = preg_replace( '/^<svg /', $repl, trim( $arr[ $icon ] ) ); // Add extra attributes to SVG code.
     
    3542                }
    3643
    3744                /**
     45                 * GET SOCIAL LINK SVG
     46                 * Detects the social network from a URL and returns the SVG code for its icon.
     47                 *
     48                 * @param string $uri The URL to retrieve SVG for.
     49                 */
     50                public static function get_social_link_svg( $uri ) {
     51                        static $regex_map; // Only compute regex map once, for performance.
     52                        if ( ! isset( $regex_map ) ) {
     53                                $regex_map = array();
     54                                $map       = &self::$social_icons_map; // Use reference instead of copy, to save memory.
     55                                foreach ( array_keys( self::$social_icons ) as $icon ) {
     56                                        $domains            = array_key_exists( $icon, $map ) ? $map[ $icon ] : array( sprintf( '%s.com', $icon ) );
     57                                        $domains            = array_map( 'trim', $domains ); // Remove leading/trailing spaces, to prevent regex from failing to match.
     58                                        $domains            = array_map( 'preg_quote', $domains );
     59                                        $regex_map[ $icon ] = sprintf( '/(%s)/i', implode( '|', $domains ) );
     60                                }
     61                        }
     62                        foreach ( $regex_map as $icon => $regex ) {
     63                                if ( preg_match( $regex, $uri ) ) {
     64                                        return twentytwenty_get_theme_svg( $icon, 'social' );
     65                                }
     66                        }
     67                        return null;
     68                }
     69
     70                /**
    3871                 * ICON STORAGE
    3972                 * Store the code for all SVGs in an array.
    4073                 *
    4174                 * @var array
    4275                 */
    43                 public static $icons = array(
     76                public static $ui_icons = array(
    4477                        'arrow-down'          => '<svg xmlns="http://www.w3.org/2000/svg" width="22" height="24" viewBox="0 0 22 24">
    4578                <polygon fill="#FFF" points="721.105 856 721.105 874.315 728.083 867.313 730.204 869.41 719.59 880 709 869.41 711.074 867.313 718.076 874.315 718.076 856" transform="translate(-709 -856)"/>
    4679                </svg>',
     
    71104                        'folder'              => '<svg xmlns="http://www.w3.org/2000/svg" width="20" height="19" viewBox="0 0 20 19">
    72105                <path fill="#1A1A1B" d="M2.8,1.85 C2.275329,1.85 1.85,2.27532949 1.85,2.8 L1.85,15.4 C1.85,15.9246705 2.275329,16.35 2.8,16.35 L17.2,16.35 C17.724671,16.35 18.15,15.9246705 18.15,15.4 L18.15,5.5 C18.15,4.97532949 17.724671,4.55 17.2,4.55 L9.1,4.55 C8.8158,4.55 8.550403,4.40796403 8.392757,4.17149517 L6.845094,1.85 L2.8,1.85 Z M17.2,2.85 C18.663555,2.85 19.85,4.03644541 19.85,5.5 L19.85,15.4 C19.85,16.8635546 18.663555,18.05 17.2,18.05 L2.8,18.05 C1.336445,18.05 0.15,16.8635546 0.15,15.4 L0.15,2.8 C0.15,1.33644541 1.336445,0.15 2.8,0.15 L7.3,0.15 C7.5842,0.15 7.849597,0.292035965 8.007243,0.528504833 L9.554906,2.85 L17.2,2.85 Z"/>
    73106                </svg>',
     107                        'link'                => '<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18">
     108                <path d="M6.70846497,10.3082552 C6.43780491,9.94641406 6.5117218,9.43367048 6.87356298,9.16301045 C7.23540415,8.89235035 7.74814771,8.96626726 8.01880776,9.32810842 C8.5875786,10.0884893 9.45856383,10.5643487 10.4057058,10.6321812 C11.3528479,10.7000136 12.2827563,10.3531306 12.9541853,9.68145807 L15.3987642,7.23705399 C16.6390369,5.9529049 16.6212992,3.91168563 15.3588977,2.6492841 C14.0964962,1.38688258 12.0552769,1.36914494 10.77958,2.60113525 L9.37230725,4.00022615 C9.05185726,4.31881314 8.53381538,4.31730281 8.21522839,3.99685275 C7.89664141,3.67640269 7.89815174,3.15836082 8.21860184,2.83977385 L9.63432671,1.43240056 C11.5605503,-0.42800847 14.6223793,-0.401402004 16.5159816,1.49220028 C18.4095838,3.38580256 18.4361903,6.44763148 16.5658147,8.38399647 L14.1113741,10.838437 C13.1043877,11.8457885 11.7095252,12.366113 10.2888121,12.2643643 C8.86809903,12.1626156 7.56162126,11.4488264 6.70846497,10.3082552 Z M11.291535,7.6917448 C11.5621951,8.05358597 11.4882782,8.56632952 11.126437,8.83698955 C10.7645959,9.10764965 10.2518523,9.03373274 9.98119227,8.67189158 C9.4124214,7.91151075 8.54143617,7.43565129 7.59429414,7.36781884 C6.6471521,7.29998638 5.71724372,7.64686937 5.04581464,8.31854193 L2.60123581,10.762946 C1.36096312,12.0470951 1.37870076,14.0883144 2.64110228,15.3507159 C3.90350381,16.6131174 5.94472309,16.630855 7.21873082,15.400549 L8.61782171,14.0014581 C8.93734159,13.6819382 9.45538568,13.6819382 9.77490556,14.0014581 C10.0944254,14.320978 10.0944254,14.839022 9.77490556,15.1585419 L8.36567329,16.5675994 C6.43944966,18.4280085 3.37762074,18.401402 1.48401846,16.5077998 C-0.409583822,14.6141975 -0.436190288,11.5523685 1.43418536,9.61600353 L3.88862594,7.16156298 C4.89561225,6.15421151 6.29047483,5.63388702 7.71118789,5.7356357 C9.13190097,5.83738438 10.4383788,6.55117356 11.291535,7.6917448 Z"/>
     109                </svg>',
    74110                        'search'              => '<svg xmlns="http://www.w3.org/2000/svg" width="23" height="23" viewBox="0 0 23 23">
    75111                <path d="M38.710696,48.0601792 L43,52.3494831 L41.3494831,54 L37.0601792,49.710696 C35.2632422,51.1481185 32.9839107,52.0076499 30.5038249,52.0076499 C24.7027226,52.0076499 20,47.3049272 20,41.5038249 C20,35.7027226 24.7027226,31 30.5038249,31 C36.3049272,31 41.0076499,35.7027226 41.0076499,41.5038249 C41.0076499,43.9839107 40.1481185,46.2632422 38.710696,48.0601792 Z M36.3875844,47.1716785 C37.8030221,45.7026647 38.6734666,43.7048964 38.6734666,41.5038249 C38.6734666,36.9918565 35.0157934,33.3341833 30.5038249,33.3341833 C25.9918565,33.3341833 22.3341833,36.9918565 22.3341833,41.5038249 C22.3341833,46.0157934 25.9918565,49.6734666 30.5038249,49.6734666 C32.7048964,49.6734666 34.7026647,48.8030221 36.1716785,47.3875844 C36.2023931,47.347638 36.2360451,47.3092237 36.2726343,47.2726343 C36.3092237,47.2360451 36.347638,47.2023931 36.3875844,47.1716785 Z" transform="translate(-20 -31)"/>
    76112                </svg>',
     
    82118                </svg>',
    83119                );
    84120
     121                /**
     122                 * Social Icons – domain mappings.
     123                 *
     124                 * By default, each Icon ID is matched against a .com TLD. To override this behavior,
     125                 * specify all the domains it covers (including the .com TLD too, if applicable).
     126                 *
     127                 * @var array
     128                 */
     129                public static $social_icons_map = array(
     130                        'amazon'      => array(
     131                                'amazon.com',
     132                                'amazon.cn',
     133                                'amazon.in',
     134                                'amazon.fr',
     135                                'amazon.de',
     136                                'amazon.it',
     137                                'amazon.nl',
     138                                'amazon.es',
     139                                'amazon.co',
     140                                'amazon.ca',
     141                        ),
     142                        'apple'       => array(
     143                                'apple.com',
     144                                'itunes.com',
     145                        ),
     146                        'behance'     => array(
     147                                'behance.net',
     148                        ),
     149                        'codepen'     => array(
     150                                'codepen.io',
     151                        ),
     152                        'facebook'    => array(
     153                                'facebook.com',
     154                                'fb.me',
     155                        ),
     156                        'feed'        => array(
     157                                'feed',
     158                        ),
     159                        'google-plus' => array(
     160                                'plus.google.com',
     161                        ),
     162                        'lastfm'      => array(
     163                                'last.fm',
     164                        ),
     165                        'mail'        => array(
     166                                'mailto:',
     167                        ),
     168                        'slideshare'  => array(
     169                                'slideshare.net',
     170                                'slideshare.com',
     171                        ),
     172                        'pocket'      => array(
     173                                'getpocket.com',
     174                        ),
     175                        'twitch'      => array(
     176                                'twitch.tv',
     177                        ),
     178                        'wordpress'   => array(
     179                                'wordpress.com',
     180                                'wordpress.org',
     181                        ),
     182                );
     183
     184                /**
     185                 * Social Icons – svg sources.
     186                 *
     187                 * @var array
     188                 */
     189                public static $social_icons = array(
     190                        '500px'       => '<svg width="14" height="18" viewBox="0 0 14 18" xmlns="http://www.w3.org/2000/svg"><path d="M2.448 11.848c-.047-.152 0-.26.14-.325.141-.065.253-.109.335-.132.14-.047.263-.07.369-.07.105 0 .176.058.21.175.118.317.264.624.44.923s.358.554.545.765V9.756c0-.422.088-.835.264-1.24.176-.403.427-.764.756-1.08.328-.34.714-.6 1.16-.782a3.599 3.599 0 011.37-.273c.493 0 .956.094 1.39.281.433.188.811.443 1.133.765.323.322.578.7.765 1.134s.281.89.281 1.37c0 .493-.093.956-.281 1.39s-.442.811-.765 1.133c-.322.323-.7.578-1.133.765s-.897.281-1.39.281c-.198 0-.38-.008-.544-.026a3.053 3.053 0 01-.58-.132.64.64 0 01-.132-.132c-.064-.076-.061-.237.009-.483.012-.059.05-.155.114-.29.065-.135.167-.185.308-.15.011 0 .111.024.299.07.187.048.345.071.474.071.692 0 1.28-.24 1.767-.72.486-.481.73-1.067.73-1.758 0-.317-.062-.624-.185-.923s-.302-.56-.536-.783c-.235-.234-.504-.413-.81-.536s-.626-.184-.966-.184c-.34 0-.662.07-.967.21-.304.141-.574.34-.808.598-.211.223-.372.475-.484.756s-.167.563-.167.844v4.166c.364.21.75.375 1.16.492a4.783 4.783 0 003.12-.193 4.966 4.966 0 001.574-1.037 4.993 4.993 0 001.037-1.565c.246-.586.37-1.201.37-1.845a4.774 4.774 0 00-1.407-3.393A4.758 4.758 0 009.857 5.51a4.798 4.798 0 00-1.854-.36c-.645 0-1.263.12-1.855.36-.592.24-1.11.589-1.556 1.046l-.325.325c-.217.217-.366.396-.448.536l-.018.018c-.07.082-.149.152-.237.21-.088.06-.255.06-.5 0a.925.925 0 01-.361-.149c-.112-.076-.167-.167-.167-.272V.405c0-.094.038-.182.114-.264a.379.379 0 01.29-.123L11.712 0c.152 0 .243.076.272.229s.044.263.044.334-.012.179-.035.325c-.024.146-.111.22-.264.22H3.573v4.886c.281-.293.633-.58 1.055-.86s.773-.481 1.054-.599c.364-.152.742-.27 1.134-.351a5.786 5.786 0 012.364 0c.387.082.756.2 1.108.351.351.141.685.32 1.002.537.316.216.61.46.879.73a5.982 5.982 0 011.265 1.862 5.843 5.843 0 01.457 2.285c0 .399-.038.791-.114 1.178-.076.387-.19.756-.343 1.108s-.334.685-.545 1.002a5.754 5.754 0 01-1.6 1.6 5.45 5.45 0 01-1.001.526c-.352.165-.72.285-1.108.36a6.08 6.08 0 01-2.337 0 5.137 5.137 0 01-1.125-.36 5.198 5.198 0 01-.994-.527 6.12 6.12 0 01-1.6-1.6 5.154 5.154 0 01-.623-1.23 1.052 1.052 0 01-.053-.158zm4.201-.984c0-.024.006-.05.018-.08s.04-.061.088-.096l.65-.668-.668-.668c-.059-.047-.076-.109-.053-.185a.62.62 0 01.194-.255.371.371 0 01.15-.14.369.369 0 01.149-.035c.035 0 .061.003.079.008.017.006.032.021.044.044l.668.668.65-.65a.2.2 0 01.21-.053.803.803 0 01.413.387c.042.082.027.158-.043.228l-.65.668.632.633c.024.035.05.091.08.167.029.076-.021.185-.15.325a.778.778 0 01-.167.132.339.339 0 01-.167.044l-.105-.035a.17.17 0 01-.088-.07l-.633-.615c-.023.023-.132.134-.325.334-.194.199-.308.31-.343.334 0 .011-.012.023-.035.035s-.059.017-.106.017a.36.36 0 01-.158-.044.605.605 0 01-.158-.114v-.018c-.035-.035-.073-.076-.114-.123s-.062-.105-.062-.175zm1.424-8.912c.55 0 1.093.052 1.626.158s1.052.258 1.556.457c.457.199.879.425 1.265.677.387.251.75.536 1.09.852.094.094.12.188.08.281a1.168 1.168 0 01-.203.3c-.07.07-.138.134-.202.192a.298.298 0 01-.202.088.216.216 0 01-.08-.017.177.177 0 01-.078-.07 11.99 11.99 0 00-1.046-.792 5.607 5.607 0 00-1.029-.544 6.76 6.76 0 00-1.344-.422 7.2 7.2 0 00-1.433-.14c-.422 0-.858.043-1.31.13a7.633 7.633 0 00-1.31.379c-.14.047-.242.009-.307-.114a5.898 5.898 0 00-.15-.273 19.104 19.104 0 01-.06-.22.27.27 0 01-.01-.149c0-.047.015-.088.044-.123s.062-.065.097-.088a7.153 7.153 0 011.424-.413c.527-.1 1.055-.15 1.582-.15zm5.678 13.025c.175.164.26.29.255.377s-.039.15-.097.185l-.044.044-.026.026c-.364.364-.765.692-1.205.985s-.899.545-1.38.756c-.503.222-1.025.386-1.564.492a8.452 8.452 0 01-3.252 0 7.353 7.353 0 01-1.564-.492c-.48-.2-.938-.446-1.372-.739s-.837-.627-1.212-1.002a8.226 8.226 0 01-1.758-2.601 12.433 12.433 0 01-.317-.932 6.897 6.897 0 01-.21-.95c-.024-.14.035-.234.175-.28.14-.047.24-.077.299-.088.152-.024.281-.024.387 0s.164.093.175.21v.036c.024.094.068.284.132.571.065.287.179.63.343 1.028.164.41.375.806.633 1.187.258.38.557.741.896 1.081.329.328.683.618 1.064.87.38.252.782.472 1.204.66.434.187.885.327 1.353.421a7.154 7.154 0 002.83 0 6.72 6.72 0 001.354-.422 8.15 8.15 0 001.213-.668 6.895 6.895 0 001.055-.861l.052-.07a.26.26 0 01.123-.07.198.198 0 01.141.017.604.604 0 01.14.079c.06.041.118.09.176.15z"/></svg>',
     191
     192                        'amazon'      => '<svg width="18" height="16" viewBox="0 0 18 15" xmlns="http://www.w3.org/2000/svg"><path d="M16.004 11.571c.164-.07.29-.035.378.106.088.14.056.27-.097.386a8.912 8.912 0 01-1.635.95c-.586.281-1.199.516-1.838.703a13.92 13.92 0 01-3.842.563c-.867 0-1.706-.076-2.515-.229a13.056 13.056 0 01-4.484-1.74 12.657 12.657 0 01-1.899-1.442c-.082-.07-.094-.147-.035-.23.059-.081.14-.087.246-.017.633.376 1.301.704 2.005.985.703.293 1.43.542 2.18.747.75.206 1.524.361 2.321.466.786.106 1.583.159 2.392.159.551 0 1.114-.03 1.688-.088a17.495 17.495 0 001.723-.264 18.569 18.569 0 001.724-.44 17.07 17.07 0 001.688-.615zm1.934-1.09c.106.129.077.55-.088 1.266-.164.715-.51 1.29-1.037 1.723-.07.07-.138.091-.202.062s-.08-.085-.044-.167c.129-.305.278-.718.448-1.24.17-.522.196-.859.08-1.011-.13-.153-.464-.211-1.003-.176-.54.035-.967.07-1.284.105-.105 0-.164-.029-.176-.087-.011-.06.024-.124.106-.194.563-.387 1.21-.566 1.943-.536.733.03 1.152.114 1.257.255zM9.99 3.834v-.247c0-.21-.006-.43-.018-.659a1.181 1.181 0 00-.193-.607c-.106-.164-.252-.281-.44-.351s-.369-.106-.545-.106c-.34 0-.642.088-.905.264-.264.176-.431.44-.502.791a.48.48 0 01-.123.229.269.269 0 01-.193.088L5.348 3.06a.466.466 0 01-.185-.114c-.053-.053-.073-.132-.062-.238.2-1.043.695-1.755 1.486-2.136A5.592 5.592 0 019.04 0c.422 0 .885.067 1.39.202s.92.36 1.248.677c.422.41.657.874.703 1.39s.07 1.06.07 1.635v2.743c0 .41.074.73.22.958.147.23.297.449.449.66.059.094.09.182.097.264a.288.288 0 01-.097.228c-.2.141-.434.331-.703.572-.27.24-.493.436-.669.589a.278.278 0 01-.202.088.486.486 0 01-.22-.053c-.281-.246-.477-.445-.589-.598a9.661 9.661 0 01-.395-.598c-.493.493-.944.833-1.354 1.02-.41.188-.932.282-1.566.282-.738 0-1.362-.23-1.872-.686-.51-.457-.765-1.143-.765-2.058 0-.727.176-1.327.527-1.802A3.337 3.337 0 016.684 4.43a5.668 5.668 0 011.635-.422c.61-.07 1.167-.129 1.67-.176zM9.638 7.49c.176-.316.279-.624.308-.923a9.65 9.65 0 00.044-.94V5.24c-.633 0-1.231.109-1.794.326s-.844.694-.844 1.433c0 .387.1.7.3.94s.462.361.79.361c.247 0 .478-.073.695-.22.217-.146.384-.342.501-.589z"/></svg>',
     193
     194                        'apple'       => '<svg width="16" height="19" viewBox="0 0 16 19" xmlns="http://www.w3.org/2000/svg"><path d="M14.94 6.186c-.633.21-1.143.68-1.53 1.406-.386.727-.58 1.418-.58 2.074a4.7 4.7 0 00.669 2.409c.445.761 1.054 1.248 1.828 1.459-.106.363-.252.75-.44 1.16-.199.398-.422.785-.668 1.16s-.504.72-.773 1.037a5.975 5.975 0 01-.826.756 2.503 2.503 0 01-.739.343c-.27.076-.574.114-.914.114-.21 0-.442-.023-.694-.07s-.548-.14-.888-.282a4.333 4.333 0 00-.738-.263 2.533 2.533 0 00-.598-.088c-.14 0-.354.04-.641.123-.287.082-.636.205-1.046.37-.223.07-.428.128-.615.175-.188.047-.346.07-.475.07-.363 0-.709-.073-1.037-.22s-.662-.354-1.002-.624a9.465 9.465 0 01-1.389-1.582 10.162 10.162 0 01-1.01-1.837 10.446 10.446 0 01-.625-2.03C.07 11.143 0 10.428 0 9.702c0-.715.105-1.407.316-2.075a6.08 6.08 0 01.932-1.784c.398-.521.878-.94 1.441-1.257s1.19-.474 1.88-.474c.423 0 .792.04 1.108.123.317.082.616.193.897.334.258.152.507.26.747.325s.483.097.73.097c.187 0 .392-.018.615-.053.222-.035.439-.1.65-.193.539-.211.99-.37 1.353-.475.364-.105.65-.158.862-.158.527 0 1.005.079 1.432.237.428.158.818.396 1.17.712.14.14.278.305.412.492.135.188.267.399.396.633zM7.557 4.217c0-.492.097-.96.29-1.406.194-.445.46-.879.8-1.3.328-.364.715-.66 1.16-.888.446-.229.914-.39 1.406-.484a4.55 4.55 0 01-.254 1.494c-.17.492-.425.944-.765 1.354-.387.422-.794.732-1.222.931-.428.2-.9.3-1.415.3z"/></svg>',
     195
     196                        'bandcamp'    => '<svg width="19" height="6" viewBox="0 0 19 6" xmlns="http://www.w3.org/2000/svg"><path d="M.32 5.811L3.449.361h6.68l-3.13 5.45H.32zm13.289-3.445c.07.105.14.214.21.325.071.111.13.225.177.343a2.953 2.953 0 01.105.808c0 .14-.009.276-.026.405a2.422 2.422 0 01-.08.369c-.034.129-.078.246-.131.351-.053.106-.114.211-.185.317a2.01 2.01 0 01-.237.263 1.046 1.046 0 01-.29.194 2.079 2.079 0 01-.378.132c-.123.029-.255.043-.395.043a2.389 2.389 0 01-.422-.035c-.07 0-.141-.008-.211-.026s-.14-.044-.211-.08a1.46 1.46 0 01-.317-.175 1.12 1.12 0 01-.14-.167 1.724 1.724 0 01-.106-.184h-.035v.562h-.808V.361h.878v2.005a.73.73 0 01.106-.14l.105-.106c.059-.036.109-.07.15-.106.04-.035.085-.07.132-.105a6.737 6.737 0 01.351-.106.492.492 0 01.185-.035h.167c.164 0 .313.012.448.035.135.024.255.059.36.106.141.058.258.123.352.193.094.07.176.158.246.264zm-.457 1.968a.93.93 0 00.044-.228 2.46 2.46 0 01.026-.229c0-.093-.003-.184-.009-.272a.773.773 0 00-.061-.255.938.938 0 00-.097-.246c-.04-.07-.079-.14-.114-.21-.059-.06-.114-.112-.167-.16s-.114-.087-.185-.122c-.07-.059-.149-.097-.237-.114s-.173-.027-.255-.027c-.175 0-.34.035-.492.106a.853.853 0 00-.351.28 1.377 1.377 0 00-.211.45 2.007 2.007 0 00-.044.843l.044.255a.938.938 0 00.096.246c.041.07.08.14.115.21.058.06.117.112.175.159a.909.909 0 00.211.123.688.688 0 00.211.08c.082.017.164.026.246.026.094 0 .182-.012.264-.036s.158-.058.228-.105a.868.868 0 00.194-.132.972.972 0 00.158-.184 2.87 2.87 0 01.123-.22.616.616 0 00.088-.238zm3.973.668a1.1 1.1 0 00.22-.307 1.12 1.12 0 00.096-.396h.879c-.059.27-.135.501-.229.695a1.66 1.66 0 01-.369.5c-.164.141-.345.247-.545.317-.199.07-.427.106-.685.106-.164 0-.317-.018-.457-.053a3.004 3.004 0 01-.387-.123 2.1 2.1 0 01-.343-.194c-.1-.07-.184-.146-.255-.228a1.352 1.352 0 01-.228-.299 2.92 2.92 0 01-.158-.334c-.035-.14-.068-.278-.097-.413a2.045 2.045 0 010-.853c.03-.14.062-.27.097-.386.058-.14.117-.267.176-.378s.128-.22.21-.325c.07-.094.159-.176.264-.247.106-.07.217-.128.334-.175.129-.059.27-.103.422-.132a2.255 2.255 0 011.125.062c.105.035.205.073.299.114.094.04.181.085.263.132.07.07.141.143.211.22.07.075.13.155.176.237.035.093.07.193.106.298.035.106.058.217.07.334h-.879a.964.964 0 00-.114-.325.967.967 0 00-.202-.237c-.07-.059-.159-.103-.264-.132s-.217-.044-.334-.044a.701.701 0 00-.185.026c-.064.018-.12.033-.167.044-.07.024-.14.053-.21.088a.67.67 0 00-.317.317c-.035.07-.07.146-.105.228-.036.106-.062.217-.08.334s-.026.252-.026.404a3.348 3.348 0 00.035.493c.024.07.05.146.08.228a.74.74 0 00.096.194c.035.07.085.131.15.184.064.053.12.097.167.132.07.035.149.061.237.079a1.299 1.299 0 00.633-.026.819.819 0 00.29-.159z"/></svg>',
     197
     198                        'behance'     => '<svg width="19" height="12" viewBox="0 0 19 12" xmlns="http://www.w3.org/2000/svg"><path d="M16.52 2.396h-4.499V1.342h4.499v1.054zM9.069 6.649c.176.246.308.512.395.8.088.286.132.606.132.957 0 .281-.026.542-.079.782-.053.24-.132.46-.237.659-.117.21-.25.398-.396.562a3.975 3.975 0 01-.483.457 4.816 4.816 0 01-.597.317c-.211.093-.434.175-.668.246-.223.046-.457.087-.703.123a5.213 5.213 0 01-.738.052H.318V.427h5.201c.258 0 .51.02.756.062.246.04.486.09.72.15.211.046.405.113.58.201.176.088.346.185.51.29.152.106.29.235.413.387.123.152.231.316.325.492.082.152.144.34.185.562.04.223.061.469.061.738 0 .258-.03.507-.088.747-.058.24-.158.448-.299.624-.117.188-.272.36-.465.518-.194.159-.413.29-.66.396.352.105.65.246.897.422.246.175.451.386.615.632zM2.672 4.927h2.53c.223 0 .425-.015.607-.044.182-.03.343-.097.483-.203.14-.105.246-.234.317-.386.07-.152.105-.352.105-.598a2.03 2.03 0 00-.026-.334.81.81 0 00-.114-.298c-.047-.07-.1-.138-.159-.202s-.134-.126-.228-.185a9.83 9.83 0 00-.237-.114 1.404 1.404 0 00-.29-.097 5.861 5.861 0 01-.317-.044 1.921 1.921 0 00-.316-.026H2.672v2.53zm4.499 3.338c0-.28-.041-.518-.123-.711s-.205-.355-.369-.484a1.573 1.573 0 00-.545-.263 2.697 2.697 0 00-.72-.088H2.672v3.058h2.671a3.8 3.8 0 00.36-.018c.124-.012.238-.03.343-.053.106-.035.202-.07.29-.105.088-.035.179-.082.273-.14a.959.959 0 00.228-.185.741.741 0 00.158-.273c.047-.082.088-.184.123-.307s.053-.267.053-.43zm11.141-.105h-5.8c0 .281.05.568.15.861s.237.521.413.685c.152.153.349.273.589.36.24.089.512.132.817.132.223 0 .43-.032.624-.096.193-.065.372-.161.536-.29.152-.106.275-.211.369-.316s.17-.246.228-.422h1.933c-.152.539-.351.972-.597 1.3a3.439 3.439 0 01-.844.809c-.316.21-.667.374-1.054.492s-.808.175-1.265.175a4.577 4.577 0 01-1.722-.316 4.25 4.25 0 01-.686-.369 3.793 3.793 0 01-.58-.475 3.888 3.888 0 01-.474-.623 4.664 4.664 0 01-.37-.747 5.992 5.992 0 01-.201-.791 4.86 4.86 0 010-1.757c.052-.282.131-.557.237-.826.082-.258.193-.495.334-.712a5.31 5.31 0 01.474-.624 4.11 4.11 0 01.607-.5c.216-.147.448-.285.694-.414.257-.105.527-.184.808-.237a4.76 4.76 0 011.819.018c.299.064.583.16.852.29.246.14.472.298.677.474.205.176.39.37.553.58.176.223.32.466.43.73a5.57 5.57 0 01.423 1.721c.029.323.038.618.026.888zm-2.214-1.441c-.035-.258-.094-.492-.176-.703s-.187-.387-.316-.527a1.301 1.301 0 00-.536-.343 2.19 2.19 0 00-.73-.114 1.96 1.96 0 00-.474.053c-.14.035-.275.088-.404.158a1.803 1.803 0 00-.308.176c-.1.07-.184.152-.255.246-.07.082-.125.17-.166.263-.041.094-.08.193-.115.299a1.135 1.135 0 00-.105.492h3.585z"/></svg>',
     199
     200                        'codepen'     => '<svg width="18" height="19" viewBox="0 0 18 19" xmlns="http://www.w3.org/2000/svg"><path d="M18 6.38v5.5c0 .012-.003.03-.009.053a.29.29 0 00-.009.07v.054a.873.873 0 01-.044.132 2.497 2.497 0 01-.061.132c-.012 0-.018.003-.018.01v.008a.078.078 0 01-.009.035c-.005.012-.014.018-.026.018a.235.235 0 01-.044.061l-.026.027c-.024.012-.041.026-.053.044s-.024.032-.035.044c-.012 0-.02.003-.027.009l-.026.026-8.147 5.413a.135.135 0 01-.052.017c-.012 0-.024.006-.036.018-.023.012-.04.018-.052.018s-.03.005-.053.017c-.035.012-.08.024-.132.035a.69.69 0 01-.3 0 1.357 1.357 0 01-.131-.035.122.122 0 01-.053-.009l-.053-.026a.078.078 0 01-.035-.009l-.053-.026-8.129-5.413a.77.77 0 01-.123-.114 2.032 2.032 0 00-.106-.115H.15c-.006 0-.01-.006-.01-.017-.01 0-.017-.003-.017-.01v-.008a2.499 2.499 0 01-.061-.132.873.873 0 01-.044-.133v-.052c0-.024-.003-.047-.01-.071S0 11.91 0 11.898V6.38c0-.012.003-.03.009-.053s.009-.047.009-.07v-.053a.873.873 0 01.044-.132c.017-.042.038-.086.061-.133.012 0 .018-.003.018-.009v-.008l.017-.018a1.15 1.15 0 01.23-.23L8.515.264C8.54.25 8.557.245 8.57.245s.023-.006.035-.018A.135.135 0 018.657.21c.012 0 .03-.006.053-.018a.819.819 0 01.58 0c.024 0 .041.003.053.009l.053.026c.012 0 .023.003.035.01l.053.026 8.129 5.412a.77.77 0 01.123.114c.035.042.07.08.106.115h.008c.006 0 .01.006.01.018.011 0 .017.003.017.008v.01c.023.046.044.09.061.132a.873.873 0 01.044.132v.053c0 .023.003.047.01.07s.008.041.008.053zm-9.009 4.46l2.551-1.71-2.55-1.71L6.44 9.13l2.551 1.71zm.845-4.918l3.22 2.168 2.551-1.728-5.771-3.825v3.385zm-1.69 0V2.537l-5.77 3.825 2.55 1.728 3.22-2.168zM3.397 9.13L1.689 7.967v2.31L3.396 9.13zm1.53 1.023l-2.55 1.727 5.77 3.826v-3.385l-3.22-2.168zm4.91 2.168v3.385l5.771-3.826-2.551-1.727-3.22 2.168zm4.75-3.19l1.707 1.163v-2.31L14.587 9.13z"/></svg>',
     201
     202                        'deviantart'  => '<svg width="12" height="19" viewBox="0 0 12 19" xmlns="http://www.w3.org/2000/svg"><path d="M11.48.139h-.01v3.608L8.32 9.753l.29.284h2.86v4.513H6.14l-.46.249-1.58 3.003-.32.337H.68v-3.607l3.15-6.006-.29-.284H.68V3.747h5.35l.47-.267L8.08.477 8.4.139z"/></svg>',
     203
     204                        'digg'        => '<svg width="18" height="11" viewBox="0 0 18 11" xmlns="http://www.w3.org/2000/svg"><path d="M5.41 2.554h1.793v6.117H5.41V2.554zM2.879.023h1.793V8.67H-.004V2.554h2.883V.023zm0 3.973h-1.09V7.23h1.09V3.996zM5.41.023h1.793V1.85H5.41V.023zm2.496 2.531h4.676v8.297H7.906V9.41h2.883V8.67H7.906V2.554zM9.7 7.23h1.09V3.995h-1.09V7.23zm8.297-4.676v8.297H13.32V9.41h2.883V8.67H13.32V2.554h4.676zm-1.793 1.441h-1.09V7.23h1.09V3.995z"/></svg>',
     205
     206                        'dribbble'    => '<svg width="19" height="19" viewBox="0 0 19 19" xmlns="http://www.w3.org/2000/svg"><path d="M9.68.139c1.254 0 2.426.234 3.516.703 1.09.48 2.042 1.128 2.856 1.943s1.456 1.766 1.925 2.856.703 2.256.703 3.498c0 1.242-.234 2.408-.703 3.498s-1.11 2.042-1.925 2.856-1.767 1.462-2.856 1.943c-1.102.468-2.274.703-3.516.703s-2.408-.235-3.498-.703c-1.09-.48-2.042-1.128-2.856-1.943s-1.462-1.766-1.943-2.856A8.758 8.758 0 01.68 9.139c0-1.242.234-2.408.703-3.498.48-1.09 1.128-2.042 1.943-2.856S5.092 1.323 6.182.842A8.758 8.758 0 019.68.14zm5.977 4.148a7.736 7.736 0 01-1.16 1.16 12.69 12.69 0 01-1.301.932c-.516.328-1.125.639-1.828.932.093.176.181.36.263.554.082.193.158.383.229.57.035.06.064.121.088.185.023.065.052.132.088.203a12.923 12.923 0 011.88-.106c.622.012 1.178.041 1.67.088s.897.1 1.213.158c.328.059.522.094.58.106 0-.914-.155-1.779-.466-2.593a7.84 7.84 0 00-1.256-2.189zM9.68 1.44a7.741 7.741 0 00-1.793.21c.059.083.182.253.37.51.187.27.412.604.676 1.002.264.399.56.856.888 1.372.316.503.632 1.043.949 1.617 1.371-.516 2.37-1.081 2.997-1.697.627-.615.964-.975 1.01-1.08a7.29 7.29 0 00-1.09-.81 8.176 8.176 0 00-1.22-.606 6.813 6.813 0 00-1.346-.378 7.332 7.332 0 00-1.44-.14zm-3.234.738a7.587 7.587 0 00-1.512.932 8.169 8.169 0 00-1.257 1.248 7.56 7.56 0 00-.94 1.494 7.7 7.7 0 00-.58 1.705c.093 0 .345-.006.755-.018.41 0 .938-.026 1.582-.079a30.18 30.18 0 002.198-.272c.832-.13 1.699-.31 2.601-.545a45.446 45.446 0 00-.966-1.617 92.45 92.45 0 00-1.881-2.848zm-4.43 6.96c0 .493.047.974.14 1.442a7.136 7.136 0 001.002 2.584c.247.399.522.768.827 1.108l.492-.739c.281-.41.685-.884 1.213-1.423a14.583 14.583 0 011.916-1.618c.761-.539 1.64-.966 2.636-1.283l.15-.061a.938.938 0 01.132-.044l-.29-.65c-.1-.223-.203-.44-.308-.651-.973.293-1.916.516-2.83.668s-1.734.26-2.461.325c-.727.065-1.324.097-1.793.097-.469.012-.744.012-.826 0v.246zm7.664 7.7c.55 0 1.078-.059 1.582-.176.504-.117.984-.27 1.441-.457a11.367 11.367 0 00-.158-.79c-.07-.376-.17-.818-.299-1.328a31.427 31.427 0 00-.492-1.714c-.199-.633-.433-1.3-.703-2.004 0 .024-.006.036-.018.036h-.017c-1.09.375-2.01.826-2.76 1.353-.762.516-1.38 1.017-1.854 1.503-.475.486-.824.917-1.046 1.292a8.306 8.306 0 00-.387.668c.656.492 1.386.885 2.188 1.178s1.644.439 2.523.439zm4.324-1.336a8.092 8.092 0 001.196-.984c.363-.375.685-.78.966-1.213s.516-.897.703-1.389.323-1.008.405-1.547a8.474 8.474 0 00-.51-.158 11.686 11.686 0 00-2.531-.316c-.551-.012-1.131.029-1.74.123.257.691.474 1.347.65 1.969.176.609.325 1.157.448 1.643s.214.894.273 1.222c.07.316.117.533.14.65z"/></svg>',
     207
     208                        'etsy'        => '<svg width="16" height="19" viewBox="0 0 16 19" xmlns="http://www.w3.org/2000/svg"><path d="M.83.841A.423.423 0 01.9.543C.96.46 1.076.42 1.251.42c.082 0 .333.006.754.017.422.012.924.024 1.51.036s1.21.023 1.876.035 1.287.017 1.86.017c2.35 0 3.947-.064 4.79-.193.842-.128 1.467-.193 1.877-.193.21.012.35.082.42.21s.106.246.106.352-.035.26-.105.465a2.25 2.25 0 00-.105.728c0 .28.023.558.07.833.046.275.07.547.07.816 0 .245-.08.412-.237.5a.901.901 0 01-.43.131c-.105 0-.19-.029-.254-.087s-.097-.193-.097-.404c-.011-.398-.16-.824-.447-1.28-.287-.457-1.868-.685-4.746-.685-1.45 0-2.31.097-2.579.29s-.403.517-.403.973v4.456c0 .246.038.413.114.5.076.088.213.132.412.132h4.176c.397 0 .775-.117 1.131-.35s.565-.644.623-1.229c.012-.292.056-.47.132-.535s.196-.097.36-.097c.151 0 .28.065.385.193.106.13.152.334.14.614-.034.293-.072.597-.113.913-.041.316-.062.678-.062 1.087 0 .422.03.825.088 1.211.058.386.088.731.088 1.035 0 .292-.14.46-.421.5s-.457-.102-.527-.43c-.07-.292-.228-.646-.473-1.061-.246-.415-.825-.623-1.737-.623h-3.72c-.21 0-.362.067-.456.202-.093.134-.14.371-.14.71v4.737c0 .421.108.813.325 1.176s.74.543 1.57.543c.42 0 .912.006 1.473.018a20.7 20.7 0 001.685-.07 10.113 10.113 0 001.631-.263c.527-.13.965-.328 1.316-.597.28-.222.485-.517.614-.886.129-.368.24-.833.333-1.395.047-.245.26-.339.64-.28.38.058.553.386.518.982-.011.28-.108.67-.29 1.167-.18.497-.271.938-.271 1.324v.957c0 .345-.14.517-.421.517-.246 0-.445-.047-.597-.14-.152-.094-.772-.14-1.86-.14-.537 0-1.35.005-2.438.017-1.088 0-2.207.006-3.36.018-1.152.011-2.213.017-3.184.017-.97.012-1.614.018-1.93.018-.222 0-.37-.035-.447-.106s-.114-.175-.114-.315.044-.258.132-.351.23-.14.43-.14c.187 0 .579-.088 1.175-.264.596-.175.895-.79.895-1.842V3.858c0-.561-.1-1.088-.299-1.579-.198-.491-.649-.772-1.35-.842-.281-.035-.439-.102-.474-.202S.83 1.005.83.841z"/></svg>',
     209
     210                        'facebook'    => '<svg width="11" height="19" viewBox="0 0 11 19" xmlns="http://www.w3.org/2000/svg"><path d="M7.05 18.437H3.745V10.21H.968V7.011h2.777V4.656c0-.692.1-1.295.3-1.81.198-.528.477-.97.834-1.328a3.367 3.367 0 011.292-.8A4.903 4.903 0 017.86.437c.586 0 1.107.015 1.564.044.457.03.756.062.897.097v2.847H8.632c-.668 0-1.099.144-1.292.431-.193.287-.29.66-.29 1.116v2.04h3.164l-.422 3.199H7.05v8.226z"/></svg>',
     211
     212                        'feed'        => '<svg width="19" height="19" viewBox="0 0 19 19" xmlns="http://www.w3.org/2000/svg"><path d="M5.12 15.714c0 .668-.232 1.233-.697 1.696a2.321 2.321 0 01-1.703.695c-.67 0-1.238-.232-1.703-.695a2.303 2.303 0 01-.697-1.696c0-.645.232-1.204.697-1.679a2.292 2.292 0 011.703-.712c.67 0 1.238.235 1.703.704.465.468.697 1.03.697 1.687zM.32 9.702V6.257c1.647 0 3.188.31 4.624.932 1.447.632 2.708 1.485 3.785 2.557s1.926 2.33 2.55 3.77a11.6 11.6 0 01.935 4.624H8.755a8.552 8.552 0 00-.635-3.243 8.383 8.383 0 00-1.835-2.734A8.436 8.436 0 001.979 9.86 8.652 8.652 0 00.32 9.702zm0-6.117V.14c2.482 0 4.812.474 6.988 1.424 2.188.937 4.097 2.223 5.727 3.858s2.92 3.542 3.873 5.722c.941 2.191 1.412 4.523 1.412 6.996h-3.459c0-2.004-.382-3.89-1.147-5.66s-1.806-3.314-3.123-4.632a14.708 14.708 0 00-4.624-3.12C4.202 3.966 2.32 3.585.32 3.585z"/></svg>',
     213
     214                        'flickr'      => '<svg width="18" height="9" viewBox="0 0 18 9" xmlns="http://www.w3.org/2000/svg"><path d="M4.08 8.179c-.563 0-1.09-.105-1.582-.316a4.082 4.082 0 01-1.292-.87 4.274 4.274 0 01-.888-1.31C.108 5.19.002 4.663.002 4.1s.105-1.09.316-1.582c.211-.492.501-.923.87-1.292.37-.37.806-.665 1.31-.888A3.973 3.973 0 014.08.023c.563 0 1.09.105 1.582.316.492.211.923.501 1.292.87.37.37.665.806.888 1.31.21.492.316 1.02.316 1.582s-.105 1.09-.316 1.582c-.211.492-.501.923-.87 1.292-.37.369-.806.665-1.31.888-.492.21-1.02.316-1.582.316zm9.844 0c-.563 0-1.09-.105-1.582-.316a4.082 4.082 0 01-1.292-.87 4.274 4.274 0 01-.888-1.31c-.21-.492-.316-1.02-.316-1.582s.105-1.09.316-1.582c.211-.492.501-.923.87-1.292.37-.37.806-.665 1.31-.888a3.973 3.973 0 011.582-.316c.562 0 1.09.105 1.582.316.492.211.923.501 1.292.87.369.37.665.806.888 1.31.21.492.316 1.02.316 1.582s-.106 1.09-.316 1.582c-.211.492-.501.923-.87 1.292-.37.369-.806.665-1.31.888-.492.21-1.02.316-1.582.316z"/></svg>',
     215
     216                        'foursquare'  => '<svg width="14" height="19" viewBox="0 0 14 19" xmlns="http://www.w3.org/2000/svg"><path d="M12.28.101c.727 0 1.195.196 1.406.589.211.392.246.958.106 1.696-.106.492-.252 1.195-.44 2.11-.176.914-.354 1.828-.536 2.742-.182.914-.349 1.734-.5 2.46-.142.716-.224 1.126-.247 1.231-.07.27-.193.571-.37.905-.175.334-.567.501-1.177.501H7.57c-.059 0-.097.006-.114.018l-.132.088c-.023.023-.275.31-.756.861-.48.563-1.005 1.175-1.573 1.837-.568.662-1.093 1.269-1.573 1.82l-.703.826c-.176.21-.384.316-.624.316s-.42-.023-.537-.07c-.105-.035-.225-.132-.36-.29-.135-.159-.202-.413-.202-.765V1.718c0-.316.12-.665.36-1.046.24-.38.683-.571 1.327-.571h9.598zm-.055 10.055l.09-.457.06-.283-.15.74zm.15-.74l.584-2.898-.143.72a251.52 251.52 0 01-.442 2.178zm.584-2.898c.132-.674.264-1.348.393-2.023.188-.914.334-1.617.44-2.109l-.833 4.132zm-1.241-3.816a.517.517 0 00-.097-.448.45.45 0 00-.36-.184H3.562c-.176 0-.32.064-.431.193s-.167.264-.167.404v11.918c0 .012.008.018.026.018s.032-.006.044-.018l.44-.545a55.84 55.84 0 001.01-1.204c.37-.45.724-.882 1.064-1.292.328-.41.533-.662.615-.756.164-.199.302-.325.413-.378.111-.052.29-.079.536-.079h2.566c.2 0 .346-.058.44-.175.094-.118.146-.211.158-.282a35 35 0 00.202-.993c.112-.568.185-.929.22-1.08.012-.165-.038-.317-.15-.458s-.237-.21-.377-.21H6.97c-.21 0-.38-.065-.51-.194s-.193-.3-.193-.51v-.457c0-.211.065-.38.194-.51s.298-.193.51-.193H10.732c.13 0 .252-.05.37-.15s.193-.202.228-.307l.387-2.11z"/></svg>',
     217
     218                        'goodreads'   => '<svg width="13" height="19" viewBox="0 0 13 19" xmlns="http://www.w3.org/2000/svg"><path d="M10.63.418h1.444v12.294c0 .869-.117 1.638-.352 2.307-.247.67-.599 1.233-1.057 1.691s-1.027.804-1.708 1.04c-.681.234-1.462.351-2.343.351-.775 0-1.467-.094-2.078-.281-.61-.2-1.127-.485-1.55-.855a3.653 3.653 0 01-.969-1.347c-.234-.528-.358-1.133-.37-1.814l-.035-.388H2.88v.423c.06.951.39 1.67.995 2.158.605.487 1.495.73 2.669.73 1.409 0 2.442-.325 3.1-.977.657-.652.986-1.664.986-3.038v-1.867c-.458.634-1.075 1.133-1.85 1.497a5.769 5.769 0 01-2.483.546c-.88 0-1.67-.173-2.369-.52s-1.283-.842-1.752-1.488a6.218 6.218 0 01-.969-1.955 8.196 8.196 0 01-.334-2.378c0-.974.135-1.855.405-2.641.27-.799.651-1.48 1.144-2.044S3.51.864 4.202.56C4.893.254 5.662.101 6.508.101c.845 0 1.629.185 2.35.555a4.72 4.72 0 011.77 1.559V.418zm.317 6.13a6.213 6.213 0 00-.361-2.238c-.252-.692-.614-1.274-1.083-1.743a3.753 3.753 0 00-1.268-.846 4.137 4.137 0 00-1.55-.281c-.81 0-1.491.152-2.043.458a3.998 3.998 0 00-1.357 1.215 5.054 5.054 0 00-.74 1.638 7.39 7.39 0 00-.228 1.796c0 .764.1 1.45.3 2.061.199.61.48 1.136.845 1.576s.804.778 1.32 1.013a4.124 4.124 0 001.726.352c.764 0 1.427-.14 1.99-.422a4.218 4.218 0 001.374-1.145c.364-.47.635-1.004.81-1.603s.265-1.21.265-1.832z"/></svg>',
     219
     220                        'google-plus' => '<svg width="19" height="13" viewBox="0 0 19 13" xmlns="http://www.w3.org/2000/svg"><path d="M6.14 5.323h5.45c.082.516.111 1.031.088 1.547s-.112 1.02-.264 1.512a5.708 5.708 0 01-.554 1.31c-.24.416-.536.788-.888 1.116-.34.305-.709.56-1.107.765s-.815.348-1.248.43a6.43 6.43 0 01-1.495.176c-.504 0-.99-.058-1.459-.176a5.32 5.32 0 01-1.107-.439 6.98 6.98 0 01-1.002-.65 4.671 4.671 0 01-.906-.862 6.176 6.176 0 01-.677-1.037 5.985 5.985 0 01-.545-1.846A5.935 5.935 0 01.48 5.288a7.45 7.45 0 01.211-.774c.082-.246.176-.48.281-.703A5.884 5.884 0 012.334 2.08 5.754 5.754 0 014.24.963a6.02 6.02 0 011.97-.307c.68.005 1.324.12 1.933.342.352.13.686.29 1.002.484.317.193.604.419.862.677-.094.093-.19.184-.29.272-.1.088-.19.185-.273.29L8.39 3.776a2.845 2.845 0 00-1.265-.738c-.27-.094-.548-.141-.836-.141s-.57.023-.852.07c-.317.07-.627.19-.932.36-.305.17-.568.367-.791.59-.2.199-.37.416-.51.65-.14.235-.252.475-.334.72-.117.376-.176.754-.176 1.135s.059.753.176 1.116c.129.352.305.68.528.985.222.304.492.562.808.773.2.14.405.26.616.36s.427.168.65.203c.234.047.472.067.712.061.24-.006.472-.026.694-.061.211-.035.428-.097.65-.185.224-.088.429-.19.616-.308.305-.21.557-.471.756-.782.2-.31.334-.647.404-1.01H6.14V5.322zm12.236.14v1.442h-1.969v1.97h-1.442v-1.97h-1.969V5.464h1.97v-1.97h1.441v1.97h1.969z"/></svg>',
     221
     222                        'google'      => '<svg width="18" height="19" viewBox="0 0 18 19" xmlns="http://www.w3.org/2000/svg"><path d="M17.65 8.499c.047.633.038 1.256-.026 1.871a12.714 12.714 0 01-.325 1.819 8.868 8.868 0 01-.896 2.02 7.555 7.555 0 01-1.388 1.704 8.218 8.218 0 01-1.731 1.213 7.965 7.965 0 01-1.959.72 9.909 9.909 0 01-2.31.255 8.672 8.672 0 01-2.293-.325 9.662 9.662 0 01-1.73-.66 7.935 7.935 0 01-1.538-.992c-.515-.41-.981-.867-1.397-1.37s-.77-1.043-1.063-1.617C.772 12.692.59 12.23.45 11.75s-.246-.966-.317-1.458a7.93 7.93 0 01-.07-1.493 9.1 9.1 0 01.158-1.494c.094-.386.202-.77.325-1.15.123-.381.272-.747.448-1.099.27-.515.58-1.007.931-1.475a9.392 9.392 0 012.618-2.267 8.746 8.746 0 011.581-.72A9.498 9.498 0 019.146.1a8.34 8.34 0 011.529.14 8.067 8.067 0 011.493.422c.527.2 1.034.448 1.52.747.486.298.94.647 1.361 1.045-.14.14-.284.287-.43.44-.146.152-.296.298-.448.439-.27.28-.542.556-.817.825s-.553.545-.835.826c-.269-.27-.568-.5-.896-.694a5.15 5.15 0 00-1.036-.465c-.422-.13-.858-.2-1.31-.211s-.892.023-1.326.105a5.833 5.833 0 00-1.458.58c-.457.258-.86.568-1.212.931-.305.305-.568.636-.79.993s-.405.729-.545 1.115a5.67 5.67 0 00-.255 1.757c.006.61.102 1.195.29 1.757h-.035a.603.603 0 01.061.123c.018.047.032.088.044.123.2.492.469.958.808 1.397.34.44.726.805 1.16 1.098a6.2 6.2 0 00.957.545 4.63 4.63 0 001.046.334 5.451 5.451 0 002.143 0c.352-.059.694-.156 1.028-.29s.647-.296.94-.484c.48-.316.878-.717 1.195-1.203.316-.486.527-1.01.632-1.572H9.041V7.41h8.468c.035.175.065.357.088.544s.041.37.053.545z"/></svg>',
     223
     224                        'github'      => '<svg width="17" height="19" viewBox="0 0 17 19" xmlns="http://www.w3.org/2000/svg"><path d="M16.82 6.336c0 1.127-.153 2.049-.458 2.765-.317.716-.725 1.286-1.224 1.709s-1.066.728-1.7.915c-.645.188-1.291.317-1.937.388.211.2.393.478.546.837.153.358.229.807.229 1.347V18.1H6.464a173.584 173.584 0 00-.035-2.783c-1.62.353-2.683.212-3.188-.422l-.758-.951c-.27-.67-.554-1.125-.854-1.365l-.449-.361c-.528-.353-.643-.558-.343-.617l.449-.088c.587.059 1.033.273 1.338.643l.458.555c.517.892 1.127 1.318 1.832 1.277.704-.041 1.221-.138 1.55-.291.059-.376.158-.693.3-.951s.299-.458.475-.599a12.085 12.085 0 01-1.938-.405c-.634-.2-1.206-.51-1.717-.933S2.665 9.817 2.36 9.1c-.317-.716-.475-1.638-.475-2.765 0-.634.108-1.215.325-1.744.218-.528.508-.992.872-1.391-.059-.14-.132-.49-.22-1.048S2.894.911 3.223.101l.757.035C4.485.16 5.301.547 6.43 1.3A11.364 11.364 0 019.352.91c.517 0 1.022.036 1.515.106.493.07.974.164 1.444.282C13.427.536 14.24.145 14.751.128L15.515.1c.318.81.432 1.494.344 2.052s-.167.907-.238 1.048c.388.41.684.878.89 1.4.205.523.308 1.101.308 1.735zM2.096 12.078a.235.235 0 00-.026-.106.134.134 0 00-.08-.07c-.058-.036-.105-.047-.14-.036a.106.106 0 00-.071.07c-.012.024-.006.057.018.098a.163.163 0 00.088.079c.035.012.076.012.123 0s.076-.024.088-.035zm.458.528a.122.122 0 00.035-.123.261.261 0 00-.07-.124c-.036-.058-.077-.088-.124-.088s-.088.006-.123.018c-.012.035-.017.076-.017.123s.017.088.052.124.083.058.141.07c.059.012.094.012.106 0zm.458.67a.18.18 0 00.053-.133.245.245 0 00-.053-.15c-.035-.058-.076-.093-.123-.105a.22.22 0 00-.124 0c-.035.023-.053.064-.053.123s.018.112.053.159c.035.058.077.094.124.105a.22.22 0 00.123 0zm.634.633c.035-.035.044-.082.026-.14a.267.267 0 00-.097-.141c-.035-.06-.082-.091-.14-.097s-.106.014-.141.061c-.036.036-.044.08-.027.132.018.053.05.103.097.15.035.059.082.088.141.088s.106-.017.14-.053zm.88.388c.012-.059-.002-.112-.044-.159s-.085-.076-.132-.088a.469.469 0 00-.202.01c-.065.017-.103.049-.115.096a.177.177 0 00.044.159.274.274 0 00.168.088c.058.011.117.008.176-.01s.094-.05.106-.096zm.705.246c.07 0 .13-.017.176-.052s.07-.077.07-.124a.146.146 0 00-.07-.132.327.327 0 00-.176-.044c-.07 0-.13.018-.176.053-.047.035-.07.076-.07.123 0 .06.023.103.07.132.047.03.106.044.176.044zm.916-.105c.07-.024.129-.056.176-.097s.07-.08.07-.115a.223.223 0 00-.105-.123.284.284 0 00-.176-.017c-.07.023-.13.055-.176.096s-.07.08-.07.115c.023.059.058.1.105.123s.105.03.176.018z"/></svg>',
     225
     226                        'instagram'   => '<svg width="19" height="19" viewBox="0 0 19 19" xmlns="http://www.w3.org/2000/svg"><path d="M9.51 1.757c-1.219 0-2.01.009-2.373.026-.363.018-.791.033-1.283.044a6.324 6.324 0 00-1.046.123 4.488 4.488 0 00-.642.194c-.199.07-.38.16-.545.272a3.267 3.267 0 00-.852.853 2.815 2.815 0 00-.29.562 5.826 5.826 0 00-.176.624c-.059.252-.094.607-.105 1.064-.024.48-.041.902-.053 1.265s-.018 1.149-.018 2.356c0 1.219.009 2.01.027 2.373.017.363.032.79.044 1.283.023.445.064.794.123 1.046s.123.466.193.642c.07.199.161.38.272.544a3.267 3.267 0 00.853.853c.164.111.352.208.562.29.165.059.373.117.624.176.252.058.607.094 1.064.105.48.024.902.041 1.266.053s1.148.018 2.355.018c1.219 0 2.01-.01 2.373-.027s.791-.032 1.283-.044a6.324 6.324 0 001.046-.123c.252-.058.466-.123.642-.193.199-.07.38-.161.545-.273a3.267 3.267 0 00.852-.852c.112-.164.208-.352.29-.563.059-.164.117-.372.176-.624s.094-.606.106-1.063c.023-.48.04-.902.052-1.266s.018-1.148.018-2.355c0-1.219-.009-2.01-.027-2.373a53.213 53.213 0 01-.043-1.283 6.324 6.324 0 00-.124-1.046 4.488 4.488 0 00-.193-.642c-.07-.2-.161-.38-.272-.545s-.244-.322-.396-.474a2.83 2.83 0 00-1.02-.668 5.826 5.826 0 00-.623-.176c-.252-.059-.607-.094-1.064-.106-.48-.023-.902-.04-1.266-.052s-1.148-.018-2.355-.018zm0-1.617c1.23 0 2.036.009 2.417.026.38.018.806.032 1.274.044.493.024.909.067 1.248.132.34.064.65.15.932.255.305.129.589.275.853.44.263.163.518.368.764.615s.454.503.624.773.314.55.43.844c.106.27.194.577.265.923.07.345.11.764.123 1.256.023.48.04.909.052 1.284.012.375.018 1.177.018 2.408s-.009 2.036-.026 2.417c-.018.38-.033.805-.044 1.274a9.181 9.181 0 01-.132 1.248c-.065.34-.15.65-.255.932-.129.304-.275.589-.44.852s-.369.519-.615.765-.504.454-.773.624c-.27.17-.551.313-.844.43-.27.106-.577.194-.923.264-.346.07-.764.112-1.257.123-.48.024-.908.041-1.283.053-.375.012-1.178.018-2.408.018s-2.036-.01-2.417-.027-.806-.032-1.274-.044a9.181 9.181 0 01-1.248-.131c-.34-.065-.65-.15-.932-.255a6.136 6.136 0 01-.853-.44c-.263-.164-.518-.369-.764-.615s-.454-.504-.624-.773c-.17-.27-.314-.551-.43-.844a5.607 5.607 0 01-.265-.923A7.287 7.287 0 01.58 12.83c-.023-.48-.04-.908-.052-1.283C.516 11.173.51 10.37.51 9.14s.009-2.036.026-2.417c.018-.381.033-.806.044-1.275.024-.492.068-.908.132-1.248.065-.34.15-.65.255-.931.129-.305.275-.59.44-.853.164-.264.369-.518.615-.764s.504-.455.773-.625c.27-.17.551-.313.844-.43.27-.106.577-.194.923-.264.345-.07.764-.111 1.257-.123.48-.023.908-.04 1.283-.053S8.279.14 9.51.14zm0 4.36c.645 0 1.248.122 1.81.368a4.53 4.53 0 012.461 2.461c.247.563.37 1.166.37 1.81 0 .645-.123 1.249-.37 1.811a4.53 4.53 0 01-2.46 2.461 4.467 4.467 0 01-1.811.37 4.467 4.467 0 01-1.81-.37 4.53 4.53 0 01-2.461-2.46 4.467 4.467 0 01-.37-1.811c0-.645.123-1.248.37-1.81a4.53 4.53 0 012.46-2.462A4.467 4.467 0 019.51 4.5zm0 7.663c.832 0 1.544-.299 2.136-.896.591-.598.887-1.307.887-2.127 0-.832-.298-1.544-.896-2.136-.598-.592-1.307-.888-2.127-.888-.832 0-1.544.3-2.136.897-.592.598-.887 1.307-.887 2.127 0 .832.298 1.544.896 2.136.598.591 1.307.887 2.127.887zm5.871-7.84c0 .293-.1.548-.299.765a.982.982 0 01-.756.325 1.06 1.06 0 01-.764-.316 1.038 1.038 0 01-.325-.774c0-.292.105-.541.316-.747.21-.205.469-.307.773-.307.293 0 .542.1.747.299.206.199.308.45.308.755z"/></svg>',
     227
     228                        'lastfm'      => '<svg width="19" height="11" viewBox="0 0 19 11" xmlns="http://www.w3.org/2000/svg"><path d="M14.52 10.093c-.89 0-1.647-.094-2.268-.281-.609-.188-1.125-.446-1.547-.774a4.092 4.092 0 01-1.019-1.142 7.805 7.805 0 01-.615-1.389l-.668-2.074c-.246-.75-.563-1.383-.95-1.899-.386-.515-1.03-.773-1.933-.773-.633 0-1.213.258-1.74.773-.528.516-.791 1.407-.791 2.672 0 .985.222 1.764.668 2.338s1.03.862 1.758.862c.808 0 1.456-.2 1.942-.598l.73-.598.667 1.793-.852.545c-.569.363-1.433.545-2.593.545-.715 0-1.353-.105-1.916-.316-.562-.211-1.034-.519-1.415-.923s-.67-.905-.87-1.503c-.2-.598-.299-1.29-.299-2.074 0-.82.1-1.547.299-2.18.2-.645.495-1.186.888-1.626s.876-.776 1.45-1.01C4.02.225 4.688.108 5.45.108c.68 0 1.283.064 1.81.193.528.129.99.34 1.389.633.398.293.738.668 1.02 1.125.292.469.55 1.037.773 1.705l.668 2.074c.246.75.62 1.371 1.125 1.864.504.492 1.277.738 2.32.738.703 0 1.236-.085 1.6-.255.363-.17.545-.448.545-.835 0-.293-.103-.545-.308-.756-.205-.21-.571-.38-1.099-.51l-1.406-.351c-.844-.188-1.453-.504-1.828-.95-.375-.445-.562-1.019-.562-1.722 0-1.125.38-1.899 1.142-2.32s1.612-.633 2.549-.633c1.055 0 1.887.199 2.496.597s.961 1.067 1.055 2.004l-2.074.246c-.036-.433-.19-.747-.466-.94-.276-.193-.66-.29-1.152-.29-.457 0-.811.094-1.063.281-.252.188-.378.457-.378.809 0 .316.08.568.237.756.158.187.466.334.923.44l1.336.28c.879.211 1.55.548 2.013 1.011.463.463.694 1.11.694 1.942 0 1.032-.392 1.764-1.178 2.198-.785.433-1.822.65-3.11.65z"/></svg>',
     229
     230                        'linkedin'    => '<svg width="19" height="19" viewBox="0 0 19 19" xmlns="http://www.w3.org/2000/svg"><path d="M14.27 9.628a1.057 1.057 0 00-.492-.316 2.467 2.467 0 00-.774-.106c-.386 0-.712.059-.975.176a1.64 1.64 0 00-.642.492c-.152.223-.266.492-.343.809s-.114.68-.114 1.09v6.152a.473.473 0 01-.026.15.448.448 0 01-.114.166c-.036.035-.083.068-.141.097s-.117.044-.176.044H7.24c-.047 0-.097-.015-.15-.044s-.108-.062-.167-.097a1.305 1.305 0 01-.096-.15.339.339 0 01-.044-.166V6.57a.31.31 0 01.044-.15 5.8 5.8 0 01.096-.167c.047-.035.097-.067.15-.096s.108-.044.167-.044h3.129a.69.69 0 01.149.017c.053.012.097.03.132.053.035.012.061.041.079.088l.061.158c0 .047.006.094.018.14a.48.48 0 01.018.106v.281c.398-.386.867-.67 1.406-.852a5.59 5.59 0 011.793-.273c.75 0 1.418.088 2.004.264.586.176 1.09.451 1.511.826.422.387.739.856.95 1.407.21.55.316 1.195.316 1.933v7.664a.473.473 0 01-.026.15.448.448 0 01-.115.167c-.035.035-.082.067-.14.096s-.117.044-.176.044h-3.305a.31.31 0 01-.15-.044 5.8 5.8 0 01-.166-.096 1.305 1.305 0 01-.097-.15.339.339 0 01-.044-.167V11c0-.293-.026-.553-.079-.782a1.85 1.85 0 00-.237-.589zm-9.738-5.45c-.211.212-.446.37-.703.475s-.54.159-.844.159c-.293 0-.571-.053-.835-.159s-.501-.263-.712-.474c-.211-.211-.37-.443-.475-.695a2.19 2.19 0 01-.158-.852c0-.293.053-.566.158-.817.106-.252.264-.484.475-.695.21-.21.445-.375.703-.492s.54-.176.844-.176c.293 0 .571.059.835.176s.5.281.712.492c.21.211.369.44.474.686.106.246.159.521.159.826 0 .316-.053.6-.159.852a2.159 2.159 0 01-.474.695zm.527 2.391v11.355a.31.31 0 01-.044.15c-.03.053-.061.108-.097.167a1.305 1.305 0 01-.149.096.339.339 0 01-.167.044H1.368a.31.31 0 01-.15-.044 5.802 5.802 0 01-.167-.096 1.305 1.305 0 01-.096-.15.339.339 0 01-.044-.167V6.57a.31.31 0 01.044-.149c.029-.053.061-.108.096-.167.047-.035.097-.067.15-.097a.339.339 0 01.167-.044h3.234a.31.31 0 01.15.044 5.8 5.8 0 01.166.097c.036.047.068.097.097.15.03.052.044.108.044.166z"/></svg>',
     231
     232                        'mail'        => '<svg width="18" height="13" viewBox="0 0 18 13" xmlns="http://www.w3.org/2000/svg"><path d="M9.6 8.175l8.402-6.856v10.793h-18V1.32l8.403 6.856c.093.07.19.129.29.176s.202.07.307.07.211-.023.317-.07c.105-.047.199-.106.28-.176zm-.598-2.074a.662.662 0 01-.263-.053 1.417 1.417 0 01-.229-.123L1.373.089h15.258L9.495 5.925a.813.813 0 01-.492.176z"/></svg>',
     233
     234                        'medium'      => '<svg width="19" height="16" viewBox="0 0 19 16" xmlns="http://www.w3.org/2000/svg"><path d="M18.39 15.093h-6.856l1.372-1.512c.023-.023.038-.079.044-.167.005-.088.008-.202.008-.342V3.667l-4.5 11.426L3.572 4.441a5.822 5.822 0 01-.167-.457 39.698 39.698 0 01-.15-.474v7.927c0 .164.006.282.018.352.012.07.076.182.193.334l2.074 2.97H.39l2.092-2.97c.117-.152.178-.264.184-.334.006-.07.01-.188.01-.352V3.246c0-.176.002-.293.008-.352.006-.058-.032-.14-.114-.246L.97.222h4.852l4.2 9.3 3.657-9.3h4.711l-1.266 1.565c-.082.094-.131.187-.149.281s-.026.211-.026.352v10.635c0 .14.003.252.008.334.006.082.027.14.062.176l1.371 1.529z"/></svg>',
     235
     236                        'meetup'      => '<svg width="19" height="15" viewBox="0 0 19 15" xmlns="http://www.w3.org/2000/svg"><path d="M12.22 11.542c-.012-.258.012-.504.07-.738s.14-.463.246-.685c.375-.797.75-1.59 1.125-2.38a774.383 774.383 0 001.291-2.742c.053-.123.085-.254.097-.395a1.428 1.428 0 00-.018-.387c-.023-.128-.105-.228-.246-.298-.14-.07-.278-.091-.413-.062s-.255.097-.36.202c-.14.106-.255.232-.343.378a6.41 6.41 0 00-.237.43c-.27.528-.533 1.049-.79 1.564a192.161 192.161 0 01-1.582 3.092l-.773 1.547c-.082.152-.164.301-.246.448a1.8 1.8 0 01-.298.395c-.223.234-.501.39-.835.465-.334.077-.653.05-.957-.079a.87.87 0 01-.519-.535c-.088-.252-.073-.548.044-.888.2-.527.401-1.048.606-1.563s.413-1.031.624-1.547l.316-.843.317-.843c.035-.07.064-.147.087-.229s.041-.158.053-.228a1.094 1.094 0 00-.088-.703.8.8 0 00-.474-.421.77.77 0 00-.598.07c-.199.105-.35.28-.456.527-.246.609-.492 1.221-.738 1.836s-.486 1.227-.72 1.836c-.258.632-.513 1.268-.765 1.906s-.506 1.268-.764 1.889c-.281.68-.68 1.13-1.195 1.353s-1.118.222-1.81 0c-.609-.2-1.068-.563-1.379-1.09-.31-.527-.377-1.112-.202-1.756.13-.528.27-1.055.422-1.582.152-.527.31-1.051.474-1.572.164-.522.328-1.04.492-1.555.176-.527.346-1.048.51-1.564l.457-1.265c.153-.422.316-.837.491-1.247.305-.656.794-1.166 1.467-1.529.674-.363 1.327-.457 1.96-.28.28.07.553.172.816.307s.525.272.782.412c.27.153.522.205.756.159.234-.047.462-.164.685-.352a92.698 92.698 0 00.597-.527c.422-.34.864-.504 1.327-.492.463.012.893.2 1.291.562.07.059.138.118.202.176.065.059.132.117.202.176a.653.653 0 00.378.202.597.597 0 00.413-.114 2.279 2.279 0 011.15-.37c.393-.011.788.024 1.187.106.55.117.978.413 1.282.887s.416.993.334 1.555a7.778 7.778 0 01-.588 2.02 277.748 277.748 0 00-1.626 3.725 9.284 9.284 0 00-.58 1.863c-.011.117-.023.228-.035.334a3.025 3.025 0 00-.017.333c-.012.328.05.583.184.765.135.181.372.313.712.395.21.059.43.105.659.14s.454.077.676.124c.316.07.539.184.668.342.129.158.187.372.175.641-.011.246-.09.446-.237.598s-.372.258-.676.316c-.55.106-1.092.123-1.625.053s-1.052-.217-1.555-.44c-.598-.257-1.051-.629-1.362-1.115-.31-.486-.483-1.057-.518-1.713z"/></svg>',
     237
     238                        'pinterest'   => '<svg width="15" height="19" viewBox="0 0 15 19" xmlns="http://www.w3.org/2000/svg"><path d="M4.77 7.548c0-.387.047-.738.14-1.055.094-.316.247-.61.458-.879.187-.257.404-.457.65-.597.246-.14.51-.211.791-.211.223 0 .422.035.598.105.175.07.328.188.457.352a1.866 1.866 0 01.387 1.16c0 .14-.015.296-.044.466-.03.17-.074.354-.132.554-.047.21-.1.436-.159.676s-.134.495-.228.765c-.082.281-.158.527-.229.738-.07.211-.123.399-.158.563-.07.28-.079.545-.026.79.053.247.167.475.343.686.175.188.378.334.606.44s.483.158.765.158c.492 0 .94-.138 1.344-.413s.765-.689 1.082-1.24c.316-.562.553-1.177.711-1.845s.238-1.4.238-2.197c0-.598-.097-1.143-.29-1.635a3.831 3.831 0 00-.87-1.319 3.932 3.932 0 00-1.398-.835c-.545-.193-1.169-.29-1.872-.29-.785 0-1.494.123-2.127.37a4.48 4.48 0 00-1.67 1.142A4.99 4.99 0 003.03 5.632a5.075 5.075 0 00-.37 1.951c0 .422.06.809.176 1.16.118.352.293.668.528.95a.566.566 0 01.158.28.96.96 0 01.017.317c-.035.082-.07.194-.105.334s-.07.31-.105.51a.397.397 0 01-.07.176.32.32 0 01-.141.105.614.614 0 01-.15.018.852.852 0 01-.167-.018 3.17 3.17 0 01-.949-.606 3.555 3.555 0 01-.703-.94A4.85 4.85 0 01.727 8.69a6.23 6.23 0 01-.14-1.354c0-.316.026-.627.078-.932.053-.304.132-.615.238-.931.105-.317.231-.624.378-.923s.325-.589.536-.87c.21-.293.445-.566.703-.818.258-.252.527-.495.809-.73.292-.222.618-.424.975-.606a7.928 7.928 0 011.204-.483c.422-.117.859-.21 1.31-.281.451-.07.917-.106 1.397-.106.504 0 .988.044 1.45.132.463.088.906.22 1.328.396.421.152.814.342 1.177.571.364.229.686.483.967.765.293.293.55.6.774.923.222.322.421.67.597 1.045.153.364.273.739.36 1.125s.132.774.132 1.16c0 1.055-.131 2.02-.395 2.892a6.954 6.954 0 01-1.222 2.347c-.539.703-1.154 1.225-1.846 1.564-.69.34-1.459.51-2.302.51-.281 0-.554-.03-.818-.088a2.728 2.728 0 01-.764-.299 2.626 2.626 0 01-.633-.413 1.94 1.94 0 01-.422-.536c-.187.82-.343 1.477-.466 1.969s-.214.82-.272.984a7.114 7.114 0 01-.528 1.336 13.037 13.037 0 01-.984 1.618H3.61a15.553 15.553 0 01-.08-1.97c.018-.597.08-1.136.185-1.616L5.086 9.27a3.083 3.083 0 01-.237-.765 5.323 5.323 0 01-.08-.958z"/></svg>',
     239
     240                        'pocket'      => '<svg width="19" height="17" viewBox="0 0 19 17" xmlns="http://www.w3.org/2000/svg"><path d="M18.2 2.721v4.673c0 .492-.03.99-.088 1.493-.058.504-.158.99-.299 1.459-.269.831-.647 1.607-1.133 2.327s-1.068 1.35-1.748 1.89a8.416 8.416 0 01-1.142.807c-.398.246-.814.457-1.247.633s-.878.316-1.335.421a8.79 8.79 0 01-1.37.211c-.48.035-.955.03-1.424-.017a7.998 7.998 0 01-1.405-.229 9.677 9.677 0 01-1.353-.457 8.131 8.131 0 01-1.265-.667 9.857 9.857 0 01-1.985-1.704A8.739 8.739 0 01.983 11.4a9.283 9.283 0 01-.492-1.388 7.71 7.71 0 01-.246-1.423C.21 8.062.195 7.535.201 7.008s.01-1.043.01-1.546V2.3c0-.387.107-.738.324-1.055a1.55 1.55 0 01.87-.632c.105-.035.213-.056.325-.062a6.52 6.52 0 01.342-.008h8.714c.539.011 1.072.017 1.599.017.527 0 1.06.006 1.599.018h1.58c.235-.024.478-.035.73-.035s.5.035.746.105a1.956 1.956 0 01.914.703c.14.21.217.43.228.659.012.228.018.465.018.711zm-3.584 4.076c.07-.2.082-.404.035-.615s-.129-.392-.246-.545a1.232 1.232 0 00-.527-.36 1.236 1.236 0 00-.632-.061 1.4 1.4 0 00-.72.386c-.2.2-.393.387-.58.562a142.695 142.695 0 01-2.74 2.6 21.07 21.07 0 01-1.187-1.097c-.38-.381-.77-.765-1.168-1.151l-.29-.29c-.1-.1-.202-.19-.307-.272a4.673 4.673 0 00-.598-.563c-.164-.105-.351-.166-.562-.184s-.41.009-.597.08c-.422.175-.66.485-.712.93-.052.445.068.814.36 1.107.41.41.817.808 1.221 1.195.404.386.806.773 1.204 1.16.199.175.395.36.588.552.194.194.396.384.606.571.164.164.337.34.519.527.181.188.395.305.64.352a1.308 1.308 0 001.16-.316 62.497 62.497 0 001.23-1.195 111.392 111.392 0 002.425-2.284c.164-.164.34-.33.527-.5.187-.17.304-.367.351-.59z"/></svg>',
     241
     242                        'reddit'      => '<svg width="19" height="16" viewBox="0 0 19 16" xmlns="http://www.w3.org/2000/svg"><path d="M18.19 7.429c0 .375-.105.709-.316 1.002-.211.293-.48.51-.809.65a2.953 2.953 0 01.105.774c0 .726-.21 1.406-.632 2.039-.422.633-.994 1.186-1.714 1.661-.721.475-1.568.853-2.54 1.134a11.8 11.8 0 01-3.13.404c-1.112 0-2.155-.14-3.128-.422-.973-.27-1.82-.641-2.54-1.116-.72-.475-1.292-1.028-1.714-1.661-.422-.645-.633-1.324-.633-2.04 0-.14.009-.28.027-.421.017-.14.044-.27.079-.387a1.753 1.753 0 01-.765-.65 1.719 1.719 0 01-.29-.967c0-.492.17-.908.51-1.248.34-.34.756-.51 1.248-.51.281 0 .536.059.764.176.229.117.42.27.572.457a8.346 8.346 0 011.142-.668c.41-.2.844-.369 1.301-.51.457-.14.938-.252 1.442-.334a11.25 11.25 0 011.564-.14L10.245.257a.295.295 0 01.15-.167.377.377 0 01.236-.044l3.551.844c.024 0 .041.006.053.018l.018.017c.128-.246.304-.442.527-.589s.48-.22.773-.22c.387 0 .712.132.976.396s.395.589.395.976c0 .386-.131.718-.395.993a1.297 1.297 0 01-.976.413c-.386 0-.714-.132-.984-.396a1.335 1.335 0 01-.422-.94h-.14L10.771.785l-1.3 3.867a11.692 11.692 0 013.103.475c.473.14.916.316 1.326.527.422.199.809.427 1.16.685a1.705 1.705 0 011.371-.668c.492 0 .908.17 1.248.51.34.34.51.756.51 1.248zM5.077 8.835c0 .352.129.656.387.914s.562.387.914.387c.351 0 .656-.129.914-.387s.387-.562.387-.914c0-.351-.13-.656-.387-.914s-.563-.387-.914-.387c-.352 0-.656.13-.914.387s-.387.563-.387.914zm7.031 3.586c.035-.035.053-.085.053-.15a.27.27 0 00-.053-.166c-.035-.035-.082-.053-.14-.053s-.106.018-.141.053c-.27.27-.624.466-1.064.589-.439.123-.963.184-1.573.184-.633 0-1.166-.064-1.6-.193s-.779-.322-1.036-.58c-.036-.035-.082-.053-.141-.053s-.106.018-.14.053a.34.34 0 00-.053.175.19.19 0 00.052.141c.305.305.698.527 1.178.668s1.06.211 1.74.211c.692 0 1.278-.073 1.758-.22s.867-.366 1.16-.659zm-.07-2.285c.351 0 .65-.126.896-.378s.37-.56.37-.923c0-.351-.124-.656-.37-.914s-.545-.387-.896-.387c-.375 0-.692.13-.95.387s-.386.563-.386.914c0 .375.132.686.395.932.264.246.578.369.94.369z"/></svg>',
     243
     244                        'skype'       => '<svg width="19" height="19" viewBox="0 0 19 19" xmlns="http://www.w3.org/2000/svg"><path d="M17.6 11.315a4.903 4.903 0 01.492 2.18c0 .68-.129 1.318-.387 1.916a5.054 5.054 0 01-1.045 1.564c-.44.446-.958.797-1.556 1.055a4.661 4.661 0 01-1.899.387c-.421 0-.832-.053-1.23-.159a4.512 4.512 0 01-1.09-.439 5.48 5.48 0 01-.782.114c-.252.018-.507.027-.765.027a8.246 8.246 0 01-3.304-.668 8.475 8.475 0 01-2.681-1.793 8.486 8.486 0 01-1.82-2.69 8.121 8.121 0 01-.667-3.287c0-.305.017-.598.052-.879.036-.281.077-.562.123-.844C.831 7.448.666 7.06.55 6.63S.373 5.772.373 5.338c0-.68.13-1.318.387-1.916a5.054 5.054 0 011.046-1.564c.44-.445.958-.797 1.556-1.055A4.66 4.66 0 015.26.417c.492 0 .958.067 1.398.202.44.134.852.313 1.239.536a9.444 9.444 0 011.441-.106c1.172 0 2.268.223 3.287.668a8.486 8.486 0 012.69 1.82 8.475 8.475 0 011.793 2.68 8.246 8.246 0 01.668 3.305c0 .305-.012.61-.035.914-.024.305-.07.598-.14.879zm-4.008 2.215a3.214 3.214 0 00.598-1.899c0-.28-.03-.55-.088-.808a2.15 2.15 0 00-.264-.668 2.261 2.261 0 00-.395-.563 3.334 3.334 0 00-.554-.457 4.657 4.657 0 00-.66-.351c-.24-.106-.5-.211-.781-.317a9.03 9.03 0 00-.897-.246c-.316-.07-.638-.14-.967-.21l-.72-.185c-.2-.053-.358-.097-.475-.132a2.172 2.172 0 01-.334-.106 9.622 9.622 0 01-.334-.14 2.74 2.74 0 01-.29-.185.825.825 0 01-.202-.202.523.523 0 01-.14-.237.988.988 0 01-.036-.255c0-.164.044-.314.132-.448s.22-.255.395-.36c.176-.13.387-.22.633-.273a4.05 4.05 0 01.844-.08c.316 0 .595.027.835.08.24.053.43.132.571.237.14.106.273.237.396.396.123.158.237.342.343.553.105.14.199.27.28.387.083.117.165.211.247.281.094.07.2.123.316.158.118.036.246.053.387.053.176 0 .34-.03.492-.088a.99.99 0 00.387-.263c.129-.13.22-.261.272-.396.053-.135.08-.272.08-.413a2.13 2.13 0 00-.247-.984 2.612 2.612 0 00-.351-.475 3.635 3.635 0 00-.492-.44 3.688 3.688 0 00-.624-.395 4.436 4.436 0 00-.783-.308 4.034 4.034 0 00-.896-.193 10.103 10.103 0 00-1.072-.053c-.48 0-.923.03-1.328.088a4.956 4.956 0 00-1.133.3 3.913 3.913 0 00-.967.474c-.27.187-.498.404-.686.65-.199.246-.348.516-.448.809-.1.293-.15.597-.15.914 0 .34.05.65.15.931s.237.534.413.756c.176.235.387.44.633.615s.516.323.809.44c.304.14.647.267 1.028.378.38.111.788.208 1.222.29.316.07.606.14.87.21.263.071.489.13.676.177.176.07.34.143.493.22.152.076.28.166.386.272.13.105.22.228.273.369.053.14.079.287.079.44 0 .21-.053.404-.158.58s-.264.333-.475.474c-.21.164-.463.281-.756.352-.293.07-.615.105-.967.105-.246 0-.474-.017-.685-.053a2.144 2.144 0 01-.545-.158 2.167 2.167 0 01-.958-.949 16.982 16.982 0 00-.237-.457 1.965 1.965 0 00-.211-.43 1.295 1.295 0 00-.282-.308.876.876 0 00-.342-.194 1.434 1.434 0 00-.396-.052c-.176 0-.337.026-.483.079s-.279.132-.396.237a.869.869 0 00-.272.37c-.053.14-.08.286-.08.439 0 .246.045.495.133.747.087.252.22.506.395.764.176.27.384.507.624.712.24.205.501.378.782.519.41.21.867.369 1.371.474s1.055.159 1.653.159c.515 0 .993-.039 1.432-.115.44-.076.841-.19 1.204-.342a4.995 4.995 0 001.011-.563c.287-.21.525-.457.712-.738z"/></svg>',
     245
     246                        'slideshare'  => '<svg width="18" height="19" viewBox="0 0 18 19" xmlns="http://www.w3.org/2000/svg"><path d="M6.5 5.901c.586 0 1.084.193 1.494.58.41.387.615.85.615 1.389 0 .55-.208 1.016-.624 1.397s-.91.572-1.485.572a2.098 2.098 0 01-1.494-.58c-.41-.387-.615-.85-.615-1.39 0-.55.208-1.016.624-1.397.416-.38.91-.571 1.485-.571zm4.992-.035c.598 0 1.105.193 1.52.58.417.387.625.85.625 1.389 0 .562-.208 1.037-.624 1.424-.416.386-.923.58-1.52.58a2.098 2.098 0 01-1.495-.58 1.88 1.88 0 01-.615-1.424c0-.551.208-1.017.624-1.398s.911-.571 1.485-.571zm5.555 3.129c.27-.188.475-.19.615-.009s.123.396-.052.642c-.317.386-.78.808-1.39 1.265-.608.457-1.376.88-2.302 1.266.492 1.676.516 3.006.07 3.99-.445.997-1.028 1.662-1.749 1.996-.72.334-1.42.36-2.1.079-.668-.293-.99-.873-.967-1.74v-3.27a2.404 2.404 0 00-.492-.106v3.375c.023.868-.3 1.448-.967 1.74-.68.282-1.38.256-2.1-.078-.721-.334-1.299-1-1.732-1.996-.446-.984-.416-2.314.088-3.99-.95-.387-1.732-.809-2.347-1.266-.615-.457-1.087-.879-1.415-1.265-.153-.246-.167-.46-.044-.642.123-.182.325-.179.606.009l.115.079c.04.03.061.05.061.062V2.174c0-.492.173-.908.519-1.248.345-.34.735-.51 1.169-.51h12.62c.446 0 .81.17 1.09.51s.422.756.422 1.248v6.962a.423.423 0 00.185-.08c.03-.029.062-.05.097-.061zm-1.16.668V2.948c0-.563-.085-.973-.255-1.23-.17-.258-.519-.387-1.046-.387H3.406c-.562 0-.937.117-1.125.351S2 2.338 2 2.948v6.75c.55.316 1.096.55 1.635.703.539.14 1.051.238 1.538.29.486.053.928.074 1.327.062.41-.012.75-.024 1.02-.035.246-.012.439.005.58.052.14.047.263.112.369.194.023.023.038.044.044.061s.014.032.026.044c.106.094.211.182.317.264.105.082.199.158.28.228a1.01 1.01 0 01.282-.65c.164-.164.457-.229.879-.193.281.011.621.023 1.02.035.398.012.837-.009 1.318-.062a9.87 9.87 0 001.547-.307 7.72 7.72 0 001.705-.721z"/></svg>',
     247
     248                        'snapchat'    => '<svg width="18" height="18" viewBox="0 0 18 18" xmlns="http://www.w3.org/2000/svg"><path d="M17.6 13.58c.105.012.196.056.272.131s.102.173.079.29a.639.639 0 01-.036.21c-.035.105-.102.196-.201.272s-.23.16-.394.254c-.2.082-.444.16-.737.236s-.63.15-1.016.22c-.024.035-.044.09-.062.166s-.032.15-.043.22a2.855 2.855 0 00-.106.42.432.432 0 01-.175.236.507.507 0 01-.28.08H14.62a1.03 1.03 0 01-.245-.036 2.836 2.836 0 00-.42-.079 4.292 4.292 0 00-.492-.026c-.128 0-.245.009-.35.026a4.775 4.775 0 01-.35.044c-.211.035-.415.108-.614.22a7.67 7.67 0 00-.649.411 7.636 7.636 0 01-1.043.666c-.391.21-.861.316-1.41.316H8.8c-.55 0-1.02-.108-1.411-.324a11.522 11.522 0 01-1.06-.658 9.375 9.375 0 00-.64-.403 1.88 1.88 0 00-.605-.228 4.775 4.775 0 01-.35-.044 1.916 1.916 0 00-.316-.026c-.222 0-.409.015-.56.044s-.281.05-.386.061c-.082.024-.158.041-.228.053s-.135.017-.193.017c-.152 0-.26-.04-.324-.122s-.12-.158-.167-.228a2.687 2.687 0 00-.105-.42 3.64 3.64 0 00-.044-.22.526.526 0 00-.061-.166c-.386-.07-.725-.14-1.017-.21s-.537-.153-.736-.246a2.321 2.321 0 01-.386-.254.673.673 0 01-.21-.272.188.188 0 01-.035-.105V14c-.023-.094.003-.181.079-.263a.426.426 0 01.272-.14c.268-.059.531-.132.788-.22.257-.087.497-.213.719-.376.222-.129.42-.278.596-.447.175-.17.345-.348.508-.535.292-.339.514-.649.666-.929a6.92 6.92 0 00.246-.473h.035a.999.999 0 00.105-.342.574.574 0 00-.035-.29c-.07-.151-.205-.268-.403-.35-.199-.082-.38-.152-.544-.21-.058-.012-.11-.03-.157-.053s-.088-.04-.123-.052a3.966 3.966 0 01-.386-.184.996.996 0 01-.28-.22c-.152-.116-.237-.23-.254-.341a.877.877 0 01-.009-.272.74.74 0 01.14-.254 1.15 1.15 0 01.263-.237c.059-.035.137-.067.237-.096.099-.03.195-.044.289-.044.047 0 .096.006.149.018.052.011.108.029.166.052.14.07.278.123.412.158.135.035.254.053.36.053.07 0 .131-.006.184-.018a.644.644 0 00.149-.053.7.7 0 00-.027-.184.834.834 0 01-.026-.219 33.536 33.536 0 01-.052-1.928c0-.678.105-1.244.315-1.7.14-.304.3-.587.482-.85.181-.263.383-.494.605-.692.187-.2.388-.368.604-.509.217-.14.447-.268.693-.385.432-.187.835-.307 1.21-.36s.66-.079.858-.079H9.152c.187 0 .467.024.84.07s.772.17 1.193.369c.245.117.476.245.692.385.216.14.418.31.605.509.234.198.444.432.63.7.188.27.351.562.492.877.198.42.295.976.289 1.665-.006.69-.032 1.332-.079 1.928v.246a.614.614 0 01-.035.192c.047 0 .088.006.123.018a.456.456 0 00.14.018c.128 0 .254-.018.377-.053.122-.035.254-.088.394-.158.047-.035.105-.055.175-.061s.129-.009.176-.009c.07 0 .14.006.21.018a.93.93 0 01.193.052c.163.07.304.16.42.272a.526.526 0 01.176.394.721.721 0 01-.044.22.598.598 0 01-.184.254 1.444 1.444 0 01-.307.227c-.123.07-.266.135-.43.193a3.582 3.582 0 00-.122.044.601.601 0 00-.123.061c-.175.059-.365.129-.57.21-.204.082-.341.2-.411.351a.494.494 0 00-.027.28c.018.106.062.223.132.351l.228.456c.14.269.356.575.648.92.292.345.655.67 1.087.973.432.315.952.526 1.56.631z"/></svg>',
     249
     250                        'soundcloud'  => '<svg width="19" height="9" viewBox="0 0 19 9" xmlns="http://www.w3.org/2000/svg"><path d="M1.3 7.415H.948v-2.18H1.3v2.18zm.914.703h-.352v-3.41h.352v3.41zm.703.211h-.351V4.356h.351V8.33zm.738.176h-.351V4.532h.351v3.973zm.88 0h-.352V3.267h.351v5.238zm.738 0H4.92V2.563h.352v5.942zm.879 0H5.8V2.177h.352v6.328zm.738 0h-.352V2h.352v6.504zm.914 0h-.387V2.177h.387v6.328zm.703 0h-.352V2.388h.352v6.117zm.738 0H8.86V1.649h.386v6.856zm.88 0h-.352V1.122h.351v7.383zm6.609-.07H10.58a.303.303 0 01-.193-.07.216.216 0 01-.088-.177v-7.03c0-.071.018-.127.053-.168.035-.04.1-.079.193-.114.211-.082.437-.144.677-.185.24-.04.483-.061.73-.061.503 0 .984.094 1.44.281.458.176.862.422 1.214.738.351.317.632.692.843 1.125.223.434.358.903.405 1.407.14-.047.28-.088.422-.123.14-.036.293-.053.457-.053.609 0 1.13.214 1.564.641s.65.953.65 1.574c0 .609-.213 1.13-.641 1.564-.428.434-.952.65-1.573.65z"/></svg>',
     251
     252                        'spotify'     => '<svg width="19" height="13" viewBox="0 0 19 13" xmlns="http://www.w3.org/2000/svg"><path d="M14.7 12.008a.737.737 0 01-.474.342.697.697 0 01-.58-.096c-.75-.445-1.54-.808-2.37-1.089-.844-.27-1.728-.457-2.653-.562s-1.896-.117-2.915-.035a20 20 0 00-3.161.492.83.83 0 01-.588-.115.795.795 0 01-.36-.483.746.746 0 01.105-.588.83.83 0 01.492-.36 24.104 24.104 0 013.477-.527 17.117 17.117 0 013.205.053c1.025.117 2 .334 2.924.65.937.304 1.82.714 2.652 1.23.187.105.305.263.351.473s.012.416-.105.615zm1.546-3.442a.955.955 0 01-.598.43.94.94 0 01-.737-.114 13.108 13.108 0 00-2.845-1.265 16.552 16.552 0 00-3.223-.702 17.724 17.724 0 00-3.346-.07c-1.124.07-2.189.257-3.196.562-.246.082-.489.058-.729-.07s-.407-.317-.5-.563a1.03 1.03 0 01.079-.755.876.876 0 01.588-.474 16.48 16.48 0 013.618-.667c1.253-.094 2.5-.07 3.74.07a17.96 17.96 0 013.619.79c1.17.375 2.242.86 3.213 1.458.223.152.37.36.44.623.07.264.029.513-.123.747zm1.756-4.004c-.153.28-.39.46-.712.535a1.24 1.24 0 01-.904-.114c-1.019-.609-2.172-1.083-3.46-1.423-1.3-.327-2.617-.544-3.951-.65s-2.635-.105-3.9 0c-1.276.106-2.4.305-3.371.598a1.055 1.055 0 01-.878-.07 1.185 1.185 0 01-.598-.703 1.215 1.215 0 01.106-.904c.152-.287.386-.478.702-.571C2.15.92 3.42.686 4.847.557S7.74.426 9.237.55s2.975.377 4.427.763c1.451.399 2.769.943 3.951 1.634.281.175.46.418.536.729.076.31.026.606-.15.887z"/></svg>',
     253
     254                        'stumbleupon' => '<svg width="19" height="15" viewBox="0 0 19 15" xmlns="http://www.w3.org/2000/svg"><path d="M9.2 3.602c-.258 0-.48.09-.668.272s-.281.408-.281.677v5.766a4.118 4.118 0 01-.334 1.547c-.211.48-.501.9-.87 1.257-.37.357-.794.641-1.275.852a3.93 3.93 0 01-1.564.316 3.93 3.93 0 01-1.565-.316 4.033 4.033 0 01-1.265-.87c-.364-.37-.65-.8-.862-1.292A3.93 3.93 0 01.2 10.246V7.75h3.094v2.461c0 .258.09.48.272.668a.904.904 0 00.677.281c.258 0 .48-.09.668-.272a.904.904 0 00.281-.677v-5.8c.012-.54.13-1.044.352-1.512.21-.469.498-.88.861-1.23A4.01 4.01 0 017.671.841 3.87 3.87 0 019.2.543a4.009 4.009 0 012.795 1.125c.362.352.65.762.86 1.23.211.47.328.973.352 1.512v1.301l-1.828.528-1.23-.563V4.551c0-.258-.092-.48-.273-.668a.904.904 0 00-.677-.281zm9 6.644a3.93 3.93 0 01-.316 1.565c-.211.492-.498.923-.862 1.292-.363.37-.785.66-1.265.87-.493.211-1.014.317-1.565.317s-1.072-.106-1.564-.317c-.48-.21-.905-.498-1.275-.861a4.016 4.016 0 01-1.204-2.83V7.786l1.23.562 1.829-.562v2.53c0 .259.09.481.272.669a.904.904 0 00.677.281c.258 0 .48-.09.668-.272a.904.904 0 00.281-.677V7.75H18.2v2.496z"/></svg>',
     255
     256                        'tumblr'      => '<svg width="12" height="19" viewBox="0 0 12 19" xmlns="http://www.w3.org/2000/svg"><path d="M.1 8.239V5.673a5.138 5.138 0 001.828-.985c.246-.21.472-.445.677-.703s.378-.539.518-.844c.153-.293.282-.632.387-1.02.106-.386.188-.808.246-1.265h2.567v4.535h4.289V8.24h-4.29v4.606c0 .527.015.958.045 1.292.029.334.073.57.131.712a.99.99 0 00.229.395c.105.111.228.214.37.308.21.117.43.21.658.28.229.071.466.106.712.106.457 0 .914-.076 1.371-.228.457-.152.914-.381 1.371-.686v2.848c-.386.176-.755.331-1.107.466a7.137 7.137 0 01-1.002.307 7.26 7.26 0 01-.958.159c-.346.035-.694.052-1.046.052a8.03 8.03 0 01-1.169-.079 5.926 5.926 0 01-1.01-.237c-.317-.105-.613-.228-.888-.37s-.519-.31-.73-.509a3.638 3.638 0 01-.571-.598 3.28 3.28 0 01-.378-.632 3.428 3.428 0 01-.185-.791 8.727 8.727 0 01-.061-1.108V8.24H.1z"/></svg>',
     257
     258                        'twitch'      => '<svg width="18" height="19" viewBox="0 0 18 19" xmlns="http://www.w3.org/2000/svg"><path d="M12.8 16.061H9.284L6.93 18.417h-2.32V16.06H.284V3.545L1.48.416h16.03v10.97L12.8 16.06zm3.129-5.484V1.963H3.027v11.355h3.515v2.356l2.356-2.356h4.29l2.741-2.742zm-2.742-5.45v4.676H11.64V5.127h1.547zm-5.871 0h1.582v4.676H7.316V5.127z"/></svg>',
     259
     260                        'twitter'     => '<svg width="19" height="16" viewBox="0 0 19 16" xmlns="http://www.w3.org/2000/svg"><path d="M16.6 4.2v.457c0 1.219-.229 2.455-.686 3.709a10.568 10.568 0 01-2.021 3.375c-.89 1.008-1.992 1.834-3.305 2.479-1.3.632-2.8.949-4.5.949-.515 0-1.025-.035-1.53-.106-.503-.07-.992-.175-1.467-.316s-.934-.317-1.38-.527a9.099 9.099 0 01-1.283-.704 9.86 9.86 0 00.879.036c.855 0 1.679-.135 2.47-.405a6.85 6.85 0 002.135-1.177c-.808 0-1.529-.244-2.162-.73a3.782 3.782 0 01-1.318-1.837c.117.035.231.056.343.062s.231.008.36.008a4.54 4.54 0 00.984-.105A3.632 3.632 0 012.01 8.085a3.563 3.563 0 01-.844-2.338v-.07c.246.14.507.252.783.334s.565.123.87.123a3.58 3.58 0 01-1.196-1.292 3.56 3.56 0 01-.316-2.734c.094-.316.223-.615.387-.896.445.562.949 1.072 1.511 1.53a10.59 10.59 0 003.85 1.985c.727.2 1.47.317 2.232.352a3.555 3.555 0 01-.105-.844c0-.504.094-.984.281-1.441.2-.446.466-.835.8-1.17a3.625 3.625 0 011.169-.781c.445-.2.926-.3 1.441-.3.54 0 1.04.106 1.503.317.463.211.865.492 1.204.844a7.969 7.969 0 001.23-.343 6.622 6.622 0 001.126-.536c-.14.422-.352.809-.633 1.16-.281.352-.61.645-.984.88a8.26 8.26 0 001.072-.212 5.848 5.848 0 001.037-.386A8.42 8.42 0 0116.6 4.2z"/></svg>',
     261
     262                        'vimeo'       => '<svg width="19" height="16" viewBox="0 0 19 16" xmlns="http://www.w3.org/2000/svg"><path d="M12.1 3.883c-.21 0-.428.026-.65.08a3.818 3.818 0 00-.685.236c.222-.726.492-1.359.808-1.897s.685-.984 1.107-1.336.896-.609 1.423-.773 1.101-.234 1.722-.21c.926.01 1.608.315 2.047.913s.636 1.488.589 2.67a5.986 5.986 0 01-.281 1.442c-.164.515-.399 1.072-.703 1.669s-.685 1.242-1.142 1.933c-.445.68-.967 1.4-1.564 2.161-.61.785-1.195 1.476-1.757 2.074s-1.102 1.098-1.617 1.502c-.515.404-1.007.706-1.476.905-.469.2-.914.299-1.335.299-.528 0-1.01-.243-1.45-.73-.44-.486-.846-1.215-1.221-2.187-.246-.89-.49-1.778-.73-2.662a251.3 251.3 0 01-.711-2.68c-.281-.96-.565-1.681-.852-2.161-.287-.48-.589-.72-.905-.72-.07 0-.22.07-.448.21s-.548.351-.958.633l-.843-1.09A125.804 125.804 0 013.103 1.81C3.677 1.306 4.19.92 4.641.65 5.09.38 5.47.228 5.774.193c.68-.07 1.236.132 1.67.606.433.475.732 1.233.896 2.276.175 1.101.325 1.994.448 2.68.123.685.22 1.162.29 1.432.187.913.395 1.599.623 2.055s.466.686.712.686c.188 0 .422-.147.703-.44.281-.292.61-.732.984-1.317.363-.598.65-1.125.861-1.582s.334-.843.369-1.16c.047-.503-.032-.887-.237-1.15-.205-.264-.536-.396-.993-.396z"/></svg>',
     263
     264                        'vk'          => '<svg width="19" height="11" viewBox="0 0 19 11" xmlns="http://www.w3.org/2000/svg"><path d="M18.1 9.122c.105.129.234.31.387.545.152.234.222.44.21.615-.07.504-.55.691-1.44.563s-1.536-.106-1.934.07h-.07a2.677 2.677 0 01-1.187-.554 7.723 7.723 0 01-.888-.852 7.918 7.918 0 01-.58-.668c-.222-.281-.462-.399-.72-.352-.387.059-.563.337-.528.835.036.498-.035.888-.21 1.169-.13.234-.422.354-.88.36-.456.006-.878-.008-1.265-.044-1.218-.14-2.18-.498-2.882-1.072a12.286 12.286 0 01-1.864-1.88 1.12 1.12 0 01-.14-.167 3.297 3.297 0 00-.106-.15.426.426 0 01-.052-.061.085.085 0 01-.018-.044c-.035-.035-.07-.076-.105-.123s-.059-.088-.07-.123c-.024-.024-.042-.044-.053-.062s-.018-.032-.018-.044a.54.54 0 01-.088-.114 1.285 1.285 0 00-.088-.132c-.023 0-.038-.009-.044-.026a.11.11 0 00-.026-.044 5.18 5.18 0 01-.106-.185 1.384 1.384 0 00-.105-.167 4.165 4.165 0 00-.211-.316.427.427 0 01-.053-.062.085.085 0 01-.017-.044.47.47 0 01-.088-.123.47.47 0 00-.088-.123.108.108 0 00-.018-.061.085.085 0 01-.017-.044.47.47 0 01-.088-.123.47.47 0 00-.088-.123c0-.024-.006-.044-.018-.062s-.017-.032-.017-.044a27.3 27.3 0 01-1.195-2.214C1.19 2.794 1.05 2.5.91 2.196a2.32 2.32 0 01-.211-.984c.2-.152.451-.225.756-.22.304.007.615.01.931.01.282 0 .604-.01.967-.027s.65.027.861.132c.106.059.217.22.334.483s.229.49.334.677c.14.34.29.647.448.923.159.275.314.542.466.8.024.023.044.05.062.079a.34.34 0 00.044.061c0 .024.003.038.008.044l.027.027c0 .023.009.043.026.061l.044.044.018.018.017.017c.024.035.038.065.044.088s.015.041.027.053l.017.017.018.018c.023.035.044.064.061.088s.032.053.044.088c.13.164.278.36.448.588s.36.326.572.29c.21-.035.34-.251.386-.65.047-.398.07-.756.07-1.072v-.105c.012-.375.007-.745-.017-1.108-.023-.363-.088-.638-.193-.826a.665.665 0 00-.396-.343 2.02 2.02 0 01-.518-.255C6.769.908 7.04.72 7.422.65c.38-.07.823-.105 1.327-.105.422 0 .882.011 1.38.035.498.023.823.164.975.422.176.304.238.682.185 1.133-.053.451-.08.87-.08 1.257a.217.217 0 00-.034.123v.65l-.018.01c-.012.006-.017.014-.017.026v.175c0 .024.005.035.017.035h.018V4.798c.023 0 .035.003.035.009v.132c.023 0 .035.006.035.017V5.044l.009.009.026.026v.071h.035v.07c.024 0 .035.003.035.009v.026c0 .024.006.035.018.035h.018v.035l.017.01c.012.005.018.014.018.026.023 0 .035.005.035.017v.018l.035.035.018.009c.011.006.017.014.017.026H11.561v.035c.024 0 .038.003.044.009l.027.026a.855.855 0 00.562-.316c.14-.176.27-.352.387-.527.023-.035.044-.065.061-.088a.513.513 0 01.044-.053l.01-.018c.006-.012.014-.017.025-.017 0-.024.006-.041.018-.053l.018-.017c.023-.024.038-.041.044-.053s.014-.018.026-.018c0-.023.003-.038.009-.044l.026-.026c0-.023.006-.038.018-.044.011-.006.017-.015.017-.026l.018-.01c.012-.005.017-.014.017-.025a.408.408 0 00.106-.176.427.427 0 00.053-.062.085.085 0 00.017-.044.425.425 0 00.053-.061.085.085 0 00.017-.044c.141-.235.276-.478.405-.73s.263-.524.404-.817c.094-.2.196-.436.308-.712.11-.275.243-.436.395-.483.27-.106.592-.144.967-.114.375.029.744.044 1.107.044.305 0 .671-.006 1.099-.018.427-.012.694.088.8.299.07.176.029.436-.123.782a7.444 7.444 0 01-.334.694c-.235.352-.466.671-.695.958s-.454.577-.676.87c-.024.024-.039.044-.044.062s-.015.032-.027.044l-.017.008a.028.028 0 00-.018.027c-.023 0-.038.009-.044.026s-.015.032-.026.044c0 .024-.006.038-.018.044s-.017.015-.017.026l-.044.044-.027.027-.061.061-.044.044-.457.624c-.176.24-.258.49-.246.747.023.2.111.372.263.519.153.146.3.29.44.43.34.317.636.6.887.853.252.252.507.554.765.905z"/></svg>',
     265
     266                        'wordpress'   => '<svg width="19" height="19" viewBox="0 0 19 19" xmlns="http://www.w3.org/2000/svg"><path d="M9.9.375c1.242 0 2.408.234 3.498.703 1.09.48 2.042 1.128 2.856 1.943s1.462 1.766 1.943 2.856c.469 1.09.703 2.256.703 3.498s-.234 2.408-.703 3.498c-.48 1.09-1.128 2.042-1.943 2.856s-1.766 1.462-2.856 1.943a8.758 8.758 0 01-3.498.703 8.758 8.758 0 01-3.498-.703 9.307 9.307 0 01-2.856-1.943 9.309 9.309 0 01-1.943-2.856C1.134 11.783.9 10.617.9 9.375s.234-2.408.703-3.498A9.307 9.307 0 013.546 3.02a9.309 9.309 0 012.856-1.943A8.758 8.758 0 019.9.375zm-8.086 9a8.042 8.042 0 001.274 4.35 8.625 8.625 0 001.433 1.697 8.287 8.287 0 001.863 1.23L2.517 6.07c-.234.516-.41 1.052-.527 1.609S1.814 8.8 1.814 9.375zM9.9 17.461c.48 0 .946-.038 1.398-.114.45-.077.875-.19 1.274-.343 0-.024-.006-.044-.018-.062s-.017-.032-.017-.044l-2.496-6.82-2.426 7.067a8.284 8.284 0 002.285.316zm1.125-11.883l2.918 8.684.809-2.672c.175-.563.319-1.055.43-1.477s.167-.809.167-1.16c0-.492-.073-.92-.22-1.283a6.964 6.964 0 00-.448-.932c-.199-.34-.378-.66-.536-.958a1.983 1.983 0 01-.237-.94c0-.375.126-.71.378-1.002.252-.293.571-.44.958-.44h.105a8.386 8.386 0 00-1.16-.879 8.651 8.651 0 00-2.742-1.09A8.44 8.44 0 009.9 1.29c-.703 0-1.383.088-2.04.263-.655.176-1.274.422-1.854.739s-1.11.697-1.59 1.142c-.48.457-.903.961-1.266 1.512h.527c.422 0 .885-.018 1.389-.053l.756-.053c.21-.011.325.088.343.3.017.21-.085.333-.308.368l-.272.027c-.182.017-.396.032-.642.044l2.953 8.754 1.758-5.309-1.266-3.445c-.21-.024-.404-.041-.58-.053l-.263-.018c-.211-.023-.308-.143-.29-.36s.137-.32.36-.308l.764.053c.51.035.958.053 1.345.053.422 0 .89-.018 1.406-.053l.774-.053c.21-.011.322.088.334.3.012.21-.088.333-.299.368l-.273.027c-.181.017-.395.032-.641.044zm2.953 10.793a8.14 8.14 0 001.635-1.266 8.137 8.137 0 001.266-1.634 8.362 8.362 0 00.826-1.934 8.224 8.224 0 00.28-2.162c0-.703-.084-1.383-.254-2.04s-.413-1.265-.73-1.827a4.285 4.285 0 01.07.808c0 .422-.049.87-.149 1.345-.1.475-.26.999-.483 1.573l-2.46 7.137z"/></svg>',
     267
     268                        'yelp'        => '<svg width="16" height="19" viewBox="0 0 16 19" xmlns="http://www.w3.org/2000/svg"><path d="M2.8 2.176a.803.803 0 01.325-.316l.202-.106 3.55-1.3c.07-.011.16-.035.271-.07.112-.035.302.035.571.21.153.083.255.261.308.537l.079.413.035 6.079-.097.369a.63.63 0 01-.465.474.73.73 0 01-.589-.105l-.254-.176-3.655-4.99-.228-.36c-.153-.24-.17-.46-.053-.659zM.938 12.542c-.07-.117-.106-.275-.106-.474v-.3l.246-3.056c0-.082.044-.176.132-.281s.184-.188.29-.246c.117-.082.287-.091.51-.027l.333.097 3.795 1.933.281.193c.188.129.281.31.281.545 0 .316-.058.503-.175.562s-.223.117-.317.176l-4.462.983-.334.08c-.223.052-.38-.01-.474-.185zM7.79 18.34a1.14 1.14 0 01-.422.026l-.21-.026-2.988-.949a.926.926 0 01-.28-.193.7.7 0 01-.176-.334c-.047-.152-.012-.325.105-.518l.176-.29 2.986-3.268.273-.184c.181-.123.36-.132.536-.027.175.082.284.202.325.36l.061.238-.07 4.427-.009.325c-.006.217-.108.354-.307.413zm1.827-9.101l2.39-3.795.175-.237a.537.537 0 01.492-.22c.176 0 .307.053.395.158l.132.158 2.038 2.39.08.228c.052.153.06.31.026.475-.036.152-.156.284-.36.395l-.308.167-4.252 1.23-.342.017c-.229.012-.396-.076-.501-.263-.082-.176-.097-.337-.044-.483l.079-.22zm5.587 4.955l-1.792 2.6-.21.123a.89.89 0 01-.458.123c-.152 0-.307-.082-.465-.246l-.238-.246-2.284-3.83-.087-.317c-.059-.21-.018-.386.123-.527.14-.14.292-.205.456-.193l.246.018 4.287 1.37.3.106c.198.07.298.21.298.421 0 .14-.03.275-.088.404l-.088.194z"/></svg>',
     269
     270                        'youtube'     => '<svg xmlns="http://www.w3.org/2000/svg" width="19" height="14" viewBox="0 0 19 14"><path d="M18.216 3.72l.088.905a20.4 20.4 0 01.088 1.977v1.371c0 .739-.029 1.41-.088 2.013l-.088.905-.158.686c-.105.457-.287.826-.545 1.107-.351.352-.7.566-1.046.642-.345.076-.606.12-.782.132-.62.047-1.3.082-2.039.105-.726.024-1.406.041-2.039.053-.633.012-1.16.018-1.582.018H8.636c-.503-.012-1.092-.024-1.766-.036a116.07 116.07 0 01-2.03-.052 27.164 27.164 0 01-1.565-.088c-.2-.035-.495-.085-.888-.15-.392-.064-.764-.272-1.116-.624-.27-.281-.454-.65-.554-1.107l-.149-.686-.088-.905a20.961 20.961 0 01-.088-2.013v-1.37c0-.727.03-1.39.088-1.987l.088-.897.158-.703c.106-.468.287-.832.545-1.09.352-.375.7-.594 1.046-.659.346-.064.607-.102.782-.114a47.09 47.09 0 012.04-.105c.726-.024 1.406-.041 2.038-.053C7.81.983 8.337.977 8.76.977h1.266c.422 0 .95.006 1.582.018.633.012 1.313.03 2.04.053a47.09 47.09 0 012.038.105c.176.023.437.067.782.132.346.064.695.278 1.046.641.27.27.454.636.554 1.1l.15.693zm-6.398 3.726l.598-.316-4.852-2.532v5.063l4.254-2.215z"/></svg>',
     271
     272                );
     273
    85274        }
    86275}
  • src/wp-content/themes/twentytwenty/classes/class-twentytwenty-walker-comment.php

     
    3333                        $tag = ( 'div' === $args['style'] ) ? 'div' : 'li';
    3434
    3535                        ?>
    36                         <<?php echo esc_html( $tag ); ?> id="comment-<?php comment_ID(); ?>" <?php comment_class( $this->has_children ? 'parent' : '', $comment ); ?>>
     36                        <<?php echo $tag; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?> id="comment-<?php comment_ID(); ?>" <?php comment_class( $this->has_children ? 'parent' : '', $comment ); ?>>
    3737                                <article id="div-comment-<?php comment_ID(); ?>" class="comment-body">
    3838                                        <footer class="comment-meta">
    3939                                                <div class="comment-author vcard">
     
    5050                                                                }
    5151                                                        }
    5252
    53                                                         /* Translators: '%1$s = comment author name */
    54                                                         printf( '<span class="fn">%1$s</span><span class="screen-reader-text says">%2$s</span>', esc_html( $comment_author ), __( 'says:', 'twentytwenty' ) ); // phpcs:ignore
     53                                                        printf(
     54                                                                '<span class="fn">%1$s</span><span class="screen-reader-text says">%2$s</span>',
     55                                                                esc_html( $comment_author ),
     56                                                                __( 'says:', 'twentytwenty' )
     57                                                        );
    5558
    5659                                                        if ( ! empty( $comment_author_url ) ) {
    5760                                                                echo '</a>';
     
    7174                                                        </a>
    7275                                                        <?php
    7376                                                        if ( get_edit_comment_link() ) {
    74                                                                 echo ' &bull; <a class="comment-edit-link" href="' . esc_url( get_edit_comment_link() ) . '">' . __( 'Edit', 'twentytwenty' ) . '</a>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- core trusts translations
     77                                                                echo ' &bull; <a class="comment-edit-link" href="' . esc_url( get_edit_comment_link() ) . '">' . __( 'Edit', 'twentytwenty' ) . '</a>';
    7578                                                        }
    7679                                                        ?>
    7780                                                </div><!-- .comment-metadata -->
    7881
    7982                                        </footer><!-- .comment-meta -->
    8083
    81                                         <div class="comment-content">
     84                                        <div class="comment-content entry-content">
    8285
    8386                                                <?php
    8487
     
    8689
    8790                                                if ( '0' === $comment->comment_approved ) {
    8891                                                        ?>
    89                                                         <p class="comment-awaiting-moderation"><?php _e( 'Your comment is awaiting moderation.', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></p>
     92                                                        <p class="comment-awaiting-moderation"><?php _e( 'Your comment is awaiting moderation.', 'twentytwenty' ); ?></p>
    9093                                                        <?php
    9194                                                }
    9295
     
    121124                                                                echo $comment_reply_link; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped --Link is escaped in https://developer.wordpress.org/reference/functions/get_comment_reply_link/
    122125                                                        }
    123126                                                        if ( $by_post_author ) {
    124                                                                 echo '<span class="by-post-author">' . __( 'By Post Author', 'twentytwenty' ) . '</span>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- core trusts translations
     127                                                                echo '<span class="by-post-author">' . __( 'By Post Author', 'twentytwenty' ) . '</span>';
    125128                                                        }
    126129                                                        ?>
    127130
  • src/wp-content/themes/twentytwenty/comments.php

     
    3131                        <h2 class="comment-reply-title">
    3232                        <?php
    3333                        if ( ! have_comments() ) {
    34                                 esc_html_e( 'Leave a comment', 'twentytwenty' );
     34                                _e( 'Leave a comment', 'twentytwenty' );
    3535                        } elseif ( '1' === $comments_number ) {
    3636                                /* translators: %s: post title */
    37                                 printf( esc_html_x( 'One reply on &ldquo;%s&rdquo;', 'comments title', 'twentytwenty' ), esc_html( get_the_title() ) );
     37                                printf( _x( 'One reply on &ldquo;%s&rdquo;', 'comments title', 'twentytwenty' ), esc_html( get_the_title() ) );
    3838                        } else {
    39                                 echo esc_html(
    40                                         sprintf(
    41                                                 /* translators: 1: number of comments, 2: post title */
    42                                                 _nx(
    43                                                         '%1$s reply on &ldquo;%2$s&rdquo;',
    44                                                         '%1$s replies on &ldquo;%2$s&rdquo;',
    45                                                         $comments_number,
    46                                                         'comments title',
    47                                                         'twentytwenty'
    48                                                 ),
    49                                                 number_format_i18n( $comments_number ),
    50                                                 get_the_title()
    51                                         )
     39                                echo sprintf(
     40                                        /* translators: 1: number of comments, 2: post title */
     41                                        _nx(
     42                                                '%1$s reply on &ldquo;%2$s&rdquo;',
     43                                                '%1$s replies on &ldquo;%2$s&rdquo;',
     44                                                $comments_number,
     45                                                'comments title',
     46                                                'twentytwenty'
     47                                        ),
     48                                        number_format_i18n( $comments_number ),
     49                                        esc_html( get_the_title() )
    5250                                );
    5351                        }
    5452
     
    6058                <div class="comments-inner section-inner thin max-percentage">
    6159
    6260                        <?php
    63 
    6461                        wp_list_comments(
    6562                                array(
    6663                                        'walker'      => new TwentyTwenty_Walker_Comment(),
     
    8077                        );
    8178
    8279                        if ( $comment_pagination ) {
     80                                $pagination_classes = '';
    8381
    8482                                // If we're only showing the "Next" link, add a class indicating so.
    85                                 if ( strpos( $comment_pagination, 'prev page-numbers' ) === false ) {
     83                                if ( false === strpos( $comment_pagination, 'prev page-numbers' ) ) {
    8684                                        $pagination_classes = ' only-next';
    87                                 } else {
    88                                         $pagination_classes = '';
    8985                                }
    9086                                ?>
    9187
    92                                 <nav class="comments-pagination pagination<?php echo esc_attr( $pagination_classes ); ?>" aria-label="<?php esc_attr_e( 'Comments', 'twentytwenty' ); ?>">
     88                                <nav class="comments-pagination pagination<?php echo $pagination_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>" aria-label="<?php esc_attr_e( 'Comments', 'twentytwenty' ); ?>">
    9389                                        <?php echo wp_kses_post( $comment_pagination ); ?>
    9490                                </nav>
    9591
     
    128124
    129125        <div class="comment-respond" id="respond">
    130126
    131                 <p class="comments-closed"><?php _e( 'Comments are closed.', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></p>
     127                <p class="comments-closed"><?php _e( 'Comments are closed.', 'twentytwenty' ); ?></p>
    132128
    133129        </div><!-- #respond -->
    134130
  • src/wp-content/themes/twentytwenty/footer.php

     
    1111 * @since 1.0.0
    1212 */
    1313
    14 ?>             
     14?>
    1515                        <footer id="site-footer" role="contentinfo" class="header-footer-group">
    1616
    1717                                <div class="section-inner">
     
    2020
    2121                                                <p class="footer-copyright">&copy;
    2222                                                        <?php
    23                                                         echo esc_html(
    24                                                                 date_i18n(
    25                                                                         /* Translators: Y = Format parameter for date() https://php.net/manual/en/function.date.php */
    26                                                                         _x( 'Y', 'Translators: Y = Current year', 'twentytwenty' )
    27                                                                 )
     23                                                        echo date_i18n(
     24                                                                /* translators: Copyright date format, see https://secure.php.net/date */
     25                                                                _x( 'Y', 'copyright date format', 'twentytwenty' )
    2826                                                        );
    2927                                                        ?>
    3028                                                        <a href="<?php echo esc_url( home_url( '/' ) ); ?>"><?php echo bloginfo( 'name' ); ?></a>
     
    3230
    3331                                                <p class="powered-by-wordpress">
    3432                                                        <a href="<?php echo esc_url( __( 'https://wordpress.org/', 'twentytwenty' ) ); ?>">
    35                                                                 <?php
    36                                                                 _e( 'Powered by WordPress', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations
    37                                                                 ?>
     33                                                                <?php _e( 'Powered by WordPress', 'twentytwenty' ); ?>
    3834                                                        </a>
    39                                                 </p><!-- .theme-credits -->
     35                                                </p><!-- .powered-by-wordpress -->
    4036
    4137                                        </div><!-- .footer-credits -->
    4238
    4339                                        <a class="to-the-top" href="#site-header">
    4440                                                <span class="to-the-top-long">
    4541                                                        <?php
    46                                                         // Translators: %s = HTML character for an arrow.
    47                                                         printf( esc_html( _x( 'To the top %s', '%s = HTML character for an arrow', 'twentytwenty' ) ), '<span class="arrow">&uarr;</span>' );
     42                                                        /* translators: %s: HTML character for up arrow */
     43                                                        printf( __( 'To the top %s', 'twentytwenty' ), '<span class="arrow">&uarr;</span>' );
    4844                                                        ?>
    49                                                 </span>
     45                                                </span><!-- .to-the-top-long -->
    5046                                                <span class="to-the-top-short">
    5147                                                        <?php
    52                                                         // Translators: %s = HTML character for an arrow.
    53                                                         printf( esc_html( _x( 'Up %s', '%s = HTML character for an arrow', 'twentytwenty' ) ), '<span class="arrow">&uarr;</span>' );
     48                                                        /* translators: %s: HTML character for up arrow */
     49                                                        printf( __( 'Up %s', 'twentytwenty' ), '<span class="arrow">&uarr;</span>' );
    5450                                                        ?>
    55                                                 </span>
    56                                         </a>
     51                                                </span><!-- .to-the-top-short -->
     52                                        </a><!-- .to-the-top -->
    5753
    5854                                </div><!-- .section-inner -->
    5955
  • src/wp-content/themes/twentytwenty/functions.php

     
    1919 * Custom Logo
    2020 * WP Body Open
    2121 * Register Sidebars
    22  * Enqueue Block editor assets
    23  * Classic Editor Style
     22 * Enqueue block editor assets
     23 * Enqueue classic editor styles
    2424 * Block editor settings
    2525 */
    2626
     
    6060        // Set post thumbnail size.
    6161        set_post_thumbnail_size( 1200, 9999 );
    6262
    63         // Add custom image sizes.
     63        // Add custom image size used in Cover Template.
    6464        add_image_size( 'twentytwenty-fullscreen', 1980, 9999 );
    6565
    6666        // Custom logo.
     
    174174 */
    175175function twentytwenty_register_styles() {
    176176
    177         $theme_version    = wp_get_theme()->get( 'Version' );
    178         $css_dependencies = array();
    179 
    180         /**
    181         * Filter to load, unload Font Awesome CSS
    182         *
    183         * By default, only load the Font Awesome fonts if the social menu is in use or
    184         * using filter Font Awesome css be loaded
    185         *
    186         * @since 1.0.0
    187         *
    188         * @param bool Whether to load font awesome, Default false.
    189         */
    190         $load_font_awesome = apply_filters( 'twentytwenty_load_font_awesome', has_nav_menu( 'social' ) );
    191 
    192         if ( $load_font_awesome ) {
    193                 wp_register_style( 'font-awesome', get_template_directory_uri() . '/assets/css/font-awesome.css', false, '5.10.2', 'all' );
    194                 $css_dependencies[] = 'font-awesome';
    195         }
     177        $theme_version = wp_get_theme()->get( 'Version' );
    196178
    197         wp_enqueue_style( 'twentytwenty-style', get_template_directory_uri() . '/style.css', $css_dependencies, $theme_version );
     179        wp_enqueue_style( 'twentytwenty-style', get_stylesheet_uri(), array(), $theme_version );
    198180        wp_style_add_data( 'twentytwenty-style', 'rtl', 'replace' );
    199181
    200182        // Add output of Customizer settings as inline style.
     
    247229 * Get the information about the logo.
    248230 *
    249231 * @param string $html The HTML output from get_custom_logo (core function).
     232 *
     233 * @return string $html
    250234 */
    251235function twentytwenty_get_custom_logo( $html ) {
    252236
     
    302286 * Include a skip to content link at the top of the page so that users can bypass the menu.
    303287 */
    304288function twentytwenty_skip_link() {
    305         echo '<a class="skip-link screen-reader-text" href="#site-content">' . __( 'Skip to the content', 'twentytwenty' ) . '</a>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- core trusts translations
     289        echo '<a class="skip-link screen-reader-text" href="#site-content">' . __( 'Skip to the content', 'twentytwenty' ) . '</a>';
    306290}
    307291
    308292add_action( 'wp_body_open', 'twentytwenty_skip_link', 5 );
     
    386370add_action( 'init', 'twentytwenty_classic_editor_styles' );
    387371
    388372/**
    389  * Output Customizer Settings in the Classic Editor.
     373 * Output Customizer settings in the classic editor.
    390374 * Adds styles to the head of the TinyMCE iframe. Kudos to @Otto42 for the original solution.
    391375 *
    392376 * @param array $mce_init TinyMCE styles.
     377 *
     378 * @return array $mce_init TinyMCE styles.
    393379 */
    394380function twentytwenty_add_classic_editor_customizer_styles( $mce_init ) {
    395381
     
    416402        // Block Editor Palette.
    417403        $editor_color_palette = array(
    418404                array(
    419                         'name'  => esc_html__( 'Accent Color', 'twentytwenty' ),
     405                        'name'  => __( 'Accent Color', 'twentytwenty' ),
    420406                        'slug'  => 'accent',
    421407                        'color' => twentytwenty_get_color_for_area( 'content', 'accent' ),
    422408                ),
    423409                array(
    424                         'name'  => esc_html__( 'Secondary', 'twentytwenty' ),
     410                        'name'  => __( 'Primary', 'twentytwenty' ),
     411                        'slug'  => 'primary',
     412                        'color' => twentytwenty_get_color_for_area( 'content', 'text' ),
     413                ),
     414                array(
     415                        'name'  => __( 'Secondary', 'twentytwenty' ),
    425416                        'slug'  => 'secondary',
    426417                        'color' => twentytwenty_get_color_for_area( 'content', 'secondary' ),
    427418                ),
    428419                array(
    429                         'name'  => esc_html__( 'Subtle Background', 'twentytwenty' ),
     420                        'name'  => __( 'Subtle Background', 'twentytwenty' ),
    430421                        'slug'  => 'subtle-background',
    431422                        'color' => twentytwenty_get_color_for_area( 'content', 'borders' ),
    432423                ),
     
    449440                add_theme_support( 'editor-color-palette', $editor_color_palette );
    450441        }
    451442
    452         // Gutenberg Font Sizes.
     443        // Block Editor Font Sizes.
    453444        add_theme_support(
    454445                'editor-font-sizes',
    455446                array(
    456447                        array(
    457                                 'name'      => _x( 'Small', 'Name of the small font size in Gutenberg', 'twentytwenty' ),
    458                                 'shortName' => _x( 'S', 'Short name of the small font size in the Gutenberg editor.', 'twentytwenty' ),
    459                                 'size'      => 16,
     448                                'name'      => _x( 'Small', 'Name of the small font size in the block editor', 'twentytwenty' ),
     449                                'shortName' => _x( 'S', 'Short name of the small font size in the block editor.', 'twentytwenty' ),
     450                                'size'      => 18,
    460451                                'slug'      => 'small',
    461452                        ),
    462453                        array(
    463                                 'name'      => _x( 'Regular', 'Name of the regular font size in Gutenberg', 'twentytwenty' ),
    464                                 'shortName' => _x( 'M', 'Short name of the regular font size in the Gutenberg editor.', 'twentytwenty' ),
    465                                 'size'      => 18,
     454                                'name'      => _x( 'Regular', 'Name of the regular font size in the block editor', 'twentytwenty' ),
     455                                'shortName' => _x( 'M', 'Short name of the regular font size in the block editor.', 'twentytwenty' ),
     456                                'size'      => 21,
    466457                                'slug'      => 'regular',
    467458                        ),
    468459                        array(
    469                                 'name'      => _x( 'Large', 'Name of the large font size in Gutenberg', 'twentytwenty' ),
    470                                 'shortName' => _x( 'L', 'Short name of the large font size in the Gutenberg editor.', 'twentytwenty' ),
     460                                'name'      => _x( 'Large', 'Name of the large font size in the block editor', 'twentytwenty' ),
     461                                'shortName' => _x( 'L', 'Short name of the large font size in the block editor.', 'twentytwenty' ),
    471462                                'size'      => 24,
    472463                                'slug'      => 'large',
    473464                        ),
    474465                        array(
    475                                 'name'      => _x( 'Larger', 'Name of the larger font size in Gutenberg', 'twentytwenty' ),
    476                                 'shortName' => _x( 'XL', 'Short name of the larger font size in the Gutenberg editor.', 'twentytwenty' ),
     466                                'name'      => _x( 'Larger', 'Name of the larger font size in the block editor', 'twentytwenty' ),
     467                                'shortName' => _x( 'XL', 'Short name of the larger font size in the block editor.', 'twentytwenty' ),
    477468                                'size'      => 32,
    478469                                'slug'      => 'larger',
    479470                        ),
     
    498489        return sprintf(
    499490                '<a href="%1$s" class="more-link faux-button">%2$s <span class="screen-reader-text">"%3$s"</span></a>',
    500491                esc_url( get_permalink( get_the_ID() ) ),
    501                 esc_html__( 'Continue reading', 'twentytwenty' ),
    502                 get_the_title( get_the_ID() )
     492                __( 'Continue reading', 'twentytwenty' ),
     493                esc_html( get_the_title( get_the_ID() ) )
    503494        );
    504495}
    505496add_filter( 'the_content_more_link', 'twentytwenty_read_more_tag' );
     
    514505function twentytwenty_customize_controls_enqueue_scripts() {
    515506        $theme_version = wp_get_theme()->get( 'Version' );
    516507
     508        // Add main customizer js file.
     509        wp_enqueue_script( 'twentytwenty-customize', get_template_directory_uri() . '/assets/js/customize.js', array( 'jquery' ), $theme_version, false );
     510
    517511        // Add script for color calculations.
    518512        wp_enqueue_script( 'twentytwenty-color-calculations', get_template_directory_uri() . '/assets/js/color-calculations.js', array( 'wp-color-picker' ), $theme_version, false );
    519513
     
    622616        $elements = array(
    623617                'content'       => array(
    624618                        'accent'     => array(
    625                                 'color'            => array( '.color-accent', '.color-accent-hover:hover', '.color-accent-hover:focus', '.has-accent-color', '.has-drop-cap:not(:focus):first-letter', '.wp-block-button.is-style-outline', 'a' ),
    626                                 'border-color'     => array( 'blockquote', '.border-color-accent', '.border-color-accent-hover:hover', '.border-color-accent-hover:focus' ),
    627                                 'background'       => array( 'button:not(.toggle)', '.button', '.faux-button', '.wp-block-button__link', '.wp-block-file__button', 'input[type="button"]', 'input[type="reset"]', 'input[type="submit"]' ),
    628                                 'background-color' => array( '.bg-accent', '.bg-accent-hover:hover', '.bg-accent-hover:focus', '.has-accent-background-color', '.comment-reply-link' ),
    629                                 'fill'             => array( '.fill-children-accent', '.fill-children-accent *' ),
     619                                'color'        => array( '.color-accent', '.color-accent-hover:hover', '.color-accent-hover:focus', '.has-accent-color', '.has-drop-cap:not(:focus):first-letter', '.wp-block-button.is-style-outline', 'a' ),
     620                                'border-color' => array( 'blockquote', '.border-color-accent', '.border-color-accent-hover:hover', '.border-color-accent-hover:focus' ),
     621                                'background'   => array( 'button:not(.toggle)', '.button', '.faux-button', '.wp-block-button__link', '.wp-block-file .wp-block-file__button', 'input[type="button"]', 'input[type="reset"]', 'input[type="submit"]', '.bg-accent', '.bg-accent-hover:hover', '.bg-accent-hover:focus', '.has-accent-background-color', '.comment-reply-link' ),
     622                                'fill'         => array( '.fill-children-accent', '.fill-children-accent *' ),
    630623                        ),
    631624                        'background' => array(
    632625                                'color'      => array( 'button', '.button', '.faux-button', '.wp-block-button__link', '.wp-block-button__link:active', '.wp-block-button__link:focus', '.wp-block-button__link:visited', '.wp-block-button__link:hover', '.wp-block-file__button', 'input[type="button"]', 'input[type="reset"]', 'input[type="submit"]', '.comment-reply-link' ),
    633                                 'background' => array(),
     626                                'background' => array( '.has-background-background-color' ),
    634627                        ),
    635628                        'text'       => array(
    636                                 'color' => array( 'body', '.entry-title a' ),
     629                                'color'      => array( 'body', '.entry-title a', '.has-primary-color' ),
     630                                'background' => array( '.has-primary-background-color' ),
    637631                        ),
    638632                        'secondary'  => array(
    639                                 'color' => array( 'cite', 'figcaption', '.wp-caption-text', '.post-meta', '.entry-content .wp-block-archives li', '.entry-content .wp-block-categories li', '.entry-content .wp-block-latest-posts li', '.wp-block-latest-comments__comment-date', '.wp-block-latest-posts__post-date', '.wp-block-embed figcaption', '.wp-block-image figcaption', '.wp-block-pullquote cite', '.comment-metadata', '.comment-respond .comment-notes', '.comment-respond .logged-in-as', '.pagination .dots', '.entry-content hr:not(.has-background)', 'hr.styled-separator' ),
     633                                'color'      => array( 'cite', 'figcaption', '.wp-caption-text', '.post-meta', '.entry-content .wp-block-archives li', '.entry-content .wp-block-categories li', '.entry-content .wp-block-latest-posts li', '.wp-block-latest-comments__comment-date', '.wp-block-latest-posts__post-date', '.wp-block-embed figcaption', '.wp-block-image figcaption', '.wp-block-pullquote cite', '.comment-metadata', '.comment-respond .comment-notes', '.comment-respond .logged-in-as', '.pagination .dots', '.entry-content hr:not(.has-background)', 'hr.styled-separator', '.has-secondary-color' ),
     634                                'background' => array( '.has-secondary-background-color' ),
    640635                        ),
    641636                        'borders'    => array(
    642637                                'border-color'        => array( 'pre', 'fieldset', 'input', 'textarea', 'table', 'table *', 'hr' ),
    643                                 'background'          => array( 'caption', 'code', 'code', 'kbd', 'samp', '.wp-block-table.is-style-stripes tbody tr:nth-child(odd)' ),
     638                                'background'          => array( 'caption', 'code', 'code', 'kbd', 'samp', '.wp-block-table.is-style-stripes tbody tr:nth-child(odd)', '.has-subtle-background-background-color' ),
    644639                                'border-bottom-color' => array( '.wp-block-table.is-style-stripes' ),
    645640                                'border-top-color'    => array( '.wp-block-latest-posts.is-grid li' ),
     641                                'color'               => array( '.has-subtle-background-color' ),
    646642                        ),
    647643                ),
    648644                'header-footer' => array(
     
    651647                                'background' => array( '.social-icons a', '#site-footer button:not(.toggle)', '#site-footer .button', '#site-footer .faux-button', '#site-footer .wp-block-button__link', '#site-footer .wp-block-file__button', '#site-footer input[type="button"]', '#site-footer input[type="reset"]', '#site-footer input[type="submit"]' ),
    652648                        ),
    653649                        'background' => array(
    654                                 'color'      => array( '.social-icons a', '.overlay-header .header-inner', '.primary-menu ul', '.header-footer-group button', '.header-footer-group .button', '.header-footer-group .faux-button', '.header-footer-group .wp-block-button:not(.is-style-outline) .wp-block-button__link', '.header-footer-group .wp-block-file__button', '.header-footer-group input[type="button"]', '.header-footer-group input[type="reset"]', '.header-footer-group input[type="submit"]' ),
     650                                'color'      => array( '.social-icons a', '.overlay-header .header-inner', 'body:not(.overlay-header) .primary-menu ul', '.header-footer-group button', '.header-footer-group .button', '.header-footer-group .faux-button', '.header-footer-group .wp-block-button:not(.is-style-outline) .wp-block-button__link', '.header-footer-group .wp-block-file__button', '.header-footer-group input[type="button"]', '.header-footer-group input[type="reset"]', '.header-footer-group input[type="submit"]' ),
    655651                                'background' => array( '#site-header', '.footer-nav-widgets-wrapper', '#site-footer', '.menu-modal', '.menu-modal-inner', '.search-modal-inner', '.archive-header', '.singular .entry-header', '.singular .featured-media:before', '.wp-block-pullquote:before' ),
    656652                        ),
    657653                        'text'       => array(
  • src/wp-content/themes/twentytwenty/header.php

     
    99 * @since 1.0.0
    1010 */
    1111
    12 ?>
    13 <!DOCTYPE html>
     12?><!DOCTYPE html>
    1413
    1514<html class="no-js" <?php language_attributes(); ?>>
    1615
     
    3130                wp_body_open();
    3231                ?>
    3332
    34                 <header id="site-header" class="header-footer-group">
     33                <header id="site-header" class="header-footer-group" role="banner">
    3534
    3635                        <div class="header-inner section-inner">
    3736
     
    4645
    4746                                                ?>
    4847
    49                                                 <button class="toggle search-toggle mobile-search-toggle" data-toggle-target=".search-modal" data-toggle-screen-lock="true" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false">
    50                                                         <div class="toggle-inner">
    51                                                                 <div class="toggle-icon">
     48                                                <button class="toggle search-toggle mobile-search-toggle" data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false">
     49                                                        <span class="toggle-inner">
     50                                                                <span class="toggle-icon">
    5251                                                                        <?php twentytwenty_the_theme_svg( 'search' ); ?>
    53                                                                 </div>
    54                                                                 <span class="toggle-text"><?php _e( 'Search', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
    55                                                         </div>
     52                                                                </span>
     53                                                                <span class="toggle-text"><?php _e( 'Search', 'twentytwenty' ); ?></span>
     54                                                        </span>
    5655                                                </button><!-- .search-toggle -->
    5756
    5857                                        <?php } ?>
     
    6968
    7069                                        </div><!-- .header-titles -->
    7170
    72                                         <button class="toggle nav-toggle mobile-nav-toggle" data-toggle-target=".menu-modal" data-toggle-screen-lock="true" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".close-nav-toggle">
    73                                                 <div class="toggle-inner">
    74                                                         <div class="toggle-icon">
     71                                        <button class="toggle nav-toggle mobile-nav-toggle" data-toggle-target=".menu-modal" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".close-nav-toggle">
     72                                                <span class="toggle-inner">
     73                                                        <span class="toggle-icon">
    7574                                                                <?php twentytwenty_the_theme_svg( 'ellipsis' ); ?>
    76                                                         </div>
    77                                                         <span class="toggle-text"><?php _e( 'Menu', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
    78                                                 </div>
     75                                                        </span>
     76                                                        <span class="toggle-text"><?php _e( 'Menu', 'twentytwenty' ); ?></span>
     77                                                </span>
    7978                                        </button><!-- .nav-toggle -->
    8079
    8180                                </div><!-- .header-titles-wrapper -->
     
    129128                                        }
    130129                                        ?>
    131130
    132                                         <div class="header-toggles hide-no-js<?php echo esc_attr( $header_toggles_classes ); ?>">
     131                                        <div class="header-toggles hide-no-js<?php echo $header_toggles_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>">
    133132
    134133                                                <?php
    135134                                                $nav_toggle_wrapper_classes = '';
     
    140139                                                }
    141140                                                ?>
    142141
    143                                                 <div class="toggle-wrapper nav-toggle-wrapper<?php echo esc_attr( $nav_toggle_wrapper_classes ); ?>">
     142                                                <div class="toggle-wrapper nav-toggle-wrapper<?php echo $nav_toggle_wrapper_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>">
    144143
    145                                                         <button class="toggle nav-toggle" data-toggle-target=".menu-modal" data-toggle-screen-lock="true" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".close-nav-toggle">
    146                                                                 <div class="toggle-inner">
    147                                                                         <span class="toggle-text"><?php _e( 'Menu', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
    148                                                                         <div class="toggle-icon">
     144                                                        <button class="toggle nav-toggle desktop-nav-toggle" data-toggle-target=".menu-modal" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".close-nav-toggle">
     145                                                                <span class="toggle-inner">
     146                                                                        <span class="toggle-text"><?php _e( 'Menu', 'twentytwenty' ); ?></span>
     147                                                                        <span class="toggle-icon">
    149148                                                                                <?php twentytwenty_the_theme_svg( 'ellipsis' ); ?>
    150                                                                         </div>
    151                                                                 </div>
     149                                                                        </span>
     150                                                                </span>
    152151                                                        </button><!-- .nav-toggle -->
    153152
    154153                                                </div><!-- .nav-toggle-wrapper -->
     
    159158
    160159                                                        <div class="toggle-wrapper search-toggle-wrapper">
    161160
    162                                                                 <button class="toggle search-toggle" data-toggle-target=".search-modal" data-toggle-screen-lock="true" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false">
    163                                                                         <div class="toggle-inner">
     161                                                                <button class="toggle search-toggle desktop-search-toggle" data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false">
     162                                                                        <span class="toggle-inner">
    164163                                                                                <?php twentytwenty_the_theme_svg( 'search' ); ?>
    165                                                                                 <span class="toggle-text"><?php _e( 'Search', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
    166                                                                         </div>
     164                                                                                <span class="toggle-text"><?php _e( 'Search', 'twentytwenty' ); ?></span>
     165                                                                        </span>
    167166                                                                </button><!-- .search-toggle -->
    168167
    169168                                                        </div>
  • src/wp-content/themes/twentytwenty/inc/custom-css.php

     
    6060                $accent         = sanitize_hex_color( twentytwenty_get_color_for_area( 'content', 'accent' ) );
    6161                $accent_default = '#cd2653';
    6262                /**
    63                  * Filters the CSS selectors targetting button component on frontend to apply common css
     63                 * Filters the CSS selectors targeting button component on frontend to apply common css
    6464                 *
    6565                 * @since 1.0.0
    6666                 *
    67                  * @param string $string   The comma separated string of all CSS selectors targetting button component
     67                 * @param string $string   The comma separated string of all CSS selectors targeting button component
    6868                 */
    6969                $buttons_targets = apply_filters( 'twentytwenty_buttons_targets_front_end', 'button, .button, .faux-button, .wp-block-button__link, .wp-block-file__button, input[type=\'button\'], input[type=\'reset\'], input[type=\'submit\']' );
    7070
     
    102102                                        foreach ( $definitions as $property => $elements ) {
    103103                                                /*
    104104                                                 * If we don't have an elements array or it is empty
    105                                                  * then skip this itteration early;
     105                                                 * then skip this iteration early;
    106106                                                 */
    107107                                                if ( ! is_array( $elements ) || empty( $elements ) ) {
    108108                                                        continue;
     
    120120                                twentytwenty_generate_css( '.cover-header .entry-header *', 'color', $cover );
    121121                        }
    122122
    123                         // Helper Classes.
    124                         if ( $accent && $accent !== $accent_default ) {
    125                                 twentytwenty_generate_css( '.color-accent, .color-accent-hover:hover, .has-accent-color', 'color', $accent );
    126                                 twentytwenty_generate_css( '.bg-accent, .bg-accent-hover:hover, .has-accent-background-color', 'background-color', $accent );
    127                                 twentytwenty_generate_css( '.border-color-accent, .border-color-accent-hover:hover', 'border-color', $accent );
    128                                 twentytwenty_generate_css( '.fill-children-accent, .fill-children-accent *', 'fill', $accent );
    129                         }
    130 
    131123                        // Block Editor Styles.
    132124                } elseif ( 'block-editor' === $type ) {
    133125
  • src/wp-content/themes/twentytwenty/inc/starter-content.php

     
    2222        // Define and register starter content to showcase the theme on new sites.
    2323        $starter_content = array(
    2424                'widgets'   => array(
    25                         // Place one core-defined widgets in the first tooter widget area.
     25                        // Place one core-defined widgets in the first footer widget area.
    2626                        'sidebar-1' => array(
    2727                                'text_about',
    2828                        ),
    29                         // Place one core-defined widgets in the second tooter widget area.
     29                        // Place one core-defined widgets in the second footer widget area.
    3030                        'sidebar-2' => array(
    3131                                'text_business_info',
    3232                        ),
     
    3434
    3535                // Specify the core-defined pages to create and add custom thumbnails to some of them.
    3636                'posts'     => array(
    37                         'home',
     37                        'front' => array(
     38                                'post_type'    => 'page',
     39                                'post_title'   => __( 'The New UMoMA Opens its Doors', 'twentytwenty' ),
     40                                'post_content' => join(
     41                                        '',
     42                                        array(
     43                                                '<!-- wp:group {"align":"wide"} -->',
     44                                                '<div class="wp-block-group alignwide"><div class="wp-block-group__inner-container"><!-- wp:heading {"align":"center"} -->',
     45                                                '<h2 class="has-text-align-center">' . __( 'The premier destination for modern art in Northern Sweden. Open from 10 AM to 6 PM every day during the summer months.', 'twentytwenty' ) . '</h2>',
     46                                                '<!-- /wp:heading --></div></div>',
     47                                                '<!-- /wp:group -->',
     48                                                '<!-- wp:columns {"align":"wide"} -->',
     49                                                '<div class="wp-block-columns alignwide"><!-- wp:column -->',
     50                                                '<div class="wp-block-column"><!-- wp:group -->',
     51                                                '<div class="wp-block-group"><div class="wp-block-group__inner-container">',
     52                                                '<!-- wp:heading {"level":3} -->',
     53                                                '<h3>' . __( 'Works and Days', 'twentytwenty' ) . '</h3>',
     54                                                '<!-- /wp:heading -->',
     55                                                '<!-- wp:paragraph -->',
     56                                                '<p>' . __( 'August 1 -- December 1', 'twentytwenty' ) . '</p>',
     57                                                '<!-- /wp:paragraph -->',
     58                                                '<!-- wp:button {"className":"is-style-outline"} -->',
     59                                                '<div class="wp-block-button is-style-outline"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Read More', 'twentytwenty' ) . '</a></div>',
     60                                                '<!-- /wp:button --></div></div>',
     61                                                '<!-- /wp:group -->',
     62                                                '<!-- wp:group -->',
     63                                                '<div class="wp-block-group"><div class="wp-block-group__inner-container">',
     64                                                '<!-- wp:heading {"level":3} -->',
     65                                                '<h3>' . __( 'Theatre of Operations', 'twentytwenty' ) . '</h3>',
     66                                                '<!-- /wp:heading -->',
     67                                                '<!-- wp:paragraph -->',
     68                                                '<p>' . __( 'October 1 -- December 1', 'twentytwenty' ) . '</p>',
     69                                                '<!-- /wp:paragraph -->',
     70                                                '<!-- wp:button {"className":"is-style-outline"} -->',
     71                                                '<div class="wp-block-button is-style-outline"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Read More', 'twentytwenty' ) . '</a></div>',
     72                                                '<!-- /wp:button --></div></div>',
     73                                                '<!-- /wp:group --></div>',
     74                                                '<!-- /wp:column -->',
     75                                                '<!-- wp:column -->',
     76                                                '<div class="wp-block-column"><!-- wp:group -->',
     77                                                '<div class="wp-block-group"><div class="wp-block-group__inner-container">',
     78                                                '<!-- wp:heading {"level":3} -->',
     79                                                '<h3>' . __( 'The Life I Deserve', 'twentytwenty' ) . '</h3>',
     80                                                '<!-- /wp:heading -->',
     81                                                '<!-- wp:paragraph -->',
     82                                                '<p>' . __( 'August 1 -- December 1', 'twentytwenty' ) . '</p>',
     83                                                '<!-- /wp:paragraph -->',
     84                                                '<!-- wp:button {"className":"is-style-outline"} -->',
     85                                                '<div class="wp-block-button is-style-outline"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Read More', 'twentytwenty' ) . '</a></div>',
     86                                                '<!-- /wp:button --></div></div>',
     87                                                '<!-- /wp:group -->',
     88                                                '<!-- wp:group -->',
     89                                                '<div class="wp-block-group"><div class="wp-block-group__inner-container">',
     90                                                '<!-- wp:heading {"level":3} -->',
     91                                                '<h3>' . __( 'From Signac to Matisse', 'twentytwenty' ) . '</h3>',
     92                                                '<!-- /wp:heading -->',
     93                                                '<!-- wp:paragraph -->',
     94                                                '<p>' . __( 'October 1 -- December 1', 'twentytwenty' ) . '</p>',
     95                                                '<!-- /wp:paragraph -->',
     96                                                '<!-- wp:button {"className":"is-style-outline"} -->',
     97                                                '<div class="wp-block-button is-style-outline"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Read More', 'twentytwenty' ) . '</a></div>',
     98                                                '<!-- /wp:button --></div></div>',
     99                                                '<!-- /wp:group --></div>',
     100                                                '<!-- /wp:column --></div>',
     101                                                '<!-- /wp:columns -->',
     102                                                '<!-- wp:group {"align":"wide"} -->',
     103                                                '<div class="wp-block-group alignwide"><div class="wp-block-group__inner-container"><!-- wp:heading {"align":"center","textColor":"accent"} -->',
     104                                                '<h2 class="has-accent-color has-text-align-center">' . __( '”Cyborgs, as the philosopher Donna Haraway established, are not reverent. They do not remember the cosmos.”', 'twentytwenty' ) . '</h2>',
     105                                                '<!-- /wp:heading --></div></div>',
     106                                                '<!-- /wp:group -->',
     107                                                '<!-- wp:paragraph {"dropCap":true} -->',
     108                                                '<p class="has-drop-cap">' . __( 'With seven floors of striking architecture, UMoMA shows exhibitions of international contemporary art, sometimes along with art historical retrospectives. Existential, political and philosophical issues are intrinsic to our programme. As visitor you are invited to guided tours artist talks, lectures, film screenings and other events with free admission', 'twentytwenty' ) . '</p>',
     109                                                '<!-- /wp:paragraph -->',
     110                                                '<!-- wp:paragraph -->',
     111                                                '<p>' . __( 'The exhibitions are produced by UMoMA in collaboration with artists and museums around the world and they often attract international attention. UMoMA has received a Special Commendation from the European Museum of the Year, and was among the top candidates for the Swedish Museum of the Year Award as well as for the Council of Europe Museum Prize.', 'twentytwenty' ) . '</p>',
     112                                                '<!-- /wp:paragraph -->',
     113                                                '<!-- wp:paragraph -->',
     114                                                '<p></p>',
     115                                                '<!-- /wp:paragraph -->',
     116                                                '<!-- wp:group {"customBackgroundColor":"#ffffff","align":"wide"} -->',
     117                                                '<div class="wp-block-group alignwide has-background" style="background-color:#ffffff"><div class="wp-block-group__inner-container"><!-- wp:group -->',
     118                                                '<div class="wp-block-group"><div class="wp-block-group__inner-container"><!-- wp:heading {"align":"center"} -->',
     119                                                '<h2 class="has-text-align-center">' . __( 'Become a Member and Get Exclusive Offers!', 'twentytwenty' ) . '</h2>',
     120                                                '<!-- /wp:heading -->',
     121                                                '<!-- wp:paragraph {"align":"center"} -->',
     122                                                '<p class="has-text-align-center">' . __( 'Members get access to exclusive exhibits and sales. Our memberships cost $99.99 and are billed annually.', 'twentytwenty' ) . '</p>',
     123                                                '<!-- /wp:paragraph -->',
     124                                                '<!-- wp:button {"align":"center"} -->',
     125                                                '<div class="wp-block-button aligncenter"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Join the Club', 'twentytwenty' ) . '</a></div>',
     126                                                '<!-- /wp:button --></div></div>',
     127                                                '<!-- /wp:group --></div></div>',
     128                                                '<!-- /wp:group -->',
     129                                        )
     130                                ),
     131                        ),
    38132                        'about',
    39133                        'contact',
    40134                        'blog',
     
    43137                // Default to a static front page and assign the front and posts pages.
    44138                'options'   => array(
    45139                        'show_on_front'  => 'page',
    46                         'page_on_front'  => '{{home}}',
     140                        'page_on_front'  => '{{front}}',
    47141                        'page_for_posts' => '{{blog}}',
    48142                ),
    49143
  • src/wp-content/themes/twentytwenty/inc/svg-icons.php

     
    1313         * Output and get the SVG markup for an icon in the TwentyTwenty_SVG_Icons class.
    1414         *
    1515         * @param string $svg_name The name of the icon.
     16         * @param string $group The group the icon belongs to.
    1617         * @param string $color Color code.
    1718         */
    18         function twentytwenty_the_theme_svg( $svg_name, $color = '' ) {
    19                 echo twentytwenty_get_theme_svg( $svg_name, $color ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped in twentytwenty_get_theme_svg();.
     19        function twentytwenty_the_theme_svg( $svg_name, $group = 'ui', $color = '' ) {
     20                echo twentytwenty_get_theme_svg( $svg_name, $group, $color ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped in twentytwenty_get_theme_svg();.
    2021        }
    2122}
    2223
     
    2627         * Get information about the SVG icon.
    2728         *
    2829         * @param string $svg_name The name of the icon.
     30         * @param string $group The group the icon belongs to.
    2931         * @param string $color Color code.
    3032         */
    31         function twentytwenty_get_theme_svg( $svg_name, $color = '' ) {
     33        function twentytwenty_get_theme_svg( $svg_name, $group = 'ui', $color = '' ) {
    3234
    3335                // Make sure that only our allowed tags and attributes are included.
    3436                $svg = wp_kses(
    35                         TwentyTwenty_SVG_Icons::get_svg( $svg_name, $color ),
     37                        TwentyTwenty_SVG_Icons::get_svg( $svg_name, $group, $color ),
    3638                        array(
    3739                                'svg'     => array(
    3840                                        'class'       => true,
  • src/wp-content/themes/twentytwenty/inc/template-tags.php

     
    99
    1010/**
    1111 * Table of Contents:
     12 * Logo & Description
    1213 * Comments
    1314 * Post Meta
    1415 * Menus
    1516 * Classes
     17 * Archives
     18 * Miscellaneous
    1619 */
    1720
    1821/**
     22 * Logo & Description
     23 */
     24/**
    1925 * Displays the site logo, either text or image.
    2026 *
    2127 * @param array   $args Arguments for displaying the site logo either as an image or text.
    22  * @param boolean $echo Echo or return the html.
     28 * @param boolean $echo Echo or return the HTML.
     29 *
     30 * @return string $html Compiled HTML based on our arguments.
    2331 */
    2432function twentytwenty_site_logo( $args = array(), $echo = true ) {
    2533        $logo       = get_custom_logo();
     
    8189 * Displays the site description.
    8290 *
    8391 * @param boolean $echo Echo or return the html.
     92 *
     93 * @return string $html The HTML to display.
    8494 */
    8595function twentytwenty_site_description( $echo = true ) {
    8696        $description = get_bloginfo( 'description' );
     
    118128 * Check if the specified comment is written by the author of the post commented on.
    119129 *
    120130 * @param object $comment Comment data.
     131 *
     132 * @return bool
    121133 */
    122134function twentytwenty_is_comment_by_post_author( $comment = null ) {
    123135
     
    142154 * makes it scroll to the wrong position on the page.
    143155 *
    144156 * @param string $link Link to the top of the page.
     157 *
     158 * @return string $link Link to the top of the page.
    145159 */
    146160function twentytwenty_filter_comment_reply_link( $link ) {
    147161
     
    169183}
    170184
    171185/**
     186 * Filters the edit post link to add an icon and use the post meta structure.
     187 *
     188 * @param string $link    Anchor tag for the edit link.
     189 * @param int    $post_id Post ID.
     190 * @param string $text    Anchor text.
     191 */
     192function twentytwenty_edit_post_link( $link, $post_id, $text ) {
     193
     194        $edit_url = get_edit_post_link( $post_id );
     195
     196        if ( ! $edit_url ) {
     197                return;
     198        }
     199
     200        $text = sprintf(
     201                wp_kses(
     202                        /* translators: %s: Post title. Only visible to screen readers. */
     203                        __( 'Edit <span class="screen-reader-text">%s</span>', 'twentytwenty' ),
     204                        array(
     205                                'span' => array(
     206                                        'class' => array(),
     207                                ),
     208                        )
     209                ),
     210                get_the_title( $post_id )
     211        );
     212
     213        return '<div class="post-meta-wrapper post-meta-edit-link-wrapper"><ul class="post-meta"><li class="post-edit meta-wrapper"><span class="meta-icon">' . twentytwenty_get_theme_svg( 'edit' ) . '</span><span class="meta-text"><a href="' . esc_url( $edit_url ) . '">' . $text . '</a></span></li></ul><!-- .post-meta --></div><!-- .post-meta-wrapper -->';
     214
     215}
     216
     217add_filter( 'edit_post_link', 'twentytwenty_edit_post_link', 10, 3 );
     218
     219/**
    172220 * Get the post meta.
    173221 *
    174222 * @param int    $post_id The iD of the post.
     
    206254                /**
    207255                * Filters post meta info visibility
    208256                *
    209                 * Use this filter to hide post meta information like Author, Post date, Comments, Is stiky status
     257                * Use this filter to hide post meta information like Author, Post date, Comments, Is sticky status
    210258                *
    211259                * @since 1.0.0
    212260                *
     
    289337                                        ?>
    290338                                        <li class="post-author meta-wrapper">
    291339                                                <span class="meta-icon">
    292                                                         <span class="screen-reader-text"><?php _e( 'Post author', 'twentytwenty' );// phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
     340                                                        <span class="screen-reader-text"><?php _e( 'Post author', 'twentytwenty' ); ?></span>
    293341                                                        <?php twentytwenty_the_theme_svg( 'user' ); ?>
    294342                                                </span>
    295343                                                <span class="meta-text">
    296344                                                        <?php
    297345                                                        printf(
    298                                                                 // Translators: %s = the author name.
    299                                                                 _x( 'By %s', '%s = author name', 'twentytwenty' ), // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- core trusts translations
     346                                                                /* translators: %s: Author name */
     347                                                                __( 'By %s', 'twentytwenty' ),
    300348                                                                '<a href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '">' . esc_html( get_the_author_meta( 'display_name' ) ) . '</a>'
    301349                                                        );
    302350                                                        ?>
     
    314362                                        <li class="post-date">
    315363                                                <a class="meta-wrapper" href="<?php the_permalink(); ?>">
    316364                                                        <span class="meta-icon">
    317                                                                 <span class="screen-reader-text"><?php _e( 'Post date', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
     365                                                                <span class="screen-reader-text"><?php _e( 'Post date', 'twentytwenty' ); ?></span>
    318366                                                                <?php twentytwenty_the_theme_svg( 'calendar' ); ?>
    319367                                                        </span>
    320368                                                        <span class="meta-text">
     
    333381                                        ?>
    334382                                        <li class="post-categories meta-wrapper">
    335383                                                <span class="meta-icon">
    336                                                         <span class="screen-reader-text"><?php _e( 'Categories', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
     384                                                        <span class="screen-reader-text"><?php _e( 'Categories', 'twentytwenty' ); ?></span>
    337385                                                        <?php twentytwenty_the_theme_svg( 'folder' ); ?>
    338386                                                </span>
    339387                                                <span class="meta-text">
    340                                                         <?php _e( 'In', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?> <?php the_category( ', ' ); ?>
     388                                                        <?php _ex( 'In', 'A string that is output before one or more categories', 'twentytwenty' ); ?> <?php the_category( ', ' ); ?>
    341389                                                </span>
    342390                                        </li>
    343391                                        <?php
     
    351399                                        ?>
    352400                                        <li class="post-tags meta-wrapper">
    353401                                                <span class="meta-icon">
    354                                                         <span class="screen-reader-text"><?php _e( 'Tags', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
     402                                                        <span class="screen-reader-text"><?php _e( 'Tags', 'twentytwenty' ); ?></span>
    355403                                                        <?php twentytwenty_the_theme_svg( 'tag' ); ?>
    356404                                                </span>
    357405                                                <span class="meta-text">
     
    389437                                                        <?php twentytwenty_the_theme_svg( 'bookmark' ); ?>
    390438                                                </span>
    391439                                                <span class="meta-text">
    392                                                         <?php _e( 'Sticky post', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?>
     440                                                        <?php _e( 'Sticky post', 'twentytwenty' ); ?>
    393441                                                </span>
    394442                                        </li>
    395443                                        <?php
     
    437485 * Filter the class applied to wp_list_pages() items with children to match the menu class, to simplify.
    438486 * styling of sub levels in the fallback. Only applied if the match_menu_classes argument is set.
    439487 *
    440  * @param string $css_class CSS Class names.
     488 * @param array $css_class CSS Class names.
    441489 * @param string $item Comment.
    442490 * @param int    $depth Depth of the current comment.
    443491 * @param array  $args An array of arguments.
    444  * @param string $current_page Wether or not the item is the current item.
     492 * @param string $current_page Whether or not the item is the current item.
     493 *
     494 * @return array $css_class CSS Class names.
    445495 */
    446496function twentytwenty_filter_wp_list_pages_item_classes( $css_class, $item, $depth, $args, $current_page ) {
    447497
     
    471521/**
    472522 * Add a Sub Nav Toggle to the Expanded Menu and Mobile Menu.
    473523 *
    474  * @param array  $args An array of arguments.
    475  * @param string $item Menu item.
    476  * @param int    $depth Depth of the current menu item.
     524 * @param stdClass $args An array of arguments.
     525 * @param string   $item Menu item.
     526 * @param int      $depth Depth of the current menu item.
     527 *
     528 * @return stdClass $args An object of wp_nav_menu() arguments.
    477529 */
    478530function twentytwenty_add_sub_toggles_to_main_menu( $args, $item, $depth ) {
    479531
     
    514566add_filter( 'nav_menu_item_args', 'twentytwenty_add_sub_toggles_to_main_menu', 10, 3 );
    515567
    516568/**
     569 * Display SVG icons in social links menu.
     570 *
     571 * @param  string  $item_output The menu item output.
     572 * @param  WP_Post $item        Menu item object.
     573 * @param  int     $depth       Depth of the menu.
     574 * @param  array   $args        wp_nav_menu() arguments.
     575 * @return string  $item_output The menu item output with social icon.
     576 */
     577function twentytwenty_nav_menu_social_icons( $item_output, $item, $depth, $args ) {
     578        // Change SVG icon inside social links menu if there is supported URL.
     579        if ( 'social' === $args->theme_location ) {
     580                $svg = TwentyTwenty_SVG_Icons::get_social_link_svg( $item->url );
     581                if ( empty( $svg ) ) {
     582                        $svg = twentytwenty_get_theme_svg( 'link' );
     583                }
     584                $item_output = str_replace( $args->link_after, '</span>' . $svg, $item_output );
     585        }
     586
     587        return $item_output;
     588}
     589
     590add_filter( 'walker_nav_menu_start_el', 'twentytwenty_nav_menu_social_icons', 10, 4 );
     591
     592/**
    517593 * Classes
    518594 */
    519595/**
     
    531607add_action( 'wp_head', 'twentytwenty_no_js_class' );
    532608
    533609/**
    534  * Filters the archive title and styles the word before the first colon.
    535  *
    536  * @param string $title Current archive title.
    537  */
    538 function twentytwenty_get_the_archive_title( $title ) {
    539 
    540         $regex = apply_filters(
    541                 'twentytwenty_get_the_archive_title_regex',
    542                 array(
    543                         'pattern'     => '/(\A[^\:]+\:)/',
    544                         'replacement' => '<span class="color-accent">$1</span>',
    545                 )
    546         );
    547 
    548         if ( empty( $regex ) ) {
    549 
    550                 return $title;
    551 
    552         }
    553 
    554         return preg_replace( $regex['pattern'], $regex['replacement'], $title );
    555 
    556 }
    557 
    558 add_filter( 'get_the_archive_title', 'twentytwenty_get_the_archive_title' );
    559 
    560 /**
    561  * Filters the edit post link to add an icon and use the post meta structure.
    562  *
    563  * @param string $link    Anchor tag for the edit link.
    564  * @param int    $post_id Post ID.
    565  * @param string $text    Anchor text.
    566  */
    567 function twentytwenty_edit_post_link( $link, $post_id, $text ) {
    568 
    569         $edit_url = get_edit_post_link( $post_id );
    570 
    571         if ( ! $edit_url ) {
    572                 return;
    573         }
    574 
    575         return '<div class="post-meta-wrapper post-meta-edit-link-wrapper"><ul class="post-meta"><li class="post-edit meta-wrapper"><span class="meta-icon">' . twentytwenty_get_theme_svg( 'edit' ) . '</span><span class="meta-text"><a href="' . esc_url( $edit_url ) . '">' . $text . '</a></span></li></ul><!-- .post-meta --></div><!-- .post-meta-wrapper -->';
    576 
    577 }
    578 
    579 add_filter( 'edit_post_link', 'twentytwenty_edit_post_link', 10, 3 );
    580 
    581 /**
    582610 * Add conditional body classes.
    583611 *
    584  * @param string $classes Classes added to the body tag.
     612 * @param array $classes Classes added to the body tag.
     613 *
     614 * @return array $classes Classes added to the body tag.
    585615 */
    586616function twentytwenty_body_classes( $classes ) {
    587617
     
    675705add_filter( 'body_class', 'twentytwenty_body_classes' );
    676706
    677707/**
     708 * Archives
     709 */
     710/**
     711 * Filters the archive title and styles the word before the first colon.
     712 *
     713 * @param string $title Current archive title.
     714 *
     715 * @return string $title Current archive title.
     716 */
     717function twentytwenty_get_the_archive_title( $title ) {
     718
     719        $regex = apply_filters(
     720                'twentytwenty_get_the_archive_title_regex',
     721                array(
     722                        'pattern'     => '/(\A[^\:]+\:)/',
     723                        'replacement' => '<span class="color-accent">$1</span>',
     724                )
     725        );
     726
     727        if ( empty( $regex ) ) {
     728
     729                return $title;
     730
     731        }
     732
     733        return preg_replace( $regex['pattern'], $regex['replacement'], $title );
     734
     735}
     736
     737add_filter( 'get_the_archive_title', 'twentytwenty_get_the_archive_title' );
     738
     739/**
     740 * Miscellaneous
     741 */
     742/**
    678743 * Toggle animation duration in milliseconds.
    679744 *
    680745 * @return integer Duration in milliseconds
     
    691756
    692757        return $duration;
    693758}
     759
     760/**
     761 * Get unique ID.
     762 *
     763 * This is a PHP implementation of Underscore's uniqueId method. A static variable
     764 * contains an integer that is incremented with each call. This number is returned
     765 * with the optional prefix. As such the returned value is not universally unique,
     766 * but it is unique across the life of the PHP process.
     767 *
     768 * @see wp_unique_id() Themes requiring WordPress 5.0.3 and greater should use this instead.
     769 *
     770 * @staticvar int $id_counter
     771 *
     772 * @param string $prefix Prefix for the returned ID.
     773 * @return string Unique ID.
     774 */
     775function twentytwenty_unique_id( $prefix = '' ) {
     776        static $id_counter = 0;
     777        if ( function_exists( 'wp_unique_id' ) ) {
     778                return wp_unique_id( $prefix );
     779        }
     780        return $prefix . (string) ++$id_counter;
     781}
  • src/wp-content/themes/twentytwenty/index.php

     
    3434                );
    3535
    3636                if ( $wp_query->found_posts ) {
    37                         /* Translators: %s = Number of results */
    38                         $archive_subtitle = sprintf( _nx( 'We found %s result for your search.', 'We found %s results for your search.', $wp_query->found_posts, '%s = Number of results', 'twentytwenty' ), $wp_query->found_posts );
     37                        $archive_subtitle = sprintf(
     38                                /* translators: %s: Number of search results */
     39                                _n(
     40                                        'We found %s result for your search.',
     41                                        'We found %s results for your search.',
     42                                        $wp_query->found_posts,
     43                                        'twentytwenty'
     44                                ),
     45                                number_format_i18n( $wp_query->found_posts )
     46                        );
    3947                } else {
    4048                        $archive_subtitle = __( 'We could not find any results for your search. You can give it another try through the search form below.', 'twentytwenty' );
    4149                }
     
    8896                        <?php
    8997                        get_search_form(
    9098                                array(
    91                                         'label' => _x( 'search again', 'Label', 'twentytwenty' ),
     99                                        'label' => __( 'search again', 'twentytwenty' ),
    92100                                )
    93101                        );
    94102                        ?>
     
    100108        ?>
    101109
    102110        <?php get_template_part( 'template-parts/pagination' ); ?>
    103         <?php get_template_part( 'template-parts/footer-menus-widgets' ); ?>
    104111
    105112</main><!-- #site-content -->
    106113
     114<?php get_template_part( 'template-parts/footer-menus-widgets' ); ?>
     115
    107116<?php
    108117get_footer();
  • src/wp-content/themes/twentytwenty/package-lock.json

     
    38823882                        "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
    38833883                        "dev": true
    38843884                },
     3885                "dependency-graph": {
     3886                        "version": "0.8.0",
     3887                        "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.8.0.tgz",
     3888                        "integrity": "sha512-DCvzSq2UiMsuLnj/9AL484ummEgLtZIcRS7YvtO38QnpX3vqh9nJ8P+zhu8Ja+SmLrBHO2iDbva20jq38qvBkQ==",
     3889                        "dev": true
     3890                },
    38853891                "des.js": {
    38863892                        "version": "1.0.0",
    38873893                        "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz",
     
    52805286                        "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=",
    52815287                        "dev": true
    52825288                },
     5289                "fs-extra": {
     5290                        "version": "7.0.1",
     5291                        "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
     5292                        "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
     5293                        "dev": true,
     5294                        "requires": {
     5295                                "graceful-fs": "^4.1.2",
     5296                                "jsonfile": "^4.0.0",
     5297                                "universalify": "^0.1.0"
     5298                        }
     5299                },
    52835300                "fs-write-stream-atomic": {
    52845301                        "version": "1.0.10",
    52855302                        "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
     
    53115328                        "dependencies": {
    53125329                                "abbrev": {
    53135330                                        "version": "1.1.1",
    5314                                         "bundled": true,
     5331                                        "resolved": false,
     5332                                        "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
    53155333                                        "dev": true,
    53165334                                        "optional": true
    53175335                                },
    53185336                                "ansi-regex": {
    53195337                                        "version": "2.1.1",
    5320                                         "bundled": true,
     5338                                        "resolved": false,
     5339                                        "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
    53215340                                        "dev": true,
    53225341                                        "optional": true
    53235342                                },
    53245343                                "aproba": {
    53255344                                        "version": "1.2.0",
    5326                                         "bundled": true,
     5345                                        "resolved": false,
     5346                                        "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
    53275347                                        "dev": true,
    53285348                                        "optional": true
    53295349                                },
    53305350                                "are-we-there-yet": {
    53315351                                        "version": "1.1.5",
    5332                                         "bundled": true,
     5352                                        "resolved": false,
     5353                                        "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==",
    53335354                                        "dev": true,
    53345355                                        "optional": true,
    53355356                                        "requires": {
     
    53395360                                },
    53405361                                "balanced-match": {
    53415362                                        "version": "1.0.0",
    5342                                         "bundled": true,
     5363                                        "resolved": false,
     5364                                        "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
    53435365                                        "dev": true,
    53445366                                        "optional": true
    53455367                                },
    53465368                                "brace-expansion": {
    53475369                                        "version": "1.1.11",
    5348                                         "bundled": true,
     5370                                        "resolved": false,
     5371                                        "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
    53495372                                        "dev": true,
    53505373                                        "optional": true,
    53515374                                        "requires": {
     
    53555378                                },
    53565379                                "chownr": {
    53575380                                        "version": "1.1.1",
    5358                                         "bundled": true,
     5381                                        "resolved": false,
     5382                                        "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==",
    53595383                                        "dev": true,
    53605384                                        "optional": true
    53615385                                },
    53625386                                "code-point-at": {
    53635387                                        "version": "1.1.0",
    5364                                         "bundled": true,
     5388                                        "resolved": false,
     5389                                        "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
    53655390                                        "dev": true,
    53665391                                        "optional": true
    53675392                                },
    53685393                                "concat-map": {
    53695394                                        "version": "0.0.1",
    5370                                         "bundled": true,
     5395                                        "resolved": false,
     5396                                        "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
    53715397                                        "dev": true,
    53725398                                        "optional": true
    53735399                                },
    53745400                                "console-control-strings": {
    53755401                                        "version": "1.1.0",
    5376                                         "bundled": true,
     5402                                        "resolved": false,
     5403                                        "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
    53775404                                        "dev": true,
    53785405                                        "optional": true
    53795406                                },
    53805407                                "core-util-is": {
    53815408                                        "version": "1.0.2",
    5382                                         "bundled": true,
     5409                                        "resolved": false,
     5410                                        "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
    53835411                                        "dev": true,
    53845412                                        "optional": true
    53855413                                },
    53865414                                "debug": {
    53875415                                        "version": "4.1.1",
    5388                                         "bundled": true,
     5416                                        "resolved": false,
     5417                                        "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
    53895418                                        "dev": true,
    53905419                                        "optional": true,
    53915420                                        "requires": {
     
    53945423                                },
    53955424                                "deep-extend": {
    53965425                                        "version": "0.6.0",
    5397                                         "bundled": true,
     5426                                        "resolved": false,
     5427                                        "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
    53985428                                        "dev": true,
    53995429                                        "optional": true
    54005430                                },
    54015431                                "delegates": {
    54025432                                        "version": "1.0.0",
    5403                                         "bundled": true,
     5433                                        "resolved": false,
     5434                                        "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
    54045435                                        "dev": true,
    54055436                                        "optional": true
    54065437                                },
    54075438                                "detect-libc": {
    54085439                                        "version": "1.0.3",
    5409                                         "bundled": true,
     5440                                        "resolved": false,
     5441                                        "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=",
    54105442                                        "dev": true,
    54115443                                        "optional": true
    54125444                                },
    54135445                                "fs-minipass": {
    54145446                                        "version": "1.2.5",
    5415                                         "bundled": true,
     5447                                        "resolved": false,
     5448                                        "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==",
    54165449                                        "dev": true,
    54175450                                        "optional": true,
    54185451                                        "requires": {
     
    54215454                                },
    54225455                                "fs.realpath": {
    54235456                                        "version": "1.0.0",
    5424                                         "bundled": true,
     5457                                        "resolved": false,
     5458                                        "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
    54255459                                        "dev": true,
    54265460                                        "optional": true
    54275461                                },
    54285462                                "gauge": {
    54295463                                        "version": "2.7.4",
    5430                                         "bundled": true,
     5464                                        "resolved": false,
     5465                                        "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
    54315466                                        "dev": true,
    54325467                                        "optional": true,
    54335468                                        "requires": {
     
    54435478                                },
    54445479                                "glob": {
    54455480                                        "version": "7.1.3",
    5446                                         "bundled": true,
     5481                                        "resolved": false,
     5482                                        "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
    54475483                                        "dev": true,
    54485484                                        "optional": true,
    54495485                                        "requires": {
     
    54575493                                },
    54585494                                "has-unicode": {
    54595495                                        "version": "2.0.1",
    5460                                         "bundled": true,
     5496                                        "resolved": false,
     5497                                        "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
    54615498                                        "dev": true,
    54625499                                        "optional": true
    54635500                                },
    54645501                                "iconv-lite": {
    54655502                                        "version": "0.4.24",
    5466                                         "bundled": true,
     5503                                        "resolved": false,
     5504                                        "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
    54675505                                        "dev": true,
    54685506                                        "optional": true,
    54695507                                        "requires": {
     
    54725510                                },
    54735511                                "ignore-walk": {
    54745512                                        "version": "3.0.1",
    5475                                         "bundled": true,
     5513                                        "resolved": false,
     5514                                        "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==",
    54765515                                        "dev": true,
    54775516                                        "optional": true,
    54785517                                        "requires": {
     
    54815520                                },
    54825521                                "inflight": {
    54835522                                        "version": "1.0.6",
    5484                                         "bundled": true,
     5523                                        "resolved": false,
     5524                                        "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
    54855525                                        "dev": true,
    54865526                                        "optional": true,
    54875527                                        "requires": {
     
    54915531                                },
    54925532                                "inherits": {
    54935533                                        "version": "2.0.3",
    5494                                         "bundled": true,
     5534                                        "resolved": false,
     5535                                        "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
    54955536                                        "dev": true,
    54965537                                        "optional": true
    54975538                                },
    54985539                                "ini": {
    54995540                                        "version": "1.3.5",
    5500                                         "bundled": true,
     5541                                        "resolved": false,
     5542                                        "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
    55015543                                        "dev": true,
    55025544                                        "optional": true
    55035545                                },
    55045546                                "is-fullwidth-code-point": {
    55055547                                        "version": "1.0.0",
    5506                                         "bundled": true,
     5548                                        "resolved": false,
     5549                                        "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
    55075550                                        "dev": true,
    55085551                                        "optional": true,
    55095552                                        "requires": {
     
    55125555                                },
    55135556                                "isarray": {
    55145557                                        "version": "1.0.0",
    5515                                         "bundled": true,
     5558                                        "resolved": false,
     5559                                        "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
    55165560                                        "dev": true,
    55175561                                        "optional": true
    55185562                                },
    55195563                                "minimatch": {
    55205564                                        "version": "3.0.4",
    5521                                         "bundled": true,
     5565                                        "resolved": false,
     5566                                        "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
    55225567                                        "dev": true,
    55235568                                        "optional": true,
    55245569                                        "requires": {
     
    55275572                                },
    55285573                                "minimist": {
    55295574                                        "version": "0.0.8",
    5530                                         "bundled": true,
     5575                                        "resolved": false,
     5576                                        "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
    55315577                                        "dev": true,
    55325578                                        "optional": true
    55335579                                },
    55345580                                "minipass": {
    55355581                                        "version": "2.3.5",
    5536                                         "bundled": true,
     5582                                        "resolved": false,
     5583                                        "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==",
    55375584                                        "dev": true,
    55385585                                        "optional": true,
    55395586                                        "requires": {
     
    55435590                                },
    55445591                                "minizlib": {
    55455592                                        "version": "1.2.1",
    5546                                         "bundled": true,
     5593                                        "resolved": false,
     5594                                        "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==",
    55475595                                        "dev": true,
    55485596                                        "optional": true,
    55495597                                        "requires": {
     
    55525600                                },
    55535601                                "mkdirp": {
    55545602                                        "version": "0.5.1",
    5555                                         "bundled": true,
     5603                                        "resolved": false,
     5604                                        "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
    55565605                                        "dev": true,
    55575606                                        "optional": true,
    55585607                                        "requires": {
     
    55615610                                },
    55625611                                "ms": {
    55635612                                        "version": "2.1.1",
    5564                                         "bundled": true,
     5613                                        "resolved": false,
     5614                                        "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
    55655615                                        "dev": true,
    55665616                                        "optional": true
    55675617                                },
    55685618                                "needle": {
    55695619                                        "version": "2.3.0",
    5570                                         "bundled": true,
     5620                                        "resolved": false,
     5621                                        "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==",
    55715622                                        "dev": true,
    55725623                                        "optional": true,
    55735624                                        "requires": {
     
    55785629                                },
    55795630                                "node-pre-gyp": {
    55805631                                        "version": "0.12.0",
    5581                                         "bundled": true,
     5632                                        "resolved": false,
     5633                                        "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==",
    55825634                                        "dev": true,
    55835635                                        "optional": true,
    55845636                                        "requires": {
     
    55965648                                },
    55975649                                "nopt": {
    55985650                                        "version": "4.0.1",
    5599                                         "bundled": true,
     5651                                        "resolved": false,
     5652                                        "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=",
    56005653                                        "dev": true,
    56015654                                        "optional": true,
    56025655                                        "requires": {
     
    56065659                                },
    56075660                                "npm-bundled": {
    56085661                                        "version": "1.0.6",
    5609                                         "bundled": true,
     5662                                        "resolved": false,
     5663                                        "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==",
    56105664                                        "dev": true,
    56115665                                        "optional": true
    56125666                                },
    56135667                                "npm-packlist": {
    56145668                                        "version": "1.4.1",
    5615                                         "bundled": true,
     5669                                        "resolved": false,
     5670                                        "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==",
    56165671                                        "dev": true,
    56175672                                        "optional": true,
    56185673                                        "requires": {
     
    56225677                                },
    56235678                                "npmlog": {
    56245679                                        "version": "4.1.2",
    5625                                         "bundled": true,
     5680                                        "resolved": false,
     5681                                        "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
    56265682                                        "dev": true,
    56275683                                        "optional": true,
    56285684                                        "requires": {
     
    56345690                                },
    56355691                                "number-is-nan": {
    56365692                                        "version": "1.0.1",
    5637                                         "bundled": true,
     5693                                        "resolved": false,
     5694                                        "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
    56385695                                        "dev": true,
    56395696                                        "optional": true
    56405697                                },
    56415698                                "object-assign": {
    56425699                                        "version": "4.1.1",
    5643                                         "bundled": true,
     5700                                        "resolved": false,
     5701                                        "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
    56445702                                        "dev": true,
    56455703                                        "optional": true
    56465704                                },
    56475705                                "once": {
    56485706                                        "version": "1.4.0",
    5649                                         "bundled": true,
     5707                                        "resolved": false,
     5708                                        "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
    56505709                                        "dev": true,
    56515710                                        "optional": true,
    56525711                                        "requires": {
     
    56555714                                },
    56565715                                "os-homedir": {
    56575716                                        "version": "1.0.2",
    5658                                         "bundled": true,
     5717                                        "resolved": false,
     5718                                        "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
    56595719                                        "dev": true,
    56605720                                        "optional": true
    56615721                                },
    56625722                                "os-tmpdir": {
    56635723                                        "version": "1.0.2",
    5664                                         "bundled": true,
     5724                                        "resolved": false,
     5725                                        "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
    56655726                                        "dev": true,
    56665727                                        "optional": true
    56675728                                },
    56685729                                "osenv": {
    56695730                                        "version": "0.1.5",
    5670                                         "bundled": true,
     5731                                        "resolved": false,
     5732                                        "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
    56715733                                        "dev": true,
    56725734                                        "optional": true,
    56735735                                        "requires": {
     
    56775739                                },
    56785740                                "path-is-absolute": {
    56795741                                        "version": "1.0.1",
    5680                                         "bundled": true,
     5742                                        "resolved": false,
     5743                                        "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
    56815744                                        "dev": true,
    56825745                                        "optional": true
    56835746                                },
    56845747                                "process-nextick-args": {
    56855748                                        "version": "2.0.0",
    5686                                         "bundled": true,
     5749                                        "resolved": false,
     5750                                        "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
    56875751                                        "dev": true,
    56885752                                        "optional": true
    56895753                                },
    56905754                                "rc": {
    56915755                                        "version": "1.2.8",
    5692                                         "bundled": true,
     5756                                        "resolved": false,
     5757                                        "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
    56935758                                        "dev": true,
    56945759                                        "optional": true,
    56955760                                        "requires": {
     
    57015766                                        "dependencies": {
    57025767                                                "minimist": {
    57035768                                                        "version": "1.2.0",
    5704                                                         "bundled": true,
     5769                                                        "resolved": false,
     5770                                                        "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
    57055771                                                        "dev": true,
    57065772                                                        "optional": true
    57075773                                                }
     
    57095775                                },
    57105776                                "readable-stream": {
    57115777                                        "version": "2.3.6",
    5712                                         "bundled": true,
     5778                                        "resolved": false,
     5779                                        "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
    57135780                                        "dev": true,
    57145781                                        "optional": true,
    57155782                                        "requires": {
     
    57245791                                },
    57255792                                "rimraf": {
    57265793                                        "version": "2.6.3",
    5727                                         "bundled": true,
     5794                                        "resolved": false,
     5795                                        "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
    57285796                                        "dev": true,
    57295797                                        "optional": true,
    57305798                                        "requires": {
     
    57335801                                },
    57345802                                "safe-buffer": {
    57355803                                        "version": "5.1.2",
    5736                                         "bundled": true,
     5804                                        "resolved": false,
     5805                                        "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
    57375806                                        "dev": true,
    57385807                                        "optional": true
    57395808                                },
    57405809                                "safer-buffer": {
    57415810                                        "version": "2.1.2",
    5742                                         "bundled": true,
     5811                                        "resolved": false,
     5812                                        "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
    57435813                                        "dev": true,
    57445814                                        "optional": true
    57455815                                },
    57465816                                "sax": {
    57475817                                        "version": "1.2.4",
    5748                                         "bundled": true,
     5818                                        "resolved": false,
     5819                                        "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
    57495820                                        "dev": true,
    57505821                                        "optional": true
    57515822                                },
    57525823                                "semver": {
    57535824                                        "version": "5.7.0",
    5754                                         "bundled": true,
     5825                                        "resolved": false,
     5826                                        "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==",
    57555827                                        "dev": true,
    57565828                                        "optional": true
    57575829                                },
    57585830                                "set-blocking": {
    57595831                                        "version": "2.0.0",
    5760                                         "bundled": true,
     5832                                        "resolved": false,
     5833                                        "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
    57615834                                        "dev": true,
    57625835                                        "optional": true
    57635836                                },
    57645837                                "signal-exit": {
    57655838                                        "version": "3.0.2",
    5766                                         "bundled": true,
     5839                                        "resolved": false,
     5840                                        "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
    57675841                                        "dev": true,
    57685842                                        "optional": true
    57695843                                },
    57705844                                "string-width": {
    57715845                                        "version": "1.0.2",
    5772                                         "bundled": true,
     5846                                        "resolved": false,
     5847                                        "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
    57735848                                        "dev": true,
    57745849                                        "optional": true,
    57755850                                        "requires": {
     
    57805855                                },
    57815856                                "string_decoder": {
    57825857                                        "version": "1.1.1",
    5783                                         "bundled": true,
     5858                                        "resolved": false,
     5859                                        "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
    57845860                                        "dev": true,
    57855861                                        "optional": true,
    57865862                                        "requires": {
     
    57895865                                },
    57905866                                "strip-ansi": {
    57915867                                        "version": "3.0.1",
    5792                                         "bundled": true,
     5868                                        "resolved": false,
     5869                                        "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
    57935870                                        "dev": true,
    57945871                                        "optional": true,
    57955872                                        "requires": {
     
    57985875                                },
    57995876                                "strip-json-comments": {
    58005877                                        "version": "2.0.1",
    5801                                         "bundled": true,
     5878                                        "resolved": false,
     5879                                        "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
    58025880                                        "dev": true,
    58035881                                        "optional": true
    58045882                                },
    58055883                                "tar": {
    58065884                                        "version": "4.4.8",
    5807                                         "bundled": true,
     5885                                        "resolved": false,
     5886                                        "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==",
    58085887                                        "dev": true,
    58095888                                        "optional": true,
    58105889                                        "requires": {
     
    58195898                                },
    58205899                                "util-deprecate": {
    58215900                                        "version": "1.0.2",
    5822                                         "bundled": true,
     5901                                        "resolved": false,
     5902                                        "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
    58235903                                        "dev": true,
    58245904                                        "optional": true
    58255905                                },
    58265906                                "wide-align": {
    58275907                                        "version": "1.1.3",
    5828                                         "bundled": true,
     5908                                        "resolved": false,
     5909                                        "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
    58295910                                        "dev": true,
    58305911                                        "optional": true,
    58315912                                        "requires": {
     
    58345915                                },
    58355916                                "wrappy": {
    58365917                                        "version": "1.0.2",
    5837                                         "bundled": true,
     5918                                        "resolved": false,
     5919                                        "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
    58385920                                        "dev": true,
    58395921                                        "optional": true
    58405922                                },
    58415923                                "yallist": {
    58425924                                        "version": "3.0.3",
    5843                                         "bundled": true,
     5925                                        "resolved": false,
     5926                                        "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==",
    58445927                                        "dev": true,
    58455928                                        "optional": true
    58465929                                }
     
    60876170                        }
    60886171                },
    60896172                "handlebars": {
    6090                         "version": "4.2.0",
    6091                         "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.2.0.tgz",
    6092                         "integrity": "sha512-Kb4xn5Qh1cxAKvQnzNWZ512DhABzyFNmsaJf3OAkWNa4NkaqWcNI8Tao8Tasi0/F4JD9oyG0YxuFyvyR57d+Gw==",
     6173                        "version": "4.4.2",
     6174                        "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.2.tgz",
     6175                        "integrity": "sha512-cIv17+GhL8pHHnRJzGu2wwcthL5sb8uDKBHvZ2Dtu5s1YNt0ljbzKbamnc+gr69y7bzwQiBdr5+hOpRd5pnOdg==",
    60936176                        "dev": true,
    60946177                        "requires": {
    60956178                                "neo-async": "^2.6.0",
     
    60996182                        },
    61006183                        "dependencies": {
    61016184                                "commander": {
    6102                                         "version": "2.20.0",
    6103                                         "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz",
    6104                                         "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==",
     6185                                        "version": "2.20.1",
     6186                                        "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz",
     6187                                        "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==",
    61056188                                        "dev": true,
    61066189                                        "optional": true
    61076190                                },
     
    63996482                        "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
    64006483                        "dev": true
    64016484                },
     6485                "import-cwd": {
     6486                        "version": "2.1.0",
     6487                        "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz",
     6488                        "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=",
     6489                        "dev": true,
     6490                        "requires": {
     6491                                "import-from": "^2.1.0"
     6492                        }
     6493                },
    64026494                "import-fresh": {
    64036495                        "version": "3.1.0",
    64046496                        "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.1.0.tgz",
     
    64096501                                "resolve-from": "^4.0.0"
    64106502                        }
    64116503                },
     6504                "import-from": {
     6505                        "version": "2.1.0",
     6506                        "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz",
     6507                        "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=",
     6508                        "dev": true,
     6509                        "requires": {
     6510                                "resolve-from": "^3.0.0"
     6511                        },
     6512                        "dependencies": {
     6513                                "resolve-from": {
     6514                                        "version": "3.0.0",
     6515                                        "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
     6516                                        "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
     6517                                        "dev": true
     6518                                }
     6519                        }
     6520                },
    64126521                "import-lazy": {
    64136522                        "version": "3.1.0",
    64146523                        "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-3.1.0.tgz",
     
    76347743                                }
    76357744                        }
    76367745                },
     7746                "jsonfile": {
     7747                        "version": "4.0.0",
     7748                        "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
     7749                        "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
     7750                        "dev": true,
     7751                        "requires": {
     7752                                "graceful-fs": "^4.1.6"
     7753                        }
     7754                },
    76377755                "jsprim": {
    76387756                        "version": "1.4.1",
    76397757                        "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
     
    91079225                                "supports-color": "^5.4.0"
    91089226                        }
    91099227                },
     9228                "postcss-cli": {
     9229                        "version": "6.1.3",
     9230                        "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-6.1.3.tgz",
     9231                        "integrity": "sha512-eieqJU+OR1OFc/lQqMsDmROTJpoMZFvoAQ+82utBQ8/8qGMTfH9bBSPsTdsagYA8uvNzxHw2I2cNSSJkLAGhvw==",
     9232                        "dev": true,
     9233                        "requires": {
     9234                                "chalk": "^2.1.0",
     9235                                "chokidar": "^2.0.0",
     9236                                "dependency-graph": "^0.8.0",
     9237                                "fs-extra": "^7.0.0",
     9238                                "get-stdin": "^6.0.0",
     9239                                "globby": "^9.0.0",
     9240                                "postcss": "^7.0.0",
     9241                                "postcss-load-config": "^2.0.0",
     9242                                "postcss-reporter": "^6.0.0",
     9243                                "pretty-hrtime": "^1.0.3",
     9244                                "read-cache": "^1.0.0",
     9245                                "yargs": "^12.0.1"
     9246                        },
     9247                        "dependencies": {
     9248                                "ansi-regex": {
     9249                                        "version": "3.0.0",
     9250                                        "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
     9251                                        "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
     9252                                        "dev": true
     9253                                },
     9254                                "cliui": {
     9255                                        "version": "4.1.0",
     9256                                        "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz",
     9257                                        "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==",
     9258                                        "dev": true,
     9259                                        "requires": {
     9260                                                "string-width": "^2.1.1",
     9261                                                "strip-ansi": "^4.0.0",
     9262                                                "wrap-ansi": "^2.0.0"
     9263                                        }
     9264                                },
     9265                                "find-up": {
     9266                                        "version": "3.0.0",
     9267                                        "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
     9268                                        "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
     9269                                        "dev": true,
     9270                                        "requires": {
     9271                                                "locate-path": "^3.0.0"
     9272                                        }
     9273                                },
     9274                                "get-caller-file": {
     9275                                        "version": "1.0.3",
     9276                                        "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz",
     9277                                        "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==",
     9278                                        "dev": true
     9279                                },
     9280                                "is-fullwidth-code-point": {
     9281                                        "version": "1.0.0",
     9282                                        "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
     9283                                        "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
     9284                                        "dev": true,
     9285                                        "requires": {
     9286                                                "number-is-nan": "^1.0.0"
     9287                                        }
     9288                                },
     9289                                "locate-path": {
     9290                                        "version": "3.0.0",
     9291                                        "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
     9292                                        "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
     9293                                        "dev": true,
     9294                                        "requires": {
     9295                                                "p-locate": "^3.0.0",
     9296                                                "path-exists": "^3.0.0"
     9297                                        }
     9298                                },
     9299                                "p-limit": {
     9300                                        "version": "2.2.1",
     9301                                        "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz",
     9302                                        "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==",
     9303                                        "dev": true,
     9304                                        "requires": {
     9305                                                "p-try": "^2.0.0"
     9306                                        }
     9307                                },
     9308                                "p-locate": {
     9309                                        "version": "3.0.0",
     9310                                        "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
     9311                                        "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
     9312                                        "dev": true,
     9313                                        "requires": {
     9314                                                "p-limit": "^2.0.0"
     9315                                        }
     9316                                },
     9317                                "p-try": {
     9318                                        "version": "2.2.0",
     9319                                        "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
     9320                                        "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
     9321                                        "dev": true
     9322                                },
     9323                                "postcss": {
     9324                                        "version": "7.0.18",
     9325                                        "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz",
     9326                                        "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==",
     9327                                        "dev": true,
     9328                                        "requires": {
     9329                                                "chalk": "^2.4.2",
     9330                                                "source-map": "^0.6.1",
     9331                                                "supports-color": "^6.1.0"
     9332                                        }
     9333                                },
     9334                                "require-main-filename": {
     9335                                        "version": "1.0.1",
     9336                                        "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
     9337                                        "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=",
     9338                                        "dev": true
     9339                                },
     9340                                "strip-ansi": {
     9341                                        "version": "4.0.0",
     9342                                        "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
     9343                                        "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
     9344                                        "dev": true,
     9345                                        "requires": {
     9346                                                "ansi-regex": "^3.0.0"
     9347                                        }
     9348                                },
     9349                                "supports-color": {
     9350                                        "version": "6.1.0",
     9351                                        "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
     9352                                        "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
     9353                                        "dev": true,
     9354                                        "requires": {
     9355                                                "has-flag": "^3.0.0"
     9356                                        }
     9357                                },
     9358                                "wrap-ansi": {
     9359                                        "version": "2.1.0",
     9360                                        "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
     9361                                        "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
     9362                                        "dev": true,
     9363                                        "requires": {
     9364                                                "string-width": "^1.0.1",
     9365                                                "strip-ansi": "^3.0.1"
     9366                                        },
     9367                                        "dependencies": {
     9368                                                "ansi-regex": {
     9369                                                        "version": "2.1.1",
     9370                                                        "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
     9371                                                        "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
     9372                                                        "dev": true
     9373                                                },
     9374                                                "string-width": {
     9375                                                        "version": "1.0.2",
     9376                                                        "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
     9377                                                        "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
     9378                                                        "dev": true,
     9379                                                        "requires": {
     9380                                                                "code-point-at": "^1.0.0",
     9381                                                                "is-fullwidth-code-point": "^1.0.0",
     9382                                                                "strip-ansi": "^3.0.0"
     9383                                                        }
     9384                                                },
     9385                                                "strip-ansi": {
     9386                                                        "version": "3.0.1",
     9387                                                        "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
     9388                                                        "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
     9389                                                        "dev": true,
     9390                                                        "requires": {
     9391                                                                "ansi-regex": "^2.0.0"
     9392                                                        }
     9393                                                }
     9394                                        }
     9395                                },
     9396                                "yargs": {
     9397                                        "version": "12.0.5",
     9398                                        "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz",
     9399                                        "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==",
     9400                                        "dev": true,
     9401                                        "requires": {
     9402                                                "cliui": "^4.0.0",
     9403                                                "decamelize": "^1.2.0",
     9404                                                "find-up": "^3.0.0",
     9405                                                "get-caller-file": "^1.0.1",
     9406                                                "os-locale": "^3.0.0",
     9407                                                "require-directory": "^2.1.1",
     9408                                                "require-main-filename": "^1.0.1",
     9409                                                "set-blocking": "^2.0.0",
     9410                                                "string-width": "^2.0.0",
     9411                                                "which-module": "^2.0.0",
     9412                                                "y18n": "^3.2.1 || ^4.0.0",
     9413                                                "yargs-parser": "^11.1.1"
     9414                                        }
     9415                                },
     9416                                "yargs-parser": {
     9417                                        "version": "11.1.1",
     9418                                        "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz",
     9419                                        "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==",
     9420                                        "dev": true,
     9421                                        "requires": {
     9422                                                "camelcase": "^5.0.0",
     9423                                                "decamelize": "^1.2.0"
     9424                                        }
     9425                                }
     9426                        }
     9427                },
    91109428                "postcss-html": {
    91119429                        "version": "0.36.0",
    91129430                        "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz",
     
    91569474                                }
    91579475                        }
    91589476                },
     9477                "postcss-load-config": {
     9478                        "version": "2.1.0",
     9479                        "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.0.tgz",
     9480                        "integrity": "sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==",
     9481                        "dev": true,
     9482                        "requires": {
     9483                                "cosmiconfig": "^5.0.0",
     9484                                "import-cwd": "^2.0.0"
     9485                        }
     9486                },
    91599487                "postcss-markdown": {
    91609488                        "version": "0.36.0",
    91619489                        "resolved": "https://registry.npmjs.org/postcss-markdown/-/postcss-markdown-0.36.0.tgz",
     
    93479675                                "react-is": "^16.8.4"
    93489676                        }
    93499677                },
     9678                "pretty-hrtime": {
     9679                        "version": "1.0.3",
     9680                        "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz",
     9681                        "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=",
     9682                        "dev": true
     9683                },
    93509684                "private": {
    93519685                        "version": "0.1.8",
    93529686                        "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
     
    96449978                                "scheduler": "^0.15.0"
    96459979                        }
    96469980                },
     9981                "read-cache": {
     9982                        "version": "1.0.0",
     9983                        "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
     9984                        "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=",
     9985                        "dev": true,
     9986                        "requires": {
     9987                                "pify": "^2.3.0"
     9988                        },
     9989                        "dependencies": {
     9990                                "pify": {
     9991                                        "version": "2.3.0",
     9992                                        "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
     9993                                        "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
     9994                                        "dev": true
     9995                                }
     9996                        }
     9997                },
    96479998                "read-pkg": {
    96489999                        "version": "3.0.0",
    964910000                        "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
     
    1114511496                                }
    1114611497                        }
    1114711498                },
     11499                "stylelint-a11y": {
     11500                        "version": "1.2.1",
     11501                        "resolved": "https://registry.npmjs.org/stylelint-a11y/-/stylelint-a11y-1.2.1.tgz",
     11502                        "integrity": "sha512-yfH6ibVkfAlAt7J5ExrzpBPFCSWDTxBL9svdFZ6BfGF5hRmFgTS03x4r/rBAAaNDpgKE32CQz5qcLbgOLzuxfA==",
     11503                        "dev": true
     11504                },
    1114811505                "stylelint-config-recommended": {
    1114911506                        "version": "2.2.0",
    1115011507                        "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-2.2.0.tgz",
     
    1181812175                                "unist-util-is": "^3.0.0"
    1181912176                        }
    1182012177                },
     12178                "universalify": {
     12179                        "version": "0.1.2",
     12180                        "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
     12181                        "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
     12182                        "dev": true
     12183                },
    1182112184                "unpipe": {
    1182212185                        "version": "1.0.0",
    1182312186                        "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
  • src/wp-content/themes/twentytwenty/package.json

     
    1818                "url": "https://github.com/wordpress/twentytwenty/issues"
    1919        },
    2020        "devDependencies": {
     21                "@wordpress/browserslist-config": "^2.6.0",
    2122                "@wordpress/scripts": "^5.0.0",
     23                "autoprefixer": "^9.6.1",
    2224                "concurrently": "^4.1.2",
    23                 "rtlcss": "^2.4.0"
     25                "postcss-cli": "^6.1.3",
     26                "rtlcss": "^2.4.0",
     27                "stylelint-a11y": "^1.2.1"
    2428        },
     29        "browserslist": [
     30                "extends @wordpress/browserslist-config"
     31        ],
    2532        "rtlcssConfig": {
    2633                "options": {
    2734                        "autoRename": false,
     
    3643                "map": false
    3744        },
    3845        "scripts": {
     46                "build": "npm run build:vendor-prefixes && npm run build:rtl",
    3947                "build:rtl": "concurrently \"npm run build:rtl-style\" \"npm run build:rtl-esb\" \"npm run build:rtl-esc\"",
    4048                "build:rtl-style": "rtlcss style.css style-rtl.css",
    4149                "build:rtl-esb": "rtlcss assets/css/editor-style-block.css assets/css/editor-style-block-rtl.css",
    4250                "build:rtl-esc": "rtlcss assets/css/editor-style-classic.css assets/css/editor-style-classic-rtl.css",
     51                "build:vendor-prefixes": "concurrently \"npm run build:vendor-prefixes-style\" \"npm run build:vendor-prefixes-esb\" \"npm run build:vendor-prefixes-esc\"",
     52                "build:vendor-prefixes-style": "postcss -r --no-map style.css assets/css/editor-style-block.css assets/css/editor-style-classic.css",
     53                "build:vendor-prefixes-esb": "postcss -r --no-map assets/css/editor-style-block.css ",
     54                "build:vendor-prefixes-esc": "postcss -r --no-map assets/css/editor-style-classic.css",
    4355                "lint:css": "wp-scripts lint-style 'style.css' 'assets/**/*.css'",
    4456                "lint:js": "wp-scripts lint-js 'assets/**/*.js'",
    4557                "lint:pkg-json": "wp-scripts lint-pkg-json"
  • src/wp-content/themes/twentytwenty/readme.txt

     
    5252Copyright (c) 2013-2017 Cole Bemis
    5353License: MIT License, https://opensource.org/licenses/MIT
    5454Source: https://feathericons.com
     55Used for post meta icons, and the link icon in the social menu.
    5556
    56 Font Awesome Icons
    57 Copyright (c) 2012-2019 Fonticons, Inc.
     57Socicon Icons
    5858License: SIL Open Font License, 1.1, https://opensource.org/licenses/OFL-1.1
    59 Source: https://www.fontawesome.io
     59Source: https://www.socicon.com
     60Used for all social menu icons except the link icon.
    6061
    61 Font Awesome Code
    62 Copyright (c) 2012-2019 Fonticons, Inc.
    63 License: MIT License, https://opensource.org/licenses/MIT
    64 Source: https://www.fontawesome.io
     62Code from Twenty Nineteen
     63Copyright (c) 2018 WordPress.org
     64License: GPLv2
     65Source: https://wordpress.org/themes/twentynineteen/
     66Included as part of the following classes and functions:
     67- TwentyTwenty_SVG_Icons
     68- twentytwenty_the_theme_svg()
     69- twentytwenty_get_theme_svg()
     70- twentytwenty_nav_menu_social_icons()
     71
     72Code from Twenty Seventeen
     73Copyright (c) 2016 WordPress.org
     74License: GPLv2
     75Source: https://wordpress.org/themes/twentyseventeen/
     76Included as part of the following classes and functions:
     77- twentytwenty_unique_id()
     78 No newline at end of file
  • src/wp-content/themes/twentytwenty/searchform.php

     
    1515 * Generate a unique ID for each form and a string containing an aria-label if
    1616 * one was passed to get_search_form() in the args array.
    1717 */
    18 $unique_id  = uniqid( 'search-form-' );
    19 $aria_label = ( isset( $args['label'] ) && ! empty( $args['label'] ) ) ? 'aria-label="' . esc_attr( $args['label'] ) . '"' : '';
     18$unique_id = twentytwenty_unique_id( 'search-form-' );
     19
     20$aria_label = ! empty( $args['label'] ) ? 'aria-label="' . esc_attr( $args['label'] ) . '"' : '';
    2021?>
    2122<form role="search" <?php echo $aria_label; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped above. ?> method="get" class="search-form" action="<?php echo esc_url( home_url( '/' ) ); ?>">
    2223        <label for="<?php echo esc_attr( $unique_id ); ?>">
    23                 <span class="screen-reader-text"><?php echo _x( 'Search for:', 'label', 'twentytwenty' ); // phpcs:ignore: WordPress.Security.EscapeOutput.OutputNotEscaped -- core trusts translations ?></span>
    24                 <input type="search" id="<?php echo esc_attr( $unique_id ); ?>" class="search-field" placeholder="<?php echo esc_attr_x( 'Search &hellip;', 'placeholder', 'twentytwenty' ); ?>" value="<?php get_search_query(); ?>" name="s" />
     24                <span class="screen-reader-text"><?php _e( 'Search for:', 'twentytwenty' ); // phpcs:ignore: WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
     25                <input type="search" id="<?php echo esc_attr( $unique_id ); ?>" class="search-field" placeholder="<?php echo esc_attr_x( 'Search &hellip;', 'placeholder', 'twentytwenty' ); ?>" value="<?php echo get_search_query(); ?>" name="s" />
    2526        </label>
    2627        <input type="submit" class="search-submit" value="<?php echo esc_attr_x( 'Search', 'submit button', 'twentytwenty' ); ?>" />
    2728</form>
  • src/wp-content/themes/twentytwenty/singular.php

     
    2525                }
    2626        }
    2727
    28         get_template_part( 'template-parts/footer-menus-widgets' );
    29 
    3028        ?>
    3129
    3230</main><!-- #site-content -->
    3331
     32<?php get_template_part( 'template-parts/footer-menus-widgets' ); ?>
     33
    3434<?php get_footer(); ?>
  • src/wp-content/themes/twentytwenty/style-rtl.css

     
    117117
    118118body {
    119119        background: #f5efe0;
    120         -webkit-box-sizing: border-box;
    121         -moz-box-sizing: border-box;
    122120        box-sizing: border-box;
    123121        color: #000;
    124122        font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif;
     
    137135*,
    138136*::before,
    139137*::after {
    140         -webkit-box-sizing: inherit;
    141         -moz-box-sizing: inherit;
    142138        box-sizing: inherit;
    143139        -webkit-font-smoothing: antialiased;
    144140        word-break: break-word;
     
    178174.screen-reader-text {
    179175        border: 0;
    180176        clip: rect(1px, 1px, 1px, 1px);
     177        -webkit-clip-path: inset(50%);
    181178        clip-path: inset(50%);
    182179        height: 1px;
    183180        margin: -1px;
     
    193190        border-radius: 3px;
    194191        box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    195192        clip: auto !important;
     193        -webkit-clip-path: none;
    196194        clip-path: none;
    197195        color: #21759b;
    198196        display: block;
     
    237235
    238236/*
    239237 * Chrome renders extra-wide &nbsp; characters for the Hoefler Text font.
    240  * This results in a jumping cursor when typing in both the Classic and block
    241  * editors. The following font-face override fixes the issue by manually
     238 * This results in a jumping cursor when typing in both the classic editor and
     239 * block editor. The following font-face override fixes the issue by manually
    242240 * inserting a custom font that includes just a Hoefler Text space replacement
    243241 * for that character instead.
    244242 */
     
    711709input,
    712710textarea {
    713711        border-color: #dcd7ca;
     712        color: #000;
    714713}
    715714
    716715code,
     
    742741        border-style: solid;
    743742        border-width: 0.1rem;
    744743        box-shadow: none;
    745         color: inherit;
    746744        display: block;
    747745        font-size: 1.6rem;
    748746        letter-spacing: -0.015em;
     
    850848        line-height: 1.4;
    851849        margin: 0;
    852850        overflow: visible;
    853         padding: 2.5%;
     851        padding: 0.5em;
    854852}
    855853
    856854caption {
    857855        background: #dcd7ca;
    858856        font-weight: 600;
    859         padding: 2.5%;
     857        padding: 0.5em;
    860858        text-align: center;
    861859}
    862860
     
    10041002.no-select {
    10051003        -webkit-touch-callout: none;
    10061004        -webkit-user-select: none;
    1007         -khtml-user-select: none;
    10081005        -moz-user-select: none;
    10091006        -ms-user-select: none;
    10101007        user-select: none;
     
    11281125        opacity: 0.9;
    11291126}
    11301127
     1128.blend-mode-exclusion {
     1129        mix-blend-mode: exclusion;
     1130}
     1131
     1132.blend-mode-hue {
     1133        mix-blend-mode: hue;
     1134}
     1135
     1136.blend-mode-saturation {
     1137        mix-blend-mode: saturation;
     1138}
     1139
     1140.blend-mode-color {
     1141        mix-blend-mode: color;
     1142}
     1143
     1144.blend-mode-luminosity {
     1145        mix-blend-mode: luminosity;
     1146}
     1147
    11311148
    11321149/* Image Classes ----------------------------- */
    11331150
     
    11861203        flex-shrink: 0;
    11871204}
    11881205
     1206.search-form .search-submit:focus,
     1207.search-form .search-submit:hover {
     1208        text-decoration: none;
     1209}
     1210
    11891211
    11901212/* Social Icons ------------------------------ */
    11911213
    11921214ul.social-icons {
    11931215        display: flex;
    11941216        flex-wrap: wrap;
    1195         margin: -1rem -1rem 0 0;
     1217        margin: -0.9rem -0.9rem 0 0;
     1218        width: calc(100% + 0.9rem);
    11961219}
    11971220
    11981221ul.social-icons li {
    1199         margin: 1rem 1rem 0 0;
     1222        margin: 0.9rem 0.9rem 0 0;
    12001223}
    12011224
    12021225.social-icons a {
     
    12191242        text-decoration: none;
    12201243}
    12211244
    1222 .social-icons a::before {
    1223         content: "\e805";
    1224         display: block;
    1225         font-family: "Font Awesome 5";
    1226         font-size: 2rem;
    1227 }
    1228 
    1229 /* NON-BRAND ICONS */
    1230 
    1231 .s-icons a[href*="mailto"]::before {
    1232         content: "\f0e0";
    1233 }
    1234 
    1235 .s-icons a[href*="/feed/"]::before,
    1236 .s-icons a[href*="rss"]::before {
    1237         content: "\f09e";
    1238 }
    1239 
    1240 /* BRAND ICONS */
    1241 
    1242 .s-icons a[href*="500px.com"]::before {
    1243         content: "\f26e";
    1244         font-family: "Font Awesome 5 Brands";
    1245 }
    1246 
    1247 .s-icons a[href*="amazon.com"]::before {
    1248         content: "\f270";
    1249         font-family: "Font Awesome 5 Brands";
    1250 }
    1251 
    1252 .s-icons a[href*="angel.co"]::before {
    1253         content: "\f209";
    1254         font-family: "Font Awesome 5 Brands";
    1255 }
    1256 
    1257 .s-icons a[href*="audible.com"]::before {
    1258         content: "\f373";
    1259         font-family: "Font Awesome 5 Brands";
    1260 }
    1261 
    1262 .s-icons a[href*="behance.net"]::before {
    1263         content: "\f1b4";
    1264         font-family: "Font Awesome 5 Brands";
    1265 }
    1266 
    1267 .s-icons a[href*="blogger.com"]::before {
    1268         content: "\f37d";
    1269         font-family: "Font Awesome 5 Brands";
    1270 }
    1271 
    1272 .s-icons a[href*="codepen.io"]::before {
    1273         content: "\f1cb";
    1274         font-family: "Font Awesome 5 Brands";
    1275 }
    1276 
    1277 .s-icons a[href*="creativecommons.com"]::before {
    1278         content: "\f25e";
    1279         font-family: "Font Awesome 5 Brands";
    1280 }
    1281 
    1282 .s-icons a[href*="deviantart.com"]::before {
    1283         content: "\f1bd";
    1284         font-family: "Font Awesome 5 Brands";
    1285 }
    1286 
    1287 .s-icons a[href*="digg.com"]::before {
    1288         content: "\f1a6";
    1289         font-family: "Font Awesome 5 Brands";
    1290 }
    1291 
    1292 .s-icons a[href*="discordapp.com"]::before {
    1293         content: "\f392";
    1294         font-family: "Font Awesome 5 Brands";
    1295 }
    1296 
    1297 .s-icons a[href*="dribbble.com"]::before {
    1298         content: "\f17d";
    1299         font-family: "Font Awesome 5 Brands";
    1300 }
    1301 
    1302 .s-icons a[href*="ebay"]::before {
    1303         content: "\f4f4";
    1304         font-family: "Font Awesome 5 Brands";
    1305 }
    1306 
    1307 .s-icons a[href*="etsy.com"]::before {
    1308         content: "\f2d7";
    1309         font-family: "Font Awesome 5 Brands";
    1310 }
    1311 
    1312 .s-icons a[href*="facebook.com"]::before {
    1313         content: "\f39e";
    1314         font-family: "Font Awesome 5 Brands";
    1315 }
    1316 
    1317 .s-icons a[href*="flickr.com"]::before {
    1318         content: "\f16e";
    1319         font-family: "Font Awesome 5 Brands";
    1320 }
    1321 
    1322 .s-icons a[href*="github.com"]::before {
    1323         content: "\f113";
    1324         font-family: "Font Awesome 5 Brands";
    1325 }
    1326 
    1327 .s-icons a[href*="gitlab.com"]::before {
    1328         content: "\f296";
    1329         font-family: "Font Awesome 5 Brands";
    1330 }
    1331 
    1332 .s-icons a[href*="goodreads.com"]::before {
    1333         content: "\f3a9";
    1334         font-family: "Font Awesome 5 Brands";
    1335 }
    1336 
    1337 .s-icons a[href*="houzz"]::before {
    1338         content: "\f27c";
    1339         font-family: "Font Awesome 5 Brands";
    1340 }
    1341 
    1342 .s-icons a[href*="imdb.com"]::before {
    1343         content: "\f2d8";
    1344         font-family: "Font Awesome 5 Brands";
    1345 }
    1346 
    1347 .s-icons a[href*="instagram.com"]::before {
    1348         content: "\f16d";
    1349         font-family: "Font Awesome 5 Brands";
    1350 }
    1351 
    1352 .s-icons a[href*="kickstarter.com"]::before {
    1353         content: "\f3bc";
    1354         font-family: "Font Awesome 5 Brands";
    1355 }
    1356 
    1357 .s-icons a[href*="jsfiddle.net"]::before {
    1358         content: "\f1cc";
    1359         font-family: "Font Awesome 5 Brands";
    1360 }
    1361 
    1362 .s-icons a[href*="linkedin.com"]::before {
    1363         content: "\f0e1";
    1364         font-family: "Font Awesome 5 Brands";
    1365 }
    1366 
    1367 .s-icons a[href*="last.fm"]::before {
    1368         content: "\f202";
    1369         font-family: "Font Awesome 5 Brands";
    1370 }
    1371 
    1372 .s-icons a[href*="medium.com"]::before {
    1373         content: "\f3c7";
    1374         font-family: "Font Awesome 5 Brands";
    1375 }
    1376 
    1377 .s-icons a[href*="meetup.com"]::before {
    1378         content: "\f2e0";
    1379         font-family: "Font Awesome 5 Brands";
    1380 }
    1381 
    1382 .s-icons a[href*="mixcloud.com"]::before {
    1383         content: "\f289";
    1384         font-family: "Font Awesome 5 Brands";
    1385 }
    1386 
    1387 .s-icons a[href*="patreon.com"]::before {
    1388         content: "\f3d9";
    1389         font-family: "Font Awesome 5 Brands";
    1390 }
    1391 
    1392 .s-icons a[href*="pscp.tv"]::before {
    1393         content: "\f3da";
    1394         font-family: "Font Awesome 5 Brands";
    1395 }
    1396 
    1397 .s-icons a[href*="pinterest"]::before {
    1398         content: "\f231";
    1399         font-family: "Font Awesome 5 Brands";
    1400 }
    1401 
    1402 .s-icons a[href*="play.google.com"]::before {
    1403         content: "\f3ab";
    1404         font-family: "Font Awesome 5 Brands";
    1405 }
    1406 
    1407 .s-icons a[href*="plus.google.com"]::before {
    1408         content: "\f0d5";
    1409         font-family: "Font Awesome 5 Brands";
    1410 }
    1411 
    1412 .s-icons a[href*="producthunt.com"]::before {
    1413         content: "\f288";
    1414         font-family: "Font Awesome 5 Brands";
    1415 }
    1416 
    1417 .s-icons a[href*="quora.com"]::before {
    1418         content: "\f2c4";
    1419         font-family: "Font Awesome 5 Brands";
    1420 }
    1421 
    1422 .s-icons a[href*="reddit.com"]::before {
    1423         content: "\f281";
    1424         font-family: "Font Awesome 5 Brands";
    1425 }
    1426 
    1427 .s-icons a[href*="slack.com"]::before {
    1428         content: "\f198";
    1429         font-family: "Font Awesome 5 Brands";
    1430 }
    1431 
    1432 .s-icons a[href*="soundcloud.com"]::before {
    1433         content: "\f1be";
    1434         font-family: "Font Awesome 5 Brands";
    1435 }
    1436 
    1437 .s-icons a[href*="spotify.com"]::before {
    1438         content: "\f1bc";
    1439         font-family: "Font Awesome 5 Brands";
    1440 }
    1441 
    1442 .s-icons a[href*="tumblr.com"]::before {
    1443         content: "\f173";
    1444         font-family: "Font Awesome 5 Brands";
    1445 }
    1446 
    1447 .s-icons a[href*="twitch"]::before {
    1448         content: "\f1e8";
    1449         font-family: "Font Awesome 5 Brands";
    1450 }
    1451 
    1452 .s-icons a[href*="twitter.com"]::before {
    1453         content: "\f099";
    1454         font-family: "Font Awesome 5 Brands";
    1455 }
    1456 
    1457 .s-icons a[href*="vimeo.com"]::before {
    1458         content: "\f27d";
    1459         font-family: "Font Awesome 5 Brands";
    1460 }
    1461 
    1462 .s-icons a[href*="wordpress.org"]::before,
    1463 .s-icons a[href*="wordpress.com"]::before {
    1464         content: "\f411";
    1465         font-family: "Font Awesome 5 Brands";
    1466 }
    1467 
    1468 .s-icons a[href*="youtube.com"]::before {
    1469         content: "\f167";
    1470         font-family: "Font Awesome 5 Brands";
    1471 }
    1472 
    14731245
    14741246/* Cover Modals ------------------------------ */
    14751247
     
    16461418}
    16471419
    16481420.toggle-icon {
     1421        display: block;
    16491422        overflow: hidden;
    16501423}
    16511424
     
    16551428        font-weight: 600;
    16561429        position: absolute;
    16571430        top: calc(100% + 0.5rem);
    1658         width: 10rem;
     1431        width: auto;
     1432        white-space: nowrap;
    16591433        word-break: break-all;
    16601434}
    16611435
     
    22121986.search-modal-inner .section-inner {
    22131987        display: flex;
    22141988        justify-content: space-between;
     1989        max-width: 168rem;
    22151990}
    22161991
    22171992.search-modal.active {
     
    22582033/* Modal Search Form ------------------------- */
    22592034
    22602035.search-modal form {
     2036        margin: 0;
    22612037        position: relative;
    22622038        width: 100%;
    22632039}
     
    22702046        font-size: 2rem;
    22712047        letter-spacing: -0.0277em;
    22722048        height: 8.4rem;
    2273         padding: 0;
    2274         width: 100%;
     2049        margin: 0 -2rem 0 0;
     2050        max-width: calc(100% + 2rem);
     2051        padding: 0 2rem 0 0;
     2052        width: calc(100% + 2rem);
    22752053}
    22762054
    22772055.search-modal .search-field::-webkit-input-placeholder {
     
    23122090
    23132091.cover-header-inner-wrapper {
    23142092        display: flex;
     2093        position: relative;
    23152094        flex-direction: column;
    23162095        justify-content: flex-end;
    23172096        width: 100%;
     
    24442223
    24452224/* Posts ------------------------------------- */
    24462225
    2447 body:not(.singular) main article:first-of-type {
     2226body:not(.singular) main > article:first-of-type {
    24482227        padding: 4rem 0 0;
    24492228}
    24502229
     
    27982577        background-color: #cd2653;
    27992578}
    28002579
     2580.has-primary-color {
     2581        color: #000;
     2582}
     2583
     2584.has-primary-background-color {
     2585        background-color: #000;
     2586}
     2587
     2588.has-secondary-color {
     2589        color: #6d6d6d;
     2590}
     2591
     2592.has-secondary-background-color {
     2593        background-color: #6d6d6d;
     2594}
     2595
     2596.has-subtle-background-color {
     2597        color: #dcd7ca;
     2598}
     2599
     2600.has-subtle-background-background-color {
     2601        background-color: #dcd7ca;
     2602}
     2603
     2604.has-background-color {
     2605        color: #f5efe0;
     2606}
     2607
     2608.has-background-background-color {
     2609        background-color: #f5efe0;
     2610}
     2611
    28012612
    28022613/* Block Typography Classes ------------------ */
    28032614
     
    28872698
    28882699/* Block: Base Margins ----------------------- */
    28892700
    2890 .wp-block-archives:not(.aligncenter):not(.alignleft):not(.alignright),
    2891 .wp-block-categories:not(.aligncenter):not(.alignleft):not(.alignright),
     2701*[class*="_inner-container"] > *:first-child {
     2702        margin-top: 0;
     2703}
     2704
     2705*[class*="_inner-container"] > *:last-child {
     2706        margin-bottom: 0;
     2707}
     2708
     2709.wp-block-archives,
     2710.wp-block-categories,
    28922711.wp-block-code,
    2893 .wp-block-columns:not(.alignwide):not(.alignfull),
    2894 .wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    2895 .wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    2896 .wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    2897 .wp-block-group:not(.alignwide):not(.alignfull),
    2898 .wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright),
    2899 .wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright),
    2900 .wp-block-media-text:not(.alignwide):not(.alignfull),
     2712.wp-block-columns,
     2713.wp-block-cover,
     2714.wp-block-embed,
     2715.wp-block-gallery,
     2716.wp-block-group,
     2717.wp-block-latest-comments,
     2718.wp-block-latest-posts,
     2719.wp-block-media-text,
    29012720.wp-block-preformatted,
    2902 .wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
     2721.wp-block-pullquote,
    29032722.wp-block-quote,
    29042723.wp-block-quote.is-large,
    29052724.wp-block-quote.is-style-large,
    29062725.wp-block-verse,
    2907 .wp-block-video:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) {
     2726.wp-block-video {
    29082727        margin-bottom: 3rem;
    29092728        margin-top: 3rem;
    29102729}
    29112730
    29122731
     2732/* Block: Shared Nesting Alignment Resets ---- */
     2733
     2734[class*="__inner-container"] .wp-block-group:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright),
     2735[class*="__inner-container"] .wp-block-cover:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright) {
     2736        margin-right: auto;
     2737        margin-left: auto;
     2738        max-width: 58rem;
     2739}
     2740
     2741
    29132742/* Block: Shared Widget Styles --------------- */
    29142743
    29152744.wp-block-archives,
    29162745.wp-block-categories,
    2917 .wp-block-gallery ul,
    29182746.wp-block-latest-posts,
    29192747.wp-block-latest-comments {
    29202748        list-style: none;
     
    30192847
    30202848/* Block: Columns ---------------------------- */
    30212849
     2850.wp-block-column {
     2851        margin-bottom: 3.2rem;
     2852}
     2853
    30222854.wp-block-column > *:first-child {
    30232855        margin-top: 0;
    30242856}
     
    30292861
    30302862/* Block: Cover ------------------------------ */
    30312863
    3032 .entry-content .wp-block-cover p {
    3033         font-family: inherit;
     2864.wp-block-cover-image .wp-block-cover__inner-container,
     2865.wp-block-cover .wp-block-cover__inner-container {
     2866        width: calc(100% - 4rem);
     2867        padding: 2rem 0;
     2868}
     2869
     2870.wp-block-cover-image .wp-block-cover-image-text,
     2871.wp-block-cover-image .wp-block-cover-text,
     2872.wp-block-cover-image h2,
     2873.wp-block-cover .wp-block-cover-image-text,
     2874.wp-block-cover .wp-block-cover-text,
     2875.wp-block-cover h2 {
     2876        max-width: 100%;
     2877        padding: 0;
     2878}
     2879
     2880.wp-block-cover-image h2,
     2881.wp-block-cover h2 {
     2882        font-size: 3.2rem;
    30342883}
    30352884
    30362885/* Block: Embed ------------------------------ */
     
    30812930        margin-right: 0;
    30822931}
    30832932
    3084 /* Block: Group ------------------------------ */
     2933.wp-block-gallery ul {
     2934        list-style: none;
     2935        margin: 0 0 -1.6rem 0;
     2936}
    30852937
    3086 .wp-block-group.has-background {
    3087         padding: 2rem;
     2938figure.wp-block-gallery.alignnone,
     2939figure.wp-block-gallery.aligncenter {
     2940        margin-bottom: 3rem;
     2941        margin-top: 3rem;
    30882942}
    30892943
    3090 .wp-block-group__inner-container > *:first-child {
    3091         margin-top: 0;
     2944figure.wp-block-gallery.alignleft {
     2945        margin: 0.3rem 0 2rem 2rem;
    30922946}
    30932947
    3094 .wp-block-group__inner-container > *:last-child {
    3095         margin-bottom: 0;
     2948figure.wp-block-gallery.alignright {
     2949        margin: 0.3rem 2rem 2rem 0;
     2950}
     2951
     2952figure.wp-block-gallery.alignwide {
     2953        margin-bottom: 4rem;
     2954        margin-top: 4rem;
     2955}
     2956
     2957figure.wp-block-gallery.alignfull {
     2958        margin-bottom: 5rem;
     2959        margin-top: 5rem;
     2960}
     2961
     2962/* Block: Group ------------------------------ */
     2963
     2964.wp-block-group.has-background {
     2965        padding: 2rem;
    30962966}
    30972967
    30982968.wp-block-group__inner-container {
     
    31493019        width: 4.4rem;
    31503020}
    31513021
     3022.reduced-spacing .wp-block-pullquote::before {
     3023        border: 0.1rem solid currentColor;
     3024        font-size: 5.9rem;
     3025}
     3026
    31523027.wp-block-pullquote blockquote {
    31533028        border: none;
    31543029        margin: 0;
     
    33003175        padding: 0 0 0 2rem;
    33013176}
    33023177
    3303 /* STYLE: DEFAULT */
    3304 
    33053178/* STYLE: LARGE */
    33063179
    33073180.wp-block-quote.is-large,
     
    33133186.wp-block-quote.is-large p,
    33143187.wp-block-quote.is-style-large p {
    33153188        font-family: inherit;
     3189        font-size: 2.4rem;
    33163190        font-style: normal;
    33173191        font-weight: 700;
    3318         letter-spacing: -0.035714286em;
    3319         line-height: 1.285714286;
     3192        letter-spacing: -0.02em;
     3193        line-height: 1.285;
    33203194}
    33213195
    33223196.wp-block-quote.is-large cite,
     
    33993273        max-width: 58rem;
    34003274}
    34013275
    3402 .entry-content > * {
    3403         margin-bottom: 1.25em;
    3404 }
    3405 
    34063276.entry-content > *:first-child {
    34073277        margin-top: 0;
    34083278}
     
    34733343.alignnone,
    34743344.aligncenter,
    34753345.alignleft,
    3476 .alignright,
    3477 .alignwide,
    3478 .alignfull {
    3479         margin: 3rem 0;
    3480 }
    3481 
    3482 .alignnone,
    3483 .aligncenter,
    3484 .alignleft,
    34853346.alignright {
     3347        margin: 3rem 0;
    34863348        max-width: 100%;
    34873349}
    34883350
    3489 .alignfull {
    3490         margin: 5rem 0;
    3491         max-width: 100vw;
    3492         position: relative;
    3493         right: calc(50% - 50vw);
    3494         width: 100vw;
    3495 }
    3496 
    3497 .alignwide {
    3498         max-width: calc(100vw - 4rem);
    3499         position: relative;
    3500         right: calc(50% - 50vw + 2rem);
    3501         width: calc(100vw - 4rem);
    3502 }
    3503 
    35043351.aligncenter,
    35053352.aligncenter img {
    35063353        margin-right: auto;
     
    35133360}
    35143361
    35153362.alignleft {
    3516         float: right;
     3363        float: left;
    35173364        margin: 0.3rem 0 2rem 2rem;
    35183365}
    35193366
    35203367.alignright {
    3521         float: left;
     3368        float: right;
    35223369        margin: 0.3rem 2rem 2rem 0;
    35233370}
    35243371
     3372.alignwide {
     3373        margin: 4rem auto;
     3374        max-width: 120rem;
     3375}
     3376
     3377.entry-content > .alignwide {
     3378        max-width: calc(100vw - 4rem);
     3379        position: relative;
     3380        right: calc(50% - 50vw + 2rem);
     3381        width: calc(100vw - 4rem);
     3382}
     3383
     3384.alignfull {
     3385        margin: 5rem 0;
     3386}
     3387
     3388.entry-content > .alignfull {
     3389        max-width: 100vw;
     3390        position: relative;
     3391        right: calc(50% - 50vw);
     3392        width: 100vw;
     3393}
     3394
    35253395
    35263396/* Entry Media ------------------------------- */
    35273397
    3528 .alignfull figcaption,
    3529 .alignfull .wp-caption-text {
     3398.alignfull > figcaption,
     3399.alignfull > .wp-caption-text {
    35303400        margin-right: auto;
    35313401        margin-left: auto;
    35323402        max-width: 120rem;
     
    36433513
    36443514
    36453515/* COMMENT CONTENT */
    3646 .comment-content > *:first-child {
    3647         margin-top: 0;
    3648 }
    3649 
    3650 .comment-content > *:last-child {
    3651         margin-bottom: 0;
    3652 }
    3653 
    3654 .comment-content p,
    3655 .comment-content ol,
    3656 .comment-content ul,
    3657 .comment-content dl,
    3658 .comment-content dt {
    3659         font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif;
    3660         letter-spacing: normal;
    3661 }
    3662 
    3663 .comment-content cite,
    3664 .comment-content figcaption,
    3665 .comment-content .wp-caption-text {
    3666         font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif;
    3667 }
    3668 
    3669 @supports ( font-variation-settings: normal ) {
    3670 
    3671         .comment-content cite,
    3672         .comment-content figcaption,
    3673         .comment-content .wp-caption-text {
    3674                 font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif;
    3675         }
    3676 }
    3677 
    3678 .comment-content h1 {
    3679         font-size: 2em;
    3680 }
    3681 
    3682 .comment-content h2 {
    3683         font-size: 1.8em;
    3684 }
    3685 
    3686 .comment-content h3 {
    3687         font-size: 1.6em;
    3688 }
    36893516
    3690 .comment-content h4 {
    3691         font-size: 1.4em;
     3517.comment-content.entry-content .alignleft {
     3518        margin-right: 0;
    36923519}
    36933520
    3694 .comment-content h5 {
    3695         font-size: 1.2em;
     3521.comment-content.entry-content .alignright {
     3522        margin-left: 0;
    36963523}
    36973524
    3698 .comment-content h6 {
    3699         font-size: 1em;
     3525.comment-content.entry-content > .alignwide,
     3526.comment-content.entry-content > .alignfull {
     3527        right: auto;
     3528        max-width: 100%;
     3529        width: auto;
    37003530}
    37013531
    37023532/* COMMENT FOOTER */
     
    41824012
    41834013/* Widget: RSS ------------------------------- */
    41844014
    4185 .widget_rss .rss-widget-icon {
     4015.widget_rss a.rsswidget:first-of-type {
    41864016        display: none;
    41874017}
    41884018
     
    42394069.footer-nav-widgets-wrapper,
    42404070#site-footer {
    42414071        background-color: #fff;
     4072        border-color: #dedfdf;
     4073        border-style: solid;
     4074        border-width: 0;
    42424075}
    42434076
    42444077.footer-top-visible .footer-nav-widgets-wrapper,
     
    42484081
    42494082.reduced-spacing.footer-top-visible .footer-nav-widgets-wrapper,
    42504083.reduced-spacing.footer-top-hidden #site-footer {
    4251         border-top: 0.1rem solid #dedfdf;
     4084        border-top-width: 0.1rem;
    42524085}
    42534086
    42544087.footer-top,
     
    42914124/* FOOTER SOCIAL */
    42924125
    42934126.footer-social-wrapper {
     4127        margin: 0;
     4128        width: 100%;
     4129}
     4130
     4131.has-footer-menu .footer-social-wrapper {
    42944132        flex-shrink: 0;
    42954133        margin-right: 1rem;
    42964134        width: 50%;
     
    42984136
    42994137ul.footer-social {
    43004138        margin: -0.5rem -0.5rem 0 0;
     4139}
     4140
     4141.has-footer-menu .footer-social {
    43014142        justify-content: flex-end;
    43024143}
    43034144
     
    43824223
    43834224@media ( max-width: 479px ) {
    43844225
    4385         /* Lists ------------------------------------- */
     4226        /* Blocks -------------------------------- */
     4227
     4228        .wp-block-pullquote.alignleft,
     4229        .wp-block-pullquote.alignright {
     4230                float: none;
     4231                margin: 3rem 0;
     4232        }
     4233
     4234        .wp-block-pullquote.alignleft:first-child,
     4235        .wp-block-pullquote.alignright:first-child {
     4236                margin-top: 0;
     4237        }
     4238
     4239        .wp-block-pullquote.alignleft:last-child,
     4240        .wp-block-pullquote.alignright:last-child {
     4241                margin-bottom: 0;
     4242        }
     4243
     4244        /* Entry Content ------------------------- */
     4245
     4246        /* LISTS */
    43864247
    43874248        ul,
    43884249        ol {
     
    44214282        .alignright {
    44224283                max-width: 26rem;
    44234284        }
     4285}
    44244286
    4425         .alignleft {
    4426                 float: right;
     4287@media ( max-width: 599px ) {
     4288
     4289        /* Blocks -------------------------------- */
     4290
     4291        /* BLOCK: COLUMNS */
     4292
     4293        /* While columns are stacked */
     4294        .wp-block-column:last-child {
     4295                margin-bottom: 0;
    44274296        }
    44284297
    4429         .alignright {
    4430                 float: left;
     4298        .wp-block-columns + .wp-block-columns {
     4299                margin-top: 0.2rem;
     4300        }
     4301
     4302        .wp-block-columns.alignwide + .wp-block-columns.alignwide {
     4303                margin-top: -0.8rem;
     4304        }
     4305
     4306        .wp-block-columns.alignfull + .wp-block-columns.alignfull {
     4307                margin-top: -1.8rem;
     4308        }
     4309
     4310}
     4311
     4312@media ( min-width: 600px ) {
     4313
     4314        /* Blocks -------------------------------- */
     4315
     4316        /* BLOCK: COLUMNS */
     4317
     4318        .wp-block-columns.alignwide + .wp-block-columns.alignwide,
     4319        .wp-block-columns.alignfull + .wp-block-columns.alignfull {
     4320                margin-top: -4rem;
     4321        }
     4322
     4323}
     4324
     4325@media ( max-width: 599px ) {
     4326
     4327        /* Blocks -------------------------------- */
     4328
     4329        /* BLOCK: COLUMNS */
     4330
     4331        .alignfull .wp-block-column > p:not(.has-background-color),
     4332        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     4333                max-width: calc(100% - 4rem);
     4334                margin: auto;
     4335        }
     4336}
     4337
     4338@media ( min-width: 600px ) {
     4339
     4340        /* Blocks -------------------------------- */
     4341
     4342        /* BLOCK: COLUMNS */
     4343
     4344        .alignfull .wp-block-column:nth-child(odd) > p:not(.has-background-color),
     4345        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     4346                padding-right: 2rem;
     4347        }
     4348
     4349        .alignfull .wp-block-column:nth-child(even) > p:not(.has-background-color),
     4350        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     4351                padding-left: 2rem;
    44314352        }
    44324353}
    44334354
    44344355@media ( min-width: 660px ) {
    44354356
    4436         /* Entry Content ------------------------- */
     4357        /* Blocks -------------------------------- */
    44374358
    4438         /* ALIGNMENT CLASSES */
     4359        /* BLOCK: GALLERY */
    44394360
    4440         .entry-content > .alignleft,
    4441         .entry-content > p .alignleft,
    4442         .entry-content > .wp-block-image .alignleft {
     4361        figure.wp-block-gallery.alignleft {
     4362                margin-left: calc(( 100vw - 58rem - 8rem ) / -2);
     4363        }
     4364
     4365        figure.wp-block-gallery.alignright {
    44434366                margin-right: calc(( 100vw - 58rem - 8rem ) / -2);
    44444367        }
    44454368
    4446         .entry-content > .alignright,
    4447         .entry-content > p .alignright,
    4448         .entry-content > .wp-block-image .alignright {
     4369        /* Entry Content ------------------------- */
     4370
     4371        /* ALIGNMENT CLASSES */
     4372
     4373        .entry-content .alignleft {
    44494374                margin-left: calc(( 100vw - 58rem - 8rem ) / -2);
    44504375        }
    44514376
     4377        .entry-content .alignright {
     4378                margin-right: calc(( 100vw - 58rem - 8rem ) / -2);
     4379        }
     4380
    44524381}
    44534382
    44544383@media ( min-width: 700px ) {
     
    46604589        }
    46614590
    46624591        .modal-menu ul li {
    4663                 border-right-width: 0;
    4664         }
    4665 
    4666         .modal-menu ul a {
    4667                 padding-right: 2.5rem;
    4668         }
    4669 
    4670         .modal-menu ul ul a {
    4671                 padding-right: 5rem;
    4672         }
    4673 
    4674         .modal-menu ul ul ul a {
    4675                 padding-right: 7.5rem;
    4676         }
    4677 
    4678         .modal-menu ul ul ul ul a {
    4679                 padding-right: 10rem;
     4592                border-right-color: transparent;
    46804593        }
    46814594
    46824595        .modal-menu > li > .ancestor-wrapper > button.sub-menu-toggle {
     
    47654678                font-size: 3.2rem;
    47664679        }
    47674680
    4768         body:not(.singular) main article:first-of-type {
     4681        body:not(.singular) main > article:first-of-type {
    47694682                padding: 8rem 0 0;
    47704683        }
    47714684
     
    49064819
    49074820        /* BLOCK: BASE MARGINS */
    49084821
    4909         .wp-block-archives:not(.aligncenter):not(.alignleft):not(.alignright),
    4910         .wp-block-categories:not(.aligncenter):not(.alignleft):not(.alignright),
     4822        .wp-block-archives,
     4823        .wp-block-categories,
    49114824        .wp-block-code,
    4912         .wp-block-columns:not(.alignwide):not(.alignfull),
    4913         .wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    4914         .wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    4915         .wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    4916         .wp-block-group:not(.alignwide):not(.alignfull),
    4917         .wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright),
    4918         .wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright),
    4919         .wp-block-media-text:not(.alignwide):not(.alignfull),
     4825        .wp-block-columns,
     4826        .wp-block-cover,
     4827        .wp-block-embed,
     4828        .wp-block-gallery,
     4829        .wp-block-group,
     4830        .wp-block-latest-comments,
     4831        .wp-block-latest-posts,
     4832        .wp-block-media-text,
    49204833        .wp-block-preformatted,
    4921         .wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
     4834        .wp-block-pullquote,
    49224835        .wp-block-quote,
    49234836        .wp-block-quote.is-large,
    49244837        .wp-block-quote.is-style-large,
    49254838        .wp-block-verse,
    4926         .wp-block-video:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) {
     4839        .wp-block-video {
    49274840                margin-bottom: 5rem;
    49284841                margin-top: 5rem;
    49294842        }
     
    49324845
    49334846        .wp-block-columns.alignwide + .wp-block-columns.alignwide,
    49344847        .wp-block-columns.alignfull + .wp-block-columns.alignfull {
    4935                 margin-top: -2rem;
     4848                margin-top: -6rem;
    49364849        }
    49374850
    49384851        .entry-content .wp-block-columns h1,
     
    49444857                margin: 3.5rem 0 2rem;
    49454858        }
    49464859
     4860        /* BLOCK: COVER */
     4861
     4862        .wp-block-cover-image .wp-block-cover__inner-container,
     4863        .wp-block-cover .wp-block-cover__inner-container {
     4864                width: calc(100% - 8rem);
     4865        }
     4866
     4867        .wp-block-cover-image h2,
     4868        .wp-block-cover h2 {
     4869                font-size: 4.8rem;
     4870        }
     4871
     4872        /* BLOCK: GALLERY */
     4873
     4874        figure.wp-block-gallery.alignnone,
     4875        figure.wp-block-gallery.aligncenter {
     4876                margin-bottom: 4rem;
     4877                margin-top: 4rem;
     4878        }
     4879
     4880        figure.wp-block-gallery.alignwide,
     4881        figure.wp-block-gallery.alignfull {
     4882                margin-bottom: 6rem;
     4883                margin-top: 6rem;
     4884        }
     4885
    49474886        /* BLOCK: GROUP */
    49484887
    49494888        .wp-block-group.has-background {
     
    50034942                font-size: 2.6rem;
    50044943        }
    50054944
     4945        /* BLOCK: QUOTE */
     4946
     4947        .wp-block-quote.is-large p,
     4948        .wp-block-quote.is-style-large p {
     4949                font-size: 2.8rem;
     4950        }
     4951
    50064952        /* BLOCK: SEPARATOR */
    50074953
    50084954        hr.wp-block-separator {
     
    50524998                margin-top: 6rem;
    50534999        }
    50545000
    5055         .alignwide {
     5001        .entry-content > .alignwide {
    50565002                max-width: calc(100vw - 8rem);
    50575003                right: calc(50% - 50vw + 4rem);
    50585004                width: calc(100vw - 8rem);
     
    50605006
    50615007        /* ENTRY MEDIA */
    50625008
    5063         .alignfull figcaption,
    5064         .alignfull .wp-caption-text {
     5009        .alignfull > figcaption,
     5010        .alignfull > .wp-caption-text {
    50655011                width: calc(100% - 8rem);
    50665012        }
    50675013
     
    50895035                padding-top: 5rem;
    50905036        }
    50915037
    5092         .comment-content {
    5093                 font-size: 2.1rem;
    5094         }
    5095 
    50965038        div.comment:first-of-type {
    50975039                margin-top: 5rem;
    50985040        }
     
    52215163                margin: 0.8rem 1.6rem 0 0;
    52225164        }
    52235165
    5224         .footer-social-wrapper {
     5166        .has-footer-menu .footer-social-wrapper {
     5167                flex: 1;
    52255168                margin-right: 4rem;
    52265169                width: auto;
    52275170        }
     
    52875230
    52885231}
    52895232
     5233@media (min-width: 782px) {
     5234
     5235        /* Blocks -------------------------------- */
     5236
     5237        /* BLOCK: COLUMNS */
     5238
     5239        .alignfull .wp-block-column:first-child > p,
     5240        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     5241                padding-right: 2rem;
     5242        }
     5243
     5244        .alignfull .wp-block-column:last-child > p,
     5245        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     5246                padding-left: 2rem;
     5247        }
     5248}
     5249
    52905250@media ( min-width: 1000px ) {
    52915251
    52925252
     
    54115371                width: auto;
    54125372        }
    54135373
     5374        .header-toggles:only-child .nav-toggle .toggle-inner {
     5375                padding-top: 0;
     5376        }
     5377
     5378        .header-toggles:only-child .toggle-inner {
     5379                display: flex;
     5380                flex-wrap: nowrap;
     5381                align-items: center;
     5382        }
     5383
     5384        .header-toggles:only-child .toggle-inner .svg-icon {
     5385                order: 1;
     5386        }
     5387
     5388        .header-toggles:only-child .toggle-inner .toggle-text {
     5389                position: static;
     5390                padding-left: 20px;
     5391                font-size: 15px;
     5392                color: inherit;
     5393        }
     5394
    54145395        /* Menu Modal ---------------------------- */
    54155396
    54165397        .menu-modal {
     
    54885469
    54895470        .wp-block-columns.alignwide + .wp-block-columns.alignwide,
    54905471        .wp-block-columns.alignfull + .wp-block-columns.alignfull {
    5491                 margin-top: -4rem;
     5472                margin-top: -5.2rem;
     5473        }
     5474
     5475        /* BLOCK: GALLERY */
     5476
     5477        figure.wp-block-gallery.alignwide,
     5478        figure.wp-block-gallery.alignfull {
     5479                margin-bottom: 8rem;
     5480                margin-top: 8rem;
    54925481        }
    54935482
    54945483        /* BLOCK: GROUP */
     
    55165505
    55175506        /* ENTRY MEDIA */
    55185507
    5519         .alignfull figcaption,
    5520         .alignfull .wp-caption-text {
     5508        .alignfull > figcaption,
     5509        .alignfull > .wp-caption-text {
    55215510                width: calc(100% - 10rem);
    55225511        }
    55235512
     
    56495638                margin-top: -6rem;
    56505639        }
    56515640
     5641        /* BLOCK: GALLERY */
     5642
     5643        figure.wp-block-gallery.alignfull {
     5644                margin-bottom: 10rem;
     5645                margin-top: 10rem;
     5646        }
     5647
    56525648        /* BLOCK: GROUP */
    56535649
    56545650        .wp-block-group.alignwide.has-background,
     
    57525748
    57535749        /* Blocks -------------------------------- */
    57545750
     5751        /* BLOCK: GALLERY */
     5752
     5753        figure.wp-block-gallery.alignleft {
     5754                margin-left: -31rem;
     5755        }
     5756
     5757        figure.wp-block-gallery.alignright {
     5758                margin-right: -31rem;
     5759        }
     5760
    57555761        /* BLOCK: SEPARATOR */
    57565762
    57575763        .wp-block-separator.is-style-wide {
     
    57645770
    57655771        /* ALIGNMENT CLASSES */
    57665772
    5767         .entry-content > .alignleft,
    5768         .entry-content > p .alignleft,
    5769         .entry-content > .wp-block-image .alignleft {
    5770                 margin-right: -31rem;
     5773        .entry-content .alignleft {
     5774                margin-left: -31rem;
    57715775        }
    57725776
    5773         .entry-content > .alignright,
    5774         .entry-content > p .alignright,
    5775         .entry-content > .wp-block-image .alignright {
    5776                 margin-left: -31rem;
     5777        .entry-content .alignright {
     5778                margin-right: -31rem;
    57775779        }
    57785780
    5779         .alignwide {
     5781        .entry-content > .alignwide {
    57805782                max-width: 120rem;
    57815783                right: calc(50% - 60rem);
    57825784                width: 120rem;
  • src/wp-content/themes/twentytwenty/style.css

     
    117117
    118118body {
    119119        background: #f5efe0;
    120         -webkit-box-sizing: border-box;
    121         -moz-box-sizing: border-box;
    122120        box-sizing: border-box;
    123121        color: #000;
    124122        font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif;
     
    137135*,
    138136*::before,
    139137*::after {
    140         -webkit-box-sizing: inherit;
    141         -moz-box-sizing: inherit;
    142138        box-sizing: inherit;
    143139        -webkit-font-smoothing: antialiased;
    144140        word-break: break-word;
     
    178174.screen-reader-text {
    179175        border: 0;
    180176        clip: rect(1px, 1px, 1px, 1px);
     177        -webkit-clip-path: inset(50%);
    181178        clip-path: inset(50%);
    182179        height: 1px;
    183180        margin: -1px;
     
    193190        border-radius: 3px;
    194191        box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    195192        clip: auto !important;
     193        -webkit-clip-path: none;
    196194        clip-path: none;
    197195        color: #21759b;
    198196        display: block;
     
    237235
    238236/*
    239237 * Chrome renders extra-wide &nbsp; characters for the Hoefler Text font.
    240  * This results in a jumping cursor when typing in both the Classic and block
    241  * editors. The following font-face override fixes the issue by manually
     238 * This results in a jumping cursor when typing in both the classic editor and
     239 * block editor. The following font-face override fixes the issue by manually
    242240 * inserting a custom font that includes just a Hoefler Text space replacement
    243241 * for that character instead.
    244242 */
     
    711709input,
    712710textarea {
    713711        border-color: #dcd7ca;
     712        color: #000;
    714713}
    715714
    716715code,
     
    744743        border-style: solid;
    745744        border-width: 0.1rem;
    746745        box-shadow: none;
    747         color: inherit;
    748746        display: block;
    749747        font-size: 1.6rem;
    750748        letter-spacing: -0.015em;
     
    852850        line-height: 1.4;
    853851        margin: 0;
    854852        overflow: visible;
    855         padding: 2.5%;
     853        padding: 0.5em;
    856854}
    857855
    858856caption {
    859857        background: #dcd7ca;
    860858        font-weight: 600;
    861         padding: 2.5%;
     859        padding: 0.5em;
    862860        text-align: center;
    863861}
    864862
     
    10061004.no-select {
    10071005        -webkit-touch-callout: none;
    10081006        -webkit-user-select: none;
    1009         -khtml-user-select: none;
    10101007        -moz-user-select: none;
    10111008        -ms-user-select: none;
    10121009        user-select: none;
     
    11301127        opacity: 0.9;
    11311128}
    11321129
     1130.blend-mode-exclusion {
     1131        mix-blend-mode: exclusion;
     1132}
     1133
     1134.blend-mode-hue {
     1135        mix-blend-mode: hue;
     1136}
     1137
     1138.blend-mode-saturation {
     1139        mix-blend-mode: saturation;
     1140}
     1141
     1142.blend-mode-color {
     1143        mix-blend-mode: color;
     1144}
     1145
     1146.blend-mode-luminosity {
     1147        mix-blend-mode: luminosity;
     1148}
     1149
    11331150
    11341151/* Image Classes ----------------------------- */
    11351152
     
    11881205        flex-shrink: 0;
    11891206}
    11901207
     1208.search-form .search-submit:focus,
     1209.search-form .search-submit:hover {
     1210        text-decoration: none;
     1211}
     1212
    11911213
    11921214/* Social Icons ------------------------------ */
    11931215
    11941216ul.social-icons {
    11951217        display: flex;
    11961218        flex-wrap: wrap;
    1197         margin: -1rem 0 0 -1rem;
     1219        margin: -0.9rem 0 0 -0.9rem;
     1220        width: calc(100% + 0.9rem);
    11981221}
    11991222
    12001223ul.social-icons li {
    1201         margin: 1rem 0 0 1rem;
     1224        margin: 0.9rem 0 0 0.9rem;
    12021225}
    12031226
    12041227.social-icons a {
     
    12211244        text-decoration: none;
    12221245}
    12231246
    1224 .social-icons a::before {
    1225         content: "\e805";
    1226         display: block;
    1227         font-family: "Font Awesome 5";
    1228         font-size: 2rem;
    1229 }
    1230 
    1231 /* NON-BRAND ICONS */
    1232 
    1233 .s-icons a[href*="mailto"]::before {
    1234         content: "\f0e0";
    1235 }
    1236 
    1237 .s-icons a[href*="/feed/"]::before,
    1238 .s-icons a[href*="rss"]::before {
    1239         content: "\f09e";
    1240 }
    1241 
    1242 /* BRAND ICONS */
    1243 
    1244 .s-icons a[href*="500px.com"]::before {
    1245         content: "\f26e";
    1246         font-family: "Font Awesome 5 Brands";
    1247 }
    1248 
    1249 .s-icons a[href*="amazon.com"]::before {
    1250         content: "\f270";
    1251         font-family: "Font Awesome 5 Brands";
    1252 }
    1253 
    1254 .s-icons a[href*="angel.co"]::before {
    1255         content: "\f209";
    1256         font-family: "Font Awesome 5 Brands";
    1257 }
    1258 
    1259 .s-icons a[href*="audible.com"]::before {
    1260         content: "\f373";
    1261         font-family: "Font Awesome 5 Brands";
    1262 }
    1263 
    1264 .s-icons a[href*="behance.net"]::before {
    1265         content: "\f1b4";
    1266         font-family: "Font Awesome 5 Brands";
    1267 }
    1268 
    1269 .s-icons a[href*="blogger.com"]::before {
    1270         content: "\f37d";
    1271         font-family: "Font Awesome 5 Brands";
    1272 }
    1273 
    1274 .s-icons a[href*="codepen.io"]::before {
    1275         content: "\f1cb";
    1276         font-family: "Font Awesome 5 Brands";
    1277 }
    1278 
    1279 .s-icons a[href*="creativecommons.com"]::before {
    1280         content: "\f25e";
    1281         font-family: "Font Awesome 5 Brands";
    1282 }
    1283 
    1284 .s-icons a[href*="deviantart.com"]::before {
    1285         content: "\f1bd";
    1286         font-family: "Font Awesome 5 Brands";
    1287 }
    1288 
    1289 .s-icons a[href*="digg.com"]::before {
    1290         content: "\f1a6";
    1291         font-family: "Font Awesome 5 Brands";
    1292 }
    1293 
    1294 .s-icons a[href*="discordapp.com"]::before {
    1295         content: "\f392";
    1296         font-family: "Font Awesome 5 Brands";
    1297 }
    1298 
    1299 .s-icons a[href*="dribbble.com"]::before {
    1300         content: "\f17d";
    1301         font-family: "Font Awesome 5 Brands";
    1302 }
    1303 
    1304 .s-icons a[href*="ebay"]::before {
    1305         content: "\f4f4";
    1306         font-family: "Font Awesome 5 Brands";
    1307 }
    1308 
    1309 .s-icons a[href*="etsy.com"]::before {
    1310         content: "\f2d7";
    1311         font-family: "Font Awesome 5 Brands";
    1312 }
    1313 
    1314 .s-icons a[href*="facebook.com"]::before {
    1315         content: "\f39e";
    1316         font-family: "Font Awesome 5 Brands";
    1317 }
    1318 
    1319 .s-icons a[href*="flickr.com"]::before {
    1320         content: "\f16e";
    1321         font-family: "Font Awesome 5 Brands";
    1322 }
    1323 
    1324 .s-icons a[href*="github.com"]::before {
    1325         content: "\f113";
    1326         font-family: "Font Awesome 5 Brands";
    1327 }
    1328 
    1329 .s-icons a[href*="gitlab.com"]::before {
    1330         content: "\f296";
    1331         font-family: "Font Awesome 5 Brands";
    1332 }
    1333 
    1334 .s-icons a[href*="goodreads.com"]::before {
    1335         content: "\f3a9";
    1336         font-family: "Font Awesome 5 Brands";
    1337 }
    1338 
    1339 .s-icons a[href*="houzz"]::before {
    1340         content: "\f27c";
    1341         font-family: "Font Awesome 5 Brands";
    1342 }
    1343 
    1344 .s-icons a[href*="imdb.com"]::before {
    1345         content: "\f2d8";
    1346         font-family: "Font Awesome 5 Brands";
    1347 }
    1348 
    1349 .s-icons a[href*="instagram.com"]::before {
    1350         content: "\f16d";
    1351         font-family: "Font Awesome 5 Brands";
    1352 }
    1353 
    1354 .s-icons a[href*="kickstarter.com"]::before {
    1355         content: "\f3bc";
    1356         font-family: "Font Awesome 5 Brands";
    1357 }
    1358 
    1359 .s-icons a[href*="jsfiddle.net"]::before {
    1360         content: "\f1cc";
    1361         font-family: "Font Awesome 5 Brands";
    1362 }
    1363 
    1364 .s-icons a[href*="linkedin.com"]::before {
    1365         content: "\f0e1";
    1366         font-family: "Font Awesome 5 Brands";
    1367 }
    1368 
    1369 .s-icons a[href*="last.fm"]::before {
    1370         content: "\f202";
    1371         font-family: "Font Awesome 5 Brands";
    1372 }
    1373 
    1374 .s-icons a[href*="medium.com"]::before {
    1375         content: "\f3c7";
    1376         font-family: "Font Awesome 5 Brands";
    1377 }
    1378 
    1379 .s-icons a[href*="meetup.com"]::before {
    1380         content: "\f2e0";
    1381         font-family: "Font Awesome 5 Brands";
    1382 }
    1383 
    1384 .s-icons a[href*="mixcloud.com"]::before {
    1385         content: "\f289";
    1386         font-family: "Font Awesome 5 Brands";
    1387 }
    1388 
    1389 .s-icons a[href*="patreon.com"]::before {
    1390         content: "\f3d9";
    1391         font-family: "Font Awesome 5 Brands";
    1392 }
    1393 
    1394 .s-icons a[href*="pscp.tv"]::before {
    1395         content: "\f3da";
    1396         font-family: "Font Awesome 5 Brands";
    1397 }
    1398 
    1399 .s-icons a[href*="pinterest"]::before {
    1400         content: "\f231";
    1401         font-family: "Font Awesome 5 Brands";
    1402 }
    1403 
    1404 .s-icons a[href*="play.google.com"]::before {
    1405         content: "\f3ab";
    1406         font-family: "Font Awesome 5 Brands";
    1407 }
    1408 
    1409 .s-icons a[href*="plus.google.com"]::before {
    1410         content: "\f0d5";
    1411         font-family: "Font Awesome 5 Brands";
    1412 }
    1413 
    1414 .s-icons a[href*="producthunt.com"]::before {
    1415         content: "\f288";
    1416         font-family: "Font Awesome 5 Brands";
    1417 }
    1418 
    1419 .s-icons a[href*="quora.com"]::before {
    1420         content: "\f2c4";
    1421         font-family: "Font Awesome 5 Brands";
    1422 }
    1423 
    1424 .s-icons a[href*="reddit.com"]::before {
    1425         content: "\f281";
    1426         font-family: "Font Awesome 5 Brands";
    1427 }
    1428 
    1429 .s-icons a[href*="slack.com"]::before {
    1430         content: "\f198";
    1431         font-family: "Font Awesome 5 Brands";
    1432 }
    1433 
    1434 .s-icons a[href*="soundcloud.com"]::before {
    1435         content: "\f1be";
    1436         font-family: "Font Awesome 5 Brands";
    1437 }
    1438 
    1439 .s-icons a[href*="spotify.com"]::before {
    1440         content: "\f1bc";
    1441         font-family: "Font Awesome 5 Brands";
    1442 }
    1443 
    1444 .s-icons a[href*="tumblr.com"]::before {
    1445         content: "\f173";
    1446         font-family: "Font Awesome 5 Brands";
    1447 }
    1448 
    1449 .s-icons a[href*="twitch"]::before {
    1450         content: "\f1e8";
    1451         font-family: "Font Awesome 5 Brands";
    1452 }
    1453 
    1454 .s-icons a[href*="twitter.com"]::before {
    1455         content: "\f099";
    1456         font-family: "Font Awesome 5 Brands";
    1457 }
    1458 
    1459 .s-icons a[href*="vimeo.com"]::before {
    1460         content: "\f27d";
    1461         font-family: "Font Awesome 5 Brands";
    1462 }
    1463 
    1464 .s-icons a[href*="wordpress.org"]::before,
    1465 .s-icons a[href*="wordpress.com"]::before {
    1466         content: "\f411";
    1467         font-family: "Font Awesome 5 Brands";
    1468 }
    1469 
    1470 .s-icons a[href*="youtube.com"]::before {
    1471         content: "\f167";
    1472         font-family: "Font Awesome 5 Brands";
    1473 }
    1474 
    14751247
    14761248/* Cover Modals ------------------------------ */
    14771249
     
    16481420}
    16491421
    16501422.toggle-icon {
     1423        display: block;
    16511424        overflow: hidden;
    16521425}
    16531426
     
    16571430        font-weight: 600;
    16581431        position: absolute;
    16591432        top: calc(100% + 0.5rem);
    1660         width: 10rem;
     1433        width: auto;
     1434        white-space: nowrap;
    16611435        word-break: break-all;
    16621436}
    16631437
     
    22141988.search-modal-inner .section-inner {
    22151989        display: flex;
    22161990        justify-content: space-between;
     1991        max-width: 168rem;
    22171992}
    22181993
    22191994.search-modal.active {
     
    22602035/* Modal Search Form ------------------------- */
    22612036
    22622037.search-modal form {
     2038        margin: 0;
    22632039        position: relative;
    22642040        width: 100%;
    22652041}
     
    22722048        font-size: 2rem;
    22732049        letter-spacing: -0.0277em;
    22742050        height: 8.4rem;
    2275         padding: 0;
    2276         width: 100%;
     2051        margin: 0 0 0 -2rem;
     2052        max-width: calc(100% + 2rem);
     2053        padding: 0 0 0 2rem;
     2054        width: calc(100% + 2rem);
    22772055}
    22782056
    22792057.search-modal .search-field::-webkit-input-placeholder {
     
    23142092
    23152093.cover-header-inner-wrapper {
    23162094        display: flex;
     2095        position: relative;
    23172096        flex-direction: column;
    23182097        justify-content: flex-end;
    23192098        width: 100%;
     
    24462225
    24472226/* Posts ------------------------------------- */
    24482227
    2449 body:not(.singular) main article:first-of-type {
     2228body:not(.singular) main > article:first-of-type {
    24502229        padding: 4rem 0 0;
    24512230}
    24522231
     
    28002579        background-color: #cd2653;
    28012580}
    28022581
     2582.has-primary-color {
     2583        color: #000;
     2584}
     2585
     2586.has-primary-background-color {
     2587        background-color: #000;
     2588}
     2589
     2590.has-secondary-color {
     2591        color: #6d6d6d;
     2592}
     2593
     2594.has-secondary-background-color {
     2595        background-color: #6d6d6d;
     2596}
     2597
     2598.has-subtle-background-color {
     2599        color: #dcd7ca;
     2600}
     2601
     2602.has-subtle-background-background-color {
     2603        background-color: #dcd7ca;
     2604}
     2605
     2606.has-background-color {
     2607        color: #f5efe0;
     2608}
     2609
     2610.has-background-background-color {
     2611        background-color: #f5efe0;
     2612}
     2613
    28032614
    28042615/* Block Typography Classes ------------------ */
    28052616
     
    28892700
    28902701/* Block: Base Margins ----------------------- */
    28912702
    2892 .wp-block-archives:not(.aligncenter):not(.alignleft):not(.alignright),
    2893 .wp-block-categories:not(.aligncenter):not(.alignleft):not(.alignright),
     2703*[class*="_inner-container"] > *:first-child {
     2704        margin-top: 0;
     2705}
     2706
     2707*[class*="_inner-container"] > *:last-child {
     2708        margin-bottom: 0;
     2709}
     2710
     2711.wp-block-archives,
     2712.wp-block-categories,
    28942713.wp-block-code,
    2895 .wp-block-columns:not(.alignwide):not(.alignfull),
    2896 .wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    2897 .wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    2898 .wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    2899 .wp-block-group:not(.alignwide):not(.alignfull),
    2900 .wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright),
    2901 .wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright),
    2902 .wp-block-media-text:not(.alignwide):not(.alignfull),
     2714.wp-block-columns,
     2715.wp-block-cover,
     2716.wp-block-embed,
     2717.wp-block-gallery,
     2718.wp-block-group,
     2719.wp-block-latest-comments,
     2720.wp-block-latest-posts,
     2721.wp-block-media-text,
    29032722.wp-block-preformatted,
    2904 .wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
     2723.wp-block-pullquote,
    29052724.wp-block-quote,
    29062725.wp-block-quote.is-large,
    29072726.wp-block-quote.is-style-large,
    29082727.wp-block-verse,
    2909 .wp-block-video:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) {
     2728.wp-block-video {
    29102729        margin-bottom: 3rem;
    29112730        margin-top: 3rem;
    29122731}
    29132732
    29142733
     2734/* Block: Shared Nesting Alignment Resets ---- */
     2735
     2736[class*="__inner-container"] .wp-block-group:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright),
     2737[class*="__inner-container"] .wp-block-cover:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright) {
     2738        margin-left: auto;
     2739        margin-right: auto;
     2740        max-width: 58rem;
     2741}
     2742
     2743
    29152744/* Block: Shared Widget Styles --------------- */
    29162745
    29172746.wp-block-archives,
    29182747.wp-block-categories,
    2919 .wp-block-gallery ul,
    29202748.wp-block-latest-posts,
    29212749.wp-block-latest-comments {
    29222750        list-style: none;
     
    30212849
    30222850/* Block: Columns ---------------------------- */
    30232851
     2852.wp-block-column {
     2853        margin-bottom: 3.2rem;
     2854}
     2855
    30242856.wp-block-column > *:first-child {
    30252857        margin-top: 0;
    30262858}
     
    30312863
    30322864/* Block: Cover ------------------------------ */
    30332865
    3034 .entry-content .wp-block-cover p {
    3035         font-family: inherit;
     2866.wp-block-cover-image .wp-block-cover__inner-container,
     2867.wp-block-cover .wp-block-cover__inner-container {
     2868        width: calc(100% - 4rem);
     2869        padding: 2rem 0;
     2870}
     2871
     2872.wp-block-cover-image .wp-block-cover-image-text,
     2873.wp-block-cover-image .wp-block-cover-text,
     2874.wp-block-cover-image h2,
     2875.wp-block-cover .wp-block-cover-image-text,
     2876.wp-block-cover .wp-block-cover-text,
     2877.wp-block-cover h2 {
     2878        max-width: 100%;
     2879        padding: 0;
     2880}
     2881
     2882.wp-block-cover-image h2,
     2883.wp-block-cover h2 {
     2884        font-size: 3.2rem;
    30362885}
    30372886
    30382887/* Block: Embed ------------------------------ */
     
    30832932        margin-left: 0;
    30842933}
    30852934
    3086 /* Block: Group ------------------------------ */
     2935.wp-block-gallery ul {
     2936        list-style: none;
     2937        margin: 0 0 -1.6rem 0;
     2938}
    30872939
    3088 .wp-block-group.has-background {
    3089         padding: 2rem;
     2940figure.wp-block-gallery.alignnone,
     2941figure.wp-block-gallery.aligncenter {
     2942        margin-bottom: 3rem;
     2943        margin-top: 3rem;
    30902944}
    30912945
    3092 .wp-block-group__inner-container > *:first-child {
    3093         margin-top: 0;
     2946figure.wp-block-gallery.alignleft {
     2947        margin: 0.3rem 2rem 2rem 0;
    30942948}
    30952949
    3096 .wp-block-group__inner-container > *:last-child {
    3097         margin-bottom: 0;
     2950figure.wp-block-gallery.alignright {
     2951        margin: 0.3rem 0 2rem 2rem;
     2952}
     2953
     2954figure.wp-block-gallery.alignwide {
     2955        margin-bottom: 4rem;
     2956        margin-top: 4rem;
     2957}
     2958
     2959figure.wp-block-gallery.alignfull {
     2960        margin-bottom: 5rem;
     2961        margin-top: 5rem;
     2962}
     2963
     2964/* Block: Group ------------------------------ */
     2965
     2966.wp-block-group.has-background {
     2967        padding: 2rem;
    30982968}
    30992969
    31002970.wp-block-group__inner-container {
     
    31513021        width: 4.4rem;
    31523022}
    31533023
     3024.reduced-spacing .wp-block-pullquote::before {
     3025        border: 0.1rem solid currentColor;
     3026        font-size: 5.9rem;
     3027}
     3028
    31543029.wp-block-pullquote blockquote {
    31553030        border: none;
    31563031        margin: 0;
     
    33023177        padding: 0 2rem 0 0;
    33033178}
    33043179
    3305 /* STYLE: DEFAULT */
    3306 
    33073180/* STYLE: LARGE */
    33083181
    33093182.wp-block-quote.is-large,
     
    33153188.wp-block-quote.is-large p,
    33163189.wp-block-quote.is-style-large p {
    33173190        font-family: inherit;
     3191        font-size: 2.4rem;
    33183192        font-style: normal;
    33193193        font-weight: 700;
    3320         letter-spacing: -0.035714286em;
    3321         line-height: 1.285714286;
     3194        letter-spacing: -0.02em;
     3195        line-height: 1.285;
    33223196}
    33233197
    33243198.wp-block-quote.is-large cite,
     
    34013275        max-width: 58rem;
    34023276}
    34033277
    3404 .entry-content > * {
    3405         margin-bottom: 1.25em;
    3406 }
    3407 
    34083278.entry-content > *:first-child {
    34093279        margin-top: 0;
    34103280}
     
    34753345.alignnone,
    34763346.aligncenter,
    34773347.alignleft,
    3478 .alignright,
    3479 .alignwide,
    3480 .alignfull {
    3481         margin: 3rem 0;
    3482 }
    3483 
    3484 .alignnone,
    3485 .aligncenter,
    3486 .alignleft,
    34873348.alignright {
     3349        margin: 3rem 0;
    34883350        max-width: 100%;
    34893351}
    34903352
    3491 .alignfull {
    3492         margin: 5rem 0;
    3493         max-width: 100vw;
    3494         position: relative;
    3495         left: calc(50% - 50vw);
    3496         width: 100vw;
    3497 }
    3498 
    3499 .alignwide {
    3500         max-width: calc(100vw - 4rem);
    3501         position: relative;
    3502         left: calc(50% - 50vw + 2rem);
    3503         width: calc(100vw - 4rem);
    3504 }
    3505 
    35063353.aligncenter,
    35073354.aligncenter img {
    35083355        margin-left: auto;
     
    35153362}
    35163363
    35173364.alignleft {
     3365
     3366        /*rtl:ignore*/
    35183367        float: left;
    35193368        margin: 0.3rem 2rem 2rem 0;
    35203369}
    35213370
    35223371.alignright {
     3372
     3373        /*rtl:ignore*/
    35233374        float: right;
    35243375        margin: 0.3rem 0 2rem 2rem;
    35253376}
    35263377
     3378.alignwide {
     3379        margin: 4rem auto;
     3380        max-width: 120rem;
     3381}
     3382
     3383.entry-content > .alignwide {
     3384        max-width: calc(100vw - 4rem);
     3385        position: relative;
     3386        left: calc(50% - 50vw + 2rem);
     3387        width: calc(100vw - 4rem);
     3388}
     3389
     3390.alignfull {
     3391        margin: 5rem 0;
     3392}
     3393
     3394.entry-content > .alignfull {
     3395        max-width: 100vw;
     3396        position: relative;
     3397        left: calc(50% - 50vw);
     3398        width: 100vw;
     3399}
     3400
    35273401
    35283402/* Entry Media ------------------------------- */
    35293403
    3530 .alignfull figcaption,
    3531 .alignfull .wp-caption-text {
     3404.alignfull > figcaption,
     3405.alignfull > .wp-caption-text {
    35323406        margin-left: auto;
    35333407        margin-right: auto;
    35343408        max-width: 120rem;
     
    36453519
    36463520
    36473521/* COMMENT CONTENT */
    3648 .comment-content > *:first-child {
    3649         margin-top: 0;
    3650 }
    3651 
    3652 .comment-content > *:last-child {
    3653         margin-bottom: 0;
    3654 }
    3655 
    3656 .comment-content p,
    3657 .comment-content ol,
    3658 .comment-content ul,
    3659 .comment-content dl,
    3660 .comment-content dt {
    3661         font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif;
    3662         letter-spacing: normal;
    3663 }
    3664 
    3665 .comment-content cite,
    3666 .comment-content figcaption,
    3667 .comment-content .wp-caption-text {
    3668         font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif;
    3669 }
    3670 
    3671 @supports ( font-variation-settings: normal ) {
    3672 
    3673         .comment-content cite,
    3674         .comment-content figcaption,
    3675         .comment-content .wp-caption-text {
    3676                 font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif;
    3677         }
    3678 }
    3679 
    3680 .comment-content h1 {
    3681         font-size: 2em;
    3682 }
    3683 
    3684 .comment-content h2 {
    3685         font-size: 1.8em;
    3686 }
    3687 
    3688 .comment-content h3 {
    3689         font-size: 1.6em;
    3690 }
    36913522
    3692 .comment-content h4 {
    3693         font-size: 1.4em;
     3523.comment-content.entry-content .alignleft {
     3524        margin-left: 0;
    36943525}
    36953526
    3696 .comment-content h5 {
    3697         font-size: 1.2em;
     3527.comment-content.entry-content .alignright {
     3528        margin-right: 0;
    36983529}
    36993530
    3700 .comment-content h6 {
    3701         font-size: 1em;
     3531.comment-content.entry-content > .alignwide,
     3532.comment-content.entry-content > .alignfull {
     3533        left: auto;
     3534        max-width: 100%;
     3535        width: auto;
    37023536}
    37033537
    37043538/* COMMENT FOOTER */
     
    41844018
    41854019/* Widget: RSS ------------------------------- */
    41864020
    4187 .widget_rss .rss-widget-icon {
     4021.widget_rss a.rsswidget:first-of-type {
    41884022        display: none;
    41894023}
    41904024
     
    42414075.footer-nav-widgets-wrapper,
    42424076#site-footer {
    42434077        background-color: #fff;
     4078        border-color: #dedfdf;
     4079        border-style: solid;
     4080        border-width: 0;
    42444081}
    42454082
    42464083.footer-top-visible .footer-nav-widgets-wrapper,
     
    42504087
    42514088.reduced-spacing.footer-top-visible .footer-nav-widgets-wrapper,
    42524089.reduced-spacing.footer-top-hidden #site-footer {
    4253         border-top: 0.1rem solid #dedfdf;
     4090        border-top-width: 0.1rem;
    42544091}
    42554092
    42564093.footer-top,
     
    42934130/* FOOTER SOCIAL */
    42944131
    42954132.footer-social-wrapper {
     4133        margin: 0;
     4134        width: 100%;
     4135}
     4136
     4137.has-footer-menu .footer-social-wrapper {
    42964138        flex-shrink: 0;
    42974139        margin-left: 1rem;
    42984140        width: 50%;
     
    43004142
    43014143ul.footer-social {
    43024144        margin: -0.5rem 0 0 -0.5rem;
     4145}
     4146
     4147.has-footer-menu .footer-social {
    43034148        justify-content: flex-end;
    43044149}
    43054150
     
    43844229
    43854230@media ( max-width: 479px ) {
    43864231
    4387         /* Lists ------------------------------------- */
     4232        /* Blocks -------------------------------- */
     4233
     4234        .wp-block-pullquote.alignleft,
     4235        .wp-block-pullquote.alignright {
     4236                float: none;
     4237                margin: 3rem 0;
     4238        }
     4239
     4240        .wp-block-pullquote.alignleft:first-child,
     4241        .wp-block-pullquote.alignright:first-child {
     4242                margin-top: 0;
     4243        }
     4244
     4245        .wp-block-pullquote.alignleft:last-child,
     4246        .wp-block-pullquote.alignright:last-child {
     4247                margin-bottom: 0;
     4248        }
     4249
     4250        /* Entry Content ------------------------- */
     4251
     4252        /* LISTS */
    43884253
    43894254        ul,
    43904255        ol {
     
    44234288        .alignright {
    44244289                max-width: 26rem;
    44254290        }
     4291}
    44264292
    4427         .alignleft {
    4428                 float: left;
     4293@media ( max-width: 599px ) {
     4294
     4295        /* Blocks -------------------------------- */
     4296
     4297        /* BLOCK: COLUMNS */
     4298
     4299        /* While columns are stacked */
     4300        .wp-block-column:last-child {
     4301                margin-bottom: 0;
    44294302        }
    44304303
    4431         .alignright {
    4432                 float: right;
     4304        .wp-block-columns + .wp-block-columns {
     4305                margin-top: 0.2rem;
     4306        }
     4307
     4308        .wp-block-columns.alignwide + .wp-block-columns.alignwide {
     4309                margin-top: -0.8rem;
     4310        }
     4311
     4312        .wp-block-columns.alignfull + .wp-block-columns.alignfull {
     4313                margin-top: -1.8rem;
     4314        }
     4315
     4316}
     4317
     4318@media ( min-width: 600px ) {
     4319
     4320        /* Blocks -------------------------------- */
     4321
     4322        /* BLOCK: COLUMNS */
     4323
     4324        .wp-block-columns.alignwide + .wp-block-columns.alignwide,
     4325        .wp-block-columns.alignfull + .wp-block-columns.alignfull {
     4326                margin-top: -4rem;
     4327        }
     4328
     4329}
     4330
     4331@media ( max-width: 599px ) {
     4332
     4333        /* Blocks -------------------------------- */
     4334
     4335        /* BLOCK: COLUMNS */
     4336
     4337        .alignfull .wp-block-column > p:not(.has-background-color),
     4338        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     4339                max-width: calc(100% - 4rem);
     4340                margin: auto;
     4341        }
     4342}
     4343
     4344@media ( min-width: 600px ) {
     4345
     4346        /* Blocks -------------------------------- */
     4347
     4348        /* BLOCK: COLUMNS */
     4349
     4350        .alignfull .wp-block-column:nth-child(odd) > p:not(.has-background-color),
     4351        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     4352                padding-left: 2rem;
     4353        }
     4354
     4355        .alignfull .wp-block-column:nth-child(even) > p:not(.has-background-color),
     4356        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     4357                padding-right: 2rem;
    44334358        }
    44344359}
    44354360
    44364361@media ( min-width: 660px ) {
    44374362
     4363        /* Blocks -------------------------------- */
     4364
     4365        /* BLOCK: GALLERY */
     4366
     4367        figure.wp-block-gallery.alignleft {
     4368
     4369                /*rtl:ignore*/
     4370                margin-left: calc(( 100vw - 58rem - 8rem ) / -2);
     4371        }
     4372
     4373        figure.wp-block-gallery.alignright {
     4374
     4375                /*rtl:ignore*/
     4376                margin-right: calc(( 100vw - 58rem - 8rem ) / -2);
     4377        }
     4378
    44384379        /* Entry Content ------------------------- */
    44394380
    44404381        /* ALIGNMENT CLASSES */
    44414382
    4442         .entry-content > .alignleft,
    4443         .entry-content > p .alignleft,
    4444         .entry-content > .wp-block-image .alignleft {
     4383        .entry-content .alignleft {
     4384
     4385                /*rtl:ignore*/
    44454386                margin-left: calc(( 100vw - 58rem - 8rem ) / -2);
    44464387        }
    44474388
    4448         .entry-content > .alignright,
    4449         .entry-content > p .alignright,
    4450         .entry-content > .wp-block-image .alignright {
     4389        .entry-content .alignright {
     4390
     4391                /*rtl:ignore*/
    44514392                margin-right: calc(( 100vw - 58rem - 8rem ) / -2);
    44524393        }
    44534394
     
    46624603        }
    46634604
    46644605        .modal-menu ul li {
    4665                 border-left-width: 0;
    4666         }
    4667 
    4668         .modal-menu ul a {
    4669                 padding-left: 2.5rem;
    4670         }
    4671 
    4672         .modal-menu ul ul a {
    4673                 padding-left: 5rem;
    4674         }
    4675 
    4676         .modal-menu ul ul ul a {
    4677                 padding-left: 7.5rem;
    4678         }
    4679 
    4680         .modal-menu ul ul ul ul a {
    4681                 padding-left: 10rem;
     4606                border-left-color: transparent;
    46824607        }
    46834608
    46844609        .modal-menu > li > .ancestor-wrapper > button.sub-menu-toggle {
     
    47674692                font-size: 3.2rem;
    47684693        }
    47694694
    4770         body:not(.singular) main article:first-of-type {
     4695        body:not(.singular) main > article:first-of-type {
    47714696                padding: 8rem 0 0;
    47724697        }
    47734698
     
    49084833
    49094834        /* BLOCK: BASE MARGINS */
    49104835
    4911         .wp-block-archives:not(.aligncenter):not(.alignleft):not(.alignright),
    4912         .wp-block-categories:not(.aligncenter):not(.alignleft):not(.alignright),
     4836        .wp-block-archives,
     4837        .wp-block-categories,
    49134838        .wp-block-code,
    4914         .wp-block-columns:not(.alignwide):not(.alignfull),
    4915         .wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    4916         .wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    4917         .wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
    4918         .wp-block-group:not(.alignwide):not(.alignfull),
    4919         .wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright),
    4920         .wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright),
    4921         .wp-block-media-text:not(.alignwide):not(.alignfull),
     4839        .wp-block-columns,
     4840        .wp-block-cover,
     4841        .wp-block-embed,
     4842        .wp-block-gallery,
     4843        .wp-block-group,
     4844        .wp-block-latest-comments,
     4845        .wp-block-latest-posts,
     4846        .wp-block-media-text,
    49224847        .wp-block-preformatted,
    4923         .wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter),
     4848        .wp-block-pullquote,
    49244849        .wp-block-quote,
    49254850        .wp-block-quote.is-large,
    49264851        .wp-block-quote.is-style-large,
    49274852        .wp-block-verse,
    4928         .wp-block-video:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter) {
     4853        .wp-block-video {
    49294854                margin-bottom: 5rem;
    49304855                margin-top: 5rem;
    49314856        }
     
    49344859
    49354860        .wp-block-columns.alignwide + .wp-block-columns.alignwide,
    49364861        .wp-block-columns.alignfull + .wp-block-columns.alignfull {
    4937                 margin-top: -2rem;
     4862                margin-top: -6rem;
    49384863        }
    49394864
    49404865        .entry-content .wp-block-columns h1,
     
    49464871                margin: 3.5rem 0 2rem;
    49474872        }
    49484873
     4874        /* BLOCK: COVER */
     4875
     4876        .wp-block-cover-image .wp-block-cover__inner-container,
     4877        .wp-block-cover .wp-block-cover__inner-container {
     4878                width: calc(100% - 8rem);
     4879        }
     4880
     4881        .wp-block-cover-image h2,
     4882        .wp-block-cover h2 {
     4883                font-size: 4.8rem;
     4884        }
     4885
     4886        /* BLOCK: GALLERY */
     4887
     4888        figure.wp-block-gallery.alignnone,
     4889        figure.wp-block-gallery.aligncenter {
     4890                margin-bottom: 4rem;
     4891                margin-top: 4rem;
     4892        }
     4893
     4894        figure.wp-block-gallery.alignwide,
     4895        figure.wp-block-gallery.alignfull {
     4896                margin-bottom: 6rem;
     4897                margin-top: 6rem;
     4898        }
     4899
    49494900        /* BLOCK: GROUP */
    49504901
    49514902        .wp-block-group.has-background {
     
    50054956                font-size: 2.6rem;
    50064957        }
    50074958
     4959        /* BLOCK: QUOTE */
     4960
     4961        .wp-block-quote.is-large p,
     4962        .wp-block-quote.is-style-large p {
     4963                font-size: 2.8rem;
     4964        }
     4965
    50084966        /* BLOCK: SEPARATOR */
    50094967
    50104968        hr.wp-block-separator {
     
    50545012                margin-top: 6rem;
    50555013        }
    50565014
    5057         .alignwide {
     5015        .entry-content > .alignwide {
    50585016                max-width: calc(100vw - 8rem);
    50595017                left: calc(50% - 50vw + 4rem);
    50605018                width: calc(100vw - 8rem);
     
    50625020
    50635021        /* ENTRY MEDIA */
    50645022
    5065         .alignfull figcaption,
    5066         .alignfull .wp-caption-text {
     5023        .alignfull > figcaption,
     5024        .alignfull > .wp-caption-text {
    50675025                width: calc(100% - 8rem);
    50685026        }
    50695027
     
    50915049                padding-top: 5rem;
    50925050        }
    50935051
    5094         .comment-content {
    5095                 font-size: 2.1rem;
    5096         }
    5097 
    50985052        div.comment:first-of-type {
    50995053                margin-top: 5rem;
    51005054        }
     
    52235177                margin: 0.8rem 0 0 1.6rem;
    52245178        }
    52255179
    5226         .footer-social-wrapper {
     5180        .has-footer-menu .footer-social-wrapper {
     5181                flex: 1;
    52275182                margin-left: 4rem;
    52285183                width: auto;
    52295184        }
     
    52895244
    52905245}
    52915246
     5247@media (min-width: 782px) {
     5248
     5249        /* Blocks -------------------------------- */
     5250
     5251        /* BLOCK: COLUMNS */
     5252
     5253        .alignfull .wp-block-column:first-child > p,
     5254        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     5255                padding-left: 2rem;
     5256        }
     5257
     5258        .alignfull .wp-block-column:last-child > p,
     5259        .alignfull:not(.has-background) .wp-block-group__inner-container > p:not(.has-background-color) {
     5260                padding-right: 2rem;
     5261        }
     5262}
     5263
    52925264@media ( min-width: 1000px ) {
    52935265
    52945266
     
    54135385                width: auto;
    54145386        }
    54155387
     5388        .header-toggles:only-child .nav-toggle .toggle-inner {
     5389                padding-top: 0;
     5390        }
     5391
     5392        .header-toggles:only-child .toggle-inner {
     5393                display: flex;
     5394                flex-wrap: nowrap;
     5395                align-items: center;
     5396        }
     5397
     5398        .header-toggles:only-child .toggle-inner .svg-icon {
     5399                order: 1;
     5400        }
     5401
     5402        .header-toggles:only-child .toggle-inner .toggle-text {
     5403                position: static;
     5404                padding-right: 20px;
     5405                font-size: 15px;
     5406                color: inherit;
     5407        }
     5408
    54165409        /* Menu Modal ---------------------------- */
    54175410
    54185411        .menu-modal {
     
    54905483
    54915484        .wp-block-columns.alignwide + .wp-block-columns.alignwide,
    54925485        .wp-block-columns.alignfull + .wp-block-columns.alignfull {
    5493                 margin-top: -4rem;
     5486                margin-top: -5.2rem;
     5487        }
     5488
     5489        /* BLOCK: GALLERY */
     5490
     5491        figure.wp-block-gallery.alignwide,
     5492        figure.wp-block-gallery.alignfull {
     5493                margin-bottom: 8rem;
     5494                margin-top: 8rem;
    54945495        }
    54955496
    54965497        /* BLOCK: GROUP */
     
    55185519
    55195520        /* ENTRY MEDIA */
    55205521
    5521         .alignfull figcaption,
    5522         .alignfull .wp-caption-text {
     5522        .alignfull > figcaption,
     5523        .alignfull > .wp-caption-text {
    55235524                width: calc(100% - 10rem);
    55245525        }
    55255526
     
    56515652                margin-top: -6rem;
    56525653        }
    56535654
     5655        /* BLOCK: GALLERY */
     5656
     5657        figure.wp-block-gallery.alignfull {
     5658                margin-bottom: 10rem;
     5659                margin-top: 10rem;
     5660        }
     5661
    56545662        /* BLOCK: GROUP */
    56555663
    56565664        .wp-block-group.alignwide.has-background,
     
    57545762
    57555763        /* Blocks -------------------------------- */
    57565764
     5765        /* BLOCK: GALLERY */
     5766
     5767        figure.wp-block-gallery.alignleft {
     5768
     5769                /*rtl:ignore*/
     5770                margin-left: -31rem;
     5771        }
     5772
     5773        figure.wp-block-gallery.alignright {
     5774
     5775                /*rtl:ignore*/
     5776                margin-right: -31rem;
     5777        }
     5778
    57575779        /* BLOCK: SEPARATOR */
    57585780
    57595781        .wp-block-separator.is-style-wide {
     
    57665788
    57675789        /* ALIGNMENT CLASSES */
    57685790
    5769         .entry-content > .alignleft,
    5770         .entry-content > p .alignleft,
    5771         .entry-content > .wp-block-image .alignleft {
     5791        .entry-content .alignleft {
     5792
     5793                /*rtl:ignore*/
    57725794                margin-left: -31rem;
    57735795        }
    57745796
    5775         .entry-content > .alignright,
    5776         .entry-content > p .alignright,
    5777         .entry-content > .wp-block-image .alignright {
     5797        .entry-content .alignright {
     5798
     5799                /*rtl:ignore*/
    57785800                margin-right: -31rem;
    57795801        }
    57805802
    5781         .alignwide {
     5803        .entry-content > .alignwide {
    57825804                max-width: 120rem;
    57835805                left: calc(50% - 60rem);
    57845806                width: 120rem;
  • src/wp-content/themes/twentytwenty/template-parts/content-cover.php

     
    4444        $color_overlay_classes .= ' opacity-' . $color_overlay_opacity;
    4545        ?>
    4646
    47         <div class="cover-header <?php echo esc_attr( $cover_header_classes ); ?>"<?php echo $cover_header_style; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- We need to double check this, but for now, we want to pass PHPCS ;) ?>>
     47        <div class="cover-header <?php echo $cover_header_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>"<?php echo $cover_header_style; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- We need to double check this, but for now, we want to pass PHPCS ;) ?>>
    4848                <div class="cover-header-inner-wrapper screen-height">
    4949                        <div class="cover-header-inner">
    5050                                <div class="cover-color-overlay color-accent<?php echo esc_attr( $color_overlay_classes ); ?>"<?php echo $color_overlay_style; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- We need to double check this, but for now, we want to pass PHPCS ;) ?>></div>
     
    6767                                                                ?>
    6868
    6969                                                                <div class="entry-categories">
    70                                                                         <span class="screen-reader-text"><?php esc_html_e( 'Categories', 'twentytwenty' ); ?></span>
     70                                                                        <span class="screen-reader-text"><?php _e( 'Categories', 'twentytwenty' ); ?></span>
    7171                                                                        <div class="entry-categories-inner">
    7272                                                                                <?php the_category( ' ' ); ?>
    7373                                                                        </div><!-- .entry-categories-inner -->
     
    8585
    8686                                                                        <a href="#post-inner" class="to-the-content fill-children-current-color">
    8787                                                                                <?php twentytwenty_the_theme_svg( 'arrow-down' ); ?>
    88                                                                                 <div class="screen-reader-text"><?php _e( 'Scroll Down', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></div>
     88                                                                                <div class="screen-reader-text"><?php _e( 'Scroll Down', 'twentytwenty' ); ?></div>
    8989                                                                        </a><!-- .to-the-content -->
    9090
    9191                                                                </div><!-- .to-the-content-wrapper -->
     
    133133
    134134                </div><!-- .entry-content -->
    135135                <?php
    136 
    137136                wp_link_pages(
    138137                        array(
    139                                 'before' => '<nav class="post-nav-links bg-light-background" aria-label="' . esc_attr__( 'Page', 'twentytwenty' ) . '"><span class="label">' . __( 'Pages:', 'twentytwenty' ) . '</span>',
    140                                 'after'  => '</nav>',
     138                                'before'      => '<nav class="post-nav-links bg-light-background" aria-label="' . esc_attr__( 'Page', 'twentytwenty' ) . '"><span class="label">' . __( 'Pages:', 'twentytwenty' ) . '</span>',
     139                                'after'       => '</nav>',
     140                                'link_before' => '<span class="page-number">',
     141                                'link_after'  => '</span>',
    141142                        )
    142143                );
    143144
  • src/wp-content/themes/twentytwenty/template-parts/content.php

     
    4040                </div><!-- .entry-content -->
    4141
    4242                <?php
    43 
    4443                wp_link_pages(
    4544                        array(
    46                                 'before' => '<nav class="post-nav-links bg-light-background" aria-label="' . esc_attr__( 'Page', 'twentytwenty' ) . '"><span class="label">' . __( 'Pages:', 'twentytwenty' ) . '</span>',
    47                                 'after'  => '</nav>',
     45                                'before'      => '<nav class="post-nav-links bg-light-background" aria-label="' . esc_attr__( 'Page', 'twentytwenty' ) . '"><span class="label">' . __( 'Pages:', 'twentytwenty' ) . '</span>',
     46                                'after'       => '</nav>',
     47                                'link_before' => '<span class="page-number">',
     48                                'link_after'  => '</span>',
    4849                        )
    4950                );
    5051
  • src/wp-content/themes/twentytwenty/template-parts/entry-author-bio.php

     
    1616                        <span class="author-name">
    1717                                <?php
    1818                                printf(
    19                                         /* Translators: %s: post author */
    20                                         esc_html__( 'By %s', 'twentytwenty' ),
     19                                        /* translators: %s: Author name */
     20                                        __( 'By %s', 'twentytwenty' ),
    2121                                        esc_html( get_the_author() )
    2222                                );
    2323                                ?>
     
    2626                <p class="author-description">
    2727                        <?php the_author_meta( 'description' ); ?>
    2828                        <a class="author-link" href="<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ); ?>" rel="author">
    29                                 <?php esc_html_e( 'View Archive &rarr;', 'twentytwenty' ); ?>
     29                                <?php _e( 'View Archive &rarr;', 'twentytwenty' ); ?>
    3030                        </a>
    3131                </p><!-- .author-description -->
    3232</div><!-- .author-bio -->
  • src/wp-content/themes/twentytwenty/template-parts/entry-header.php

     
    3333                        ?>
    3434
    3535                        <div class="entry-categories">
    36                                 <span class="screen-reader-text"><?php esc_html_e( 'Categories', 'twentytwenty' ); ?></span>
     36                                <span class="screen-reader-text"><?php _e( 'Categories', 'twentytwenty' ); ?></span>
    3737                                <div class="entry-categories-inner">
    3838                                        <?php the_category( ' ' ); ?>
    3939                                </div><!-- .entry-categories-inner -->
     
    5959                if ( has_excerpt() && is_singular() ) {
    6060                        ?>
    6161
    62                         <div class="intro-text section-inner max-percentage<?php echo esc_attr( $intro_text_width ); ?>">
     62                        <div class="intro-text section-inner max-percentage<?php echo $intro_text_width; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>">
    6363                                <?php the_excerpt(); ?>
    6464                        </div>
    6565
  • src/wp-content/themes/twentytwenty/template-parts/featured-image.php

     
    1919
    2020        <figure class="featured-media">
    2121
    22                 <div class="featured-media-inner section-inner<?php echo esc_attr( $featured_media_inner_classes ); ?>">
     22                <div class="featured-media-inner section-inner<?php echo $featured_media_inner_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>">
    2323
    2424                        <?php
    2525                        the_post_thumbnail();
  • src/wp-content/themes/twentytwenty/template-parts/footer-menus-widgets.php

     
    2929                        $footer_top_classes .= $has_footer_menu ? ' has-footer-menu' : '';
    3030                        $footer_top_classes .= $has_social_menu ? ' has-social-menu' : '';
    3131
    32                         $footer_social_wrapper_class = $has_footer_menu ? 'footer-social-wrapper' : '';
    33 
    3432                        if ( $has_footer_menu || $has_social_menu ) {
    3533                                ?>
    36                                 <div class="footer-top<?php echo esc_attr( $footer_top_classes ); ?>">
     34                                <div class="footer-top<?php echo $footer_top_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>">
    3735                                        <?php if ( $has_footer_menu ) { ?>
    3836
    39                                                 <nav aria-label="<?php esc_attr_e( 'Footer', 'twentytwenty' ); ?>" role="navigation">
     37                                                <nav aria-label="<?php esc_attr_e( 'Footer', 'twentytwenty' ); ?>" role="navigation" class="footer-menu-wrapper">
    4038
    4139                                                        <ul class="footer-menu reset-list-style">
    4240                                                                <?php
     
    5654                                        <?php } ?>
    5755                                        <?php if ( $has_social_menu ) { ?>
    5856
    59                                                 <div class="<?php echo esc_attr( $footer_social_wrapper_class ); ?>">
    60 
    61                                                         <nav aria-label="<?php esc_attr_e( 'Social links', 'twentytwenty' ); ?>">
    62 
    63                                                                 <ul class="social-menu footer-social reset-list-style social-icons s-icons">
     57                                                <nav aria-label="<?php esc_attr_e( 'Social links', 'twentytwenty' ); ?>" class="footer-social-wrapper">
    6458
    65                                                                         <?php
    66                                                                         wp_nav_menu(
    67                                                                                 array(
    68                                                                                         'theme_location' => 'social',
    69                                                                                         'container'   => '',
    70                                                                                         'container_class' => '',
    71                                                                                         'items_wrap'  => '%3$s',
    72                                                                                         'menu_id'     => '',
    73                                                                                         'menu_class'  => '',
    74                                                                                         'depth'       => 1,
    75                                                                                         'link_before' => '<span class="screen-reader-text">',
    76                                                                                         'link_after'  => '</span>',
    77                                                                                         'fallback_cb' => '',
    78                                                                                 )
    79                                                                         );
    80                                                                         ?>
     59                                                        <ul class="social-menu footer-social reset-list-style social-icons fill-children-current-color">
    8160
    82                                                                 </ul>
     61                                                                <?php
     62                                                                wp_nav_menu(
     63                                                                        array(
     64                                                                                'theme_location'  => 'social',
     65                                                                                'container'       => '',
     66                                                                                'container_class' => '',
     67                                                                                'items_wrap'      => '%3$s',
     68                                                                                'menu_id'         => '',
     69                                                                                'menu_class'      => '',
     70                                                                                'depth'           => 1,
     71                                                                                'link_before'     => '<span class="screen-reader-text">',
     72                                                                                'link_after'      => '</span>',
     73                                                                                'fallback_cb'     => '',
     74                                                                        )
     75                                                                );
     76                                                                ?>
    8377
    84                                                         </nav><!-- .social-menu -->
     78                                                        </ul><!-- .footer-social -->
    8579
    86                                                 </div><!-- .footer-social-wrapper -->
     80                                                </nav><!-- .footer-social-wrapper -->
    8781
    8882                                        <?php } ?>
    8983                                </div><!-- .footer-top -->
  • src/wp-content/themes/twentytwenty/template-parts/modal-menu.php

     
    1717
    1818                        <div class="menu-top">
    1919
    20                                 <button class="toggle close-nav-toggle fill-children-current-color" data-toggle-target=".menu-modal" data-toggle-screen-lock="true" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".menu-modal">
    21                                         <span class="toggle-text"><?php esc_html_e( 'Close Menu', 'twentytwenty' ); ?></span>
     20                                <button class="toggle close-nav-toggle fill-children-current-color" data-toggle-target=".menu-modal" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".menu-modal">
     21                                        <span class="toggle-text"><?php _e( 'Close Menu', 'twentytwenty' ); ?></span>
    2222                                        <?php twentytwenty_the_theme_svg( 'cross' ); ?>
    2323                                </button><!-- .nav-toggle -->
    2424
     
    4545
    4646                                        ?>
    4747
    48                                         <nav class="expanded-menu<?php echo esc_attr( $expanded_nav_classes ); ?>" aria-label="<?php esc_attr_e( 'Expanded', 'twentytwenty' ); ?>">
     48                                        <nav class="expanded-menu<?php echo esc_attr( $expanded_nav_classes ); ?>" aria-label="<?php esc_attr_e( 'Expanded', 'twentytwenty' ); ?>" role="navigation">
    4949
    5050                                                <ul class="modal-menu reset-list-style">
    5151                                                        <?php
     
    7070                                if ( 'expanded' !== $mobile_menu_location ) {
    7171                                        ?>
    7272
    73                                         <nav class="mobile-menu" aria-label="<?php esc_attr_e( 'Mobile', 'twentytwenty' ); ?>">
     73                                        <nav class="mobile-menu" aria-label="<?php esc_attr_e( 'Mobile', 'twentytwenty' ); ?>" role="navigation">
    7474
    7575                                                <ul class="modal-menu reset-list-style">
    7676
     
    114114
    115115                                <?php if ( has_nav_menu( 'social' ) ) { ?>
    116116
    117                                         <nav aria-label="<?php esc_attr_e( 'Expanded Social links', 'twentytwenty' ); ?>">
    118                                                 <ul class="social-menu reset-list-style social-icons s-icons">
     117                                        <nav aria-label="<?php esc_attr_e( 'Expanded Social links', 'twentytwenty' ); ?>" role="navigation">
     118                                                <ul class="social-menu reset-list-style social-icons fill-children-current-color">
    119119
    120120                                                        <?php
    121121                                                        wp_nav_menu(
  • src/wp-content/themes/twentytwenty/template-parts/modal-search.php

     
    1717                        <?php
    1818                        get_search_form(
    1919                                array(
    20                                         'label' => _x( 'Search for:', 'Label', 'twentytwenty' ),
     20                                        'label' => __( 'Search for:', 'twentytwenty' ),
    2121                                )
    2222                        );
    2323                        ?>
    2424
    25                         <button class="toggle search-untoggle fill-children-current-color" data-toggle-target=".search-modal" data-toggle-screen-lock="true" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field">
    26                                 <span class="screen-reader-text"><?php _e( 'Close search', 'twentytwenty' ); // phpcs:ignore WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span>
     25                        <button class="toggle search-untoggle fill-children-current-color" data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field">
     26                                <span class="screen-reader-text"><?php _e( 'Close search', 'twentytwenty' ); ?></span>
    2727                                <?php twentytwenty_the_theme_svg( 'cross' ); ?>
    2828                        </button><!-- .search-toggle -->
    2929
  • src/wp-content/themes/twentytwenty/template-parts/navigation.php

     
    2222
    2323        ?>
    2424
    25         <nav class="pagination-single section-inner<?php echo esc_attr( $pagination_classes ); ?>" aria-label="<?php esc_attr_e( 'Post', 'twentytwenty' ); ?>">
     25        <nav class="pagination-single section-inner<?php echo esc_attr( $pagination_classes ); ?>" aria-label="<?php esc_attr_e( 'Post', 'twentytwenty' ); ?>" role="navigation">
    2626
    2727                <hr class="styled-separator is-style-wide" aria-hidden="true" />
    2828
  • src/wp-content/themes/twentytwenty/template-parts/pagination.php

     
    3434        )
    3535);
    3636
    37 // If we're not outputting the previous page link, prepend a placeholder with visisibility: hidden to take its place.
     37// If we're not outputting the previous page link, prepend a placeholder with visibility: hidden to take its place.
    3838if ( strpos( $posts_pagination, 'prev page-numbers' ) === false ) {
    3939        $posts_pagination = str_replace( '<div class="nav-links">', '<div class="nav-links"><span class="prev page-numbers placeholder" aria-hidden="true">' . $prev_text . '</span>', $posts_pagination );
    4040}
    4141
    42 // If we're not outputting the next page link, append a placeholder with visisibility: hidden to take its place.
     42// If we're not outputting the next page link, append a placeholder with visibility: hidden to take its place.
    4343if ( strpos( $posts_pagination, 'next page-numbers' ) === false ) {
    4444        $posts_pagination = str_replace( '</div>', '<span class="next page-numbers placeholder" aria-hidden="true">' . $next_text . '</span></div>', $posts_pagination );
    4545}
  • src/wp-content/themes/twentytwenty/templates/template-cover.php

     
    2424                }
    2525        }
    2626
    27         get_template_part( 'template-parts/footer-menus-widgets' );
    28 
    2927        ?>
    3028
    3129</main><!-- #site-content -->
    3230
     31<?php get_template_part( 'template-parts/footer-menus-widgets' ); ?>
     32
    3333<?php get_footer(); ?>
  • src/wp-includes/widgets/class-wp-widget-recent-comments.php

     
    6666         * Outputs the content for the current Recent Comments widget instance.
    6767         *
    6868         * @since 2.8.0
     69         * @since 5.3.0 Added $first_recentcomments staticvar.
     70         *
     71         * @staticvar bool $first_dropdown
    6972         *
    7073         * @param array $args     Display arguments including 'before_title', 'after_title',
    7174         *                        'before_widget', and 'after_widget'.
    7275         * @param array $instance Settings for the current Recent Comments widget instance.
    7376         */
    7477        public function widget( $args, $instance ) {
     78                static $first_recentcomments = true;
     79
    7580                if ( ! isset( $args['widget_id'] ) ) {
    7681                        $args['widget_id'] = $this->id;
    7782                }
     
    116121                        $output .= $args['before_title'] . $title . $args['after_title'];
    117122                }
    118123
    119                 $output .= '<ul id="recentcomments">';
     124                $recentcomments_id    = ( $first_recentcomments ) ? 'recentcomments' : $args['widget_id'];
     125                $first_recentcomments = false;
     126
     127                $output .= '<ul id="' . esc_attr( $recentcomments_id ) . '">';
    120128                if ( is_array( $comments ) && $comments ) {
    121129                        // Prime cache for associated posts. (Prime post term cache if we need it for permalinks.)
    122130                        $post_ids = array_unique( wp_list_pluck( $comments, 'comment_post_ID' ) );
  • tests/phpunit/tests/post.php

     
    14301430                $post = get_post( $post_id );
    14311431                self::assertEquals( strtotime( gmdate( 'Y-m-d H:i:s' ) ), strtotime( $post->post_date_gmt ), 'The dates should be equal', 2 );
    14321432        }
     1433
     1434        /**
     1435         * @ticket 48014
     1436         */
     1437        public function test_publish_post_hook() {
     1438                $post_id = self::factory()->post->create();
     1439
     1440                $enclosed = get_post_meta( $post_id, '_encloseme' );
     1441
     1442                $post  = get_post( $post_id );
     1443                $post1 = wp_update_post( $post );
     1444
     1445                $enclosed1 = get_post_meta( $post_id, '_encloseme' );
     1446
     1447                $this->assertEquals( '1', count( $enclosed ) );
     1448                $this->assertEquals( '1', count( $enclosed1 ) );
     1449
     1450        }
    14331451}