@import"https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Outfit:wght@300;400;500;600&display=swap";:root{--color-bg-primary: #ffffff;--color-bg-secondary: #f9f9fb;--color-text-primary: #111111;--color-text-secondary: #555555;--color-text-muted: #8c8c8c;--color-accent: #a05a32;--color-accent-hover: #b36b3f;--color-border: #e2e2e7;--color-border-dark: #222222;--font-serif: "Instrument Serif", Georgia, serif;--font-sans: "Outfit", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 8rem;--container-max-width: 1400px;--grid-gap: 2rem;--transition-smooth: all .5s cubic-bezier(.16, 1, .3, 1);--transition-fast: all .2s cubic-bezier(.16, 1, .3, 1);--scroll-indicator-height: 3px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-sans);font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased}body{overflow-x:hidden}a{color:inherit;text-decoration:none;transition:var(--transition-fast)}img,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:400;line-height:1.15;color:var(--color-text-primary);text-wrap:balance}p{font-family:var(--font-sans);font-size:1.05rem;line-height:1.7;color:var(--color-text-secondary);text-wrap:pretty}.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 var(--space-md)}@media (min-width: 768px){.container{padding:0 var(--space-lg)}}header{position:fixed;top:0;left:0;width:100%;z-index:100;background-color:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);transition:var(--transition-smooth)}.header-container{display:flex;justify-content:space-between;align-items:center;height:80px;transition:var(--transition-smooth)}@media (prefers-reduced-motion: no-preference){@supports (animation-timeline: scroll()){@keyframes shrink-header{to{height:60px;background-color:#fffffff2}}.header-container{animation:shrink-header auto linear;animation-timeline:scroll();animation-range:0 100px}}}.logo{font-family:var(--font-serif);font-size:1.5rem;font-weight:400;letter-spacing:-.02em}.logo span{font-family:var(--font-sans);font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:var(--color-accent);margin-left:var(--space-xs);font-weight:500}nav ul{display:flex;list-style:none;gap:var(--space-md)}nav a{font-family:var(--font-sans);font-size:.85rem;font-weight:400;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary)}nav a:hover,nav a.active{color:var(--color-accent)}#progress{position:fixed;left:0;top:0;width:100%;height:var(--scroll-indicator-height);background-color:var(--color-accent);z-index:101;transform-origin:0 50%;transform:scaleX(0)}@media (prefers-reduced-motion: no-preference){@supports (animation-timeline: scroll()){@keyframes grow-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}#progress{animation:grow-progress auto linear;animation-timeline:scroll()}}}main#app{padding-top:80px;min-height:calc(100vh - 80px)}.view-fade{opacity:0;transform:translateY(15px);animation:view-in .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes view-in{to{opacity:1;transform:translateY(0)}}section{padding:var(--space-lg) 0}section.bg-sec{background-color:var(--color-bg-secondary)}.section-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--color-accent);margin-bottom:var(--space-sm);display:block;font-weight:600}.editorial-grid{display:grid;grid-template-columns:1fr;gap:var(--grid-gap)}@media (min-width: 768px){.editorial-grid{grid-template-columns:repeat(12,1fr)}}#back-to-top{position:fixed;bottom:2rem;right:2rem;width:3rem;height:3rem;border-radius:50%;background-color:var(--color-bg-primary);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:99;opacity:0;visibility:hidden;transition:var(--transition-smooth)}#back-to-top.visible{opacity:1;visibility:visible}#back-to-top:hover{background-color:var(--color-text-primary);color:var(--color-bg-primary);border-color:var(--color-text-primary)}footer{border-top:1px solid var(--color-border);padding:var(--space-lg) 0;background-color:var(--color-bg-primary)}.footer-content{display:flex;flex-direction:column;gap:var(--space-md);align-items:center;justify-content:space-between}@media (min-width: 768px){.footer-content{flex-direction:row}}.footer-logo{font-family:var(--font-serif);font-size:1.25rem}.copyright{font-size:.8rem;color:var(--color-text-muted)}.hero-section{min-height:calc(85vh - 80px);display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--color-border)}.hero-title-container{grid-column:span 12}.hero-name{font-size:1.1rem;font-weight:500;text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-secondary);margin-bottom:var(--space-sm);display:block}.hero-tagline{font-size:3.5rem;line-height:1.1;letter-spacing:-.02em;margin-bottom:var(--space-md);max-width:900px}@media (min-width: 768px){.hero-tagline{font-size:5rem}}.hero-cta{display:inline-flex;align-items:center;font-family:var(--font-sans);font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.15em;color:var(--color-accent);border-bottom:2px solid var(--color-accent);padding-bottom:4px;margin-top:var(--space-sm);cursor:pointer;transition:var(--transition-fast)}.hero-cta:hover{color:var(--color-text-primary);border-color:var(--color-text-primary)}.about-grid-left,.about-grid-right{grid-column:span 12}@media (min-width: 768px){.about-grid-left{grid-column:span 4}.about-grid-right{grid-column:span 8}}.about-intro{font-size:1.6rem;line-height:1.4;font-family:var(--font-serif);color:var(--color-text-primary);margin-bottom:var(--space-md)}.about-paragraphs{display:flex;flex-direction:column;gap:var(--space-md)}.about-section-block h3{font-size:1.5rem;margin-bottom:var(--space-xs)}.specialties-grid{grid-column:span 12;display:grid;grid-template-columns:1fr;gap:var(--grid-gap)}@media (min-width: 768px){.specialties-grid{grid-template-columns:repeat(2,1fr)}}.specialty-card{border-top:1px solid var(--color-border-dark);padding-top:var(--space-sm);transition:var(--transition-smooth)}.specialty-title{font-size:1.6rem;font-weight:400;margin-bottom:var(--space-sm)}.specialty-desc{font-size:.95rem;color:var(--color-text-secondary)}.methodology-flow{grid-column:span 12;display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-md)}@media (min-width: 1024px){.methodology-flow{flex-direction:row;overflow-x:auto;padding-bottom:var(--space-md);scroll-snap-type:x mandatory}}.methodology-step{min-width:250px;flex:1;border-top:1px solid var(--color-border);padding-top:var(--space-sm);scroll-snap-align:start}.step-num{font-family:var(--font-sans);font-size:.8rem;font-weight:600;color:var(--color-accent);margin-bottom:var(--space-xs);display:block}.step-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:400;margin-bottom:var(--space-xs)}.step-desc{font-size:.9rem;color:var(--color-text-secondary)}.cases-section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:var(--space-md)}.cases-teaser-grid{grid-column:span 12;display:grid;grid-template-columns:1fr;gap:var(--grid-gap)}@media (min-width: 768px){.cases-teaser-grid{grid-template-columns:repeat(3,1fr)}}.case-card{display:flex;flex-direction:column;gap:var(--space-sm);cursor:pointer;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-md);transition:var(--transition-smooth)}.case-card:hover{transform:translateY(-5px)}.case-card-image{background-color:var(--color-bg-secondary);aspect-ratio:16/10;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--color-border);position:relative}.case-card-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition-smooth)}.case-card:hover .case-card-image img{scale:1.05}.case-card-meta{display:flex;justify-content:space-between;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.case-card-title{font-size:1.6rem;line-height:1.2}.testimonials-grid{grid-column:span 12;display:grid;grid-template-columns:1fr;gap:var(--grid-gap)}@media (min-width: 768px){.testimonials-grid{grid-template-columns:repeat(2,1fr)}}.testimonial-card{padding:var(--space-md);border:1px solid var(--color-border);background-color:var(--color-bg-primary);display:flex;flex-direction:column;justify-content:space-between;min-height:220px}.testimonial-quote{font-family:var(--font-serif);font-size:1.35rem;line-height:1.4;margin-bottom:var(--space-md);font-style:italic}.testimonial-author{font-family:var(--font-sans);font-size:.85rem;font-weight:500}.testimonial-company{font-size:.8rem;color:var(--color-text-muted)}.contact-grid-left,.contact-grid-right{grid-column:span 12}@media (min-width: 768px){.contact-grid-left{grid-column:span 5}.contact-grid-right{grid-column:span 7}}.contact-channels{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:var(--space-md)}.contact-link{display:flex;align-items:center;gap:var(--space-sm);font-size:1.1rem;border-bottom:1px solid var(--color-border);padding:var(--space-xs) 0;transition:var(--transition-fast)}.contact-link:hover{color:var(--color-accent);border-color:var(--color-accent)}.breadcrumb{display:flex;align-items:center;gap:var(--space-xs);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:var(--space-md)}.breadcrumb a:hover{color:var(--color-accent)}.breadcrumb-separator{color:var(--color-border)}.case-detail-header{border-bottom:1px solid var(--color-border);padding-bottom:var(--space-md);margin-bottom:var(--space-lg)}.case-detail-title{font-size:2.5rem;line-height:1.1;margin-bottom:var(--space-md)}@media (min-width: 768px){.case-detail-title{font-size:4rem}}.case-meta-sidebar{grid-column:span 12;display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--space-md);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-md);margin-bottom:var(--space-md)}@media (min-width: 768px){.case-meta-sidebar{grid-column:span 4;flex-direction:column;border-bottom:none;border-right:1px solid var(--color-border);padding-bottom:0;padding-right:var(--space-md);margin-bottom:0}}.meta-item{flex:1 1 150px}.meta-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--space-xs);display:block}.meta-value{font-size:1rem;font-weight:500;color:var(--color-text-primary)}.case-main-body{grid-column:span 12;display:flex;flex-direction:column;gap:var(--space-lg)}@media (min-width: 768px){.case-main-body{grid-column:span 8}}.case-section{display:flex;flex-direction:column;gap:var(--space-sm)}.case-section-title{font-size:1.8rem;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-xs);margin-bottom:var(--space-xs)}.case-section-content{font-size:1.1rem;color:var(--color-text-secondary)}.case-gallery{grid-column:span 12;margin-top:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.gallery-item{border:1px solid var(--color-border);background-color:var(--color-bg-secondary);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm)}.gallery-video-wrapper{position:relative;width:100%;aspect-ratio:16/9;background-color:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.gallery-video-wrapper video{width:100%;height:100%;object-fit:contain}.gallery-caption{font-size:.85rem;color:var(--color-text-muted);font-style:italic}.text-detail-container{max-width:750px;margin:0 auto;padding:var(--space-lg) var(--space-md)}.text-detail-header{border-bottom:1px solid var(--color-border);padding-bottom:var(--space-md);margin-bottom:var(--space-md)}.text-category-badge{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:var(--color-accent);font-weight:600;margin-bottom:var(--space-xs);display:block}.text-detail-title{font-size:2.2rem;line-height:1.2}@media (min-width: 768px){.text-detail-title{font-size:3rem}}.text-detail-meta{font-size:.8rem;color:var(--color-text-muted);margin-top:var(--space-sm)}.text-detail-intro{font-family:var(--font-serif);font-size:1.4rem;line-height:1.5;color:var(--color-text-primary);margin-bottom:var(--space-lg);font-style:italic}.text-detail-body{display:flex;flex-direction:column;gap:var(--space-md)}.text-detail-body p{font-size:1.15rem;line-height:1.8;color:var(--color-text-secondary)}.filter-bar-container{grid-column:span 12;margin-bottom:var(--space-md);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-sm);display:flex;overflow-x:auto;gap:var(--space-md);scrollbar-width:none}.filter-bar-container::-webkit-scrollbar{display:none}.filter-btn{font-family:var(--font-sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:var(--space-xs) 0;position:relative;transition:var(--transition-fast);white-space:nowrap}.filter-btn:hover,.filter-btn.active{color:var(--color-text-primary)}.filter-btn.active:after{content:"";position:absolute;bottom:-9px;left:0;width:100%;height:2px;background-color:var(--color-accent)}.archive-title-section{padding:var(--space-md) 0 var(--space-sm) 0}.archive-title{font-size:3rem;margin-bottom:var(--space-sm)}.archive-grid{grid-column:span 12;display:grid;grid-template-columns:1fr;gap:var(--grid-gap)}@media (min-width: 768px){.archive-grid{grid-template-columns:repeat(3,1fr)}}.texts-feed{grid-column:span 12;display:flex;flex-direction:column;gap:var(--space-md)}.text-feed-item{border-bottom:1px solid var(--color-border);padding-bottom:var(--space-md);display:flex;flex-direction:column;gap:var(--space-xs);cursor:pointer;transition:var(--transition-smooth)}.text-feed-item:hover{transform:translate(10px)}.text-feed-header{display:flex;justify-content:space-between;align-items:center}.text-feed-category{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent);font-weight:600}.text-feed-date{font-size:.75rem;color:var(--color-text-muted)}.text-feed-title{font-size:1.8rem;font-weight:400;line-height:1.2}.text-feed-excerpt{font-size:.95rem;color:var(--color-text-secondary);max-width:800px}
