.ayfa-projects{padding:20px 0 70px}.ayfa-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.ayfa-project-grid .card-project{min-width:0;border:1px solid #e5e8ed;border-radius:16px;overflow:hidden;background:#fff}.ayfa-project-grid .image{display:block;overflow:hidden}.ayfa-project-grid img{width:100%;height:280px;object-fit:cover}.ayfa-project-grid .content{padding:25px}.ayfa-project-grid h3{font-size:24px;line-height:1.35;margin:12px 0 20px}.ayfa-project-back{display:inline-block;color:#007d9e;margin:0 0 22px;font-weight:600}.ayfa-project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:35px}.ayfa-gallery-item{display:block;background:#f1f4f7;border-radius:12px;overflow:hidden}.ayfa-gallery-item img{width:100%;height:440px;object-fit:contain}.ayfa-gallery-item span{display:block;padding:14px 20px;color:#18233b}.ayfa-lightbox{border:0;background:#101929;color:white;border-radius:12px;padding:16px;max-width:94vw;max-height:94vh}.ayfa-lightbox::backdrop{background:#08101de8}.ayfa-lightbox img{display:block;max-height:76vh;max-width:86vw;object-fit:contain}.ayfa-lightbox-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}.ayfa-lightbox button{background:#fff;color:#18233b;padding:8px 16px;border:0;border-radius:6px;cursor:pointer}.ayfa-lightbox p{color:white;font-size:14px}.ayfa-menu-toggle{position:absolute;right:5px;top:8px;background:transparent;color:inherit;border:1px solid #ddd;border-radius:5px;width:32px;height:32px}#menu-mobile-menu>li{position:relative}#menu-mobile-menu .ayfa-managed-sub[hidden]{display:none!important}#menu-mobile-menu .ayfa-managed-sub:not([hidden]){display:block!important}.main-nav .nav-list{column-gap:22px}@media(max-width:1200px){.main-nav .nav-list{column-gap:13px}}@media(max-width:900px){.ayfa-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.ayfa-project-grid,.ayfa-project-gallery{grid-template-columns:1fr}.ayfa-project-gallery img{height:360px}.ayfa-project-grid img{height:260px}}
/* Revision 5: scoped corrections, original template motion stays intact. */
.ayfa-project-card{display:flex;flex-direction:column;min-width:0;border:1px solid #e1e6ee;border-radius:16px;overflow:hidden;background:#fff;height:100%}
.ayfa-project-card .ayfa-project-cover{display:block;aspect-ratio:4/3;overflow:hidden}
.ayfa-project-card .ayfa-project-cover img{display:block;width:100%;height:100%;object-fit:cover}
.ayfa-project-card-body{padding:26px;display:flex;flex-direction:column;flex:1;min-height:230px}
.ayfa-project-card-body h3{font-size:23px;line-height:1.35;margin:14px 0 24px}
.ayfa-project-more{margin-top:auto;color:#007d9e;font-weight:600}
.ayfa-project-detail{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:42px;align-items:start}
.ayfa-project-stage{height:540px;background:#edf1f5;border-radius:16px;overflow:hidden}
.ayfa-project-stage a{display:block;height:100%}
.ayfa-project-stage img{display:block;width:100%;height:100%;object-fit:contain}
.ayfa-project-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0}
.ayfa-project-controls button{width:52px;height:48px;border:0;border-radius:10px;background:#00afd3;color:#14213a;font-size:26px;cursor:pointer}
.ayfa-project-controls button:disabled{opacity:.35;cursor:default}
.ayfa-project-description h2{font-size:clamp(28px,3vw,42px);line-height:1.2;margin:15px 0 24px}
.ayfa-project-description p{margin-bottom:30px;line-height:1.8}
.ayfa-project-description .tf-btn{white-space:normal}
.s-page-contact .wg-office .entry-image{width:230px!important;height:230px!important;max-width:100%;border-radius:50%;overflow:hidden;margin-left:auto;margin-right:auto}
.s-page-contact .wg-office .entry-image img{width:100%!important;height:100%!important;object-fit:cover;border-radius:50%}
.s-page-faq .sb-service .content{left:0!important;right:0!important;width:100%!important;padding:30px!important;box-sizing:border-box}
.s-page-faq .sb-service .content p{max-width:100%;font-size:clamp(24px,2vw,30px);line-height:1.35;white-space:normal;overflow-wrap:break-word}
.s-page-faq .sb-service .content p span{display:inline;white-space:normal}
@media(max-width:767px){.ayfa-project-detail{grid-template-columns:1fr;gap:20px}.ayfa-project-stage{height:400px}.ayfa-project-card-body{min-height:220px}}

/* Keep original header sizing and dropdown animation. */
.tf-header .logo-site{flex-shrink:0;overflow:visible}
.tf-header #logo_header{object-fit:contain;object-position:left center}
.main-nav .nav-list>.item:focus-within>.sub-nav{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
/* Keep long region dropdown inside the viewport without changing its motion. */
.header-inner .nav-list .ayfa-nav-area>.sub-nav{left:auto;right:0;max-width:calc(100vw - 32px);max-height:calc(100vh - 150px);overflow-y:auto}
.page-title-home-4 .item-customer .list-author img{width:50px!important;height:50px!important;object-fit:cover;border-radius:50%}
/* Image has a dedicated dark text-safe left area; retain that area on narrow crops. */
.page-title-home-4>.image img{object-position:left center}
@media(max-width:767px){.page-title-home-4>.image img{object-position:left center}}
/* Mobile hero: same module and motion, separate image below readable content. */
@media(max-width:767px){
.page-title-home-4{display:flex;flex-direction:column;margin-top:0;padding:0 0 24px;background:#0d1728}
.page-title-home-4>.tf-overlay{display:none}
.page-title-home-4>.content-wrap{position:relative;order:1;top:auto;bottom:auto;left:auto;transform:none;width:100%;padding:30px 0 24px}
.page-title-home-4 .title{font-size:clamp(34px,9.6vw,48px);line-height:1.18;margin-bottom:22px!important}
.page-title-home-4 .sub-title{font-size:16px;line-height:1.5}
.page-title-home-4 .content>a.tf-btn{margin-bottom:24px!important}
.page-title-home-4 .list{gap:12px;padding-right:40px}
.page-title-home-4 .list p{font-size:14px;line-height:1.5}
.page-title-home-4>.image{position:relative;order:2;margin:0 15px;border-radius:16px;aspect-ratio:4/3}
.page-title-home-4>.image picture{display:block;width:100%;height:100%}
.page-title-home-4>.image img{display:block;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover;object-position:center}
}
@media(max-width:767px){
.tf-header.style-4{background:#0d1728}
#ayfa-float{flex-direction:row;top:auto;bottom:calc(12px + env(safe-area-inset-bottom));right:12px;gap:8px;transform:none}
body{padding-bottom:76px}
}
@media(max-width:767px){.progress-wrap{bottom:calc(72px + env(safe-area-inset-bottom))!important;right:16px!important}}
