.elementor-567 .elementor-element.elementor-element-4311547{--display:flex;border-style:solid;--border-style:solid;border-width:0px 0px 2px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:2px;--border-left-width:0px;border-color:#135198;--border-color:#135198;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:64px;--padding-bottom:64px;--padding-left:0px;--padding-right:0px;}.elementor-567 .elementor-element.elementor-element-4311547:not(.elementor-motion-effects-element-type-background), .elementor-567 .elementor-element.elementor-element-4311547 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F2;}.elementor-567 .elementor-element.elementor-element-151f341{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-567 .elementor-element.elementor-element-e69006a{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;color:#1E293B;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-search{--e-search-input-color:var( --e-global-color-text );}.elementor-widget-search.e-focus{--e-search-input-color:var( --e-global-color-text );}.elementor-widget-search .elementor-pagination{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-567 .elementor-element.elementor-element-73bbcd8 .e-search-input{background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#DDDDDD;border-radius:4px 4px 4px 4px;}.elementor-567 .elementor-element.elementor-element-73bbcd8{--e-search-input-padding-block-start:16px;--e-search-input-padding-inline-start:20px;--e-search-input-padding-block-end:16px;--e-search-input-padding-inline-end:20px;}.elementor-567 .elementor-element.elementor-element-183f192{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:64px;--margin-bottom:64px;--margin-left:0px;--margin-right:0px;}.elementor-567 .elementor-element.elementor-element-6b35291{--display:flex;}.elementor-567 .elementor-element.elementor-element-a9adf9d{--display:flex;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-567 .elementor-element.elementor-element-99622fe{--grid-columns:3;}.elementor-567 .elementor-element.elementor-element-99622fe .elementor-pagination{text-align:center;}body:not(.rtl) .elementor-567 .elementor-element.elementor-element-99622fe .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-567 .elementor-element.elementor-element-99622fe .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 10px/2 );}body.rtl .elementor-567 .elementor-element.elementor-element-99622fe .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 10px/2 );}body.rtl .elementor-567 .elementor-element.elementor-element-99622fe .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 10px/2 );}@media(min-width:768px){.elementor-567 .elementor-element.elementor-element-6b35291{--width:25%;}.elementor-567 .elementor-element.elementor-element-a9adf9d{--width:75%;}}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-search .elementor-pagination{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-567 .elementor-element.elementor-element-99622fe{--grid-columns:2;}}@media(max-width:767px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-search .elementor-pagination{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-567 .elementor-element.elementor-element-99622fe{--grid-columns:1;}}/* Start custom CSS for html, class: .elementor-element-67416ce */.hero-title {
  font-family: 'Archivo', sans-serif;
  font-weight: 900;
  font-size: 72px;
  line-height: 1;
  letter-spacing: -0.04em;
  color: #135198;
  margin: 0 0 32px;
  text-wrap: balance;
  -webkit-font-smoothing: antialiased;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-65f0149 */.ct-tyrolit-full-catalog {
    background: #135198;
    border-radius: 4px;
    padding: 18px 16px;
}

.ct-tfc-eyebrow {
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: #E41E22;
    margin-bottom: 6px;
}

.ct-tfc-title {
    font-family: "Archivo", sans-serif;
    font-weight: 900;
    font-size: 16px;
    color: #F5F5F2;
    margin-bottom: 8px;
    line-height: 1.25;
}

.ct-tfc-desc {
    font-family: "Inter", sans-serif;
    font-size: 12.5px;
    color: #C8D4E3;
    line-height: 1.5;
    margin-bottom: 14px;
}

.ct-tfc-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #E41E22;
    color: #F5F5F2;
    font-family: "JetBrains Mono", monospace;
    font-size: 12px;
    font-weight: 500;
    padding: 10px 14px;
    border-radius: 3px;
    text-decoration: none;
    transition: background 0.12s;
}

.ct-tfc-btn:hover {
    background: #c91a1e;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f61ab85 */.ct-cat-tree {
    font-family: "Archivo", sans-serif;
}

.ct-cat-group {
    margin-bottom: 2px;
}

.ct-cat-parent,
.ct-cat-parent:visited {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 12px 14px;
    background-color: #135198 !important;
    text-decoration: none;
    box-sizing: border-box;
    border-radius: 3px;
}

.ct-cat-parent-link {
    font-weight: 900;
    font-size: 13px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #F5F5F2 !important;
}

.ct-cat-parent .ct-cat-count {
    color: #C8D4E3 !important;
}

.ct-cat-children {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ct-cat-children li a,
.ct-cat-children li a:visited {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 14px 8px 28px;
    font-size: 13px;
    font-weight: 500;
    color: #4A5568 !important;
    text-decoration: none;
    border-left: 2px solid transparent;
    transition: color 0.12s, border-left-color 0.12s;
}

.ct-cat-children li a:hover,
.ct-cat-children li a.is-active {
    color: #135198 !important;
    border-left-color: #135198 !important;
}

.ct-cat-count {
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    color: #64748B;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-516224b */.ct-brand-catalogs {
    margin-top: 8px;
    padding-top: 16px;
    border-top: 1px solid #C8C9CC;
}

.ct-brand-catalogs-label {
    font-family: "Archivo", sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: #64748B;
    padding: 0 14px 8px;
}

.ct-brand-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    text-decoration: none;
    border-bottom: 1px solid #E5E6E8;
    transition: background 0.12s;
}

.ct-brand-row:last-child {
    border-bottom: none;
}

.ct-brand-row:hover {
    background: #F5F5F2;
}

.ct-brand-row-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ct-brand-row-name {
    font-family: "Archivo", sans-serif;
    font-weight: 700;
    font-size: 13px;
    color: #0F172A;
}

.ct-brand-row-desc {
    font-family: "Inter", sans-serif;
    font-size: 11.5px;
    color: #64748B;
}

.ct-brand-row-icon {
    color: #64748B;
    flex-shrink: 0;
    transition: color 0.12s;
}

.ct-brand-row:hover .ct-brand-row-icon {
    color: #135198;
}/* End custom CSS */
/* Start custom CSS *//* Overlay */
.ct-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.6);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    padding: 20px;
}

.ct-modal-overlay.is-active {
    display: flex;
}

.ct-modal {
    background: #F5F5F2;
    border-radius: 8px;
    max-width: 900px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 20px 60px rgba(15, 23, 42, 0.3);
}

.ct-modal-loading {
    padding: 80px;
    text-align: center;
    font-family: "JetBrains Mono", monospace;
    color: #64748B;
}

/* Header */
.ct-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 24px 0;
}

.ct-modal-eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-family: "JetBrains Mono", monospace;
    font-size: 13px;
    color: #64748B;
}

.ct-modal-badge {
    display: inline-flex;
    align-items: center;
    font-family: "JetBrains Mono", monospace;
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #135198;
    background: #EAF1FB;
    border: 1px solid #C8D9EF;
    border-radius: 3px;
    padding: 3px 8px;
}

.ct-modal-brand {
    color: #E41E22;
    font-weight: 700;
}

.ct-modal-close {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #FFFFFF;
    border: 1px solid #C8C9CC;
    border-radius: 4px;
    width: 32px;
    height: 32px;
    font-size: 18px;
    line-height: 1;
    color: #4A5568;
    cursor: pointer;
    transition: border-color 0.12s, color 0.12s;
    flex-shrink: 0;
}

.ct-modal-close,
.ct-modal-close:hover,
.ct-modal-close:focus,
.ct-modal-close:active {
    background: #FFFFFF !important;
    outline: none !important;
    box-shadow: none !important;
}

.ct-modal-close:hover {
    border-color: #E41E22 !important;
    color: #E41E22 !important;
}

/* Body */
.ct-modal-body {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 32px;
    padding: 24px;
}

.ct-modal-visual {
    background: #FFFFFF;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.ct-modal-visual img {
    max-width: 100%;
    height: auto;
}

.ct-modal-title {
    font-family: "Archivo", sans-serif;
    font-size: 26px;
    font-weight: 900;
    color: #0F172A;
    margin: 0 0 12px 0;
}

.ct-modal-desc-wrap {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #C8C9CC;
}

.ct-modal-desc {
    font-family: "Inter", sans-serif;
    font-size: 14px;
    color: #4A5568;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.ct-modal-desc.is-expanded {
    display: block;
    overflow: visible;
}


.ct-modal-desc-toggle,
.ct-modal-desc-toggle:hover,
.ct-modal-desc-toggle:focus,
.ct-modal-desc-toggle:active {
    background: none !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    padding: 8px 0 0;
    font-family: "Inter", sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: #135198 !important;
    cursor: pointer;
    transition: color 0.12s;
}

.ct-modal-desc-toggle:hover {
    color: #0F172A !important;
}

/* Specs */
.ct-modal-specs {
    display: flex;
    flex-direction: column;
}

.ct-modal-spec-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #E5E6E8;
}

.ct-modal-spec-label {
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #94A3B8;
}

.ct-modal-spec-value {
    font-family: "Inter", sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #0F172A;
    text-align: right;
}

/* Actions */
.ct-modal-actions {
    margin-top: 24px;
}

.ct-modal-btn-primary {
    display: block;
    text-align: center;
    background: #135198;
    color: #F5F5F2 !important;
    font-family: "Inter", sans-serif;
    font-weight: 700;
    font-size: 14px;
    padding: 14px 20px;
    border-radius: 4px;
    text-decoration: none;
    transition: background 0.12s;
}

.ct-modal-btn-primary:hover {
    background: #0e3d73;
}

/* Responsive */
@media (max-width: 767px) {
    .ct-modal-body {
        grid-template-columns: 1fr;
    }
}/* End custom CSS */