@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700&family=Playfair+Display:wght@500;600;700&display=swap";:root{--color-primary:#0f172a;--color-primary-light:#1e3a5f;--color-primary-soft:#334155;--color-accent:#c9a227;--color-accent-hover:#d4af37;--color-bg:#fafaf9;--color-bg-dark:#020617;--color-text:#1e293b;--color-text-muted:#64748b;--font-sans:"DM Sans", system-ui, sans-serif;--font-serif:"Playfair Display", Georgia, serif;--shadow:0 4px 24px #0f172a14;--shadow-strong:0 12px 40px #0f172a1f;--radius:8px;--radius-lg:12px;--transition:.25s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}img,video,svg{max-width:100%;height:auto}html{scroll-behavior:smooth;scroll-padding-top:80px;overflow-x:hidden}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.skip-link{background:var(--color-primary);color:#fff;border-radius:var(--radius);z-index:200;padding:.6rem 1rem;font-weight:600;text-decoration:none;transition:top .2s;position:absolute;top:-3rem;left:1rem}.skip-link:focus{outline:2px solid var(--color-accent);outline-offset:2px;top:1rem}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);flex-direction:column;max-width:100vw;min-height:100vh;font-size:1rem;line-height:1.65;display:flex;overflow-x:hidden}#root{text-align:left;border:none;flex-direction:column;width:100%;max-width:100vw;min-height:100vh;margin:0;display:flex;overflow-x:hidden}.site-header{z-index:100;background:#f5f5f5;border-bottom:1px solid #0f172a14;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;padding:1rem 1.5rem;display:flex}.logo-link{transition:opacity var(--transition);align-items:center;gap:12px;padding:6px 0;text-decoration:none;display:flex}.logo-link:hover{opacity:.9}.logo-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:var(--radius)}.logo-img{object-fit:contain;object-position:center;mix-blend-mode:darken;flex-shrink:0;width:56px;height:56px;display:block}@media (width>=769px){.logo-img{width:64px;height:64px}}@media (width<=480px){.logo-img{width:48px;height:48px}}.logo-text{flex-direction:column;line-height:1.2;display:flex}.logo-text-main{font-family:var(--font-serif);color:var(--color-primary);letter-spacing:.04em;font-size:1.35rem;font-weight:700}.logo-text-sub{color:var(--color-primary);letter-spacing:.08em;margin-top:1px;font-size:.7rem;font-weight:500}@media (width>=769px){.logo-text-main{font-size:1.5rem}.logo-text-sub{font-size:.75rem}}@media (width<=480px){.logo-text-main{font-size:1.15rem}.logo-text-sub{font-size:.65rem}}.main-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:2.25rem;display:flex}.main-nav a{color:var(--color-text);transition:color var(--transition);white-space:nowrap;font-size:.9375rem;font-weight:500;text-decoration:none}.main-nav a:hover,.main-nav a.active{color:var(--color-primary)}.main-nav a:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:4px}main{flex:1;width:100%;max-width:100%;overflow-x:hidden}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.hero{text-align:center;background:linear-gradient(165deg, var(--color-primary) 0%, var(--color-primary-light) 45%, #0f172a 100%);color:#fff;flex-direction:column;justify-content:center;align-items:center;min-height:72vh;padding:4rem 1.5rem 5rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";opacity:.9;background-image:radial-gradient(circle at 2px 2px,#ffffff0f 1px,#0000 0);background-size:28px 28px;position:absolute;inset:0}.hero h1{font-family:var(--font-serif);letter-spacing:-.02em;margin-bottom:.75rem;font-size:clamp(2rem,5vw,3.25rem);font-weight:600;animation:.8s ease-out heroFadeIn;position:relative}.hero .tagline,.hero-actions,.hero .stats-row{animation:.8s ease-out .15s both heroFadeIn}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero .tagline{opacity:.95;max-width:640px;margin:0 auto;font-size:clamp(1rem,2.2vw,1.2rem);font-weight:400;line-height:1.7}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:2.25rem;display:flex;position:relative}.hero-actions .btn{text-align:center;min-width:160px}.btn{font-family:var(--font-sans);border-radius:var(--radius);transition:all var(--transition);cursor:pointer;border:none;justify-content:center;align-items:center;padding:.875rem 1.75rem;font-size:.9375rem;font-weight:600;line-height:1.3;text-decoration:none;display:inline-flex}.btn-primary{background:var(--color-accent);color:var(--color-bg-dark)}.btn-primary:hover{background:var(--color-accent-hover);box-shadow:var(--shadow-strong);transform:translateY(-2px)}.btn-outline{color:#fff;background:0 0;border:2px solid #ffffffd9}.btn-outline:hover{background:#ffffff1f;border-color:#fff}.section-cta{text-align:center;margin-top:2rem}.section-cta .btn{min-width:160px}.section{padding:4rem 0}.section-title{font-family:var(--font-serif);color:var(--color-primary);text-align:center;margin-bottom:.5rem;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:600}.section-subtitle{text-align:center;color:var(--color-text-muted);max-width:640px;margin:0 auto 3rem;line-height:1.7}.stats-row{flex-wrap:wrap;justify-content:center;gap:2.5rem;margin-top:2.5rem;padding:1.5rem 0;display:flex}.stat-item{text-align:center}.stat-item .value{font-family:var(--font-serif);color:var(--color-accent);font-size:2rem;font-weight:600;line-height:1.2;display:block}.stat-item .label{color:#ffffffd9;text-transform:uppercase;letter-spacing:.08em;margin-top:.25rem;font-size:.875rem}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:1.5rem;max-width:100%;margin-top:2rem;display:grid}.card{border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:transform var(--transition), box-shadow var(--transition);background:#fff;border:1px solid #0f172a0f;padding:2rem}.card:hover{box-shadow:var(--shadow-strong);transform:translateY(-4px)}.card h3{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.card p{color:var(--color-text-muted);font-size:.95rem;line-height:1.65}.values-row{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;margin-top:2rem;display:grid}.value-item{text-align:center;padding:1.5rem}.value-item h3{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.value-item p{color:var(--color-text-muted);font-size:.95rem}.page-header{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);color:#fff;text-align:center;padding:3.5rem 1.5rem}.page-header h1{font-family:var(--font-serif);letter-spacing:-.02em;margin-bottom:.5rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:600}.page-header p{opacity:.92;max-width:560px;margin:0 auto;font-size:1.0625rem}.products-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;padding:2rem 0;display:grid}.product-card{border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:transform var(--transition), box-shadow var(--transition);background:#fff;border:1px solid #0f172a0f;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-strong);transform:translateY(-4px)}.product-card .thumb{height:200px;color:var(--color-primary);opacity:.75;background:linear-gradient(145deg,#e2e8f0 0%,#cbd5e1 100%);justify-content:center;align-items:center;font-size:3rem;display:flex}.product-card .body{padding:1.75rem}.product-card h3{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:.5rem;font-size:1.2rem;font-weight:600}.product-card p{color:var(--color-text-muted);font-size:.9rem;line-height:1.6}.about-content{max-width:720px;margin:0 auto}.about-content p{color:var(--color-text);margin-bottom:1.25rem;line-height:1.7}.about-content h2{font-family:var(--font-serif);color:var(--color-primary);margin:2.25rem 0 1rem;font-size:1.5rem;font-weight:600}.about-content h2:first-of-type{margin-top:0}.contact-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:3rem;max-width:100%;padding:2.5rem 0;display:grid}@media (width<=768px){.contact-wrap{grid-template-columns:1fr}}.contact-info h3{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:1rem;font-size:1.25rem;font-weight:600}.contact-info p,.contact-info a{color:var(--color-text-muted);margin-bottom:.5rem;line-height:1.5;text-decoration:none;display:block}.contact-info a:hover{color:var(--color-accent)}.contact-form{border-radius:var(--radius-lg);box-shadow:var(--shadow);background:#fff;border:1px solid #0f172a0f;padding:2rem}.contact-form h3{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:1.25rem;font-weight:600}.contact-form label{color:var(--color-text);margin-bottom:.4rem;font-size:.9375rem;font-weight:500;display:block}.contact-form input,.contact-form textarea{border-radius:var(--radius);width:100%;font-family:var(--font-sans);transition:border-color var(--transition), box-shadow var(--transition);border:1px solid #0f172a26;margin-bottom:1.125rem;padding:.75rem 1rem;font-size:1rem}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #0f172a14}.contact-form .btn:focus-visible,.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.contact-form textarea{resize:vertical;min-height:130px}.contact-form .btn{width:100%;margin-top:.25rem;padding:1rem 1.5rem}.site-footer{background:var(--color-bg-dark);color:#e2e8f0;margin-top:auto;padding:3rem 1.5rem 1.5rem}.footer-inner{max-width:1200px;margin:0 auto}.footer-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2.5rem;margin-bottom:2rem;display:grid}.footer-grid a{color:#ffffffc7;transition:color var(--transition);margin-bottom:.35rem;font-size:.9375rem;text-decoration:none;display:block}.footer-grid a:hover{color:var(--color-accent)}.footer-grid h4{font-family:var(--font-serif);color:#fff;margin-bottom:1rem;font-size:1rem;font-weight:600}.footer-bottom{text-align:center;color:#ffffff8c;border-top:1px solid #ffffff1a;padding-top:1.5rem;font-size:.9rem}.cta-strip{background:var(--color-primary);color:#fff;text-align:center;padding:3rem 1.5rem}.cta-strip h2{font-family:var(--font-serif);margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.cta-strip p{opacity:.92;max-width:560px;margin-bottom:1.5rem;margin-left:auto;margin-right:auto}.cta-strip .btn{min-width:160px}.section--full{width:100%;max-width:100%;padding:4rem 0;overflow-x:hidden}.section--full .container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.home-stats{flex-wrap:wrap;justify-content:center;gap:2.5rem;margin:2rem 0 2.5rem;display:flex}.home-stats .stat-item{color:var(--color-text)}.home-stats .stat-item .value{color:var(--color-primary);font-size:1.75rem}.home-stats .stat-item .label{color:var(--color-text-muted);text-transform:none;letter-spacing:0;font-size:.9rem}.cycle-steps{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem;max-width:100%;margin:2.5rem 0;display:grid}.cycle-step{border-radius:var(--radius);transition:box-shadow var(--transition);background:#fff;border:1px solid #0f172a14;padding:1.25rem .75rem}.cycle-step:hover{box-shadow:var(--shadow)}.cycle-step .step-num{color:var(--color-accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem;font-weight:600}.cycle-step h4{font-family:var(--font-serif);color:var(--color-primary);font-size:.95rem;font-weight:600;line-height:1.3}@media (width<=1024px){.cycle-steps{grid-template-columns:repeat(4,1fr)}}@media (width<=640px){.cycle-steps{grid-template-columns:1fr 1fr;gap:.75rem}.cycle-step h4{font-size:.875rem}}.home-products{grid-template-columns:repeat(5,minmax(0,1fr));gap:1.25rem;max-width:100%;margin:2.5rem 0;display:grid}.home-product-item{border-radius:var(--radius-lg);text-align:center;transition:transform var(--transition), box-shadow var(--transition);background:#fff;border:1px solid #0f172a0f;padding:1.75rem 1.25rem}.home-product-item:hover{box-shadow:var(--shadow-strong);transform:translateY(-4px)}.home-product-item h4{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:.75rem;font-size:1rem;font-weight:600;line-height:1.3}.home-product-item a{color:var(--color-accent);margin-top:.5rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-block}.home-product-item a:hover{color:var(--color-primary)}@media (width<=1024px){.home-products{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.home-products{grid-template-columns:1fr}}.impact-banner{background:var(--color-bg);text-align:center;border-top:1px solid #0f172a0f;border-bottom:1px solid #0f172a0f;padding:2.5rem 1.5rem}.impact-banner p{color:var(--color-text);max-width:800px;margin:0 auto;font-size:1.125rem;line-height:1.6}.csr-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0 2.5rem;display:grid}.csr-pillar{border-radius:var(--radius-lg);text-align:center;transition:transform var(--transition), box-shadow var(--transition);background:#fff;border:1px solid #0f172a0f;padding:1.5rem}.csr-pillar:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.csr-pillar h4{font-family:var(--font-serif);color:var(--color-primary);font-size:1rem;font-weight:600}@media (width<=768px){.csr-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.csr-grid{grid-template-columns:1fr}}@media (width<=640px){.main-nav{gap:1.5rem}.main-nav a{font-size:.9rem}.hero{padding:3rem 1rem 4rem}.hero-actions{flex-direction:column;width:100%;max-width:280px;margin-left:auto;margin-right:auto}.hero-actions .btn{width:100%}}
