/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@layer theme, base;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
    'Noto Color Emoji';
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
    monospace;
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji');
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  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;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-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: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden='until-found'])) {
    display: none !important;
  }
}

/* Platform-owned font declarations. No remote fetch is performed by the builder. */

:root{--bg:#f4f1ea;--surface:#fffcf7;--text:#172536;--muted:#5e6872;--accent:#b28a52;--on-accent:#172536;--accent-text:#8a642f;--border:#d8d0c3;}[data-theme="dark"]{--bg:#101923;--surface:#182431;--text:#f4f1ea;--muted:#b4bec7;--accent:#c09a62;--on-accent:#101923;--accent-text:#d5b37b;--border:#354452;}body{font-family:Inter,sans-serif;background:var(--bg);color:var(--text);}h1,h2,h3{font-family:"Playfair Display",serif;}
*{box-sizing:border-box;min-width:0}html,body{margin:0;padding:0}body{overflow-wrap:anywhere}main{min-width:0}.hero,.summary-section,.competencies,.experience,.info-section,.personal{width:100%;max-width:100%;min-width:0}.hero>*,.summary-section>*,.info-columns>*,.personal-grid>*{min-width:0}
.site-header{position:relative;z-index:10;border-bottom:1px solid var(--border);background:var(--surface)}.header-inner{max-width:1400px;margin:auto;padding:1.25rem 5vw;display:flex;align-items:center;gap:2rem}.identity{display:grid;gap:.2rem;min-width:220px}.brand{font-family:"Playfair Display",serif;font-size:1.15rem;font-weight:600;letter-spacing:.08em;text-decoration:none;color:var(--text)}.identity span,.direct a{font-size:.72rem;color:var(--muted);text-decoration:none}.nav{display:flex;align-items:center;gap:1.5rem;margin-left:auto}.direct{display:grid;gap:.25rem}.direct a:hover,.footer-contact a:hover{color:var(--accent-text)}.lang-switch{display:flex;gap:.55rem}.mobile-menu-btn{color:var(--text);background:transparent;border:1px solid var(--border);padding:.55rem}.mobile-menu{background:var(--surface);border-top:1px solid var(--border);padding:1rem 5vw}.nav-links{gap:1rem}.nav-link{color:var(--text);text-decoration:none;font-size:.78rem}.nav-link:hover{color:var(--accent-text)}@media (min-width:769px){.site-header{position:sticky;top:0}.mobile-menu-btn,.mobile-menu{display:none}.nav-links{display:flex}.nav>.nav-controls{display:flex}.header-inner{flex-wrap:nowrap}}@media (max-width:768px){.header-inner{display:grid;grid-template-columns:1fr auto;align-items:start;padding:1rem 6vw}.identity{min-width:0}.direct{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.75rem 1rem}.nav-links,.nav>.nav-controls{display:none}.mobile-menu-btn{display:block}.mobile-menu .nav-controls{display:flex;gap:.8rem;margin-top:1rem}.mobile-menu .nav-links{display:grid;gap:.8rem}.mobile-menu .nav-link{display:block}}
.site-footer{border-top:1px solid var(--border);background:var(--surface)}.footer-inner{max-width:1400px;margin:auto;padding:3rem 5vw;display:grid;grid-template-columns:1fr auto;gap:3rem}.site-footer p{margin:.3rem 0;color:var(--muted);font-size:.85rem}.footer-contact{display:flex;gap:1rem;margin-top:1rem}.footer-contact a{color:var(--text);font-size:.85rem}.footer-groups{display:flex;gap:2rem}.footer-groups h3{font-family:Inter,sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-text)}.footer-links{display:grid;gap:.5rem}.footer-links a{color:var(--muted);font-size:.78rem;text-decoration:none}@media(max-width:768px){.footer-inner{grid-template-columns:1fr;padding:2.5rem 6vw}.footer-groups{display:grid;gap:1.5rem}.footer-contact{flex-direction:column;gap:.5rem}}
/* Styled with utilities in the TSX. */
.hero,.summary-section,.competencies,.experience,.info-section,.personal{max-width:1400px;min-width:0;margin:auto;padding:clamp(3rem,7vw,8rem) clamp(1.25rem,6vw,6rem);overflow-wrap:anywhere}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(1.5rem,5vw,8rem);align-items:center;min-height:70vh}.eyebrow{display:block;color:var(--accent-text);font-size:.7rem;letter-spacing:.18em;font-weight:700}.hero h1{margin:.7rem 0;font-family:"Playfair Display",serif;font-size:clamp(2.65rem,7vw,6.4rem);line-height:1.05;color:var(--text);overflow-wrap:anywhere}.role{font-size:clamp(1.1rem,2vw,1.5rem);font-weight:600}.location{color:var(--muted)}.contact-links{display:flex;flex-wrap:wrap;min-width:0;gap:1rem 1.5rem;margin-top:2rem}.contact-links a{color:var(--accent-text);text-decoration:none;border-bottom:1px solid var(--accent);overflow-wrap:anywhere}.summary-panel,.summary-reading{min-width:0;background:var(--text);color:var(--surface);padding:clamp(2rem,4vw,5rem);border-left:4px solid var(--accent)}.summary-panel p,.summary-reading p{margin-top:1.2rem;max-width:65ch;line-height:1.8}.summary-section{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(1.5rem,4vw,4rem)}.section-heading h2,.info-section h2,.personal h2{font-family:"Playfair Display",serif;font-size:clamp(1.9rem,4vw,3.5rem);line-height:1.12;margin-top:.7rem;color:var(--text);overflow-wrap:anywhere}.competencies{background:var(--surface)}.competency-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--border)}.competency-grid div{min-width:0;padding:1.4rem 0;border-bottom:1px solid var(--border);display:flex;gap:1rem;align-items:baseline;font-weight:600;overflow-wrap:anywhere}.competency-grid span{flex:none;color:var(--accent-text);font-size:.72rem;letter-spacing:.1em}.timeline{min-width:0;border-left:1px solid var(--accent);padding-left:clamp(1rem,3vw,2rem)}.timeline article{min-width:0;padding:0 0 3rem}.timeline h3{font-size:clamp(1.05rem,2vw,1.2rem);overflow-wrap:anywhere}.timeline p{max-width:70ch;line-height:1.7;overflow-wrap:anywhere}.timeline p:first-of-type{color:var(--accent-text);font-size:.85rem}.info-columns,.personal-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);margin-top:2rem}.info-columns div,.personal-grid div{min-width:0;border-top:1px solid var(--border);padding-top:1rem}.info-columns h3,.personal-grid span{display:block;color:var(--muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;overflow-wrap:anywhere}.personal{border-top:2px solid var(--accent)}.personal-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.personal-grid strong{display:block;margin-top:.6rem;overflow-wrap:anywhere}@media(max-width:700px){.hero,.summary-section,.info-columns,.personal-grid{grid-template-columns:minmax(0,1fr);gap:2rem}.hero{min-height:auto}.competency-grid{grid-template-columns:minmax(0,1fr)}.hero,.summary-section,.competencies,.experience,.info-section,.personal{padding-top:4rem;padding-bottom:4rem}.personal-grid{gap:1rem}}@media(min-width:701px) and (max-width:1100px){.hero,.summary-section{gap:2rem}.hero,.summary-section,.competencies,.experience,.info-section,.personal{padding-left:3rem;padding-right:3rem}.personal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}