:root{--color-primary:#7DD3C0;--color-secondary:#1f7d75;--color-accent:#e85d3d;--color-background:#BCE8DD;--color-surface:#FFFFFF;--color-text:#13403a;--color-text-muted:#3a544f;--color-border:#9ad6c7;--font-heading:Quicksand,sans-serif;--font-body:Inter,sans-serif;--radius-sm:0.5rem;--radius-md:0.875rem;--radius-lg:1.5rem;--radius-full:999px;--section-padding:5rem;--container-max-width:1200px;--animation-speed:0.3s;--hover-scale:1.03}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-background);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:1.2}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.5rem,4vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}p{color:var(--color-text-muted);max-width:65ch}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:0.75rem 1.5rem;border-radius:var(--radius-md);font-family:var(--font-body);font-weight:600;font-size:1rem;cursor:pointer;border:none;text-decoration:none;transition:transform var(--animation-speed) ease,box-shadow var(--animation-speed) ease}.btn:hover{transform:scale(var(--hover-scale));text-decoration:none}.btn-primary{background-color:var(--color-primary);color:#fff}header.scrolled{background-color:var(--color-background) !important;border-bottom-color:var(--color-border) !important;box-shadow:0 1px 3px rgba(0,0,0,0.1)}header.scrolled .df-nav-logo{color:var(--color-text) !important}header.scrolled .df-nav-desktop{color:var(--color-text) !important}header.scrolled .df-hamburger span{background:var(--color-text) !important}@media (max-width:768px){.container{padding:0 1rem}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{from{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-40px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideInLeft{from{transform:translateX(-60px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInRight{from{transform:translateX(60px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes scaleUp{from{transform:scale(0.85);opacity:0}to{transform:scale(1);opacity:1}}@keyframes blurIn{from{filter:blur(12px);opacity:0}to{filter:blur(0);opacity:1}}@keyframes bounceIn{0%{transform:scale(0.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(0.9)}100%{transform:scale(1);opacity:1}}@keyframes flipIn{from{transform:perspective(400px) rotateY(90deg);opacity:0}to{transform:perspective(400px) rotateY(0);opacity:1}}@keyframes subtlePulse{0%,100%{box-shadow:0 0 0 0 var(--color-accent,rgba(0,0,0,0.2))}50%{box-shadow:0 0 0 8px transparent}}.df-animate{opacity:0;will-change:opacity,transform}.df-animate.df-visible{opacity:1;transform:none}.df-stagger > *:nth-child(1){animation-delay:0ms}.df-stagger > *:nth-child(2){animation-delay:100ms}.df-stagger > *:nth-child(3){animation-delay:200ms}.df-stagger > *:nth-child(4){animation-delay:300ms}.df-stagger > *:nth-child(5){animation-delay:400ms}.df-stagger > *:nth-child(6){animation-delay:500ms}.df-stagger > *:nth-child(7){animation-delay:600ms}.df-stagger > *:nth-child(8){animation-delay:700ms}.df-stagger > *:nth-child(9){animation-delay:800ms}.df-stagger > *:nth-child(10){animation-delay:900ms}.df-stagger > *:nth-child(11){animation-delay:1000ms}.df-stagger > *:nth-child(12){animation-delay:1100ms}.df-btn-hover{transition:transform 0.2s ease,box-shadow 0.2s ease}.df-btn-hover:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.15)}.df-card-hover{transition:transform 0.3s ease,box-shadow 0.3s ease}.df-card-hover:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,0.12)}.df-link-underline{position:relative;text-decoration:none}.df-link-underline::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:currentColor;transition:width 0.3s ease}.df-link-underline:hover::after{width:100%}.df-img-zoom{overflow:hidden}.df-img-zoom img{transition:transform 0.5s ease}.df-img-zoom:hover img{transform:scale(1.05)}.df-pulse{animation:subtlePulse 2s infinite}.df-parallax{background-attachment:fixed;background-position:center;background-size:cover}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}.df-tab-panel.df-hidden{display:none}.df-accordion-panel{overflow:hidden;transition:max-height 0.3s ease}.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}.sr-only:focus,.sr-only.focus\:not-sr-only:focus{position:static;width:auto;height:auto;padding:inherit;margin:inherit;overflow:visible;clip:auto;white-space:normal}.df-dark-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm,0.375rem);color:var(--color-text-muted);cursor:pointer;transition:color 0.2s ease,border-color 0.2s ease,background-color 0.2s ease;flex-shrink:0}.df-dark-toggle:hover{color:var(--color-text);border-color:var(--color-text-muted);background-color:var(--color-surface)}.df-dark-toggle svg{width:1.125rem;height:1.125rem}