@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Montserrat:wght@200;300;400;500;600&display=swap";:root{--primary-color:#0f1115;--secondary-color:#d4af37;--bg-color:#faf9f6;--text-dark:#1a1a1a;--text-light:#fff;--accent-blush:#e8dcd8;--font-serif:"Cormorant Garamond", serif;--font-sans:"Montserrat", sans-serif;--transition-slow:.8s cubic-bezier(.16, 1, .3, 1);--transition-fast:.3s ease}*,:before,:after{box-sizing:border-box;scroll-behavior:smooth;margin:0;padding:0}html,body{width:100%;max-width:100vw;overflow-x:hidden}body{font-family:var(--font-sans);background-color:var(--bg-color);color:var(--text-dark);-webkit-font-smoothing:antialiased;line-height:1.7}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--primary-color);font-weight:400;line-height:1.15}h1{letter-spacing:-.5px;margin-bottom:1.5rem;font-size:clamp(2.4rem,5.5vw,4.5rem)}h2{margin-bottom:1.5rem;font-size:clamp(2rem,4vw,3.2rem)}h3{margin-bottom:1rem;font-size:clamp(1.4rem,2.5vw,2rem)}p{letter-spacing:.3px;color:#444;margin-bottom:1.5rem;font-size:1.05rem;font-weight:300;line-height:1.75}.text-gold{color:var(--secondary-color);font-style:italic}.cta-button{background-color:var(--primary-color);color:var(--text-light);font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;transition:all var(--transition-fast);border:1px solid var(--primary-color);cursor:pointer;justify-content:center;align-items:center;min-height:48px;padding:16px 36px;font-size:.88rem;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.cta-button:before{content:"";background-color:var(--secondary-color);width:100%;height:100%;transition:transform var(--transition-slow);z-index:0;position:absolute;top:0;left:0;transform:translate(-100%)}.cta-button:hover:before{transform:translate(0)}.cta-button span{z-index:1;position:relative}.cta-button:hover{color:var(--primary-color);border-color:var(--secondary-color)}.cta-button.outline{color:var(--primary-color);background-color:#0000}.cta-button.outline:hover{color:var(--text-light)}.cta-button.outline.gold-outline{border-color:var(--secondary-color);color:var(--secondary-color)}.cta-button.outline.gold-outline:hover{color:var(--primary-color)}.header{z-index:1000;background:0 0;justify-content:space-between;align-items:center;width:100%;padding:24px 5%;transition:background .35s,padding .35s,box-shadow .35s;display:flex;position:fixed;top:0;left:0}.header.scrolled{-webkit-backdrop-filter:blur(12px);background:#faf9f6f2;padding:14px 5%;box-shadow:0 2px 20px #0000000d}.logo a{font-family:var(--font-serif);color:var(--primary-color);letter-spacing:1px;font-size:2rem;font-weight:600;text-decoration:none}.nav{align-items:center;gap:2.5rem;display:flex}.hamburger{display:none}.nav a:not(.cta-button){text-transform:uppercase;letter-spacing:1.5px;color:var(--primary-color);padding:4px 0;font-size:.85rem;font-weight:500;text-decoration:none;position:relative}.nav a:not(.cta-button):after{content:"";background-color:var(--secondary-color);width:0;height:1px;transition:width var(--transition-fast);position:absolute;bottom:0;left:0}.nav a:not(.cta-button):hover:after,.nav a.active:not(.cta-button):after{width:100%}.editorial-hero{background-color:var(--bg-color);align-items:stretch;min-height:100vh;display:flex;overflow:hidden}.hero-text-side{z-index:2;flex-direction:column;flex:1;justify-content:center;padding:120px 8% 80px;animation:1.2s cubic-bezier(.16,1,.3,1) both fadeUp;display:flex}.hero-image-side{flex:1;min-height:100%;position:relative;overflow:hidden}.hero-image-side img{object-fit:cover;width:100%;height:100%;animation:2s cubic-bezier(.16,1,.3,1) both zoomOut}.portfolio-editorial{background-color:#fff;padding:100px 5%}.portfolio-header{text-align:center;margin-bottom:60px}.masonry-grid{grid-template-columns:repeat(12,1fr);gap:30px;max-width:1200px;margin:0 auto;display:grid}.masonry-item{cursor:pointer;border-radius:6px;position:relative;overflow:hidden}.masonry-item img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow);filter:grayscale(15%)}.masonry-item:hover img{filter:grayscale(0%);transform:scale(1.04)}.masonry-item.large{grid-column:span 8;height:520px}.masonry-item.small{grid-column:span 4;height:520px}.masonry-caption{color:#fff;z-index:2;opacity:0;transition:all var(--transition-fast);position:absolute;bottom:25px;left:25px;right:25px;transform:translateY(15px)}.masonry-caption h3{color:#fff;margin-bottom:4px;font-size:1.6rem}.masonry-caption p{color:#ffffffd9;margin-bottom:0;font-size:.95rem}.masonry-item:hover .masonry-caption{opacity:1;transform:translateY(0)}.masonry-item:after{content:"";opacity:0;width:100%;height:100%;transition:opacity var(--transition-fast);background:linear-gradient(#0000 0%,#0000001a 50%,#000000b3 100%);position:absolute;top:0;left:0}.masonry-item:hover:after{opacity:1}.editorial-services{background-color:var(--accent-blush);padding:100px 5%}.about-intro{text-align:center;max-width:800px;margin:0 auto 70px}.service-row{align-items:center;gap:70px;max-width:1200px;margin-bottom:90px;margin-left:auto;margin-right:auto;display:flex}.service-row:last-child{margin-bottom:0}.service-row:nth-child(2n){flex-direction:row-reverse}.service-row-text{flex:1;padding:0 20px}.service-row-image{border-radius:12px;flex:1;height:440px;overflow:hidden;box-shadow:0 15px 35px #00000014}.service-row-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.service-row-image:hover img{transform:scale(1.04)}.editorial-stacks{text-align:center;background-color:#fff;padding:100px 5%}.stacks-intro{max-width:800px;margin:0 auto 50px}.stacks-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:35px;max-width:1200px;margin:0 auto;display:grid}.stack-card{text-align:center}.stack-img-wrap{background:#fff;border-radius:12px;margin-bottom:20px;overflow:hidden;box-shadow:0 12px 35px #00000014}.stack-img-wrap img{width:100%;transition:transform .5s;display:block}.stack-card:hover .stack-img-wrap img{transform:scale(1.04)}.stack-card h3{font-size:1.5rem;font-family:var(--font-serif);color:var(--primary-color)}.stacks-cta-wrapper{margin-top:50px}.editorial-process{text-align:center;padding:100px 5%}.process-header{margin-bottom:60px}.process-steps{justify-content:center;gap:40px;max-width:1200px;margin:0 auto;display:flex}.process-step{text-align:left;border-left:1px solid #0000001f;flex:1;padding-left:25px;position:relative}.step-number{font-family:var(--font-serif);color:var(--secondary-color);opacity:.45;margin-bottom:15px;font-size:3.8rem;line-height:1}.process-step h3{margin-bottom:12px;font-size:1.6rem}.process-step p{color:#555;font-size:1rem}.business-division-section{text-align:center;padding:100px 5%}.business-intro{max-width:800px;margin:0 auto 50px}.business-lead{color:#ccc}.business-grid{text-align:left;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:35px;max-width:1200px;margin:0 auto;display:grid}.business-card{border-top:1px solid var(--secondary-color);padding-top:20px}.business-card h3{color:#fff;margin-bottom:15px;font-size:1.5rem}.business-card p{color:#aaa;font-size:.98rem}.business-cta-wrapper{margin-top:50px}.editorial-reviews{background-color:var(--accent-blush);text-align:center;padding:100px 5%}.reviews-header{margin-bottom:60px}.reviews-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:30px;max-width:1200px;margin:0 auto;display:grid}.review-card{text-align:left;border-top:4px solid var(--secondary-color);background:#fff;border-radius:4px;flex-direction:column;justify-content:space-between;padding:40px 30px;display:flex;box-shadow:0 10px 35px #0000000a}.stars{color:var(--secondary-color);letter-spacing:2px;margin-bottom:16px;font-size:1.2rem}.review-text{font-family:var(--font-serif);color:var(--primary-color);margin-bottom:24px;font-size:1.25rem;font-style:italic;line-height:1.6}.reviewer strong{color:var(--primary-color);margin-bottom:2px;font-size:1rem;display:block}.reviewer span{color:#777;text-transform:uppercase;letter-spacing:1px;font-size:.85rem}.page-wrapper{animation:.8s ease-out fadeIn}.bg-white{background-color:#fff}.editorial-article{background-color:var(--bg-color);justify-content:center;padding:90px 5%;display:flex}.article-content{width:100%;max-width:800px}.pull-quote{font-family:var(--font-serif);color:var(--secondary-color);border-left:3px solid var(--secondary-color);margin-bottom:2.5rem;padding-left:1.8rem;font-size:clamp(1.6rem,3.5vw,2.5rem);font-style:italic;line-height:1.3}.editorial-lead{color:#333;font-size:1.2rem;line-height:1.8}.drop-cap:first-letter{float:left;font-family:var(--font-serif);color:var(--primary-color);padding-top:4px;padding-left:2px;padding-right:12px;font-size:clamp(3.8rem,7vw,4.8rem);line-height:3.6rem}.editorial-list{margin-top:2.5rem;list-style:none}.editorial-list li{color:#555;border-bottom:1px solid #00000014;margin-bottom:1.3rem;padding-bottom:1.3rem;font-size:1.05rem;line-height:1.7}.editorial-list li strong{color:var(--primary-color);font-family:var(--font-serif);margin-right:.4rem;font-size:1.25rem}.editorial-gallery-section{background-color:var(--bg-color);padding:0 5% 100px}.gallery-container{max-width:1200px;margin:0 auto}.gallery-title{text-align:center;border-left:none;margin-bottom:40px;padding-left:0}.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:25px;display:grid}.gallery-item{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #00000012}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.gallery-item:hover img{transform:scale(1.04)}.featured-single .featured-image-wrapper{text-align:center}.featured-single img{border-radius:12px;width:100%;max-width:900px;margin:0 auto;box-shadow:0 15px 40px #00000014}.dark-section{background-color:var(--primary-color);color:var(--text-light);padding:90px 5%}.dark-section h2{color:var(--text-light)}.dark-section p{color:#aaa}.contact-editorial{gap:60px;max-width:1200px;margin:0 auto;display:flex}.contact-info{flex:1}.contact-form{flex-direction:column;flex:1;gap:24px;display:flex}.form-group input,.form-group select,.form-group textarea{color:#fff;width:100%;font-family:var(--font-sans);min-height:48px;transition:border-color var(--transition-fast);background:0 0;border:none;border-bottom:1px solid #ffffff40;border-radius:0;padding:14px 0;font-size:16px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-bottom-color:var(--secondary-color);outline:none}.form-group select option{background:var(--primary-color);color:#fff}.footer-bottom{text-align:center;letter-spacing:.5px;color:#888;border-top:1px solid #ffffff1a;margin-top:70px;padding-top:25px;font-size:.85rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomOut{0%{transform:scale(1.08)}to{transform:scale(1)}}.reveal-wrapper{opacity:0;will-change:opacity, transform;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(35px)}.reveal-wrapper.is-visible{opacity:1;transform:translateY(0)}section+section{position:relative}section+section:before{content:"";background:#0000000f;height:1px;position:absolute;top:0;left:5%;right:5%}.dark-section:before,.editorial-hero+section:before{display:none}@media (width<=900px){.header{padding:16px 5%}.header.scrolled{padding:12px 5%}.hamburger{cursor:pointer;z-index:1010;background:0 0;border:none;flex-direction:column;justify-content:space-around;width:44px;height:44px;padding:10px 8px;display:flex}.hamburger span{background:var(--primary-color);transform-origin:1px;border-radius:4px;width:100%;height:2.5px;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative}.hamburger.active span:first-child{transform:rotate(45deg)translate(2px,-2px)}.hamburger.active span:nth-child(2){opacity:0;transform:translate(15px)}.hamburger.active span:nth-child(3){transform:rotate(-45deg)translate(2px,2px)}.nav{-webkit-backdrop-filter:blur(16px);z-index:1005;background:#faf9f6fa;flex-direction:column;justify-content:center;align-items:center;gap:1.8rem;width:100vw;height:100dvh;padding:80px 20px;transition:transform .35s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;left:0;transform:translate(100%)}.nav.mobile-open{transform:translate(0)}.nav a:not(.cta-button){font-size:1.35rem;font-family:var(--font-serif);letter-spacing:1px;padding:6px 16px;font-weight:500}.editorial-hero{flex-direction:column;height:auto;min-height:auto;overflow:visible}.hero-text-side{text-align:center;order:1;width:100%;padding:95px 6% 35px}.hero-text-side .cta-button{width:100%;max-width:320px;margin:0 auto}.hero-image-side{order:2;width:100%;height:360px;min-height:280px;max-height:440px}.portfolio-editorial{padding:50px 5%}.portfolio-header{margin-bottom:40px}.masonry-item.large,.masonry-item.small{border-radius:12px;grid-column:span 12;height:300px}.masonry-caption{opacity:1;transform:translateY(0)}.masonry-item:after{opacity:1}.editorial-services{padding:50px 5%}.about-intro{margin-bottom:40px}.service-row,.service-row:nth-child(2n){text-align:center;flex-direction:column;gap:30px;margin-bottom:50px}.service-row-text{padding:0}.service-row-image{width:100%;height:280px}.editorial-stacks{padding:50px 5%}.stacks-intro{margin-bottom:35px}.stacks-grid{gap:25px}.editorial-process{padding:50px 5%}.process-header{margin-bottom:40px}.process-steps{flex-direction:column;gap:25px}.process-step{text-align:center;border-top:1px solid #0000001a;border-left:none;padding-top:20px;padding-left:0}.step-number{margin-bottom:10px;font-size:3rem}.business-division-section{padding:50px 5%}.business-intro{margin-bottom:35px}.business-grid{text-align:center;gap:25px}.editorial-reviews{padding:50px 5%}.reviews-header{margin-bottom:40px}.reviews-grid{gap:20px}.review-card{padding:30px 20px}.review-text{font-size:1.15rem}.editorial-article{padding:50px 5%}.pull-quote{margin-bottom:1.8rem;padding-left:1.2rem}.editorial-gallery-section{padding:0 5% 50px}.gallery-grid{gap:18px}.dark-section{padding:50px 5%}.contact-editorial{text-align:center;flex-direction:column;gap:35px}.contact-info{text-align:center}.contact-form{text-align:left;width:100%}.footer-bottom{margin-top:45px}}@media (width<=480px){.header{padding:14px 4%}.logo a{font-size:1.7rem}.hero-text-side{padding:85px 5% 30px}.hero-image-side{height:300px}.cta-button{letter-spacing:1.5px;padding:14px 24px;font-size:.82rem}.gallery-grid{grid-template-columns:1fr}}
