:root{--cream: #F7F2EA;--cream-dark: #EDE8DF;--sage: #A8B5A2;--sage-dark: #8FA088;--olive: #5E6B55;--olive-dark: #4A5443;--white: #FFFFFF;--text-dark: #2C2C2C;--text-mid: #555555;--text-light: #888888;--error: #C0392B;--success: #5E6B55;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "DM Sans", Arial, sans-serif;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 4px rgba(0,0,0,.08);--shadow-md: 0 4px 16px rgba(0,0,0,.1);--shadow-lg: 0 8px 32px rgba(0,0,0,.12);--max-width: 1140px;--nav-height: 72px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background-color:var(--cream);color:var(--text-dark);line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font-family:var(--font-body)}input,textarea,select{font-family:var(--font-body);font-size:1rem}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;line-height:1.2;color:var(--olive)}h1{font-size:clamp(2.4rem,5vw,4rem)}h2{font-size:clamp(1.8rem,3.5vw,2.8rem)}h3{font-size:clamp(1.3rem,2.5vw,1.8rem)}h4{font-size:1.2rem}p{line-height:1.8}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}.section{padding:96px 0}.section-sm{padding:64px 0}.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.95rem;font-weight:500;letter-spacing:.5px;transition:all .25s ease;cursor:pointer;border:none}.btn-primary{background:var(--olive);color:var(--cream)}.btn-primary:hover{background:var(--olive-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--olive);border:1.5px solid var(--olive)}.btn-outline:hover{background:var(--olive);color:var(--cream);transform:translateY(-1px)}.btn-sage{background:var(--sage);color:var(--white)}.btn-sage:hover{background:var(--sage-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.85rem;font-weight:500;color:var(--text-mid);text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group textarea,.form-group select{padding:12px 16px;border:1.5px solid var(--cream-dark);border-radius:var(--radius-sm);background:var(--white);color:var(--text-dark);font-size:1rem;transition:border-color .2s;outline:none}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--sage)}.form-group textarea{resize:vertical;min-height:140px}.divider{width:60px;height:2px;background:var(--sage);margin:20px auto}.divider-left{margin-left:0}.section-label{font-family:var(--font-body);font-size:.78rem;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dark);margin-bottom:12px}.card{background:var(--white);border-radius:var(--radius-md);padding:32px;box-shadow:var(--shadow-sm);transition:box-shadow .25s ease,transform .25s ease}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.alert{padding:14px 18px;border-radius:var(--radius-sm);font-size:.9rem;margin-top:12px}.alert-success{background:#eaf0e8;color:var(--olive);border-left:3px solid var(--olive)}.alert-error{background:#fdecea;color:var(--error);border-left:3px solid var(--error)}.page-hero{background:var(--olive);color:var(--cream);padding:100px 0 80px;text-align:center}.page-hero h1{color:var(--cream);margin-bottom:16px}.page-hero p{color:#f7f2eacc;font-size:1.1rem;max-width:560px;margin:0 auto}.spinner{width:24px;height:24px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--white);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.whatsapp-float{position:fixed;bottom:28px;right:28px;z-index:999}.admin-layout{display:flex;min-height:100vh;background:#f4f6f4}.admin-sidebar{width:240px;background:var(--olive);color:var(--cream);padding:32px 0;position:fixed;top:0;left:0;height:100vh;overflow-y:auto;z-index:100}.admin-content{margin-left:240px;flex:1;padding:40px;min-height:100vh}@media (max-width: 768px){.section{padding:64px 0}.section-sm{padding:48px 0}.container{padding:0 20px}.admin-sidebar{width:100%;height:auto;position:relative}.admin-content{margin-left:0;padding:24px 16px}}
