
:root{
 --carbon:#151515;
 --graphite:#2D2D2D;
 --concrete:#F3F0EA;
 --steel:#72716D;
 --signal:#C86B3C;
 --whatsapp:#128C7E;
 
 --black:var(--carbon);
 --dark:var(--graphite);
 --white:#ffffff;
 --grey-light:var(--concrete);
 --grey-text:var(--steel);
 --grey-border:#d2d2d7;
 --blue-link:var(--signal);
}
*{
 margin:0;
 padding:0;
 box-sizing:border-box;
}
html{
 scroll-behavior:smooth;
 -webkit-font-smoothing:antialiased;
 -moz-osx-font-smoothing:grayscale;
}
body{
 font-family:'Montserrat','SF Pro Text',-apple-system,BlinkMacSystemFont,'Helvetica Neue',sans-serif;
 color:var(--carbon);
 line-height:1.55;
 background:var(--concrete);
 font-weight:400;
 font-size:17px;
 letter-spacing:-0.01em;
}
h1,h2,h3,h4,h5{
 font-family:'Montserrat','SF Pro Display',-apple-system,BlinkMacSystemFont,'Helvetica Neue',sans-serif;
 font-weight:600;
 letter-spacing:-0.025em;
 line-height:1.1;
}
h1,
.display,
.hero h1,
h1.section-title{
 font-family:'Cormorant Garamond','Times New Roman',serif;
 font-weight:500;
 letter-spacing:-0.04em;
 line-height:0.95;
}
a{
 text-decoration:none;
 color:inherit;
}
img{
 max-width:100%;
 display:block;
}
.container{
 max-width:1200px;
 margin:0 auto;
 padding:0 40px;
}
.btn{
 display:inline-block;
 padding:14px 28px;
 font-size:12px;
 font-weight:700;
 letter-spacing:0.08em;
 text-transform:uppercase;
 text-decoration:none;
 transition:all 0.25s cubic-bezier(0.4,0,0.2,1);
 cursor:pointer;
 border:none;
 border-radius:980px;
 font-family:'Montserrat','SF Pro Text',-apple-system,BlinkMacSystemFont,sans-serif;
}
.btn-primary{
 background:var(--carbon);
 color:var(--white);
 text-transform:uppercase;
 letter-spacing:0.08em;
 font-weight:700;
 font-size:12px;
}
.btn-whatsapp{
 background:var(--whatsapp);
 color:var(--white);
 text-transform:uppercase;
 letter-spacing:0.08em;
 font-weight:700;
 font-size:12px;
}
.btn-dark{
 background:var(--black);
 color:var(--white);
}
.btn-dark:hover{
 background:#333;
 transform:scale(1.02);
}
.btn-outline{
 background:transparent;
 color:var(--black);
 border:1px solid var(--black);
}
.btn-outline:hover{
 background:var(--black);
 color:var(--white);
}
.btn-outline-white{
 background:transparent;
 color:var(--white);
 border:1px solid rgba(255,255,255,0.5);
}
.btn-outline-white:hover{
 background:var(--white);
 color:var(--black);
 border-color:var(--white);
}
.header{
 position:fixed;
 top:0;
 left:0;
 right:0;
 z-index:1000;
 display:flex;
 justify-content:center;
 align-items:center;
 height:104px;
 padding:12px clamp(20px,4vw,48px) 18px;
 background:rgba(255,255,255,0.78);
 backdrop-filter:saturate(180%) blur(22px);
 -webkit-backdrop-filter:saturate(180%) blur(22px);
 border-bottom:1px solid rgba(0,0,0,0.06);
 transition:all 0.5s cubic-bezier(0.22,1,0.36,1);
}
.header__nav{
 display:flex;
 gap:36px;
}
.header__nav a{
 font-family:'Montserrat',-apple-system,'Helvetica Neue',sans-serif;
 font-size:13px;
 font-weight:400;
 letter-spacing:0.01em;
 color:rgba(0,0,0,0.8);
 transition:color 0.3s;
}
.header__nav a:hover{
 color:rgba(0,0,0,0.5);
}
.header__logo{
 display:flex;
 align-items:center;
 justify-content:center;
 margin:0 clamp(20px,4vw,56px);
 overflow:hidden;
}
.header__logo-img{
 height:110px;
 width:auto;
 margin:-16px 0 -8px;
 display:block;
 transition:all 0.5s cubic-bezier(0.22,1,0.36,1);
}
.header__logo:hover .header__logo-img{
 opacity:0.6;
}
.header__logo-black{display:block;}
.header__logo-white{display:none;}
.header .logo{display:flex;align-items:center;flex:0 0 auto;overflow:hidden;}
.header .logo-img{height:30px;width:auto;display:block;}
.header>nav{display:flex;}
.header .nav{list-style:none;display:flex;gap:30px;margin:0 0 0 32px;padding:0;align-items:center;}
.header .nav li{margin:0;}
.header .nav a{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:500;letter-spacing:0.08em;text-transform:uppercase;color:#1d1d1f;text-decoration:none;transition:opacity 0.3s;white-space:nowrap;}
.header .nav a:hover{opacity:0.5;}
.header .nav a.active{opacity:0.45;}
@media (max-width:900px){.header .nav{display:none;}}
html[lang="en"] .related-encyclopedia,
html[lang="en"] .encyclopedia-cta{display:none !important;}
.header__lang{
 position:absolute;
 right:clamp(20px,4vw,48px);
 display:flex;
 gap:4px;
}
.mobile-menu-btn{
 display:none;
 flex-direction:column;
 gap:5px;
 background:none;
 border:none;
 cursor:pointer;
 padding:10px;
}
.mobile-menu-btn span{
 width:22px;
 height:1.5px;
 background:var(--black);
 transition:all 0.3s;
}
.header--hero{
 background:transparent;
 backdrop-filter:none;
 -webkit-backdrop-filter:none;
 border-bottom-color:transparent;
 height:112px;
}
.header--hero .header__nav a{
 color:rgba(255,255,255,0.85);
 font-weight:400;
}
.header--hero .header__nav a:hover{
 color:rgba(255,255,255,0.5);
}
.header--hero .header__logo-black{display:none;}
.header--hero .header__logo-white{display:block;}
.header--hero .header__logo-img{
 height:124px;
 margin:-16px 0 -10px;
}
.header--hero .lang-btn{
 color:rgba(255,255,255,0.85);
 border-color:rgba(255,255,255,0.2);
}
.header--hero .lang-btn.active{
 background:rgba(255,255,255,0.9);
 color:var(--black);
}
.header--hero .mobile-menu-btn span{
 background:var(--white);
}
.header--scrolled{
 background:rgba(255,255,255,0.88);
 backdrop-filter:saturate(180%) blur(22px);
 -webkit-backdrop-filter:saturate(180%) blur(22px);
 border-bottom-color:rgba(0,0,0,0.06);
 height:76px;
 padding:8px clamp(20px,4vw,48px) 12px;
}
.header--scrolled .header__nav a{color:rgba(0,0,0,0.8);}
.header--scrolled .header__nav a:hover{color:rgba(0,0,0,0.4);}
.header--scrolled .header__logo-black{display:block;}
.header--scrolled .header__logo-white{display:none;}
.header--scrolled .header__logo-img{height:84px;margin:-12px 0 -6px;}
.header--scrolled .lang-btn{color:var(--black);border-color:rgba(0,0,0,0.1);}
.header--scrolled .lang-btn.active{background:var(--black);color:var(--white);}
.header--scrolled .mobile-menu-btn span{background:var(--black);}
.mobile-menu{
 display:none;
 position:fixed;
 top:52px;
 left:0;
 right:0;
 background:rgba(255,255,255,0.95);
 backdrop-filter:blur(20px);
 -webkit-backdrop-filter:blur(20px);
 border-bottom:1px solid rgba(0,0,0,0.06);
 z-index:999;
}
.mobile-menu.active{display:block;}
.mobile-menu ul{
 list-style:none;
 padding:12px 24px;
}
.mobile-menu li{
 padding:16px 0;
 border-bottom:1px solid rgba(0,0,0,0.04);
}
.mobile-menu a{
 font-size:15px;
 font-weight:500;
 letter-spacing:0.02em;
 color:var(--black);
}
.hero-split{
 display:flex;
 height:100vh;
 position:relative;
 overflow:hidden;
}
.hero-split__panel{
 position:relative;
 flex:1 1 50%;
 display:flex;
 align-items:flex-end;
 justify-content:flex-start;
 overflow:hidden;
 text-decoration:none;
 cursor:pointer;
 transition:flex 0.8s cubic-bezier(0.22,1,0.36,1);
}
.hero-split:hover .hero-split__panel{flex:0.42;}
.hero-split:hover .hero-split__panel:hover{flex:0.58;}
.hero-split__bg{
 position:absolute;
 inset:-10%;
 background-size:cover;
 background-position:center;
 transition:transform 0.8s cubic-bezier(0.22,1,0.36,1);
 animation:heroDrift 30s ease-in-out infinite alternate;
}
.hero-split__panel:first-child .hero-split__bg{animation-delay:-12s;}
@keyframes heroDrift{
 0%{transform:scale(1) translate(0,0);}
 100%{transform:scale(1.06) translate(-0.5%,-0.5%);}
}
.hero-split__panel:hover .hero-split__bg{
 transform:scale(1.04);
}
.hero-split__panel::after{
 content:'';
 position:absolute;
 inset:0;
 background:linear-gradient(
 0deg,
 rgba(0,0,0,0.65) 0%,
 rgba(0,0,0,0.15) 50%,
 rgba(0,0,0,0.08) 100%
 );
 transition:opacity 0.5s;
 z-index:1;
}
.hero-split__panel:hover::after{
 opacity:0.85;
}
.hero-split__content{
 position:relative;
 z-index:2;
 padding:56px;
 color:var(--white);
 width:100%;
}
.hero-split__eyebrow{
 font-size:11px;
 font-weight:500;
 letter-spacing:0.18em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.65);
 margin-bottom:16px;
}
.hero-split__title{
 font-family:'Montserrat',-apple-system,'Helvetica Neue',sans-serif;
 font-size:clamp(36px,4.5vw,60px);
 font-weight:600;
 line-height:1.06;
 letter-spacing:-0.03em;
 margin-bottom:28px;
 color:var(--white);
}
.hero-split__link{
 display:inline-block;
 font-size:17px;
 font-weight:400;
 color:rgba(255,255,255,0.9);
 letter-spacing:0.01em;
 padding-bottom:2px;
 border-bottom:1px solid rgba(255,255,255,0.3);
 transition:border-color 0.3s,color 0.3s;
}
.hero-split__panel:hover .hero-split__link{
 color:#fff;
 border-bottom-color:#fff;
}
.anim-up{
 opacity:0;
 transform:translateY(40px);
 animation:animUp 1.2s cubic-bezier(0,0,0.2,1) forwards;
 animation-delay:0.3s;
}
.anim-d1{animation-delay:0.55s;}
.anim-d2{animation-delay:0.8s;}
.anim-d3{animation-delay:1.05s;}
@keyframes animUp{
 to{opacity:1;transform:translateY(0);}
}
.quality-image img{
 width:100%;
 height:100%;
 object-fit:cover;
 border-radius:8px;
}
@media (max-width:968px){
 .hero-split{
 flex-direction:column;
 height:auto;
 min-height:100vh;
}
 .hero-split__panel{
 min-height:50vh;
}
 .hero-split:hover .hero-split__panel,
 .hero-split:hover .hero-split__panel:hover{
 flex:1;
}
 .hero-split__content{padding:40px;}
 .hero-split__title{font-size:36px;}
}
@media (max-width:576px){
 .hero-split__panel{min-height:45vh;}
 .hero-split__content{padding:28px 24px;}
 .hero-split__title{font-size:30px;}
 .hero-split__link{font-size:15px;}
}
.trust-section{
 padding:120px 0;
 background:#1d1d1f;
 color:#f5f5f7;
}
.trust-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:32px;
 text-align:left;
 max-width:1280px;
 margin:0 auto;
 padding:0 clamp(20px,4vw,36px);
}
.trust-item{
 padding:24px;
 border:1px solid rgba(255,255,255,0.08);
 border-radius:18px;
 background:rgba(255,255,255,0.02);
 transition:border-color .3s cubic-bezier(.22,1,.36,1),background .3s cubic-bezier(.22,1,.36,1);
}
.trust-item:hover{
 border-color:rgba(255,255,255,0.18);
 background:rgba(255,255,255,0.04);
}
.trust-icon{
 font-size:28px;
 line-height:1;
 color:#f5f5f7;
 margin-bottom:18px;
 display:inline-block;
 width:44px;
 height:44px;
 border-radius:14px;
 background:rgba(255,255,255,0.06);
 text-align:center;
 line-height:44px;
 border:1px solid rgba(255,255,255,0.10);
}
.trust-title{
 font-family:'Cormorant Garamond',serif;
 font-size:26px;
 font-weight:500;
 letter-spacing:-0.01em;
 color:#f5f5f7;
 margin-bottom:8px;
 line-height:1.1;
}
.trust-label{
 font-family:'Montserrat',sans-serif;
 font-size:13px;
 font-weight:400;
 letter-spacing:0;
 line-height:1.5;
 color:rgba(255,255,255,0.72);
}
.trust-number{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:clamp(42px,6vw,64px);
 font-weight:700;
 letter-spacing:-0.03em;
 margin-bottom:10px;
 color:#f5f5f7;
}
@media (max-width:768px){
 .trust-grid{grid-template-columns:1fr 1fr;gap:12px;}
 .trust-item{padding:18px;}
 .trust-title{font-size:22px;}
 .trust-icon{width:36px;height:36px;line-height:36px;font-size:22px;margin-bottom:12px;}
}
@media (max-width:480px){
 .trust-grid{grid-template-columns:1fr;}
}
.breadcrumbs{
 padding:120px 0 20px;
}
.breadcrumbs-inner{
 display:flex;
 align-items:center;
 gap:8px;
 flex-wrap:wrap;
 font-size:13px;
}
.breadcrumbs a{
 color:var(--grey-text);
 transition:color 0.2s ease;
}
.breadcrumbs a:hover{
 color:var(--blue-link);
}
.breadcrumbs .separator{
 color:var(--grey-border);
 font-size:10px;
}
.breadcrumbs .current{
 color:var(--black);
 font-weight:500;
}
.section-header{
 margin-bottom:60px;
}
.section-header.center{
 text-align:center;
}
.section-subtitle{
 font-size:12px;
 font-weight:700;
 letter-spacing:0.08em;
 text-transform:uppercase;
 color:var(--steel);
 margin-bottom:12px;
}
.section-title{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:clamp(32px,5vw,48px);
 font-weight:600;
 line-height:1.1;
 letter-spacing:-0.03em;
}
.services-section{
 padding:120px 0;
}
.services-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:25px;
}
.service-card{
 position:relative;
 aspect-ratio:3/4;
 overflow:hidden;
 display:block;
 border-radius:20px;
 transition:transform 0.4s cubic-bezier(0.16,1,0.3,1),box-shadow 0.4s ease;
}
.service-card:hover{
 transform:translateY(-4px);
 box-shadow:0 12px 40px rgba(0,0,0,0.15);
}
.service-image{
 position:absolute;
 inset:0;
 transition:transform 0.5s ease;
}
.service-card:hover .service-image{
 transform:scale(1.05);
}
.service-content{
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 padding:30px;
 background:linear-gradient(to top,rgba(21,21,21,0.55),transparent 60%);
 color:var(--white);
}
.service-label{
 font-size:11px;
 font-weight:500;
 letter-spacing:0.05em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.7);
 display:block;
 margin-bottom:8px;
}
.service-content h3{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:24px;
 font-weight:600;
 letter-spacing:-0.02em;
}
.services-cta{
 text-align:center;
 margin-top:50px;
}
.selector-section{
 padding:100px 0;
 background:linear-gradient(135deg,#1d1d1f 0%,#2d2d30 100%);
}
.selector-card{
 display:grid;
 grid-template-columns:1fr auto;
 gap:60px;
 align-items:center;
}
.selector-content h2{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:clamp(28px,4vw,40px);
 font-weight:600;
 color:#fff;
 letter-spacing:-0.03em;
 margin-bottom:16px;
 line-height:1.15;
}
.selector-content>p{
 font-size:17px;
 color:rgba(255,255,255,0.7);
 line-height:1.6;
 margin-bottom:32px;
 max-width:500px;
}
.selector-features{
 display:flex;
 gap:32px;
 margin-bottom:36px;
 flex-wrap:wrap;
}
.selector-features .feature{
 display:flex;
 align-items:center;
 gap:10px;
 color:rgba(255,255,255,0.8);
 font-size:14px;
 font-weight:500;
}
.feature-icon{
 width:36px;
 height:36px;
 background:rgba(255,255,255,0.1);
 border-radius:10px;
 display:flex;
 align-items:center;
 justify-content:center;
}
.feature-icon svg{
 stroke:#fff;
}
.selector-visual{
 width:200px;
 height:200px;
}
.visual-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:8px;
 width:100%;
 height:100%;
 transform:rotate(-12deg);
}
.visual-item{
 border-radius:12px;
 transition:transform 0.3s ease;
}
.visual-item:hover{
 transform:scale(1.05);
}
@media (max-width:768px){
 .selector-card{
 grid-template-columns:1fr;
 text-align:center;
}
 .selector-content>p{
 max-width:none;
}
 .selector-features{
 justify-content:center;
}
 .selector-visual{
 display:none;
}
}
.quality-section{
 padding:120px 0;
 background:var(--grey-light);
}
.quality-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.quality-content .section-title{
 margin-bottom:25px;
}
.quality-text{
 font-size:15px;
 line-height:1.9;
 color:var(--grey-text);
 margin-bottom:30px;
}
.quality-list{
 list-style:none;
 margin-bottom:35px;
}
.quality-list li{
 font-size:14px;
 padding:12px 0;
 padding-left:25px;
 position:relative;
 border-bottom:1px solid var(--grey-border);
}
.quality-list li::before{
 content:'';
 position:absolute;
 left:0;
 top:50%;
 transform:translateY(-50%);
 width:8px;
 height:1px;
 background:var(--black);
}
.quality-image-placeholder{
 width:100%;
 aspect-ratio:4/3;
 background:linear-gradient(135deg,#888 0%,#666 100%);
}
.projects-preview{
 padding:120px 0;
}
.projects-grid{
 display:grid;
 grid-template-columns:1.5fr 1fr;
 grid-template-rows:repeat(2,1fr);
 gap:25px;
}
.project-card{
 position:relative;
 overflow:hidden;
 aspect-ratio:4/3;
}
.project-card.large{
 grid-row:span 2;
 aspect-ratio:auto;
}
.project-image{
 position:absolute;
 inset:0;
 transition:transform 0.5s ease;
}
.project-card:hover .project-image{
 transform:scale(1.05);
}
.project-overlay{
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 padding:30px;
 background:linear-gradient(transparent,rgba(0,0,0,0.8));
 color:var(--white);
}
.project-type{
 font-size:10px;
 letter-spacing:0.15em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.6);
 display:block;
 margin-bottom:8px;
}
.project-overlay h3{
 font-size:24px;
 margin-bottom:5px;
}
.project-overlay p{
 font-size:13px;
 color:rgba(255,255,255,0.6);
}
.projects-cta{
 text-align:center;
 margin-top:50px;
}
.clients-section{
 padding:100px 0;
 background:var(--grey-light);
}
.clients-grid{
 display:flex;
 justify-content:center;
 align-items:center;
 gap:80px;
 flex-wrap:wrap;
}
.client-logo{
 font-size:20px;
 font-weight:500;
 color:var(--grey-text);
 opacity:0.5;
 transition:opacity 0.3s;
}
.client-logo:hover{
 opacity:1;
}
.cta-section{
 padding:120px 0;
 background:var(--black);
 color:var(--white);
 text-align:center;
}
.cta-section h2{
 font-size:48px;
 margin-bottom:20px;
}
.cta-section>.container>p{
 font-size:16px;
 color:rgba(255,255,255,0.6);
 margin-bottom:40px;
 max-width:500px;
 margin-left:auto;
 margin-right:auto;
}
.cta-buttons{
 display:flex;
 gap:20px;
 justify-content:center;
 margin-bottom:50px;
}
.cta-contact{
 font-size:14px;
 color:rgba(255,255,255,0.4);
}
.cta-contact a{
 color:var(--white);
 transition:opacity 0.3s;
}
.cta-contact a:hover{
 opacity:0.7;
}
.footer{
 background:var(--black);
 color:var(--white);
 padding:80px 0 40px;
 border-top:1px solid rgba(255,255,255,0.1);
}
.footer-grid{
 display:grid;
 grid-template-columns:1.5fr 1fr 1fr 1fr;
 gap:60px;
 margin-bottom:60px;
}
.footer-brand p{
 font-size:13px;
 color:rgba(255,255,255,0.5);
 line-height:1.7;
 margin-top:25px;
}
.footer-column h4{
 font-size:11px;
 font-weight:600;
 letter-spacing:0.15em;
 text-transform:uppercase;
 margin-bottom:25px;
}
.footer-column ul{
 list-style:none;
}
.footer-column ul li{
 margin-bottom:12px;
}
.footer-column ul a{
 color:rgba(255,255,255,0.5);
 font-size:13px;
 transition:color 0.3s;
}
.footer-column ul a:hover{
 color:var(--white);
}
.footer-bottom{
 border-top:1px solid rgba(255,255,255,0.1);
 padding-top:30px;
 display:flex;
 justify-content:space-between;
 align-items:center;
}
.footer-bottom p{
 font-size:12px;
 color:rgba(255,255,255,0.4);
}
.social-links{
 display:flex;
 gap:25px;
}
.social-links a{
 color:rgba(255,255,255,0.5);
 font-size:13px;
 transition:color 0.3s;
}
.social-links a:hover{
 color:var(--white);
}
.page-hero{
 padding:160px 0 100px;
 background:var(--black);
 color:var(--white);
}
.page-hero .container{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.page-hero-content .breadcrumb{
 font-size:11px;
 letter-spacing:0.15em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.4);
 margin-bottom:20px;
}
.page-hero-content .breadcrumb a{
 color:rgba(255,255,255,0.4);
 transition:color 0.3s;
}
.page-hero-content .breadcrumb a:hover{
 color:var(--white);
}
.page-hero-content h1{
 font-size:56px;
 line-height:1.1;
 margin-bottom:25px;
}
.page-hero-content .lead{
 font-size:18px;
 color:rgba(255,255,255,0.7);
 line-height:1.7;
 margin-bottom:35px;
}
.page-hero-image{
 aspect-ratio:4/3;
 background:var(--grey-light);
 overflow:hidden;
}
.page-hero-image img{
 width:100%;
 height:100%;
 object-fit:cover;
}
.floors-hero{
 padding:180px 0 120px;
 background:var(--black);
 color:var(--white);
 text-align:center;
}
.floors-hero .overline{
 font-size:11px;
 font-weight:500;
 letter-spacing:0.3em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.5);
 margin-bottom:25px;
}
.floors-hero h1{
 font-size:72px;
 line-height:1;
 margin-bottom:30px;
}
.floors-hero .lead{
 font-size:18px;
 color:rgba(255,255,255,0.7);
 max-width:700px;
 margin:0 auto 50px;
 line-height:1.8;
}
.hero-stats{
 display:flex;
 justify-content:center;
 gap:80px;
 margin-top:60px;
 padding-top:60px;
 border-top:1px solid rgba(255,255,255,0.1);
}
.hero-stat{
 text-align:center;
}
.hero-stat .number{
 font-family:'Cormorant Garamond',serif;
 font-size:48px;
 font-weight:300;
 margin-bottom:8px;
}
.hero-stat .label{
 font-size:11px;
 letter-spacing:0.15em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.5);
}
.category-nav{
 background:var(--grey-light);
 padding:25px 0;
 position:sticky;
 top:81px;
 z-index:100;
 border-bottom:1px solid var(--grey-border);
}
.category-nav-inner{
 display:flex;
 gap:8px;
 overflow-x:auto;
 padding:0 20px;
 justify-content:center;
 flex-wrap:wrap;
}
.category-nav a{
 padding:10px 18px;
 font-size:11px;
 font-weight:500;
 letter-spacing:0.08em;
 text-transform:uppercase;
 color:var(--grey-text);
 border:1px solid transparent;
 transition:all 0.3s;
 white-space:nowrap;
}
.category-nav a:hover{
 color:var(--black);
 border-color:var(--grey-border);
}
.category-nav a.active{
 background:var(--black);
 color:var(--white);
}
.floor-section{
 padding:120px 0;
 border-bottom:1px solid var(--grey-border);
}
.floor-section:nth-child(even){
 background:var(--grey-light);
}
.floor-section.dark{
 background:var(--black);
 color:var(--white);
 border-bottom:none;
}
.section-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.section-grid.reverse{
 direction:rtl;
}
.section-grid.reverse>*{
 direction:ltr;
}
.section-content .overline{
 font-size:11px;
 font-weight:600;
 letter-spacing:0.2em;
 text-transform:uppercase;
 color:var(--grey-text);
 margin-bottom:15px;
}
.dark .section-content .overline,
.floor-section.dark .section-content .overline{
 color:rgba(255,255,255,0.5);
}
.section-content h2{
 font-size:48px;
 line-height:1.1;
 margin-bottom:25px;
}
.section-content .description{
 font-size:15px;
 line-height:1.9;
 color:var(--grey-text);
 margin-bottom:30px;
}
.dark .section-content .description,
.floor-section.dark .section-content .description{
 color:rgba(255,255,255,0.7);
}
.advantages{
 margin-bottom:30px;
}
.applications h4{
 font-size:12px;
 font-family:'Montserrat',sans-serif;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 margin-bottom:12px;
}
.applications-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:50px 40px;
 margin-top:50px;
}
.application-card{
 padding:0;
 margin-bottom:30px;
}
.application-card h3{
 margin:20px 0 15px 0;
 font-size:18px;
}
.application-card p{
 font-size:16px;
 line-height:1.6;
 color:var(--grey-text);
 margin:0;
}
.application-icon{
 margin-bottom:15px;
}
.app-tags{
 display:flex;
 flex-wrap:wrap;
 gap:8px;
}
.app-tag{
 padding:6px 14px;
 font-size:11px;
 letter-spacing:0.05em;
 background:rgba(0,0,0,0.05);
 border-radius:2px;
}
.dark .app-tag,
.floor-section.dark .app-tag{
 background:rgba(255,255,255,0.1);
}
.advantages ul{
 list-style:none;
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:10px;
 margin-bottom:35px;
}
.advantages li{
 font-size:13px;
 padding-left:20px;
 position:relative;
 color:var(--grey-text);
}
.dark .advantages li,
.floor-section.dark .advantages li{
 color:rgba(255,255,255,0.7);
}
.advantages li::before{
 content:'';
 position:absolute;
 left:0;
 top:8px;
 width:6px;
 height:1px;
 background:var(--black);
}
.dark .advantages li::before,
.floor-section.dark .advantages li::before{
 background:var(--white);
}
.section-image{
 aspect-ratio:4/3;
 background:var(--grey-light);
 overflow:hidden;
}
.section-image img{
 width:100%;
 height:100%;
 object-fit:cover;
}
.floor-section-full{
 padding:120px 0;
 text-align:center;
}
.floor-section-full h2{
 font-size:42px;
 margin-bottom:20px;
}
.floor-section-full .lead{
 font-size:16px;
 color:var(--grey-text);
 max-width:600px;
 margin:0 auto 60px;
 line-height:1.8;
}
.dark .floor-section-full .lead{
 color:rgba(255,255,255,0.6);
}
.cards-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
}
.floor-card{
 background:var(--white);
 border:1px solid var(--grey-border);
 padding:40px;
 text-align:left;
 transition:all 0.3s ease;
 position:relative;
}
.floor-card:hover{
 border-color:var(--black);
 transform:translateY(-5px);
}
.floor-card .card-number{
 font-family:'Cormorant Garamond',serif;
 font-size:64px;
 font-weight:300;
 color:var(--grey-light);
 position:absolute;
 top:20px;
 right:25px;
}
.floor-card h3{
 font-size:26px;
 margin-bottom:8px;
}
.floor-card .subtitle{
 font-size:11px;
 font-weight:500;
 letter-spacing:0.15em;
 text-transform:uppercase;
 color:var(--grey-text);
 margin-bottom:20px;
}
.floor-card p{
 font-size:14px;
 line-height:1.7;
 color:var(--grey-text);
 margin-bottom:25px;
}
.floor-card .card-link{
 font-size:12px;
 font-weight:500;
 letter-spacing:0.1em;
 text-transform:uppercase;
 color:var(--black);
 display:inline-flex;
 align-items:center;
 gap:10px;
}
.floor-card .card-link::after{
 content:'\2192';
 transition:transform 0.3s;
}
.floor-card:hover .card-link::after{
 transform:translateX(5px);
}
.Page_Down-hero{
 padding:160px 0 80px;
 background:var(--white);
 text-align:center;
}
.blog-hero .overline{
 font-size:11px;
 font-weight:500;
 letter-spacing:0.3em;
 text-transform:uppercase;
 color:var(--grey-text);
 margin-bottom:20px;
}
.blog-hero h1{
 font-size:56px;
 margin-bottom:20px;
}
.blog-hero p{
 font-size:16px;
 color:var(--grey-text);
 max-width:600px;
 margin:0 auto;
 line-height:1.8;
}
.category-filter{
 background:var(--grey-light);
 padding:20px 0;
 border-bottom:1px solid var(--grey-border);
 position:sticky;
 top:81px;
 z-index:100;
}
.filter-inner{
 display:flex;
 gap:10px;
 justify-content:center;
 flex-wrap:wrap;
 padding:0 20px;
}
.filter-btn,
.blog-filter-btn{
 padding:12px 24px;
 font-size:13px;
 font-weight:500;
 letter-spacing:-0.01em;
 text-transform:none;
 background:rgba(0,0,0,0.04);
 border:none;
 border-radius:980px;
 cursor:pointer;
 transition:all 0.25s cubic-bezier(0.4,0,0.2,1);
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 color:var(--black);
}
.filter-btn:hover,
.blog-filter-btn:hover{
 background:rgba(0,0,0,0.08);
}
.filter-btn.active,
.blog-filter-btn.active{
 background:var(--black);
 color:var(--white);
 box-shadow:0 2px 8px rgba(0,0,0,0.15);
}
.blog-section{
 padding:80px 0;
}
.blog-groups{
 display:flex;
 flex-direction:column;
 gap:72px;
}
.blog-group-head{
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(0,420px);
 gap:24px;
 align-items:end;
 margin-bottom:28px;
 padding-bottom:20px;
 border-bottom:1px solid var(--grey-border);
}
.blog-group-head h2{
 margin:0;
 font-size:42px;
}
.blog-group-head p{
 margin:0;
 font-size:14px;
 color:var(--grey-text);
 line-height:1.7;
}
.blog-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
}
.blog-card{
 background:var(--white);
 border:1px solid var(--grey-border);
 transition:all 0.3s;
}
.blog-card:hover{
 border-color:var(--black);
 transform:translateY(-5px);
}
.blog-card.featured{
 grid-column:span 2;
 grid-row:span 2;
}
.blog-image{
 aspect-ratio:16/10;
 background:var(--grey-light);
 overflow:hidden;
 position:relative;
}
.blog-card.featured .blog-image{
 aspect-ratio:16/9;
}
.blog-category-tag{
 position:absolute;
 top:15px;
 left:15px;
 padding:6px 12px;
 font-size:10px;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 background:var(--black);
 color:var(--white);
}
.blog-content{
 padding:30px;
}
.blog-card.featured .blog-content{
 padding:40px;
}
.blog-meta{
 font-size:11px;
 color:var(--grey-text);
 letter-spacing:0.1em;
 text-transform:uppercase;
 margin-bottom:12px;
}
.blog-card h3{
 font-size:22px;
 margin-bottom:12px;
 line-height:1.3;
}
.blog-card.featured h3{
 font-size:32px;
}
.blog-card p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.7;
 margin-bottom:20px;
}
.read-more{
 font-size:12px;
 font-weight:500;
 letter-spacing:0.1em;
 text-transform:uppercase;
 color:var(--black);
 display:inline-flex;
 align-items:center;
 gap:8px;
}
.read-more::after{
 content:'\2192';
 transition:transform 0.3s;
}
.blog-card:hover .read-more::after{
 transform:translateX(5px);
}
.newsletter{
 padding:100px 0;
 background:var(--black);
 color:var(--white);
 text-align:center;
}
.newsletter h2{
 font-size:42px;
 margin-bottom:15px;
}
.newsletter p{
 font-size:15px;
 color:rgba(255,255,255,0.6);
 margin-bottom:40px;
}
.newsletter-form{
 display:flex;
 gap:15px;
 max-width:500px;
 margin:0 auto;
}
.newsletter-form input{
 flex:1;
 padding:15px 20px;
 font-size:14px;
 border:1px solid rgba(255,255,255,0.2);
 background:transparent;
 color:var(--white);
 font-family:'Montserrat',sans-serif;
}
.newsletter-form input::placeholder{
 color:rgba(255,255,255,0.4);
}
.newsletter-form button{
 padding:15px 30px;
 font-size:12px;
 font-weight:500;
 letter-spacing:0.1em;
 text-transform:uppercase;
 background:var(--white);
 color:var(--black);
 border:none;
 cursor:pointer;
 font-family:'Montserrat',sans-serif;
 transition:all 0.3s;
}
.newsletter-form button:hover{
 background:var(--grey-light);
}
.material-hero{
 padding:160px 0 100px;
 background:var(--black);
 color:var(--white);
}
.material-hero .container{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.quick-stats{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:30px;
 margin-top:50px;
 padding-top:40px;
 border-top:1px solid rgba(255,255,255,0.1);
}
.stat-item{
 text-align:center;
}
.stat-item .value{
 font-family:'Cormorant Garamond',serif;
 font-size:32px;
 margin-bottom:5px;
}
.stat-item .label{
 font-size:10px;
 letter-spacing:0.15em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.5);
}
.applications-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:25px;
}
.app-card{
 background:var(--white);
 border:1px solid var(--grey-border);
 padding:35px 25px;
 text-align:center;
 transition:all 0.3s;
}
.app-card:hover{
 border-color:var(--black);
 transform:translateY(-3px);
}
.app-card .icon{
 font-size:36px;
 margin-bottom:15px;
 color:var(--grey-text);
}
.app-card h4{
 font-size:16px;
 margin-bottom:8px;
 font-family:'Montserrat',sans-serif;
 font-weight:500;
}
.app-card p{
 font-size:13px;
 color:var(--grey-text);
 line-height:1.6;
}
.two-col{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:start;
}
.content-block h3{
 font-size:28px;
 margin-bottom:20px;
}
.content-block p{
 font-size:15px;
 line-height:1.9;
 color:var(--grey-text);
 margin-bottom:15px;
}
.section-dark .content-block p{
 color:rgba(255,255,255,0.7);
}
.process-steps{
 display:grid;
 grid-template-columns:repeat(5,1fr);
 gap:30px;
}
.step{
 text-align:center;
 position:relative;
}
.step::after{
 content:'';
 position:absolute;
 top:25px;
 right:-15px;
 width:30px;
 height:1px;
 background:var(--grey-border);
}
.step:last-child::after{
 display:none;
}
.section-dark .step::after{
 background:rgba(255,255,255,0.2);
}
.step .number{
 font-family:'Cormorant Garamond',serif;
 font-size:48px;
 color:var(--grey-light);
 margin-bottom:15px;
}
.section-dark .step .number{
 color:rgba(255,255,255,0.1);
}
.step h4{
 font-size:14px;
 font-family:'Montserrat',sans-serif;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 margin-bottom:10px;
}
.step p{
 font-size:13px;
 color:var(--grey-text);
 line-height:1.6;
}
.section-dark .step p{
 color:rgba(255,255,255,0.6);
}
.specs-table{
 width:100%;
 border-collapse:collapse;
}
.specs-table tr{
 border-bottom:1px solid var(--grey-border);
}
.section-dark .specs-table tr{
 border-bottom:1px solid rgba(255,255,255,0.1);
}
.specs-table td{
 padding:18px 0;
 font-size:14px;
}
.specs-table td:first-child{
 font-weight:500;
 letter-spacing:0.05em;
}
.specs-table td:last-child{
 text-align:right;
 color:var(--grey-text);
}
.section-dark .specs-table td:last-child{
 color:rgba(255,255,255,0.6);
}
.comparison-section{
 padding:100px 0;
 background:var(--grey-light);
}
.comparison-table-wrapper{
 overflow-x:auto;
 margin:40px 0;
 border-radius:16px;
 background:#fff;
 box-shadow:0 4px 20px rgba(0,0,0,0.06);
}
.comparison-table{
 width:100%;
 border-collapse:collapse;
 font-size:14px;
}
.comparison-table th{
 background:var(--black);
 color:#fff;
 padding:18px 20px;
 text-align:left;
 font-weight:600;
 font-size:13px;
 letter-spacing:0.02em;
}
.comparison-table th:first-child{
 border-radius:16px 0 0 0;
}
.comparison-table th:last-child{
 border-radius:0 16px 0 0;
}
.comparison-table td{
 padding:16px 20px;
 border-bottom:1px solid var(--grey-border);
 color:var(--grey-text);
}
.comparison-table td strong{
 color:var(--black);
 font-weight:600;
}
.comparison-table tr:last-child td{
 border-bottom:none;
}
.comparison-table tr:hover{
 background:rgba(0,0,0,0.02);
}
.comparison-table .rating{
 display:inline-block;
 padding:4px 10px;
 border-radius:20px;
 font-size:12px;
 font-weight:500;
}
.comparison-table .rating.high{
 background:rgba(52,199,89,0.15);
 color:var(--carbon);
}
.comparison-table .rating.medium{
 background:rgba(255,149,0,0.15);
 color:#ff9500;
}
.comparison-note{
 text-align:center;
 margin-top:30px;
}
.comparison-note p{
 font-size:15px;
 color:var(--grey-text);
}
.comparison-note a{
 color:var(--blue-link);
 font-weight:500;
 text-decoration:underline;
}
@media (max-width:768px){
 .comparison-table th,
 .comparison-table td{
 padding:12px 14px;
 font-size:13px;
}
}
.gallery-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:20px;
}
.gallery-item{
 aspect-ratio:4/3;
 background:var(--grey-light);
 overflow:hidden;
 position:relative;
}
.gallery-item img{
 width:100%;
 height:100%;
 object-fit:cover;
 transition:transform 0.5s;
}
.gallery-item:hover img{
 transform:scale(1.05);
}
.gallery-item.large{
 grid-column:span 2;
 grid-row:span 2;
 aspect-ratio:auto;
}
.gallery-item .caption{
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 padding:20px;
 background:linear-gradient(transparent,rgba(0,0,0,0.7));
 color:var(--white);
}
.gallery-item .caption span{
 font-size:11px;
 letter-spacing:0.1em;
 text-transform:uppercase;
}
.floors-hero~.advantages-grid,
.section-dark .advantages-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:40px;
}
.advantage{
 text-align:center;
 padding:40px 30px;
}
.advantage .icon{
 font-size:42px;
 margin-bottom:20px;
}
.advantage h4{
 font-size:16px;
 font-family:'Montserrat',sans-serif;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 margin-bottom:12px;
}
.advantage p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.7;
}
.section-dark .advantage p{
 color:rgba(255,255,255,0.6);
}
.section-dark .maintenance-grid:not(.material-maintenance .maintenance-grid){
 display:grid;
 grid-template-columns:repeat(2,1fr);
 gap:60px;
}
.maintenance-block h3{
 font-size:24px;
 margin-bottom:20px;
 padding-bottom:15px;
 border-bottom:1px solid var(--grey-border);
}
.maintenance-block ul{
 list-style:none;
}
.maintenance-block li{
 font-size:14px;
 padding:12px 0;
 border-bottom:1px solid var(--grey-border);
 color:var(--grey-text);
 display:flex;
 justify-content:space-between;
}
.maintenance-block li strong{
 color:var(--black);
 font-weight:500;
}
.related-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
}
.related-card{
 background:var(--white);
 border:1px solid var(--grey-border);
 padding:35px;
 transition:all 0.3s;
}
.related-card:hover{
 border-color:var(--black);
}
.related-card h4{
 font-size:22px;
 margin-bottom:10px;
}
.related-card p{
 font-size:13px;
 color:var(--grey-text);
 margin-bottom:20px;
 line-height:1.6;
}
.related-card a{
 font-size:12px;
 font-weight:500;
 letter-spacing:0.1em;
 text-transform:uppercase;
 color:var(--black);
}
.contact-section{
 padding:120px 0;
}
.contact-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
}
.contact-info h2{
 font-size:42px;
 margin-bottom:25px;
}
.contact-info>p{
 font-size:16px;
 color:var(--grey-text);
 line-height:1.8;
 margin-bottom:40px;
}
.contact-details{
 margin-bottom:40px;
}
.contact-item{
 padding:20px 0;
 border-bottom:1px solid var(--grey-border);
}
.contact-item h4{
 font-size:11px;
 font-family:'Montserrat',sans-serif;
 font-weight:600;
 letter-spacing:0.15em;
 text-transform:uppercase;
 margin-bottom:10px;
 color:var(--grey-text);
}
.contact-item p,
.contact-item a{
 font-size:18px;
 color:var(--black);
}
.contact-form{
 background:var(--grey-light);
 padding:50px;
}
.contact-form h3{
 font-size:28px;
 margin-bottom:30px;
}
.form-group{
 margin-bottom:25px;
}
.form-group label{
 display:block;
 font-size:11px;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 margin-bottom:10px;
 color:var(--grey-text);
}
.form-group input,
.form-group textarea,
.form-group select{
 width:100%;
 padding:15px;
 font-size:14px;
 border:1px solid var(--grey-border);
 background:var(--white);
 font-family:'Montserrat',sans-serif;
 transition:border-color 0.3s ease,box-shadow 0.3s ease;
}
.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus{
 outline:none;
 border-color:var(--black);
 box-shadow:0 0 0 3px rgba(29,29,31,0.08);
}
.form-group textarea{
 min-height:150px;
 resize:vertical;
}
.contact-form .btn{
 width:100%;
}
.process-section{
 padding:100px 0;
 background:#f5f5f7;
}
.next-steps-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:24px;
 margin-top:60px;
}
.next-step{
 background:#fff;
 padding:32px 28px;
 border-radius:20px;
 text-align:center;
 position:relative;
 transition:all 0.3s ease;
}
.next-step:hover{
 transform:translateY(-8px);
 box-shadow:0 20px 40px rgba(0,0,0,0.08);
}
.step-number{
 width:56px;
 height:56px;
 background:linear-gradient(135deg,#1a1a1a 0%,#333 100%);
 color:#fff;
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:24px;
 font-weight:700;
 border-radius:50%;
 display:flex;
 align-items:center;
 justify-content:center;
 margin:0 auto 20px;
}
.next-step h3{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:18px;
 font-weight:600;
 margin-bottom:12px;
 letter-spacing:-0.02em;
}
.next-step p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
 margin-bottom:16px;
}
.step-time{
 display:inline-block;
 font-size:11px;
 font-weight:600;
 color:var(--signal);
 text-transform:uppercase;
 letter-spacing:0.05em;
 background:rgba(0,113,227,0.08);
 padding:6px 12px;
 border-radius:20px;
}
.projects-hero{
 padding:160px 0 80px;
 text-align:center;
}
.projects-hero h1{
 font-size:56px;
 margin-bottom:20px;
}
.projects-hero p{
 font-size:16px;
 color:var(--grey-text);
 max-width:600px;
 margin:0 auto;
}
.projects-filter{
 display:flex;
 justify-content:center;
 gap:10px;
 flex-wrap:wrap;
 margin-bottom:50px;
}
.projects-main{
 padding:80px 0;
}
.projects-masonry{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:25px;
}
.project-item{
 position:relative;
 overflow:hidden;
 border-radius:16px;
 transition:opacity 0.3s ease,transform 0.3s ease;
}
.project-item.tall{
 grid-row:span 2;
}
.project-item.wide{
 grid-column:span 2;
}
.project-item-image{
 width:100%;
 height:100%;
 min-height:300px;
 background-size:cover;
 background-position:center;
 transition:transform 0.5s;
}
.project-item:hover .project-item-image{
 transform:scale(1.05);
}
.project-item-overlay{
 position:absolute;
 inset:0;
 background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,0.85) 100%);
 display:flex;
 flex-direction:column;
 justify-content:flex-end;
 padding:30px;
 color:var(--white);
 opacity:1;
 transition:all 0.4s cubic-bezier(0.4,0,0.2,1);
}
.project-item:hover .project-item-overlay{
 background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,0.9) 100%);
}
.project-item-overlay span{
 display:inline-block;
 font-size:10px;
 font-weight:600;
 letter-spacing:0.12em;
 text-transform:uppercase;
 color:#fff;
 background:rgba(255,255,255,0.2);
 backdrop-filter:blur(10px);
 -webkit-backdrop-filter:blur(10px);
 padding:6px 12px;
 border-radius:20px;
 margin-bottom:12px;
 width:fit-content;
}
.project-item-overlay h3{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:22px;
 font-weight:600;
 letter-spacing:-0.02em;
 margin-bottom:6px;
 transition:transform 0.3s ease;
}
.project-item:hover .project-item-overlay h3{
 transform:translateY(-4px);
}
.project-item-overlay p{
 font-size:13px;
 color:rgba(255,255,255,0.75);
 display:flex;
 align-items:center;
 gap:8px;
}
.project-item-overlay p::before{
 content:'';
 width:4px;
 height:4px;
 background:rgba(255,255,255,0.5);
 border-radius:50%;
}
.project-item-stats{
 display:flex;
 gap:16px;
 margin-top:12px;
 padding-top:12px;
 border-top:1px solid rgba(255,255,255,0.15);
 opacity:0;
 transform:translateY(10px);
 transition:all 0.3s ease 0.1s;
}
.project-item:hover .project-item-stats{
 opacity:1;
 transform:translateY(0);
}
.project-item-stats span{
 background:none;
 padding:0;
 font-size:11px;
 font-weight:500;
 color:rgba(255,255,255,0.7);
 display:flex;
 align-items:center;
 gap:6px;
}
.project-item-stats span::before{
 display:none;
}
.about-hero{
 padding:160px 0 100px;
}
.about-hero .container{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.about-hero h1{
 font-size:56px;
 margin-bottom:25px;
}
.about-hero .lead{
 font-size:18px;
 color:var(--grey-text);
 line-height:1.8;
}
.about-image-placeholder{
 width:100%;
 aspect-ratio:4/3;
 background:linear-gradient(135deg,#666 0%,#444 100%);
}
.about-hero-image,
.about-story-image{
 width:100%;
 aspect-ratio:4/3;
 overflow:hidden;
 border-radius:4px;
}
.about-hero-image img,
.about-story-image img{
 width:100%;
 height:100%;
 object-fit:cover;
}
.gallery-placeholder{
 width:100%;
 height:100%;
 min-height:200px;
 background:linear-gradient(135deg,#3a3a3a 0%,#2a2a2a 100%);
}
.about-values{
 padding:120px 0;
 background:var(--grey-light);
}
.values-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:40px;
}
.value-item{
 text-align:center;
 padding:40px;
}
.value-item .number{
 font-family:'Cormorant Garamond',serif;
 font-size:64px;
 color:var(--grey-border);
 margin-bottom:20px;
}
.value-item h3{
 font-size:22px;
 margin-bottom:15px;
}
.value-item p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.7;
}
.about-story{
 padding:120px 0;
}
.story-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.story-content h2{
 font-size:42px;
 margin-bottom:25px;
}
.story-content p{
 font-size:15px;
 line-height:1.9;
 color:var(--grey-text);
 margin-bottom:20px;
}
.team-section{
 padding:120px 0;
 background:#fff;
}
.section-desc{
 max-width:600px;
 margin:0 auto;
 font-size:17px;
 color:var(--grey-text);
 line-height:1.7;
}
.team-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:32px;
 margin-top:60px;
}
.team-card{
 text-align:center;
 padding:40px 24px;
 background:#f5f5f7;
 border-radius:20px;
 transition:all 0.3s ease;
}
.team-card:hover{
 transform:translateY(-8px);
 box-shadow:0 20px 40px rgba(0,0,0,0.08);
}
.team-avatar{
 width:100px;
 height:100px;
 margin:0 auto 24px;
 background:linear-gradient(135deg,#1a1a1a 0%,#333 100%);
 border-radius:50%;
 display:flex;
 align-items:center;
 justify-content:center;
}
.team-avatar span{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:28px;
 font-weight:600;
 color:#fff;
 letter-spacing:-0.02em;
}
.team-card h3{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:20px;
 font-weight:600;
 margin-bottom:6px;
 letter-spacing:-0.02em;
}
.team-role{
 font-size:13px;
 font-weight:500;
 color:var(--signal);
 text-transform:uppercase;
 letter-spacing:0.05em;
 margin-bottom:16px;
}
.team-bio{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
}
.timeline-section{
 padding:120px 0;
 background:var(--grey-light);
}
.timeline{
 max-width:800px;
 margin:60px auto 0;
 position:relative;
}
.timeline::before{
 content:'';
 position:absolute;
 left:120px;
 top:0;
 bottom:0;
 width:2px;
 background:linear-gradient(180deg,#1a1a1a 0%,rgba(26,26,26,0.1) 100%);
}
.timeline-item{
 display:flex;
 gap:40px;
 margin-bottom:48px;
 position:relative;
}
.timeline-item:last-child{
 margin-bottom:0;
}
.timeline-year{
 width:80px;
 flex-shrink:0;
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:24px;
 font-weight:700;
 color:var(--black);
 text-align:right;
 padding-top:4px;
}
.timeline-item::before{
 content:'';
 position:absolute;
 left:114px;
 top:12px;
 width:14px;
 height:14px;
 background:#fff;
 border:3px solid var(--black);
 border-radius:50%;
 z-index:1;
}
.timeline-content{
 flex:1;
 background:#fff;
 padding:24px 32px;
 border-radius:16px;
 margin-left:20px;
 box-shadow:0 4px 20px rgba(0,0,0,0.04);
}
.timeline-content h3{
 font-size:18px;
 font-weight:600;
 margin-bottom:8px;
}
.timeline-content p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
 margin:0;
}
@media (max-width:1200px){
 .container{
 padding:0 30px;
}
}
@media (max-width:1024px){
 .hero{
 grid-template-columns:1fr;
}
 .hero-content{
 padding:60px 40px;
 text-align:center;
}
 .hero-text{
 margin:0 auto 40px;
}
 .hero-buttons{
 justify-content:center;
}
 .hero-image{
 min-height:400px;
}
 .trust-grid{
 grid-template-columns:repeat(2,1fr);
}
 .services-grid{
 grid-template-columns:repeat(2,1fr);
}
 .quality-grid,
 .section-grid,
 .two-col,
 .contact-grid,
 .about-hero .container,
 .story-grid{
 grid-template-columns:1fr;
 gap:40px;
}
 .section-grid.reverse{
 direction:ltr;
}
 .projects-grid{
 grid-template-columns:1fr;
}
 .project-card.large{
 grid-row:span 1;
}
 .footer-grid{
 grid-template-columns:repeat(2,1fr);
}
 .cards-grid,
 .blog-grid,
 .values-grid,
 .advantages-grid,
 .gallery-grid,
 .related-grid{
 grid-template-columns:repeat(2,1fr);
}
 .next-steps-grid{
 grid-template-columns:repeat(2,1fr);
}
 .team-grid{
 grid-template-columns:repeat(2,1fr);
}
 .timeline::before{
 left:20px;
}
 .timeline-year{
 width:60px;
 font-size:18px;
}
 .timeline-item::before{
 left:14px;
 width:12px;
 height:12px;
}
 .timeline-content{
 margin-left:10px;
 padding:20px 24px;
}
 .blog-card.featured{
 grid-column:span 2;
 grid-row:span 1;
}
 .applications-grid{
 grid-template-columns:repeat(2,1fr);
}
 .process-steps{
 grid-template-columns:repeat(3,1fr);
}
 .quick-stats{
 grid-template-columns:repeat(2,1fr);
}
 .hero-stats{
 gap:40px;
 flex-wrap:wrap;
}
 .projects-masonry{
 grid-template-columns:repeat(2,1fr);
}
}
@media (max-width:768px){
 .header{
 padding:0 16px;
 height:60px;
}
 .header--hero{
 height:72px;
}
 .header--scrolled{
 height:52px;
}
 .header__nav{display:none;}
 .header__logo-img{height:120px;margin:-26px 0;}
 .header--hero .header__logo-img{height:150px;margin:-34px 0;}
 .header--scrolled .header__logo-img{height:95px;margin:-20px 0;}
 .header__lang{right:56px;}
 .mobile-menu-btn{
 display:flex;
 position:absolute;
 right:16px;
}
 .hero h1{
 font-size:48px;
}
 .hero-content{
 padding:40px 25px;
}
 .floors-hero h1{
 font-size:48px;
}
 .section-content h2{
 font-size:36px;
}
 .section-title{
 font-size:32px;
}
 .trust-grid,
 .services-grid,
 .cards-grid,
 .blog-grid,
 .footer-grid,
 .values-grid,
 .advantages-grid,
 .gallery-grid,
 .related-grid,
 .applications-grid,
 .maintenance-grid,
 .team-grid,
 .next-steps-grid,
 .faq-grid{
 grid-template-columns:1fr;
}
 .blog-card.featured{
 grid-column:span 1;
}
 .timeline{
 padding-left:0;
}
 .timeline::before{
 left:10px;
}
 .timeline-item{
 flex-direction:column;
 gap:16px;
 padding-left:40px;
}
 .timeline-year{
 width:auto;
 text-align:left;
}
 .timeline-item::before{
 left:4px;
 top:6px;
}
 .timeline-content{
 margin-left:0;
}
 .gallery-item.large{
 grid-column:span 1;
 grid-row:span 1;
 aspect-ratio:4/3;
}
 .process-steps{
 grid-template-columns:1fr;
 gap:30px;
}
 .step::after{
 display:none;
}
 .quick-stats{
 grid-template-columns:repeat(2,1fr);
 gap:20px;
}
 .cta-buttons{
 flex-direction:column;
 align-items:center;
}
 .newsletter-form{
 flex-direction:column;
}
 .advantages ul{
 grid-template-columns:1fr;
}
 .footer-bottom{
 flex-direction:column;
 gap:20px;
 text-align:center;
}
 .clients-grid{
 gap:40px;
}
 .projects-masonry{
 grid-template-columns:1fr;
}
 .project-item.tall,
 .project-item.wide{
 grid-row:span 1;
 grid-column:span 1;
}
 .contact-form{
 padding:30px;
}
}
@media (max-width:480px){
 .hero h1{
 font-size:36px;
}
 .floors-hero h1{
 font-size:36px;
}
 .cta-section h2{
 font-size:32px;
}
 .trust-number{
 font-size:42px;
}
}
.post-modal{
 position:fixed;
 inset:0;
 background:rgba(0,0,0,0.9);
 z-index:10000;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:40px;
 overflow-y:auto;
}
.post-modal-content{
 background:var(--white);
 max-width:800px;
 width:100%;
 max-height:90vh;
 overflow-y:auto;
 position:relative;
}
.close-modal{
 position:absolute;
 top:20px;
 right:20px;
 width:40px;
 height:40px;
 background:var(--black);
 color:var(--white);
 border:none;
 font-size:24px;
 cursor:pointer;
 z-index:10;
 display:flex;
 align-items:center;
 justify-content:center;
}
.close-modal:hover{
 background:var(--dark);
}
.post-full{
 padding:60px;
}
.post-full header{
 margin-bottom:40px;
 padding-bottom:30px;
 border-bottom:1px solid var(--grey-border);
}
.post-full header .category{
 display:inline-block;
 padding:6px 12px;
 font-size:10px;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 background:var(--grey-light);
 margin-bottom:20px;
}
.post-full header h1{
 font-size:36px;
 line-height:1.2;
 margin-bottom:15px;
}
.post-full header .meta{
 font-size:13px;
 color:var(--grey-text);
}
.post-body h2{
 font-size:24px;
 margin:40px 0 20px;
}
.post-body h3{
 font-size:20px;
 margin:30px 0 15px;
}
.post-body p{
 font-size:15px;
 line-height:1.9;
 color:var(--grey-text);
 margin-bottom:20px;
}
.post-body ul,.post-body ol{
 margin:20px 0;
 padding-left:25px;
}
.post-body li{
 font-size:15px;
 line-height:1.8;
 color:var(--grey-text);
 margin-bottom:10px;
}
.post-body strong{
 color:var(--black);
 font-weight:600;
}
@media (max-width:768px){
 .post-modal{
 padding:20px;
}
 .post-full{
 padding:30px;
}
 .post-full header h1{
 font-size:28px;
}
 .close-modal{
 top:10px;
 right:10px;
}
}
.blog-placeholder{
 width:100%;
 height:100%;
 background:linear-gradient(135deg,#4a4a4a,#2d2d2d);
}
.blog-card .blog-meta .category{
 background:var(--black);
 color:var(--white);
 padding:3px 8px;
 font-size:9px;
 font-weight:600;
 letter-spacing:0.08em;
 margin-right:10px;
}
.blog-card .blog-meta .date{
 color:var(--grey-text);
}
.process-section{
 padding:120px 0;
 background:var(--white);
}
.process-section .process-steps{
 display:grid;
 grid-template-columns:repeat(5,1fr);
 gap:30px;
}
.process-section .step{
 text-align:center;
 position:relative;
 padding:20px;
}
.process-section .step::after{
 content:'';
 position:absolute;
 top:35px;
 right:-15px;
 width:30px;
 height:2px;
 background:var(--grey-border);
}
.process-section .step:last-child::after{
 display:none;
}
.process-section .step .number{
 font-family:'Cormorant Garamond',serif;
 font-size:48px;
 color:var(--grey-light);
 margin-bottom:15px;
 font-weight:300;
}
.process-section .step h4{
 font-size:14px;
 font-family:'Montserrat',sans-serif;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 margin-bottom:12px;
}
.process-section .step p{
 font-size:13px;
 color:var(--grey-text);
 line-height:1.7;
}
.testimonials-section{
 padding:120px 0;
 background:var(--grey-light);
}
.testimonials-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
}
.testimonial-card{
 background:var(--white);
 padding:40px;
 border:1px solid var(--grey-border);
 transition:all 0.3s ease;
}
.testimonial-card:hover{
 border-color:var(--black);
 transform:translateY(-5px);
}
.testimonial-content{
 margin-bottom:25px;
}
.testimonial-content p{
 font-size:15px;
 line-height:1.8;
 color:var(--dark);
 font-style:italic;
}
.testimonial-content p::before{
 content:'"';
 font-family:'Cormorant Garamond',serif;
 font-size:48px;
 line-height:0;
 vertical-align:bottom;
 color:var(--grey-border);
 margin-right:5px;
}
.testimonial-author strong{
 display:block;
 font-size:14px;
 font-weight:600;
 margin-bottom:5px;
}
.testimonial-author span{
 font-size:12px;
 color:var(--grey-text);
 letter-spacing:0.05em;
}
.lang-switch{
 display:flex;
 gap:4px;
 margin-left:auto;
 margin-right:15px;
}
.lang-btn{
 background:transparent;
 border:1px solid var(--grey-border);
 color:var(--grey-text);
 padding:6px 12px;
 font-size:11px;
 font-weight:600;
 letter-spacing:0.05em;
 cursor:pointer;
 transition:all 0.2s ease;
 font-family:'Montserrat',sans-serif;
 border-radius:2px;
}
.lang-btn:hover{
 border-color:var(--black);
 color:var(--black);
}
.lang-btn.active{
 background:var(--black);
 border-color:var(--black);
 color:var(--white);
}
@media (max-width:768px){
 .lang-switch{
 position:fixed;
 top:22px;
 right:70px;
 margin:0;
 z-index:1001;
}
 .lang-btn{
 padding:5px 10px;
 font-size:10px;
}
}
.sticky-cta{
 position:fixed;
 bottom:30px;
 right:30px;
 background:var(--black);
 color:var(--white);
 padding:16px 28px;
 font-size:12px;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 text-decoration:none;
 z-index:1000;
 opacity:0;
 visibility:hidden;
 transform:translateY(20px);
 transition:all 0.3s ease;
 box-shadow:0 4px 20px rgba(0,0,0,0.3);
}
.sticky-cta:hover{
 background:var(--dark);
 transform:translateY(-2px);
 box-shadow:0 6px 25px rgba(0,0,0,0.4);
}
.sticky-cta-whatsapp{
 background:#128c7e;
}
.sticky-cta-whatsapp:hover{
 background:#0f766c;
}
.sticky-cta.visible{
 opacity:1;
 visibility:visible;
 transform:translateY(0);
 animation:ctaPulse 3s ease-in-out 2s infinite;
}
.fit-matrix{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:18px;
 margin:42px 0;
}
.fit-card{
 border:1px solid rgba(21,21,21,0.12);
 border-radius:22px;
 padding:24px;
 background:#f7f3ed;
}
.fit-card h3{
 font-family:'Montserrat',sans-serif;
 font-size:13px;
 font-weight:700;
 letter-spacing:0.08em;
 text-transform:uppercase;
 margin-bottom:12px;
}
.fit-card p{
 color:var(--grey-text);
 font-size:15px;
 line-height:1.55;
 margin:0;
}
.fit-good{
 border-top:4px solid #2f6f52;
}
.fit-bad{
 border-top:4px solid #9b4a25;
}
.fit-check{
 border-top:4px solid #72716d;
}
@keyframes ctaPulse{
 0%,100%{box-shadow:0 4px 20px rgba(0,0,0,0.3);}
 50%{box-shadow:0 4px 30px rgba(0,0,0,0.5);}
}
.footer-badges{
 display:flex;
 justify-content:center;
 gap:40px;
 padding:40px 0;
 margin-top:50px;
 border-top:1px solid rgba(255,255,255,0.1);
 flex-wrap:wrap;
}
.badge-item{
 display:flex;
 flex-direction:column;
 align-items:center;
 gap:12px;
 color:rgba(255,255,255,0.7);
 transition:all 0.3s ease;
}
.badge-item:hover{
 color:#fff;
}
.badge-icon{
 width:48px;
 height:48px;
 background:rgba(255,255,255,0.1);
 border-radius:12px;
 display:flex;
 align-items:center;
 justify-content:center;
 transition:all 0.3s ease;
}
.badge-item:hover .badge-icon{
 background:rgba(255,255,255,0.15);
 transform:translateY(-4px);
}
.badge-icon svg{
 width:24px;
 height:24px;
 stroke:currentColor;
}
.badge-item span{
 font-size:12px;
 font-weight:500;
 text-align:center;
 letter-spacing:0.02em;
}
@media (max-width:768px){
 .footer-badges{
 gap:24px;
 padding:30px 0;
}
 .badge-item{
 flex:0 0 calc(50% - 12px);
}
 .badge-icon{
 width:40px;
 height:40px;
}
 .badge-item span{
 font-size:11px;
}
}
.footer-legal{
 margin-top:30px;
 padding-top:20px;
 border-top:1px solid rgba(255,255,255,0.1);
 text-align:center;
}
.footer-legal p{
 font-size:11px;
 color:rgba(255,255,255,0.3);
 letter-spacing:0.05em;
}
.fade-in{
 opacity:0;
 transform:translateY(30px);
 transition:opacity 0.6s ease,transform 0.6s ease;
}
.fade-in.visible{
 opacity:1;
 transform:translateY(0);
}
.testimonials-grid .fade-in:nth-child(1){transition-delay:0.1s;}
.testimonials-grid .fade-in:nth-child(2){transition-delay:0.2s;}
.testimonials-grid .fade-in:nth-child(3){transition-delay:0.3s;}
.process-steps .fade-in:nth-child(1){transition-delay:0.1s;}
.process-steps .fade-in:nth-child(2){transition-delay:0.2s;}
.process-steps .fade-in:nth-child(3){transition-delay:0.3s;}
.process-steps .fade-in:nth-child(4){transition-delay:0.4s;}
.process-steps .fade-in:nth-child(5){transition-delay:0.5s;}
.service-card,
.project-card,
.blog-card,
.floor-card,
.testimonial-card{
 transition:transform 0.3s ease,border-color 0.3s ease,box-shadow 0.3s ease;
}
.service-card:hover,
.project-card:hover,
.floor-card:hover{
 box-shadow:0 10px 30px rgba(0,0,0,0.1);
}
@media (max-width:1024px){
 .process-section .process-steps{
 grid-template-columns:repeat(3,1fr);
}
 .testimonials-grid{
 grid-template-columns:repeat(2,1fr);
}
}
@media (max-width:768px){
 .process-section .process-steps{
 grid-template-columns:1fr;
 gap:40px;
}
 .process-section .step::after{
 display:none;
}
 .testimonials-grid{
 grid-template-columns:1fr;
}
 .sticky-cta{
 bottom:20px;
 right:20px;
 padding:14px 24px;
}
}
@media (max-width:768px){
 .blog-grid{
 grid-template-columns:1fr;
 gap:24px;
}
 .blog-card.featured{
 grid-column:1;
 grid-row:auto;
}
 .blog-card h3{
 font-size:18px;
 line-height:1.35;
}
 .blog-card p{
 font-size:13px;
 line-height:1.6;
}
 .blog-meta{
 font-size:10px;
}
 .blog-hero h1{
 font-size:28px;
 margin-bottom:12px;
}
 .blog-hero p{
 font-size:14px;
}
 .category-filter{
 padding:16px 0;
}
 .filter-inner{
 gap:8px;
 padding:0 16px;
}
 .filter-btn,
 .blog-filter-btn{
 padding:8px 12px;
 font-size:12px;
}
 .blog-groups{
 gap:48px;
}
 .blog-group-head{
 grid-template-columns:1fr;
 gap:12px;
 margin-bottom:20px;
 padding-bottom:16px;
}
 .blog-group-head h2{
 font-size:32px;
}
}
.article-page{
 padding-top:80px;
 background:#ffffff;
}
.article-hero{
 position:relative;
 background:linear-gradient(180deg,#f5f5f7 0%,#ffffff 100%);
 padding:0;
 overflow:hidden;
}
.article-hero .container{
 max-width:980px;
 margin:0 auto;
 padding:80px 24px 60px;
}
.back-link{
 display:inline-flex;
 align-items:center;
 gap:8px;
 color:var(--signal);
 text-decoration:none;
 font-size:17px;
 font-weight:400;
 margin-bottom:40px;
 transition:all 0.3s cubic-bezier(0.25,0.1,0.25,1);
}
.back-link:hover{
 color:var(--signal);
 gap:12px;
}
.back-link::before{
 content:'';
 display:inline-block;
 width:8px;
 height:8px;
 border-left:2px solid currentColor;
 border-bottom:2px solid currentColor;
 transform:rotate(45deg);
 transition:transform 0.3s ease;
}
.article-category{
 display:inline-block;
 background:linear-gradient(135deg,#1d1d1f 0%,#424245 100%);
 color:#fff;
 padding:8px 20px;
 font-size:11px;
 font-weight:600;
 text-transform:uppercase;
 letter-spacing:1.5px;
 margin-bottom:24px;
 border-radius:100px;
}
.article-hero h1{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:clamp(40px,6vw,64px);
 font-weight:700;
 line-height:1.05;
 letter-spacing:-0.03em;
 margin-bottom:24px;
 color:#1d1d1f;
 max-width:900px;
}
.article-meta{
 display:flex;
 align-items:center;
 gap:16px;
 color:#86868b;
 font-size:14px;
 font-weight:500;
 letter-spacing:0.02em;
}
.article-meta::before{
 content:'';
 display:inline-block;
 width:40px;
 height:2px;
 background:linear-gradient(90deg,var(--signal),var(--signal));
 border-radius:2px;
}
.article-hero-wrapper{
 width:100%;
 margin-top:60px;
 position:relative;
}
.article-hero-image{
 width:100%;
 height:500px;
 object-fit:cover;
 border-radius:24px;
 box-shadow:0 40px 80px -20px rgba(0,0,0,0.15);
 transition:transform 0.6s cubic-bezier(0.25,0.1,0.25,1);
}
.article-hero-image:hover{
 transform:scale(1.01);
}
.article-content{
 padding:100px 24px 120px;
 background:#ffffff;
}
.article-content .container{
 display:grid;
 grid-template-columns:1fr 320px;
 gap:80px;
 max-width:1200px;
 margin:0 auto;
}
.article-body{
 max-width:680px;
}
.article-body .lead{
 font-size:24px;
 line-height:1.5;
 color:#1d1d1f;
 margin-bottom:56px;
 font-weight:500;
 letter-spacing:-0.01em;
}
.article-body h2{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:32px;
 font-weight:700;
 letter-spacing:-0.02em;
 margin:80px 0 24px;
 color:#1d1d1f;
 position:relative;
 padding-left:20px;
}
.article-body h2::before{
 content:'';
 position:absolute;
 left:0;
 top:8px;
 bottom:8px;
 width:4px;
 background:linear-gradient(180deg,var(--signal),var(--signal));
 border-radius:4px;
}
.article-body h3{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:21px;
 font-weight:600;
 letter-spacing:-0.01em;
 margin:48px 0 16px;
 color:#1d1d1f;
}
.article-body p{
 font-size:17px;
 line-height:1.7;
 color:#424245;
 margin-bottom:24px;
 font-weight:400;
}
.article-body strong{
 color:#1d1d1f;
 font-weight:600;
}
.article-body ul{
 margin:32px 0 40px;
 padding:0;
 list-style:none;
}
.article-body ul li{
 font-size:17px;
 line-height:1.6;
 color:#424245;
 margin-bottom:16px;
 position:relative;
 padding-left:36px;
 transition:transform 0.2s ease;
}
.article-body ul li:hover{
 transform:translateX(4px);
}
.article-body ul li::before{
 content:'';
 position:absolute;
 left:0;
 top:8px;
 width:20px;
 height:20px;
 background:linear-gradient(135deg,var(--carbon) 0%,var(--carbon) 100%);
 border-radius:50%;
 opacity:0.9;
}
.article-body ul li::after{
 content:'';
 position:absolute;
 left:6px;
 top:13px;
 width:8px;
 height:5px;
 border-left:2px solid #fff;
 border-bottom:2px solid #fff;
 transform:rotate(-45deg);
}
.comparison-table{
 width:100%;
 border-collapse:separate;
 border-spacing:0;
 margin:48px 0 56px;
 font-size:15px;
 border-radius:16px;
 overflow:hidden;
 box-shadow:0 4px 24px rgba(0,0,0,0.06);
}
.comparison-table thead{
 background:linear-gradient(135deg,#1d1d1f 0%,#424245 100%);
}
.comparison-table th{
 padding:20px 24px;
 text-align:left;
 font-weight:600;
 color:#ffffff;
 font-size:13px;
 text-transform:uppercase;
 letter-spacing:0.5px;
}
.comparison-table td{
 padding:20px 24px;
 color:#424245;
 background:#ffffff;
 border-bottom:1px solid #f5f5f7;
 transition:all 0.2s ease;
}
.comparison-table tbody tr:last-child td{
 border-bottom:none;
}
.comparison-table tbody tr:hover td{
 background:#f5f5f7;
 color:#1d1d1f;
}
.comparison-table tbody tr:nth-child(even) td{
 background:#fafafa;
}
.comparison-table tbody tr:nth-child(even):hover td{
 background:#f0f0f2;
}
.article-cta{
 background:linear-gradient(135deg,#f5f5f7 0%,#e8e8ed 100%);
 padding:56px 48px;
 margin-top:80px;
 text-align:center;
 border-radius:24px;
 position:relative;
 overflow:hidden;
}
.article-cta::before{
 content:'';
 position:absolute;
 top:0;
 left:0;
 right:0;
 height:4px;
 background:linear-gradient(90deg,var(--signal),var(--signal),var(--signal));
}
.article-cta h3{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:28px;
 font-weight:700;
 letter-spacing:-0.02em;
 margin:0 0 12px;
 color:#1d1d1f;
}
.article-cta p{
 margin-bottom:32px;
 color:#86868b;
 font-size:17px;
 max-width:400px;
 margin-left:auto;
 margin-right:auto;
}
.article-cta .btn{
 background:linear-gradient(135deg,var(--signal) 0%,var(--signal) 100%);
 color:#fff;
 padding:16px 40px;
 border-radius:100px;
 font-size:17px;
 font-weight:500;
 text-decoration:none;
 display:inline-block;
 transition:all 0.3s cubic-bezier(0.25,0.1,0.25,1);
 box-shadow:0 4px 16px rgba(0,113,227,0.3);
}
.article-cta .btn:hover{
 transform:translateY(-2px);
 box-shadow:0 8px 24px rgba(0,113,227,0.4);
}
.article-sidebar{
 position:sticky;
 top:120px;
 align-self:start;
}
.sidebar-section{
 background:linear-gradient(180deg,#f5f5f7 0%,#fafafa 100%);
 padding:32px;
 margin-bottom:24px;
 border-radius:20px;
 border:1px solid rgba(0,0,0,0.04);
 transition:all 0.3s ease;
}
.sidebar-section:hover{
 box-shadow:0 8px 32px rgba(0,0,0,0.06);
 transform:translateY(-2px);
}
.sidebar-section h4{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:13px;
 font-weight:600;
 text-transform:uppercase;
 letter-spacing:1px;
 margin-bottom:20px;
 color:#86868b;
}
.sidebar-section ul{
 list-style:none;
 padding:0;
 margin:0;
}
.sidebar-section ul li{
 margin-bottom:0;
 border-bottom:1px solid rgba(0,0,0,0.06);
}
.sidebar-section ul li:last-child{
 border-bottom:none;
}
.sidebar-section ul li a{
 display:block;
 padding:14px 0;
 color:#1d1d1f;
 text-decoration:none;
 font-size:15px;
 font-weight:500;
 transition:all 0.2s ease;
}
.sidebar-section ul li a:hover{
 color:var(--signal);
 padding-left:8px;
}
.quick-facts li{
 background:#ffffff;
 padding:16px 20px;
 border-radius:12px;
 margin-bottom:12px;
 border:1px solid rgba(0,0,0,0.04);
 transition:all 0.2s ease;
}
.quick-facts li:hover{
 border-color:rgba(0,113,227,0.2);
 box-shadow:0 4px 12px rgba(0,113,227,0.08);
}
.quick-facts li strong{
 display:block;
 color:#86868b;
 font-size:11px;
 font-weight:600;
 text-transform:uppercase;
 letter-spacing:0.5px;
 margin-bottom:4px;
}
@media (max-width:1024px){
 .article-content .container{
 grid-template-columns:1fr;
 gap:60px;
}
 .article-sidebar{
 position:static;
 display:grid;
 grid-template-columns:repeat(2,1fr);
 gap:20px;
}
 .sidebar-section{
 margin-bottom:0;
}
}
@media (max-width:768px){
 .article-hero .container{
 padding:60px 20px 40px;
}
 .article-hero h1{
 font-size:32px;
 letter-spacing:-0.02em;
}
 .article-hero-image{
 height:300px;
 border-radius:16px;
}
 .article-content{
 padding:60px 20px 80px;
}
 .article-body .lead{
 font-size:19px;
}
 .article-body h2{
 font-size:26px;
 margin-top:56px;
}
 .article-body h3{
 font-size:19px;
}
 .article-cta{
 padding:40px 24px;
 border-radius:16px;
}
 .article-cta h3{
 font-size:24px;
}
 .article-sidebar{
 grid-template-columns:1fr;
}
 .comparison-table{
 font-size:13px;
 border-radius:12px;
}
 .comparison-table th,
 .comparison-table td{
 padding:14px 16px;
}
 .article-body ul li{
 padding-left:32px;
}
 .article-body ul li::before{
 width:18px;
 height:18px;
}
 .article-body ul li::after{
 left:5px;
 top:12px;
 width:7px;
 height:4px;
}
}
.faq-section{
 padding:100px 0;
 background:var(--grey-light);
}
.faq-grid{
 display:grid;
 grid-template-columns:repeat(2,1fr);
 gap:24px;
 margin-top:50px;
}
.faq-item{
 background:#fff;
 padding:28px 30px;
 border-radius:16px;
 box-shadow:0 2px 12px rgba(0,0,0,0.04);
 transition:all 0.3s ease;
 border:1px solid rgba(0,0,0,0.04);
}
.faq-item:hover{
 transform:translateY(-3px);
 box-shadow:0 8px 24px rgba(0,0,0,0.08);
 border-color:transparent;
}
.faq-item h3{
 font-size:17px;
 font-weight:600;
 color:var(--black);
 margin-bottom:10px;
 line-height:1.35;
}
.faq-item p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
 margin:0;
}
@media (max-width:1024px){
 .faq-grid{
 grid-template-columns:repeat(2,1fr);
}
}
@media (max-width:768px){
 .faq-section{
 padding:80px 0;
}
 .faq-grid{
 grid-template-columns:1fr;
 gap:16px;
}
 .faq-item{
 padding:22px 24px;
}
 .faq-item h3{
 font-size:16px;
}
}
.breadcrumb{
 font-size:13px;
 margin-bottom:40px;
 color:rgba(255,255,255,0.6);
}
.breadcrumb a{
 color:rgba(255,255,255,0.6);
 transition:color 0.2s ease;
}
.breadcrumb a:hover{
 color:#fff;
}
.breadcrumb span{
 color:#fff;
}
.material-hero{
 padding:140px 0 80px;
 background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);
 color:#fff;
}
.material-hero-content{
 max-width:800px;
}
.material-hero-content .section-subtitle{
 color:rgba(255,255,255,0.5);
 margin-bottom:16px;
}
.material-hero-content h1{
 font-size:clamp(42px,6vw,64px);
 font-weight:700;
 line-height:1.1;
 letter-spacing:-0.03em;
 margin-bottom:24px;
}
.material-hero-content .lead{
 font-size:18px;
 line-height:1.7;
 color:rgba(255,255,255,0.75);
 margin-bottom:40px;
 max-width:600px;
}
.hero-specs{
 display:flex;
 gap:40px;
 margin-bottom:40px;
 padding:30px 0;
 border-top:1px solid rgba(255,255,255,0.1);
 border-bottom:1px solid rgba(255,255,255,0.1);
}
.hero-specs .spec{
 display:flex;
 flex-direction:column;
 gap:6px;
}
.hero-specs .spec-value{
 font-size:28px;
 font-weight:700;
 color:#fff;
 letter-spacing:-0.02em;
}
.hero-specs .spec-label{
 font-size:12px;
 text-transform:uppercase;
 letter-spacing:0.1em;
 color:rgba(255,255,255,0.5);
}
.material-applications{
 padding:100px 0;
 background:#fff;
}
.applications-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
}
.application-card{
 background:#f8f9fa;
 padding:40px 30px;
 border-radius:20px;
 transition:all 0.3s ease;
 border:1px solid transparent;
}
.application-card:hover{
 background:#fff;
 border-color:var(--grey-border);
 transform:translateY(-4px);
 box-shadow:0 20px 40px rgba(0,0,0,0.08);
}
.application-icon{
 margin-bottom:24px;
}
.application-icon svg{
 width:48px;
 height:48px;
}
.application-card h3{
 font-size:20px;
 font-weight:600;
 margin-bottom:12px;
 letter-spacing:-0.02em;
}
.application-card p{
 font-size:15px;
 color:var(--grey-text);
 line-height:1.7;
 margin:0;
}
.material-substrate{
 padding:100px 0;
}
.dark-section{
 background:var(--black);
 color:#fff;
}
.substrate-grid{
 display:grid;
 grid-template-columns:1.2fr 0.8fr;
 gap:80px;
 align-items:start;
}
.substrate-content h2{
 font-size:clamp(32px,4vw,42px);
 font-weight:600;
 margin-bottom:24px;
 letter-spacing:-0.02em;
}
.substrate-content>p{
 font-size:17px;
 line-height:1.8;
 color:rgba(255,255,255,0.7);
 margin-bottom:32px;
}
.substrate-list{
 list-style:none;
 padding:0;
 margin:0;
}
.substrate-list li{
 padding:16px 0;
 border-bottom:1px solid rgba(255,255,255,0.1);
 font-size:15px;
 line-height:1.7;
 color:rgba(255,255,255,0.8);
}
.substrate-list li:last-child{
 border-bottom:none;
}
.substrate-list li strong{
 color:#fff;
 font-weight:600;
}
.substrate-specs{
 background:rgba(255,255,255,0.05);
 padding:40px;
 border-radius:20px;
 border:1px solid rgba(255,255,255,0.1);
}
.substrate-specs h3{
 font-size:20px;
 margin-bottom:30px;
 padding-bottom:20px;
 border-bottom:1px solid rgba(255,255,255,0.1);
}
.spec-item{
 display:flex;
 justify-content:space-between;
 align-items:center;
 padding:14px 0;
 border-bottom:1px solid rgba(255,255,255,0.05);
}
.spec-item:last-child{
 border-bottom:none;
}
.spec-item .spec-label{
 font-size:14px;
 color:rgba(255,255,255,0.6);
}
.spec-item .spec-value{
 font-size:15px;
 font-weight:600;
 color:#fff;
}
.material-technology{
 padding:100px 0;
 background:#f8f9fa;
}
.tech-layers{
 display:flex;
 flex-direction:column;
 gap:0;
 margin-bottom:80px;
 max-width:800px;
 margin-left:auto;
 margin-right:auto;
}
.layer{
 display:grid;
 grid-template-columns:100px 1fr;
 gap:40px;
 padding:40px 0;
 border-bottom:1px solid var(--grey-border);
}
.layer:last-child{
 border-bottom:none;
}
.layer-number{
 font-size:64px;
 font-weight:700;
 color:#e5e5e5;
 line-height:1;
 letter-spacing:-0.03em;
}
.layer-content h3{
 font-size:22px;
 font-weight:600;
 margin-bottom:12px;
 letter-spacing:-0.02em;
}
.layer-content p{
 font-size:16px;
 color:var(--grey-text);
 line-height:1.8;
 margin:0;
}
.system-types{
 max-width:1000px;
 margin:0 auto;
}
.system-types h3{
 font-size:28px;
 text-align:center;
 margin-bottom:40px;
}
.types-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:24px;
}
.type-card{
 background:#fff;
 padding:32px 24px;
 border-radius:16px;
 text-align:center;
 border:1px solid var(--grey-border);
 transition:all 0.3s ease;
}
.type-card:hover{
 border-color:var(--black);
 transform:translateY(-4px);
 box-shadow:0 12px 30px rgba(0,0,0,0.08);
}
.type-card h4{
 font-size:17px;
 font-weight:600;
 margin-bottom:10px;
}
.type-card p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
 margin:0;
}
.material-gallery{
 padding:100px 0;
 background:#fff;
}
.gallery-caption{
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 padding:20px;
 background:linear-gradient(transparent,rgba(0,0,0,0.8));
 color:#fff;
 font-size:14px;
 font-weight:500;
}
.material-advantages{
 padding:100px 0;
 background:#f8f9fa;
}
.material-advantages .advantages-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
 margin-top:50px;
}
.material-advantages .advantage-item{
 background:#fff;
 padding:40px 30px;
 border-radius:20px;
 text-align:center;
 transition:all 0.3s ease;
}
.material-advantages .advantage-item:hover{
 transform:translateY(-4px);
 box-shadow:0 20px 40px rgba(0,0,0,0.08);
}
.material-advantages .advantage-icon{
 width:64px;
 height:64px;
 background:#f8f9fa;
 border-radius:16px;
 display:flex;
 align-items:center;
 justify-content:center;
 margin:0 auto 20px;
}
.material-advantages .advantage-icon svg{
 width:32px;
 height:32px;
}
.material-advantages .advantage-item h4{
 font-size:18px;
 font-weight:600;
 margin-bottom:12px;
 letter-spacing:-0.01em;
 text-transform:none;
}
.material-advantages .advantage-item p{
 font-size:15px;
 color:var(--grey-text);
 line-height:1.7;
 margin:0;
}
.material-maintenance{
 padding:100px 0;
}
.material-maintenance.dark-section .section-subtitle{
 color:rgba(255,255,255,0.5);
}
.material-maintenance.dark-section h2{
 color:#fff;
}
.material-maintenance .maintenance-grid{
 display:grid;
 grid-template-columns:1.3fr 0.7fr;
 gap:60px;
 align-items:start;
}
.material-maintenance .maintenance-content h2{
 font-size:clamp(32px,4vw,42px);
 font-weight:600;
 margin-bottom:20px;
 letter-spacing:-0.02em;
}
.material-maintenance .maintenance-content>p{
 font-size:17px;
 line-height:1.8;
 color:rgba(255,255,255,0.7);
 margin-bottom:40px;
}
.material-maintenance .maintenance-schedule{
 display:grid;
 grid-template-columns:repeat(2,1fr);
 gap:24px;
}
.material-maintenance .schedule-item{
 background:rgba(255,255,255,0.05);
 padding:28px;
 border-radius:16px;
 border:1px solid rgba(255,255,255,0.1);
}
.material-maintenance .schedule-item h4{
 font-size:16px;
 font-weight:600;
 margin-bottom:10px;
 color:#fff;
}
.material-maintenance .schedule-item p{
 font-size:14px;
 color:rgba(255,255,255,0.7);
 line-height:1.6;
 margin:0;
}
.material-maintenance .warranty-card{
 background:rgba(255,255,255,0.08);
 padding:40px;
 border-radius:20px;
 border:1px solid rgba(255,255,255,0.15);
}
.material-maintenance .warranty-card h3{
 font-size:22px;
 margin-bottom:16px;
 color:#fff;
}
.material-maintenance .warranty-card>p{
 font-size:15px;
 color:rgba(255,255,255,0.7);
 margin-bottom:24px;
 line-height:1.6;
}
.material-maintenance .warranty-card ul{
 list-style:none;
 padding:0;
 margin:0 0 30px 0;
}
.material-maintenance .warranty-card li{
 padding:12px 0;
 font-size:15px;
 color:rgba(255,255,255,0.85);
 border-bottom:1px solid rgba(255,255,255,0.08);
 padding-left:28px;
 position:relative;
}
.material-maintenance .warranty-card li:last-child{
 border-bottom:none;
}
.material-maintenance .warranty-card li::before{
 content:'✓';
 position:absolute;
 left:0;
 color:var(--carbon);
 font-weight:bold;
}
.related-systems{
 padding:100px 0;
 background:#f8f9fa;
}
.related-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
}
.related-card{
 display:block;
 background:#fff;
 padding:40px;
 border-radius:20px;
 border:1px solid var(--grey-border);
 transition:all 0.3s ease;
 text-decoration:none;
}
.related-card:hover{
 border-color:var(--black);
 transform:translateY(-4px);
 box-shadow:0 20px 40px rgba(0,0,0,0.1);
}
.related-card h3{
 font-size:24px;
 font-weight:600;
 margin-bottom:12px;
 color:var(--black);
}
.related-card p{
 font-size:15px;
 color:var(--grey-text);
 line-height:1.6;
 margin:0;
}
.cta-section{
 padding:100px 0;
 background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);
 color:#fff;
 text-align:center;
}
.cta-section h2{
 font-size:clamp(32px,5vw,48px);
 font-weight:600;
 margin-bottom:16px;
 letter-spacing:-0.02em;
}
.cta-section>.container>p{
 font-size:18px;
 color:rgba(255,255,255,0.7);
 margin-bottom:40px;
 max-width:500px;
 margin-left:auto;
 margin-right:auto;
}
.cta-buttons{
 display:flex;
 gap:16px;
 justify-content:center;
}
@media (max-width:1024px){
 .applications-grid{
 grid-template-columns:repeat(2,1fr);
}
 .substrate-grid{
 grid-template-columns:1fr;
 gap:50px;
}
 .types-grid{
 grid-template-columns:repeat(2,1fr);
}
 .material-advantages .advantages-grid{
 grid-template-columns:repeat(2,1fr);
}
 .material-maintenance .maintenance-grid{
 grid-template-columns:1fr;
 gap:40px;
}
 .material-maintenance .maintenance-schedule{
 grid-template-columns:repeat(2,1fr);
}
}
@media (max-width:768px){
 .material-hero{
 padding:120px 0 60px;
}
 .hero-specs{
 flex-direction:column;
 gap:24px;
}
 .hero-specs .spec{
 flex-direction:row;
 justify-content:space-between;
 align-items:center;
}
 .applications-grid{
 grid-template-columns:1fr;
}
 .application-card{
 padding:32px 24px;
}
 .layer{
 grid-template-columns:60px 1fr;
 gap:24px;
 padding:30px 0;
}
 .layer-number{
 font-size:42px;
}
 .types-grid{
 grid-template-columns:1fr;
}
 .gallery-grid{
 grid-template-columns:1fr;
}
 .gallery-item.large{
 grid-column:span 1;
 grid-row:span 1;
}
 .material-advantages .advantages-grid{
 grid-template-columns:1fr;
}
 .material-maintenance .maintenance-schedule{
 grid-template-columns:1fr;
}
 .related-grid{
 grid-template-columns:1fr;
}
 .cta-buttons{
 flex-direction:column;
 align-items:center;
}
 .cta-buttons .btn{
 width:100%;
 max-width:280px;
}
}
.floors-hero,
.blog-hero,
.projects-hero{
 padding:140px 0 80px;
 background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);
 color:#fff;
}
.floors-hero .container,
.blog-hero .container,
.projects-hero .container{
 max-width:800px;
}
.floors-hero h1,
.blog-hero h1,
.projects-hero h1{
 font-size:clamp(48px,7vw,72px);
 font-weight:700;
 line-height:1.05;
 letter-spacing:-0.03em;
 margin-bottom:24px;
}
.floors-hero .lead,
.blog-hero>.container>p,
.projects-hero>.container>p{
 font-size:18px;
 line-height:1.7;
 color:rgba(255,255,255,0.75);
 margin-bottom:40px;
 max-width:600px;
}
.hero-stats{
 display:flex;
 gap:60px;
 margin-top:50px;
 padding-top:40px;
 border-top:1px solid rgba(255,255,255,0.1);
}
.hero-stat .number{
 font-size:42px;
 font-weight:700;
 color:#fff;
 letter-spacing:-0.02em;
 margin-bottom:6px;
}
.hero-stat .label{
 font-size:13px;
 color:rgba(255,255,255,0.5);
 text-transform:uppercase;
 letter-spacing:0.05em;
}
.category-nav{
 background:#fff;
 border-bottom:1px solid var(--grey-border);
 position:sticky;
 top:80px;
 z-index:100;
}
.category-nav-inner{
 display:flex;
 gap:8px;
 padding:16px 40px;
 max-width:1200px;
 margin:0 auto;
 overflow-x:auto;
}
.category-nav a{
 padding:10px 20px;
 font-size:13px;
 font-weight:500;
 color:var(--grey-text);
 background:#f5f5f7;
 border-radius:100px;
 white-space:nowrap;
 transition:all 0.2s ease;
}
.category-nav a:hover,
.category-nav a.active{
 background:var(--black);
 color:#fff;
}
.category-filter{
 background:#fff;
 border-bottom:1px solid var(--grey-border);
 padding:20px 0;
}
.filter-inner{
 display:flex;
 gap:10px;
 justify-content:center;
 flex-wrap:wrap;
 max-width:1200px;
 margin:0 auto;
 padding:0 40px;
}
.filter-btn,
.blog-filter-btn{
 padding:10px 24px;
 font-size:14px;
 font-weight:500;
 color:var(--grey-text);
 background:#f5f5f7;
 border:none;
 border-radius:100px;
 cursor:pointer;
 transition:all 0.2s ease;
}
.filter-btn:hover,
.filter-btn.active,
.blog-filter-btn:hover,
.blog-filter-btn.active{
 background:var(--black);
 color:#fff;
}
.floor-section{
 padding:100px 0;
}
.floor-section.dark{
 background:var(--black);
 color:#fff;
}
.section-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.section-grid.reverse{
 direction:rtl;
}
.section-grid.reverse>*{
 direction:ltr;
}
.section-content .overline{
 font-size:12px;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 color:var(--blue-link);
 margin-bottom:16px;
}
.floor-section.dark .section-content .overline{
 color:rgba(255,255,255,0.5);
}
.section-content h2{
 font-size:clamp(36px,5vw,52px);
 font-weight:700;
 line-height:1.1;
 letter-spacing:-0.03em;
 margin-bottom:24px;
}
.section-content .description{
 font-size:17px;
 line-height:1.8;
 color:var(--grey-text);
 margin-bottom:32px;
}
.floor-section.dark .section-content .description{
 color:rgba(255,255,255,0.7);
}
.applications{
 margin-bottom:24px;
}
.applications h4{
 font-size:12px;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 color:var(--grey-text);
 margin-bottom:12px;
}
.floor-section.dark .applications h4{
 color:rgba(255,255,255,0.5);
}
.app-tags{
 display:flex;
 flex-wrap:wrap;
 gap:8px;
}
.app-tag{
 padding:8px 16px;
 font-size:13px;
 font-weight:500;
 background:#f5f5f7;
 border-radius:100px;
 color:var(--black);
}
.floor-section.dark .app-tag{
 background:rgba(255,255,255,0.1);
 color:#fff;
}
.floor-section .advantages ul{
 list-style:none;
 padding:0;
 margin:0 0 32px 0;
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:12px;
}
.floor-section .advantages li{
 font-size:15px;
 color:var(--grey-text);
 padding-left:24px;
 position:relative;
}
.floor-section.dark .advantages li{
 color:rgba(255,255,255,0.7);
}
.floor-section .advantages li::before{
 content:'✓';
 position:absolute;
 left:0;
 color:var(--carbon);
 font-weight:bold;
}
.section-image{
 aspect-ratio:4/3;
 border-radius:24px;
 overflow:hidden;
 background:#f5f5f7;
}
.section-image>div,
.section-image img{
 width:100%;
 height:100%;
 object-fit:cover;
}
.floor-section-full{
 padding:100px 0;
 text-align:center;
}
.floor-section-full.dark{
 background:var(--black);
 color:#fff;
}
.floor-section-full .lead{
 font-size:18px;
 color:rgba(255,255,255,0.7);
 max-width:600px;
 margin:0 auto;
}
.cards-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
}
.floor-card{
 background:rgba(255,255,255,0.05);
 border:1px solid rgba(255,255,255,0.1);
 padding:40px 32px;
 border-radius:20px;
 text-align:left;
 transition:all 0.3s ease;
}
.floor-card:hover{
 background:rgba(255,255,255,0.08);
 transform:translateY(-4px);
}
.floor-card .card-number{
 font-size:48px;
 font-weight:700;
 color:rgba(255,255,255,0.1);
 margin-bottom:20px;
 display:block;
}
.floor-card h3{
 font-size:24px;
 font-weight:600;
 margin-bottom:8px;
}
.floor-card .subtitle{
 font-size:12px;
 text-transform:uppercase;
 letter-spacing:0.1em;
 color:rgba(255,255,255,0.5);
 margin-bottom:16px;
}
.floor-card p:not(.subtitle){
 font-size:15px;
 color:rgba(255,255,255,0.7);
 line-height:1.6;
 margin-bottom:20px;
}
.floor-card .card-link{
 font-size:13px;
 font-weight:600;
 color:#fff;
 text-transform:uppercase;
 letter-spacing:0.05em;
}
.blog-section{
 padding:80px 0;
 background:#f8f9fa;
}
.blog-groups{
 display:flex;
 flex-direction:column;
 gap:72px;
}
.blog-group-head{
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(0,420px);
 gap:24px;
 align-items:end;
 margin-bottom:28px;
 padding-bottom:20px;
 border-bottom:1px solid rgba(21,21,21,0.12);
}
.blog-group-head h2{
 margin:0;
 font-family:'Cormorant Garamond',serif;
 font-size:2.75rem;
 line-height:1;
 color:var(--black);
}
.blog-group-head p{
 margin:0;
 font-family:'Montserrat',sans-serif;
 font-size:0.95rem;
 line-height:1.7;
 color:var(--grey-text);
}
.blog-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
}
.blog-card{
 background:#fff;
 border-radius:20px;
 overflow:hidden;
 transition:all 0.3s ease;
 box-shadow:0 4px 20px rgba(0,0,0,0.04);
}
.blog-card:hover{
 transform:translateY(-8px);
 box-shadow:0 20px 40px rgba(0,0,0,0.1);
}
.blog-card.featured{
 grid-column:span 2;
 grid-row:span 2;
}
.blog-card.featured .blog-image{
 height:300px;
}
.blog-image{
 position:relative;
 height:200px;
 overflow:hidden;
}
.blog-image img{
 width:100%;
 height:100%;
 object-fit:cover;
 transition:transform 0.5s ease;
}
.blog-card:hover .blog-image img{
 transform:scale(1.05);
}
.blog-category-tag{
 position:absolute;
 top:16px;
 left:16px;
 padding:6px 14px;
 font-size:11px;
 font-weight:600;
 text-transform:uppercase;
 letter-spacing:0.05em;
 background:#fff;
 color:var(--black);
 border-radius:100px;
}
.blog-content{
 padding:28px;
}
.blog-meta{
 font-size:12px;
 color:var(--grey-text);
 margin-bottom:12px;
}
.blog-content h3{
 font-size:20px;
 font-weight:600;
 line-height:1.3;
 margin-bottom:12px;
 letter-spacing:-0.02em;
}
.blog-card.featured .blog-content h3{
 font-size:28px;
}
.blog-content>p{
 font-size:15px;
 color:var(--grey-text);
 line-height:1.6;
 margin-bottom:16px;
}
.read-more{
 font-size:14px;
 font-weight:600;
 color:var(--black);
}
.read-more:hover{
 color:var(--blue-link);
}
.newsletter{
 padding:80px 0;
 background:var(--black);
 color:#fff;
 text-align:center;
}
.newsletter h2{
 font-size:36px;
 margin-bottom:12px;
}
.newsletter>.container>p{
 font-size:17px;
 color:rgba(255,255,255,0.7);
 margin-bottom:32px;
}
.newsletter-form{
 display:flex;
 gap:12px;
 max-width:500px;
 margin:0 auto;
}
.newsletter-form input{
 flex:1;
 padding:16px 24px;
 font-size:15px;
 border:1px solid rgba(255,255,255,0.2);
 border-radius:100px;
 background:rgba(255,255,255,0.05);
 color:#fff;
}
.newsletter-form input::placeholder{
 color:rgba(255,255,255,0.5);
}
.newsletter-form button{
 padding:16px 32px;
 font-size:15px;
 font-weight:600;
 background:#fff;
 color:var(--black);
 border:none;
 border-radius:100px;
 cursor:pointer;
 transition:all 0.2s ease;
}
.newsletter-form button:hover{
 transform:scale(1.02);
}
.projects-main{
 padding:60px 0 100px;
}
.projects-filter{
 display:flex;
 justify-content:center;
 gap:10px;
 flex-wrap:wrap;
 margin-bottom:50px;
}
.projects-masonry{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:24px;
}
.project-item{
 position:relative;
 border-radius:20px;
 overflow:hidden;
 aspect-ratio:4/3;
 cursor:pointer;
}
.project-item.tall{
 grid-row:span 2;
 aspect-ratio:auto;
}
.project-item.wide{
 grid-column:span 2;
}
.project-item-image{
 position:absolute;
 inset:0;
 transition:transform 0.5s ease;
}
.project-item:hover .project-item-image{
 transform:scale(1.05);
}
.project-item-overlay{
 position:absolute;
 inset:0;
 background:linear-gradient(transparent 40%,rgba(0,0,0,0.85));
 padding:30px;
 display:flex;
 flex-direction:column;
 justify-content:flex-end;
 color:#fff;
 opacity:0;
 transition:opacity 0.3s ease;
}
.project-item:hover .project-item-overlay{
 opacity:1;
}
.project-item-overlay>span:first-child{
 font-size:11px;
 font-weight:600;
 text-transform:uppercase;
 letter-spacing:0.1em;
 color:rgba(255,255,255,0.7);
 margin-bottom:8px;
}
.project-item-overlay h3{
 font-size:22px;
 font-weight:600;
 margin-bottom:4px;
}
.project-item-overlay>p{
 font-size:14px;
 color:rgba(255,255,255,0.7);
 margin-bottom:16px;
}
.project-item-stats{
 display:flex;
 gap:10px;
 flex-wrap:wrap;
}
.project-item-stats span{
 font-size:11px;
 padding:6px 12px;
 background:rgba(255,255,255,0.15);
 border-radius:100px;
 color:#fff;
}
.about-hero{
 padding:140px 0 80px;
 background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);
 color:#fff;
}
.about-hero .container{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.about-hero-content .lead{
 font-size:18px;
 line-height:1.7;
 color:rgba(255,255,255,0.75);
}
.about-hero-content h1{
 font-size:clamp(48px,7vw,72px);
 font-weight:700;
 line-height:1.05;
 letter-spacing:-0.03em;
 margin-bottom:24px;
}
.about-hero-image{
 border-radius:24px;
 overflow:hidden;
 aspect-ratio:4/3;
}
.about-hero-image img{
 width:100%;
 height:100%;
 object-fit:cover;
}
.about-values{
 padding:100px 0;
 background:#f8f9fa;
}
.values-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:40px;
 margin-top:60px;
}
.value-item{
 background:#fff;
 padding:48px 36px;
 border-radius:24px;
 box-shadow:0 4px 20px rgba(0,0,0,0.04);
}
.value-item .number{
 font-size:56px;
 font-weight:700;
 color:#e5e5e5;
 margin-bottom:20px;
 line-height:1;
}
.value-item h3{
 font-size:22px;
 font-weight:600;
 margin-bottom:16px;
}
.value-item p{
 font-size:15px;
 color:var(--grey-text);
 line-height:1.7;
}
.about-story{
 padding:100px 0;
}
.story-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.story-content h2{
 font-size:clamp(32px,4vw,42px);
 font-weight:600;
 margin-bottom:24px;
}
.story-content p{
 font-size:17px;
 color:var(--grey-text);
 line-height:1.8;
 margin-bottom:20px;
}
.about-story-image{
 border-radius:24px;
 overflow:hidden;
 aspect-ratio:4/3;
}
.about-story-image img{
 width:100%;
 height:100%;
 object-fit:cover;
}
.team-section{
 padding:100px 0;
 background:#f8f9fa;
}
.section-desc{
 font-size:17px;
 color:var(--grey-text);
 max-width:500px;
 margin:16px auto 0;
}
.team-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:30px;
 margin-top:60px;
}
.team-card{
 background:#fff;
 padding:40px 28px;
 border-radius:24px;
 text-align:center;
 box-shadow:0 4px 20px rgba(0,0,0,0.04);
 transition:all 0.3s ease;
}
.team-card:hover{
 transform:translateY(-8px);
 box-shadow:0 20px 40px rgba(0,0,0,0.1);
}
.team-avatar{
 width:80px;
 height:80px;
 background:linear-gradient(135deg,#1a1a1a 0%,#333 100%);
 border-radius:50%;
 display:flex;
 align-items:center;
 justify-content:center;
 margin:0 auto 20px;
}
.team-avatar span{
 font-size:24px;
 font-weight:700;
 color:#fff;
}
.team-card h3{
 font-size:18px;
 font-weight:600;
 margin-bottom:6px;
}
.team-role{
 font-size:13px;
 color:var(--blue-link);
 font-weight:500;
 margin-bottom:16px;
}
.team-bio{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
}
.timeline-section{
 padding:100px 0;
}
.timeline{
 display:grid;
 grid-template-columns:repeat(6,1fr);
 gap:24px;
 margin-top:60px;
}
.timeline-item{
 text-align:center;
}
.timeline-year{
 font-size:14px;
 font-weight:700;
 color:var(--blue-link);
 background:rgba(0,113,227,0.08);
 padding:8px 16px;
 border-radius:100px;
 display:inline-block;
 margin-bottom:20px;
}
.timeline-content h3{
 font-size:17px;
 font-weight:600;
 margin-bottom:10px;
}
.timeline-content p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
}
.contact-hero{
 padding:140px 0 80px;
 background:linear-gradient(135deg,#1a1a1a 0%,#2d2d2d 100%);
 color:#fff;
}
.contact-hero .container{
 max-width:700px;
}
.contact-hero-content h1{
 font-size:clamp(42px,6vw,64px);
 font-weight:700;
 line-height:1.1;
 letter-spacing:-0.03em;
 margin-bottom:24px;
}
.contact-hero-content .lead{
 font-size:18px;
 line-height:1.7;
 color:rgba(255,255,255,0.75);
}
.contact-main{
 padding:100px 0;
}
.contact-grid{
 display:grid;
 grid-template-columns:1.2fr 0.8fr;
 gap:60px;
}
.contact-form-wrapper h2{
 font-size:28px;
 margin-bottom:32px;
}
.contact-form{
 background:transparent;
 padding:0;
}
.form-row{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:20px;
}
.form-group{
 margin-bottom:24px;
}
.form-group label{
 display:block;
 font-size:13px;
 font-weight:600;
 color:var(--black);
 margin-bottom:10px;
}
.form-group input,
.form-group select,
.form-group textarea{
 width:100%;
 padding:16px 20px;
 font-size:15px;
 border:1px solid var(--grey-border);
 border-radius:12px;
 background:#f8f9fa;
 transition:all 0.2s ease;
 font-family:inherit;
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
 outline:none;
 border-color:var(--black);
 background:#fff;
}
.btn-full{
 width:100%;
}
.contact-info{
 display:flex;
 flex-direction:column;
 gap:24px;
}
.info-card{
 background:#f8f9fa;
 padding:32px;
 border-radius:20px;
}
.info-card.dark{
 background:var(--black);
 color:#fff;
}
.info-card h3{
 font-size:18px;
 font-weight:600;
 margin-bottom:20px;
}
.info-card>p{
 font-size:15px;
 color:var(--grey-text);
 line-height:1.6;
 margin-bottom:20px;
}
.info-card.dark>p{
 color:rgba(255,255,255,0.7);
}
.info-item{
 display:flex;
 justify-content:space-between;
 padding:12px 0;
 border-bottom:1px solid rgba(0,0,0,0.06);
}
.info-item:last-child{
 border-bottom:none;
}
.info-label{
 font-size:14px;
 color:var(--grey-text);
}
.info-value{
 font-size:14px;
 font-weight:500;
 color:var(--black);
}
.info-card.dark .info-item{
 border-color:rgba(255,255,255,0.1);
}
.info-card.dark .info-label{
 color:rgba(255,255,255,0.5);
}
.info-card.dark .info-value{
 color:#fff;
}
.cta-contact{
 margin-top:30px;
}
.cta-contact a{
 color:rgba(255,255,255,0.7);
 font-size:15px;
 transition:color 0.2s ease;
}
.cta-contact a:hover{
 color:#fff;
}
.footer-badges{
 display:flex;
 justify-content:center;
 gap:40px;
 padding:40px 0;
 margin-top:40px;
 border-top:1px solid rgba(255,255,255,0.1);
 flex-wrap:wrap;
}
.badge-item{
 display:flex;
 align-items:center;
 gap:12px;
 color:rgba(255,255,255,0.7);
 font-size:13px;
}
.badge-icon{
 width:40px;
 height:40px;
 background:rgba(255,255,255,0.1);
 border-radius:12px;
 display:flex;
 align-items:center;
 justify-content:center;
}
.badge-icon svg{
 width:20px;
 height:20px;
}
.comparison-section{
 padding:100px 0;
 background:#f8f9fa;
}
.comparison-table-wrapper{
 overflow-x:auto;
 margin-top:50px;
}
.comparison-table{
 width:100%;
 border-collapse:collapse;
 background:#fff;
 border-radius:20px;
 overflow:hidden;
 box-shadow:0 4px 20px rgba(0,0,0,0.04);
}
.comparison-table th,
.comparison-table td{
 padding:20px 24px;
 text-align:left;
 border-bottom:1px solid var(--grey-border);
}
.comparison-table th{
 background:var(--black);
 color:#fff;
 font-size:13px;
 font-weight:600;
 text-transform:uppercase;
 letter-spacing:0.05em;
}
.comparison-table td{
 font-size:15px;
}
.comparison-table tr:last-child td{
 border-bottom:none;
}
.comparison-table tr:hover td{
 background:#f8f9fa;
}
.rating{
 display:inline-block;
 padding:4px 12px;
 border-radius:100px;
 font-size:12px;
 font-weight:600;
}
.rating.high{
 background:rgba(52,199,89,0.15);
 color:var(--carbon);
}
.rating.medium{
 background:rgba(255,149,0,0.15);
 color:#ff9500;
}
.comparison-note{
 text-align:center;
 margin-top:30px;
}
.comparison-note p{
 font-size:15px;
 color:var(--grey-text);
}
.comparison-note a{
 color:var(--blue-link);
 font-weight:500;
}
.process-section{
 padding:100px 0;
 background:#f8f9fa;
}
.next-steps-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:30px;
 margin-top:60px;
}
.next-step{
 background:#fff;
 padding:40px 30px;
 border-radius:20px;
 text-align:center;
 box-shadow:0 4px 20px rgba(0,0,0,0.04);
}
.step-number{
 width:48px;
 height:48px;
 background:var(--black);
 color:#fff;
 border-radius:50%;
 display:flex;
 align-items:center;
 justify-content:center;
 font-size:20px;
 font-weight:700;
 margin:0 auto 20px;
}
.next-step h3{
 font-size:18px;
 font-weight:600;
 margin-bottom:12px;
}
.next-step p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
 margin-bottom:16px;
}
.step-time{
 font-size:12px;
 color:var(--blue-link);
 font-weight:500;
}
@media (max-width:1024px){
 .section-grid{
 grid-template-columns:1fr;
 gap:50px;
}
 .section-grid.reverse{
 direction:ltr;
}
 .cards-grid{
 grid-template-columns:repeat(2,1fr);
}
 .blog-grid{
 grid-template-columns:repeat(2,1fr);
}
 .blog-card.featured{
 grid-column:span 2;
 grid-row:span 1;
}
 .projects-masonry{
 grid-template-columns:repeat(2,1fr);
}
 .about-hero .container{
 grid-template-columns:1fr;
 gap:50px;
}
 .values-grid{
 grid-template-columns:repeat(2,1fr);
}
 .story-grid{
 grid-template-columns:1fr;
 gap:50px;
}
 .team-grid{
 grid-template-columns:repeat(2,1fr);
}
 .timeline{
 grid-template-columns:repeat(3,1fr);
}
 .contact-grid{
 grid-template-columns:1fr;
 gap:50px;
}
 .next-steps-grid{
 grid-template-columns:repeat(2,1fr);
}
 .floor-section .advantages ul{
 grid-template-columns:1fr;
}
}
@media (max-width:768px){
 .floors-hero,
 .blog-hero,
 .projects-hero,
 .about-hero,
 .contact-hero{
 padding:120px 0 60px;
}
 .hero-stats{
 flex-direction:column;
 gap:24px;
}
 .hero-stat{
 display:flex;
 justify-content:space-between;
 align-items:center;
}
 .category-nav-inner{
 padding:16px 20px;
}
 .cards-grid{
 grid-template-columns:1fr;
}
 .blog-grid{
 grid-template-columns:1fr;
}
 .blog-card.featured{
 grid-column:span 1;
}
 .newsletter-form{
 flex-direction:column;
}
 .projects-masonry{
 grid-template-columns:1fr;
}
 .project-item.tall,
 .project-item.wide{
 grid-row:span 1;
 grid-column:span 1;
}
 .values-grid{
 grid-template-columns:1fr;
}
 .team-grid{
 grid-template-columns:1fr;
}
 .timeline{
 grid-template-columns:repeat(2,1fr);
}
 .form-row{
 grid-template-columns:1fr;
}
 .next-steps-grid{
 grid-template-columns:1fr;
}
 .footer-badges{
 flex-direction:column;
 align-items:center;
 gap:20px;
}
 .comparison-table th,
 .comparison-table td{
 padding:16px;
 font-size:14px;
}
}
@media (max-width:480px){
 .timeline{
 grid-template-columns:1fr;
}
}
.bento-gallery{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 grid-template-rows:repeat(2,280px);
 gap:16px;
 margin-top:50px;
}
.bento-item{
 position:relative;
 overflow:hidden;
 border-radius:24px;
 cursor:pointer;
}
.bento-item.bento-hero{
 grid-column:span 2;
 grid-row:span 2;
}
.bento-item.bento-wide{
 grid-column:span 2;
}
.bento-item img{
 width:100%;
 height:100%;
 object-fit:cover;
 transition:transform 0.8s cubic-bezier(0.16,1,0.3,1);
}
.bento-item:hover img{
 transform:scale(1.08);
}
.bento-overlay{
 position:absolute;
 inset:0;
 background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,0.85) 100%);
 display:flex;
 flex-direction:column;
 justify-content:flex-end;
 padding:28px;
 opacity:0;
 transition:all 0.5s cubic-bezier(0.16,1,0.3,1);
}
.bento-item:hover .bento-overlay{
 opacity:1;
}
.bento-overlay .tag{
 display:inline-block;
 font-size:10px;
 font-weight:600;
 letter-spacing:0.12em;
 text-transform:uppercase;
 color:#fff;
 background:rgba(255,255,255,0.2);
 backdrop-filter:blur(10px);
 -webkit-backdrop-filter:blur(10px);
 padding:6px 14px;
 border-radius:100px;
 margin-bottom:12px;
 width:fit-content;
}
.bento-overlay h4{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:22px;
 font-weight:600;
 color:#fff;
 margin:0;
 transform:translateY(10px);
 transition:transform 0.4s cubic-bezier(0.16,1,0.3,1) 0.1s;
}
.bento-item:hover .bento-overlay h4{
 transform:translateY(0);
}
.bento-glass{
 position:absolute;
 bottom:20px;
 left:20px;
 right:20px;
 background:rgba(255,255,255,0.15);
 backdrop-filter:blur(20px);
 -webkit-backdrop-filter:blur(20px);
 border:1px solid rgba(255,255,255,0.2);
 border-radius:16px;
 padding:20px;
 color:#fff;
 opacity:0;
 transform:translateY(20px);
 transition:all 0.5s cubic-bezier(0.16,1,0.3,1);
}
.bento-item:hover .bento-glass{
 opacity:1;
 transform:translateY(0);
}
.bento-glass .tag{
 font-size:10px;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.7);
 margin-bottom:6px;
 display:block;
}
.bento-glass h4{
 font-size:18px;
 font-weight:600;
 margin:0;
}
@media (max-width:1024px){
 .bento-gallery{
 grid-template-columns:repeat(2,1fr);
 grid-template-rows:auto;
}
 .bento-item.bento-hero{
 grid-column:span 2;
 grid-row:span 1;
 height:400px;
}
 .bento-item:not(.bento-hero){
 height:280px;
}
}
@media (max-width:768px){
 .bento-gallery{
 grid-template-columns:1fr;
 gap:12px;
}
 .bento-item.bento-hero,
 .bento-item.bento-wide{
 grid-column:span 1;
}
 .bento-item{
 height:280px !important;
}
 .bento-overlay{
 opacity:1;
 background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,0.8) 100%);
}
}
.expertise-cards-container{
 position:relative;
}
.expertise-card{
 position:absolute;
 background:rgba(255,255,255,0.9);
 backdrop-filter:blur(20px);
 -webkit-backdrop-filter:blur(20px);
 border:1px solid rgba(255,255,255,0.3);
 border-radius:20px;
 padding:24px;
 box-shadow:
 0 4px 6px rgba(0,0,0,0.02),
 0 12px 24px rgba(0,0,0,0.06),
 0 24px 48px rgba(0,0,0,0.08);
 z-index:10;
 max-width:280px;
 opacity:0;
 transform:translateY(30px);
 transition:all 0.6s cubic-bezier(0.16,1,0.3,1);
}
.expertise-card.visible{
 opacity:1;
 transform:translateY(0);
}
.expertise-card.card-top-right{
 top:10%;
 right:-20px;
}
.expertise-card.card-bottom-left{
 bottom:15%;
 left:-20px;
}
.expertise-card.card-center-right{
 top:40%;
 right:-30px;
}
.expertise-card-icon{
 width:48px;
 height:48px;
 background:linear-gradient(135deg,#1a1a1a 0%,#333 100%);
 border-radius:14px;
 display:flex;
 align-items:center;
 justify-content:center;
 margin-bottom:16px;
}
.expertise-card-icon svg{
 width:24px;
 height:24px;
 stroke:#fff;
}
.expertise-card h5{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:16px;
 font-weight:600;
 color:#1d1d1f;
 margin-bottom:8px;
 letter-spacing:-0.02em;
}
.expertise-card p{
 font-size:14px;
 color:#6e6e73;
 line-height:1.5;
 margin:0;
}
.expertise-card .spec-value{
 font-size:28px;
 font-weight:700;
 color:#1d1d1f;
 margin-bottom:4px;
 letter-spacing:-0.02em;
}
.expertise-card .spec-label{
 font-size:12px;
 text-transform:uppercase;
 letter-spacing:0.1em;
 color:#6e6e73;
}
.expertise-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:20px;
 margin:60px 0;
}
.expertise-card-inline{
 background:rgba(255,255,255,0.8);
 backdrop-filter:blur(20px);
 -webkit-backdrop-filter:blur(20px);
 border:1px solid rgba(0,0,0,0.06);
 border-radius:20px;
 padding:28px 24px;
 text-align:center;
 transition:all 0.3s cubic-bezier(0.16,1,0.3,1);
}
.expertise-card-inline:hover{
 transform:translateY(-8px);
 box-shadow:
 0 8px 16px rgba(0,0,0,0.04),
 0 24px 48px rgba(0,0,0,0.08);
 background:#fff;
}
.expertise-card-inline .icon{
 width:56px;
 height:56px;
 background:linear-gradient(135deg,#f5f5f7 0%,#e8e8ed 100%);
 border-radius:16px;
 display:flex;
 align-items:center;
 justify-content:center;
 margin:0 auto 16px;
}
.expertise-card-inline .value{
 font-size:32px;
 font-weight:700;
 color:#1d1d1f;
 margin-bottom:4px;
 letter-spacing:-0.02em;
}
.expertise-card-inline .label{
 font-size:13px;
 color:#6e6e73;
 font-weight:500;
}
@media (max-width:1024px){
 .expertise-grid{
 grid-template-columns:repeat(2,1fr);
}
 .expertise-card{
 position:relative;
 top:auto !important;
 left:auto !important;
 right:auto !important;
 bottom:auto !important;
 margin:16px 0;
 max-width:none;
}
}
@media (max-width:768px){
 .expertise-grid{
 grid-template-columns:1fr;
}
}
.animate-on-scroll{
 opacity:0;
 transform:translateY(40px);
 transition:all 0.8s cubic-bezier(0.16,1,0.3,1);
}
.animate-on-scroll.visible{
 opacity:1;
 transform:translateY(0);
}
.animate-on-scroll.from-left{
 transform:translateX(-40px);
}
.animate-on-scroll.from-left.visible{
 transform:translateX(0);
}
.animate-on-scroll.from-right{
 transform:translateX(40px);
}
.animate-on-scroll.from-right.visible{
 transform:translateX(0);
}
.animate-on-scroll.scale-in{
 transform:scale(0.9);
 opacity:0;
}
.animate-on-scroll.scale-in.visible{
 transform:scale(1);
 opacity:1;
}
.stagger-1{transition-delay:0.1s;}
.stagger-2{transition-delay:0.2s;}
.stagger-3{transition-delay:0.3s;}
.stagger-4{transition-delay:0.4s;}
.stagger-5{transition-delay:0.5s;}
.stagger-6{transition-delay:0.6s;}
.parallax-container{
 overflow:hidden;
 position:relative;
}
.parallax-image{
 transition:transform 0.1s linear;
 will-change:transform;
}
.counter-section{
 padding:100px 0;
 background:var(--black);
 color:#fff;
}
.counter-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:40px;
 text-align:center;
}
.counter-item{
 padding:40px 20px;
}
.counter-value{
 font-family:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
 font-size:clamp(48px,8vw,72px);
 font-weight:700;
 letter-spacing:-0.03em;
 margin-bottom:12px;
 background:linear-gradient(135deg,#fff 0%,rgba(255,255,255,0.8) 100%);
 -webkit-background-clip:text;
 -webkit-text-fill-color:transparent;
 background-clip:text;
}
.counter-label{
 font-size:14px;
 font-weight:500;
 letter-spacing:0.05em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.6);
}
.trust-number{
 opacity:0;
 transform:translateY(20px);
 transition:all 0.6s cubic-bezier(0.16,1,0.3,1);
}
.trust-number.counted{
 opacity:1;
 transform:translateY(0);
}
@media (max-width:1024px){
 .counter-grid{
 grid-template-columns:repeat(2,1fr);
}
}
@media (max-width:768px){
 .counter-grid{
 grid-template-columns:1fr;
 gap:20px;
}
 .counter-item{
 padding:30px 20px;
}
}
.glass-card{
 background:rgba(255,255,255,0.7);
 backdrop-filter:blur(40px);
 -webkit-backdrop-filter:blur(40px);
 border:1px solid rgba(255,255,255,0.5);
 border-radius:24px;
 padding:40px;
 box-shadow:
 0 4px 6px rgba(0,0,0,0.02),
 0 12px 24px rgba(0,0,0,0.04),
 0 24px 48px rgba(0,0,0,0.06);
 transition:all 0.4s cubic-bezier(0.16,1,0.3,1);
}
.glass-card:hover{
 transform:translateY(-8px);
 box-shadow:
 0 8px 12px rgba(0,0,0,0.04),
 0 24px 48px rgba(0,0,0,0.08),
 0 48px 96px rgba(0,0,0,0.1);
}
.glass-card-dark{
 background:rgba(0,0,0,0.4);
 backdrop-filter:blur(40px);
 -webkit-backdrop-filter:blur(40px);
 border:1px solid rgba(255,255,255,0.1);
 border-radius:24px;
 padding:40px;
 color:#fff;
}
.gradient-border{
 position:relative;
 background:#fff;
 border-radius:24px;
}
.gradient-border::before{
 content:'';
 position:absolute;
 inset:-2px;
 background:linear-gradient(135deg,var(--signal),var(--signal),var(--signal));
 border-radius:26px;
 z-index:-1;
}
.btn-premium{
 display:inline-flex;
 align-items:center;
 gap:12px;
 padding:16px 32px;
 font-size:15px;
 font-weight:600;
 color:#fff;
 background:linear-gradient(135deg,#1d1d1f 0%,#424245 100%);
 border:none;
 border-radius:100px;
 cursor:pointer;
 transition:all 0.3s cubic-bezier(0.16,1,0.3,1);
 box-shadow:0 4px 16px rgba(0,0,0,0.2);
}
.btn-premium:hover{
 transform:translateY(-2px);
 box-shadow:0 8px 24px rgba(0,0,0,0.3);
}
.btn-premium svg{
 width:20px;
 height:20px;
 transition:transform 0.3s ease;
}
.btn-premium:hover svg{
 transform:translateX(4px);
}
.premium-badge{
 display:inline-flex;
 align-items:center;
 gap:8px;
 padding:8px 16px;
 font-size:12px;
 font-weight:600;
 letter-spacing:0.05em;
 text-transform:uppercase;
 background:linear-gradient(135deg,rgba(0,113,227,0.1) 0%,rgba(88,86,214,0.1) 100%);
 color:var(--signal);
 border-radius:100px;
 border:1px solid rgba(0,113,227,0.2);
}
.floating-badge{
 position:absolute;
 top:20px;
 right:20px;
 background:rgba(255,255,255,0.95);
 backdrop-filter:blur(10px);
 -webkit-backdrop-filter:blur(10px);
 padding:12px 20px;
 border-radius:100px;
 box-shadow:0 4px 20px rgba(0,0,0,0.1);
 animation:float 3s ease-in-out infinite;
}
@keyframes float{
 0%,100%{transform:translateY(0);}
 50%{transform:translateY(-10px);}
}
.floating-badge span{
 font-size:13px;
 font-weight:600;
 color:#1d1d1f;
}
.hero-enhanced{
 position:relative;
 min-height:100vh;
 display:flex;
 align-items:center;
 overflow:hidden;
}
.hero-parallax-bg{
 position:absolute;
 inset:0;
 z-index:0;
}
.hero-parallax-bg img{
 width:100%;
 height:120%;
 object-fit:cover;
 transform:translateY(-10%);
 transition:transform 0.1s linear;
}
.hero-content-enhanced{
 position:relative;
 z-index:1;
 max-width:700px;
}
.hero-badge{
 display:inline-flex;
 align-items:center;
 gap:8px;
 padding:10px 20px;
 background:rgba(255,255,255,0.1);
 backdrop-filter:blur(10px);
 -webkit-backdrop-filter:blur(10px);
 border:1px solid rgba(255,255,255,0.2);
 border-radius:100px;
 color:#fff;
 font-size:13px;
 font-weight:500;
 margin-bottom:32px;
 animation:pulse-glow 2s ease-in-out infinite;
}
@keyframes pulse-glow{
 0%,100%{box-shadow:0 0 20px rgba(255,255,255,0.1);}
 50%{box-shadow:0 0 40px rgba(255,255,255,0.2);}
}
.testimonial-carousel{
 position:relative;
 overflow:hidden;
 padding:40px 0;
}
.testimonial-track{
 display:flex;
 gap:30px;
 transition:transform 0.5s cubic-bezier(0.16,1,0.3,1);
}
.testimonial-card-enhanced{
 flex:0 0 calc(33.333% - 20px);
 background:#fff;
 border-radius:24px;
 padding:40px;
 box-shadow:0 4px 20px rgba(0,0,0,0.04);
 border:1px solid rgba(0,0,0,0.04);
 transition:all 0.3s ease;
}
.testimonial-card-enhanced:hover{
 transform:translateY(-8px);
 box-shadow:0 20px 40px rgba(0,0,0,0.08);
}
.testimonial-quote{
 font-size:17px;
 line-height:1.7;
 color:#424245;
 margin-bottom:24px;
 position:relative;
}
.testimonial-quote::before{
 content:'"';
 position:absolute;
 top:-20px;
 left:-10px;
 font-size:80px;
 font-family:Georgia,serif;
 color:#f0f0f0;
 line-height:1;
 z-index:0;
}
.testimonial-author-enhanced{
 display:flex;
 align-items:center;
 gap:16px;
}
.testimonial-avatar{
 width:56px;
 height:56px;
 background:linear-gradient(135deg,#1a1a1a 0%,#333 100%);
 border-radius:50%;
 display:flex;
 align-items:center;
 justify-content:center;
 color:#fff;
 font-weight:600;
 font-size:18px;
}
.testimonial-info h5{
 font-size:16px;
 font-weight:600;
 color:#1d1d1f;
 margin-bottom:4px;
}
.testimonial-info span{
 font-size:14px;
 color:#6e6e73;
}
.carousel-dots{
 display:flex;
 justify-content:center;
 gap:10px;
 margin-top:40px;
}
.carousel-dot{
 width:10px;
 height:10px;
 border-radius:50%;
 background:#d2d2d7;
 cursor:pointer;
 transition:all 0.3s ease;
}
.carousel-dot.active{
 background:#1d1d1f;
 transform:scale(1.2);
}
@media (max-width:1024px){
 .testimonial-card-enhanced{
 flex:0 0 calc(50% - 15px);
}
}
@media (max-width:768px){
 .testimonial-card-enhanced{
 flex:0 0 100%;
}
}
.specs-table-animated{
 width:100%;
 border-collapse:separate;
 border-spacing:0;
 background:#fff;
 border-radius:20px;
 overflow:hidden;
 box-shadow:0 4px 20px rgba(0,0,0,0.04);
}
.specs-table-animated tr{
 opacity:0;
 transform:translateX(-20px);
 transition:all 0.4s cubic-bezier(0.16,1,0.3,1);
}
.specs-table-animated tr.visible{
 opacity:1;
 transform:translateX(0);
}
.specs-table-animated th{
 background:linear-gradient(135deg,#1d1d1f 0%,#424245 100%);
 color:#fff;
 padding:20px 28px;
 text-align:left;
 font-size:13px;
 font-weight:600;
 text-transform:uppercase;
 letter-spacing:0.05em;
}
.specs-table-animated td{
 padding:20px 28px;
 border-bottom:1px solid #f5f5f7;
 font-size:15px;
 color:#424245;
 transition:all 0.2s ease;
}
.specs-table-animated tr:hover td{
 background:#f8f9fa;
 color:#1d1d1f;
}
.specs-table-animated td:first-child{
 font-weight:600;
 color:#1d1d1f;
}
.specs-table-animated tr:last-child td{
 border-bottom:none;
}
.reveal{
 opacity:0;
 transform:translateY(30px);
 transition:all 0.8s cubic-bezier(0.16,1,0.3,1);
}
.reveal.visible{
 opacity:1;
 transform:translateY(0);
}
.reveal-left{
 opacity:0;
 transform:translateX(-50px);
 transition:all 0.8s cubic-bezier(0.16,1,0.3,1);
}
.reveal-left.visible{
 opacity:1;
 transform:translateX(0);
}
.reveal-right{
 opacity:0;
 transform:translateX(50px);
 transition:all 0.8s cubic-bezier(0.16,1,0.3,1);
}
.reveal-right.visible{
 opacity:1;
 transform:translateX(0);
}
.reveal-scale{
 opacity:0;
 transform:scale(0.9);
 transition:all 0.8s cubic-bezier(0.16,1,0.3,1);
}
.reveal-scale.visible{
 opacity:1;
 transform:scale(1);
}
.page-transition{
 animation:pageIn 0.6s cubic-bezier(0.16,1,0.3,1);
}
@keyframes pageIn{
 from{
 opacity:0;
 transform:translateY(20px);
}
 to{
 opacity:1;
 transform:translateY(0);
}
}
.gallery-section{
 padding:100px 0;
 background:#f8f9fa;
}
.terrazzo-gallery{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 grid-template-rows:repeat(2,280px);
 gap:16px;
}
.terrazzo-gallery .gallery-item{
 position:relative;
 overflow:hidden;
 border-radius:20px;
}
.terrazzo-gallery .gallery-item.featured{
 grid-column:span 1;
 grid-row:span 2;
}
.terrazzo-gallery .gallery-item img{
 width:100%;
 height:100%;
 object-fit:cover;
 transition:transform 0.6s cubic-bezier(0.16,1,0.3,1);
}
.terrazzo-gallery .gallery-item:hover img{
 transform:scale(1.08);
}
.gallery-caption{
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 padding:24px;
 background:linear-gradient(transparent,rgba(0,0,0,0.8));
 color:#fff;
 opacity:0;
 transform:translateY(20px);
 transition:all 0.4s cubic-bezier(0.16,1,0.3,1);
}
.terrazzo-gallery .gallery-item:hover .gallery-caption{
 opacity:1;
 transform:translateY(0);
}
.gallery-caption span{
 display:block;
 font-size:11px;
 font-weight:600;
 letter-spacing:0.1em;
 text-transform:uppercase;
 color:rgba(255,255,255,0.7);
 margin-bottom:6px;
}
.gallery-caption h4{
 font-size:18px;
 font-weight:600;
 margin:0;
}
@media (max-width:1024px){
 .terrazzo-gallery{
 grid-template-columns:repeat(2,1fr);
 grid-template-rows:auto;
}
 .terrazzo-gallery .gallery-item.featured{
 grid-column:span 2;
 grid-row:span 1;
 height:350px;
}
 .terrazzo-gallery .gallery-item:not(.featured){
 height:250px;
}
}
@media (max-width:768px){
 .terrazzo-gallery{
 grid-template-columns:1fr;
}
 .terrazzo-gallery .gallery-item.featured{
 grid-column:span 1;
}
 .terrazzo-gallery .gallery-item{
 height:280px !important;
}
 .gallery-caption{
 opacity:1;
 transform:translateY(0);
}
}
.footer-logo{
 height:64px;
 width:auto;
 display:block;
 margin-bottom:16px;
 opacity:0.95;
 transition:opacity 0.3s ease;
}
.footer-logo:hover{opacity:1;}
@media (max-width:768px){
 .footer-logo{height:56px;}
}
.footer-logo:hover{
 opacity:1;
}
.landing-hero{
 position:relative;
 min-height:100vh;
 display:flex;
 align-items:center;
 padding-top:81px;
 overflow:hidden;
}
.landing-hero-bg{
 position:absolute;
 inset:0;
 background-size:cover;
 background-position:center;
 z-index:0;
}
.landing-hero-dark .landing-hero-bg::after{
 content:'';
 position:absolute;
 inset:0;
 background:linear-gradient(to right,rgba(0,0,0,0.85) 0%,rgba(0,0,0,0.5) 50%,rgba(0,0,0,0.3) 100%);
}
.landing-hero-light .landing-hero-bg::after{
 content:'';
 position:absolute;
 inset:0;
 background:linear-gradient(to right,rgba(255,255,255,0.95) 0%,rgba(255,255,255,0.7) 50%,rgba(255,255,255,0.3) 100%);
}
.landing-hero .container{
 position:relative;
 z-index:2;
}
.landing-hero-content{
 max-width:600px;
 padding:60px 0;
}
.landing-label{
 display:inline-block;
 font-size:11px;
 font-weight:500;
 letter-spacing:0.15em;
 text-transform:uppercase;
 margin-bottom:20px;
 padding:8px 16px;
 border-radius:20px;
}
.landing-hero-dark .landing-label{
 color:rgba(255,255,255,0.7);
 background:rgba(255,255,255,0.1);
}
.landing-hero-light .landing-label{
 color:var(--grey-text);
 background:rgba(0,0,0,0.05);
}
.landing-hero h1{
 font-size:clamp(48px,8vw,72px);
 font-weight:700;
 line-height:1.05;
 letter-spacing:-0.03em;
 margin-bottom:20px;
}
.landing-hero-dark h1{
 color:var(--white);
}
.landing-hero-light h1{
 color:var(--black);
}
.landing-tagline{
 font-size:20px;
 font-weight:500;
 margin-bottom:20px;
}
.landing-hero-dark .landing-tagline{
 color:rgba(255,255,255,0.9);
}
.landing-hero-light .landing-tagline{
 color:var(--black);
}
.landing-text{
 font-size:16px;
 line-height:1.7;
 margin-bottom:30px;
}
.landing-hero-dark .landing-text{
 color:rgba(255,255,255,0.7);
}
.landing-hero-light .landing-text{
 color:var(--grey-text);
}
.landing-section{
 padding:100px 0;
}
.landing-section.bg-grey{
 background:var(--grey-light);
}
.landing-section.bg-dark{
 background:var(--black);
}
.object-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
 margin-top:50px;
}
.object-card{
 text-align:center;
 padding:40px 30px;
 background:var(--white);
 border-radius:16px;
 box-shadow:0 2px 20px rgba(0,0,0,0.05);
 transition:all 0.3s ease;
}
.object-card:hover{
 transform:translateY(-5px);
 box-shadow:0 10px 40px rgba(0,0,0,0.1);
}
.object-icon{
 width:70px;
 height:70px;
 margin:0 auto 20px;
 display:flex;
 align-items:center;
 justify-content:center;
 background:var(--grey-light);
 border-radius:50%;
 color:var(--black);
}
.object-card h3{
 font-size:18px;
 margin-bottom:10px;
}
.object-card p{
 font-size:14px;
 color:var(--grey-text);
 line-height:1.6;
}
.systems-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:30px;
 margin-top:50px;
}
.system-card{
 background:var(--white);
 border-radius:16px;
 overflow:hidden;
 box-shadow:0 2px 20px rgba(0,0,0,0.05);
 transition:all 0.3s ease;
 text-decoration:none;
 color:inherit;
}
.system-card:hover{
 transform:translateY(-5px);
 box-shadow:0 10px 40px rgba(0,0,0,0.1);
}
.system-image{
 height:200px;
 background-size:cover;
 background-position:center;
}
.system-content{
 padding:25px;
}
.system-content h3{
 font-size:20px;
 margin-bottom:10px;
}
.system-content p{
 font-size:14px;
 color:var(--grey-text);
 margin-bottom:15px;
}
.system-link{
 font-size:14px;
 font-weight:500;
 color:var(--blue-link);
}
.benefits-grid{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:40px;
 margin-top:50px;
 text-align:center;
}
.benefit-item{
 padding:30px 20px;
}
.benefit-number{
 font-size:48px;
 font-weight:700;
 color:var(--black);
 margin-bottom:15px;
 letter-spacing:-0.03em;
}
.benefit-item h4{
 font-size:16px;
 margin-bottom:10px;
}
.benefit-item p{
 font-size:14px;
 color:var(--grey-text);
}
.offer-grid{
 display:grid;
 grid-template-columns:repeat(2,1fr);
 gap:30px;
 margin-top:50px;
}
.offer-card{
 padding:40px;
 background:var(--grey-light);
 border-radius:16px;
 transition:transform 0.3s ease,box-shadow 0.3s ease;
}
.offer-card:hover{
 transform:translateY(-4px);
 box-shadow:0 10px 30px rgba(0,0,0,0.08);
}
.offer-number{
 font-size:14px;
 font-weight:600;
 color:var(--grey-text);
 margin-bottom:15px;
}
.offer-card h3{
 font-size:22px;
 margin-bottom:15px;
}
.offer-card p{
 font-size:15px;
 color:var(--grey-text);
 line-height:1.7;
}
.materials-showcase{
 display:grid;
 grid-template-columns:1fr 1fr;
 grid-template-rows:auto auto;
 gap:20px;
 margin-top:50px;
}
.material-showcase-card{
 position:relative;
 border-radius:16px;
 overflow:hidden;
 min-height:280px;
 text-decoration:none;
 color:var(--white);
}
.material-showcase-card.large{
 grid-row:span 2;
 min-height:580px;
}
.material-showcase-image{
 position:absolute;
 inset:0;
 background-size:cover;
 background-position:center;
 transition:transform 0.5s ease;
}
.material-showcase-card:hover .material-showcase-image{
 transform:scale(1.05);
}
.material-showcase-image::after{
 content:'';
 position:absolute;
 inset:0;
 background:linear-gradient(to top,rgba(0,0,0,0.8) 0%,rgba(0,0,0,0.2) 60%,transparent 100%);
}
.material-showcase-content{
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 padding:30px;
 z-index:2;
}
.material-tag{
 display:inline-block;
 font-size:10px;
 font-weight:500;
 letter-spacing:0.1em;
 text-transform:uppercase;
 padding:5px 10px;
 background:rgba(255,255,255,0.2);
 border-radius:12px;
 margin-bottom:10px;
}
.material-showcase-content h3{
 font-size:24px;
 margin-bottom:10px;
}
.material-showcase-card.large .material-showcase-content h3{
 font-size:32px;
}
.material-showcase-content p{
 font-size:14px;
 color:rgba(255,255,255,0.8);
 margin-bottom:15px;
 max-width:300px;
}
.material-link{
 font-size:14px;
 font-weight:500;
}
.process-timeline{
 display:grid;
 grid-template-columns:repeat(4,1fr);
 gap:30px;
 margin-top:50px;
}
.process-step{
 text-align:center;
 padding:30px 20px;
 position:relative;
}
.process-step::after{
 content:'';
 position:absolute;
 top:45px;
 right:-15px;
 width:30px;
 height:2px;
 background:var(--grey-border);
}
.process-step:last-child::after{
 display:none;
}
.process-icon{
 width:60px;
 height:60px;
 margin:0 auto 20px;
 display:flex;
 align-items:center;
 justify-content:center;
 background:var(--black);
 border-radius:50%;
 color:var(--white);
}
.process-step h4{
 font-size:16px;
 margin-bottom:10px;
}
.process-step p{
 font-size:14px;
 color:var(--grey-text);
}
.projects-preview-grid{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:20px;
 margin-top:50px;
}
.project-preview-card{
 position:relative;
 border-radius:16px;
 overflow:hidden;
 aspect-ratio:4/3;
}
.project-preview-image{
 position:absolute;
 inset:0;
 background-size:cover;
 background-position:center;
 transition:transform 0.5s ease;
}
.project-preview-card:hover .project-preview-image{
 transform:scale(1.05);
}
.project-preview-image::after{
 content:'';
 position:absolute;
 inset:0;
 background:linear-gradient(to top,rgba(0,0,0,0.7) 0%,transparent 60%);
}
.project-preview-info{
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 padding:20px;
 z-index:2;
 color:var(--white);
}
.project-preview-info span{
 font-size:11px;
 text-transform:uppercase;
 letter-spacing:0.1em;
 color:rgba(255,255,255,0.7);
}
.project-preview-info h4{
 font-size:18px;
 margin-top:5px;
}
.landing-form-section{
 padding:100px 0;
 background:var(--black);
 color:var(--white);
}
.landing-form-section.landing-form-light{
 background:var(--grey-light);
 color:var(--black);
}
.landing-form-grid{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:80px;
 align-items:center;
}
.landing-form-content h2{
 font-size:36px;
 margin-bottom:20px;
}
.landing-form-section:not(.landing-form-light) .landing-form-content h2{
 color:var(--white);
}
.landing-form-content>p{
 font-size:16px;
 line-height:1.7;
 margin-bottom:30px;
}
.landing-form-section:not(.landing-form-light) .landing-form-content>p{
 color:rgba(255,255,255,0.7);
}
.form-benefits{
 display:flex;
 flex-direction:column;
 gap:15px;
}
.form-benefit{
 display:flex;
 align-items:center;
 gap:12px;
 font-size:14px;
}
.landing-form-section:not(.landing-form-light) .form-benefit{
 color:rgba(255,255,255,0.8);
}
.form-benefit svg{
 flex-shrink:0;
 color:var(--carbon);
}
.landing-form-wrapper{
 background:var(--white);
 padding:40px;
 border-radius:20px;
}
.landing-form .form-group{
 margin-bottom:20px;
}
.landing-form label{
 display:block;
 font-size:13px;
 font-weight:500;
 color:var(--black);
 margin-bottom:8px;
}
.landing-form input,
.landing-form select,
.landing-form textarea{
 width:100%;
 padding:14px 16px;
 font-size:15px;
 border:1px solid var(--grey-border);
 border-radius:10px;
 background:var(--white);
 transition:border-color 0.3s ease,box-shadow 0.3s ease;
}
.landing-form input:focus,
.landing-form select:focus,
.landing-form textarea:focus{
 outline:none;
 border-color:var(--black);
 box-shadow:0 0 0 3px rgba(29,29,31,0.08);
}
.landing-form textarea{
 min-height:120px;
 resize:vertical;
 font-family:inherit;
}
.form-helper{
 color:var(--grey-text);
 font-size:13px;
 line-height:1.5;
 margin:-6px 0 18px;
}
.form-helper a,
.form-msg a{
 color:inherit;
 font-weight:700;
 text-decoration:underline;
}
.landing-form .btn-full{
 width:100%;
 padding:16px;
 font-size:15px;
 margin-top:10px;
}
@media (max-width:968px){
 .object-grid{
 grid-template-columns:repeat(2,1fr);
}
 .systems-grid{
 grid-template-columns:repeat(2,1fr);
}
 .benefits-grid{
 grid-template-columns:repeat(2,1fr);
}
 .process-timeline{
 grid-template-columns:repeat(2,1fr);
}
 .process-step::after{
 display:none;
}
 .materials-showcase{
 grid-template-columns:1fr;
}
 .material-showcase-card.large{
 grid-row:span 1;
 min-height:350px;
}
 .landing-form-grid{
 grid-template-columns:1fr;
 gap:40px;
}
 .projects-preview-grid{
 grid-template-columns:repeat(2,1fr);
}
}
@media (max-width:576px){
 .landing-hero-content{
 padding:40px 0;
}
 .object-grid{
 grid-template-columns:1fr;
}
 .systems-grid{
 grid-template-columns:1fr;
}
 .benefits-grid{
 grid-template-columns:1fr;
 gap:20px;
}
 .offer-grid{
 grid-template-columns:1fr;
}
 .process-timeline{
 grid-template-columns:1fr;
}
 .projects-preview-grid{
 grid-template-columns:1fr;
}
 .landing-form-wrapper{
 padding:30px 25px;
}
 .fit-matrix{
 grid-template-columns:1fr;
}
}
