:root{
    --gap-size: var(--cv-g-l);
    --grid-tc: 1fr;
}

.contact-main{
    gap:var(--cv-g-l);
}

.contact-upper-content{
    --ss-max-width: 1440px;
    margin-top: -100px;
    gap:var(--gap-size);   
}

.contact-upper-content, .business-info{
    display:grid;
    grid-template-columns: var(--grid-tc);
}

.glass-outside{
    background: url('/wp-content/themes/cverse/assets/elements/holo_2_a.webp') top / cover no-repeat;
    box-shadow: inset 0 0 0 1px white, var(--cv-shadow);
    border-radius:var(--cv-g-ms);
    align-items: stretch;
    overflow: hidden;
}

.glass-inside{
    background: rgba(255, 255, 255, .91);
    backdrop-filter: blur(60px);
    -webkit-backdrop-filter: blur(60px);
    border-radius: var(--cv-g-ms);
    box-shadow: inset 0 0 0 1px white;
    padding:var(--gap-size);
}

.contact-form-container-inner{
    height:100%;
}

.contact-info-container-inner{
    gap:var(--gap-size);
}

.cv-icon-wrapper{
    height: calc(var(--cv-g-l) * 2.25);
}

.sc-icon {
    box-shadow: var(--cv-shadow-s);
    background-color: var(--clr-pur-0);
}

.sc-icon > svg, .info-item-icon-wrapper > svg{
    fill:var(--clr-pur-1);
}

.forminator-button-submit{
    margin-top:var(--cv-g-m);
}

.info-item{
    --info-padding: var(--cv-g-ms);
    background-color:var(--clr-l-0);
    border-radius:var(--cv-g-m);
    padding:var(--info-padding);
    border:var(--cv-border-alt);
}

.form-submit-info{
    margin-top:var(--gap-size);
    padding:var(--cv-g-sm);
}

.form-submit-info > svg{
    fill:var(--clr-orn-1);
}

.info-item ul{
    gap:1px;
}

.map-wrapper {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    max-height: 480px;
    overflow: hidden;
    border-radius: 16px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.2);
}

.map-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    filter: grayscale(0.2) brightness(0.9) contrast(1.1);
    transition: filter 0.3s ease;
}

.map-wrapper:hover iframe {
    filter: grayscale(0) brightness(1);
}

.contact-form-container{
    flex-direction:column;
    background-color:transparent;
}

.info-item-address{
    --sp-color: var(--clr-t-2);
}

.info-item-etc{
    --sp-font-size:clamp(10px, 3vw, 12px);
}

/*------------------------------------------------------*/

.contact-mid-content{
    --ss-max-width: 1440px;
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap:var(--cv-g-ms);
}

.contact-mid-content .glass-inside{
    padding:var(--cv-g-ms)!important;
}

.why-cardverse-heading .cv-section-par{
    --sp-font-size:clamp(10px, 3vw, 12px);
    line-height: 1.1!important;
}

@media (min-width: 1140px){
    :root{
        --grid-tc: 1fr 1fr;
    }

    .faq-blocks-container{
        grid-template-columns: repeat(2, 1fr)!important;
    }
}

.forminator-field-textarea{
    position: relative;
    z-index:1;
}

.forminator-field-textarea .forminator-description{
    position:absolute;
    bottom: var(--cv-g-s);
    right: var(--cv-g-s);
    padding: var(--cv-g-xs) var(--cv-g-s);
    background-color: #ffffffbf;
    border-radius: var(--cv-g-sm);
    box-shadow: var(--cv-shadow-l);
    z-index:3;
}

.forminator-textarea{
    min-height:130px;
}

/* === FAQ alapstílusok === */
.contact-lower-content{
    --ss-max-width: 1440px;
    margin-top:var(--cv-g-xxl);
}

.faq-section-container{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: var(--cv-g-ms);
}

.faq-block-inner{
    height:100%;
}

.block-heading{
    margin-bottom:var(--cv-g-l);
}

/* === FAQ item === */
.faq-item {
    background-color:var(--clr-l-0);
    border-radius:var(--cv-g-sm);
    padding:var(--cv-g-sm) var(--cv-g-ms);
    overflow: hidden;
    border:var(--cv-border-alt);
    transition: var(--cv-transition);
}

/* Checkbox hack */
.faq-item input[type="checkbox"] {
    display: none;
}

.faq-question {
    --nav-font-size:12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    position: relative;
    transition: color 0.2s ease;
}

.faq-question::after {
    content: "＋";
    font-weight: bold;
    transition: transform 0.3s ease;
    font-size: 1.2rem;
}

.faq-item input[type="checkbox"]:checked + .faq-question::after {
    content: "－";
    transform: rotate(180deg);
}

.faq-item input[type="checkbox"]:checked + .faq-question {
    color: var(--clr-pur-1);
}

/* === Válasz rész (animációval) === */
.faq-answer {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    transition:
        grid-template-rows 0.3s ease,
        opacity 0.3s ease;
}

.faq-answer-inner {
    min-height: 0;
    overflow: hidden;
}

.faq-item input[type="checkbox"]:checked ~ .faq-answer {
    grid-template-rows: 1fr;
    opacity: 1;
}

.faq-item:has(input[type="checkbox"]:checked) {
    box-shadow: var(--cv-shadow-s);
}

.faq-items {
    gap:2px;
    display: flex;
    flex-direction: column;
}