@font-face{font-family:ibmPlexSansCondensed;src:url(/_next/static/media/bdc88bed9ab4e413-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:ibmPlexSansCondensed;src:url(/_next/static/media/f0197be62223ddcb-s.p.woff2) format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:ibmPlexSansCondensed;src:url(/_next/static/media/1c626168cca93b06-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:ibmPlexSansCondensed Fallback;src:local("Arial");ascent-override:112.17%;descent-override:30.10%;line-gap-override:0.00%;size-adjust:91.38%}.__className_587761{font-family:ibmPlexSansCondensed,ibmPlexSansCondensed Fallback}.__variable_587761{--font-heading:"ibmPlexSansCondensed","ibmPlexSansCondensed Fallback"}@font-face{font-family:inter;src:url(/_next/static/media/34ba43c981b106ea-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:inter;src:url(/_next/static/media/41e5ab752a8cad97-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:inter;src:url(/_next/static/media/ea234620f9e86969-s.p.woff2) format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:inter;src:url(/_next/static/media/95439fb45e443721-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:inter;src:url(/_next/static/media/a1aac96ebeb85566-s.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:inter Fallback;src:local("Arial");ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.00%;size-adjust:107.89%}.__className_6c153a{font-family:inter,inter Fallback}.__variable_6c153a{--font-base:"inter","inter Fallback"}:root{--font-family-base:var(--font-base),-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--font-family-heading:var(--font-heading),-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--font-family-heading-alt:var(--font-base),-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--font-family-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--font-size-display-1:clamp(4rem,10vw,8rem);--font-size-display-2:clamp(3rem,8vw,6rem);--font-size-display-3:clamp(2.5rem,6vw,4.5rem);--font-size-h1:clamp(2rem,5vw,3.5rem);--font-size-h2:clamp(1.75rem,4vw,2.5rem);--font-size-h3:clamp(1.5rem,3vw,2rem);--font-size-h4:clamp(1.25rem,2.5vw,1.75rem);--font-size-h5:clamp(1.125rem,2vw,1.5rem);--font-size-h6:clamp(1rem,1.5vw,1.25rem);--font-size-intro:clamp(1.625rem,2vw + 1.25rem,1.875rem);--font-size-body-xl:clamp(1.5rem,1.5vw + 1.125rem,1.625rem);--font-size-body-lg:clamp(1.375rem,1vw + 1.1875rem,1.5rem);--font-size-body:clamp(1.125rem,0.5vw + 1rem,1.25rem);--font-size-body-sm:clamp(1rem,0.25vw + 0.9375rem,1.125rem);--font-size-caption:clamp(0.9375rem,0.15vw + 0.9rem,1rem);--font-size-label:clamp(0.875rem,0.1vw + 0.85rem,0.9375rem);--font-size-badge:0.75rem;--font-size-badge-large:0.75rem;--font-size-xs:var(--font-size-label);--font-size-sm:var(--font-size-caption);--font-size-base:var(--font-size-body);--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--font-size-5xl:3rem;--font-size-6xl:4rem;--font-size-hero-main:var(--font-size-display-3);--font-size-hero-sub:clamp(1.25rem,2vw,1.5rem);--font-size-section-hero:var(--font-size-display-3);--font-size-section-lead:clamp(1.25rem,2vw,1.5rem);--font-size-section-large:clamp(2.5rem,6vw,4rem);--font-size-content-large:var(--font-size-h3);--font-size-content-medium:var(--font-size-body-lg);--font-weight-light:400;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-display:1;--line-height-tight:1.2;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-body:1.6;--line-height-relaxed:1.65;--line-height-loose:1.7;--letter-spacing-tight:-0.02em;--letter-spacing-normal:0em;--letter-spacing-wide:0.02em;--letter-spacing-wider:0.05em;--letter-spacing-tighter:-0.05em;--letter-spacing-widest:0.1em;--text-opacity-primary:0.87;--text-opacity-secondary:0.60;--text-opacity-tertiary:0.38;--display-1-size:var(--font-size-display-1);--display-1-weight:var(--font-weight-semibold);--display-1-font:var(--font-family-heading);--display-1-line-height:var(--line-height-display);--display-1-letter-spacing:var(--letter-spacing-tight);--display-2-size:var(--font-size-display-2);--display-2-weight:var(--font-weight-semibold);--display-2-font:var(--font-family-heading);--display-2-line-height:var(--line-height-display);--display-2-letter-spacing:var(--letter-spacing-tight);--display-3-size:var(--font-size-display-3);--display-3-weight:var(--font-weight-medium);--display-3-font:var(--font-family-heading-alt);--display-3-line-height:var(--line-height-tight);--display-3-letter-spacing:var(--letter-spacing-tight);--heading-h1-size:var(--font-size-h1);--heading-h1-weight:var(--font-weight-semibold);--heading-h1-font:var(--font-family-heading);--heading-h1-line-height:var(--line-height-tight);--heading-h1-letter-spacing:var(--letter-spacing-tight);--heading-h2-size:var(--font-size-h2);--heading-h2-weight:var(--font-weight-semibold);--heading-h2-font:var(--font-family-heading);--heading-h2-line-height:1.15;--heading-h2-letter-spacing:var(--letter-spacing-wide);--heading-h3-size:var(--font-size-h3);--heading-h3-weight:var(--font-weight-semibold);--heading-h3-font:var(--font-family-heading);--heading-h3-line-height:var(--line-height-snug);--heading-h3-letter-spacing:var(--letter-spacing-wide);--heading-h4-size:var(--font-size-h4);--heading-h4-weight:var(--font-weight-semibold);--heading-h4-font:var(--font-family-heading);--heading-h4-line-height:1.25;--heading-h4-letter-spacing:var(--letter-spacing-wide);--heading-h5-size:var(--font-size-h5);--heading-h5-weight:var(--font-weight-medium);--heading-h5-font:var(--font-family-heading);--heading-h5-line-height:var(--line-height-normal);--heading-h5-letter-spacing:var(--letter-spacing-normal);--heading-h6-size:var(--font-size-h6);--heading-h6-weight:var(--font-weight-normal);--heading-h6-font:var(--font-family-heading);--heading-h6-line-height:1.35;--heading-h6-letter-spacing:var(--letter-spacing-normal);--body-size:var(--font-size-body);--body-weight:var(--font-weight-normal);--body-font:var(--font-family-base);--body-line-height:var(--line-height-body);--body-lg-size:var(--font-size-body-lg);--body-lg-weight:var(--font-weight-normal);--body-lg-line-height:var(--line-height-relaxed);--body-sm-size:var(--font-size-body-sm);--body-sm-weight:var(--font-weight-normal);--body-sm-line-height:var(--line-height-body);--caption-size:var(--font-size-caption);--caption-weight:var(--font-weight-normal);--caption-line-height:var(--line-height-loose);--label-size:var(--font-size-label);--label-weight:var(--font-weight-medium);--label-letter-spacing:var(--letter-spacing-wider);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-11:2.75rem;--space-12:3rem;--space-13:3.25rem;--space-15:3.75rem;--space-16:4rem;--space-19:4.75rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--spacing-section-gap:var(--space-16);--spacing-subsection-gap:var(--space-12);--spacing-component-gap:var(--space-8);--spacing-element-gap:var(--space-6);--spacing-tight-gap:var(--space-4);--spacing-minimal-gap:var(--space-2);--spacing-card-gap:var(--space-8);--icon-size-xs:0.75rem;--icon-size-sm:0.875rem;--icon-size-md:1rem;--icon-size-lg:1.25rem;--icon-size-xl:1.5rem;--sticky-offset:120px;--icon-overflow-lg:-60px;--icon-overflow-md:-40px;--icon-overflow-sm:-30px;--padding-section-y:clamp(3rem,8vh,6rem);--padding-section-y-large:clamp(4rem,12vh,8rem);--padding-section-y-hero:clamp(10rem,15vh,12rem);--padding-section-y-small:clamp(4rem,8vh,6rem);--padding-hero-top:clamp(120px,18vh,200px);--padding-container-x:clamp(1rem,5vw,4rem);--padding-container-x-medium:clamp(1.5rem,4vw,3rem);--padding-container-x-small:clamp(1rem,3vw,2rem);--padding-card:clamp(2rem,4vw,3rem);--spacing-major:clamp(100px,15vh,160px);--spacing-minor:clamp(80px,12vh,120px);--spacing-component:clamp(60px,10vh,100px);--text-on-overlay-dark:#ffffff;--text-on-overlay-light:#000000;--color-transparent:transparent;--accent-primary:#7C3AED;--accent-primary-rgb:124,58,237;--accent-hover:#5322A7;--accent-subtle:rgba(124,58,237,0.05);--accent-shadow:0 4px 14px rgba(124,58,237,0.35);--accent-shadow-hover:0 6px 20px rgba(124,58,237,0.45);--color-primary:var(--accent-primary);--success-primary:#10b981;--error-primary:#dc2626;--warning-primary:#f59e0b;--info-primary:#3b82f6;--success-border:#b9f8cf;--success-text:#008236;--text-success:#059669;--text-warning:#d97706;--text-error:#dc2626;--status-planned-border:#bedbff;--status-planned-text:#1447e6;--status-development-border:#e9d4ff;--status-development-text:#8200db;--success-background:rgba(34,197,94,0.1);--warning-background:rgba(234,179,8,0.1);--error-background:rgba(239,68,68,0.1);--text-on-dark-primary:rgba(255,255,255,0.95);--text-on-dark-secondary:rgba(255,255,255,0.8);--text-on-dark-tertiary:rgba(255,255,255,0.7);--overlay-dark-strong:rgba(0,0,0,0.7);--gradient-overlay-dark:rgba(0,0,0,0.6);--gradient-light-highlight:rgba(255,255,255,0.15);--tool-ai-prompts:var(--part-human-centered);--tool-ai-prompts-fg:var(--part-human-centered);--tool-ai-prompts-hover:var(--part-human-centered-hover);--tool-ai-prompts-shape:var(--part-human-centered-shape);--tool-ai-prompts-bg:rgba(106,154,31,0.08);--tool-validator:var(--part-core-principles);--tool-validator-fg:var(--part-core-principles);--tool-validator-hover:var(--part-core-principles-hover);--tool-validator-shape:var(--part-core-principles-shape);--tool-validator-bg:rgba(200,159,0,0.08);--tool-flows:var(--part-specialized-domains);--tool-flows-fg:var(--part-specialized-domains);--tool-flows-hover:var(--part-specialized-domains-hover);--tool-flows-shape:var(--part-specialized-domains-shape);--tool-flows-bg:rgba(30,125,171,0.08);--tool-smells:var(--part-interface-patterns);--tool-smells-fg:var(--part-interface-patterns);--tool-smells-hover:var(--part-interface-patterns-hover);--tool-smells-shape:var(--part-interface-patterns-shape);--tool-smells-bg:rgba(244,112,52,0.08);--tool-prompt-builder:var(--part-design-systems);--tool-prompt-builder-fg:var(--part-design-systems);--tool-prompt-builder-hover:var(--part-design-systems-hover);--tool-prompt-builder-shape:var(--part-design-systems-shape);--tool-prompt-builder-bg:rgba(217,48,149,0.08);--tool-principles:var(--part-foundations);--tool-principles-fg:var(--part-foundations);--tool-principles-hover:var(--part-foundations-hover);--tool-principles-shape:var(--part-foundations-shape);--tool-principles-bg:rgba(139,94,217,0.08);--difficulty-beginner:#6A9A1F;--difficulty-intermediate:#C89F00;--difficulty-advanced:#D85C1A;--difficulty-beginner-bg:rgba(106,154,31,0.1);--difficulty-intermediate-bg:rgba(200,159,0,0.1);--difficulty-advanced-bg:rgba(216,92,26,0.1);--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 2px 8px rgba(0,0,0,0.08);--shadow-lg:0 8px 24px rgba(0,0,0,0.12);--shadow-xl:0 16px 48px rgba(0,0,0,0.16);--card-shadow:var(--shadow-sm);--card-shadow-hover:var(--shadow-xl);--card-padding:var(--space-5);--card-padding-mobile:var(--space-4);--card-border-radius:var(--radius-lg);--card-border-width:1px;--card-icon-size:42px;--card-title-size:var(--font-size-body-lg);--card-accent-height:3px;--card-accent-opacity:0.6;--card-accent-opacity-hover:1;--card-hover-transform:translateY(-2px);--card-shadow-default:var(--elevation-card);--card-shadow-hover:var(--elevation-card-hover);--card-featured-padding:var(--space-8);--card-featured-padding-mobile:var(--space-6);--card-featured-border-radius:var(--radius-xl);--card-featured-icon-size:52px;--card-featured-title-size:var(--font-size-h2);--card-featured-hover-transform:translateY(-4px);--card-cta-font-size:var(--font-size-body-sm);--card-cta-color:var(--accent-primary);--card-cta-gap:var(--space-2);--card-cta-gap-hover:var(--space-3);--header-shadow-scrolled:0px 4px 16px 0px rgba(0,0,0,0.12),0px 8px 24px 0px rgba(0,0,0,0.08);--header-shadow-hover:0px 6px 20px 0px rgba(0,0,0,0.15),0px 12px 32px 0px rgba(0,0,0,0.1);--radius-none:0px;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-3xl:24px;--radius-full:9999px;--radius-circle:50%;--container-text:62.5rem;--container-content:1440px;--container-max-width-xl:1440px;--container-compact:800px;--badge-border-radius:var(--radius-full);--badge-padding-y:0.375rem;--badge-padding-x:0.875rem;--font-size-button-primary:1rem;--font-size-button-secondary:0.875rem;--button-height-lg:50px;--button-height-md:44px;--button-height-icon:40px;--button-height-sm:36px;--button-radius-lg:25px;--button-radius-md:22px;--button-radius-sm:18px;--button-text-on-accent:#FFFFFF;--icon-size-xs:14px;--icon-size-sm:16px;--icon-size-md:18px;--icon-size-lg:20px;--icon-size-xl:24px;--icon-stroke-default:2;--icon-stroke-hover:2.5;--dur-fast:150ms;--dur-normal:300ms;--dur-slow:500ms;--ease-out-quad:cubic-bezier(0.25,0.46,0.45,0.94);--ease-spring:cubic-bezier(0.175,0.885,0.32,1.275);--ease-smooth:cubic-bezier(0.4,0,0.2,1);--card-transition-duration:var(--dur-normal);--card-transition-easing:var(--ease-out-quad);--description-font-size:0.9375rem;--description-line-height:1.6;--part-color:#8B5ED9;--surface-base:var(--background-primary);--surface-raised:var(--background-secondary);--surface-floating:var(--background-tertiary);--surface-overlay:rgba(26,26,26,0.6);--surface-inverse:var(--background-inverse);--surface-border:var(--border-primary);--surface-divider:var(--border-secondary);--button-primary-background:var(--accent-primary);--button-primary-text:var(--accent-contrast);--button-primary-hover:var(--accent-hover);--button-primary-active:var(--accent-active);--button-secondary-background:transparent;--button-secondary-text:var(--accent-primary);--button-secondary-border:var(--accent-primary);--button-secondary-hover:var(--accent-subtle);--button-ghost-text:var(--text-secondary);--button-ghost-hover:var(--background-secondary);--button-disabled-background:var(--accent-disabled);--button-disabled-text:var(--text-disabled);--button-disabled-border:var(--border-secondary);--card-background:var(--background-primary);--card-background-hover:var(--background-primary);--card-border:var(--border-primary);--card-text:var(--text-primary);--card-text-secondary:var(--text-secondary);--card-heading:var(--text-primary);--card-border-hover:var(--accent-primary);--input-background:var(--background-primary);--input-border:var(--border-primary);--input-text:var(--text-primary);--input-placeholder:var(--text-tertiary);--input-focus-border:var(--accent-primary);--input-focus-ring:rgba(124,58,237,0.15);--input-focus-background:var(--background-primary);--input-error-border:var(--error-primary);--input-error-text:var(--text-error);--input-error-background:rgba(220,38,38,0.05);--input-success-border:var(--success-primary);--input-success-text:var(--text-success);--input-success-background:rgba(16,185,129,0.05);--input-disabled-background:var(--background-secondary);--input-disabled-border:var(--border-secondary);--input-disabled-text:var(--text-disabled);--input-label-text:var(--text-secondary);--link-text:var(--accent-primary);--link-hover:var(--accent-hover);--link-active:var(--accent-active);--link-visited:var(--text-tertiary);--link-disabled:var(--text-disabled);--link-underline:var(--accent-primary);--state-hover-background:var(--background-secondary);--state-hover-border:var(--accent-primary);--state-hover-text:var(--text-primary);--state-focus-ring:rgba(124,58,237,0.15);--state-focus-border:var(--accent-primary);--state-focus-background:var(--background-primary);--state-active-background:var(--accent-active);--state-active-border:var(--accent-active);--state-active-text:var(--accent-contrast);--state-disabled-background:var(--background-secondary);--state-disabled-text:var(--text-disabled);--state-disabled-border:var(--border-secondary);--state-selected-background:var(--accent-primary);--elevation-card:0 1px 2px rgba(0,0,0,0.05);--elevation-card-hover:0 20px 25px rgba(0,0,0,0.15);--elevation-dropdown:0 10px 15px rgba(0,0,0,0.1);--elevation-modal:0 25px 50px rgba(0,0,0,0.2);--elevation-popover:0 10px 15px rgba(0,0,0,0.1);--elevation-tooltip:0 4px 6px rgba(0,0,0,0.07);--elevation-sticky:0 4px 6px rgba(0,0,0,0.07);--elevation-floating-action:0 20px 25px rgba(0,0,0,0.15);--elevation-toast:0 25px 50px rgba(0,0,0,0.2);--elevation-dialog:0 35px 60px rgba(0,0,0,0.25);--elevation-drawer:-4px 0 24px rgba(0,0,0,0.5);--surface-overlay:rgba(0,0,0,0.8);--shadow-2xl:0 25px 50px rgba(0,0,0,0.2);--shadow-3xl:0 35px 60px rgba(0,0,0,0.25)}.text-part-color{color:var(--part-color,var(--part-foundations))}:root{--bottom-nav-height:72px;--text-primary:#18181B;--text-secondary:#52525B;--text-tertiary:#71717A;--text-quaternary:#A1A1AA;--text-disabled:#A1A1AA;--text-inverse:#FAFAFA;--background-primary:#FAFAFA;--background-secondary:#F4F4F5;--background-tertiary:#E4E4E7;--background-inverse:#18181B;--background-primary-translucent:rgba(250,250,250,0.85);--background-secondary-translucent:rgba(244,244,245,0.85);--border-primary:#E4E4E7;--border-secondary:#D4D4D8;--border-strong:#A1A1AA;--accent-active:#18181B;--accent-disabled:#71717A;--accent-contrast:#FAFAFA;--focus-ring-color:#7C3AED;--focus-ring-offset-color:rgba(124,58,237,0.1);--focus-ring-width:3px;--focus-ring-offset:2px;--selection-bg:rgba(124,58,237,0.2);--selection-text:#18181B;--link-visited:#6B3CC2;--scrollbar-track:var(--background-secondary);--scrollbar-thumb:var(--border-secondary);--scrollbar-thumb-hover:var(--border-strong);--system-warning:#D97706;--error-text:#B91C1C;--success-text:#047857;--glass-background:rgba(250,250,250,0.8);--glass-border:rgba(228,228,231,0.5);--hero-gradient:linear-gradient(180deg,transparent,rgba(124,58,237,0.03) 40%,rgba(124,58,237,0.03) 60%,transparent);--part-foundations:#6b3cc2;--part-core-principles:#c89f00;--part-design-systems:#c02482;--part-interface-patterns:#d85c1a;--part-specialized-domains:#1e7dab;--part-human-centered:#6a9a1f;--part-foundations-hover:#5a2ea3;--part-core-principles-hover:#a88400;--part-design-systems-hover:#a01d6c;--part-interface-patterns-hover:#b84d15;--part-specialized-domains-hover:#18658c;--part-human-centered-hover:#587f19;--part-foundations-shape:rgba(107,60,194,0.25);--part-core-principles-shape:rgba(200,159,0,0.25);--part-design-systems-shape:rgba(192,36,130,0.25);--part-interface-patterns-shape:rgba(216,92,26,0.25);--part-specialized-domains-shape:rgba(30,125,171,0.25);--part-human-centered-shape:rgba(106,154,31,0.25);--z-behind:-1;--z-base:0;--z-raised:1;--z-content:10;--z-sticky:40;--z-header:50;--z-dropdown:100;--z-bottom-nav:100;--z-bottom-nav-expanded:250;--z-modal:1000;--z-mobile-nav-backdrop:9000;--z-mobile-nav:9100;--z-search-modal:9500;--z-toast:9800;--z-skip-link:9900;--z-max:9999}html[data-theme=dark]{--text-primary:#FAFAFA;--text-secondary:#A1A1AA;--text-tertiary:#D4D4D8;--text-quaternary:#71717A;--text-disabled:#52525B;--text-inverse:#18181B;--background-primary:#09090B;--background-secondary:#111113;--background-tertiary:#27272A;--background-inverse:#FAFAFA;--background-primary-translucent:rgba(9,9,11,0.85);--background-secondary-translucent:rgba(17,17,19,0.85);--border-primary:#27272A;--border-secondary:#3F3F46;--border-strong:#52525B;--accent-active:#FAFAFA;--accent-disabled:#A1A1AA;--accent-contrast:#FAFAFA;--accent-shadow:0 4px 14px rgba(124,58,237,0.5);--accent-shadow-hover:0 6px 20px rgba(124,58,237,0.6);--focus-ring-color:#FAFAFA;--focus-ring-offset-color:rgba(250,250,250,0.1);--focus-ring-width:3px;--focus-ring-offset:2px;--selection-bg:rgba(124,58,237,0.3);--selection-text:#FAFAFA;--link-visited:#8B5ED9;--scrollbar-track:var(--background-secondary);--scrollbar-thumb:var(--border-secondary);--scrollbar-thumb-hover:var(--border-strong);--system-warning:#F59E0B;--error-text:#FCA5A5;--success-text:#6EE7B7;--glass-background:rgba(9,9,11,0.8);--glass-border:rgba(250,250,250,0.05);--hero-gradient:linear-gradient(180deg,transparent,rgba(124,58,237,0.05) 40%,rgba(124,58,237,0.05) 60%,transparent);--part-foundations:#8B5ED9;--part-core-principles:#DBB300;--part-design-systems:#D93095;--part-interface-patterns:#F47034;--part-specialized-domains:#2891C4;--part-human-centered:#7EB02F;--part-foundations-hover:#6B3CC2;--part-core-principles-hover:#C89F00;--part-design-systems-hover:#C02482;--part-interface-patterns-hover:#D85C1A;--part-specialized-domains-hover:#1E7DAB;--part-human-centered-hover:#6A9A1F;--part-foundations-shape:rgba(139,94,217,0.25);--part-core-principles-shape:rgba(219,179,0,0.3);--part-design-systems-shape:rgba(217,48,149,0.25);--part-interface-patterns-shape:rgba(244,112,52,0.25);--part-specialized-domains-shape:rgba(40,145,196,0.25);--part-human-centered-shape:rgba(126,176,47,0.25);--tool-ai-prompts-bg:rgba(126,176,47,0.10);--tool-validator-bg:rgba(244,112,52,0.10);--tool-flows-bg:rgba(40,145,196,0.10);--tool-smells-bg:rgba(217,48,149,0.10)}.app-body{font-family:var(--font-family-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--background-primary);color:var(--text-primary);min-height:100dvh;margin:0}@media (max-width:1024px){.app-body{padding-bottom:var(--bottom-nav-height,72px)}}::selection{background-color:var(--selection-bg);color:var(--selection-text)}::-moz-selection{background-color:var(--selection-bg);color:var(--selection-text)}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:4px;transition:outline-offset var(--dur-fast) var(--ease-smooth)}:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}:focus-visible{transition:none}}.card-base{position:relative;display:flex;flex-direction:column;background-color:var(--card-background);border:var(--card-border-width) solid var(--border-primary);border-radius:var(--card-border-radius);padding:var(--card-padding);box-shadow:var(--card-shadow-default);transition:border-color var(--dur-fast) var(--ease-smooth),box-shadow var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth),background-color var(--dur-fast) var(--ease-smooth);overflow:hidden}.card-hover{transition:border-color var(--dur-fast) var(--ease-smooth),background-color var(--dur-fast) var(--ease-smooth)}.card-hover:hover{background-color:var(--card-background-hover)}.glass-panel{background:var(--glass-background);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border)}.accent-border-top:before{content:"";position:absolute;top:0;left:0;right:0;height:var(--card-accent-height);background-color:var(--accent-color,var(--accent-primary));opacity:var(--card-accent-opacity);transition:opacity var(--dur-fast) var(--ease-smooth)}.accent-border-top:hover:before{opacity:var(--card-accent-opacity-hover)}.card-header{display:flex;align-items:center;margin-bottom:var(--space-2)}.feature-list-item{display:flex;align-items:flex-start;gap:var(--space-5);padding:var(--space-7);background-color:var(--background-secondary);border-radius:var(--radius-xl);overflow:hidden}.list-item-accent-border{border:1px solid;border-left:4px solid}@media (max-width:768px){.feature-list-item{gap:var(--space-4);padding:var(--space-6)}}.badge-base{display:inline-flex;align-items:center;gap:var(--space-1);font-family:var(--font-family-base);font-size:var(--font-size-badge);font-weight:var(--font-weight-semibold);padding:var(--badge-padding-y) var(--badge-padding-x);border-radius:var(--badge-border-radius);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth)}.badge-tinted{background-color:color-mix(in srgb,var(--badge-color) 12%,transparent);border:1px solid transparent}.badge-outlined,.badge-tinted{--badge-color:var(--accent-primary);color:var(--badge-color)}.badge-outlined{background-color:color-mix(in srgb,var(--badge-color) 10%,transparent);border:1px solid var(--badge-color)}.badge-uppercase{letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.badge-pill{border-radius:var(--radius-full)}.badge-hover:hover{background-color:color-mix(in srgb,var(--badge-color) 20%,transparent);transform:translateY(-1px)}.ripple-base{position:relative;overflow:hidden}.ripple-base:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,rgba(255,255,255,.4) 0,transparent 70%);border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:width var(--dur-normal) var(--ease-out-quad),height var(--dur-normal) var(--ease-out-quad),opacity var(--dur-normal) var(--ease-out-quad);pointer-events:none}.ripple-base:active:after{width:300%;height:300%;opacity:1;transition:width 0s,height 0s,opacity 0s}.ripple-dark:after{background:radial-gradient(circle,rgba(0,0,0,.15) 0,transparent 70%)}.copy-button-primary{--copy-button-accent:var(--accent-primary);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-family-base);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-semibold);color:var(--button-text-on-accent);background-color:var(--copy-button-accent);border:none;border-radius:var(--radius-full);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-smooth),transform var(--dur-fast) var(--ease-smooth);min-height:var(--button-height-md);position:relative;overflow:hidden}.copy-button-primary:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,rgba(255,255,255,.4) 0,transparent 70%);border-radius:50%;transform:translate(-50%,-50%);opacity:0;transition:width var(--dur-normal) var(--ease-out-quad),height var(--dur-normal) var(--ease-out-quad),opacity var(--dur-normal) var(--ease-out-quad);pointer-events:none}.copy-button-primary:hover{background-color:var(--accent-hover)}.copy-button-primary:active{transform:scale(.98)}.copy-button-primary:active:after{width:300%;height:300%;opacity:1;transition:width 0s,height 0s,opacity 0s}.copy-button-primary[data-copied=true]{background-color:var(--success-text)}.copy-button-primary:focus-visible{outline:2px solid var(--copy-button-accent);outline-offset:2px}.copy-button-primary svg{flex-shrink:0}@media (prefers-reduced-motion:reduce){.badge-base,.badge-hover,.copy-button-primary,.copy-button-primary:after,.ripple-base:after{transition:none}.badge-hover:hover,.copy-button-primary:active{transform:none}.copy-button-primary:active:after,.ripple-base:active:after{width:0;height:0;opacity:0}}@media (max-width:768px){:root{--font-size-body:1.125rem;--font-size-body-sm:1rem;--font-size-caption:0.9375rem;--font-size-button-primary:1rem;--font-size-button-secondary:0.875rem;--font-size-badge:0.6875rem;--font-size-badge-large:0.75rem}}*{margin:0;padding:0;box-sizing:border-box;word-break:normal!important;hyphens:none!important;-webkit-hyphens:none!important;-moz-hyphens:none!important;-ms-hyphens:none!important;overflow-wrap:normal!important;word-wrap:normal!important}span.word{display:inline-block;white-space:nowrap;word-break:keep-all;overflow-wrap:normal}.typo-hero-main{font-size:var(--font-size-hero-main);font-family:var(--font-family-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary)}.typo-hero-sub{font-size:var(--font-size-hero-sub);font-family:var(--font-family-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed);color:var(--text-secondary)}.typo-section-hero{font-size:var(--font-size-section-hero)}.typo-section-hero,.typo-section-large{font-family:var(--font-family-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary)}.typo-section-large{font-size:var(--font-size-section-large)}.typo-section-lead{color:var(--text-secondary)}.typo-section-lead,.typo-section-lead-tertiary{font-size:var(--font-size-section-lead);font-family:var(--font-family-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed)}.typo-section-lead-tertiary{color:var(--text-tertiary)}.typo-content-large{font-size:var(--font-size-content-large);line-height:var(--line-height-relaxed);color:var(--text-primary)}.typo-content-large,.typo-content-medium{font-family:var(--font-family-base);font-weight:var(--font-weight-normal)}.typo-content-medium{font-size:var(--font-size-content-medium);line-height:var(--line-height-loose);color:var(--text-secondary)}.typo-h1{font-size:var(--font-size-5xl)}.typo-h1,.typo-h2{font-family:var(--font-family-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary)}.typo-h2{font-size:var(--font-size-3xl)}.typo-h3{font-size:var(--font-size-2xl)}.typo-h3,.typo-h4{font-family:var(--font-family-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);color:var(--text-primary)}.typo-h4{font-size:var(--font-size-xl)}.typo-body-large{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}.typo-body,.typo-body-large{font-family:var(--font-family-base);font-weight:var(--font-weight-normal);color:var(--text-primary)}.typo-body{font-size:var(--font-size-base);line-height:var(--line-height-normal)}.typo-body-small{font-size:var(--font-size-sm);color:var(--text-secondary)}.typo-body-small,.typo-caption{font-family:var(--font-family-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal)}.typo-caption{font-size:var(--font-size-xs);color:var(--text-tertiary)}.typo-label{font-size:var(--font-size-sm);font-family:var(--font-family-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);color:var(--text-secondary)}.link-inline{color:var(--accent-primary);text-decoration:underline;text-underline-offset:2px;transition:color var(--dur-fast) var(--ease-smooth);cursor:pointer}.link-inline:hover{color:var(--accent-hover)}.principle-container{max-width:min(var(--container-max-width-xl,1440px),100%);margin:0 auto;width:100%;display:flex;flex-direction:column;gap:var(--space-6)}.principle-container--text{max-width:var(--container-text);margin-inline:auto;padding-inline:clamp(1rem,5vw,4rem)}.principle-container--compact{max-width:var(--container-compact);margin-inline:auto;padding-inline:clamp(1rem,5vw,4rem)}.principle-hero{padding:calc(80px + var(--space-12)) clamp(1rem,5vw,4rem) var(--space-12);border-bottom:1px solid var(--border-primary);position:relative;overflow:hidden}@media (max-width:1024px){.principle-hero{padding:var(--space-8) clamp(1rem,5vw,4rem) var(--space-8)}}.principle-hero__pattern{position:absolute;inset:0;pointer-events:none;opacity:.08;background:radial-gradient(circle at 30% 30%,white 0,transparent 60%)}.principle-section{--spacing-major:clamp(100px,15vh,160px);--spacing-minor:clamp(80px,12vh,120px);--spacing-component:clamp(60px,10vh,100px)}.principle-section--major{margin-top:var(--spacing-component)}.principle-section--minor{margin-top:var(--spacing-minor)}.principle-section--component{margin-top:var(--spacing-component)}.spacing-major-top{padding-top:clamp(80px,12vh,120px)}.spacing-minor-top{padding-top:clamp(60px,10vh,100px)}.spacing-component-top{padding-top:clamp(40px,6vh,60px)}.principle-intro .prose-content{color:var(--text-primary)}.principle-intro .prose-content,.principle-intro .prose-content p{font-size:var(--font-size-h3);font-weight:var(--font-weight-medium);line-height:var(--line-height-loose)}.principle-intro .prose-content p{margin-bottom:1.5rem}.principle-intro .line{display:block;opacity:.2}.principle-intro{margin-top:0!important}.prose-content{max-width:100%}.prose-content h2{font-size:var(--font-size-h2);margin-top:2.5em;margin-bottom:.75em}.prose-content h2,.prose-content h3{font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug)}.prose-content h3{font-size:var(--font-size-h3);margin-top:2em;margin-bottom:.5em}.prose-content p{font-size:var(--font-size-body);line-height:var(--line-height-loose);margin-bottom:1.25em}.prose-content ol,.prose-content ul{margin-top:1em;margin-bottom:1.5em;padding-left:1.75em}.prose-content li{font-size:var(--font-size-body);margin-bottom:.5em;line-height:var(--line-height-body)}.key-insight-card{margin-top:clamp(60px,10vh,100px);margin-bottom:clamp(40px,8vh,80px)}.related-principles-grid{gap:clamp(2rem,4vw,2.5rem)!important}.text-part-foundations{color:var(--part-foundations)}.text-part-core-principles{color:var(--part-core-principles)}.text-part-design-systems{color:var(--part-design-systems)}.text-part-interface-patterns{color:var(--part-interface-patterns)}.text-part-specialized-domains{color:var(--part-specialized-domains)}.text-part-human-centered{color:var(--part-human-centered)}.text-accent-primary{color:var(--text-primary)}.reveal-text{opacity:0;transform:translateY(30px);transition:none}.reveal-text-fast{opacity:0;transform:translateY(20px);transition:none}.reveal-text-slow{opacity:0;transform:translateY(40px);transition:none}.reveal-text-stagger>*{opacity:0;transform:translateY(30px);transition:none}@media (prefers-reduced-motion:reduce){.reveal-text,.reveal-text-fast,.reveal-text-slow,.reveal-text-stagger>*{opacity:1!important;transform:none!important}}.reveal-hero{opacity:0;transform:translateY(50px);transition:none}@media (prefers-reduced-motion:reduce){.reveal-hero{opacity:1!important;transform:none!important}}.display-1{font-size:var(--font-size-display-1);font-weight:var(--font-weight-bold)}.display-1,.display-2{line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-tight)}.display-2{font-size:var(--font-size-display-2);font-weight:var(--font-weight-semibold)}.display-3{font-size:var(--font-size-display-3);letter-spacing:var(--letter-spacing-tight)}.display-3,.heading-1{line-height:var(--line-height-tight);font-weight:var(--font-weight-semibold)}.heading-1{font-size:var(--font-size-h1);letter-spacing:var(--letter-spacing-wide)}.heading-2{font-size:var(--font-size-h2);line-height:var(--line-height-tight)}.heading-2,.heading-3{font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide)}.heading-3{font-size:var(--font-size-h3)}.heading-3,.heading-4{line-height:var(--line-height-snug)}.heading-4{font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide)}.heading-5{font-size:var(--font-size-h5)}.heading-5,.heading-6{line-height:var(--line-height-normal);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-normal)}.heading-6{font-size:var(--font-size-h6)}.text-lead{font-size:var(--font-size-lead)}.text-xl{font-size:var(--font-size-body-xl)}.text-lg,.text-xl{line-height:var(--line-height-body);font-weight:var(--font-weight-normal)}.text-lg{font-size:var(--font-size-body-lg)}.text-base{font-size:var(--font-size-body)}.text-base,.text-sm{line-height:var(--line-height-body);font-weight:var(--font-weight-normal)}.text-sm{font-size:var(--font-size-body-sm)}.text-caption{font-size:var(--font-size-caption);font-weight:var(--font-weight-normal)}.text-label{font-size:var(--font-size-label);line-height:var(--line-height-normal)}.hero-title{font-size:var(--font-size-display-2);line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-tight)}.card-title,.hero-title{font-weight:var(--font-weight-semibold)}.card-title{font-size:var(--font-size-h3);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-normal)}.eyebrow{font-size:var(--font-size-label);line-height:var(--line-height-normal);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background-color:var(--background-primary)}body,html{word-break:normal!important;hyphens:none!important;-webkit-hyphens:none!important;-moz-hyphens:none!important;-ms-hyphens:none!important}body{background:var(--background-tertiary);background-color:var(--background-tertiary);color:var(--text-primary);font-family:var(--font-family-base);font-size:var(--font-size-body);line-height:var(--line-height-body);transition:background-color .3s ease,color .3s ease;min-height:100dvh;overflow-x:clip}body::-webkit-scrollbar{width:10px}body::-webkit-scrollbar-track{background:var(--scrollbar-track)}body::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-md);-webkit-transition:background var(--dur-fast) var(--ease-smooth);transition:background var(--dur-fast) var(--ease-smooth)}body::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}h1{font-size:var(--font-size-h1);letter-spacing:var(--letter-spacing-tight);margin-bottom:1.5rem}h1,h2{font-family:var(--font-family-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}h2{font-size:var(--font-size-h2);letter-spacing:var(--letter-spacing-wide);margin-bottom:1.25rem}h3{font-size:var(--font-size-h3);margin-bottom:1rem}h3,h4{font-family:var(--font-family-heading);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-wide)}h4{font-size:var(--font-size-h4);margin-bottom:.875rem}h5{font-size:var(--font-size-h5);font-weight:var(--font-weight-medium);margin-bottom:.75rem}h5,h6{font-family:var(--font-family-heading);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal)}h6{font-size:var(--font-size-h6);font-weight:var(--font-weight-normal);margin-bottom:.5rem}.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}.principles-filter-outer{background-color:var(--background-primary);padding:1.5rem var(--padding-container-x);border-bottom:1px solid var(--border-primary)}.principles-filter-inner{max-width:var(--container-content);margin:0 auto;background-color:var(--background-secondary);box-shadow:var(--shadow-md);border:1px solid var(--border-primary);border-radius:var(--radius-lg);transition:box-shadow var(--dur-normal) var(--ease-smooth)}.principles-filter-inner:hover{box-shadow:var(--shadow-lg)}.principles-filter-content{padding:1.5rem}@media (max-width:768px){.principles-filter-outer{padding:1.25rem var(--padding-container-x)}.principles-filter-content{padding:1.25rem}}.mobile-filter-toggle{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem;background-color:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-semibold);margin-bottom:1rem;width:100%;transition:all var(--dur-normal) var(--ease-smooth)}.mobile-filter-toggle:hover{border-color:var(--text-primary);transform:translateY(-1px)}.mobile-filter-toggle-badge{margin-left:auto;padding:.25rem .5rem;background-color:var(--text-primary);color:white;border-radius:var(--radius-xl);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold)}.principles-filters-row{display:flex;align-items:flex-end;gap:1rem;margin-bottom:1rem}.principles-search-container{display:flex;flex-direction:column;gap:.5rem;flex:2;min-width:200px}.principles-search-container label{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.principles-search-input{width:100%;padding:.75rem 1rem;background-color:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);font-size:var(--font-size-button-secondary);color:var(--text-primary);outline:none;transition:all var(--dur-normal) var(--ease-smooth)}.principles-search-input:hover{border-color:var(--text-secondary)}.principles-search-input:focus{border-color:var(--text-primary);transform:translateY(-1px)}@media (max-width:1024px){.principles-filters-row{flex-direction:column;align-items:stretch}.principles-search-container{width:100%}}.principles-filter-group{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:160px}.principles-filter-group label{font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.principles-filter-select{width:100%;padding:1rem;background-color:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);font-size:var(--font-size-button-secondary);color:var(--text-primary);outline:none;transition:all var(--dur-normal) var(--ease-smooth);cursor:pointer}.principles-filter-select:hover{border-color:var(--text-secondary)}.principles-filter-select:focus{border-color:var(--text-primary);transform:translateY(-1px)}@media (max-width:1024px){.principles-filter-group{width:100%}}.principles-results-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.principles-results-count{font-size:var(--font-size-button-secondary);color:var(--text-secondary);margin:0}.principles-clear-filters{padding:.5rem 1rem;background-color:initial;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-semibold);transition:all var(--dur-fast) var(--ease-smooth)}.principles-clear-filters:hover{background-color:var(--background-tertiary);border-color:var(--text-primary);color:var(--text-primary)}.principles-empty-state{text-align:center;padding:clamp(3rem,10vh,6rem) 2rem}.principles-empty-title{font-size:var(--font-size-h4);color:var(--text-secondary);margin-bottom:1rem}.principles-empty-description{font-size:var(--font-size-body-sm);color:var(--text-tertiary);margin-bottom:var(--space-8)}.principles-empty-button{padding:.875rem 1.75rem;background-color:var(--text-primary);border:none;border-radius:var(--radius-lg);color:white;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);transition:all var(--dur-fast) var(--ease-smooth)}html[data-theme=dark] img[src*="/logos/"]{filter:invert(1) brightness(1.1)}.part-detail-navigation{padding:var(--padding-section-y-small) var(--padding-container-x);background-color:var(--background-secondary);border-top:1px solid var(--border-primary);position:relative;z-index:1}.part-detail-navigation-inner{max-width:var(--container-content);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-6)}.part-detail-nav-button{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-radius:var(--radius-xl);background-color:var(--background-primary);border:1px solid var(--border-primary);text-decoration:none;color:inherit;transition:all var(--dur-normal) var(--ease-smooth)}.part-detail-nav-button:hover{border-color:var(--part-color);box-shadow:0 var(--space-2) var(--space-6) -8px var(--part-color-shadow)}.part-detail-nav-button-prev:hover{transform:translateX(-4px)}.part-detail-nav-button-next:hover{transform:translateX(var(--space-1))}.part-detail-nav-arrow{font-size:var(--space-6)}.part-detail-nav-content{text-align:left}.part-detail-nav-content-right{text-align:right}.part-detail-nav-label{font-size:var(--space-3);color:var(--text-disabled);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);margin-bottom:var(--space-1)}.part-detail-nav-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.part-detail-nav-home{padding:var(--space-4) var(--space-8);border-radius:var(--radius-xl);background-color:var(--part-color);color:var(--text-primary);font-weight:var(--font-weight-bold);text-decoration:none;transition:all var(--dur-normal) var(--ease-smooth);font-size:var(--space-4);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.part-detail-nav-home:hover{transform:scale(1.05);box-shadow:0 var(--space-3) var(--space-8) -8px var(--part-color-shadow)}.diagonal-grid-bg:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100dvh;pointer-events:none;z-index:0;background-image:radial-gradient(circle,var(--grid-color) 1.5px,transparent 1.5px);background-size:var(--grid-size) var(--grid-size);mask-image:linear-gradient(-20deg,transparent 45%,white);-webkit-mask-image:linear-gradient(-20deg,transparent 45%,white);transition:opacity var(--dur-normal) var(--ease-smooth)}@media (min-width:768px){:root{--grid-size:40px;--grid-opacity:0.06}}@media (min-width:1024px){:root{--grid-size:45px;--grid-opacity:0.08}}@media (prefers-reduced-motion:reduce){.diagonal-grid-bg:before{opacity:.5}}@media (prefers-contrast:more){:root{--grid-opacity:0.12}}@media (prefers-reduced-motion:no-preference){.diagonal-grid-bg:before{opacity:1}}@supports not (mask-image:linear-gradient(0deg,transparent,white)){.diagonal-grid-bg:before{opacity:.5}}@keyframes rotateBadge{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulseBadge{0%,to{transform:scale(1);box-shadow:0 var(--space-2) var(--space-8) rgba(56,189,248,.2)}50%{transform:scale(1.05);box-shadow:0 var(--space-3) var(--space-12) rgba(56,189,248,.4)}}.circular-badge.hidden{opacity:0;transform:translateY(20px)}@media (max-width:768px){.circular-badge{width:120px!important;height:120px!important;bottom:var(--space-6)!important;right:var(--space-6)!important}.circular-badge svg text{font-size:7px!important;letter-spacing:1.5px!important}.circular-badge>div:last-child span{font-size:var(--font-size-h4)!important}}@media (max-width:480px){.circular-badge{width:100px!important;height:100px!important;bottom:var(--space-4)!important;right:var(--space-4)!important}.circular-badge svg text{font-size:6px!important;letter-spacing:1px!important}.circular-badge>div:last-child span{font-size:var(--space-6)!important}}@media (prefers-reduced-motion:reduce){.circular-badge svg,.circular-badge>div{animation:none!important}}.part-card-horizontal,.part-card-horizontal *,a.part-card-horizontal,a.part-card-horizontal *,a.part-card-horizontal:active,a.part-card-horizontal:active *,a.part-card-horizontal:focus,a.part-card-horizontal:focus *,a.part-card-horizontal:hover,a.part-card-horizontal:hover *,a.part-card-horizontal:link,a.part-card-horizontal:link *,a.part-card-horizontal:visited,a.part-card-horizontal:visited *{text-decoration:none!important;text-decoration-line:none!important;text-decoration-style:none!important;text-decoration-color:transparent!important;-webkit-text-decoration:none!important;-moz-text-decoration:none!important}.part-card-horizontal:hover .part-card-explore-text,a.part-card-horizontal:hover .part-card-explore-text{text-decoration:underline!important;text-decoration-line:underline!important}@media (max-width:640px){.part-detail-navigation-inner{flex-direction:column}}.grid-flow-row{grid-auto-flow:row}.grid-flow-col{grid-auto-flow:column}.grid-flow-dense{grid-auto-flow:dense}.layout-text-sidebar{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,4rem)}@media (min-width:1024px){.layout-text-sidebar{grid-template-columns:2fr 1fr}}.layout-split{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,4rem)}@media (min-width:1024px){.layout-split{grid-template-columns:1fr 1fr}}.layout-sidebar-text{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,4rem)}@media (min-width:1024px){.layout-sidebar-text{grid-template-columns:1fr 2fr}}.section-header{max-width:var(--container-compact);margin:0 auto var(--space-32) auto;text-align:center}@media (max-width:768px){.section-header{margin-bottom:var(--space-20)}}.section-eyebrow{font-size:var(--font-size-label);text-transform:uppercase;letter-spacing:var(--letter-spacing-widest);color:var(--accent-primary);margin-bottom:var(--space-6);display:block}.section-eyebrow,.section-title{font-weight:var(--font-weight-semibold)}.section-title{font-size:var(--font-size-display-3);line-height:var(--line-height-display);margin-bottom:var(--space-8);color:var(--text-primary);letter-spacing:var(--letter-spacing-tight)}.section-subtitle{font-size:var(--font-size-body-lg);margin-bottom:var(--space-6)}.section-credibility,.section-subtitle{line-height:var(--line-height-body);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.section-credibility{font-size:var(--font-size-body-sm)}.section-header.left{text-align:left;margin-left:0;margin-right:auto}.section-header.compact{margin-bottom:var(--space-16)}@media (max-width:768px){.section-header.compact{margin-bottom:var(--space-12)}}.bento-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(1.5rem,3vw,2rem)}.bento-span-1{grid-column:span 1/span 1}.bento-span-2{grid-column:span 2/span 2}.bento-span-3{grid-column:span 3/span 3}.bento-span-4{grid-column:span 4/span 4}.bento-span-5{grid-column:span 5/span 5}.bento-span-6{grid-column:span 6/span 6}.bento-span-7{grid-column:span 7/span 7}.bento-span-8{grid-column:span 8/span 8}.bento-span-9{grid-column:span 9/span 9}.bento-span-10{grid-column:span 10/span 10}.bento-span-11{grid-column:span 11/span 11}.bento-span-12{grid-column:span 12/span 12}.bento-row-2{grid-row:span 2/span 2}.bento-row-3{grid-row:span 3/span 3}@media (min-width:768px){.md\:bento-span-1{grid-column:span 1/span 1}.md\:bento-span-2{grid-column:span 2/span 2}.md\:bento-span-3{grid-column:span 3/span 3}.md\:bento-span-4{grid-column:span 4/span 4}.md\:bento-span-5{grid-column:span 5/span 5}.md\:bento-span-6{grid-column:span 6/span 6}.md\:bento-span-7{grid-column:span 7/span 7}.md\:bento-span-8{grid-column:span 8/span 8}.md\:bento-span-12{grid-column:span 12/span 12}.md\:bento-row-2{grid-row:span 2/span 2}}@media (min-width:1024px){.lg\:bento-span-1{grid-column:span 1/span 1}.lg\:bento-span-2{grid-column:span 2/span 2}.lg\:bento-span-3{grid-column:span 3/span 3}.lg\:bento-span-4{grid-column:span 4/span 4}.lg\:bento-span-5{grid-column:span 5/span 5}.lg\:bento-span-6{grid-column:span 6/span 6}.lg\:bento-span-7{grid-column:span 7/span 7}.lg\:bento-span-8{grid-column:span 8/span 8}.lg\:bento-span-9{grid-column:span 9/span 9}.lg\:bento-span-10{grid-column:span 10/span 10}.lg\:bento-span-11{grid-column:span 11/span 11}.lg\:bento-span-12{grid-column:span 12/span 12}.lg\:bento-row-2{grid-row:span 2/span 2}.lg\:bento-row-3{grid-row:span 3/span 3}}.bento-featured{grid-column:span 12/span 12;grid-row:span 1/span 1;min-height:250px}@media (min-width:1024px){.bento-featured{grid-column:span 8/span 8;grid-row:span 2/span 2;min-height:400px}}.bento-sidebar{grid-column:span 12/span 12;min-height:200px}@media (min-width:1024px){.bento-sidebar{grid-column:span 4/span 4}}.bento-half{grid-column:span 12/span 12}@media (min-width:768px){.bento-half{grid-column:span 6/span 6}}.bento-third{grid-column:span 12/span 12}@media (min-width:768px){.bento-third{grid-column:span 6/span 6}}@media (min-width:1024px){.bento-third{grid-column:span 4/span 4}}.bento-two-thirds{grid-column:span 12/span 12}@media (min-width:1024px){.bento-two-thirds{grid-column:span 8/span 8}}.bento-quarter{grid-column:span 12/span 12}@media (min-width:768px){.bento-quarter{grid-column:span 6/span 6}}@media (min-width:1024px){.bento-quarter{grid-column:span 3/span 3}}@media print{*{background:var(--background-primary)!important;box-shadow:none!important;text-shadow:none!important}@page{margin:2cm;size:A4}body{font-size:12pt;line-height:1.5;color:var(--text-primary)!important}.bookmark-button,.breadcrumb-item,.marquee-divider,.mobileToggle,.principle-code-badge,.principle-navigation,.principle-tags,.toc,button,nav{display:none!important}[style*="position: absolute"],[style*="position: fixed"]{position:static!important}h1{font-size:24pt}h1,h2{margin-bottom:12pt;page-break-after:avoid;color:var(--text-primary)!important}h2{font-size:18pt;margin-top:18pt}h3{font-size:14pt;margin-top:14pt;margin-bottom:10pt}h3,h4,h5,h6{page-break-after:avoid;color:var(--text-primary)!important}h4,h5,h6{font-size:12pt;margin-top:12pt;margin-bottom:8pt}p{margin-bottom:10pt;orphans:3;widows:3}.content-section,.example-card,.sticky-section,article,img,section{page-break-inside:avoid}img{max-width:100%;display:block;margin:12pt auto}a{color:var(--text-primary)!important;text-decoration:underline}a[href^=http]:after{content:" (" attr(href) ")";font-size:10pt;color:var(--text-tertiary)}code,pre{border:1px solid var(--border-secondary);background:var(--background-secondary)!important;font-size:10pt;padding:8pt;white-space:pre-wrap;word-wrap:break-word}code,pre,table{page-break-inside:avoid}table{border-collapse:collapse;width:100%}td,th{border:1px solid var(--border-secondary);padding:8pt;text-align:left}th{background:var(--background-tertiary)!important;font-weight:var(--font-weight-semibold)}ol,ul{margin-bottom:12pt}li{margin-bottom:6pt}blockquote{border-left:4px solid var(--border-secondary);padding-left:12pt;margin:12pt 0}.common-pitfalls,.key-takeaways,.modern-examples-section,blockquote{page-break-inside:avoid}.references-section{page-break-before:auto}.bento-grid{display:block!important}.bento-grid>*{margin-bottom:12pt}}.icon-button,.touch-target{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.icon-button{padding:.75rem;border-radius:var(--radius-lg);background:transparent;cursor:pointer;transition:all var(--dur-fast) var(--ease-smooth);border:none}.icon-button:hover{background-color:var(--background-tertiary)}.icon-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.text-button{padding:.75rem 1.5rem;min-height:44px;border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);transition:all var(--dur-fast) var(--ease-smooth)}.cta-primary,.text-button{display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.cta-primary{padding:1rem 2rem;min-height:56px;font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);border-radius:var(--radius-xl);transition:all var(--dur-normal) var(--ease-smooth)}.link-target{padding:.5rem .25rem;min-height:44px;display:inline-flex;align-items:center}@media (max-width:768px){.icon-button,.touch-target{min-height:48px;min-width:48px}.cta-primary{min-height:60px;padding:1.125rem 2rem}.text-button{min-height:48px;padding:.875rem 1.5rem}}@media (prefers-reduced-motion:reduce){.cta-primary,.icon-button,.text-button{transition:none}}:focus{outline:none}:focus-visible:not(.skip-link):not([data-skip-link]){outline:2px solid var(--accent-primary);outline-offset:4px;border-radius:var(--radius-sm);transition:outline var(--dur-fast) var(--ease-smooth)}.button:focus-visible,a[role=button]:focus-visible,button:focus-visible{outline:3px solid var(--accent-primary);outline-offset:3px;box-shadow:0 0 0 6px var(--state-focus-ring)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-color:var(--accent-primary)}a:focus-visible:not(.skip-link):not([data-skip-link]){outline:2px solid var(--accent-primary);outline-offset:2px;background-color:color-mix(in srgb,var(--accent-primary) 8%,transparent);border-radius:var(--radius-sm)}[role=button]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-primary);outline-offset:4px}@media (prefers-contrast:high){:focus-visible{outline-width:3px;outline-offset:2px}}@media (prefers-reduced-motion:reduce){:focus-visible{transition:none}}::view-transition-new(root),::view-transition-old(root){animation:none;mix-blend-mode:normal}.implementation-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:clamp(1.5rem,3vw,2rem);transition:all var(--dur-fast) var(--ease-smooth)}.implementation-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.implementation-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.implementation-card--good{border-left-width:4px;border-left-color:var(--success-text)}.implementation-card--bad{border-left-width:4px;border-left-color:var(--error-text)}.modern-examples-grid{display:flex;flex-direction:column;gap:clamp(1.5rem,3vw,2rem);margin-top:2rem}.modern-example-card{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;gap:1.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);padding:clamp(2rem,4vw,2.5rem);transition:all var(--dur-normal) var(--ease-smooth);position:relative;overflow:hidden}.modern-example-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--part-color,var(--accent-primary)) 0,transparent 100%);opacity:0;transition:opacity var(--dur-normal) var(--ease-smooth)}.modern-example-card:hover:before{opacity:1}.modern-example-card:hover{transform:translateX(4px);box-shadow:var(--shadow-lg);border-color:var(--part-color,var(--color-border))}.modern-example-card__logo{grid-column:2;grid-row:1;width:115px;height:115px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--dur-normal) var(--ease-smooth);align-self:center}.modern-example-card:hover .modern-example-card__logo{transform:scale(1.05)}.modern-example-card__title{grid-column:1;grid-row:1;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);margin:0;color:var(--text-primary);line-height:var(--line-height-snug);align-self:center}.modern-example-card__content{grid-column:1;grid-row:2;align-self:start}.modern-example-card__content p{margin-bottom:.75rem;line-height:var(--line-height-loose);color:var(--text-secondary);font-size:var(--font-size-body)}.modern-example-card__content p:last-child{margin-bottom:0}@media (max-width:768px){.modern-example-card{grid-template-columns:1fr;grid-template-rows:auto auto 1fr;gap:1.25rem;padding:1.75rem}.modern-example-card__logo{grid-column:1;grid-row:1;width:87px;height:87px;justify-self:start;align-self:start}.modern-example-card__title{grid-row:2;align-self:start}.modern-example-card__content{grid-row:3}}.role-guidance-grid{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,3vw,2rem);margin-top:2rem}@media (min-width:1024px){.role-guidance-grid{grid-template-columns:repeat(3,1fr)}}.role-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:clamp(1.5rem,3vw,2rem)}.role-card__header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.role-card__icon{width:40px;height:40px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center}.role-card__title{font-size:var(--font-size-body-xl);font-weight:var(--font-weight-semibold);margin:0;color:var(--text-primary)}.role-card__content ul{list-style:none;padding:0;margin:0}.role-card__content li{position:relative;padding-left:1.5rem;margin-bottom:1rem;line-height:var(--line-height-loose);color:var(--text-secondary)}.role-card__content li:before{content:"→";position:absolute;left:0;font-weight:var(--font-weight-semibold)}.key-takeaways{background:var(--color-surface);border-radius:var(--radius-2xl);padding:clamp(2rem,4vw,3rem);border:1px solid var(--color-border)}.key-takeaways__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.5rem}.key-takeaways__item{display:flex;gap:1rem;align-items:flex-start}.key-takeaways__icon{flex-shrink:0;width:var(--icon-size-xl);height:var(--icon-size-xl);margin-top:.125rem}.key-takeaways__text{flex:1;line-height:var(--line-height-loose);color:var(--text-primary);margin:0}.related-principles-compact{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem}@media (min-width:768px){.related-principles-compact{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.related-principles-compact{grid-template-columns:repeat(3,1fr)}}.related-principle-mini{display:flex;align-items:center;gap:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1rem 1.5rem;text-decoration:none;transition:all var(--dur-fast) var(--ease-smooth)}.related-principle-mini:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.related-principle-mini__code{font-size:var(--font-size-label);font-weight:var(--font-weight-semibold);padding:.25rem .75rem;border-radius:var(--radius-md);white-space:nowrap}.related-principle-mini__title{flex:1;font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);margin:0;color:var(--text-primary)}.references-section{background:var(--color-surface);border-radius:var(--radius-2xl);padding:clamp(2rem,4vw,3rem);border:1px solid var(--color-border)}.references-category{margin-bottom:2.5rem}.references-category:last-child{margin-bottom:0}.references-category__title{font-size:var(--font-size-body-xl);font-weight:var(--font-weight-semibold);margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border);color:var(--text-primary)}.references-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.25rem}.reference-item{padding-left:1.5rem;position:relative;line-height:var(--line-height-loose);color:var(--text-secondary)}.reference-item:before{content:"◆";position:absolute;left:0;font-size:.625rem}.reference-item__authors{font-weight:var(--font-weight-semibold);color:var(--text-primary)}.reference-item__title{font-style:italic}.reference-item__meta{color:var(--text-secondary);font-size:var(--font-size-caption)}.reference-item__link{color:var(--accent-primary);text-decoration:none;transition:opacity var(--dur-fast) var(--ease-smooth)}.reference-item__link:hover{opacity:.8;text-decoration:underline}.principle-content{min-height:100dvh;padding:var(--space-8)}.container{max-width:var(--container-content);margin:0 auto}.section{margin-bottom:var(--space-16)}.heading-h1{font-size:var(--font-size-h1);margin-bottom:var(--space-8)}.heading-h1,.heading-h2{font-weight:var(--font-weight-semibold);font-family:var(--font-family-heading)}.heading-h2{font-size:var(--font-size-h2);margin-bottom:var(--space-6)}.heading-h3{font-size:var(--font-size-h3);font-weight:var(--font-weight-semibold);font-family:var(--font-family-heading);margin-bottom:var(--space-4)}.body-text{font-size:var(--font-size-body);line-height:var(--line-height-body)}.part-colors-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.part-color-card{text-align:center;font-weight:var(--font-weight-semibold)}.card,.part-color-card{padding:var(--space-6);border-radius:var(--radius-lg)}.card{background:var(--background-secondary);border:1px solid var(--border-primary)}.app-wrapper{min-height:100dvh;background:var(--background-primary);color:var(--text-primary)}.text-display-1{font-size:var(--font-size-display-1)!important}.text-display-1,.text-display-2{font-weight:var(--font-weight-semibold);line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-tight);text-wrap:balance}.text-display-2{font-size:var(--font-size-display-2)!important}.text-display-3{font-size:var(--font-size-display-3)!important;line-height:var(--line-height-display)}.text-display-3,.text-h1{font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-tight);text-wrap:balance}.text-h1{font-size:var(--font-size-h1)!important;line-height:var(--line-height-tight)}.text-h2{font-size:var(--font-size-h2)!important;line-height:var(--line-height-tight)}.text-h2,.text-h3{font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-wrap:balance}.text-h3{font-size:var(--font-size-h3)!important}.text-h3,.text-h4{line-height:var(--line-height-snug)}.text-h4{font-size:var(--font-size-h4)!important;font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-wrap:balance}.text-h5{font-size:var(--font-size-h5)!important}.text-h5,.text-h6{font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal);text-wrap:balance}.text-h6{font-size:var(--font-size-h6)!important}.text-lead{font-size:var(--font-size-lead)!important;line-height:var(--line-height-relaxed);font-weight:var(--font-weight-normal)}.text-body-xl{font-size:var(--font-size-body-xl)!important}.text-body-lg,.text-body-xl{line-height:var(--line-height-body)}.text-body-lg{font-size:var(--font-size-body-lg)!important}.text-body{font-size:var(--font-size-body)!important}.text-body,.text-body-sm{line-height:var(--line-height-body)}.text-body-sm{font-size:var(--font-size-body-sm)!important}.text-caption{font-size:var(--font-size-caption)!important;color:var(--text-tertiary)}.text-caption,.text-label{line-height:var(--line-height-loose)}.text-label{font-size:var(--font-size-label)!important;font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wider);text-transform:uppercase}.font-light,.font-normal{font-weight:var(--font-weight-normal)!important}.font-medium{font-weight:var(--font-weight-medium)!important}.font-bold,.font-semibold{font-weight:var(--font-weight-semibold)!important}.tracking-tight{letter-spacing:var(--letter-spacing-tight)!important}.tracking-normal{letter-spacing:var(--letter-spacing-normal)!important}.tracking-wide{letter-spacing:var(--letter-spacing-wide)!important}.tracking-wider{letter-spacing:var(--letter-spacing-wider)!important}.leading-display{line-height:var(--line-height-display)!important}.leading-tight{line-height:var(--line-height-tight)!important}.leading-snug{line-height:var(--line-height-snug)!important}.leading-normal{line-height:var(--line-height-normal)!important}.leading-body{line-height:var(--line-height-body)!important}.leading-relaxed{line-height:var(--line-height-relaxed)!important}.leading-loose{line-height:var(--line-height-loose)!important}.part-color-container{--part-color:var(--part-foundations)}.text-part-color{color:var(--part-color,var(--part-foundations))!important}.text-part-foundations{color:var(--part-foundations)!important}.text-part-core-principles{color:var(--part-core-principles)!important}.text-part-design-systems{color:var(--part-design-systems)!important}.text-part-interface-patterns{color:var(--part-interface-patterns)!important}.text-part-specialized-domains{color:var(--part-specialized-domains)!important}.text-part-human-centered{color:var(--part-human-centered)!important}.bg-part-color{background-color:var(--part-color,var(--part-foundations))!important}.bg-part-foundations{background-color:var(--part-foundations)!important}.bg-part-core-principles{background-color:var(--part-core-principles)!important}.bg-part-design-systems{background-color:var(--part-design-systems)!important}.bg-part-interface-patterns{background-color:var(--part-interface-patterns)!important}.bg-part-specialized-domains{background-color:var(--part-specialized-domains)!important}.bg-part-human-centered{background-color:var(--part-human-centered)!important}.border-part-color{border-color:var(--part-color,var(--part-foundations))!important}.border-l-part-color{border-left:4px solid var(--part-color,var(--part-foundations))!important}.border-t-part-color{border-top:1px solid var(--part-color,var(--part-foundations))!important}.border-r-part-color{border-right:4px solid var(--part-color,var(--part-foundations))!important}.border-b-part-color{border-bottom:1px solid var(--part-color,var(--part-foundations))!important}.mt-section-sm{margin-top:clamp(60px,10vh,100px)!important}.mt-section-md{margin-top:clamp(80px,12vh,120px)!important}.mt-section-lg{margin-top:clamp(100px,15vh,160px)!important}.mb-section-sm{margin-bottom:clamp(60px,10vh,100px)!important}.mb-section-md{margin-bottom:clamp(80px,12vh,120px)!important}.mb-section-lg{margin-bottom:clamp(100px,15vh,160px)!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.5rem!important}.mt-2{margin-top:1rem!important}.mt-3{margin-top:1.5rem!important}.mt-4{margin-top:2rem!important}.mt-6{margin-top:3rem!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.5rem!important}.mb-2{margin-bottom:1rem!important}.mb-3{margin-bottom:1.5rem!important}.mb-4{margin-bottom:2rem!important}.mb-6{margin-bottom:3rem!important}.mt-8{margin-top:4rem!important}.mb-8{margin-bottom:4rem!important}.flex{display:flex!important}.flex-col{flex-direction:column!important}.flex-row{flex-direction:row!important}.items-center{align-items:center!important}.items-start{align-items:flex-start!important}.items-end{align-items:flex-end!important}.justify-center{justify-content:center!important}.justify-between{justify-content:space-between!important}.justify-start{justify-content:flex-start!important}.justify-end{justify-content:flex-end!important}.gap-1{gap:.5rem!important}.gap-2{gap:1rem!important}.gap-3{gap:1.5rem!important}.gap-4{gap:2rem!important}.gap-6{gap:3rem!important}.w-full{width:100%!important}.w-5vw{width:5vw!important}.list-none{list-style:none!important;padding:0!important}.list-gap-1{gap:.5rem!important}.list-gap-1,.list-gap-2{display:flex!important;flex-direction:column!important}.list-gap-2{gap:1rem!important}.list-gap-3{display:flex!important;flex-direction:column!important;gap:1.5rem!important}.uppercase{text-transform:uppercase!important}.capitalize{text-transform:capitalize!important}.lowercase{text-transform:lowercase!important}.italic{font-style:italic!important}.not-italic{font-style:normal!important}.text-opacity-50{opacity:.5!important}.text-opacity-60{opacity:.6!important}.text-opacity-70{opacity:.7!important}.text-opacity-80{opacity:.8!important}.no-underline{text-decoration:none!important}.hidden{display:none!important}.block{display:block!important}.inline-block{display:inline-block!important}.relative{position:relative!important}.absolute{position:absolute!important}.fixed{position:fixed!important}.sticky{position:sticky!important}.z-0{z-index:0!important}.z-10{z-index:10!important}.z-20{z-index:20!important}.z-50{z-index:50!important}.flex-shrink-0{flex-shrink:0!important}.cursor-pointer{cursor:pointer!important}.cursor-default{cursor:default!important}:root{--grid-max-width:1440px;--grid-gap:var(--space-6);--grid-padding-x:clamp(1rem,5vw,4rem)}.grid-container{max-width:var(--grid-max-width);margin:0 auto}.grid-container,.grid-container-full{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--grid-gap);padding:0 var(--grid-padding-x);width:100%}.col-centered-6{grid-column:4/10}.col-centered-8{grid-column:3/11}.col-centered-10{grid-column:2/12}@media (max-width:1023px){.col-centered-10,.col-centered-6,.col-centered-8{grid-column:1/-1}}@media (max-width:768px){.grid-container,.grid-container-full{grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.col-centered-10,.col-centered-6,.col-centered-8{grid-column:1/-1}}@media (max-width:1024px){:root{--grid-gap:var(--space-4)}}.grid{display:grid;width:100%;grid-template-columns:repeat(12,1fr);gap:clamp(1rem,2vw,1.5rem)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.grid-auto-fill,.grid-auto-fit{display:grid;gap:clamp(1.5rem,3vw,2rem)}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-span-4{grid-column:span 4/span 4}.col-span-6{grid-column:span 6/span 6}.col-span-8{grid-column:span 8/span 8}.col-span-12{grid-column:span 12/span 12}.col-span-full{grid-column:1/-1}@media (min-width:768px){.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-span-3{grid-column:span 3/span 3}.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-6{grid-column:span 6/span 6}.md\:col-span-12{grid-column:span 12/span 12}.md\:col-span-full{grid-column:1/-1}}@media (min-width:1024px){.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-6{grid-column:span 6/span 6}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:col-span-8{grid-column:span 8/span 8}.lg\:col-span-9{grid-column:span 9/span 9}.lg\:col-span-10{grid-column:span 10/span 10}.lg\:col-span-11{grid-column:span 11/span 11}.lg\:col-span-12{grid-column:span 12/span 12}.lg\:col-span-full{grid-column:1/-1}}.justify-items-start{justify-items:start}.justify-items-center{justify-items:center}.justify-items-end{justify-items:end}.justify-items-stretch{justify-items:stretch}.items-start{align-items:start}.items-center{align-items:center}.items-end{align-items:end}.items-stretch{align-items:stretch}