:root{--bg-color:#f8f7f4;--text-color:#121212;--text-muted:#12121299;--border-color:#12121226;--accent-color:#b54630;--font-serif:"Playfair Display", serif;--font-sans:"Inter", sans-serif;--ease-slow:cubic-bezier(.2, .8, .2, 1)}h1{font-family:var(--font-serif);color:var(--text-color);margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:400;line-height:1.1}h2{font-family:var(--font-serif);color:var(--text-color);margin-bottom:1.5rem;font-size:clamp(2rem,4vw,3rem);font-weight:400}.dashboard-header{border-bottom:1px solid var(--border-color);background:var(--bg-color);z-index:100;position:sticky;top:0}.dashboard-header-inner{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;padding:1.5rem 2rem;display:flex;position:relative}.dashboard-title-row{text-align:center;margin-bottom:3rem}.dashboard-title-row .elegant-title{font-family:var(--font-serif);color:var(--text-color);margin-bottom:.5rem;font-size:2.5rem;font-weight:400}.dashboard-title-row .subtitle{opacity:.6;font-size:.95rem}.dashboard-section{min-height:auto;padding:4rem 2rem}.dashboard-container{max-width:1200px;margin:0 auto}.crm-filters{border-bottom:1px solid var(--border-color);justify-content:center;align-items:center;gap:2.5rem;margin-bottom:3rem;padding-bottom:1.5rem;display:flex}.crm-filters a{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.05em;color:var(--text-color);opacity:.4;align-items:center;font-size:.8rem;text-decoration:none;transition:opacity .3s;display:inline-flex;position:relative}.crm-filters a:hover{opacity:.8}.crm-filters a.is-active{opacity:1;font-weight:600}.crm-filters a.is-active:before{content:"";background-color:var(--accent-color,#b54630);border-radius:50%;width:4px;height:4px;margin-right:8px;display:inline-block}.nav-btn{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;color:var(--text-color);opacity:.6;background:0 0;border:none;font-size:.8rem;transition:opacity .3s}.nav-btn:hover{opacity:1}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-snap-type:y mandatory;-ms-overflow-style:none;scrollbar-width:none;overflow-x:clip}html::-webkit-scrollbar{display:none}html.no-snap{scroll-snap-type:none!important}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.6;overflow-x:clip}a{color:inherit;text-decoration:none}h1,h2,h3,.serif{font-family:var(--font-serif);letter-spacing:-.02em;font-weight:400;line-height:1.1}h1{text-transform:uppercase;font-size:clamp(3.5rem,8vw,7rem)}h2{font-size:clamp(2rem,4vw,3.5rem)}h3{font-size:1.5rem}.italic{font-style:italic}.eyebrow{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--accent-color);margin-bottom:1rem;font-size:.75rem;font-weight:600}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 5%}.section{border-bottom:1px solid var(--border-color);scroll-snap-align:start;flex-direction:column;justify-content:center;min-height:100vh;padding:100px 0 40px;display:flex;position:relative}.site-header{z-index:100;background:var(--bg-color);border-bottom:1px solid var(--border-color);width:100%;transition:padding .4s var(--ease-slow);position:fixed;top:0}.header-inner{justify-content:space-between;align-items:center;height:80px;display:flex}.brand{font-family:var(--font-serif);text-transform:uppercase;letter-spacing:2px;align-items:center;font-size:1.5rem;font-weight:600;display:flex}.nav-link{color:var(--text-color);text-transform:uppercase;letter-spacing:.05em;opacity:.6;align-items:center;font-size:.85rem;text-decoration:none;transition:opacity .3s,font-weight .1s;display:flex;position:relative}.nav-link:hover{opacity:1}.nav-link.is-active{opacity:1;font-weight:600}.nav-link.is-active:before{content:"";background-color:var(--accent-color,#b54630);border-radius:50%;width:4px;height:4px;margin-right:8px;display:inline-block}.brand img{display:block}.main-nav{text-transform:uppercase;letter-spacing:.05em;gap:2rem;font-size:.85rem;display:flex}.main-nav a{position:relative}.main-nav a:after{content:"";background:var(--text-color);transform-origin:100%;width:100%;height:1px;transition:transform .3s;position:absolute;bottom:-4px;left:0;transform:scaleX(0)}.main-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.hero{border-bottom:1px solid var(--border-color);text-align:center;scroll-snap-align:start;flex-direction:column;min-height:100vh;padding-top:100px;padding-bottom:130px;display:flex;position:relative}.hero .container{margin:auto}.hero-lead{max-width:700px;color:var(--text-muted);margin:1.5rem auto;font-size:1.25rem}.hero-cta{color:var(--text-color);text-transform:uppercase;letter-spacing:.05em;z-index:1;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;padding:1.2rem 3.5rem;font-size:1rem;font-weight:700;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative}.hero-cta:before{content:"";background:linear-gradient(90deg, var(--accent-color), #ffffffe6, var(--accent-color), #ffffffe6);-webkit-mask-composite:xor;z-index:-2;background-size:300% 100%;border-radius:12px;padding:3px;animation:3s linear infinite border-flow;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.hero-cta:after{content:"";background:var(--accent-color);z-index:-3;opacity:0;border-radius:12px;transition:opacity .4s;position:absolute;inset:0}@keyframes border-flow{0%{background-position:0%}to{background-position:100%}}.hero-cta:hover{color:#fff;transform:translateY(-4px)}.hero-cta:hover:after{opacity:1}.hero-cta:hover:before{animation-direction:reverse}.hero-cta-icon{transition:transform .4s cubic-bezier(.4,0,.2,1)}.hero-cta:hover .hero-cta-icon{transform:translate(8px)}@media (width<=768px){.hero-cta{width:100%;max-width:320px;padding:1rem 1.5rem;font-size:.9rem}}.trust-band{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);background:var(--bg-color);width:100%;padding:1.5rem 0;position:absolute;bottom:15px;left:0;overflow:hidden}.trust-marquee{align-items:center;gap:80px;min-width:100%;animation:30s linear infinite marquee;display:flex}.trust-marquee-content{white-space:nowrap;will-change:transform;align-items:center;gap:80px;display:flex}.trust-client{font-family:var(--font-serif);color:var(--text-muted);font-size:1.75rem;font-style:italic;text-decoration:none;transition:color .3s}.trust-client.has-link{cursor:pointer}.trust-client:hover{color:var(--text-color)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.editorial-grid{border-top:1px solid var(--border-color);border-left:1px solid var(--border-color);scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none;grid-template-columns:repeat(2,1fr);grid-auto-rows:100%;gap:0;height:55vh;margin-top:2rem;display:grid;overflow-y:auto}.editorial-grid::-webkit-scrollbar{display:none}.editorial-card{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:2.5rem;transition:background .5s,color .6s}.editorial-grid .editorial-card{scroll-snap-align:start}.editorial-card.reveal{transition:background .5s ease, color .6s ease, opacity 1s var(--ease-slow), transform 1s var(--ease-slow)}.editorial-card .eyebrow,.editorial-card h3,.editorial-card p,.editorial-card li{transition:color .6s,opacity .6s,border-color .6s}.editorial-card:hover{background:var(--text-color);color:var(--bg-color)}.editorial-card:hover .eyebrow{color:var(--bg-color);opacity:.7}.editorial-card:hover .button{color:var(--bg-color);border-color:var(--bg-color);background:0 0}.editorial-card:hover .button:not(:disabled):hover{background:var(--bg-color);color:var(--text-color)}.editorial-card:hover h3{color:var(--bg-color)}.editorial-card ul{margin-top:1.5rem;list-style:none}.editorial-card li{border-bottom:1px solid #1212121a;padding:.5rem 0;font-size:.9rem}.editorial-card:hover li{border-bottom-color:#fff3}.pricing-grid{scroll-snap-type:none;border-top:1px solid var(--border-color);border-left:1px solid var(--border-color);grid-template-columns:repeat(3,1fr);grid-auto-rows:auto;gap:0;height:auto;margin-top:1.5rem;display:grid;overflow-y:visible}.pricing-grid .editorial-card{padding:1.5rem 2rem}.pricing-grid .editorial-card li{padding:.2rem 0;font-size:.85rem}.timeline-list{border-top:1px solid var(--border-color);margin-top:2rem}.timeline-row{border-bottom:1px solid var(--border-color);grid-template-columns:80px 1fr 1fr;align-items:center;padding:1.5rem 0;display:grid}.timeline-number{font-family:var(--font-serif);color:var(--border-color);font-size:2.5rem;font-style:italic;line-height:1}.contact-grid{grid-template-columns:1fr 1.5fr;gap:4rem;margin-top:4rem;display:grid}.floating-group{border-bottom:1px solid var(--border-color);margin-bottom:2rem;padding-top:1.5rem;padding-bottom:.5rem;transition:border-color .4s;position:relative}.floating-group:focus-within{border-bottom-color:var(--text-color)}.floating-group input,.floating-group textarea{width:100%;font-family:var(--font-serif);color:var(--text-color);resize:none;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;background:0 0;border:none;border-radius:0;outline:none;margin-top:.8rem;padding:0;font-size:1.1rem;line-height:1.6}.floating-group textarea{height:7.04rem;display:block}.floating-group textarea::-webkit-scrollbar{width:4px}.floating-group textarea::-webkit-scrollbar-track{background:0 0}.floating-group textarea::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.floating-group textarea::-webkit-scrollbar-thumb:hover{background:var(--text-color)}.floating-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);pointer-events:none;white-space:nowrap;font-size:.8rem;transition:all .3s;position:absolute;top:2.3rem;left:0}.floating-group input:focus~.floating-label,.floating-group input:not(:placeholder-shown)~.floating-label,.floating-group textarea:focus~.floating-label,.floating-group textarea:not(:placeholder-shown)~.floating-label{color:var(--text-color);font-size:.65rem;top:0}.service-tags-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:1rem;font-size:.85rem;display:block}.service-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.service-tag{border:1px solid var(--border-color);font-family:var(--font-sans);color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:2rem;padding:.5rem 1.2rem;font-size:.85rem;transition:all .3s;display:inline-block}.service-tag:hover{border-color:var(--text-color);color:var(--text-color)}.service-tag input[type=radio]{display:none}.service-tag.is-active{background:var(--text-color);color:var(--bg-color);border-color:var(--text-color)}.checkbox-label{font-family:var(--font-sans);color:var(--text-muted);cursor:pointer;align-items:center;gap:1rem;margin-bottom:1.5rem;font-size:.85rem;display:flex}.checkbox-label input{width:auto;accent-color:var(--text-color)}.button{text-align:center;background:var(--text-color);width:100%;min-height:44px;color:var(--bg-color);text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--text-color);cursor:pointer;justify-content:center;align-items:center;padding:1rem 2.5rem;font-size:.85rem;transition:all .6s;display:flex}.button:not(:disabled):hover{color:var(--text-color);background:0 0}.button:disabled{cursor:not-allowed}.hamburger,.slider-dots{display:none}@media (width<=768px){html{scroll-snap-type:none!important}.editorial-grid,.pricing-grid{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;border:none;flex-direction:row;gap:2rem;width:100%;height:auto;display:flex;overflow:auto hidden}.editorial-grid::-webkit-scrollbar{display:none}.pricing-grid::-webkit-scrollbar{display:none}.editorial-grid .editorial-card,.pricing-grid .editorial-card{box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;border:1px solid var(--border-color);border-radius:8px;flex:0 0 100%;width:100%;min-width:100%;max-width:100%;height:max-content;padding:2rem 1.5rem}.slider-dots{justify-content:center;gap:.5rem;margin-top:1rem;padding-bottom:1.5rem;display:flex}.slider-dots .dot{background-color:var(--border-color);cursor:pointer;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background-color .3s,transform .3s}.slider-dots .dot.active{background-color:var(--text-color);transform:scale(1.3)}.timeline-row{grid-template-columns:1fr;gap:1rem}.contact-grid{grid-template-columns:1fr}.main-nav{background:var(--bg-color);z-index:90;opacity:0;pointer-events:none;width:100%;height:100vh;transition:opacity .4s var(--ease-slow);flex-direction:column;justify-content:center;align-items:center;gap:3rem;display:flex;position:fixed;top:0;left:0}.main-nav.is-open{opacity:1;pointer-events:auto}.main-nav a{font-size:2rem}.hamburger{cursor:pointer;z-index:100;-webkit-tap-highlight-color:transparent;background:0 0;border:none;outline:none;width:24px;height:16px;padding:0;display:block;position:relative}.hamburger span{background:var(--text-color);will-change:transform, opacity;border-radius:0;width:100%;height:2px;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s;position:absolute;left:0}.hamburger span:first-child{top:0}.hamburger span:nth-child(2){top:7px}.hamburger span:nth-child(3){top:14px}.hamburger.is-active span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.is-active span:nth-child(2){opacity:0}.hamburger.is-active span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}}.reveal{opacity:0;transition:opacity 1s var(--ease-slow), transform 1s var(--ease-slow);transform:translateY(30px)}.reveal.is-visible{opacity:1;transform:translateY(0)}
