/*
Theme Name: TTL Madibaev Design System
Theme URI: https://ttl.madibaev.online/
Author: TTL
Description: TTL theme built on the MadibaevOnline visual design system.
Version: 1.0.27
Requires at least: 6.7
Requires PHP: 8.3
Template: madibaevonline-company
Text Domain: ttl-madibaev-design-system
*/

@import url("../madibaevonline-company/style.css");
@import url("../ttl-design-system-theme/style.css");

/* Keep the parent visual language while preserving TTL content components. */
.ttl-home .site-header{position:sticky;top:0;z-index:40}
.ttl-home .ttl-site{min-height:0}
.ttl-home .ttl-service-bar{display:none}
.ttl-home .site-header .ttl-service-bar{display:none}
.site-header .site-header__inner>.site-brand{gap:10px;padding:12px 12px 12px 0}
.site-brand .ttl-brand-mark{width:65px;height:65px;display:block;flex:0 0 65px;object-fit:contain;border-radius:50%}
.site-brand--footer .ttl-brand-mark{width:65px;height:65px;flex-basis:65px}
.ttl-account-button{display:inline-grid;width:44px;height:44px;min-width:44px;flex:0 0 44px;place-items:center;border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:#fff;background:var(--color-primary);text-decoration:none;box-shadow:0 6px 16px rgba(30,95,168,.18);transition:color var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast),transform var(--motion-fast)}
.ttl-account-button .fa-solid{font-size:17px;line-height:1}
.ttl-account-button:hover{border-color:var(--color-primary-dark);color:#fff;background:var(--color-primary-dark);box-shadow:var(--shadow-soft);transform:translateY(-1px)}
.ttl-account-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;color:#fff}
@media (max-width:1319px){.site-header .mobile-locale{margin-left:0}}
.site-header .desktop-locale__panel.language-switcher--dropdown,
.site-header .mobile-locale__panel.language-switcher--mobile{display:grid;width:66.42px;gap:4px;box-sizing:border-box;border:1px solid var(--color-border);border-radius:12px;padding:6px;background:var(--color-surface);box-shadow:var(--shadow-elevated)}
.site-header .desktop-locale__panel.language-switcher--dropdown a,
.site-header .mobile-locale__panel.language-switcher--mobile a{width:52.42px;min-width:52.42px;justify-self:center;min-height:44px;box-sizing:border-box;border-radius:8px;padding:0;color:var(--color-muted);font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.04em}
.site-header .desktop-locale__panel.language-switcher--dropdown a:hover,
.site-header .desktop-locale__panel.language-switcher--dropdown a[aria-current="page"],
.site-header .desktop-locale__panel.language-switcher--dropdown a.is-active,
.site-header .mobile-locale__panel.language-switcher--mobile a:hover,
.site-header .mobile-locale__panel.language-switcher--mobile a[aria-current="page"],
.site-header .mobile-locale__panel.language-switcher--mobile a.is-active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-soft)}
.ttl-home .site-brand strong{color:var(--color-steel);font:700 17px/1 var(--font-sans)}
.ttl-home .site-brand small{display:block;margin-top:3px;color:var(--color-muted);font-size:10px;font-weight:400;letter-spacing:0}
.ttl-home .site-brand>span:last-child{color:inherit}
.ttl-home .site-navigation{margin-right:auto}
.ttl-home .site-menu>li>a{color:var(--color-muted)}
.ttl-home .site-menu>li>a:hover,.ttl-home .site-menu>li.current_page_item>a{color:var(--color-primary)}
.ttl-home .site-menu .menu-item-services>.sub-menu{width:220px}
.site-menu>.menu-item-home{position:relative;list-style:none}
.site-menu>.menu-item-home>a{gap:9px}
.site-menu>.menu-item-home>a::after{width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;content:"";transform:translateY(-2px) rotate(45deg);transition:transform var(--motion-fast)}
.site-menu>.menu-item-home:hover>a::after,.site-menu>.menu-item-home:focus-within>a::after{transform:translateY(2px) rotate(225deg)}
.site-navigation .menu-item-home>.sub-menu{position:absolute;z-index:80;top:calc(100% + 8px);left:0;display:grid;width:210px;gap:4px;margin:0;visibility:hidden;opacity:0;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px;background:var(--color-surface);box-shadow:var(--shadow-soft);list-style:none;pointer-events:none;transform:translateY(-6px);transition:visibility var(--motion-fast),opacity var(--motion-fast),transform var(--motion-fast)}
.site-navigation .menu-item-home>.sub-menu::before{position:absolute;right:0;bottom:100%;left:0;height:10px;content:""}
.site-navigation .menu-item-home:hover>.sub-menu,.site-navigation .menu-item-home:focus-within>.sub-menu{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}
.site-navigation .menu-item-home>.sub-menu a{display:flex;width:100%;min-height:42px;align-items:center;border:0;border-radius:7px;padding:9px 12px;color:var(--color-text);background:transparent;font-size:13px;white-space:normal}
.site-navigation .menu-item-home>.sub-menu a:hover,.site-navigation .menu-item-home>.sub-menu a:focus-visible,.site-navigation .menu-item-home>.sub-menu .current_page_item>a{color:var(--color-primary-dark);background:var(--color-soft)}
.mobile-navigation .site-menu>.menu-item-home{display:grid;gap:6px}
.mobile-navigation .site-menu>.menu-item-home>a::after{margin-left:auto;transform:translateY(-2px) rotate(45deg)}
.mobile-navigation .site-menu .menu-item-home>.sub-menu{display:none;gap:6px;margin:0 0 0 16px;border-left:2px solid rgba(30,95,168,.22);padding:0 0 0 10px;list-style:none}
.mobile-navigation .site-menu .menu-item-home.is-submenu-open>.sub-menu{display:grid}
.mobile-navigation .site-menu .menu-item-home.is-submenu-open>a::after{transform:translateY(2px) rotate(225deg)}
.mobile-navigation .site-menu .menu-item-home>.sub-menu a{min-height:44px;border-color:var(--color-border);color:var(--color-text);background:#f8fafc;white-space:normal}
.mobile-navigation .site-menu .menu-item-home>.sub-menu a:hover,.mobile-navigation .site-menu .menu-item-home>.sub-menu a:focus-visible,.mobile-navigation .site-menu .menu-item-home>.sub-menu .current_page_item>a{border-color:rgba(30,95,168,.35);color:var(--color-primary-dark);background:var(--color-soft)}
.mobile-navigation .site-menu>.menu-item-account>a,.mobile-navigation .site-menu>.menu-item-account>a:hover,.mobile-navigation .site-menu>.menu-item-account>a:focus-visible{border-color:var(--color-primary);color:#fff;background:var(--color-primary)}
.mobile-navigation .site-menu>.menu-item-account>a:hover,.mobile-navigation .site-menu>.menu-item-account>a:focus-visible{border-color:var(--color-primary-dark);background:var(--color-primary-dark)}
.ttl-home .ttl-hero-slider{max-width:1280px;margin:0 auto}
.ttl-home .ttl-hero-slider>.n2_clear{position:absolute!important;z-index:0;inset:0;width:100%!important;height:100%!important;min-height:100%!important;margin:0!important}
.ttl-home .ttl-hero-slider .n2-section-smartslider{max-width:none}
.ttl-home .ttl-hero-slider .n2-ss-slider-wrapper{overflow:hidden;border-radius:0;box-shadow:none}
/* The imported TTL stylesheet resets `.ttl-home` margins; restore the
   parent theme's centered main container for the homepage wrapper. */
.site-main.ttl-home{width:min(var(--container),calc(100% - 32px));margin:0 auto}

.ttl-contact-office-picker{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 20px 18px;border:1px solid rgba(30,95,168,.2);border-radius:var(--radius-md);padding:15px 16px;background:var(--color-soft)}
.ttl-contact-office-picker label{display:flex;min-width:0;align-items:center;gap:12px}
.ttl-contact-office-picker__icon{display:inline-grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:50%;color:#fff;background:var(--color-primary)}
.ttl-contact-office-picker__copy{display:flex;min-width:0;flex-direction:column;gap:3px}
.ttl-contact-office-picker__copy strong{color:var(--color-text);font-size:13px;line-height:1.35}
.ttl-contact-office-picker__copy span{color:var(--color-muted);font-size:12px;line-height:1.35}
.ttl-contact-office-picker__control{position:relative;width:min(100%,240px);flex:0 1 240px}
.ttl-contact-office-picker__control select{width:100%;height:46px;appearance:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:0 42px 0 14px;color:var(--color-text);background:#fff;font:600 14px/1.2 var(--font-sans);cursor:pointer;outline:none;transition:border-color var(--motion-fast),box-shadow var(--motion-fast)}
.ttl-contact-office-picker__control select:hover{border-color:rgba(30,95,168,.5)}
.ttl-contact-office-picker__control select:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(30,95,168,.14)}
.ttl-contact-office-picker__control>.fa-chevron-down{position:absolute;top:50%;right:15px;pointer-events:none;color:var(--color-primary);font-size:12px;transform:translateY(-50%)}
.ttl-contact-socials{border-top:0}
.ttl-contact-socials__links{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}
.ttl-contact-socials__links a{display:inline-grid;width:38px;height:38px;place-items:center;border:1px solid rgba(30,95,168,.22);border-radius:50%;color:var(--color-primary);background:var(--color-soft);text-decoration:none;transition:color var(--motion-fast),background var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}
.ttl-contact-socials__links a:hover{border-color:var(--color-primary);color:#fff;background:var(--color-primary);transform:translateY(-1px)}
.ttl-contact-socials__links a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}
.ttl-contact-address-list{gap:8px}
.ttl-contact-address{display:flex;width:fit-content;max-width:100%;align-items:flex-start;gap:8px;border:1px solid transparent;border-radius:var(--radius-sm);padding:7px 9px;color:var(--color-text);background:transparent;font:inherit;text-align:left;cursor:pointer;transition:color var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}
.ttl-contact-address i{flex:0 0 auto;margin-top:5px;color:var(--color-primary);font-size:11px}
.ttl-contact-address span{overflow-wrap:anywhere}
.ttl-contact-address:hover,.ttl-contact-address.is-active{border-color:rgba(30,95,168,.24);color:var(--color-primary);background:var(--color-soft)}
.ttl-contact-address:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}
.ttl-contact-address-list.has-multiple .ttl-contact-address{width:100%}
.ttl-contact-office{padding:22px 20px 4px}
.ttl-contact-office__services{display:flex;gap:13px;border-radius:var(--radius-md);padding:18px;background:var(--color-soft)}
.ttl-contact-office__services h2,.ttl-contact-office__title{margin:0;color:var(--color-text);font-size:16px;font-weight:700;line-height:1.35}
.ttl-contact-office__services p{margin:7px 0 0;color:var(--color-muted);font-size:14px;line-height:1.6}
.ttl-contact-office__title{margin-top:22px}
.ttl-contact-schedule{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.ttl-contact-schedule>div{display:flex;min-width:0;flex-direction:column;gap:6px;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:13px;background:#fff}
.ttl-contact-schedule strong{color:var(--color-text);font-size:13px;line-height:1.4}
.ttl-contact-schedule span{color:var(--color-muted);font-size:12px;line-height:1.4}
.ttl-contact-consent{display:flex;align-items:flex-start;gap:9px;color:var(--color-muted);font-size:12px;line-height:1.55}
.ttl-contact-consent input{width:16px;height:16px;flex:0 0 16px;margin:2px 0 0;accent-color:var(--color-primary)}
.ttl-contact-page .contact-map__caption span{min-width:0}
.ttl-contact-page .contact-map__caption span:first-child{overflow-wrap:anywhere}
.ttl-contact-page>.contact-breadcrumbs{margin-bottom:40px}

@media (max-width:900px){
 .site-header .ttl-account-button{display:none}
 .ttl-home .site-navigation,.ttl-home .desktop-search,.ttl-home .desktop-locale,.ttl-home .header-contact{display:none}
 .ttl-home .site-header__inner{gap:12px}
 .ttl-home .mobile-menu{display:block;order:-1}
 .ttl-home .site-brand{margin-right:auto}
 .ttl-home .mobile-locale{display:block}
}
@media (max-width:760px){
 .ttl-contact-page>.contact-breadcrumbs{margin-bottom:30px}
 .ttl-contact-schedule{grid-template-columns:1fr}
 .ttl-contact-office{padding-right:0;padding-left:0}
 .ttl-contact-office__services{padding:16px}
 .ttl-contact-office-picker{align-items:stretch;flex-direction:column;margin:0 10px 14px;gap:12px;padding:14px}
 .ttl-contact-office-picker__control{width:100%;flex-basis:auto}
}
@media (min-width:761px) and (max-width:767px){.ttl-contact-page>.contact-breadcrumbs{margin-bottom:30px}}
@media (max-width:720px){.ttl-contact-page>.contact-breadcrumbs{margin-bottom:26px}}

/* About company */
.ttl-about-page{display:grid;gap:28px;padding-bottom:56px}
.ttl-about-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);align-items:end;gap:36px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:clamp(30px,5vw,64px);background:radial-gradient(circle at 14% 16%,rgba(127,168,217,.34),transparent 30%),radial-gradient(circle at 84% 20%,rgba(13,148,136,.32),transparent 28%),linear-gradient(135deg,#0e1b2c 0%,#173651 48%,#0b2f3c 100%);box-shadow:var(--shadow-soft)}
.ttl-about-hero h1{max-width:760px;margin:0 0 18px;color:#fff;font-size:clamp(38px,5vw,68px);line-height:1.02}
.ttl-about-hero .page-kicker{color:#9fc5f2}
.ttl-about-hero__copy>p:last-child{max-width:720px;margin:0;color:#c6d5e8;font-size:clamp(16px,1.7vw,20px);line-height:1.7}
.ttl-about-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ttl-about-fact{display:flex;min-height:126px;flex-direction:column;justify-content:flex-start;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);padding:18px;background:rgba(255,255,255,.09);backdrop-filter:blur(8px)}
.ttl-about-fact strong{display:flex;min-height:44px;align-items:flex-end;color:#fff;font-size:clamp(28px,3vw,42px);font-variant-numeric:tabular-nums;line-height:1}
.ttl-about-fact span{margin-top:8px;color:rgba(255,255,255,.72);font-size:12px;line-height:1.35}
.ttl-about-story{display:block;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(28px,4vw,52px);background:var(--color-surface);box-shadow:var(--shadow-card)}
.ttl-about-story__copy h2,.ttl-about-section__heading h2,.ttl-about-cta h2{margin:0 0 16px;color:var(--color-text);font-size:clamp(28px,3.6vw,46px);line-height:1.12}
.ttl-about-story__copy>p:not(.page-kicker){margin:0 0 14px;color:var(--color-muted);font-size:16px;line-height:1.8}
.ttl-about-section{display:grid;gap:24px;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(28px,4vw,52px);background:#fff;box-shadow:var(--shadow-card)}
.ttl-about-section__heading{max-width:760px}
.ttl-about-section__heading>p:last-child{margin:0;color:var(--color-muted);font-size:16px;line-height:1.7}
.ttl-history-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.ttl-history-list li{position:relative;display:grid;grid-template-columns:12px 96px minmax(0,1fr);align-items:start;gap:14px;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;background:var(--color-soft)}
.ttl-history-list__dot{width:10px;height:10px;margin-top:5px;border:3px solid #fff;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}
.ttl-history-list time{color:var(--color-primary);font:700 14px/1.45 var(--font-mono)}
.ttl-history-list p{margin:0;color:var(--color-text);font-size:14px;line-height:1.65}
.ttl-achievements{background:linear-gradient(180deg,#fff 0%,var(--color-soft) 100%)}
.ttl-achievements__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ttl-achievement-card{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:24px;background:#fff;transition:transform var(--motion-fast),box-shadow var(--motion-fast),border-color var(--motion-fast)}
.ttl-achievement-card:hover{border-color:rgba(30,95,168,.35);box-shadow:var(--shadow-soft);transform:translateY(-2px)}
.ttl-achievement-card>span{display:grid;width:48px;height:48px;place-items:center;border-radius:50%;color:#fff;background:var(--color-primary)}
.ttl-achievement-card h3{margin:18px 0 9px;color:var(--color-text);font-size:18px;line-height:1.3}
.ttl-achievement-card p{margin:0;color:var(--color-muted);font-size:14px;line-height:1.65}
.ttl-leadership__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ttl-leader-card{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}
.ttl-leader-card__header{display:flex;align-items:center;gap:16px;padding:24px;background:linear-gradient(135deg,var(--color-soft),#fff)}
.ttl-leader-card__avatar{display:grid;width:64px;height:64px;flex:0 0 64px;place-items:center;border-radius:50%;color:#fff;background:var(--color-primary);box-shadow:0 10px 24px rgba(30,95,168,.2)}
.ttl-leader-card__avatar i{font-size:25px}
.ttl-leader-card__header h3{margin:0;color:var(--color-text);font-size:20px;line-height:1.3}
.ttl-leader-card__header p{margin:5px 0 0;color:var(--color-primary);font-size:13px;font-weight:700;line-height:1.45}
.ttl-leader-card__meta{display:grid;gap:0;margin:0;padding:0 24px}
.ttl-leader-card__meta>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;border-top:1px solid var(--color-border);padding:16px 0}
.ttl-leader-card__meta dt{color:var(--color-muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ttl-leader-card__meta dd{margin:0;color:var(--color-text);font-size:13px;line-height:1.5}
.ttl-leader-details{border-top:1px solid var(--color-border)}
.ttl-leader-details summary{display:flex;min-height:52px;align-items:center;justify-content:space-between;gap:12px;padding:0 24px;color:var(--color-text);font-size:14px;font-weight:700;cursor:pointer;list-style:none}
.ttl-leader-details summary::-webkit-details-marker{display:none}
.ttl-leader-details summary i{color:var(--color-primary);font-size:12px;transition:transform var(--motion-fast)}
.ttl-leader-details[open] summary i{transform:rotate(180deg)}
.ttl-leader-details ul{display:grid;gap:9px;margin:0;padding:0 24px 22px 46px;color:var(--color-muted);font-size:13px;line-height:1.6}
.ttl-leader-details li::marker{color:var(--color-primary)}
.ttl-about-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:clamp(28px,4vw,48px);color:#fff;background:radial-gradient(circle at 14% 16%,rgba(127,168,217,.34),transparent 30%),radial-gradient(circle at 84% 20%,rgba(13,148,136,.32),transparent 28%),linear-gradient(135deg,#0e1b2c 0%,#173651 48%,#0b2f3c 100%);box-shadow:var(--shadow-soft)}
.ttl-about-cta h2{color:#fff}
.ttl-about-cta h2{margin-bottom:10px}
.ttl-about-cta p:last-child{max-width:700px;margin:0;color:rgba(255,255,255,.78);font-size:15px;line-height:1.6}
.ttl-about-cta__button{display:inline-flex;min-height:48px;flex:0 0 auto;align-items:center;gap:10px;border:1px solid #fff;border-radius:var(--radius-sm);padding:0 20px;color:var(--color-primary-dark);background:#fff;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap;transition:color var(--motion-fast),background var(--motion-fast),transform var(--motion-fast)}
.ttl-about-cta__button:hover{color:#fff;background:transparent;transform:translateY(-1px)}
.ttl-about-cta__button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media (max-width:1050px){.ttl-about-hero{grid-template-columns:1fr}.ttl-about-facts{max-width:680px}.ttl-leadership__grid{grid-template-columns:1fr}}
@media (max-width:767px){.ttl-about-page{gap:18px;padding-bottom:36px}.ttl-about-hero{padding:28px 22px}.ttl-about-facts{grid-template-columns:1fr}.ttl-about-fact{min-height:92px}.ttl-about-story{padding:26px 22px}.ttl-history-list,.ttl-achievements__grid{grid-template-columns:1fr}.ttl-history-list li{grid-template-columns:12px 76px minmax(0,1fr);gap:10px;padding:17px 14px}.ttl-about-section{padding:26px 18px}.ttl-leader-card__header{align-items:flex-start;padding:20px}.ttl-leader-card__meta{padding:0 20px}.ttl-leader-card__meta>div{grid-template-columns:1fr;gap:6px}.ttl-leader-details summary{padding:0 20px}.ttl-leader-details ul{padding:0 20px 20px 38px}.ttl-about-cta{align-items:flex-start;flex-direction:column;padding:28px 22px}.ttl-about-cta__button{width:100%;justify-content:center}}
