:root{color-scheme:light dark;--font-sans: "Segoe UI", Aptos, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "Segoe UI Variable Display", "Segoe UI", Aptos, var(--font-sans);--bg: oklch(.975 .007 86);--bg-soft: oklch(.945 .011 88);--surface: oklch(.993 .004 86);--surface-raised: oklch(.982 .006 86);--text: oklch(.205 .018 250);--text-muted: oklch(.43 .019 250);--text-soft: oklch(.58 .016 250);--border: oklch(.74 .012 86 / .48);--border-strong: oklch(.6 .018 86 / .52);--field: oklch(.95 .008 86);--accent: oklch(.58 .095 74);--accent-strong: oklch(.44 .08 72);--accent-soft: oklch(.91 .035 76);--warm: oklch(.66 .11 74);--success: oklch(.54 .13 152);--danger: oklch(.56 .16 28);--header-height: 76px;--layout-wide: 100%;--layout-padding: clamp(1rem, 4vw, 3.5rem);--section-pad-top: clamp(3.5rem, 7vw, 6rem);--section-pad-bottom: 0;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--grid-line: oklch(.7 .01 86 / .07);--panel-line: oklch(.58 .014 86 / .24);--rule-soft: color-mix(in oklch, var(--panel-line), transparent 24%);--surface-tint: color-mix(in oklch, var(--surface), transparent 18%);--hero-text: var(--text);--hero-muted: var(--text-muted);--hero-overlay-start: oklch(.97 .006 86 / .96);--hero-overlay-mid: oklch(.97 .006 86 / .82);--hero-overlay-fade: oklch(.97 .006 86 / .48);--hero-overlay-end: oklch(.97 .006 86 / .12);--hero-overlay-top: oklch(.97 .006 86 / .2);--hero-overlay-bottom: oklch(.97 .006 86 / .78);--hero-contact-bg: oklch(.965 .006 86 / .82);--hero-rule: color-mix(in oklch, var(--text), transparent 72%);--logo-filter: brightness(0);--logo-opacity: .94;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-sharp: cubic-bezier(.16, 1, .3, 1)}@media(prefers-color-scheme:dark){:root{--bg: oklch(.18 .003 265);--bg-soft: oklch(.215 .003 265);--surface: oklch(.255 .004 265);--surface-raised: oklch(.305 .004 265);--text: oklch(.925 .004 92);--text-muted: oklch(.735 .004 92);--text-soft: oklch(.59 .004 92);--border: oklch(.62 .004 265 / .18);--border-strong: oklch(.72 .005 265 / .26);--field: oklch(.205 .003 265);--accent: oklch(.715 .035 82);--accent-strong: oklch(.825 .032 84);--accent-soft: oklch(.27 .004 265);--warm: oklch(.76 .04 84);--grid-line: oklch(.78 .004 265 / .024);--panel-line: oklch(.78 .004 265 / .14);--hero-text: oklch(.94 .006 92);--hero-muted: oklch(.78 .005 92);--hero-overlay-start: color-mix(in oklch, var(--bg), transparent 0%);--hero-overlay-mid: color-mix(in oklch, var(--bg), transparent 8%);--hero-overlay-fade: color-mix(in oklch, var(--bg), transparent 58%);--hero-overlay-end: transparent;--hero-overlay-top: color-mix(in oklch, var(--bg), transparent 18%);--hero-overlay-bottom: color-mix(in oklch, var(--bg), transparent 0%);--hero-contact-bg: color-mix(in oklch, var(--bg), transparent 10%);--hero-rule: color-mix(in oklch, var(--hero-text), transparent 72%);--logo-filter: brightness(0) invert(1);--logo-opacity: .9}}*{box-sizing:border-box;margin:0;padding:0}html{height:100%;background:var(--bg);scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{height:100%;min-height:100%;font-family:var(--font-sans);color:var(--text);background:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px),linear-gradient(160deg,var(--bg) 0%,var(--bg-soft) 62%,var(--bg) 100%);background-size:72px 72px,72px 72px,auto;background-position:-1px -1px,-1px -1px,0 0;line-height:1.58;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,video,svg{display:block;max-width:100%;height:auto}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}a:focus-visible{color:var(--text);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.32em}p{max-width:70ch}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text);line-height:1.08;letter-spacing:0}.container{width:min(100%,var(--layout-wide));margin-inline:auto;padding-inline:var(--layout-padding)}@media(max-width:768px){:root{--header-height: 72px}}.btn{position:relative;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.78rem 1.12rem;border:1px solid var(--border);border-radius:999px;color:var(--text);background:var(--surface);font-weight:750;cursor:pointer;overflow:hidden;transition:transform .18s var(--ease-out),border-color .18s var(--ease-out),background .18s var(--ease-out),color .18s var(--ease-out)}.btn:after{content:"";position:absolute;inset:auto 0 0;height:1px;background:color-mix(in oklch,var(--accent),transparent 35%);transform:scaleX(0);transform-origin:left;transition:transform .26s var(--ease-sharp)}.btn:hover{transform:translateY(-1px);border-color:var(--accent);background:var(--surface-raised)}.btn:focus-visible{border-color:var(--accent);background:var(--surface-raised)}.btn:hover:after{transform:scaleX(1)}.btn:focus-visible:after{transform:scaleX(1)}.btn-primary{background:var(--text);border-color:var(--text);color:var(--bg)}.btn-primary:hover{background:color-mix(in oklch,var(--text),var(--bg) 8%);border-color:color-mix(in oklch,var(--text),var(--accent) 12%);color:var(--bg)}.btn-primary:focus-visible{background:color-mix(in oklch,var(--text),var(--bg) 8%);border-color:color-mix(in oklch,var(--text),var(--accent) 12%);color:var(--bg)}.btn-secondary{background:var(--accent-soft);border-color:color-mix(in oklch,var(--accent),transparent 58%);color:var(--accent-strong)}.btn-outline{background:transparent}.records-heading{max-width:980px}.records-ledger{display:grid;margin-inline:calc(50% - 50vw);border-top:1px solid var(--rule-soft)}.documents-section{padding-top:clamp(1.05rem,2.5vw,1.8rem)}.documents-heading{display:grid;grid-template-columns:minmax(180px,.3fr) minmax(0,1fr);gap:clamp(1rem,3vw,2rem);align-items:end;max-width:none;margin-bottom:0}.documents-heading p{width:fit-content;margin:0;color:var(--accent-strong);font-size:.76rem;font-weight:850;text-transform:uppercase}.documents-heading h2{max-width:860px;margin:0;font-size:clamp(1.55rem,3vw,2.65rem);line-height:1.12}.documents-ledger{display:grid;margin-inline:calc(50% - 50vw);margin-top:clamp(1rem,2.5vw,1.5rem);border-top:1px solid var(--rule-soft)}.document-row{display:grid;grid-template-columns:minmax(80px,.12fr) minmax(0,1fr) auto;gap:clamp(1rem,3vw,2.4rem);align-items:center;min-height:106px;padding:clamp(1rem,2vw,1.35rem) var(--layout-padding);border-bottom:1px solid var(--rule-soft);transition:background .18s var(--ease-out)}.document-row:hover{background:color-mix(in oklch,var(--surface),transparent 66%)}.document-row>span{width:fit-content;padding:.3rem .58rem;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:.74rem;font-weight:850;text-transform:uppercase}.document-row h3{margin:0 0 .35rem;font-size:clamp(1.12rem,2vw,1.55rem)}.document-row p{margin:0;max-width:820px;color:var(--text-muted)}.document-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem}.document-link{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:.62rem .9rem;border:1px solid var(--panel-line);border-radius:999px;color:var(--text);font-weight:780;transition:border-color .16s var(--ease-out),background .16s var(--ease-out),color .16s var(--ease-out)}.document-link:hover,.document-link:focus-visible{border-color:color-mix(in oklch,var(--accent),transparent 38%);background:var(--surface-raised);color:var(--text);text-decoration:none}.record-row{display:grid;grid-template-columns:minmax(72px,.1fr) minmax(240px,.36fr) minmax(0,1fr);gap:clamp(1rem,3vw,2.5rem);align-items:center;min-height:104px;padding:clamp(.95rem,2.2vw,1.35rem) var(--layout-padding);border-bottom:1px solid var(--rule-soft);transition:background .18s var(--ease-out),color .18s var(--ease-out)}.record-row:hover,.record-row:focus-visible{background:color-mix(in oklch,var(--surface),transparent 64%);text-decoration:none}.record-row:last-child{border-bottom:0}.record-row .record-code{width:fit-content;padding:.3rem .55rem;border:1px solid var(--panel-line);border-radius:999px;color:var(--accent-strong);font-size:.76rem;font-weight:850}.record-row strong{color:var(--text);font-size:clamp(1.1rem,1.8vw,1.55rem);line-height:1.16}.record-row span:last-child{color:var(--text-muted);line-height:1.6}::selection{background:var(--accent-soft);color:var(--text)}:where(a,button,input,textarea,select,[tabindex]):focus{outline:none}*:focus-visible{outline:none}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:color-mix(in oklch,var(--text),transparent 68%);border:3px solid transparent;border-radius:999px;background-clip:padding-box}.whatsapp-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;background:#02060c8f}.whatsapp-modal{width:min(100%,520px);background:var(--surface);border:1px solid var(--panel-line);border-radius:var(--radius-lg);overflow:hidden;animation:panelIn .32s var(--ease-sharp) both}.whatsapp-modal .modal-header,.whatsapp-modal .modal-footer{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.1rem;border-bottom:1px solid var(--panel-line)}.whatsapp-modal .modal-footer{justify-content:flex-end;border-top:1px solid var(--panel-line);border-bottom:0}.whatsapp-modal h3{font-size:1.1rem}.whatsapp-modal .close-btn{width:38px;height:38px;border:1px solid var(--panel-line);border-radius:999px;background:var(--surface-raised);color:var(--text);cursor:pointer;font-size:1.4rem;line-height:1}.whatsapp-modal .modal-body{padding:1.1rem}.whatsapp-modal textarea{width:100%;min-height:130px;resize:vertical;padding:.85rem;color:var(--text);background:var(--field);border:1px solid var(--panel-line);border-radius:var(--radius-md)}.whatsapp-modal .send-btn{min-height:42px;padding:.75rem 1rem;border:1px solid color-mix(in oklch,var(--success),var(--border) 35%);border-radius:999px;background:var(--success);color:#f7f9f7;font-weight:750;cursor:pointer}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(max-width:980px){.documents-heading,.document-row{grid-template-columns:1fr}.document-actions{justify-content:flex-start}.record-row{grid-template-columns:minmax(60px,.18fr) minmax(0,1fr)}.record-row span:last-child{grid-column:2}}@media(max-width:640px){.document-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.record-row{min-height:auto;grid-template-columns:1fr;gap:.5rem}.record-row span:last-child{grid-column:1}}@supports (contain: layout paint){.home-page>section:not(.hero-section),.skills-page .capability-board,.experience-page .experience-list,.projects-page .projects-register,.project-detail-page>section:not(.record-hero),.contact-page .contact-content,.footer{contain:layout paint}}@media(hover:none){.btn:hover{transform:none}.record-row:hover{background:transparent}}@supports (view-transition-name: root){::view-transition-old(root){animation:routeFadeOut .18s var(--ease-out) both}::view-transition-new(root){animation:routeFadeIn .32s var(--ease-sharp) both}}.home-page,.skills-page,.experience-page,.projects-page,.contact-page{animation:pageIn .52s var(--ease-sharp) both}@media(prefers-reduced-motion:no-preference){.main-content :where(section,article).content-reveal{animation:sectionReveal .56s var(--ease-sharp) both}}@keyframes pageIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes routeFadeOut{to{opacity:0;transform:translateY(-4px)}}@keyframes routeFadeIn{0%{opacity:0;transform:translateY(8px)}}@keyframes sectionReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes panelIn{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media print{body{color:#12171a;background:#f6f9fa}.navbar,.footer{display:none}}
