:where(html){color-scheme:light;accent-color:var(--primary);-webkit-text-size-adjust:100%}:where(html[data-theme=dark]){color-scheme:dark}:where(body){background-color:var(--background);color:var(--foreground);font-family:var(--font-body, system-ui, sans-serif);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:where(h1,h2,h3,h4,h5,h6){font-family:var(--font-heading, var(--font-body, inherit));line-height:1.2}:where(code,kbd,pre,samp){font-family:var(--font-mono, ui-monospace, monospace)}:where(button,input,select,textarea){font:inherit}:where(a){color:var(--primary)}:where(:focus-visible){outline:2px solid var(--primary);outline-offset:2px}::selection{background-color:color-mix(in srgb,var(--primary) 30%,transparent)}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow-x:hidden;font-family:var(--font-body, "Lora", serif);background:var(--background);color:var(--text)}:host,dh-root,dh-title-bar,router-outlet{display:block;width:100vw;max-width:100vw}:root{--surface-light: color-mix(in srgb, var(--surface) 94%, var(--foreground));--surface-lighter: color-mix(in srgb, var(--surface) 90%, var(--foreground));--surface-accent: color-mix(in srgb, var(--surface) 86%, var(--foreground));--text: var(--foreground);--text-secondary: var(--muted);--text-tertiary: color-mix(in srgb, var(--muted) 70%, var(--background));--border-light: color-mix(in srgb, var(--border) 80%, var(--foreground));--accent: var(--primary);--accent-light: color-mix(in srgb, var(--primary) 80%, white);--accent-dark: color-mix(in srgb, var(--primary) 80%, black);--primary-light: color-mix(in srgb, var(--primary) 85%, white);--primary-dark: color-mix(in srgb, var(--primary) 85%, black);--gradient: var(--gradient-primary);--gradient-hover: var(--gradient-secondary);--error: var(--danger);--input-border: var(--border);--badge-warning-foreground: var(--on-warning);--shadow: color-mix(in srgb, var(--shadow-color, #000) 30%, transparent);--shadow-heavy: color-mix( in srgb, var(--shadow-color, #000) 50%, transparent );--shadow-light: color-mix( in srgb, var(--shadow-color, #000) 10%, transparent );--background-pattern: url(/assets/digital-grange.png)}body{background-color:var(--background);background-image:var(--background-pattern);background-repeat:repeat;background-size:52px 52px;line-height:1.6;font-weight:400}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading, "Playfair Display", serif);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-md);color:var(--text)}h1{font-size:clamp(2rem,4vw,3rem)}h2{font-size:clamp(1.5rem,3vw,2.5rem)}h3{font-size:clamp(1.25rem,2.5vw,2rem)}p{margin-bottom:var(--spacing-md);color:var(--text-secondary);line-height:1.7}a{color:var(--accent);text-decoration:none;transition:color .3s ease}a:hover{color:var(--accent-light)}button{font-family:inherit;cursor:pointer;border:none;background:none;padding:0}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-xl) 0;position:relative}.section:nth-child(2n){background:var(--surface)}.section-title{text-align:center;margin-bottom:var(--spacing-lg);position:relative;padding-bottom:var(--spacing-md)}.section-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:40px;height:2px;background:var(--gradient);border-radius:1px}.cta-button{display:inline-block;background:var(--gradient);color:#fff;padding:var(--spacing-sm) var(--spacing-lg);border-radius:50px;font-family:var(--font-heading, "Playfair Display", serif);font-weight:700;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 12px var(--shadow-heavy);border:none;cursor:pointer;text-decoration:none;min-width:160px}.cta-button:hover{transform:translateY(-1px);box-shadow:0 6px 20px var(--shadow-heavy);background:var(--gradient-hover)}.cta-button:active{transform:translateY(0)}.card{background:var(--surface-light);border-radius:8px;padding:var(--spacing-lg);box-shadow:0 2px 8px var(--shadow);transition:all .3s ease;position:relative;overflow:hidden;border:1px solid var(--border)}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient)}.card:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--shadow-heavy)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-lg)}@media(max-width:768px){.grid{grid-template-columns:1fr}}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--text);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group textarea{width:100%;padding:var(--spacing-sm);border:2px solid var(--border-light);border-radius:4px;font-size:1rem;background:var(--surface);color:var(--text);transition:all .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #8e44ad1a}.form-group textarea{resize:vertical;min-height:120px}.profile-tile{background:var(--surface-light);border-radius:8px;padding:var(--spacing-lg);box-shadow:0 2px 8px var(--shadow);transition:all .3s ease;border:1px solid var(--border);position:relative;overflow:hidden}.profile-tile:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--shadow-heavy)}.profile-photo{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid var(--accent);margin-bottom:var(--spacing-md)}.profile-name{font-family:var(--font-heading, "Playfair Display", serif);font-size:1.25rem;font-weight:700;margin-bottom:var(--spacing-xs);color:var(--text)}.profile-bio{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--spacing-md)}.profile-quote{font-style:italic;color:var(--text-secondary);line-height:1.5;font-size:.9rem;padding:var(--spacing-sm);background:#8e44ad1a;border-left:3px solid var(--accent);border-radius:4px}@media(max-width:768px){.container{padding:0 var(--spacing-sm)}.section{padding:var(--spacing-lg) 0}.card,.profile-tile{padding:var(--spacing-md)}}@media(max-width:480px){.container{padding:0 var(--spacing-xs)}.section{padding:var(--spacing-md) 0}.card,.profile-tile{padding:var(--spacing-sm)}}
