/*
Theme Name: Bosa Handyman Services
Description: Used to style Gutenberg Blocks.
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 Blocks - Common Blocks
2.0 Blocks - Formatting
3.0 Blocks - Layout Elements
4.0 Blocks - Widgets
5.0 Blocks - Color Settings
6.0 Blocks - Text Settings

--------------------------------------------------------------*/

/*--------------------------------------------------------------
1.0 General Block Styles
--------------------------------------------------------------*/

/*Images alignment
-----------------------------------------------------------*/

body.content-no-sidebar .page-cover.alignfull, 
body.content-no-sidebar .wp-block-cover-image.alignfull,
body.content-no-sidebar .alignfull {
    margin-left: calc( -100vw/2 + 100%/2 );
    margin-right: calc( -100vw/2 + 100%/2 );
    max-width: 100vw;
    width: calc( 100vw - 95px);
}

.wp-block-image.alignfull img, 
.wp-block-image.alignwide img {
    width: 100%;
}

body.content-no-sidebar .entry-content .alignwide,
body.content-no-sidebar .alignwide {
    margin-left: -70px;
    margin-right: -70px;
}

.right-sidebar .page-cover.alignfull, 
.right-sidebar .wp-block-cover-image.alignfull,
.right-sidebar .alignfull,
.left-sidebar .page-cover.alignfull, 
.left-sidebar .wp-block-cover-image.alignfull,
.left-sidebar .alignfull {
    margin-left: 0;
    margin-right: 0;
    max-width: 100%;
    width: 100%;
}

.right-sidebar .entry-content .alignwide,
.right-sidebar .alignwide,
.left-sidebar .entry-content .alignwide,
.left-sidebar .alignwide {
    margin-left: 0;
    margin-right: 0;
}

body .wp-block[data-align=wide] {
    width: 100%;
    padding: 0;
}

/* Captions */

[class^="wp-block-"]:not(.wp-block-gallery) figcaption {
  font-style: italic;
  margin-bottom: 1.5em;
  text-align: left;
}

.rtl [class^="wp-block-"]:not(.wp-block-gallery) figcaption {
  text-align: right;
}

.blocks-gallery-caption, .wp-block-embed figcaption, .wp-block-image figcaption {
  color: #FFFFFF;
}
/*--------------------------------------------------------------
2.0 Blocks - Common Blocks
--------------------------------------------------------------*/

/* Paragraph */
p.has-drop-cap:not(:focus)::first-letter {
  float: left;
  font-size: 80px;
  font-size: 5rem;
  line-height: 0.6;
  margin: 7px 16px 7px -3px;
}

/* Image */
.wp-block-image {
  margin-bottom: 1.5em;
}
.wp-block-image figure {
  margin-bottom: 0;
  margin-top: 0;
}
.wp-block-image figure.alignleft {
  margin-right: 1.5em;
}
.wp-block-image figure.alignright {
  margin-left: 1.5em;
}

/* Gallery */
.wp-block-gallery {
  margin-bottom: 1.5em;
  margin-left: 0;
}
.wp-block-gallery.aligncenter {
  display: flex;
  margin: 0 -8px;
}
[class^="wp-block-"]:not(.wp-block-gallery) figcaption {
  background: #f3f1f1;
  color: #2f2f2f;
  font-style: normal;
  padding: 5px 10px;
}

/* Quote */
.wp-block-quote.alignleft p:last-of-type,
.wp-block-quote.alignright p:last-of-type {
  margin-bottom: 0;
}
.wp-block-quote.is-style-large {
  padding: 30px 30px 30px 50px;
  margin: 30px 0 0 30px;
}
.wp-block-quote cite {
  font-size: 16px;
}
.wp-block-quote.is-style-large cite {
  font-size: 20px;
}
.wp-block-quote.is-large > p:before, 
.wp-block-quote.is-large > p:after {
    content: "''";
    font-size: 30px;
    display: inline-block;
    vertical-align: middle;
    margin: 0 10px;
}
.wp-block-quote.has-text-align-right,
.wp-block-quote.has-text-align-left,
.wp-block-quote.has-text-align-center {
  padding: 30px;
}

/* pullquote */
figure.wp-block-pullquote {
  border-top: 3px solid;
  border-bottom: 3px solid;
  margin: 30px 0;
  padding: 0;
}
figure.wp-block-pullquote.has-background blockquote {
  background-color: inherit;
}
.wp-block-pullquote blockquote {
  margin: 0;
}
.wp-block-pullquote blockquote:before {
  display: none;
}
.wp-block-pullquote cite,
.wp-block-pullquote footer,
.wp-block-pullquote__citation {
  color: inherit;
}

/* Audio */
.wp-block-audio audio {
  display: block;
  width: 100%;
}

/* Cover */
.wp-block-cover-image.alignright,
.wp-block-cover.alignright,
.wp-block-cover-image.alignleft,
.wp-block-cover.alignleft,
.wp-block-cover-image.aligncenter,
.wp-block-cover.aligncenter {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

.no-sidebar .wp-block-cover.alignfull,
.no-sidebar .wp-block-image.alignfull,
.no-sidebar .wp-block-gallery.alignfull,
.no-sidebar .wp-block-pullquote.alignfull,
.no-sidebar .wp-block-table.alignfull,
.no-sidebar .wp-block-audio.alignfull,
.no-sidebar .wp-block-categories.alignfull {    
    width: 100vw;
    max-width : 100vw;
    margin-left  : calc( -100vw / 2 + 100% / 2 );
    margin-right : calc( -100vw / 2 + 100% / 2 );
}
.no-sidebar .wp-block-embed.is-type-video.alignfull iframe {    
    width: 100vw !important;
    max-width : 100vw;
    margin-left  : calc( -100vw / 2 + 100% / 2 ) !important;
    margin-right : calc( -100vw / 2 + 100% / 2 ) !important;
}

.no-sidebar .wp-block-image.alignfull figcaption,
.no-sidebar .wp-block-audio.alignfull figcaption {
  text-align: center;
  max-width: 1200px;
  width: 90%;
  padding: 0 15px;
  margin: 5px auto 0;
}
.no-sidebar .wp-block-table.alignfull {
  display: table;
}
.no-sidebar .wp-block-audio.alignfull {
  padding: 0 20px;
}
.no-sidebar .wp-block-categories.alignfull {
  padding: 0 50px;
}
.no-sidebar .wp-block-gallery.alignfull {
  padding: 0 25px;
}

/* File */

.wp-block-file .wp-block-file__button {
  background-color: #222;
  -webkit-border-radius: 2px;
  border-radius: 2px;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: #fff;
  display: inline-block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 800;
  margin-top: 2em;
  padding: 0.7em 2em;
  -webkit-transition: background-color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out;
  white-space: nowrap;
}

.wp-block-file .wp-block-file__button:hover,
.wp-block-file .wp-block-file__button:focus,
.wp-block-file .wp-block-file__button:active {
  background-color: #767676;
  -webkit-box-shadow: none;
  box-shadow: none;
}

/* Separator */
.wp-block-separator {
  border-color: #eee;
  border: 0;
}
/*--------------------------------------------------------------
3.0 Blocks - Formatting
--------------------------------------------------------------*/

/* Code */
.wp-block-code {
  background: transparent;
  border: 0;
  padding: 0;
}


/* Table */
.wp-block-table thead th {
  border-bottom: 2px solid #bbb;
  padding-bottom: 0.5em;
}

.wp-block-table tr {
  border-bottom: 1px solid #eee;
}

.wp-block-table th,
.wp-block-table td {
    border-color: #ccc;
    padding: 15px 25px;
}

.rtl .wp-block-table th,
.rtl .wp-block-table td {
  text-align: right;
}

/*--------------------------------------------------------------
4.0 Blocks - Layout Elements
--------------------------------------------------------------*/

/* Buttons */
.wp-block-button__link {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  background-color: #656565;
  color: #fff;
}

.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus,
.wp-block-button .wp-block-button__link:active {
  background-color: #32373c;
  color: #fff;
  -webkit-box-shadow: none;
  box-shadow: none;
}

body.page article.hentry .post-text a.wp-block-button__link,
body.page article.hentry .post-text a.wp-block-button__link,
body.page article.hentry .post-text a.wp-block-button__link {
  padding: 10px 20px;
}

body.page article.hentry .post-text a.wp-block-button__link:hover,
body.page article.hentry .post-text a.wp-block-button__link:focus,
body.page article.hentry .post-text a.wp-block-button__link:active {
  color: #fff;
}

/* Separator */
.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
  max-width: 100px;
}

/* Media & Text */
.wp-block-media-text {
  margin-bottom: 1.5em;
}

.wp-block-media-text *:last-child {
  margin-bottom: 0;
}

/*--------------------------------------------------------------
5.0 Blocks - Widgets
--------------------------------------------------------------*/

/* Archives, Categories & Latest Posts */

.wp-block-archives.aligncenter,
.wp-block-categories.aligncenter,
.wp-block-latest-posts.aligncenter,
.wp-block-categories.aligncenter ul {
  list-style-position: inside;
}
/* Comments */
.wp-block-latest-comments article {
  margin-bottom: 4em;
}
.blog:not(.has-sidebar) #primary .wp-block-latest-comments article,
.archive:not(.page-one-column):not(.has-sidebar) #primary .wp-block-latest-comments article,
.search:not(.has-sidebar) #primary .wp-block-latest-comments article {
  float: none;
  width: 100%;
}
.wp-block-latest-comments .avatar,
.wp-block-latest-comments__comment-avatar {
  border-radius: 0;
}
.wp-block-latest-comments a {
  -webkit-box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 1);
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 1);
}
.wp-block-latest-comments__comment-meta {
  margin-bottom: 0.4em;
}
.wp-block-latest-comments__comment-author,
.wp-block-latest-comments__comment-link {
  font-weight: 700;
  text-decoration: none;
}
.wp-block-latest-comments__comment-date {
  color: #767676;
  font-size: 10px;
  font-size: 0.625rem;
  font-weight: 800;
  letter-spacing: 0.1818em;
  margin-top: 0.4em;
  text-transform: uppercase;
}
.editor-block-list__block .wp-block-latest-comments__comment-excerpt p {
  font-size: 14px;
  font-size: 0.875rem;
}

/*woocommerce block style*/
.wc-block-grid .wc-block-components-product-title {
  font-size: 20px;
  font-weight: 600;
}
.wc-block-grid__product .wc-block-grid__product-price {
  color: #414141;
  font-size: 16px;
  font-weight: 600;
}
.wc-block-grid__product .wc-block-grid__product-price ins.wc-block-components-product-price__value.is-discounted {
  margin-left: 0;
}
.wc-block-grid__product .wc-block-grid__product-price del {
  color: #A7A7A7;
}
.wc-block-grid__products .wc-block-components-product-sale-badge {
  background-color: #FBCC36;
  color: #FFFFFF;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  -ms-border-radius: 0px;
  border-radius: 0px;
  border: none;
  font-weight: 400;
  line-height: initial;
  padding: 5px 10px;
  right: 0;
  top: 0;
}
.wc-block-grid__products .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link {
  background-color: #333333;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  -ms-border-radius: 0px;
  border-radius: 0px;
  padding: 10px 20px 10px;
  color: #ffffff;
  border: none;
  -webkit-transition: background-color 0.5s, color 0.5s;
  -moz-transition: background-color 0.5s, color 0.5s;
  -ms-transition: background-color 0.5s, color 0.5s;
  -o-transition: background-color 0.5s, color 0.5s;
  transition: background-color 0.5s, color 0.5s;
  font-weight: normal;
  font-size: 15px;
  line-height: 1.5;
}



/*--------------------------------------------------------------
5.0 Blocks - Color Settings
--------------------------------------------------------------*/

/* Background Color */

.has-tan-background-color {
  background-color: #E6DBAD;
}
.has-yellow-background-color {
  background-color: #FDE64B;
}
.has-orange-background-color {
  background-color: #ED7014;
}
.has-red-background-color {
  background-color: #D0312D;
}
.has-pink-background-color {
  background-color: #b565a7;
}
.has-purple-background-color {
  background-color: #A32CC4;
}
.has-blue-background-color {
  background-color: #3A43BA;
}
.has-green-background-color {
  background-color: #3BB143;
}
.has-brown-background-color {
  background-color: #231709;
}
.has-grey-background-color {
  background-color: #6C626D;
}
.has-black-background-color {
  background-color: #000000;
}

/* Text Color */
.has-tan-color {
  color: #E6DBAD;
}
.has-yellow-color {
  color: #FDE64B;
}
.has-orange-color {
  color: #ED7014;
}
.has-red-color {
  color: #D0312D;
}
.has-pink-color {
  color: #b565a7;
}
.has-purple-color {
  color: #A32CC4;
}
.has-blue-color {
  color: #3A43BA;
}
.has-green-color {
  color: #3BB143;
}
.has-brown-color {
  color: #231709;
}
.has-grey-color {
  color: #6C626D;
}
.has-black-color {
  color: #000000;
}

/*--------------------------------------------------------------
6.0 Blocks - Text Settings
--------------------------------------------------------------*/

@media screen and (min-width: 992px) {
  .has-larger-font-size {
    font-size: 36px;
  }
  .has-huge-font-size {
    font-size: 48px;
  }
}
