/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 5,700+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 4.11.10.1756704726
Updated: 2025-09-01 14:32:06

*/

* {
    line-height: 1.3;
    font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
}

:root {
    --padding: 20px;
    --stext-color: #666;
    --bg-color: #f5f5f5;
    --primary-color: #0b4b41;
}

.ast-primary-header-bar {
    display: none;
}

header.entry-header .entry-title {
    display: none;
}

.page .entry-header {
    display: none;
}

.ast-plain-container.ast-no-sidebar #primary {
    margin-top: 0;
    margin-bottom: 0;
}

.ast-container,
.ast-container-fluid {
    padding-left: 0;
    padding-right: 0;
}

.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar,
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-below-header-bar,
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-above-header-bar {
    display: none;
}

.inner {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
}

.entry-content .wp-audio-shortcode,
.entry-content .wp-embedded-audio,
.entry-content .wp-embedded-video,
.entry-content .wp-video,
.entry-content p {
    margin-bottom: 0;
}

.entry-content ul,
.entry-content ol {
    padding: 0;
    margin: 0;
}

#ast-scroll-top {
    display: none !important;
}

.padding {
    padding: 100px 20px;
}

.background {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
}

/** 메인페이지 **/
.index01-section {
    background-color: #e2ddd7;
}

.index02-section {
    background-color: black;
}

.index-t {
    font-size: 3.5rem;
    color: white;
    text-align: center;
    margin-bottom: 50px;
}

.bold {
    font-weight: bold;
}

.consults-box {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 40px 20px 40px 20px;
    border-radius: 30px;
    background-color: white;
}

.notice-list li {
    font-size: 1rem;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--stext-color);
}

.index03-section {
    background-image: url('/wp-content/uploads/2025/09/index03-back-1.jpg');
}

.index04-section {
    background-color: #dde4e0;
}

.index05-section {
    background-image: url('/wp-content/uploads/2025/09/index05-back.jpg');
}

.index07-section {
    background-color: var(--bg-color);
}

.t01 {
    margin-bottom: 50px;
}

.index08-section {
    background-color: #16463b;
}

.befores-box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    justify-content: center;
    align-items: center;
    gap: 30px;
    margin-bottom: 30px;
}

.befores-box:last-child {
    margin-bottom: 0;
}

.befores-box p {
    font-size: 1.2rem;
    color: white;
    display: block;
    text-align: center;
    background-color: black;
    padding: 10px 20px;
}

.index09-section {
    background-color: var(--bg-color);
    padding: 100px var(--padding) 0px var(--padding);
}

.title {
    margin-bottom: 80px;
}

.index09-t02 {
    margin-bottom: 100px;
}

.index09-t03 {
    margin-bottom: 150px;
}

.index09-t04 img {
    margin-bottom: -5px;
}

.index10-section {
    background-image: url('/wp-content/uploads/2025/09/index10-back.jpg');
}

.margintop80 {
    margin-top: 80px;
}

.index11-section {
    background-color: var(--bg-color);
}

.consult-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: var(--primary-color);
    color: #fff;
    padding: var(--padding);
    z-index: 9999;
}

.forms-box {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.forms-box .forms-name {
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
}

.wpcf7 form>div,
.wpcf7 form>p {
    margin-bottom: 0;
}

input[type="text"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type=reset],
input[type=tel],
input[type=date],
select,
textarea {
    height: 50px;
    border-radius: 0;
    font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
}

.wpcf7-spinner {
    display: none;
}

input[type="submit"] {
    width: 100%;
    height: 50px;
    border-radius: 0;
    background-color: #ffc55f;
    color: var(--primary-color);
    font-weight: bold;
}

input[type="submit"]:hover {
    transition: .5s;
    background-color: black;
}

input[type="submit"]:focus {
    background-color: black;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    display: none;
}

.wpcf7 .wpcf7-not-valid-tip {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
    display: none;
}

/* 모바일 하단 버튼 */
.consult-btn {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: var(--primary-color);
    z-index: 9999;
}

.consult-btn button {
    min-height: 45px;
    width: 100%;
    padding: 15px;
    border: none;
    background: transparent;
    font-weight: bold;
    font-size: 1rem;
}

/* 오버레이 */
.consult-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 9998;
}

/* 모바일 모달 */
.consult-modal {
    position: fixed;
    left: 0;
    bottom: -100%;
    width: 100%;
    background-color: var(--primary-color);
    color: #fff;
    padding: 30px var(--padding);
    transition: bottom 0.4s ease-in-out;
    z-index: 10000;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.3);
}

.consult-modal .close {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 24px;
    cursor: pointer;
}


/* 활성화 상태 */
.consult-modal.active {
    bottom: 0;
}

.consult-overlay.active {
    display: block;
}

.mobile-only,
.consult-modal,
.consult-overlay {
    display: none;
}

.wpcf7-list-item{
    margin: 0;
}

label{
    font-size: .9rem;
    color: rgba(255, 255, 255, 0.4);
}

.wpcf7 .wpcf7-form-control-wrap{
    text-align: right;
}

.forms-section .agree{
    text-align: right;
    margin-top: 10px;
}

.ast-single-post .entry-content a, .ast-comment-content a:not(.ast-comment-edit-reply-wrap a){
    text-decoration: none;
}

.forms-section a{
    font-size: .9rem;
    color: rgba(255, 255, 255, 0.4);
    display: block;
    font-weight: 500;
}

.wpcf7 .wpcf7-form-control-wrap{
    display: unset;
}

.agree a{
    display: inline-block;
}

li, ul{
    list-style-type: none;
}

/** 푸터 **/
.footer-section {
    padding-bottom: 120.8px;
    text-align: left;
    font-size: .9rem;
    color: white;
}

.footer-info {
    padding: 30px 0px;
    border-top: 1px solid rgba(255, 255, 255, 0.4);
    border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}

.footer-info p{
    margin-bottom: 10px;
}

.footer-info p:last-child{
    margin-bottom: 0;
}

.footer-t02{
    color: rgba(255, 255, 255, 0.4);
    padding-top: 30px;
}

.footer-t01 img{
    display: inline-block;
}

.footer-t01{
    padding-bottom: 40px;
}


@media all and (max-width:767px) {
    .mobile-only {
        display: block;
    }

    .consult-modal {
        display: block;
    }

    .pc-only {
        display: none;
    }

    .padding {
        padding: 60px 20px;
    }

    .index-t {
        font-size: 2.5rem;
    }

    .title {
        margin-bottom: 50px;
    }

    .consults-box {
        padding: 20px;
    }

    .notice-list li {
        gap: 5px;
        grid-template-columns: repeat(4, 1fr);
        font-size: .8rem;
    }

    .index04-section .title img,
    .index05-section .title img {
        max-width: 80%;
    }

    .index06-section .title img {
        max-width: 90%;
    }

    .index07-section .title img {
        max-width: 80%;
    }

    .index09-section {
        padding: 60px var(--padding) 0px var(--padding);
    }

    .index09-t02 {
        margin-bottom: 50px;
    }

    .index09-t03 {
        margin-bottom: 50px;
    }

    .index10-section .title img {
        max-width: 80%;
    }

    .margintop80 {
        margin-top: 50px;
    }

    .index11-section .title img,
    .index12-section .title img {
        max-width: 90%;
    }

    .befores-box p {
        font-size: .9rem;
    }

    .befores-box {
        gap: 20px;
        margin-bottom: 20px;
    }

    .forms-box {
        gap: 10px;
        grid-template-columns: 1fr;
    }

    .forms-box .forms-name {
        margin-bottom: 20px;
    }

    input[type="text"],
    input[type="number"],
    input[type="email"],
    input[type="url"],
    input[type="password"],
    input[type="search"],
    input[type=reset],
    input[type=tel],
    input[type=date],
    select,
    textarea,
    input[type=submit] {
        height: 40px;
    }

    .footer-section{
        padding-bottom: 45px;
    }
}

/* Tablet (가로폭 768px 이상, 1023px 이하) */
@media all and (min-width:768px) and (max-width:1023px) {}

/* PC Desktop (가로폭 1024 이상) */
@media all and (min-width:1024px) {}