:root{--bg:#161616;--surface:#1e1e1e;--text:#f0eeec;--text-dim:#a8a49f;--border:#2c2c2c;--white:#fff;--font-display:"Cormorant Garamond",Georgia,serif;--font-body:"Inter",system-ui,-apple-system,sans-serif;--container:1400px;--gutter:24px;--header-h:64px;--ease:cubic-bezier(.22,.61,.36,1)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
ul{list-style:none}
:focus-visible{outline:2px solid var(--white);outline-offset:3px}main a{text-decoration:underline;text-underline-offset:3px}
main nav a,main .cover,main .luce-grid a,main .site-logo a{text-decoration:none}@font-face{font-family:"Inter";font-style:normal;font-weight:400 600;src:url("../themes/luce/assets/fonts/inter-var.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500 600;src:url("../themes/luce/assets/fonts/cormorant-var.woff2") format("woff2");font-display:swap}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;src:url("../themes/luce/assets/fonts/cormorant-500i.woff2") format("woff2");font-display:swap}.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.site-header{position:fixed;inset:0 0 auto 0;z-index:100;height:var(--header-h);display:flex;align-items:center;background:linear-gradient(to bottom,rgba(22,22,22,.92),rgba(22,22,22,0))}
.site-header.is-solid{background:rgba(22,22,22,.96);border-bottom:1px solid var(--border)}
.site-header .container{display:flex;align-items:center;gap:24px;width:100%}
.site-logo{font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:.12em;text-transform:uppercase}
.site-logo a:hover{color:var(--white)}.main-nav{margin-left:auto}
@media (min-width:1025px){.main-nav>ul{display:flex;gap:28px}.main-nav li{position:relative}.main-nav a{font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:8px 0;display:inline-block;color:var(--text-dim);transition:color .2s}.main-nav a:hover,.main-nav li.is-active>a{color:var(--white)}.main-nav li.has-children>a::after{content:"";display:inline-block;width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:7px}.main-nav ul.sub-menu{position:absolute;top:100%;left:-16px;min-width:260px;padding:12px 16px 16px;background:var(--surface);border:1px solid var(--border);display:none;flex-direction:column;gap:2px}.main-nav li:hover>ul.sub-menu,.main-nav li:focus-within>ul.sub-menu{display:flex}.menu-toggle{display:none}}@media (max-width:1024px){.main-nav{position:fixed;inset:0;z-index:200;background:rgba(16,16,16,.98);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .25s var(--ease),visibility .25s;overflow-y:auto;padding:80px var(--gutter) 48px}.main-nav.is-open{opacity:1;visibility:visible}.main-nav>ul{width:100%;max-width:480px}.main-nav li a{display:flex;align-items:center;justify-content:space-between;min-height:48px;font-size:19px;border-bottom:1px solid var(--border)}.main-nav li.has-children>a::after{content:"+";font-size:22px;color:var(--text-dim)}.main-nav li.is-expanded>a::after{content:"–"}.main-nav ul.sub-menu{display:none;padding-left:16px}.main-nav li.is-expanded>ul.sub-menu{display:block}.main-nav ul.sub-menu a{font-size:15px;min-height:44px;color:var(--text-dim)}.main-nav li.is-active>a{color:var(--white)}}.menu-toggle{margin-left:auto;width:48px;height:48px;position:relative;z-index:210;display:inline-flex;align-items:center;justify-content:center}
.menu-toggle span,.menu-toggle span::before,.menu-toggle span::after{content:"";position:absolute;left:12px;width:24px;height:2px;background:var(--text);transition:transform .25s var(--ease),opacity .2s}
.menu-toggle span::before{left:0;transform:translateY(-7px)}
.menu-toggle span::after{left:0;transform:translateY(7px)}
body.menu-open .menu-toggle span{transform:rotate(45deg)}
body.menu-open .menu-toggle span::before{opacity:0}
body.menu-open .menu-toggle span::after{transform:translateY(0) rotate(-90deg)}.lang-switch{display:flex;gap:4px;font-size:12px;letter-spacing:.06em}
.lang-switch a{padding:6px 8px;color:var(--text-dim);min-height:44px;display:inline-flex;align-items:center}
.lang-switch a.is-active{color:var(--white);border-bottom:1px solid var(--white)}.hero{position:relative;height:100svh;min-height:560px;display:grid;place-items:center;overflow:hidden}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(16,16,16,.25),rgba(16,16,16,.65))}
.hero-title{position:relative;z-index:2;font-family:var(--font-display);font-weight:500;font-size:clamp(44px,10vw,110px);letter-spacing:.14em;text-transform:uppercase;color:var(--white);text-align:center}
.hero-scroll{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:2;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-dim);text-shadow:0 1px 2px rgba(0,0,0,.8);display:flex;flex-direction:column;align-items:center;gap:10px}
.hero-scroll::after{content:"";width:1px;height:36px;background:var(--text-dim);animation:heroPulse 2s var(--ease) infinite}
@keyframes heroPulse{0%,100%{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.section{padding:clamp(48px,8vw,96px) 0}
.section-title{font-family:var(--font-display);font-weight:600;font-size:clamp(30px,4.5vw,48px);margin-bottom:32px}.covers{display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}
@media (min-width:769px){.covers{grid-template-columns:repeat(3,1fr);gap:28px}}
@media (min-width:1025px){.covers{grid-template-columns:repeat(4,1fr)}}
.cover{position:relative;display:block;overflow:hidden;background:var(--surface)}
.cover img{width:100%;aspect-ratio:4 / 5;object-fit:cover;transition:transform .6s var(--ease)}
@media (hover:hover){.cover:hover img{transform:scale(1.04)}}
.cover-name{position:absolute;inset:auto 0 0 0;padding:16px;background:linear-gradient(to top,rgba(16,16,16,.85),transparent);font-family:var(--font-display);font-size:19px;font-weight:600;color:var(--white)}
.cover-cat{position:absolute;top:14px;left:14px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--white);text-shadow:0 1px 2px rgba(0,0,0,.8);background:rgba(16,16,16,.6);padding:5px 9px}
.cover--text{display:flex;flex-direction:column;justify-content:flex-end;min-height:180px;padding:16px;border:1px solid var(--border)}
.cover--text .cover-cat{position:static;background:none;padding:0;margin-bottom:8px}
.cover--text .cover-name{position:static;background:none;padding:0}.gallery-header{padding:calc(var(--header-h) + 48px) 0 36px}
.breadcrumb{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:18px;display:flex;flex-wrap:wrap;gap:8px}
.breadcrumb a:hover{color:var(--white)}
.breadcrumb .sep{opacity:.4}
.gallery-title{font-family:var(--font-display);font-weight:600;font-size:clamp(36px,7vw,72px);line-height:1.05}
.gallery-desc{max-width:65ch;color:var(--text-dim);margin-top:14px;font-size:17px}
.gallery-count{margin-top:12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.luce-grid{display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}
@media (min-width:769px){.luce-grid{grid-template-columns:repeat(3,1fr);gap:20px}}
@media (min-width:1025px){.luce-grid{grid-template-columns:repeat(4,1fr)}}
.luce-grid a{display:block;overflow:hidden;background:var(--surface)}
.luce-grid img{width:100%;aspect-ratio:4 / 5;object-fit:cover;transition:transform .5s var(--ease)}
@media (hover:hover){.luce-grid a:hover img{transform:scale(1.05)}}.gallery-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:64px}
.gallery-nav a{border:1px solid var(--border);padding:22px 20px;display:block}
.gallery-nav a:hover{border-color:var(--text-dim)}
.gallery-nav .dir{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);display:block;margin-bottom:6px}
.gallery-nav .name{font-family:var(--font-display);font-size:22px;font-weight:600}
.gallery-nav a.next{text-align:right}.about-wrap{padding:calc(var(--header-h) + 64px) 0 96px;max-width:65ch}
.about-wrap h1{font-family:var(--font-display);font-weight:600;font-size:clamp(36px,6vw,60px);margin-bottom:24px}
.about-wrap p{font-size:18px;color:var(--text-dim)}
.about-mail{display:inline-block;margin-top:28px;font-family:var(--font-display);font-size:24px;font-weight:600;border-bottom:1px solid var(--text-dim)}
.about-mail:hover{color:var(--white);border-color:var(--white)}.contact-wrap{padding:calc(var(--header-h) + 64px) 0 96px;display:grid;gap:56px}
@media (min-width:769px){.contact-wrap{grid-template-columns:1.2fr .8fr}}
#contact-form .form-group{margin-bottom:22px}
#contact-form label{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}
#contact-form .form-control{width:100%;background:var(--surface);border:1px solid var(--border);color:var(--text);padding:14px 16px;font:inherit;min-height:52px;transition:border-color .2s}
#contact-form textarea.form-control{min-height:140px;resize:vertical}
#contact-form .form-control:focus{outline:none;border-color:var(--white)}
#contact-form button{background:var(--white);color:var(--bg);font-weight:600;padding:16px 36px;letter-spacing:.06em;min-height:52px}
#contact-form button:hover{background:var(--text)}
.confirm-contact-container:empty{display:none}
.confirm-contact-container>*{border:1px solid var(--border);padding:18px;margin-bottom:22px}
.contact-aside .section-title{font-size:28px}
.contact-aside a{border-bottom:1px solid var(--border)}
.contact-aside a:hover{border-color:var(--white)}
body.ajax-loading .contact-wrap{opacity:.6;pointer-events:none}.site-footer{border-top:1px solid var(--border);padding:40px 0;margin-top:96px}
.site-footer .container{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center;justify-content:space-between;font-size:13px;color:var(--text-dim)}
.site-footer nav ul{display:flex;flex-wrap:wrap;gap:18px}
.site-footer a:hover{color:var(--white)}.pswp{--pswp-bg:#101010}
.pswp .pswp__button{width:56px;height:56px}
@media (min-width:1025px){.pswp .pswp__button{width:48px;height:48px}}
.pswp__counter{color:#c8c4c0;font-size:13px;letter-spacing:.1em}
.pswp__caption__center{color:#c8c4c0;font-size:14px}.skip-link{position:absolute;left:-9999px;top:8px;z-index:300;background:var(--bg);color:var(--white);padding:10px 16px}
.skip-link:focus{left:8px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-scroll::after{animation:none}*,*::before,*::after{transition-duration:.01ms !important;animation-duration:.01ms !important}}
/*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */.pswp{--pswp-bg:#000;--pswp-placeholder-bg:#222;--pswp-root-z-index:100000;--pswp-preloader-color:rgba(79,79,79,0.4);--pswp-preloader-color-secondary:rgba(255,255,255,0.9);--pswp-icon-color:#fff;--pswp-icon-color-secondary:#4f4f4f;--pswp-icon-stroke-color:#4f4f4f;--pswp-icon-stroke-width:2px;--pswp-error-text-color:var(--pswp-icon-color)}.pswp{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--pswp-root-z-index);display:none;touch-action:none;outline:0;opacity:0.003;contain:layout style size;-webkit-tap-highlight-color:rgba(0,0,0,0)}.pswp:focus{outline:0}.pswp *{box-sizing:border-box}.pswp img{max-width:none}.pswp--open{display:block}.pswp,.pswp__bg{transform:translateZ(0);will-change:opacity}.pswp__bg{opacity:0.005;background:var(--pswp-bg)}.pswp,.pswp__scroll-wrap{overflow:hidden}.pswp__scroll-wrap,.pswp__bg,.pswp__container,.pswp__item,.pswp__content,.pswp__img,.pswp__zoom-wrap{position:absolute;top:0;left:0;width:100%;height:100%}.pswp__img,.pswp__zoom-wrap{width:auto;height:auto}.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img{cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,.pswp__img{cursor:-webkit-zoom-out;cursor:-moz-zoom-out;cursor:zoom-out}.pswp__container,.pswp__img,.pswp__button,.pswp__counter{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pswp__item{z-index:1;overflow:hidden}.pswp__hidden{display:none !important}.pswp__content{pointer-events:none}.pswp__content>*{pointer-events:auto}.pswp__error-msg-container{display:grid}.pswp__error-msg{margin:auto;font-size:1em;line-height:1;color:var(--pswp-error-text-color)}.pswp .pswp__hide-on-close{opacity:0.005;will-change:opacity;transition:opacity var(--pswp-transition-duration) cubic-bezier(0.4,0,0.22,1);z-index:10;pointer-events:none}.pswp--ui-visible .pswp__hide-on-close{opacity:1;pointer-events:auto}.pswp__button{position:relative;display:block;width:50px;height:60px;padding:0;margin:0;overflow:hidden;cursor:pointer;background:none;border:0;box-shadow:none;opacity:0.85;-webkit-appearance:none;-webkit-touch-callout:none}.pswp__button:hover,.pswp__button:active,.pswp__button:focus{transition:none;padding:0;background:none;border:0;box-shadow:none;opacity:1}.pswp__button:disabled{opacity:0.3;cursor:auto}.pswp__icn{fill:var(--pswp-icon-color);color:var(--pswp-icon-color-secondary)}.pswp__icn{position:absolute;top:14px;left:9px;width:32px;height:32px;overflow:hidden;pointer-events:none}.pswp__icn-shadow{stroke:var(--pswp-icon-stroke-color);stroke-width:var(--pswp-icon-stroke-width);fill:none}.pswp__icn:focus{outline:0}div.pswp__img--placeholder,.pswp__img--with-bg{background:var(--pswp-placeholder-bg)}.pswp__top-bar{position:absolute;left:0;top:0;width:100%;height:60px;display:flex;flex-direction:row;justify-content:flex-end;z-index:10;pointer-events:none !important}.pswp__top-bar>*{pointer-events:auto;will-change:opacity}.pswp__button--close{margin-right:6px}.pswp__button--arrow{position:absolute;top:0;width:75px;height:100px;top:50%;margin-top:-50px}.pswp__button--arrow:disabled{display:none;cursor:default}.pswp__button--arrow .pswp__icn{top:50%;margin-top:-30px;width:60px;height:60px;background:none;border-radius:0}.pswp--one-slide .pswp__button--arrow{display:none}.pswp--touch .pswp__button--arrow{visibility:hidden}.pswp--has_mouse .pswp__button--arrow{visibility:visible}.pswp__button--arrow--prev{right:auto;left:0px}.pswp__button--arrow--next{right:0px}.pswp__button--arrow--next .pswp__icn{left:auto;right:14px;transform:scale(-1,1)}.pswp__button--zoom{display:none}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__zoom-icn-bar-v{display:none}.pswp__preloader{position:relative;overflow:hidden;width:50px;height:60px;margin-right:auto}.pswp__preloader .pswp__icn{opacity:0;transition:opacity 0.2s linear;animation:pswp-clockwise 600ms linear infinite}.pswp__preloader--active .pswp__icn{opacity:0.85}@keyframes pswp-clockwise{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.pswp__counter{height:30px;margin-top:15px;margin-inline-start:20px;font-size:14px;line-height:30px;color:var(--pswp-icon-color);text-shadow:1px 1px 3px var(--pswp-icon-color-secondary);opacity:0.85}.pswp--one-slide .pswp__counter{display:none}