@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap";@property --tone-a{syntax: "<color>"; inherits: true; initial-value: rgba(245,174,164,.38);}@property --tone-b{syntax: "<color>"; inherits: true; initial-value: rgba(240,201,119,.24);}@property --tone-c{syntax: "<color>"; inherits: true; initial-value: rgba(154,184,161,.22);}@property --tone-d{syntax: "<color>"; inherits: true; initial-value: rgba(229,156,160,.1);}:root{--text: #392425;--muted: #735557;--line: rgba(73, 40, 42, .12);--rose: #e59ca0;--peach: #efb48c;--gold: #f0cb7e;--leaf: #9ab8a1;--blue: #9fb7cd;--shadow: 0 28px 60px rgba(88, 48, 43, .12);--radius-xl: 34px;--radius-lg: 26px;--radius-md: 18px;--max-width: 1200px;--pointer-x: 55%;--pointer-y: 20%;--tone-a: rgba(245, 174, 164, .38);--tone-b: rgba(240, 201, 119, .24);--tone-c: rgba(154, 184, 161, .22);--tone-d: rgba(229, 156, 160, .1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,sans-serif;color:var(--text);transition:--tone-a 1.4s cubic-bezier(.22,1,.36,1),--tone-b 1.4s cubic-bezier(.22,1,.36,1),--tone-c 1.4s cubic-bezier(.22,1,.36,1),--tone-d 1.4s cubic-bezier(.22,1,.36,1);background:radial-gradient(circle at 18% 14%,var(--tone-a),transparent 28%),radial-gradient(circle at 78% 16%,var(--tone-b),transparent 24%),radial-gradient(circle at 80% 78%,var(--tone-c),transparent 24%),linear-gradient(180deg,#fbf3eb,#f4e4d9 46%,#f8efe7)}body[data-tone=rose]{--tone-a: rgba(214, 83, 76, .62);--tone-b: rgba(244, 198, 73, .34);--tone-c: rgba(255, 220, 123, .24);--tone-d: rgba(214, 83, 76, .24)}body[data-tone=gold]{--tone-a: rgba(82, 136, 212, .5);--tone-b: rgba(34, 41, 54, .28);--tone-c: rgba(9, 11, 18, .3);--tone-d: rgba(82, 136, 212, .2)}body[data-tone=leaf]{--tone-a: rgba(36, 36, 40, .42);--tone-b: rgba(232, 194, 88, .3);--tone-c: rgba(255, 216, 110, .22);--tone-d: rgba(232, 194, 88, .18)}body[data-tone=blue]{--tone-a: rgba(114, 155, 204, .5);--tone-b: rgba(108, 122, 139, .24);--tone-c: rgba(158, 166, 176, .18);--tone-d: rgba(114, 155, 204, .2)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}#root{min-height:100vh}.site-shell{position:relative;overflow:clip;isolation:isolate;z-index:0}.site-shell:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y),rgba(255,255,255,.56),transparent 22%),radial-gradient(circle at calc(var(--pointer-x) - 14%) calc(var(--pointer-y) + 16%),var(--tone-d),transparent 24%)}.site-tone{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:0;transition:opacity 1.45s cubic-bezier(.22,1,.36,1);display:none}.site-tone-rose{background:radial-gradient(circle at 16% 16%,rgba(229,156,160,.28),transparent 30%),radial-gradient(circle at 76% 18%,rgba(239,180,140,.18),transparent 24%),radial-gradient(circle at 82% 74%,rgba(255,232,218,.12),transparent 22%)}.site-tone-gold{background:radial-gradient(circle at 18% 14%,rgba(240,203,126,.28),transparent 28%),radial-gradient(circle at 76% 18%,rgba(250,224,155,.2),transparent 24%),radial-gradient(circle at 82% 76%,rgba(159,183,205,.1),transparent 22%)}.site-tone-leaf{background:radial-gradient(circle at 16% 18%,rgba(154,184,161,.2),transparent 28%),radial-gradient(circle at 78% 16%,rgba(223,202,182,.12),transparent 22%),radial-gradient(circle at 82% 76%,rgba(154,184,161,.26),transparent 24%)}.site-tone-blue{background:radial-gradient(circle at 18% 14%,rgba(159,183,205,.24),transparent 28%),radial-gradient(circle at 78% 16%,rgba(198,218,235,.16),transparent 24%),radial-gradient(circle at 82% 76%,rgba(154,184,161,.08),transparent 22%)}.site-noise{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:radial-gradient(circle at center,black 56%,transparent 100%);mask-image:radial-gradient(circle at center,black 56%,transparent 100%)}.topbar,main{position:relative;z-index:2}.topbar,.section{width:min(calc(100% - 2rem),var(--max-width));margin:0 auto}.topbar{position:sticky;top:1rem;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:.85rem 1.1rem;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:#fffaf69e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 12px 30px #4e2b2414}.brand{display:inline-flex;align-items:center;gap:.85rem;font-weight:800;letter-spacing:-.02em}.brand span{display:flex;flex-direction:column;gap:.1rem}.brand small,.section-label,.hero-kicker,.discipline-note,.hero-chip{color:var(--muted);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.18em}.brand-mark{display:grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:50%;background:linear-gradient(135deg,#efb48cf0,#e59ca0f5);color:#fffaf7;box-shadow:inset 0 1px 1px #fff6}.topnav{display:inline-flex;gap:1rem;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.topbar-actions{display:inline-flex;align-items:center;gap:.9rem;margin-left:auto}.topbar-socials{display:inline-flex;align-items:center;gap:.45rem}.topbar-social-link{display:grid;place-items:center;width:2rem;height:2rem;border-radius:999px;color:var(--muted);transition:background .18s ease,color .18s ease,transform .18s ease}.topbar-social-link:hover,.topbar-social-link:focus-visible{background:#71524f14;color:var(--text);transform:translateY(-1px)}.topbar-social-link svg{width:1rem;height:1rem}.topnav-item{position:relative}.topnav-link{position:relative;display:inline-flex;align-items:center;color:inherit}.topnav-link:after{content:"";position:absolute;left:0;bottom:-.25rem;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.topnav-item.is-open .topnav-link:after{transform:scaleX(1)}.topnav-link-static:after{content:"";position:absolute;left:0;bottom:-.25rem;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.topnav-link-static:hover:after,.topnav-link-static:focus-visible:after{transform:scaleX(1)}.topnav-menu{position:absolute;top:calc(100% + .5rem);left:50%;z-index:20;min-width:12.5rem;display:grid;gap:.35rem;padding:.55rem;border:1px solid rgba(255,255,255,.56);border-radius:0 0 18px 18px;background:#fff8f3f5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 20px 40px #4e2b2424;transform:translate(-50%) translateY(-.35rem);opacity:0;pointer-events:none;transform-origin:top center;transition:opacity .18s ease,transform .22s ease}.topnav-menu:before{content:"";position:absolute;top:-.55rem;left:50%;width:78%;height:.65rem;border-radius:999px 999px 0 0;border:1px solid rgba(255,255,255,.56);border-bottom:none;background:#fff8f3f5;transform:translate(-50%)}.topnav-item.is-open .topnav-menu{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.topnav-menu a{padding:.8rem .95rem;border-radius:14px;color:var(--muted);font-size:.88rem;font-weight:700;transition:background .18s ease,color .18s ease}.topnav-menu a:hover,.topnav-menu a:focus-visible{background:#71524f14;color:var(--text)}.mobile-nav{display:none;position:relative}.mobile-nav summary{display:inline-flex;align-items:center;justify-content:center;min-height:2.7rem;padding:.7rem 1rem;border:1px solid rgba(255,255,255,.52);border-radius:999px;background:#fffaf6d6;color:var(--muted);font-size:.82rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;list-style:none;cursor:pointer;box-shadow:0 10px 24px #4e2b2414}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav-panel{position:absolute;top:calc(100% + .65rem);right:0;min-width:12.5rem;display:grid;gap:.35rem;padding:.55rem;border:1px solid rgba(255,255,255,.56);border-radius:22px;background:#fff8f3f5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 20px 40px #4e2b2424}.mobile-nav-panel a{padding:.8rem .95rem;border-radius:16px;color:var(--muted);font-size:.92rem;font-weight:700;transition:background .18s ease,color .18s ease}.mobile-nav-panel a:hover,.mobile-nav-panel a:focus-visible{background:#71524f14;color:var(--text)}.section{padding:5rem 0}.hero{display:grid;grid-template-columns:1.02fr .98fr;grid-template-areas:"copy stage" "scroll scroll";gap:2.4rem;align-items:center;padding-top:3.125rem}.hero-copy-group{grid-area:copy;max-width:39rem}.contact-page{padding-top:2rem}.contact-shell{display:grid;grid-template-columns:.95fr 1.05fr;gap:1.5rem;align-items:start}.contact-copy{max-width:31rem}.contact-copy h1{margin:0 0 .85rem;font-family:Fraunces,serif;font-size:clamp(3rem,7vw,5rem);line-height:.98;letter-spacing:-.055em}.contact-intro,.contact-note,.contact-status{color:var(--muted);font-size:1rem;line-height:1.75}.contact-note{margin-top:1rem}.contact-form{display:grid;gap:1rem;padding:1.15rem;border:1px solid rgba(255,255,255,.52);border-radius:28px;background:linear-gradient(180deg,#fffbf7e6,#fff6f0cc),linear-gradient(120deg,#ffffffbd,#ffffff2e);box-shadow:var(--shadow)}.contact-field{display:grid;gap:.45rem}.contact-field span{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.contact-field input,.contact-field textarea{width:100%;padding:.95rem 1rem;border:1px solid rgba(73,40,42,.14);border-radius:18px;background:#fffcf9e6;color:var(--text);outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.contact-field input:focus,.contact-field textarea:focus{border-color:#9fb7cdb3;box-shadow:0 0 0 4px #9fb7cd29;background:#fffffff5}.contact-field textarea{min-height:10rem;resize:vertical}.contact-actions{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.contact-status{margin:0}.contact-status.is-success{color:#4f6c58}.contact-status.is-error{color:#9a4b4e}.hero-title,.section-heading h2,.discipline-copy h2{margin:0;font-family:Fraunces,serif;line-height:.98;letter-spacing:-.055em}.hero-title{font-size:clamp(3.4rem,8vw,6.4rem);overflow:hidden}.hero-title-line{display:block;width:fit-content;will-change:transform,opacity}.animated-heading,.animated-heading-line{background-image:linear-gradient(115deg,#492f31f5,#523638f5 42%,#6c4d4eeb,#523638f5 58%,#492f31f5);background-size:180% 100%;background-position:18% 50%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:headingSheen 14s ease-in-out infinite alternate}.animated-heading{will-change:transform,opacity}.hero-copy,.section-heading p,.story-block p,.discipline-copy p,.hero-panel-meta{color:var(--muted);font-size:1.03rem;line-height:1.8}.hero-chip-row{display:flex;flex-wrap:wrap;gap:.7rem;margin:2rem 0}.hero-chip,.discipline-note{display:inline-flex;padding:.8rem 1rem;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:#fffaf69e;box-shadow:0 10px 26px #58302b14}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem}.hero-scroll-cue{grid-area:scroll;display:flex;align-items:center;justify-content:center;width:100%;margin-top:-.2rem;color:var(--muted)}.hero-scroll-mark{position:relative;width:1.55rem;height:2.55rem;border:1px solid rgba(115,85,87,.4);border-radius:999px}.hero-scroll-dot{position:absolute;top:.45rem;left:50%;width:.34rem;height:.34rem;border-radius:50%;background:#735557c2;transform:translate(-50%)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.85rem 1.35rem;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:linear-gradient(180deg,#fffbf7e0,#fff6f0bd),linear-gradient(120deg,#ffffffb8,#ffffff29);box-shadow:var(--shadow);font-weight:800;transition:transform .18s ease,box-shadow .18s ease}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button-primary{background:linear-gradient(135deg,#483232,#71524f);color:#fff9f5}.hero-stage{grid-area:stage;position:relative;min-height:38rem;--hero-pointer-x: 54%;--hero-pointer-y: 42%}.hero-stage-grid,.hero-ribbon,.hero-beam{position:absolute}.hero-stage-grid{top:10%;right:8%;bottom:8%;left:8%;border-radius:34px;background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:linear-gradient(180deg,transparent,black 20%,black 80%,transparent);mask-image:linear-gradient(180deg,transparent,black 20%,black 80%,transparent);opacity:.2}.hero-ribbon{width:18rem;height:18rem;filter:blur(12px);opacity:.42}.hero-ribbon-one{top:0;left:4%;border-radius:40px 140px 90px 120px;background:linear-gradient(160deg,#e59ca038,#efb48c14)}.hero-ribbon-two{right:0;bottom:2%;border-radius:120px 60px 140px 80px;background:linear-gradient(160deg,#9fb7cd33,#9ab8a114)}.hero-beam{top:16%;left:20%;width:46%;height:26%;border-radius:999px;background:radial-gradient(circle,#fff6,#fff0);filter:blur(24px);opacity:.28}.hero-bento{position:absolute;top:6%;right:6%;bottom:8%;left:6%;display:grid;grid-template-columns:1.15fr .95fr .9fr;grid-template-rows:1.05fr .95fr;gap:1rem;z-index:3}.hero-bento-card{position:relative;padding:0;border:1px solid rgba(255,255,255,.48);border-radius:30px;background:#fffbf73d;box-shadow:var(--shadow);overflow:hidden;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:transform .26s ease,box-shadow .26s ease,filter .26s ease,border-color .26s ease}.hero-bento-card:hover,.hero-bento-card:focus-visible,.hero-bento-card.is-active{transform:translateY(-8px);box-shadow:0 34px 72px #58302b29;filter:saturate(1.03);border-color:#ffffffad}.hero-bento-card-1{grid-column:1 / 2;grid-row:1 / 3}.hero-bento-card-2{grid-column:2 / 4;grid-row:1 / 2}.hero-bento-card-3{grid-column:2 / 3;grid-row:2 / 3}.hero-bento-card-4{grid-column:3 / 4;grid-row:2 / 3}.hero-bento-media{position:absolute;top:0;right:0;bottom:0;left:0}.hero-bento-image{width:100%;height:100%;display:block;object-fit:cover;transform:translate3d(0,var(--hero-image-offset-y, 0),0) scale(var(--hero-image-scale, 1.05));transform-origin:var(--hero-image-origin, center center);transition:transform .38s ease,filter .38s ease}.hero-image-paint{object-position:center 23%;--hero-image-scale: .98;--hero-image-scale-hover: 1.04}.hero-image-photo{object-position:center 20%;--hero-image-scale: 1.05;--hero-image-scale-hover: 1.12}.hero-image-3d{object-position:center 8%;--hero-image-origin: center 16%;--hero-image-offset-y: 10%;--hero-image-offset-y-hover: 12%;--hero-image-scale: 2;--hero-image-scale-hover: 2.08}.hero-bento-card-4 .hero-bento-media{background:#3a3a3a}.hero-image-cad{object-fit:contain;object-position:center center;background:transparent;--hero-image-scale: 1.53;--hero-image-scale-hover: 1.59}.hero-bento-copy{position:absolute;left:0;right:0;z-index:2;display:flex;bottom:0;justify-content:flex-start;padding:.9rem 1rem 1rem;background:linear-gradient(180deg,#18121400,#181214b8);opacity:0;transform:translateY(16px);transition:opacity .22s ease,transform .22s ease}.hero-bento-title{position:relative;z-index:2;margin:0;color:#fff7f2f5;font-family:Fraunces,serif;font-size:1rem;line-height:1;letter-spacing:-.03em}.hero-bento-card:hover .hero-bento-image,.hero-bento-card:focus-visible .hero-bento-image,.hero-bento-card.is-active .hero-bento-image{transform:translate3d(0,var(--hero-image-offset-y-hover, var(--hero-image-offset-y, 0)),0) scale(var(--hero-image-scale-hover, 1.12))}.hero-bento-card:hover .hero-bento-copy,.hero-bento-card:focus-visible .hero-bento-copy{opacity:1;transform:translateY(0)}.section-heading{max-width:46rem;margin-bottom:1.6rem}.section-heading h2,.discipline-copy h2{font-size:clamp(2.5rem,5vw,4.1rem);margin-bottom:.9rem}.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:start}.story-block{padding:1.6rem;border:1px solid rgba(255,255,255,.48);border-radius:30px;background:linear-gradient(180deg,#fffbf7e0,#fff6f0bd),linear-gradient(120deg,#ffffffb8,#ffffff29);box-shadow:var(--shadow)}.story-block:nth-child(2){margin-top:2.4rem}.story-block:nth-child(3){margin-top:4.4rem}.story-block h3{margin:0 0 .7rem;font-family:Fraunces,serif;font-size:1.95rem;line-height:1.04;letter-spacing:-.04em}.discipline-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:center}.discipline-layout.portfolio-layout{grid-template-columns:1fr}.discipline-layout.reverse .discipline-media{order:2}.discipline-layout.reverse .discipline-copy{order:1}.discipline-media{padding:1rem;border:1px solid rgba(255,255,255,.48);border-radius:34px;background:linear-gradient(180deg,#fffbf7e0,#fff6f0bd),linear-gradient(120deg,#ffffffb8,#ffffff29);box-shadow:var(--shadow)}.discipline-media-portfolio{padding:0;border:none;border-radius:0;background:transparent;box-shadow:none}.discipline-surface{min-height:29rem;padding:1rem;border-radius:28px;border:1px solid rgba(255,255,255,.48)}.discipline-surface-inner{width:100%;height:100%;min-height:27rem;border-radius:22px;border:1px solid rgba(255,255,255,.46);box-shadow:inset 0 1px #ffffff4d}.cad-project-surface{display:flex;align-items:center;justify-content:center;min-height:29rem;padding:1rem;border-radius:28px;border:1px solid rgba(255,255,255,.48);background:linear-gradient(rgba(113,146,176,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(113,146,176,.14) 1px,transparent 1px),linear-gradient(145deg,#eff7fcf5,#d8e3ebe0);background-size:18px 18px,18px 18px,auto}.cad-project-image{display:block;width:100%;max-width:100%;max-height:28rem;object-fit:contain}.portfolio-hero{display:grid;gap:1.15rem}.portfolio-header{display:flex;align-items:end;justify-content:space-between;gap:1.25rem}.portfolio-heading h2{margin:.2rem 0 .45rem;font-family:Fraunces,serif;font-size:clamp(2rem,4vw,3rem);line-height:.98;letter-spacing:-.05em}.portfolio-heading p:last-child{margin:0;max-width:22rem;color:#392425b8;font-size:.96rem;line-height:1.6}.portfolio-rail-controls{display:inline-flex;gap:.55rem}.portfolio-header-actions{display:inline-flex;align-items:center;gap:.8rem;flex-wrap:wrap}.portfolio-rail-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.7rem;padding:.7rem 1rem;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:#fffaf6bd;color:var(--muted);font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;box-shadow:0 10px 26px #58302b14;cursor:pointer;transition:transform .18s ease,border-color .18s ease,color .18s ease}.portfolio-rail-button:hover,.portfolio-rail-button:focus-visible{transform:translateY(-2px);border-color:#ffffffb8;color:var(--text)}.portfolio-rail-track{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;overflow:visible}.portfolio-preview-card,.portfolio-page-piece{position:relative;overflow:visible;margin:0;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.portfolio-preview-card{border-radius:24px}.portfolio-preview-card{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;padding:0;transform:translateZ(0);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.portfolio-preview-card:after,.portfolio-page-piece:after{content:none}.portfolio-preview-card:hover,.portfolio-preview-card:focus-visible{transform:translateY(-.35rem);border-color:transparent;box-shadow:none}.portfolio-preview-card.shape-portrait,.portfolio-preview-card.shape-landscape{aspect-ratio:auto}.portfolio-piece-image{display:block;width:auto;max-width:100%;height:clamp(18rem,35vw,50rem);max-height:50rem;border-radius:24px;object-fit:contain;object-position:center center;transform:scale(1);transition:transform .28s ease}.portfolio-preview-card:hover .portfolio-piece-image,.portfolio-preview-card:focus-visible .portfolio-piece-image,.portfolio-page-piece:hover .portfolio-piece-image{transform:scale(var(--portfolio-image-scale-hover, 1.06))}.portfolio-image-paint-full,.portfolio-image-model-full,.portfolio-image-photo-full{--portfolio-image-scale-hover: 1.02}.portfolio-inline-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.8rem;padding:.7rem 1rem;border:1px solid rgba(255,255,255,.56);border-radius:999px;background:#fff8f3c2;color:var(--muted);font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;box-shadow:0 10px 24px #58302b1a;transition:transform .18s ease,color .18s ease,border-color .18s ease}.portfolio-inline-link:hover,.portfolio-inline-link:focus-visible{transform:translateY(-2px);color:var(--text);border-color:#ffffffb8}.portfolio-page{--portfolio-page-clearance: 4rem;padding-top:1rem;padding-bottom:0}.portfolio-page-scroll{position:relative;min-height:calc(100vh - var(--portfolio-page-clearance))}.portfolio-page-back{display:inline-flex;align-items:center;justify-content:center;min-height:2.8rem;padding:.55rem .9rem;border:1px solid rgba(255,255,255,.48);border-radius:999px;background:#fffaf6b3;color:var(--muted);font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;box-shadow:0 10px 24px #58302b14}.portfolio-page-heading{max-width:none;margin-bottom:1rem}.portfolio-page-heading-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.portfolio-page-heading h1{margin:0 0 .4rem;font-family:Fraunces,serif;font-size:clamp(2.4rem,5vw,4rem);line-height:.98;letter-spacing:-.05em}.portfolio-page-heading p:last-child{margin:0;color:var(--muted);font-size:.96rem;line-height:1.55}.portfolio-page-gallery{position:relative;height:calc(100vh - var(--portfolio-page-clearance));overflow:hidden}.portfolio-page-track{display:flex;align-items:flex-end;gap:0;height:100%;width:max-content;will-change:transform}.portfolio-page-piece{display:flex;align-items:flex-end;justify-content:center;flex:0 0 auto;border-radius:0}.portfolio-page-piece .portfolio-piece-image{height:calc(100vh - var(--portfolio-page-clearance));max-height:none;border-radius:0}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#120e0fe0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox-panel{display:flex;align-items:center;justify-content:center;max-width:92vw;max-height:90vh}.lightbox-image{display:block;max-width:92vw;max-height:90vh;width:auto;height:auto;object-fit:contain}.lightbox-close{position:absolute;top:1.2rem;right:1.2rem;z-index:2;display:inline-flex;align-items:center;justify-content:center;min-height:2.7rem;padding:.6rem .95rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#ffffff14;color:#fff7f2e6;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.tone-rose .discipline-surface{background:linear-gradient(180deg,rgba(255,255,255,.16),transparent 36%),linear-gradient(155deg,#f5e2d4f5,#dfb59dc7)}.tone-rose .discipline-surface-inner{background:radial-gradient(circle at 26% 22%,rgba(255,255,255,.52),transparent 18%),linear-gradient(155deg,#f8ece4f5,#e9bdb1c7)}.tone-leaf .discipline-surface{background:linear-gradient(180deg,rgba(58,46,50,.16),transparent 42%),linear-gradient(155deg,#dae4dcf5,#97ae9ec7)}.tone-leaf .discipline-surface-inner{background:linear-gradient(180deg,rgba(58,46,50,.18),transparent 44%),linear-gradient(155deg,#e5ece6f5,#acbfb2c7)}.tone-gold .discipline-surface{background:radial-gradient(circle at 24% 20%,rgba(255,255,255,.5),transparent 18%),linear-gradient(155deg,#f4ecd6f5,#dfc381c7)}.tone-gold .discipline-surface-inner{background:radial-gradient(circle at 62% 24%,rgba(255,255,255,.42),transparent 18%),linear-gradient(155deg,#f8f0ddf5,#e6ce95c7)}.tone-blue .discipline-surface{background:linear-gradient(rgba(113,146,176,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(113,146,176,.14) 1px,transparent 1px),linear-gradient(145deg,#eff7fcf5,#d8e3ebe0);background-size:18px 18px,18px 18px,auto}.tone-blue .discipline-surface-inner{background:radial-gradient(circle at 22% 18%,rgba(255,255,255,.56),transparent 18%),linear-gradient(145deg,#f5f9fcfa,#e0e9efeb)}.discipline-notes{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}.discipline-project-controls{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.5rem}.cad-section-note{margin-top:1rem;padding:.95rem 1.1rem;border:1px solid rgba(58,58,58,.18);border-radius:18px;background:#3a3a3a14;font-size:.92rem;line-height:1.65;opacity:.9}@keyframes headingSheen{0%{background-position:18% 50%}to{background-position:82% 50%}}@media(max-width:1080px){.hero,.discipline-layout{grid-template-columns:1fr}.hero{grid-template-areas:"copy" "stage" "scroll"}.story-grid{grid-template-columns:1fr}.story-block:nth-child(2),.story-block:nth-child(3){margin-top:0}.discipline-layout.portfolio-layout{grid-template-columns:1fr}.discipline-layout.reverse .discipline-media,.discipline-layout.reverse .discipline-copy{order:initial}.hero-stage{min-height:31rem}.hero-bento{top:8%;right:4%;bottom:8%;left:4%;grid-template-columns:1fr 1fr;grid-template-rows:1.1fr .95fr .95fr}.hero-bento-card-1{grid-column:1 / 2;grid-row:1 / 3}.hero-bento-card-2{grid-column:2 / 3;grid-row:1 / 2}.hero-bento-card-3{grid-column:2 / 3;grid-row:2 / 3}.hero-bento-card-4{grid-column:1 / 3;grid-row:3 / 4}}@media(max-width:760px){.topbar{padding:.8rem 1rem;border-radius:24px}.topnav,.topbar-socials{display:none}.mobile-nav{display:block}.section{padding:4rem 0}.hero{min-height:calc(100svh - 5.5rem);align-content:end;padding-top:3.125rem;padding-bottom:1.5rem}.hero-title{font-size:clamp(2.9rem,14vw,4.3rem)}.hero-actions{flex-direction:column;align-items:stretch}.contact-shell{grid-template-columns:1fr}.hero-stage{display:none}.hero-ribbon{width:9rem;height:10rem}.portfolio-header,.portfolio-page-heading-row{align-items:start;flex-direction:column}.portfolio-header-actions{width:100%;justify-content:space-between}.portfolio-rail-track{align-items:stretch;justify-content:stretch}.portfolio-preview-card{display:block;width:100%}.portfolio-page{padding-top:2rem}.portfolio-page-scroll{min-height:auto}.portfolio-page-gallery{height:auto;overflow:visible}.portfolio-page-track{flex-direction:column;align-items:stretch;gap:.5rem;width:100%;transform:none!important}.portfolio-page-piece{width:100%}.portfolio-page-piece .portfolio-piece-image,.portfolio-piece-image{width:100%;height:auto;max-height:none}.portfolio-page-piece .portfolio-piece-image{border-radius:0}.portfolio-preview-card.shape-portrait,.portfolio-preview-card.shape-landscape{flex:0 0 100%}.cad-project-surface{min-height:auto}.cad-project-image{width:100%;height:auto;max-height:none}.hero-bento{top:8%;right:0;bottom:6%;left:0;grid-template-columns:1fr;grid-template-rows:repeat(4,minmax(0,1fr))}.hero-bento-card-1,.hero-bento-card-2,.hero-bento-card-3,.hero-bento-card-4{grid-column:1 / 2;grid-row:auto}.hero-bento-card{border-radius:22px}.hero-bento-title{font-size:.82rem}.discipline-surface,.discipline-surface-inner{min-height:20rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-reduced-motion:no-preference){.hero-scroll-dot{animation:hero-scroll-dot 1.8s ease-in-out infinite}}@keyframes hero-scroll-dot{0%{opacity:.25;transform:translate(-50%) translateY(0)}50%{opacity:1;transform:translate(-50%) translateY(.7rem)}to{opacity:.25;transform:translate(-50%) translateY(0)}}
