@import "https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible+Mono:wght@200..800&family=Atkinson+Hyperlegible+Next:ital,wght@0,200..800;1,200..800&display=swap";:root{--font-sans:"Atkinson Hyperlegible Next", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"Atkinson Hyperlegible Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--colour-bg:#161512;--colour-bg-card:#22201c;--colour-text:#e3e2dd;--colour-text-muted:#a3a199;--colour-accent:#cbac4d;--colour-accent-hover:#ecd693;--border-color:#323029;--badge-bg:#323029;--badge-text:#dddbd5;--panel-bg:#141412d9;--shadow:0 10px 30px #0006;--container-max-width:810px;--border-radius:12px;--button-radius:999px;--transition-speed:.25s;--panel-height:100px}body.light-mode{--colour-bg:#f3f1ed;--colour-bg-card:#fbfaf9;--colour-text:#252218;--colour-text-muted:#767060;--colour-accent:#a88724;--colour-accent-hover:#73590d;--border-color:#e1ded6;--badge-bg:#e9e7e2;--badge-text:#4d4633;--panel-bg:#fffffdd9;--shadow:0 8px 24px #2d2d2d14}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background-color:var(--colour-bg);color:var(--colour-text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-speed), color var(--transition-speed);min-height:100vh;padding:0;line-height:1.6}.cv-spacer{margin:0 18px}.cv-container{max-width:var(--container-max-width);margin:calc(var(--panel-height) + 24px) auto 40px;background-color:var(--colour-bg-card);border-radius:var(--border-radius);border:1px solid var(--border-color);box-shadow:var(--shadow);transition:background-color var(--transition-speed), border-color var(--transition-speed), box-shadow var(--transition-speed);padding:3rem}.cv-header,.cv-section,.experience-item,.project-card,.certifications-list li[id]{scroll-margin-top:calc(var(--panel-height) + 16px)}.control-panel{z-index:1000;background-color:var(--panel-bg);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);width:100%;transition:background-color var(--transition-speed), border-color var(--transition-speed);padding:12px 24px;position:fixed;top:0;left:0;box-shadow:0 4px 20px #00000026}.panel-inner{max-width:var(--container-max-width);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;display:flex}.panel-title{font-family:var(--font-mono);color:var(--colour-accent);font-size:.95rem;font-weight:700}.panel-actions{gap:12px;display:flex}.language-toggle{border-radius:var(--button-radius);border:1px solid var(--border-color);background-color:var(--badge-bg);gap:6px;padding:2px;display:inline-flex}.language-toggle .btn{padding:6px 10px;font-size:.8rem}.lang-short{display:none}.section-nav{max-width:var(--container-max-width);border-top:1px solid var(--border-color);scrollbar-width:none;-ms-overflow-style:none;gap:8px;margin:10px auto 0;padding-top:10px;display:flex;overflow-x:auto}.section-nav::-webkit-scrollbar{display:none}.section-nav-btn{font-family:var(--font-sans);border-radius:var(--button-radius);border:1px solid var(--border-color);background-color:var(--badge-bg);color:var(--colour-text-muted);cursor:pointer;white-space:nowrap;flex:none;padding:6px 12px;font-size:.78rem;font-weight:650;transition:all .2s}.section-nav-btn:hover,.section-nav-btn:focus-visible{background-color:var(--colour-accent);border-color:var(--colour-accent);color:var(--colour-bg)}.viewport-debug-widget{z-index:2100;border:1px solid var(--border-color);background-color:var(--panel-bg);min-width:210px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);font-family:var(--font-mono);color:var(--colour-text);pointer-events:none;opacity:.95;border-radius:10px;padding:10px 12px;font-size:.76rem;line-height:1.35;position:fixed;bottom:12px;right:12px}.viewport-debug-widget p{margin:0}.viewport-debug-widget .debug-title{letter-spacing:.02em;color:var(--colour-accent);margin-bottom:4px;font-weight:700}.btn{font-family:var(--font-sans);border-radius:var(--button-radius);cursor:pointer;border:1px solid var(--border-color);background-color:var(--badge-bg);color:var(--colour-text);align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:650;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--badge-bg);color:var(--colour-text)}.btn-primary:hover,.btn-secondary:hover,.social-link:hover,.project-link-btn:hover,.popup-nav-btn:hover{background-color:var(--colour-accent);border-color:var(--colour-accent);color:var(--colour-bg)}.btn-secondary{background-color:var(--badge-bg);border-color:var(--border-color);color:var(--colour-text)}.btn i,.social-link i,.project-link-btn i,.popup-nav-btn i{font-size:.9em}.btn-secondary.active{background-color:var(--colour-accent);color:var(--colour-bg);border-color:var(--colour-accent)}h1,h2,h3,h4{font-family:var(--font-sans);color:var(--colour-text);font-weight:700;line-height:1.2}a{color:var(--colour-accent);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;transition:color .2s}a:hover{color:var(--colour-accent-hover)}.section-divider{background-color:var(--border-color);border:0;height:1px;margin:2rem 0}.cv-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.name{letter-spacing:-1px;margin-bottom:.25rem;font-size:2.8rem;display:inline-block}.title-tag{color:var(--colour-accent);font-size:1.15rem;font-weight:600;font-family:var(--font-mono)}.header-contact{flex-direction:column;align-items:flex-end;gap:.35rem;display:flex}.contact-item{align-items:center;gap:8px;font-size:.9rem;display:flex}.contact-item .icon{opacity:.8}.social-links{gap:12px;margin-top:6px;display:flex}.social-link{font-size:.84rem;font-family:var(--font-sans);border-radius:var(--button-radius);padding:7px 12px;font-weight:650;text-decoration:none;color:var(--colour-text)!important}.social-link:hover,.project-link-btn:hover{color:var(--colour-bg)!important}.social-link:after,.project-link-btn:after{content:none!important}.cv-section{flex-direction:column;gap:1rem;display:flex}.section-title{letter-spacing:-.5px;color:var(--colour-text);border-bottom:2px solid var(--colour-accent);width:max-content;padding-bottom:.25rem;font-size:1.4rem}.summary-text{color:var(--colour-text);font-size:1.05rem;line-height:1.7}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.skill-category-card{background-color:var(--colour-bg-card);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.skill-category-card h3{color:var(--colour-accent);font-size:1.05rem;font-family:var(--font-mono);margin-bottom:.75rem}.skill-category-card ul{flex-wrap:wrap;gap:8px;list-style:none;display:flex}.skill-category-card li{font-size:.85rem}.skill-pill-container{flex:none;max-width:100%;display:inline-flex;position:relative}.skill-pill-btn{font-family:var(--font-sans);background-color:var(--badge-bg);color:var(--colour-text);border-radius:var(--button-radius);border:1px solid var(--border-color);cursor:default;text-align:start;align-items:center;gap:6px;max-width:100%;padding:6px 12px;font-size:.85rem;font-weight:650;transition:all .2s;display:inline-flex}.skill-pill-btn.clickable{cursor:pointer}.skill-pill-btn.clickable:hover{border-color:var(--colour-accent);background-color:var(--colour-accent);color:var(--colour-bg)}.skill-pill-btn.faded{opacity:.35;cursor:not-allowed}.skill-nav-popup{background-color:var(--colour-bg-card);border:1px solid var(--colour-accent);z-index:100;white-space:nowrap;border-radius:8px;flex-direction:column;gap:6px;min-width:220px;padding:10px;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000080}.skill-nav-popup:after{content:"";border-style:solid;border-width:6px;border-color:var(--colour-accent) transparent transparent transparent;position:absolute;top:100%;left:50%;transform:translate(-50%)}.popup-title{font-family:var(--font-mono);color:var(--colour-text-muted);text-align:center;margin-bottom:2px;font-size:.72rem}.popup-nav-btn{font-family:var(--font-sans);background-color:var(--badge-bg);color:var(--colour-text);border:1px solid var(--border-color);border-radius:var(--button-radius);cursor:pointer;text-align:left;align-items:center;gap:6px;width:100%;padding:6px 10px;font-size:.82rem;font-weight:650;transition:all .15s;display:inline-flex}.experience-list{flex-direction:column;gap:2rem;display:flex}.experience-item{border-radius:var(--border-radius);border:1px solid #0000;flex-direction:column;gap:.75rem;margin:-1.25rem;padding:1.25rem;transition:background-color 1s,border-color 1s,box-shadow 1s,padding 1s;display:flex}.experience-skills{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.skill-pill-mini{font-family:var(--font-sans);color:var(--colour-text-muted);border-radius:var(--button-radius);border:1px solid var(--border-color);background-color:#0000;padding:3px 9px;font-size:.75rem;font-weight:650}.experience-item.highlight-flash{border-color:var(--colour-accent)!important;background-color:#2a2822!important;box-shadow:0 0 15px #d4af3759!important}.item-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;display:flex}.role-company{flex-direction:column;display:flex}.company-line{margin:0;line-height:1.3}.role{font-size:1.2rem}.company{color:var(--colour-accent);font-size:1rem;font-weight:600}.through-company{color:var(--colour-text-muted);font-size:1rem;font-weight:500}.dates-location{color:var(--colour-text-muted);flex-direction:column;align-items:flex-end;font-size:.9rem;display:flex}.dates{font-family:var(--font-mono);font-weight:600}.highlights{flex-direction:column;gap:.4rem;margin-left:1.5rem;list-style:square;display:flex}.highlights li{color:var(--colour-text);font-size:.95rem}.projects-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.project-card{border-radius:var(--border-radius);background-color:#0000;border:1px solid #0000;flex-direction:column;gap:.75rem;margin:-1.25rem;padding:1.25rem;transition:background-color 1s,border-color 1s,box-shadow 1s,padding 1s;display:flex}.project-card.highlight-flash{border-color:var(--colour-accent)!important;background-color:#2a2822!important;box-shadow:0 0 15px #d4af3759!important}.project-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.project-header h3{font-size:1.15rem}.project-link-btn{white-space:nowrap;font-size:.82rem;font-weight:650}.project-card p{color:var(--colour-text-muted);font-size:.9rem}.project-tech{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.tech-badge{color:var(--colour-text-muted);border-radius:var(--button-radius);border:1px solid var(--border-color);font-size:.75rem;font-family:var(--font-sans);background-color:#0000;padding:3px 9px;font-weight:650}.dual-column-section{grid-template-columns:1fr 1fr;gap:2.5rem;display:grid}.half-width{width:100%}.education-list{flex-direction:column;gap:1.25rem;display:flex}.education-item{flex-direction:column;gap:.25rem;display:flex}.degree{font-size:1.05rem;font-weight:700}.institution{color:var(--colour-accent);font-weight:600}.edu-details{color:var(--colour-text-muted);font-size:.85rem}.certifications-list{flex-direction:column;gap:.5rem;margin-left:1.25rem;list-style:square;display:flex}.certifications-list li{font-size:.95rem;transition:background-color 1s}.certifications-list li.highlight-flash{background-color:#d4af3733;border-radius:4px}.cv-footer{max-width:var(--container-max-width);text-align:center;border-top:1px solid var(--border-color);color:var(--colour-text-muted);margin:0 auto 1.2rem;padding:1.2rem 0;font-size:.85rem}@page{size:A4;margin:1cm}@media print{:root{--colour-bg:#fff;--colour-bg-card:#fff;--colour-text:#000;--colour-text-muted:#333;--colour-accent:#000;--border-color:#ccc;--badge-bg:transparent;--badge-text:#000;--shadow:none}body{color:#000;background-color:#fff;font-size:11pt;line-height:1.4}.no-print{display:none!important}}body:is(.light-mode,.print-preview){color:#000;--colour-bg:#d9d9d9;--colour-bg-card:#fff;--colour-text:#000;--colour-text-muted:#333;--colour-accent:#000;--border-color:#ccc;--badge-bg:transparent;--badge-text:#000;--shadow:none;background-color:#d9d9d9;padding-top:80px}@media print{.cv-container{max-width:100%;box-shadow:none;border:none;margin:0;padding:0}}body:is(.light-mode,.print-preview) .cv-container{background-color:#fff;border:1px solid #777;border-radius:0;width:21cm;min-height:29.7cm;margin:20px auto;padding:1.5cm;box-shadow:0 4px 16px #0000004d}@media print{h1,h2,h3,h4{color:#000!important}a{color:#000;text-decoration:none}a:not([href^=mailto\:]):not([href^=tel\:]):after{content:" (" attr(href) ")";font-size:.9em;font-family:var(--font-mono);color:var(--colour-text-muted)}}body:is(.light-mode,.print-preview) a{color:#000;text-decoration:none}body:is(.light-mode,.print-preview) a:not([href^=mailto\:]):not([href^=tel\:]):after{content:" (" attr(href) ")";font-size:.9em;font-family:var(--font-mono);color:var(--colour-text-muted)}@media print{.section-divider{background-color:#ccc;margin:1.2rem 0}}body:is(.light-mode,.print-preview) .section-divider{background-color:#ccc;margin:1.2rem 0}@media print{.cv-header{flex-direction:column;align-items:flex-start;gap:.5rem}.name{font-size:20pt}.title-tag{font-size:12pt;color:#000!important}.header-contact{align-items:flex-start;gap:.15rem;margin-top:.25rem}.contact-item{font-size:10pt}.contact-item .icon,.social-links{display:none}}body:is(.light-mode,.print-preview) .cv-header{flex-direction:column;align-items:flex-start;gap:.5rem}body:is(.light-mode,.print-preview) .name{font-size:20pt}body:is(.light-mode,.print-preview) .title-tag{font-size:12pt}body:is(.light-mode,.print-preview) .header-contact{align-items:flex-start;gap:.15rem;margin-top:.25rem}body:is(.light-mode,.print-preview) .contact-item{font-size:10pt}body:is(.light-mode,.print-preview) .contact-item .icon,body:is(.light-mode,.print-preview) .social-links{display:none}@media print{.section-title{text-transform:uppercase;letter-spacing:.5px;border-bottom:1.5pt solid #000;margin-bottom:.4rem;font-size:12pt}}body:is(.light-mode,.print-preview) .section-title{text-transform:uppercase;letter-spacing:.5px;border-bottom:1.5pt solid #000;margin-bottom:.4rem;font-size:12pt}@media print{.summary-text{font-size:10.5pt;line-height:1.4}}body:is(.light-mode,.print-preview) .summary-text{font-size:10.5pt;line-height:1.4}@media print{.skills-grid{flex-direction:column;gap:.5rem;display:flex}.skill-category-card{background:0 0;border:none;padding:0}.skill-category-card h3{font-size:10.5pt;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.15rem;font-weight:700}.skill-category-card ul{margin-left:0;display:block}.skill-category-card li{color:#000;background:0 0;border:none;padding:0;font-size:10pt;display:inline}.skill-category-card li:not(:last-child):after{content:", "}.skill-pill-btn{font-size:10pt;font-family:var(--font-sans);color:#000;cursor:default;background:0 0;border:none;padding:0;font-weight:600;display:inline}.experience-skills{margin-top:.15rem;display:block}.skill-pill-mini{color:#333;font-size:9.5pt;font-family:var(--font-sans);background:0 0;border:none;padding:0;font-weight:600;display:inline}.skill-pill-mini:not(:last-child):after{content:", "}.skill-pill-btn.faded{opacity:.35}}body:is(.light-mode,.print-preview) .skills-grid{flex-direction:column;gap:.5rem;display:flex}body:is(.light-mode,.print-preview) .skill-category-card{background:0 0;border:none;padding:0}body:is(.light-mode,.print-preview) .skill-category-card h3{font-size:10.5pt;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.15rem;font-weight:700}body:is(.light-mode,.print-preview) .skill-category-card ul{display:block}body:is(.light-mode,.print-preview) .skill-category-card li{background:0 0;border:none;padding:0;font-size:10pt;display:inline}body:is(.light-mode,.print-preview) .skill-category-card li:not(:last-child):after{content:", "}body:is(.light-mode,.print-preview) .skill-pill-btn{font-size:10pt;font-family:var(--font-sans);cursor:default;background:0 0;border:none;padding:0;font-weight:600;display:inline}body:is(.light-mode,.print-preview) .skill-pill-btn.faded{opacity:.35}body:is(.light-mode,.print-preview) .experience-skills{margin-top:.15rem;display:block}body:is(.light-mode,.print-preview) .skill-pill-mini{color:#333;font-size:9.5pt;font-family:var(--font-sans);background:0 0;border:none;padding:0;font-weight:600;display:inline}body:is(.light-mode,.print-preview) .skill-pill-mini:not(:last-child):after{content:", "}body:is(.light-mode,.print-preview) .experience-item.highlight-flash{box-shadow:none!important;background-color:#ffd!important;border-color:#000!important}@media print{.experience-list{gap:1rem}.experience-item{break-inside:avoid;border:none;gap:.25rem;margin:0;padding:0}}body:is(.light-mode,.print-preview) .experience-list{gap:1rem}body:is(.light-mode,.print-preview) .experience-item{break-inside:avoid;gap:.25rem}@media print{.role{font-size:11pt;font-weight:700}.company,.through-company{font-size:10.5pt;color:#000!important}.dates-location{color:#333;align-items:flex-end;font-size:10pt}.dates{font-family:var(--font-sans);font-weight:700}}body:is(.light-mode,.print-preview) .role{font-size:11pt;font-weight:700}body:is(.light-mode,.print-preview) .company,body:is(.light-mode,.print-preview) .through-company{font-size:10.5pt}body:is(.light-mode,.print-preview) .dates-location{align-items:flex-end;font-size:10pt}body:is(.light-mode,.print-preview) .dates{font-family:var(--font-sans);font-weight:700}@media print{.highlights{gap:.2rem;margin-left:1.2rem}.highlights li{font-size:10pt;color:#000!important}}body:is(.light-mode,.print-preview) .highlights{gap:.2rem;margin-left:1.2rem}body:is(.light-mode,.print-preview) .highlights li{font-size:10pt}@media print{.projects-grid{flex-direction:column;gap:.8rem;display:flex}.project-card{break-inside:avoid;background:0 0;border:none;gap:.15rem;margin:0;padding:0}.project-header h3{font-size:11pt;font-weight:700}.project-link-btn{display:none}.project-card p{color:#000;font-size:10pt}.project-tech{margin-top:.15rem;display:block}.tech-badge{color:#333;font-size:9.5pt;font-family:var(--font-sans);background:0 0;border:none;padding:0;display:inline}.tech-badge:not(:last-child):after{content:", "}}body:is(.light-mode,.print-preview) .projects-grid{flex-direction:column;gap:.8rem;display:flex}body:is(.light-mode,.print-preview) .project-card{break-inside:avoid;background:0 0;border:none;gap:.15rem;margin:0;padding:0}body:is(.light-mode,.print-preview) .project-card.highlight-flash{outline:1px solid #000;animation:none;background-color:#ffd!important}body:is(.light-mode,.print-preview) .project-header h3{font-size:11pt;font-weight:700}body:is(.light-mode,.print-preview) .project-link-btn{display:none}body:is(.light-mode,.print-preview) .project-card p{font-size:10pt}body:is(.light-mode,.print-preview) .project-tech{margin-top:.15rem;display:block}body:is(.light-mode,.print-preview) .tech-badge{font-size:9.5pt;font-family:var(--font-sans);background:0 0;border:none;padding:0;display:inline}body:is(.light-mode,.print-preview) .tech-badge:not(:last-child):after{content:", "}@media print{.dual-column-section{flex-direction:column;gap:1rem;display:flex}.education-list{gap:.5rem}.education-item{break-inside:avoid}.degree{font-size:11pt}.institution{font-size:10.5pt;color:#000!important}.edu-details{color:#333;font-size:10pt}.certifications-list{gap:.2rem;margin-left:1.2rem}.certifications-list li{font-size:10pt}}body:is(.light-mode,.print-preview) .dual-column-section{flex-direction:column;gap:1rem;display:flex}body:is(.light-mode,.print-preview) .education-list{gap:.5rem}body:is(.light-mode,.print-preview) .education-item{break-inside:avoid}body:is(.light-mode,.print-preview) .degree{font-size:11pt}body:is(.light-mode,.print-preview) .institution{font-size:10.5pt}body:is(.light-mode,.print-preview) .edu-details{font-size:10pt}body:is(.light-mode,.print-preview) .certifications-list{gap:.2rem;margin-left:1.2rem}body:is(.light-mode,.print-preview) .certifications-list li{font-size:10pt}body:is(.light-mode,.print-preview) .certifications-list li.highlight-flash{background-color:#ffd;animation:none}@media print{body:is(.light-mode,.dark-mode,.print-preview){color:#000!important;background:#fff!important;padding-top:0!important}body:is(.light-mode,.dark-mode,.print-preview) .cv-container{width:auto!important;max-width:100%!important;min-height:0!important;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;margin:0!important;padding:0!important}body:is(.light-mode,.dark-mode,.print-preview) .experience-item,body:is(.light-mode,.dark-mode,.print-preview) .project-card,body:is(.light-mode,.dark-mode,.print-preview) .skill-category-card{box-shadow:none!important;background:0 0!important;border:none!important}body:is(.light-mode,.dark-mode,.print-preview) .highlight-flash,body:is(.light-mode,.dark-mode,.print-preview) .project-card.highlight-flash,body:is(.light-mode,.dark-mode,.print-preview) .certifications-list li.highlight-flash{box-shadow:none!important;background:0 0!important;border-color:#0000!important;outline:none!important}}@media screen and (width<=640px){.control-panel{padding:10px 14px}.panel-inner{gap:8px}.panel-tagline{display:none}.panel-actions{flex-wrap:nowrap;gap:8px;display:flex}.btn-label{display:none}.panel-actions .btn{padding:8px 10px}.panel-actions .icon-btn{border-radius:50%;justify-content:center;width:38px;height:38px;padding:0}.icon-btn>span{justify-content:center;align-items:center;display:inline-flex}.icon-btn .btn-label{display:none}.language-toggle{gap:4px}.lang-full{display:none}.lang-short{display:inline}.language-toggle .lang-btn{padding:6px 10px}.section-nav{justify-content:flex-start}}@media screen and (width<=480px){body.dark-mode{--panel-bg:#141412f0;--border-color:#3e3b32}body.light-mode{--panel-bg:#fffffdf0;--shadow:0 6px 18px #2d2d2d14}html{font-size:15px}.cv-spacer{margin:0 10px}.control-panel{padding:10px 12px}.panel-inner{align-items:center;gap:8px}.panel-title{font-size:.82rem}.viewport-debug-widget{min-width:180px;padding:8px 10px;font-size:.68rem;bottom:8px;right:8px}.cv-container{border-radius:10px;padding:1rem}.cv-header{flex-direction:column;gap:1rem}.name{letter-spacing:-.5px;font-size:1.85rem}.title-tag{font-size:.98rem}.header-contact{align-items:flex-start;width:100%}.social-links{flex-wrap:wrap;gap:8px}.social-link,.project-link-btn{justify-content:center;width:100%}.section-title{width:100%;font-size:1.15rem}.summary-text{font-size:.98rem;line-height:1.6}.skills-grid,.projects-grid,.dual-column-section{grid-template-columns:1fr;gap:1rem;display:grid}.skill-category-card,.project-card,.experience-item{margin:0;padding:.95rem}.skill-nav-popup{white-space:normal;min-width:min(270px,100vw - 36px);left:0;transform:translate(0)}.skill-nav-popup:after{left:24px;transform:none}.item-header{flex-direction:column;gap:.45rem}.dates-location{align-items:flex-start;font-size:.84rem}.highlights,.certifications-list{margin-left:1rem}.cv-footer{margin-bottom:.9rem;padding:.9rem 0;font-size:.78rem}}
