/* source: static/css/design-tokens.generated.css */
/* Generated from data/published/design_tokens.json. Do not edit by hand. */
:root {
  --token-border-width-accent: 3px;
  --token-border-width-hairline: 1px;
  --token-border-width-quote: 4px;
  --token-breakpoint-classicstack: 900px;
  --token-breakpoint-lg: 1024px;
  --token-breakpoint-md: 768px;
  --token-color-border-default: #C7CCD2;
  --token-color-border-input: #DCDCDC;
  --token-color-border-muted: #E5E7EB;
  --token-color-border-subtle: #D1D5DB;
  --token-color-brand-accent: #028389;
  --token-color-brand-accentdark: #2B6974;
  --token-color-brand-accentsoft: #7EAFA9;
  --token-color-brand-chartred: #D86805;
  --token-color-brand-chartreddark: #713400;
  --token-color-brand-primary: #E0C36B;
  --token-color-brand-primarysoft: #FEE08A;
  --token-color-link-default: #028389;
  --token-color-link-hover: #10282C;
  --token-color-link-legacy: #D86805;
  --token-color-surface-backgrounddark: #A1ADAD;
  --token-color-surface-backgroundlight: #E3F5E7;
  --token-color-surface-muted: #F3F4F6;
  --token-color-surface-page: #FFFFFF;
  --token-color-surface-paper: #DEE2E1;
  --token-color-text-body: #10282C;
  --token-color-text-headingdark: #111827;
  --token-color-text-inverse: #F3F4F6;
  --token-color-text-muted: #374151;
  --token-color-text-primary: #10282C;
  --token-component-article-bodysize: 1.2rem;
  --token-component-article-maxwidth: 760px;
  --token-component-article-prosesize: 1.3rem;
  --token-component-button-fontfamily: "Barlow Condensed", sans-serif;
  --token-component-button-fontsize: 1.5rem;
  --token-component-button-paddingblock: 1rem;
  --token-component-button-paddinginline: 1.5rem;
  --token-component-button-radius: 0.125rem;
  --token-component-card-background: #FFFFFF;
  --token-component-card-bordercolor: #C7CCD2;
  --token-component-card-padding: 1rem;
  --token-component-card-radius: 0.125rem;
  --token-component-header-background: #E3F5E7;
  --token-component-header-bordercolor: #C7CCD2;
  --token-component-header-maxwidth: 1120px;
  --token-font-family-display: "EB Garamond", serif;
  --token-font-family-icon: "Material Symbols Outlined";
  --token-font-family-sans: "Barlow Condensed", sans-serif;
  --token-font-family-sansfallback: "Barlow Condensed", "Arial", sans-serif;
  --token-font-family-serifbody: "Lora", "Georgia", serif;
  --token-font-letterspacing-caps: 0.08em;
  --token-font-letterspacing-herobadge: 0.15em;
  --token-font-letterspacing-none: 0;
  --token-font-letterspacing-tightbrand: 0.01em;
  --token-font-letterspacing-widecaps: 0.12em;
  --token-font-lineheight-copy: 1.35;
  --token-font-lineheight-heading: 1.08;
  --token-font-lineheight-prose: 1.75;
  --token-font-lineheight-tight: 1;
  --token-font-size-2xl: 2rem;
  --token-font-size-3xl: 2.2rem;
  --token-font-size-base: 1rem;
  --token-font-size-classichero: clamp(2rem, 4vw, 3.35rem);
  --token-font-size-hero: clamp(2.4rem, 5vw, 4.8rem);
  --token-font-size-lg: 1.2rem;
  --token-font-size-md: 1.05rem;
  --token-font-size-sm: 0.92rem;
  --token-font-size-xl: 1.5rem;
  --token-font-size-xs: 0.8rem;
  --token-font-weight-bold: 700;
  --token-font-weight-medium: 500;
  --token-font-weight-regular: 400;
  --token-font-weight-semibold: 600;
  --token-motion-duration-base: 0.3s;
  --token-motion-duration-fast: 0.2s;
  --token-motion-duration-panel: 0.38s;
  --token-motion-easing-standard: 0.4, 0, 0.2, 1;
  --token-radius-hero: 300px 3.75rem 3.75rem 3.75rem;
  --token-radius-none: 0;
  --token-radius-pill: 9999px;
  --token-radius-sm: 0.125rem;
  --token-size-content-default: 1120px;
  --token-size-content-narrow: 760px;
  --token-size-content-wide: 1280px;
  --token-size-icon-lg: 2.2rem;
  --token-size-icon-md: 20px;
  --token-size-icon-sm: 1rem;
  --token-space-0: 0;
  --token-space-1: 0.25rem;
  --token-space-10: 2.5rem;
  --token-space-12: 3rem;
  --token-space-16: 4rem;
  --token-space-2: 0.5rem;
  --token-space-20: 5rem;
  --token-space-3: 0.75rem;
  --token-space-4: 1rem;
  --token-space-5: 1.25rem;
  --token-space-6: 1.5rem;
  --token-space-8: 2rem;

  /* Backward-compatible semantic aliases used by existing templates. */
  --border-accent: var(--token-border-width-accent);
  --border-hairline: var(--token-border-width-hairline);
  --border-quote: var(--token-border-width-quote);
  --color-accent: var(--token-color-brand-accent);
  --color-accent-dark: var(--token-color-brand-accentdark);
  --color-accent-soft: var(--token-color-brand-accentsoft);
  --color-bg-dark: var(--token-color-surface-backgrounddark);
  --color-bg-light: var(--token-color-surface-backgroundlight);
  --color-border: var(--token-color-border-default);
  --color-border-input: var(--token-color-border-input);
  --color-border-muted: var(--token-color-border-muted);
  --color-border-subtle: var(--token-color-border-subtle);
  --color-chart-red: var(--token-color-brand-chartred);
  --color-chart-red-dark: var(--token-color-brand-chartreddark);
  --color-heading-dark: var(--token-color-text-headingdark);
  --color-muted: var(--token-color-surface-muted);
  --color-page: var(--token-color-surface-page);
  --color-paper: var(--token-color-surface-paper);
  --color-primary: var(--token-color-brand-primary);
  --color-primary-soft: var(--token-color-brand-primarysoft);
  --color-text: var(--token-color-text-primary);
  --color-text-body: var(--token-color-text-body);
  --color-text-inverse: var(--token-color-text-inverse);
  --color-text-muted: var(--token-color-text-muted);
  --duration-base: var(--token-motion-duration-base);
  --duration-fast: var(--token-motion-duration-fast);
  --duration-panel: var(--token-motion-duration-panel);
  --font-body: var(--token-font-family-serifbody);
  --font-display: var(--token-font-family-display);
  --font-icon: var(--token-font-family-icon);
  --font-sans: var(--token-font-family-sans);
  --font-sans-fallback: var(--token-font-family-sansfallback);
  --max-default: var(--token-size-content-default);
  --max-narrow: var(--token-size-content-narrow);
  --max-wide: var(--token-size-content-wide);
  --radius-hero: var(--token-radius-hero);
  --radius-none: var(--token-radius-none);
  --radius-pill: var(--token-radius-pill);
  --radius-sm: var(--token-radius-sm);
  --size-2xl: var(--token-font-size-2xl);
  --size-3xl: var(--token-font-size-3xl);
  --size-base: var(--token-font-size-base);
  --size-classic-hero: var(--token-font-size-classichero);
  --size-hero: var(--token-font-size-hero);
  --size-lg: var(--token-font-size-lg);
  --size-md: var(--token-font-size-md);
  --size-sm: var(--token-font-size-sm);
  --size-xl: var(--token-font-size-xl);
  --size-xs: var(--token-font-size-xs);
  --space-0: var(--token-space-0);
  --space-1: var(--token-space-1);
  --space-10: var(--token-space-10);
  --space-12: var(--token-space-12);
  --space-16: var(--token-space-16);
  --space-2: var(--token-space-2);
  --space-20: var(--token-space-20);
  --space-3: var(--token-space-3);
  --space-4: var(--token-space-4);
  --space-5: var(--token-space-5);
  --space-6: var(--token-space-6);
  --space-8: var(--token-space-8);
}
/* source: static/css/tailwind.generated.css */
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=radio]:checked:focus,[type=radio]:checked:hover{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}@media (forced-colors:active) {[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"\201C""\201D""\2018""\2019";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows)/10%),0 3px 0 rgb(var(--tw-prose-kbd-shadows)/10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body:#374151;--tw-prose-headings:#111827;--tw-prose-lead:#4b5563;--tw-prose-links:#111827;--tw-prose-bold:#111827;--tw-prose-counters:#6b7280;--tw-prose-bullets:#d1d5db;--tw-prose-hr:#e5e7eb;--tw-prose-quotes:#111827;--tw-prose-quote-borders:#e5e7eb;--tw-prose-captions:#6b7280;--tw-prose-kbd:#111827;--tw-prose-kbd-shadows:17 24 39;--tw-prose-code:#111827;--tw-prose-pre-code:#e5e7eb;--tw-prose-pre-bg:#1f2937;--tw-prose-th-borders:#d1d5db;--tw-prose-td-borders:#e5e7eb;--tw-prose-invert-body:#d1d5db;--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:#9ca3af;--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:#9ca3af;--tw-prose-invert-bullets:#4b5563;--tw-prose-invert-hr:#374151;--tw-prose-invert-quotes:#f3f4f6;--tw-prose-invert-quote-borders:#374151;--tw-prose-invert-captions:#9ca3af;--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:255 255 255;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:#d1d5db;--tw-prose-invert-pre-bg:rgba(0,0,0,.5);--tw-prose-invert-th-borders:#4b5563;--tw-prose-invert-td-borders:#374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.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}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.left-0{left:0}.right-0{right:0}.right-1{right:.25rem}.top-0{top:0}.top-1{top:.25rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.order-3{order:3}.mx-auto{margin-left:auto;margin-right:auto}.-mr-4{margin-right:-1rem}.-mt-4{margin-top:-1rem}.mb-0{margin-bottom:0}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-24{margin-bottom:6rem}.mb-28{margin-bottom:7rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-24{height:6rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-\[100dvh\]{height:100dvh}.h-full{height:100%}.min-h-\[100dvh\]{min-height:100dvh}.min-h-\[320px\]{min-height:320px}.min-h-\[360px\]{min-height:360px}.w-11{width:2.75rem}.w-24{width:6rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-auto{width:auto}.w-full{width:100%}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-7xl{max-width:80rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xl{max-width:36rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-1{gap:.25rem}.gap-12{gap:3rem}.gap-14{gap:3.5rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem*var(--tw-space-x-reverse));margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem*var(--tw-space-x-reverse));margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.text-wrap{text-wrap:wrap}.rounded{border-radius:.25rem}.rounded-\[0\.125rem\]{border-radius:.125rem}.rounded-\[60px\]{border-radius:60px}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-\[3px\]{border-bottom-width:3px}.border-t{border-top-width:1px}.border-t-\[3px\]{border-top-width:3px}.border-\[\#028389\]{--tw-border-opacity:1;border-color:rgb(2 131 137/var(--tw-border-opacity,1))}.border-\[var\(--color-border-subtle\)\]{border-color:var(--color-border-subtle)}.border-\[var\(--color-chart-red\)\]{border-color:var(--color-chart-red)}.border-cyan-500\/50{border-color:rgba(6,182,212,.5)}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-400{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.border-white\/60{border-color:hsla(0,0%,100%,.6)}.border-white\/70{border-color:hsla(0,0%,100%,.7)}.bg-\[\#028389\]{--tw-bg-opacity:1;background-color:rgb(2 131 137/var(--tw-bg-opacity,1))}.bg-\[\#10282c\]\/20{background-color:rgba(16,40,44,.2)}.bg-\[\#2B6974\]{--tw-bg-opacity:1;background-color:rgb(43 105 116/var(--tw-bg-opacity,1))}.bg-\[\#E3F5E7\]{--tw-bg-opacity:1;background-color:rgb(227 245 231/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-primary{background-color:var(--color-primary)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.object-cover{-o-object-fit:cover;object-fit:cover}.p-12{padding:3rem}.p-2{padding:.5rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-0{padding-left:0;padding-right:0}.px-2{padding-left:.5rem;padding-right:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-14{padding-bottom:3.5rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-24{padding-bottom:6rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pb-8{padding-bottom:2rem}.pr-2{padding-right:.5rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-display{font-family:var(--font-display)}.font-sans{font-family:var(--font-sans)}.\!text-\[2\.5rem\]{font-size:2.5rem!important}.\!text-\[3rem\]{font-size:3rem!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[1\.05rem\]{font-size:1.05rem}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.not-italic{font-style:normal}.leading-\[0\.95\]{line-height:.95}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.12em\]{letter-spacing:.12em}.tracking-\[0\.14em\]{letter-spacing:.14em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-\[var\(--color-accent\)\]{color:var(--color-accent)}.text-\[var\(--color-chart-red\)\]{color:var(--color-chart-red)}.text-\[var\(--color-text-body\)\]{color:var(--color-text-body)}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-100{--tw-text-opacity:1;color:rgb(220 252 231/var(--tw-text-opacity,1))}.text-green-200{--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity,1))}.text-green-50{--tw-text-opacity:1;color:rgb(240 253 244/var(--tw-text-opacity,1))}.text-primary{color:var(--color-primary)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.line-through{text-decoration-line:line-through}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-10{opacity:.1}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur-xl{--tw-blur:blur(24px)}.blur-xl,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.\[touch-action\:pan-y\]{touch-action:pan-y}.placeholder\:text-gray-500::-moz-placeholder{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.placeholder\:text-gray-500::placeholder{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.hover\:border-\[\#7EAFA9\]:hover{--tw-border-opacity:1;border-color:rgb(126 175 169/var(--tw-border-opacity,1))}.hover\:border-\[var\(--color-accent-dark\)\]:hover{border-color:var(--color-accent-dark)}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:text-\[var\(--color-chart-red-dark\)\]:hover{color:var(--color-chart-red-dark)}.hover\:text-black:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.hover\:text-cyan-800:hover{--tw-text-opacity:1;color:rgb(21 94 117/var(--tw-text-opacity,1))}.hover\:text-gray-500:hover{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.hover\:opacity-100:hover{opacity:1}.focus\:border-primary:focus{border-color:var(--color-primary)}.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.focus\:ring-primary:focus{--tw-ring-color:var(--color-primary)}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95}.active\:scale-95:active,.group:hover .group-hover\:-translate-x-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-x-1{--tw-translate-x:-0.25rem}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width:640px){.sm\:flex{display:flex}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:left-auto{left:auto}.md\:right-8{right:2rem}.md\:order-1{order:1}.md\:order-2{order:2}.md\:mx-auto{margin-left:auto;margin-right:auto}.md\:mb-10{margin-bottom:2.5rem}.md\:mb-12{margin-bottom:3rem}.md\:mb-14{margin-bottom:3.5rem}.md\:mb-32{margin-bottom:8rem}.md\:mb-36{margin-bottom:9rem}.md\:mb-5{margin-bottom:1.25rem}.md\:mr-2{margin-right:.5rem}.md\:mt-6{margin-top:1.5rem}.md\:h-12{height:3rem}.md\:h-auto{height:auto}.md\:min-h-0{min-height:0}.md\:min-h-\[440px\]{min-height:440px}.md\:min-h-\[460px\]{min-height:460px}.md\:w-\[46rem\]{width:46rem}.md\:w-auto{width:auto}.md\:max-w-7xl{max-width:80rem}.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\:flex-row{flex-direction:row}.md\:flex-nowrap{flex-wrap:nowrap}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-10{gap:2.5rem}.md\:gap-16{gap:4rem}.md\:gap-3{gap:.75rem}.md\:gap-4{gap:1rem}.md\:gap-5{gap:1.25rem}.md\:space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.md\:overflow-visible{overflow:visible}.md\:p-12{padding:3rem}.md\:p-16{padding:4rem}.md\:p-9{padding:2.25rem}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:py-4{padding-top:1rem;padding-bottom:1rem}.md\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\:pb-16{padding-bottom:4rem}.md\:pb-20{padding-bottom:5rem}.md\:pb-32{padding-bottom:8rem}.md\:pr-0{padding-right:0}.md\:pt-10{padding-top:2.5rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:mb-36{margin-bottom:9rem}.lg\:mb-44{margin-bottom:11rem}.lg\:mr-3{margin-right:.75rem}.lg\:w-\[50rem\]{width:50rem}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:gap-20{gap:5rem}.lg\:p-14{padding:3.5rem}.lg\:p-20{padding:5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-left{text-align:left}}@media (prefers-color-scheme:dark){.dark\:bg-gray-950{--tw-bg-opacity:1;background-color:rgb(3 7 18/var(--tw-bg-opacity,1))}.dark\:text-gray-100{--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity,1))}}
/* source: static/css/library/20-site-foundation.css */
/* UMLAC CSS Library: site foundation and content patterns.
   Migrated from static/css/main.css to keep selectors stable. */

/* === Reset === */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
img { display: block; max-width: 100%; }
ul, ol { list-style: none; }

/* === Base === */
html {
  font-size: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: var(--font-body);
  font-size: var(--size-lg);
  line-height: 1.75;
  color: var(--color-text-body);
  background: var(--color-page);
  /* Canonical gap between global breadcrumbs and first page content. */
  --site-post-breadcrumb-space: 3.5rem;
}

.site-content-shell {
  padding-top: var(--site-post-breadcrumb-space);
}

/* === Typography === */
h1, h2, h3, h4 {
  font-family: var(--font-display);
  color: var(--color-text);
  line-height: 1.08;
}

h1 { color: var(--color-accent-dark); font-size: var(--size-3xl); margin-bottom: var(--space-6); }
h2 { font-size: var(--size-2xl); margin-top: var(--space-10); margin-bottom: var(--space-4); }
h3 { font-size: var(--size-xl);  margin-top: var(--space-8);  margin-bottom: var(--space-3); }

p { margin-bottom: var(--space-5); }
p:last-child { margin-bottom: 0; }

ul li::marker {
  color: var(--color-chart-red);
}

strong { font-weight: 700; color: var(--color-text); }
em { font-style: italic; }

a {
  color: var(--color-chart-red);
  text-decoration: none;
  transition: color var(--duration-fast);
}
a:hover { color: var(--color-accent-dark); }

.article__body a,
.prose a,
.series-list__intro a,
.governance-content a,
.data-page-body a {
  color: var(--color-chart-red);
}

.article__body a:hover,
.article__body a:focus-visible,
.prose a:hover,
.prose a:focus-visible,
.series-list__intro a:hover,
.series-list__intro a:focus-visible,
.governance-content a:hover,
.governance-content a:focus-visible,
.data-page-body a:hover,
.data-page-body a:focus-visible {
  color: var(--color-accent-dark);
}

hr {
  border: none;
  border-top: var(--border-hairline) solid var(--color-border);
  margin: var(--space-8) 0;
}

/* === Callout box === */
.article-callout,
blockquote {
  background: var(--color-bg-light);
  border-left: var(--border-accent) solid var(--color-accent);
  border-radius: var(--radius-sm);
  padding: var(--space-4) var(--space-5);
  margin: var(--space-6) 0;
}

.article-callout p,
blockquote p {
  font-family: var(--font-body);
  font-size: var(--size-md);
  color: var(--color-text);
  line-height: 1.6;
  margin-bottom: var(--space-2);
}
.article-callout p:last-child,
blockquote p:last-child { margin-bottom: 0; }

.article-callout strong,
blockquote strong {
  display: block;
  font-family: var(--font-sans);
  font-size: var(--size-md);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: var(--space-2);
}

/* === Site header === */
.site-header {
  background: rgba(255, 255, 255, 0.98);
  border-bottom: var(--border-hairline) solid var(--color-border);
  padding: var(--space-5) 0;
}

.site-header__inner {
  max-width: var(--max-default);
  margin: 0 auto;
  padding: 0 var(--space-6);
}

.site-header__brand {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-1);
  color: var(--color-accent);
  text-decoration: none;
}

.site-header__brand-main {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}

.site-header__mark {
  width: auto;
  height: 2.5rem;
}

.site-header__wordmark {
  font-family: var(--font-display);
  font-size: 2.75rem;
  font-weight: 400;
  line-height: 0.9;
  color: var(--color-accent);
}

.site-header__subtitle {
  display: flex;
  flex-direction: column;
  font-family: var(--font-sans);
  font-size: var(--size-sm);
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.01em;
  color: var(--color-text-muted);
}

.site-header__brand:hover .site-header__wordmark {
  color: var(--color-accent);
}

/* === Site footer === */
.site-footer {
  border-top: var(--border-hairline) solid var(--color-border);
  padding: var(--space-8) 0;
  margin-top: var(--space-16);
}

.site-footer__inner {
  max-width: var(--max-default);
  margin: 0 auto;
  padding: 0 var(--space-6);
  font-family: var(--font-sans);
  font-size: var(--size-sm);
  color: var(--color-text-muted);
}

/* === Article === */
.article {
  padding: var(--space-12) 0 var(--space-16);
}

.article-progress {
  position: sticky;
  top: var(--header-height, 0px);
  z-index: 20;
  height: 6px;
  margin: calc(var(--space-12) * -1) 0 var(--space-12);
  background: transparent;
}

.article-progress__bar {
  width: 0%;
  height: 100%;
  background: var(--color-chart-red);
  transform-origin: left center;
}

@media (prefers-reduced-motion: reduce) {
  .article-progress__bar {
    transition: none;
  }
}

.article__inner {
  max-width: 56rem;
  margin: 0 auto;
  padding: var(--site-post-breadcrumb-space) 1rem var(--space-16);
}

@media (min-width: 640px) {
  .article__inner {
    padding-right: var(--space-6);
    padding-left: var(--space-6);
  }
}

@media (min-width: 768px) {
  .article__inner {
    padding-top: var(--site-post-breadcrumb-space);
    padding-bottom: var(--space-20);
  }
}

@media (min-width: 1024px) {
  .article__inner {
    padding-right: var(--space-8);
    padding-left: var(--space-8);
  }
}

.article__header {
  margin-bottom: var(--space-10);
}

.article__eyebrow {
  font-family: var(--font-sans);
  font-size: var(--size-sm);
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: var(--color-accent);
  margin-bottom: var(--space-3);
}

.article__title {
  font-family: var(--font-display);
  font-size: clamp(3rem, 5vw, 3.75rem);
  font-weight: 400;
  line-height: .95;
  color: var(--color-accent-dark);
  margin-bottom: 0;
}

.article__title--spaced {
  margin-bottom: var(--space-6);
}

.article__body {
  color: var(--color-text-body);
  font-family: var(--font-display);
  /* Match the data-page body rhythm used by /es/posgrados/ayurveda-medicos/. */
  font-size: 1.25rem;
  line-height: 1.625;
}

.article__body p {
  color: var(--color-text-body);
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1.625;
  margin: 0 0 1.35rem;
}

.article__body ul,
.article__body ol {
  margin: 1rem 0 1.8rem;
  padding-left: 1.7rem;
}

.article__body li {
  font-size: 1.25rem;
  line-height: 1.625;
  margin-bottom: .7rem;
  padding-left: .25rem;
}

.article__body p:last-child,
.article__body li:last-child {
  margin-bottom: 0;
}

.article-stream__item + .article-stream__item {
  border-top: var(--border-hairline) solid var(--color-border-muted);
  margin-top: var(--space-12);
  padding-top: var(--space-10);
}

.article-stream__status {
  color: var(--color-text-body);
  font-family: var(--font-sans);
  font-size: var(--size-sm);
  letter-spacing: .08em;
  margin: var(--space-8) 0 0;
  text-transform: uppercase;
}

.article-stream__sentinel {
  height: 1px;
  width: 100%;
}

/* === Series list === */
.series-list {
  padding: var(--space-12) 0 var(--space-16);
}

.series-list__inner {
  max-width: var(--max-narrow);
  margin: 0 auto;
  padding: 0 var(--space-6);
}

.series-list__hero-media {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  margin-bottom: var(--space-12);
  border-radius: 3.75rem;
  background: var(--color-bg-light);
}

.series-list__hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.series-list__hero-media--homepage-billboard {
  isolation: isolate;
}

.series-list__hero-media--homepage-billboard.hero-media-overlay::before {
  background: rgba(254, 224, 138, .04);
}

.series-list__hero-media--homepage-billboard.hero-media-overlay::after {
  opacity: .14;
}

.series-list__hero-shade {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background: none;
}

.series-list__title {
  font-family: var(--font-display);
  font-size: clamp(3rem, 5vw, 3.75rem);
  font-weight: 400;
  line-height: .95;
  color: var(--color-accent-dark);
  margin-bottom: var(--space-8);
}

.series-list__intro {
  margin-bottom: var(--space-8);
  color: var(--color-text-body);
}

.series-list__intro h2 {
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.1;
  margin: var(--space-10) 0 var(--space-4);
  text-transform: uppercase;
}

.series-list__intro h2:first-child {
  margin-top: var(--space-10);
}

.series-list__intro strong {
  color: var(--color-accent);
  font-weight: 500;
}

.series-list__articles {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}

.series-list__item {
  border-bottom: var(--border-hairline) solid var(--color-border-muted);
  padding-bottom: var(--space-6);
}

.series-list__link {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  font-family: var(--font-display);
  font-size: 1.3rem;
  line-height: 1.75;
  color: var(--color-chart-red);
}
.series-list__link:hover { color: var(--color-accent-dark); }

.series-list__arrow {
  color: var(--color-chart-red);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 1.35em;
  transition: color var(--duration-fast), transform var(--duration-fast);
}

.series-list__arrow svg {
  display: block;
  height: 1em;
  width: 1em;
}

.series-list__link:hover .series-list__arrow {
  color: var(--color-chart-red-dark);
  transform: translateX(.18rem);
}

.series-list__item p {
  color: var(--color-text-body);
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1.55;
  margin-top: var(--space-2);
  margin-bottom: 0;
}

.series-list__articles--hub {
  gap: var(--space-4);
  list-style: none;
  padding-left: 0;
}

.series-list__item--hub {
  border: 0;
  padding-bottom: 0;
}

.series-list__hub-card {
  align-items: stretch;
  background: transparent;
  color: var(--color-text);
  display: grid;
  gap: var(--space-6);
  grid-template-columns: minmax(10rem, .85fr) minmax(0, 1.65fr);
  min-height: 7.5rem;
  padding: var(--space-5) var(--space-6);
  transition: background-color var(--duration-fast), color var(--duration-fast), transform var(--duration-fast);
}

.series-list__hub-card:hover,
.series-list__hub-card:focus-visible {
  background: var(--color-bg-light);
  color: var(--color-accent-dark);
  outline: none;
  transform: translateY(-1px);
}

.series-list__hub-title {
  align-self: center;
  color: var(--color-accent-dark);
  font-family: var(--font-sans);
  font-size: clamp(1.35rem, 2.6vw, 2rem);
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1;
  text-transform: uppercase;
}

.series-list__hub-copy {
  align-items: center;
  display: grid;
  gap: var(--space-4);
  grid-template-columns: minmax(0, 1fr) auto;
  padding-left: var(--space-6);
}

.series-list__hub-summary {
  color: var(--color-text-body);
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1.45;
}

.series-list__hub-card:hover .series-list__hub-arrow,
.series-list__hub-card:focus-visible .series-list__hub-arrow {
  color: var(--color-chart-red-dark);
  transform: translateX(.18rem);
}

@media (max-width: 767px) {
  .series-list__inner {
    padding: 0 var(--space-4);
  }

  .series-list__title {
    font-size: 2.35rem;
    line-height: 1.05;
    overflow-wrap: anywhere;
  }

  .series-list__hub-card {
    gap: var(--space-4);
    grid-template-columns: 1fr;
    min-height: 0;
    padding: var(--space-5);
  }

  .series-list__hub-copy {
    padding-left: 0;
  }
}

.series-list__articles--semantic {
  list-style: none;
  margin-bottom: var(--space-8);
  padding-left: 0;
}

.series-list__item--semantic .series-list__link {
  align-items: flex-start;
  width: 100%;
}

.series-list__step {
  color: var(--color-accent);
  flex: 0 0 auto;
  font-family: var(--font-sans);
  font-size: clamp(1.25rem, 2.4vw, 1.65rem);
  font-weight: 700;
  line-height: 1.1;
  min-width: 3.1rem;
  padding-top: .08rem;
}

.series-list__role {
  color: var(--color-accent);
  display: block;
  font-family: var(--font-sans);
  font-size: var(--size-xs);
  font-weight: 500;
  letter-spacing: .08em;
  line-height: 1.2;
  margin-bottom: .2rem;
  text-transform: uppercase;
}

.series-list__semantic-title {
  align-items: center;
  display: inline-flex;
  gap: .45rem;
}

.article-semantic-kicker {
  align-items: center;
  color: var(--color-chart-red);
  display: flex;
  flex-wrap: wrap;
  font-family: var(--font-sans);
  font-size: var(--size-sm);
  font-weight: 700;
  gap: .45rem;
  letter-spacing: .08em;
  margin-bottom: var(--space-3);
  text-transform: uppercase;
}

.article-semantic-path {
  margin-top: var(--space-12);
}

.article-path-nav {
  border-top: var(--border-hairline) solid var(--color-border-muted);
  display: grid;
  gap: var(--space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: var(--space-6);
}

.article-path-nav__link {
  color: var(--color-text);
  display: flex;
  flex-direction: column;
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1.25;
}

.article-path-nav__link--next {
  text-align: right;
}

.article-path-nav__link:hover {
  color: var(--color-accent);
}

.article-path-nav__meta,
.article-bridge-card__eyebrow {
  color: var(--color-chart-red);
  font-family: var(--font-sans);
  font-size: var(--size-xs);
  font-style: normal;
  font-weight: 700;
  letter-spacing: .08em;
  margin-bottom: .35rem;
  text-transform: uppercase;
}

.article-bridge-card {
  background: var(--color-bg-light);
  border-left: 3px solid var(--color-accent);
  margin-top: var(--space-8);
  padding: var(--space-5);
}

.article-bridge-card a {
  color: var(--color-accent-dark);
  display: inline-block;
  font-family: var(--font-display);
  font-size: 1.35rem;
  line-height: 1.25;
}

.article-bridge-card a:hover {
  color: var(--color-accent);
}

@media (max-width: 640px) {
  .article-path-nav {
    grid-template-columns: 1fr;
  }

  .article-path-nav__link--next {
    text-align: left;
  }
}

/* === Home === */
.home {
  padding: var(--space-16) 0;
}

.home__inner {
  max-width: var(--max-default);
  margin: 0 auto;
  padding: 0 var(--space-6);
}

.home-reveal-parallax {
  position: relative;
  width: 100vw;
  min-height: 155vh;
  margin: clamp(5rem, 9vw, 8rem) calc(50% - 50vw) clamp(5rem, 9vw, 8rem);
  overflow: clip;
  isolation: isolate;
  background: var(--color-accent-dark);
}

.home-reveal-parallax__stage {
  position: sticky;
  top: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  isolation: isolate;
  background: var(--color-accent-dark);
}

.home-reveal-parallax__media {
  position: absolute;
  inset: -18vh 0;
  z-index: -2;
  background-image: var(--reveal-image);
  background-size: cover;
  background-position: center;
  clip-path: inset(0 0 100% 0);
  transform: translate3d(0, var(--parallax-offset, 0px), 0) scale(var(--reveal-scale, 1.22));
  transition: transform 420ms ease-out;
  will-change: clip-path, transform;
}

.home-reveal-parallax__media-effect,
.home-reveal-parallax__media-effect::before,
.home-reveal-parallax__media-effect::after {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.home-reveal-parallax__media-effect {
  z-index: -1;
}

.home-reveal-parallax__media-effect::before,
.home-reveal-parallax__media-effect::after {
  content: "";
}

.home-reveal-parallax__media-effect::before {
  background: rgba(254, 224, 138, .09);
}

.home-reveal-parallax__media-effect::after {
  opacity: .32;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.78'/%3E%3C/svg%3E");
}

.home-reveal-parallax__stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    linear-gradient(to bottom, var(--color-accent-dark) 0%, transparent 18%),
    linear-gradient(to top, var(--color-accent-dark) 0%, transparent 18%);
}

.home-reveal-parallax__stage::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(16, 40, 44, .86) 0%, rgba(16, 40, 44, .58) 46%, rgba(16, 40, 44, .18) 100%),
    linear-gradient(0deg, rgba(16, 40, 44, .22), rgba(16, 40, 44, .22));
}

.home-reveal-parallax__content {
  position: relative;
  z-index: 1;
  display: flex;
  min-height: 116vh;
  max-width: var(--max-default);
  margin: -100vh auto 0;
  padding: calc(clamp(7rem, 13vw, 11rem) + var(--header-height, 0px)) var(--space-6) clamp(8rem, 18vw, 14rem);
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
}

.home-reveal-parallax__eyebrow {
  margin-bottom: var(--space-4);
  color: rgba(255, 255, 255, .78);
  font-family: var(--font-sans);
  font-size: var(--size-sm);
  font-style: normal;
  font-weight: 600;
  letter-spacing: .11em;
  line-height: 1.3;
  text-transform: uppercase;
}

.home-reveal-parallax__title {
  max-width: 12ch;
  margin: 0 0 var(--space-6);
  color: #fff;
  font-size: clamp(3.25rem, 8vw, 6.75rem);
  line-height: .92;
}

.home-reveal-parallax__body {
  max-width: 39rem;
  color: rgba(255, 255, 255, .86);
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2.2vw, 1.75rem);
  line-height: 1.45;
}

.home-reveal-parallax__pro-line {
  max-width: 39rem;
  margin: var(--space-5) 0 0;
  color: rgba(255, 255, 255, .86);
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 2.2vw, 1.75rem);
  line-height: 1.45;
}

.home-reveal-parallax__pro-line a {
  display: inline-block;
  padding: 0 .18em .04em;
  background: transparent;
  color: inherit;
  border-radius: var(--radius-sm);
  text-decoration-line: underline;
  text-decoration-color: var(--color-chart-red);
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.14em;
  transition: background-color var(--duration-fast) ease, color var(--duration-fast) ease, text-decoration-color var(--duration-fast) ease, transform var(--duration-fast) ease;
}

.home-reveal-parallax__pro-line a:hover,
.home-reveal-parallax__pro-line a:focus-visible {
  background: var(--color-chart-red);
  color: #fff;
  text-decoration-color: transparent;
  transform: translateY(-1px);
}

@media (max-width: 767px) {
  .home-reveal-parallax {
    min-height: 145svh;
  }

  .home-reveal-parallax__stage {
    height: 100svh;
  }

  .home-reveal-parallax__media {
    background-position: 40% center;
  }

  .home-reveal-parallax__content {
    min-height: 110svh;
    margin-top: -100svh;
    padding-top: calc(5rem + var(--header-height, 0px));
    padding-bottom: 8rem;
  }

  .home-reveal-parallax__stage::after {
    background: linear-gradient(0deg, rgba(16, 40, 44, .88) 0%, rgba(16, 40, 44, .62) 56%, rgba(16, 40, 44, .24) 100%);
  }

  .home-reveal-parallax__title {
    max-width: 10ch;
    font-size: 3.35rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-reveal-parallax {
    --parallax-offset: 0px;
    --reveal-scale: 1;
  }

  .home-reveal-parallax__media {
    clip-path: none;
  }

  .home-reveal-parallax__media {
    transform: none;
    transition: none;
    will-change: auto;
  }
}


/* === Article eyebrow link === */
.article__eyebrow-link {
  color: var(--color-accent);
  font-family: var(--font-sans);
  font-size: var(--size-sm);
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
}
.article__eyebrow-link:hover { color: var(--color-accent-dark); }

/* === Responsive === */
@media (max-width: 768px) {
  body { font-size: var(--size-base); }
  h1 { font-size: var(--size-2xl); }
}

@media (min-width: 768px) {
  .article__body,
  .article__body p,
  .article__body li {
    font-size: 1.5rem;
  }

  .site-header__brand {
    flex-direction: row;
    align-items: center;
    gap: var(--space-3);
  }

  .site-header__mark {
    height: 3.5rem;
  }

  .site-header__wordmark {
    font-size: 3.75rem;
  }

  .site-header__subtitle {
    font-size: var(--size-base);
    line-height: 1.1;
    letter-spacing: 0.02em;
  }
}
/* source: static/css/library/30-template-components.css */
/* UMLAC CSS Library: template components and Tailwind bridge rules.
   Migrated from layouts/_default/baseof.html so styles are loaded through /css/main.css. */

.material-symbols-outlined { display:inline-block; font-family:system-ui,sans-serif; font-size:20px; font-weight:600; line-height:1; }
.site-breadcrumb-list { font-family:var(--font-sans); font-size:.875rem; line-height:1.25; letter-spacing:.08em; text-transform:uppercase; color:var(--color-text-body); }
.site-breadcrumb-link { color:var(--color-accent); text-decoration:none; transition:color var(--duration-fast) ease; }
.site-breadcrumb-link:hover { color:var(--color-accent); }
.umlac-hero-carousel { display:flex; flex-direction:column; gap:1rem; }
.umlac-hero-carousel__tabs { display:flex; flex-wrap:wrap; gap:.45rem; margin-bottom:.15rem; }
.umlac-hero-carousel__tab { display:inline-flex; align-items:center; min-height:2.85rem; padding:.65rem .9rem; border:1px solid var(--color-border-subtle); border-radius:var(--radius-sm); background:transparent; color:var(--color-text-body); font-family:var(--font-sans); font-size:.875rem; font-weight:500; letter-spacing:.07em; line-height:1.15; text-transform:uppercase; cursor:pointer; transition:background-color var(--duration-fast) ease,border-color var(--duration-fast) ease,color var(--duration-fast) ease; }
.umlac-hero-carousel__tab.is-active { background:var(--color-accent); border-color:var(--color-accent); color:#fff; }
.umlac-hero-carousel__tab:hover:not(.is-active) { border-color:var(--color-accent); color:var(--color-accent); }
.umlac-hero-carousel__tab:focus-visible { outline:2px solid var(--color-chart-red); outline-offset:3px; }
.umlac-hero-carousel__viewport { position:relative; min-height:9rem; }
.umlac-hero-carousel__slide { margin:0; opacity:0; transform:translateY(4px); transition:opacity 260ms cubic-bezier(var(--token-motion-easing-standard)), transform 260ms cubic-bezier(var(--token-motion-easing-standard)); }
.umlac-hero-carousel__slide:not(.is-active) { position:absolute; inset:0; pointer-events:none; }
.umlac-hero-carousel__slide.is-active { opacity:1; transform:translateY(0); }
@media (min-width:768px){ .umlac-hero-carousel__viewport{ min-height:7rem; } }
@media (min-width:1024px){ .umlac-hero-carousel__viewport{ min-height:5.5rem; } }
.motion-reveal { --motion-delay:0ms; }
.motion-ready .motion-reveal { opacity:0; transform:translateY(10px); transition:opacity 420ms cubic-bezier(var(--token-motion-easing-standard)) var(--motion-delay), transform 420ms cubic-bezier(var(--token-motion-easing-standard)) var(--motion-delay); will-change:opacity,transform; }
.motion-ready .motion-reveal.is-visible { opacity:1; transform:translateY(0); }
.motion-ready .motion-image-settle { opacity:.92; transform:scale(1.025); transition:opacity 650ms cubic-bezier(var(--token-motion-easing-standard)) var(--motion-delay), transform 650ms cubic-bezier(var(--token-motion-easing-standard)) var(--motion-delay); will-change:opacity,transform; }
.motion-ready .motion-image-settle.is-visible { opacity:1; transform:scale(1); }
.motion-hover-lift { transition:border-color var(--duration-fast) ease, transform var(--duration-fast) ease, box-shadow var(--duration-fast) ease; }
.motion-hover-lift:hover,
.motion-hover-lift:focus-visible { transform:translateY(-2px); box-shadow:0 10px 22px rgba(16,40,44,.08); }
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
  .motion-reveal,
  .motion-image-settle {
    opacity:1 !important;
    transform:none !important;
    will-change:auto !important;
  }
  .umlac-hero-carousel__slide {
    transform:none !important;
  }
}
html { scroll-padding-top: calc(var(--header-height, 0px) + var(--anchor-offset, 24px)); }
[id] { scroll-margin-top: calc(var(--header-height, 0px) + var(--anchor-offset, 24px)); }
.text-black,.text-gray-700,.text-gray-800,.text-gray-900 { color: var(--color-text-body); }
.hover\:text-black:hover,.hover\:text-gray-700:hover,.hover\:text-gray-900:hover { color: var(--color-text-body); }
h1,
h1.text-gray-900 { color:var(--color-accent-dark); }
.border-black,.hover\:border-black:hover { border-color:var(--color-text); }
.link-umlac { color:var(--color-accent-dark); text-decoration:none; transition:color var(--duration-fast) ease; }
.link-umlac:hover { color:var(--color-text); }
.promo-icon-box { background:var(--color-chart-red); }
.promo-icon-box-muted { background:var(--color-accent); }
.promo-icon-box img { filter: brightness(0) invert(1); }
.promo-strip { background:var(--color-accent); }
.umlac-chrome-container { width:100%; max-width:96rem; margin-inline:auto; padding-inline:1rem; }
@media (min-width:640px){ .umlac-chrome-container { padding-inline:1.5rem; } }
@media (min-width:1024px){ .umlac-chrome-container { padding-inline:2rem; } }
.site-header-nav { position:relative; background:var(--color-accent); color:#fff; }
.site-header-main { background:var(--color-accent); }
.site-header-layout { display:flex; align-items:center; justify-content:space-between; gap:clamp(1rem, 2vw, 2rem); }
.brand-wordmark { color:#fff; line-height:.9; }
.brand-wordmark:hover, .brand-wordmark:focus-visible { color:#fff; }
.brand-isotipo { filter:brightness(0) invert(1); }
.brand-subtitle-mobile { font-family:var(--font-sans); font-weight:500; font-size:0.95rem; line-height:1; letter-spacing:.01em; color:#fff; display:flex; flex-direction:column; white-space:normal; }
.brand-subtitle-desktop { font-family:var(--font-sans); font-weight:500; font-size:1rem; line-height:1.1; letter-spacing:.02em; color:#fff; display:none; }
@media (min-width:768px){ .brand-subtitle-mobile{display:none;} .brand-subtitle-desktop{display:flex; flex-direction:column;} }
.site-header-actions { color:#fff; }
.site-header-icon-button { color:#fff; }
.site-header-icon-button:hover,
.site-header-icon-button:focus-visible { color:var(--color-chart-red); outline:none; }
.language-switcher { align-items:center; gap:.35rem; color:var(--color-accent); font-family:var(--font-sans); font-size:.875rem; font-weight:500; line-height:1; letter-spacing:.1em; text-transform:uppercase; }
.language-switcher__link { display:inline-flex; align-items:center; min-height:1.45rem; padding:.15rem .25rem; color:var(--color-accent); text-decoration:none; transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease; }
.language-switcher__link:hover,
.language-switcher__link:focus-visible { color:var(--color-text); outline:none; }
.language-switcher__current { background:var(--color-chart-red); color:#fff; font-weight:600; }
.language-switcher__separator { color:var(--color-bg-dark); font-weight:400; }
.site-header-main .language-switcher,
.site-header-main .language-switcher__link { color:#fff; }
.site-header-main .language-switcher__link:hover,
.site-header-main .language-switcher__link:focus-visible { color:var(--color-chart-red); }
.site-header-main .language-switcher__current { background:var(--color-chart-red); color:#fff; }
.site-header-main .language-switcher__separator { color:rgba(255,255,255,.72); }
.slash-sep::after { content:"/"; margin-left:.5rem; color:var(--color-accent); }
.slash-sep:last-child::after { content:""; margin:0; }
.nav-menu-toggle { display:inline-flex; align-items:center; }
.primary-nav-row { position:static; flex:1 1 auto; min-width:0; background:var(--color-accent); }
.primary-nav-row-responsive { display:none; }
.primary-nav-inner { min-height:38px; display:flex; align-items:center; justify-content:center; gap:.35rem; }
.primary-nav-item { height:100%; display:flex; align-items:center; }
.primary-nav-trigger,
.primary-nav-link { position:relative; min-height:34px; display:inline-flex; align-items:center; gap:.4rem; padding:.38rem .75rem; border:0; border-radius:var(--radius-sm); background:transparent; color:#fff; font-family:var(--font-sans); font-size:1.05rem; font-weight:400; line-height:1; letter-spacing:.03em; text-transform:uppercase; text-decoration:none; cursor:pointer; transition:background-color var(--duration-fast) ease,color var(--duration-fast) ease; }
.primary-nav-cta { min-height:34px; display:inline-flex; align-items:center; justify-content:center; margin-left:.35rem; padding:.42rem .85rem .38rem; border:1px solid var(--color-chart-red); border-radius:var(--radius-sm); background:var(--color-chart-red); color:#fff; font-family:var(--font-sans); font-size:1.05rem; font-weight:600; line-height:1; letter-spacing:.06em; text-transform:uppercase; text-decoration:none; transition:background-color var(--duration-fast) ease,border-color var(--duration-fast) ease,color var(--duration-fast) ease; }
.primary-nav-cta:hover,
.primary-nav-cta:focus-visible { background:var(--color-chart-red-dark); border-color:var(--color-chart-red-dark); color:#fff; outline:none; }
.primary-nav-trigger:hover,
.primary-nav-trigger:focus-visible,
.primary-nav-link:hover,
.primary-nav-link:focus-visible,
.primary-nav-item.is-open .primary-nav-trigger { background:var(--color-chart-red); color:#fff; outline:none; }
.primary-nav-item.is-open .primary-nav-trigger::after { content:""; position:absolute; left:.75rem; right:1.45rem; bottom:.42rem; height:1px; background:#fff; }
.primary-nav-caret { width:0; height:0; border-left:4px solid transparent; border-right:4px solid transparent; border-top:5px solid currentColor; margin-top:2px; }
.primary-nav-mega { position:absolute; left:0; right:0; top:100%; min-height:80px; background:var(--color-accent); box-shadow:0 10px 18px rgba(16,40,44,.16); opacity:0; visibility:hidden; transform:translateY(-4px); pointer-events:none; transition:opacity .24s ease, transform .24s ease, visibility 0s linear 0s; }
.primary-nav-item.is-open .primary-nav-mega { opacity:1; visibility:visible; transform:translateY(0); pointer-events:auto; transition-delay:0s; }
.primary-nav-mega-inner { min-height:80px; display:flex; flex-wrap:wrap; align-items:center; align-content:center; justify-content:flex-start; gap:.8rem 1.5rem; padding-top:1rem; padding-bottom:1rem; }
.primary-nav-mega a { color:#fff; font-family:var(--font-sans); font-size:1.2rem; font-weight:500; line-height:1.2; max-width:12rem; overflow-wrap:anywhere; text-align:left; text-decoration:none; }
.primary-nav-mega a:hover,
.primary-nav-mega a:focus-visible { color:var(--color-chart-red); outline:none; }
.menu-panel { border:1px solid var(--color-bg-dark); background:var(--color-bg-light); }
.menu-title { font-family:var(--font-display); font-style:italic; }
.menu-link { font-family:var(--font-display); font-size:1.85rem; line-height:1.08; font-weight:700; color:var(--color-text-muted); }
@media (min-width:768px){ .menu-link{ font-size:2.15rem; } }
.mobile-menu-child-link { display:block; font-family:var(--font-sans); font-size:1.2rem; line-height:1.2; color:var(--color-text-muted); overflow-wrap:anywhere; text-decoration:none; text-transform:uppercase; letter-spacing:.03em; }
@media (min-width:768px){ .mobile-menu-child-link{ font-size:1.35rem; } }
.utility-link { font-family:var(--font-display); color:var(--color-text-muted); }
.social-pill { width:1.8rem; height:1.8rem; border:1px solid var(--color-text-muted); border-radius:var(--radius-pill); display:inline-flex; align-items:center; justify-content:center; }
body.menu-open { overflow:hidden; touch-action:none; }
@media (max-width:767px){
  .menu-panel{ border-left:none; border-right:none; border-bottom:none; }
  #siteMenuPanel { -webkit-overflow-scrolling:touch; overscroll-behavior:contain; }
}
@media (min-width:768px) and (max-width:819px){
  #siteMenuPanel { left:0 !important; right:0 !important; width:auto !important; height:100dvh !important; overflow-y:auto !important; }
  #siteMenuPanel .menu-panel { min-height:100dvh !important; border-left:none; border-right:none; border-bottom:none; }
}
@media (min-width:1024px){
  .nav-menu-toggle { display:none; }
  .primary-nav-row-responsive { display:block; }
}
@media (min-width:1024px) and (max-width:1180px){
  .site-header-layout { gap:.85rem; }
  .primary-nav-inner { justify-content:flex-end; gap:.15rem; }
  .primary-nav-trigger,
  .primary-nav-link { font-size:.9rem; padding:.34rem .45rem; letter-spacing:.02em; }
  .primary-nav-cta { font-size:.9rem; margin-left:.15rem; padding:.38rem .5rem .34rem; letter-spacing:.04em; }
  .site-header-actions { gap:.55rem !important; }
  .language-switcher { font-size:.8rem; gap:.18rem; letter-spacing:.08em; }
}

.accordion-item { position: relative; }
.accordion-toggle { cursor: pointer; display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.accordion-toggle:hover .accordion-icon { transform: rotate(45deg); }
.accordion-icon { transition: transform var(--duration-base) ease; font-size:1.2em; line-height:1; }
.submenu { overflow:hidden; max-height:0; opacity:0; transform:translateY(-4px); transition:max-height var(--duration-panel) ease, opacity .24s ease, transform .24s ease; margin:0; padding-left:.75rem; list-style:none; }
.submenu.open { opacity:1; transform:translateY(0); }
.submenu-link { display:block; padding:.3rem 0; font-size:1.05rem; }
.accordion-item.active > .accordion-toggle .accordion-icon { transform: rotate(45deg); }
.cluster-toggle { display:inline-flex; align-items:center; gap:.3rem; padding:.4rem .8rem; background:var(--color-chart-red); border-radius:var(--radius-sm); color:#fff; font-family:var(--font-sans); text-transform:uppercase; letter-spacing:.12em; font-size:.92rem; line-height:1; }
.cluster-arrow { font-size:1rem !important; transition: transform var(--duration-fast) ease; }
.cluster-toggle[aria-expanded="true"] .cluster-arrow { transform: rotate(180deg); }
.cluster-item { display:inline-flex; align-items:center; gap:.55rem; padding:.55rem .75rem; background:#fff; color:var(--color-text); text-decoration:none; border-radius:var(--radius-sm); font-family:var(--font-sans); letter-spacing:.01em; }
.cluster-item.is-active { background:var(--color-text); color:#fff; }
.cluster-item.is-disabled { opacity:.45; pointer-events:none; }
.cluster-num { font-weight:700; font-size:.8rem; min-width:1.25rem; text-align:center; border:1px solid currentColor; border-radius:var(--radius-pill); line-height:1.15rem; }
.cluster-label { font-size:.95rem; line-height:1; text-transform:uppercase; white-space:nowrap; }
.cluster-panel { overflow:hidden; max-height:0; opacity:0; transform: translateY(-4px); pointer-events:none; transition:max-height var(--duration-panel) ease, opacity .24s ease, transform .24s ease; }
.cluster-panel.is-open { opacity:1; transform: translateY(0); pointer-events:auto; }

.toc-link { display:block; color:var(--color-text); text-decoration:none; padding:.3rem .5rem; border-left:3px solid transparent; border-radius:var(--radius-sm); transition:color var(--duration-fast) ease,border-color var(--duration-fast) ease,background-color var(--duration-fast) ease; }
.toc-link:hover { color:var(--color-chart-red); background-color:var(--color-bg-light); }
.toc-link.is-active { color:var(--color-chart-red); border-left-color:var(--color-chart-red); background-color:var(--color-bg-light); font-weight:600; }
@media (min-width: 768px) { .sidebar-sticky { position: sticky; top: var(--header-height, 0px); } }
@media (min-width: 1024px) { .sidebar-align-lead { margin-top: var(--sidebar-start-offset, 0px); } }
.prose p { font-size:1.3rem; line-height:1.75; }
.prose h3 { font-family:var(--font-sans); font-size:2rem; color:var(--color-accent-dark); text-transform:uppercase; margin-top:2.8rem; margin-bottom:.9rem; }
.prose h4 { font-family:var(--font-sans); font-size:1.55rem; color:var(--color-accent-dark); text-transform:uppercase; margin-top:2.2rem; margin-bottom:.7rem; }
.umlac-card-arrow { width:2.2rem; height:2.2rem; border-radius:var(--radius-pill); background:transparent; color:var(--color-chart-red); display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.umlac-card-arrow svg { display:block; width:2.2rem; height:2.2rem; }
.rounded-hero-xl {
  border-top-left-radius:300px;
  border-top-right-radius:3.75rem;
  border-bottom-right-radius:3.75rem;
  border-bottom-left-radius:3.75rem;
}
.hero-media-overlay { position:relative; isolation:isolate; }
.hero-media-overlay::before {
  content:"";
  position:absolute;
  inset:0;
  background:rgba(254, 224, 138, .09);
  z-index:1;
  pointer-events:none;
}
.hero-media-overlay::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  opacity:.32;
  mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.78'/%3E%3C/svg%3E");
}
.umlac-cta { display:inline-flex; align-items:center; justify-content:center; font-family:var(--font-sans); font-size:1.5rem; line-height:1; padding:1rem 1.5rem; border-radius:var(--radius-sm); text-decoration:none; transition:background var(--duration-fast) ease, border-color var(--duration-fast) ease, color var(--duration-fast) ease, transform var(--duration-fast) ease; }
.umlac-cta-primary { background:var(--color-chart-red); color:#fff; border:1px solid var(--color-chart-red); font-weight:500; }
.umlac-cta-primary:hover { background:var(--color-chart-red-dark); border-color:var(--color-chart-red-dark); color:#fff; }
.umlac-cta-secondary { background:transparent; color:var(--color-heading-dark); border:1px solid var(--color-border-subtle); font-weight:500; }
.umlac-cta-secondary:hover { border-color:var(--color-chart-red); color:var(--color-chart-red); }
.umlac-cta-muted { background:var(--color-chart-red); color:#fff; border:1px solid var(--color-chart-red); font-weight:500; }
.umlac-cta-muted:hover { background:var(--color-chart-red-dark); border-color:var(--color-chart-red-dark); color:#fff; }
.data-page-ctas { display:flex; flex-wrap:wrap; gap:clamp(1.2rem, 2.4vw, 1.8rem); align-items:stretch; }
.data-page-ctas--cluster .umlac-cta { box-sizing:border-box; flex:0 1 clamp(13.5rem, 24vw, 18rem); min-height:4.25rem; max-width:100%; white-space:normal; text-align:center; line-height:1.15; }
.umlac-form-status { min-height:1.35rem; margin:0; font-family:var(--font-sans); font-size:1rem; line-height:1.35; }
.umlac-form-status[data-tone="success"] { color:var(--color-bg-light); }
.umlac-form-status[data-tone="error"] { display:block; padding:.75rem .9rem; background:color-mix(in srgb, var(--color-chart-red) 14%, #fff); color:var(--color-chart-red-dark); border:1px solid color-mix(in srgb, var(--color-chart-red) 42%, #fff); font-weight:600; }
.umlac-newsletter-form .umlac-form-status[data-tone="success"] {
  display:block;
  padding:.85rem 1rem;
  background:color-mix(in srgb, var(--color-accent-soft) 24%, var(--color-bg-light));
  color:var(--color-accent-dark);
  border:1px solid var(--color-accent-soft);
  font-size:1.25rem;
  font-weight:600;
  line-height:1.3;
}
body.umlac-modal-open { overflow:hidden; }
.umlac-modal-backdrop { position:fixed; inset:0; z-index:70; background:rgba(16,40,44,.52); backdrop-filter:blur(3px); }
.umlac-inquiry-modal { position:fixed; inset:0; z-index:80; display:flex; align-items:center; justify-content:center; padding:.75rem; overflow-y:auto; }
.umlac-modal-backdrop[hidden],
.umlac-inquiry-modal[hidden] { display:none; }
.umlac-inquiry-modal__shell { width:min(100%, 39rem); max-height:min(88dvh, 46rem); overflow-y:auto; background:var(--color-accent); border:1px solid var(--color-accent); box-shadow:0 20px 54px rgba(16,40,44,.22); }
.umlac-inquiry-modal__header { position:sticky; top:0; z-index:1; display:flex; justify-content:space-between; gap:.85rem; align-items:flex-start; padding:1rem clamp(1rem, 3vw, 1.4rem); border-bottom:1px solid rgba(255,255,255,.28); background:var(--color-accent); }
.umlac-inquiry-modal__eyebrow { display:none; font-style: normal; }
.umlac-inquiry-modal h2 { margin:0; font-family:var(--font-display); font-size:clamp(1.55rem, 5vw, 2.05rem); line-height:1.05; color:#fff; }
.umlac-inquiry-modal[data-inquiry-state="success"] .umlac-inquiry-modal__header > div { display:none; }
.umlac-inquiry-modal[data-inquiry-state="success"] .umlac-inquiry-modal__header { justify-content:flex-end; }
.umlac-inquiry-modal__close { display:inline-flex; width:2.25rem; height:2.25rem; align-items:center; justify-content:center; flex:0 0 auto; border:1px solid var(--color-chart-red); border-radius:var(--radius-sm); background:var(--color-chart-red); color:#fff; cursor:pointer; }
.umlac-inquiry-modal__close:hover,
.umlac-inquiry-modal__close:focus-visible { border-color:var(--color-chart-red-dark); background:var(--color-chart-red-dark); color:#fff; outline:none; }
.umlac-inquiry-form { display:grid; gap:.8rem; padding:clamp(1rem, 3vw, 1.4rem); }
.umlac-inquiry-form__grid { display:grid; grid-template-columns:1fr; gap:.8rem; }
.umlac-inquiry-form label,
.umlac-inquiry-form fieldset { min-width:0; }
.umlac-inquiry-form label:not(.umlac-inquiry-form__consent):not(:has(input[type="radio"])) { position:relative; display:block; }
.umlac-inquiry-form label > span,
.umlac-inquiry-form legend { display:block; margin-bottom:.3rem; font-family:var(--font-sans); font-size:.8rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; color:var(--color-text-body); }
.umlac-inquiry-form .umlac-required-marker { color:var(--color-chart-red); font-size:2em; line-height:.5; vertical-align:-.18em; }
.umlac-inquiry-form label:not(.umlac-inquiry-form__consent):not(:has(input[type="radio"])) > span { position:absolute; top:.45rem; left:.72rem; z-index:1; margin:0; font-size:.64rem; line-height:1; letter-spacing:.08em; color:var(--color-text-muted); pointer-events:none; }
.umlac-inquiry-form input,
.umlac-inquiry-form select,
.umlac-inquiry-form textarea { width:100%; border:1px solid var(--color-border-subtle); border-radius:var(--radius-sm); background:#fff; color:var(--color-text-body); font-family:var(--font-sans); font-size:.95rem; line-height:1.3; }
.umlac-inquiry-form label:not(.umlac-inquiry-form__consent):not(:has(input[type="radio"])) > input,
.umlac-inquiry-form label:not(.umlac-inquiry-form__consent):not(:has(input[type="radio"])) > select,
.umlac-inquiry-form label:not(.umlac-inquiry-form__consent):not(:has(input[type="radio"])) > textarea { padding-top:1.35rem; padding-bottom:.45rem; }
.umlac-inquiry-form textarea { resize:vertical; }
.umlac-inquiry-form input:focus,
.umlac-inquiry-form select:focus,
.umlac-inquiry-form textarea:focus { border-color:var(--color-accent); outline:2px solid color-mix(in srgb, var(--color-accent) 24%, transparent); outline-offset:1px; box-shadow:none; }
.umlac-inquiry-form fieldset { position:relative; display:flex; flex-wrap:wrap; align-items:end; min-height:3.35rem; gap:.35rem .85rem; padding:1.35rem .8rem .45rem; border:1px solid var(--color-border-subtle); border-radius:var(--radius-sm); background:#fff; }
.umlac-inquiry-form fieldset legend { position:absolute; top:.45rem; left:.72rem; margin:0; font-size:.64rem; line-height:1; letter-spacing:.08em; color:var(--color-text-muted); }
.umlac-inquiry-form fieldset label { display:inline-flex; align-items:center; gap:.35rem; font-family:var(--font-sans); font-size:.85rem; line-height:1.1; color:var(--color-text-body); }
.umlac-inquiry-form fieldset input,
.umlac-inquiry-form__consent input { width:1rem; height:1rem; flex:0 0 auto; margin-top:.15rem; }
.umlac-inquiry-form__consent { display:flex; align-items:flex-start; gap:.65rem; padding-top:.1rem; }
.umlac-inquiry-form label.umlac-inquiry-form__consent > span { margin:0; font-size:.85rem; line-height:1.38; text-transform:none; letter-spacing:0; font-weight:400; color:#fff; }
.umlac-inquiry-form__actions { display:flex; flex-direction:column; gap:.65rem; align-items:flex-start; padding-top:.25rem; }
.umlac-inquiry-form__actions .umlac-cta { gap:.55rem; }
.umlac-inquiry-form__actions .umlac-cta .material-symbols-outlined { font-size:.9rem; line-height:1; transition:transform var(--duration-fast) ease; }
.umlac-inquiry-form__actions .umlac-cta:hover,
.umlac-inquiry-form__actions .umlac-cta:focus-visible { transform:translateY(-1px); }
.umlac-inquiry-form__actions .umlac-cta:hover .material-symbols-outlined,
.umlac-inquiry-form__actions .umlac-cta:focus-visible .material-symbols-outlined { transform:translateX(.18rem); }
.umlac-inquiry-form__actions .umlac-form-status[data-tone="success"] { color:var(--color-accent); }
.umlac-inquiry-form__actions .umlac-form-status[data-tone="error"] { width:100%; }
.umlac-inquiry-thank-you { display:grid; justify-items:start; gap:1rem; padding:clamp(1.25rem, 4vw, 2rem); color:#fff; }
.umlac-inquiry-thank-you[hidden] { display:none; }
.umlac-inquiry-thank-you__mark { display:flex; width:3rem; height:3rem; align-items:center; justify-content:center; border-radius:var(--radius-pill); background:var(--color-chart-red); color:#fff; }
.umlac-inquiry-thank-you__mark .material-symbols-outlined { font-size:1.75rem; line-height:1; }
.umlac-inquiry-thank-you h3 { margin:0; font-family:var(--font-display); font-size:2.35rem; line-height:1; color:#fff; }
.umlac-inquiry-thank-you p { margin:0; max-width:32rem; font-family:var(--font-display); font-size:1.35rem; line-height:1.42; color:#fff; }
.umlac-inquiry-thank-you__reference { padding:.7rem .85rem; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.28); font-family:var(--font-sans) !important; font-size:.95rem !important; line-height:1.35 !important; }
@media (min-width:720px) {
  .umlac-inquiry-form__grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .umlac-inquiry-form__grid--phone { grid-template-columns:minmax(0, 1.1fr) minmax(14rem, .9fr); }
}
.umlac-contact-form-section { padding:0 clamp(1rem, 4vw, 2rem) clamp(4rem, 8vw, 6rem); }
.umlac-contact-form-shell { width:min(100%, 56rem); margin:0 auto; background:#fff; border:0; border-radius:2px; box-shadow:0 18px 44px rgba(16,40,44,.1); }
.umlac-contact-form { display:grid; gap:1rem; padding:clamp(1rem, 3vw, 1.6rem); }
.umlac-contact-form[hidden],
.umlac-contact-thank-you[hidden] { display:none; }
.umlac-contact-form__grid { display:grid; grid-template-columns:1fr; gap:1rem; }
.umlac-contact-form label:not(.umlac-contact-form__consent) { position:relative; display:block; min-width:0; }
.umlac-contact-form label:not(.umlac-contact-form__consent) > span { position:absolute; top:.5rem; left:.72rem; z-index:1; margin:0; font-family:var(--font-sans); font-size:.64rem; font-weight:600; line-height:1; letter-spacing:.08em; text-transform:uppercase; color:var(--color-text-muted); pointer-events:none; }
.umlac-contact-form .umlac-required-marker { color:var(--color-chart-red); font-size:2em; line-height:.5; vertical-align:-.18em; }
.umlac-contact-form input,
.umlac-contact-form select,
.umlac-contact-form textarea { width:100%; border:2px solid var(--color-accent); border-radius:2px; background:#fff; color:var(--color-text-body); font-family:var(--font-sans); font-size:.98rem; line-height:1.35; }
.umlac-contact-form input,
.umlac-contact-form select { min-height:3.35rem; padding:1.35rem .72rem .45rem; }
.umlac-contact-form textarea { min-height:10rem; padding:1.45rem .72rem .65rem; resize:vertical; }
.umlac-contact-form input:focus,
.umlac-contact-form select:focus,
.umlac-contact-form textarea:focus { border-color:var(--color-chart-red); outline:2px solid color-mix(in srgb, var(--color-chart-red) 24%, transparent); outline-offset:1px; box-shadow:none; }
.umlac-contact-form__hint { margin:-.25rem 0 .1rem; padding:.75rem .85rem; background:color-mix(in srgb, var(--color-bg-light) 72%, #fff); border:1px solid var(--color-border-subtle); color:var(--color-text-body); font-family:var(--font-sans); font-size:.95rem; line-height:1.4; }
.umlac-contact-form__hint a { color:var(--color-chart-red); text-decoration:none; transition:color var(--duration-fast) ease; }
.umlac-contact-form__hint a:hover,
.umlac-contact-form__hint a:focus-visible { color:var(--color-accent-dark); outline:none; }
.umlac-contact-form__consent { display:flex; align-items:flex-start; gap:.65rem; color:var(--color-text-body); }
.umlac-contact-form__consent input { width:1rem; height:1rem; min-height:1rem; flex:0 0 auto; margin-top:.18rem; padding:0; }
.umlac-contact-form__consent span { font-family:var(--font-sans); font-size:.9rem; line-height:1.42; color:var(--color-text-body); }
.umlac-contact-form__actions { display:flex; flex-direction:column; gap:.65rem; align-items:flex-start; padding-top:.25rem; }
.umlac-contact-form__actions .umlac-cta { gap:.55rem; }
.umlac-contact-form__actions .umlac-cta .material-symbols-outlined { font-size:.9rem; line-height:1; transition:transform var(--duration-fast) ease; }
.umlac-contact-form__actions .umlac-cta:hover,
.umlac-contact-form__actions .umlac-cta:focus-visible { transform:translateY(-1px); }
.umlac-contact-form__actions .umlac-cta:hover .material-symbols-outlined,
.umlac-contact-form__actions .umlac-cta:focus-visible .material-symbols-outlined { transform:translateX(.18rem); }
.umlac-contact-form__actions .umlac-form-status[data-tone="error"] { width:100%; }
.umlac-contact-thank-you { display:grid; justify-items:start; gap:1rem; padding:clamp(1.25rem, 4vw, 2rem); color:var(--color-text-body); }
.umlac-contact-thank-you__mark { display:flex; width:3rem; height:3rem; align-items:center; justify-content:center; border-radius:var(--radius-pill); background:var(--color-chart-red); color:#fff; }
.umlac-contact-thank-you__mark .material-symbols-outlined { font-size:1.75rem; line-height:1; }
.umlac-contact-thank-you h2 { margin:0; font-family:var(--font-display); font-size:2.35rem; line-height:1; color:var(--color-accent-dark); }
.umlac-contact-thank-you p { margin:0; max-width:34rem; font-family:var(--font-display); font-size:1.35rem; line-height:1.42; color:var(--color-text-body); }
.umlac-contact-thank-you__reference { padding:.7rem .85rem; background:color-mix(in srgb, var(--color-bg-light) 72%, #fff); border:1px solid var(--color-border-subtle); font-family:var(--font-sans) !important; font-size:.95rem !important; line-height:1.35 !important; }
@media (min-width:720px) {
  .umlac-contact-form__grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
.cta-panel {
  margin-block: 5rem;
  padding-block: 3.5rem;
}
.cta-panel--bordered {
  border-top: 1px solid var(--color-accent);
  border-bottom: 0;
}
.cta-panel--split {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}
.cta-panel__media {
  min-height: clamp(22rem, 34vw, 34rem);
  overflow: hidden;
  border-radius: 3.75rem;
  background: var(--color-bg-light);
}
.cta-panel__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}
.cta-panel__title {
  margin: 0 0 clamp(2.5rem, 4vw, 3rem);
  color: var(--color-chart-red);
  font-family: var(--font-sans);
  font-size: clamp(1.5rem, 2.2vw, 1.875rem);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: 0;
  text-transform: uppercase;
}
.cta-panel__body {
  max-width: 64rem;
  margin: 0 0 clamp(2rem, 3vw, 2.5rem);
  color: var(--color-text-body);
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 1.8vw, 1.55rem);
  line-height: 1.35;
}
.cta-panel__body strong {
  font-weight: 700;
}
.cta-panel--program-stack {
  margin-top: var(--space-16);
  border-top: 1px solid var(--color-accent);
}
.cta-panel--program-stack .cta-panel__media {
  aspect-ratio: 27 / 9;
  min-height: 0;
  margin-bottom: clamp(2.75rem, 5vw, 4rem);
  border-radius: 2rem;
}
.cta-panel--program-stack .cta-panel__media img {
  min-height: 0;
}
.cta-panel--program-stack .cta-panel__body {
  margin-bottom: 2rem;
}
.pro-program-cta-stack__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem .85rem;
  align-items: stretch;
}
.pro-program-cta-stack__actions .umlac-cta {
  flex: 1 1 18rem;
  min-width: min(100%, 18rem);
  min-height: 3.25rem;
  justify-content: center;
  text-align: center;
}
.pro-article-nav {
  margin: var(--space-16) 0 var(--space-12);
  padding: var(--space-6) 0;
  border-top: 1px solid var(--color-border-subtle);
  border-bottom: 1px solid var(--color-border-subtle);
}
.pro-article-nav__row {
  display: grid;
  grid-template-columns: 1fr;
  gap: .85rem;
  align-items: stretch;
}
.pro-article-nav__slot {
  min-width: 0;
}
.pro-article-nav__link,
.pro-article-nav__index {
  display: flex;
  min-height: 3.4rem;
  align-items: center;
  gap: .75rem;
  color: var(--color-text);
  font-family: var(--font-sans);
  text-decoration: none;
  transition: color var(--duration-fast) ease, transform var(--duration-fast) ease;
}
.pro-article-nav__link:hover,
.pro-article-nav__link:focus-visible,
.pro-article-nav__index:hover,
.pro-article-nav__index:focus-visible {
  color: var(--color-chart-red);
  transform: translateY(-1px);
}
.pro-article-nav__link--next {
  justify-content: flex-end;
  text-align: right;
}
.pro-article-nav__meta {
  display: block;
  color: var(--color-chart-red);
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .14em;
  line-height: 1.2;
  text-transform: uppercase;
}
.pro-article-nav__label {
  display: block;
  margin-top: .2rem;
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1.15;
}
.pro-article-nav__icon,
.pro-article-nav__index-icon {
  flex: 0 0 auto;
  color: currentColor;
  font-size: 1.55rem !important;
  line-height: 1;
}
.pro-article-nav__icon {
  transform: translateY(.18rem);
}
.pro-article-nav__index {
  justify-content: center;
  padding: .8rem 1rem;
  border: 1px solid var(--color-chart-red);
  border-radius: var(--radius-sm);
  color: var(--color-chart-red);
  font-size: .95rem;
  font-weight: 600;
  letter-spacing: .08em;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
}
.pro-article-nav__index:hover,
.pro-article-nav__index:focus-visible {
  background: color-mix(in srgb, var(--color-chart-red) 8%, #fff);
}
.pro-program-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
  gap: 1rem;
  margin: var(--space-10) 0 var(--space-12);
}
.pro-program-card {
  padding: clamp(1.25rem, 3vw, 1.75rem);
  border: 1px solid var(--color-border-subtle);
  border-radius: 8px;
  background: var(--color-paper);
}
.pro-program-card__title {
  margin: 0 0 1rem;
  color: var(--color-chart-red);
  font-family: var(--font-sans);
  font-size: clamp(1.2rem, 2vw, 1.45rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0;
  text-transform: uppercase;
}
.pro-program-card__linkline {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(1.25rem, 1.8vw, 1.45rem);
  line-height: 1.25;
}
.pro-program-card__linkline a {
  display: inline-flex;
  align-items: baseline;
  gap: .35rem;
  color: var(--color-link-default);
  text-decoration: none;
}
.pro-program-card__linkline a img {
  position: relative;
  top: .16em;
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
}
.pro-program-card__linkline a:hover,
.pro-program-card__linkline a:focus-visible {
  color: var(--color-link-hover);
}
.pro-dossier-rows {
  display: grid;
  gap: .9rem;
  margin: var(--space-12) 0;
}
.pro-dossier-row {
  display: grid;
  grid-template-columns: minmax(18rem, .38fr) minmax(0, 1fr);
  gap: clamp(1.5rem, 4vw, 3.25rem);
  align-items: center;
  padding: clamp(1.35rem, 3vw, 2rem);
  border: 1px solid var(--color-border-subtle);
  border-radius: 2px;
  color: var(--color-text-body);
  text-decoration: none;
  transition:
    background-color var(--duration-fast) ease,
    border-color var(--duration-fast) ease,
    transform var(--duration-fast) ease;
}
.pro-dossier-row:hover,
.pro-dossier-row:focus-visible {
  background: color-mix(in srgb, var(--color-bg-light) 58%, #fff);
  border-color: var(--color-accent-soft);
  color: var(--color-text-body);
  outline: none;
  transform: translateX(.18rem);
}
.pro-dossier-row:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-accent) 18%, transparent);
}
.pro-dossier-row__title {
  color: var(--color-chart-red);
  font-family: var(--font-sans);
  font-size: clamp(2.3rem, 4.2vw, 3.35rem);
  font-weight: 600;
  line-height: .95;
  letter-spacing: 0;
  text-transform: uppercase;
  white-space: nowrap;
}
.pro-dossier-row__summary {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1rem, 2.5vw, 1.5rem);
  color: var(--color-text-body);
  font-family: var(--font-display);
  font-size: clamp(1.15rem, 1.8vw, 1.35rem);
  line-height: 1.35;
}
.pro-dossier-row__summary img {
  position: relative;
  top: .08em;
  width: 1.1em;
  height: 1.1em;
  flex: 0 0 auto;
  transition: transform var(--duration-fast) ease;
}
.pro-dossier-row:hover .pro-dossier-row__summary img,
.pro-dossier-row:focus-visible .pro-dossier-row__summary img {
  transform: translateX(.25rem);
}
.pro-article-index {
  margin-top: clamp(2rem, 5vw, 3.5rem);
}
.pro-article-index__heading {
  margin: 0 0 1rem;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: clamp(1.55rem, 2.6vw, 2.05rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0;
}
.pro-article-index__rows {
  margin-top: 0;
}
.pro-article-index__row .pro-dossier-row__summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  color: var(--color-muted);
  font-size: 1rem;
  gap: .5rem 1rem;
  line-height: 1.45;
}
.pro-article-index__row .pro-dossier-row__title {
  color: var(--color-chart-red);
  font-size: clamp(1.15rem, 2vw, 1.45rem);
  line-height: 1.12;
  text-transform: none;
  white-space: normal;
}
.pro-article-index__ordinal {
  color: var(--color-accent);
  flex: 0 0 auto;
  font-family: var(--font-sans);
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .08em;
  line-height: 1.35;
  text-transform: uppercase;
  white-space: nowrap;
}
.pro-article-index__blurb {
  color: var(--color-text-body);
  min-width: 0;
}
.article__body h2 {
  margin: 2.6rem 0 1.15rem;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: clamp(1.55rem, 2.6vw, 2.05rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0;
}
.data-page-body p:has(> em:only-child),
.article__body p:has(> em:only-child) {
  margin: 2.1rem 0 .9rem;
}
.data-page-body p > em:only-child,
.article__body p > em:only-child {
  color: var(--color-accent);
  font-family: var(--font-sans);
  font-size: clamp(1.25rem, 2.1vw, 1.65rem);
  font-style: normal;
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: 0;
}
@media (min-width: 768px) {
  .cta-panel {
    margin-block: 6rem;
    padding-block: 4rem;
  }
  .pro-article-nav__row {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }
  .pro-article-nav__row--index-only {
    grid-template-columns: auto;
    justify-content: center;
  }
}
@media (min-width: 1024px) {
  .cta-panel {
    margin-block: 7rem;
  }
}
@media (max-width: 767px) {
  .pro-dossier-row {
    grid-template-columns: 1fr;
    gap: .85rem;
    transform: none;
  }
  .pro-dossier-row__title {
    white-space: normal;
  }
  .pro-dossier-row:hover,
  .pro-dossier-row:focus-visible {
    transform: none;
  }
  .pro-dossier-row__summary {
    align-items: flex-start;
  }
  .pro-article-index__row .pro-dossier-row__summary {
    grid-template-columns: 1fr auto;
  }
  .pro-article-index__ordinal {
    grid-column: 1 / -1;
  }
  .cta-panel--split {
    grid-template-columns: 1fr;
    gap: 2.25rem;
  }
  .cta-panel__media {
    min-height: 20rem;
    border-radius: 2.25rem;
  }
}

/* Data-driven page modules */
.data-page-body h3 { margin: 2.75rem 0 1rem; color: var(--color-text); font-family: var(--font-sans); font-size: clamp(1.45rem, 2.4vw, 2rem); font-weight: 600; line-height: 1.1; text-transform: uppercase; letter-spacing: 0.02em; }
.data-page-body h4 { margin: 2rem 0 .75rem; color: var(--color-accent-dark); font-family: var(--font-sans); font-size: clamp(1.2rem, 2vw, 1.5rem); font-weight: 600; line-height: 1.15; text-transform: uppercase; letter-spacing: .04em; }
.data-page-summary-media { aspect-ratio: 27 / 9; overflow: hidden; margin: 2rem 0 0; border-radius: 3.75rem; background: var(--color-bg-light); }
.data-page-summary-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.umlac-captioned-media { overflow: hidden; margin-bottom: var(--space-16); border-radius: 3.75rem; background: var(--color-bg-light); }
.umlac-captioned-media img { display: block; width: 100%; aspect-ratio: 27 / 9; object-fit: cover; background: var(--color-bg-light); }
.umlac-captioned-media figcaption { position: relative; z-index: 3; padding: 1rem 2rem 1.35rem; background: var(--color-bg-light); font-family: var(--font-sans); font-size: 1.0625rem; line-height: 1.55; color: var(--color-text-muted); }
.umlac-captioned-media figcaption::before { content: "⸺"; display: inline-block; margin-right: 0.5rem; color: var(--color-chart-red); font-weight: 600; }
.umlac-captioned-media-plain img { display: block; width: 100%; aspect-ratio: 27 / 9; object-fit: cover; border-radius: 3.75rem; }
.umlac-captioned-media-plain figcaption { padding: 1rem 2rem 0; font-family: var(--font-sans); font-size: 1.0625rem; line-height: 1.55; color: var(--color-text-muted); }
.umlac-captioned-media-plain figcaption::before { content: "⸺"; display: inline-block; margin-right: 0.5rem; color: var(--color-chart-red); font-weight: 600; }
.umlac-captioned-media-plain::before,
.umlac-captioned-media-plain::after { content: none; }
.umlac-captioned-media-plain { margin-bottom: var(--space-16); }
.data-page-intro-media { max-width: 48rem; }
.data-page-body a { display: inline-flex; align-items: center; gap: .45rem; }
.data-page-body a img { width: 1em; height: 1em; flex: 0 0 auto; }
.data-page-body a img[src="/docs/arrow-right.svg"] { filter: none; }
.data-page-body p { margin: 0 0 1.35rem; }
.data-page-body ul,
.data-page-body ol { margin: 0 0 1.5rem 1.35rem; padding-left: 1rem; }
.data-page-body ul { list-style: disc; }
.data-page-body ol { list-style: decimal; }
.data-page-body li { margin: 0 0 .7rem; padding-left: .25rem; }
.data-page-body table { width: 100%; margin: 2rem 0; border-collapse: collapse; font-family: var(--font-sans); font-size: 1.05rem; line-height: 1.35; }
.data-page-body th,
.data-page-body td { border-bottom: 1px solid var(--color-border-subtle); padding: .85rem .75rem; text-align: left; vertical-align: top; }
.data-page-body th { color: var(--color-text); font-weight: 600; text-transform: uppercase; letter-spacing: .04em; }
.legal-page-body { font-size: clamp(1.125rem, 1.6vw, 1.35rem); line-height: 1.65; }
.legal-page-body h2 { margin: 3rem 0 1rem; color: var(--color-text); font-family: var(--font-sans); font-size: clamp(1.5rem, 2.45vw, 2rem); font-weight: 650; line-height: 1.15; text-transform: uppercase; letter-spacing: .02em; }
.legal-page-body h2:first-child { margin-top: 0; }
.legal-page-body h3 { margin: 1.65rem 0 .55rem; color: var(--color-accent-dark); font-size: clamp(1.35rem, 2vw, 1.65rem); font-weight: 600; line-height: 1.2; text-transform: none; letter-spacing: 0; }
.legal-page-body p { margin-bottom: 1rem; }
.legal-page-body ul,
.legal-page-body ol { margin-bottom: 1.15rem; }
.legal-page-body li { margin-bottom: .45rem; }
.legal-page-body .legal-address { display: grid; gap: .75rem; margin: .65rem 0 0; color: var(--color-text); font-style: normal; }
.legal-address__identity,
.legal-address__location,
.legal-address__contacts { display: grid; gap: .15rem; }
.legal-address__identity span,
.legal-address__location span { display: block; }
.legal-address__contact-row { display: flex; flex-wrap: wrap; gap: .35rem .5rem; }
.legal-address__contact-row > span:first-child::after { content: ":"; }
.legal-address__actions { display: flex; flex-wrap: wrap; gap: .45rem 1.25rem; margin-top: .2rem; font-size: .78em; }
.umlac-confirmation-panel { display:grid; grid-template-columns:auto 1fr; gap:1.2rem; align-items:flex-start; padding:clamp(1.25rem, 4vw, 2rem); background:color-mix(in srgb, var(--color-accent-soft) 18%, var(--color-bg-light)); border:1px solid var(--color-accent-soft); }
.umlac-confirmation-panel__mark { display:flex; width:3rem; height:3rem; align-items:center; justify-content:center; background:var(--color-accent); color:#fff; border-radius:999px; }
.umlac-confirmation-panel__mark .material-symbols-outlined { font-size:1.75rem; line-height:1; }
.umlac-confirmation-panel h2 { margin:0 0 .75rem; color:var(--color-accent-dark); font-family:var(--font-display); font-size:2.35rem; line-height:1; }
.umlac-confirmation-panel p { margin:0 0 1.25rem; max-width:42rem; color:var(--color-text); font-family:var(--font-display); font-size:1.35rem; line-height:1.45; }
@media (max-width: 520px) { .umlac-confirmation-panel h2 { font-size:2rem; } .umlac-confirmation-panel p { font-size:1.2rem; } }
@media (max-width: 520px) { .umlac-confirmation-panel { grid-template-columns:1fr; } }

/* Shared green accordions used by program and faculty modules */
.data-page-accordion,
.docentes-master,
.faculty-accordion { background: var(--color-bg-light); }
.data-page-accordion { border-top: 1px solid var(--color-border-muted); border-bottom: 1px solid var(--color-border-muted); padding-inline: clamp(1rem, 2vw, 1.5rem); }
.data-page-accordion + .data-page-accordion { margin-top: .875rem; }
.data-page-accordion summary,
.docentes-master__summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; cursor: pointer; color: var(--color-text); font-family: var(--font-sans); font-weight: 600; line-height: 1.1; text-transform: uppercase; letter-spacing: .02em; list-style: none; }
.data-page-accordion summary { padding: 1.15rem 0; font-size: clamp(1.45rem, 2.4vw, 2rem); transition: color var(--duration-fast) ease; }
.data-page-accordion summary::-webkit-details-marker,
.docentes-master__summary::-webkit-details-marker { display: none; }
.data-page-accordion summary:hover,
.data-page-accordion summary:focus-visible,
.data-page-accordion[open] summary { color: var(--color-accent); }
.data-page-accordion__icon,
.docentes-master__icon { position: relative; width: 1.25rem; height: 1.25rem; flex: 0 0 auto; transition: transform .24s ease; }
.data-page-accordion__icon::before,
.data-page-accordion__icon::after,
.docentes-master__icon::before,
.docentes-master__icon::after { content: ""; position: absolute; top: 50%; left: 50%; width: 1.25rem; height: 2px; background: var(--color-chart-red); transform: translate(-50%, -50%); transition: transform .24s ease, opacity .24s ease; }
.data-page-accordion__icon::after,
.docentes-master__icon::after { transform: translate(-50%, -50%) rotate(90deg); }
.data-page-accordion[open] .data-page-accordion__icon,
.docentes-master[open] .docentes-master__icon { transform: rotate(180deg); }
.data-page-accordion[open] .data-page-accordion__icon::after,
.docentes-master[open] .docentes-master__icon::after { opacity: 0; transform: translate(-50%, -50%) rotate(90deg) scaleX(.2); }
.data-page-accordion__body,
.docentes-master__content,
.faculty-accordion__body { opacity: 0; transform: translateY(-4px); }
.data-page-accordion__body { padding: .25rem 0 1.75rem; }
.data-page-accordion[open] .data-page-accordion__body,
.docentes-master[open] .docentes-master__content,
.faculty-accordion[open] .faculty-accordion__body { opacity: 1; transform: translateY(0); transition: opacity .24s ease, transform .24s ease; }
.data-page-accordion__body ul,
.data-page-accordion__body ol { margin-bottom: 0; }
.docentes-master-shell { max-width: 56rem; margin: 0 auto; padding: 0 1rem 5rem; }
@media (min-width: 640px) { .docentes-master-shell { padding-left: 1.5rem; padding-right: 1.5rem; } }
.docentes-master-shell--embedded { max-width: none; padding: 0; margin: 2rem 0; }
.docentes-master { border-top: 1px solid var(--color-border-muted); border-bottom: 1px solid var(--color-border-muted); padding-inline: clamp(1rem, 2vw, 1.5rem); }
.docentes-master__summary { padding: 1.25rem 0; font-size: clamp(1.45rem, 2.6vw, 2.1rem); }
.docentes-master__content { padding: .25rem 0 1.5rem; }
.docentes-master__content h2 { margin: 0 0 .85rem; color: var(--color-text); font-family: var(--font-sans); font-size: clamp(1.35rem, 2.2vw, 1.9rem); font-weight: 600; line-height: 1.1; text-transform: uppercase; letter-spacing: .02em; }
.docentes-master__content h2:not(:first-child) { margin-top: 1.75rem; }
.faculty-accordion { border-top: 0; padding-inline: clamp(.65rem, 1.5vw, 1rem); }
.faculty-accordion:last-of-type { border-bottom: 0; }
.faculty-accordion summary { cursor: pointer; padding: .55rem 0; color: var(--color-heading-dark); font-family: var(--font-sans); font-size: clamp(1.1rem, 1.8vw, 1.35rem); font-weight: 600; line-height: 1.2; letter-spacing: .01em; list-style-position: outside; transition: color var(--duration-fast) ease; }
.faculty-accordion summary:hover,
.faculty-accordion summary:focus-visible,
.faculty-accordion[open] summary { color: var(--color-accent); }
.faculty-accordion summary::marker,
.faculty-accordion summary::-webkit-details-marker { color: var(--color-chart-red); }
.faculty-accordion__body { padding: .15rem 0 1.25rem; color: var(--color-text-body); font-family: var(--font-display); font-size: clamp(1.25rem, 2vw, 1.5rem); line-height: 1.65; }
.faculty-accordion__body p { color: var(--color-text-body); font-family: var(--font-display); font-size: clamp(1.25rem, 2vw, 1.5rem); line-height: 1.65; margin: 0 0 1.35rem; }
.faculty-accordion__body p:last-child { margin-bottom: 0; }
.faculty-accordion__body strong { color: var(--color-heading-dark); font-weight: 600; }
.faculty-director-link { color: inherit; font: inherit; letter-spacing: inherit; line-height: inherit; text-decoration: none; }
.faculty-director-link:hover { color: inherit; }

/* Institutional article shell */
.institutional-shell { max-width: 860px; margin: 0 auto; padding: 0 1.5rem 5rem; }
.institutional-hero { padding: var(--site-post-breadcrumb-space) 0 2rem; margin: 0; }
.institutional-hero-eyebrow { margin: 0 0 1rem; color: var(--color-accent); font-family: var(--font-sans); font-size: .875rem; font-style: normal; font-weight: 400; letter-spacing: .15em; text-transform: uppercase; }
.institutional-hero-date { margin: 0 0 .75rem; color: var(--color-text-body); font-family: var(--font-sans); font-size: .875rem; font-weight: 500; letter-spacing: .12em; line-height: 1.1; text-transform: uppercase; }
.institutional-hero-title { max-width: 720px; margin: 0; color: var(--color-text); font-size: clamp(2.35rem, 5vw, 4.4rem); font-weight: 400; }
.institutional-hero-summary { max-width: 720px; margin: 1.5rem 0 0; color: var(--color-text-body); font-family: var(--font-display); font-size: clamp(1.25rem, 2vw, 1.55rem); line-height: 1.45; }
.institutional-content { padding-bottom: 2rem; color: var(--color-text-body); font-family: var(--font-display); font-size: clamp(1.25rem, 2vw, 1.5rem); line-height: 1.65; }
.institutional-content h2 { margin-top: 2.5rem; padding-top: .25rem; color: var(--color-accent-dark); }
.institutional-content p { margin: 0 0 1.35rem; }
.institutional-content ul { list-style: disc; padding-left: 1.4rem; margin: 1rem 0 1.8rem; }
.institutional-content li { margin-bottom: .55rem; }
.institutional-content strong { color: var(--color-text); }
.institutional-gallery { margin: 2.75rem 0 0; padding-top: 2rem; border-top: 1px solid var(--color-border-subtle); }
.institutional-gallery-eyebrow { margin: 0 0 .65rem; color: var(--color-accent); font-family: var(--font-sans); font-size: .82rem; letter-spacing: .14em; line-height: 1.1; text-transform: uppercase; }
.institutional-gallery-title { max-width: 680px; margin: 0; color: var(--color-text); font-family: var(--font-sans); font-size: clamp(1.7rem, 3vw, 2.35rem); font-weight: 600; letter-spacing: .02em; line-height: 1.05; text-transform: uppercase; }
.institutional-gallery-summary { max-width: 38rem; margin: .75rem 0 1.4rem; color: var(--color-text-body); font-family: var(--font-display); font-size: 1.18rem; line-height: 1.45; }
.institutional-gallery-grid { display: grid; grid-template-columns: repeat(6, 1fr); grid-auto-rows: 7.5rem; grid-auto-flow: dense; gap: .75rem; }
.institutional-gallery-item { position: relative; grid-column: span 2; grid-row: span 2; min-width: 0; min-height: 0; margin: 0; overflow: hidden; border-radius: .25rem; background: var(--color-muted); box-shadow: inset 0 0 0 1px rgba(16, 40, 44, .08); outline: 0; }
.institutional-gallery-item--wide { grid-column: span 4; }
.institutional-gallery-item--tall { grid-row: span 3; }
.institutional-gallery-item--feature { grid-column: span 3; grid-row: span 3; }
.institutional-gallery-item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform var(--duration-medium) ease; }
.institutional-gallery-caption { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; gap: .55rem; padding: 1rem; background: linear-gradient(to top, rgba(8, 31, 35, .88), rgba(8, 31, 35, .5) 48%, rgba(8, 31, 35, .02)); color: #fff; transform: translateY(calc(100% - 2.9rem)); transition: transform var(--duration-medium) ease; }
.institutional-gallery-cue { width: fit-content; border: 1px solid rgba(255, 255, 255, .72); border-radius: .15rem; padding: .18rem .44rem; font-family: var(--font-sans); font-size: .72rem; font-weight: 600; letter-spacing: .12em; line-height: 1.1; text-transform: uppercase; }
.institutional-gallery-caption-text { max-width: 34rem; font-family: var(--font-display); font-size: 1.05rem; line-height: 1.32; opacity: 0; transition: opacity var(--duration-medium) ease; }
.institutional-gallery-item:hover img,
.institutional-gallery-item:focus-visible img { transform: scale(1.035); }
.institutional-gallery-item:hover .institutional-gallery-caption,
.institutional-gallery-item:focus-visible .institutional-gallery-caption { transform: translateY(0); }
.institutional-gallery-item:hover .institutional-gallery-caption-text,
.institutional-gallery-item:focus-visible .institutional-gallery-caption-text { opacity: 1; }
.institutional-gallery-item:focus-visible { box-shadow: 0 0 0 3px var(--color-accent); }
@media (max-width: 760px) {
  .institutional-gallery-grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 8.25rem; gap: .6rem; }
  .institutional-gallery-item,
  .institutional-gallery-item--wide,
  .institutional-gallery-item--feature { grid-column: span 1; grid-row: span 2; }
  .institutional-gallery-item--tall { grid-column: span 1; grid-row: span 3; }
  .institutional-gallery-caption { padding: .8rem; transform: translateY(calc(100% - 2.65rem)); }
  .institutional-gallery-caption-text { font-size: .98rem; line-height: 1.28; }
}
.press-release-lead-media { margin: 0 0 2rem; }
.press-release-content blockquote { margin: 2rem 0; border-left: .28rem solid var(--color-accent); padding: .25rem 0 .25rem 1.25rem; color: var(--color-text); font-family: var(--font-display); font-size: clamp(1.3rem, 2vw, 1.65rem); line-height: 1.55; }
.press-release-content blockquote p { margin-bottom: 0; }
.press-release-boilerplate,
.press-release-contact { border-top: 1px solid var(--color-border-subtle); padding-top: 1.5rem; margin-top: 1rem; color: var(--color-text-body); font-family: var(--font-display); font-size: clamp(1.08rem, 1.6vw, 1.25rem); line-height: 1.55; }
.press-release-boilerplate h2,
.press-release-contact h2 { margin: 0 0 .8rem; color: var(--color-accent-dark); font-family: var(--font-sans); font-size: 1rem; font-weight: 600; letter-spacing: .12em; line-height: 1.15; text-transform: uppercase; }
.press-release-boilerplate p,
.press-release-contact p { margin: 0 0 1rem; }
.press-release-contact a { color: var(--color-accent-dark); text-decoration: underline; text-underline-offset: .18em; }
.press-release-address { border-top: 1px solid var(--color-border-subtle); padding-top: 1.25rem; margin-top: 1.25rem; color: var(--color-text-body); font-family: var(--font-sans); font-size: .95rem; font-style: normal; line-height: 1.45; }

/* Standalone docentes page shell */
.docentes-page-shell { max-width: 56rem; margin: 0 auto; padding: var(--site-post-breadcrumb-space) 1rem 5rem; }
@media (min-width: 640px) { .docentes-page-shell { padding-left: 1.5rem; padding-right: 1.5rem; } }
.docentes-page-hero { border-bottom: 1px solid var(--color-border-muted); padding: 0 0 2rem; margin: 0; }
.docentes-page-hero-eyebrow { margin: 0 0 .75rem; color: var(--color-accent); font-family: var(--font-sans); font-size: .875rem; font-style: normal; font-weight: 400; letter-spacing: .14em; text-transform: uppercase; }
.docentes-page-hero-title { max-width: 760px; margin: 0; color: var(--color-heading-dark); font-family: var(--font-display); font-size: clamp(3rem, 5vw, 3.75rem); font-weight: 400; line-height: .95; }
.docentes-page-content { padding: 2rem 0; }
.docentes-page-content h2 { margin: 0 0 1.5rem; color: var(--color-text-body); font-family: var(--font-sans); font-size: clamp(1.45rem, 2.4vw, 2rem); font-weight: 600; line-height: 1.1; text-transform: uppercase; letter-spacing: .02em; }
.docentes-page-content h2:not(:first-child) { margin-top: 3rem; }

/* News log pages */
.news-log-list { list-style: none; margin: 0; padding: 0; }
.news-log-lead-media { margin-top: 2rem; }
.news-log-item { padding: 2rem 0; border-bottom: 1px solid var(--color-border-subtle); }
.news-log-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem .75rem; margin-bottom: .55rem; }
.news-log-date { display: block; color: var(--color-text-body); font-family: var(--font-sans); font-size: .875rem; letter-spacing: .12em; line-height: 1.1; text-transform: uppercase; }
.news-log-badge { display: inline-flex; align-items: center; min-height: 1.35rem; border: 1px solid var(--color-border-muted); border-radius: .15rem; padding: .14rem .42rem; color: var(--color-accent-dark); font-family: var(--font-sans); font-size: .875rem; font-weight: 600; letter-spacing: .12em; line-height: 1.1; text-transform: uppercase; }
.news-log-badge--press-release { border-color: var(--color-accent-dark); background: var(--color-accent-dark); color: #fff; }
.news-log-title { margin: 0; color: var(--color-text); font-family: var(--font-sans); font-size: clamp(1.55rem, 2.6vw, 2.1rem); font-weight: 600; letter-spacing: .02em; line-height: 1.08; text-transform: uppercase; }
.news-log-summary { max-width: 42rem; margin: .7rem 0 0; color: var(--color-text-body); font-family: var(--font-display); font-size: 1.25rem; line-height: 1.4; }

/* Course-facts strip */
.course-facts { padding: 1.75rem 1rem 0; }
.course-facts-inner { max-width: 80rem; margin: 0 auto; padding: 1.5rem 0 0; border-top: 1px solid var(--color-border-subtle); }
.course-facts-eyebrow { margin: 0 0 .5rem; color: var(--color-accent); font-family: var(--font-sans); font-size: .9rem; font-style: normal; line-height: 1.2; letter-spacing: .12em; text-transform: uppercase; }
.course-facts-grid { display: grid; gap: .75rem; margin-top: .75rem; }
.course-facts-grid-critical { grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); }
.course-facts-grid-secondary { grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); margin-top: .75rem; }
.course-fact-card { min-width: 0; border: 0; border-radius: .25rem; padding: .95rem 1rem; background: var(--color-muted); }
.course-fact-label { margin: 0 0 .35rem; color: var(--color-text-body); font-family: var(--font-sans); font-size: .92rem; line-height: 1.15; letter-spacing: .08em; text-transform: uppercase; }
.course-fact-value { margin: 0; color: var(--color-text); font-family: var(--font-sans); font-size: clamp(1.18rem, 1.6vw, 1.45rem); font-weight: 600; line-height: 1.05; overflow-wrap: anywhere; }
.course-fact-badge { display: inline-flex; align-items: center; width: fit-content; min-height: 1.45rem; margin: .55rem 0 0; padding: .15rem .35rem; border-radius: .125rem; background: var(--color-chart-red); color: #fff; font-family: var(--font-sans); font-size: .75rem; font-weight: 600; line-height: 1; letter-spacing: .1em; text-transform: uppercase; }
.course-fact-detail { margin: .45rem 0 0; color: var(--color-text-body); font-family: var(--font-display); font-size: 1rem; line-height: 1.35; }
.course-fact-link { display: inline-flex; align-items: center; gap: .35rem; margin-top: .65rem; color: var(--color-chart-red); font-family: var(--font-sans); font-size: 1rem; font-weight: 600; line-height: 1; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.course-fact-link:hover,
.course-fact-link:focus-visible { color: var(--color-accent-dark); outline: none; }
.course-fact-link-arrow { display: inline-flex; width: 1rem; height: 1rem; }
.course-fact-link-arrow svg { display: block; width: 100%; height: 100%; }
@media (min-width: 768px) {
  .course-facts { padding-top: 2rem; }
  .course-facts-inner { padding-top: 1.75rem; }
}

/* Formation decision page */
.formacion-decision { margin-top: var(--space-10); }
.formacion-decision__intro { margin-bottom: var(--space-12); color: var(--color-text-body); font-family: var(--font-display); font-size: clamp(1.15rem, 1.6vw, 1.375rem); line-height: 1.45; }
.formacion-decision__intro a { color: var(--color-chart-red); text-decoration: none; }
.formacion-decision__intro a:hover,
.formacion-decision__intro a:focus-visible { color: var(--color-accent-dark); outline: none; }
.formacion-decision__paths { display: flex; flex-direction: column; gap: 0; }
.formacion-decision__path { border-top: 1px solid var(--color-accent); padding: clamp(2rem, 4vw, 3rem) 0; }
.formacion-decision__gate { margin-bottom: .5rem; color: var(--color-chart-red); font-family: var(--font-sans); font-size: .8rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.formacion-decision__title { margin: 0 0 1rem; color: var(--color-text-heading, var(--color-text-body)); font-family: var(--font-sans); font-size: clamp(1.1rem, 1.5vw, 1.3rem); font-weight: 600; line-height: 1.15; }
.formacion-decision__descriptor { margin-bottom: 1rem; color: var(--color-text-body); font-family: var(--font-display); font-size: clamp(1rem, 1.3vw, 1.15rem); line-height: 1.5; }
.formacion-decision__facts { margin-bottom: 1.75rem; color: var(--color-text-muted); font-family: var(--font-sans); font-size: .85rem; letter-spacing: .04em; }
.formacion-decision .umlac-cta { max-width: 100%; white-space: normal; text-align: center; font-size: clamp(.9375rem, 1.5vw, 1.0625rem); line-height: 1.25; }
.formacion-decision__closing { margin-top: 0; border-top: 1px solid var(--color-accent); padding-top: clamp(2rem, 4vw, 3rem); color: var(--color-text-muted); font-family: var(--font-display); font-size: clamp(1rem, 1.4vw, 1.2rem); line-height: 1.45; }

/* Governance page */
.governance-nav-wrap { padding: 1.75rem 1rem 0; }
.governance-nav-inner { max-width: 80rem; margin: 0 auto; padding: 1.5rem 0 0; border-top: 1px solid var(--color-border-subtle); }
.governance-nav { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }
.governance-nav-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 2.75rem; padding: .52rem 1rem .48rem; border: 1px solid var(--color-border-subtle); border-radius: .125rem; background: transparent; color: var(--color-heading-dark); font-family: var(--font-sans); font-size: clamp(.95rem, 1.8vw, 1.25rem); font-weight: 500; letter-spacing: .14em; line-height: 1; text-align: center; text-decoration: none; text-transform: uppercase; transition: color .2s ease, border-color .2s ease, background-color .2s ease; white-space: nowrap; }
.governance-nav-btn:hover,
.governance-nav-btn:focus-visible { color: var(--color-chart-red); border-color: var(--color-chart-red); outline: none; }
.governance-nav-btn.is-active { color: #fff; border-color: var(--color-chart-red); background-color: var(--color-chart-red); outline: none; }
.governance-shell { max-width: 56rem; margin: 0 auto; padding: var(--site-post-breadcrumb-space) 1rem 5rem; }
.governance-page[hidden] { display: none; }
.governance-page,
.governance-page:target,
.governance-page:focus,
.governance-page:focus-visible { background: transparent; box-shadow: none; outline: 0; }
.governance-hero { padding: 0; margin: 0 0 2rem; }
.governance-hero-eyebrow { margin: 0 0 .75rem; color: var(--color-accent); font-family: var(--font-sans); font-size: .875rem; font-style: normal; font-weight: 400; letter-spacing: .14em; text-transform: uppercase; }
.governance-hero-title { max-width: 45rem; margin: 0; color: var(--color-accent-dark); font-family: var(--font-display); font-size: clamp(3rem, 5vw, 3.75rem); font-weight: 400; line-height: .95; }
.governance-content { padding: 2rem 0; color: var(--color-text-body); font-family: var(--font-display); font-size: clamp(1.25rem, 2vw, 1.5rem); line-height: 1.65; }
.governance-content h2 { margin: 2.75rem 0 1rem; color: var(--color-heading-dark); font-family: var(--font-sans); font-size: clamp(1.45rem, 2.4vw, 2rem); font-weight: 600; line-height: 1.1; letter-spacing: .02em; text-transform: uppercase; }
.governance-content h2:first-child { margin-top: 0; }
.governance-content h3 { margin: 2rem 0 .85rem; color: var(--color-accent); font-family: var(--font-sans); font-size: clamp(1.15rem, 1.9vw, 1.45rem); font-weight: 600; line-height: 1.15; letter-spacing: .04em; text-transform: uppercase; }
.governance-content p { margin: 0 0 1.35rem; }
.governance-intro-rule { border-top: 1px solid var(--color-border-subtle); margin: 2rem 0; }
.governance-intro-media { aspect-ratio: 27 / 9; overflow: hidden; margin: 0 0 2.25rem; border-radius: 3.75rem; background: var(--color-bg-light); }
.governance-intro-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.governance-content ul { list-style: disc; padding-left: 1.7rem; margin: 1rem 0 1.8rem; }
.governance-content li { margin-bottom: .7rem; padding-left: .25rem; }
.governance-content strong { color: var(--color-heading-dark); font-weight: 600; }
@media (min-width: 768px) {
  .governance-nav-wrap { padding-top: 2rem; }
  .governance-nav-inner { padding-top: 1.75rem; }
  .governance-shell { padding-top: var(--site-post-breadcrumb-space); }
}
@media (max-width: 520px) {
  .governance-nav { align-items: stretch; gap: .55rem; }
  .governance-nav-btn { width: 100%; min-height: 2.4rem; font-size: 1rem; }
}
.article-kicker { font-family:var(--font-sans); font-size:.875rem; font-weight:400; letter-spacing:.08em; text-transform:uppercase; }
.article-kicker-accent { color:var(--color-accent); }

/* 404 page */
.umlac-404 { min-height: 72vh; display: flex; align-items: center; justify-content: center; padding: 4rem 1.5rem; text-align: center; font-family: var(--font-display); }
.umlac-404__inner { max-width: 34rem; }
.umlac-404__code { margin: 0; color: var(--color-chart-red); font-size: clamp(3.5rem, 12vw, 6rem); font-weight: 600; line-height: 1; }
.umlac-404__title { margin: 1rem 0 .5rem; font-size: 1.6rem; }
.umlac-404__text { margin: 0 0 2rem; color: var(--color-text-muted); line-height: 1.6; }
.umlac-404__text [lang="en"] { display: block; margin-top: .5rem; opacity: .8; }
.umlac-404__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: .75rem; }
.umlac-404__link { display: inline-flex; align-items: center; padding: .7rem 1.4rem; border: 1px solid var(--color-chart-red); border-radius: var(--radius-sm); color: var(--color-chart-red); font-weight: 500; text-decoration: none; }
.umlac-404__link:hover,
.umlac-404__link:focus-visible { color: var(--color-chart-red-dark); border-color: var(--color-chart-red-dark); outline: none; }
.umlac-404__link--primary,
.umlac-404__link--primary:visited { background: var(--color-chart-red); color: #fff; }
.umlac-404__link--primary:hover,
.umlac-404__link--primary:focus-visible { background: var(--color-chart-red-dark); color: #fff; }

/* Pro article referencias accordion */
.pro-referencias { margin-top: 3rem; border-top: 1px solid var(--color-border-muted); }
.pro-referencias__summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; cursor: pointer; padding: .9rem 0; color: var(--color-text); font-family: var(--font-sans); font-size: clamp(.8125rem, 1.2vw, .9375rem); font-weight: 600; letter-spacing: .1em; text-transform: uppercase; list-style: none; transition: color var(--duration-fast) ease; }
.pro-referencias__summary::-webkit-details-marker { display: none; }
.pro-referencias__summary:hover,
.pro-referencias__summary:focus-visible,
.pro-referencias__details[open] .pro-referencias__summary { color: var(--color-accent); }
.pro-referencias__icon { position: relative; flex: 0 0 auto; width: 1rem; height: 1rem; }
.pro-referencias__icon::before,
.pro-referencias__icon::after { content: ""; position: absolute; background: currentColor; }
.pro-referencias__icon::before { top: 50%; left: 0; transform: translateY(-50%); width: 100%; height: 1.5px; }
.pro-referencias__icon::after { top: 0; left: 50%; transform: translateX(-50%); width: 1.5px; height: 100%; transition: transform var(--duration-fast) ease, opacity var(--duration-fast) ease; }
.pro-referencias__details[open] .pro-referencias__icon::after { transform: translateX(-50%) rotate(90deg); opacity: 0; }
.pro-referencias__body { padding: 0 0 1.5rem; opacity: 0; transform: translateY(-4px); }
.pro-referencias__details[open] .pro-referencias__body { opacity: 1; transform: translateY(0); transition: opacity .24s ease, transform .24s ease; }
.pro-referencias__list { margin: 0; padding-left: 1.5rem; list-style: decimal; }
.pro-referencias__item { margin-bottom: .7rem; padding-left: .25rem; color: var(--color-text-muted); font-family: var(--font-sans); font-size: clamp(.8125rem, 1.2vw, .9375rem); line-height: 1.6; }
.pro-referencias__item:last-child { margin-bottom: 0; }
.pro-referencias__item a { color: var(--color-accent); text-decoration: underline; text-underline-offset: .2em; white-space: nowrap; }
.pro-referencias__item a:hover,
.pro-referencias__item a:focus-visible { color: var(--color-accent-dark); }
.umlac-consent[hidden], .umlac-consent__banner[hidden], .umlac-consent__settings[hidden] { display:none !important; }
.umlac-consent { position:fixed; inset:0; z-index:10000; pointer-events:none; font-family:var(--font-sans); }
.umlac-consent__banner, .umlac-consent__settings { pointer-events:auto; position:absolute; right:1rem; bottom:1rem; left:1rem; max-width:58rem; margin-inline:auto; padding:1.1rem; border:1px solid var(--color-border); background:var(--color-paper); color:var(--color-text-body); box-shadow:0 1rem 3rem rgba(0,0,0,.24); }
.umlac-consent__settings { max-width:34rem; display:grid; gap:.85rem; }
.umlac-consent__settings-header { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.umlac-consent h2 { margin:0 0 .4rem; font:600 1.35rem/1.2 var(--font-display); color:var(--color-text-body); }
.umlac-consent__settings-header h2 { margin:0; padding-top:.3rem; }
.umlac-consent p { margin:.25rem 0; }
.umlac-consent__settings label { display:flex; align-items:center; gap:.65rem; }
.umlac-consent__actions { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:.85rem; }
.umlac-consent button { min-height:2.55rem; padding:.55rem .8rem; border:1px solid var(--color-accent-dark); background:var(--color-paper); color:var(--color-accent-dark); font:600 .9rem/1 var(--font-sans); cursor:pointer; }
.umlac-consent button.is-primary { background:var(--color-accent-dark); color:#fff; }
.umlac-consent button.umlac-consent__close { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:2.55rem; min-height:2.55rem; padding:0; border-color:var(--color-border); border-radius:var(--radius-pill); background:rgba(255,255,255,.5); color:var(--color-accent-dark); box-shadow:0 .2rem .7rem rgba(16,40,44,.1); transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease, transform var(--duration-fast) ease, box-shadow var(--duration-fast) ease; }
.umlac-consent__close svg { width:1.15rem; height:1.15rem; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; }
.umlac-consent button.umlac-consent__close:hover { border-color:var(--color-accent-dark); background:var(--color-accent-dark); color:#fff; transform:translateY(-1px); box-shadow:0 .35rem .9rem rgba(16,40,44,.18); }
.umlac-consent button.umlac-consent__close:focus-visible { outline:3px solid var(--color-chart-red); outline-offset:3px; }
.umlac-consent button.umlac-consent__close:active { transform:translateY(0) scale(.96); }
@media (max-width:640px) { .umlac-consent__actions > button { flex:1 1 100%; } }
/* source: static/css/library/31-navigation.css */
/* Navigation refinements */
.primary-nav-mega a,
.mobile-menu-child-link,
.utility-link {
  max-width: none;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
}

.primary-nav-mega a,
.mobile-menu-child-link {
  text-transform: uppercase;
}
/* source: static/css/library/40-home-interface-hero.css */
/* UMLAC CSS Library: homepage interface hero module. */

.home-interface-hero {
  display: grid;
  grid-template-columns: minmax(0, 2.07fr) minmax(14.75rem, 0.75fr);
  column-gap: clamp(3.25rem, 6vw, 5.75rem);
  row-gap: clamp(1.35rem, 2.4vw, 2rem);
  align-items: stretch;
  margin-bottom: clamp(4.5rem, 7vw, 6.75rem);
  background: #fff;
  animation: home-interface-hero-settle 520ms cubic-bezier(var(--token-motion-easing-standard)) both;
}

.home-program-hero {
  display: grid;
  grid-template-columns: minmax(14.75rem, 0.75fr) minmax(0, 2.07fr);
  gap: clamp(3.25rem, 6vw, 5.75rem);
  margin-bottom: clamp(8rem, 12.5vw, 11.5rem);
  animation: home-interface-hero-settle 520ms cubic-bezier(var(--token-motion-easing-standard)) both;
}

.home-program-hero .home-interface-hero__billboard {
  grid-column: 2;
}

.home-program-hero .home-interface-hero__headline {
  max-width: 46rem;
  font-size: clamp(2.35rem, 4.35vw, 4.45rem);
}

.home-interface-hero__feed,
.home-interface-hero__main {
  min-width: 0;
}

.home-interface-hero__feed {
  grid-column: 2;
}

.home-interface-hero--no-feed {
  grid-template-columns: 1fr;
}

.home-interface-hero__main {
  grid-column: 1;
  grid-row: 1;
}

.home-interface-hero__section-heading {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.home-interface-hero__status-bar {
  display: block;
  width: 0.24rem;
  height: 2.05rem;
  background: var(--color-chart-red);
}

.home-interface-hero__section-heading h2 {
  margin: 0;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: clamp(1.25rem, 1.6vw, 1.6rem);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 0.95;
  text-transform: uppercase;
}

.home-interface-hero__news-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--color-border-subtle);
}

.home-interface-hero__news-item {
  border-bottom: 1px solid var(--color-border-subtle);
}

.home-interface-hero__news-link {
  display: grid;
  grid-template-columns: 4.4rem minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
  padding: 0.9rem 0;
  color: var(--color-text);
  text-decoration: none;
}

.home-interface-hero__news-link:hover,
.home-interface-hero__news-link:focus-visible {
  color: var(--color-chart-red);
}

.home-interface-hero__thumb {
  display: block;
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--color-bg-light);
  border: 1px solid var(--color-border-subtle);
  border-radius: 4px;
}

.home-interface-hero__thumb--logo {
  background: #fff;
}

.home-interface-hero__thumb--press-release {
  display: grid;
  place-items: center;
  padding: 0.62rem;
  background: transparent;
  border-color: var(--color-border-subtle);
  color: var(--token-color-text-primary);
}

.home-interface-hero__thumb img,
.home-interface-hero__thumb svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-interface-hero__thumb--logo img,
.home-interface-hero__thumb--logo svg,
.home-interface-hero__thumb--press-release img,
.home-interface-hero__thumb--press-release svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.home-interface-hero__media-effect {
  position: relative;
  isolation: isolate;
}

.home-interface-hero__media-effect::before,
.home-interface-hero__media-effect::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.home-interface-hero__media-effect::before {
  z-index: 1;
  background: rgba(254, 224, 138, .09);
}

.home-interface-hero__media-effect::after {
  z-index: 2;
  opacity: .32;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.78'/%3E%3C/svg%3E");
}

.home-interface-hero__thumb--logo::before,
.home-interface-hero__thumb--logo::after,
.home-interface-hero__thumb--press-release::before,
.home-interface-hero__thumb--press-release::after {
  display: none;
}

.home-interface-hero__news-copy,
.home-interface-hero__billboard-copy,
.home-interface-hero__editorial-copy,
.home-interface-hero__articles-copy {
  display: flex;
  flex-direction: column;
}

.home-interface-hero__news-category,
.home-interface-hero__category {
  color: var(--color-chart-red);
  font-family: var(--font-sans);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.home-interface-hero__news-category--press-release {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  width: max-content;
  max-width: 100%;
  min-height: 1.35rem;
  border-radius: .15rem;
  padding: .2rem .48rem;
  background: var(--color-accent-dark);
  color: #fff;
  font-size: .72rem;
  letter-spacing: .1em;
  line-height: 1.05;
}

.home-interface-hero__news-title {
  margin-top: 0.38rem;
  color: currentColor;
  font-family: var(--font-sans);
  font-size: clamp(0.95rem, 1.15vw, 1.08rem);
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.04;
}

.home-interface-hero__archive-link {
  display: inline-flex;
  align-items: center;
  margin-top: 1rem;
  color: var(--color-chart-red);
  font-family: var(--font-sans);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.1;
  text-decoration: none;
  text-transform: uppercase;
}

.home-interface-hero__archive-link::after {
  content: "";
  width: 0.45rem;
  height: 0.45rem;
  margin-left: 0.5rem;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
}

.home-interface-hero__archive-link:hover,
.home-interface-hero__archive-link:focus-visible {
  color: var(--color-text);
}

.home-interface-hero__main {
  display: grid;
  gap: clamp(1.75rem, 3vw, 2.6rem);
}

.home-interface-hero__billboard {
  position: relative;
  display: block;
  min-height: clamp(22rem, 42vw, 34rem);
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: var(--color-accent-dark);
  border-top-left-radius: 3.75rem;
  border-top-right-radius: 3.75rem;
  border-bottom-right-radius: 3.75rem;
  border-bottom-left-radius: 3.75rem;
  text-decoration: none;
}

.home-interface-hero__cinematic {
  --hero-wipe-progress: 0%;
  --hero-wipe-width: clamp(0.45rem, 0.9vw, 0.86rem);
  --hero-hold-duration: 8000ms;
  --hero-wipe-duration: 1180ms;
  --hero-parallax-distance: clamp(1rem, 2.8vw, 1.75rem);
  --hero-light-bloom: clamp(4rem, 10vw, 7rem);
  position: relative;
  min-height: clamp(22rem, 42vw, 34rem);
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: var(--color-accent-dark);
  border-radius: 3.75rem;
}

.home-interface-hero__cinematic .home-interface-hero__billboard {
  position: absolute;
  inset: 0;
  min-height: 100%;
  border-radius: 0;
}

.home-interface-hero__cinematic-slide {
  z-index: 0;
  opacity: 0;
  visibility: hidden;
  clip-path: inset(0 100% 0 0);
  transition:
    opacity 120ms linear,
    visibility 120ms linear;
}

.home-interface-hero__cinematic-slide.is-active {
  z-index: 1;
  opacity: 1;
  visibility: visible;
  clip-path: inset(0 0 0 0);
}

.home-interface-hero__cinematic-slide.is-revealing {
  z-index: 2;
  opacity: 1;
  visibility: visible;
}

.home-interface-hero__cinematic-slide.is-exiting {
  z-index: 1;
  opacity: 1;
  visibility: visible;
}

.home-interface-hero__cinematic.is-wiping-left-to-right .home-interface-hero__cinematic-slide.is-revealing {
  clip-path: inset(0 100% 0 0);
}

.home-interface-hero__cinematic.is-wiping-right-to-left .home-interface-hero__cinematic-slide.is-revealing {
  clip-path: inset(0 0 0 100%);
}

.home-interface-hero__wipe {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 6;
  width: var(--hero-wipe-width);
  pointer-events: none;
  opacity: 0;
  background: #fff;
  border-radius: 999px;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.86),
    0 0 1.7rem rgba(255, 255, 255, 0.42);
  clip-path: inset(100% 0 0 0);
  transform: translateX(-50%);
  transform-origin: bottom center;
}

.home-interface-hero__wipe::before {
  content: "";
  position: absolute;
  top: -8%;
  bottom: -8%;
  left: 50%;
  width: var(--hero-light-bloom);
  pointer-events: none;
  opacity: 0;
  background:
    radial-gradient(ellipse at center, rgba(255, 255, 255, 0.42) 0%, rgba(255, 255, 255, 0.18) 34%, rgba(255, 255, 255, 0) 72%);
  filter: blur(1px);
  transform: translateX(-50%) scaleX(0.72);
  transition:
    opacity 220ms ease,
    transform 520ms cubic-bezier(0.12, 0.02, 0.18, 1);
}

.home-interface-hero__cinematic.is-holding-progress .home-interface-hero__wipe::before {
  opacity: 0;
}

.home-interface-hero__cinematic.is-traveling .home-interface-hero__wipe::before {
  opacity: 0.78;
  transform: translateX(-50%) scaleX(1);
}

.home-interface-hero__carousel-arrow {
  position: absolute;
  top: 40%;
  z-index: 8;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(2.75rem, 4.4vw, 3.75rem);
  height: clamp(2.75rem, 4.4vw, 3.75rem);
  padding: 0;
  color: var(--color-chart-red);
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(16, 40, 44, 0.16);
  border-radius: 999px;
  box-shadow: 0 0.8rem 2rem rgba(16, 40, 44, 0.16);
  cursor: pointer;
  opacity: 0.82;
  transform: translateY(-50%);
  transition:
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    opacity 180ms ease,
    transform 180ms ease;
}

.home-interface-hero__carousel-arrow--prev {
  left: clamp(0.75rem, 2vw, 1.25rem);
}

.home-interface-hero__carousel-arrow--next {
  right: clamp(0.75rem, 2vw, 1.25rem);
}

.home-interface-hero__carousel-arrow svg {
  width: 54%;
  height: 54%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: square;
  stroke-linejoin: miter;
}

.home-interface-hero__carousel-arrow:hover,
.home-interface-hero__carousel-arrow:focus-visible {
  background: #fff;
  border-color: rgba(16, 40, 44, 0.28);
  box-shadow: 0 1rem 2.4rem rgba(16, 40, 44, 0.22);
  opacity: 1;
  transform: translateY(-50%) scale(1.03);
}

.home-interface-hero__carousel-arrow:focus-visible,
.home-interface-hero__carousel-dot:focus-visible {
  outline: 3px solid rgba(216, 104, 5, 0.55);
  outline-offset: 4px;
}

.home-interface-hero__carousel-position {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4.75rem;
  gap: clamp(1.25rem, 4vw, 2.75rem);
  padding: 0.2rem 0 0;
}

.home-interface-hero__carousel-dot {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.22rem;
  height: 1.22rem;
  padding: 0;
  color: var(--color-text);
  background: transparent;
  border: 2px solid currentColor;
  border-radius: 999px;
  box-shadow: none;
  cursor: pointer;
  transform: scale(1);
  transition:
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease,
    transform 220ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__carousel-dot span {
  display: block;
  width: 0.7rem;
  height: 0.7rem;
  background: transparent;
  border-radius: 999px;
  transition: background 180ms ease;
}

.home-interface-hero__carousel-dot.is-active {
  width: 3.45rem;
  height: 3.45rem;
  color: var(--color-text);
  background: #fff;
  border-color: transparent;
  box-shadow:
    0 0.75rem 2rem rgba(16, 40, 44, 0.18),
    0 0 0 1px rgba(16, 40, 44, 0.06);
}

.home-interface-hero__carousel-dot.is-active span {
  width: 0.9rem;
  height: 0.9rem;
  background: var(--color-chart-red);
}

.home-interface-hero__carousel-dot:hover {
  transform: scale(1.08);
}

.home-interface-hero__carousel-dot.is-active:hover {
  transform: scale(1.03);
}

.home-interface-hero__gateway-row {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(18rem, 0.62fr) minmax(0, 1.38fr);
  gap: clamp(2rem, 4vw, 4rem);
  align-items: stretch;
  margin-top: clamp(1rem, 2.2vw, 1.75rem);
  padding-top: clamp(1.35rem, 2.4vw, 2rem);
  border-top: 1px solid var(--color-border-subtle);
}

.home-interface-hero__gateway-panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.home-interface-hero__gateway-panel--academic .home-interface-hero__gateway-kicker {
  margin-bottom: 0.45rem;
}

.home-interface-hero__gateway-panel--academic .home-interface-hero__status-bar {
  height: 1.45rem;
}

.home-interface-hero__gateway-kicker {
  display: flex;
  align-items: center;
  gap: 0.72rem;
  margin-bottom: 0.95rem;
}

.home-interface-hero__gateway-kicker .home-interface-hero__status-bar {
  height: 1.72rem;
}

.home-interface-hero__gateway-heading {
  margin: 0;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: 1.28rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 0.98;
  text-transform: uppercase;
}

.home-interface-hero__gateway-text {
  max-width: 46rem;
  margin: -0.12rem 0 1.05rem;
  color: var(--color-text-muted);
  font-family: var(--font-sans);
  font-size: 1.16rem;
  line-height: 1.38;
}

.home-interface-hero__gateway-text a {
  padding: 0.02em 0.18em;
  background-color: transparent;
  color: var(--color-chart-red);
  text-decoration: underline;
  text-decoration-color: currentColor;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
  transition: background-color 220ms cubic-bezier(var(--token-motion-easing-standard)), color 220ms cubic-bezier(var(--token-motion-easing-standard)), text-decoration-color 220ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__gateway-text a:hover,
.home-interface-hero__gateway-text a:focus-visible {
  background-color: var(--color-chart-red);
  color: #fff;
  text-decoration-color: transparent;
}

.home-interface-hero__gateway-list,
.home-interface-hero__magazine-links {
  display: grid;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid var(--color-border-subtle);
}

.home-interface-hero__gateway-list {
  gap: 0;
  margin-top: auto;
  border-top: 0;
  border-bottom: 1px solid var(--color-border-subtle);
}

.home-interface-hero__magazine-links {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: auto;
  border-bottom: 1px solid var(--color-border-subtle);
}

.home-interface-hero__gateway-list li,
.home-interface-hero__magazine-links li {
  display: flex;
}

.home-interface-hero__gateway-list li {
  border-bottom: 0;
}

.home-interface-hero__magazine-links li + li {
  border-left: 1px solid var(--color-border-subtle);
}

.home-interface-hero__gateway-link,
.home-interface-hero__magazine-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  box-sizing: border-box;
  width: 100%;
  min-height: 3.55rem;
  background-color: transparent;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: 1.12rem;
  line-height: 1.12;
  text-decoration: none;
  transition: background-color 220ms cubic-bezier(var(--token-motion-easing-standard)), color 220ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__gateway-link {
  min-height: 2.35rem;
  padding: 0.2rem clamp(0.75rem, 1.4vw, 1.1rem) 0.2rem 0;
}

.home-interface-hero__magazine-link {
  padding: 0.85rem clamp(0.75rem, 1.4vw, 1.1rem);
}

.home-interface-hero__magazine-links li:first-child .home-interface-hero__magazine-link {
  padding-left: 0;
}

.home-interface-hero__magazine-links li:last-child .home-interface-hero__magazine-link {
  padding-right: clamp(0.75rem, 1.4vw, 1.1rem);
}

.home-interface-hero__gateway-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  color: var(--color-chart-red);
  transition: transform 220ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__gateway-arrow svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: square;
  stroke-linejoin: miter;
}

.home-interface-hero__gateway-link:hover,
.home-interface-hero__gateway-link:focus-visible,
.home-interface-hero__magazine-link:hover,
.home-interface-hero__magazine-link:focus-visible {
  background-color: var(--color-chart-red);
  color: #fff;
}

.home-interface-hero__gateway-link:hover .home-interface-hero__gateway-arrow,
.home-interface-hero__gateway-link:focus-visible .home-interface-hero__gateway-arrow,
.home-interface-hero__magazine-link:hover .home-interface-hero__gateway-arrow,
.home-interface-hero__magazine-link:focus-visible .home-interface-hero__gateway-arrow {
  color: #fff;
  transform: translateX(0.24rem);
}

.home-interface-hero__billboard img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 48% 50%;
  transform: scale(1);
  animation: home-interface-hero-drift 18s ease-in-out infinite alternate;
  transition: transform 900ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__cinematic-slide.is-revealing img,
.home-interface-hero__cinematic-slide.is-exiting img {
  animation: none;
  transition: none;
  will-change: transform;
}

.home-interface-hero__billboard-shade {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(16, 40, 44, 0.08) 0%, rgba(16, 40, 44, 0.28) 48%, rgba(16, 40, 44, 0.82) 100%),
    linear-gradient(90deg, rgba(16, 40, 44, 0.64) 0%, rgba(16, 40, 44, 0.16) 62%, rgba(16, 40, 44, 0.04) 100%);
  transition: opacity 680ms cubic-bezier(0.12, 0.02, 0.18, 1);
}

.home-interface-hero__cinematic-slide--copy-right .home-interface-hero__billboard-shade {
  background:
    linear-gradient(180deg, rgba(16, 40, 44, 0.08) 0%, rgba(16, 40, 44, 0.26) 48%, rgba(16, 40, 44, 0.8) 100%),
    linear-gradient(270deg, rgba(16, 40, 44, 0.66) 0%, rgba(16, 40, 44, 0.2) 62%, rgba(16, 40, 44, 0.04) 100%);
}

.home-interface-hero__cinematic-slide.is-revealing .home-interface-hero__billboard-shade {
  animation: home-interface-hero-shade-arrive 920ms cubic-bezier(0.12, 0.02, 0.18, 1) both;
}

.home-interface-hero__cinematic-slide.is-exiting .home-interface-hero__billboard-shade {
  opacity: 1;
}

.home-interface-hero__billboard-copy {
  position: absolute;
  z-index: 4;
  left: clamp(1.3rem, 3vw, 2.25rem);
  right: clamp(1.3rem, 3vw, 2.25rem);
  bottom: clamp(1.3rem, 3vw, 2.25rem);
  max-width: 42rem;
}

.home-interface-hero__cinematic-slide--copy-right .home-interface-hero__billboard-copy {
  align-items: flex-end;
  max-width: none;
  text-align: right;
}

.home-interface-hero__cinematic-slide.is-revealing .home-interface-hero__category,
.home-interface-hero__cinematic-slide.is-revealing .home-interface-hero__category-detail,
.home-interface-hero__cinematic-slide.is-revealing .home-interface-hero__headline {
  animation: home-interface-hero-copy-arrive 560ms cubic-bezier(0.12, 0.02, 0.18, 1) both;
  will-change: opacity, filter, transform;
}

.home-interface-hero__cinematic-slide.is-revealing .home-interface-hero__headline {
  display: inline-block;
}

.home-interface-hero__cinematic-slide.is-revealing .home-interface-hero__category {
  animation-delay: 120ms;
}

.home-interface-hero__cinematic-slide.is-revealing .home-interface-hero__category-detail {
  animation-delay: 180ms;
}

.home-interface-hero__cinematic-slide.is-revealing .home-interface-hero__headline {
  animation-delay: 260ms;
}

.home-interface-hero__billboard .home-interface-hero__category {
  display: block;
  align-items: flex-start;
  align-self: flex-start;
  width: fit-content;
  max-width: min(100%, 32rem);
  padding: 0.55rem 0.7rem 0.5rem;
  color: #fff;
  background: var(--color-chart-red);
  border-radius: 0.25rem;
  font-family: var(--font-sans);
  font-size: clamp(1.05rem, 1.25vw, 1.25rem);
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  text-align: left;
}

.home-interface-hero__cinematic-slide--copy-right .home-interface-hero__category {
  margin-left: auto;
  text-align: right;
}

.home-interface-hero__billboard .home-interface-hero__category span {
  display: block;
}

.home-interface-hero__category-detail {
  display: block;
  margin-top: 0.5rem;
  color: #fff;
  font-family: var(--font-sans);
  font-size: clamp(1.05rem, 1.25vw, 1.25rem);
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  text-align: left;
  text-transform: uppercase;
}

.home-interface-hero__category-detail span {
  display: block;
}

.home-interface-hero__cinematic-slide--copy-right .home-interface-hero__category-detail {
  text-align: right;
}

.home-interface-hero__headline {
  display: inline;
  margin-top: 0.65rem;
  color: #fff;
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 5vw, 5.2rem);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 0.92;
}

.home-interface-hero__billboard-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 0.78em;
  height: 0.78em;
  margin-left: 0.18em;
  vertical-align: -0.12em;
  color: #fff;
  transition: transform 520ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__billboard-arrow svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: square;
  stroke-linejoin: miter;
}

.home-interface-hero__billboard:hover .home-interface-hero__billboard-arrow,
.home-interface-hero__billboard:focus-visible .home-interface-hero__billboard-arrow {
  transform: translateX(0.35rem);
}

.home-interface-hero__card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.4rem);
}

.home-interface-hero__editorial-card,
.home-interface-hero__articles-card {
  display: flex;
  min-width: 0;
  overflow: hidden;
  color: var(--color-text);
  text-decoration: none;
  background: #fff;
  border-top-left-radius: 1.4rem;
  border-top-right-radius: 1.4rem;
}

.home-interface-hero__editorial-card {
  flex-direction: column;
}

.home-interface-hero__editorial-media {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--color-bg-light);
  border-radius: 1.4rem;
}

.home-interface-hero__editorial-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform 620ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__editorial-copy,
.home-interface-hero__articles-copy {
  padding: clamp(1.1rem, 2vw, 1.45rem);
}

.home-interface-hero__card-title {
  margin-top: 0.58rem;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: clamp(1.35rem, 2vw, 1.9rem);
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 0.98;
  text-transform: uppercase;
}

.home-interface-hero__card-arrow {
  display: inline-flex;
  width: 0.92em;
  height: 0.92em;
  margin-left: 0.35rem;
  color: var(--color-chart-red);
  vertical-align: -0.22em;
  transition: transform 420ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__card-arrow svg {
  display: block;
  width: 100%;
  height: 100%;
}

.home-interface-hero__editorial-card:hover .home-interface-hero__card-arrow,
.home-interface-hero__editorial-card:focus-visible .home-interface-hero__card-arrow,
.home-interface-hero__articles-card:hover .home-interface-hero__card-arrow,
.home-interface-hero__articles-card:focus-visible .home-interface-hero__card-arrow {
  transform: translateX(0.18rem);
}

.home-interface-hero__card-body {
  margin-top: 0.8rem;
  color: var(--color-text-body);
  font-family: var(--font-display);
  font-size: clamp(1.05rem, 1.5vw, 1.25rem);
  line-height: 1.32;
}

.home-interface-hero__articles-card {
  flex-direction: column;
  background: var(--color-bg-light);
}

.home-interface-hero__articles-media {
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #fff;
  border-radius: 1.4rem;
}

.home-interface-hero__articles-media img,
.home-interface-hero__articles-media svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transform-origin: center;
  transition: transform 620ms cubic-bezier(var(--token-motion-easing-standard));
}

.home-interface-hero__billboard:hover img,
.home-interface-hero__billboard:focus-visible img,
.home-interface-hero__editorial-card:hover .home-interface-hero__editorial-media img,
.home-interface-hero__editorial-card:focus-visible .home-interface-hero__editorial-media img,
.home-interface-hero__articles-card:hover .home-interface-hero__articles-media svg,
.home-interface-hero__articles-card:focus-visible .home-interface-hero__articles-media svg,
.home-interface-hero__articles-card:hover .home-interface-hero__articles-media img,
.home-interface-hero__articles-card:focus-visible .home-interface-hero__articles-media img {
  transform: scale(1.045);
}

.home-interface-hero__editorial-card:hover .home-interface-hero__card-title,
.home-interface-hero__editorial-card:focus-visible .home-interface-hero__card-title,
.home-interface-hero__articles-card:hover .home-interface-hero__card-title,
.home-interface-hero__articles-card:focus-visible .home-interface-hero__card-title {
  color: var(--color-chart-red);
}

@media (max-width: 1023px) {
  .home-interface-hero {
    grid-template-columns: 1fr;
  }

  .home-program-hero {
    grid-template-columns: 1fr;
  }

  .home-program-hero .home-interface-hero__billboard {
    grid-column: 1;
  }

  .home-interface-hero__feed {
    grid-column: 1;
    order: 3;
  }

  .home-interface-hero__main {
    grid-column: 1;
    grid-row: auto;
    order: 1;
  }

  .home-interface-hero__gateway-row {
    grid-template-columns: 1fr;
    order: 2;
  }

  .home-interface-hero__magazine-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-interface-hero__magazine-links li:nth-child(odd) {
    border-left: 0;
  }

  .home-interface-hero__magazine-links li:nth-child(n + 3) {
    border-top: 1px solid var(--color-border-subtle);
  }

  .home-interface-hero__magazine-link {
    padding-right: clamp(0.75rem, 2.4vw, 1.1rem);
    padding-left: clamp(0.75rem, 2.4vw, 1.1rem);
  }

  .home-interface-hero__magazine-links li:nth-child(odd) .home-interface-hero__magazine-link {
    padding-left: 0;
  }

  .home-interface-hero__magazine-links li:nth-child(even) .home-interface-hero__magazine-link {
    padding-right: clamp(0.75rem, 2.4vw, 1.1rem);
  }
}

@media (max-width: 767px) {
  .home-interface-hero__cinematic {
    --hero-parallax-distance: 0.7rem;
    --hero-light-bloom: 3.75rem;
  }

  .home-interface-hero__card-grid {
    grid-template-columns: 1fr;
  }

  .home-interface-hero__news-link {
    grid-template-columns: 4.6rem minmax(0, 1fr);
  }

  .home-interface-hero__billboard {
    min-height: 25rem;
    border-top-left-radius: 2.25rem;
    border-top-right-radius: 2.25rem;
    border-bottom-right-radius: 2.25rem;
    border-bottom-left-radius: 2.25rem;
  }

  .home-interface-hero__cinematic {
    min-height: 25rem;
    border-radius: 2.25rem;
  }

  .home-interface-hero__carousel-arrow {
    width: 2.65rem;
    height: 2.65rem;
  }

  .home-interface-hero__carousel-arrow--prev {
    left: 0.65rem;
  }

  .home-interface-hero__carousel-arrow--next {
    right: 0.65rem;
  }

  .home-interface-hero__carousel-position {
    min-height: 4.25rem;
    gap: clamp(1.05rem, 8vw, 1.75rem);
  }

  .home-interface-hero__carousel-dot {
    width: 1rem;
    height: 1rem;
  }

  .home-interface-hero__carousel-dot.is-active {
    width: 3.1rem;
    height: 3.1rem;
  }

  .home-interface-hero__gateway-row {
    margin-top: 0.75rem;
    padding-top: 1.25rem;
  }

  .home-interface-hero__gateway-heading {
    font-size: 1.14rem;
  }

  .home-interface-hero__gateway-text {
    font-size: 1.08rem;
  }

  .home-interface-hero__gateway-link,
  .home-interface-hero__magazine-link {
    font-size: 1.06rem;
  }

  .home-interface-hero__magazine-links {
    grid-template-columns: 1fr;
  }

  .home-interface-hero__magazine-links li + li,
  .home-interface-hero__magazine-links li:nth-child(n + 3) {
    border-top: 1px solid var(--color-border-subtle);
    border-left: 0;
  }

  .home-interface-hero__magazine-link,
  .home-interface-hero__magazine-links li:nth-child(odd) .home-interface-hero__magazine-link,
  .home-interface-hero__magazine-links li:nth-child(even) .home-interface-hero__magazine-link {
    padding-right: clamp(0.75rem, 5vw, 1.1rem);
    padding-left: 0;
  }

  .home-interface-hero__cinematic-slide--copy-right .home-interface-hero__billboard-copy {
    align-items: flex-start;
    text-align: left;
  }

  .home-interface-hero__cinematic-slide--copy-right .home-interface-hero__category {
    margin-left: 0;
    text-align: left;
  }

  .home-interface-hero__cinematic-slide--copy-right .home-interface-hero__category-detail {
    text-align: left;
  }
}

@keyframes home-interface-hero-settle {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes home-interface-hero-drift {
  from {
    object-position: 46% 49%;
  }

  to {
    object-position: 52% 51%;
  }
}

@keyframes home-interface-hero-copy-arrive {
  from {
    opacity: 0;
    filter: blur(4px);
    transform: translateY(0.75rem);
  }

  to {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
  }
}

@keyframes home-interface-hero-shade-arrive {
  from {
    opacity: 0.72;
  }

  58% {
    opacity: 0.9;
  }

  to {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-interface-hero {
    animation: none;
  }

  .home-interface-hero__billboard img,
  .home-interface-hero__editorial-media img,
  .home-interface-hero__articles-media img,
  .home-interface-hero__articles-media svg {
    animation: none;
    transition: none;
  }

  .home-interface-hero__billboard:hover img,
  .home-interface-hero__billboard:focus-visible img,
  .home-interface-hero__editorial-card:hover .home-interface-hero__editorial-media img,
  .home-interface-hero__editorial-card:focus-visible .home-interface-hero__editorial-media img,
  .home-interface-hero__articles-card:hover .home-interface-hero__articles-media svg,
  .home-interface-hero__articles-card:focus-visible .home-interface-hero__articles-media svg,
  .home-interface-hero__articles-card:hover .home-interface-hero__articles-media img,
  .home-interface-hero__articles-card:focus-visible .home-interface-hero__articles-media img {
    transform: none;
  }

  .home-interface-hero__cinematic-slide,
  .home-interface-hero__cinematic-slide.is-revealing,
  .home-interface-hero__cinematic-slide.is-exiting,
  .home-interface-hero__wipe,
  .home-interface-hero__carousel-arrow,
  .home-interface-hero__carousel-dot,
  .home-interface-hero__carousel-dot span {
    animation: none !important;
    transition: none;
  }

  .home-interface-hero__wipe::before,
  .home-interface-hero__category,
  .home-interface-hero__category-detail,
  .home-interface-hero__headline,
  .home-interface-hero__billboard-shade {
    animation: none !important;
    transition: none;
    filter: none;
  }
}
/* source: static/css/library/50-campaign.css */
.campaign-body {
  margin: 0;
  background: var(--color-page);
  color: var(--color-text-body);
  font-family: var(--font-display);
}

.campaign-header {
  position: sticky;
  top: 0;
  z-index: 40;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1rem, 2vw, 2rem);
  padding: 1.25rem clamp(1rem, 4vw, 3rem);
  background: var(--color-accent);
  border-bottom: 1px solid color-mix(in srgb, var(--color-accent-dark) 58%, transparent);
  color: #fff;
}

.campaign-header__brand {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem;
  color: #fff;
  line-height: 0.9;
  text-decoration: none;
}

.campaign-header__brand:hover,
.campaign-header__brand:focus-visible {
  color: #fff;
  outline: none;
}

.campaign-header__brand-main {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.campaign-header__isotipo {
  width: auto;
  height: 2.5rem;
  filter: brightness(0) invert(1);
}

.campaign-header__wordmark {
  color: #fff;
  font-family: var(--font-display);
  font-size: 2.25rem;
  font-weight: 400;
  line-height: 0.9;
}

.campaign-header__subtitle {
  display: flex;
  flex-direction: column;
  color: #fff;
  font-family: var(--font-sans);
  font-size: 0.95rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1;
  white-space: normal;
}

.campaign-header__actions {
  display: inline-flex;
  align-items: center;
  gap: 0.85rem;
  margin-left: auto;
}

.campaign-header .language-switcher,
.campaign-header .language-switcher__link {
  color: #fff;
}

.campaign-header .language-switcher {
  display: inline-flex;
}

.campaign-header .language-switcher__link:hover,
.campaign-header .language-switcher__link:focus-visible {
  color: #fff;
}

.campaign-header .language-switcher__current {
  background: var(--color-chart-red);
  color: #fff;
}

.campaign-header .language-switcher__separator {
  color: rgba(255, 255, 255, 0.72);
}

.campaign-header__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  margin-left: 0;
  padding: 0.42rem 0.85rem 0.38rem;
  border: 1px solid var(--color-chart-red);
  border-radius: var(--radius-sm);
  background: var(--color-chart-red);
  color: #fff;
  font-family: var(--font-sans);
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color var(--duration-fast) ease, border-color var(--duration-fast) ease, color var(--duration-fast) ease;
}

.campaign-header__cta:visited,
.campaign-header__cta:hover,
.campaign-header__cta:focus-visible {
  color: #fff;
}

.campaign-header__cta:hover,
.campaign-header__cta:focus-visible {
  background: var(--color-chart-red-dark);
  border-color: var(--color-chart-red-dark);
  outline: none;
}

.campaign-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.1rem;
  padding: 0.78rem 1.05rem;
  border: 1px solid var(--color-chart-red);
  border-radius: var(--radius-sm);
  background: var(--color-chart-red);
  color: #fff;
  font-family: var(--font-sans);
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color var(--duration-fast) ease, border-color var(--duration-fast) ease, color var(--duration-fast) ease, transform var(--duration-fast) ease;
}

.campaign-button:not(.campaign-button--secondary):visited {
  color: #fff;
}

.campaign-header__cta::after,
.campaign-button:not(.campaign-button--secondary)::after {
  content: "";
  display: inline-block;
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  margin-left: 0.7rem;
  background: currentColor;
  mask: url("/arrow-right.svg") center / contain no-repeat;
}

.campaign-text-cta {
  display: inline-flex;
  align-items: center;
  color: var(--color-chart-red);
  font-family: var(--font-sans);
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

.campaign-text-cta:visited,
.campaign-text-cta:hover,
.campaign-text-cta:focus-visible {
  color: var(--color-chart-red-dark);
  outline: none;
}

.campaign-text-cta::after {
  content: "";
  display: inline-block;
  flex: 0 0 auto;
  width: 1.15rem;
  height: 1.15rem;
  margin-left: 0.7rem;
  background: currentColor;
  mask: url("/arrow-right.svg") center / contain no-repeat;
}

.campaign-button:hover,
.campaign-button:focus-visible {
  background: var(--color-chart-red-dark);
  border-color: var(--color-chart-red-dark);
  color: #fff;
  outline: none;
  transform: translateY(-1px);
}

.campaign-main {
  padding: 0 0 5rem;
}

.campaign-article {
  margin: 0;
}

.campaign-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  align-items: end;
  min-height: 44rem;
  margin: 0;
  overflow: hidden;
  padding: 7rem 1rem 13rem;
  background: var(--color-accent-dark);
}

.campaign-hero::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  opacity: var(--campaign-hero-shade-strength, 1);
  background:
    linear-gradient(90deg, rgba(16, 40, 44, 0.9) 0%, rgba(16, 40, 44, 0.72) 39%, rgba(16, 40, 44, 0.2) 72%),
    linear-gradient(0deg, rgba(16, 40, 44, 0.74) 0%, rgba(16, 40, 44, 0.08) 52%);
}

.campaign-hero-inner {
  width: min(100%, 70rem);
  margin: 0 auto;
}

.campaign-hero-kicker {
  margin-bottom: 0.75rem;
  color: var(--color-bg-light);
  font-family: var(--font-sans);
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.14em;
  line-height: 1.2;
  text-transform: uppercase;
}

.campaign-hero-copy {
  max-width: 46rem;
}

.campaign-hero-copy h1 {
  max-width: 17ch;
  margin: 0 0 1.25rem;
  color: #fff;
  font-family: var(--font-display);
  font-size: 3rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 0.95;
}

.campaign-hero-copy .campaign-h1-accent {
  color: var(--color-chart-red);
  font-weight: 600;
}

.campaign-hero-copy strong {
  color: #fff;
  font-weight: 600;
}

.campaign-hero-media {
  position: absolute;
  inset: 0;
  z-index: -2;
  overflow: hidden;
  margin: 0;
  background: var(--color-accent-dark);
}

.campaign-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  background: var(--color-accent-dark);
  filter: brightness(var(--campaign-hero-brightness, 1)) contrast(var(--campaign-hero-contrast, 1)) blur(var(--campaign-hero-blur, 0px));
}

.campaign-hero-media::before {
  position: absolute;
  z-index: 2;
  inset: 0;
  content: "";
  opacity: var(--campaign-hero-grain-strength, 0);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0.33 0.33 0.33 0 0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E");
  pointer-events: none;
}

.campaign-hero--treatment-monochrome-green .campaign-hero-media::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  content: "";
  opacity: var(--campaign-hero-tint-strength, 1);
  background: var(--color-accent);
  mix-blend-mode: color;
  pointer-events: none;
}

.campaign-intro-card {
  position: relative;
  z-index: 2;
  max-width: 42rem;
  margin: -7.5rem auto var(--space-16);
  padding: clamp(2rem, 5vw, 4rem);
  border: 1px solid var(--color-border-subtle);
  border-radius: 3.75rem;
  background: #fff;
  box-shadow: 0 24px 68px rgba(16, 40, 44, 0.16);
}

.campaign-intro-card--intro-overlap-triad-grid,
.campaign-intro-card--intro-overlap-detached-rounded-blocks {
  max-width: min(100% - 2rem, 78rem);
}

.campaign-intro-card--intro-overlap-detached-rounded-blocks {
  margin-bottom: calc(var(--space-16) + 2rem);
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.campaign-intro-triad {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
  margin: 0;
  align-items: stretch;
}

.campaign-intro-triad__item {
  min-width: 0;
  padding: clamp(1.35rem, 2.5vw, 1.85rem);
  border: 1px solid var(--color-border-subtle);
  border-radius: 2rem;
  background: #fff;
  box-shadow: 0 18px 44px rgba(16, 40, 44, 0.14);
}

.campaign-content.campaign-intro-card .campaign-intro-triad h2 {
  margin: 0 0 1rem;
  color: var(--color-chart-red);
  font-family: var(--font-display);
  font-size: clamp(1.3rem, 1.8vw, 1.48rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.08;
  text-transform: none;
}

.campaign-content.campaign-intro-card .campaign-intro-triad p {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(1.02rem, 1.55vw, 1.18rem);
  line-height: 1.42;
}

.campaign-content.campaign-intro-card p {
  font-size: 1.34rem;
  line-height: 1.46;
}

.campaign-content.campaign-intro-card p:last-child {
  margin-bottom: 0;
}

.campaign-body-copy {
  max-width: 48rem;
  margin: 0 auto;
  padding: 0 1rem;
}

.campaign-content .umlac-captioned-media-plain {
  margin-top: var(--space-16);
}

.campaign-content h2 {
  margin: 3.6rem 0 1rem;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.1;
  text-transform: uppercase;
}

.campaign-body-copy > h2:first-child {
  margin-top: 3.5rem;
}

.campaign-content h3 {
  margin: 2rem 0 0.75rem;
  color: var(--color-accent-dark);
  font-family: var(--font-sans);
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.15;
  text-transform: uppercase;
}

.campaign-content p,
.campaign-content li {
  color: var(--color-text-body);
  font-family: var(--font-display);
  font-size: 1.25rem;
  line-height: 1.65;
}

.campaign-content p {
  margin: 0 0 1.35rem;
}

.campaign-content ul,
.campaign-content ol {
  margin: 0 0 1.5rem 1.35rem;
  padding-left: 1rem;
}

.campaign-content li {
  margin: 0 0 0.7rem;
  padding-left: 0.25rem;
}

.campaign-definition-cards {
  margin: 2rem 0 2.4rem;
}

.campaign-definition-cards ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr));
  gap: var(--space-6);
  margin: 0;
  padding: 0;
  list-style: none;
}

.campaign-definition-cards li {
  min-width: 0;
  margin: 0;
  padding: 1.5rem 1.6rem 1.7rem;
  border: 1px solid var(--color-border-subtle);
  border-radius: 1rem;
  background: #fff;
  font-size: 1.2rem;
  line-height: 1.42;
  box-shadow: 0 10px 26px rgba(16, 40, 44, 0.08);
}

.campaign-definition-cards li p {
  margin: 0;
  font-size: inherit;
  line-height: inherit;
}

.campaign-definition-cards li strong {
  display: block;
  margin: 0 0 0.35rem;
  color: var(--color-chart-red);
  font-family: var(--font-sans);
  font-size: 1.14rem;
  letter-spacing: 0.03em;
  line-height: 1.15;
  text-transform: uppercase;
}

.campaign-content strong {
  color: var(--color-text);
  font-weight: 600;
}

.campaign-content .campaign-definition-cards strong {
  color: var(--color-chart-red);
}

.campaign-content a {
  color: var(--color-chart-red);
  text-decoration: none;
}

.campaign-content a:hover,
.campaign-content a:focus-visible {
  color: var(--color-accent-dark);
  outline: none;
}

.campaign-content .campaign-button:not(.campaign-button--secondary),
.campaign-content .campaign-button:not(.campaign-button--secondary):visited,
.campaign-content .campaign-button:not(.campaign-button--secondary):hover,
.campaign-content .campaign-button:not(.campaign-button--secondary):focus-visible {
  color: #fff;
}

.campaign-content blockquote {
  margin: 2rem 0;
  padding: 0.25rem 0 0.25rem 1.25rem;
  border-left: var(--border-quote) solid var(--color-accent);
  color: var(--color-text);
  font-family: var(--font-display);
  font-size: 1.3rem;
  line-height: 1.55;
}

.campaign-content blockquote p {
  margin-bottom: 0;
}

.campaign-inline-cta {
  display: grid;
  gap: 1.2rem;
  margin: 2.5rem 0;
  padding: clamp(1.15rem, 3vw, 1.75rem);
  border: 1px solid var(--color-border-muted);
  border-radius: 1rem;
  background: var(--color-bg-light);
}

.campaign-inline-cta h2 {
  margin: 0 0 0.7rem;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: clamp(1.2rem, 2.2vw, 1.55rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.1;
  text-transform: uppercase;
}

.campaign-inline-cta p {
  margin: 0;
  color: var(--color-text-body);
  font-size: clamp(1.1rem, 2vw, 1.3rem);
  line-height: 1.45;
}

.campaign-inline-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.campaign-inline-cta__actions .campaign-button {
  flex: 1 1 14rem;
  min-width: min(100%, 14rem);
}

.campaign-media-reveal {
  position: relative;
  width: 100vw;
  margin: var(--space-12) calc(50% - 50vw);
}

.campaign-media-reveal__stage {
  position: relative;
  height: 100vh;
  width: 100%;
  overflow: hidden;
}

.campaign-media-reveal__media-wrapper {
  position: absolute;
  inset: 0;
  overflow: hidden;
  will-change: clip-path;
}

.campaign-media-reveal__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 130%;
  object-fit: cover;
  will-change: transform;
}

@media (max-width: 700px) {
  .campaign-media-reveal__stage {
    height: 60vh;
  }
}

.campaign-content hr {
  height: 0;
  margin: 2.5rem 0;
  border: 0;
  border-top: 1px solid var(--color-border-subtle);
}

.campaign-content table {
  width: 100%;
  margin: 2rem 0;
  border-collapse: collapse;
  font-family: var(--font-sans);
  font-size: 1.05rem;
  line-height: 1.35;
}

.campaign-content td,
.campaign-content th {
  padding: 0.85rem 0.75rem;
  border-bottom: 1px solid var(--color-border-subtle);
  text-align: left;
  vertical-align: top;
}

.campaign-content th {
  color: var(--color-text);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.campaign-content td {
  color: var(--color-text-body);
}

.campaign-modal-trigger {
  width: auto;
  min-width: min(100%, 16rem);
}

.campaign-source-modal {
  position: fixed;
  inset: 0;
  z-index: 90;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

.campaign-source-modal:target {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.campaign-source-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(16, 40, 44, 0.52);
  backdrop-filter: blur(3px);
}

.campaign-source-modal__panel {
  position: relative;
  z-index: 1;
  width: min(100%, 56rem);
  max-height: min(88dvh, 48rem);
  overflow: auto;
  background: #fff;
  border: 1px solid var(--color-border-muted);
  box-shadow: 0 24px 68px rgba(16, 40, 44, 0.24);
}

.campaign-source-modal__header {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem clamp(1rem, 3vw, 1.5rem);
  background: var(--color-accent);
  color: #fff;
}

.campaign-source-modal__header h3 {
  margin: 0;
  color: #fff;
  font-family: var(--font-sans);
  font-size: 1.5rem;
  letter-spacing: 0.02em;
  line-height: 1.1;
  text-transform: uppercase;
}

.campaign-source-modal__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.3rem;
  padding: 0.45rem 0.75rem;
  border: 1px solid var(--color-chart-red);
  border-radius: var(--radius-sm);
  background: var(--color-chart-red);
  color: #fff;
  font-family: var(--font-sans);
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

.campaign-source-modal__close:hover,
.campaign-source-modal__close:focus-visible {
  background: var(--color-chart-red-dark);
  border-color: var(--color-chart-red-dark);
  color: #fff;
  outline: none;
}

.campaign-source-modal__body {
  padding: clamp(1.1rem, 3vw, 1.75rem);
}

.campaign-source-modal__body p,
.campaign-source-modal__body td,
.campaign-source-modal__body th {
  font-size: 1.05rem;
}

.campaign-source-modal__body table {
  margin-bottom: 0;
}

.campaign-content .data-page-accordion {
  background: var(--color-bg-light);
}

.campaign-content .data-page-accordion summary {
  font-size: clamp(1.05rem, 2vw, 1.35rem);
}

.campaign-content .data-page-accordion__body p {
  font-size: clamp(1.08rem, 1.8vw, 1.25rem);
  line-height: 1.55;
}

.campaign-content td p,
.campaign-content th p {
  font-family: var(--font-sans);
  font-size: 1.05rem;
  line-height: 1.35;
}

.campaign-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 0.85rem;
  max-width: 48rem;
  margin: var(--space-16) auto 0;
  padding-inline: 1rem;
  padding-top: var(--space-8);
  border-top: 1px solid var(--color-accent);
}

.campaign-final-actions .campaign-button {
  flex: 1 1 18rem;
  min-width: min(100%, 18rem);
}

.campaign-button--secondary {
  background: transparent;
  color: var(--color-chart-red);
}

.campaign-button--secondary:hover,
.campaign-button--secondary:focus-visible {
  background: color-mix(in srgb, var(--color-chart-red) 8%, #fff);
  color: var(--color-chart-red-dark);
}

.campaign-footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
  padding: 2rem 1rem 6rem;
  border-top: 1px solid var(--color-border-subtle);
  color: var(--color-text-muted);
  font-family: var(--font-sans);
  font-size: 0.95rem;
}

.campaign-footer a {
  color: var(--color-accent);
  text-decoration: none;
}

.campaign-footer a:hover,
.campaign-footer a:focus-visible {
  color: var(--color-link-hover);
  outline: none;
}

@media (max-width: 700px) {
  .campaign-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .campaign-header__cta,
  .campaign-button {
    width: 100%;
  }

  .campaign-hero {
    min-height: 30rem;
    padding-top: 4rem;
    padding-bottom: 7rem;
  }

  .campaign-hero::before {
    background:
      linear-gradient(90deg, rgba(16, 40, 44, 0.92) 0%, rgba(16, 40, 44, 0.78) 56%, rgba(16, 40, 44, 0.34) 100%),
      linear-gradient(0deg, rgba(16, 40, 44, 0.78) 0%, rgba(16, 40, 44, 0.18) 58%);
  }

  .campaign-hero-copy h1 {
    font-size: 2.55rem;
    line-height: 0.98;
  }

  .campaign-intro-card {
    margin: -4.5rem 1rem var(--space-12);
    border-radius: 2.25rem;
  }

  .campaign-intro-card--intro-overlap-triad-grid,
  .campaign-intro-card--intro-overlap-detached-rounded-blocks {
    max-width: none;
  }

  .campaign-intro-card--intro-overlap-detached-rounded-blocks {
    padding: 0;
    border-radius: 0;
  }

  .campaign-intro-triad {
    grid-template-columns: 1fr;
    gap: 1.4rem;
  }

  .campaign-intro-triad__item {
    padding: 1.3rem;
    border-radius: 1.65rem;
  }

  .campaign-content.campaign-intro-card .campaign-intro-triad h2 {
    font-size: 1.3rem;
  }

  .campaign-content.campaign-intro-card .campaign-intro-triad p {
    font-size: 1.08rem;
    line-height: 1.45;
  }

  .campaign-content.campaign-intro-card p,
  .campaign-content.campaign-intro-card p:first-child {
    font-size: 1.16rem;
    line-height: 1.48;
  }
}

@media (min-width: 760px) {
  .campaign-header {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .campaign-header__brand {
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
  }

  .campaign-header__isotipo {
    height: 3rem;
  }

  .campaign-header__wordmark {
    font-size: 3rem;
  }

  .campaign-header__subtitle {
    font-size: 1rem;
    letter-spacing: 0.02em;
    line-height: 1.1;
  }

  .campaign-hero {
    padding-inline: 2rem;
  }

  .campaign-body-copy,
  .campaign-final-actions {
    padding-inline: 2rem;
  }

  .campaign-hero-copy h1 {
    font-size: 3.75rem;
  }

  .campaign-content h3 {
    font-size: 1.5rem;
  }

  .campaign-content p,
  .campaign-content li {
    font-size: 1.5rem;
  }

  .campaign-content .campaign-definition-cards li {
    font-size: 1.2rem;
  }

  .campaign-definition-cards--wide-first ul {
    grid-template-columns: repeat(2, 1fr);
  }

  .campaign-definition-cards--wide-first li:first-child {
    grid-column: 1 / -1;
  }

  .campaign-content blockquote {
    font-size: 1.5rem;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  .campaign-header__cta {
    margin-left: 0.15rem;
    padding: 0.38rem 0.5rem 0.34rem;
    font-size: 0.9rem;
    letter-spacing: 0.04em;
  }
}

@media (max-width: 767px) {
  .campaign-body[data-campaign-mobile-sticky="true"] {
    --campaign-mobile-sticky-height: 5.4rem;
  }

  .campaign-body[data-campaign-mobile-header="true"] .campaign-header {
    align-items: center;
    flex-direction: row;
    gap: 0.8rem;
    transform: translateY(0);
    transition: transform 0.3s ease-in-out;
    will-change: transform;
  }

  .campaign-body[data-campaign-mobile-header="true"] .campaign-header__actions {
    gap: 0;
  }

  .campaign-body[data-campaign-mobile-header="true"].campaign-header-hidden .campaign-header {
    transform: translateY(-100%);
  }

  .campaign-body[data-campaign-mobile-header="true"] .campaign-header__subtitle,
  .campaign-body[data-campaign-mobile-header="true"] .campaign-header__cta {
    display: none;
  }

  .campaign-body[data-campaign-mobile-sticky="true"] .campaign-mobile-sticky {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 999;
    display: flex;
    align-items: center;
    gap: 0.8rem;
    width: 100%;
    min-height: var(--campaign-mobile-sticky-height);
    box-sizing: border-box;
    padding: 0.78rem 0.85rem calc(0.78rem + env(safe-area-inset-bottom));
    border-top: 1px solid color-mix(in srgb, var(--color-accent) 18%, transparent);
    background: #fff;
    box-shadow: 0 -0.65rem 1.65rem rgba(16, 40, 44, 0.16);
    color: var(--color-accent);
    opacity: 0;
    pointer-events: none;
    transform: translateY(110%);
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  }

  .campaign-body[data-campaign-mobile-sticky="true"] .campaign-mobile-sticky[hidden] {
    display: none;
  }

  .campaign-body[data-campaign-mobile-sticky="true"].campaign-mobile-sticky-visible {
    padding-bottom: var(--campaign-mobile-sticky-height);
  }

  .campaign-body[data-campaign-mobile-sticky="true"].campaign-mobile-sticky-visible .campaign-mobile-sticky {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }

  .campaign-mobile-sticky__isotipo {
    flex: 0 0 auto;
    width: 2.35rem;
    height: 2.35rem;
    object-fit: contain;
  }

  .campaign-mobile-sticky__brand {
    flex: 1 1 auto;
    min-width: 0;
    color: var(--color-accent);
    font-family: var(--font-sans);
    font-size: 0.92rem;
    font-weight: 600;
    line-height: 1.12;
  }

  .campaign-mobile-sticky__cta {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 2.55rem;
    padding: 0.62rem 0.72rem;
    border: 1px solid var(--color-chart-red);
    border-radius: var(--radius-sm);
    background: var(--color-chart-red);
    color: #fff;
    font-family: var(--font-sans);
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
  }

  .campaign-mobile-sticky__cta:visited,
  .campaign-mobile-sticky__cta:hover,
  .campaign-mobile-sticky__cta:focus-visible {
    color: #fff;
  }

  .campaign-mobile-sticky__cta::after {
    content: "";
    display: inline-block;
    flex: 0 0 auto;
    width: 1rem;
    height: 1rem;
    margin-left: 0.5rem;
    background: currentColor;
    mask: url("/arrow-right.svg") center / contain no-repeat;
  }

  .campaign-mobile-sticky__cta:hover,
  .campaign-mobile-sticky__cta:focus-visible {
    background: var(--color-chart-red-dark);
    border-color: var(--color-chart-red-dark);
    outline: none;
  }
}
