:root{--background: #ffffff;--foreground: #171717;--base-gold: #b76e79;--rich-gold: #a16778;--soft-gold: #e0bfb8;--alt-gold: #dca1a1;--wine: #3f0920;--copper: #b87333;--brown: #4e3c2f;--tan: #fdf5dc;--peach: #f1ceae;--burnt: #d1895b;--hot-pink: #f64c9d;--lime: #c9e465;--watermelon: #fc6c85;--font-tenor-sans: "Tenor Sans", "Helvetica Neue", Arial, sans-serif;--font-abril-fatface: "Abril Fatface", Georgia, "Times New Roman", serif;--font-pacifico: "Pacifico", cursive;--font-oooh-baby: "Oooh Baby", cursive;--font-geist-sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-geist-mono: ui-monospace, "SFMono-Regular", "Menlo", monospace}@media(prefers-color-scheme:dark){:root{--background: #15100f;--foreground: #f3e8e3;--base-gold: #d98a95;--rich-gold: #cf95a2;--soft-gold: #e7d0ca;--alt-gold: #e6b3b3;--wine: #eaa7bb;--copper: #d9924a;--brown: #c2a692;--tan: #fdf5dc;--peach: #f3d4b6;--burnt: #e2a074;--hot-pink: #ff74b3;--lime: #d6ee7d;--watermelon: #ff8a9c}}body{background:var(--background);color:var(--foreground);font-family:var(--font-tenor-sans),Arial,Helvetica,sans-serif}a{color:var(--wine);text-decoration:underline;text-decoration-color:var(--hot-pink);text-decoration-thickness:2px;text-underline-offset:3px;transition:all .2s ease}a:hover{color:var(--hot-pink);text-decoration-color:var(--wine)}a:focus-visible{outline:2px solid var(--hot-pink);outline-offset:2px;border-radius:2px}blockquote{position:relative;margin:2rem 0;padding:1.5rem 2rem 1.5rem 3rem;background:linear-gradient(135deg,#f64c9d0d,#c9e4650d);border-left:5px solid var(--hot-pink);border-radius:0 8px 8px 0;font-family:var(--font-tenor-sans);font-size:1.125rem;line-height:1.7;font-style:italic;color:var(--wine)}blockquote:before{content:'"';position:absolute;left:.75rem;top:.5rem;font-family:var(--font-tenor-sans);font-size:3rem;line-height:1;color:var(--lime);opacity:.3;font-style:normal}blockquote p{margin:0}blockquote p+p{margin-top:1rem}blockquote cite,blockquote footer{display:block;margin-top:1rem;font-size:.95rem;font-style:normal;color:var(--rich-gold);font-family:var(--font-tenor-sans);font-weight:600}blockquote cite:before,blockquote footer:before{content:"— ";color:var(--hot-pink)}.skip-link{position:absolute;top:-9999px;left:0;z-index:9999;padding:.75rem 1.5rem;background:var(--wine);color:#fff!important;font-family:var(--font-tenor-sans);font-size:.9rem;font-weight:600;letter-spacing:.05em;text-decoration:none!important;border-radius:0 0 4px;&:focus{top:0}}.back-link{font-family:var(--font-tenor-sans);font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--wine);text-decoration:none;opacity:.7;display:inline-block;margin-bottom:2rem;transition:opacity .2s ease;&:hover{color:var(--wine);opacity:1;text-decoration:none}}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}@media(prefers-color-scheme:dark){.skip-link{color:var(--background)!important}}h1,h2,h3{color:var(--wine)}h1{font-family:var(--font-abril-fatface);font-size:2.5rem;font-weight:400;line-height:1.4;color:var(--wine)}h2{font-family:var(--font-tenor-sans);font-size:1.5rem;font-weight:400;color:var(--wine);text-transform:uppercase}h2.abril{font-family:var(--font-abril-fatface);font-size:2rem;font-weight:400;line-height:1.4;text-transform:none}h3{font-family:var(--font-tenor-sans);font-size:1.25rem;font-weight:400;color:var(--wine);text-transform:uppercase}h3.abril{font-family:var(--font-abril-fatface);font-size:1.25rem;font-weight:400;line-height:1.4;text-transform:none}h4{font-family:var(--font-tenor-sans);font-size:1rem;font-weight:700;text-transform:uppercase}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;min-height:100vh;display:flex;flex-direction:column;line-height:1.6;font-size:1.0625rem}img{max-width:100%;height:auto;display:block}p{margin:0 0 1rem}.container{width:100%;max-width:62rem;margin-inline:auto;padding-inline:1.5rem}.page{flex:1;padding-block:3rem 4rem}section{margin-block-end:3.5rem}section>h2{margin-block-end:1.5rem;padding-block-end:.5rem;border-block-end:2px solid var(--soft-gold)}.site-header{border-block-end:1px solid var(--soft-gold);background:color-mix(in srgb,var(--background) 92%,var(--soft-gold));position:sticky;top:0;z-index:50;backdrop-filter:blur(6px)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.75rem}.site-header__brand{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none}.site-header__brand:hover{text-decoration:none}.site-header__logo{width:auto;height:40px}.site-header__name{font-family:var(--font-abril-fatface);font-size:1.35rem;color:var(--wine);line-height:1}.site-nav{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.site-nav a{font-family:var(--font-tenor-sans);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--wine);opacity:.85}.site-nav a:hover,.site-nav a[aria-current=page]{opacity:1;color:var(--hot-pink);text-decoration:none}.hero{padding-block:2rem 1rem}.hero h1{margin-block:0 1rem;max-width:22ch}.hero__titles{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem .9rem;font-family:var(--font-tenor-sans);text-transform:uppercase;letter-spacing:.07em;font-size:.95rem;color:var(--rich-gold)}.hero__titles li{display:inline-flex;align-items:center;gap:.9rem}.hero__titles li:not(:last-child):after{content:"•";color:var(--hot-pink)}.hero__lead{font-size:1.2rem;max-width:60ch;color:var(--brown)}.button{display:inline-block;font-family:var(--font-tenor-sans);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;padding:.7rem 1.4rem;border-radius:999px;border:2px solid var(--wine);color:var(--wine);background:transparent;transition:all .2s ease;cursor:pointer}.button:hover{background:var(--wine);color:var(--background);text-decoration:none}.button--solid{background:var(--wine);color:var(--background)}.button--solid:hover{background:var(--hot-pink);border-color:var(--hot-pink)}.button-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-block-start:1.5rem}.card-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.card{border:1px solid var(--soft-gold);border-radius:14px;padding:1.75rem;background:color-mix(in srgb,var(--background) 94%,var(--peach));display:flex;flex-direction:column;gap:.5rem;transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-4px);box-shadow:0 12px 30px -12px color-mix(in srgb,var(--wine) 40%,transparent)}.card h3{margin:0}.card p{color:var(--brown);flex:1}.card__link{font-family:var(--font-tenor-sans);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.skill-groups{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.skill-group h4{margin:0 0 .75rem;color:var(--rich-gold)}.tag-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.tag-list li{font-family:var(--font-geist-sans);font-size:.85rem;padding:.3rem .75rem;border-radius:999px;background:color-mix(in srgb,var(--lime) 22%,var(--background));border:1px solid color-mix(in srgb,var(--lime) 45%,transparent);color:var(--brown)}.timeline{border-inline-start:2px solid var(--soft-gold);padding-inline-start:1.75rem;margin-inline-start:.5rem}.timeline__item{position:relative;margin-block-end:2.25rem}.timeline__item:before{content:"";position:absolute;inset-inline-start:calc(-1.75rem - 7px);inset-block-start:.4rem;width:12px;height:12px;border-radius:50%;background:var(--hot-pink);border:2px solid var(--background)}.timeline__item h3{margin:0}.timeline__meta{font-family:var(--font-geist-sans);font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;color:var(--rich-gold);margin-block:.15rem .75rem}.entry{padding-block:1.5rem;border-block-end:1px solid var(--soft-gold)}.entry:last-child{border-block-end:none}.entry h3{margin:0 0 .5rem;text-transform:none}.entry__archived{font-family:var(--font-geist-sans);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--rich-gold);margin-inline-start:.5rem;vertical-align:middle;white-space:nowrap}.entry__meta{font-family:var(--font-geist-sans);font-size:.85rem;color:var(--brown);margin:.5rem 0 0}.entry__meta strong{color:var(--rich-gold)}.contact-list{list-style:none;margin:0;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.contact-list dt{font-family:var(--font-tenor-sans);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;color:var(--rich-gold);margin-block-end:.25rem}.site-footer{border-block-start:1px solid var(--soft-gold);padding-block:2rem;font-size:.9rem;color:var(--brown)}.site-footer__inner{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;justify-content:space-between}.site-footer__links{display:flex;gap:1.25rem;flex-wrap:wrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(max-width:40rem){h1{font-size:2rem!important}.site-header__name{display:none}}.print-header{display:none}@media print{@page{size:Letter;margin:.5in}html,body{background:#fff;color:#000;font-size:10pt;line-height:1.4}.site-header,.site-footer,.skip-link,.hero,.no-print{display:none!important}.page{padding:0}.container{max-width:none;padding:0}a{color:#000;text-decoration:none}h1,h2,h3,h4{color:#000}section{margin-block-end:.9rem}h2,h3,h4{break-after:avoid}section>h2{font-size:1rem;border-block-end:1px solid #000;margin-block-end:.6rem;padding-block-end:.25rem}.timeline__item,.entry,.skill-group{break-inside:avoid}.timeline{padding-inline-start:1rem}.timeline__item{margin-block-end:.8rem}.timeline__meta{margin-block:0 .2rem}.skill-groups{grid-template-columns:repeat(3,1fr);gap:.6rem 1rem}.skill-group h4{font-size:9pt;color:#000;margin-block-end:.3rem}.tag-list{gap:.25rem}.tag-list li{background:none;border:1px solid #aaa;color:#000;font-size:8pt;padding:.08rem .4rem}.timeline__item:before{background:#000}.print-header{display:block;margin-block-end:.9rem;padding-block-end:.5rem;border-block-end:2px solid #000}.print-header .print-name{font-family:var(--font-abril-fatface);font-size:1.5rem;line-height:1.1}.print-header .print-contact{font-size:.8rem;margin-block-start:.3rem}}
