/* Photographs retain their own aspect ratio in every portfolio gallery. */
.portfolio-grid{--columns:3;--gap:10px;display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:var(--gap);position:relative;width:100%;isolation:isolate}
.portfolio-grid--category{max-width:1500px;margin-left:auto;margin-right:auto;background:#090806}
.portfolio-grid--featured{--columns:2;--gap:10px;background:#090806;max-width:1500px;margin-left:auto;margin-right:auto}
.portfolio-grid.has-layout{display:block}
.portfolio-item{display:block;min-width:0;margin:0;padding:0;border:0;background:transparent;line-height:0;overflow:hidden;cursor:zoom-in;color:inherit;text-decoration:none}
.portfolio-grid.has-layout>.portfolio-item{position:absolute;top:0;left:0}
.portfolio-item img{display:block;width:100%;height:auto!important;max-width:100%;position:static!important;object-fit:contain!important;image-orientation:from-image;transition:filter .25s}
.portfolio-item:hover img{filter:brightness(.92)}
.portfolio-item:focus-visible{outline:3px solid #d1bc91;outline-offset:-3px;z-index:1}
.portfolio-empty{grid-column:1/-1;padding:100px 24px;text-align:center;color:#aaa;font:15px Arial,sans-serif}
.portfolio-visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.portfolio-skip{position:fixed;top:10px;left:10px;transform:translateY(-200%);background:#fff;color:#111;padding:12px;z-index:110;text-decoration:none}.portfolio-skip:focus{transform:none}
body.featured-page{margin:0;background:#090806;color:#f3f1ed;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.featured-page *{box-sizing:border-box}
.featured-header{height:122px;background:#090806;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:18px 4.1%;position:relative;z-index:20}
.featured-brand{display:block;flex:none;width:228px;line-height:0}.featured-brand img{display:block;width:100%;height:auto;filter:invert(1)}
.featured-navigation{display:flex;justify-content:flex-end;align-items:center;gap:28px}
.featured-navigation a{color:#f3f1ed;text-decoration:none;font-size:12px;letter-spacing:.15px;white-space:nowrap;transition:opacity .2s}
.featured-navigation a:hover{opacity:.65}.featured-navigation .featured-contact{padding:16px 21px;border:1.5px solid #eee;border-radius:30px;margin-left:6px}
.featured-menu-toggle{display:none;background:none;border:0;color:#fff;padding:10px;cursor:pointer}
.featured-menu-toggle span{display:block;width:25px;height:1px;background:currentColor;margin:7px 0;transition:transform .2s}
.featured-footer{border-top:1px solid #262626;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding:58px 4.1% 45px;font-size:12px;line-height:1.8}
.featured-footer a{color:inherit;text-decoration:none}.featured-footer a:hover{color:#baa783}.featured-footer p{color:#888;margin:5px 0 0}.featured-footer-name{font-size:16px}.featured-footer-contact,.featured-footer-socials{display:flex;flex-direction:column;gap:8px}.featured-footer-contact{align-items:center}.featured-footer-socials{align-items:flex-end}.featured-back{margin-top:16px;color:#999!important}
.portfolio-lightbox{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;padding:0;border:0;margin:0;background:#080808fa;color:#eee;overflow:hidden;z-index:1000}
.portfolio-lightbox::backdrop{background:#080808}
.portfolio-lightbox-stage{position:absolute;inset:60px 70px;display:flex;align-items:center;justify-content:center}
.portfolio-lightbox-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;image-orientation:from-image}
.portfolio-lightbox button{position:absolute;z-index:2;background:none;border:0;color:#fff;cursor:pointer;font:300 32px Arial,sans-serif;padding:10px;line-height:1;border-radius:3px}
.portfolio-lightbox button:hover{background:#ffffff16}.portfolio-lightbox button:focus-visible{outline:2px solid #ddd}
.portfolio-lightbox-close{top:15px;right:22px}.portfolio-lightbox-prev{top:calc(50% - 25px);left:15px}.portfolio-lightbox-next{top:calc(50% - 25px);right:15px}
.portfolio-lightbox-count{position:absolute;top:27px;left:26px;color:#aaa;font:12px Arial,sans-serif;letter-spacing:1.5px}.portfolio-lightbox-error{font:14px Arial,sans-serif;color:#ccc;position:absolute;bottom:20px;left:0;width:100%;text-align:center}
body.portfolio-viewing{overflow:hidden}
@media(min-width:1600px){.featured-navigation{gap:36px}.featured-navigation a{font-size:13px}.featured-header{height:132px}.featured-brand{width:245px}}
@media(max-width:1100px){.featured-header{padding:20px 3%;gap:20px}.featured-brand{width:200px}.featured-navigation{gap:18px}.featured-navigation a{font-size:11px}.featured-navigation .featured-contact{padding:14px 17px;margin-left:0}}
@media(max-width:959px){.portfolio-grid--category{--columns:2;--gap:10px}.featured-header{height:100px;flex-wrap:wrap;gap:0;padding:18px 24px}.featured-brand{width:190px}.featured-menu-toggle{display:block}.featured-navigation{display:none}.featured-header.menu-open .featured-navigation{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;top:100%;left:0;width:100%;padding:8px 24px 24px;background:#090806;border-top:1px solid #262626}.featured-navigation a{padding:14px 0;font-size:13px}.featured-navigation .featured-contact{align-self:flex-start;margin-top:14px}.featured-header.menu-open .featured-menu-toggle span:first-child{transform:translateY(4px) rotate(45deg)}.featured-header.menu-open .featured-menu-toggle span:last-child{transform:translateY(-4px) rotate(-45deg)}}
@media(max-width:639px){.portfolio-grid--category{--columns:1;--gap:10px}.portfolio-grid--featured{--columns:2}.featured-header{height:92px;padding:18px 20px}.featured-brand{width:178px}.featured-footer{grid-template-columns:1fr;padding:36px 24px;gap:25px}.featured-footer-contact,.featured-footer-socials{align-items:flex-start}.featured-back{margin-top:8px}.portfolio-lightbox-stage{inset:65px 12px 75px}.portfolio-lightbox-prev{top:auto;bottom:10px;left:calc(50% - 80px)}.portfolio-lightbox-next{top:auto;bottom:10px;right:calc(50% - 80px)}.portfolio-lightbox-close{right:10px}}
@media(prefers-reduced-motion:reduce){.portfolio-item img,.featured-menu-toggle span{transition:none}}

.portfolio-grid--featured .portfolio-item{cursor:zoom-in}

.contact-modern{max-width:1500px;margin:0 auto;min-height:calc(100svh - 280px);padding:70px 4.1% 85px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(40px,6vw,110px);align-items:center}.contact-modern-photo{min-width:0;line-height:0}.contact-modern-photo img{display:block;width:100%;height:auto;max-height:660px;object-fit:contain}.contact-modern-info{min-width:0}.contact-modern-eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:2.8px;color:#a8a69e;margin:0 0 35px}.contact-modern-phone{display:block;color:#f3f1ed;text-decoration:none;white-space:nowrap;font-size:clamp(24px,2.8vw,43px);letter-spacing:-1px;line-height:1.25;margin-bottom:32px}.contact-modern-telegram{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 28px;border-radius:5px;background:#ddc8ad;color:#17130f;text-decoration:none;font-size:16px;transition:background .2s}.contact-modern-telegram:hover{background:#ead9c2}.contact-modern-telegram span{font-size:25px}.contact-modern-links{display:flex;flex-wrap:wrap;gap:24px 30px;margin-top:32px}.contact-modern-links a{font-size:15px;color:#f3f1ed;text-decoration:none;border-bottom:1px solid #777267;padding-bottom:5px;overflow-wrap:anywhere}.contact-modern-links a:hover{color:#ddc8ad}.contact-modern-note{font-size:15px;line-height:1.8;color:#a8a69e;max-width:380px;margin:36px 0 0}.contact-modern-page .featured-footer{border-top:1px solid #38342b}@media(max-width:900px){.contact-modern{gap:35px;padding:45px 24px 60px}.contact-modern-phone{font-size:26px;letter-spacing:-.6px}.contact-modern-telegram{padding:20px;font-size:14px}}@media(max-width:680px){.contact-modern{grid-template-columns:minmax(0,1fr);padding:20px 20px 50px;gap:35px;min-height:0}.contact-modern-photo{max-width:480px;width:100%;margin:auto}.contact-modern-photo img{max-height:460px}.contact-modern-info{max-width:480px;width:100%;margin:auto}.contact-modern-eyebrow{margin-bottom:22px}.contact-modern-phone{font-size:clamp(23px,6.8vw,34px);margin-bottom:24px}.contact-modern-links{gap:20px 24px;margin-top:26px}.contact-modern-note{margin-top:26px}}
