/*
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 6,000+ 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.13.1.1777423778
Updated: 2026-04-29 09:49:38

*/

* {
    line-height: 1.5;
}

*,
h1,
h2,
h3,
h4,
h5,
h6,
p,
div,
span,
a,
button,
input {
    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 {
    --primary: #003a8c;
    --bg: #191A1E;
    --big: 2.5rem;
    --xlarge: 2rem;
    --large: 1.5rem;
    --midium: 1.2rem;
    --small: 1.1rem;
    --tiny: 0.9rem;
    --tcolor: #666;
}

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

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

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

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

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

.entry-content :where(h1, h2, h3, h4, h5, h6) {
    margin-bottom: 0;
}

.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;
}

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

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

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

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

/** 헤더 **/
.ast-mobile-header-wrap .ast-primary-header-bar,
.ast-primary-header-bar .site-primary-header-wrap {
    width: 100%;
    max-width: 1680px;
    margin: 0 auto;
}

.main-header-menu .menu-link,
.main-header-menu>a {
    outline: 0;
}

.padding {
    padding: 100px 20px;
}

.main-header-menu .menu-link,
.main-header-menu>a {
    padding: 0 1.5em;
}

.ast-mobile-popup-drawer .ast-mobile-popup-header {
    background-color: var(--primary);
}

.ahfb-svg-iconset svg {
    fill: white;
}

.ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children>.ast-menu-toggle {
    top: 0;
}

/** 메인페이지 **/
.main {
    height: auto;
}

.main-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    justify-content: center;
    align-items: center;
    height: 100%;
}

.main-left {
    min-width: 0;
    overflow: hidden;
    height: 100%;
}

.mainSwiper {
    height: 100%;
}

.swiper-wrapper {
    height: 100%;
}

.swiper-slide {
    height: 100%;
    display: flex !important;
    flex-direction: column;
    justify-content: flex-end;
    padding: 80px 120px;
    box-sizing: border-box;
    background-size: cover;
    background-position: center;
}

.swiper-slide h1 {
    font-size: var(--big);
    color: white;
    margin-bottom: 10px;
    font-weight: 700;
}

.swiper-slide p {
    font-size: var(--midium);
    color: white;
}

.main-right {
    padding: 50px;
}

.link-grid {
    width: 100%;
    max-width: 680px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.link-grid .links a {
    display: block;
    overflow: hidden;
}

.links {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.links:hover {
    transform: translateY(-10px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

/** 서브페이지 **/
.tbanner-section {
    text-align: center;
    padding: 100px 20px 164px 20px;
}

.intro-banner {
    background-image: url('/wp-content/uploads/2026/04/intro_bg.jpg');
}

.contact-banner {
    background-image: url('/wp-content/uploads/2026/04/contact_bg.jpg');
}

.project-banner {
    background-image: url('/wp-content/uploads/2026/04/project_banner.jpg');
}

.tbanner-section .tbanner .tbanner-s {
    font-size: var(--midium);
    color: #B1B1B1;
}

.tbanner-section .tbanner .tbanner-t {
    margin-top: 5px;
    font-size: var(--xlarge);
    color: white;
    font-weight: bold;
}

.tab-section {
    margin-top: -64px;
    position: relative;
    background: rgba(0, 58, 140, 0.5);
}

.tab-menu {
    display: flex;
    justify-content: center;
    width: 100%;
}

.tab-menu li {
    flex: 1;
    list-style: none;
    text-align: center;
}

.tab-menu a {
    font-weight: 500;
    display: block;
    padding: 20px;
    color: #fff;
    transition: 0.3s;
    outline: 0;
}

.tab-menu a:hover {
    color: black;
    background-color: white;
}

.tab-menu .current-menu-item a {
    color: var(--primary);
    background-color: white;
}

.title {
    color: black;
    font-weight: bold;
    text-align: center;
    font-size: var(--xlarge);
    margin-bottom: 50px;
}

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

.greeting-t01 {
    font-size: var(--small);
    font-weight: bold;
    color: var(--primary);
}

.greeting-t02 {
    font-size: var(--large);
    color: black;
    font-weight: bold;
    margin: 10px 0px 20px 0px;
}

.greeting-t03 {
    font-size: var(--small);
}

.greeting-t04 {
    font-size: var(--small);
    margin-top: 30px;
}

.greeting-t04 b {
    color: black;
}

.service-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.service-item {
    background: #F5F5F5;
    padding: 30px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.service-item .text p {
    font-size: var(--small);
    color: black;
}

.map {
    margin-bottom: 50px;
}

.root_daum_roughmap .cont .section.lst {
    display: none;
}

.company-info {
    margin: 0 auto;
    border-top: 1px solid black;
    font-size: var(--small);
}

.info-row {
    display: grid;
    grid-template-columns: 200px 1fr;
    padding: 20px 0;
    border-bottom: 1px solid #eee;
}

.label {
    color: black;
    font-weight: bold;
}

.value {
    color: var(--tcolor);
}

#kboard-default-list .kboard-list-vote {
    display: none;
}

.kboard-default-poweredby {
    display: none;
}

.kboard-document-action .left,
.kboard-document-action .right {
    display: none;
}

#kboard-default-list img,
#kboard-default-document img,
#kboard-default-editor img,
#kboard-default-latest img {
    display: inline-block;
}

.br_m {
    display: none;
}

.kboard-card-gallery-poweredby {
    display: none;
}

/** 푸터 **/
.footer-section {
    position: relative;
}

.ast-footer-copyright p {
    display: none;
}

.footer-grid {
    color: #878787;
    font-size: var(--tiny);
    width: 100%;
    max-width: 1680px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: flex-end;
    gap: 30px;
}

.footer-grid .footer-left {
    text-align: left;
    line-height: 1.6;
}

.footer-grid .footer-right {
    text-align: right;
}

.cta {
    position: fixed;
    right: 0;
    bottom: 129px;
    z-index: 999;
}

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

@media all and (max-width:767px) {
    .hidden {
        display: none;
    }

    :root {
        --big: 2rem;
        --xlarge: 1.5rem;
        --large: 1.5rem;
        --midium: 1.2rem;
        --small: 1.1rem;
        --tiny: 0.9rem;
        --tcolor: #666;
    }

    .site-logo-img img {
        width: 80px;
    }

    .br_pc {
        display: none;
    }

    .br_m {
        display: block;
    }

    .main-grid {
        grid-template-columns: 1fr;
    }

    .main-right {
        padding: 50px 20px;
    }

    .link-grid {
        grid-template-columns: 1fr;
    }

    .swiper-slide {
        padding: 125px 20px;
    }

    .swiper-slide h1,
    .swiper-slide p {
        text-align: center;
    }

    .tbanner-section {
        padding: 80px 20px;
    }

    .tab-section {
        margin-top: 0;
        background-color: var(--primary);
    }

    .tab-menu {
        display: flex;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    .tab-menu li {
        flex: 0 0 auto;
    }

    .tab-menu a {
        padding: 10px 20px;
        font-size: var(--tiny);
    }

    .tab-menu::-webkit-scrollbar {
        display: none;
    }

    .padding {
        padding: 80px 20px;
    }

    .greeting-grid {
        grid-template-columns: 1fr;
    }

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

    .service-item {
        text-align: center;
        gap: 20px;
        flex-direction: column;
    }

    .service-item .icon img {
        width: 60px;
    }

    .info-row {
        gap: 10px;
        grid-template-columns: 1fr;
    }

    .footer-grid {
        grid-template-columns: 1fr;
    }

    .footer-grid .footer-right {
        text-align: left;
    }

    .cta {
        bottom: 0px;
    }

    .cta img{
        width: 50px;
    }
}

/* Tablet (가로폭 768px 이상, 1023px 이하) */
@media all and (min-width:768px) and (max-width:1023px) {
    header .ast-arrow-svg {
        display: none;
    }
}

/* PC Desktop (가로폭 1024 이상) */
@media all and (min-width:1024px) {
    header .ast-arrow-svg {
        display: none;
    }
}