:root{--forest: #2d5016;--forest-dark: #1f3a0f;--sage: #6b8e4e;--mint: #a8c896;--cream: #faf9f5;--warm-white: #f4f3ef;--charcoal: #1a1a1a;--slate: #4a4a4a;--gold: #c4a35a;--gold-light: #e8d5a3}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.7;color:var(--charcoal);background-color:var(--cream);overflow-x:hidden}.bg-pattern{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:-1;opacity:.4;background-image:radial-gradient(circle at 20% 80%,var(--mint) 0%,transparent 25%),radial-gradient(circle at 80% 20%,var(--gold-light) 0%,transparent 20%),radial-gradient(circle at 40% 40%,var(--sage) 0%,transparent 15%);filter:blur(80px)}h1,h2,h3{font-family:Playfair Display,Georgia,serif}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.header{background:#f0edc8;color:var(--charcoal);padding:16px 24px;position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(196,163,90,.25);box-shadow:0 2px 20px #0000000a}.header-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;animation:fadeInDown .5s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.logo{flex-shrink:0;text-decoration:none}.logo img{height:50px;width:auto;display:block}.tagline{font-family:Playfair Display,Georgia,serif;font-size:clamp(.85rem,1.5vw,1rem);font-weight:400;color:var(--forest);letter-spacing:.3px;margin:0;text-align:center;flex:1;display:none}@media(min-width:768px){.tagline{display:block}}.header-cta{flex-shrink:0;background:linear-gradient(135deg,var(--forest) 0%,var(--sage) 100%);color:#fff;border:none;padding:10px 22px;border-radius:50px;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 10px #2d501633}.header-cta:hover{transform:translateY(-2px);box-shadow:0 4px 20px #2d50164d}@media(max-width:480px){.header{padding:12px 16px}.logo img{height:40px}.header-cta{padding:8px 16px;font-size:.85rem}}.about-content{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}@media(min-width:768px){.about-content{grid-template-columns:1fr 1fr}}.about-text{font-size:1.1rem;color:var(--slate)}.about-text p{margin-bottom:20px}.about-visual{display:flex;justify-content:center;align-items:center}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.stat-item{background:linear-gradient(135deg,var(--forest) 0%,var(--sage) 100%);color:#fff;padding:25px;border-radius:12px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.stat-item:hover{transform:translateY(-5px);box-shadow:0 15px 40px #2d501633}.stat-number{font-family:Playfair Display,Georgia,serif;font-size:2.5rem;font-weight:700;display:block;line-height:1;margin-bottom:5px}.stat-label{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;opacity:.9}@media(max-width:600px){.stats-grid{grid-template-columns:1fr}}.card{background:#fff;padding:35px 30px;border-radius:16px;box-shadow:0 4px 20px #0000000f;transition:all .4s cubic-bezier(.25,.46,.45,.94);border:1px solid rgba(107,142,78,.1);position:relative;overflow:hidden;height:100%}.card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--forest),var(--sage),var(--gold));transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.card:hover{transform:translateY(-8px);box-shadow:0 20px 50px #2d501626}.card:hover:before{transform:scaleX(1)}.card-icon{width:50px;height:50px;background:linear-gradient(135deg,var(--mint),var(--sage));border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.card-icon svg{width:26px;height:26px;color:var(--forest-dark)}.card h3{font-family:Playfair Display,Georgia,serif;margin-bottom:12px;color:var(--forest);font-size:1.3rem;font-weight:600}.card p{color:var(--slate);font-size:.95rem;line-height:1.7}@media(max-width:600px){.card{padding:25px 20px}}.services{background:var(--warm-white);margin:0;max-width:none;padding:80px 20px}.services-wrapper{max-width:1200px;margin:0 auto}.services-grid,.experience-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}.cta{background:linear-gradient(135deg,var(--forest-dark) 0%,var(--forest) 100%);color:#fff;padding:80px 20px;text-align:center;position:relative;overflow:hidden;max-width:none;margin:0}.cta:before{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:200%;background:radial-gradient(circle,var(--sage) 0%,transparent 60%);opacity:.15}.cta-content{position:relative;z-index:1;max-width:700px;margin:0 auto}.cta h2{color:#fff;margin-bottom:20px}.cta h2:after{background:linear-gradient(90deg,var(--gold),var(--gold-light))}.cta p{font-size:1.15rem;margin-bottom:30px;opacity:.95}.cta-button{display:inline-flex;align-items:center;gap:10px;padding:16px 36px;background:linear-gradient(135deg,var(--gold),var(--gold-light));color:var(--forest-dark);text-decoration:none;font-weight:600;font-size:1rem;font-family:inherit;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #c4a35a4d}.cta-button:hover{transform:translateY(-3px);box-shadow:0 8px 30px #c4a35a80}.cta-button svg{width:20px;height:20px;transition:transform .3s ease}.cta-button:hover svg{transform:translate(5px)}.footer{background-color:var(--charcoal);color:var(--warm-white);text-align:center;padding:50px 20px}.footer-logo{margin-bottom:20px}.footer-logo img{width:150px;height:auto;opacity:.9}.footer p{margin:8px 0;font-size:.9rem;opacity:.8}.footer-tagline{font-size:.85rem;letter-spacing:2px;text-transform:uppercase;margin-top:15px;color:var(--sage)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:#fff;border-radius:20px;width:100%;max-width:580px;max-height:90vh;overflow-y:auto;position:relative;padding:40px;box-shadow:0 25px 80px #00000040;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-close{position:absolute;top:16px;right:16px;background:var(--warm-white);border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--slate)}.modal-close:hover{background:var(--cream);color:var(--charcoal);transform:rotate(90deg)}.modal-close svg{width:20px;height:20px}.modal-header{text-align:center;margin-bottom:30px}.modal-header h2{font-family:Playfair Display,Georgia,serif;color:var(--forest);font-size:2rem;margin-bottom:10px}.modal-header p{color:var(--slate);font-size:.95rem}.contact-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:500px){.form-row{grid-template-columns:1fr}.modal{padding:30px 24px}}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.85rem;font-weight:600;color:var(--charcoal)}.form-group input,.form-group select,.form-group textarea{padding:12px 14px;border:2px solid #e5e7eb;border-radius:10px;font-size:.95rem;font-family:inherit;transition:all .2s ease;background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px #6b8e4e26}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%234a4a4a'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px;padding-right:40px}.form-group textarea{resize:vertical;min-height:100px}.form-group.has-error input,.form-group.has-error textarea{border-color:#ef4444}.error-message{color:#ef4444;font-size:.8rem;margin-top:2px}.submit-button{background:linear-gradient(135deg,var(--forest) 0%,var(--sage) 100%);color:#fff;border:none;padding:16px 32px;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:all .3s ease;margin-top:10px}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #2d50164d}.submit-button:disabled{opacity:.7;cursor:not-allowed}.submit-button svg{width:18px;height:18px}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-note{text-align:center;font-size:.85rem;color:var(--slate);margin-top:5px}.form-note a{color:var(--forest);text-decoration:none;font-weight:500}.form-note a:hover{text-decoration:underline}.modal-success{text-align:center;padding:20px 0}.success-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--mint) 0%,var(--sage) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;animation:scaleIn .4s ease-out}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.success-icon svg{width:40px;height:40px;color:#fff}.modal-success h2{font-family:Playfair Display,Georgia,serif;color:var(--forest);font-size:1.8rem;margin-bottom:12px}.modal-success p{color:var(--slate);font-size:1rem;margin-bottom:24px;max-width:350px;margin-left:auto;margin-right:auto}.modal-button{background:var(--forest);color:#fff;border:none;padding:14px 32px;border-radius:50px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-button:hover{background:var(--forest-dark)}main{min-height:100vh}section{padding:80px 20px;max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:50px}section h2{color:var(--forest);font-size:clamp(2rem,4vw,2.8rem);font-weight:600;margin-bottom:15px;position:relative;display:inline-block}section h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light));border-radius:2px}@media(max-width:600px){section{padding:60px 20px}}
