html,body{margin:0;padding:0;overflow-x:hidden}.home-page{background:var(--color-bg-primary);color:var(--color-text-primary);flex-direction:column;min-height:100vh;display:flex}@keyframes home-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-settle{0%{opacity:.35;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}.home-header{justify-content:center;align-items:center;display:flex}.header-logo{animation:home-rise .6s var(--ease-out-quart) both;justify-content:center;align-items:center;display:flex}.header-logo img{display:block}.home-nav{animation:home-rise .6s var(--ease-out-quart) .15s both;justify-content:center;gap:40px;padding:0 24px 40px;display:flex}.nav-link{letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-primary);font-size:11px;font-weight:400;text-decoration:none;transition:opacity .2s}.nav-link:hover{opacity:.6}.hero-section{width:100%;margin-bottom:100px;padding:0}.hero-image-wrapper{aspect-ratio:16/7;background:var(--color-bg-placeholder);width:100%;position:relative;overflow:hidden}.hero-image{object-fit:cover;animation:hero-settle .85s var(--ease-out-quart) .25s both}.brand-text,.about-column,.contact-column{transition:opacity 1s var(--ease-out-quart), transform 1s var(--ease-out-quart)}.brand-text{transition-delay:.25s}.reveal-hidden .brand-text,.reveal-hidden .about-column,.reveal-hidden .contact-column{opacity:0;transform:translateY(14px)}.about-column,.contact-column{transition-delay:.6s}.gallery-card:nth-child(-n+4){transition:opacity .9s var(--ease-out-quart), transform .9s var(--ease-out-quart)}.reveal-hidden .gallery-card:nth-child(-n+4){opacity:0;transform:translateY(14px)}.gallery-card:first-child{transition-delay:.25s}.gallery-card:nth-child(2){transition-delay:.4s}.gallery-card:nth-child(3){transition-delay:.55s}.gallery-card:nth-child(4){transition-delay:.7s}.brand-section{gap:80px;width:100%;padding:0 0 120px;display:flex}.brand-text{flex-direction:column;justify-content:flex-start;width:35%;min-width:240px;padding-left:clamp(24px,6vw,80px);padding-right:40px;display:flex}.brand-heading{letter-spacing:.08em;color:var(--color-text-primary);margin:0 0 20px;font-size:36px;font-weight:100;line-height:1.2}.brand-body{letter-spacing:.03em;color:var(--color-text-body);margin:0 0 28px;font-size:clamp(.75rem,1vw,.875rem);font-weight:300;line-height:1.7}.brand-cta{letter-spacing:.08em;color:var(--color-text-primary);transition:opacity .2s var(--ease-out-quart);align-self:flex-start;align-items:center;gap:8px;font-size:.75rem;font-weight:400;text-decoration:none;display:inline-flex}.brand-cta:hover{opacity:.7}.cta-arrow{transition:transform .3s var(--ease-out-quart)}.brand-cta:hover .cta-arrow{transform:translate(6px)}.brand-gallery{flex:1;min-width:0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 90%,#0000);mask-image:linear-gradient(90deg,#000 90%,#0000)}.gallery-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;gap:16px;padding-right:40px;display:flex;overflow-x:auto}.gallery-track::-webkit-scrollbar{display:none}.gallery-card{scroll-snap-align:start;flex:none;width:clamp(160px,18vw,240px);display:block}.gallery-image-wrapper{aspect-ratio:4/5;background:var(--color-bg-placeholder);width:100%;position:relative;overflow:hidden}.gallery-image{object-fit:cover;transition:transform .6s var(--ease-out-quart), opacity .4s var(--ease-out-quart)}.gallery-image--loading{opacity:0}.gallery-card:hover .gallery-image,.gallery-card:focus-visible .gallery-image{transform:scale(1.04)}.about-contact-section{background:var(--color-bg-secondary);width:100%;padding:90px 0}.about-contact-inner{gap:0;padding-left:clamp(24px,6vw,80px);padding-right:clamp(24px,6vw,80px);display:flex;position:relative}.about-contact-inner:before{content:"";background:var(--color-border-primary);transform-origin:top;width:1px;transition:transform 1s var(--ease-out-quart);position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.reveal-hidden .about-contact-inner:before{transform:translate(-50%)scaleY(0)}.about-column{flex:1;padding-right:60px}.contact-column{text-align:right;flex:1;padding-left:60px}.about-contact-heading{letter-spacing:.08em;color:var(--color-text-primary);margin:0 0 24px;font-size:36px;font-weight:100;line-height:1.2}.about-contact-body{letter-spacing:.03em;color:var(--color-text-body);max-width:400px;margin:0 0 16px;font-size:clamp(.75rem,1vw,.875rem);font-weight:400;line-height:1.7}.contact-sub{letter-spacing:.03em;color:var(--color-text-body);margin:0 0 28px;font-size:clamp(.7rem,.9vw,.8rem);font-weight:400;line-height:1.6}.contact-cta{color:var(--color-text-primary);transition:opacity .3s var(--ease-out-quart);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.contact-cta:hover{opacity:.7}.contact-arrow{transition:transform .3s var(--ease-out-quart)}.contact-cta:hover .contact-arrow{transform:translate(6px)}.home-footer{text-align:center;margin-top:auto;padding:60px 24px 40px}.footer-copy{letter-spacing:.05em;color:var(--color-text-subtle);font-size:9px;font-weight:400}@media (max-width:992px){.about-contact-section{padding:60px 0}.about-contact-inner{padding-left:clamp(20px,4vw,40px);padding-right:24px}.about-column{padding-right:40px}.contact-column{padding-left:40px}.brand-section{gap:40px;padding:0 0 80px}.brand-text{padding-left:clamp(20px,4vw,40px);padding-right:24px}.hero-section{margin-bottom:80px}}@media (max-width:768px){.about-contact-section{padding:60px 0}.about-contact-inner{text-align:center;flex-direction:column;padding-left:16px;padding-right:16px}.about-contact-inner:before{display:none}.about-column{margin-bottom:48px;padding-right:0}.about-contact-body{max-width:100%}.contact-column{text-align:center;padding-left:0}.contact-cta{justify-content:center}.home-header{padding:40px 16px 20px}.home-nav{gap:28px;padding:0 16px 32px}.hero-section{margin-bottom:60px}.hero-image-wrapper{aspect-ratio:16/9;height:350px}.brand-section--flipped,.brand-section{flex-direction:column;gap:0;padding:0 0 60px}.brand-text{width:100%;min-width:unset;margin-bottom:32px;padding-left:16px;padding-right:16px}.brand-gallery{width:100%}.gallery-track{gap:12px;padding-left:16px;padding-right:16px}.gallery-card{width:160px}.home-footer{padding:40px 16px 32px}}
