:root{--c-ivory: #faf8f3;--c-ivory-deep: #f3efe6;--c-paper: #ffffff;--c-ink: #1a1815;--c-ink-soft: #3d3a35;--c-ink-muted: #6b6660;--c-line: #ddd6c8;--c-line-soft: #ebe6da;--c-gold: #b8975a;--c-gold-deep: #9a7c44;--c-gold-soft: #d4c19a;--c-gold-tint: rgba(184, 151, 90, .08);--font-serif: "Cormorant Garamond", "Times New Roman", Georgia, serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--space-6: 48px;--space-7: 64px;--space-8: 80px;--space-9: 120px;--container: 1200px;--container-narrow: 820px;--radius: 2px;--ease: cubic-bezier(.25, .46, .45, .94);--t-fast: .2s var(--ease);--t-med: .4s var(--ease)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-weight:400;line-height:1.6;color:var(--c-ink);background-color:var(--c-ivory);font-size:16px}img{max-width:100%;display:block}a{color:inherit;text-decoration:none;transition:color var(--t-fast)}.container{max-width:var(--container);margin:0 auto;padding:0 var(--space-4)}h1,h2,h3{font-family:var(--font-serif);font-weight:500;line-height:1.2;letter-spacing:-.01em}.section-eyebrow{font-family:var(--font-sans);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.2em;color:var(--c-gold-deep);margin-bottom:var(--space-3)}.section-title{font-size:clamp(1.8rem,4vw,2.6rem);color:var(--c-ink);margin-bottom:var(--space-4);max-width:720px}.section-subtitle{font-size:1.05rem;color:var(--c-ink-muted);max-width:640px;line-height:1.6}.section-header{text-align:center;margin-bottom:var(--space-8);display:flex;flex-direction:column;align-items:center}.section-header .section-title,.section-header .section-subtitle{text-align:center}.section{padding:var(--space-9) 0}.section-alt{background-color:var(--c-ivory-deep)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 32px;font-family:var(--font-sans);font-size:14px;font-weight:500;letter-spacing:.05em;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:all var(--t-fast);text-align:center}.btn-primary{background-color:var(--c-ink);color:var(--c-ivory);border-color:var(--c-ink)}.btn-primary:hover{background-color:var(--c-gold-deep);border-color:var(--c-gold-deep);color:var(--c-ivory)}.btn-secondary{background-color:transparent;color:var(--c-ink);border-color:var(--c-line)}.btn-secondary:hover{border-color:var(--c-gold);color:var(--c-gold-deep)}.btn-full{width:100%}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background-color:#faf8f3eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color var(--t-med),background-color var(--t-med)}.site-header.scrolled{border-bottom-color:var(--c-line-soft)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:72px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{font-family:var(--font-serif);font-size:18px;font-weight:600;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--c-gold);color:var(--c-gold-deep);border-radius:2px;letter-spacing:.02em}.brand-copy{display:flex;flex-direction:column;align-items:flex-start;gap:1px}.brand-name{font-family:var(--font-serif);font-size:1.25rem;font-weight:600;line-height:1;color:var(--c-ink);letter-spacing:.06em}.brand-descriptor,.footer-descriptor{font-family:var(--font-sans);font-size:9px;font-weight:500;line-height:1.2;letter-spacing:.18em;color:var(--c-gold-deep)}.nav-desktop{display:flex;align-items:center;gap:var(--space-5)}.nav-desktop a{font-size:14px;font-weight:400;color:var(--c-ink-soft);position:relative;padding:4px 0}.nav-desktop a:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background-color:var(--c-gold);transform:scaleX(0);transform-origin:left;transition:transform var(--t-fast)}.nav-desktop a:hover{color:var(--c-ink)}.nav-desktop a:hover:after{transform:scaleX(1)}.nav-cta{color:var(--c-ink)}.header-controls{display:flex;align-items:center;gap:var(--space-3)}.lang-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;font-family:var(--font-sans);font-size:13px;font-weight:500;cursor:pointer;padding:4px 0}.lang-option{color:var(--c-ink-muted);transition:color var(--t-fast)}.lang-option.active{color:var(--c-gold-deep)}.lang-sep{color:var(--c-line);font-weight:300}.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.menu-bar{width:24px;height:1.5px;background-color:var(--c-ink);transition:all var(--t-fast)}.menu-toggle[aria-expanded=true] .menu-bar:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-bar:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] .menu-bar:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.nav-mobile{display:none;flex-direction:column;padding:var(--space-3) var(--space-4) var(--space-5);background-color:var(--c-ivory);border-top:1px solid var(--c-line-soft);gap:var(--space-3)}.nav-mobile.open{display:flex}.nav-mobile a{font-size:15px;color:var(--c-ink-soft);padding:8px 0;border-bottom:1px solid var(--c-line-soft)}.nav-mobile a:hover{color:var(--c-gold-deep)}.nav-mobile .nav-cta{padding:8px 0;text-align:left;border-bottom:1px solid var(--c-line-soft);margin-top:var(--space-2)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#faf8f3d9,#faf8f3b8,#faf8f3e6)}.hero-content{position:relative;z-index:1;padding-top:var(--space-8);max-width:760px}.hero-eyebrow{margin-bottom:var(--space-4)}.hero-title{font-size:clamp(2.5rem,7vw,4.5rem);line-height:1.1;margin-bottom:var(--space-5);color:var(--c-ink)}.hero-title-accent{font-style:italic;font-weight:400;color:var(--c-gold-deep);display:block}.hero-intro{font-size:1.15rem;line-height:1.7;color:var(--c-ink-soft);max-width:580px;margin-bottom:var(--space-6)}.hero-actions{display:flex;gap:var(--space-3);margin-bottom:var(--space-8);flex-wrap:wrap}.hero-scroll{font-size:12px;text-transform:uppercase;letter-spacing:.2em;color:var(--c-ink-muted);position:relative;padding-left:28px}.hero-scroll:before{content:"";position:absolute;left:0;top:50%;width:20px;height:1px;background-color:var(--c-gold)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background-color:var(--c-line-soft);border:1px solid var(--c-line-soft)}.service-card{background-color:var(--c-ivory);padding:var(--space-6) var(--space-5);transition:background-color var(--t-fast)}.service-card:hover{background-color:var(--c-gold-tint)}.service-number{font-family:var(--font-serif);font-size:14px;font-style:italic;color:var(--c-gold);margin-bottom:var(--space-3);display:block}.service-card h3{font-size:1.35rem;margin-bottom:var(--space-2);color:var(--c-ink)}.service-card p{font-size:.95rem;color:var(--c-ink-muted);line-height:1.65}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);margin-bottom:var(--space-5)}.portfolio-item{position:relative;overflow:hidden;aspect-ratio:4 / 3;cursor:pointer}.portfolio-item:nth-child(1),.portfolio-item:nth-child(6){grid-column:span 2;aspect-ratio:8 / 3}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease);filter:grayscale(15%)}.portfolio-item:hover img{transform:scale(1.04);filter:grayscale(0%)}.portfolio-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid transparent;transition:border-color var(--t-fast);pointer-events:none}.portfolio-item:hover:after{border-color:var(--c-gold)}.about-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-8);align-items:center}.about-text .section-title{margin-bottom:var(--space-4)}.about-body{font-size:1.05rem;color:var(--c-ink-soft);line-height:1.75;margin-bottom:var(--space-4)}.about-features{list-style:none;margin-top:var(--space-5);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2) var(--space-4)}.about-features li{font-size:.95rem;color:var(--c-ink);padding-left:24px;position:relative}.about-features li:before{content:"♪";position:absolute;left:0;top:0;color:var(--c-gold);font-size:1rem}.about-image img{border-radius:var(--radius);filter:grayscale(10%)}.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5)}.workflow-step{position:relative;padding-top:var(--space-5)}.workflow-step:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background-color:var(--c-line)}.workflow-step:after{content:"";position:absolute;top:-4px;left:0;width:8px;height:8px;border-radius:50%;background-color:var(--c-gold)}.workflow-number{font-family:var(--font-serif);font-size:2.5rem;font-style:italic;color:var(--c-gold-soft);line-height:1;margin-bottom:var(--space-3)}.workflow-step h3{font-size:1.25rem;margin-bottom:var(--space-2);color:var(--c-ink)}.workflow-step p{font-size:.92rem;color:var(--c-ink-muted);line-height:1.65}.testimonials-container{max-width:860px}.testimonials-list{display:flex;flex-direction:column}.testimonial{display:flex;align-items:flex-start;gap:var(--space-5);padding:var(--space-6) 0;border-bottom:1px solid var(--c-line-soft)}.testimonial:first-child{padding-top:0}.testimonial:last-child{border-bottom:none;padding-bottom:0}.testimonial-portrait{flex-shrink:0;width:88px;height:88px;border-radius:50%;overflow:hidden;position:relative;background-color:var(--c-ivory-deep)}.testimonial-portrait img{width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(20%);transition:filter var(--t-med)}.testimonial:hover .testimonial-portrait img{filter:grayscale(0%)}.testimonial-body{position:relative;flex:1;min-width:0}.testimonial-quote-mark{font-family:var(--font-serif);font-size:3rem;line-height:1;color:var(--c-gold-soft);position:absolute;top:-12px;left:-8px;pointer-events:none;-webkit-user-select:none;user-select:none}.testimonial-text{font-family:var(--font-serif);font-size:1.2rem;font-style:italic;font-weight:400;line-height:1.6;color:var(--c-ink-soft);margin-bottom:var(--space-3);position:relative;z-index:1}.testimonial-author{display:flex;flex-direction:column;gap:2px}.testimonial-name{font-family:var(--font-sans);font-size:14px;font-weight:600;color:var(--c-ink);letter-spacing:.02em}.testimonial-role{font-family:var(--font-sans);font-size:13px;font-weight:400;color:var(--c-gold-deep)}.testimonial-company{font-family:var(--font-sans);font-size:12px;font-weight:400;color:var(--c-ink-muted);font-style:italic}@media (max-width: 720px){.testimonial{gap:var(--space-3);padding:var(--space-5) 0}.testimonial-portrait{width:64px;height:64px}.testimonial-text{font-size:1.05rem}.testimonial-quote-mark{font-size:2.2rem;top:-8px;left:-4px}}@media (max-width: 420px){.testimonial-portrait{width:52px;height:52px}.testimonial-text{font-size:.98rem}.testimonial-quote-mark{font-size:1.8rem}}.contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-8);align-items:start}.contact-info .section-title{margin-bottom:var(--space-3)}.contact-info .section-subtitle{margin-bottom:var(--space-5)}.contact-email{font-size:1rem;color:var(--c-ink-soft);margin-bottom:var(--space-3);line-height:1.8}.contact-email a{font-family:var(--font-serif);font-size:1.3rem;color:var(--c-gold-deep);border-bottom:1px solid var(--c-gold-soft);transition:border-color var(--t-fast)}.contact-email a:hover{border-bottom-color:var(--c-gold-deep)}.contact-privacy{font-size:13px;color:var(--c-ink-muted);font-style:italic}.contact-form{background-color:var(--c-paper);padding:var(--space-6);border:1px solid var(--c-line-soft);border-radius:var(--radius)}.form-field{margin-bottom:var(--space-4)}.form-field label{display:block;font-size:13px;font-weight:500;color:var(--c-ink-soft);margin-bottom:8px;letter-spacing:.02em}.form-field input,.form-field textarea{width:100%;padding:12px 14px;font-family:var(--font-sans);font-size:15px;color:var(--c-ink);background-color:var(--c-ivory);border:1px solid var(--c-line);border-radius:var(--radius);transition:border-color var(--t-fast);resize:vertical}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--c-gold)}.form-success{margin-top:var(--space-3);padding:var(--space-3);background-color:var(--c-gold-tint);border-left:2px solid var(--c-gold);font-size:14px;color:var(--c-ink-soft)}.site-footer{background-color:var(--c-ink);color:var(--c-ivory-deep);padding:var(--space-8) 0 var(--space-4)}.footer-inner{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid rgba(255,255,255,.08)}.footer-brand{display:flex;align-items:flex-start;gap:14px}.footer-brand .brand-mark{border-color:var(--c-gold);color:var(--c-gold-soft);flex-shrink:0}.footer-name{font-family:var(--font-serif);font-size:1.3rem;font-weight:600;line-height:1.1;color:var(--c-ivory);margin-bottom:2px}.footer-descriptor{color:var(--c-gold-soft);margin-bottom:8px}.footer-tagline{font-size:14px;color:#faf8f399;line-height:1.5;max-width:300px}.footer-label{font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:var(--c-gold-soft);margin-bottom:var(--space-3)}.footer-nav a,.footer-contact a{display:block;font-size:14px;color:#faf8f3b3;padding:6px 0;transition:color var(--t-fast)}.footer-nav a:hover,.footer-contact a:hover{color:var(--c-gold-soft)}.footer-bottom{padding-top:var(--space-4);text-align:center}.footer-bottom p{font-size:13px;color:#faf8f373}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}@media (max-width: 960px){.services-grid,.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-item:nth-child(1),.portfolio-item:nth-child(6){grid-column:span 2}.about-layout{grid-template-columns:1fr;gap:var(--space-6)}.about-image{max-width:500px}.workflow-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-6) var(--space-5)}.contact-layout{grid-template-columns:1fr;gap:var(--space-6)}.footer-inner{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}}@media (max-width: 720px){.nav-desktop{display:none}.menu-toggle{display:flex}.section{padding:var(--space-8) 0}.hero{min-height:90vh}.hero-content{padding-top:var(--space-7)}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.services-grid,.portfolio-grid{grid-template-columns:1fr}.portfolio-item:nth-child(1),.portfolio-item:nth-child(6){grid-column:span 1;aspect-ratio:4 / 3}.about-features{grid-template-columns:1fr}.workflow-grid{grid-template-columns:1fr;gap:var(--space-5)}.footer-inner{grid-template-columns:1fr}}@media (max-width: 480px){.container{padding:0 var(--space-3)}.section-title{font-size:1.6rem}.hero-title{font-size:2.2rem}.brand-descriptor{font-size:8px;letter-spacing:.15em}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}html{scroll-behavior:auto}.reveal{opacity:1;transform:none}}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:none;align-items:center;justify-content:center}.lightbox.open{display:flex}.lightbox-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#0f0e0ceb;cursor:pointer}.lightbox-stage{position:relative;z-index:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none}.lightbox-stage.zoomed{cursor:grab}.lightbox-stage.dragging{cursor:grabbing}.lightbox-image{max-width:90vw;max-height:85vh;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;will-change:transform;transform-origin:center center;transition:transform 80ms linear;pointer-events:none}.lightbox-stage.zoomed .lightbox-image{transition:none}.lightbox-close{position:absolute;top:20px;right:20px;z-index:3;display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);border-radius:50%;color:#ffffffe6;cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast)}.lightbox-close:hover{background:#fff3;border-color:#ffffff4d}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:50%;color:#ffffffd9;cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast)}.lightbox-nav:hover{background:#ffffff2e;border-color:#ffffff4d}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-controls{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:6px;padding:8px 14px;background:#141210d9;border:1px solid rgba(255,255,255,.1);border-radius:28px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.lightbox-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:50%;color:#fffc;cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.lightbox-btn:hover{background:#ffffff26;color:#fff}.lightbox-zoom-level{font-family:var(--font-sans);font-size:12px;font-weight:500;color:#ffffffb3;min-width:42px;text-align:center}.lightbox-ctrl-sep{width:1px;height:20px;background:#ffffff26;margin:0 4px}.lightbox-caption{position:absolute;bottom:76px;left:50%;transform:translate(-50%);z-index:3;font-family:var(--font-serif);font-size:15px;font-style:italic;color:#ffffffbf;text-align:center;max-width:80vw;padding:0 20px}.lightbox-counter{position:absolute;top:24px;left:50%;transform:translate(-50%);z-index:3;font-family:var(--font-sans);font-size:13px;font-weight:500;color:#fff9;letter-spacing:.05em}@media (max-width: 720px){.lightbox-image{max-width:95vw;max-height:75vh}.lightbox-close{top:14px;right:14px;width:40px;height:40px}.lightbox-nav{width:42px;height:42px}.lightbox-prev{left:12px}.lightbox-next{right:12px}.lightbox-controls{bottom:16px;padding:6px 10px;gap:4px}.lightbox-btn{width:32px;height:32px}.lightbox-zoom-level{font-size:11px;min-width:36px}.lightbox-caption{bottom:64px;font-size:13px}.lightbox-counter{top:16px;font-size:12px}}@media (max-width: 480px){.lightbox-controls .lightbox-ctrl-sep{margin:0 2px}}
