@font-face{font-family:Epilogue;src:url('../fonts/epilogue.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{--zenin-bg:#0f0f0f;--zenin-fg:#fff5dd;--zenin-accent:#9c4a38;--zenin-secondary:#fde3a7;--zenin-muted:#c1b7a3;--zenin-border:#fde3a72e;--zenin-surface:#161615;--zenin-max:1160px;--zenin-space:130px;--zenin-shadow:0 12px 40px #0003}
html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--zenin-bg);color:var(--zenin-fg);font-family:Epilogue,sans-serif;font-size:14px;line-height:1.9;overflow-x:hidden}body.elementor-page{margin:0}.elementor-widget-heading .elementor-heading-title{font-family:Epilogue,sans-serif;font-weight:500;letter-spacing:-.045em;line-height:1.3;color:var(--zenin-fg)}.elementor-widget-text-editor,.elementor-widget-text-editor p{font-family:Epilogue,sans-serif;color:var(--zenin-muted);margin:0}.zenin-shell{width:min(var(--zenin-max),calc(100% - 80px));margin-inline:auto}.zenin-section{padding-block:var(--zenin-space)}.zenin-surface{background:var(--zenin-surface)}
.zenin-eyebrow p{color:var(--zenin-secondary)!important;text-transform:uppercase;letter-spacing:.16em;font-size:11px;line-height:1.6;margin:0 0 23px!important}.zenin-section-title .elementor-heading-title{font-size:clamp(34px,3.5vw,48px)}.zenin-page-title .elementor-heading-title{font-size:clamp(40px,5.3vw,76px)}.zenin-lead p{font-size:17px;max-width:650px}.zenin-small p{font-size:11px}.zenin-tiny p{font-size:9px}.zenin-center{text-align:center;align-items:center}.zenin-dot{color:var(--zenin-accent)}
.zenin-btn .elementor-button{background:var(--zenin-accent);color:var(--zenin-fg);border:1px solid transparent;border-radius:0;padding:15px 27px;font-size:12px;font-weight:600;transition:.25s ease}.zenin-btn .elementor-button:hover{background:var(--zenin-secondary);color:var(--zenin-bg)}.zenin-text-button .elementor-button{background:none!important;color:var(--zenin-fg);border:0;border-bottom:1px solid var(--zenin-border);border-radius:0;padding:0 0 5px;font-size:12px}.zenin-text-button .elementor-button:hover{color:var(--zenin-secondary);border-color:var(--zenin-secondary)}
.zenin-header{height:95px;position:fixed;z-index:999;inset:0 0 auto;background:linear-gradient(#0f0f0fb3,#0000);border-bottom:1px solid #ffffff16;transition:.3s}.zenin-header.zenin-scrolled{height:78px;background:#0f0f0ff5;box-shadow:var(--zenin-shadow)}.zenin-header-inner{height:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:28px}.zenin-brand .elementor-heading-title{font-size:14px!important;letter-spacing:.08em!important;white-space:nowrap}.zenin-header-cta .elementor-button{background:var(--zenin-accent);border-radius:0;padding:12px 18px;font-size:11px;color:var(--zenin-fg)}
.zenin-nav{display:flex;align-items:center;gap:27px}.zenin-nav>ul{display:flex;align-items:center;gap:inherit;list-style:none;margin:0;padding:0}.zenin-nav a{color:var(--zenin-fg);font-size:11px;text-decoration:none;transition:.2s}.zenin-nav a:hover,.zenin-nav .current-menu-item>a{color:var(--zenin-secondary)}.zenin-menu-toggle{display:none;background:transparent;border:1px solid var(--zenin-border);color:var(--zenin-fg);padding:8px 16px;font:inherit;font-size:12px}.zenin-nav-mobile{display:none}
.zenin-hero{height:min(850px,100svh);min-height:650px;position:relative;display:flex;align-items:center;overflow:hidden}.zenin-hero-image{position:absolute!important;inset:0;z-index:0;width:100%;height:100%}.zenin-hero-image,.zenin-hero-image .elementor-widget-container,.zenin-hero-image img{width:100%;height:100%!important}.zenin-hero-image img{object-fit:cover;object-position:50% 46%}.zenin-hero-shade{position:absolute!important;inset:0;z-index:1;background:linear-gradient(#10100f4d 0%,#10100f35 45%,#0f0f0fcd 100%)}.zenin-hero>.zenin-shell{position:relative;z-index:2;height:100%;justify-content:center}.zenin-hero-copy{text-align:center;align-items:center;margin:auto}.zenin-hero-title .elementor-heading-title{font-size:clamp(46px,6.2vw,86px);line-height:1.15;letter-spacing:-.05em;text-shadow:0 2px 30px #0003}.zenin-hero-lead p{max-width:430px;color:var(--zenin-fg);margin:0 auto}.zenin-actions{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:30px;margin-top:28px}.zenin-hero-bottom{position:absolute!important;bottom:32px;left:0;right:0;display:flex;flex-direction:row;justify-content:space-between}.zenin-hero-copy{animation:zenin-arrive .8s both}@keyframes zenin-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.zenin-section-heading{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:60px}.zenin-section-heading-copy{max-width:780px}.zenin-editorial-grid{display:grid!important;grid-template-columns:1fr 1fr;align-items:start;gap:65px 75px}.zenin-project-card:nth-child(even){margin-top:100px}.zenin-card-image .elementor-widget-container{aspect-ratio:1/1.12;overflow:hidden;background:#252520}.zenin-card-image img{width:100%;height:100%!important;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.zenin-project-card:hover .zenin-card-image img{transform:scale(1.035)}.zenin-project-meta{padding-top:22px}.zenin-project-meta .zenin-eyebrow p{margin-bottom:5px!important;font-size:10px}.zenin-project-title .elementor-heading-title{font-size:23px}.zenin-project-title a{color:inherit;text-decoration:none}
.zenin-about-section{border-top:1px solid var(--zenin-border)}.zenin-about-grid{display:grid!important;grid-template-columns:1fr 1fr;align-items:center;gap:100px}.zenin-about-image-wrap{position:relative;padding-left:20px}.zenin-about-image-wrap:before{content:'';border:1px solid var(--zenin-border);background:repeating-linear-gradient(90deg,#0000 0 5px,#fde3a715 5px 6px);width:45%;height:70%;position:absolute;top:-20px;left:0}.zenin-about-image{position:relative;z-index:1}.zenin-about-image .elementor-widget-container{aspect-ratio:4/5;overflow:hidden}.zenin-about-image img{width:100%;height:100%!important;object-fit:cover}.zenin-about-copy{gap:0}
.zenin-services-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:24px}.zenin-service-card{border:1px solid var(--zenin-border);overflow:hidden}.zenin-service-card:hover{border-color:#fde3a775}.zenin-service-image .elementor-widget-container{aspect-ratio:1.8;overflow:hidden}.zenin-service-image img{width:100%;height:100%!important;object-fit:cover}.zenin-service-body{padding:28px}.zenin-service-body .zenin-eyebrow p{margin-bottom:10px!important}.zenin-service-title .elementor-heading-title{font-size:21px}.zenin-service-body .elementor-widget-text-editor p{font-size:12px}.zenin-recent-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:28px}.zenin-recent-grid .zenin-project-card{margin-top:0}.zenin-recent-grid .zenin-card-image .elementor-widget-container{aspect-ratio:4/5}.zenin-testimonial{text-align:center;max-width:720px;margin:auto;align-items:center}.zenin-testimonial-copy p{font-size:23px;color:var(--zenin-fg)}.zenin-quote p{color:var(--zenin-accent);font-size:110px;line-height:.8}.zenin-cta{border-block:1px solid var(--zenin-border);background:#1a1714;padding:95px 0}.zenin-cta-title .elementor-heading-title{font-size:clamp(36px,4.5vw,60px);max-width:760px}.zenin-contact-grid{display:grid!important;grid-template-columns:.85fr 1.15fr;gap:95px}.zenin-form .elementor-field-group>label{color:var(--zenin-secondary);font-size:11px}.zenin-form input,.zenin-form select,.zenin-form textarea{color:var(--zenin-fg)!important;background:transparent!important;border-width:0 0 1px!important;border-color:#fde3a75c!important;border-radius:0!important;padding:12px 0 14px!important}.zenin-form .elementor-button{border-radius:0!important;background:var(--zenin-accent)!important;color:var(--zenin-fg)!important}.zenin-form .elementor-button:hover{background:var(--zenin-secondary)!important;color:var(--zenin-bg)!important}
.zenin-footer{border-top:1px solid var(--zenin-border);padding-top:55px}.zenin-footer-grid{display:grid!important;grid-template-columns:1.3fr 1fr 1fr;gap:60px;padding-bottom:45px}.zenin-footer-brand .elementor-heading-title{font-size:26px}.zenin-footer-menu .zenin-nav{flex-wrap:wrap;align-content:flex-start;gap:8px 22px}.zenin-footer-bottom{border-top:1px solid var(--zenin-border);display:flex;flex-direction:row;justify-content:space-between;gap:15px;padding-block:22px}
.zenin-page-intro{padding-top:180px;padding-bottom:65px}.zenin-page-intro .zenin-shell{max-width:1160px}.zenin-page-intro .zenin-lead{max-width:570px}.zenin-values-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:55px}.zenin-value-card{border:1px solid var(--zenin-border);padding:35px}.zenin-services-detail{display:grid!important;gap:45px}.zenin-service-detail{display:grid!important;grid-template-columns:1fr 1fr;align-items:center;border:1px solid var(--zenin-border)}.zenin-service-detail:nth-child(even) .zenin-service-detail-image{order:2}.zenin-service-detail-image .elementor-widget-container{aspect-ratio:1.5;overflow:hidden;height:100%}.zenin-service-detail-image img{width:100%;height:100%!important;object-fit:cover}.zenin-service-detail-copy{padding:45px}.zenin-process-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.zenin-process-card{border-top:1px solid var(--zenin-border);padding-top:25px}.zenin-process-number .elementor-heading-title{color:var(--zenin-accent);font-size:38px}.zenin-faq-grid{display:grid!important;grid-template-columns:1fr 1.4fr;gap:70px}.zenin-faq-item{border-bottom:1px solid var(--zenin-border)}.zenin-faq-item summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:24px 0;color:var(--zenin-fg);font-size:15px}.zenin-faq-item summary::-webkit-details-marker{display:none}.zenin-faq-item summary span{color:var(--zenin-secondary);font-size:24px;transition:.2s}.zenin-faq-item[open] summary span{transform:rotate(45deg)}.zenin-faq-item p{color:var(--zenin-muted);font-size:13px;padding:0 25px 24px 0}.zenin-filter-wrap{margin-bottom:45px}.zenin-filters{display:flex;flex-wrap:wrap;gap:12px}.zenin-filter{border:1px solid var(--zenin-border);background:none;color:var(--zenin-muted);padding:10px 20px;font:inherit;font-size:12px;cursor:pointer}.zenin-filter.is-active,.zenin-filter:hover{background:var(--zenin-secondary);color:var(--zenin-bg)}.zenin-filter-card.is-hidden{display:none!important}
.zenin-project-intro{padding-top:155px;padding-bottom:55px}.zenin-project-cover-wrap{padding-bottom:20px}.zenin-project-cover .elementor-widget-container{aspect-ratio:16/9;overflow:hidden}.zenin-project-cover img{width:100%;height:100%!important;object-fit:cover}.zenin-project-description{display:grid!important;grid-template-columns:1fr 1.4fr;gap:70px;padding-bottom:70px}.zenin-meta{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px}.zenin-meta div{display:block}.zenin-meta dt{color:var(--zenin-secondary);text-transform:uppercase;letter-spacing:.1em;font-size:10px}.zenin-meta dd{color:var(--zenin-muted);font-size:12px;margin:0}.zenin-gallery{display:grid!important;grid-template-columns:1fr 1fr;align-items:center;gap:35px}.zenin-gallery-image .elementor-widget-container{aspect-ratio:3/4;overflow:hidden}.zenin-gallery-image img{width:100%;height:100%!important;object-fit:cover}.zenin-gallery-image.zenin-wide{grid-column:1/-1}.zenin-gallery-image.zenin-wide .elementor-widget-container{aspect-ratio:16/9}.zenin-next-project{border-top:1px solid var(--zenin-border);margin-top:80px;padding:55px 0 20px}.zenin-next-title .elementor-heading-title{font-size:clamp(27px,4vw,48px)}.zenin-next-title a{color:inherit;text-decoration:none}.zenin-404{min-height:82vh;padding-top:180px;display:flex;align-items:center}
@media (max-width:1100px){:root{--zenin-space:100px}.zenin-shell{width:calc(100% - 60px)}.zenin-about-grid{gap:55px}.zenin-contact-grid,.zenin-editorial-grid{gap:50px}.zenin-services-grid{grid-template-columns:repeat(2,1fr)}.zenin-nav{gap:18px}.zenin-header-cta{display:none}}
@media (max-width:800px){.zenin-header,.zenin-header.zenin-scrolled{height:76px}.zenin-menu-toggle{display:block}.zenin-nav-desktop{display:none}.zenin-nav-mobile{display:none;position:absolute;top:76px;left:0;right:0;background:var(--zenin-bg);border-bottom:1px solid var(--zenin-border);padding:25px 30px 35px;flex-direction:column;align-items:stretch;gap:8px}.zenin-nav-mobile.is-open{display:flex}.zenin-nav-mobile>ul{display:flex;flex-direction:column;align-items:stretch;gap:8px}.zenin-nav-mobile a{padding:8px 0}.zenin-about-grid,.zenin-contact-grid,.zenin-faq-grid{gap:40px}.zenin-values-grid{gap:16px}.zenin-service-detail-copy{padding:28px}.zenin-footer-grid{gap:30px}}
@media (max-width:767px){:root{--zenin-space:70px}.zenin-shell{width:calc(100% - 40px)}body{font-size:13px}.zenin-hero{height:100svh;min-height:680px;max-height:880px}.zenin-hero-title .elementor-heading-title{font-size:clamp(43px,10vw,65px)}.zenin-hero-lead p{max-width:310px}.zenin-hero-bottom{bottom:25px}.zenin-section-heading{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:38px}.zenin-editorial-grid{gap:40px 20px}.zenin-project-card:nth-child(even){margin-top:55px}.zenin-card-image .elementor-widget-container{aspect-ratio:3/4}.zenin-project-title .elementor-heading-title{font-size:18px}.zenin-about-grid,.zenin-contact-grid,.zenin-faq-grid{grid-template-columns:1fr}.zenin-about-image-wrap{width:90%}.zenin-services-grid{gap:18px}.zenin-service-body{padding:20px}.zenin-recent-grid{grid-template-columns:1fr;gap:35px}.zenin-recent-grid .zenin-card-image .elementor-widget-container{aspect-ratio:1.25}.zenin-testimonial-copy p{font-size:20px}.zenin-cta{padding:70px 0}.zenin-footer-grid{grid-template-columns:1fr;gap:25px}.zenin-footer-bottom{flex-direction:column;gap:5px}.zenin-page-intro{padding-top:135px;padding-bottom:35px}.zenin-values-grid{grid-template-columns:1fr}.zenin-service-detail{grid-template-columns:1fr}.zenin-service-detail:nth-child(even) .zenin-service-detail-image{order:0}.zenin-service-detail-image .elementor-widget-container{aspect-ratio:1.5}.zenin-process-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.zenin-project-description{grid-template-columns:1fr;gap:15px}.zenin-project-cover .elementor-widget-container,.zenin-gallery-image.zenin-wide .elementor-widget-container{aspect-ratio:4/3}.zenin-gallery{gap:20px}.zenin-next-project{margin-top:45px}}
@media(max-width:430px){.zenin-services-grid{grid-template-columns:1fr}.zenin-editorial-grid{grid-template-columns:1fr}.zenin-project-card:nth-child(even){margin-top:0}.zenin-gallery{grid-template-columns:1fr}.zenin-gallery-image.zenin-wide{grid-column:auto}.zenin-process-grid{grid-template-columns:1fr}.zenin-meta{grid-template-columns:1fr}.zenin-brand .elementor-heading-title{font-size:11px!important}.zenin-hero .zenin-text-button{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Zenin 2026 native contact form: avoids heavy/fragile form widgets during first install. */
.zenin-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}.zenin-contact-form .zenin-field{display:flex;flex-direction:column;gap:6px}.zenin-contact-form .zenin-field-full{grid-column:1/-1}.zenin-contact-form label{color:var(--zenin-secondary);font-size:11px}.zenin-contact-form input,.zenin-contact-form select,.zenin-contact-form textarea{width:100%;min-width:0;color:var(--zenin-fg);background:transparent;border:0;border-bottom:1px solid #fde3a75c;border-radius:0;padding:12px 0 14px;font:inherit;outline-offset:3px}.zenin-contact-form textarea{resize:vertical;min-height:120px}.zenin-contact-form button{border:0;border-radius:0;background:var(--zenin-accent);color:var(--zenin-fg);padding:14px 22px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.zenin-contact-form button:hover{background:var(--zenin-secondary);color:var(--zenin-bg)}.zenin-form-status{grid-column:1/-1;border:1px solid var(--zenin-border);padding:12px 14px;font-size:12px}.zenin-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}@media(max-width:767px){.zenin-contact-form{grid-template-columns:1fr}.zenin-contact-form .zenin-field-full{grid-column:auto}}

.zenin-brand .elementor-heading-title>span,.zenin-footer-brand .elementor-heading-title>span{color:var(--zenin-accent)}
