:root{--ink:#050805;--ink-light:#6b6b6b;--paper:#f8f6f3;--accent:#1e391f;--accent-dark:#142814;--accent-light:#3d6b3e;--muted:#6b6b6b;--border:#e0ddd8}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:DM Sans,sans-serif;line-height:1.6;overflow-x:hidden}body:before{content:"";opacity:.03;pointer-events:none;z-index:1000;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");width:100%;height:100%;position:fixed;top:0;left:0}.container{max-width:1200px;margin:0 auto;padding:0 2rem}header{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8f6f3e6;border-bottom:1px solid #0000;padding:1.5rem 0;transition:border-color .3s;position:fixed;top:0;left:0;right:0}header.scrolled{border-bottom-color:var(--border)}header .container{justify-content:space-between;align-items:center;display:flex}.logo{color:var(--ink);align-items:center;gap:1rem;text-decoration:none;display:flex}.logo img,.logo svg{width:auto;height:44px}.logo-img{max-height:44px}.logo-text{letter-spacing:-.02em;font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600}nav{align-items:center;gap:2.5rem;display:flex}nav a{color:var(--muted);font-size:.9rem;font-weight:500;text-decoration:none;transition:color .2s;position:relative}nav a:after{content:"";background:var(--ink);width:0;height:1px;transition:width .3s;position:absolute;bottom:-4px;left:0}nav a:hover,nav a.active{color:var(--ink)}nav a:hover:after{width:100%}.nav-cta{background:var(--ink);border-radius:2px;padding:.75rem 1.5rem;color:var(--paper)!important}.nav-cta:after{display:none}.nav-cta:hover,.nav-cta.active{background:var(--accent)}.mobile-toggle{cursor:pointer;z-index:101;background:0 0;border:none;padding:.5rem;display:none}.mobile-toggle span{background:var(--ink);width:24px;height:2px;margin:5px 0;transition:all .3s;display:block}.mobile-toggle.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.mobile-toggle.active span:nth-child(2){opacity:0}.mobile-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.mobile-nav{background:var(--paper);z-index:99;flex-direction:column;justify-content:center;align-items:center;gap:2rem;display:none;position:fixed;inset:0}.mobile-nav.active{display:flex}.mobile-nav a{color:var(--ink);font-family:Cormorant Garamond,serif;font-size:2rem;text-decoration:none;transition:color .2s}.mobile-nav a:hover{color:var(--accent)}.mobile-nav .nav-cta{background:var(--ink);color:var(--paper);border-radius:2px;padding:1rem 2rem;font-family:DM Sans,sans-serif;font-size:1rem}section{padding:8rem 0;position:relative}.section-divider{position:relative}.section-divider:before{content:"";background:var(--border);width:80px;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.section-divider-light:before{background:#ffffff26}.section-label{letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;font-size:.75rem;font-weight:600;display:block}.section-title{letter-spacing:-.02em;margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4vw,3rem);font-weight:500}.page-hero{background:var(--ink);color:var(--paper);padding:7rem 0 2.5rem}.page-hero .section-label{color:var(--accent-light);margin-bottom:.5rem}.page-hero h1{letter-spacing:-.02em;margin-bottom:.75rem;font-family:Cormorant Garamond,serif;font-size:clamp(2rem,4vw,3rem);font-weight:500;line-height:1.2}.page-hero p{color:#ffffffb3;max-width:600px;font-size:1rem;line-height:1.5}.page-hero.centered{text-align:center}.page-hero.centered p{margin:0 auto}.hero{align-items:center;min-height:100vh;padding-top:100px;display:flex;position:relative}.hero-content{grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;display:grid}.hero-text h1{letter-spacing:-.03em;margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:clamp(3rem,6vw,4.5rem);font-weight:500;line-height:1.1}.hero-text h1>span{color:var(--accent);display:block}.shuffle-scramble{font-family:JetBrains Mono,SF Mono,Monaco,Inconsolata,Fira Mono,Droid Sans Mono,Source Code Pro,ui-monospace,monospace;font-size:.6em;font-weight:400}.shuffle-revealed{font-family:inherit}.hero-text p{color:var(--muted);max-width:480px;margin-bottom:2.5rem;font-size:1.15rem;line-height:1.7}.hero-cta{background:var(--ink);color:var(--paper);border-radius:2px;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.hero-cta:hover{background:var(--accent);transform:translate(4px)}.hero-cta svg{transition:transform .3s}.hero-cta:hover svg{transform:translate(4px)}.hero-visual{justify-content:center;align-items:center;height:500px;display:flex;position:relative;overflow:visible}.data-grid{perspective:1000px;aspect-ratio:1;grid-template-columns:repeat(16,1fr);gap:2px;width:100%;max-width:500px;margin:0 auto;display:grid;position:relative;overflow:visible}.data-cell{background:var(--border);opacity:0;will-change:transform,background-color;aspect-ratio:1;border-radius:1px;transition:transform .4s cubic-bezier(.34,1.56,.64,1);animation:.5s forwards fadeInCell}.data-cell.active{background:var(--accent)}.data-cell.highlight{background:var(--ink)}@media (hover:hover) and (pointer:fine){.data-cell.proximity-1{transform:scale(1.5);background:var(--ink)!important}.data-cell.proximity-2{transform:scale(1.3);background:var(--accent)!important}.data-cell.proximity-3{transform:scale(1.15);background:var(--accent-light)!important}}@keyframes fadeInCell{to{opacity:1}}.services{background:var(--ink);color:var(--paper)}.services .section-label{color:var(--accent-light)}.service-card{border:1px solid #ffffff1a;border-radius:4px;padding:2.5rem;transition:all .3s;position:relative;overflow:hidden}.service-card:before{content:"";background:linear-gradient(90deg,var(--accent-light),transparent);opacity:0;width:100%;height:3px;transition:opacity .3s;position:absolute;top:0;left:0}.service-card:hover{border-color:#ffffff40;transform:translateY(-4px)}.service-card:hover:before{opacity:1}.service-icon{width:48px;height:48px;color:var(--accent-light);margin-bottom:1.5rem}.services-cta{text-align:center;margin-top:3rem}.services-cta a{color:var(--accent-light);align-items:center;gap:.5rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.services-cta a:hover{color:var(--paper)}.services-cta svg{transition:transform .2s}.services-cta a:hover svg{transform:translate(4px)}.services-detail{padding:0}.service-block{border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;align-items:center;gap:4rem;padding:4rem 0;display:grid}.service-block:last-child{border-bottom:none}.service-block:nth-child(2n){direction:rtl}.service-block:nth-child(2n)>*{direction:ltr}.service-block h2{letter-spacing:-.02em;margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;font-weight:500}.service-block>div>p{color:var(--muted);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}.service-features{margin-top:2rem;list-style:none}.service-features li{border-bottom:1px solid var(--border);align-items:center;gap:1rem;padding:.75rem 0;font-size:.95rem;display:flex}.service-features li:last-child{border-bottom:none}.service-features li:before{content:"→";color:var(--accent);font-weight:700}.service-visual{background:var(--ink);border-radius:8px;justify-content:center;align-self:stretch;align-items:center;min-height:350px;padding:3rem;display:flex}.service-visual svg{width:120px;height:120px;color:var(--accent-light)}.service-visual-image{align-self:stretch;padding:0;display:flex;overflow:hidden}.service-visual-image img{object-fit:cover;filter:grayscale(20%);width:100%;height:100%;min-height:350px;transition:filter .3s,transform .3s}.service-block:hover .service-visual-image img{filter:grayscale(0%);transform:scale(1.02)}.service-link{color:var(--accent);align-items:center;gap:.5rem;margin-top:1.5rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:color .2s,gap .2s;display:inline-flex}.service-link:hover{color:var(--ink);gap:.75rem}.service-link svg{transition:transform .2s}.service-link:hover svg{transform:translate(4px)}.more-services{padding:6rem 0}.services-grid{grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem;display:grid}.service-card{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:8px;padding:2rem;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}.service-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 20px #00000014}.service-card-icon{background:var(--ink);border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1.5rem;display:flex}.service-card-icon svg{width:24px;height:24px;color:var(--accent-light)}.service-card h3{margin-bottom:.75rem;font-family:Cormorant Garamond,serif;font-size:1.35rem;font-weight:600}.service-card p{color:var(--muted);font-size:.95rem;line-height:1.6}.about-content{grid-template-columns:1fr 1fr;align-items:center;gap:6rem;display:grid}.about-text p{color:var(--muted);margin-bottom:1.5rem;font-size:1.05rem}.about-cta{margin-top:2rem}.about-cta a{color:var(--accent);align-items:center;gap:.5rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.about-cta a:hover{color:var(--ink)}.about-cta svg{transition:transform .2s}.about-cta a:hover svg{transform:translate(4px)}.story{padding:3rem 0}.story-content{grid-template-columns:1fr 1fr;align-items:start;gap:4rem;display:grid}.story-text h2{letter-spacing:-.02em;margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;font-weight:500}.story-text p{color:var(--muted);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}.story-image{background:var(--ink);border-radius:8px;justify-content:center;align-items:center;min-height:100%;padding:4rem;display:flex}.story-image img{filter:invert();max-width:300px}.story-image-photo{min-height:350px;padding:0;overflow:hidden}.story-image-photo img{object-fit:cover;filter:none;width:100%;max-width:none;height:100%;min-height:350px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.stat{text-align:center;background:#fff;border-radius:4px;padding:.5rem;box-shadow:0 2px 20px #0000000a}.stat-number{color:var(--accent);margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:3rem;font-weight:600;line-height:1}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.stats-section{background:var(--ink);color:var(--paper);padding:5rem 0}.stats-section .stats-grid{grid-template-columns:repeat(4,1fr)}.stats-section .stat{box-shadow:none;background:0 0}.stats-section .stat-number{color:var(--accent-light);font-size:3.5rem}.stats-section .stat-label{color:#fff9}.values{background:linear-gradient(180deg,var(--paper)0%,#f0ede8 100%);padding:6rem 0}.values-header{text-align:center;max-width:600px;margin:0 auto 4rem}.values-header h2{margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;font-weight:500}.values-header p{color:var(--muted)}.values-grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.value-card{background:#fff;border-radius:8px;padding:2.5rem;box-shadow:0 2px 20px #0000000a}.value-card h3{margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:1.5rem}.value-card p{color:var(--muted);font-size:.95rem;line-height:1.7}.value-icon{width:48px;height:48px;color:var(--accent);margin-bottom:1.5rem}.approach{padding:6rem 0 2rem}.approach-content{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.approach-text h2{margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;font-weight:500}.approach-text p{color:var(--muted);margin-bottom:1.5rem;font-size:1.05rem;line-height:1.8}.approach-list{margin-top:2rem;list-style:none}.approach-list li{border-bottom:1px solid var(--border);align-items:flex-start;gap:1rem;padding:1rem 0;display:flex}.approach-list li:last-child{border-bottom:none}.approach-list strong{color:var(--ink);margin-bottom:.25rem;display:block}.approach-list span{color:var(--muted);font-size:.95rem}.list-number{color:var(--accent);min-width:30px;font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:600}.contact{background:linear-gradient(180deg,var(--paper)0%,#f0ede8 100%)}.contact-content{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.contact-section{padding:6rem 0}.contact-grid{grid-template-columns:1fr 1.2fr;gap:4rem;display:grid}.contact-info h2,.contact-info h3{margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:1.75rem}.contact-info p{color:var(--muted);margin-bottom:2rem;line-height:1.7}.contact-details,.contact-methods{list-style:none}.contact-details li,.contact-methods li{border-bottom:1px solid var(--border);align-items:center;gap:1rem;padding:1rem 0;display:flex}.contact-details li:last-child,.contact-methods li:last-child{border-bottom:none}.contact-details svg,.contact-methods svg{width:20px;height:20px;color:var(--accent);flex-shrink:0}.contact-methods svg{width:24px;height:24px;margin-top:2px}.contact-methods strong{margin-bottom:.25rem;display:block}.contact-methods span{color:var(--muted);font-size:.95rem}.contact-details a,.contact-methods a{color:var(--ink);text-decoration:none;transition:color .2s}.contact-details a:hover,.contact-methods a:hover{color:var(--accent)}.contact-cta{border-top:1px solid var(--border);margin-top:2rem;padding-top:2rem}.contact-cta a{color:var(--accent);align-items:center;gap:.5rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.contact-cta a:hover{color:var(--ink)}.contact-image{border-radius:8px;width:100%;height:200px;margin-top:2rem;overflow:hidden}.contact-image img{object-fit:cover;width:100%;height:100%}.response-time{background:#f0ede8;border-radius:8px;padding:1.5rem}.response-time h3{margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.25rem}.response-time p{color:var(--muted);margin-bottom:0;font-size:.95rem}.contact-form{background:#fff;border-radius:4px;padding:3rem;box-shadow:0 4px 30px #0000000f}.contact-form h2{margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.75rem;font-weight:500}.contact-form>p{color:var(--muted);margin-bottom:2rem;font-size:.95rem}.form-row{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.form-group{margin-bottom:1.5rem}.form-group.full-width{grid-column:1/-1}.form-group label{color:var(--ink);margin-bottom:.5rem;font-size:.85rem;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border);background:var(--paper);border-radius:2px;width:100%;padding:1rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent);outline:none}.form-group textarea{resize:vertical;min-height:120px}.form-group select{cursor:pointer}.submit-btn{background:var(--ink);width:100%;color:var(--paper);cursor:pointer;border:none;border-radius:2px;justify-content:center;align-items:center;gap:.75rem;padding:1rem;font-family:inherit;font-size:1rem;font-weight:500;transition:background .3s;display:flex}.submit-btn:hover{background:var(--accent)}.submit-btn svg{transition:transform .3s}.submit-btn:hover svg{transform:translate(4px)}.faq-section{background:linear-gradient(180deg,var(--paper)0%,#f0ede8 100%);padding:6rem 0}.faq-header{text-align:center;max-width:600px;margin:0 auto 3rem}.faq-header h2{margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;font-weight:500}.faq-header p{color:var(--muted)}.faq-grid{grid-template-columns:repeat(2,1fr);gap:2rem;max-width:900px;margin:0 auto;display:grid}.faq-item{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 20px #0000000a}.faq-item h3{margin-bottom:.75rem;font-family:Cormorant Garamond,serif;font-size:1.25rem}.faq-item p{color:var(--muted);font-size:.95rem;line-height:1.7}.process{background:linear-gradient(180deg,var(--paper)0%,#f0ede8 100%);padding:6rem 0}.process-header{text-align:center;max-width:600px;margin:0 auto 4rem}.process-header h2{margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;font-weight:500}.process-header p{color:var(--muted)}.process-steps{grid-template-columns:repeat(4,1fr);gap:2rem;display:grid}.process-step{text-align:center;padding:2rem}.step-number{color:var(--accent);margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:3rem;font-weight:600}.process-step h3{margin-bottom:.75rem;font-family:Cormorant Garamond,serif;font-size:1.35rem}.process-step p{color:var(--muted);font-size:.9rem}.process-section{background:var(--ink);color:var(--paper);padding:6rem 0}.process-section .process-header .section-label{color:var(--accent-light)}.process-section .process-header p{color:#fff9}.timeline{justify-content:space-between;max-width:900px;margin:0 auto;display:flex;position:relative}.timeline:before{content:"";background:#fff3;height:2px;position:absolute;top:24px;left:60px;right:60px}.timeline-step{text-align:center;flex:1;position:relative}.step-dot{background:var(--accent-light);color:#fff;z-index:1;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;margin:0 auto 1.5rem;font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600;display:flex;position:relative}.timeline-step h3{margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.25rem}.timeline-step p{color:#fff9;max-width:150px;margin:0 auto;font-size:.85rem}.get-started{background:var(--ink);color:var(--paper)}.get-started .section-label{color:var(--accent-light)}.get-started-content{text-align:center}.get-started-content>p{color:#fff9;max-width:500px;margin:0 auto 3rem}.pricing-section{background:linear-gradient(180deg,var(--ink)0%,var(--ink)200px,var(--paper)200px);padding:3rem 0}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2rem;display:grid}.pricing-card{text-align:left;background:#ffffff08;border:1px solid #ffffff1a;border-radius:8px;padding:2.5rem 2rem;transition:all .3s;position:relative}.pricing-section .pricing-card{background:#fff;border:none;border-radius:12px;box-shadow:0 4px 30px #00000014}.pricing-card:hover{border-color:#fff3;transform:translateY(-4px)}.pricing-section .pricing-card:hover{transform:translateY(-8px)}.pricing-card.featured{border-color:var(--accent-light);background:#3d6b3e26}.pricing-section .pricing-card.featured{border:2px solid var(--accent);background:#fff}.featured-badge{background:var(--accent-light);color:#fff;text-transform:uppercase;letter-spacing:.05em;border-radius:20px;padding:.25rem 1rem;font-size:.75rem;font-weight:600;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.pricing-section .featured-badge{background:var(--accent);padding:.35rem 1.25rem;top:-14px}.pricing-card h2,.pricing-card h3{margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:500}.pricing-section .pricing-card h2{font-size:1.75rem}.pricing-card .tagline{color:var(--muted);margin-bottom:1.5rem;font-size:.9rem}.price{color:var(--accent-light);margin-bottom:1rem;font-size:2rem;font-weight:600}.pricing-section .price{color:var(--accent);margin-bottom:.25rem;font-size:2.5rem}.price-note{color:var(--muted);margin-bottom:2rem;font-size:.85rem}.pricing-card>p{color:#fff9;margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.pricing-section .pricing-card>p{color:var(--muted);min-height:80px;margin-bottom:2rem}.features{margin-bottom:2rem;list-style:none}.pricing-section .features{border-top:1px solid var(--border);padding-top:1.5rem}.features li{color:#fffc;align-items:center;gap:.75rem;padding:.5rem 0;font-size:.9rem;display:flex}.pricing-section .features li{color:var(--ink);padding:.6rem 0}.features li:before{content:"✓";color:var(--accent-light);font-weight:700}.pricing-section .features li:before{color:var(--accent)}.pricing-cta{text-align:center;color:var(--paper);background:0 0;border:1px solid #ffffff4d;border-radius:4px;padding:.875rem 1.5rem;font-weight:500;text-decoration:none;transition:all .3s;display:block}.pricing-cta:hover{background:var(--paper);color:var(--ink)}.pricing-section .pricing-cta{background:var(--ink);color:var(--paper);border:none;padding:1rem 1.5rem}.pricing-section .pricing-cta:hover{background:var(--accent)}.pricing-card.featured .pricing-cta{background:var(--accent-light);border-color:var(--accent-light)}.pricing-section .pricing-card.featured .pricing-cta{background:var(--accent)}.pricing-card.featured .pricing-cta:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.pricing-section .pricing-card.featured .pricing-cta:hover{background:var(--ink)}.get-started-more{text-align:center;margin-top:3rem}.get-started-more a{color:var(--accent-light);align-items:center;gap:.5rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.get-started-more a:hover{color:var(--paper)}.engagement-section{background:var(--paper);padding:4rem 0 6rem}.engagement-grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.engagement-card{border:1px solid var(--border);background:#fff;border-radius:12px;flex-direction:column;padding:2rem;transition:all .3s;display:flex}.engagement-card:hover{border-color:var(--accent);box-shadow:0 8px 30px #00000014}.engagement-card.featured{border:2px solid var(--accent);background:#3d6b3e08}.engagement-header{margin-bottom:1rem}.engagement-label{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:inline-block}.engagement-card h2{color:var(--ink);margin:0;font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:500}.engagement-description{color:var(--muted);flex-grow:1;margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.engagement-cta{color:var(--ink);align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.engagement-cta:hover{color:var(--accent);gap:.75rem}.engagement-cta svg{transition:transform .2s}.engagement-cta:hover svg{transform:translate(4px)}.process-steps{grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:3rem;display:grid}.process-step{text-align:center}.process-number{background:var(--ink);width:48px;height:48px;color:var(--paper);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600;display:flex}.process-step h3{margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:500}.process-step p{color:var(--muted);font-size:.9rem;line-height:1.5}@media (max-width:968px){.engagement-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}.process-steps{grid-template-columns:repeat(2,1fr);gap:2rem 1.5rem}}@media (max-width:480px){.engagement-section{padding:3rem 0 4rem}.engagement-card{padding:1.5rem}.engagement-card h2{font-size:1.35rem}.process-steps{grid-template-columns:1fr 1fr;gap:1.5rem 1rem}.process-number{width:40px;height:40px;font-size:1.1rem}.process-step h3{font-size:1.1rem}}.included-section{padding:6rem 0}.included-header{text-align:center;max-width:600px;margin:0 auto 4rem}.included-header h2{margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;font-weight:500}.included-header p{color:var(--muted)}.included-grid{grid-template-columns:repeat(2,1fr);gap:2rem;display:grid}.included-item{background:#fff;border-radius:8px;gap:1.5rem;padding:2rem;display:flex;box-shadow:0 2px 20px #0000000a}.included-item svg{width:32px;height:32px;color:var(--accent);flex-shrink:0}.included-item h3{margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.25rem}.included-item p{color:var(--muted);font-size:.9rem;line-height:1.7}.guarantee-section{background:linear-gradient(180deg,var(--paper)0%,#f0ede8 100%);padding:5rem 0}.guarantee-content{text-align:left;grid-template-columns:auto 1fr;align-items:center;gap:3rem;max-width:800px;margin:0 auto;display:grid}.guarantee-icon{background:var(--accent);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;display:flex}.guarantee-icon svg{color:#fff;width:40px;height:40px}.guarantee-text h2{margin-bottom:.75rem;font-family:Cormorant Garamond,serif;font-size:2rem}.guarantee-text p{color:var(--muted);font-size:1.05rem;line-height:1.7}.cta-section{background:linear-gradient(180deg,var(--paper)0%,#f0ede8 100%);text-align:center;padding:5rem 0}.cta-section.dark{background:var(--ink);color:var(--paper);border-top:1px solid #ffffff1a}.cta-section h2{margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2.5rem;font-weight:500}.cta-section p{color:var(--muted);max-width:500px;margin-bottom:2rem;margin-left:auto;margin-right:auto}.cta-section.dark p{color:#ffffffb3}.cta-button{background:var(--ink);color:var(--paper);border-radius:2px;align-items:center;gap:.75rem;padding:1rem 2rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.cta-button:hover{background:var(--accent)}.cta-section.dark .cta-button{background:var(--paper);color:var(--ink)}.cta-section.dark .cta-button:hover{background:var(--accent-light);color:var(--paper)}footer{background:var(--ink);color:var(--paper);padding:4rem 0 2rem}.footer-main{border-bottom:1px solid #ffffff1a;justify-content:space-between;gap:4rem;padding-bottom:3rem;display:flex}.footer-brand{max-width:350px}.footer-logo{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.footer-logo-img{filter:invert();height:36px}.footer-text{font-family:Cormorant Garamond,serif;font-size:1.1rem}.footer-tagline{color:#fff9;font-size:.95rem;line-height:1.6}.footer-links{gap:4rem;display:flex}.footer-column{flex-direction:column;gap:.75rem;display:flex}.footer-heading{color:var(--paper);margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.1rem;font-weight:600}.footer-column a{color:#fff9;font-size:.9rem;text-decoration:none;transition:color .2s}.footer-column a:hover{color:var(--paper)}.footer-bottom{text-align:center;padding-top:2rem}.footer-legal{color:#fff6;font-size:.85rem}.login-page{justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:2rem;display:flex}.login-page-content{width:100%;max-width:420px}.login-header{justify-content:center;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.login-logo{width:auto;height:40px}.login-title{color:var(--ink);margin:0;font-family:Cormorant Garamond,serif;font-size:1.75rem;font-weight:600}.login-form-container .contact-form{margin:20% 0 0}.portal-layout{background:#f5f5f5;min-height:100vh;display:flex;position:relative}.portal-mobile-header{background:var(--paper);border-bottom:1px solid var(--border);z-index:250;justify-content:center;align-items:center;height:60px;padding:.5rem 1rem;display:none;position:fixed;top:0;left:0;right:0}.portal-mobile-logo{justify-content:center;align-items:center;display:flex}.portal-mobile-logo img{width:auto;height:44px}.portal-mobile-header .portal-mobile-toggle{position:absolute;right:1rem}.portal-mobile-toggle{z-index:250;cursor:pointer;border:none;border-radius:8px;padding:.75rem;display:none;position:relative;top:auto;right:auto}.portal-mobile-toggle span{background:var(--ink);width:20px;height:2px;margin:4px 0;transition:all .3s;display:block}.portal-mobile-toggle.active span:first-child{transform:rotate(45deg)translate(4px,4px)}.portal-mobile-toggle.active span:nth-child(2){opacity:0}.portal-mobile-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(4px,-4px)}.portal-overlay{z-index:150;background:#00000080;display:none;position:fixed;inset:0}.portal-sidebar{background:var(--ink);width:280px;color:var(--paper);z-index:100;flex-direction:column;height:100vh;display:flex;position:fixed;top:0;left:0}.portal-sidebar-header{border-bottom:1px solid #ffffff1a;justify-content:center;padding:1.5rem;display:flex}.portal-logo{color:var(--paper);align-items:center;gap:.75rem;text-decoration:none;display:flex}.portal-logo-img{filter:invert();height:32px}.portal-logo-text{font-family:Cormorant Garamond,serif;font-size:1.1rem;font-weight:600}.portal-nav{flex-direction:column;flex:1;gap:0;padding:.5rem 0;display:flex}.portal-nav-item{color:#ffffffb3;align-items:center;gap:.75rem;margin:0;padding:.65rem 1rem;font-size:.95rem;text-decoration:none;transition:all .2s;display:flex}.portal-nav-item svg{flex-shrink:0;width:20px;height:20px}.portal-nav-item:hover{color:var(--paper);background:#ffffff0d}.portal-nav-item.active{color:var(--paper);border-left:3px solid var(--paper);background:#ffffff1a;padding-left:calc(1rem - 3px)}.portal-nav-expandable{cursor:pointer;text-align:left;width:100%;font-size:inherit;border:none;justify-content:flex-start;font-family:inherit}.portal-nav-chevron{align-items:center;margin-left:auto;transition:transform .2s;display:flex}.portal-nav-chevron.expanded{transform:rotate(180deg)}.portal-nav-subitems{flex-direction:column;display:flex}.portal-nav-subitem{padding-left:2.5rem;font-size:.9rem}.portal-nav-subitem.active{padding-left:calc(2.5rem - 3px)}@media screen and (min-width:480px){.portal-nav{padding:1.25rem 1.5rem .25rem}}.admin-section{border:1px solid var(--border);background:var(--paper);border-radius:8px;margin-bottom:1rem;overflow:hidden}.admin-section-header{background:var(--paper);cursor:pointer;width:100%;color:var(--ink);text-align:left;border:none;justify-content:space-between;align-items:center;padding:1rem 1.25rem;font-size:1rem;font-weight:600;transition:background-color .15s;display:flex}.admin-section-header:hover{background:var(--background)}.admin-section-header.expanded{border-bottom:1px solid var(--border)}.admin-section-title{align-items:center;gap:.75rem;display:flex}.admin-section-title svg{color:var(--ink-light)}.admin-section-count{background:var(--ink-light);color:var(--paper);border-radius:10px;margin-left:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.admin-section-chevron{color:var(--ink-light);transition:transform .2s}.admin-section-chevron.expanded{transform:rotate(180deg)}.admin-section-content{background:var(--background);padding:1.5rem}.portal-nav-divider{border-top:1px solid #ffffff1a;margin-top:.25rem;padding:.5rem .75rem .25rem}.portal-nav-divider span{text-transform:uppercase;letter-spacing:.1em;color:#fff6;font-size:.7rem;font-weight:600}.portal-sidebar-footer{border-top:1px solid #ffffff1a;padding:1rem 1.5rem}.portal-user-info{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.portal-user-avatar{background:var(--accent);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;font-weight:600;display:flex}.portal-user-details{flex-direction:column;display:flex}.portal-user-name{font-size:.9rem;font-weight:500}.portal-user-role{color:#ffffff80;font-size:.75rem}.portal-logout-btn{color:#ffffffb3;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;font-size:.9rem;transition:all .2s;display:flex}.portal-logout-btn:hover{color:var(--paper);background:#ffffff1a}.portal-main{flex:1;min-height:100vh;margin-left:280px;padding:2rem}.portal-page{max-width:1200px;margin:0 auto;overflow-x:hidden}.portal-header{margin-bottom:2rem}.portal-header h1{color:var(--ink);margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:600}.portal-header p{color:var(--ink-light)}.portal-stats-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}.portal-stats-grid.client-stats{grid-template-columns:repeat(3,1fr);max-width:900px;margin-left:auto;margin-right:auto}.portal-stats-grid.admin-stats{grid-template-columns:repeat(3,1fr)}.portal-stats-grid.centered{grid-template-columns:repeat(3,1fr);max-width:900px;margin-left:auto;margin-right:auto}.portal-dashboard-cta{justify-content:center;margin:2rem 0;display:flex}.portal-btn.primary.large{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:1.1rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.portal-btn.primary.large:hover{background:var(--accent-light);transform:translateY(-2px);box-shadow:0 4px 12px #1e391f4d}.portal-btn.primary.large:active{transform:translateY(0)}.portal-btn.primary.large svg{flex-shrink:0}.portal-stat-card{background:#fff;border-radius:12px;gap:1rem;padding:1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.portal-stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.portal-stat-icon.billing{color:#22c55e;background:#22c55e1a}.portal-stat-icon.metrics{color:#3b82f6;background:#3b82f61a}.portal-stat-icon.actions{color:#a855f7;background:#a855f71a}.portal-stat-icon.status{color:#22c55e;background:#22c55e1a}.portal-stat-content{flex-direction:column;display:flex}.portal-stat-label{color:var(--ink-light);margin-bottom:.25rem;font-size:.85rem}.portal-stat-value{color:var(--ink);font-size:1.5rem;font-weight:600}.portal-stat-change{margin-top:.25rem;font-size:.8rem}.portal-stat-change.positive{color:#22c55e}.portal-stat-change.negative{color:#ef4444}.portal-stat-change.neutral{color:var(--ink-light)}.portal-stat-date-range{color:var(--muted);opacity:.8;margin-top:.15rem;font-size:.7rem}.portal-stat-loading{opacity:.6;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.6}50%{opacity:.3}}.portal-section{background:#fff;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.portal-section h2{color:var(--ink);margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600}.portal-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.portal-section-header h2{margin-bottom:0}.portal-section-actions{gap:.5rem;display:flex}.portal-actions-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.portal-action-card{color:var(--ink);background:#f9f9f9;border:1px solid #0000;border-radius:8px;align-items:center;gap:1rem;padding:1.25rem;text-decoration:none;transition:all .2s;display:flex}.portal-action-card:hover{border-color:var(--accent);background:#fff;box-shadow:0 2px 8px #00000014}.portal-action-icon{background:var(--accent);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.portal-action-content h3{margin-bottom:.25rem;font-size:1rem;font-weight:600}.portal-action-content p{color:var(--ink-light);margin:0;font-size:.85rem}.portal-activity-empty{text-align:center;color:var(--ink-light);padding:3rem 1rem}.portal-activity-empty svg{opacity:.5;margin-bottom:1rem}.portal-activity-empty p{color:var(--ink);margin-bottom:.5rem;font-weight:500}.portal-activity-empty span{font-size:.9rem}.portal-activity-list{background:#fff;border-radius:12px;flex-direction:column;gap:0;display:flex;overflow:hidden;box-shadow:0 2px 12px #0000000a}.portal-activity-item{border-bottom:1px solid var(--border);align-items:center;gap:1rem;padding:1rem 1.25rem;transition:background-color .15s;display:flex}.portal-activity-item:last-child{border-bottom:none}.portal-activity-item:hover{background:#1e391f05}.portal-activity-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.portal-activity-icon.ai{color:#8b5cf6;background:#8b5cf61a}.portal-activity-icon.aws{color:var(--accent);background:#1e391f1a}.portal-activity-content{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.portal-activity-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:500;overflow:hidden}.portal-activity-meta{color:var(--ink-light);font-size:.8rem}.portal-activity-time{color:var(--ink-light);white-space:nowrap;font-size:.8rem}.portal-coming-soon{text-align:center;background:#fff;border-radius:12px;padding:4rem 2rem;box-shadow:0 1px 3px #0000001a}.portal-coming-soon-content{max-width:500px;margin:0 auto}.portal-coming-soon-logo{height:60px;margin-bottom:1.5rem}.portal-coming-soon h2{color:var(--ink);margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2rem}.portal-coming-soon p{color:var(--ink-light);margin-bottom:2rem;line-height:1.6}.portal-coming-soon-features{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem;display:grid}.portal-coming-soon-feature{color:var(--ink);background:#f9f9f9;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.portal-coming-soon-feature svg{color:var(--accent);flex-shrink:0}.portal-coming-soon-redirect{color:var(--ink-light);font-size:.85rem}.portal-save-message{border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:1rem 1.5rem;font-weight:500;display:flex}.portal-save-message.success{color:#16a34a;background:#22c55e1a;border:1px solid #22c55e33}.portal-save-message.error{color:#dc2626;background:#ef44441a;border:1px solid #ef444433}.portal-form-section{background:#fff;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.portal-form-section h2{color:var(--ink);margin-bottom:1.25rem;font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:600}.portal-form-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.portal-form-group{flex-direction:column;gap:.5rem;display:flex}.portal-form-group.full-width{grid-column:span 2}.portal-form-group label{color:var(--ink);font-size:.85rem;font-weight:500}.portal-form-group input,.portal-form-group select{border:1px solid #e0e0e0;border-radius:6px;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s}.portal-form-group input:focus,.portal-form-group select:focus{border-color:var(--accent);outline:none}.portal-form-group input:disabled{color:var(--ink-light);background:#f5f5f5}.portal-status-badge{border-radius:20px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;display:inline-flex}.portal-status-badge.active{color:#22c55e;background:#22c55e1a}.portal-form-actions{border-top:1px solid #e0e0e0;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.portal-form-hint{color:var(--ink-light);font-size:.85rem}.portal-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.portal-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:500px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.portal-modal-header{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.portal-modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.portal-modal-close{cursor:pointer;color:var(--ink-light);background:0 0;border:none;padding:.25rem;transition:color .2s}.portal-modal-close:hover{color:var(--ink)}.portal-modal-content{padding:1.5rem;overflow-y:auto}.portal-modal-content .portal-form-group{margin-bottom:0}.portal-modal-content .portal-input{border:1px solid #e0e0e0;border-radius:6px;width:100%;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s}.portal-modal-content .portal-input:focus{border-color:var(--accent);outline:none}.portal-modal-footer{background:#f9f9f9;border-top:1px solid #e0e0e0;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.portal-section-description{color:var(--ink-light);margin-bottom:1rem}.portal-export-actions{flex-wrap:wrap;gap:1rem;display:flex}.portal-export-section{background:#f9f9f9;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.portal-export-section h3{color:var(--ink);margin-bottom:.5rem;font-size:1rem;font-weight:600}.portal-export-description{color:var(--ink-light);margin-bottom:1rem;font-size:.85rem}.portal-export-note{color:var(--ink-light);margin-top:.75rem;font-size:.8rem;font-style:italic}.portal-export-error{color:#dc2626;background:#fee2e2;border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.portal-export-progress{color:#1a73e8;background:#e8f4fd;border-radius:6px;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.portal-export-progress-spinner{border:2px solid #1a73e8;border-top-color:#0000;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite portal-spin}@keyframes portal-spin{to{transform:rotate(360deg)}}.portal-security-actions{flex-direction:column;gap:1rem;display:flex}.portal-security-item{background:#f9f9f9;border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.portal-security-item h4{margin-bottom:.25rem;font-size:.95rem;font-weight:600}.portal-security-item p{color:var(--ink-light);margin:0;font-size:.85rem}.portal-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.portal-btn.primary{background:var(--accent);color:#fff}.portal-btn.primary:hover:not(:disabled){background:var(--accent-dark)}.portal-btn.secondary{color:var(--ink);background:#fff;border:1px solid #e0e0e0}.portal-btn.secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.portal-btn.small{padding:.5rem .875rem;font-size:.85rem}.portal-btn:disabled{opacity:.5;cursor:not-allowed}.portal-btn-icon{border:1px solid var(--border);cursor:pointer;width:32px;height:32px;color:var(--ink-light);background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.portal-btn-icon:hover{color:#dc2626;background:#fee2e2;border-color:#fecaca}.portal-btn-icon.danger{color:#dc2626;border-color:#fecaca}.portal-btn-icon.danger:hover{background:#fee2e2}.portal-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.portal-label{color:var(--ink);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.portal-input{border:1px solid var(--border);width:100%;color:var(--ink);background:#fff;border-radius:8px;padding:.625rem .875rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.portal-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.1);outline:none}.portal-input::placeholder{color:var(--ink-light)}.portal-alert{border-radius:8px;align-items:flex-start;gap:.75rem;padding:1rem;font-size:.9rem;display:flex}.portal-alert svg{flex-shrink:0;margin-top:.125rem}.portal-alert.error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.portal-alert.success{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.portal-alert.info{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe}.portal-table-container{overflow-x:auto}.portal-table{border-collapse:collapse;width:100%;font-size:.875rem}.portal-table th,.portal-table td{text-align:left;border-bottom:1px solid var(--border);padding:.75rem 1rem}.portal-table th{color:var(--ink-light);text-transform:uppercase;letter-spacing:.05em;background:#f9fafb;font-size:.75rem;font-weight:600}.portal-table tbody tr:hover{background:#f9fafb}.portal-table tbody tr:last-child td{border-bottom:none}.portal-billing-overview{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem;display:grid}.portal-billing-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.portal-billing-card.primary{background:var(--accent);color:#fff}.portal-billing-label{opacity:.8;margin-bottom:.5rem;font-size:.85rem;display:block}.portal-billing-amount{margin-bottom:.25rem;font-size:2rem;font-weight:600;display:block}.portal-billing-status{margin-bottom:.25rem;font-size:1.25rem;font-weight:600;display:block}.portal-billing-status.good{color:#22c55e}.portal-billing-period{opacity:.7;font-size:.85rem}.portal-billing-table{overflow-x:auto}.portal-billing-table table{border-collapse:collapse;width:100%}.portal-billing-table th,.portal-billing-table td{text-align:left;border-bottom:1px solid #e0e0e0;padding:.875rem 1rem}.portal-billing-table th{color:var(--ink-light);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.portal-payment-method{background:#f9f9f9;border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.portal-payment-empty{color:var(--ink-light);align-items:center;gap:.75rem;display:flex}.portal-pricing-info{color:var(--ink-light);line-height:1.6}.portal-pricing-table{background:#f9f9f9;border-radius:8px;margin:1.5rem 0;overflow:hidden}.portal-pricing-row{border-bottom:1px solid #e0e0e0;justify-content:space-between;padding:1rem 1.25rem;display:flex}.portal-pricing-row:last-child{border-bottom:none}.portal-pricing-action{color:var(--ink);font-weight:500}.portal-pricing-cost{color:var(--accent);font-weight:500}.portal-pricing-note{font-size:.85rem;font-style:italic}@media (max-width:1200px){.portal-stats-grid,.portal-stats-grid.client-stats,.portal-stats-grid.admin-stats,.portal-stats-grid.centered{grid-template-columns:repeat(2,1fr)}}@media (max-width:968px){.portal-mobile-header{display:flex}.portal-mobile-toggle,.portal-overlay{display:block}.portal-sidebar{width:100%;padding:5rem 2rem env(safe-area-inset-bottom,6rem);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 6rem);z-index:200;flex-direction:column;justify-content:center;align-items:center;transition:transform .3s;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.portal-sidebar.open{transform:translateY(0)}.portal-sidebar-header{justify-content:center;position:absolute;top:1.5rem;left:0;right:0}.portal-nav{flex-direction:column;flex:none;justify-content:center;align-items:center;gap:.5rem;padding:0;display:flex}.portal-nav-item{justify-content:center;padding:.5rem 1.25rem;font-family:Cormorant Garamond,serif;font-size:1.25rem}.portal-nav-item svg{display:none}.portal-nav-divider{text-align:center;margin:.5rem 0 .25rem}.portal-nav-divider span{letter-spacing:.15em;font-size:.65rem}.portal-sidebar-footer{bottom:calc(env(safe-area-inset-bottom,0px) + 2rem);flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;padding:0 1.5rem;position:absolute;left:0;right:0}.portal-user-info{flex:1;justify-content:flex-start;gap:.5rem}.portal-user-avatar{width:2rem;height:2rem;font-size:.85rem}.portal-user-name{font-size:.85rem}.portal-user-role{font-size:.65rem}.portal-logout-btn{flex-shrink:0;justify-content:center;gap:.35rem;padding:.5rem .75rem;font-size:.8rem}.portal-logout-btn svg{width:14px;height:14px}.portal-main{margin-left:0;padding-top:5rem}.portal-stat-card{text-align:center;flex-direction:column;align-items:center}.portal-stat-icon{margin:0 auto}.portal-stat-content{text-align:center;align-items:center;width:100%}.portal-actions-grid,.portal-billing-overview,.portal-form-grid{grid-template-columns:1fr}.portal-form-group.full-width{grid-column:span 1}.portal-coming-soon-features{grid-template-columns:1fr}}@media (max-width:640px){.portal-stats-grid{grid-template-columns:1fr}.portal-stats-grid.client-stats,.portal-stats-grid.admin-stats,.portal-stats-grid.centered{grid-template-columns:1fr;max-width:100%}.portal-dashboard-cta{margin:1.5rem 0}.portal-btn.primary.large{justify-content:center;width:100%;padding:.875rem 1.5rem;font-size:1rem}.portal-main{padding:1rem}.portal-export-actions{flex-direction:column}}.fade-up{opacity:0;transition:all .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.fade-up.visible{opacity:1;transform:translateY(0)}@media (max-width:1100px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:968px){.hero{box-sizing:border-box;place-items:center;min-height:100dvh;margin:0;padding:80px 0 2rem;display:grid}.hero>.container{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:100%;padding:1.5rem 1.5rem 0;display:flex}.hero-content{text-align:center;grid-template-columns:1fr;gap:2rem;width:100%;margin-top:10%}.hero-text{flex-direction:column;justify-content:center;align-items:center;display:flex}.hero-text p{margin-left:auto;margin-right:auto}.hero-visual{aspect-ratio:1;width:100%;height:auto;max-height:350px;margin-top:10%;margin-bottom:10%;overflow:visible}.about-content,.contact-content,.contact-grid{grid-template-columns:1fr;gap:3rem}.stats-grid{order:-1;justify-self:center;width:100%;max-width:400px}.story-content,.approach-content{grid-template-columns:1fr;gap:2rem}.values-grid{grid-template-columns:1fr}.stats-section .stats-grid{grid-template-columns:repeat(2,1fr)}.service-block{grid-template-columns:1fr;gap:2rem}.service-block:nth-child(2n){direction:ltr}.service-visual{min-height:250px}.services-grid{grid-template-columns:1fr;gap:1.5rem}.more-services{padding:4rem 0}.process-steps{grid-template-columns:repeat(2,1fr)}.pricing-grid{grid-template-columns:1fr;max-width:400px;margin-left:auto;margin-right:auto}.included-grid{grid-template-columns:1fr}.timeline{flex-direction:column;gap:2rem}.timeline:before{display:none}.guarantee-content{text-align:center;grid-template-columns:1fr}.guarantee-icon{margin:0 auto}.faq-grid{grid-template-columns:1fr}}@media (max-width:768px){nav{display:none}.mobile-toggle{display:block}section{padding:3rem 0}.services-grid{grid-template-columns:1fr}.stats-section .stats-grid{grid-template-columns:1fr;justify-self:center;gap:3rem;width:100%;max-width:300px}.process-steps,.form-row{grid-template-columns:1fr}.footer-main{text-align:center;flex-direction:column;gap:2.5rem}.footer-brand{max-width:none}.footer-logo{justify-content:center}.footer-links{justify-content:center;gap:3rem}}.display-name-overlay{background:var(--ink);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.display-name-modal{background:var(--paper);border-radius:16px;width:100%;max-width:420px;margin:1rem;padding:2.5rem;box-shadow:0 25px 50px -12px #0006}.display-name-header{text-align:center;margin-bottom:2rem}.display-name-logo{width:auto;height:48px;margin-bottom:1.5rem}.display-name-header h2{color:var(--ink);margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.75rem;font-weight:600}.display-name-header p{color:var(--ink-light);font-size:.95rem}.display-name-form .form-group{margin-bottom:1.5rem}.display-name-form label{color:var(--ink);margin-bottom:.5rem;font-weight:500;display:block}.display-name-form input{border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.display-name-form input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #1e391f1a}.display-name-form .form-hint{color:var(--ink-light);margin-top:.5rem;font-size:.8rem;display:block}.display-name-form .submit-btn{background:var(--accent);width:100%;color:var(--paper);cursor:pointer;border:none;border-radius:8px;padding:1rem 1.5rem;font-size:1rem;font-weight:500;transition:background .2s,transform .2s}.display-name-form .submit-btn:hover{background:var(--accent-light)}.display-name-form .submit-btn:active{transform:scale(.98)}.display-name-error{color:#c41e3a;text-align:center;background:#c41e3a1a;border-radius:6px;margin-bottom:1rem;padding:.75rem;font-size:.9rem}.first-password-overlay{background:var(--ink);z-index:1000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.first-password-modal{background:var(--paper);box-sizing:border-box;border-radius:16px;width:100%;max-width:440px;padding:2.5rem;box-shadow:0 25px 50px -12px #0006}.first-password-header{text-align:center;margin-bottom:2rem}.first-password-logo{width:auto;height:48px;margin-bottom:1.5rem}.first-password-header h2{color:var(--ink);margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.75rem;font-weight:600}.first-password-header p{color:var(--muted);font-size:.95rem;line-height:1.5}.first-password-form .form-group{margin-bottom:1.25rem}.first-password-form label{color:var(--ink);margin-bottom:.5rem;font-weight:500;display:block}.first-password-form input{border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.first-password-form input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #1e391f1a}.first-password-form input:disabled{cursor:not-allowed;background:#f5f5f5}.first-password-error{color:#c41e3a;text-align:center;background:#c41e3a1a;border-radius:6px;margin-bottom:1rem;padding:.75rem;font-size:.9rem}.password-requirements{background:#1e391f0d;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.password-requirements .requirements-title{color:var(--ink);margin-bottom:.5rem;font-size:.85rem;font-weight:500}.password-requirements ul{margin:0;padding:0;list-style:none}.password-requirements li{color:var(--muted);padding:.25rem 0 .25rem 1.5rem;font-size:.85rem;position:relative}.password-requirements li:before{content:"";border:1.5px solid var(--muted);border-radius:50%;width:12px;height:12px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.password-requirements li.met{color:var(--accent)}.password-requirements li.met:before{border-color:var(--accent);background:var(--accent)}.password-requirements li.met:after{content:"";border:1.5px solid #fff;border-width:0 1.5px 1.5px 0;width:4px;height:7px;position:absolute;top:50%;left:3px;transform:translateY(-60%)rotate(45deg)}.first-password-form .submit-btn{background:var(--accent);width:100%;color:var(--paper);cursor:pointer;border:none;border-radius:8px;padding:1rem 1.5rem;font-size:1rem;font-weight:500;transition:background .2s,transform .2s}.first-password-form .submit-btn:hover:not(:disabled){background:var(--accent-light)}.first-password-form .submit-btn:active:not(:disabled){transform:scale(.98)}.first-password-form .submit-btn:disabled{opacity:.7;cursor:not-allowed}.first-password-progress{border-top:1px solid #0000001a;justify-content:center;gap:2rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.progress-step{color:var(--muted);padding-left:1.5rem;font-size:.85rem;position:relative}.progress-step:before{content:"";border:2px solid var(--muted);background:0 0;border-radius:50%;width:16px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.progress-step.active{color:var(--accent);font-weight:500}.progress-step.active:before{border-color:var(--accent);background:var(--accent)}.progress-step.completed{color:var(--accent)}.progress-step.completed:before{border-color:var(--accent);background:var(--accent)}.progress-step.completed:after{content:"✓";color:#fff;font-size:10px;font-weight:700;position:absolute;top:50%;left:3px;transform:translateY(-50%)}.first-password-form .form-hint{color:var(--muted);margin-top:.5rem;font-size:.8rem;display:block}@media (max-width:480px){.first-password-overlay{padding:1rem}.first-password-modal{border-radius:12px;max-width:100%;margin:auto 0;padding:1.25rem}.first-password-logo{height:36px;margin-bottom:1rem}.first-password-header{margin-bottom:1.25rem}.first-password-header h2{font-size:1.35rem}.first-password-header p{font-size:.8rem}.first-password-form .form-group{margin-bottom:1rem}.first-password-form label{margin-bottom:.375rem;font-size:.875rem}.first-password-form input{padding:.625rem .75rem;font-size:16px}.first-password-form .submit-btn{padding:.75rem 1rem;font-size:.9rem}.password-requirements{margin-bottom:1rem;padding:.625rem}.password-requirements .requirements-title{font-size:.8rem}.password-requirements li{padding-top:.2rem;padding-bottom:.2rem;padding-left:1.5rem;font-size:.8rem}}.businesses-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;display:grid}.business-card{background:#fff;border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;transition:box-shadow .2s,transform .2s;display:flex;box-shadow:0 1px 3px #0000001a}.business-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.business-card-header{justify-content:space-between;align-items:flex-start;display:flex}.business-icon{width:56px;height:56px;color:var(--accent);background:#1e391f1a;border-radius:12px;justify-content:center;align-items:center;display:flex}.business-card-content h3{color:var(--ink);margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.35rem;font-weight:600}.business-meta{color:var(--ink-light);gap:1rem;font-size:.85rem;display:flex}.business-type{background:#1e391f14;border-radius:20px;padding:.25rem .75rem;font-weight:500}.business-location{align-items:center;gap:.35rem;display:flex}.business-card-actions{border-top:1px solid #e0e0e0;align-items:center;gap:.75rem;margin-top:auto;padding-top:1rem;display:flex}.business-card-actions .portal-btn{white-space:nowrap;flex:1;justify-content:center;padding:.65rem .75rem;font-size:.85rem;text-decoration:none}.business-card-actions .portal-btn.primary,.business-card-actions a.portal-btn.primary,.business-card-actions a.portal-btn.primary:link,.business-card-actions a.portal-btn.primary:visited{background:var(--accent)!important;color:#fff!important}.business-card-actions .portal-btn.primary:hover,.business-card-actions a.portal-btn.primary:hover,.business-card-actions a.portal-btn.primary:active,.business-card-actions a.portal-btn.primary:focus{background:var(--accent-dark)!important;color:#fff!important;text-decoration:none!important}.portal-status-badge.pending{color:#d97706;background:#f59e0b1a}.portal-status-badge.inactive{color:#6b7280;background:#6b72801a}.portal-breadcrumb{align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.9rem;display:flex}.portal-breadcrumb a{color:var(--accent);text-decoration:none}.portal-breadcrumb a:hover{text-decoration:underline}.portal-breadcrumb span{color:var(--ink-light)}.business-info-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.business-info-item{flex-direction:column;gap:.25rem;display:flex}.business-info-label{color:var(--ink-light);font-size:.85rem;font-weight:500}.business-info-value{color:var(--ink);font-size:1rem}@media (max-width:768px){.businesses-grid,.business-info-grid{grid-template-columns:1fr}}.business-dropdowns{flex-direction:column;gap:1rem;display:flex}.business-dropdown{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.business-dropdown-toggle{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:1rem;width:100%;padding:1.25rem 1.5rem;transition:background .2s;display:flex}.business-dropdown-toggle:hover{background:#00000005}.business-dropdown-header{flex:1;align-items:center;gap:1rem;display:flex}.business-dropdown-icon{width:48px;height:48px;color:var(--accent);background:#1e391f1a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.business-dropdown-info{flex-direction:column;gap:.25rem;display:flex}.business-dropdown-name{color:var(--ink);font-size:1.1rem;font-weight:600}.business-dropdown-meta{color:var(--ink-light);font-size:.85rem}.business-dropdown-billing{flex-direction:column;align-items:flex-end;gap:.125rem;margin-right:.5rem;display:flex}.business-dropdown-amount{color:var(--ink);font-size:1.25rem;font-weight:600}.business-dropdown-label{color:var(--ink-light);font-size:.75rem}.business-dropdown-chevron{color:var(--ink-light);flex-shrink:0;transition:transform .2s}.business-dropdown-chevron.open{transform:rotate(180deg)}.business-dropdown-content{border-top:1px solid #e0e0e0;margin-top:-.5rem;padding:1.25rem 1.5rem 1.5rem}.business-dropdown-stats{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.25rem;display:grid}.business-dropdown-stat{background:#00000005;border-radius:8px;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;display:flex}.business-dropdown-stat .stat-value{color:var(--ink);font-size:1rem;font-weight:600}.business-dropdown-stat .stat-label{color:var(--ink-light);font-size:.75rem}.business-dropdown-actions{justify-content:center;display:flex}.admin-stats{grid-template-columns:repeat(3,1fr)}@media (max-width:768px){.business-dropdown-toggle{flex-wrap:wrap}.business-dropdown-billing{margin-left:auto;margin-right:0}.business-dropdown-stats{grid-template-columns:repeat(3,1fr)}.admin-stats{grid-template-columns:1fr}}.business-dropdown-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.business-dropdown-card .business-dropdown-header{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:1.25rem 1.5rem;transition:background .2s;display:flex}.business-dropdown-card .business-dropdown-header:hover{background:#00000005}.business-dropdown-title{align-items:center;gap:1rem;display:flex}.business-dropdown-card .business-dropdown-icon{width:52px;height:52px;color:var(--accent);background:#1e391f1a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.business-dropdown-card .business-dropdown-info h2{color:var(--ink);margin-bottom:.25rem;font-size:1.25rem;font-weight:600}.business-dropdown-card .business-dropdown-meta{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.business-type-tag{color:var(--muted);background:#0000000d;border-radius:4px;padding:.2rem .6rem;font-size:.8rem}.business-location-tag{color:var(--muted);align-items:center;gap:.35rem;font-size:.8rem;display:flex}.business-dropdown-card .business-dropdown-chevron{color:var(--muted);flex-shrink:0;transition:transform .2s}.business-dropdown-card .business-dropdown-chevron.expanded{transform:rotate(180deg)}.business-dropdown-collapse{grid-template-rows:0fr;transition:grid-template-rows .3s ease-out;display:grid}.business-dropdown-collapse.expanded{grid-template-rows:1fr}.business-dropdown-collapse>.business-dropdown-content-inner{border-top:1px solid #0000;padding:0 1.5rem;transition:padding .3s ease-out,border-color .3s ease-out;overflow:hidden}.business-dropdown-collapse.expanded>.business-dropdown-content-inner{border-top-color:#e5e5e5;padding:1.5rem}.dashboard-stats-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.dashboard-stats-grid .portal-stat-card{background:#00000005;border-radius:10px;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.dashboard-stats-grid .portal-stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.dashboard-stats-grid .portal-stat-icon.billing{color:#10b981;background:#10b9811a}.dashboard-stats-grid .portal-stat-icon.metrics{color:#3b82f6;background:#3b82f61a}.dashboard-stats-grid .portal-stat-icon.actions{color:#a855f7;background:#a855f71a}.dashboard-stats-grid .portal-stat-icon.status{color:#10b981;background:#10b9811a}.dashboard-stats-grid .portal-stat-content{flex-direction:column;gap:.25rem;display:flex}.dashboard-stats-grid .portal-stat-label{color:var(--muted);font-size:.85rem}.dashboard-stats-grid .portal-stat-value{color:var(--ink);font-size:1.5rem;font-weight:600}.dashboard-stats-grid .portal-stat-change{font-size:.8rem}.dashboard-stats-grid .portal-stat-change.neutral{color:var(--muted)}.dashboard-stats-grid .portal-stat-change.positive{color:#10b981}@media (max-width:640px){.dashboard-stats-grid{grid-template-columns:1fr}}.dashboard-tabs{border-bottom:1px solid #e5e5e5;gap:.5rem;margin-bottom:1rem;padding:1rem 0;display:flex;overflow-x:auto}.dashboard-tab{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:all .2s}.dashboard-tab:hover{color:var(--ink);background:#0000000d}.dashboard-tab.active{background:var(--accent);color:#fff}.dashboard-tab-content{padding:1rem 0}.dashboard-stat-row{background:#00000005;border-radius:8px;align-items:center;gap:1rem;padding:1rem;display:flex}.dashboard-stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.dashboard-stat-icon.billing{color:#10b981;background:#10b9811a}.dashboard-stat-icon.metrics{color:#3b82f6;background:#3b82f61a}.dashboard-stat-icon.actions{color:#a855f7;background:#a855f71a}.dashboard-stat-icon.status{color:#10b981;background:#10b9811a}.dashboard-stat-info{flex-direction:column;flex:1;gap:.25rem;display:flex}.dashboard-stat-label{color:var(--muted);font-size:.85rem}.dashboard-stat-value{color:var(--ink);font-size:1.5rem;font-weight:600}.dashboard-stat-value.status-active{color:#10b981}.dashboard-stat-note{color:var(--muted);margin-left:auto;font-size:.8rem}.dashboard-stat-note.positive{color:#10b981}.dashboard-navigate-link{border-top:1px solid #e5e5e5;margin-top:1rem;padding-top:1rem}.dashboard-link{color:var(--accent);align-items:center;gap:.5rem;font-weight:500;text-decoration:none;transition:gap .2s;display:inline-flex}.dashboard-link:hover{gap:.75rem}@media (max-width:640px){.dashboard-tabs{gap:.25rem}.dashboard-tab{padding:.4rem .75rem;font-size:.8rem}.dashboard-stat-row{flex-wrap:wrap}.dashboard-stat-note{width:100%;margin-top:.5rem;margin-left:0}}.business-banner{background:linear-gradient(135deg,var(--accent)0%,var(--accent-light)100%);color:#fff;margin-bottom:1.5rem}.business-banner-content{align-items:center;gap:1.25rem;display:flex}.business-banner-icon{background:#ffffff26;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.business-banner-info h2{color:#fff;margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:600}.business-banner-meta{align-items:center;gap:1rem;font-size:.9rem;display:flex}.business-banner-type{background:#fff3;border-radius:20px;padding:.25rem .75rem;font-weight:500}.business-banner-location{opacity:.9;align-items:center;gap:.35rem;display:flex}.business-banner .portal-status-badge{color:#fff;background:#fff3}.business-banner .portal-status-badge.active{background:#22c55e4d}@media (max-width:768px){.business-banner-content{text-align:center;flex-direction:column}.business-banner-meta{flex-wrap:wrap;justify-content:center}}.storefronts-list{flex-direction:column;gap:1rem;margin-top:1rem;display:flex}.storefronts-dashboard{flex-direction:column;gap:1.5rem;display:flex}.storefront-card{background:#fff;border:1px solid #e5e5e5;border-radius:12px;overflow:hidden}.storefront-card-header{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:1.25rem 1.5rem;transition:background .2s;display:flex}.storefront-card-header:hover{background:#00000005}.storefront-card-title{align-items:center;gap:1rem;display:flex}.storefront-card-icon{background:linear-gradient(135deg,var(--accent)0%,#4f46e5 100%);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.storefront-card-info h3{color:var(--ink);margin:0 0 .35rem;font-size:1.1rem;font-weight:600}.storefront-card-meta{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.storefront-card-chevron{color:var(--muted);flex-shrink:0;transition:transform .2s}.storefront-card-chevron.expanded{transform:rotate(180deg)}.storefront-card-collapse{grid-template-rows:0fr;transition:grid-template-rows .3s ease-out;display:grid}.storefront-card-collapse.expanded{grid-template-rows:1fr}.storefront-card-collapse>.storefront-card-content{border-top:1px solid #0000;padding:0 1.5rem;transition:padding .3s ease-out,border-color .3s ease-out;overflow:hidden}.storefront-card-collapse.expanded>.storefront-card-content{border-top-color:#e5e5e5;padding:1.5rem}@media (min-width:769px) and (max-width:968px){header .container{padding:0 1.5rem}.logo-text{font-size:1.1rem}nav{gap:1.5rem}nav a{font-size:.85rem}.nav-cta{padding:.6rem 1.25rem}.hero-text h1{font-size:clamp(2.25rem,5vw,3rem)}.hero-text p{font-size:1rem}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card{padding:2rem}.stats-grid,.pricing-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.pricing-card:last-child{grid-column:span 2;max-width:400px;margin:0 auto}.portal-stats-grid,.portal-actions-grid{grid-template-columns:repeat(2,1fr)}.page-hero{padding:6rem 0 2rem}.page-hero h1{font-size:clamp(1.75rem,3.5vw,2.5rem)}.contact-content{gap:2rem}}@media (max-width:480px){.container{padding:0 1rem}header{padding:1rem 0}.logo-text{font-size:1rem}.logo img,.logo svg{height:36px}.mobile-nav a{font-size:1.5rem}.mobile-nav .nav-cta{padding:.875rem 1.5rem;font-size:.9rem}.hero{padding:70px 0 1.5rem}.hero-text h1{margin-bottom:.75rem;font-size:3rem}.hero-text p{margin-bottom:1.25rem;font-size:.9rem}.hero-cta{justify-content:center;width:100%;padding:.75rem 1.25rem;font-size:.85rem}.hero-visual{aspect-ratio:1;width:100%;height:auto;max-height:280px}.data-grid{gap:1px;max-width:280px}section{padding:2.5rem 0}.section-title{font-size:1.75rem}.section-label{font-size:.7rem}.page-hero{padding:10rem 0 1.5rem}.page-hero h1{font-size:3rem}.page-hero p{font-size:.9rem}.service-card{padding:1.5rem}.service-icon{width:40px;height:40px;margin-bottom:1rem}.service-card h3{font-size:1.15rem}.service-card p{font-size:.9rem}.stats-grid{gap:1.5rem}.stat-number{font-size:2.5rem}.stat-label{font-size:.85rem}.service-visual{min-height:180px}.service-content{padding:1.5rem}.service-content h3{font-size:1.25rem}.pricing-card{padding:1.5rem}.pricing-card h3{font-size:1.25rem}.price{font-size:2rem}.pricing-cta{padding:.875rem 1.25rem;font-size:.9rem}.form-group label{font-size:.85rem}.form-group input,.form-group textarea,.form-group select{padding:.75rem;font-size:.95rem}.contact-form button{padding:.875rem 1.5rem;font-size:.9rem}.footer-main{gap:2rem}.footer-brand p{font-size:.9rem}.footer-links{flex-wrap:wrap;gap:2rem}.footer-bottom{text-align:center;flex-direction:column;gap:1rem}.process-step{padding:1.5rem}.process-number{font-size:2.5rem}.process-step h4{font-size:1rem}.value-card{padding:1.5rem}.value-icon{width:48px;height:48px}.faq-item{padding:1.25rem}.faq-item h4{font-size:1rem}.faq-item p{font-size:.9rem}.guarantee-content{padding:1.5rem}.guarantee-icon{width:56px;height:56px}.timeline-step{padding:1rem}.timeline-step h4{font-size:.9rem}.timeline-step p{font-size:.8rem}}@media (max-width:768px){.portal-container{flex-direction:column}.portal-sidebar{z-index:200;flex-direction:column;width:100%;height:100%;padding:0;transition:transform .3s;display:flex;position:fixed;inset:0;transform:translateY(-100%)}.portal-sidebar.open{transform:translateY(0)}.portal-sidebar-header{display:none}.portal-nav{flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:100%;margin:0;padding:0;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.portal-nav-item{justify-content:center;padding:.75rem 1.5rem;font-family:Cormorant Garamond,serif;font-size:1.25rem}.portal-nav-item svg{display:none}.portal-nav-divider{text-align:center;margin:1rem 0 .5rem}.portal-sidebar-footer{bottom:calc(env(safe-area-inset-bottom,0px) + 2rem);border-top:none;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;padding:0 1.5rem;display:flex;position:absolute;left:0;right:0}.portal-user-info{flex:1;justify-content:flex-start;margin-bottom:0}.portal-logout-btn{flex-shrink:0;justify-content:center;width:auto;padding:.5rem 1rem}.portal-main{width:100%;min-height:calc(100vh - 80px);margin-left:0;padding:1.5rem 1rem}.portal-header h1{font-size:1.5rem}.portal-header p{font-size:.9rem}.portal-section{margin-top:1.5rem}.portal-section h2{font-size:1.25rem}.portal-stat-card{padding:1rem}.portal-stat-icon{width:40px;height:40px}.portal-stat-value{font-size:1.5rem}.portal-stat-label{font-size:.8rem}.portal-stat-change{font-size:.75rem}.portal-action-card{padding:1rem}.portal-action-icon{width:40px;height:40px}.portal-action-content h3{font-size:1rem}.portal-action-content p{font-size:.85rem}.business-dropdown-toggle{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.business-dropdown-header{width:100%}.business-dropdown-billing{align-items:flex-start;margin-left:60px}.business-dropdown-chevron{position:absolute;top:1rem;right:1rem}.business-dropdown-content{padding:1rem}.business-dropdown-stats{grid-template-columns:repeat(3,1fr);gap:.5rem}.business-dropdown-stat{padding:.5rem}.portal-form-actions{flex-direction:column}.portal-form-actions .portal-btn{justify-content:center;width:100%}.portal-activity-empty{padding:2rem 1rem}.portal-activity-empty svg{width:40px;height:40px}.portal-activity-empty p{font-size:.95rem}.business-card{padding:1rem}.business-icon{width:48px;height:48px}.business-card-content h3{font-size:1.15rem}.business-meta{flex-direction:column;gap:.5rem}.business-banner-icon{width:52px;height:52px}.business-banner-info h2{font-size:1.25rem}.business-banner-meta{gap:.5rem;font-size:.8rem}.storefront-card-header{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.storefront-card-chevron{position:absolute;top:1rem;right:1rem}.storefront-card-icon{width:40px;height:40px}.storefront-card-info h3{font-size:1rem}}@media (max-width:480px){.portal-main{padding:2rem .75rem}.portal-header{text-align:center;margin:3rem 1rem 2rem}.portal-header h1{font-size:2.35rem;line-height:2.8rem}.portal-stats-grid{gap:.75rem}.portal-stat-card{text-align:center;flex-direction:column;gap:.5rem}.portal-stat-icon{margin:0 auto}.portal-action-card{text-align:center;flex-direction:column}.portal-action-icon{margin:0 auto}.business-dropdown-icon{width:40px;height:40px}.business-dropdown-name{font-size:1rem}.business-dropdown-amount{font-size:1.1rem}.business-dropdown-stats{grid-template-columns:1fr}.login-card{margin:1rem;padding:1.5rem}.login-card h1{font-size:1.5rem}.display-name-modal{margin:.75rem;padding:1.5rem}.display-name-header h2{font-size:1.5rem}}@media (hover:none) and (pointer:coarse){nav a{padding:.5rem}.hero-cta,.pricing-cta,.portal-btn,.contact-form button{min-height:48px}.mobile-toggle{padding:.75rem}.mobile-nav a{padding:.75rem 1rem}.service-card:hover,.pricing-card:hover,.portal-action-card:hover,.business-card:hover{transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.fade-up{opacity:1;transform:none}.data-cell{opacity:1;animation:none}}@media print{header,footer,.mobile-toggle,.mobile-nav,.portal-sidebar,.hero-visual,.data-grid{display:none!important}body{color:#000;background:#fff}section{padding:1rem 0}.container{max-width:100%;padding:0}}.invoice-row-clickable{cursor:pointer;transition:background-color .15s}.invoice-row-clickable:hover{background-color:#1e391f0d}.invoice-link{color:var(--accent);font-weight:500;text-decoration:none}.invoice-link:hover{text-decoration:underline}.invoice-has-pdf{color:var(--accent);align-items:center;display:inline-flex}.invoice-no-pdf{color:var(--muted)}.portal-header-row{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.portal-error-banner{color:#991b1b;background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.5rem;display:flex}.invoice-detail-grid{grid-template-columns:1fr 350px;gap:1.5rem;display:grid}@media (max-width:900px){.invoice-detail-grid{grid-template-columns:1fr}}.invoice-detail-main,.invoice-detail-sidebar{flex-direction:column;gap:1.5rem;display:flex}.invoice-info-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1rem;display:grid}@media (max-width:600px){.invoice-info-grid{grid-template-columns:1fr}}.invoice-info-item{flex-direction:column;gap:.25rem;display:flex}.invoice-info-label{color:var(--muted);font-size:.875rem;font-weight:500}.invoice-info-value{color:var(--ink);font-size:1.125rem;font-weight:600}.invoice-info-value.invoice-amount{color:var(--accent);font-size:1.5rem}.invoice-info-value.invoice-owed{color:#dc2626}.invoice-info-value.invoice-paid-full{color:#16a34a}.invoice-description{border-top:1px solid var(--border);padding-top:1rem}.invoice-description p{color:var(--ink);margin-top:.5rem}.invoice-paid-info{color:#16a34a;background-color:#16a34a1a;border-radius:8px;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;display:flex}.portal-form-actions{border-top:1px solid var(--border);gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.invoice-pdf-attached{background-color:#1e391f0d;border-radius:8px;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem;display:flex}.invoice-pdf-icon{color:var(--accent);flex-shrink:0}.invoice-pdf-info{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.invoice-pdf-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.invoice-pdf-status{color:var(--accent);font-size:.75rem;font-weight:500}.invoice-pdf-empty{border:2px dashed var(--border);color:var(--muted);text-align:center;background-color:#00000005;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;margin-bottom:1rem;padding:2rem;display:flex}.invoice-pdf-empty p{margin-top:.5rem;font-weight:500}.invoice-pdf-upload{flex-direction:column;gap:.5rem;display:flex}.invoice-pdf-upload label{text-align:center;width:100%}.invoice-actions{flex-direction:column;gap:.75rem;display:flex}.portal-btn.danger{color:#fff;background-color:#dc2626;justify-content:center;align-items:center;gap:.5rem;display:flex}.portal-btn.danger:hover{background-color:#b91c1c}.file-viewer-overlay{z-index:1000;background-color:#000000b3;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.file-viewer-modal{background-color:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:1000px;height:90vh;max-height:800px;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.file-viewer-header{border-bottom:1px solid var(--border);background-color:var(--paper);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.file-viewer-header h3{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;max-width:60%;font-size:1rem;font-weight:600;overflow:hidden}.file-viewer-actions{align-items:center;gap:.75rem;display:flex}.file-viewer-content{background-color:#525659;flex:1;overflow:hidden}.file-viewer-iframe{border:none;width:100%;height:100%}.file-viewer-docx-notice{color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:2rem;display:flex}.file-viewer-docx-notice svg{opacity:.7;margin-bottom:1rem}.file-viewer-docx-notice p{margin-bottom:1.5rem;font-size:1.125rem}@media (max-width:768px){.file-viewer-overlay{padding:1rem}.file-viewer-modal{border-radius:8px;height:100%;max-height:none}.file-viewer-header{flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem}.file-viewer-header h3{flex:100%;max-width:100%;font-size:.875rem}.file-viewer-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}}@media (max-width:600px){.portal-header-row{flex-direction:column;align-items:flex-start;gap:.75rem}.portal-header-row div{margin:0 auto}.portal-header-row h1{word-break:break-word;padding-top:1rem;font-size:2.5rem}.portal-header-row p{font-size:.875rem}.portal-header-row .portal-status-badge{margin:0 auto}.invoice-pdf-attached{flex-wrap:wrap}.invoice-pdf-attached .portal-btn{width:100%;margin-top:.5rem}.invoice-info-value.invoice-amount{font-size:1.25rem}.portal-section h2{font-size:1rem}.portal-error-banner{padding:.75rem 1rem;font-size:.875rem}.portal-breadcrumb{flex-wrap:wrap;font-size:.875rem}}.business-billing-summary{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:1rem;display:flex}.billing-summary-item{justify-content:space-between;align-items:center;display:flex}.billing-summary-label{color:var(--muted);font-size:.875rem}.billing-summary-value{color:var(--ink);font-weight:600}.billing-summary-value.positive{color:#16a34a}.billing-summary-value.negative{color:#dc2626}.portal-select{border:1px solid var(--border);width:100%;color:var(--ink);cursor:pointer;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b6b6b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;border-radius:8px;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem}.portal-select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #1e391f1a}.portal-textarea{border:1px solid var(--border);width:100%;color:var(--ink);resize:vertical;background-color:#fff;border-radius:8px;min-height:80px;padding:.75rem 1rem;font-family:inherit;font-size:1rem}.portal-textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #1e391f1a}.portal-table-actions{align-items:center;gap:.5rem;display:flex}.portal-paid-date{color:var(--muted);font-size:.75rem}.portal-billing-amount.overdue{color:#dc2626}.client-invoice-list{flex-direction:column;gap:1rem;display:flex}.client-invoice-card{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:12px;padding:1.5rem;transition:all .2s;position:relative}.client-invoice-card:hover{border-color:var(--accent-light);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.client-invoice-card.paid{border-left:4px solid #10b981}.client-invoice-card.partial{border-left:4px solid #f59e0b}.client-invoice-card.unpaid{border-left:4px solid #ef4444}.client-invoice-card.overdue{background:#fef2f2}.client-invoice-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.client-invoice-number{flex-direction:column;gap:.25rem;display:flex}.invoice-number-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.invoice-number-value{color:var(--ink);font-size:1.125rem;font-weight:600}.client-invoice-details{margin-bottom:1rem}.client-invoice-description{color:var(--muted);margin-bottom:1rem;font-size:.875rem;line-height:1.5}.client-invoice-amounts{background:var(--paper);border-radius:8px;padding:1rem}.client-invoice-amount-row{justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.client-invoice-amount-row:not(:last-child){border-bottom:1px dashed var(--border)}.client-invoice-amount-row .amount-label{color:var(--muted);font-size:.875rem}.client-invoice-amount-row .amount-value{color:var(--ink);font-size:.875rem;font-weight:500}.client-invoice-amount-row.paid .amount-value{color:#10b981}.client-invoice-amount-row.balance{margin-top:.25rem;padding-top:.75rem}.client-invoice-amount-row.balance .amount-label{color:var(--ink);font-weight:600}.client-invoice-amount-row.balance .amount-value{color:var(--accent);font-size:1.125rem;font-weight:700}.client-invoice-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:1rem;display:flex}.client-invoice-date{color:var(--muted);align-items:center;gap:.5rem;font-size:.813rem;display:flex}.client-invoice-date svg{color:var(--muted)}.client-invoice-date .overdue-text{color:#dc2626;font-weight:500}.client-invoice-attachment{color:var(--accent);align-items:center;gap:.5rem;font-size:.813rem;font-weight:500;display:flex}.client-invoice-attachment svg{color:var(--accent)}.invoice-detail-modal{max-width:600px}.invoice-detail-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1.5rem;display:grid}.invoice-detail-item{flex-direction:column;gap:.5rem;display:flex}.invoice-detail-item .detail-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.invoice-detail-item .detail-value{color:var(--ink);font-size:1rem;font-weight:500}.invoice-detail-item .detail-value.highlight{color:var(--accent);font-size:1.25rem;font-weight:700}.invoice-detail-description{background:var(--paper);border-radius:8px;margin-bottom:1.5rem;padding:1rem}.invoice-detail-description .detail-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem;display:block}.invoice-detail-description p{color:var(--ink);font-size:.875rem;line-height:1.6}.invoice-detail-file{border-top:1px solid var(--border);padding-top:1rem}.invoice-detail-file .detail-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.75rem;display:block}.invoice-file-actions{gap:.75rem;display:flex}.invoice-file-actions .portal-btn{align-items:center;gap:.5rem;display:inline-flex}.portal-help-info{border:1px solid var(--border);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.5rem;display:flex}.portal-help-info p{color:var(--muted);flex:1;font-size:.875rem;line-height:1.6}.portal-billing-status.warning{color:#f59e0b}@media (max-width:768px){.client-invoice-card{padding:1rem}.invoice-detail-grid{grid-template-columns:1fr;gap:1rem}.portal-help-info{text-align:center;flex-direction:column}}.blog-featured{padding:2rem 0 4rem}.featured-header{color:var(--ink);margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:1.75rem;font-weight:500}.featured-post{color:inherit;border:1px solid var(--border);background:#fff;border-radius:16px;grid-template-columns:1.2fr 1fr;gap:3rem;text-decoration:none;transition:transform .3s,box-shadow .3s;display:grid;overflow:hidden}.featured-post:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000001a}.featured-post-image{background:linear-gradient(135deg,var(--accent-light)0%,var(--accent)100%);border-radius:16px 0 0 16px;min-height:400px;position:relative;overflow:hidden}.featured-post-image img{object-fit:cover;width:100%;height:100%;position:absolute;top:0;left:0}.featured-post-placeholder{color:#ffffff80;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.featured-post-placeholder svg{width:80px;height:80px}.featured-post-content{flex-direction:column;justify-content:center;padding:3rem;display:flex}.featured-post-content h2{color:var(--ink);margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2rem;line-height:1.2}.featured-post-content p{color:var(--muted);margin-bottom:1.5rem;font-size:1rem;line-height:1.7}.blog-list{padding:4rem 0}.blog-layout{grid-template-columns:280px 1fr;gap:3rem;display:grid}.blog-sidebar{height:fit-content;position:sticky;top:120px}.sidebar-section{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.sidebar-section h3{color:var(--ink);margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:1.25rem}.category-list{list-style:none}.category-list li{margin-bottom:.25rem}.category-button{cursor:pointer;width:100%;color:var(--ink);text-align:left;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;padding:.75rem 1rem;font-size:.9rem;transition:background .2s;display:flex}.category-button:hover{background:#1e391f0d}.category-button.active{background:var(--accent);color:#fff}.category-count{background:#0000001a;border-radius:10px;padding:.25rem .5rem;font-size:.75rem}.category-button.active .category-count{background:#fff3}.sidebar-text{color:var(--muted);margin-bottom:1rem;font-size:.875rem;line-height:1.6}.sidebar-cta{color:var(--accent);align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.sidebar-cta:hover{text-decoration:underline}.sidebar-cta svg{width:16px;height:16px}.blog-main{min-height:400px}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;display:grid}.blog-card{border:1px solid var(--border);background:#fff;border-radius:12px;transition:transform .3s,box-shadow .3s;overflow:hidden}.blog-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #00000014}.blog-card a{color:inherit;text-decoration:none;display:block}.blog-card-image{background:linear-gradient(135deg,var(--accent-light)0%,var(--accent)100%);height:200px;position:relative;overflow:hidden}.blog-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.blog-card:hover .blog-card-image img{transform:scale(1.05)}.blog-card-placeholder{color:#fff6;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.blog-card-placeholder svg{width:48px;height:48px}.blog-card-content{padding:1.5rem}.blog-card-content h3{color:var(--ink);margin-bottom:.75rem;font-family:Cormorant Garamond,serif;font-size:1.25rem;line-height:1.3}.blog-card-content p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.post-meta{align-items:center;gap:1rem;margin-bottom:.75rem;font-size:.8rem;display:flex}.post-category{color:var(--accent);background:#1e391f1a;border-radius:15px;padding:.25rem .75rem;font-weight:500;text-decoration:none}.post-category:hover{background:#1e391f26}.post-date,.post-views{color:var(--muted)}.post-author{border-top:1px solid var(--border);align-items:center;gap:.75rem;margin-top:1rem;padding-top:1rem;display:flex}.author-avatar{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;font-weight:600;display:flex}.author-info{flex-direction:column;display:flex}.author-name{color:var(--ink);font-size:.9rem;font-weight:500}.author-role{color:var(--muted);font-size:.8rem}.post-tags{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.post-tag{color:var(--muted);background:var(--paper);border-radius:12px;padding:.25rem .75rem;font-size:.75rem;text-decoration:none;transition:background .2s}.post-tag:hover{background:var(--border)}.tags-label{color:var(--muted);margin-right:.5rem;font-size:.8rem}.blog-loading,.blog-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.blog-loading .loading-spinner,.loading-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;margin-bottom:1rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.blog-empty svg{width:64px;height:64px;color:var(--muted);margin-bottom:1rem}.blog-empty h3{margin-bottom:.5rem;font-family:Cormorant Garamond,serif;font-size:1.5rem}.blog-empty p{color:var(--muted)}.blog-pagination{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:1.5rem;margin-top:3rem;padding-top:2rem;display:flex}.pagination-button{border:1px solid var(--border);cursor:pointer;color:var(--ink);background:#fff;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9rem;transition:all .2s;display:inline-flex}.pagination-button:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent)}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button svg{width:18px;height:18px}.pagination-info{color:var(--muted);font-size:.9rem}.blog-post-loading,.blog-post-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:60vh;padding:4rem 2rem;display:flex}.blog-post-error h1{margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:2rem}.blog-post-error p{color:var(--muted);margin-bottom:2rem}.back-button,.back-link{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;font-size:.9rem;text-decoration:none;transition:opacity .2s;display:inline-flex}.back-button:hover,.back-link:hover{opacity:.7}.back-button svg,.back-link svg{width:18px;height:18px}body:has(.blog-post)>header{background:var(--paper);position:relative}body:has(.blog-post) header:first-of-type{background:var(--paper);position:relative}.blog-post-header{border-bottom:1px solid var(--border);background:#fff;padding:3rem 0}.blog-post-header .container{flex-direction:column;align-items:flex-start;display:flex}.blog-post-header .back-link{align-items:center;gap:.5rem;margin-bottom:2rem;display:inline-flex}.blog-post-header .post-meta{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.blog-post-header h1{max-width:800px;margin-bottom:1.5rem;font-family:Cormorant Garamond,serif;font-size:3rem;line-height:1.2}.blog-post-header .post-excerpt{color:var(--muted);max-width:700px;margin-bottom:2rem;font-size:1.25rem;line-height:1.7}.blog-post-header .post-author{border-top:none;align-items:center;gap:1rem;margin-top:0;padding-top:0;display:flex}.blog-post-cover{margin-top:2rem;margin-bottom:3rem}.blog-post-cover img{object-fit:cover;border-radius:16px;width:100%;max-height:500px;box-shadow:0 8px 40px #0000001a}.blog-post-body{padding:3rem 0 4rem}.post-content{max-width:720px;margin:0 auto;font-size:1.1rem;line-height:1.8}.post-content h1{margin:2.5rem 0 1.5rem;font-family:Cormorant Garamond,serif;font-size:2.5rem}.post-content h2{margin:2.5rem 0 1rem;font-family:Cormorant Garamond,serif;font-size:2rem}.post-content h3{margin:2rem 0 1rem;font-family:Cormorant Garamond,serif;font-size:1.5rem}.post-content p{margin-bottom:1.5rem}.post-content ul,.post-content ol{margin:1.5rem 0;padding-left:1.5rem}.post-content li{margin-bottom:.5rem}.post-content blockquote{border-left:4px solid var(--accent);color:var(--muted);margin:2rem 0;padding-left:1.5rem;font-style:italic}.post-content pre{background:var(--ink);color:var(--paper);border-radius:8px;margin:1.5rem 0;padding:1.5rem;overflow-x:auto}.post-content code{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:.9em}.post-content p code{color:var(--accent);background:#1e391f1a;border-radius:4px;padding:.15rem .4rem}.post-content a{color:var(--accent);text-decoration:underline}.post-content a:hover{text-decoration:none}.post-content strong{font-weight:600}.post-content em{font-style:italic}.blog-post-body .post-tags{border-top:1px solid var(--border);max-width:720px;margin:3rem auto 0;padding-top:2rem}.post-share{align-items:center;gap:1rem;max-width:720px;margin:2rem auto 0;display:flex}.share-label{color:var(--muted);font-size:.9rem}.share-buttons{gap:.75rem;display:flex}.share-button{border:1px solid var(--border);width:40px;height:40px;color:var(--ink);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;transition:all .2s;display:flex}.share-button:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.share-button svg{width:18px;height:18px}.related-posts{background:#fff;padding:4rem 0}.related-posts h2{text-align:center;margin-bottom:2rem;font-family:Cormorant Garamond,serif;font-size:2rem}.related-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;display:grid}.savings-calculator{border:1px solid var(--border);background:linear-gradient(135deg,#f8f9fa 0%,#fff 100%);border-radius:12px;margin:2rem 0;overflow:hidden;box-shadow:0 4px 20px #0000000f}.calculator-header{background:var(--ink);color:#fff;padding:1.5rem 2rem}.calculator-header h4{margin:0 0 .5rem;font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:600}.calculator-header p{opacity:.8;margin:0;font-size:.9rem}.calculator-body{grid-template-columns:1fr 1fr;gap:2rem;padding:2rem;display:grid}.calculator-inputs{flex-direction:column;gap:1rem;display:flex}.input-group{flex-direction:column;gap:.4rem;display:flex}.input-group label{color:var(--muted);font-size:.85rem;font-weight:500}.input-group input{border:1px solid var(--border);background:#fff;border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s,box-shadow .2s}.input-group input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #8b5a2b1a}.input-group input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-group input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-group input[type=number]{-moz-appearance:textfield}.input-divider{background:var(--border);height:1px;margin:.5rem 0}.calculator-results{border:1px solid var(--border);background:#fff;border-radius:8px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.result-item{justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.result-label{color:var(--muted);font-size:.9rem}.result-value{color:var(--ink);font-size:1.1rem;font-weight:600}.result-divider{background:var(--border);height:1px;margin:.5rem 0}.result-highlight{background:linear-gradient(135deg,#8b5a2b0d 0%,#8b5a2b1a 100%);border-radius:0;margin:0 -1.5rem;padding:1rem 1.5rem}.result-highlight:last-child{border-radius:0 0 8px 8px;margin-bottom:-1.5rem}.result-value.savings{color:var(--accent);font-size:1.3rem}.calculator-footer{border-top:1px solid var(--border);background:#00000005;padding:1rem 2rem}.calculator-footer p{color:var(--muted);margin:0;font-size:.8rem;font-style:italic}@media (max-width:768px){.calculator-body{grid-template-columns:1fr;gap:1.5rem}.calculator-header{padding:1.25rem 1.5rem}.calculator-body{padding:1.5rem}.calculator-footer{padding:1rem 1.5rem}.result-highlight{margin:0 -1.5rem;padding:.75rem 1.5rem}}.blog-admin-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.blog-admin-stats .stat-card{border:1px solid var(--border);text-align:center;background:#fff;border-radius:12px;padding:1.5rem}.blog-admin-stats .stat-value{color:var(--accent);margin-bottom:.25rem;font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:600;display:block}.blog-admin-stats .stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.blog-admin-filters{flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;display:flex}.blog-admin-filters .filter-group{flex:1;min-width:200px}.post-category-badge{color:var(--accent);text-transform:capitalize;background:#1e391f1a;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;display:inline-block}.featured-badge-small{color:#f59e0b;margin-left:.5rem;font-size:.9rem;display:inline-block}.blog-editor-modal{width:95%;max-width:1200px;max-height:90vh}.blog-editor-content{grid-template-columns:1fr 320px;gap:2rem;max-height:calc(90vh - 180px);display:grid;overflow-y:auto}.editor-main{flex-direction:column;gap:1rem;display:flex}.editor-sidebar{flex-direction:column;gap:.75rem;display:flex}.editor-sidebar .form-group{margin-bottom:0}.blog-content-editor{resize:vertical;min-height:400px;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:.9rem;line-height:1.6}@media (max-width:1024px){.blog-layout{grid-template-columns:1fr}.blog-sidebar{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid;position:relative;top:0}.sidebar-section{margin-bottom:0}.blog-editor-content{grid-template-columns:1fr}.editor-sidebar{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}}@media (max-width:768px){.featured-post{grid-template-columns:1fr}.featured-header{margin-bottom:1rem;font-size:1.5rem}.featured-post-image{border-radius:16px 16px 0 0;min-height:250px}.featured-post-content{padding:1.5rem}.featured-post-content h2{font-size:1.5rem}.blog-grid{grid-template-columns:1fr}.blog-post-header h1{font-size:2rem}.blog-post-header .post-excerpt,.post-content{font-size:1rem}.post-share{flex-direction:column;align-items:flex-start}.blog-admin-stats{grid-template-columns:repeat(2,1fr)}.blog-editor-modal{border-radius:0;width:100%;max-height:100vh}.blog-editor-content{padding:1rem}}
