:root{

/* =========================
   CONTACT VARIABLES
========================= */

/* SECTION */

--contact-padding:120px;

--contact-bg:
linear-gradient(
180deg,
#0a120d 0%,
#0b1510 50%,
#0a110c 100%
);

/* LAYOUT (BEZ ZMĚNY) */

--contact-grid-columns:1.3fr 1fr;
--contact-grid-gap:65px;


/* BADGE */

--contact-badge-size:11px;
--contact-badge-spacing:2px;
--contact-badge-weight:800;

--contact-badge-color:#9fd8b0;

--contact-badge-margin:16px;

--contact-badge-border:
rgba(159,216,176,.25);

--contact-badge-padding:6px;


/* TITLE */

--contact-title-size:52px;
--contact-title-weight:900;

--contact-title-color:rgba(245,245,245,0.88);

--contact-title-line:1.05;


/* TEXT */

--contact-text-size:15px;

--contact-text-color:rgba(235,240,235,0.65);

--contact-text-width:540px;

--contact-text-line:1.8;

--contact-text-margin:18px;


/* BUTTONS */

--contact-buttons-margin:38px;
--contact-buttons-gap:14px;


/* BUTTON */

--contact-btn-min-width:150px;

--contact-btn-padding:15px 18px;

--contact-btn-height:54px;

--contact-btn-radius:14px;

--contact-btn-size:14px;

--contact-btn-weight:800;

--contact-btn-color:#0b0f0c;

--contact-btn-bg:#9fd8b0;

--contact-btn-border:
rgba(159,216,176,0.18);

--contact-btn-hover-bg:#bfe9cc;

--contact-btn-hover-border:
rgba(159,216,176,0.35);


/* PRIMARY BUTTON */

--contact-primary-bg:#6fdc8c;

--contact-primary-border:
rgba(159,216,176,0.25);

--contact-primary-shadow:
0 20px 50px rgba(0,0,0,0.45);

--contact-primary-hover-bg:#bfe9cc;

--contact-primary-hover-shadow:
0 28px 70px rgba(0,0,0,0.55);

--contact-btn-color:#0b0f0c;


/* OPENING HOURS */

--opening-margin:35px;

--opening-padding:24px;

--opening-border:
rgba(159,216,176,.12);

--opening-title-size:12px;

--opening-title-spacing:2px;

--opening-title-color:#9fd8b0;

--opening-title-margin:16px;

--opening-grid-gap:14px;

--opening-row-size:14px;

--opening-row-color:rgba(235,240,235,0.60);

--opening-strong-color:rgba(245,245,245,0.90);

--opening-strong-weight:700;


/* RIGHT BOX */

--contact-box-padding:34px;

--contact-box-border:
rgba(159,216,176,.12);

--contact-box-bg:
rgba(255,255,255,.02);


/* BOX TITLE */

--contact-box-title-size:11px;

--contact-box-title-spacing:2px;

--contact-box-title-color:#9fd8b0;

--contact-box-title-margin:22px;


/* LINKS */

--contact-link-size:18px;

--contact-link-weight:800;

--contact-link-color:rgba(245,245,245,0.90);

--contact-link-hover:#9fd8b0;

--contact-tel-size:24px;

--contact-tel-weight:900;


/* ADDRESS */

--contact-address-margin:22px;

--contact-address-padding:22px;

--contact-address-border:
rgba(159,216,176,.12);

--contact-address-size:14px;

--contact-address-color:rgba(235,240,235,0.60);

--contact-address-line:1.8;


/* DIVIDER */

--contact-divider-margin:24px;

--contact-divider-bg:
rgba(159,216,176,.10);


/* INFO ROWS */

--contact-row-padding:14px;

--contact-row-border:
rgba(159,216,176,.08);

--contact-row-span-size:13px;

--contact-row-span-color:rgba(235,240,235,0.55);

--contact-row-strong-size:14px;

--contact-row-strong-color:rgba(245,245,245,0.90);

/* MOBILE */

--contact-mobile-gap:40px;

--contact-mobile-title:34px;

--contact-mobile-btn-size:15px;

--contact-mobile-btn-height:56px;

--contact-mobile-tel-size:22px;

}



.contact-clean{
padding:var(--contact-padding) 0;
background:var(--contact-bg);
}

.contact-clean-wrapper{
display:grid;
grid-template-columns:var(--contact-grid-columns);
gap:var(--contact-grid-gap);
align-items:start;
}

.contact-badge{
display:inline-block;
font-size:var(--contact-badge-size);
letter-spacing:var(--contact-badge-spacing);
color:var(--contact-badge-color);
font-weight:var(--contact-badge-weight);
margin-bottom:var(--contact-badge-margin);
border-bottom:1px solid var(--contact-badge-border);
padding-bottom:var(--contact-badge-padding);
}

.contact-title{
font-size:var(--contact-title-size);
font-weight:var(--contact-title-weight);
color:var(--contact-title-color);
line-height:var(--contact-title-line);
}

.contact-text{
margin-top:var(--contact-text-margin);
color:var(--contact-text-color);
max-width:var(--contact-text-width);
line-height:var(--contact-text-line);
font-size:var(--contact-text-size);
}

.contact-buttons{
margin-top:var(--contact-buttons-margin);
display:flex;
flex-direction:row;
flex-wrap:wrap;
gap:var(--contact-buttons-gap);
}

.contact-btn{
flex:1;
min-width:var(--contact-btn-min-width);

display:flex;
align-items:center;
justify-content:center;

padding:var(--contact-btn-padding);
min-height:var(--contact-btn-height);

border-radius:var(--contact-btn-radius);

text-decoration:none;
font-weight:var(--contact-btn-weight);
font-size:var(--contact-btn-size);

color:var(--contact-btn-color);

background:var(--contact-btn-bg);
border:1px solid var(--contact-btn-border);

transition:.25s ease;
}

.contact-btn:hover{
transform:translateY(-3px);
border-color:var(--contact-btn-hover-border);
background:var(--contact-btn-hover-bg);
}

.contact-btn.primary{
background:var(--contact-primary-bg);
border:1px solid var(--contact-primary-border);

box-shadow:
0 10px 24px var(--contact-primary-shadow);
}

.contact-btn.primary:hover{
background:var(--contact-primary-hover-bg);

box-shadow:
0 14px 30px var(--contact-primary-hover-shadow);
}

.opening-hours{
margin-top:var(--opening-margin);
padding-top:var(--opening-padding);
border-top:1px solid var(--opening-border);
}

.opening-hours h4{
font-size:var(--opening-title-size);
letter-spacing:var(--opening-title-spacing);
color:var(--opening-title-color);
margin-bottom:var(--opening-title-margin);
}

.hours-grid{
display:flex;
flex-direction:column;
gap:var(--opening-grid-gap);
}

.hours-grid div{
display:flex;
justify-content:space-between;
align-items:center;

font-size:var(--opening-row-size);
color:var(--opening-row-color);
}

.hours-grid strong{
color:var(--opening-strong-color);
font-weight:var(--opening-strong-weight);
}

.contact-clean-right{
display:flex;
}

.contact-info-box{
width:100%;
padding:var(--contact-box-padding);

border:1px solid var(--contact-box-border);
background:var(--contact-box-bg);
}

.contact-info-box h3{
font-size:var(--contact-box-title-size);
letter-spacing:var(--contact-box-title-spacing);
color:var(--contact-box-title-color);
margin-bottom:var(--contact-box-title-margin);
}

.contact-direct{
display:block;
font-size:var(--contact-link-size);
font-weight:var(--contact-link-weight);
color:var(--contact-link-color);

text-decoration:none;
margin-bottom:14px;

transition:.2s ease;
}

.contact-direct:hover{
color:var(--contact-link-hover);
transform:translateX(4px);
}

.contact-direct.tel{
font-size:var(--contact-tel-size);
font-weight:var(--contact-tel-weight);
}

.contact-address{
margin-top:var(--contact-address-margin);
padding-top:var(--contact-address-padding);

border-top:1px solid var(--contact-address-border);

color:var(--contact-address-color);

font-size:var(--contact-address-size);

line-height:var(--contact-address-line);
}

.info-divider{
margin:var(--contact-divider-margin) 0;

height:1px;

background:var(--contact-divider-bg);
}

.info-row{
display:flex;
justify-content:space-between;

padding:var(--contact-row-padding) 0;

border-bottom:1px solid var(--contact-row-border);
}

.info-row span{
color:var(--contact-row-span-color);
font-size:var(--contact-row-span-size);
}

.info-row strong{
color:var(--contact-row-strong-color);
font-size:var(--contact-row-strong-size);
}

@media(max-width:900px){

.contact-clean-wrapper{
grid-template-columns:1fr;
gap:var(--contact-mobile-gap);
}

.contact-title{
font-size:var(--contact-mobile-title);
}

.contact-buttons{
flex-direction:column;
}

.contact-btn{
min-width:100%;
font-size:var(--contact-mobile-btn-size);
min-height:var(--contact-mobile-btn-height);
}

.contact-direct.tel{
font-size:var(--contact-mobile-tel-size);
}

}