   :root{  --p4-blue:#0A5FAD; --p4-blue-50:#E8F2FC; --p4-blue-100:#C5DEF7; --p4-blue-200:#9EC8F1; --p4-blue-300:#77B1EB; --p4-blue-400:#509AE5; --p4-blue-500:#0A5FAD; --p4-blue-600:#084D8A; --p4-blue-700:#063D6E; --p4-blue-800:#042D52; --p4-blue-900:#021D36; --p4-blue-rgb:10,95,173;   --p4-orange:#FBAD48; --p4-orange-50:#FFF5E6; --p4-orange-100:#FEE8C7; --p4-orange-200:#FDD9A3; --p4-orange-300:#FCCA7F; --p4-orange-400:#FBBB5B; --p4-orange-500:#FBAD48; --p4-orange-600:#E99A30; --p4-orange-700:#D88920; --p4-orange-800:#B87010; --p4-orange-900:#8A5408; --p4-orange-rgb:251,173,72;   --p4-grey:#939598; --p4-grey-50:#F5F5F6; --p4-grey-100:#E8E9EA; --p4-grey-200:#D4D5D7; --p4-grey-300:#B0B3B5; --p4-grey-400:#939598; --p4-grey-500:#6B6D70; --p4-grey-600:#565759; --p4-grey-700:#414243; --p4-grey-800:#2D2D2E; --p4-grey-900:#1A1A1B; --p4-grey-rgb:147,149,152;}   :root{  --success:#2E7D32; --success-50:#E8F5E9; --success-100:#C8E6C9; --success-200:#A5D6A7; --success-300:#81C784; --success-400:#66BB6A; --success-500:#4CAF50; --success-600:#43A047; --success-700:#388E3C; --success-800:#2E7D32; --success-900:#1B5E20; --success-rgb:46,125,50;   --warning:#F9A825; --warning-50:#FFFDE7; --warning-100:#FFF9C4; --warning-200:#FFF59D; --warning-300:#FFF176; --warning-400:#FFEE58; --warning-500:#FFEB3B; --warning-600:#FDD835; --warning-700:#FBC02D; --warning-800:#F9A825; --warning-900:#F57F17; --warning-rgb:249,168,37;   --error:#C62828; --error-50:#FFEBEE; --error-100:#FFCDD2; --error-200:#EF9A9A; --error-300:#E57373; --error-400:#EF5350; --error-500:#F44336; --error-600:#E53935; --error-700:#D32F2F; --error-800:#C62828; --error-900:#B71C1C; --error-rgb:198,40,40;   --info:#0288D1; --info-50:#E1F5FE; --info-100:#B3E5FC; --info-200:#81D4FA; --info-300:#4FC3F7; --info-400:#29B6F6; --info-500:#03A9F4; --info-600:#039BE5; --info-700:#0288D1; --info-800:#0277BD; --info-900:#01579B; --info-rgb:2,136,209;}   :root{  --font-primary:'Segoe UI',-apple-system,BlinkMacSystemFont,'Inter','Roboto','Helvetica Neue',Arial,sans-serif; --font-mono:'Cascadia Code','Fira Code','Consolas','Monaco','Liberation Mono',monospace;   --text-xs:0.6875rem; --text-sm:0.75rem; --text-base:0.875rem; --text-md:1rem; --text-lg:1.125rem; --text-xl:1.25rem; --text-2xl:1.5rem; --text-3xl:2rem; --text-4xl:2.5rem;   --text-5xl:3rem; --text-6xl:3.75rem; --text-7xl:4.5rem; --text-8xl:6rem;   --font-light:300; --font-normal:400; --font-medium:500; --font-semibold:600; --font-bold:700; --font-extrabold:800;   --leading-none:1; --leading-tight:1.2; --leading-snug:1.3; --leading-normal:1.5; --leading-relaxed:1.625; --leading-loose:2;   --tracking-tighter:-0.05em; --tracking-tight:-0.025em; --tracking-normal:0; --tracking-wide:0.025em; --tracking-wider:0.05em;   --text-xs-fluid:clamp(0.625rem,0.6rem + 0.125vw,0.75rem); --text-sm-fluid:clamp(0.75rem,0.7rem + 0.25vw,0.875rem); --text-base-fluid:clamp(0.875rem,0.8rem + 0.375vw,1rem); --text-md-fluid:clamp(1rem,0.9rem + 0.5vw,1.125rem); --text-lg-fluid:clamp(1.125rem,1rem + 0.625vw,1.25rem); --text-xl-fluid:clamp(1.25rem,1.1rem + 0.75vw,1.5rem); --text-2xl-fluid:clamp(1.5rem,1.3rem + 1vw,1.875rem); --text-3xl-fluid:clamp(1.875rem,1.6rem + 1.375vw,2.25rem); --text-4xl-fluid:clamp(2.25rem,1.9rem + 1.75vw,2.75rem); --text-5xl-fluid:clamp(2.5rem,2rem + 2.5vw,3.5rem); --text-6xl-fluid:clamp(3rem,2.5rem + 2.5vw,4rem); --text-7xl-fluid:clamp(3.5rem,2.5rem + 5vw,5rem);   --icon-xs:clamp(1rem,0.9rem + 0.5vw,1.25rem); --icon-sm:clamp(1.5rem,1.3rem + 1vw,2rem); --icon-md:clamp(2rem,1.7rem + 1.5vw,2.5rem); --icon-lg:clamp(3rem,2.5rem + 2.5vw,4rem); --icon-xl:clamp(4rem,3rem + 5vw,6rem); --icon-2xl:clamp(5rem,3.5rem + 7.5vw,8rem); --icon-feature:clamp(5rem,4rem + 5vw,8.75rem);}   :root{  --space-0:0; --space-px:1px; --space-0-5:0.125rem; --space-1:0.25rem; --space-1-5:0.375rem; --space-2:0.5rem; --space-2-5:0.625rem; --space-3:0.75rem; --space-3-5:0.875rem; --space-4:1rem; --space-5:1.25rem; --space-6:1.5rem; --space-7:1.75rem; --space-8:2rem; --space-9:2.25rem; --space-10:2.5rem; --space-11:2.75rem; --space-12:3rem; --space-14:3.5rem; --space-16:4rem; --space-20:5rem; --space-24:6rem; --space-32:8rem;   --space-40:10rem; --space-48:12rem; --space-64:16rem;}   :root{  --header-height:64px; --header-height-mobile:56px;   --content-width-sm:640px; --content-width-md:960px; --content-width-lg:1280px; --content-width-xl:1440px; --content-width-full:1920px;   --section-padding-y:var(--space-20); --section-padding-y-mobile:var(--space-12); --section-gap:var(--space-16);   --card-padding:var(--space-6); --card-padding-lg:var(--space-8); --card-gap:var(--space-4); --form-gap:var(--space-3);   --hero-min-height:600px; --hero-min-height-mobile:500px;   --z-base:0; --z-raised:10; --z-dropdown:100; --z-sticky:500; --z-fixed:1000; --z-modal-backdrop:9000; --z-modal:10000; --z-popover:15000; --z-tooltip:20000; --z-toast:100000;}   :root{  --border-0:0; --border-1:1px; --border-2:2px; --border-4:4px; --border-8:8px;   --radius-none:0; --radius-sm:2px; --radius-md:4px; --radius-lg:8px; --radius-xl:12px; --radius-2xl:16px; --radius-3xl:24px; --radius-full:9999px;}   :root{  --shadow-none:none; --shadow-xs:0 1px 2px 0 rgba(0,0,0,0.03); --shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05); --shadow-md:0 2px 4px -1px rgba(0,0,0,0.06),0 1px 2px -1px rgba(0,0,0,0.06); --shadow-lg:0 4px 6px -1px rgba(0,0,0,0.08),0 2px 4px -1px rgba(0,0,0,0.06); --shadow-xl:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -2px rgba(0,0,0,0.05); --shadow-2xl:0 20px 25px -5px rgba(0,0,0,0.08),0 10px 10px -5px rgba(0,0,0,0.04); --shadow-inner:inset 0 2px 4px 0 rgba(0,0,0,0.05);   --shadow-focus:0 0 0 3px rgba(10,95,173,0.3); --shadow-focus-error:0 0 0 3px rgba(198,40,40,0.3); --shadow-focus-success:0 0 0 3px rgba(46,125,50,0.3);}   :root{  --duration-instant:0ms; --duration-fast:100ms; --duration-normal:150ms; --duration-moderate:200ms; --duration-slow:300ms; --duration-slower:400ms; --duration-slowest:500ms;   --ease-linear:linear; --ease-default:cubic-bezier(0.4,0,0.2,1); --ease-in:cubic-bezier(0.4,0,1,1); --ease-out:cubic-bezier(0,0,0.2,1); --ease-in-out:cubic-bezier(0.4,0,0.2,1); --ease-bounce:cubic-bezier(0.34,1.56,0.64,1); --ease-elastic:cubic-bezier(0.68,-0.55,0.265,1.55);   --transition-colors:color var(--duration-fast) var(--ease-default), background-color var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default); --transition-opacity:opacity var(--duration-normal) var(--ease-default); --transition-shadow:box-shadow var(--duration-normal) var(--ease-default); --transition-transform:transform var(--duration-normal) var(--ease-out); --transition-all:all var(--duration-normal) var(--ease-default);}   :root{  --breakpoint-xs:0px; --breakpoint-sm:576px; --breakpoint-md:768px; --breakpoint-lg:992px; --breakpoint-xl:1200px; --breakpoint-xxl:1400px;}   :root{  --btn-height-sm:32px; --btn-height-md:44px; --btn-height-lg:52px; --btn-height-xl:60px;   --btn-padding-x-sm:var(--space-4); --btn-padding-x-md:var(--space-6); --btn-padding-x-lg:var(--space-8); --btn-padding-x-xl:var(--space-10);   --input-height-sm:36px; --input-height-md:44px; --input-height-lg:52px;   --icon-xs:12px; --icon-sm:16px; --icon-md:20px; --icon-lg:24px; --icon-xl:32px; --icon-2xl:48px; --icon-3xl:64px;   --touch-target-min:44px;}   :root, [data-theme="light"]{  --theme-mode:light;   --color-primary:var(--p4-blue); --color-primary-hover:var(--p4-blue-600); --color-primary-active:var(--p4-blue-700); --color-primary-light:var(--p4-blue-50); --color-primary-rgb:var(--p4-blue-rgb);   --color-accent:var(--p4-orange); --color-accent-hover:var(--p4-orange-600); --color-accent-active:var(--p4-orange-700); --color-accent-light:var(--p4-orange-50); --color-accent-rgb:var(--p4-orange-rgb);   --bg-primary:#FFFFFF; --bg-secondary:#F5F5F5; --bg-tertiary:#FAFAFA; --bg-elevated:#FFFFFF; --bg-inverse:#1F1F1F;   --surface-card:#FFFFFF; --surface-hover:rgba(0,0,0,0.04); --surface-active:rgba(0,0,0,0.08); --surface-selected:var(--p4-blue-50);   --text-primary:#323130; --text-secondary:#605E5C; --text-tertiary:#8A8886; --text-disabled:#A19F9D; --text-inverse:#FFFFFF; --text-link:var(--p4-blue); --text-link-hover:var(--p4-blue-600);   --border-color:#E1E1E1; --border-light:#F0F0F0; --border-dark:#C8C8C8; --border-focus:var(--p4-blue); --border-error:var(--error);   --success-bg:var(--success-50); --warning-bg:var(--warning-50); --error-bg:var(--error-50); --info-bg:var(--info-50);   --success-text:var(--success-800); --warning-text:var(--warning-900); --error-text:var(--error-800); --info-text:var(--info-800);   --divider-color:#E1E1E1;   --overlay-color:rgba(0,0,0,0.5);}    @media (prefers-reduced-motion:reduce){:root{ --duration-instant:0ms; --duration-fast:0ms; --duration-normal:0ms; --duration-moderate:0ms; --duration-slow:0ms; --duration-slower:0ms; --duration-slowest:0ms;}  *, *::before, *::after{ animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important; scroll-behavior:auto !important;}}    @media (prefers-contrast:high){:root, [data-theme="light"]{ --border-color:#000000; --text-primary:#000000; --text-secondary:#333333;}}    @media print{:root{ --color-primary:#000000; --bg-primary:#FFFFFF; --text-primary:#000000; --shadow-none:none; --shadow-xs:none; --shadow-sm:none; --shadow-md:none; --shadow-lg:none; --shadow-xl:none; --shadow-2xl:none;}}   :root{  --gradient-hero:linear-gradient(135deg,var(--p4-blue) 0%,var(--p4-blue-700) 100%); --gradient-hero-overlay:linear-gradient(135deg,rgba(10,95,173,0.95) 0%,rgba(6,61,110,0.95) 100%);   --gradient-accent:linear-gradient(135deg,var(--p4-orange) 0%,var(--p4-orange-700) 100%);   --gradient-subtle:linear-gradient(180deg,#FFFFFF 0%,#F5F5F5 100%); --gradient-subtle-dark:linear-gradient(180deg,#1A1A1B 0%,#2D2D2E 100%);   --gradient-mesh:radial-gradient(at 0% 0%,rgba(10,95,173,0.1) 0px,transparent 50%), radial-gradient(at 100% 0%,rgba(251,173,72,0.1) 0px,transparent 50%), radial-gradient(at 100% 100%,rgba(10,95,173,0.1) 0px,transparent 50%), radial-gradient(at 0% 100%,rgba(251,173,72,0.1) 0px,transparent 50%);}    [data-theme="dark"]{  --theme-mode:dark;   --color-primary:#4A9FE5; --color-primary-hover:#77B1EB; --color-primary-active:#9EC8F1; --color-primary-light:rgba(10,95,173,0.15); --color-primary-rgb:74,159,229;   --color-accent:#FCCA7F; --color-accent-hover:#FDD9A3; --color-accent-active:#FEE8C7; --color-accent-light:rgba(251,173,72,0.15); --color-accent-rgb:252,202,127;   --bg-primary:#1A1A1B; --bg-secondary:#2D2D2E; --bg-tertiary:#414243; --bg-elevated:#2D2D2E; --bg-inverse:#FFFFFF;   --surface-card:#2D2D2E; --surface-hover:rgba(255,255,255,0.05); --surface-active:rgba(255,255,255,0.10); --surface-selected:rgba(74,159,229,0.15);   --text-primary:#FFFFFF; --text-secondary:#D4D5D7; --text-tertiary:#B0B3B5; --text-disabled:#6B6D70; --text-inverse:#1A1A1B; --text-link:#77B1EB; --text-link-hover:#9EC8F1;   --border-color:#414243; --border-light:#565759; --border-dark:#2D2D2E; --border-focus:#4A9FE5; --border-error:#EF5350;   --success-bg:rgba(46,125,50,0.15); --warning-bg:rgba(249,168,37,0.15); --error-bg:rgba(198,40,40,0.15); --info-bg:rgba(74,159,229,0.15);   --success-text:#81C784; --warning-text:#FFEE58; --error-text:#EF5350; --info-text:#4FC3F7;   --divider-color:#414243;   --overlay-color:rgba(0,0,0,0.7);   --shadow-xs:0 1px 2px 0 rgba(0,0,0,0.4); --shadow-sm:0 1px 2px 0 rgba(0,0,0,0.5); --shadow-md:0 2px 4px -1px rgba(0,0,0,0.6),0 1px 2px -1px rgba(0,0,0,0.6); --shadow-lg:0 4px 6px -1px rgba(0,0,0,0.7),0 2px 4px -1px rgba(0,0,0,0.6); --shadow-xl:0 10px 15px -3px rgba(0,0,0,0.8),0 4px 6px -2px rgba(0,0,0,0.7); --shadow-2xl:0 20px 25px -5px rgba(0,0,0,0.8),0 10px 10px -5px rgba(0,0,0,0.7);   --gradient-hero:linear-gradient(135deg,#084D8A 0%,#021D36 100%); --gradient-subtle:linear-gradient(180deg,#1A1A1B 0%,#2D2D2E 100%);}   :root{  --curve-wave:path("M0,96L48,112C96,128,192,160,288,165.3C384,171,480,149,576,144C672,139,768,149,864,165.3C960,181,1056,203,1152,197.3C1248,192,1344,160,1392,144L1440,128L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z");   --blob-radius-1:60% 40% 30% 70% / 60% 30% 70% 40%; --blob-radius-2:40% 60% 70% 30% / 40% 70% 30% 60%; --blob-radius-3:30% 70% 70% 30% / 60% 40% 60% 40%;   --radius-organic-sm:20px 25px 20px 25px / 25px 20px 25px 20px; --radius-organic-md:30px 40px 30px 40px / 40px 30px 40px 30px; --radius-organic-lg:40px 50px 40px 50px / 50px 40px 50px 40px;}   :root{  --glass-bg:rgba(255,255,255,0.1); --glass-border:rgba(255,255,255,0.2); --glass-blur:blur(10px); --glass-blur-heavy:blur(20px);   --glass-bg-dark:rgba(0,0,0,0.2); --glass-border-dark:rgba(255,255,255,0.1);}  [data-theme="dark"]{ --glass-bg:var(--glass-bg-dark); --glass-border:var(--glass-border-dark);}   :root{  --hover-lift:translateY(-2px); --hover-lift-lg:translateY(-4px); --hover-scale:scale(1.02); --hover-scale-sm:scale(1.01);   --active-press:scale(0.98);   --bounce-scale:scale(1.05);   --glow-primary:0 0 20px rgba(10,95,173,0.4); --glow-accent:0 0 20px rgba(251,173,72,0.4);}   :root{  --text-reveal-duration:0.6s; --text-reveal-delay:0.1s; --text-reveal-ease:cubic-bezier(0.25,0.46,0.45,0.94);   --text-hover-shift:2px; --text-gradient-animate:200%;}    .skip-to-content{ position:absolute; top:-40px; left:50%; transform:translateX(-50%); background:var(--p4-blue,#0A5FAD); color:#FFFFFF; padding:0.75rem 1.5rem; border-radius:0 0 0.5rem 0.5rem; text-decoration:none; font-weight:600; font-size:0.875rem; z-index:10000; transition:top 0.3s ease; box-shadow:0 2px 8px rgba(0,0,0,0.2);}  .skip-to-content:focus{ top:0; outline:2px solid var(--p4-orange,#FBAD48); outline-offset:2px;}  .skip-to-content:hover{ background:var(--p4-blue-600,#084D8A); color:#FFFFFF; text-decoration:none;}   *:focus-visible{ outline:2px solid var(--p4-orange,#FBAD48); outline-offset:2px;}   *:focus:not(:focus-visible){ outline:none;}    :root{  --bs-primary:var(--p4-blue); --bs-primary-rgb:var(--p4-blue-rgb); --bs-primary-bg-subtle:var(--p4-blue-50); --bs-primary-border-subtle:var(--p4-blue-200); --bs-primary-text-emphasis:var(--p4-blue-700);   --bs-secondary:var(--p4-grey); --bs-secondary-rgb:var(--p4-grey-rgb); --bs-secondary-bg-subtle:var(--p4-grey-50); --bs-secondary-border-subtle:var(--p4-grey-200); --bs-secondary-text-emphasis:var(--p4-grey-700);   --bs-success:var(--success); --bs-success-rgb:var(--success-rgb); --bs-success-bg-subtle:var(--success-50); --bs-success-border-subtle:var(--success-200); --bs-success-text-emphasis:var(--success-800);   --bs-info:var(--info); --bs-info-rgb:var(--info-rgb); --bs-info-bg-subtle:var(--info-50); --bs-info-border-subtle:var(--info-200); --bs-info-text-emphasis:var(--info-800);   --bs-warning:var(--warning); --bs-warning-rgb:var(--warning-rgb); --bs-warning-bg-subtle:var(--warning-50); --bs-warning-border-subtle:var(--warning-200); --bs-warning-text-emphasis:var(--warning-900);   --bs-danger:var(--error); --bs-danger-rgb:var(--error-rgb); --bs-danger-bg-subtle:var(--error-50); --bs-danger-border-subtle:var(--error-200); --bs-danger-text-emphasis:var(--error-800);   --bs-light:var(--bg-secondary); --bs-light-rgb:245,245,245; --bs-light-bg-subtle:var(--bg-tertiary); --bs-light-border-subtle:var(--border-light); --bs-light-text-emphasis:var(--text-primary);   --bs-dark:var(--text-primary); --bs-dark-rgb:50,49,48; --bs-dark-bg-subtle:var(--p4-grey-100); --bs-dark-border-subtle:var(--p4-grey-300); --bs-dark-text-emphasis:var(--text-primary);}   :root{  --bs-body-font-family:var(--font-primary); --bs-font-sans-serif:var(--font-primary); --bs-font-monospace:var(--font-mono);   --bs-body-font-size:var(--text-md); --bs-body-line-height:var(--leading-normal); --bs-body-font-weight:var(--font-normal);   --bs-h1-font-size:var(--text-5xl); --bs-h2-font-size:var(--text-4xl); --bs-h3-font-size:var(--text-3xl); --bs-h4-font-size:var(--text-2xl); --bs-h5-font-size:var(--text-xl); --bs-h6-font-size:var(--text-lg);   --bs-headings-font-weight:var(--font-bold); --bs-headings-line-height:var(--leading-tight); --bs-headings-color:var(--text-primary);}   :root{  --bs-gutter-x:var(--space-6); --bs-gutter-y:var(--space-6);   --bs-card-spacer-y:var(--space-5); --bs-card-spacer-x:var(--space-6); --bs-card-border-radius:var(--radius-lg);  --bs-list-group-item-padding-y:var(--space-3); --bs-list-group-item-padding-x:var(--space-4);  --bs-modal-padding:var(--space-6); --bs-modal-border-radius:var(--radius-xl);  --bs-accordion-padding-y:var(--space-4); --bs-accordion-padding-x:var(--space-5);}   :root{  --bs-border-width:var(--border-1); --bs-border-width-lg:var(--border-2);   --bs-border-color:var(--border-color); --bs-border-color-translucent:rgba(0,0,0,0.1);   --bs-border-radius:var(--radius-md); --bs-border-radius-sm:var(--radius-sm); --bs-border-radius-lg:var(--radius-lg); --bs-border-radius-xl:var(--radius-xl); --bs-border-radius-2xl:var(--radius-2xl); --bs-border-radius-pill:var(--radius-full);}   :root{  --bs-box-shadow:var(--shadow-md); --bs-box-shadow-sm:var(--shadow-sm); --bs-box-shadow-lg:var(--shadow-lg); --bs-box-shadow-inset:var(--shadow-inner);   --bs-focus-ring-width:3px; --bs-focus-ring-opacity:0.3; --bs-focus-ring-color:rgba(var(--p4-blue-rgb),0.3);}   :root{  --bs-btn-padding-y:var(--space-3); --bs-btn-padding-x:var(--space-6); --bs-btn-font-size:var(--text-md); --bs-btn-line-height:var(--leading-normal); --bs-btn-font-weight:var(--font-semibold); --bs-btn-border-radius:var(--radius-md);   --bs-btn-padding-y-sm:var(--space-2); --bs-btn-padding-x-sm:var(--space-4); --bs-btn-font-size-sm:var(--text-sm);   --bs-btn-padding-y-lg:var(--space-4); --bs-btn-padding-x-lg:var(--space-8); --bs-btn-font-size-lg:var(--text-lg); --bs-btn-border-radius-lg:var(--radius-lg);   --bs-btn-hover-border-color-shift:-10%; --bs-btn-active-border-color-shift:-20%; --bs-btn-focus-width:3px; --bs-btn-focus-box-shadow:var(--shadow-focus);   --bs-btn-transition:var(--transition-colors),var(--transition-shadow),transform var(--duration-fast) var(--ease-out);}   .btn{ transition:var(--bs-btn-transition);}  .btn:hover{ transform:translateY(-1px); box-shadow:var(--shadow-lg);}  .btn:active{ transform:translateY(0);}   .btn-primary{ --bs-btn-color:var(--text-inverse); --bs-btn-bg:var(--color-primary); --bs-btn-border-color:var(--color-primary); --bs-btn-hover-bg:var(--color-primary-hover); --bs-btn-hover-border-color:var(--color-primary-hover); --bs-btn-active-bg:var(--color-primary-active); --bs-btn-active-border-color:var(--color-primary-active); --bs-btn-disabled-bg:var(--p4-blue-200); --bs-btn-disabled-border-color:var(--p4-blue-200);}   .btn-warning, .btn-accent{ --bs-btn-color:var(--text-primary); --bs-btn-bg:var(--color-accent); --bs-btn-border-color:var(--color-accent); --bs-btn-hover-bg:var(--color-accent-hover); --bs-btn-hover-border-color:var(--color-accent-hover); --bs-btn-active-bg:var(--color-accent-active); --bs-btn-active-border-color:var(--color-accent-active);}   .btn-outline-primary{ --bs-btn-color:var(--color-primary); --bs-btn-border-color:var(--color-primary); --bs-btn-hover-bg:var(--color-primary); --bs-btn-hover-color:var(--text-inverse); --bs-btn-active-bg:var(--color-primary-hover);}   :root{  --bs-input-padding-y:var(--space-3); --bs-input-padding-x:var(--space-4); --bs-input-font-size:var(--text-md); --bs-input-line-height:var(--leading-normal); --bs-input-border-radius:var(--radius-md);   --bs-input-bg:var(--bg-primary); --bs-input-border-color:var(--border-color); --bs-input-color:var(--text-primary); --bs-input-placeholder-color:var(--text-tertiary);   --bs-input-focus-border-color:var(--border-focus); --bs-input-focus-box-shadow:var(--shadow-focus);   --bs-form-valid-color:var(--success); --bs-form-valid-border-color:var(--success); --bs-form-invalid-color:var(--error); --bs-form-invalid-border-color:var(--error);}   .form-control:focus, .form-select:focus{ border-color:var(--border-focus); box-shadow:var(--shadow-focus);}  .form-control.is-valid, .was-validated .form-control:valid{ border-color:var(--success); box-shadow:var(--shadow-focus-success);}  .form-control.is-invalid, .was-validated .form-control:invalid{ border-color:var(--error); box-shadow:var(--shadow-focus-error);}   :root{  --bs-card-border-color:var(--border-color); --bs-card-border-radius:var(--radius-lg); --bs-card-box-shadow:var(--shadow-sm); --bs-card-cap-bg:var(--bg-secondary); --bs-card-bg:var(--surface-card);}   .card{ transition:var(--transition-shadow),var(--transition-transform);}  .card:hover{ box-shadow:var(--shadow-lg); transform:translateY(-2px);}   :root{  --bs-navbar-padding-y:var(--space-4); --bs-navbar-padding-x:var(--space-6); --bs-navbar-brand-padding-y:var(--space-2); --bs-navbar-brand-font-size:var(--text-xl); --bs-navbar-brand-font-weight:var(--font-bold);   --bs-nav-link-padding-y:var(--space-2); --bs-nav-link-padding-x:var(--space-4); --bs-nav-link-font-size:var(--text-md); --bs-nav-link-font-weight:var(--font-medium); --bs-nav-link-color:var(--text-primary); --bs-nav-link-hover-color:var(--color-primary);}   .navbar-light{ --bs-navbar-color:var(--text-primary); --bs-navbar-hover-color:var(--color-primary); --bs-navbar-active-color:var(--color-primary); --bs-navbar-brand-color:var(--color-primary); --bs-navbar-brand-hover-color:var(--color-primary-hover);}   .navbar.sticky-top{ transition:var(--transition-shadow),background-color var(--duration-normal) var(--ease-default);}  .navbar.sticky-top.scrolled{ box-shadow:var(--shadow-md); background-color:rgba(255,255,255,0.98) !important; backdrop-filter:blur(10px);}   :root{ --bs-modal-border-radius:var(--radius-xl); --bs-modal-box-shadow:var(--shadow-2xl); --bs-modal-header-padding-y:var(--space-5); --bs-modal-header-padding-x:var(--space-6); --bs-modal-inner-padding:var(--space-6);}   :root{ --bs-alert-padding-y:var(--space-4); --bs-alert-padding-x:var(--space-5); --bs-alert-border-radius:var(--radius-lg);}  .alert-primary{ --bs-alert-bg:var(--p4-blue-50); --bs-alert-color:var(--p4-blue-800); --bs-alert-border-color:var(--p4-blue-200);}  .alert-success{ --bs-alert-bg:var(--success-bg); --bs-alert-color:var(--success-text); --bs-alert-border-color:var(--success-200);}  .alert-warning{ --bs-alert-bg:var(--warning-bg); --bs-alert-color:var(--warning-text); --bs-alert-border-color:var(--warning-200);}  .alert-danger{ --bs-alert-bg:var(--error-bg); --bs-alert-color:var(--error-text); --bs-alert-border-color:var(--error-200);}   :root{ --bs-badge-padding-y:var(--space-1); --bs-badge-padding-x:var(--space-2-5); --bs-badge-font-size:var(--text-sm); --bs-badge-font-weight:var(--font-semibold); --bs-badge-border-radius:var(--radius-md);}   :root{ --bs-breadcrumb-padding-y:var(--space-3); --bs-breadcrumb-padding-x:var(--space-0); --bs-breadcrumb-item-padding-x:var(--space-2); --bs-breadcrumb-divider-color:var(--text-tertiary); --bs-breadcrumb-item-active-color:var(--text-secondary);}   :root{ --bs-pagination-padding-y:var(--space-2-5); --bs-pagination-padding-x:var(--space-4); --bs-pagination-font-size:var(--text-md); --bs-pagination-border-radius:var(--radius-md); --bs-pagination-color:var(--color-primary); --bs-pagination-hover-color:var(--color-primary-hover); --bs-pagination-focus-box-shadow:var(--shadow-focus); --bs-pagination-active-bg:var(--color-primary); --bs-pagination-active-border-color:var(--color-primary);}   :root{ --bs-tooltip-max-width:280px; --bs-tooltip-padding-y:var(--space-2); --bs-tooltip-padding-x:var(--space-3); --bs-tooltip-font-size:var(--text-sm); --bs-tooltip-bg:var(--text-primary); --bs-tooltip-border-radius:var(--radius-md); --bs-tooltip-opacity:0.95;  --bs-popover-border-color:var(--border-color); --bs-popover-border-radius:var(--radius-lg); --bs-popover-box-shadow:var(--shadow-lg);}     .container-sm{ max-width:var(--content-width-sm);}  .container-md{ max-width:var(--content-width-md);}  .container-lg{ max-width:var(--content-width-lg);}  .container-xl{ max-width:var(--content-width-xl);}     .text-primary{ color:var(--color-primary) !important;}  .text-accent{ color:var(--color-accent) !important;}   .bg-primary{ background-color:var(--color-primary) !important;}  .bg-accent{ background-color:var(--color-accent) !important;}   .border-primary{ border-color:var(--color-primary) !important;}  .border-accent{ border-color:var(--color-accent) !important;}     .display-1{ font-size:var(--text-7xl); font-weight:var(--font-bold); line-height:var(--leading-tight);}  @media (max-width:767px){ .display-1{ font-size:var(--text-5xl);}}  .display-2{ font-size:var(--text-6xl); font-weight:var(--font-bold); line-height:var(--leading-tight);}  @media (max-width:767px){ .display-2{ font-size:var(--text-4xl);}}    html{ scroll-behavior:smooth;}  @media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto;}}     a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{ outline:3px solid var(--color-primary); outline-offset:2px; border-radius:var(--radius-sm);}    @media print{ .btn{ border:1px solid #000 !important;}  .card{ border:1px solid #000 !important;}   .navbar, .modal, .tooltip, .popover{ display:none !important;}}     .hover-lift{ transition:transform var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out), background-color var(--duration-fast) var(--ease-out);}  .hover-lift:hover{ transform:translateY(-5px); box-shadow:0 4px 12px rgba(0,0,0,0.15); background-color:rgba(255,255,255,0.8);}  .hover-lift:hover .fw-bold{ color:var(--p4-blue) !important;} .btn,button{transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out),background-color var(--duration-fast) var(--ease-default);will-change:transform;}.btn:hover,button:hover{transform:var(--hover-lift);}.btn:active,button:active{transform:var(--active-press);}.btn-primary:hover{transform:var(--hover-lift-lg);box-shadow:var(--shadow-xl),var(--glow-primary);}.btn-outline-primary:hover{transform:var(--hover-lift);box-shadow:var(--shadow-lg);}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus);transform:var(--hover-scale-sm);}.card{transition:transform var(--duration-moderate) var(--ease-out),box-shadow var(--duration-moderate) var(--ease-out);will-change:transform;}.card:hover{transform:var(--hover-lift);box-shadow:var(--shadow-2xl);}.feature-card,[class*="feature-"]{transition:all var(--duration-moderate) var(--ease-out);}.feature-card:hover,[class*="feature-"]:hover{transform:var(--hover-lift);}.section-curve-bottom{position:relative;}.section-curve-bottom::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:100px;background:var(--bg-primary);clip-path:ellipse(100% 100% at 50% 100%);}.section-curve-top{position:relative;}.section-curve-top::before{content:'';position:absolute;top:0;left:0;width:100%;height:100px;background:var(--bg-primary);clip-path:ellipse(100% 100% at 50% 0%);}.blob-shape{border-radius:var(--blob-radius-1);animation:blob-morph 8s ease-in-out infinite;}@keyframes blob-morph{0%,100%{border-radius:var(--blob-radius-1);}33%{border-radius:var(--blob-radius-2);}66%{border-radius:var(--blob-radius-3);}}.card-organic{border-radius:var(--radius-organic-md) !important;}.glass-effect{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);}.glass-heavy{background:var(--glass-bg);backdrop-filter:var(--glass-blur-heavy);-webkit-backdrop-filter:var(--glass-blur-heavy);border:1px solid var(--glass-border);}.navbar.glass{background:var(--glass-bg) !important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-border);}.hero-title,.animated-heading{animation:text-reveal var(--text-reveal-duration) var(--text-reveal-ease) both;}@keyframes text-reveal{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}.hero-title{animation-delay:0s;}.hero-subtitle{animation:text-reveal var(--text-reveal-duration) var(--text-reveal-ease) both;animation-delay:0.2s;}.hero-cta{animation:text-reveal var(--text-reveal-duration) var(--text-reveal-ease) both;animation-delay:0.4s;}.gradient-text{background:linear-gradient(135deg,var(--p4-blue) 0%,var(--p4-orange) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:var(--text-gradient-animate);animation:gradient-shift 3s ease infinite;}@keyframes gradient-shift{0%,100%{background-position:0% 50%;}50%{background-position:100% 50%;}}html{scroll-behavior:smooth;}.theme-transition,.theme-transition *,.theme-transition *::before,.theme-transition *::after{transition:background-color var(--duration-moderate) var(--ease-default),color var(--duration-moderate) var(--ease-default),border-color var(--duration-moderate) var(--ease-default),box-shadow var(--duration-moderate) var(--ease-default) !important;}.fade-in-section{opacity:0;transform:translateY(50px);transition:opacity var(--duration-slower) var(--ease-out),transform var(--duration-slower) var(--ease-out);}.fade-in-section.is-visible{opacity:1;transform:translateY(0);}.form-control,.form-select{transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default);}.form-control:focus,.form-select:focus{transform:var(--hover-scale-sm);box-shadow:var(--shadow-focus);}.form-floating label{transition:all var(--duration-normal) var(--ease-default);}a{transition:color var(--duration-fast) var(--ease-default);}.nav-link{position:relative;transition:color var(--duration-fast) var(--ease-default);}.nav-link::after{content:'';position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--color-primary);transition:width var(--duration-moderate) var(--ease-out),left var(--duration-moderate) var(--ease-out);}.nav-link:hover::after,.nav-link.active::after{width:100%;left:0;}img{transition:transform var(--duration-moderate) var(--ease-out),filter var(--duration-moderate) var(--ease-out);}.hover-zoom img:hover{transform:scale(1.05);}.hover-brighten img:hover{filter:brightness(1.1);}.skeleton{background:linear-gradient( 90deg,var(--bg-secondary) 0%,var(--bg-tertiary) 50%,var(--bg-secondary) 100% );background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:var(--radius-md);}@keyframes skeleton-loading{0%{background-position:200% 0;}100%{background-position:-200% 0;}}.spinner{animation:spin 1s linear infinite;}@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}.mesh-gradient-bg{position:relative;overflow:hidden;}.mesh-gradient-bg::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:var(--gradient-mesh);opacity:0.5;z-index:0;}.mesh-gradient-bg > *{position:relative;z-index:1;}.tooltip,.popover{animation:tooltip-fade-in var(--duration-fast) var(--ease-out);}@keyframes tooltip-fade-in{from{opacity:0;transform:translateY(-5px);}to{opacity:1;transform:translateY(0);}}.btn,.card,.nav-link,img{transform:translateZ(0);backface-visibility:hidden;}img,video,iframe{max-width:100%;height:auto;}[data-theme="dark"] .hero-title,[data-theme="dark"] .animated-heading{text-shadow:0 2px 10px rgba(0,0,0,0.3);}[data-theme="dark"] .card{background:var(--surface-card);border-color:var(--border-color);}[data-theme="dark"] .btn-primary{box-shadow:var(--shadow-md);}[data-theme="dark"] .btn-primary:hover{box-shadow:var(--shadow-xl);}@media (max-width:768px){.blob-shape{animation:none;border-radius:var(--radius-xl);}.card:hover,.btn:hover{transform:none;}.glass-effect,.glass-heavy{backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}.blob-shape{animation:none;}html{scroll-behavior:auto;}}@media (prefers-contrast:high){.glass-effect,.glass-heavy{background:var(--bg-primary);border:2px solid var(--border-color);backdrop-filter:none;}.gradient-text{-webkit-text-fill-color:inherit;background-clip:unset;color:var(--text-primary);}}@media (max-width:479px){body{font-size:14px !important;}.section-title,h1,.h1,.display-1{font-size:var(--text-4xl-fluid) !important;line-height:1.2 !important;}h2,.h2,.display-2{font-size:var(--text-3xl-fluid) !important;line-height:1.25 !important;}h3,.h3{font-size:var(--text-2xl-fluid) !important;}h4,.h4{font-size:var(--text-xl-fluid) !important;}h5,.h5{font-size:var(--text-lg-fluid) !important;}.hero-section{min-height:70vh !important;padding:var(--space-12) 0 !important;}.hero-section h1{font-size:2rem !important;margin-bottom:1rem !important;}.hero-section .fs-5{font-size:0.9rem !important;}[style*="max-width:600px"]{max-width:100% !important;padding:0 0.5rem !important;}.feature-icon{width:var(--icon-lg) !important;height:var(--icon-lg) !important;font-size:1.5rem !important;}.stat-number{font-size:2rem !important;}.section-spacing{padding:40px 0 !important;}.btn-lg{padding:0.75rem 1.5rem !important;font-size:0.95rem !important;width:100%;margin-bottom:0.75rem;}.d-flex.gap-3{flex-direction:column !important;gap:0.5rem !important;}.navbar-brand img{height:32px !important;}.card{margin-bottom:1rem;}.feature-card{padding:1.25rem !important;}.ratio.ratio-16x9{margin-bottom:1rem;}.container{padding-left:1rem !important;padding-right:1rem !important;}.client-logo{height:40px !important;}.badge-premium{font-size:0.75rem !important;padding:0.375rem 1rem !important;}}@media (min-width:480px) and (max-width:575px){.section-title{font-size:var(--text-5xl-fluid) !important;}.hero-section{min-height:75vh !important;}.feature-icon{width:var(--icon-xl) !important;height:var(--icon-xl) !important;}.btn-lg{width:auto;}.stat-number{font-size:2.5rem !important;}}@media (min-width:576px) and (max-width:767px){.section-title{font-size:var(--text-5xl-fluid) !important;}.hero-section{min-height:80vh !important;}.feature-icon{width:var(--icon-xl) !important;height:var(--icon-xl) !important;}.stat-number{font-size:2.75rem !important;}.section-spacing{padding:60px 0 !important;}.col-6.col-md-3{flex:0 0 50%;max-width:50%;}}@media (min-width:768px) and (max-width:1023px){.section-title{font-size:var(--text-6xl-fluid) !important;}.hero-section{min-height:85vh !important;}.hero-section h1{font-size:3.5rem !important;}.feature-icon{width:var(--icon-2xl) !important;height:var(--icon-2xl) !important;}.stat-number{font-size:3.25rem !important;}.section-spacing{padding:80px 0 !important;}.col-lg-4{flex:0 0 50%;max-width:50%;}.col-6.col-md-3{flex:0 0 33.333333%;max-width:33.333333%;}}@media (min-width:1024px) and (max-width:1199px){.container{max-width:960px;}.section-title{font-size:var(--text-6xl-fluid) !important;}.hero-section h1{font-size:3.75rem !important;}.feature-icon{width:var(--icon-feature) !important;height:var(--icon-feature) !important;}.stat-number{font-size:3.5rem !important;}.section-spacing{padding:100px 0 !important;}}@media (min-width:1200px) and (max-width:1439px){.container{max-width:1140px;}.section-title{font-size:var(--text-7xl-fluid) !important;}.hero-section h1{font-size:4rem !important;}.feature-icon{width:140px !important;height:140px !important;}.section-spacing{padding:120px 0 !important;}}@media (min-width:1440px) and (max-width:1919px){.container{max-width:1320px;}.section-title{font-size:var(--text-7xl-fluid) !important;}.hero-section h1{font-size:4.5rem !important;}}@media (min-width:1920px){.container{max-width:1536px;}.section-title{font-size:5rem !important;}.hero-section h1{font-size:5rem !important;}.hero-section p{max-width:700px !important;}.feature-icon{width:160px !important;height:160px !important;}}img{max-width:100%;height:auto;}.navbar-brand img{height:clamp(32px,3vw,40px);}.client-logo{height:clamp(40px,4vw,60px);width:auto;}@media (max-width:575px){.container,.container-fluid{padding-left:1rem;padding-right:1rem;}}@media (min-width:576px) and (max-width:767px){.container,.container-fluid{padding-left:1.5rem;padding-right:1.5rem;}}@media (max-width:767px){.text-md-start{text-align:center !important;}.text-md-center{text-align:center !important;}.flex-md-row{flex-direction:column !important;}.card{margin-bottom:1.5rem;}}@media (max-width:767px){.mb-5{margin-bottom:2rem !important;}.mb-4{margin-bottom:1.5rem !important;}.py-5{padding-top:2rem !important;padding-bottom:2rem !important;}.gap-4{gap:1rem !important;}.gap-3{gap:0.75rem !important;}}@media (max-width:991px){.navbar-collapse{margin-top:1rem;}.navbar-nav{gap:0.5rem;}.nav-item{text-align:center;}.nav-item .btn{width:100%;margin-top:0.5rem;}.btn-group{width:100%;margin-top:0.5rem;}.btn-group .btn{flex:1;}}@media (max-width:767px){.form-control,.form-select{font-size:16px !important;}.form-group,.mb-3{margin-bottom:1rem !important;}}.ratio{position:relative;width:100%;}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio,56.25%);content:"";}.ratio > *{position:absolute;top:0;left:0;width:100%;height:100%;}@media (max-width:991px){.col-lg-8,.col-lg-4{flex:0 0 100%;max-width:100%;}.video-card{margin-bottom:1.5rem;}}@media (max-width:767px){.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}table{font-size:0.875rem;}table th,table td{white-space:nowrap;padding:0.5rem;}}@media (max-width:767px){*{animation-duration:0.5s !important;}[data-aos]{transition-duration:0.4s !important;}.parallax{background-attachment:scroll !important;}}@media (hover:none) and (pointer:coarse){a,button,.btn{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;}.nav-link{padding:0.75rem 1rem;}.card:hover,.btn:hover,.feature-card:hover{transform:none !important;}}@media print{.navbar,.btn,.badge,footer,.modal,[data-aos],.cookie-consent{display:none !important;}body{font-size:12pt;line-height:1.5;color:#000;background:#fff;}.container{max-width:100%;}.section-spacing{padding:1rem 0 !important;}h1,h2,h3{page-break-after:avoid;}img{page-break-inside:avoid;}}    .cookie-consent-banner{ position:fixed; bottom:0; left:0; right:0; background:#ffffff; box-shadow:0 -4px 20px rgba(0,0,0,0.15); z-index:9999; padding:1.5rem; transform:translateY(100%); transition:transform 0.3s ease-in-out;}  .cookie-consent-banner.cookie-consent-visible{ transform:translateY(0);}  .cookie-consent-container{ max-width:1200px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap;}  .cookie-consent-content{ display:flex; align-items:flex-start; gap:1.5rem; flex:1; min-width:300px;}  .cookie-consent-icon{ color:var(--p4-blue,#0A5FAD); flex-shrink:0;}  .cookie-consent-text{ flex:1;}  .cookie-consent-title{ font-size:1.25rem; font-weight:700; margin-bottom:0.5rem; color:var(--p4-blue,#0A5FAD);}  .cookie-consent-description{ font-size:0.95rem; color:#6c757d; margin-bottom:0; line-height:1.5;}  .cookie-consent-actions{ display:flex; gap:0.75rem; flex-wrap:wrap; align-items:center;}   .btn-cookie{ padding:0.75rem 1.5rem; border:none; border-radius:6px; font-size:0.95rem; font-weight:600; cursor:pointer; transition:all 0.2s ease; white-space:nowrap;}  .btn-cookie:hover{ transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,0.15);}  .btn-cookie:active{ transform:translateY(0);}  .btn-cookie-accept{ background:var(--p4-blue,#0A5FAD); color:white;}  .btn-cookie-accept:hover{ background:#084a8a;}  .btn-cookie-reject{ background:#6c757d; color:white;}  .btn-cookie-reject:hover{ background:#5a6268;}  .btn-cookie-customize{ background:white; color:var(--p4-blue,#0A5FAD); border:2px solid var(--p4-blue,#0A5FAD);}  .btn-cookie-customize:hover{ background:var(--p4-blue,#0A5FAD); color:white;}    .cookie-settings-modal{ position:fixed; top:0; left:0; right:0; bottom:0; z-index:10000; display:none;}  .cookie-settings-modal.cookie-settings-visible{ display:block;}  .cookie-settings-overlay{ position:absolute; top:0; left:0; right:0; bottom:0; background:rgba(0,0,0,0.6); animation:fadeIn 0.3s ease;}  .cookie-settings-content{ position:relative; max-width:700px; margin:2rem auto; background:white; border-radius:12px; box-shadow:0 10px 40px rgba(0,0,0,0.3); max-height:calc(100vh - 4rem); display:flex; flex-direction:column; animation:slideUp 0.3s ease;}   .cookie-settings-header{ display:flex; align-items:center; justify-content:space-between; padding:1.5rem 2rem; border-bottom:1px solid #e9ecef;}  .cookie-settings-title{ font-size:1.5rem; font-weight:700; color:var(--p4-blue,#0A5FAD); margin:0;}  .cookie-settings-close{ background:none; border:none; font-size:1.5rem; color:#6c757d; cursor:pointer; padding:0.5rem; line-height:1; transition:color 0.2s ease;}  .cookie-settings-close:hover{ color:#343a40;}   .cookie-settings-body{ padding:2rem; overflow-y:auto; flex:1;}  .cookie-settings-intro{ color:#6c757d; margin-bottom:2rem; line-height:1.6;}   .cookie-category{ background:#f8f9fa; border-radius:8px; padding:1.5rem; margin-bottom:1rem;}  .cookie-category:last-child{ margin-bottom:0;}  .cookie-category-header{ display:flex; align-items:center; justify-content:space-between; margin-bottom:1rem;}  .cookie-category-title-wrapper{ display:flex; align-items:center; gap:0.75rem; flex:1;}  .cookie-category-title{ font-size:1.1rem; font-weight:600; color:var(--p4-blue,#0A5FAD); margin:0;}  .cookie-category-badge{ background:#28a745; color:white; padding:0.25rem 0.75rem; border-radius:12px; font-size:0.75rem; font-weight:600; text-transform:uppercase;}  .cookie-category-description{ color:#6c757d; font-size:0.95rem; line-height:1.6; margin-bottom:0.5rem;}  .cookie-examples{ font-size:0.85rem; color:#868e96; margin-top:0.5rem;}  .cookie-examples strong{ color:#495057;}   .cookie-toggle{ position:relative; display:inline-block; width:60px; height:34px; flex-shrink:0;}  .cookie-toggle input{ opacity:0; width:0; height:0;}  .cookie-toggle-slider{ position:absolute; cursor:pointer; top:0; left:0; right:0; bottom:0; background-color:#ccc; transition:0.3s; border-radius:34px;}  .cookie-toggle-slider:before{ position:absolute; content:""; height:26px; width:26px; left:4px; bottom:4px; background-color:white; transition:0.3s; border-radius:50%;}  .cookie-toggle input:checked + .cookie-toggle-slider{ background-color:var(--p4-blue,#0A5FAD);}  .cookie-toggle input:checked + .cookie-toggle-slider:before{ transform:translateX(26px);}   .cookie-toggle-disabled{ opacity:0.6; cursor:not-allowed;}  .cookie-toggle-disabled .cookie-toggle-slider{ cursor:not-allowed; background-color:#28a745;}   .cookie-settings-footer{ display:flex; gap:1rem; padding:1.5rem 2rem; border-top:1px solid #e9ecef; justify-content:flex-end;}    @keyframes fadeIn{ from{ opacity:0;} to{ opacity:1;}}  @keyframes slideUp{ from{ transform:translateY(50px); opacity:0;} to{ transform:translateY(0); opacity:1;}}    @media (max-width:768px){ .cookie-consent-banner{ padding:1rem;}  .cookie-consent-container{ flex-direction:column; gap:1rem;}  .cookie-consent-content{ gap:1rem; min-width:100%;}  .cookie-consent-icon{ display:none;}  .cookie-consent-title{ font-size:1.1rem;}  .cookie-consent-description{ font-size:0.9rem;}  .cookie-consent-actions{ width:100%; justify-content:stretch;}  .btn-cookie{ flex:1; text-align:center; padding:0.65rem 1rem; font-size:0.9rem;}   .cookie-settings-content{ margin:1rem; max-height:calc(100vh - 2rem);}  .cookie-settings-header{ padding:1rem 1.5rem;}  .cookie-settings-title{ font-size:1.25rem;}  .cookie-settings-body{ padding:1.5rem;}  .cookie-category{ padding:1rem;}  .cookie-category-header{ flex-direction:column; align-items:flex-start; gap:1rem;}  .cookie-category-title-wrapper{ flex-direction:column; align-items:flex-start; gap:0.5rem;}  .cookie-settings-footer{ padding:1rem 1.5rem; flex-direction:column;}  .cookie-settings-footer .btn-cookie{ width:100%;}}  @media (max-width:480px){ .cookie-consent-actions{ flex-direction:column;}  .btn-cookie{ width:100%;}}     .btn-cookie:focus, .cookie-toggle:focus-within, .cookie-settings-close:focus{ outline:3px solid var(--p4-orange,#FBAD48); outline-offset:2px;}   @media (prefers-reduced-motion:reduce){ .cookie-consent-banner, .btn-cookie, .cookie-toggle-slider, .cookie-toggle-slider:before, .cookie-settings-overlay, .cookie-settings-content{ transition:none; animation:none;}} .footer-redesign{background:linear-gradient(135deg,#0A5FAD 0%,#073d73 100%);color:#FFFFFF;position:relative;}.footer-content{padding:4rem 0 2rem;}.footer-redesign h4{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:1.5rem;color:#FFFFFF;}.footer-redesign ul{list-style:none;padding:0;margin:0;}.footer-redesign li{margin-bottom:0.5rem;}.footer-redesign a{color:rgba(255,255,255,0.8);text-decoration:none;font-size:0.9rem;line-height:2;transition:color 0.3s ease;}.footer-redesign a:hover{color:#FBAD48;}.footer-logo{height:120px;max-width:100%;margin-bottom:1.5rem;}.footer-description{font-size:0.875rem;line-height:1.6;color:rgba(255,255,255,0.8);margin-bottom:1.5rem;max-width:350px;}.social-icons{display:flex;gap:0.5rem;margin:1.5rem 0;flex-wrap:wrap;}.social-icon{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:50%;background:rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;color:#FFFFFF;font-size:1.125rem;transition:all 0.3s ease;text-decoration:none;}.social-icon:hover{background:#FBAD48;color:#FFFFFF;transform:translateY(-2px);}.footer-lang-switcher{margin-top:1.5rem;}.footer-lang-switcher .btn-outline-light{border-color:rgba(255,255,255,0.3);color:#FFFFFF;padding:0.5rem 1rem;font-size:0.875rem;transition:all 0.3s ease;}.footer-lang-switcher .btn-outline-light.active{background:#FFFFFF;color:#0A5FAD;border-color:#FFFFFF;}.footer-lang-switcher .btn-outline-light:hover{border-color:#FBAD48;color:#FBAD48;background:transparent;}.footer-lang-switcher .btn-outline-light.active:hover{background:#FFFFFF;color:#0A5FAD;}.contact-info-item{display:flex;align-items:center;gap:0.5rem;margin-bottom:0.75rem;}.contact-info-item i{color:#FBAD48;width:20px;text-align:center;font-size:1rem;}.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding:2rem 0;}.footer-bottom p{margin:0;font-size:0.875rem;color:rgba(255,255,255,0.7);}.footer-bottom a{color:rgba(255,255,255,0.8);text-decoration:none;transition:color 0.3s ease;}.footer-bottom a:hover{color:#FBAD48;text-decoration:none;}.back-to-top-btn{display:inline-flex;align-items:center;gap:0.5rem;color:#FFFFFF;border:1px solid rgba(255,255,255,0.3);padding:0.5rem 1.5rem;border-radius:0.375rem;background:transparent;transition:all 0.3s ease;cursor:pointer;text-decoration:none;font-size:0.9rem;}.back-to-top-btn:hover{background:#FBAD48;border-color:#FBAD48;color:#FFFFFF;transform:translateY(-2px);}.back-to-top-mobile{position:fixed;bottom:20px;right:20px;width:56px;height:56px;min-width:56px;min-height:56px;border-radius:50%;background:rgba(10,95,173,0.9);color:#FFFFFF;border:none;display:flex;align-items:center;justify-content:center;font-size:1.25rem;box-shadow:0 4px 12px rgba(0,0,0,0.3);cursor:pointer;z-index:1000;opacity:0;visibility:hidden;transition:all 0.3s ease;}.back-to-top-mobile.visible{opacity:1;visibility:visible;}.back-to-top-mobile:hover{background:#FBAD48;transform:translateY(-2px);}@media (hover:none) and (pointer:coarse){.social-icon:hover{transform:none;}.social-icon:active{background:#FBAD48;transform:scale(0.95);}.back-to-top-btn:hover{transform:none;}.back-to-top-btn:active{background:#FBAD48;transform:scale(0.98);}}@media (min-width:768px) and (max-width:1023px){.footer-content{padding:3rem 0 1.5rem;}.footer-redesign h4{margin-top:1rem;}.footer-logo{height:105px;}}@media (min-width:576px) and (max-width:767px){.footer-content{padding:2.5rem 0 1.25rem;}.footer-redesign h4{margin-top:1.75rem;}.footer-logo{height:96px;}.social-icons{gap:0.75rem;}}@media (min-width:480px) and (max-width:575px){.footer-content{padding:2rem 0 1rem;}.footer-bottom{text-align:center;padding:1.5rem 0;}.footer-redesign h4{margin-top:2rem;font-size:0.95rem;}.footer-description,.social-icons,.footer-lang-switcher{margin-left:auto;margin-right:auto;text-align:center;justify-content:center;}.contact-info-item{justify-content:center;}.footer-logo{height:90px;}}@media (min-width:320px) and (max-width:479px){.footer-content{padding:1.5rem 0 0.75rem;}.footer-bottom{text-align:center;padding:1.25rem 0;}.footer-bottom .row > div{margin-bottom:1rem;}.footer-bottom .row > div:last-child{margin-bottom:0;}.footer-redesign h4{margin-top:1.75rem;font-size:0.9rem;margin-bottom:1rem;}.footer-redesign a{font-size:0.85rem;line-height:2.2;}.footer-description{font-size:0.8rem;margin-bottom:1rem;}.social-icons{gap:0.625rem;margin:1.25rem 0;}.social-icon{width:44px;height:44px;}.footer-description,.social-icons,.footer-lang-switcher{margin-left:auto;margin-right:auto;text-align:center;justify-content:center;}.contact-info-item{justify-content:center;font-size:0.85rem;}.footer-logo{height:84px;}.footer-bottom p{font-size:0.75rem;}.back-to-top-mobile{bottom:15px;right:15px;width:48px;height:48px;}}@media (max-width:319px){.footer-content{padding:1rem 0 0.5rem;}.footer-redesign h4{font-size:0.85rem;}.footer-redesign a{font-size:0.8rem;}.footer-logo{height:76px;}}.footer-redesign a:focus,.social-icon:focus,.footer-lang-switcher .btn-outline-light:focus,.back-to-top-btn:focus,.back-to-top-mobile:focus{outline:2px solid #FBAD48;outline-offset:2px;}@media (max-width:767px){.footer-bottom{text-align:center;padding:1.5rem 0;}.footer-bottom .col-md-6{text-align:center !important;}}