:root{--color-bg:#12110d;--color-bg-raised:#1c1b15;--color-bg-raised-2:#23221b;--color-border:#ffffff14;--color-text:#f4f2ea;--color-text-muted:#a8a599;--color-text-dim:#6e6c61;--color-accent:#d8c9a3;--color-accent-strong:#e8d9ae;--font-serif:"Playfair Display", "Times New Roman", Georgia, serif;--font-sans:"Inter", "Geist", -apple-system, BlinkMacSystemFont, sans-serif;--container:1240px;--gutter:clamp(20px, 5vw, 64px);--radius-lg:28px;--radius-md:18px;--radius-sm:12px;--radius-pill:999px;--ease:cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p{margin:0}.container{max-width:var(--container);padding:0 var(--gutter);margin:0 auto}.kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--color-accent);margin-bottom:16px;font-size:12px;font-weight:600;display:inline-block}.section-title{font-family:var(--font-serif);letter-spacing:-.01em;font-size:clamp(34px,5vw,56px);font-weight:500;line-height:1.08}.section-subtitle{color:var(--color-text-muted);max-width:480px;margin-top:16px;font-size:17px;line-height:1.6}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:56px;display:flex}section.block{padding:clamp(64px,10vw,140px) 0}.btn{border-radius:var(--radius-pill);transition:transform .35s var(--ease), opacity .35s var(--ease), background .3s;white-space:nowrap;border:1px solid #0000;align-items:center;gap:10px;padding:14px 24px;font-size:14px;font-weight:500;display:inline-flex}.btn:hover{transform:scale(1.035)}.btn-primary{color:#111;background:#fff}.btn-primary:hover{opacity:.9}.btn-primary .arrow{transition:transform .3s var(--ease)}.btn-primary:hover .arrow{transform:translate(3px,-3px)}.btn-outline{color:var(--color-text);border-color:var(--color-border);background:0 0}.btn-outline:hover{background:#ffffff0f}.site-header{z-index:100;padding:22px var(--gutter);justify-content:space-between;align-items:center;gap:24px;display:flex;position:fixed;top:0;left:0;right:0}.site-header.is-scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--color-border);background:#12110db8}.logo{font-family:var(--font-serif);font-size:22px;font-weight:500}.logo .dot{color:var(--color-accent)}.header-info{gap:28px;display:flex}.header-info .info-item{font-size:12px}.info-label{color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-size:10.5px;display:block}.info-value{color:var(--color-text);font-weight:500}.info-value.accent{color:var(--color-accent)}.dot-live{background:#7cdb8a;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block;box-shadow:0 0 0 3px #7cdb8a26}.main-nav{gap:32px;display:flex}.main-nav a{padding:4px 0;font-size:14px;position:relative}.main-nav a:after{content:"";background:var(--color-text);transform-origin:100%;width:100%;height:1px;transition:transform .35s var(--ease);position:absolute;bottom:0;left:0;transform:scaleX(0)}.main-nav a:hover:after,.main-nav a.active:after{transform-origin:0;transform:scaleX(1)}.main-nav a.active{color:var(--color-accent)}.header-right{align-items:center;gap:24px;display:flex}.nav-toggle{display:none}.hero-section{flex-direction:column;justify-content:flex-end;min-height:780px;padding-top:140px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;position:absolute;inset:0}.hero-bg-image{object-fit:cover;object-position:center;width:100%;height:100%}.hero-bg-overlay{background:linear-gradient(#12110d4d 0%,#12110da8 45%,#12110df7 100%),linear-gradient(100deg,#12110dbf 0%,#12110d40 42%,#12110d00 68%);position:absolute;inset:0}.hero-body{z-index:2;grid-template-columns:1.2fr 1fr;align-items:end;gap:40px;padding-bottom:56px;display:grid;position:relative}.hero-eyebrow{color:var(--color-accent);letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px;font-size:12px;font-weight:600}.hero-title{font-family:var(--font-serif);letter-spacing:-.02em;margin-bottom:28px;font-size:clamp(48px,7vw,92px);line-height:1.02}.hero-quote{font-family:var(--font-sans);color:var(--color-text-muted);text-align:right;font-size:17px;font-style:italic;font-weight:400;line-height:1.75}.hero-quote b{color:var(--color-text);font-style:normal;font-weight:500}.hero-signature{font-family:var(--font-serif);color:var(--color-accent);text-align:right;margin-top:16px;font-size:26px;font-style:italic}.reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--ease);transform:translateY(30px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.cards-grid{grid-template-columns:repeat(2,1fr);gap:40px 32px;display:grid}.project-card{border-radius:var(--radius-lg);background:var(--color-bg-raised);transition:opacity .5s var(--ease), transform .5s var(--ease);display:block;overflow:hidden}.project-card.is-hidden{display:none}.project-card-media{border-radius:var(--radius-lg);aspect-ratio:4/3;overflow:hidden}.project-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease)}.project-card:hover .project-card-media img{transform:scale(1.06)}.project-card-meta{padding:24px 10px 8px}.project-card-tags{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);margin-bottom:10px;font-size:11px}.project-card-title{font-family:var(--font-serif);font-size:22px;line-height:1.3}.section-cta{text-align:center;margin-top:48px}.filter-bar{flex-wrap:wrap;gap:10px;margin-bottom:40px;display:flex}.filter-pill{border-radius:var(--radius-pill);color:var(--color-text);transition:all .3s var(--ease);background:#ffffff0a;border:1px solid #ffffff2e;padding:10px 20px;font-size:13px;font-weight:500}.filter-pill:hover{color:var(--color-text);background:#ffffff1f;border-color:#fff6}.filter-pill.active{color:#111;background:#fff;border-color:#fff}.stats-bar{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(2,1fr);gap:40px;padding:56px 0;display:grid}.stat-item .stat-value{font-family:var(--font-serif);color:var(--color-accent);font-size:clamp(40px,6vw,72px);line-height:1}.stat-item .stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);max-width:320px;margin-top:14px;font-size:12px}.services-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.service-card{background:var(--color-bg-raised);border-radius:var(--radius-lg);transition:background .4s var(--ease), transform .4s var(--ease);padding:32px 24px}.service-card:hover{background:var(--color-bg-raised-2);transform:translateY(-6px)}.service-card h3{font-family:var(--font-serif);margin-bottom:12px;font-size:21px}.service-card p{color:var(--color-text-muted);margin-bottom:16px;font-size:14px;line-height:1.6}.service-tags{flex-wrap:wrap;gap:6px;display:flex}.service-tags span{border-radius:var(--radius-pill);border:1px solid var(--color-border);color:var(--color-text-dim);padding:5px 10px;font-size:11px}.services-grid:has(.service-card:only-child){grid-template-columns:1fr}.services-grid:has(.service-card:only-child) .service-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:40px;padding:36px 40px;display:flex}.services-grid:has(.service-card:only-child) .service-card .service-copy{max-width:460px}.services-grid:has(.service-card:only-child) .service-card h3{margin-bottom:8px}.services-grid:has(.service-card:only-child) .service-card p{margin-bottom:0}.services-grid:has(.service-card:only-child) .service-tags{justify-content:flex-end;max-width:380px}.timeline-list{position:relative}.timeline-item{border-top:1px solid var(--color-border);grid-template-columns:90px 1fr;gap:32px;padding:36px 0;display:grid}.timeline-item:last-child{border-bottom:1px solid var(--color-border)}.timeline-number{font-family:var(--font-serif);color:var(--color-accent);font-size:20px}.timeline-content h3{font-family:var(--font-serif);margin-bottom:8px;font-size:26px}.timeline-content p{color:var(--color-text-muted);max-width:560px}.pricing-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.pricing-card{border-radius:var(--radius-lg);background:var(--color-bg-raised);border:1px solid var(--color-border);padding:40px}.pricing-card.highlighted{border-color:var(--color-accent);background:linear-gradient(160deg,#26241a,#1c1b15)}.pricing-card h3{font-family:var(--font-serif);margin-bottom:8px;font-size:26px}.pricing-price{color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:24px;font-size:13px}.pricing-features{margin-bottom:32px}.pricing-features li{border-top:1px solid var(--color-border);color:var(--color-text-muted);padding:10px 0;font-size:14px}.pricing-features li:first-child{border-top:none}.testimonial-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:48px;display:grid}.testimonial-card{background:var(--color-bg-raised);border-radius:var(--radius-lg);padding:32px}.testimonial-card p.quote{color:var(--color-text-muted);margin-bottom:24px;font-size:15px;line-height:1.6}.testimonial-author{align-items:center;gap:12px;display:flex}.testimonial-author img{object-fit:cover;border-radius:50%;width:40px;height:40px}.testimonial-author .name{font-size:14px;font-weight:500}.testimonial-author .role{color:var(--color-text-dim);font-size:12px}.testimonial-counter{text-align:center}.archive-badge{letter-spacing:.08em;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-dim);margin-bottom:24px;padding:8px 16px;font-size:11px;display:inline-block}.marquee-wrap{margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter);overflow:hidden}.marquee-track{gap:16px;width:max-content;animation:34s linear infinite marquee-scroll;display:flex}.marquee-wrap:hover .marquee-track{animation-play-state:paused}.archive-item{background:var(--color-bg-raised);border-radius:var(--radius-md);justify-content:space-between;align-items:baseline;gap:16px;min-width:220px;padding:24px 28px;display:flex}.archive-item .name{font-family:var(--font-serif);font-size:16px}.archive-item .year{color:var(--color-accent);font-size:13px}.cta-banner{text-align:center}.cta-banner .quote{font-family:var(--font-serif);color:var(--color-text-muted);max-width:620px;margin:0 auto 32px;font-size:22px;font-style:italic}.cta-banner .banner-title{margin-bottom:32px;font-size:clamp(40px,7vw,88px)}.cta-banner .banner-title .light{font-family:var(--font-serif);color:var(--color-text-dim);font-weight:400}.cta-banner .banner-title .bold{font-family:var(--font-serif);color:var(--color-text);font-weight:600}.faq-list{max-width:760px}.faq-item{border-top:1px solid var(--color-border)}.faq-item:last-child{border-bottom:1px solid var(--color-border)}.faq-question{width:100%;color:var(--color-text);text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;padding:24px 0;font-size:17px;display:flex}.faq-icon{color:var(--color-accent);transition:transform .35s var(--ease);flex-shrink:0;margin-left:20px;font-size:20px}.faq-item.open .faq-icon{transform:rotate(45deg)}.faq-answer{transition:grid-template-rows .4s var(--ease);grid-template-rows:0fr;display:grid}.faq-answer-inner{overflow:hidden}.faq-item.open .faq-answer{grid-template-rows:1fr}.faq-answer p{color:var(--color-text-muted);max-width:600px;padding-bottom:24px;line-height:1.6}.contact-title{margin-bottom:20px;font-size:clamp(44px,8vw,100px)}.contact-title .light{font-family:var(--font-serif);color:var(--color-text-dim);font-weight:400}.contact-title .bold{font-family:var(--font-serif);font-weight:600}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:64px;display:grid}.form-field{margin-bottom:20px}.form-field label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-dim);margin-bottom:8px;font-size:12px;display:block}.form-field input,.form-field textarea{background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;color:var(--color-text);font-family:var(--font-sans);resize:vertical;padding:14px 16px;font-size:15px}.form-field textarea{min-height:140px}.form-field input:focus,.form-field textarea:focus{border-color:var(--color-accent);outline:none}.form-note{color:var(--color-text-dim);margin-top:16px;font-size:13px}.form-success{color:var(--color-accent);margin-top:16px;font-size:14px;display:none}.form-success.visible{display:block}.principles-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.principle-card{background:var(--color-bg-raised);border-radius:var(--radius-lg);padding:32px}.principle-card h3{font-family:var(--font-serif);margin-bottom:10px;font-size:22px}.principle-card p{color:var(--color-text-muted);font-size:14px;line-height:1.6}.richtext-body{color:var(--color-text-muted);max-width:720px;margin-top:24px;font-size:17px;line-height:1.75}.about-gallery{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.about-gallery img{border-radius:var(--radius-lg);aspect-ratio:3/4;object-fit:cover}.posts-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.post-card{border-radius:var(--radius-lg);background:var(--color-bg-raised);display:block;overflow:hidden}.post-card-media{aspect-ratio:16/10;overflow:hidden}.post-card-media img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease)}.post-card:hover .post-card-media img{transform:scale(1.06)}.post-card-meta{padding:20px 24px 24px}.post-card-cat{letter-spacing:.1em;color:var(--color-accent);text-transform:uppercase;font-size:11px}.post-card-date{color:var(--color-text-dim);margin:6px 0 12px;font-size:12px}.post-card-title{font-family:var(--font-serif);font-size:22px}.project-hero{padding-top:160px}.project-client{color:var(--color-text-dim);font-family:var(--font-serif);align-items:center;gap:8px;margin-bottom:16px;font-size:16px;font-style:italic;display:flex}.project-hero-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px;display:flex}.project-hero-title{font-family:var(--font-serif);max-width:620px;font-size:clamp(38px,6vw,64px);line-height:1.08}.project-hero-tagline{color:var(--color-text-muted);text-align:right;max-width:340px;font-size:16px}.project-cover{border-radius:var(--radius-lg);margin-bottom:40px;overflow:hidden}.project-cover img{aspect-ratio:16/9;object-fit:cover;width:100%}.project-meta-row{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;gap:40px;margin-bottom:24px;padding-bottom:24px;display:flex}.project-meta{flex-wrap:wrap;gap:40px;display:flex}.project-meta .meta-item .info-label{margin-bottom:6px}.project-hero-summary{color:var(--color-text-muted);max-width:420px;font-size:16px;line-height:1.6}.project-live-link{font-family:var(--font-serif);align-items:center;gap:8px;margin-bottom:64px;font-size:18px;display:inline-flex}.project-meta-row+.project-section{margin-top:64px}.project-live-link .arrow{transition:transform .3s var(--ease)}.project-live-link:hover .arrow{transform:translate(3px,-3px)}.project-section{margin-bottom:56px}.project-section-head{grid-template-columns:1fr 1fr;align-items:start;gap:40px;margin-bottom:32px;display:grid}.project-section-head h2{font-family:var(--font-serif);color:var(--color-accent);font-size:clamp(34px,5vw,52px);line-height:1.05}.project-section-body{max-width:560px}.project-section-headline{font-family:var(--font-serif);margin-bottom:16px;font-size:clamp(22px,3vw,30px);line-height:1.3}.project-section-text{color:var(--color-text-muted);font-size:16px;line-height:1.75}.project-section-gallery{grid-template-columns:1fr 1fr;gap:20px;display:grid}.project-section-gallery img{border-radius:var(--radius-lg);object-fit:cover;aspect-ratio:4/3;width:100%}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:24px;display:grid}.metric-card{background:var(--color-bg-raised);border-radius:var(--radius-md);text-align:center;padding:28px 20px}.metric-value{font-family:var(--font-serif);color:var(--color-accent);font-size:34px}.metric-label{color:var(--color-text-muted);margin-top:8px;font-size:12px}.more-projects-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.site-footer{border-top:1px solid var(--color-border);padding:64px 0 32px}.footer-top{flex-wrap:wrap;justify-content:space-between;gap:40px;margin-bottom:48px;display:flex}.footer-nav{flex-wrap:wrap;gap:28px;display:flex}.footer-socials{gap:20px;display:flex}.footer-bottom{color:var(--color-text-dim);border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:24px;font-size:13px;display:flex}.not-found{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:90vh;padding-top:100px;display:flex}.not-found h1{font-family:var(--font-serif);color:var(--color-accent);font-size:clamp(80px,16vw,180px)}.not-found p{color:var(--color-text-muted);margin:16px 0 32px}#app{animation:page-fade .5s var(--ease)}@keyframes page-fade{0%{opacity:0}to{opacity:1}}@media (width<=1024px){.header-info{display:none}.cards-grid,.services-grid,.pricing-grid,.testimonial-grid,.principles-grid,.metrics-grid,.about-gallery,.posts-grid,.more-projects-grid,.services-grid{grid-template-columns:repeat(2,1fr)}.hero-body{text-align:left;grid-template-columns:1fr}.hero-quote,.hero-signature{text-align:left}.project-section-head,.project-section-gallery{grid-template-columns:1fr}.project-hero-head{flex-direction:column;align-items:flex-start}.project-hero-tagline{text-align:left}}@media (width<=720px){.main-nav{top:74px;left:var(--gutter);right:var(--gutter);background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);opacity:0;visibility:hidden;transition:opacity .3s var(--ease), transform .3s var(--ease), visibility .3s;flex-direction:column;gap:4px;padding:12px;display:flex;position:fixed;transform:translateY(-8px)}.main-nav.is-open{opacity:1;visibility:visible;transform:translateY(0)}.main-nav a{padding:12px 10px}.main-nav a:after{display:none}.nav-toggle{color:var(--color-text);background:0 0;border:none;font-size:22px;display:block}.cards-grid,.services-grid,.pricing-grid,.testimonial-grid,.principles-grid,.stats-bar,.metrics-grid,.about-gallery,.posts-grid,.more-projects-grid,.contact-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:10px}.section-head{flex-direction:column;align-items:flex-start}.metrics-grid{grid-template-columns:repeat(2,1fr)}.hero-section{min-height:620px}}
