:root{--color-primary:#075e5f;--color-primary-dark:#043f40;--color-primary-light:#e6f2f2;--color-accent-green:#2c6b4e;--color-accent-gold:#d88c35;--color-accent-gold-hover:#bf7524;--color-bg-cream:#fdfbf7;--color-text-charcoal:#1e293b;--color-text-muted:#475569;--color-border:#e2e8f0;--font-heading:"Lora",serif;--font-body:"Outfit",sans-serif;--font-script:"Playball",cursive;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--transition-all:all .3s cubic-bezier(.4,0,.2,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-bg-cream);color:var(--color-text-charcoal);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.25;color:var(--color-primary)}h1{font-size:2.5rem}h2{font-size:2rem;margin-bottom:1rem;position:relative;display:inline-block}.script-text{font-family:var(--font-script);font-size:1.5em;color:var(--color-primary);font-weight:400}.gold-accent{color:var(--color-accent-gold)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0;position:relative}.grid{display:grid;gap:2rem}.grid-2,.grid-3{grid-template-columns:1fr}@media(min-width:768px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}h1{font-size:3.5rem}h2{font-size:2.5rem}}.navbar{background-color:#fdfbf7e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:2px solid var(--color-primary);position:sticky;top:0;z-index:100;padding:1rem 0;transition:var(--transition-all)}.navbar-container{justify-content:space-between}.nav-logo,.navbar-container{display:flex;align-items:center}.nav-logo{gap:.5rem;text-decoration:none;font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:var(--color-primary)}.nav-logo-sub{font-family:var(--font-body);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;display:block}.nav-links{display:none;gap:2rem;list-style:none;align-items:center}@media(min-width:768px){.nav-links{display:flex}}.nav-link{text-decoration:none;color:var(--color-text-charcoal);font-weight:500;font-size:1rem;padding:.25rem 0;position:relative}.nav-link,.nav-link:after{transition:var(--transition-all)}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--color-accent-gold)}.nav-link:hover{color:var(--color-primary)}.nav-link.router-link-active:after,.nav-link:hover:after{width:100%}.nav-link.router-link-active{color:var(--color-primary);font-weight:600}.mobile-menu-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;display:block}@media(min-width:768px){.mobile-menu-btn{display:none}}.paint-stroke-banner{background-color:var(--color-primary);color:#fff;padding:.5rem 2rem;border-radius:.25rem;font-family:var(--font-script);font-size:2.2rem;display:inline-block;transform:rotate(-1.5deg);box-shadow:var(--shadow-md);margin-top:1rem;border-bottom:2px solid var(--color-accent-green);position:relative}.paint-stroke-banner:after{content:"";position:absolute;inset:0;border:1px dashed hsla(0,0%,100%,.4);margin:2px;pointer-events:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.75rem;border-radius:9999px;font-weight:600;text-decoration:none;cursor:pointer;transition:var(--transition-all);border:none;font-size:1rem;font-family:var(--font-body)}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:0 4px 14px #075e5f4d}.btn-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 6px 20px #075e5f66}.btn-accent{background-color:var(--color-accent-gold);color:#fff;box-shadow:0 4px 14px #d88c354d}.btn-accent:hover{background-color:var(--color-accent-gold-hover);transform:translateY(-2px);box-shadow:0 6px 20px #d88c3566}.btn-secondary{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-secondary:hover{background-color:var(--color-primary-light);transform:translateY(-2px)}.card{background-color:#fff;border-radius:1rem;padding:2.5rem;box-shadow:var(--shadow-md);border:1px solid rgba(7,94,95,.08);position:relative;overflow:hidden}.card,.card:before{transition:var(--transition-all)}.card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background-color:var(--color-primary)}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.card:hover:before{width:8px;background-color:var(--color-accent-gold)}.form-group{margin-bottom:1.5rem}.form-label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--color-primary);font-size:.95rem}.form-control{width:100%;padding:.75rem 1rem;border-radius:.5rem;border:1px solid var(--color-border);background-color:#fff;font-family:var(--font-body);font-size:1rem;transition:var(--transition-all);color:var(--color-text-charcoal)}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #075e5f26}.checkbox-group{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;margin-top:.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;cursor:pointer}.checkbox-input{width:1.1rem;height:1.1rem;accent-color:var(--color-primary);cursor:pointer}.footer{background-color:var(--color-primary-dark);color:#fff;padding:4rem 0 2rem;position:relative;border-top:4px solid var(--color-accent-gold)}.footer-grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-bottom:3rem}@media(min-width:768px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}.footer h3,.footer h4{color:#fff}.footer h3{font-family:var(--font-heading);margin-bottom:1rem}.footer h4{font-size:1.1rem;margin-bottom:1.25rem;text-transform:uppercase;letter-spacing:.05em}.footer-links{list-style:none}.footer-links li{margin-bottom:.75rem}.footer-links a{color:#fffc;text-decoration:none;transition:var(--transition-all)}.footer-links a:hover{color:var(--color-accent-gold);padding-left:4px}.footer-contact li{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;color:#fffc}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid hsla(0,0%,100%,.1);color:#fff9;font-size:.9rem}.page-enter-active,.page-leave-active{transition:opacity .25s ease}.page-enter-from,.page-leave-to{opacity:0}
