:root{--font-heading:"Bodoni Moda", serif;--font-body:"Inter", sans-serif;--color-navy:#18395b;--color-navy-deep:#102d4c;--color-paper:#ece7df;--color-paper-2:#f5f1ea;--color-text:#1a1a1a;--color-white:#fff;--color-line:#ffffff2e;--color-dark-line:#0000001f;--container:1280px;--transition:.3s ease}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}body{font-family:var(--font-body);background:var(--color-paper);color:var(--color-text);max-width:100vw;margin:0;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit}section{position:relative}.container{width:min(100% - 32px, var(--container));margin-inline:auto}.section-dark{background:var(--color-navy);color:var(--color-white)}.section-paper{background:var(--color-paper);color:var(--color-text)}.section-title{font-family:var(--font-heading);letter-spacing:.02em;text-transform:uppercase;text-wrap:balance;font-size:clamp(2rem,4vw,4rem);line-height:.95}.section-copy{text-wrap:pretty;max-width:42rem;font-size:clamp(.92rem,1.5vw,1rem);line-height:1.8}.placeholder-block{text-transform:uppercase;letter-spacing:.15em;border:1px dashed #ffffff59;place-items:center;width:100%;min-height:320px;font-size:.75rem;display:grid}.placeholder-block.dark{color:#fffc;border-color:#ffffff59}.placeholder-block.light{color:#0000008c;border-color:#0003}.horizontal-scroll{scroll-snap-type:x mandatory;scrollbar-width:none;gap:0;display:flex;overflow-x:auto}.horizontal-scroll::-webkit-scrollbar{display:none}.horizontal-card{scroll-snap-align:start;min-height:420px;transition:transform var(--transition), width var(--transition);flex:0 0 320px}.horizontal-card:hover{transform:translateY(-10px)}.section-pad{padding:clamp(56px,8vw,60px) 0}.hero-video{background:#0f2237;width:100%;min-height:100vh;position:relative;overflow:hidden}.hero-video__media{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.hero-video__overlay{pointer-events:none;background:linear-gradient(#00000042,#0000001f,#0000006b);position:absolute;inset:0}.hero-video__control{z-index:99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;background:#0814228f;border:1px solid #ffffff47;border-radius:999px;justify-content:center;align-items:center;width:54px;height:54px;transition:transform .25s,background .25s,border-color .25s,opacity .25s;display:inline-flex;position:absolute;bottom:28px;left:28px}.hero-video__control:hover{background:#081422c7;border-color:#ffffff6b;transform:translateY(-2px)}.hero-video__control:focus-visible{outline-offset:4px;outline:2px solid #fff}.about-section{z-index:20;color:#fff;isolation:isolate;background:url(/assets/textures/background-1.png) top/cover no-repeat;min-height:80vh;margin-top:-150px;padding:140px 0 0;position:relative;overflow:hidden}.about-section:before{content:"";z-index:0;background:#09192b0f;position:absolute;inset:0}.about-section__grid{z-index:2;grid-template-columns:minmax(280px,.9fr) minmax(420px,1.2fr);align-items:end;gap:40px;display:grid;position:relative}.about-section__content{z-index:2;padding-bottom:54px;position:relative}.about-section__title{max-width:10ch;margin-bottom:20px}.about-section__copy{opacity:.9;margin-bottom:28px}.about-section__link{color:#fff;align-items:center;gap:10px;font-size:.95rem;transition:opacity .25s,transform .25s;display:inline-flex}.about-section__link:hover{opacity:.82;transform:translate(4px)}.about-section__media{justify-content:center;align-items:flex-end;min-height:100%;display:flex;position:relative}.about-section__image{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 30px #00000038);width:100%;height:auto;transform:translateY(18px)}.timeline-accordion{background:var(--color-paper);width:100%;padding:0;position:relative;overflow:hidden}.timeline-accordion__track{justify-content:stretch;align-items:stretch;width:100%;height:720px;display:flex;overflow:hidden}.timeline-panel{border-left:1px solid #0000000f;flex:1 1 0;min-width:0;height:100%;transition:flex .45s,filter .35s,opacity .35s;position:relative}.timeline-panel:first-child{border-left:0}.timeline-panel__inner{background:linear-gradient(#ffffffb8,#ffffffb8),url(/assets/textures/paper-texture.png) 50%/cover no-repeat;flex-direction:column;justify-content:space-between;width:100%;height:100%;padding:36px 22px 18px;display:flex;position:relative;overflow:hidden;box-shadow:inset -10px 0 18px #00000008}.timeline-panel:hover,.timeline-panel:focus-visible{z-index:5;flex:1.65 1 0}.timeline-accordion__track:hover .timeline-panel:not(:hover){flex:.82 1 0}.timeline-panel__content{z-index:2;text-align:center;position:relative}.timeline-panel__title{font-family:var(--font-heading);letter-spacing:-.04em;color:#1e1e1e;margin-bottom:22px;max-width:100%;margin-inline:auto;font-size:clamp(2rem,2.5vw,3.8rem);line-height:.92}.timeline-panel__desc{color:#2f2f2f;text-align:center;max-width:17rem;margin-inline:auto;font-size:.95rem;line-height:1.6}.timeline-panel__year{text-align:center;font-family:var(--font-heading);letter-spacing:-.08em;color:#121212f2;white-space:nowrap;pointer-events:none;font-size:clamp(5rem,6vw,7.5rem);line-height:.82;display:block}.stats-section__grid{z-index:2;text-align:center;grid-template-columns:repeat(4,1fr);gap:24px;display:grid;position:relative}.stats-section__item{padding:0 12px;position:relative}.stats-section__divider{background:#ffffff47;width:1px;height:72px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.stats-section__value{font-family:var(--font-heading);color:var(--color-white);margin-bottom:8px;font-size:clamp(2.4rem,4vw,4.2rem);line-height:1}.stats-section__label{text-transform:uppercase;letter-spacing:.08em;color:#ffffffe6;max-width:11rem;margin-inline:auto;font-size:.75rem}.reviews-section{padding:clamp(56px,8vw,90px) 0}.reviews-section__heading{text-align:center;margin-bottom:48px}.reviews-section__eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--color-navy);opacity:.6;margin:0 0 10px;font-size:.78rem;font-weight:600}.reviews-section__title{font-family:var(--font-heading);text-transform:uppercase;color:var(--color-text);margin:0;font-size:clamp(2.2rem,4vw,4rem);line-height:1}.reviews-section__grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.review-card{border:1px solid var(--color-dark-line);min-height:220px;transition:transform var(--transition), box-shadow var(--transition);background:#ffffff8c;flex-direction:column;gap:16px;padding:32px 28px;display:flex}.review-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000012}.review-card__stars{color:#c8a96e;letter-spacing:.1em;font-size:1.1rem}.review-card__text{color:#1a1a1ad9;flex:1;margin:0;font-size:clamp(.92rem,1.2vw,1rem);line-height:1.8}.review-card__footer{border-top:1px solid var(--color-dark-line);align-items:center;gap:12px;margin-top:auto;padding-top:16px;display:flex}.review-card__avatar{background:var(--color-navy);width:36px;height:36px;color:var(--color-white);text-transform:uppercase;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;display:inline-flex}.review-card__name{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text);font-size:.82rem;font-weight:600}.services-section{color:var(--color-white);background:url(/assets/textures/background-1.png) 50%/cover no-repeat;padding:90px 0;position:relative;overflow:hidden}.services-section__overlay{pointer-events:none;background:#081a2e2e;position:absolute;inset:0}.services-section__inner{z-index:2;grid-template-columns:1fr 1.2fr;align-items:start;gap:40px;display:grid;position:relative}.services-section__content{min-width:0}.services-section__title{color:var(--color-white);margin-bottom:20px}.services-section__copy{opacity:.92;color:var(--color-white);margin-bottom:24px}.services-section__link{color:var(--color-white);text-transform:none;letter-spacing:.02em;align-items:center;gap:10px;transition:opacity .25s,transform .25s;display:inline-flex}.services-section__link:hover{opacity:.82;transform:translate(4px)}.services-section__list{border-top:1px solid var(--color-line);min-width:0}.services-section__item{border-bottom:1px solid var(--color-line);color:var(--color-white);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:18px 0;display:grid}.services-section__item-text{overflow-wrap:anywhere;min-width:0;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.5}.services-section__item-arrow{flex-shrink:0;font-size:1.1rem}.gallery-section{color:#fff;background:url(/assets/textures/background-1.png) 50%/cover no-repeat;padding:90px 0;position:relative;overflow:hidden}.gallery-section__overlay{pointer-events:none;background:#081a2e14;position:absolute;inset:0}.gallery-section__inner{z-index:2;position:relative}.gallery-section__title{text-align:center;font-family:var(--font-heading);text-transform:uppercase;color:#fff;margin-bottom:34px;font-size:clamp(2.2rem,4vw,4rem)}.gallery-slider{justify-content:center;align-items:center;gap:18px;display:flex;position:relative}.gallery-slider__arrow{color:#fff;cursor:pointer;background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:4rem;line-height:1;transition:transform .25s,opacity .25s;display:inline-flex}.gallery-slider__arrow:hover{opacity:.8;transform:scale(1.08)}.gallery-slider__grid{grid-template-columns:.88fr 1.8fr .88fr;align-items:stretch;gap:10px;width:min(100%,1020px);min-width:0;display:grid}.gallery-slider__stack{grid-template-rows:1fr 1fr;gap:10px;min-width:0;display:grid}.gallery-slider__thumb,.gallery-slider__main{background:#ffffff0f;border:2px solid #ffffff6b;position:relative;overflow:hidden}.gallery-slider__thumb{min-height:200px}.gallery-slider__main{min-height:410px}.gallery-slider__image{object-fit:cover;object-position:center;transition:transform .35s}.gallery-slider__thumb:hover .gallery-slider__image,.gallery-slider__main:hover .gallery-slider__image{transform:scale(1.04)}.gallery-lightbox{z-index:200;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gallery-lightbox__backdrop{cursor:pointer;background:#050a12e0;border:0;position:absolute;inset:0}.gallery-lightbox__content{z-index:2;flex-direction:column;justify-content:center;width:min(92vw,1400px);height:min(84vh,900px);display:flex;position:relative}.gallery-lightbox__image-wrap{background:#ffffff0a;border:1px solid #ffffff2e;flex:1;min-height:0;position:relative;overflow:hidden}.gallery-lightbox__image{object-fit:contain;object-position:center}.gallery-lightbox__controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:16px;display:flex}.gallery-lightbox__btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff38;min-width:110px;height:46px;padding:0 18px;font-size:.95rem;transition:background .25s,transform .25s,opacity .25s}.gallery-lightbox__btn:hover{background:#ffffff24;transform:translateY(-2px)}.gallery-lightbox__btn--close{background:#ffffff1f}.gallery-lightbox__meta{text-align:center;color:#ffffffe0;letter-spacing:.04em;min-width:90px;font-size:.95rem}.projects-section{padding:90px 0}.projects-section__heading{text-align:center;margin-bottom:40px}.projects-slider{grid-template-columns:54px 1fr 54px;align-items:center;gap:14px;display:grid}.projects-slider__arrow{color:#1a1a1a;cursor:pointer;background:#ffffff80;border:1px solid #00000024;justify-content:center;align-items:center;width:54px;height:54px;font-size:2rem;transition:transform .25s,background .25s,border-color .25s;display:inline-flex}.projects-slider__arrow:hover{background:#fffc;border-color:#0003;transform:translateY(-2px)}.projects-slider__grid{grid-template-columns:repeat(3,1fr);gap:24px;min-width:0;display:grid}.project-card{flex-direction:column;min-width:0;display:flex}.project-card__media{background:#ffffff80;border:1px solid #00000014;min-height:260px;margin-bottom:16px;position:relative;overflow:hidden}.project-card__image{object-fit:cover;object-position:center;transition:transform .35s}.project-card:hover .project-card__image{transform:scale(1.04)}.project-card__body{text-align:center}.project-card__title{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-size:.78rem;font-weight:600}.project-card__subtitle{font-family:var(--font-heading);text-transform:uppercase;margin-bottom:10px;font-size:1.2rem;line-height:1.15}.project-card__desc{color:#000000b8;max-width:22rem;margin-inline:auto;font-size:.92rem;line-height:1.7}.blogs-section{padding:90px 0;overflow:hidden}.blogs-section__heading{text-align:center;margin-bottom:40px}.blogs-section__title{font-family:var(--font-heading);text-transform:uppercase;margin:0;font-size:clamp(2.2rem,4vw,4rem);line-height:1}.blogs-slider{grid-template-columns:54px 1fr 54px;align-items:center;gap:14px;display:grid}.blogs-slider__arrow{color:#1a1a1a;cursor:pointer;background:#ffffff80;border:1px solid #00000024;justify-content:center;align-items:center;width:54px;height:54px;font-size:2rem;transition:transform .25s,background .25s,border-color .25s;display:inline-flex}.blogs-slider__arrow:hover{background:#ffffffd9;border-color:#0003;transform:translateY(-2px)}.blogs-slider__track{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;gap:24px;min-width:0;display:flex;overflow-x:auto}.blogs-slider__track::-webkit-scrollbar{display:none}.blog-card{scroll-snap-align:start;flex-direction:column;flex:0 0 calc(33.3333% - 16px);min-width:320px;display:flex}.blog-card__media{background:#ffffff80;border:1px solid #00000014;width:100%;height:240px;margin-bottom:16px;position:relative;overflow:hidden}.blog-card__image{object-fit:cover;object-position:center}.blog-card__body{text-align:center}.blog-card__title{font-family:var(--font-heading);text-transform:uppercase;margin:0 0 10px;font-size:1.25rem;line-height:1.15}.blog-card__desc{color:#000000b8;max-width:22rem;margin:0 auto;font-size:.92rem;line-height:1.7}.site-footer{color:#fff;background:url(/assets/textures/background-1.png) 50%/cover no-repeat;padding:72px 0 22px;position:relative;overflow:hidden}.site-footer__overlay{pointer-events:none;background:#0816262e;position:absolute;inset:0}.site-footer__inner{z-index:2;position:relative}.site-footer__top{border-bottom:1px solid #ffffff2e;grid-template-columns:1.35fr 1fr 1fr;gap:48px;padding-bottom:34px;display:grid}.site-footer__brand-col,.site-footer__links-col,.site-footer__contact-col{min-width:0}.site-footer__logo-wrap{margin-bottom:22px}.site-footer__logo{object-fit:contain;width:100%;max-width:190px;height:auto}.site-footer__about{color:#ffffffd1;max-width:30rem;font-size:.92rem;line-height:1.8}.site-footer__heading{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.14em;color:#fff;border-bottom:1px solid #ffffff38;margin-bottom:20px;padding-bottom:10px;font-size:.9rem;font-weight:700;display:inline-block}.site-footer__list{margin:0;padding:0;list-style:none}.site-footer__list li+li{margin-top:10px}.site-footer__list a,.site-footer__contact a,.site-footer__contact p{color:#ffffffd9;font-size:.94rem;line-height:1.9;transition:opacity .25s,transform .25s}.site-footer__contact p+p{margin-top:14px}.site-footer__bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-top:18px;display:flex}.site-footer__copyright{letter-spacing:.08em;text-transform:uppercase;color:#ffffffb8;font-size:.72rem}.site-footer__socials{align-items:center;gap:10px;display:flex}.site-footer__social{color:#fff;letter-spacing:.08em;border:1px solid #ffffff47;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;font-size:.72rem;transition:transform .25s,background .25s,border-color .25s;display:inline-flex}.site-footer__social:hover{background:#ffffff1a;border-color:#ffffff70;transform:translateY(-2px)}@media (max-width:1100px){.timeline-accordion{scrollbar-width:none;overflow:auto hidden}.timeline-accordion::-webkit-scrollbar{display:none}.timeline-accordion__track{width:max-content;min-width:100%;height:620px}.timeline-panel{flex:0 0 280px;width:280px}.timeline-panel:hover,.timeline-panel:focus-visible{flex:0 0 340px}.timeline-accordion__track:hover .timeline-panel:not(:hover){flex:0 0 260px}.timeline-panel__inner{padding:28px 18px 18px}.timeline-panel__title{font-size:2.1rem}.timeline-panel__year{font-size:5.4rem}.services-section__inner,.about-section__grid{grid-template-columns:1fr;gap:24px}.projects-slider{grid-template-columns:42px 1fr 42px;gap:10px}.projects-slider__grid{grid-template-columns:1fr;gap:20px}.gallery-slider{gap:10px}.gallery-slider__grid{grid-template-columns:1fr;width:100%}.gallery-slider__stack{grid-template-rows:none;grid-template-columns:1fr 1fr}.gallery-slider__thumb{min-height:180px}.gallery-slider__main{min-height:360px}.site-footer__top{grid-template-columns:1fr;gap:30px}.stats-section__grid{grid-template-columns:repeat(2,1fr);gap:20px}.stats-section__item:nth-child(odd) .stats-section__divider{display:none}.reviews-section__grid{grid-template-columns:repeat(2,1fr);gap:20px}.blogs-slider{grid-template-columns:42px 1fr 42px;gap:10px}.blog-card{flex:0 0 calc(50% - 12px);min-width:280px}.blogs-slider__arrow{width:42px;height:42px;font-size:1.7rem}}
.site-header{z-index:999;isolation:isolate;background-image:url(/assets/textures/header-tear.png);background-position:top;background-repeat:no-repeat;background-size:100% 100%;flex-direction:column;width:100%;min-height:120px;padding-bottom:60px;transition:background-color .3s,box-shadow .3s;display:flex;position:fixed;top:0;left:0;overflow:visible}.site-header:after{display:none}.site-header--scrolled{background-color:#0a182af2;background-image:none;padding:0;overflow:hidden;box-shadow:0 2px 10px #0000001a}.site-header__inner{z-index:2;grid-template-columns:320px 1fr;align-items:center;gap:32px;min-height:132px;padding-top:18px;padding-bottom:128px;display:grid;position:relative}.site-header--scrolled .site-header__inner{min-height:72px;padding-bottom:10px}.site-header__brand{justify-content:flex-start;align-items:center;display:inline-flex;transform:translateY(8px)}.site-header__logo{object-fit:contain;width:100%;max-width:150px;height:auto}.site-header__nav{justify-content:center;display:flex}.site-header__menu{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(20px,3vw,68px);margin:0;padding:0;list-style:none;display:flex}.site-header__link{letter-spacing:.08em;text-transform:uppercase;color:#fff;justify-content:center;align-items:center;min-height:44px;font-size:clamp(.88rem,1vw,1rem);font-weight:500;transition:opacity .25s,transform .25s;display:inline-flex}.site-header__link:hover{opacity:.8;transform:translateY(-1px)}.site-header__tear{z-index:1;pointer-events:none;width:100%;line-height:0;position:absolute;bottom:-1px;left:0}.site-header__tear-image{width:100%;height:auto;display:block}.site-header__hamburger{cursor:pointer;width:44px;height:44px;transition:background var(--transition), border-color var(--transition);background:#ffffff1a;border:1px solid #ffffff38;border-radius:4px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;display:none}.site-header__hamburger:hover{background:#ffffff2e;border-color:#ffffff61}.site-header__hamburger-bar{width:22px;height:2px;transition:opacity var(--transition), transform var(--transition);background:#fff;border-radius:2px;display:block}.sidebar-backdrop{z-index:90;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;background:#050e1a9e;transition:opacity .32s;position:fixed;inset:0}.sidebar-backdrop--open{opacity:1;pointer-events:auto}.mobile-sidebar{z-index:100;color:#fff;overscroll-behavior:contain;background:url(/assets/textures/background-1.png) 50%/cover no-repeat;flex-direction:column;width:min(300px,85vw);transition:transform .34s cubic-bezier(.32,0,.15,1);display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.mobile-sidebar:before{content:"";pointer-events:none;z-index:0;background:#0a1a2ead;position:absolute;inset:0}.mobile-sidebar--open{transform:translate(0)}.mobile-sidebar__header{z-index:1;border-bottom:1px solid #ffffff24;justify-content:space-between;align-items:center;padding:20px 20px 16px;display:flex;position:relative}.mobile-sidebar__brand{align-items:center;display:inline-flex}.mobile-sidebar__logo{object-fit:contain;width:auto;max-width:140px;height:auto}.mobile-sidebar__close{color:#fff;cursor:pointer;width:40px;height:40px;transition:background var(--transition), border-color var(--transition);background:#ffffff14;border:1px solid #ffffff2e;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.mobile-sidebar__close:hover{background:#ffffff29;border-color:#ffffff52}.mobile-sidebar__menu{z-index:1;margin:0;padding:16px 0;list-style:none;position:relative}.mobile-sidebar__item{opacity:0;transition:opacity .28s ease calc(var(--item-index,0) * 50ms + 80ms), transform .28s ease calc(var(--item-index,0) * 50ms + 80ms);transform:translate(-12px)}.mobile-sidebar--open .mobile-sidebar__item{opacity:1;transform:translate(0)}.mobile-sidebar__link{letter-spacing:.08em;text-transform:uppercase;color:#ffffffe0;min-height:52px;transition:color var(--transition), background var(--transition), padding-left var(--transition);border-bottom:1px solid #ffffff14;align-items:center;padding:0 24px;font-size:1rem;font-weight:500;display:flex}.mobile-sidebar__link:hover{color:#fff;background:#ffffff0f;padding-left:30px}@media (max-width:991px){.site-header{z-index:50;isolation:isolate;background-image:url(/assets/textures/header-tear.png);background-position:top;background-repeat:no-repeat;background-size:cover;width:100%;margin-bottom:0;padding-bottom:0;position:fixed;top:0;left:0;overflow:visible}.site-header--scrolled{background-color:#0a182af2;background-image:none;overflow:hidden}.site-header:after{display:none}.site-header__inner{z-index:99;justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding-top:16px;display:flex!important}.site-header__brand{transform:none}.site-header__nav{display:none}.site-header__hamburger{display:flex}.site-header__tear{display:none}.hero-video{z-index:1;margin-top:0;padding-top:80px;position:relative}}@media (max-width:640px){.site-header__logo{max-width:150px}.mobile-sidebar__logo{max-width:120px}.hero-video{padding-top:72px}}
