*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:#070707;color:#f5f0e8;font-family:Inter,sans-serif;overflow-x:visible}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;padding:40px 40px 64px;background:radial-gradient(circle at top,rgba(80,90,110,.08),transparent 30%),linear-gradient(180deg,#050505,#090909);position:relative;overflow:visible}.top-links{position:absolute;top:24px;right:24px;display:flex;gap:18px;z-index:10}.top-nav-left{position:absolute;top:24px;left:24px;z-index:10}.home-button{background:transparent;border:none;color:#f5f0e8;padding:0;font-size:1rem;letter-spacing:.02em;cursor:pointer;font-family:inherit;font-weight:400;transition:color .18s ease;display:inline-flex;align-items:center;line-height:1}.home-button:hover{color:#f5f0e8e6}.home-icon{display:inline-block;width:1em;height:1em;vertical-align:middle}.link-button{background:transparent;border:1px solid rgba(245,240,232,.25);color:#f5f0e8;padding:10px 14px;border-radius:999px;letter-spacing:.02em;transition:background .18s ease,border-color .18s ease}.link-button:hover{background:#f5f0e80f;border-color:#f5f0e873}.hero-panel{min-height:100vh;position:relative}.content-panel{max-width:900px;margin:0 auto;position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);padding:0 24px;z-index:20}.main-headline{font-size:clamp(3rem,6vw,5.5rem);line-height:.95;font-weight:300;margin:0}.subtext{margin-top:24px;max-width:720px;color:#b9b1a4;font-size:1.2rem;line-height:1.75}.hidden-route-panel{margin:72px auto 0;max-width:900px;padding:28px;border:1px solid rgba(255,255,255,.06);border-radius:24px;background:#ffffff05}.hidden-route-panel.projects-only{margin-top:32px;padding-top:24px}.hidden-route-label{margin:0 0 12px;color:#7a7a7a;text-transform:uppercase;letter-spacing:.2em;font-size:.8rem}.project-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:24px}.project-card{padding:22px;border-radius:22px;background:#ffffff08;border:1px solid rgba(255,255,255,.06)}.project-card h3{margin:0 0 12px;font-size:1.2rem}.project-card p{margin:0;line-height:1.7;color:#d0c8be}.ohoga-card{display:flex;flex-direction:column;transition:background .2s ease,border-color .2s ease}.ohoga-card.expanded{background:#ffffff0d;border-color:#ffffff1a}.ohoga-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.ohoga-header h3{margin:0;font-size:1.2rem;flex:1}.expand-toggle{background:transparent;border:1px solid rgba(245,240,232,.2);color:#d0c8be;width:28px;height:28px;border-radius:6px;font-size:1.2rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:all .2s ease}.expand-toggle:hover{background:#f5f0e814;border-color:#f5f0e859;color:#f5f0e8}.ohoga-summary{margin:0;line-height:1.7;color:#d0c8be;font-size:.95rem}.ohoga-content{display:flex;flex-direction:column;gap:14px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.ohoga-subtitle{margin:0;font-weight:500;color:#e8dfd5;font-size:.95rem}.ohoga-description{margin:0;line-height:1.6;color:#c8bfb5;font-size:.9rem}.ohoga-list{margin:0;padding-left:18px;list-style-type:disc;color:#d0c8be;font-size:.9rem;line-height:1.6}.ohoga-list li{margin-bottom:6px}.ohoga-section{border-top:1px solid rgba(255,255,255,.05);padding-top:12px}.ohoga-section h4{margin:0 0 8px;font-size:.9rem;font-weight:600;color:#e8dfd5;text-transform:uppercase;letter-spacing:.05em}.ohoga-closing{margin:4px 0 0;line-height:1.6;color:#c8bfb5;font-size:.85rem;font-style:italic}.ascendbase-card{display:flex;flex-direction:column;transition:background .2s ease,border-color .2s ease}.ascendbase-card.expanded{background:#ffffff0d;border-color:#ffffff1a}.ascendbase-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.ascendbase-header h3{margin:0;font-size:1.2rem;flex:1}.ascendbase-summary{margin:0;line-height:1.7;color:#d0c8be;font-size:.95rem}.ascendbase-content{display:flex;flex-direction:column;gap:14px;animation:slideDown .2s ease}.ascendbase-subtitle{margin:0;font-weight:500;color:#e8dfd5;font-size:.95rem}.ascendbase-list{margin:0;padding-left:18px;list-style-type:disc;color:#d0c8be;font-size:.9rem;line-height:1.6}.ascendbase-list li{margin-bottom:6px}.ascendbase-list.evolution-list{list-style-type:decimal}.ascendbase-section{border-top:1px solid rgba(255,255,255,.05);padding-top:12px}.ascendbase-section h4{margin:0 0 8px;font-size:.9rem;font-weight:600;color:#e8dfd5;text-transform:uppercase;letter-spacing:.05em}.ascendbase-evolution{margin:0 0 8px;line-height:1.6;color:#d0c8be;font-size:.9rem}.ascendbase-closing{margin:4px 0 0;line-height:1.6;color:#c8bfb5;font-size:.85rem;font-style:italic}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#050505d1;display:grid;place-items:center;padding:24px;z-index:50}.modal-card{width:min(600px,100%);background:#121212fa;border:1px solid rgba(255,255,255,.1);border-radius:26px;padding:32px;box-shadow:0 32px 80px #00000059;position:relative}.dark-modal{background:#050505;border-color:#ffffff14}.modal-close{position:absolute;right:20px;top:20px;border:none;background:transparent;color:#f5f0e8;font-size:1.8rem;line-height:1}.modal-card h2{margin-top:0;margin-bottom:18px;font-size:clamp(1.6rem,3vw,2rem)}.modal-card p{color:#d2cbc0;line-height:1.75}.contact-form{display:grid;gap:18px}.contact-form label{display:grid;gap:8px;font-size:.95rem;color:#d8d1c6}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid rgba(245,240,232,.12);border-radius:14px;padding:14px 16px;background:#ffffff08;color:#f5f0e8;outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#f5f0e859}.submit-button{align-self:start;padding:14px 22px;border:1px solid rgba(245,240,232,.25);border-radius:999px;background:#f5f0e80f;color:#f5f0e8;transition:background .18s ease}.submit-button:hover{background:#f5f0e81f}.steamship-track{position:fixed;left:0;width:max-content;overflow:visible;z-index:1;pointer-events:none;display:block}@keyframes steamship-travel-ltr{0%{transform:translate(-420px)}to{transform:translate(calc(100vw + 420px))}}@keyframes steamship-travel-rtl{0%{transform:translate(calc(100vw + 420px))}to{transform:translate(-420px)}}.steamship-track{animation:steamship-travel-ltr 60s linear infinite;will-change:transform}.steamship-track.facing-rtl{animation-name:steamship-travel-rtl}.steamship-track.ltr,.steamship-track.rtl{animation:none!important}.steamship-body{position:relative;width:260px;height:100px;overflow:visible}.steamship-figure{width:100%;height:100%;display:block}.steamship-figure .hull-back{fill:url(#hullGradient)}.steamship-figure .hull-bottom{fill:#5f6a79}.steamship-figure .bow,.steamship-figure .stern,.steamship-figure .upper-deck,.steamship-figure .main-deck,.steamship-figure .cabin-base,.steamship-figure .cabin-roof{fill:url(#deckGradient)}.steamship-figure .bow,.steamship-figure .stern{opacity:.98}.steamship-figure .smokestack-left,.steamship-figure .smokestack-right{fill:#7b8696}.steamship-figure .smokestack-cap-left,.steamship-figure .smokestack-cap-right{fill:#525b69}.steamship-figure .railings{fill:none;stroke:#6d7c92;stroke-width:2;stroke-linecap:round}.steamship-figure .cabins-front,.steamship-figure .cabins-rear{fill:#95a1b238}.steamship-figure .windows rect,.steamship-figure .portholes circle{fill:#50667fd1}.steamship-figure .portholes circle{opacity:.95}.steamship-figure .wheel-frame{fill:#8c99a8}.steamship-figure .wheel-center{fill:#5a6978}.steamship-figure .wheel-spoke{fill:none;stroke:#ffffffb3;stroke-width:1.5;stroke-linecap:round}.steamship-smoke{position:absolute;top:-4px;left:122px;width:60px;height:320px;overflow:visible;z-index:2;pointer-events:none}.steamship-smoke .smoke-puff{position:absolute;border-radius:999px;background:#ebe2d4c7;opacity:0;filter:blur(1.6px);animation:steamboat-smoke-plume 9.5s ease-in-out infinite;transform-origin:center}.steamship-smoke .smoke-left.smoke-1{left:9px;top:6px;width:12px;height:10px;animation-delay:0s}.steamship-smoke .smoke-left.smoke-2{left:7px;top:-12px;width:14px;height:11px;animation-delay:.55s}.steamship-smoke .smoke-left.smoke-3{left:5px;top:-30px;width:16px;height:12px;animation-delay:1.1s}.steamship-smoke .smoke-left.smoke-4{left:3px;top:-50px;width:18px;height:13px;animation-delay:1.65s}.steamship-smoke .smoke-left.smoke-5{left:6px;top:-74px;width:20px;height:14px;animation-delay:2.2s}.steamship-smoke .smoke-left.smoke-6{left:10px;top:-100px;width:18px;height:13px;animation-delay:2.75s}.steamship-smoke .smoke-left.smoke-7{left:14px;top:-128px;width:16px;height:12px;animation-delay:3.3s}.steamship-smoke .smoke-left.smoke-8{left:18px;top:-158px;width:14px;height:10px;animation-delay:3.85s}.steamship-smoke .smoke-right.smoke-1{left:34px;top:0;width:12px;height:10px;animation-delay:.4s}.steamship-smoke .smoke-right.smoke-2{left:32px;top:-12px;width:14px;height:11px;animation-delay:.95s}.steamship-smoke .smoke-right.smoke-3{left:30px;top:-30px;width:16px;height:12px;animation-delay:1.5s}.steamship-smoke .smoke-right.smoke-4{left:28px;top:-52px;width:18px;height:13px;animation-delay:2.05s}.steamship-smoke .smoke-right.smoke-5{left:31px;top:-76px;width:20px;height:14px;animation-delay:2.6s}.steamship-smoke .smoke-right.smoke-6{left:33px;top:-102px;width:18px;height:13px;animation-delay:3.15s}.steamship-smoke .smoke-right.smoke-7{left:35px;top:-130px;width:16px;height:12px;animation-delay:3.7s}.steamship-smoke .smoke-right.smoke-8{left:36px;top:-160px;width:14px;height:10px;animation-delay:4.25s}.steamship-figure .hull{fill:url(#hullGrad)}.steamship-figure .deck-main,.steamship-figure .deck-upper{fill:url(#deckGrad)}.steamship-figure .railing-top,.steamship-figure .railing-mid{stroke:#5a6470e6;stroke-width:2;fill:none}.steamship-figure .windows rect{fill:#6e8496e6}.steamship-figure .paddle-wheel{animation:paddle-wheel-spin 2.4s linear infinite;transform-box:fill-box;transform-origin:center}.steamship-body.facing-rtl .paddle-wheel{animation-direction:reverse}@keyframes paddle-wheel-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.steamship-figure .paddle-wheel .wheel-outer{fill:#e9ddc2}.steamship-figure .paddle-wheel .wheel-inner{fill:#8a97a3}.steamship-figure .paddle-wheel .spokes path{stroke:#4a5868e0;stroke-width:1.8;stroke-linecap:round;fill:none}.steamship-figure .stack{fill:#6c7784}.steamship-figure .stack-cap{fill:#4f5a66}.steamship-figure .badge{fill:#f3ead6f2;stroke:#54606ee6;stroke-width:2}.steamship-figure .badge-inner{fill:#f3ead6f2}.steamship-figure .badge-label{fill:#4e6074eb;font-family:Inter,sans-serif;font-weight:700;text-anchor:middle;transform-box:view-box;transform-origin:132px 74px}.steamship-figure .badge-label text{dominant-baseline:middle;pointer-events:none}.steamship-figure .badge-label text:first-child{font-size:6.8px;letter-spacing:.1px}.steamship-figure .badge-label text:last-child{font-size:4.8px;letter-spacing:0}.steamship-body.facing-rtl .badge-label{transform:scaleX(-1)}.steamship-figure .portholes circle{fill:#6e8496f2}@keyframes steamboat-smoke-plume{0%{transform:translate(0) scale(.8);opacity:0}10%{opacity:.55}25%{transform:translate(4px,-40px) scale(1.05);opacity:.48}40%{transform:translate(7px,-82px) scale(1.1);opacity:.42}55%{transform:translate(10px,-100px) scale(1.18);opacity:.34}70%{transform:translate(13px,-136px) scale(1.25);opacity:.24}85%{transform:translate(16px,-168px) scale(1.32);opacity:.14}to{transform:translate(18px,-192px) scale(1.4);opacity:0}}.steamship-track .steamship-body{transform-origin:50% 50%}.steamship-body{transition:transform .28s ease}.steamship-body.facing-rtl{transform:scaleX(-1)}@media (prefers-reduced-motion: reduce){.steamship-smoke .smoke-puff{animation:none!important;opacity:0!important;display:none!important}}@media (max-width: 760px){.steamship-body{width:160px;height:64px}}.steamship-cabin{position:absolute;left:18%;bottom:28px;width:150px;height:52px;background:#e8e1d5;border:1px solid rgba(255,255,255,.18);border-radius:14px 14px 10px 10px;box-shadow:inset 0 2px 2px #00000014;z-index:6}.steamship-cabin:before{content:"";position:absolute;left:10px;top:10px;width:calc(100% - 20px);height:12px;background:#1b1b1d14;border-radius:999px}.cabin-window{position:absolute;top:22px;width:18px;height:18px;background:#2d2d30;border:1px solid rgba(255,255,255,.16);border-radius:4px}.cabin-window:first-child{left:26px}.cabin-window:last-child{left:66px}.steamship-smokestacks{position:absolute;left:28%;top:-10px;display:flex;gap:14px}.smokestack{width:18px;height:48px;background:#dcd2c3;border:1px solid rgba(255,255,255,.16);border-radius:12px;position:relative}.smokestack:before{content:"";position:absolute;top:-8px;left:50%;transform:translate(-50%);width:24px;height:8px;background:#dcd2c3;border-radius:10px}.smokestack:after{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:16px;height:6px;background:#1b1b1d24;border-radius:4px}.smoke{position:absolute;left:50%;bottom:42px;transform:translate(-50%) translateY(0) scale(.6);width:12px;height:12px;background:#dcd2c82e;border-radius:50%;filter:blur(2px);opacity:0;pointer-events:none;animation:smoke-rise 3.6s linear infinite}.smoke.smoke-1{animation-delay:0s}.smoke.smoke-2{animation-delay:1.2s}.smoke.smoke-3{animation-delay:2.4s}@keyframes smoke-rise{0%{transform:translate(-50%) translateY(0) scale(.6);opacity:0}10%{opacity:.6}60%{transform:translate(-50%) translateY(-36px) scale(1.2);opacity:.22}to{transform:translate(-50%) translateY(-72px) scale(1.6);opacity:0}}@media (max-width: 760px){.smoke{bottom:28px;width:8px;height:8px;filter:blur(1.6px)}}@media (prefers-reduced-motion: reduce){.smoke{animation:none!important;opacity:0!important;display:none!important}}.steamship-portholes{position:absolute;left:12px;bottom:8px;display:flex;gap:10px;align-items:center}.steamship-portholes span{display:block;width:12px;height:12px;border-radius:50%;background:#ffffff2e;border:1px solid rgba(255,255,255,.22);box-shadow:0 1px #0000001f inset}@media (max-width: 760px){.steamship-body{width:160px;height:64px}.steamship-deck{height:18px;bottom:18px;left:8px;right:8px}.steamship-body:after{left:-22px;width:44px;height:44px}.steamship-hull{height:14px}.steamship-hull:before{top:-6px}.steamship-cabin{left:18%;bottom:18px;width:96px;height:34px;border-radius:10px 10px 8px 8px}.steamship-cabin:before{top:8px}.cabin-window{top:14px;width:12px;height:12px}.cabin-window:first-child{left:18px}.cabin-window:last-child{left:46px}.steamship-smokestacks{left:24%;gap:10px}.smokestack{width:10px;height:34px}.smokestack:before{width:16px;height:6px}.smokestack:after{height:4px}.steamship-portholes{left:12px;gap:8px}.steamship-portholes span{width:8px;height:8px}}.steamship-track.ltr{animation:steamship-ltr 95s ease-in-out forwards}.steamship-track.rtl{animation:steamship-rtl 95s ease-in-out forwards}@keyframes steamship-ltr{0%{left:-320px;opacity:0}10%{opacity:1}90%{left:calc(100vw + 320px);opacity:1}to{left:calc(100vw + 320px);opacity:0}}@keyframes steamship-rtl{0%{left:calc(100vw + 320px);opacity:0}10%{opacity:1}90%{left:-320px;opacity:1}to{left:-320px;opacity:0}}@media (prefers-reduced-motion: reduce){.steamship-track{animation:none!important;left:0!important;opacity:1!important}}.site-footer{position:absolute;left:0;right:0;bottom:18px;text-align:center;color:#f5f0e86b;font-size:.85rem;line-height:1.4;pointer-events:none}.site-footer-version{margin-top:4px;color:#f5f0e852;font-size:.72rem}@media (max-width: 640px){.site-footer{font-size:.78rem;bottom:14px}.site-footer-version{font-size:.66rem}}.portfolio-grid{grid-template-columns:1fr}.portfolio-card{display:flex;flex-direction:column;gap:14px;transition:background .2s ease,border-color .2s ease}.portfolio-card.expanded{background:#ffffff0d;border-color:#ffffff1a}.portfolio-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.portfolio-eyebrow{margin:0 0 8px;color:#8f877d;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem}.portfolio-summary{margin:0;max-width:760px;color:#d0c8be;line-height:1.7}.portfolio-content{display:grid;gap:18px;padding-top:10px;animation:slideDown .2s ease}.portfolio-section{border-top:1px solid rgba(255,255,255,.05);padding-top:14px}.portfolio-section h4{margin:0 0 10px;color:#e8dfd5;text-transform:uppercase;letter-spacing:.05em;font-size:.9rem}.portfolio-section p{margin:0 0 12px;color:#c8bfb5;line-height:1.65}.portfolio-list{margin:0;padding-left:18px;color:#d0c8be;line-height:1.6}.portfolio-list li{margin-bottom:6px}
