/*
 * Theme Name: Del Sol
 * Description: 
 * Author: Glen Stansberry from https://localfuse.co
*/
:root {
  --black: #000;
  --gray: #333;
  --light-gray: #777;
  --blue: #5cd8e5;
  --blue-darker: #2cbdcd;
  --green: #01a266;
  --green-darker: #018555;
  --yellow: rgb(254, 233, 111);
  --med-yellow: rgba(254, 233, 111, 0.4);
  --light-yellow: rgba(251, 232, 125, 0.06);
  --orange: rgba(255, 210, 0, 1);
  --shadow: 0px 0px 65px 0px rgba(112, 96, 5, 0.1);
  --spacer: 2rem;
  --default-font: 'Jost', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  --cursive-font: 'Oleo Script', cursive;
  --default-font-size: 1.25rem;
  --default-font-spacing: 1.45rem;
}

/* RESET */
html { font-size: 100%; line-height: 1.15; box-sizing: border-box; -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { font-size: 1rem; margin: 0; line-height: 1.5; }
*, *::before, *::after { box-sizing: inherit; font-family: inherit; font-size: inherit; line-height: inherit; }
blockquote, dl, dd, h1, h2, h3, h4, h5, h6, figure, p, pre { margin: 0; }
button,input,optgroup,select,textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0;}
button,input { overflow: visible; }
button,select { text-transform: none; }
button,[type="button"],[type="reset"],[type="submit"] { -webkit-appearance: button; cursor: pointer; }
button { background: transparent; border: 0; padding: 0; }
button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }
button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }
fieldset { border: 0; margin: 0; padding: 0.35em 0.75em 0.625em; }
textarea { overflow: auto; }
[type="checkbox"],[type="radio"] {box-sizing: border-box; padding: 0; }
[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button { height: auto; }
[type="search"] {-webkit-appearance: textfield; outline-offset: -2px; }
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }
[type="email"] { border: none; }
iframe { border: 0; }
img { border-style: none; }
ol,ul { list-style: none; margin: 0; padding: 0; }
a { text-decoration: none; background-color: transparent; }
.skip_link { display: none; }

/* Font stack */
body { font-family: var(--default-font); color: var(--black); font-size: 1rem; font-optical-sizing: auto; }

/* Colors */

/* Helpers */
.flex { display: flex; }
.flex--inline { display: inline-flex; }
.flex--center { justify-content: center; }
.flex--align-center { align-items: center; }
.flex--column { flex-direction: column; }
.thirds { display: flex; align-items: center; justify-content: space-between; }
.two_thirds { width: 62%; }
.one_third { width: 30%; }
.halves { display: flex; align-items: center; justify-content: center; width: 100%; }
.half { width: 48%; }

.white_bg { background: #fff; }
.yellow_grad { background: linear-gradient(var(--light-yellow)), #fff; }
.section.

.bold { font-weight: 600; }
.clear::after { display: block; content: ""; clear: both; }

/* Sticky sticks to the parent container. Be sure to add a top: ; value. Supported by all modern browsers with prefix */
.sticky { position: -webkit-sticky; position: sticky; }
.toggled { display: flex !important; }

/* Grid */

.layout {  }
.container { width: 90vw; max-width: 65rem; margin: 0 auto; }
.footer { margin-top: auto; }
.sidebar, .footer { padding: var(--spacer); }
.main_content { display: flex; flex-grow: 1; flex-shrink: 1; flex-basis: 0; min-width: 0; justify-content: center; margin-top: 2rem; }
.sidebar { flex: 0 0 320px; padding: 0; margin-left: 4.25rem; }
.top_callout { grid-area: top_callout; }
.content { flex: 1 100%; }
/* max-width: 41rem; */

/* Typography */
/* Use ems for font spacings, rems for everything else */
h1,h2,h3,h4,h5,h6, .logo_text { margin-bottom: 0.5em; }
h1 { font-size: 3rem; font-weight: 800; }
h2 { font-size: 2.2rem; font-weight: 700; }
h3 { font-size: 1.65rem; }
p { font-feature-settings: "kern" 1; font-kerning: normal; text-rendering: optimizeLegibility; margin-top: 0; margin-bottom: 1rem; }
b,strong { font-weight: bolder; }
small { font-size: 80%; }
code, pre { font-family: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace; background: #f8f9fa; }
code { font-size: 87.5%; color: #157cfa; word-break: break-word; }
pre { margin: 1.5rem; padding: 1rem; word-break: normal; color: #555; font-weight: 200; overflow: auto; white-space: pre-wrap; word-wrap: break-word; overflow: auto; }
a, a:visited { color: #000; }
a { transition-duration: 0.2s; }



.text_center { text-align: center; }
.italic { font-style: italic }
.lede { font-size: 1.3rem; font-weight: 350; }
.yellow_line { border-bottom: 4px solid var(--yellow); }
.yellow_line_thin { border-bottom: 2px solid var(--yellow); }
.h2_thin { font-weight: 300; font-size: 1.9rem; }

/* Content blocks */
section { }
section.underline { border-bottom: 1px solid #ccc; margin-bottom: 1.75rem; padding-bottom: 1.75rem; }
.section p { font-size: var(--default-font-size); line-height: var(--default-font-spacing); }
.section .thin_content { max-width: 56rem; margin-left: auto; margin-right: auto; }

.threes { display: flex; justify-content: space-between; }
.one_third img, .two_thirds img { width: 100%; object-fit: contain; border-radius: 6px; }
.testimonial { font-size: 1.1rem; font-weight: 200; }
.testimonial .testimonial_text { font-style: italic; line-height: 1.7rem; }
.testimonial .icon_wrapper { height: 1rem; }
.testimonial .icon { margin-right: 0.3rem; }
.testimonial .icon path { fill: var(--yellow); }


ul, ol { }
ul li, ol li { list-style: none; margin-bottom: var(--default-font-spacing); }
ul li:last-child, ol li:last-child { margin-bottom: 0; }
.disc { margin-left: var(--default-font-size); }
.disc li { list-style: disc; }
.inline_list { display: flex; }
.inline_list li { margin-right: 1rem; }
.check { display: inline-flex; }
.check li { padding-left: 1rem; line-height: 1; font-size: 1.15rem; margin-bottom: 0.65rem; display: flex; align-items: flex-start; }
.check .icon { height: 1.15rem; width: auto; margin: 0.12rem 0.2rem 0 0; }
.check .blue path { fill: var(--blue); }

/* Forms */
.form { display: inline-flex; flex-direction: column; flex-wrap: wrap; margin: 2rem 0; }
.form.inline { flex-direction: row; align-items: center; justify-content: center; }
.form.inline .btn { line-height: 1; }
.form .input { margin-bottom: 1rem; }
.form.inline .input { padding: 1rem 0.6rem; }
.form.inline .btn_wrapper { margin-left: 1rem; }
.form.inline .input, .form.inline .btn { margin-bottom: 0; }
.form label { margin-right: 0.5rem; }
/* Instead of trying to keep up with every single type of instance of input type, we just add the class .input to catch them all. */
.form .input, .comment-form textarea, .comment-form-comment textarea, .comment-form-comment email,  .comment-form-comment input, .comment-form input { padding: 0.7rem 0.6rem; border: 1px solid var(--gray); box-shadow: none; vertical-align: middle; border-radius: 4px; }
.comment-form-author, .comment-form-email, .comment-form-url { width: 30%; display: block; float: left; }
.btn, .btn:visited, .comment-form .submit, .comment-form .submit:visited, .post_content a.wp-block-button__link, .post_content a.wp-block-button__link:visited { border-radius: 5px; margin: 0; display: inline-flex; width: auto; cursor: pointer;  -webkit-user-drag: none; user-select: none; justify-content: center; align-items: center; padding: 1.26rem 1rem; font-weight: 600; text-decoration: none; border: none; border-bottom: none; background-color: var(--green); color: #fff !important; letter-spacing: 0; transition: all 0.25s; max-width: 20rem; line-height: 1.35; }
.post_content a.wp-block-button__link { max-width: none; }
.btn:hover, .btn:focus, .btn:active, .comment-form .submit:hover, .comment-form .submit:active, .comment-form .submit:active, .post_content a.wp-block-button__link:hover, .post_content a.wp-block-button__link:active { text-decoration: none;  background-color: var(--green-darker); border-bottom: none; }
.wp-block-buttons { margin-top: 3rem; }
.btn .icon_wrapper { height: 1.2rem; width: auto; margin-left: 0.45rem; }
.btn .icon { height: 100%; width: auto; opacity: 1; }
.btn .icon circle, .btn .icon path { fill: #fff; } 
.btn--large { font-size: 1.35rem; padding: 1.65rem 2.6rem; font-weight: 700; color: #fff !important; max-width: none; display: flex; align-items: center; justify-content: center; }
.btn--large .icon_wrapper { height: 1.45rem; width: auto; opacity: 0.75; }
.comment_form .btn, .comment_form .btn:visited { background: #fff; color: #222 !important; border: 2px solid #aaa; padding: 0.5rem 1rem; font-weight: 500; border-radius: 4px; }
.comment_form .btn:active, .comment_form .btn:hover { border: 2px solid #555; }
.cookie_consent { align-items: center; }
.cookie_consent input { margin-bottom: 0; margin-right: 0.5rem; }
.comment-form .required { color: red; }

/* Layout elements */
.cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); grid-gap: 25px; }
.card { display: flex; flex-direction: column;}

/* Mobile menu */
#toggle_nav, .toggle { display: none; }
@media (max-width: 768px) {
  #navigation.drawer { transition: transform .3s ease-in-out; top: 0; bottom: 0; min-height: 100vh; position: fixed; width: 300px; left: -340px; z-index: 9999; }
  #navigation:target { transform: translateX(340px); }
  .close { }
}

.section { padding: 2rem 0; margin: 2rem 0; }
.section.yellow { background-color: var(--light-yellow); }
.yellow_bg { background-color: var(--yellow); }
.yellow_bg_light { background-color: var(--med-yellow); }
a.yellow_bg_light { padding: 0.2rem; }
.drop_shadow { box-shadow: var(--shadow); background: #fff; padding: 3.5rem; border-radius: 0.95rem; }
.angle_line { pointer-events: none; overflow: hidden; display: block; }
.angle_line svg { transform: scale(2); width: 100%; height: auto; transform-origin: top center; overflow-clip-margin: content-box; overflow: hidden; }
.angle_line path { fill: var(--yellow); }
.angle_line.bottom { background-color: var(--yellow); }
.angle_line.bottom path { fill: #fff; }


/* Comment form */
.comments_wrapper { margin-top: 3rem; }
.comment_form { display: flex; justify-content: center; }
.comment-form { width: 100%; max-width: 40rem; }
.comment_header { font-size: 1.25rem; margin-bottom: 2rem; color: #444; }
.comment { margin-bottom: 3rem; }
.inline_comment_form { display: none; }
.children { margin-left: 2.5rem; }
.comment_name { font-weight: 500; }
.comment .avatar { height: 2.75rem; border: 3px solid #ddd; }
.comment .author .avatar { border: 3px solid var(--blue); }
.comment-reply-link { font-weight: 500; }
.comment_form .field { padding-right: 0; }
.comment_fields, .comment_field { width: 100%; }
.comment_field { height: 7rem; }
.comment_form .field { margin-bottom: 0; padding-left: 0; width: 100%; }
.comment_form .input { width: 100%; }
.comment_fields .field { padding-right: 0.75rem; }
.comment_fields .field:last-child { margin-right: 0; padding-right: 0; }
.comment_form .label_wrapper { margin-bottom: 0.5rem; }
.comment_form label { font-size: 0.9rem; }

/* Modal */
.modal__overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.75); display: flex; justify-content: center; align-items: center; }
.modal__container { position: relative; }
.modal_wrapper { overflow: hidden; border-radius: 4px; display: flex; max-width: 660px; max-height: 100vh; background: #eee; }
.modal_left { background-color: #fff; width: 55%; padding: var(--spacer); }
.modal_right { width: 45%; background-color: var(--light-gray); background-size: cover; background-repeat: no-repeat; background-image: url('/wp-content/themes/delsol/static/images/trucks-thin.jpg'); }
.modal__header { }
.modal__title { margin: 0;  line-height: 1.25; font-size: 1.7rem; }
.modal__close { border: 0; position: absolute; top: -14px; right: -14px; font-weight: 400; font-size: 0.95rem; background: #222; padding; 1rem; border-radius: 50px; color: #fff; z-index; 2; cursor: pointer; width: 28px; height: 28px; }
.modal__content { margin: var(--spacer) 0; }

@keyframes mmfadeIn {
    from { opacity: 0; }
      to { opacity: 1; }
}

@keyframes mmfadeOut {
    from { opacity: 1; }
      to { opacity: 0; }
}

@keyframes mmslideIn {
  from { transform: translateY(15%); }
    to { transform: translateY(0); }
}

@keyframes mmslideOut {
    from { transform: translateY(0); }
    to { transform: translateY(-10%); }
}
.micromodal-slide { display: none; }
.micromodal-slide.is-open { display: block; z-index: 9999; position: absolute; }
.micromodal-slide[aria-hidden="false"] .modal__overlay { animation: mmfadeIn .3s cubic-bezier(0.0, 0.0, 0.2, 1); }
.micromodal-slide[aria-hidden="false"] .modal__container { animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1); }
.micromodal-slide[aria-hidden="true"] .modal__overlay { animation: mmfadeOut .3s cubic-bezier(0.0, 0.0, 0.2, 1); }
.micromodal-slide[aria-hidden="true"] .modal__container { animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1); }
.micromodal-slide .modal__container,.micromodal-slide .modal__overlay { will-change: transform; }

/* Breadcrumb */
.breadcrumb { font-size: 0.95rem; margin: var(--spacer) auto; }
.breadcrumb a { color: #888; }

.icon_wrapper { height: 0.85rem; width: auto; display: flex; align-items: center; justify-content: center; }
.icon { height: 100%; width: auto; margin-right: 0.5rem; }

/* Header */
.logo_wrapper { display: flex; align-items: center; height: 52px; }
.logo_link { height: 100%; display: flex; align-items: center; color: var(--gray); }
.logo { height: 100%; width: auto; margin-right: 0.5rem; }
/*.logo path, .logo circle { fill: var(--orange); }
.logo path.white { fill: #fff; }
.logo_wrapper.white path, .logo_wrapper.white circle { fill: #fff;}
.logo_wrapper.white path.white { fill: none; }*/

.header { background: #fff; /*border-bottom: 1px solid #e0e0e0;*/ padding-top: 0.75rem; }
.header .container { display: flex; justify-content: space-between; align-items: center; padding: 0; height: 56px; }
.logo_text { margin-bottom: 0; font-size: 1.35rem; color: var(--gray); font-weight: 900; }
.header_menu { display: flex; align-items: center; }
.header_menu .header_li { padding: 0 0 0 1.6rem; font-size: 0.9rem; line-height: 1; font-weight: 700; margin-bottom: 0; }
.header_menu a { color: var(--gray); }
.header_menu a.phone { font-size: 0.85rem; }
.header_menu a:active, .header_menu a:hover { color: var(--black); }
a.header_cta { transition: 0.3s all; display: flex; justify-content: center; align-items: center; color: var(--green); }
a.header_cta:hover, a.header_cta:active { color: var(--green-darker); }
.header_menu .icon_wrapper { height: 2.7rem; width: 1.7rem; margin-right: 0rem; }
.header_menu .phone .icon_wrapper { height: 0.85rem; width: auto; }
.header_menu .phone path { fill: var(--gray); }
.header_cta path { width: auto; height: 100%; fill: var(--green); }
a.header_cta:hover, a.header_cta:active { color: var(--green-darker); }

.categories, .categories .container { display: flex; justify-content: center; align-items: center; }
.categories { padding: 1rem 0; }
.category, .category:visited { padding: 0 1.2rem; font-size: 0.88rem; }

.has_dropdown { position: relative; }
.dropdown { position: relative; display: block; }
.dropdown .dropdown_arrow { height: 0.35rem; width: auto; margin-left: 0.4rem; opacity: 0.35; transition: 0.1s; }
.dropdown.active_link .dropdown_arrow { transform: rotate(180deg);}
.dropdown_menu { position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 15rem; margin-left: 0; padding: 1rem 1.5rem; margin-top: 0.75rem; background: #fff; border-radius: 6px; /*box-shadow: 0px 10px 55px rgb(0 0 0 / 12%);*/ border: 1px solid #e0e0e0; }
.dropdown_menu.toggled {  }
.dropdown_menu a { font-weight: 400; }
.dropdown_menu a:hover, .dropdown_menu a:active { text-decoration: underline; }
.dropdown_menu .category { margin: 0; display: block; padding:  0.5rem 0.25rem; color: #222; }
.dropdown_menu .category:hover, .dropdown_menu .category:active { color: var(--blue-darker); } 

.top_callout { text-align: center; padding: 1.25rem 0 0 0; }
.top_callout .container { /*border-bottom: 1px solid #e7e9e9; border-top: 1px solid #e7e9e9;*/ padding: 1.4rem 0; }
.callout_header { font-weight: 600; }
.top_callout p { margin-bottom: 0; }
.top_callout a, .top_callout a:visited { color: var(--blue); text-decoration: underline; }

.cta_wrapper { margin-bottom: 5.5rem; }
.cta_wrapper .btn { margin: 0 auto;  border-bottom: 0 !important; }

.large_cta { border: 5px solid var(--yellow); padding: 3rem 2rem 1rem 2rem; display: flex; justify-content: center; align-items: center; flex-direction: column; text-align: center; max-width: 38rem; justify-self: center; margin: 6.5rem auto 4rem auto; border-radius: 0.95rem; position: relative; }
.large_cta .logo { width: auto; height: 2.8rem; margin-right: 0; position: absolute; top: -.2rem; background: #fff; left: calc(50%); transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); padding: 0 0.8rem; }
.large_cta ul { max-width: 80%; }
.large_cta li { margin-bottom: 0.85rem; text-align: left; line-height: 1.7rem; font-size: 1.3rem; }
.large_cta p { font-size: 1.3rem; line-height: 1.8rem; }
.large_cta .form { margin-top: 1rem; width: 100%; }
.large_cta h2 { font-size: 1.8rem; font-weight: 800; }
.large_cta label { margin-bottom: 0.75rem; }
.large_cta .input { width: 100%; max-width: 20rem; text-align: center; background-color: #fff; }
.large_cta .btn { margin: 0 auto; font-size: 1.25rem; display: flex; }
.tag { clip-path: polygon(5% 10%, 46% 1%, 46% 10%, 100% 0, 95% 90%, 31% 100%, 31% 90%, 0% 100%); background: var(--yellow); color: var(--gray); padding: 1rem 2.5rem; font-weight: 800; position: absolute; top: -2rem; text-align: center; font-size: 1.1rem; letter-spacing: 1px; }

.large_cta.horiz { max-width: 100%; }

.post_end { border-top: 1px solid #ddd; position: relative; margin: 4rem 0 2rem 0; width: 100%; }
.post_end .pipe_icon { width: auto; height: 3.1rem; position: absolute; background: #fff; left: calc(50%); transform: translate(-50%,-50%); -webkit-transform: translate(-50%, -50%); padding: 0 1.2rem; top: -0.5rem; }
.post_categories { max-width: 48rem; }
.post_categories li { list-style-type: none; margin-right: 1rem; }

/* Content */
.layout {}
.main_content { margin-bottom: 5rem; }
.layout.full .main_content { flex-direction: column; }
.layout.full .main_content .container { max-width: 55rem; margin: 0 auto; }
.post_wrapper { margin: 0 auto; display: flex; flex-direction: column; align-items: center; max-width: 56rem; }
.featured_img_wrapper { margin: 0 auto; overflow: hidden; margin-bottom: 3.5rem; }
.featured_img { object-fit: cover; width: 100%; border-radius: 3px; height: auto; }
.excerpt { font-size: 1.3rem; color: #444; max-width: 45rem; margin-bottom: var(--spacer); }
.post_wrapper article { align-items: center; }
.article_h1 { line-height: 1.25; font-size: 3rem; }
.article { display: flex; flex-direction: column; }
.article_content { display: flex; flex-direction: column; align-items: center; }
.post_content, .comments_wrapper { max-width: 48rem; margin: 0 auto; }
.post_content p, .post_content ul, .post_content ol { line-height: 1.95rem; font-size: 1.21rem; }
.post_content p { margin-bottom: 2.3rem; }
.post_content ul, .post_content ol { margin-left: 2.5rem; margin-bottom: var(--spacer); }
.post_content li { margin-bottom: 1.25rem; }
.post_content li:last-child { margin-bottom: 0; }
.post_content ul li { list-style-type: disc; }
.post_content ol li { list-style-type: decimal; }
.post_content h4 { font-size: 1.3rem; font-weight: 400; font-family: var(--default-font); color: #222; }
.post_content a, .post_content a:visited { color: var(--blue); border-bottom: 0.13rem solid var(--blue); transition: all 0.08s; }
.post_content a:hover, .post_content a:active { border-bottom: 0.25rem solid var(--blue); text-decoration: none; }
.article_lede { font-size: 1.3rem; line-height: 1.9rem; color: #222; }
blockquote.wp-block-quote p { color:  #666; margin-left: 2rem; }
.image_caption, .wp-block-image figcaption { margin: 0.5rem 0 1rem 0; }
.wp-block-image, .image_caption { margin-bottom: 2.5rem; }
.image_caption, .image_caption a, .wp-block-image figcaption, .wp-block-image figcaption a, .wp-block-image figcaption a:visited { color: #676767; font-size: 0.8rem; text-transform: uppercase; border-bottom: none; }
.wp-block-image figcaption a:hover { border-bottom: none; }

.price_wrapper { font-size: 0.9rem; }
.strike_price { color: #aaa; }
.sale_price { /*color: #029b05; padding: 0rem 0.3rem; border: 1px solid #02c008; border-radius: 5px;*/ margin-left: 0.25rem; }

/* Post lists */
.h2_tease { font-size: 1.05rem; line-height: 1.45rem; margin-bottom: 0.75rem; }
.h2_tease:hover {  }
.tease { padding-bottom: 1rem; }
.tease_wrapper {  padding-bottom: 1.3rem; display: flex; }
.tease_link {  }
.tease_link:hover { text-decoration: underline; }
.thumbnail { border-radius: 5px; opacity: 1; object-fit: cover; object-position: center center; }
.tease_post_meta { display: flex; flex-direction: column; }
.post_excerpt {  font-size: 0.88rem; line-height: 1.35rem; }
.tease .comment_count { display: flex; align-items: center; font-size: 0.88rem; color: #888; }
.tease .comment_count svg { height: 1rem; width: auto; margin-right: 0.4rem; }
.tease .comment_count path { fill: #bbb; }
.tease .box:hover > .h2_tease { color: #000; }

.list_box { display: grid;  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); grid-gap: 2.7rem; }
.list_box .box { flex-direction: column; width: 100%; height: auto; overflow: hidden; border-radius: 6px; text-align: center; box-shadow: var(--shadow); }

.box_link { display: flex; flex-direction: column; }
.box_link:hover, .box_link:active { border-color: var(--green); }
.box .thumbnail_wrapper { margin-bottom: 0.8rem; max-height: 230px; overflow: hidden; }
.box .thumbnail { object-fit: cover; width: 100%; height: 190px; border-radius: 0; }
.box .box_text { padding: 0 0 1rem 0; }
.box h3 { font-size: 1.35rem; font-weight: 500; }


/* Sidebar */
.sidebar .module { margin-bottom: 2rem; border-bottom: 1px solid #e7e9e9; padding-bottom: 1rem; }
.sidebar .thumbnail_wrapper { max-width: 90px; margin-right: 1rem; }
.sidebar .thumbnail { width: 90px; border-radius: 2px; }
.sidebar_title { font-size: 0.95rem; font-weight: 500; font-family: var(--default-font); }
.sidebar .item_list .item { margin-bottom: 0.35rem; }
.sidebar .item a { padding: 0.5rem; overflow: hidden; height: 80px; }
.sidebar .item_list a:hover { background: #f3f3f3; }

.sidebar .cta_wrapper { text-align: center; }
.sidebar .cta_wrapper h3 { border-bottom: 1px solid #ccc; font-size: 1.3rem; }

/* Homepage */

/* Single */
.single .content {  }
.post_meta { margin-bottom: 2rem; display: flex; justify-content: space-between; align-items: center; } 
.avatar_wrapper { display: flex; align-items: center; font-size: 1.1rem; }
.avatar { border-radius: 50px; height: 2.4rem; width: auto; margin-right: 0.7rem; }
p.photo_credit { font-size: 1rem; margin-top: 1.5rem; }
a.category_link, .photo_credit a, .photo_credit a:visited { color: #676767; border-bottom: none; font-size: 1rem; }
a.category_link:hover, a.category_link:active, .photo_credit a:active, .photo_credit a:hover { color: #111; border-bottom: none; }


.modal__container .form.cta .input { width: 100%; text-align: center; text-indent: 0; }
.modal__container .form.cta { border: none; }
.modal__container .form.cta .input.text { border: 2px solid var(--blue); margin-bottom: 0.75rem; border-radius: 4px; }

#cookie-law-info-bar { z-index: 0 !important; }

/* Footer */
.footer { background: #f9f9f9; margin-top: auto; }
.footer .container { justify-content: space-between; }
.footer .section { }
.footer_about { flex: 0 0 auto; max-width: 33%; }
.footer_lists { flex: 1 1 auto; justify-content: flex-end; font-size: 0.95rem; }
.footer_lists li { margin-bottom: 0.3rem; }
.footer .sub_menu li { list-style-type: disc; font-size: 0.9rem; margin-left: 1.2rem; margin-top: 0.5rem; }
.footer h2 { font-size: 1rem; color: #555; }
.footer a {}
.footer a:hover, .footer a:active { text-decoration: underline; }
.copyright { font-size: 0.95rem; color: #888; text-align: center; }


@media only screen and (max-width: 768px) {
  .logo_wrapper { justify-content: center; }
  body.home .logo--large { width: 13rem; }
  .header_cta { padding: 0.3rem 1rem; }
  .landing_wrapper, .modal_wrapper { flex-direction: column; justify-content: flex-start; }
  .modal__header { margin-top: 1rem; text-align: center; }
  .modal_wrapper { height: 80vh; }
  .modal__content { margin-bottom: 0; }
  .modal__content .cta { margin: 2rem 0 0 0; }
  .modal_right, .modal_left { width: 100%; }
  .modal_right { height: auto; }
  .modal_left { height: 100%; text-align: center; padding-bottom: 0; }
  .modal__title { text-align: center; }

  .landing_right, .modal_right { width: 100%; background-image: url('/wp-content/themes/delsol/static/images/phone-pic-bottom.png'); height: 100%; background-color: #fff; }
  .landing_copy { max-width: 100%; text-align: center; }
  .landing_left { width: 100%; padding: 2.5rem 2.5rem 0 2.5rem; height: auto; }
  .landing_header { font-size: 1.55rem; text-align: center;  }
  .form.home_cta { margin-left: auto; margin-right: auto; width: 100%; }
  .form.inline .input.text, .form.inline .btn { margin-bottom: 0; margin-left: 0; width: 100%; text-align: center; text-indent: 0; }
  .copyright { display: none; }

  .modal__container { max-width: 92%; }

  .comment_fields { flex-direction: column; }

}


/* Spacing Helpers */
.mt-0 { margin-top: 0; }
.mt-1 { margin-top: 1rem; }
.mt-2 { margin-top: 2rem; }
.mt-3 { margin-top: 3rem; }
.mt-4 { margin-top: 4rem; }
.mt-5 { margin-top: 5rem; }
.mb-0 { margin-bottom: 0; }
.mb-1 { margin-bottom: 1rem; }
.mb-2 { margin-bottom: 2rem; }
.mb-3 { margin-bottom: 3rem; }
.mb-4 { margin-bottom: 4rem; }
.mb-5 { margin-bottom: 5rem; }
.pt-0 { padding-top: 0; }
.pt-1 { padding-top: 1rem; }
.pt-2 { padding-top: 2rem; }
.pt-3 { padding-top: 3rem; }
.pt-4 { padding-top: 4rem; }
.pt-5 { padding-top: 5rem; }
.pb-0 { padding-bottom: 0; }
.pb-1 { padding-bottom: 1rem; }
.pb-2 { padding-bottom: 2rem; }
.pb-3 { padding-bottom: 3rem; }
.pb-4 { padding-bottom: 4rem; }
.pb-5 { padding-bottom: 5rem; }
.mt-0 { margin-left: 0; }
.ml-1 { margin-left: 1rem; }
.ml-2 { margin-left: 2rem; }
.ml-3 { margin-left: 3rem; }
.ml-4 { margin-left: 4rem; }
.ml-5 { margin-left: 5rem; }
.mr-0 { margin-right: 0; }
.mr-1 { margin-right: 1rem; }
.mr-2 { margin-right: 2rem; }
.mr-3 { margin-right: 3rem; }
.mr-4 { margin-right: 4rem; }
.mr-5 { margin-right: 5rem; }
.p-1 { padding: 1rem; }
.p-2 { padding: 2rem; }
.p-3 { padding: 3rem; }
.p-4 { padding: 4rem; }
.p-5 { padding: 5rem; }
.pl-0 { padding-left: 0; }
.pl-1 { padding-left: 1rem; }
.pl-2 { padding-left: 2rem; }
.pl-3 { padding-left: 3rem; }
.pl-4 { padding-left: 4rem; }
.pl-5 { padding-left: 5rem; }
.pr-0 { padding-right: 0; }
.pr-1 { padding-right: 1rem; }
.pr-2 { padding-right: 2rem; }
.pr-3 { padding-right: 3rem; }
.pr-4 { padding-right: 4rem; }
.pr-5 { padding-right: 5rem; }