:root{--bg-primary:#fff;--bg-secondary:#fffcf7;--bg-accent:#fdfaf2;--text-primary:#4e3d30;--text-secondary:#756357;--text-light:#a29184;--primary:#e04f26;--primary-hover:#c43a14;--primary-light:#fef3c7;--secondary:#f59e0b;--secondary-hover:#d97706;--whatsapp:#25d366;--whatsapp-hover:#128c7e;--border:#f7ede2;--shadow-sm:0 4px 12px #4e3d3008;--shadow-md:0 12px 32px #4e3d300d;--shadow-lg:0 20px 48px #4e3d3014;--font-title:"Playfair Display", Georgia, serif;--font-body:"Plus Jakarta Sans", system-ui, sans-serif;--max-width:1400px;--header-height:80px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}a,button{touch-action:manipulation}a{color:inherit;text-decoration:none;transition:color .3s}h1,h2,h3,h4{font-family:var(--font-title);font-weight:700;line-height:1.25}h1{margin-bottom:1.5rem;font-size:3rem}h2{margin-bottom:1.25rem;font-size:2.25rem}h3{margin-bottom:1rem;font-size:1.5rem}p{color:var(--text-secondary);margin-bottom:1.5rem}img{max-width:100%;height:auto;display:block}.btn{cursor:pointer;border:none;border-radius:50px;justify-content:center;align-items:center;gap:.5rem;padding:.8rem 1.6rem;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #9e2a2b4d}.btn-secondary{color:var(--text-primary);border:2px solid var(--border);background-color:#0000}.btn-secondary:hover{background-color:var(--bg-secondary);border-color:var(--text-primary);transform:translateY(-2px)}.btn-whatsapp{background-color:var(--whatsapp);color:#fff!important}.btn-whatsapp:hover{background-color:var(--whatsapp-hover);transform:translateY(-2px);box-shadow:0 4px 12px #25d3664d}.header{width:100%;height:var(--header-height);z-index:1000;-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background-color:#fdfbf7cc;justify-content:space-between;align-items:center;padding:0 2rem;transition:all .3s;display:flex;position:fixed;top:0;left:0}.logo{font-family:var(--font-title);color:var(--primary);align-items:center;gap:.5rem;font-size:1.5rem;font-weight:800;display:flex}.logo-icon{font-size:1.8rem}.nav{align-items:center;gap:2rem;display:flex}.nav-link{color:var(--text-secondary);padding:.5rem 0;font-size:.95rem;font-weight:600;position:relative}.nav-link:hover{color:var(--primary)}.nav-link:after{content:"";background-color:var(--primary);width:0;height:2px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-link:hover:after{width:100%}.section{justify-content:center;align-items:center;padding:7rem 2rem;display:flex}.container{width:100%;max-width:var(--max-width);margin:0 auto}.hero{min-height:100vh;padding-top:calc(var(--header-height) + 2rem);background:radial-gradient(circle at top right, var(--bg-accent), transparent 50%), radial-gradient(circle at bottom left, var(--bg-secondary), transparent 50%);align-items:center;display:flex}.hero-grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:4rem;display:grid}.hero-content{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeInUp;transform:translateY(20px)}.badge{background-color:var(--bg-secondary);border:1px solid var(--border);color:var(--primary);text-transform:uppercase;letter-spacing:.05em;border-radius:30px;margin-bottom:1.5rem;padding:.4rem 1rem;font-size:.85rem;font-weight:700;display:inline-flex}.hero-title{color:var(--text-primary);margin-bottom:1.5rem;font-size:3.5rem}.hero-title span{color:var(--primary)}.hero-description{color:var(--text-secondary);margin-bottom:2.5rem;font-size:1.15rem}.hero-actions{flex-wrap:wrap;gap:1.5rem;display:flex}.hero-image-wrapper{box-shadow:var(--shadow-lg);aspect-ratio:4/3;opacity:0;border-radius:24px;animation:.8s cubic-bezier(.16,1,.3,1) .2s forwards scaleIn;position:relative;overflow:hidden;transform:scale(.95)}.hero-img{object-fit:cover;width:100%;height:100%;transition:transform .8s}.hero-image-wrapper:hover .hero-img{transform:scale(1.05)}.features-row{grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:4rem;display:grid}.feature-card{background-color:var(--bg-primary);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:20px;padding:2.5rem;transition:all .3s}.feature-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary);transform:translateY(-5px)}.feature-icon{color:var(--primary);margin-bottom:1.5rem;font-size:2.5rem}.feature-title{margin-bottom:.75rem;font-size:1.25rem}.story{background-color:var(--bg-secondary)}.story-grid{grid-template-columns:1fr 1.1fr;align-items:center;gap:5rem;display:grid}.story-image-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.story-img-wrapper{box-shadow:var(--shadow-md);border-radius:16px;overflow:hidden}.story-img-wrapper.large{aspect-ratio:16/9;grid-column:span 2}.story-img-wrapper.small{aspect-ratio:1}.story-img{object-fit:cover;width:100%;height:100%}.story-content h2{margin-bottom:1.5rem}.story-highlight{color:var(--primary);border-left:3px solid var(--primary);margin-bottom:1.5rem;padding-left:1rem;font-size:1.2rem;font-weight:600}.catalog-header{text-align:center;max-width:600px;margin:0 auto 3rem}.filter-bar{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:3rem;display:flex}.filter-btn{border:1px solid var(--border);background-color:var(--bg-primary);color:var(--text-secondary);cursor:pointer;border-radius:30px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.16,1,.3,1)}.filter-btn:hover{border-color:var(--primary);color:var(--primary)}.filter-btn.active{background-color:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 4px 10px #9e2a2b33}.product-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2.5rem;display:grid}.product-card{background-color:var(--bg-primary);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:20px;flex-direction:column;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary);transform:translateY(-8px)}.product-media{aspect-ratio:4/3;background-color:var(--bg-secondary);width:100%;position:relative;overflow:hidden}.product-image-container{width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:flex}.product-image{object-fit:cover;flex-shrink:0;width:100%;height:100%}.slide-arrow{cursor:pointer;z-index:10;border:1px solid var(--border);width:36px;height:36px;box-shadow:var(--shadow-sm);opacity:0;background-color:#fdfbf7e6;border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.product-card:hover .slide-arrow{opacity:1}.slide-arrow.prev{left:10px}.slide-arrow.next{right:10px}.slide-arrow:hover{background-color:var(--primary);color:#fff;border-color:var(--primary)}.slide-dots{z-index:10;gap:6px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.slide-dot{cursor:pointer;background-color:#fdfbf780;border-radius:50%;width:7px;height:7px;transition:all .3s}.slide-dot.active{background-color:var(--primary);border-radius:10px;width:16px}.product-info{flex-direction:column;flex-grow:1;padding:1.5rem;display:flex}.product-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;display:flex}.tag{background-color:var(--bg-secondary);color:var(--text-secondary);border-radius:4px;padding:.2rem .6rem;font-size:.75rem;font-weight:700}.tag.primary-tag{color:var(--primary);background-color:#9e2a2b1a}.product-title{color:var(--text-primary);margin-bottom:.75rem;font-size:1.35rem}.product-meta-desc{color:var(--text-light);border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:auto;padding-top:.75rem;font-size:.85rem;display:flex}.lightbox{z-index:2000;opacity:0;pointer-events:none;background-color:#120e0cf2;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;left:0}.lightbox.active{opacity:1;pointer-events:auto}.lightbox-content{flex-direction:column;align-items:center;max-width:90vw;max-height:85vh;display:flex;position:relative}.lightbox-img{object-fit:contain;border-radius:12px;max-width:100%;max-height:80vh;transition:transform .4s cubic-bezier(.16,1,.3,1);transform:scale(.95);box-shadow:0 20px 60px #00000080}.lightbox.active .lightbox-img{transform:scale(1)}.lightbox-close{color:#fff;cursor:pointer;font-size:2.5rem;line-height:1;transition:color .3s;position:absolute;top:-45px;right:0}.lightbox-close:hover{color:var(--primary)}.lightbox-caption{color:#fff;font-family:var(--font-title);margin-top:1rem;font-size:1.25rem}.whatsapp-banner{background:radial-gradient(circle at top left, var(--bg-accent), var(--bg-secondary));text-align:center;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.wa-container{max-width:700px;margin:0 auto}.wa-icon{color:var(--whatsapp);margin-bottom:1.5rem;font-size:3.5rem;animation:2s infinite pulse;display:inline-block}.wa-title{margin-bottom:1rem;font-size:2.25rem}.wa-description{margin-bottom:2rem;font-size:1.1rem}.contact-grid{grid-template-columns:.9fr 1.1fr;gap:5rem;display:grid}.contact-info h2{margin-bottom:1.5rem}.contact-details{margin-top:2.5rem}.contact-item{align-items:flex-start;gap:1.25rem;margin-bottom:2rem;display:flex}.contact-item-icon{width:48px;height:48px;color:var(--primary);background-color:#9e2a2b1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.contact-item-text h4{font-family:var(--font-body);margin-bottom:.25rem;font-size:1rem;font-weight:700}.contact-item-text p{color:var(--text-secondary);margin:0;font-size:.95rem}.contact-form-card{background-color:var(--bg-primary);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:24px;padding:3rem}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.form-label{color:var(--text-secondary);font-size:.9rem;font-weight:700}.form-control{box-sizing:border-box;width:100%;font-family:var(--font-body);background-color:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);border-radius:12px;outline:none;padding:.9rem 1.2rem;font-size:.95rem;transition:all .3s}.form-control:focus{background-color:var(--bg-primary);border-color:var(--primary);box-shadow:0 0 0 4px #9e2a2b1a}textarea.form-control{resize:vertical;min-height:120px}.submit-btn{width:100%;margin-top:1rem;padding:1rem;font-size:1rem}.form-status{border-radius:12px;align-items:center;gap:.5rem;margin-top:1.5rem;padding:1rem;font-size:.95rem;font-weight:600;animation:.3s fadeIn;display:flex}.form-status.success{color:#128c7e;background-color:#25d36626;border:1px solid #25d36633}.form-status.error{color:#9e2a2b;background-color:#9e2a2b26;border:1px solid #9e2a2b33}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.footer{border-top:1px solid var(--border);background-color:var(--bg-secondary);padding:4rem 2rem 3rem}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;display:flex}.footer-nav{gap:2rem;display:flex}.footer-nav-link{color:var(--text-light);font-size:.9rem}.footer-nav-link:hover{color:var(--primary)}.footer-divider{border:none;border-top:1px solid var(--border);opacity:.7;margin:2rem 0}.footer-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-copy{color:var(--text-light);font-size:.9rem}.footer-credit{color:var(--text-light);font-size:.85rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:968px){h1{font-size:2.5rem}h2{font-size:1.85rem}.hero{min-height:auto;padding-top:calc(var(--header-height) + 3rem);padding-bottom:4rem}.hero-content{text-align:center;align-items:center}.hero-title{font-size:2.6rem}.hero-grid{text-align:center;grid-template-columns:1fr;gap:3rem}.hero-actions{justify-content:center}.features-row{grid-template-columns:1fr;gap:1.5rem}.story-grid{grid-template-columns:1fr;gap:3rem}.story-image-grid{order:2}.contact-grid{grid-template-columns:1fr;gap:3rem}}@media (max-width:768px){.header{-webkit-backdrop-filter:none;background-color:#fdfbf7;padding:0 1.5rem}.nav:not(.admin-nav){display:none}.admin-nav{gap:1rem;display:flex!important}.section{padding:4rem 1.5rem}.hero{padding-top:calc(var(--header-height) + 2rem);padding-bottom:3rem}.hero-title{font-size:2.1rem;line-height:1.25}.contact-form-card{padding:2rem 1.5rem}.footer-top{text-align:center;flex-direction:column;gap:1.5rem}.footer-nav{flex-direction:column;align-items:center;gap:1rem}.footer-bottom{text-align:center;flex-direction:column;gap:.75rem}.slide-arrow{opacity:1!important}.filter-bar{-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.5rem;flex-wrap:nowrap!important;justify-content:flex-start!important;overflow-x:auto!important}.filter-bar::-webkit-scrollbar{display:none}.filter-btn{flex-shrink:0!important}}.close-hover:hover{color:var(--primary)!important}.add-photo-btn:hover{border-color:var(--primary)!important;color:var(--primary)!important;background-color:var(--bg-secondary)!important}.add-photo-btn:active{transform:scale(.95)}select.form-control{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23756357' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-size:16px}.calculator-grid-wrapper{grid-template-columns:1.2fr 1fr;gap:2.5rem;display:grid}@media (max-width:850px){.calculator-grid-wrapper{grid-template-columns:1fr}}.admin-main{min-height:90vh;margin-top:var(--header-height);padding:3rem 2rem}@media (max-width:768px){.admin-main{padding:1.5rem 1rem}}.calculator-item-row{background-color:var(--bg-primary);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:16px;grid-template-columns:2.2fr 1fr 1.2fr auto;align-items:center;gap:.75rem;padding:.75rem 1rem;display:grid}.calculator-item-row input{width:100%}.calc-item-yield{align-items:center;gap:.25rem;width:100%;display:flex}.calc-item-yield input{flex:1;min-width:0}.calc-item-yield span{flex-shrink:0}.calc-item-delete button{color:#c53030;cursor:pointer;background:0 0;border:none;padding:0 .5rem;font-size:1.5rem;line-height:1;transition:transform .2s,color .2s}.calc-item-delete button:hover{color:#e53e3e;transform:scale(1.15)}@media (max-width:768px){.calculator-item-row{grid-template-rows:auto auto;grid-template-columns:1fr 1fr auto;gap:.6rem;padding:.75rem}.calc-item-name{grid-area:1/span 2}.calc-item-delete{grid-area:1/3;justify-content:flex-end;align-items:center;display:flex}.calc-item-cost{grid-area:2/1}.calc-item-yield{grid-area:2/2/auto/span 2}}.calculator-results-card{background-color:var(--bg-primary);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:24px;flex-direction:column;gap:1.5rem;height:fit-content;padding:2rem;display:flex}@media (max-width:768px){.calculator-results-card{gap:1.25rem;padding:1.5rem}}.font-bold{font-weight:700}.hover\:underline:hover{text-decoration:underline}.transition-colors{transition:all .2s}.portpytech-link{text-decoration:none;color:var(--text-light)!important}.portpytech-link:hover{color:var(--primary)!important}.table-row-hover{transition:background-color .2s}.table-row-hover:hover{background-color:var(--bg-secondary)}
