/* Theme 7: native CMS blocks, colors controlled by the appearance editor. */
.theme-7 .layout7-hero-link,.theme-7 .layout7-hero-link:hover,.theme-7 .layout7-hero-link:focus,.theme-7 .layout7-hero-link:active{text-decoration:none}
.theme-7 .layout7-contact-symbol svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.theme-7 .header #nav {flex:1;min-width:0;width:auto;margin:0}
.theme-7 .header #nav .navbar-nav {flex-wrap:nowrap;justify-content:flex-end;gap:22px}
.theme-7 .header #nav .navbar-nav li {white-space:nowrap;margin:0}
.theme-7 .header #nav .navbar-nav a {padding:12px 0;font-size:14px}
.theme-7 .header-logo {width:auto;flex:none}
.theme-7 .header-contact-icon {background:transparent!important;width:22px;height:28px;min-width:22px}
.theme-7 .header-contact-icon svg path {fill:var(--highlight-color)}
.theme-7 .section-preTitle::before,.theme-7 .section-preTitle::after {display:none}
.theme-7 .button-highlighted {border-radius:30px;padding:13px 26px;font-size:14px;color:#fff!important}
.theme-7 .layout7-footer {background:#292929;padding:95px 28px 0;margin-top:40px}
.theme-7 .layout7-footer-inner {max-width:1550px;margin:0 auto;background:var(--footer-color,#fff);border-radius:18px 18px 0 0;padding:75px 70px 24px}
.theme-7 .layout7-footer-columns {display:grid;grid-template-columns:1.05fr 1fr .75fr;gap:65px}
.theme-7 .layout7-footer-contacts>div {display:flex;gap:16px;margin-bottom:35px;align-items:flex-start}
.theme-7 .layout7-contact-symbol {display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid #888;border-radius:50%;font-size:22px}
.theme-7 .layout7-footer small {display:block;font-size:10px;letter-spacing:.6px;margin:4px 0 7px;color:var(--paragraph-color)}
.theme-7 .layout7-footer-contacts p,.theme-7 .layout7-footer-contacts a {font-size:14px;font-weight:600;color:var(--primary-color);line-height:1.7}
.theme-7 .layout7-footer-contacts .layout7-footer-email {color:var(--link-color)}
.theme-7 .layout7-footer-description {border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);padding:0 45px}
.theme-7 .layout7-footer-description img {width:160px;height:auto;margin:0 0 32px}
.theme-7 .layout7-footer-description p {font-size:14px;line-height:1.9}
.theme-7 .layout7-footer-menu h2 {font-size:17px;letter-spacing:0;margin:0 0 28px}
.theme-7 .layout7-footer-menu ul {display:flex;flex-direction:column;align-items:flex-start;gap:12px;list-style:none;margin:0;padding:0}
.theme-7 .layout7-footer-menu a {font-size:14px;color:var(--paragraph-color)}
.theme-7 .layout7-copyright {margin-top:45px;padding-top:24px;border-top:1px solid var(--border-color);text-align:center;font-size:10px;color:#999}
.theme-7 .layout7-copyright a {color:inherit}
@media(max-width:1199px) {.theme-7 .header #nav .navbar-nav{gap:14px}.theme-7 .header #nav .navbar-nav a{font-size:12px}.theme-7 .layout7-footer-inner{padding:50px 35px 22px}.theme-7 .layout7-footer-columns{gap:25px}.theme-7 .layout7-footer-description{padding:0 25px}}
@media(max-width:991px) {.theme-7 .header #nav .navbar-nav{align-items:stretch;gap:0}.theme-7 .header #nav .navbar-nav a{font-size:16px;padding:13px 0}.theme-7 .layout7-footer-columns{grid-template-columns:1fr 1fr}.theme-7 .layout7-footer-description{border-right:0}.theme-7 .layout7-footer-menu{grid-column:1/-1}.theme-7 .layout7-footer-menu ul{flex-direction:row;flex-wrap:wrap;gap:20px}}
@media(max-width:575px) {.theme-7 .layout7-footer{padding:35px 12px 0}.theme-7 .layout7-footer-inner{padding:32px 23px 20px}.theme-7 .layout7-footer-columns{grid-template-columns:1fr;gap:30px}.theme-7 .layout7-footer-description{border:0;padding:0}.theme-7 .layout7-footer-contacts>div:last-child{margin-bottom:0}}
.theme-7 {font-family:'Poppins',sans-serif;color:var(--paragraph-color,#656565);background:var(--background-color,#fff)}
.theme-7 .container {max-width:1440px;padding-left:24px;padding-right:24px}
.theme-7 .header {position:relative;background:var(--background-color,#fff)}
.theme-7 .header-main {position:relative!important;background:var(--background-color,#fff)!important;border-bottom:1px solid #eee;box-shadow:none}
.theme-7 .header-main-nav {min-height:110px;gap:28px}
.theme-7 .header-logo img {width:210px;max-height:65px;object-fit:contain}
.theme-7 .header-contact {margin-left:24px;flex-shrink:0}
.theme-7 .header-contact a {font-size:14px;font-weight:600;white-space:nowrap}
.theme-7 .header-contact-icon {color:var(--icon-color,#ff202b)}
.theme-7 .header-contact-icon svg {fill:currentColor}
.theme-7 .navbar-nav {gap:18px}
.theme-7 .navbar-nav a {font-size:14px;font-weight:600;color:var(--menu-color,#292929)}
.theme-7 .layout7-hero {position:relative;background:#292929 var(--banner-background,none) center/cover;margin-bottom:105px;color:#fff}
.theme-7 .layout7-hero-grid {display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;min-height:610px}
.theme-7 .layout7-hero-copy {padding:70px 0 80px;max-width:570px}
.theme-7 .layout7-hero h1 {font-size:clamp(32px,3.1vw,58px);font-weight:600;line-height:1.13;letter-spacing:-1.8px;color:#fff;margin:0 0 35px}
.theme-7 .layout7-hero p {font-size:18px;line-height:1.65;max-width:475px;color:#fff;margin-bottom:35px}
.theme-7 .layout7-hero-photo {width:calc(100% + max(0px,(100vw - 1440px)/2));max-width:none;height:650px;object-fit:cover;border-radius:10px 0 0 10px;transform:translateY(65px)}
.theme-7 .layout7-hero-link {display:inline-flex;gap:22px;align-items:center;border:1px solid white;border-radius:30px;padding:13px 24px;font-size:14px;color:#fff}
.theme-7 .layout7-hero-link:hover {background:#fff;color:#222}
.theme-7 .layout7-hero-link span:last-child {font-size:25px;line-height:1}
.theme-7 .section-block {padding:65px 0;background:var(--background-color,#fff)}
.theme-7 .section-preTitle span {background:#f3f3f3;color:#666;font-size:11px;letter-spacing:.5px;border-radius:3px}
.theme-7 .section-preTitle span span {padding:0}
.theme-7 h2 {font-size:clamp(30px,2.7vw,44px);font-weight:600;letter-spacing:-1px;color:var(--primary-color,#171717)}
.theme-7 .section-block-services .row {--bs-gutter-x:50px;--bs-gutter-y:28px}
.theme-7 .services-box {background:var(--background-secondary-color,#f3f3f3);border:0;border-radius:7px;padding:50px 35px;text-align:center;height:100%;box-shadow:none}
.theme-7 .services-box-body {padding:0;background:transparent}
.theme-7 .services-box-icon {width:70px;height:70px;margin:10px auto 22px;background:transparent;border:0}
.theme-7 .services-box-icon img {width:65px;height:65px;object-fit:contain;filter:none}
.theme-7 .services-box-title {font-size:22px;font-weight:600;color:var(--primary-color,#171717)}
.theme-7 .services-box p {font-size:14px;line-height:1.9;margin-top:20px}
.theme-7 .services-box-link {color:var(--link-color,#e71925);font-weight:600;margin-top:22px}
.theme-7 .about2-row {display:grid;grid-template-columns:1.2fr 1fr;gap:110px;align-items:center;padding:35px 0 95px}
.theme-7 .about2-item {width:100%;max-width:none}
.theme-7 .about2-row .section-subpage {font-size:15px;line-height:1.95}
.theme-7 .about2-image,.theme-7 .section-block-textimage {position:relative;margin:0}
.theme-7 .about2-image img,.theme-7 .section-block-textimage-image {max-height:520px;width:100%;object-fit:cover;border-radius:7px}
.theme-7 .about2-image::before {content:'';position:absolute;inset:-30px -30px 60px 70px;background:#f3f3f3;border-radius:12px;z-index:-1}
.theme-7 .button,.theme-7 .button-primary {border-radius:30px}
.theme-7 .footer {background:#292929 var(--footer-background,none) center/cover;padding:90px 24px 0;margin-top:65px}
.theme-7 .footer-top {background:var(--footer-background-color,#fff);max-width:1550px;margin:auto;border-radius:18px 18px 0 0;padding:70px 55px 40px}
.theme-7 .footer-top .container {padding:0}
.theme-7 .footer-top-row {display:grid;grid-template-columns:1fr 1.1fr .7fr;gap:60px}
.theme-7 .footer-top-contact,.theme-7 .footer-top-content,.theme-7 .footer-top-menu {width:auto;max-width:none;flex:none}
.theme-7 .footer-top * {color:var(--paragraph-color,#656565)}
.theme-7 .footer-top h2,.theme-7 .footer-top h3 {font-size:22px;letter-spacing:0;color:var(--primary-color,#171717)}
.theme-7 .footer-top p {font-size:14px;line-height:1.8}
.theme-7 .footer-top-email {color:var(--link-color,#e71925);font-size:16px}
.theme-7 .footer-bottom {background:var(--footer-background-color,#fff);max-width:1550px;margin:auto;border-top:1px solid #eee;color:#999;padding:25px}
.theme-7 .footer-bottom * {color:#999;font-size:11px}
.theme-7 .footer-logo img {max-width:180px}
@media(min-width:992px) {.theme-7 .layout7-hero {overflow:clip;overflow-clip-margin:110px}}
@media(max-width:1199px) {.theme-7 .header-main-nav{gap:16px}.theme-7 .header-logo img{width:155px}.theme-7 .navbar-nav{gap:8px}.theme-7 .header-contact{margin-left:0}.theme-7 .header-contact-icon{display:none}.theme-7 .layout7-hero-grid{gap:30px}.theme-7 .about2-row{gap:55px}.theme-7 .footer-top-row{gap:30px}}
@media(max-width:991px) {.theme-7 .header-main-nav{min-height:85px}.theme-7 .layout7-hero{margin-bottom:30px}.theme-7 .layout7-hero-grid{grid-template-columns:1fr;padding-bottom:30px;gap:0;min-height:0}.theme-7 .layout7-hero-copy{padding:45px 0 35px;max-width:640px}.theme-7 .layout7-hero h1{font-size:42px}.theme-7 .layout7-hero-photo{width:100%;height:380px;transform:none;border-radius:8px}.theme-7 .about2-row{gap:40px;padding:0 0 35px}.theme-7 .footer-top-row{grid-template-columns:1fr 1fr}.theme-7 .footer-top{padding:40px 25px}.theme-7 .footer{padding:45px 18px 0}.theme-7 .section-block{padding:40px 0}}
@media(max-width:575px) {.theme-7 .container{padding-left:20px;padding-right:20px}.theme-7 .layout7-hero h1{font-size:34px;letter-spacing:-1px}.theme-7 .layout7-hero p{font-size:16px}.theme-7 .layout7-hero-photo{height:285px}.theme-7 .services-box{padding:35px 24px}.theme-7 .about2-row{grid-template-columns:1fr;gap:30px}.theme-7 .footer-top-row{grid-template-columns:1fr;gap:35px}.theme-7 .footer-top{padding:35px 20px}.theme-7 .footer{padding:30px 12px 0}.theme-7 .footer-bottom{padding:20px 10px}.theme-7 .about2-image::before{display:none}}
/* Theme 7 keeps navigation in normal flow; shared JS adds an unnecessary offset. */
.theme-7 .header-breadcrumb {padding-top:0!important}
.theme-7 .header-breadcrumb-text {padding:28px 0}
.theme-7 .header-breadcrumb .section-subpage h1 {font-size:clamp(28px,3vw,40px);line-height:1.2;margin:0}
.theme-7 .header-breadcrumb-ul {margin-top:8px;flex-wrap:wrap}
@media(max-width:575px) {.theme-7 .header-breadcrumb-text{padding:20px 0}}
@media(max-width:1199px) {
 .theme-7 .header-main-nav {display:grid;grid-template-columns:1fr;grid-template-areas:"logo" "contact" "menu";justify-items:center;gap:10px;padding:20px 0}
 .theme-7 .header-logo {grid-area:logo;margin:0}
 .theme-7 .header-contact {grid-area:contact;display:flex!important;margin:0;justify-content:center}
 .theme-7 .header #nav {grid-area:menu;width:100%}
 .theme-7 .header #nav .navbar-nav {justify-content:center}
}
@media(max-width:991px) {
 .theme-7 .header-main {left:0;right:0;filter:none}
 .theme-7 .header-breadcrumb {display:none}
 .theme-7 .header-main-nav {grid-template-columns:1fr auto;grid-template-areas:"logo toggle" "menu menu";justify-items:start;column-gap:16px}
 .theme-7 .header .navbar-toggler {grid-area:toggle;justify-self:end}
 .theme-7 .header-main-nav > .header-contact {display:none!important}
 .theme-7 .header-breadcrumb .section-subpage {display:none}
 .theme-7 .header-breadcrumb-ul {margin-top:0}
}

.theme-7 .theme-svg-icon{display:inline-block;width:65px;height:65px;background-color:var(--footer-icon-color);mask:var(--icon-image) center/contain no-repeat;-webkit-mask:var(--icon-image) center/contain no-repeat}
