@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}: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)){::placeholder{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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.grid{display:grid}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--olive-ink:#2f3a1d;--olive-deep:#202814;--warm-lime:#cfff74;--soft-lilac:#e8deff;--off-white:#f5f2e8;--surface-olive:#1c2311d1;--border-subtle:#cfff7429;--text-muted:#f5f2e8ad;--nav-height:58px;--page-gutter:clamp(1rem, 4vw, 4.5rem);--section-space:clamp(7rem, 14vw, 13rem);--font-sans:"Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono:"Cascadia Code", "SFMono-Regular", Consolas, monospace;--page-text:var(--off-white);--dot-default:#e8deff21;--dot-revealed:#cfff74b8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--olive-ink:#f2efe5;--olive-deep:#253315;--surface-olive:#fffcf2d6;--border-subtle:#2f3a1d2e;--text-muted:#526044;--page-text:#2f3a1d;--dot-default:#2f3a1d29;--dot-revealed:#66812d8f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:8.5rem}body{background:var(--olive-ink);min-height:100vh;color:var(--page-text);font-family:var(--font-sans);text-rendering:optimizelegibility;margin:0;transition:color .26s,background-color .26s;overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}.dot-grid{--cursor-x:-500px;--cursor-y:-500px;z-index:0;pointer-events:none;background:radial-gradient(circle at 50% -10%, #cfff740b, transparent 38%), var(--olive-ink);position:fixed;inset:0;overflow:hidden}.dot-grid:before,.dot-grid:after{content:"";background-position:50%;background-size:26px 26px;position:absolute;inset:0}.dot-grid:before{background-image:radial-gradient(circle, var(--dot-default) 1.2px, transparent 1.35px)}.dot-grid:after{background-image:radial-gradient(circle, var(--dot-revealed) 1.25px, transparent 1.45px);-webkit-mask-image:radial-gradient(circle 230px at var(--cursor-x) var(--cursor-y), #000 0%, #000000d1 24%, #0000003d 68%, transparent 100%);-webkit-mask-image:radial-gradient(circle 230px at var(--cursor-x) var(--cursor-y), #000 0%, #000000d1 24%, #0000003d 68%, transparent 100%);-webkit-mask-image:radial-gradient(circle 230px at var(--cursor-x) var(--cursor-y), #000 0%, #000000d1 24%, #0000003d 68%, transparent 100%);mask-image:radial-gradient(circle 230px at var(--cursor-x) var(--cursor-y), #000 0%, #000000d1 24%, #0000003d 68%, transparent 100%)}.site-shell{z-index:1;position:relative}.floating-nav-shell{z-index:90;isolation:isolate;pointer-events:none;grid-template-columns:minmax(48px,1fr) auto minmax(48px,1fr);align-items:center;width:min(100% - 2rem,1320px);display:grid;position:fixed;top:1.5rem;left:50%;transform:translate(-50%)translateZ(0)}.nav-control,.nav-pill{border:1px solid var(--border-subtle);background:var(--surface-olive);-webkit-backdrop-filter:blur(14px);pointer-events:auto;box-shadow:0 14px 40px #0d11081f}.nav-control{min-width:48px;height:48px;color:var(--page-text);border-radius:999px;justify-content:center;align-items:center;transition:color .24s,border-color .24s,background-color .24s,transform .24s;display:inline-flex}.nav-theme-control{cursor:pointer;justify-self:start}.nav-theme-control:hover{color:var(--warm-lime);border-color:#cfff747a;transform:rotate(5deg)}.theme-toggle-icons{width:19px;height:19px;display:block;position:relative}.theme-toggle-icons svg{transition:opacity .24s,transform .28s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.theme-icon-sun{opacity:0;transform:rotate(-40deg)scale(.65)}.theme-icon-moon,:root[data-theme=light] .theme-icon-sun{opacity:1;transform:rotate(0)scale(1)}:root[data-theme=light] .theme-icon-moon{opacity:0;transform:rotate(40deg)scale(.65)}.nav-call-control{cursor:pointer;justify-self:end;gap:.55rem;padding:0 1.15rem;font-size:.875rem;font-weight:650}.nav-right-controls{pointer-events:auto;justify-self:end;align-items:center;gap:.55rem;display:flex}.nav-account{position:relative}.nav-account-control{cursor:pointer;gap:.45rem;width:auto;max-width:190px;padding:0 .7rem}.nav-account-control.is-owner{border-color:#cfff7461;box-shadow:inset 0 0 0 1px #cfff740f}.nav-account-avatar{background-position:50%;background-size:cover;border:1px solid #cfff7457;border-radius:50%;flex:none;width:28px;height:28px}.nav-account-label{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:650;overflow:hidden}.nav-account-chevron{opacity:.58;flex:none}.nav-account-placeholder{width:48px;height:48px;display:block}.nav-account-menu{z-index:10;border:1px solid var(--border-subtle);width:min(280px,100vw - 2rem);color:var(--page-text);background:var(--surface-olive);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:18px;gap:.35rem;padding:.55rem;display:grid;position:absolute;top:calc(100% + .65rem);right:0;box-shadow:0 20px 54px #080c0547}.nav-account-identity{border-bottom:1px solid var(--border-subtle);gap:.15rem;padding:.55rem .65rem .7rem;display:grid}.nav-account-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.nav-account-identity span,.nav-account-menu p{color:var(--text-muted);margin:0;font-size:.72rem;line-height:1.45}.nav-account-menu>button,.nav-account-menu>a{min-height:42px;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:.6rem;padding:.55rem .65rem;font-size:.78rem;text-decoration:none;display:flex}.nav-account-menu>button:hover,.nav-account-menu>a:hover,.nav-account-menu>button:focus-visible,.nav-account-menu>a:focus-visible{background:#cfff7412;border-color:#cfff743d;outline:none}.nav-account-menu svg{flex:none;width:17px;height:17px}.nav-owner-mark{color:var(--warm-lime);align-items:center;gap:.4rem;padding:.45rem .65rem .25rem;font-size:.68rem;display:flex}.nav-pill{min-height:var(--nav-height);border-radius:999px;justify-content:center;align-items:center;gap:.2rem;padding:.35rem;display:flex}.nav-link{min-height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 1.05rem;font-size:.875rem;font-weight:580;transition:color .24s,background-color .24s,box-shadow .24s}.nav-link:hover,.nav-link:focus-visible,.nav-call-control:hover,.nav-call-control:focus-visible{color:var(--warm-lime);border-color:#cfff7457}.nav-call-control:hover{transform:translateY(-1px)}.nav-link[aria-current=page]{color:var(--olive-deep);background:var(--warm-lime);box-shadow:0 0 24px #cfff7421}.nav-link:focus-visible,.nav-control:focus-visible,.portfolio-assistant button:focus-visible,.portfolio-assistant input:focus-visible,.scroll-indicator:focus-visible,.site-footer a:focus-visible{outline:2px solid var(--warm-lime);outline-offset:3px}.anchor-section{width:min(100%,1440px);min-height:78vh;padding:var(--section-space) var(--page-gutter);margin:0 auto;scroll-margin-top:8.5rem}.hero-section{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100svh;padding-top:clamp(7.5rem,12vh,9rem);padding-bottom:2.5rem;display:flex}.eyebrow{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.75rem;font-weight:600}h1,h2,p{text-wrap:balance}h1,h2{letter-spacing:-.055em;margin:0;line-height:.94}.content-section h1{max-width:11ch;font-size:clamp(4rem,12vw,10rem);font-weight:670}h2{max-width:13ch;font-size:clamp(3rem,8vw,7rem);font-weight:620}.hero-portrait-wrap{flex:none;width:230px;height:238px;position:relative;overflow:hidden}.hero-portrait{object-fit:cover;object-position:center 22%;width:100%;height:100%;-webkit-mask-image:linear-gradient(#000 0% 88%,#0000 100%);mask-image:linear-gradient(#000 0% 88%,#0000 100%)}.hero-introduction{margin-top:1.1rem}.hero-eyebrow{margin-bottom:.75rem}.hero-heading{max-width:18ch;font-size:clamp(2rem,3.7vw,3.5rem);font-weight:660;line-height:1}.hero-heading span{color:var(--warm-lime);background:linear-gradient(110deg, var(--warm-lime), #e4ffad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-supporting{max-width:620px;color:var(--soft-lilac);margin:1rem auto 0;font-size:clamp(.92rem,1.15vw,1.05rem);line-height:1.55}.hero-chat-wrap{width:min(760px,100vw - 48px);margin-top:1.5rem}.portfolio-assistant{width:100%;min-height:340px;color:var(--off-white);text-align:left;-webkit-backdrop-filter:blur(14px);background:#1c2311d1;border:1px solid #cfff742e;border-radius:28px;grid-template-rows:1fr auto auto;gap:.85rem;padding:1.2rem;display:grid;box-shadow:0 22px 70px #0d11082e}.assistant-messages{overscroll-behavior:contain;scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;gap:.75rem;height:190px;min-height:190px;padding:.15rem .2rem .15rem 0;display:flex;overflow-y:auto}.assistant-messages::-webkit-scrollbar{display:none}.assistant-message{border-radius:17px;max-width:86%;padding:.8rem .95rem}.assistant-message-assistant{background:#e8deff0e;border:1px solid #e8deff1a;align-self:flex-start}.assistant-message-user{color:var(--olive-deep);background:var(--warm-lime);align-self:flex-end}.assistant-message-label{color:inherit;font-family:var(--font-mono);letter-spacing:.08em;opacity:.68;text-transform:uppercase;margin-bottom:.35rem;font-size:.65rem;font-weight:700;display:block}.assistant-message p{white-space:pre-line;text-wrap:pretty;margin:0;font-size:.92rem;line-height:1.5}.assistant-message-loading p{align-items:center;gap:.45rem;display:inline-flex}.assistant-message-loading svg{width:15px;height:15px;color:var(--warm-lime);animation:.8s linear infinite assistant-loading-spin}@keyframes assistant-loading-spin{to{transform:rotate(360deg)}}.assistant-inline-action{color:var(--warm-lime);cursor:pointer;background:#cfff740e;border:1px solid #cfff743d;border-radius:999px;align-items:center;gap:.35rem;margin-top:.65rem;padding:.36rem .58rem;font-size:.8rem;font-weight:650;text-decoration:none;transition:border-color .22s,background-color .22s,transform .22s;display:inline-flex}.assistant-inline-action:hover{background:#cfff741a;border-color:#cfff7485;transform:translateY(-1px)}.assistant-inline-action:hover svg{transform:translate(2px)}.assistant-inline-action:focus-visible{outline:2px solid var(--warm-lime);outline-offset:3px}.assistant-inline-action svg{flex:none;transition:transform .22s}.assistant-suggestions{flex-wrap:wrap;justify-content:center;gap:.45rem;display:flex}.assistant-suggestions button{min-height:34px;color:var(--text-muted);cursor:pointer;background:#0b0f0747;border:1px solid #e8deff1f;border-radius:999px;padding:0 .75rem;font-size:.76rem;transition:color .23s,border-color .23s,background-color .23s}.assistant-suggestions button:hover{color:var(--warm-lime);background:#cfff740f;border-color:#cfff7457}.assistant-form{background:#0b0f077a;border:1px solid #e8deff1f;border-radius:999px;grid-template-columns:1fr auto;align-items:center;gap:.65rem;padding:.38rem .42rem .38rem 1rem;display:grid}.assistant-form:focus-within{border-color:#cfff747a;box-shadow:0 0 0 3px #cfff7412}.assistant-form input{min-width:0;color:var(--off-white);background:0 0;border:0;outline:0;font-size:.9rem}.assistant-form input::placeholder{color:#f5f2e86b}.assistant-form button{width:42px;height:42px;color:var(--olive-deep);background:var(--warm-lime);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;transition:opacity .22s,transform .22s,background-color .22s;display:inline-flex}.assistant-form button:hover:not(:disabled){background:#ddff9e;transform:translateY(-1px)}.assistant-form button:disabled{cursor:not-allowed;opacity:.32}.scroll-indicator{color:var(--text-muted);flex-direction:column;align-items:center;gap:.3rem;margin-top:1.1rem;font-size:.74rem;text-decoration:none;transition:color .22s;display:inline-flex}.scroll-indicator:hover{color:var(--warm-lime)}.scroll-indicator svg{animation:1.8s ease-in-out infinite scroll-cue}.hero-enter{opacity:0;animation:.56s cubic-bezier(.22,1,.36,1) forwards hero-reveal}.hero-enter-portrait{animation-delay:80ms}.hero-enter-heading{animation-delay:.15s}.hero-enter-supporting{animation-delay:.22s}.hero-enter-chat{animation-delay:.29s}.hero-enter-scroll{animation-delay:.36s}@keyframes hero-reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll-cue{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.about-section{border-top:1px solid #cfff7424;min-height:auto}.about-heading{justify-content:space-between;align-items:end;margin-bottom:clamp(2rem,4vw,3.5rem);display:flex}.about-heading h2{letter-spacing:-.055em;max-width:none;margin:0;font-size:clamp(2.6rem,5vw,5.25rem);line-height:.92}.about-grid{grid-template-columns:minmax(240px,.9fr) minmax(320px,1.12fr) minmax(300px,1fr);grid-template-areas:"identity experience experience""mindset visual craft";align-items:stretch;gap:clamp(.75rem,1.3vw,1.15rem);display:grid}.about-card,.dynamic-about-image,.location-card{border:1px solid var(--border-subtle);background:#1b2210db;border-radius:clamp(1.4rem,2vw,1.85rem);box-shadow:0 24px 65px #0c100729}.about-card{padding:clamp(1.25rem,2vw,2rem)}.identity-card{background:linear-gradient(145deg,#cfff7417,#0000 55%),#1b2210e6;flex-direction:column;grid-area:identity;justify-content:flex-end;min-height:238px;display:flex}.identity-name,.identity-role,.experience-hint{text-transform:uppercase;margin:0}.identity-name{letter-spacing:-.05em;max-width:10ch;font-size:clamp(1.55rem,2.4vw,2.65rem);font-weight:760;line-height:.94}.identity-role{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.18em;margin-top:1.1rem;font-size:.7rem;font-weight:700}.experience-group{grid-area:experience;min-width:0;min-height:238px;padding:1.15rem 1.5rem;overflow:hidden}.experience-hint{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.14em;margin-bottom:1rem;font-size:.65rem;font-weight:700}.experience-stack{perspective:900px;justify-content:center;gap:.8rem;height:164px;display:flex;overflow:hidden}.experience-card{width:220px;min-width:0;height:158px;color:var(--off-white);cursor:pointer;text-align:left;background:linear-gradient(145deg,#cfff740b,#0000 60%),#141a0cd9;border:1px solid #e8deff1c;border-radius:1.15rem;flex-direction:column;flex:0 220px;align-items:flex-start;padding:.8rem .85rem;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .3s,border-color .3s,background-color .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 28px #0a0d062e}.experience-card:first-child{transform:translateY(78px)rotate(-2.2deg)}.experience-card:nth-child(2){transform:translateY(73px)rotate(.8deg)}.experience-card:nth-child(3){transform:translateY(79px)rotate(2.2deg)}.experience-card[data-active]{z-index:2;background-color:#252f15f5;border-color:#cfff748c;transform:translateY(4px)rotate(0);box-shadow:0 24px 42px #0a0d064d}.experience-card[data-dimmed]{opacity:.52}.experience-card:focus,.mindset-image-button:focus-visible,.location-card:focus-visible,.tech-ticker:focus-visible{outline:2px solid var(--warm-lime);outline-offset:3px}.experience-number{color:var(--warm-lime);font-family:var(--font-mono);margin-bottom:.5rem;font-size:.58rem}.experience-title{white-space:nowrap;text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(.72rem,.85vw,.82rem);font-weight:720}.experience-description{color:var(--text-muted);opacity:0;-webkit-line-clamp:5;-webkit-box-orient:vertical;margin-top:.4rem;font-size:.65rem;line-height:1.32;transition:opacity .26s 80ms,transform .26s 80ms;display:-webkit-box;overflow:hidden;transform:translateY(5px)}.experience-card[data-active] .experience-description{opacity:1;-webkit-line-clamp:initial;display:block;overflow:visible;transform:translateY(0)}.about-visual-column{grid-area:visual;grid-template-rows:minmax(440px,1fr) 166px;gap:clamp(.75rem,1.3vw,1.15rem);min-width:0;display:grid}.dynamic-about-image,.location-card{position:relative;overflow:hidden}.dynamic-about-image{background:var(--olive-deep);border-color:#cfff7447;min-height:440px;margin:0}.dynamic-about-image img,.location-card img,.mindset-image-button img{object-fit:cover}.dynamic-about-image img{animation:1.05s cubic-bezier(.22,1,.36,1) .18s both about-image-in}.dynamic-about-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 60%,#0c100794);position:absolute;inset:0}.dynamic-about-image figcaption{z-index:1;color:#f5f2e8d1;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:.65rem;position:absolute;bottom:1rem;left:1rem;right:1rem}@keyframes about-image-in{0%{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}.dynamic-about-image img.motion-reduced{animation:none}.location-card{min-height:166px}.location-overlay{background:linear-gradient(90deg,#11160aeb,#11160a66);position:absolute;inset:0}.location-scan{z-index:1;pointer-events:none;background:linear-gradient(#0000,#cfff74b8 20% 80%,#0000);width:1px;animation:4.2s linear infinite location-scan;position:absolute;top:0;bottom:0;left:-2%;box-shadow:0 0 12px #cfff7438}@keyframes location-scan{0%{left:-2%}to{left:102%}}.location-copy{z-index:1;justify-content:space-between;align-items:end;gap:1rem;height:100%;padding:1.25rem;display:flex;position:relative}.location-copy h3,.location-copy p{text-transform:uppercase;margin:0}.location-copy h3{letter-spacing:-.025em;font-size:clamp(1.05rem,1.5vw,1.35rem)}.location-copy p,.location-time span{color:#f5f2e8b8;font-family:var(--font-mono);letter-spacing:.06em;font-size:.6rem}.location-copy p{margin-top:.4rem}.location-time{flex-direction:column;align-items:flex-end;display:flex}.location-time time{color:var(--warm-lime);font-size:1.25rem;font-weight:720}.mindset-card{flex-direction:column;grid-area:mindset;min-height:624px;display:flex;overflow:hidden}.about-card-title{letter-spacing:-.045em;width:max-content;margin:0 0 1.35rem;font-size:clamp(1.9rem,2.6vw,2.8rem);position:relative}.about-card-title:after{background:var(--warm-lime);content:"";transform-origin:0;border-radius:999px;height:2px;position:absolute;bottom:-.45rem;left:0;right:0;transform:scaleX(.55)}.mindset-intro,.mindset-outro,.craft-lead,.craft-copy,.craft-availability p{color:var(--text-muted);margin:0;line-height:1.55}.mindset-intro strong,.mindset-outro strong,.craft-lead strong{color:var(--off-white);font-weight:680}.mindset-stack{height:285px;margin:1.65rem 0;position:relative}.mindset-image-button{background:var(--olive-deep);cursor:pointer;transform-origin:bottom;border:1px solid #e8deff33;border-radius:1.15rem;width:min(68%,210px);height:255px;padding:0;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .32s,border-color .32s;position:absolute;top:50%;left:50%;overflow:hidden}.mindset-image-button[data-stack-index="0"]{z-index:1;transform:translate(-64%,-48%)rotate(-8deg)scale(.88)}.mindset-image-button[data-stack-index="1"]{z-index:2;transform:translate(-28%,-51%)rotate(3deg)scale(.91)}.mindset-image-button[data-stack-index="2"]{z-index:1;transform:translate(-8%,-47%)rotate(9deg)scale(.86)}.mindset-image-button[data-selected]{z-index:5;opacity:1;pointer-events:none;border-color:#cfff74b8;transform:translate(-50%,-53%)rotate(0)scale(1)}.mindset-image-button span{z-index:1;color:var(--off-white);font-family:var(--font-mono);text-align:center;text-transform:uppercase;letter-spacing:.1em;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#13190bc7;border:1px solid #f5f2e824;border-radius:999px;padding:.48rem .6rem;font-size:.6rem;font-weight:700;position:absolute;bottom:.7rem;left:.7rem;right:.7rem}.mindset-outro{margin-top:auto}.craft-card{flex-direction:column;grid-area:craft;min-width:0;min-height:624px;display:flex}.craft-lead{letter-spacing:-.035em;font-size:clamp(1.35rem,2vw,2rem);line-height:1.24}.craft-copy{margin-top:1.2rem;font-size:.9rem}.tech-ticker{border-top:1px solid #cfff741f;border-bottom:1px solid #cfff741f;width:calc(100% + clamp(2.5rem,4vw,4rem));margin:2rem calc(-1*clamp(1.25rem,2vw,2rem)) 0;padding:.75rem 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.tech-ticker-track{width:max-content;animation:28s linear infinite tech-scroll;display:flex}.tech-ticker:hover .tech-ticker-track,.tech-ticker:focus .tech-ticker-track,.tech-ticker:focus-within .tech-ticker-track{animation-play-state:paused}.tech-ticker ul{gap:.55rem;margin:0;padding:0 .275rem;list-style:none;display:flex}.tech-ticker li{color:#f5f2e8c7;min-height:36px;font-family:var(--font-mono);white-space:nowrap;background:#141a0ccc;border:1px solid #e8deff21;border-radius:999px;align-items:center;gap:.45rem;padding:0 .75rem;font-size:.65rem;display:inline-flex}.tech-ticker li svg{color:var(--warm-lime)}@keyframes tech-scroll{to{transform:translate(-50%)}}.craft-availability{border-top:1px solid #e8deff1c;margin-top:auto;padding-top:1.5rem}.craft-availability p{margin-bottom:1.1rem;font-size:.83rem}.craft-availability span{color:var(--off-white);align-items:center;gap:.6rem;font-size:.78rem;font-weight:650;display:flex}.craft-availability i{background:var(--warm-lime);border-radius:50%;width:8px;height:8px;animation:2.4s ease-out infinite availability-pulse;box-shadow:0 0 #cfff7461}@keyframes availability-pulse{55%{box-shadow:0 0 0 7px #cfff7400}}.projects-section{border-top:1px solid #cfff7424;min-height:auto}.projects-heading{text-align:center;max-width:780px;margin:0 auto clamp(3.5rem,7vw,6.5rem)}.projects-heading .eyebrow{margin-bottom:1rem}.projects-heading h2{color:#0000;background:linear-gradient(105deg, var(--off-white) 0%, var(--off-white) 38%, var(--warm-lime) 48%, #fff 52%, var(--warm-lime) 56%, var(--off-white) 66%, var(--off-white) 100%);letter-spacing:-.065em;-webkit-text-fill-color:transparent;background-position:100%;background-size:240% 100%;-webkit-background-clip:text;background-clip:text;max-width:none;margin:0;font-size:clamp(3rem,7vw,6.8rem);line-height:.92;animation:10s ease-in-out infinite projects-title-luster}@keyframes projects-title-luster{0%,18%{background-position:110%}62%,to{background-position:-110%}}.projects-heading>p:last-child{max-width:610px;color:var(--text-muted);margin:1.35rem auto 0;font-size:clamp(.95rem,1.25vw,1.1rem);line-height:1.6}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(2rem,4vw,4.5rem);display:grid}.projects-github-link{width:fit-content;min-height:48px;color:var(--off-white);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;background:#1b2210b8;border:1px solid #cfff743d;border-radius:999px;align-items:center;gap:.65rem;margin:clamp(2.5rem,5vw,4.5rem) auto 0;padding:.75rem 1.15rem;font-size:.72rem;font-weight:700;text-decoration:none;transition:color .24s,background-color .24s,border-color .24s,transform .24s;display:flex}.projects-github-link svg{width:17px;height:17px}.projects-github-link svg:last-child{transition:transform .24s}.projects-github-link:hover{color:var(--olive-deep);background:var(--warm-lime);border-color:#cfff7494;transform:translateY(-3px)}.projects-github-link:hover svg:last-child{transform:translate(2px,-2px)}.projects-github-link:focus-visible{outline:2px solid var(--warm-lime);outline-offset:4px}.project-entry{perspective:1200px;min-width:0}.project-entry-heading{min-height:116px;margin-bottom:1.25rem}.project-meta{color:#f5f2e89e;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.11em;align-items:center;gap:.7rem;margin-bottom:.75rem;font-size:.65rem;font-weight:700;display:flex}.project-meta i{background:#cfff7461;width:28px;height:1px}.project-entry h3{letter-spacing:-.05em;max-width:none;margin:0;font-size:clamp(1.8rem,3vw,3.1rem);line-height:1}.project-entry h3 span{white-space:nowrap;display:block}.project-visual{--pointer-x:50%;--pointer-y:50%;--rotate-x:0deg;--rotate-y:0deg;height:clamp(520px,42vw,610px);color:var(--olive-deep);transform:translateY(0) rotateX(var(--rotate-x)) rotateY(var(--rotate-y));transform-style:preserve-3d;will-change:transform;border:1px solid #cfff7433;border-radius:clamp(1.45rem,2.4vw,2rem);flex-direction:column;padding:clamp(1.25rem,2.4vw,2rem);transition:transform .34s cubic-bezier(.22,1,.36,1),border-color .28s,box-shadow .3s,filter .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 70px #0b0f062e}.project-visual[data-tone=lime]{background:linear-gradient(145deg,#ffffff2e,#0000 46%),#cfff74db}.project-visual[data-tone=cream]{background:linear-gradient(145deg,#cfff742e,#0000 50%),#f5f2e8eb}.project-visual:hover,.project-visual:focus,.project-visual:focus-within,.project-visual[data-pointer-active]{filter:brightness(1.025);transform:translateY(-7px) rotateX(var(--rotate-x)) rotateY(var(--rotate-y));border-color:#cfff749e;box-shadow:0 34px 85px #0b0f064d}.project-visual:focus{outline:2px solid var(--warm-lime);outline-offset:4px}.project-flip-inner{z-index:2;width:100%;height:100%;transform-style:preserve-3d;will-change:transform;transition:transform .56s cubic-bezier(.22,1,.36,1);position:relative}.project-visual.is-flipped .project-flip-inner{transform:rotateY(180deg)}.project-visual-face{backface-visibility:hidden;transform-style:preserve-3d;flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.project-visual-front>p{z-index:2;max-width:42ch;min-height:76px;margin:0 0 1.35rem;padding-right:6.5rem;font-size:clamp(.9rem,1.15vw,1.05rem);font-weight:580;line-height:1.5;position:relative;transform:translateZ(18px)}.project-visual-front{perspective:1100px;overflow:visible}.project-hover-actions{z-index:4;opacity:0;gap:.55rem;transition:opacity .24s,transform .28s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;top:5px;right:5px;transform:translateY(6px)}.project-view-link,.project-review-button,.project-review-back{min-height:44px;color:var(--olive-deep);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;cursor:pointer;background:#f5f2e8d1;border:1px solid #2f3a1d3d;border-radius:999px;align-items:center;gap:.4rem;padding:.62rem .82rem;font-size:.64rem;font-weight:800;text-decoration:none;transition:transform .28s cubic-bezier(.22,1,.36,1),background-color .24s;display:inline-flex}.project-review-button,.project-review-back{font:inherit;font-family:var(--font-mono);font-size:.64rem;font-weight:800}.project-view-link svg,.project-review-button svg,.project-review-back svg{width:14px;height:14px}.project-view-link svg:last-child{transition:transform .24s}.project-visual:hover .project-hover-actions,.project-visual:focus .project-hover-actions,.project-visual:focus-within .project-hover-actions,.project-visual[data-pointer-active] .project-hover-actions{opacity:1;transform:translateY(0)}.project-view-link:hover,.project-review-button:hover,.project-review-back:hover{background:var(--warm-lime)}.project-view-link:hover svg:last-child{transform:translate(2px,-2px)}.project-view-link:focus-visible,.project-view-link:focus,.project-review-button:focus-visible,.project-review-button:focus,.project-review-back:focus-visible,.project-review-back:focus{box-shadow:0 0 0 2px var(--warm-lime), inset 0 0 0 2px var(--olive-deep);outline:none}.project-review-face{z-index:3;color:var(--off-white);pointer-events:none;background:radial-gradient(circle at 85% 10%,#cfff7421,#0000 38%),#1c2410f5;border:1px solid #cfff7433;border-radius:1.2rem;justify-content:space-between;padding:clamp(1rem,2vw,1.5rem);transition:border-color .28s,box-shadow .3s;inset:3px;transform:rotateY(180deg)translateZ(28px);box-shadow:0 22px 48px #0b0f064d}.project-visual.is-flipped .project-visual-front{pointer-events:none}.project-visual.is-flipped .project-review-face{pointer-events:auto}.project-visual:hover .project-review-face,.project-visual:focus-within .project-review-face,.project-visual[data-pointer-active] .project-review-face{border-color:#cfff747a;box-shadow:0 30px 62px #0b0f0661}.project-review-profile{align-items:center;gap:1rem;display:flex}.project-review-photo{background:var(--olive-deep);border:2px solid #cfff748c;border-radius:50%;flex:none;width:68px;height:68px;position:relative;overflow:hidden}.project-review-photo img{object-fit:cover}.project-review-profile .eyebrow{margin-bottom:.45rem;font-size:.58rem}.project-review-profile h4{letter-spacing:-.035em;margin:0;font-size:clamp(1.15rem,2vw,1.5rem)}.project-review-rating{flex-wrap:wrap;align-items:baseline;gap:.35rem;margin:1.5rem 0;display:flex}.project-review-rating strong{color:var(--warm-lime);letter-spacing:-.06em;font-size:clamp(2.8rem,5vw,4.5rem);line-height:.85}.project-review-rating>span{color:var(--text-muted);font-family:var(--font-mono);font-size:.72rem}.project-review-stars{gap:.35rem;width:100%;margin-top:.55rem;display:flex}.project-review-stars svg{color:#cfff743d;width:19px;height:19px}.project-review-stars svg.is-filled{color:var(--warm-lime);fill:currentColor}.project-review-face blockquote{color:#f5f2e8e6;letter-spacing:-.02em;margin:0;font-size:clamp(1.08rem,2vw,1.4rem);font-weight:570;line-height:1.55}.project-review-back{color:var(--warm-lime);background:#cfff7412;border-color:#cfff7457;align-self:flex-start;margin:1.5rem 4px 4px}.project-visual-spotlight{z-index:1;background:radial-gradient(circle 220px at var(--pointer-x) var(--pointer-y), #ffffff57, #cfff7414 44%, transparent 74%);opacity:0;pointer-events:none;transition:opacity .28s;position:absolute;inset:0}.project-visual[data-pointer-active] .project-visual-spotlight,.project-visual:focus .project-visual-spotlight{opacity:1}.project-image-frame{z-index:2;isolation:isolate;background:#17200f;border:1px solid #1f281461;border-radius:1.2rem;flex:1;grid-template-rows:29px minmax(0,1fr);width:100%;min-height:0;transition:border-color .28s,box-shadow .3s;display:grid;position:relative;overflow:hidden;transform:translateZ(36px);box-shadow:inset 0 1px #ffffff38,0 8px 0 -5px #2f3a1d57,0 22px 30px -14px #0b0f068a,0 38px 64px -28px #0b0f0680,0 0 0 1px #cfff7414;aspect-ratio:auto!important}.project-frame-bar{border-radius:1.1rem 1.1rem 0 0}.project-visual:hover .project-image-frame,.project-visual:focus .project-image-frame,.project-visual[data-pointer-active] .project-image-frame{border-color:#1f281499;transform:translateZ(36px);box-shadow:inset 0 1px #ffffff47,0 10px 0 -6px #2f3a1d61,0 28px 38px -14px #0b0f0694,0 48px 78px -30px #0b0f068f,0 0 0 1px #cfff7429}.project-frame-bar{color:#f5f2e88f;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:#161d0dfa;align-items:center;gap:5px;padding:0 .7rem;font-size:.54rem;display:flex}.project-frame-bar i{background:#cfff7461;border-radius:50%;width:5px;height:5px}.project-frame-bar span{margin-left:auto}.project-image-viewport{border-radius:0 0 1.1rem 1.1rem;min-height:0;position:relative;overflow:hidden}.project-image-viewport img{object-fit:contain;background:var(--off-white)}.project-tags{flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.project-tags li{color:var(--warm-lime);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;background:#1b2210ad;border:1px solid #e8deff24;border-radius:999px;padding:.4rem .65rem;font-size:.6rem}.projects-can-reveal .projects-heading,.projects-can-reveal .project-entry{opacity:0;transform:translateY(24px)}.projects-revealed .projects-heading,.projects-revealed .project-entry{opacity:1;transition:opacity .65s,transform .65s cubic-bezier(.22,1,.36,1);transform:translateY(0)}.projects-revealed .project-entry{transition-delay:calc(var(--project-index) * .11s + .1s)}.content-section{border-top:1px solid #e8deff24}.skills-section{border-top:1px solid #e8deff1a;min-height:1040px;position:relative;overflow:hidden}.skills-section:before{aspect-ratio:1;content:"";pointer-events:none;background:radial-gradient(circle,#cfff7413,#cfff7405 42%,#0000 70%);border-radius:50%;width:min(78vw,900px);position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.skills-heading{z-index:2;text-align:center;max-width:720px;margin:0 auto clamp(2.5rem,5vw,4.5rem);position:relative}.skills-heading .eyebrow{margin-bottom:.9rem}.skills-heading h2{letter-spacing:-.06em;max-width:none;margin:0;font-size:clamp(3.4rem,7vw,6.5rem);line-height:.94}.skills-heading>p:last-child{max-width:590px;color:var(--text-muted);margin:1.25rem auto 0;font-size:clamp(.95rem,1.2vw,1.08rem);line-height:1.6}.skill-sphere-stage{z-index:2;width:min(100%,860px);margin:0 auto;position:relative}.skill-sphere{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:2.5rem;outline:1px solid #0000;width:100%;height:clamp(620px,62vw,790px);position:relative;overflow:hidden}.skill-sphere:before,.skill-sphere:after{z-index:0;content:"";pointer-events:none;border-radius:50%;position:absolute;inset:10%}.skill-sphere:before{border:1px solid #cfff740f;box-shadow:inset 0 0 70px #cfff7406,0 0 90px #cfff7406}.skill-sphere:after{background:radial-gradient(circle,#cfff7409,#0000 72%);inset:25%}.skill-sphere[data-dragging=true]{cursor:grabbing}.skill-sphere:focus-visible{outline:2px solid var(--warm-lime);outline-offset:6px}.skill-network-canvas{z-index:1;pointer-events:none;position:absolute;inset:0}.skill-sphere-loading{z-index:1;color:#f5f2e87a;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:.68rem;transition:opacity .25s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.skill-sphere[data-ready=true] .skill-sphere-loading{opacity:0}.skill-node{z-index:2;width:clamp(48px,5.6vw,66px);height:clamp(48px,5.6vw,66px);cursor:inherit;transform-origin:50%;will-change:left, top, transform, opacity;background:0 0;border:0;border-radius:1rem;place-items:center;padding:0;display:grid;position:absolute}.skill-logo-shell{width:100%;height:100%;box-shadow:0 12px 32px #080b0440, 0 0 calc(8px + var(--skill-depth,.5) * 18px) rgba(207, 255, 116, calc(.02 + var(--skill-depth,.5) * .08));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#181f0ec2;border:1px solid #e8deff1f;border-radius:1rem;place-items:center;padding:.65rem;transition:border-color .22s,background-color .22s,box-shadow .22s;display:grid}.skill-logo-shell img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%}.skill-node:hover .skill-logo-shell,.skill-node:focus .skill-logo-shell,.skill-node:focus-visible .skill-logo-shell{background:#263016f0;border-color:#cfff74b8;box-shadow:0 15px 38px #080b0457,0 0 28px #cfff742e}.skill-node:focus-visible{outline:2px solid var(--warm-lime);outline-offset:4px}.skill-node-tooltip{z-index:4;width:max-content;max-width:150px;color:var(--off-white);font-family:var(--font-mono);letter-spacing:.05em;opacity:0;pointer-events:none;background:#141a0bf0;border:1px solid #cfff743d;border-radius:999px;padding:.42rem .62rem;font-size:.62rem;font-weight:700;transition:opacity .18s,transform .22s;position:absolute;top:calc(100% + .55rem);left:50%;transform:translate(-50%,-4px);box-shadow:0 10px 30px #080b0447}.skill-node:hover .skill-node-tooltip,.skill-node:focus .skill-node-tooltip,.skill-node:focus-visible .skill-node-tooltip{opacity:1;transform:translate(-50%)}.skills-fallback-grid{grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:.75rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.skills-fallback-grid li{border:1px solid var(--border-subtle);background:var(--surface-olive);border-radius:1rem;align-items:center;gap:.75rem;min-height:64px;padding:.75rem;font-size:.84rem;display:flex}.skills-fallback-grid img{object-fit:contain;width:34px;height:34px}.more-explore-section{border-top:1px solid #e8deff1a;min-height:780px;position:relative}.more-explore-heading{text-align:center;max-width:760px;margin:0 auto clamp(3.5rem,7vw,6rem)}.more-explore-heading .eyebrow{margin-bottom:.9rem}.more-explore-heading h2{letter-spacing:-.06em;max-width:none;margin:0;font-size:clamp(3.3rem,7vw,6.4rem);line-height:.94}.more-explore-heading>p:last-child{max-width:560px;color:var(--text-muted);margin:1.25rem auto 0;font-size:clamp(.95rem,1.2vw,1.08rem);line-height:1.6}:is(.projects-heading,.skills-heading,.more-explore-heading) [data-luster-title]{--title-base-color:var(--off-white);--title-luster-color:var(--warm-lime);color:#0000;background-image:radial-gradient(circle 92px at var(--title-luster-x) var(--title-luster-y), var(--title-luster-color) 0%, var(--title-luster-color) 22%, var(--title-base-color) 72%);-webkit-text-fill-color:transparent;background-repeat:no-repeat;background-size:100% 100%;-webkit-background-clip:text;background-clip:text;animation:none}:root[data-theme=light] :is(.projects-heading,.skills-heading,.more-explore-heading) [data-luster-title]{--title-base-color:var(--olive-deep);--title-luster-color:#66812d}.explore-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(1.25rem,2.5vw,2.25rem);display:grid}.explore-card{--explore-x:50%;--explore-y:50%;--explore-shift-x:0px;--explore-shift-y:0px;min-width:0;min-height:370px;color:var(--off-white);isolation:isolate;background:linear-gradient(145deg,#cfff740b,#0000 48%),#19200ed4;border:1px solid #cfff7424;border-radius:clamp(1.5rem,2.5vw,2rem);flex-direction:column;padding:clamp(1.5rem,2.5vw,2.25rem);text-decoration:none;transition:transform .34s cubic-bezier(.22,1,.36,1),border-color .28s,background-color .28s,box-shadow .32s;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 65px #0a0d0529}.explore-card-guestbook{--explore-accent:232, 222, 255}.explore-card-achievements{--explore-accent:245, 242, 232}.explore-card-links{--explore-accent:207, 255, 116}.explore-card-glow{z-index:-1;background:radial-gradient(circle 230px at var(--explore-x) var(--explore-y), rgba(var(--explore-accent), .16), transparent 72%);opacity:0;pointer-events:none;transition:opacity .26s;position:absolute;inset:0}.explore-card-watermark{z-index:-1;width:190px;height:190px;color:rgba(var(--explore-accent), .055);stroke-width:.65px;transform:translate3d(calc(var(--explore-shift-x) * -.7), calc(var(--explore-shift-y) * -.7), 0) rotate(-8deg);pointer-events:none;transition:color .28s,transform .34s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-3rem;right:-2.5rem}.explore-card-icon{border:1px solid rgba(var(--explore-accent), .34);width:54px;height:54px;color:rgb(var(--explore-accent));background:rgba(var(--explore-accent), .055);border-radius:1rem;place-items:center;margin-bottom:clamp(2.5rem,5vw,4.75rem);transition:transform .3s cubic-bezier(.22,1,.36,1),background-color .26s;display:grid}.explore-card-icon svg{stroke-width:1.7px;width:25px;height:25px}.explore-card-copy{z-index:1;position:relative}.explore-card h3{letter-spacing:-.045em;margin:0;font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:1;transition:color .24s}.explore-card-copy p{max-width:31ch;color:var(--text-muted);margin:1rem 0 0;font-size:.96rem;line-height:1.6}.explore-card-action,.explore-card-status{z-index:1;width:fit-content;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.55rem;margin-top:auto;padding-top:2rem;font-size:.7rem;font-weight:700;display:inline-flex;position:relative}.explore-card-action{color:var(--warm-lime)}.explore-card-action svg{width:16px;height:16px;transition:transform .26s}.explore-card-status{color:#f5f2e894}.explore-card-status:before{background:rgba(var(--explore-accent), .52);content:"";border-radius:50%;width:6px;height:6px}.explore-card-available{cursor:pointer}.explore-card-available:hover,.explore-card-available:focus{background-color:#212a12f0;border-color:#cfff748f;transform:translateY(-8px)scale(1.012);box-shadow:0 32px 78px #0a0d0547}.explore-card-available:hover .explore-card-glow,.explore-card-available:focus .explore-card-glow{opacity:1}.explore-card-available:hover .explore-card-icon,.explore-card-available:focus .explore-card-icon{background:rgba(var(--explore-accent), .12);transform:translateY(-4px)rotate(-3deg)}.explore-card-available:hover .explore-card-watermark,.explore-card-available:focus .explore-card-watermark{color:rgba(var(--explore-accent), .1)}.explore-card-available:hover h3,.explore-card-available:focus h3{color:var(--warm-lime)}.explore-card-available:hover .explore-card-action svg,.explore-card-available:focus .explore-card-action svg{transform:translate(5px)}.explore-card-available:focus{outline:2px solid var(--warm-lime);outline-offset:5px}.explore-card-coming-soon:hover{border-color:rgba(var(--explore-accent), .25);background-color:#1d2510e6}.explore-can-reveal .more-explore-heading,.explore-can-reveal .explore-card{opacity:0;transform:translateY(22px)}.explore-revealed .more-explore-heading,.explore-revealed .explore-card{opacity:1;transition:opacity .62s,transform .62s cubic-bezier(.22,1,.36,1),border-color .28s,background-color .28s,box-shadow .32s;transform:translateY(0)}.explore-revealed .more-explore-heading{animation:.62s cubic-bezier(.22,1,.36,1) backwards explore-card-reveal}.explore-revealed .explore-card{animation:.62s cubic-bezier(.22,1,.36,1) backwards explore-card-reveal;animation-delay:calc(var(--explore-index) * .1s + .1s)}@keyframes explore-card-reveal{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.explore-revealed .explore-card-available:hover,.explore-revealed .explore-card-available:focus{transform:translateY(-8px)scale(1.012)}@media (max-width:980px){.explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.explore-card:last-child{grid-column:1/-1}}.site-footer{width:min(100%,1440px);padding:2.5rem var(--page-gutter);border-top:1px solid #e8deff24;grid-template-columns:1fr auto 1fr;align-items:end;gap:2rem;margin:0 auto;display:grid}.footer-mark{color:var(--warm-lime);letter-spacing:-.04em;margin:0 0 .45rem;font-weight:750}.footer-note{color:var(--text-muted);margin:0;font-size:.8rem}.footer-meta{text-align:right;justify-self:end;gap:.75rem;display:grid}.footer-social-links{justify-content:flex-end;gap:.55rem;display:flex}.footer-social-links a{width:36px;height:36px;color:var(--text-muted);background:#cfff7409;border:1px solid #cfff7429;border-radius:50%;place-items:center;text-decoration:none;transition:color .22s,border-color .22s,background-color .22s,transform .22s;display:grid}.footer-social-links svg{width:16px;height:16px}.footer-social-links a:hover{color:var(--warm-lime);background:#cfff7414;border-color:#cfff7485;transform:translateY(-2px)}.footer-links{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.footer-links a{color:var(--text-muted);font-size:.8rem;text-decoration:none;transition:color .22s}.footer-links a:hover{color:var(--warm-lime)}@media (max-width:1100px) and (min-width:761px){.about-grid{grid-template-columns:minmax(250px,.85fr) minmax(390px,1.25fr);grid-template-areas:"identity experience""mindset visual""craft craft"}.craft-card{min-height:470px}}@media (max-width:900px){.projects-grid{grid-template-columns:1fr;gap:4.5rem}.project-entry-heading{min-height:auto}.project-visual{min-height:0}}@media (max-width:760px){:root{--page-gutter:1.25rem}.floating-nav-shell{grid-template-columns:44px minmax(0,1fr) 44px;gap:.45rem;width:calc(100% - 1.25rem);top:.85rem}.nav-control{min-width:44px;height:44px}.nav-call-control{padding:0}.nav-call-control span{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.nav-pill{scrollbar-width:none;justify-content:flex-start;min-width:0;min-height:50px;overflow-x:auto}.nav-pill::-webkit-scrollbar{display:none}.nav-link{min-height:40px;padding:0 .75rem;font-size:.78rem}.anchor-section{min-height:70vh}.skills-section{min-height:780px}.skills-heading{margin-bottom:1.75rem}.skills-heading h2{font-size:clamp(3rem,16vw,4.5rem)}.skill-sphere-stage{width:calc(100% + 1rem);margin-left:-.5rem}.skill-sphere{height:min(106vw,470px)}.skill-node{border-radius:.8rem;width:clamp(38px,12vw,50px);height:clamp(38px,12vw,50px)}.more-explore-section{min-height:auto;padding-top:14rem}.more-explore-heading{margin-bottom:3rem}.more-explore-heading h2{font-size:clamp(3rem,14vw,4.5rem)}.explore-grid{grid-template-columns:1fr}.explore-card,.explore-card:last-child{grid-column:auto;min-height:320px}.explore-card-icon{margin-bottom:2.75rem}.skill-logo-shell{border-radius:.8rem;padding:.5rem}.project-visual{height:470px}.hero-section{min-height:100svh;padding-top:7rem}.hero-portrait-wrap{width:190px;height:198px}.hero-heading{font-size:clamp(2.2rem,10vw,3.25rem)}.hero-supporting{max-width:34rem}.hero-chat-wrap{width:min(100%,100vw - 2rem)}.portfolio-assistant{border-radius:24px;min-height:320px;padding:.9rem}.assistant-message{max-width:94%}.assistant-messages{height:170px;min-height:170px}.about-section{padding-left:1rem;padding-right:1rem}.about-heading{flex-direction:column;align-items:flex-start;gap:.8rem}.about-grid{flex-direction:column;display:flex}.identity-card,.experience-group,.mindset-card,.craft-card{min-height:auto}.identity-card{min-height:220px}.experience-stack{flex-direction:column;height:auto}.experience-card,.experience-card[data-active],.experience-card[data-dimmed]{opacity:1;flex:none;width:100%;height:auto;min-height:112px;transform:none}.experience-description{-webkit-line-clamp:initial;display:none}.experience-card[data-active] .experience-description{display:block}.about-visual-column{order:3;grid-template-rows:480px 160px}.mindset-card{order:2}.craft-card{order:4}.mindset-stack{height:310px}.mindset-image-button{width:min(62%,220px);height:285px}.tech-ticker{width:calc(100% + 2.5rem);margin-left:-1.25rem;margin-right:-1.25rem;-webkit-mask-image:none;mask-image:none}.tech-ticker-track{width:auto;animation:none}.tech-ticker ul{flex-wrap:wrap;justify-content:center;padding:0 1.25rem}.tech-ticker ul[aria-hidden=true]{display:none}.projects-heading{margin-bottom:3.5rem}.projects-heading h2{font-size:clamp(2.8rem,14vw,4.3rem)}.project-visual{border-radius:1.35rem;padding:1rem}.project-visual-front>p{min-height:0;margin-bottom:1rem;padding-right:8.5rem}.project-frame-bar{height:25px}.project-visual,.project-visual:hover,.project-visual:focus,.project-image-frame,.project-visual:hover .project-image-frame,.project-visual:focus .project-image-frame{transform:none}.project-visual-spotlight{display:none}.site-footer{grid-template-columns:1fr;align-items:start}.footer-links{justify-content:flex-start}.footer-meta{text-align:left;justify-self:start}.footer-social-links{justify-content:flex-start}}@media (hover:none),(pointer:coarse){.project-hover-actions{opacity:1;transform:none}.project-view-link,.project-review-button{min-height:44px}.explore-card-glow{display:none}.explore-card-watermark{transform:rotate(-8deg)}.explore-card-available:active{background-color:#212a12f0;border-color:#cfff747a}.dot-grid:after{display:none}.project-visual,.project-visual:hover,.project-image-frame,.project-visual:hover .project-image-frame{transform:none}.project-visual-spotlight{display:none}}@media (prefers-reduced-motion:reduce){.projects-heading h2{background-position:50%;animation:none}.skill-node,.skill-logo-shell,.skill-node-tooltip{transition:none}.explore-can-reveal .more-explore-heading,.explore-can-reveal .explore-card,.explore-revealed .more-explore-heading,.explore-revealed .explore-card,.explore-card-available:hover,.explore-card-available:focus,.explore-card-icon,.explore-card-watermark,.explore-card-action svg{opacity:1;transition:none;animation:none;transform:none}.explore-card-glow{display:none}.skills-section:before{background:0 0}html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.tech-ticker{-webkit-mask-image:none;mask-image:none}.tech-ticker-track{width:auto;animation:none}.tech-ticker ul{flex-wrap:wrap}.tech-ticker ul[aria-hidden=true]{display:none}.craft-availability i{animation:none}.location-scan{display:none}.projects-can-reveal .projects-heading,.projects-can-reveal .project-entry,.projects-revealed .projects-heading,.projects-revealed .project-entry,.project-visual,.project-visual:hover,.project-image-frame,.project-visual:hover .project-image-frame{opacity:1;transition:none;transform:none}.project-visual-spotlight{display:none}.project-flip-inner,.project-hover-actions,.project-review-back{transition:none}.dot-grid:after{display:none}}.profile-owner-panel{z-index:4;width:min(100% - 2rem,820px);margin:1rem auto 0;position:relative}.profile-owner-bar{background:#141c0cd1;border:1px solid #cfff742e;border-radius:999px;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem .7rem .55rem 1rem;display:flex}.profile-owner-bar span,.profile-owner-bar button,.profile-owner-editor button,.profile-owner-preview{align-items:center;gap:.45rem;display:inline-flex}.profile-owner-bar span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.profile-owner-bar svg,.profile-owner-editor svg{width:15px;height:15px}.profile-owner-bar button,.profile-owner-editor button{min-height:40px;color:var(--text-primary);font:inherit;cursor:pointer;background:#cfff740f;border:1px solid #cfff7433;border-radius:999px;padding:.5rem .75rem;font-size:.75rem}.profile-owner-bar button:hover,.profile-owner-bar button:focus-visible,.profile-owner-editor button:hover,.profile-owner-editor button:focus-visible{border-color:var(--warm-lime);color:var(--warm-lime);outline:none;box-shadow:0 0 0 3px #cfff741f}.profile-owner-feedback{color:var(--warm-lime);text-align:center;margin:.5rem 0;font-size:.8rem}.profile-owner-saved-links{color:var(--text-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:.45rem;margin-top:.65rem;font-size:.72rem;display:flex}.profile-owner-saved-links>span{letter-spacing:.08em;text-transform:uppercase;margin-right:.25rem}.profile-owner-saved-links a{color:var(--text-primary);background:#cfff740a;border:1px solid #cfff7424;border-radius:999px;padding:.42rem .65rem;text-decoration:none;transition:border-color .22s,color .22s,background .22s}.profile-owner-saved-links a:hover,.profile-owner-saved-links a:focus-visible{border-color:var(--warm-lime);color:var(--warm-lime);background:#cfff741a;outline:none}.profile-owner-saved-links strong{color:var(--warm-lime);font-weight:500}.profile-owner-editor{background:#141c0cf0;border:1px solid #cfff742e;border-radius:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:.65rem;padding:1rem;display:grid}.profile-owner-editor label{color:var(--text-muted);gap:.35rem;font-size:.72rem;display:grid}.profile-owner-editor .is-wide{grid-column:1/-1}.profile-owner-editor input:not([type=checkbox]),.profile-owner-editor textarea{width:100%;min-height:42px;color:var(--text-primary);font:inherit;background:#0003;border:1px solid #cfff7424;border-radius:.7rem;padding:.65rem}.profile-owner-editor textarea{resize:vertical;min-height:74px}.profile-owner-editor input:focus-visible,.profile-owner-editor textarea:focus-visible{border-color:var(--warm-lime);outline:none;box-shadow:0 0 0 3px #cfff741f}.profile-owner-preview{color:var(--text-muted);grid-column:1/-1;font-size:.75rem}.profile-owner-preview img{object-fit:cover;border-radius:50%;width:64px;height:64px}.profile-owner-checkbox{grid-template-columns:auto 1fr;align-items:center}.profile-owner-checkbox input{accent-color:var(--warm-lime)}.profile-owner-editor footer{grid-column:1/-1;justify-content:flex-end;display:flex}@media (max-width:680px){.profile-owner-bar{border-radius:1rem;flex-direction:column;align-items:stretch}.profile-owner-bar button{justify-content:center}.profile-owner-editor{grid-template-columns:1fr}.profile-owner-editor .is-wide,.profile-owner-preview,.profile-owner-editor footer{grid-column:auto}}.skills-owner-bar,.skill-owner-editor,.skill-owner-list{z-index:3;width:min(100%,1080px);margin-inline:auto;position:relative}.skills-owner-bar{background:var(--surface-strong);border:1px solid #cfff742e;border-radius:999px;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding:.65rem .75rem .65rem 1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.skills-owner-bar{background:color-mix(in srgb, var(--surface-strong) 90%, transparent)}}.skills-owner-bar>span,.skills-owner-bar>button,.skill-owner-actions,.skill-owner-actions button,.skill-owner-editor button,.skill-owner-upload>span{align-items:center;display:inline-flex}.skills-owner-bar>span{color:var(--text-muted);letter-spacing:.09em;text-transform:uppercase;gap:.55rem;font-size:.78rem}.skills-owner-bar svg,.skill-owner-actions svg,.skill-owner-editor button svg,.skill-owner-upload svg{width:16px;height:16px}.skills-owner-bar button,.skill-owner-actions button,.skill-owner-editor button{min-height:40px;color:var(--text-primary);font:inherit;cursor:pointer;background:#cfff740e;border:1px solid #cfff742e;border-radius:999px;gap:.42rem;padding:.55rem .8rem;font-size:.74rem;transition:border-color .22s,color .22s,background .22s}.skills-owner-bar button:hover,.skills-owner-bar button:focus-visible,.skill-owner-actions button:hover:not(:disabled),.skill-owner-actions button:focus-visible,.skill-owner-editor button:hover:not(:disabled),.skill-owner-editor button:focus-visible{color:var(--warm-lime);background:#cfff741a;border-color:#cfff7485;outline:none;box-shadow:0 0 0 3px #cfff741f}.skills-owner-bar button:disabled,.skill-owner-actions button:disabled,.skill-owner-editor button:disabled{cursor:not-allowed;opacity:.48}.skills-owner-feedback{width:min(100%,1080px);color:var(--warm-lime);text-align:center;margin:.75rem auto 0;font-size:.82rem}.skill-owner-editor{background:var(--surface-strong);border:1px solid #cfff7438;border-radius:1.5rem;margin-top:1rem;padding:1.2rem}@supports (color:color-mix(in lab, red, red)){.skill-owner-editor{background:color-mix(in srgb, var(--surface-strong) 94%, transparent)}}.skill-owner-editor{box-shadow:0 20px 50px #080c0433}.skill-owner-editor>header,.skill-owner-editor>footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}.skill-owner-editor h3,.skill-owner-editor p{margin:0}.skill-owner-editor>header>button{justify-content:center;width:40px;padding:0}.skill-owner-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-block:1.15rem;display:grid}.skill-owner-form-grid label{color:var(--text-muted);letter-spacing:.04em;gap:.45rem;font-size:.76rem;display:grid}.skill-owner-form-grid .is-wide{grid-column:1/-1}.skill-owner-form-grid input:not([type=checkbox]){width:100%;min-height:44px;color:var(--text-primary);font:inherit;background:#080c0440;border:1px solid #cfff7426;border-radius:.85rem;padding:.75rem}.skill-owner-form-grid input:focus-visible{border-color:var(--warm-lime);outline:none;box-shadow:0 0 0 3px #cfff741f}.skill-owner-checkbox{grid-template-columns:auto 1fr;justify-self:start;align-items:center}.skill-owner-checkbox input{accent-color:var(--warm-lime)}.skill-owner-upload>span{color:var(--warm-lime);gap:.4rem}.skill-owner-upload .is-error{color:#ffb4a8}.skill-owner-editor>footer{justify-content:flex-end}.skill-owner-list{scrollbar-width:thin;scrollbar-color:#cfff7459 transparent;gap:.55rem;max-height:420px;margin-top:1rem;padding:0;list-style:none;display:grid;overflow-y:auto}.skill-owner-list>li{background:#080c042e;border:1px solid #cfff741a;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem;display:flex}.skill-owner-identity{grid-template-columns:auto minmax(100px,1fr) auto;align-items:center;gap:.7rem;min-width:0;display:grid}.skill-owner-identity>span:nth-child(2){display:grid}.skill-owner-identity strong{color:var(--text-primary);font-size:.86rem}.skill-owner-identity small{color:var(--text-muted)}.skill-owner-identity em{color:var(--warm-lime);letter-spacing:.08em;text-transform:uppercase;font-size:.67rem;font-style:normal}.skill-owner-logo{background:#ffffff12;border-radius:.75rem;place-items:center;width:42px;height:42px;display:grid}.skill-owner-logo img{object-fit:contain}.skill-owner-actions{justify-content:flex-end;gap:.35rem}.skill-owner-actions button[aria-label]{justify-content:center;width:40px;padding:0}.skill-owner-actions .is-confirming{color:#ffb4a8;border-color:#ff826e94}@media (max-width:780px){.skills-owner-bar,.skill-owner-list>li{border-radius:1.25rem;flex-direction:column;align-items:stretch}.skills-owner-bar>button{justify-content:center}.skill-owner-actions{flex-wrap:wrap;justify-content:flex-start}.skill-owner-form-grid{grid-template-columns:1fr}.skill-owner-form-grid .is-wide{grid-column:auto}}.project-review-page{z-index:1;width:min(100%,1080px);min-height:100vh;padding:clamp(8.5rem, 14vh, 10rem) var(--page-gutter) clamp(5rem, 8vw, 7rem);margin:0 auto;position:relative}.project-review-shell,.project-review-state{background:linear-gradient(145deg, #cfff740b, transparent 42%), var(--surface-olive);border:1px solid #cfff7433;border-radius:clamp(1.6rem,4vw,2.4rem);width:min(100%,720px);margin-inline:auto;box-shadow:0 30px 90px #080c0533}.project-review-shell{padding:clamp(1.25rem,4vw,2.3rem)}.project-review-intro{text-align:left;max-width:600px}.project-review-intro h1,.project-review-state h1{letter-spacing:-.055em;margin:.45rem 0 0;font-size:clamp(2.1rem,6vw,4rem);line-height:.98}.project-review-intro>p:last-child{color:var(--text-muted);margin:1rem 0 0;line-height:1.6}.project-review-project{border:1px solid var(--border-subtle);background:#cfff7409;border-radius:18px;align-items:center;gap:1rem;margin-block:clamp(1.5rem,4vw,2.2rem);padding:.7rem;display:flex}.project-review-project>div{background:#0b0f0740;border-radius:12px;flex:none;width:92px;height:66px;position:relative;overflow:hidden}.project-review-project img{object-fit:cover;object-position:top center}.project-review-project>span{gap:.2rem;min-width:0;display:grid}.project-review-project small{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem}.project-review-project strong{text-overflow:ellipsis;white-space:nowrap;font-size:.94rem;overflow:hidden}.project-review-customer-form{gap:1.15rem;display:grid}.project-review-signin{text-align:center;background:#cfff7409;border:1px solid #cfff7433;border-radius:20px;gap:1.25rem;padding:clamp(1.1rem,3vw,1.5rem);display:grid}.project-review-signin h2{margin:0;font-size:clamp(1.15rem,3vw,1.5rem)}.project-review-signin p{color:var(--text-muted);margin:.45rem auto 0;font-size:.8rem;line-height:1.55}.project-review-provider-actions{flex-wrap:wrap;justify-content:center;gap:.7rem;display:flex}.project-review-provider-actions button{min-height:48px;color:var(--page-text);cursor:pointer;font:inherit;background:#cfff740e;border:1px solid #cfff7438;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.7rem 1rem;font-size:.78rem;font-weight:750;transition:all .22s;display:inline-flex}.project-review-provider-actions button:hover,.project-review-provider-actions button:focus-visible{color:var(--warm-lime);border-color:#cfff748c;outline:none;box-shadow:0 0 0 3px #cfff741a}.project-review-provider-actions button:disabled{cursor:wait;opacity:.55}.project-review-provider-actions svg{width:19px;height:19px}.project-review-identity{border:1px solid var(--border-subtle);background:#cfff7408;border-radius:16px;align-items:center;gap:.8rem;padding:.7rem;display:flex}.project-review-identity>span{width:48px;height:48px;color:var(--olive-deep);background-color:var(--warm-lime);background-position:50%;background-size:cover;border:1px solid #cfff744d;border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.project-review-identity>div{gap:.2rem;min-width:0;display:grid}.project-review-identity small{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;font-size:.6rem}.project-review-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.project-review-customer-form label,.project-review-customer-form fieldset{min-width:0;color:var(--page-text);border:0;gap:.5rem;margin:0;padding:0;font-size:.8rem;font-weight:750;display:grid}.project-review-customer-form input,.project-review-customer-form textarea{border:1px solid var(--border-subtle);width:100%;color:var(--page-text);font:inherit;background:#0b0f073d;border-radius:14px;outline:none;padding:.85rem .95rem;font-size:.88rem}.project-review-customer-form input{min-height:48px}.project-review-customer-form textarea{resize:vertical;min-height:150px;line-height:1.55}.project-review-customer-form input:focus,.project-review-customer-form textarea:focus{border-color:#cfff7499;box-shadow:0 0 0 3px #cfff741a}.project-review-customer-form label>span{color:var(--text-muted);font-family:var(--font-mono);justify-self:end;font-size:.64rem;font-weight:500}.project-review-rating-input{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.project-review-rating-input button{border:1px solid var(--border-subtle);width:46px;height:46px;color:var(--text-muted);cursor:pointer;background:#cfff7406;border-radius:12px;place-items:center;padding:0;transition:all .2s;display:grid}.project-review-rating-input button:hover,.project-review-rating-input button:focus-visible,.project-review-rating-input button[aria-pressed=true]{color:var(--warm-lime);border-color:#cfff7485;outline:none;box-shadow:0 0 0 3px #cfff741a}.project-review-rating-input svg{width:21px;height:21px}.project-review-rating-input svg.is-selected{color:var(--warm-lime);fill:currentColor}.project-review-rating-input strong{color:var(--warm-lime);font-family:var(--font-mono);margin-left:.45rem;font-size:.72rem}.project-review-customer-form>button,.project-review-state a{border:1px solid var(--warm-lime);min-height:48px;color:var(--olive-deep);background:var(--warm-lime);cursor:pointer;font:inherit;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1rem;font-size:.82rem;font-weight:800;text-decoration:none;display:inline-flex}.project-review-customer-form>button:focus-visible,.project-review-state a:focus-visible{outline:2px solid var(--warm-lime);outline-offset:4px}.project-review-customer-form>button:disabled{cursor:wait;opacity:.58}.project-review-customer-form>button svg{width:17px;height:17px}.project-review-form-error{color:#ffd3cc;background:#ff78640f;border:1px solid #ff78644d;border-radius:12px;margin:0;padding:.75rem;font-size:.78rem}.project-review-privacy{max-width:560px;color:var(--text-muted);text-align:center;margin:0 auto;font-size:.68rem;line-height:1.55}.project-review-state{text-align:center;align-content:center;justify-items:center;gap:1rem;min-height:390px;padding:clamp(1.5rem,5vw,3rem);display:grid}.project-review-state>svg{width:28px;height:28px;color:var(--warm-lime)}.project-review-state>span{width:58px;height:58px;color:var(--olive-deep);background:var(--warm-lime);border-radius:50%;place-items:center;display:grid}.project-review-state>span svg{width:25px;height:25px}.project-review-state p{max-width:520px;color:var(--text-muted);margin:0;line-height:1.6}@media (max-width:560px){.project-review-page{padding-top:7.5rem}.project-review-rating-input strong{width:100%;margin:.3rem 0 0}.project-review-provider-actions,.project-review-provider-actions button{width:100%}}@media (prefers-reduced-motion:reduce){.project-review-rating-input button{transition:none}}.projects-owner-bar{background:var(--surface-olive);border:1px solid #cfff7438;border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto 1.25rem;padding:.75rem .85rem .75rem 1rem;display:flex;box-shadow:0 14px 40px #080c051f}.projects-owner-bar>span,.projects-owner-bar>button,.project-owner-controls,.project-owner-controls button,.project-owner-editor button{align-items:center;gap:.45rem;display:inline-flex}.projects-owner-bar>span{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem}.projects-owner-bar svg,.project-owner-controls svg,.project-owner-editor button svg{width:16px;height:16px}.projects-owner-bar button,.project-owner-controls button,.project-owner-editor button{min-height:42px;color:var(--page-text);cursor:pointer;font:inherit;background:#cfff740e;border:1px solid #cfff7433;border-radius:999px;justify-content:center;padding:.5rem .78rem;font-size:.72rem;font-weight:700;transition:all .22s}.projects-owner-bar button{color:var(--olive-deep);border-color:var(--warm-lime);background:var(--warm-lime)}.project-owner-controls{z-index:4;background:var(--surface-olive);border:1px solid #cfff7429;border-radius:16px;flex-wrap:wrap;margin-bottom:.75rem;padding:.55rem;position:relative}.project-owner-controls>span{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;background:#cfff7412;border-radius:999px;margin-right:auto;padding:.3rem .5rem;font-size:.58rem}.project-owner-controls button{min-width:42px;padding-inline:.65rem}.project-owner-controls button.is-confirming{color:#ffd4cc;background:#ff786414;border-color:#ff786466}.projects-owner-bar button:hover,.projects-owner-bar button:focus-visible,.project-owner-controls button:hover:not(:disabled),.project-owner-controls button:focus-visible,.project-owner-editor button:hover:not(:disabled),.project-owner-editor button:focus-visible{border-color:var(--warm-lime);outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #cfff7424}.project-owner-controls button:disabled,.project-owner-editor button:disabled{cursor:not-allowed;opacity:.42}.projects-owner-feedback{color:var(--text-muted);text-align:center;background:#cfff7409;border:1px solid #cfff7426;border-radius:14px;margin:0 auto 1rem;padding:.7rem .9rem;font-size:.78rem}.project-owner-editor{z-index:5;background:linear-gradient(145deg, #cfff740a, transparent 42%), var(--surface-olive);border:1px solid #cfff7442;border-radius:24px;margin:0 auto clamp(2rem,4vw,3rem);padding:clamp(1rem,3vw,1.6rem);position:relative;box-shadow:0 25px 70px #080c052e}.project-owner-editor>header,.project-owner-editor>footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}.project-owner-editor h3{margin:.25rem 0 0;font-size:clamp(1.15rem,2vw,1.5rem)}.project-owner-editor>header>button{width:44px;padding:0}.project-owner-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin-block:1.35rem;display:grid}.project-owner-form-grid label{min-width:0;color:var(--text-muted);gap:.4rem;font-size:.7rem;font-weight:700;display:grid}.project-owner-form-grid label.is-wide,.project-owner-checkbox{grid-column:1/-1}.project-owner-form-grid input,.project-owner-form-grid textarea,.project-owner-form-grid select{border:1px solid var(--border-subtle);width:100%;min-height:46px;color:var(--page-text);font:inherit;background:#0b0f0738;border-radius:12px;outline:none;padding:.72rem .8rem;font-size:.82rem}.project-owner-form-grid textarea{resize:vertical;min-height:96px;line-height:1.5}.project-owner-form-grid input:focus,.project-owner-form-grid textarea:focus,.project-owner-form-grid select:focus{border-color:#cfff748c;box-shadow:0 0 0 3px #cfff7417}.project-owner-form-grid .project-owner-checkbox{align-items:center;gap:.65rem;display:flex}.project-owner-upload small{color:var(--text-muted);font-size:.66rem;font-weight:500}.project-owner-upload>span{color:var(--warm-lime);align-items:center;gap:.45rem;font-size:.7rem;display:inline-flex}.project-owner-upload>span.is-error{color:#ffd3cc}.project-owner-upload svg{width:15px;height:15px}.project-owner-form-grid input[readonly]{color:var(--text-muted);cursor:default}.project-owner-checkbox input{width:18px;min-height:18px;accent-color:var(--warm-lime)}.project-owner-editor>footer{border-top:1px solid var(--border-subtle);justify-content:flex-end;padding-top:1rem}.project-owner-editor>footer button:last-child{color:var(--olive-deep);border-color:var(--warm-lime);background:var(--warm-lime)}@media (max-width:760px){.projects-owner-bar{flex-direction:column;align-items:stretch}.project-owner-form-grid{grid-template-columns:1fr}.project-owner-form-grid label.is-wide,.project-owner-checkbox{grid-column:1}.project-owner-controls button{flex:1}}@media (prefers-reduced-motion:reduce){.projects-owner-bar button,.project-owner-controls button,.project-owner-editor button{transition:border-color .15s}.projects-owner-bar button:hover,.project-owner-controls button:hover,.project-owner-editor button:hover{transform:none}}@media (max-width:800px){.owner-booking-card{grid-template-columns:1fr}.owner-booking-actions{grid-column:1;justify-content:stretch}.owner-booking-actions button{flex:1;justify-content:center}}.guestbook-signout-link{min-height:auto;color:var(--text-muted);text-underline-offset:4px;background:0 0;border:0;padding:.2rem;font-size:.72rem;text-decoration:underline}.guestbook-own-state>h3{margin:0;font-size:clamp(1.35rem,3vw,2rem)}.guestbook-own-state>p{color:var(--text-muted);margin:.45rem 0 1rem}.guestbook-own-message{text-align:left;align-items:start;padding-right:4.5rem}.guestbook-own-actions{opacity:0;gap:.4rem;transition:all .22s;display:flex;position:absolute;top:1rem;right:1rem;transform:translateY(4px)}.guestbook-own-message:hover .guestbook-own-actions,.guestbook-own-message:focus-within .guestbook-own-actions{opacity:1;transform:none}.guestbook-own-actions button{width:38px;height:38px;color:var(--text-muted);cursor:pointer;background:#202814eb;border:1px solid #cfff7433;border-radius:50%;place-items:center;padding:0;display:grid}.guestbook-own-actions button:hover,.guestbook-own-actions button:focus-visible{border-color:var(--warm-lime);color:var(--warm-lime);outline:2px solid var(--warm-lime);outline-offset:2px}.guestbook-own-actions svg{width:16px;height:16px}.guestbook-composer>div>.guestbook-composer-actions{color:inherit;font:inherit;align-items:center;gap:.5rem;display:flex}.guestbook-composer .guestbook-edit-cancel{color:var(--text-muted);background:0 0}.guestbook-composer .guestbook-edit-cancel:hover{color:var(--warm-lime)}@media (hover:none),(pointer:coarse){.guestbook-own-actions{opacity:1;grid-column:2;margin-top:.8rem;position:static;transform:none}}:root[data-theme=light] .dot-grid{background:radial-gradient(circle at 50% -10%, #cfff7438, transparent 38%), var(--olive-ink)}:root[data-theme=light] .dot-grid:before{opacity:.72}:root[data-theme=light] .dot-grid:after{opacity:.84}:root[data-theme=light] .projects-heading h2{background:linear-gradient(105deg, var(--olive-deep) 0%, var(--olive-deep) 38%, #66812d 48%, var(--olive-deep) 58%, var(--olive-deep) 100%);-webkit-background-clip:text;background-clip:text}:root[data-theme=light] :is(.hero-eyebrow,.projects-heading .eyebrow,.skills-heading .eyebrow,.more-explore-heading .eyebrow,.booking-hero .eyebrow,.guestbook-hero .eyebrow,.guestbook-wall-heading .eyebrow,.links-page-heading .eyebrow){color:#66812d}:root[data-theme=light] .hero-supporting{color:#2f3a1dbd}:root[data-theme=light] :is(.hero-heading span,.booking-hero h1 span,.guestbook-hero h1 span,.links-page-heading h1 span){color:#66812d;background:linear-gradient(110deg,#66812d,#3f541a);-webkit-background-clip:text;background-clip:text}:root[data-theme=light] :is(.portfolio-assistant,.about-card,.experience-card,.location-card,.project-review-face,.explore-card,.booking-scheduler,.contact-dialog,.social-link-card,.guestbook-auth-panel,.guestbook-message-card,.guestbook-preview-note){--text-muted:#f5f2e8b3;--page-text:var(--off-white);color:var(--off-white)}:root[data-theme=light] .about-card,:root[data-theme=light] .location-card{border-color:#2f3a1d33;box-shadow:0 24px 65px #2f3a1d1f}:root[data-theme=light] .skills-section{border-top-color:#2f3a1d1f}:root[data-theme=light] .skill-sphere{filter:drop-shadow(0 28px 55px #2f3a1d1f)}:root[data-theme=light] .site-footer{border-top-color:#2f3a1d24}:root[data-theme=light] .nav-control,:root[data-theme=light] .nav-pill{box-shadow:0 14px 40px #2f3a1d1f}:root[data-theme=light] .nav-theme-control:hover{color:#66812d}:root[data-theme=light] .nav-control,:root[data-theme=light] .nav-pill{color:var(--page-text);background:#fffdf6eb;border-color:#2f3a1d33;box-shadow:0 12px 30px #2f3a1d1a,inset 0 1px #ffffffe6}:root[data-theme=light] .nav-link{color:#526044}:root[data-theme=light] .nav-link:hover,:root[data-theme=light] .nav-link:focus-visible{color:#253315;background:#66812d1a}:root[data-theme=light] .nav-link[aria-current=page]{color:#253315;background:#cfff74;box-shadow:0 4px 14px #4e67192e}:root[data-theme=light] .nav-call-control{color:#253315;background:#cfff74;border-color:#2f3a1d3d;box-shadow:0 10px 24px #4e671929}:root[data-theme=light] .nav-call-control:hover,:root[data-theme=light] .nav-call-control:focus-visible{color:#253315;background:#bdeb62}:root[data-theme=light] :is(.nav-account-menu,.nav-account-control){color:var(--page-text);background:#fffdf6fa;border-color:#2f3a1d33;box-shadow:0 18px 44px #2f3a1d29}:root[data-theme=light] .nav-account-menu p,:root[data-theme=light] .nav-account-identity span,:root[data-theme=light] :is(.projects-heading>p:last-child,.skills-heading>p:last-child,.more-explore-heading>p:last-child,.booking-hero>p:last-child,.guestbook-hero>p:last-child,.links-page-heading>p:last-child){color:#526044}:root[data-theme=light] :is(.site-footer,.footer-social-links a){border-color:#2f3a1d33}:root[data-theme=light] .footer-social-links a{color:#526044;background:#fffdf6ad}:root[data-theme=light] .footer-social-links a:hover,:root[data-theme=light] .footer-social-links a:focus-visible,:root[data-theme=light] .footer-links a:hover{color:#4f691f}:root[data-theme=light] :is(a,button,input,textarea,select):focus-visible{outline-offset:4px;outline-color:#66812d}@media (prefers-reduced-motion:reduce){body,.theme-toggle-icons svg{transition:none}}.owner-bookings{background:linear-gradient(145deg, #cfff740b, transparent 42%), var(--surface-olive);border:1px solid #cfff7438;border-radius:28px;width:min(100%,1080px);margin:0 auto 1.25rem;padding:clamp(1.1rem,2.5vw,1.65rem);box-shadow:0 24px 65px #080c052e}.owner-bookings-confirmed{background:linear-gradient(145deg, #cfff7406, transparent 48%), var(--surface-olive);border-color:#cfff7426;margin-top:clamp(1.5rem,4vw,2.75rem);margin-bottom:0}.owner-bookings-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.owner-workspace-connection{color:var(--text-muted);background:#cfff740a;border:1px solid #cfff7429;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;margin:.9rem 0;padding:.75rem .85rem;font-size:.8rem;display:flex}.owner-workspace-connection button{min-height:40px;color:var(--text-primary);font:inherit;cursor:pointer;background:#cfff7414;border:1px solid #cfff7447;border-radius:999px;padding:.5rem .8rem}.owner-workspace-connection button:hover,.owner-workspace-connection button:focus-visible{border-color:var(--warm-lime);color:var(--warm-lime);outline:none}.owner-booking-meet-link{width:fit-content;color:var(--warm-lime);gap:.35rem;margin-top:.65rem;font-size:.82rem;text-decoration:none;display:inline-flex}.owner-booking-meet-link:hover,.owner-booking-meet-link:focus-visible{outline:none;text-decoration:underline}.owner-bookings-header>div>span,.owner-bookings-header>strong{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:.4rem;font-size:.68rem;display:inline-flex}.owner-bookings-count{background:#cfff740e;border:1px solid #cfff742e;border-radius:999px;flex:none;padding:.5rem .7rem}.owner-bookings-header svg{width:15px;height:15px}.owner-bookings-header h2{margin:.35rem 0 0;font-size:clamp(1.15rem,2.2vw,1.55rem)}.owner-booking-list{gap:.75rem;display:grid}.owner-booking-card{border:1px solid var(--border-subtle);background:linear-gradient(115deg,#cfff7406,#0000 45%),#0b0f0733;border-radius:20px;grid-template-columns:minmax(180px,.8fr) minmax(240px,1.4fr) auto;align-items:center;gap:.8rem 1.25rem;padding:1.2rem;transition:border-color .24s,transform .24s,box-shadow .24s;display:grid;position:relative;box-shadow:inset 0 1px #ffffff06}.owner-booking-card:hover{border-color:#cfff744d;transform:translateY(-2px);box-shadow:inset 0 1px #ffffff09,0 14px 35px #080c0524}.owner-booking-status{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#cfff740e;border:1px solid #cfff7433;border-radius:999px;padding:.28rem .52rem;font-size:.58rem;position:absolute;top:.8rem;right:.8rem}.owner-bookings-confirmed .owner-booking-card{border-left-color:#cfff747a}.owner-booking-person{gap:.28rem;min-width:0;display:grid}.owner-booking-person strong{text-overflow:ellipsis;white-space:nowrap;padding-right:5.5rem;font-size:.92rem;overflow:hidden}.owner-booking-person a,.owner-booking-time{min-width:0;color:var(--text-muted);align-items:center;gap:.35rem;font-size:.7rem;text-decoration:none;display:flex}.owner-booking-person a{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.owner-booking-person svg,.owner-booking-time svg{width:14px;height:14px;color:var(--warm-lime);flex:none}.owner-booking-card>p{color:var(--text-muted);margin:0;font-size:.78rem;line-height:1.5}.owner-booking-time{background:#cfff7409;border:1px solid #cfff741a;border-radius:13px;flex-wrap:wrap;padding:.65rem .75rem}.owner-booking-time span{opacity:.72;width:100%;padding-left:1.15rem;font-size:.62rem}.owner-booking-actions{border-top:1px solid var(--border-subtle);grid-column:1/-1;justify-content:flex-end;gap:.5rem;padding-top:.7rem;display:flex}.owner-booking-actions button{border:1px solid var(--border-subtle);min-height:38px;color:var(--page-text);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:.4rem;padding:0 .75rem;display:inline-flex}.owner-bookings-pending .owner-booking-actions button:first-child{color:var(--olive-deep);border-color:var(--warm-lime);background:var(--warm-lime)}.owner-booking-actions button:hover:not(:disabled){background:#cfff7412;border-color:#cfff746b}.owner-bookings-pending .owner-booking-actions button:first-child:hover:not(:disabled){color:var(--olive-deep);background:var(--warm-lime);filter:brightness(1.04)}.owner-booking-actions button:disabled{cursor:wait;opacity:.55}.owner-booking-actions button:focus-visible,.owner-booking-person a:focus-visible{outline:2px solid var(--warm-lime);outline-offset:3px}.owner-booking-actions svg{width:15px;height:15px}.owner-bookings-state,.owner-bookings-error{color:var(--text-muted);background:#e8deff0a;border-radius:14px;align-items:center;gap:.5rem;margin:0;padding:.9rem;font-size:.78rem;display:flex}@media (max-width:800px){.owner-bookings-header{align-items:center}.owner-booking-card{grid-template-columns:1fr;padding-top:2.8rem}.owner-booking-actions{grid-column:1;justify-content:stretch}.owner-booking-actions button{flex:1;justify-content:center}.owner-booking-person strong{padding-right:0}}@media (prefers-reduced-motion:reduce){.owner-booking-card{transition:border-color .15s}.owner-booking-card:hover{transform:none}}.owner-bookings-error{color:#ffd6cf;border:1px solid #ff786438}.booking-page{z-index:1;width:min(100%,1440px);padding:clamp(8rem, 13vh, 10rem) var(--page-gutter) clamp(6rem, 10vw, 9rem);margin:0 auto;position:relative}.booking-hero{text-align:center;max-width:900px;margin:0 auto clamp(3rem,6vw,5rem)}.booking-hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(3.8rem,8vw,7.4rem);line-height:.92}.booking-hero h1 span{color:var(--warm-lime)}.booking-hero>p:last-child{color:var(--text-muted);margin:1.35rem auto 0;font-size:clamp(1rem,1.35vw,1.14rem)}.booking-scheduler{background:linear-gradient(145deg,#cfff7409,#0000 45%),#181f0de6;border:1px solid #cfff742b;border-radius:clamp(1.6rem,3vw,2.5rem);width:min(100%,1080px);margin-inline:auto;scroll-margin-top:7rem;animation:.6s cubic-bezier(.22,1,.36,1) backwards booking-scheduler-enter;overflow:hidden;box-shadow:0 34px 95px #090c0433}.booking-scheduler:focus-visible{outline:2px solid var(--warm-lime);outline-offset:5px}.booking-preview-banner{color:var(--text-muted);background:#cfff740b;border-bottom:1px solid #cfff7421;align-items:center;gap:.75rem 1.1rem;padding:.85rem clamp(1.25rem,3vw,2rem);font-size:.78rem;display:flex}.booking-preview-banner strong{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;flex:none;font-size:.66rem}.booking-scheduler-columns{grid-template-columns:minmax(205px,.78fr) minmax(340px,1.25fr) minmax(225px,.82fr);display:grid}.meeting-details,.booking-calendar-column,.booking-slots-column{min-width:0;padding:clamp(1.25rem,2.3vw,1.8rem)}.booking-calendar-column,.booking-slots-column{border-left:1px solid #cfff741f}.meeting-avatar-frame{border-radius:1.1rem;width:76px;height:76px;margin-bottom:1.5rem;display:block;position:relative;overflow:hidden;box-shadow:0 0 32px #cfff7417}.meeting-avatar{object-fit:cover;width:244px;max-width:none;height:325px;position:absolute;top:-96px;left:-72px}.meeting-details .eyebrow{margin-bottom:.55rem;font-size:.62rem}.meeting-details h2,.booking-calendar-header h2,.booking-slots-heading h2,.booking-form-heading h2{letter-spacing:-.04em;margin:0}.meeting-details h2{text-transform:uppercase;font-size:clamp(1.7rem,2.5vw,2.25rem);line-height:1}.meeting-details ul{gap:.9rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.meeting-details li{color:var(--text-muted);align-items:center;gap:.7rem;font-size:.82rem;display:flex}.meeting-details li svg{width:17px;height:17px;color:var(--warm-lime);stroke-width:1.65px;flex:none}.booking-calendar-header,.booking-slots-heading,.booking-form-heading,.booking-submit-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.booking-calendar-header h2,.booking-slots-heading h2,.booking-form-heading h2{font-size:1.35rem}.booking-calendar-header>div{gap:.4rem;display:flex}.booking-calendar-header button,.time-format-toggle button{min-width:42px;height:42px;color:var(--off-white);cursor:pointer;background:#cfff7409;border:1px solid #cfff7424;border-radius:.8rem;place-items:center;padding:0;display:grid}.booking-calendar-header button:disabled{cursor:not-allowed;opacity:.35}.booking-calendar-header svg{width:18px;height:18px}.booking-weekdays,.booking-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;display:grid}.booking-weekdays{margin:1.5rem 0 .55rem}.booking-weekdays span{color:#f5f2e885;font-family:var(--font-mono);text-align:center;text-transform:uppercase;font-size:.6rem}.booking-calendar-grid{align-content:start;min-height:290px;transition:opacity .22s}.booking-calendar-grid.is-loading{opacity:.45}.booking-calendar-grid>button,.booking-calendar-grid>span{border:1px solid #0000;border-radius:.75rem;place-items:center;min-width:0;min-height:42px;padding:0;display:grid;position:relative}.booking-calendar-grid>button{color:var(--off-white);cursor:pointer;background:0 0;font-size:.82rem;transition:color .22s,background-color .22s,border-color .22s,transform .22s}.booking-calendar-grid>button:hover:not(:disabled){background:#cfff7412;border-color:#cfff7459}.booking-calendar-grid>button:disabled{color:#f5f2e83d;cursor:not-allowed;text-decoration:line-through}.booking-calendar-grid>button.is-today:not(.is-selected){border-color:#e8deff5c}.booking-calendar-grid>button.is-selected{border-color:var(--warm-lime);color:var(--olive-deep);background:var(--warm-lime);box-shadow:0 8px 24px #cfff741f}.booking-calendar-grid>button.is-selected:hover:not(:disabled),.booking-calendar-grid>button.is-selected:focus-visible{border-color:var(--off-white);color:var(--olive-deep);background:var(--warm-lime);box-shadow:0 0 0 2px var(--olive-deep), 0 0 0 4px var(--warm-lime), 0 10px 26px #cfff742e;transform:translateY(-1px)scale(1.04)}.booking-calendar-grid button small{letter-spacing:.04em;text-transform:uppercase;font-size:.42rem;font-weight:800;position:absolute;bottom:2px}.booking-calendar-header button:focus-visible,.booking-calendar-grid button:focus-visible,.time-format-toggle button:focus-visible,.booking-slots-list button:focus-visible,.booking-form input:focus-visible,.booking-form textarea:focus-visible,.booking-form button:focus-visible{outline:2px solid var(--warm-lime);outline-offset:2px}.booking-slots-heading{align-items:flex-start}.booking-slots-heading p{color:var(--text-muted);margin:.5rem 0 0;font-size:.73rem;line-height:1.4}.booking-slots-heading small{color:#f5f2e87a;font-family:var(--font-mono);font-size:.62rem}.time-format-toggle{border:1px solid #cfff7424;border-radius:.8rem;gap:.2rem;margin:0;padding:.2rem;display:flex}.time-format-toggle button{border:0;border-radius:.55rem;min-width:38px;height:32px;font-size:.65rem}.time-format-toggle button[aria-pressed=true]{color:var(--olive-deep);background:var(--warm-lime)}.booking-slots-list{overscroll-behavior:contain;scrollbar-color:#cfff749e #cfff740e;scrollbar-width:thin;gap:.55rem;max-height:305px;margin-top:1.4rem;padding-right:.25rem;display:grid;overflow-y:auto}.booking-slots-list::-webkit-scrollbar{width:6px}.booking-slots-list::-webkit-scrollbar-track{background:#cfff740e;border-radius:999px}.booking-slots-list::-webkit-scrollbar-thumb{background:#cfff748c;border:1px solid #2f3a1db8;border-radius:999px}.booking-slots-list::-webkit-scrollbar-thumb:hover{background:#cfff74c7}.booking-slots-list>button{min-height:48px;color:var(--off-white);cursor:pointer;font-family:var(--font-mono);background:#cfff7409;border:1px solid #cfff7424;border-radius:.8rem;justify-content:space-between;align-items:center;padding:0 .9rem;font-size:.75rem;transition:transform .22s,color .22s,border-color .22s,background-color .22s;display:flex}.booking-slots-list>button:hover{border-color:#cfff7466;transform:translateY(-2px)}.booking-slots-list>button.is-selected{border-color:var(--warm-lime);color:var(--olive-deep);background:var(--warm-lime)}.booking-slots-list svg{width:16px;height:16px}.booking-state-message{min-height:160px;color:var(--text-muted);text-align:center;border:1px dashed #cfff742b;border-radius:1rem;place-items:center;padding:1rem;font-size:.8rem;line-height:1.55;display:grid}.booking-form{border-top:1px solid #cfff741f;padding:clamp(1.25rem,2.3vw,1.8rem)}.booking-form-heading{align-items:flex-end;margin-bottom:1.5rem}.booking-form-heading .eyebrow{margin-bottom:.45rem;font-size:.62rem}.booking-form-heading>p{max-width:340px;color:var(--text-muted);text-align:right;margin:0;font-size:.78rem;line-height:1.5}.booking-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.booking-form label{flex-direction:column;gap:.55rem;min-width:0;font-size:.78rem;font-weight:650;display:flex}.booking-form input,.booking-form textarea{width:100%;color:var(--off-white);font:inherit;background:#cfff7409;border:1px solid #cfff7429;border-radius:.9rem;font-weight:450}.booking-form input{height:50px;padding:0 .9rem}.booking-form textarea{resize:vertical;min-height:120px;padding:.9rem;line-height:1.55}.booking-form input[aria-invalid=true],.booking-form textarea[aria-invalid=true]{border-color:var(--soft-lilac)}.booking-form label>small,.booking-topic-help small:first-child{color:var(--soft-lilac);font-size:.67rem;font-weight:500}.booking-topic-field{grid-column:1/-1}.booking-topic-help{color:var(--text-muted);justify-content:space-between;gap:1rem;display:flex}.booking-topic-help small:last-child{margin-left:auto;font-size:.65rem;font-weight:500}.booking-honeypot{position:absolute;left:-10000px}.booking-error-summary{color:var(--soft-lilac);background:#e8deff0b;border:1px solid #e8deff5c;border-radius:.9rem;margin-bottom:1.25rem;padding:1rem}.booking-error-summary p{margin:.4rem 0 0;font-size:.75rem;line-height:1.5}.booking-submit-row{margin-top:1.35rem}.booking-submit-row p{color:var(--text-muted);margin:0;font-size:.72rem}.booking-submit-row button{border:1px solid var(--warm-lime);min-width:190px;min-height:50px;color:var(--olive-deep);background:var(--warm-lime);cursor:pointer;border-radius:999px;padding:0 1.25rem;font-weight:750}.booking-submit-row button:disabled{color:#f5f2e875;cursor:not-allowed;background:#f5f2e80f;border-color:#f5f2e82e}.booking-success{gap:clamp(1.5rem,3vw,2.25rem);max-width:920px;min-height:440px;margin:0 auto;padding:clamp(1.5rem,4vw,3rem);display:grid}.booking-success-header{border-bottom:1px solid #cfff7424;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:1.25rem;padding-bottom:1.75rem;display:grid;position:relative}.booking-success-icon{width:58px;height:58px;color:var(--olive-deep);background:var(--warm-lime);border:1px solid #cfff746b;border-radius:50%;place-items:center;display:grid;box-shadow:0 14px 35px #cfff741f}.booking-success-icon svg{stroke-width:2.4px;width:25px;height:25px}.booking-success-header .eyebrow{margin:0 0 .55rem}.booking-success h2{color:var(--page-text);letter-spacing:-.055em;margin:0;font-size:clamp(2rem,4.5vw,3.6rem);line-height:.98}.booking-success h2:focus{outline:none}.booking-success-intro{max-width:620px;color:var(--text-muted);margin:1rem 0 0;line-height:1.65}.booking-success-status{min-height:34px;color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#cfff7412;border:1px solid #cfff7433;border-radius:999px;align-items:center;gap:.45rem;padding:.5rem .75rem;font-size:.66rem;display:inline-flex}.booking-success-status svg{width:14px;height:14px}.booking-success-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;display:grid}.booking-success-details>div{background:#0c100738;border:1px solid #cfff741f;border-radius:1rem;grid-template-columns:auto 1fr;gap:.3rem .75rem;padding:1rem 1.1rem;display:grid}.booking-success-details svg{width:18px;height:18px;color:var(--warm-lime);grid-row:1/3;margin-top:.15rem}.booking-success-details dt{color:var(--text-muted);font-size:.7rem}.booking-success-details dd{overflow-wrap:anywhere;margin:0;font-size:.9rem;font-weight:650}.booking-success-next-step{border-left:2px solid var(--warm-lime);background:#cfff740e;border-radius:0 .9rem .9rem 0;gap:.9rem;padding:1rem 1.1rem;display:flex}.booking-success-next-step>svg{width:19px;height:19px;color:var(--warm-lime);flex:none;margin-top:.15rem}.booking-success-next-step strong{font-size:.85rem}.booking-success-next-step p{color:var(--text-muted);margin:.35rem 0 0;font-size:.82rem;line-height:1.55}@keyframes booking-scheduler-enter{0%{opacity:0;transform:translateY(18px)}}@media (max-width:1100px){.booking-scheduler-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-details{border-bottom:1px solid #cfff741f;grid-column:1/-1;grid-template-columns:auto 1fr;column-gap:1.25rem;display:grid}.meeting-avatar-frame{grid-row:span 3;margin:0}.meeting-details ul{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}.booking-calendar-column{border-left:0}}@media (max-width:760px){.booking-page{padding-top:12rem}.booking-hero h1{font-size:clamp(3.4rem,16vw,5rem)}.booking-preview-banner{flex-direction:column;align-items:flex-start}.booking-scheduler-columns,.booking-form-grid{grid-template-columns:1fr}.meeting-details{display:block}.meeting-avatar-frame{margin-bottom:1.25rem}.meeting-details ul{grid-template-columns:1fr}.booking-calendar-column,.booking-slots-column{border-top:1px solid #cfff741f;border-left:0}.booking-calendar-grid>button,.booking-calendar-grid>span{min-height:44px}.booking-form-heading,.booking-submit-row{flex-direction:column;align-items:flex-start}.booking-form-heading>p{text-align:left}.booking-submit-row button{width:100%}.booking-success{min-height:auto;padding:1.25rem}.booking-success-header{grid-template-columns:auto minmax(0,1fr);gap:.9rem}.booking-success-icon{width:48px;height:48px}.booking-success-status{grid-column:1/-1;justify-self:start}.booking-success-details{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.assistant-message-loading svg{animation:none}.booking-scheduler{opacity:1;animation:none;transform:none}.booking-slots-list>button:hover{transform:none}}.guestbook-page{z-index:1;min-height:100svh;padding:clamp(9rem, 15vh, 11rem) var(--page-gutter) clamp(5rem, 9vw, 8rem);position:relative}.guestbook-page-inner{width:min(100%,900px);margin:0 auto}.guestbook-hero{text-align:center;margin:clamp(3rem,7vw,5.5rem) 0 clamp(2.75rem,6vw,4.75rem)}.guestbook-hero .eyebrow{margin-bottom:1rem}.guestbook-hero h1{letter-spacing:-.07em;margin:0;font-size:clamp(4rem,9vw,7.5rem);line-height:.9}.guestbook-hero h1 span{color:var(--warm-lime)}.guestbook-hero>p:last-child{color:var(--text-muted);margin:1.4rem auto 0;font-size:clamp(1rem,1.4vw,1.13rem);line-height:1.6}.guestbook-auth-panel{text-align:center;background:radial-gradient(circle at 50% 0,#cfff741c,#0000 48%),#181f0de6;border:1px solid #cfff7447;border-radius:clamp(1.5rem,3vw,2.25rem);place-items:center;gap:1.4rem;padding:clamp(1.6rem,4vw,2.5rem);display:grid;position:relative;overflow:hidden;box-shadow:0 28px 75px #090c0433}.guestbook-panel-icon{width:56px;height:56px;color:var(--warm-lime);background:#cfff7412;border:1px solid #cfff7447;border-radius:1rem;place-items:center;display:grid}.guestbook-panel-icon svg{width:24px;height:24px}.guestbook-auth-copy{max-width:620px}.guestbook-auth-copy .eyebrow{margin-bottom:.75rem}.guestbook-auth-copy h2,.guestbook-wall-heading h2{letter-spacing:-.05em;margin:0;font-size:clamp(1.75rem,4vw,2.6rem);line-height:1}.guestbook-auth-copy>p:last-child{color:var(--text-muted);margin:1rem auto 0;line-height:1.65}.guestbook-config-status{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.guestbook-config-status span{min-height:44px;color:var(--text-muted);background:#e8deff09;border:1px solid #e8deff26;border-radius:999px;align-items:center;gap:.55rem;padding:.65rem .85rem;font-size:.76rem;display:inline-flex}.guestbook-config-status svg{width:15px;height:15px;color:var(--warm-lime)}.guestbook-config-note{color:#f5f2e880;font-family:var(--font-mono);margin:0;font-size:.68rem;line-height:1.55}.guestbook-wall{margin-top:clamp(3.5rem,7vw,5.5rem)}.guestbook-wall-heading{justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.25rem;display:flex}.guestbook-wall-heading .eyebrow{margin-bottom:.55rem}.guestbook-wall-heading>span{color:var(--text-muted);font-family:var(--font-mono);text-transform:uppercase;font-size:.7rem}.guestbook-preview-note{min-height:44px;color:var(--text-muted);background:#cfff7409;border:1px solid #cfff742b;border-radius:.9rem;align-items:center;gap:.7rem;margin-bottom:.85rem;padding:.7rem .9rem;font-size:.76rem;display:flex}.guestbook-preview-note svg{width:16px;height:16px;color:var(--warm-lime);flex:none}.guestbook-preview-note p{margin:0}.guestbook-message-card{background:#181f0dc7;border:1px solid #cfff742b;border-radius:1.4rem;grid-template-columns:auto 1fr;gap:1rem;padding:clamp(1.25rem,3vw,1.75rem);transition:border-color .22s;display:grid;position:relative;overflow:hidden}.guestbook-message-card:hover{border-color:#cfff7461}.guestbook-message-avatar{width:46px;height:46px;color:var(--olive-deep);background:var(--warm-lime);border:1px solid #cfff7440;border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid}.guestbook-message-content{min-width:0}.guestbook-message-content header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.guestbook-message-content h3{margin:0;font-size:1rem}.guestbook-message-content header p{color:var(--text-muted);margin:.3rem 0 0;font-size:.7rem}.guestbook-message-content header>span{color:var(--warm-lime);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:#cfff7414;border-radius:999px;padding:.3rem .55rem;font-size:.58rem}.guestbook-message-content>p{color:var(--text-muted);overflow-wrap:anywhere;white-space:pre-wrap;margin:1rem 0 0;line-height:1.65}.guestbook-message-watermark{color:#cfff7406;pointer-events:none;width:88px;height:88px;position:absolute;bottom:-1.2rem;right:-1rem}.guestbook-preview-skeleton{opacity:.45;border:1px dashed #cfff741a;border-radius:1.4rem;grid-template-columns:auto 1fr;gap:1rem;margin-top:.8rem;padding:1.4rem;display:grid}.guestbook-preview-skeleton>span{background:#e8deff14;border-radius:50%;width:46px;height:46px}.guestbook-preview-skeleton>div{gap:.6rem;display:grid}.guestbook-preview-skeleton>div span{background:#e8deff14;border-radius:999px;height:8px;display:block}.guestbook-preview-skeleton>div span:first-child{width:28%}.guestbook-preview-skeleton>div span:nth-child(2){width:92%}.guestbook-preview-skeleton>div span:nth-child(3){width:68%}.guestbook-enter{animation:.55s cubic-bezier(.22,1,.36,1) backwards guestbook-enter}.guestbook-enter-panel{animation-delay:.1s}@keyframes guestbook-enter{0%{opacity:0;transform:translateY(16px)}}@media (max-width:760px){.guestbook-page{padding-top:11.5rem}.guestbook-hero h1{font-size:clamp(3.5rem,17vw,5rem)}.guestbook-auth-panel{padding:1.5rem 1.15rem}.guestbook-config-status{width:100%}.guestbook-config-status span{justify-content:center;width:100%}.guestbook-wall-heading{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.guestbook-enter{opacity:1;animation:none;transform:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.contact-dialog-portal{z-index:100;position:fixed;inset:0}.contact-dialog-backdrop{-webkit-backdrop-filter:blur(7px);background:#0a0d06ad;justify-content:center;align-items:flex-end;height:100%;padding:1.25rem 1rem 0;animation:.34s both contact-backdrop-in;display:flex}.contact-dialog{width:min(100%,560px);max-height:calc(100dvh - 2.5rem);padding:1.25rem clamp(1.35rem, 4vw, 2.25rem) calc(1.5rem + env(safe-area-inset-bottom));color:var(--off-white);overscroll-behavior:contain;background:radial-gradient(circle at 50% 0,#cfff7412,#0000 38%),#1a210ffb;border:1px solid #cfff7433;border-bottom:0;border-radius:2rem 2rem 0 0;animation:.4s cubic-bezier(.22,1,.36,1) both contact-dialog-in;position:relative;overflow-y:auto;box-shadow:0 -28px 85px #070a036b}.contact-dialog-portal.is-closing .contact-dialog-backdrop{animation:.34s both contact-backdrop-out}.contact-dialog-portal.is-closing .contact-dialog{animation:.34s cubic-bezier(.4,0,1,1) both contact-dialog-out}.contact-dialog-handle{background:#f5f2e847;border-radius:999px;width:46px;height:4px;margin:0 auto 1rem;display:block}.contact-dialog-close{width:44px;height:44px;color:var(--text-muted);cursor:pointer;background:#cfff7409;border:1px solid #cfff7429;border-radius:999px;place-items:center;padding:0;transition:color .24s,border-color .24s,background-color .24s,transform .24s;display:grid;position:absolute;top:1.25rem;right:1.25rem}.contact-dialog-close svg{width:20px;height:20px}.contact-dialog-close:hover,.contact-dialog-close:focus-visible{color:var(--warm-lime);background:#cfff7414;border-color:#cfff7475;transform:rotate(4deg)}.contact-dialog-close:focus-visible,.contact-action-card:focus-visible,.copy-email-button:focus-visible,.contact-social-links a:focus-visible{outline:2px solid var(--warm-lime);outline-offset:3px}.contact-dialog-heading{padding-right:3.25rem}.contact-dialog-heading .eyebrow{margin-bottom:.7rem;font-size:.67rem}.contact-dialog-heading h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.7rem,7vw,4rem);line-height:.95}.contact-dialog-heading>p:last-child{color:var(--text-muted);margin:.85rem 0 0;line-height:1.55}.contact-dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin-top:1.75rem;display:grid}.contact-action-card{min-height:190px;color:var(--off-white);background:radial-gradient(circle at 20% 10%,#cfff740f,#0000 46%),#293317c7;border:1px solid #cfff7424;border-radius:1.35rem;flex-direction:column;justify-content:space-between;padding:1.25rem;text-decoration:none;transition:transform .28s cubic-bezier(.22,1,.36,1),border-color .24s,background-color .24s,box-shadow .26s;display:flex;position:relative;overflow:hidden}.contact-action-card>svg{width:30px;height:30px;color:var(--warm-lime);stroke-width:1.55px;transition:transform .26s cubic-bezier(.22,1,.36,1)}.contact-action-card span{flex-direction:column;gap:.55rem;display:flex}.contact-action-card strong{letter-spacing:-.035em;font-size:1.35rem;transition:color .24s}.contact-action-card small{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:700;line-height:1.45}a.contact-action-card:hover,a.contact-action-card:focus-visible{background-color:#303d19f0;border-color:#cfff7480;transform:translateY(-4px);box-shadow:0 18px 44px #0a0d0538}a.contact-action-card:hover>svg,a.contact-action-card:focus-visible>svg{transform:translateY(-3px)}a.contact-action-card:hover strong,a.contact-action-card:focus-visible strong{color:var(--warm-lime)}.contact-action-card.is-unavailable{color:#f5f2e8b3;background:#232b1594;border-style:dashed}.contact-action-card.is-unavailable:after{color:#f5f2e894;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;content:"Unavailable";border:1px solid #f5f2e826;border-radius:999px;padding:.25rem .45rem;font-size:.55rem;position:absolute;top:1rem;right:1rem}.contact-action-card.is-unavailable>svg{color:#cfff748c}.contact-dialog-footer{border-top:1px solid #cfff7421;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.25rem;display:flex}.copy-email-button{min-height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:.6rem;padding:0;font-size:.8rem;font-weight:650;transition:color .24s;display:inline-flex}.copy-email-button svg{width:17px;height:17px}.copy-email-button:hover,.copy-email-button:focus-visible,.copy-email-button.is-copied{color:var(--warm-lime)}.copy-email-button.is-failed{color:var(--soft-lilac)}.contact-social-links{gap:.55rem;display:flex}.contact-social-links a{width:44px;height:44px;color:var(--text-muted);background:#cfff7409;border:1px solid #cfff7424;border-radius:999px;place-items:center;transition:color .24s,border-color .24s,background-color .24s,transform .24s;display:grid}.contact-social-links a:hover,.contact-social-links a:focus-visible{color:var(--warm-lime);background:#cfff7414;border-color:#cfff746b;transform:translateY(-2px)scale(1.03)}@keyframes contact-backdrop-in{0%{opacity:0}}@keyframes contact-dialog-in{0%{opacity:0;transform:translateY(100%)}}@keyframes contact-backdrop-out{to{opacity:0}}@keyframes contact-dialog-out{to{opacity:0;transform:translateY(100%)}}@media (max-width:620px){.contact-dialog-backdrop{padding:0}.contact-dialog{width:100%;max-height:calc(100dvh - env(safe-area-inset-top));border-left:0;border-right:0;border-radius:1.75rem 1.75rem 0 0;padding-left:1rem;padding-right:1rem}.contact-dialog-actions{gap:.7rem}.contact-action-card{min-height:170px;padding:1rem}.contact-dialog-footer{flex-direction:column;align-items:flex-start}.contact-social-links{justify-content:flex-end;align-self:stretch}}@media (prefers-reduced-motion:reduce){.contact-dialog-backdrop,.contact-dialog,.contact-dialog-portal.is-closing .contact-dialog-backdrop,.contact-dialog-portal.is-closing .contact-dialog{animation-duration:.01ms;transform:none}a.contact-action-card:hover,a.contact-action-card:focus-visible,.contact-dialog-close:hover,.contact-social-links a:hover,.contact-social-links a:focus-visible{transform:none}}.nav-link:is(a){align-items:center;text-decoration:none;display:inline-flex}.links-page{z-index:1;min-height:100svh;padding:clamp(9rem, 16vh, 11rem) var(--page-gutter) clamp(5rem, 10vw, 8rem);position:relative}.links-page-inner{width:min(100%,820px);margin:0 auto}.links-back-link{min-height:44px;color:var(--text-muted);align-items:center;gap:.65rem;font-size:.88rem;font-weight:620;text-decoration:none;transition:color .24s;display:inline-flex}.links-back-link svg{width:17px;height:17px;transition:transform .26s cubic-bezier(.22,1,.36,1)}.links-back-link:hover,.links-back-link:focus-visible{color:var(--warm-lime)}.links-back-link:hover svg,.links-back-link:focus-visible svg{transform:translate(-5px)}.links-back-link:focus-visible,.social-link-card:focus-visible{outline:2px solid var(--warm-lime);outline-offset:5px}.links-page-heading{text-align:center;margin:clamp(3.25rem,8vw,5.75rem) 0 clamp(3rem,7vw,5rem)}.links-page-heading .eyebrow{margin-bottom:1rem}.links-page-heading h1{letter-spacing:-.07em;margin:0;font-size:clamp(4.5rem,10vw,8rem);line-height:.88}.links-page-heading h1 span{color:var(--warm-lime)}.links-page-heading>p:last-child{color:var(--text-muted);margin:1.5rem auto 0;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.6}.social-links-list{gap:1.15rem;display:grid}.social-link-card{--link-pointer-x:50%;--link-pointer-y:50%;min-height:112px;color:var(--off-white);isolation:isolate;background:linear-gradient(110deg,#cfff7409,#0000 48%),#19200ed6;border:1px solid #cfff7424;border-radius:clamp(1.35rem,2.7vw,2rem);grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(1.25rem,3vw,2rem);padding:clamp(1rem,2vw,1.3rem);text-decoration:none;transition:transform .3s cubic-bezier(.22,1,.36,1),border-color .24s,background-color .24s,box-shadow .28s;display:grid;position:relative;overflow:hidden;box-shadow:0 22px 58px #0a0d0526}.social-link-glow{z-index:-1;background:radial-gradient(circle 220px at var(--link-pointer-x) var(--link-pointer-y), #cfff7424, transparent 72%);opacity:0;pointer-events:none;transition:opacity .24s;position:absolute;inset:0}.social-link-icon{aspect-ratio:1;width:clamp(56px,6vw,64px);color:var(--warm-lime);background:#cfff740e;border:1px solid #cfff743d;border-radius:1.25rem;place-items:center;transition:background-color .24s,border-color .24s,transform .3s cubic-bezier(.22,1,.36,1);display:grid}.social-link-icon svg{stroke-width:1.65px;width:25px;height:25px}.social-link-copy{flex-direction:column;gap:.45rem;min-width:0;display:flex}.social-link-copy strong{letter-spacing:-.045em;font-size:clamp(1.65rem,3.2vw,2.4rem);line-height:1;transition:color .24s}.social-link-copy small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.social-link-arrow{color:#f5f2e8ad;width:27px;height:27px;transition:color .24s,transform .3s cubic-bezier(.22,1,.36,1)}.social-link-card:hover,.social-link-card:focus-visible{background-color:#212a12f0;border-color:#cfff7485;transform:translate(7px,-3px);box-shadow:0 28px 70px #0a0d053d}.social-link-card:hover .social-link-glow,.social-link-card:focus-visible .social-link-glow{opacity:1}.social-link-card:hover .social-link-icon,.social-link-card:focus-visible .social-link-icon{background:#cfff741c;border-color:#cfff7480;transform:translateY(-2px)}.social-link-card:hover .social-link-copy strong,.social-link-card:focus-visible .social-link-copy strong,.social-link-card:hover .social-link-arrow,.social-link-card:focus-visible .social-link-arrow{color:var(--warm-lime)}.social-link-card:hover .social-link-arrow,.social-link-card:focus-visible .social-link-arrow{transform:translate(4px,-4px)}.links-enter{animation:.62s cubic-bezier(.22,1,.36,1) backwards links-page-enter}.links-enter-back{animation-delay:60ms}.links-enter-heading{animation-delay:.13s}.social-link-card.links-enter{animation-delay:calc(.22s + var(--links-index) * 80ms)}@keyframes links-page-enter{0%{opacity:0;transform:translateY(18px)}}@media (max-width:760px){.links-page{padding-top:13rem}.links-page-heading{margin-top:2.5rem}.links-page-heading h1{font-size:clamp(4rem,20vw,5.7rem)}.social-link-card{border-radius:1.35rem;gap:1rem;min-height:116px;padding:1.1rem}.social-link-icon{border-radius:1rem;width:60px}.social-link-copy strong{font-size:1.6rem}}@media (hover:none),(pointer:coarse){.social-link-glow{display:none}.social-link-card:hover,.social-link-card:focus-visible{transform:none}}@media (prefers-reduced-motion:reduce){:is(.projects-heading,.skills-heading,.more-explore-heading) [data-luster-title]{color:var(--title-base-color);-webkit-text-fill-color:currentColor;background-image:none}.links-enter,.social-link-card,.social-link-card:hover,.social-link-card:focus-visible,.links-back-link svg,.social-link-arrow,.social-link-icon{opacity:1;animation:none;transform:none}.social-link-glow{display:none}}.guestbook-signin-layout,.guestbook-composer-layout{width:100%}.guestbook-signin-layout{text-align:center;justify-items:center;gap:1.35rem;display:grid}.guestbook-signin-layout .guestbook-auth-copy{width:100%;padding-inline:clamp(.5rem,3vw,2rem)}.guestbook-signin-layout .guestbook-auth-copy h2{text-align:center;letter-spacing:-.045em;white-space:nowrap;width:100%;max-width:none;margin-inline:auto;font-size:clamp(.56rem,2.1vw,1.8rem);line-height:1.08}.guestbook-provider-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.guestbook-provider-button,.guestbook-signout,.guestbook-composer button,.guestbook-review-actions button{min-height:46px;color:var(--page-text);cursor:pointer;background:#cfff740e;border:1px solid #cfff7438;border-radius:999px;justify-content:center;align-items:center;gap:.6rem;font-weight:650;text-decoration:none;transition:all .24s;display:inline-flex}.guestbook-provider-button{padding:.65rem 1.15rem}.guestbook-provider-button svg,.guestbook-signout svg,.guestbook-composer button svg,.guestbook-review-actions button svg{width:18px;height:18px}.guestbook-provider-button:hover,.guestbook-provider-button:focus-visible,.guestbook-signout:hover,.guestbook-signout:focus-visible,.guestbook-composer button:hover:not(:disabled),.guestbook-composer button:focus-visible,.guestbook-review-actions button:hover,.guestbook-review-actions button:focus-visible{color:var(--warm-lime);background:#cfff741a;border-color:#cfff7494;outline:2px solid #0000;transform:translateY(-2px)}.guestbook-composer-layout{gap:1.4rem;display:grid}.guestbook-signed-user{text-align:left;grid-template-columns:auto 1fr;align-items:center;gap:1rem;display:grid}.guestbook-signed-user-copy{justify-items:start;gap:.35rem;display:grid}.guestbook-signed-user h2{letter-spacing:-.025em;max-width:none;margin:0;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.2}.guestbook-signout.guestbook-signout-link{min-height:auto;color:var(--text-muted);text-underline-offset:.2em;background:0 0;border:0;border-radius:0;padding:0;font-size:.75rem;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:color .22s,text-decoration-color .22s}.guestbook-signout.guestbook-signout-link:hover,.guestbook-signout.guestbook-signout-link:focus-visible{color:var(--warm-lime);background:0 0;outline:none;text-decoration-color:currentColor;transform:none}.guestbook-signout.guestbook-signout-link:focus-visible{border-radius:.2rem;box-shadow:0 0 0 3px #cfff742e}.guestbook-composer{text-align:left;gap:.65rem;display:grid}.guestbook-composer label{font-size:.8rem;font-weight:700}.guestbook-composer textarea{resize:vertical;min-height:132px;color:var(--page-text);font:inherit;text-align:left;background:#0c100757;border:1px solid #cfff7429;border-radius:1.15rem;outline:none;padding:1rem;line-height:1.55}.guestbook-composer textarea:focus{border-color:#cfff7494;box-shadow:0 0 0 3px #cfff7414}.guestbook-composer>div{justify-content:space-between;align-items:center;gap:1rem;display:flex}.guestbook-composer>div>span{color:var(--text-muted);font-family:var(--font-mono);font-size:.68rem}.guestbook-composer button{color:var(--olive-deep);background:var(--warm-lime);padding:.6rem 1rem}.guestbook-composer button:disabled{cursor:not-allowed;opacity:.45}.guestbook-feedback{color:var(--warm-lime);text-align:center;margin:1rem 0 0;font-size:.82rem}.guestbook-feedback.is-error{color:#ffb4a8}.guestbook-loading{color:var(--text-muted);justify-content:center;align-items:center;gap:.65rem;display:flex}.guestbook-loading svg,.is-spinning{animation:.9s linear infinite guestbook-spin}@keyframes guestbook-spin{to{transform:rotate(360deg)}}.guestbook-message-avatar{background-position:50%;background-size:cover;flex:none}.guestbook-message-list,.guestbook-review-panel{gap:.85rem;display:grid}.guestbook-review-panel{background:linear-gradient(145deg, #cfff740b, transparent 48%), var(--surface-olive);border:1px solid #cfff7433;border-radius:clamp(1.5rem,3vw,2rem);margin-top:clamp(3.5rem,7vw,5.5rem);padding:clamp(1.1rem,3vw,1.75rem);box-shadow:0 24px 70px #070a0429}.guestbook-review-heading{align-items:flex-start}.guestbook-review-heading .eyebrow,.guestbook-review-heading>span,.guestbook-message-content header p{align-items:center;gap:.38rem;display:inline-flex}.guestbook-review-heading .eyebrow svg,.guestbook-review-heading>span svg,.guestbook-message-content header p svg{flex:none;width:14px;height:14px}.guestbook-review-heading>span{background:#cfff740e;border:1px solid #cfff7429;border-radius:999px;padding:.48rem .68rem}.guestbook-review-description{max-width:38rem;color:var(--text-muted);margin:.55rem 0 0;font-size:.82rem;line-height:1.55}.guestbook-review-list{gap:.85rem;display:grid}.guestbook-review-card{background:linear-gradient(115deg,#cfff7409,#0000 42%),#0b0f0733;border-color:#cfff7433;transition:border-color .22s,box-shadow .22s,transform .22s;overflow:visible;box-shadow:inset 3px 0 #cfff7459}.guestbook-review-card:hover,.guestbook-review-card:focus-within{box-shadow:inset 3px 0 var(--warm-lime), 0 16px 36px #070a041f;border-color:#cfff746b;transform:translateY(-2px)}.guestbook-review-card blockquote{color:var(--page-text);overflow-wrap:anywhere;white-space:pre-wrap;margin:1rem 0 0;font-size:.9rem;line-height:1.65}.guestbook-review-actions{gap:.6rem;margin-top:1rem;display:flex}.guestbook-review-actions button{min-height:44px;padding:.5rem .9rem;font-size:.76rem}.guestbook-review-actions .guestbook-review-approve{color:var(--olive-deep);border-color:var(--warm-lime);background:var(--warm-lime)}.guestbook-review-actions .guestbook-review-approve:hover:not(:disabled),.guestbook-review-actions .guestbook-review-approve:focus-visible{color:var(--olive-deep);background:var(--warm-lime);filter:brightness(1.04)}.guestbook-review-actions button:disabled,.guestbook-published-owner-actions button:disabled{cursor:wait;opacity:.55}.guestbook-review-empty{background:#cfff7406;min-height:150px}.guestbook-review-empty svg{width:28px;height:28px}.guestbook-published-owner-actions{border-top:1px solid var(--border-subtle);justify-content:flex-end;margin-top:1rem;padding-top:.75rem;display:flex}.guestbook-published-owner-actions button{min-height:40px;color:var(--text-muted);cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:.45rem;padding:.45rem .72rem;font-size:.72rem;transition:all .22s;display:inline-flex}.guestbook-published-owner-actions button:hover,.guestbook-published-owner-actions button:focus-visible{color:var(--warm-lime);background:#cfff740f;border-color:#cfff744d;outline:none}.guestbook-published-owner-actions button:focus-visible{box-shadow:0 0 0 3px #cfff7426}.guestbook-published-owner-actions svg{width:15px;height:15px}.guestbook-empty{color:var(--text-muted);text-align:center;border:1px dashed #cfff7429;border-radius:1.4rem;justify-items:center;gap:.55rem;padding:2rem;display:grid}.guestbook-empty h3,.guestbook-empty p{margin:0}.guestbook-empty svg{color:var(--warm-lime)}@media (max-width:680px){.guestbook-signed-user{grid-template-columns:auto 1fr}.guestbook-signout{grid-column:1/-1}.guestbook-provider-actions,.guestbook-provider-button{width:100%}.guestbook-review-heading{align-items:flex-start}.guestbook-review-heading>span{align-self:flex-start}.guestbook-review-card{grid-template-columns:1fr}.guestbook-review-actions{grid-template-columns:1fr;display:grid}.guestbook-review-actions button{width:100%}}@media (prefers-reduced-motion:reduce){.guestbook-loading svg,.is-spinning{animation:none}.guestbook-provider-button:hover,.guestbook-signout:hover,.guestbook-composer button:hover,.guestbook-review-actions button:hover,.guestbook-review-card:hover,.guestbook-review-card:focus-within{transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
