:root{--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-serif: "Crimson Pro", Georgia, "Times New Roman", serif;--max-width: 1200px;--section-padding: clamp(3rem, 10vw, 6rem);--transition: .3s cubic-bezier(.4, 0, .2, 1);--color-gray-light: #F3F4F6;--color-gray: #6B7280;--color-dark: #1F2937;--color-white: #FFFFFF}.theme-greenhouse{--color-primary: #065F46;--color-secondary: #10B981;--color-accent: #6EE7B7;--hero-bg: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);--shadow-color: rgba(6, 95, 70, .15);--shadow-hover: rgba(16, 185, 129, .3);--border-accent: rgba(6, 95, 70, .1);--pill-bg: rgba(16, 185, 129, .1)}.theme-workshop{--color-primary: #1E3A8A;--color-secondary: #3B82F6;--color-accent: #93C5FD;--hero-bg: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);--shadow-color: rgba(30, 58, 138, .15);--shadow-hover: rgba(59, 130, 246, .3);--border-accent: rgba(30, 58, 138, .1);--pill-bg: rgba(59, 130, 246, .1)}.theme-foundation{--color-primary: #92400E;--color-secondary: #F59E0B;--color-accent: #FDE68A;--hero-bg: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);--shadow-color: rgba(146, 64, 14, .15);--shadow-hover: rgba(245, 158, 11, .3);--border-accent: rgba(146, 64, 14, .1);--pill-bg: rgba(245, 158, 11, .1)}.theme-canvas{--color-primary: #374151;--color-secondary: #6B7280;--color-accent: #D1D5DB;--hero-bg: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);--shadow-color: rgba(55, 65, 81, .15);--shadow-hover: rgba(107, 114, 128, .3);--border-accent: rgba(55, 65, 81, .1);--pill-bg: rgba(107, 114, 128, .1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);line-height:1.6;min-height:100vh;overflow-x:hidden;background:var(--color-white);color:var(--color-dark)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.section{padding:var(--section-padding) 0}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:700}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}p{margin-bottom:1rem}a{color:inherit;text-decoration:none;transition:color var(--transition)}button{cursor:pointer;border:none;background:none;font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.hero{background:var(--hero-bg);color:var(--color-white);position:relative;overflow:hidden;padding-top:80px!important}.hero:before{content:"";position:absolute;width:100%;height:100%;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:50px 50px;pointer-events:none}.hero .hero__content{position:relative;z-index:1}.hero .hero__title,.hero .hero__slogan,.hero .hero__description{color:var(--color-white)}.hero .hero__description{opacity:.9}.hero .hero__scroll-indicator{background:#ffffff1a;border:2px solid var(--color-white);color:var(--color-white)}.services{background:var(--color-gray-light)}.services .services__title{color:var(--color-primary)}.services .service-card{background:var(--color-white);border-radius:.75rem;box-shadow:0 1px 3px #0000001a;border:1px solid var(--color-gray-light)}.services .service-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px var(--shadow-color);border-color:var(--color-secondary)}.services .service-card__icon{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:var(--color-white)}.services .service-card__title{color:var(--color-primary)}.contact{background:var(--color-dark);color:var(--color-white)}.contact .contact__areas-list li{background:var(--pill-bg);border:1px solid var(--color-secondary);color:var(--color-white)}.contact .contact__cta{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:var(--color-white);position:relative;overflow:hidden}.contact .contact__cta:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.contact .contact__cta:hover:before{left:100%}.contact .contact__cta:hover{transform:translateY(-2px);box-shadow:0 10px 25px var(--shadow-hover)}html{scroll-padding-top:80px}
