*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-jakarta),sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}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{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.hidden{display:none}.resize{resize:both}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--sand-0:#fff7e3;--sand-1:#f8edd0;--sand-2:#eadbb3;--sand-3:#d3c18d;--sea-0:#bce8e1;--sea-1:#52bac4;--sea-2:#16758a;--sea-3:#0a425d;--sea-4:#052638;--ink-0:#113445;--glass:rgba(255,247,228,.72);--shadow-soft:0 24px 80px rgba(10,51,72,.14);--font-jakarta:"Avenir Next","Segoe UI","Trebuchet MS",sans-serif;--font-cormorant:"Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:radial-gradient(circle at top left,hsla(0,0%,100%,.7),transparent 28%),linear-gradient(180deg,var(--sand-0) 0,#d5efe8 32%,#08293d 100%);color:var(--ink-0);font-family:var(--font-jakarta),sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}::-moz-selection{background:rgba(27,118,148,.22);color:#08293d}::selection{background:rgba(27,118,148,.22);color:#08293d}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:rgba(255,247,227,.5)}::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(180deg,rgba(21,119,138,.56),rgba(8,51,72,.82))}.beach-page{position:relative;isolation:isolate;transition:background .28s ease,color .28s ease}.theme-day{--page-hero-text:#fff7e7;--page-hero-muted:rgba(255,250,239,.82);--page-card-text:#214857;--page-card-soft:rgba(255,248,234,.12);--page-shell-top:rgba(8,41,59,.98);--page-shell-bottom:#051624}.theme-night{--page-hero-text:#edf7ff;--page-hero-muted:rgba(237,247,255,.78);--page-card-text:#dcecf7;--page-card-soft:rgba(13,39,63,.3);--page-shell-top:rgba(4,17,31,.98);--page-shell-bottom:#0e2236}.noise-layer{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.14;background-image:linear-gradient(hsla(0,0%,100%,.05) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.04) 1px,transparent 0);background-size:120px 120px;mix-blend-mode:soft-light}.topbar{position:fixed;top:1rem;left:50%;z-index:50;display:flex;width:min(1080px,calc(100% - 2rem));align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-radius:999px;background:var(--glass);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.28),0 18px 40px rgba(17,52,69,.1);backdrop-filter:blur(14px);transform:translateX(-50%)}.theme-night .topbar{background:rgba(9,24,39,.58);box-shadow:inset 0 0 0 1px rgba(188,224,255,.12),0 18px 40px rgba(5,13,24,.28)}.brand-mark{font-size:.9rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#09576b}.theme-night .brand-mark,.theme-night .theme-toggle,.theme-night .topnav{color:#d9efff}.topnav{display:flex;align-items:center;gap:1.4rem;color:rgba(17,52,69,.74);font-size:.84rem;font-weight:600}.topnav a{transition:color .18s ease}.topnav a:hover{color:#0a596f}.topbar-actions{display:flex;align-items:center;gap:.75rem}.primary-link,.secondary-link,.theme-toggle,.topbar-cta{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;transition:box-shadow .22s ease,background-color .22s ease,color .22s ease,border-color .22s ease}.theme-toggle{gap:.5rem;border:none;padding:.72rem .95rem;background:hsla(0,0%,100%,.4);color:#16485b;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.3);cursor:pointer}.theme-toggle-orb{width:1rem;height:1rem;border-radius:50%;background:linear-gradient(135deg,#ffe39b,#ffb56a);box-shadow:0 0 18px rgba(255,199,100,.36)}.theme-night .theme-toggle{background:rgba(14,35,57,.78);box-shadow:inset 0 0 0 1px rgba(202,229,255,.14)}.theme-night .theme-toggle-orb{background:radial-gradient(circle at 32% 32%,#f5fbff 0,#dce9ff 60%,#b8cff0 100%);box-shadow:0 0 18px rgba(202,225,255,.22)}.primary-link,.topbar-cta{padding:.78rem 1.15rem;background:linear-gradient(135deg,#0f6d82,#54d6d0);color:#f9fff9;box-shadow:0 10px 24px rgba(10,104,126,.18)}.theme-night .primary-link,.theme-night .topbar-cta{background:linear-gradient(135deg,#264f7a,#6eb4e4);box-shadow:0 10px 24px rgba(9,28,56,.28)}.secondary-link{padding:.78rem 1.15rem;background:rgba(255,248,234,.24);color:#fef2db;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.18);backdrop-filter:blur(10px)}.theme-night .secondary-link{background:rgba(14,38,58,.34);color:#e9f5ff;box-shadow:inset 0 0 0 1px rgba(194,220,255,.14)}.hero-shell{position:relative;min-height:95svh;display:flex;align-items:center;padding:6rem 0 3rem;overflow:clip}.hero-scene{inset:0}.hero-scene,.scene-blur,.scene-horizon,.scene-orb,.scene-sky,.sea-layer,.shore-foam,.wave-band{position:absolute}.scene-sky{inset:0;z-index:2;background:radial-gradient(circle at 22% 16%,hsla(0,0%,100%,.6),transparent 18%),radial-gradient(circle at 85% 24%,rgba(255,217,173,.52),transparent 22%),linear-gradient(180deg,#fff4d8,#ffd6a7 22%,#6bc6c9 56%,#0d6f86);transition:background .32s ease}.theme-night .scene-sky{background:radial-gradient(circle at 18% 20%,hsla(0,0%,100%,.16),transparent 10%),radial-gradient(circle at 30% 12%,hsla(0,0%,100%,.12),transparent .7%),radial-gradient(circle at 42% 18%,hsla(0,0%,100%,.12),transparent .7%),radial-gradient(circle at 74% 16%,hsla(0,0%,100%,.15),transparent .8%),linear-gradient(180deg,#091525,#102844 28%,#16415f 56%,#0a3048)}.scene-blur{z-index:3;border-radius:999px;filter:blur(58px);transition:background .32s ease,opacity .32s ease}.scene-blur-left{top:12%;left:-6%;width:34vw;height:30vw;background:rgba(130,241,225,.26)}.scene-blur-right{right:-4%;bottom:28%;width:26vw;height:30vw;background:rgba(255,200,146,.22)}.theme-night .scene-blur-left{background:rgba(109,177,255,.18)}.theme-night .scene-blur-right{background:rgba(111,164,220,.14)}.scene-orb{top:13%;right:14%;z-index:4;width:clamp(5.8rem,9vw,8.8rem);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,hsla(0,0%,100%,.92) 0,rgba(255,239,198,.84) 38%,rgba(255,239,198,0) 74%);box-shadow:0 0 70px rgba(255,226,167,.28);transition:background .32s ease,box-shadow .32s ease;animation:orb-float 6s ease-in-out infinite}.theme-night .scene-orb{background:radial-gradient(circle at 35% 35%,hsla(0,0%,100%,.94) 0,rgba(216,228,255,.94) 54%,rgba(216,228,255,0) 76%);box-shadow:0 0 52px rgba(196,221,255,.2)}.theme-night .scene-orb:after{content:"";position:absolute;inset:13% 0 0 22%;border-radius:50%;background:#11243a}.scene-horizon{left:-8%;top:54%;z-index:5;width:116%;height:8vh;border-radius:50%;background:linear-gradient(180deg,rgba(255,246,219,.68),rgba(255,246,219,0));filter:blur(2px)}.theme-night .scene-horizon{background:linear-gradient(180deg,rgba(187,219,255,.34),rgba(187,219,255,0))}.sea-layer,.shore-foam{left:-10%;width:120%}.sea-layer{border-radius:44% 44% 0 0/16% 16% 0 0}.sea-back{bottom:-2%;z-index:6;height:45%;background:radial-gradient(circle at 50% 0,hsla(0,0%,100%,.14),transparent 34%),linear-gradient(180deg,rgba(92,204,205,.6),rgba(22,117,138,.88) 46%,rgba(8,49,71,.92))}.sea-mid{bottom:-12%;z-index:7;height:46%;background:linear-gradient(180deg,rgba(221,248,246,.2),rgba(46,155,176,.88) 28%,#082c41)}.theme-night .sea-back{background:radial-gradient(circle at 50% 0,hsla(0,0%,100%,.08),transparent 34%),linear-gradient(180deg,rgba(66,125,179,.42),rgba(18,74,112,.82) 46%,rgba(5,28,47,.94))}.theme-night .sea-mid{background:linear-gradient(180deg,rgba(177,214,255,.1),rgba(29,88,132,.84) 28%,#061f34)}.shore-foam{bottom:21%;z-index:8;height:10%;border-radius:48% 48% 44% 44%/100% 100% 0 0;background:radial-gradient(circle at 20% 70%,hsla(0,0%,100%,.84),transparent 18%),radial-gradient(circle at 50% 55%,hsla(0,0%,100%,.74),transparent 14%),radial-gradient(circle at 82% 62%,hsla(0,0%,100%,.82),transparent 16%),linear-gradient(180deg,rgba(255,252,244,.95),hsla(0,0%,100%,.06));filter:blur(2px);animation:foam-shimmer 5s ease-in-out infinite}.theme-night .shore-foam{opacity:.5}.wave-layer{position:absolute;left:-10%;width:120%;pointer-events:none;border-radius:45% 55% 50% 50%/100% 100% 0 0;transition:background .42s ease,opacity .42s ease}.wave-1{bottom:18%;z-index:8;height:22%;opacity:.55;background:linear-gradient(180deg,rgba(139,226,230,.65),rgba(24,121,145,.7));animation:wave-morph-1 8s ease-in-out infinite,wave-sway-1 12s ease-in-out infinite}.wave-2{bottom:8%;z-index:9;height:26%;opacity:.78;background:linear-gradient(180deg,rgba(183,251,255,.72),rgba(44,159,186,.85) 50%,rgba(10,66,93,.95));animation:wave-morph-2 10s ease-in-out infinite,wave-sway-2 14s ease-in-out infinite}.wave-3{bottom:-4%;z-index:10;height:28%;background:linear-gradient(180deg,rgba(92,204,210,.6),rgba(22,117,138,.92) 40%,#08293d);animation:wave-morph-3 7s ease-in-out infinite,wave-sway-3 16s ease-in-out infinite}.theme-night .wave-1{opacity:.35;background:linear-gradient(180deg,rgba(100,168,220,.45),rgba(18,74,112,.6))}.theme-night .wave-2{opacity:.6;background:linear-gradient(180deg,rgba(130,185,235,.5),rgba(29,88,132,.78) 50%,rgba(6,31,52,.92))}.theme-night .wave-3{background:linear-gradient(180deg,rgba(66,125,179,.45),rgba(18,74,112,.88) 40%,#051426)}.beach-scene-elements{position:absolute;inset:0;z-index:11;pointer-events:none;overflow:hidden}.palm-tree{position:absolute;bottom:6%;height:55%;width:auto;opacity:.7;transition:opacity .4s ease}.palm-left{left:-2%;animation:palm-sway-left 6s ease-in-out infinite}.palm-left,.palm-right{transform-origin:bottom center}.palm-right{right:-3%;height:45%;opacity:.5;animation:palm-sway-right 8s ease-in-out infinite}.theme-night .palm-tree{opacity:.55}.seagulls{position:absolute;top:8%;right:25%;width:clamp(8rem,20vw,16rem);height:auto;animation:birds-drift 30s ease-in-out infinite}.sand-ground{position:absolute;bottom:-2%;left:-5%;width:110%;height:16%;z-index:11;border-radius:52% 48% 0 0/100% 100% 0 0;background:radial-gradient(circle at 30% 40%,rgba(255,240,200,.6),transparent 30%),radial-gradient(circle at 70% 50%,rgba(255,235,190,.5),transparent 25%),linear-gradient(180deg,wheat,#e6c890 40%,#d4b06a);animation:sand-breathe 8s ease-in-out infinite;transition:background .4s ease}.theme-night .sand-ground{background:radial-gradient(circle at 30% 40%,rgba(80,110,140,.4),transparent 30%),radial-gradient(circle at 70% 50%,rgba(60,95,130,.35),transparent 25%),linear-gradient(180deg,#2a4560,#1e3548 40%,#152a3a)}.sand-particles{position:absolute;bottom:0;left:0;width:100%;height:12%;z-index:12;background-image:radial-gradient(circle,rgba(255,248,220,.6) 1px,transparent 0),radial-gradient(circle,rgba(255,240,200,.4) 1px,transparent 0),radial-gradient(circle,rgba(255,235,180,.5) 1.5px,transparent 0);background-size:40px 30px,60px 45px,80px 50px;background-position:0 0,20px 15px,10px 35px;opacity:.5;transition:opacity .4s ease}.theme-night .sand-particles{opacity:.15;background-image:radial-gradient(circle,rgba(180,210,240,.3) 1px,transparent 0),radial-gradient(circle,rgba(160,200,235,.2) 1px,transparent 0);background-size:40px 30px,60px 45px}.interactive-wave-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:12;pointer-events:auto}@keyframes palm-sway-left{0%,to{transform:rotate(0deg)}50%{transform:rotate(1.5deg)}}@keyframes palm-sway-right{0%,to{transform:rotate(0deg)}50%{transform:rotate(-1.2deg)}}@keyframes birds-drift{0%,to{transform:translate(0)}25%{transform:translate(30px,-8px)}50%{transform:translate(60px,4px)}75%{transform:translate(20px,-12px)}}@keyframes sand-breathe{0%,to{border-radius:52% 48% 0 0/100% 100% 0 0}50%{border-radius:48% 52% 0 0/100% 100% 0 0}}.hero-copy{position:relative;z-index:22;margin-left:min(8vw,5rem);width:min(620px,calc(100% - 7rem));color:var(--page-hero-text)}.hero-copy-static{padding-top:clamp(4.5rem,10vh,7rem)}.eyebrow,.section-kicker{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;gap:.55rem;padding:.4rem .72rem;border-radius:999px;background:rgba(255,250,239,.12);color:rgba(255,250,239,.88);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.1);backdrop-filter:blur(10px)}.theme-night .eyebrow,.theme-night .section-kicker{background:rgba(17,39,61,.34);color:rgba(228,241,255,.86);box-shadow:inset 0 0 0 1px rgba(188,221,255,.12)}.hero-copy h1,.section-title{margin:1rem 0 0;font-family:var(--font-cormorant),serif;letter-spacing:-.04em}.hero-copy h1{max-width:11.5ch;font-size:clamp(2.9rem,5.4vw,4.9rem);line-height:.92}.about-copy,.about-note,.contact-copy,.hero-lead,.principle-card p,.project-card p{font-size:clamp(.92rem,1.4vw,1rem);line-height:1.72}.hero-lead{max-width:35rem;margin:1.2rem 0 0;color:var(--page-hero-muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:1.8rem}.hero-stats article{display:grid;gap:.55rem;padding:.95rem .95rem 1rem;border-radius:1.45rem;background:var(--page-card-soft);color:rgba(255,248,234,.9);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.08),0 16px 34px rgba(6,43,60,.12);backdrop-filter:blur(12px)}.hero-stats strong{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(194,248,245,.92)}.theme-night .hero-stats strong{color:#a9d7ff}.hero-stats span{font-size:.9rem;line-height:1.55}.portfolio-shell{position:relative;z-index:25;border-radius:2.4rem 2.4rem 0 0;background:radial-gradient(circle at top left,rgba(116,205,202,.18),transparent 20%),linear-gradient(180deg,var(--page-shell-top) 0,#0a2230 26%,var(--page-shell-bottom) 88%);box-shadow:0 -30px 80px rgba(5,38,56,.2);transition:background .32s ease}.theme-night .portfolio-shell{box-shadow:0 -30px 80px rgba(3,13,23,.3)}.portfolio-shell-static{margin-top:-4rem}.content-section{width:min(1040px,calc(100% - 2rem));margin:0 auto;padding:5.5rem 0}.section-intro{display:grid;gap:.8rem;max-width:50rem}.portfolio-shell .section-title{color:#fdf5e4;font-size:clamp(2rem,3.8vw,3.35rem);line-height:.98}.theme-night .portfolio-shell .section-title{color:#eef6ff}.about-layout{display:grid;grid-template-columns:1.04fr .96fr;gap:1rem;margin-top:2rem}.about-card,.contact-card,.principle-card,.project-card{border-radius:1.85rem;box-shadow:var(--shadow-soft)}.about-card-main{padding:1.65rem;background:radial-gradient(circle at top right,rgba(123,211,210,.18),transparent 22%),hsla(45,71%,93%,.9)}.theme-night .about-card-main{background:radial-gradient(circle at top right,rgba(89,142,203,.16),transparent 22%),rgba(15,35,53,.92)}.about-copy{margin:0;color:#264958}.about-note{margin:1rem 0 0;color:rgba(38,73,88,.78)}.theme-night .about-copy,.theme-night .about-note{color:#dbeaf7}.principles-stack{display:grid;gap:.85rem}.principle-card{padding:1.15rem 1.2rem 1.25rem;background:linear-gradient(135deg,rgba(255,248,234,.94),rgba(217,241,238,.88));color:#204555;transition:transform .32s cubic-bezier(.25,.46,.45,.94),box-shadow .32s ease}.principle-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(10,51,72,.18)}.about-card,.primary-link,.principle-card,.project-card,.secondary-link,.tool-pill,.topbar-cta{position:relative;overflow:hidden}.about-card:after,.about-card:before,.primary-link:after,.primary-link:before,.principle-card:after,.principle-card:before,.project-card:after,.project-card:before,.secondary-link:after,.secondary-link:before,.tool-pill:after,.tool-pill:before,.topbar-cta:after,.topbar-cta:before{content:"";position:absolute;bottom:-20px;background:hsla(0,0%,100%,.5);border-radius:50%;opacity:0;pointer-events:none;z-index:10}.about-card:before,.principle-card:before,.project-card:before{width:14px;height:14px;left:15%}.about-card:after,.principle-card:after,.project-card:after{width:10px;height:10px;left:80%}.primary-link:before,.secondary-link:before,.tool-pill:before,.topbar-cta:before{width:8px;height:8px;left:25%}.primary-link:after,.secondary-link:after,.tool-pill:after,.topbar-cta:after{width:6px;height:6px;left:65%}.about-card:hover:before,.primary-link:hover:before,.principle-card:hover:before,.project-card:hover:before,.secondary-link:hover:before,.tool-pill:hover:before,.topbar-cta:hover:before{animation:bubble-rise 1s ease-in infinite}.about-card:hover:after,.primary-link:hover:after,.principle-card:hover:after,.project-card:hover:after,.secondary-link:hover:after,.tool-pill:hover:after,.topbar-cta:hover:after{animation:bubble-rise 1.2s ease-in .2s infinite}@keyframes bubble-rise{0%{transform:translateY(0) scale(.6);opacity:0}25%{opacity:.8}to{transform:translateY(-150px) scale(1.2);opacity:0}}.theme-night .principle-card{background:linear-gradient(135deg,rgba(16,38,58,.95),rgba(20,56,78,.9));color:#deeffd}.principle-index{display:inline-flex;margin-bottom:.7rem;color:rgba(15,109,130,.78);font-size:.74rem;font-weight:800;letter-spacing:.18em}.theme-night .principle-index{color:#8ec8ff}.principle-card h3,.project-card h3{margin:0;font-size:1.18rem;line-height:1.18}.principle-card p,.project-card p{margin:.7rem 0 0}.projects-grid{display:grid;grid-template-columns:1.08fr .92fr 1fr;gap:.85rem;margin-top:2.1rem;align-items:start}.project-card{min-height:18.5rem;padding:1.25rem;transition:transform .36s cubic-bezier(.25,.46,.45,.94),box-shadow .36s ease}.project-card:hover{transform:translateY(-6px);box-shadow:0 28px 60px rgba(10,51,72,.22)}.project-card:nth-child(2):hover{transform:translateY(calc(1.8rem - 6px))}.project-card:nth-child(2){transform:translateY(1.8rem)}.project-label{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:.36rem .7rem;border-radius:999px;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.project-card h3,.project-tags{margin-top:1rem}.project-tags{display:flex;flex-wrap:wrap;gap:.55rem}.project-tags span,.tool-pill{border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.02em}.project-tags span{padding:.48rem .72rem;background:hsla(0,0%,100%,.38)}.project-card-warm{background:radial-gradient(circle at top right,rgba(255,225,183,.48),transparent 30%),linear-gradient(180deg,#fff6e4,#f0dcb0);color:#35505f}.project-card-warm .project-label{background:hsla(35,97%,71%,.28);color:#805022}.project-card-sea{background:radial-gradient(circle at top left,rgba(165,250,238,.28),transparent 28%),linear-gradient(180deg,#e3fbf6,#9cd8d7);color:#214c5a}.project-card-sea .project-label{background:rgba(21,119,138,.16);color:#0e5d72}.project-card-deep{background:radial-gradient(circle at top left,rgba(201,250,250,.08),transparent 18%),linear-gradient(180deg,#1f5b72,#0a3147);color:#edf9ff}.theme-night .project-card-deep{background:radial-gradient(circle at top left,rgba(179,224,255,.08),transparent 18%),linear-gradient(180deg,#173d59,#091b2c)}.project-card-deep .project-label{background:hsla(0,0%,100%,.12);color:rgba(238,250,255,.92)}.project-card-deep .project-tags span{background:hsla(0,0%,100%,.08)}.contact-section .section-title,.stack-section .section-title{max-width:12ch}.toolkit-board{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}.tool-pill{padding:.78rem 1rem;box-shadow:0 12px 30px rgba(22,69,84,.1);transition:transform .28s ease,box-shadow .28s ease;cursor:default}.tool-pill:hover{transform:scale(1.08) rotate(0deg)!important;box-shadow:0 16px 36px rgba(22,69,84,.16)}.tool-pill-0{background:#ffd9bd;color:#834620;transform:rotate(-4deg)}.tool-pill-1{background:#ffef86;color:#6e5a00;transform:rotate(2.5deg)}.tool-pill-2{background:#d6f6f0;color:#0f6174;transform:rotate(-2deg)}.tool-pill-3{background:#f7f1e1;color:#4a504a;transform:rotate(3deg)}.theme-night .tool-pill-0{background:#23415c;color:#d1e6ff}.theme-night .tool-pill-1{background:#294a63;color:#d3ecff}.theme-night .tool-pill-2{background:#1d5774;color:#dcf7ff}.theme-night .tool-pill-3{background:#152d44;color:#d7e7f9}.contact-card{display:grid;grid-template-columns:1.1fr .9fr;gap:1.4rem;padding:1.6rem;background:radial-gradient(circle at top right,rgba(124,230,221,.16),transparent 20%),linear-gradient(135deg,rgba(18,38,51,.96),rgba(8,22,36,.98));color:#e0f4ff}.theme-night .contact-card{background:radial-gradient(circle at top right,rgba(70,130,200,.15),transparent 20%),linear-gradient(135deg,rgba(6,17,28,.98),rgba(2,9,18,.99));color:#cbe3f7}.contact-copy{margin:0;align-self:center}.contact-actions .secondary-link{color:#72dced;background:rgba(9,100,121,.25);box-shadow:inset 0 0 0 1px rgba(84,214,208,.28)}.theme-night .contact-actions .secondary-link{color:#aad6fa;background:rgba(35,84,122,.35);box-shadow:inset 0 0 0 1px rgba(135,184,235,.18)}@keyframes wave-morph-1{0%,to{border-radius:45% 55% 50% 50%/100% 100% 0 0}25%{border-radius:52% 48% 46% 54%/100% 100% 0 0}50%{border-radius:48% 52% 54% 46%/100% 100% 0 0}75%{border-radius:55% 45% 48% 52%/100% 100% 0 0}}@keyframes wave-morph-2{0%,to{border-radius:50% 50% 48% 52%/100% 100% 0 0}33%{border-radius:42% 58% 52% 48%/100% 100% 0 0}66%{border-radius:56% 44% 46% 54%/100% 100% 0 0}}@keyframes wave-morph-3{0%,to{border-radius:46% 54% 52% 48%/100% 100% 0 0}20%{border-radius:54% 46% 48% 52%/100% 100% 0 0}40%{border-radius:48% 52% 56% 44%/100% 100% 0 0}60%{border-radius:52% 48% 44% 56%/100% 100% 0 0}80%{border-radius:44% 56% 52% 48%/100% 100% 0 0}}@keyframes wave-sway-1{0%,to{transform:translateX(0) translateY(0)}50%{transform:translateX(-2%) translateY(-4px)}}@keyframes wave-sway-2{0%,to{transform:translateX(0) translateY(0)}50%{transform:translateX(1.5%) translateY(-6px)}}@keyframes wave-sway-3{0%,to{transform:translateX(0) translateY(0)}50%{transform:translateX(-1%) translateY(-3px)}}@keyframes orb-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes foam-shimmer{0%,to{opacity:1;transform:scaleX(1)}50%{opacity:.8;transform:scaleX(1.02)}}@media (max-width:1100px){.topbar{width:min(calc(100% - 1.25rem),980px)}.hero-copy{width:min(580px,calc(100% - 3rem));margin-left:1.5rem}.about-layout,.contact-card,.hero-stats,.projects-grid{grid-template-columns:1fr}.project-card:nth-child(2){transform:none}}@media (max-width:780px){.topbar{top:.8rem;padding:.8rem .95rem}.topnav{display:none}.topbar-actions{gap:.5rem}.theme-toggle{padding:.68rem .84rem}.topbar-cta{padding:.7rem .92rem;font-size:.82rem}.hero-shell{min-height:92svh;padding:5.5rem 0 3rem}.wave-3{display:none}.topbar{backdrop-filter:none;background:rgba(238,247,255,.98)}.theme-night .topbar{backdrop-filter:none;background:rgba(11,26,41,.98)}.scene-horizon,.shore-foam{filter:none}.shore-foam{animation:none}.sand-particles{display:none}.palm-left,.palm-right,.sand-ground,.seagulls{animation:none}.music-player-glass{backdrop-filter:none;background:rgba(18,54,78,.98)}.hero-copy{width:min(calc(100% - 2rem),40rem);margin:0 auto;padding-top:5rem}.hero-copy h1{max-width:none}.portfolio-shell-static{margin-top:-3rem;border-radius:2rem 2rem 0 0}.content-section{width:min(calc(100% - 1.4rem),1120px);padding:4.5rem 0}.about-card-main,.contact-card,.principle-card,.project-card{border-radius:1.6rem}}@media (max-width:560px){.brand-mark{font-size:.82rem;letter-spacing:.12em}.topbar{gap:.7rem;width:calc(100% - 1rem)}.topbar-actions{width:auto}.theme-toggle span:last-child{display:none}.hero-copy{width:calc(100% - 1.25rem)}.hero-actions{gap:.65rem}.primary-link,.secondary-link{width:100%}.hero-stats{gap:.75rem}.about-card-main,.contact-card,.project-card{padding:1.25rem}.toolkit-board{gap:.7rem}.tool-pill{padding:.76rem .95rem}}.music-player-wrapper{position:fixed;bottom:2rem;right:2rem;z-index:100;pointer-events:none}.music-player-glass{pointer-events:auto;position:relative;display:flex;align-items:center;gap:.8rem;padding:.72rem 1.2rem;border-radius:999px;border:none;background:hsla(0,0%,100%,.12);color:#173b54;font-family:var(--font-jakarta);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.4),0 8px 32px rgba(4,25,45,.15);backdrop-filter:blur(12px);cursor:pointer;transform:translateY(0);transition:transform .3s ease,box-shadow .3s ease,background .3s ease}.music-player-glass:hover{transform:translateY(-4px);background:hsla(0,0%,100%,.25);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.5),0 12px 40px rgba(4,25,45,.2)}.theme-night .music-player-glass{background:rgba(18,54,78,.45);color:#cbe3f7;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.18),0 8px 32px rgba(4,25,45,.25)}.theme-night .music-player-glass:hover{background:rgba(25,69,99,.55)}.music-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:hsla(0,0%,100%,.2);border-radius:50%;transition:background .3s ease}.music-player-glass:hover .music-icon{background:hsla(0,0%,100%,.4)}.theme-night .music-player-glass:hover .music-icon{background:hsla(0,0%,100%,.25)}.music-info{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem}.music-title{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.music-visualizer{display:flex;align-items:flex-end;gap:3px;height:12px}.mbar{width:3px;height:3px;background:currentColor;border-radius:2px;transition:height .2s ease}.is-playing .mbar{animation:visualize 1.2s ease-in-out infinite alternate}.is-playing .mbar:nth-child(2){animation-delay:.2s;animation-duration:1.5s}.is-playing .mbar:nth-child(3){animation-delay:.4s;animation-duration:1.1s}@keyframes visualize{0%{height:3px}to{height:12px}}.music-bubbles{position:absolute;top:-10px;left:0;width:100%;height:20px}.mbub{position:absolute;bottom:0;background:hsla(0,0%,100%,.45);border-radius:50%;opacity:0;pointer-events:none;animation:mbubble-rise linear infinite}.mbub.b1{left:15%;width:6px;height:6px;animation-duration:3s;animation-delay:.2s}.mbub.b2{left:45%;width:10px;height:10px;animation-duration:4.5s;animation-delay:1.5s}.mbub.b3{left:70%;width:7px;height:7px;animation-duration:3.8s;animation-delay:.8s}.mbub.b4{left:30%;width:5px;height:5px;animation-duration:2.5s;animation-delay:2.1s}.mbub.b5{left:85%;width:9px;height:9px;animation-duration:4s;animation-delay:.5s}@keyframes mbubble-rise{0%{transform:translateY(0) scale(.6);opacity:0}15%{opacity:.8}50%{transform:translateY(-80px) translateX(10px) scale(1.1);opacity:.5}to{transform:translateY(-180px) translateX(-15px) scale(1.5);opacity:0}}