/*
Theme Name: Giulio Alesse — Art Gallery
Version: 1.7.1
Description: Minimal editorial gallery with extensive Customizer controls.
*/
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--body-color);font-family:var(--body-font);font-size:var(--body-size);font-weight:400;line-height:1.35}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.site-header{position:fixed;transition:transform .45s cubic-bezier(.22,.61,.36,1),opacity .3s ease;will-change:transform;z-index:50;top:var(--header-y);left:var(--header-x);width:calc(100% - (var(--header-x) * 2));padding:var(--header-pad) var(--pad);display:flex;justify-content:space-between;align-items:center;mix-blend-mode:multiply}.site-header.is-hidden{transform:translateY(-140%);opacity:0;pointer-events:none}.site-brand{font-family:var(--body-font);font-size:var(--nav-size);letter-spacing:var(--ga-brand-tracking,.08em);text-transform:var(--ga-brand-case,uppercase)}.site-brand,.site-nav a,.menu-toggle{color:var(--nav-color)}.site-brand img{width:var(--logo-width);height:auto}.site-nav{transform:translate(var(--menu-x,0),var(--menu-y,0))}.site-nav ul{display:flex;gap:var(--nav-gap);margin:0;padding:0;list-style:none}.site-nav a{font-family:var(--body-font);font-size:var(--nav-size);letter-spacing:.08em;text-transform:uppercase}.menu-toggle{display:none;border:0;background:none;color:inherit;font:inherit;font-size:var(--nav-size);letter-spacing:.08em;text-transform:uppercase;padding:0}
.gallery-home{padding-top:calc(var(--header-pad) + 15px)}.hero-clean{padding:0 var(--pad);height:var(--hero-height);display:flex;align-items:center}.hero-click{display:block;width:100%;height:100%;max-width:var(--hero-max-width);margin:0 auto}.hero-media{width:100%;height:100%;overflow:hidden;border-radius:var(--hero-radius)}.hero-image,.hero-video{width:100%;height:100%;object-fit:cover;object-position:var(--hero-pos-x) var(--hero-pos-y)}.hero-video iframe{width:100%;height:100%;border:0}.hero-placeholder{background:#ddd9d0}
.gallery-intro{padding:var(--intro-top) var(--pad) var(--intro-bottom);display:grid;grid-template-columns:1fr minmax(300px,720px) 1fr;gap:30px}.intro-kicker,.intro-meta,.work-heading,.about-label,.contact-label{font-family:var(--body-font);font-size:var(--nav-size);letter-spacing:.09em;text-transform:uppercase}.intro-meta{text-align:right;color:var(--muted)}.intro-copy{text-align:var(--intro-align)}.intro-copy p{color:var(--heading-color);font-family:var(--heading-font);font-size:var(--intro-size);line-height:1.02;letter-spacing:-.035em;margin:0;max-width:var(--intro-max)}
.gallery-work{padding:var(--work-top) var(--pad) var(--work-bottom)}.work-heading{border-top:1px solid rgba(17,17,15,.22);padding-top:12px;margin-bottom:45px}.work-layout{display:grid;grid-template-columns:minmax(320px,var(--work-list-width)) minmax(320px,var(--work-preview-width));gap:var(--work-gap);align-items:start}.work-list{display:flex;flex-direction:column}.work-item{color:var(--work-color);display:grid;grid-template-columns:48px 1fr 24px;align-items:baseline;padding:var(--service-gap) 0;border-bottom:1px solid rgba(17,17,15,.18);transition:opacity .25s ease}.work-item:first-child{border-top:1px solid rgba(17,17,15,.18)}.work-item:hover{opacity:.45}.work-index{font-size:var(--caption-size);color:var(--muted);letter-spacing:.06em}.work-title{font-family:var(--heading-font);font-size:var(--project-title-size);line-height:1.05;letter-spacing:-.025em}.work-arrow{width:18px;height:18px;display:flex;align-items:center;justify-content:flex-end;text-align:right}.work-arrow svg{width:18px;height:18px;display:block;overflow:visible}.work-arrow path{fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}.work-preview{position:sticky;top:110px;width:100%;aspect-ratio:4/5;overflow:hidden}.preview-inner{width:100%;height:100%;overflow:hidden;background:#dedbd3}.work-preview img{width:100%;height:100%;object-fit:cover;transition:opacity .18s ease,transform .6s ease}.work-preview img.is-changing{opacity:0}.preview-empty{width:100%;height:100%}
.gallery-about{color:var(--about-color);padding:var(--about-top) var(--pad) var(--about-bottom);display:grid;grid-template-columns:1fr minmax(300px,720px);gap:30px;border-top:1px solid rgba(17,17,15,.22);padding-top:14px}.about-copy p{font-family:var(--heading-font);font-size:var(--about-size);line-height:1.04;letter-spacing:-.03em;margin:0 0 45px}.about-copy .small{font-family:var(--body-font);font-size:15px;line-height:1.35;letter-spacing:0;max-width:550px;color:var(--muted)}
.gallery-contact{color:var(--contact-color);padding:0 var(--pad) var(--contact-bottom);display:grid;grid-template-columns:1fr minmax(300px,720px);gap:30px;border-top:1px solid rgba(17,17,15,.22);padding-top:14px}.contact-main h2{font-family:var(--heading-font);font-size:var(--contact-size);line-height:.86;letter-spacing:-.06em;font-weight:400;margin:0 0 70px}.contact-links{display:flex;flex-wrap:wrap;gap:10px 35px}.contact-links a{font-family:var(--body-font);font-size:var(--nav-size);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid rgba(17,17,15,.35);padding-bottom:3px}.site-footer{color:var(--footer-color);padding:0 var(--pad) 28px;display:flex;justify-content:space-between;gap:30px;font-family:var(--body-font);font-size:var(--nav-size);letter-spacing:.08em;text-transform:uppercase}.footer-left{display:flex;gap:28px}.ga-foogallery-page + .site-footer{margin-top:90px}.back-home{border-bottom:1px solid rgba(17,17,15,.35);padding-bottom:3px}
@media(max-width:800px){
 body.menu-open{overflow:hidden}
 .site-header{top:var(--header-y);left:0;width:100%;padding:18px var(--pad);z-index:100;mix-blend-mode:normal;isolation:isolate}
 .site-header.is-hidden{transform:translateY(-140%);opacity:0;pointer-events:none}
 .menu-toggle{display:block;position:relative;z-index:102}
 .site-nav{display:flex;position:fixed;inset:0;z-index:101;width:100vw;height:100svh;min-height:100dvh;margin:0;padding:0 var(--pad);background-color:var(--mobile-menu-bg,var(--paper));background-image:none;transform:none;opacity:0;visibility:hidden;pointer-events:none;align-items:center;justify-content:center;transition:opacity .3s ease,visibility .3s ease;mix-blend-mode:normal;isolation:isolate;backdrop-filter:none;-webkit-backdrop-filter:none}
 .site-nav.is-open{display:flex;opacity:1;visibility:visible;pointer-events:auto;z-index:1001}
 .site-nav ul{width:100%;flex-direction:column;gap:var(--menu-mobile-gap,24px);align-items:center;justify-content:center;margin:0;padding:0;list-style:none}
 .site-nav a{display:block;padding:8px 18px;font-size:clamp(28px,8vw,52px);letter-spacing:.02em;text-transform:uppercase;line-height:1.05;position:relative;z-index:103;pointer-events:auto}
 .gallery-home{padding-top:45px}.hero-clean{height:var(--hero-height-mobile);min-height:100svh;padding:0}.hero-image,.hero-video{object-position:var(--hero-mobile-pos-x) var(--hero-mobile-pos-y)}.hero-click{max-width:none}.gallery-intro{display:block;padding-top:120px;padding-bottom:130px}.intro-kicker{margin-bottom:35px}.intro-meta{margin-top:35px;text-align:left}.work-layout{display:block}.work-preview{display:none}.work-item{grid-template-columns:38px 1fr 18px;padding:16px 0}.work-title{font-size:var(--project-title-size)}.gallery-about,.gallery-contact{display:block}.about-label,.contact-label{margin-bottom:35px}.contact-main h2{font-size:var(--contact-size);margin-bottom:55px}.gallery-contact{padding-bottom:55px}.site-footer{display:block;padding-bottom:25px}.footer-left{display:flex;justify-content:space-between;gap:12px;margin-bottom:22px}.back-home{display:inline-block}}


.ga-foogallery-page{padding:120px var(--pad) 60px;min-height:100vh}.ga-foogallery-inner{max-width:1400px;margin:0 auto}.ga-foogallery-back{max-width:1400px;margin:95px auto 0;text-align:right;font-size:var(--nav-size);letter-spacing:.08em;text-transform:uppercase}.ga-foogallery-back a{border-bottom:1px solid rgba(17,17,15,.35);padding-bottom:4px}
@media(max-width:800px){.ga-foogallery-page{padding:95px var(--pad) 40px}.ga-foogallery-back{margin-top:65px;text-align:left}.ga-foogallery-page + .site-footer{margin-top:65px}}
.ga-service-page{padding:clamp(120px,15vw,220px) var(--pad) clamp(100px,12vw,180px);min-height:70vh}.ga-service-page-inner{max-width:1400px;margin:0 auto}.ga-service-page-header{border-top:1px solid rgba(17,17,15,.22);padding-top:14px;margin-bottom:clamp(50px,8vw,110px)}.ga-service-page-header h1{font-family:var(--heading-font);font-size:clamp(44px,7vw,110px);line-height:.95;letter-spacing:-.045em;font-weight:400;margin:0;max-width:1100px;color:var(--heading-color)}.ga-service-page-lead{max-width:850px;font-family:var(--heading-font);font-size:clamp(28px,4vw,58px);line-height:1.02;letter-spacing:-.03em;margin-bottom:35px;color:var(--heading-color)}.ga-service-page-body{max-width:650px;font-family:var(--body-font);font-size:clamp(14px,1.4vw,18px);line-height:1.5;color:var(--body-color);margin-bottom:70px}.ga-service-page-gallery{max-width:1400px}.ga-service-page-gallery .foogallery-container{margin-top:20px}.ga-service-page-cta{margin-top:80px;font-family:var(--body-font);font-size:var(--nav-size);letter-spacing:.08em;text-transform:uppercase}.ga-service-page-cta a,.ga-service-page-back a{border-bottom:1px solid rgba(17,17,15,.35);padding-bottom:4px}.ga-service-page-back{margin-top:80px;font-family:var(--body-font);font-size:var(--nav-size);letter-spacing:.08em;text-transform:uppercase}.page-shell{padding:clamp(120px,15vw,220px) var(--pad) 120px;min-height:70vh}.page-title{font-family:var(--heading-font);font-size:clamp(44px,7vw,110px);line-height:.95;font-weight:400;letter-spacing:-.045em}.page-content{max-width:800px;margin-top:50px;font-size:16px;line-height:1.55}.page-content img{height:auto}.page-content a{text-decoration:underline}@media(max-width:800px){.ga-service-page{padding:95px var(--pad) 70px}.ga-service-page-header{margin-bottom:55px}.ga-service-page-header h1{font-size:clamp(42px,12vw,72px)}.ga-service-page-lead{font-size:clamp(27px,8vw,46px)}.ga-service-page-body{font-size:15px;margin-bottom:50px}.ga-service-page-cta{margin-top:55px}.ga-service-page-back{margin-top:55px}}
