/*
Theme Name: UDesign Child - Penguin Patch
Theme URI: https://udesigntheme.com/
Description: Penguin Patch custom child theme for UDesign. Replaces the UDesign/Elementor header with a custom PHP/CSS header.
Author: Penguin Patch
Template: u-design
Version: 1.0.0
Text Domain: penguinpatch
*/

/*
 * The parent UDesign theme loads its own styles.
 * This stylesheet contains only the Penguin Patch header styles.
 */
@import url('https://fonts.googleapis.com/css2?family=Lobster&family=Lobster+Two:ital,wght@0,400;0,700;1,400;1,700&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

.lobster-regular {
    font-family: "Lobster", sans-serif;
    font-weight: 400;
    font-style: normal;
}

h1, h2, h3, h4 {
    font-family: "Lobster", sans-serif;
    font-weight: 400;
    font-style: normal !important;
    color: #DF1473;
}

p {
    font-family: "Open Sans", sans-serif;
    font-style: normal;
    line-height: 1.7;
}

#header.penguin-custom-header {
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    position: relative;
    z-index: 100;
}

#header.penguin-custom-header *,
#header.penguin-custom-header *::before,
#header.penguin-custom-header *::after {
    box-sizing: border-box;
}

/* Desktop branding area */
#header.penguin-custom-header .penguin-desktop-header {
    width: 100%;
    height: 250px;
    position: relative;
    background-image: url("../penguinpatch-udesign-child/images/Plain-Header-2025.png");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: auto 250px;
    overflow: hidden;
}

#header.penguin-custom-header .penguin-header-inner {
    width: 100%;
    max-width: 1200px;
    height: 250px;
    margin: 0 auto;
    position: relative;
}

/* Desktop logo */
#header.penguin-custom-header .penguin-logo {
    position: absolute;
    width: 638px;
    max-width: 60%;
    left: 5%;
    top: 75px;
    margin: 0;
    padding: 0;
}

#header.penguin-custom-header .penguin-logo a {
    display: block;
    margin: 0;
    padding: 0;
    line-height: 0;
}

#header.penguin-custom-header .penguin-logo img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
}

/* Phone + buttons */
#header.penguin-custom-header .penguin-contact {
    position: absolute;
    right: 15px;
    top: 48px;
    width: 250px;
    text-align: center;
    margin: 0;
    padding: 0;
}

#header.penguin-custom-header .penguin-phone {
    margin: 0 0 10px;
    padding: 0;
    color: #ed0a8c;
    font-family: 'Lobster Two', sans-serif;
    font-size: 2.2em;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    text-shadow: 2px 2px #fff;
}

#header.penguin-custom-header .penguin-phone a {
    color: inherit;
    text-decoration: none;
}

#header.penguin-custom-header .penguin-button {
    display: block;
    width: 166px;
    height: 43px;
    margin: 0 auto 8px;
    padding: 0 8px;
    border: 2px solid transparent;
    border-radius: 3px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-family: 'Lobster Two', sans-serif;
    font-size: 22px;
    font-weight: 800;
    font-style: italic;
    line-height: 41px;
    white-space: nowrap;
    transition: filter .15s ease, transform .15s ease;
}

#header.penguin-custom-header .penguin-button:hover,
#header.penguin-custom-header .penguin-button:focus {
    color: #fff;
    text-decoration: none;
    filter: brightness(.94);
}

#header.penguin-custom-header .penguin-button:active {
    transform: translateY(1px);
}

#header.penguin-custom-header .penguin-signup {
    background: #ed0a80;
    border-color: #c50069;
}

#header.penguin-custom-header .penguin-sponsor {
    background: #3ca9e6;
    border-color: #1785c3;
}

#header.penguin-custom-header .penguin-info {
    background: #83c63c;
    border-color: #5e9e20;
}

/* Desktop navigation */
#header.penguin-custom-header .penguin-navigation {
    width: 100%;
    min-height: 49px;
    margin: 0;
    padding: 0;
    background: #8c2bc7;
    background-image: url("../penguinpatch-udesign-child/images/nav-background.png");
    background-repeat: repeat-x;
    border-bottom: 1px solid #f0f0f0;
}

#header.penguin-custom-header .penguin-menu {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: nowrap;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

#header.penguin-custom-header .penguin-menu > li {
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
}

#header.penguin-custom-header .penguin-menu > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 47px;
    margin: 0;
    padding: 0 17px;
    color: #fff;
    font-family: "Open Sans", sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    border: 0;
}

#header.penguin-custom-header .penguin-menu > li > a:hover,
#header.penguin-custom-header .penguin-menu > li.current-menu-item > a,
#header.penguin-custom-header .penguin-menu > li.current-menu-ancestor > a {
    color: #fff;
    background: rgba(0,0,0,.08);
    text-decoration: none;
}

/* Hide submenu levels; the original header is a simple top navigation bar. */
#header.penguin-custom-header .penguin-menu ul {
    display: none;
}

/* Mobile header */
#header.penguin-custom-header .penguin-mobile-header {
    display: none;
}

#header.penguin-custom-header .penguin-mobile-logo-area {
    display: none;
}

#header.penguin-custom-header .penguin-mobile-actions {
    display: none;
}

#header.penguin-custom-header .penguin-mobile-nav {
    display: none;
}

/* Prevent theme's generic header rules from adding spacing. */
#header.penguin-custom-header .container,
#header.penguin-custom-header .header-inner {
    margin: 0;
    padding: 0;
}

/* Tablet/mobile breakpoint */
@media (max-width: 991px) {
    #header.penguin-custom-header .penguin-desktop-header {
        display: none;
    }

    #header.penguin-custom-header .penguin-mobile-header {
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 760 / 268;
        min-height: 113px;
        background-image: url("../penguinpatch-udesign-child/images/mobile-header.png");
        background-position: center top;
        background-repeat: no-repeat;
        background-size: 100% 100%;
    }

    #header.penguin-custom-header .penguin-mobile-actions {
        display: block;
        width: 100%;
        margin: 0;
        padding: 20px 0 25px;
        text-align: center;
        background: #fff;
    }

    #header.penguin-custom-header .penguin-mobile-actions .penguin-button {
        margin: 0 auto 7px;
    }

    #header.penguin-custom-header .penguin-mobile-actions .penguin-button:last-child {
        margin-bottom: 0;
    }

    #header.penguin-custom-header .penguin-navigation {
        display: none;
    }

    #header.penguin-custom-header .penguin-mobile-nav {
        display: block;
        width: 100%;
        margin: 0;
        padding: 6px 10px 7px;
        background: #8c2bc7;
        border-top: 1px dotted #fff;
        border-bottom: 1px dotted #fff;
    }

    #header.penguin-custom-header .penguin-mobile-nav select {
        display: block;
        width: 100%;
        height: 37px;
        margin: 0;
        padding: 4px 9px;
        border: 1px solid #b7b7b7;
        border-radius: 2px;
        background: #fff;
        color: #666;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 16px;
        line-height: 29px;
    }
}

/* Small phones */
@media (max-width: 480px) {
    #header.penguin-custom-header .penguin-mobile-actions {
        padding-top: 18px;
        padding-bottom: 25px;
    }

    #header.penguin-custom-header .penguin-button {
        width: 165px;
    }
}

/*******************************************************************
    page content
*******************************************************************/

/*#home-page-content, #page-content, .no_title_section #page-content {*/
.page-content {
    background: url("../penguinpatch-udesign-child/images/bodyContentBG.png") repeat-x scroll center top #FFFFFF;
}

/*******************************************************************
    footer
*******************************************************************/
#footer.penguin-footer {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #565656;
    font-family: Arial, Helvetica, sans-serif;
}

#footer.penguin-footer *,
#footer.penguin-footer *::before,
#footer.penguin-footer *::after { box-sizing: border-box; }

#footer.penguin-footer .penguin-footer-main {
    background: #d8eeee;
    border-top: 1px solid #f40a83;
}

#footer.penguin-footer .penguin-footer-inner {
    display: grid;
    grid-template-columns: 245px minmax(370px, 1fr) minmax(410px, 1fr);
    gap: 34px;
    width: min(1180px, calc(100% - 60px));
    min-height: 507px;
    margin: 0 auto;
    padding: 25px 0 30px;
}

/* Left navigation */
#footer.penguin-footer .penguin-footer-links ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#footer.penguin-footer .penguin-footer-links li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 17px;
    line-height: 1.3;
}

#footer.penguin-footer .penguin-footer-links li::before {
    content: "▶";
    position: absolute;
    left: 0;
    top: 1px;
    color: #a6a6a6;
    font-size: 10px;
}

#footer.penguin-footer .penguin-footer-links a {
    color: #f20a7d;
    font-size: 14px;
    font-weight: 400;
    text-decoration: none;
}

#footer.penguin-footer .penguin-footer-links a:hover,
#footer.penguin-footer .penguin-footer-links a:focus {
    color: #c60061;
    text-decoration: underline;
}

/* Center column */
#footer.penguin-footer .penguin-footer-about-top {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

#footer.penguin-footer .penguin-footer-logo {
    width: 142px;
    height: auto;
    flex: 0 0 auto;
}

#footer.penguin-footer .penguin-footer-address {
    padding-top: 1px;
    color: #f20a7d;
    font-size: 18px;
    line-height: 1.55;
}

#footer.penguin-footer .penguin-footer-name {
    margin-bottom: 3px;
    font-family: 'Lobster Two', cursive;
    font-size: 27px;
    line-height: 1.28;
}

#footer.penguin-footer .penguin-footer-address a {
    color: inherit;
    text-decoration: none;
}

#footer.penguin-footer .penguin-footer-guarantee {
    max-width: 430px;
    margin: 13px 0 0;
    color: #656565;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
    font-style: italic;
    line-height: 1.48;
}

/* Badges */
#footer.penguin-footer .penguin-footer-trust { padding-top: 1px; }

#footer.penguin-footer .penguin-footer-badges {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 20px;
    min-height: 180px;
}

#footer.penguin-footer .penguin-footer-badges img {
    display: block;
    width: auto;
    height: 150px;
    max-width: 32%;
    object-fit: contain;
}

/* Social icons */
#footer.penguin-footer .penguin-footer-social {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 27px;
    margin-top: 26px;
    padding-right: 8px;
}

#footer.penguin-footer .penguin-footer-social a {
    display: inline-flex;
    width: 31px;
    height: 31px;
    align-items: center;
    justify-content: center;
    color: #505050;
    text-decoration: none;
}

#footer.penguin-footer .penguin-footer-social svg {
    width: 31px;
    height: 31px;
    fill: currentColor;
}

#footer.penguin-footer .penguin-footer-social a:hover,
#footer.penguin-footer .penguin-footer-social a:focus { color: #f20a7d; }

/* Bottom bar */
#footer.penguin-footer .penguin-footer-bottom { background: #535353; }

#footer.penguin-footer .penguin-footer-bottom-inner {
    width: min(1180px, calc(100% - 60px));
    margin: 0 auto;
    padding: 15px 0 16px;
    color: #eee3db;
    font-size: 17px;
    line-height: 1.35;
}

#footer.penguin-footer .penguin-footer-bottom a {
    color: #eee3db;
    text-decoration: none;
}

#footer.penguin-footer .penguin-footer-bottom a:hover { text-decoration: underline; }

@media (max-width: 1050px) {
    #footer.penguin-footer .penguin-footer-inner {
        grid-template-columns: 205px 1fr 310px;
        gap: 22px;
        width: min(94%, 1180px);
    }

    #footer.penguin-footer .penguin-footer-badges { gap: 10px; }
    #footer.penguin-footer .penguin-footer-badges img { height: 122px; }
}

@media (max-width: 800px) {
    #footer.penguin-footer .penguin-footer-inner {
        display: block;
        width: min(90%, 620px);
        min-height: 0;
        padding: 30px 0 36px;
    }

    #footer.penguin-footer .penguin-footer-links,
    #footer.penguin-footer .penguin-footer-about,
    #footer.penguin-footer .penguin-footer-trust { margin-bottom: 32px; }

    #footer.penguin-footer .penguin-footer-about-top,
    #footer.penguin-footer .penguin-footer-badges,
    #footer.penguin-footer .penguin-footer-social { justify-content: center; }

    #footer.penguin-footer .penguin-footer-guarantee {
        max-width: 520px;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }

    #footer.penguin-footer .penguin-footer-bottom-inner {
        width: min(90%, 620px);
        text-align: center;
        font-size: 15px;
    }
}

@media (max-width: 480px) {
    #footer.penguin-footer .penguin-footer-about-top {
        display: block;
        text-align: center;
    }

    #footer.penguin-footer .penguin-footer-logo {
        margin: 0 auto 12px;
    }

    #footer.penguin-footer .penguin-footer-address { font-size: 17px; }
    #footer.penguin-footer .penguin-footer-name { font-size: 25px; }

    #footer.penguin-footer .penguin-footer-badges {
        gap: 7px;
        min-height: 0;
    }

    #footer.penguin-footer .penguin-footer-badges img {
        height: 92px;
        max-width: 31%;
    }

    #footer.penguin-footer .penguin-footer-social {
        gap: 19px;
        padding-right: 0;
    }
}


/* ==========================================================
   Legacy UDesign column shortcode compatibility
   ========================================================== */

/*
 * Old UDesign columns are float-based. The shortcode PHP renders these
 * before wpautop so WordPress does not insert BR/P tags between columns.
 */
body .pp-legacy-column {
    float: left !important;
    display: block !important;
    box-sizing: border-box !important;
    margin-top: 0 !important;
    margin-bottom: 20px;
    margin-right: 4% !important;
    padding-top: 0 !important;
}

body .pp-column-last {
    margin-right: 0 !important;
}

/* Two columns */
body .pp-col-1-2 { width: 48% !important; }

/* Three columns / mixed thirds */
body .pp-col-1-3 { width: 30.666667% !important; }
body .pp-col-2-3 { width: 65.333333% !important; }

/* Four columns / mixed fourths */
body .pp-col-1-4 { width: 22% !important; }
body .pp-col-3-4 { width: 74% !important; }

/* Five columns / mixed fifths */
body .pp-col-1-5 { width: 16.8% !important; }
body .pp-col-2-5 { width: 37.6% !important; }
body .pp-col-3-5 { width: 58.4% !important; }
body .pp-col-4-5 { width: 79.2% !important; }

/* Six columns / mixed sixths */
body .pp-col-1-6 { width: 13.333333% !important; }
body .pp-col-5-6 { width: 82.666667% !important; }

/* Clear each row after a *_last shortcode. */
body .pp-column-clear {
    display: block !important;
    clear: both !important;
    float: none !important;
    width: 100% !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

/* Defensive cleanup for old content that already contains stray BRs. */
body .pp-legacy-column + br,
body .pp-column-clear + br {
    display: none !important;
}

/* Embedded media should stay inside its column. */
body .pp-legacy-column img,
body .pp-legacy-column iframe,
body .pp-legacy-column video {
    max-width: 100% !important;
}

body .pp-legacy-column iframe {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 500 / 281;
}

body .pp-legacy-column p:first-child {
    margin-top: 0;
}

/* Stack every legacy column type on phones/tablets. */
@media (max-width: 767px) {
    body .pp-legacy-column {
        float: none !important;
        width: 100% !important;
        margin-right: 0 !important;
    }
}

/* ==========================================================
   Legacy UDesign [divider] and [content_block] shortcodes
   ========================================================== */

.pp-legacy-divider {
    display: block;
    clear: both;
    width: 100%;
    height: 0;
    margin: 24px 0;
    padding: 0;
    border: 0;
    border-top: 1px solid #ddd;
}

/*
 * Legacy content block.
 * Background-related values and text color are applied inline from
 * shortcode attributes so old page content keeps its original settings.
 */
.pp-content-block {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    background-origin: border-box;
}

.pp-content-block::after {
    content: "";
    display: table;
    clear: both;
}

/*
 * Old UDesign could keep the background from stretching beyond the site's
 * normal maximum width. This class provides that behavior when
 * max_bg_width="yes".
 */
.pp-content-block-max-bg {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

/*
 * iOS/mobile browsers handle fixed backgrounds inconsistently and can
 * create severe repaint issues, so fall back to scrolling on smaller screens.
 */
@media (max-width: 991px) {
    .pp-content-block-fixed {
        background-attachment: scroll !important;
    }
}

/* Main Penguin Patch background on ALL WordPress pages */
body.page .page-wrapper {
    --alpha-page-wrapper-bg-color: transparent !important;

    background-color: #ffffff !important;
    background-image: url("../penguinpatch-udesign-child/images/bodyContentBG.png") !important;
    background-repeat: repeat-x !important;
    background-position: center top !important;
}

/* ==========================================================
   Legacy UDesign [message] shortcode
   ========================================================== */

.pp-legacy-message {
    display: block;
    box-sizing: border-box;

    max-width: 100%;
    margin: 15px 0 25px;
    padding: 17px 20px;

    border-width: 1px;
    border-style: solid;

    font-family: "Open Sans", sans-serif;
    font-size: 18px;
    line-height: 1.7;
    font-style: normal;

    background-clip: padding-box;
}

.pp-legacy-message p {
    margin: 0;
    padding: 0;
    color: inherit;
}

.pp-legacy-message strong {
    color: inherit;
    font-weight: 700;
}

.pp-legacy-message a {
    color: #e81978;
    text-decoration: none;
}

.pp-legacy-message a:hover {
    text-decoration: underline;
}

/* ==========================================================
   Penguin Patch Full Width Page Template
   ========================================================== */

body.page .pp-fullwidth-page .main,
body.page .pp-fullwidth-page #main,
body.page .pp-fullwidth-page .main-content,
body.page .pp-fullwidth-page .content-wrapper {
    width: 100%;
    max-width: none;
}

.pp-fullwidth-page,
.pp-fullwidth-content {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}

.pp-page-content {
    width: min(1180px, calc(100% - 60px));
    margin: 0 auto;
    padding: 40px 0 60px;
}

.pp-page-hero {
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.pp-page-hero img {
    display: block;
    width: 100%;
    height: auto;
}

.pp-fullwidth-content h1 {
    margin-top: 0;
    color: #e81978;
    font-size: 42px;
    line-height: 1.2;
    font-style: normal;
}

.pp-fullwidth-content h2 {
    color: #e81978;
    font-size: 32px;
    line-height: 1.25;
    font-style: normal;
}

.pp-fullwidth-content p {
    margin-bottom: 20px;
}

.pp-fullwidth-content ul {
    margin-bottom: 25px;
}

/*
 * Use these inside a full-width content block when you want
 * the background to span the page while the text stays centered.
 */
.pp-full-band {
    position: relative;
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

.pp-inner {
    width: min(1180px, calc(100% - 60px));
    margin-left: auto;
    margin-right: auto;
}

/* Optional narrower reading-width container. */
.pp-inner-narrow {
    width: min(900px, calc(100% - 60px));
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 767px) {
    .pp-page-content {
        width: calc(100% - 30px);
        padding: 30px 0 45px;
    }

    .pp-inner,
    .pp-inner-narrow {
        width: calc(100% - 30px);
    }

    .pp-fullwidth-content h1 {
        font-size: 32px;
    }

    .pp-fullwidth-content h2 {
        font-size: 26px;
    }
}

/* ==========================================================
   Full Width Page - Old Penguin Patch Background
   ========================================================== */

/* UDesign outer page wrapper */
body.page .pp-fullwidth-page .page-wrapper {
    --alpha-page-wrapper-bg-color: transparent !important;

    background-color: #FFFFFF !important;
    background-image: url("../penguinpatch-udesign-child/images/bodyContentBG.png") !important;
    background-repeat: repeat-x !important;
    background-position: center top !important;
}


/* Centered white page */
body.page .pp-fullwidth-page {
    width: calc(100% - 80px);
    max-width: 1180px;

    margin: 0 auto;
    padding: 0;

    background: #fff;

    box-shadow:
            -3px 0 6px rgba(0, 0, 0, 0.20),
            3px 0 6px rgba(0, 0, 0, 0.20);
}


/* Main page content */
body.page .pp-fullwidth-page .pp-page-content {
    width: 100%;
    margin: 0;
    padding: 60px 50px;

    background: #fff;

    box-sizing: border-box;
}


/* Mobile */
@media (max-width: 767px) {

    body.page .pp-fullwidth-page {
        width: 100%;
        box-shadow: none;
    }

    body.page .pp-fullwidth-page .pp-page-content {
        padding: 30px 20px;
    }
}

/* ==========================================================
   UDesign title/breadcrumb and wrapper spacing overrides
   ========================================================== */

/* UDesign prints this chrome outside page.php/home.php/single.php. */
body.page .page-header,
body.page .page-title-bar,
body.page .breadcrumb,
body.page .breadcrumbs,
body.page .breadcrumb-wrap,
body.page .page-title,
body.page .page-title-wrapper,
body.blog .page-header,
body.blog .page-title-bar,
body.blog .breadcrumb,
body.blog .breadcrumbs,
body.blog .breadcrumb-wrap,
body.blog .page-title,
body.blog .page-title-wrapper,
body.single-post .page-header,
body.single-post .page-title-bar,
body.single-post .breadcrumb,
body.single-post .breadcrumbs,
body.single-post .breadcrumb-wrap,
body.single-post .page-title,
body.single-post .page-title-wrapper {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove UDesign spacing between the purple menu and our custom layouts. */
body.page #main,
body.page .main,
body.page #page-content,
body.page #content-container,
body.page #main-content,
body.page .main-content,
body.page .content-wrapper,
body.blog #main,
body.blog .main,
body.blog #page-content,
body.blog #content-container,
body.blog #main-content,
body.blog .main-content,
body.blog .content-wrapper,
body.single-post #main,
body.single-post .main,
body.single-post #page-content,
body.single-post #content-container,
body.single-post #main-content,
body.single-post .main-content,
body.single-post .content-wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

body.page .pp-fullwidth-page,
body.blog .pp-blog-wrap,
body.single-post .pp-blog-wrap {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* UDesign/Alpha cookie popup is intentionally disabled for this site. */
.cookies-popup {
    display: none !important;
}

/* ========================================
   PENGUIN PATCH HOME PAGE
   ======================================== */

body.home .page-wrapper {
    --alpha-page-wrapper-bg-color: transparent !important;
}

/* Entire homepage */
.pp-home-page {
    width: 100%;
    margin: 0;
    padding: 0;
}


/* ---------- SLIDESHOW ---------- */

.pp-home-slider {
    width: 100%;
    margin: 0;
    padding: 0;

    /* background visible on sides of slider */
    background-color: #0c80c7;
    background-image: url("../penguinpatch-udesign-child/images/sliderBG.png");
    background-repeat: repeat-x;
    background-position: center top;
    border-bottom: 4px solid #892EBD;
}

.pp-home-slider-inner {
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 0;
}

.pp-home-slider .metaslider {
    margin: 0 auto !important;
}


/* ---------- CONTENT BELOW SLIDER ---------- */

.pp-home-content {
    width: 100%;
    margin: 0;
    padding: 0;

    background-color: #ffffff;
    background-image: url("../penguinpatch-udesign-child/images/bodyContentBG.png");
    background-repeat: repeat-x;
    background-position: center top;

    border-top: 3px solid #fff;
}

.pp-home-content-inner {
    width: calc(100% - 80px);
    max-width: 1180px;
    margin: 0 auto;
    padding: 40px 0;
    box-sizing: border-box;
}


/* ---------- MOBILE ---------- */

@media (max-width: 767px) {

    .pp-home-slider-inner {
        width: 100%;
    }

    .pp-home-content-inner {
        width: 100%;
        padding: 25px 20px;
    }
}

/* ========================================
   PENGUIN PATCH BLOG
   ======================================== */

body.blog .page-wrapper {
    --alpha-page-wrapper-bg-color: transparent !important;

    background-color: #ffffff !important;
    background-image: url("../penguinpatch-udesign-child/images/bodyContentBG.png") !important;
    background-repeat: repeat-x !important;
    background-position: center top !important;
}


/* Main blog layout */

.pp-blog-wrap {
    display: flex;

    width: calc(100% - 80px);
    max-width: 1180px;

    margin: 0 auto;

    background: #fff;

    box-shadow:
            0 0 6px rgba(0, 0, 0, 0.4);
}


/* Left column */

.pp-blog-main {
    flex: 1;

    min-width: 0;

    padding: 40px 42px;

    background: #fff;
}


/* Individual post */

.pp-blog-post {
    position: relative;

    margin: 0 0 30px;
    padding: 0 0 25px;

    border-bottom: 1px solid #e3e3e3;
}


.pp-blog-title {
    margin: 0 0 8px;

    font-size: 29px;
    line-height: 1.15;
    font-style: normal;
}


.pp-blog-title a {
    color: #222;
    text-decoration: none;
}


.pp-blog-title a:hover {
    color: #e81978;
}


.pp-blog-meta {
    position: relative;

    margin-bottom: 12px;

    font-size: 14px;
    line-height: 1.5;

    color: #222;
}


.pp-blog-meta a {
    color: #e81978;
    text-decoration: none;
}


.pp-blog-separator {
    margin: 0 8px;
}


.pp-blog-edit {
    float: right;
}


.pp-blog-excerpt {
    font-size: 15px;
    line-height: 1.6;

    color: #222;
}


.pp-blog-excerpt p {
    margin-bottom: 10px;
}


.pp-read-more {
    margin: 8px 0 0;
}


.pp-read-more a {
    color: #e81978;
    font-style: italic;
    text-decoration: none;
}


.pp-back-top {
    text-align: right;

    font-size: 10px;
    line-height: 1;
}


.pp-back-top a {
    color: #e81978;
    text-decoration: none;
}


/* Sidebar */

.pp-blog-sidebar {
    flex: 0 0 350px;

    padding: 23px 22px 40px;

    background: #b8e5f4;

    box-sizing: border-box;
}


.pp-blog-sidebar h3 {
    margin: 0 0 15px;

    font-size: 20px;
    line-height: 1.2;

    color: #e81978;
    font-style: normal;
}


.pp-blog-sidebar ul {
    margin: 0;
    padding: 0;

    list-style: none;
}


.pp-blog-sidebar li {
    position: relative;

    margin: 0;
    padding: 11px 0 11px 15px;

    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}


.pp-blog-sidebar li::before {
    content: "→";

    position: absolute;
    left: 0;
    top: 11px;

    color: #8c8c8c;
}


.pp-blog-sidebar a {
    color: #e81978;
    text-decoration: none;
    line-height: 1.5;
}


.pp-blog-sidebar a:hover {
    text-decoration: underline;
}


/* Pagination */

.pp-blog-pagination {
    margin-top: 30px;
}


/* Mobile */

@media (max-width: 900px) {

    .pp-blog-wrap {
        display: block;

        width: calc(100% - 40px);
    }

    .pp-blog-sidebar {
        width: 100%;
    }
}


@media (max-width: 600px) {

    .pp-blog-wrap {
        width: 100%;
    }

    .pp-blog-main {
        padding: 30px 20px;
    }

    .pp-blog-sidebar {
        padding: 25px 20px;
    }

    .pp-blog-title {
        font-size: 24px;
    }

    .pp-blog-edit {
        float: none;
        display: block;
        margin-top: 4px;
    }
}

/* ========================================
   SINGLE BLOG POST
   ======================================== */

body.single-post .page-wrapper {
    --alpha-page-wrapper-bg-color: transparent !important;

    background-color: #ffffff !important;
    background-image: url("../penguinpatch-udesign-child/images/bodyContentBG.png") !important;
    background-repeat: repeat-x !important;
    background-position: center top !important;
}

.pp-single-post {
    margin: 0;
    padding: 0 0 30px;
}

.pp-single-content {
    font-size: 15px;
    line-height: 1.7;
    color: #222;
}

.pp-single-content img {
    max-width: 100%;
    height: auto;
}

.pp-single-featured-image {
    margin: 0 0 25px;
}

.pp-single-featured-image img {
    display: block;
    width: 100%;
    height: auto;
}

.pp-single-content h2,
.pp-single-content h3,
.pp-single-content h4 {
    margin-top: 28px;
}

.pp-single-nav {
    display: flex;
    justify-content: space-between;
    gap: 30px;

    margin-top: 35px;
    padding-top: 20px;

    border-top: 1px solid #e3e3e3;
}

.pp-single-prev,
.pp-single-next {
    width: 48%;
}

.pp-single-next {
    text-align: right;
}

.pp-single-nav a {
    color: #e81978;
    text-decoration: none;
}

.pp-single-nav a:hover {
    text-decoration: underline;
}

@media (max-width: 600px) {

    .pp-single-nav {
        display: block;
    }

    .pp-single-prev,
    .pp-single-next {
        width: 100%;
        text-align: left;
        margin-bottom: 10px;
    }
}


input.btn-pink, input.formBtn {
    background-color: #df1073;
    background: -webkit-linear-gradient(#e72776, #c92969);
    background: -o-linear-gradient(#e72776, #c92969);
    background: -moz-linear-gradient(#e72776, #c92969);
    background: linear-gradient(#e72776, #c92969);
    border: 2px solid #a32155;
    border-radius: 10px;
    margin: 15px;
    font-weight: bold;
    text-shadow: 1px 1px 1px #74183c;
    padding: 6px 55px;
    box-shadow: 2px 2px 3px #ccc;
    color: #FFF;
}

/* Make form dropdowns the same height as text fields */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
select {
    height: 51px !important;
    box-sizing: border-box !important;
}

.hp-field {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}