/*
Theme Name: Giulio Alesse — Art Gallery
Author: Giulio Alesse
Description: Minimal editorial portfolio theme with configurable service windows, navigation and contact details.
Version: 1.3.0
Text Domain: giulio-alesse-gallery
*/
:root{--paper:#f5f4f0;--ink:#11110f;--muted:#77746d;--line:rgba(17,17,15,.14);--pad:clamp(18px,3vw,48px);--serif:"Iowan Old Style","Baskerville","Times New Roman",serif;--sans:Inter,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;--body-size:13px;--nav-size:10px;--caption-size:10px;--header-pad:22px;--nav-gap:36px;--logo-width:150px;--hero-height:78svh;--hero-height-mobile:72svh;--intro-size:clamp(32px,5.2vw,76px);--about-size:clamp(28px,3.5vw,52px);--project-title-size:clamp(55px,9vw,130px);--contact-size:clamp(55px,10vw,150px);--service-gap:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:var(--body-size);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}
.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;padding:var(--header-pad) var(--pad);display:flex;align-items:center;justify-content:space-between;gap:30px;mix-blend-mode:multiply}.site-brand{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;display:flex;align-items:center}.site-brand .custom-logo{width:var(--logo-width);height:auto;max-height:none}.site-nav{display:flex;gap:var(--nav-gap);align-items:center}.site-nav a{font-size:var(--nav-size);letter-spacing:.16em;text-transform:uppercase}.site-nav a:hover{opacity:.5}.site-nav ul{display:flex;gap:var(--nav-gap);margin:0;padding:0;list-style:none}.site-nav li{margin:0}.menu-toggle{display:none;border:0;background:none;padding:0;letter-spacing:.14em;text-transform:uppercase;font-size:var(--nav-size);color:inherit}
.hero{min-height:100svh;display:grid;place-items:center;padding:90px var(--pad) 70px}.hero-inner{width:min(1500px,100%);text-align:center}.hero-media{position:relative;width:100%;height:var(--hero-height);overflow:hidden;background:#dedbd3}.hero-image,.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-video iframe{position:absolute;top:50%;left:50%;width:177.78vh;height:56.25vw;min-width:100%;min-height:100%;transform:translate(-50%,-50%);border:0;pointer-events:none}.hero-caption{display:flex;justify-content:space-between;gap:20px;margin-top:13px;font-size:var(--caption-size);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.intro{padding:clamp(90px,13vw,210px) var(--pad);max-width:1200px}.intro p{font-family:var(--serif);font-size:var(--intro-size);line-height:1.03;letter-spacing:-.025em;margin:0;max-width:1050px}
.services{padding:0 0 clamp(100px,13vw,190px)}.services-head{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:12px var(--pad) 0;margin-bottom:34px}.eyebrow{font-size:var(--nav-size);letter-spacing:.15em;text-transform:uppercase}.muted{color:var(--muted)}
.service-track{display:flex;gap:var(--service-gap);overflow-x:auto;overflow-y:hidden;padding:0 var(--pad) 18px;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.service-track::-webkit-scrollbar{display:none}.service-window{flex:0 0 min(62vw,760px);scroll-snap-align:start}.service-link{display:block}.service-media{position:relative;overflow:hidden;background:#e9e7e1;aspect-ratio:16/10}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform 900ms cubic-bezier(.2,.65,.2,1)}.service-link:hover .service-media img{transform:scale(1.018)}.service-overlay{position:absolute;inset:auto 0 0;padding:28px;background:linear-gradient(transparent,rgba(0,0,0,.55));color:#fff}.service-title{font-family:var(--serif);font-size:clamp(30px,4vw,60px);line-height:.95;font-weight:400}.service-number{font-size:var(--nav-size);letter-spacing:.14em;text-transform:uppercase;opacity:.8;margin-bottom:9px}.service-hint{padding:14px var(--pad) 0;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.about{padding:clamp(100px,15vw,230px) var(--pad);border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:30px}.about-title{grid-column:1 / span 3;font-size:var(--nav-size);letter-spacing:.15em;text-transform:uppercase}.about-copy{grid-column:5 / span 6}.about-copy p{font-family:var(--serif);font-size:var(--about-size);line-height:1.08;letter-spacing:-.02em;margin:0 0 35px}.about-copy .small{font-family:var(--sans);font-size:var(--body-size);line-height:1.65;max-width:580px;color:var(--muted)}
.contact{padding:clamp(90px,13vw,180px) var(--pad);border-top:1px solid var(--line)}.contact-title{font-family:var(--serif);font-size:var(--contact-size);line-height:.88;letter-spacing:-.045em;margin:0 0 70px;font-weight:400}.contact-links{display:flex;flex-wrap:wrap;gap:12px 40px;font-size:var(--nav-size);letter-spacing:.12em;text-transform:uppercase}.contact-links a:hover{opacity:.5}
.site-footer{padding:30px var(--pad) 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.page-shell{padding:150px var(--pad) 100px}.page-title{font-family:var(--serif);font-size:var(--project-title-size);line-height:.9;letter-spacing:-.045em;font-weight:400;margin:0 0 80px}.page-content{max-width:850px;font-size:var(--body-size);line-height:1.7}.page-content h2,.page-content h3{font-family:var(--serif);font-weight:400}
.single-project .project-head{padding:150px var(--pad) 55px;display:flex;justify-content:space-between;gap:30px;align-items:end}.single-project .project-title{font-family:var(--serif);font-weight:400;font-size:var(--project-title-size);line-height:.88;letter-spacing:-.045em;margin:0}.project-description{max-width:330px;color:var(--muted);font-size:var(--body-size)}.project-images{padding:0 var(--pad) 120px}.project-images>img{width:100%;margin-bottom:clamp(16px,3vw,50px);max-height:92svh;object-fit:cover}
@media(max-width:700px){.site-header{padding-top:17px}.site-nav{display:none;position:absolute;top:55px;right:var(--pad);flex-direction:column;align-items:flex-end;gap:13px;background:var(--paper);padding:18px}.site-nav.is-open{display:flex}.site-nav ul{display:flex;flex-direction:column;gap:13px}.menu-toggle{display:block}.hero{padding-top:75px}.hero-media{height:var(--hero-height-mobile)}.hero-caption{font-size:8px}.service-window{flex-basis:82vw}.service-overlay{padding:20px}.service-title{font-size:10vw}.about-grid{display:block}.about-title{margin-bottom:35px}.contact-title{font-size:22vw}.site-footer{flex-direction:column}.single-project .project-head{display:block}.project-description{margin-top:30px}}
