.zms-rework{--zms-ink:#14241e;--zms-forest:#0a1914;--zms-paper:#eceae4;--zms-linen:#f4f3ef;--zms-sage:#dce3dc;--zms-muted:#777d76;--zms-hairline:#c7cbc5;--zms-head:"Cormorant Garamond","Times New Roman",Georgia,serif;--zms-body:"Manrope",Arial,sans-serif}
.zms-rework *,.zms-rework *::before,.zms-rework *::after{box-sizing:border-box}
body.zms-album-open{overflow:hidden}
.zms-rework a{color:inherit}
.zms-rework button{font:inherit}
.zms-rework{font-family:var(--zms-body);color:var(--zms-ink);--zms-gutter:clamp(18px,4vw,72px)}
.zms-rework .zms-width{width:min(1360px,calc(100% - 2*var(--zms-gutter)));margin:auto}
.zms-rework .zms-portfolio{background:linear-gradient(145deg,#eeece6 0%,#e6e7df 75%,#efeee8 100%);padding:clamp(64px,9vw,128px) 0 clamp(75px,10vw,150px);scroll-margin-top:5rem}
.zms-rework .zms-portfolio__intro{display:flex;align-items:end;justify-content:space-between;gap:44px;margin-bottom:clamp(30px,4vw,55px)}
.zms-rework .zms-portfolio__intro-main{flex:1}
.zms-rework .zms-overline{display:inline-flex;align-items:center;gap:18px;font-family:var(--zms-body);font-weight:500;font-size:11px;letter-spacing:.29em;line-height:1.5;text-transform:uppercase}
.zms-rework .zms-rule{width:78px;height:1px;background:#a7afa4;display:inline-block}
.zms-rework .zms-portfolio h2,.zms-rework .zms-section-top h2,.zms-rework .zms-about h2,.zms-rework .zms-contacts h2{font:400 clamp(56px,7.1vw,108px)/.88 var(--zms-head);letter-spacing:.012em;margin:22px 0 0}
.zms-rework .zms-portfolio__intro>p{flex:0 0 200px;font:400 clamp(19px,2.05vw,26px)/1.12 var(--zms-head);color:#6f746b;margin:0 0 8px}
.zms-rework .zms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(25px,3.2vw,44px) clamp(14px,2vw,32px)}
.zms-rework .zms-card{text-decoration:none;min-width:0;display:block}
.zms-rework .zms-card__photo{position:relative;display:block;overflow:hidden;width:100%;aspect-ratio:1.67;background:#283b33;border-radius:3px}
.zms-rework .zms-card__photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.3,1);filter:saturate(.9)}
.zms-rework .zms-card:hover .zms-card__photo img,.zms-rework .zms-card:focus-visible .zms-card__photo img{transform:scale(1.055)}
.zms-rework .zms-card__gradient{position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(3,12,8,.7));pointer-events:none}
.zms-rework .zms-card__title{position:absolute;bottom:14px;left:clamp(14px,2.5vw,34px);z-index:2;font:400 clamp(30px,3.3vw,58px)/.95 var(--zms-head);color:#fff9ee;letter-spacing:.012em;text-shadow:0 2px 14px #0005}
.zms-rework .zms-card__arrow{position:absolute;right:clamp(12px,2.2vw,28px);bottom:12px;z-index:2;width:clamp(33px,3.8vw,49px);aspect-ratio:1;border:1px solid #fff9eeb0;border-radius:50%;display:grid;place-items:center;color:#fff9ee;font:400 25px var(--zms-head);transition:background .25s,color .25s}
.zms-rework .zms-card:hover .zms-card__arrow{background:#f9f5e9;color:#17261e}
.zms-rework .zms-card__under{display:flex;justify-content:space-between;gap:10px;color:#6b746b;font:500 10px/1.2 var(--zms-body);letter-spacing:.16em;text-transform:uppercase;margin-top:13px}
.zms-rework .zms-about{padding:clamp(75px,10vw,150px) 0;background:#dfe5de;scroll-margin-top:4rem}
.zms-rework .zms-about__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,140px)}
.zms-rework .zms-about__text{max-width:550px;align-self:end}
.zms-rework .zms-about__name{font:400 clamp(25px,2.6vw,39px)/1.08 var(--zms-head);letter-spacing:.012em}
.zms-rework .zms-about__text>p:not(.zms-about__name){font:400 clamp(15px,1.3vw,18px)/1.85 var(--zms-body);color:#374e43;margin:30px 0}
.zms-rework .zms-plainlink{font-size:12px;letter-spacing:.11em;text-decoration:none;border-bottom:1px solid #768b78;padding-bottom:10px;text-transform:uppercase}
.zms-rework .zms-services{padding:clamp(80px,10vw,142px) 0;background:#f2f1ec;scroll-margin-top:4rem}
.zms-rework .zms-section-top h2{margin-bottom:20px}
.zms-rework .zms-section-top>p{font:400 26px/1.2 var(--zms-head);color:#6a7369}
.zms-rework .zms-services__list{margin-top:65px;border-top:1px solid #bdc5bb}
.zms-rework .zms-service{border-bottom:1px solid #bdc5bb}
.zms-rework .zms-service>summary{cursor:pointer;display:grid;grid-template-columns:55px 1fr auto 34px;align-items:center;gap:28px;padding:24px 10px;list-style:none}
.zms-rework .zms-service>summary::-webkit-details-marker{display:none}
.zms-rework .zms-service__number{font-size:11px;letter-spacing:.17em;color:#879288}
.zms-rework .zms-service strong{font:400 clamp(27px,3vw,40px)/1 var(--zms-head)}
.zms-rework .zms-service__price{white-space:nowrap;font-size:12px}
.zms-rework .zms-service__plus{font-size:28px;font-weight:200;text-align:right}
.zms-rework .zms-service[open] .zms-service__plus{transform:rotate(45deg)}
.zms-rework .zms-service__body{max-width:760px;margin:0 0 28px 83px;color:#566456;font-size:14px;line-height:1.85}
.zms-rework .zms-service__body ul{display:grid;grid-template-columns:1fr 1fr;gap:4px 25px;padding-left:20px}
.zms-rework .zms-contacts{padding:clamp(85px,11vw,158px) 0 27px;background:#0c1b16;color:#e6e9df;scroll-margin-top:4rem}
.zms-rework .zms-contacts__grid{display:grid;grid-template-columns:1.5fr .5fr;gap:90px}
.zms-rework .zms-contacts h2{max-width:800px}
.zms-rework .zms-contacts p{color:#bbc5bb;max-width:530px;font-size:15px;line-height:1.75;margin:36px 0}
.zms-rework .zms-contact-btn{display:inline-flex;gap:40px;justify-content:space-between;align-items:center;border:1px solid #829889;border-radius:99px;padding:18px 30px;text-decoration:none;font-size:12px;letter-spacing:.09em;text-transform:uppercase;transition:background .3s,color .3s}
.zms-rework .zms-contact-btn:hover{background:#e2e9dc;color:#10231a}
.zms-rework .zms-contacts__links{display:flex;flex-direction:column;gap:25px;align-self:center}
.zms-rework .zms-contacts__links a{text-decoration:none;font:400 28px/1 var(--zms-head);border-bottom:1px solid #4b6255;padding:0 0 13px}
.zms-rework .zms-footer{border-top:1px solid #4b6255;margin-top:clamp(90px,12vw,160px)!important;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:10px;letter-spacing:.14em;color:#a5b0a4}
.zms-rework .zms-footer a{text-decoration:none}
.zms-rework .zms-loading{padding:100px 24px;text-align:center;min-height:300px;font-size:13px;color:#6b786c}
.zms-rework .zms-album{position:fixed;z-index:10000;inset:0;overflow-y:auto;background:var(--zms-linen);color:var(--zms-ink);overscroll-behavior:contain}
.zms-rework .zms-album__top{background:linear-gradient(115deg,rgba(5,18,12,.91),rgba(13,37,27,.76));color:#f5f4ee;padding:0 var(--zms-gutter) clamp(55px,7vw,110px)}
.zms-rework .zms-album__nav{max-width:1360px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:clamp(32px,5vw,70px) 0 50px}
.zms-rework .zms-album__back,.zms-rework .zms-album__end button{color:inherit;font-family:var(--zms-body);border:0;background:none;cursor:pointer;font-size:13px;letter-spacing:.08em;padding:8px 0}
.zms-rework .zms-album__back:hover,.zms-rework .zms-album__end button:hover{text-decoration:underline;text-underline-offset:6px}
.zms-rework .zms-album__count{font-size:11px;letter-spacing:.24em;color:#d0d5c9}
.zms-rework .zms-album__heading{max-width:1360px;margin:0 auto}
.zms-rework .zms-album h1{font:400 clamp(78px,11vw,160px)/.85 var(--zms-head);margin:20px 0 22px;letter-spacing:.015em}
.zms-rework .zms-album__heading>p{font:400 clamp(24px,2.6vw,33px)/1.13 var(--zms-head);color:#d5ddd0;margin:0;max-width:680px}
.zms-rework .zms-album__body{max-width:1450px;margin:0 auto;padding:var(--zms-gutter)}
.zms-rework .zms-album__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:dense;gap:clamp(10px,2vw,25px)}
.zms-rework .zms-album__photo{padding:0;border:0;cursor:zoom-in;background:#dfe3dd;display:block;min-height:180px;overflow:hidden;border-radius:3px;aspect-ratio:1.18}
.zms-rework .zms-album__photo:nth-child(4n+1){grid-row:span 2;aspect-ratio:auto}
.zms-rework .zms-album__photo:nth-child(4n+3){aspect-ratio:.94}
.zms-rework .zms-album__photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s}
.zms-rework .zms-album__photo:hover img{transform:scale(1.045)}
.zms-rework .zms-album__empty{grid-column:1/-1;color:#728072}
.zms-rework .zms-album__end{border-top:1px solid #c9d0c8;margin-top:70px;padding:30px 0 60px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#758076;font-size:10px;letter-spacing:.13em}
.zms-rework .zms-album__end button{color:#263c31}
.zms-rework .zms-lightbox{position:fixed;z-index:10020;inset:0;background:#060e0bbf;backdrop-filter:blur(18px);display:flex;align-items:center;justify-content:space-between;gap:2vw;padding:clamp(20px,4vw,65px);color:white}
.zms-rework .zms-lightbox figure{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;max-width:calc(100% - 140px);height:100%;margin:0}
.zms-rework .zms-lightbox img{display:block;max-height:calc(100% - 46px);max-width:100%;object-fit:contain;border-radius:2px;box-shadow:0 20px 70px #0007}
.zms-rework .zms-lightbox figcaption{margin-top:14px;font-size:11px;letter-spacing:.2em}
.zms-rework .zms-lightbox button{background:none;border:1px solid #ffffff7c;color:white;cursor:pointer;border-radius:50%;width:44px;height:44px;flex:0 0 44px}
.zms-rework .zms-lightbox__close{position:absolute;top:20px;right:24px;font-size:29px;z-index:4}
.zms-rework .zms-lightbox__nav{font-size:24px}
@media(max-width:780px){.zms-rework .zms-portfolio__intro{display:block}
.zms-rework .zms-portfolio__intro>p{margin:19px 0 0;max-width:270px}
.zms-rework .zms-portfolio h2{font-size:clamp(51px,10vw,79px)}
.zms-rework .zms-card__under>span:last-child{display:none}
.zms-rework .zms-about__grid,.zms-rework .zms-contacts__grid{grid-template-columns:1fr;gap:38px}
.zms-rework .zms-contacts__links{align-self:auto;max-width:420px}
.zms-rework .zms-contacts h2,.zms-rework .zms-about h2{font-size:clamp(60px,10vw,90px)}
.zms-rework .zms-service>summary{grid-template-columns:32px 1fr 22px;gap:13px}
.zms-rework .zms-service__price{grid-column:2;grid-row:2;justify-self:start}
.zms-rework .zms-service__plus{grid-column:3;grid-row:1}
.zms-rework .zms-service__body{margin-left:45px}
.zms-rework .zms-footer{flex-wrap:wrap}
.zms-rework .zms-album__nav{padding:32px 0 47px}}
@media(max-width:480px){.zms-rework{--zms-gutter:18px}
.zms-rework .zms-portfolio{padding-top:70px!important;padding-bottom:70px!important}
.zms-rework .zms-portfolio h2{font-size:clamp(47px,11.4vw,67px);line-height:.92}
.zms-rework .zms-portfolio__intro>p{font-size:21px}
.zms-rework .zms-grid{gap:20px 12px}
.zms-rework .zms-card__photo{aspect-ratio:.93}
.zms-rework .zms-card__photo img{object-position:center}
.zms-rework .zms-card__title{font-size:clamp(26px,7.5vw,37px);left:12px;bottom:16px}
.zms-rework .zms-card__arrow{width:27px;right:9px;bottom:12px;font-size:18px}
.zms-rework .zms-card__under{font-size:8px;margin-top:8px}
.zms-rework .zms-card__under span:first-child{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zms-rework .zms-overline{font-size:9px;letter-spacing:.25em}
.zms-rework .zms-rule{width:46px}
.zms-rework .zms-about,.zms-rework .zms-services{padding:77px 0}
.zms-rework .zms-about h2,.zms-rework .zms-section-top h2,.zms-rework .zms-contacts h2{font-size:clamp(53px,12vw,68px)}
.zms-rework .zms-about__name{font-size:28px}
.zms-rework .zms-about__text>p:not(.zms-about__name){font-size:13px}
.zms-rework .zms-services__list{margin-top:40px}
.zms-rework .zms-service strong{font-size:27px}
.zms-rework .zms-service__body ul{grid-template-columns:1fr}
.zms-rework .zms-contacts p{font-size:13px}
.zms-rework .zms-contacts__links a{font-size:25px}
.zms-rework .zms-footer{font-size:9px}
.zms-rework .zms-album__top{padding-bottom:58px}
.zms-rework .zms-album h1{font-size:85px}
.zms-rework .zms-album__heading>p{font-size:25px}
.zms-rework .zms-album__count{font-size:9px}
.zms-rework .zms-album__body{padding-top:18px}
.zms-rework .zms-album__grid{gap:10px}
.zms-rework .zms-album__photo{min-height:112px;aspect-ratio:1}
.zms-rework .zms-album__end{margin-top:40px}
.zms-rework .zms-lightbox{gap:8px;padding:16px}
.zms-rework .zms-lightbox figure{max-width:calc(100% - 92px)}
.zms-rework .zms-lightbox button{width:36px;height:36px;flex-basis:36px}
.zms-rework .zms-lightbox__close{top:12px;right:12px}}
@media(prefers-reduced-motion:reduce){.zms-rework *{transition:none!important;animation:none!important}}

/* STRICT INTEGRATION ISOLATION: never style the original header, hero, logo or aperture. */
.zms-rework,
.zms-rework * { font-style: normal !important; }
.zms-rework { font-family: var(--zms-body); font-kerning: normal; letter-spacing: .012em; }
.zms-rework .zms-portfolio h2,
.zms-rework .zms-section-top h2,
.zms-rework .zms-about h2,
.zms-rework .zms-contacts h2 { font-style:normal!important; letter-spacing:.015em; line-height:1.03; }
.zms-rework .zms-album h1 { letter-spacing:.022em; line-height:1; }
.zms-rework .zms-card__title { letter-spacing:.02em; line-height:1.03; }
.zms-rework .zms-overline { letter-spacing:.24em; }
.zms-rework .zms-card__under { letter-spacing:.18em; }
.zms-rework .zms-album__heading>p { line-height:1.3; }
.zms-rework .zms-album__grid { grid-auto-flow:row; align-items:start; }
.zms-rework .zms-album__photo,
.zms-rework .zms-album__photo:nth-child(4n+1),
.zms-rework .zms-album__photo:nth-child(4n+3) { grid-row:auto; aspect-ratio:auto; min-height:0; }
.zms-rework .zms-album__photo img { width:100%; height:auto; object-fit:contain; }
@media (max-width:480px) { .zms-rework .zms-album__grid { grid-template-columns:1fr; gap:16px; } }

.zms-rework .zms-about__portrait { display:block; width:min(100%,330px); height:auto; max-height:none; object-fit:contain; margin:0 0 28px; border-radius:2px; }

/* Preserve the original hero; keep its description on a lighter transition. */
.intro-band{background:#e5e9e2;border-color:#c9d1c5}
.intro-band .short-about{color:#344a3e}
.intro-band-detail{color:#788778}
.zms-rework :focus-visible{outline:2px solid #74907b;outline-offset:5px}
.zms-rework .zms-album__top{background-position:center;background-size:cover}
.zms-rework .zms-album h1{overflow-wrap:anywhere}
.zms-rework .zms-card__title{max-width:calc(100% - 72px);overflow-wrap:anywhere}
@media(max-width:480px){.zms-rework .zms-album h1{font-size:clamp(46px,16vw,85px)}}

.zms-rework dialog.zms-album,.zms-rework dialog.zms-lightbox{margin:0;padding:0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none}
.zms-rework dialog.zms-album{overflow-y:auto}
.zms-rework dialog.zms-lightbox{padding:clamp(20px,4vw,65px)}
.zms-rework dialog::backdrop{background:#060e0b99}
@media(max-width:480px){.zms-rework dialog.zms-lightbox{padding:16px}}

.zms-rework .zms-album:not([open]),.zms-rework .zms-lightbox:not([open]){display:none}
.zms-rework .zms-portfolio{padding-top:clamp(36px,5vw,72px)!important}
