/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--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-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]){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;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{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--paper:#f2e7db;--sand:#e6d2c1;--title:#543a30;--text:#76594a;--text-on-sand:#664839;--cream:#fbf5ee;--cocoa:#6b4b3e;--rose:#9a6a56;--gold:#b58f78;--gold-deep:#7d5a47;--champagne:#8a654f;--paper-soft:#f8f0e7;--paper-deep:#eedfd0;--marquee-bg:#543a30;--marquee-text:#f2e7db;--marquee-accent:#c8a58b;--line:var(--title)}@supports (color:color-mix(in lab, red, red)){:root{--line:color-mix(in srgb, var(--title) 20%, transparent)}}:root{--font-display:"Cormorant Garamond", Georgia, serif;--font-sans:"DM Sans", Arial, sans-serif;--gutter:clamp(20px, 5.2vw, 72px);--max:1360px;--section-space:clamp(84px, 12vw, 170px);--ease:cubic-bezier(.2, .7, .2, 1);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper);scroll-padding-top:76px}body{background:var(--paper);min-height:100vh;color:var(--text);margin:0;font-size:16px;line-height:1.65;overflow-x:clip}body.is-locked{overflow:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--title);outline-offset:4px}h1,h2,h3,h4{color:var(--title)}::selection{color:var(--cream);background:var(--title)}h1,h2,h3,h4,p,ul,figure,blockquote{margin:0;padding:0}ul{list-style:none}.wrap{width:min(100% - var(--gutter) * 2, var(--max));margin-inline:auto}.display{font-family:var(--font-display);letter-spacing:-.012em;font-size:clamp(2.9rem,6.6vw,6rem);font-weight:400;line-height:.98}.display em,.hero h1 em{color:var(--rose);font-style:italic;font-weight:300}.eyebrow{color:var(--gold-deep);letter-spacing:.24em;text-transform:uppercase;align-items:center;gap:14px;margin-bottom:26px;font-size:12px;font-weight:600;display:flex}.eyebrow b{font-family:var(--font-display);letter-spacing:0;font-size:24px;font-style:italic;font-weight:400;line-height:1}.eyebrow i{opacity:.7;background:currentColor;width:52px;height:1px}.btn{letter-spacing:.1em;text-transform:uppercase;min-height:58px;transition:transform .22s var(--ease), box-shadow .22s ease, background-color .22s ease, color .22s ease;border-radius:999px;justify-content:center;align-items:center;gap:18px;padding:0 28px;font-size:13px;font-weight:700;display:inline-flex}.btn-icon{background:var(--sand);width:40px;height:40px;color:var(--title);transition:transform .28s var(--ease), background-color .22s ease;border-radius:50%;place-items:center;font-size:18px;font-weight:400;display:grid}.btn-gold{color:var(--cream);background:var(--title);box-shadow:0 12px 30px var(--title)}@supports (color:color-mix(in lab, red, red)){.btn-gold{box-shadow:0 12px 30px color-mix(in srgb, var(--title) 24%, transparent)}}.btn-dark{color:var(--cream);background:var(--title)}.btn-lg{min-height:68px;padding-inline:34px}.btn-label{align-items:center;gap:12px;display:inline-flex}.wa-icon{flex:none;width:1.5em;height:1.5em}.btn-label .wa-icon{width:21px;height:21px}.edu-chips .wa-icon{width:19px;height:19px;color:var(--title)}.btn:active,.pill-cta:active,.wa-float:active{transform:scale(.97)}.link-arrow{color:var(--title);letter-spacing:.16em;text-transform:uppercase;transition:color .22s ease, gap .26s var(--ease);border-bottom:1px solid;align-items:center;gap:12px;padding-block:10px;font-size:12px;font-weight:700;display:inline-flex}.link-arrow b{font-size:16px;font-weight:400}.site-header{z-index:50;color:var(--title);transition:transform .52s var(--ease), background-color .3s ease;position:fixed;inset:0 0 auto}.site-header.is-scrolled{background:var(--paper)}@supports (color:color-mix(in lab, red, red)){.site-header.is-scrolled{background:color-mix(in srgb, var(--paper) 95%, transparent)}}.site-header.is-scrolled{box-shadow:0 1px 0 var(--line)}.site-header.is-hidden{transform:translateY(-100%)}.header-inner{width:min(100% - var(--gutter) * 2, var(--max));height:78px;transition:height .3s var(--ease);justify-content:space-between;align-items:center;gap:12px;margin-inline:auto;display:flex}.site-header.is-scrolled .header-inner{height:66px}.brand{align-items:center;gap:12px;display:inline-flex}.brand-mark{border:1px solid var(--rose);width:44px;height:44px;color:var(--title);font-family:var(--font-display);letter-spacing:.04em;border-radius:50%;place-items:center;font-size:18px;display:grid}.brand-name{font-family:var(--font-display);font-size:25px;font-weight:500;line-height:1;display:grid}.brand-name small{color:var(--gold-deep);font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;margin-top:6px;font-size:10px;font-weight:600}.desktop-nav{display:none}.pill-cta{border:1px solid var(--title);place-items:center;width:46px;height:46px;margin-left:auto;display:grid}@supports (color:color-mix(in lab, red, red)){.pill-cta{border:1px solid color-mix(in srgb, var(--title) 45%, transparent)}}.pill-cta{color:var(--title);border-radius:50%}.pill-cta svg{width:22px;height:22px}.pill-cta span,.pill-cta b{display:none}.menu-toggle{border:1px solid var(--title);align-content:center;justify-items:center;gap:7px;width:46px;height:46px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.menu-toggle{border:1px solid color-mix(in srgb, var(--title) 40%, transparent)}}.menu-toggle{background:0 0;border-radius:50%}.menu-toggle span{background:var(--title);width:16px;height:1px;transition:transform .32s var(--ease)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px)rotate(-45deg)}.mobile-menu{z-index:45;padding:110px var(--gutter) max(32px, env(safe-area-inset-bottom));color:var(--title);background:radial-gradient(90% 50% at 90% 0%, var(--sand), transparent 70%), var(--paper);flex-direction:column;justify-content:space-between;gap:32px;display:flex;position:fixed;inset:0;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.mobile-menu{background:radial-gradient(90% 50% at 90% 0%, color-mix(in srgb, var(--sand) 90%, transparent), transparent 70%), var(--paper)}}.mobile-menu{visibility:hidden;clip-path:circle(0 at calc(100% - 44px) 44px);transition:clip-path .76s var(--ease), visibility 0s linear .76s}.mobile-menu.is-open{visibility:visible;clip-path:circle(150% at calc(100% - 44px) 44px);transition:clip-path .76s var(--ease), visibility 0s}.mobile-menu nav{display:grid}.mobile-menu nav a{border-bottom:1px solid var(--line);font-family:var(--font-display);align-items:baseline;gap:18px;padding:14px 0;font-size:clamp(2.4rem,11vw,3.6rem);font-weight:300;line-height:1.05;display:flex}.mobile-menu nav small{width:28px;color:var(--gold-deep);font-family:var(--font-sans);letter-spacing:.14em;font-size:12px;font-weight:600}.mobile-menu nav a,.mobile-menu-foot{opacity:0;transition:opacity .5s ease, transform .7s var(--ease);transform:translateY(26px)}.mobile-menu.is-open nav a,.mobile-menu.is-open .mobile-menu-foot{opacity:1;transition-delay:calc(.26s + var(--i,0) * 70ms);transform:none}.mobile-menu-foot{gap:22px;display:grid}.mobile-menu-foot .btn{width:100%}.mobile-menu-foot p{color:var(--rose);font-family:var(--font-display);font-size:22px;font-style:italic}.mobile-menu-foot i{font-style:normal}.hero{isolation:isolate;min-height:100svh;color:var(--title);background:radial-gradient(70% 60% at 82% 34%, var(--sand), transparent 72%), linear-gradient(180deg, var(--paper) 0%, var(--paper-deep) 100%);flex-direction:column;justify-content:space-between;padding-top:96px;display:flex;position:relative;overflow:clip}@supports (color:color-mix(in lab, red, red)){.hero{background:radial-gradient(70% 60% at 82% 34%, color-mix(in srgb, var(--sand) 95%, transparent), transparent 72%), linear-gradient(180deg, var(--paper) 0%, var(--paper-deep) 100%)}}.hero-ring{z-index:-1;aspect-ratio:1;border:1px solid var(--title);width:92vw;position:absolute;top:6%;right:-26vw}@supports (color:color-mix(in lab, red, red)){.hero-ring{border:1px solid color-mix(in srgb, var(--title) 14%, transparent)}}.hero-ring{border-radius:50%}.hero-ring:after{border:1px solid var(--title);position:absolute;inset:9%}@supports (color:color-mix(in lab, red, red)){.hero-ring:after{border:1px solid color-mix(in srgb, var(--title) 9%, transparent)}}.hero-ring:after{content:"";border-radius:50%}.hero-grid{width:min(100% - var(--gutter) * 2, var(--max));grid-template-columns:1fr;gap:0;margin-inline:auto;padding-block:8px 28px;display:grid;position:relative}.hero-copy{display:contents}.hero-kicker{color:var(--gold-deep);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;order:0;align-items:center;gap:8px;margin-bottom:22px;font-size:10px;font-weight:600;display:flex}.hero-kicker i{background:currentColor;width:34px;height:1px}.hero-kicker span{color:var(--rose)}.hero-kicker em{opacity:.6;font-style:normal}@media (width>=640px){.hero-kicker{letter-spacing:.2em;gap:10px;font-size:11px}}.hero-portrait{width:min(100%,460px);transform:translate3d(0, var(--py,0px), 0);order:1;justify-self:end;position:relative}.hero-portrait:before{border:1px solid var(--title);position:absolute;inset:16px -12px -16px 16px}@supports (color:color-mix(in lab, red, red)){.hero-portrait:before{border:1px solid color-mix(in srgb, var(--title) 38%, transparent)}}.hero-portrait:before{content:""}.portrait-frame{aspect-ratio:1/1.02;background:var(--sand);position:relative;overflow:hidden}.portrait-frame:after{background:linear-gradient(transparent, var(--title));position:absolute;inset:68% 0 0}@supports (color:color-mix(in lab, red, red)){.portrait-frame:after{background:linear-gradient(transparent, color-mix(in srgb, var(--title) 26%, transparent))}}.portrait-frame:after{content:"";pointer-events:none}.portrait-frame img{object-fit:cover;object-position:var(--img-position,50% 50%);width:100%;height:100%}.badge{z-index:3;width:96px;height:96px;color:var(--title);background:var(--paper);box-shadow:0 8px 24px var(--title);border-radius:50%;padding:5px;position:absolute;bottom:36px;left:-8px}@supports (color:color-mix(in lab, red, red)){.badge{box-shadow:0 8px 24px color-mix(in srgb, var(--title) 20%, transparent)}}.badge:before{content:none}.badge-ring{transform-origin:60px 60px}.badge text{fill:currentColor;font-family:var(--font-sans);letter-spacing:.14em;font-size:9.2px;font-weight:600}.badge .badge-sn{font-family:var(--font-display);letter-spacing:.04em;font-size:22px;font-weight:500}.hero h1{z-index:3;font-family:var(--font-display);letter-spacing:-.03em;pointer-events:none;order:2;margin:-.32em 0 0 -4px;font-size:clamp(5.4rem,29vw,9.5rem);font-weight:300;line-height:.84;position:relative}.h1-line{margin:0 -.06em -.1em;padding:0 .06em .1em;display:block;overflow:hidden}.h1-line>span{display:block}.h1-line-2{padding-left:.5em}.hero h1 em{color:var(--rose)}.hero-lead{max-width:440px;color:var(--text);order:3;margin-top:28px;font-size:17px;line-height:1.75}.hero-actions{flex-wrap:wrap;order:4;align-items:center;gap:18px 28px;margin-top:30px;display:flex}.hero-actions .link-arrow{color:var(--title)}.hero-foot{display:none}.services:before,.education:before,.site-footer:before,.portfolio:before,.contact:before{z-index:-1;content:"";pointer-events:none;height:clamp(170px,24vw,340px);position:absolute;inset:0 0 auto}.services:before,.education:before,.site-footer:before{background:linear-gradient(180deg, var(--paper) 0%, var(--paper) 10%, var(--paper) 26%, var(--paper) 46%, var(--paper) 66%, var(--paper) 84%, var(--paper) 100%)}@supports (color:color-mix(in lab, red, red)){.services:before,.education:before,.site-footer:before{background:linear-gradient(180deg, color-mix(in srgb, var(--paper) 100%, transparent) 0%, color-mix(in srgb, var(--paper) 88%, transparent) 10%, color-mix(in srgb, var(--paper) 70%, transparent) 26%, color-mix(in srgb, var(--paper) 46%, transparent) 46%, color-mix(in srgb, var(--paper) 24%, transparent) 66%, color-mix(in srgb, var(--paper) 9%, transparent) 84%, color-mix(in srgb, var(--paper) 0%, transparent) 100%)}}.portfolio:before,.contact:before{background:linear-gradient(180deg, var(--sand) 0%, var(--sand) 10%, var(--sand) 26%, var(--sand) 46%, var(--sand) 66%, var(--sand) 84%, var(--sand) 100%)}@supports (color:color-mix(in lab, red, red)){.portfolio:before,.contact:before{background:linear-gradient(180deg, color-mix(in srgb, var(--sand) 100%, transparent) 0%, color-mix(in srgb, var(--sand) 88%, transparent) 10%, color-mix(in srgb, var(--sand) 70%, transparent) 26%, color-mix(in srgb, var(--sand) 46%, transparent) 46%, color-mix(in srgb, var(--sand) 24%, transparent) 66%, color-mix(in srgb, var(--sand) 9%, transparent) 84%, color-mix(in srgb, var(--sand) 0%, transparent) 100%)}}.marquee{border-block:1px solid var(--paper);overflow:hidden}@supports (color:color-mix(in lab, red, red)){.marquee{border-block:1px solid color-mix(in srgb, var(--paper) 14%, transparent)}}.marquee{color:var(--marquee-text);background:var(--marquee-bg)}.marquee-track{width:max-content;animation:marquee var(--marquee-duration,46s) linear infinite;display:flex}.marquee--reverse .marquee-track{animation-direction:reverse}.marquee ul{flex-shrink:0;display:flex}.marquee li{font-family:var(--font-display);letter-spacing:.02em;white-space:nowrap;align-items:center;gap:28px;padding:15px 0 15px 28px;font-size:clamp(1.25rem,2.7vw,1.8rem);font-style:italic;font-weight:300;display:inline-flex}.marquee li i{color:var(--marquee-accent);font-size:.55em;font-style:normal}.about{padding-block:clamp(84px,13vw,190px);position:relative;overflow:clip}.about-grid{z-index:1;gap:56px;display:grid;position:relative}.about-media{width:min(86%,440px);position:relative}.about-media:before{border:1px solid var(--gold);content:"";opacity:.6;position:absolute;inset:20px -20px -20px 20px}.about-photo{aspect-ratio:3/4;background:var(--sand);position:relative;overflow:hidden}.about-photo img{width:100%;height:var(--img-height,100%);object-fit:cover;object-position:var(--img-position,50% 50%)}.about-tag{z-index:2;color:var(--cream);background:var(--title);gap:2px;padding:14px 22px;display:grid;position:absolute;bottom:28px;right:-18px}.about-tag small{color:var(--sand);letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-weight:600}.about-tag span{font-family:var(--font-display);font-size:24px;font-style:italic}.about-text{max-width:540px;color:var(--text);gap:16px;margin-top:30px;font-size:17px;line-height:1.85;display:grid}.about-quote{border-left:2px solid var(--gold);max-width:520px;font-family:var(--font-display);color:var(--title);margin-top:40px;padding-left:24px;font-size:clamp(1.8rem,4vw,2.5rem);font-style:italic;font-weight:400;line-height:1.15}.pillars{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:0;max-width:540px;margin-top:44px;display:grid}.pillars li{gap:6px;padding:18px 12px 0 0;display:grid}.pillars small{color:var(--gold-deep);letter-spacing:.14em;font-size:12px;font-weight:600}.pillars b{font-family:var(--font-display);font-size:clamp(1.25rem,4vw,1.7rem);font-weight:500}.services{--text:var(--text-on-sand);isolation:isolate;padding-block:var(--section-space);color:var(--title);background:radial-gradient(60% 40% at 0% 0%, var(--paper), transparent 70%), var(--sand);position:relative}@supports (color:color-mix(in lab, red, red)){.services{background:radial-gradient(60% 40% at 0% 0%, color-mix(in srgb, var(--paper) 75%, transparent), transparent 70%), var(--sand)}}.services-head{gap:28px;margin-bottom:clamp(44px,7vw,90px);display:grid}.services-aside{max-width:440px;color:var(--text);justify-items:start;gap:18px;font-size:17px;line-height:1.8;display:grid}.service-groups{border-top:1px solid var(--line);display:grid}.service-group{border-bottom:1px solid var(--line);gap:6px;padding-block:clamp(26px,4vw,48px);display:grid}.service-group-head{align-items:baseline;gap:16px;display:flex}.group-num{color:var(--rose);font-family:var(--font-display);font-size:22px;font-style:italic}.service-group h3{font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);font-weight:400;line-height:1}.service-link{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding-block:18px;transition:color .24s;display:flex}.service-rows li:first-child .service-link{margin-top:14px}.service-text{gap:4px;min-width:0;display:grid}.service-name{font-family:var(--font-display);transition:transform .38s var(--ease);font-size:clamp(1.35rem,3.6vw,1.75rem);line-height:1.15}.service-note{color:var(--text);font-size:15px;line-height:1.55}.service-end{flex-shrink:0;align-items:center;gap:clamp(12px,2.4vw,22px);display:flex}.service-price{font-variant-numeric:lining-nums;color:var(--title);font-family:var(--font-display);white-space:nowrap;align-items:baseline;gap:5px;font-size:clamp(1.45rem,4vw,2rem);font-weight:600;line-height:1;display:inline-flex}.service-price small{font-family:var(--font-sans);letter-spacing:.12em;font-size:.42em;font-weight:700}.service-go{border:1px solid var(--title);flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}@supports (color:color-mix(in lab, red, red)){.service-go{border:1px solid color-mix(in srgb, var(--title) 40%, transparent)}}.service-go{color:var(--title);transition:background-color .24s ease, color .24s ease, transform .32s var(--ease);border-radius:50%;font-size:17px;font-weight:400}.service-go .wa-icon{width:22px;height:22px;display:block}.service-link:active .service-go{color:var(--cream);background:var(--title)}.services-cta{color:var(--title);font-family:var(--font-display);justify-items:start;gap:18px;margin-top:clamp(36px,5vw,64px);font-size:clamp(1.6rem,4vw,2.2rem);font-style:italic;line-height:1.2;display:grid}.services-cta .btn{font-family:var(--font-sans);width:100%;max-width:380px;font-style:normal}.portfolio{isolation:isolate;padding-block:var(--section-space) clamp(70px, 10vw, 150px);background:var(--paper);position:relative;overflow-x:clip}.portfolio-head{justify-items:start;gap:22px;margin-bottom:clamp(36px,5vw,64px);display:grid}.portfolio-grid{padding:4px var(--gutter) 6px;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none;gap:12px;width:100%;max-width:none;margin-inline:0;display:flex;overflow-x:auto}.portfolio-grid::-webkit-scrollbar{display:none}.portfolio-item{isolation:isolate;aspect-ratio:4/5.2;background:var(--sand);text-align:left;scroll-snap-align:center;cursor:zoom-in;border:0;flex:0 0 76%;padding:0;position:relative;overflow:hidden}.portfolio-item:after{z-index:0;background:linear-gradient(transparent, var(--title));position:absolute;inset:52% 0 0}@supports (color:color-mix(in lab, red, red)){.portfolio-item:after{background:linear-gradient(transparent, color-mix(in srgb, var(--title) 72%, transparent))}}.portfolio-item:after{content:"";pointer-events:none}.portfolio-item img{object-fit:cover;object-position:var(--img-position,50% 50%);width:100%;height:100%;transition:transform 1.1s var(--ease)}.portfolio-caption{z-index:1;color:var(--cream);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:12px;font-size:12px;font-weight:600;display:flex;position:absolute;bottom:16px;left:18px;right:18px}.portfolio-caption small{color:var(--sand);font-family:var(--font-display);letter-spacing:0;font-size:22px;font-style:italic;font-weight:400}.portfolio-caption span{flex:1}.portfolio-caption b{border:1px solid var(--cream);place-items:center;width:36px;height:36px;display:grid}@supports (color:color-mix(in lab, red, red)){.portfolio-caption b{border:1px solid color-mix(in srgb, var(--cream) 60%, transparent)}}.portfolio-caption b{transition:background-color .24s ease, color .24s ease, transform .4s var(--ease);border-radius:50%;font-size:18px;font-weight:300}.swipe-hint{color:var(--text);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:14px;margin-top:18px;font-size:11px;font-weight:600;display:flex}.swipe-hint i{transform-origin:0;width:46px;height:1px;animation:swipe-line 2.4s var(--ease) infinite;background:currentColor}.education{--text:var(--text-on-sand);isolation:isolate;padding-block:var(--section-space);color:var(--title);background:radial-gradient(60% 45% at 100% 38%, var(--paper), transparent 70%), var(--sand);position:relative;overflow:clip}@supports (color:color-mix(in lab, red, red)){.education{background:radial-gradient(60% 45% at 100% 38%, color-mix(in srgb, var(--paper) 70%, transparent), transparent 70%), var(--sand)}}.edu-grid{z-index:1;gap:56px;display:grid;position:relative}.edu-media{justify-self:start;width:min(90%,460px);position:relative}.edu-media:before{border:1px solid var(--title);position:absolute;inset:-18px 18px 18px -18px}@supports (color:color-mix(in lab, red, red)){.edu-media:before{border:1px solid color-mix(in srgb, var(--title) 38%, transparent)}}.edu-media:before{content:""}.edu-photo{aspect-ratio:1/1.12;background:var(--paper);position:relative;overflow:hidden}.edu-photo img{object-fit:cover;object-position:var(--img-position,50% 50%);width:100%;height:100%}.edu-seal{z-index:2;color:var(--cream);background:var(--title);gap:2px;padding:16px 24px;display:grid;position:absolute;bottom:-20px;right:-14px}.edu-seal small{letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-weight:700}.edu-seal span{font-family:var(--font-display);font-size:28px;font-style:italic;font-weight:500;line-height:1}.edu-lead{max-width:560px;color:var(--text);margin-top:28px;font-size:18px;line-height:1.8}.edu-points{border-top:1px solid var(--line);margin-top:38px;display:grid}.edu-points li{border-bottom:1px solid var(--line);grid-template-columns:44px 1fr;column-gap:12px;padding:20px 0;display:grid}.edu-points small{color:var(--gold-deep);letter-spacing:.14em;grid-row:span 2;padding-top:8px;font-size:12px;font-weight:600}.edu-points h3{font-family:var(--font-display);font-size:clamp(1.7rem,4.6vw,2.2rem);font-weight:400;line-height:1.05}.edu-points p{color:var(--text);margin-top:6px;font-size:15px;line-height:1.6}.edu-ask{margin-top:34px}.edu-ask-title{color:var(--gold-deep);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:600;line-height:1.6}.edu-chips{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.edu-chips a{border:1px solid var(--title);align-items:center;gap:12px;min-height:48px;padding:0 20px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.edu-chips a{border:1px solid color-mix(in srgb, var(--title) 40%, transparent)}}.edu-chips a{color:var(--title);border-radius:999px;font-size:14px;font-weight:500;transition:color .22s,background-color .22s,border-color .22s}.edu-chips b{color:var(--rose);font-weight:400}.edu-chips a:active{color:var(--cream);background:var(--title)}.edu-cta{justify-items:start;gap:16px;margin-top:28px;display:grid}.edu-cta .btn{width:100%;max-width:380px}.edu-cta p{color:var(--text);font-size:14px}.contact{isolation:isolate;padding-block:var(--section-space);background:radial-gradient(70% 70% at 50% 0%, var(--paper-soft), transparent 75%), var(--paper);position:relative;overflow:clip}.contact-inner{gap:34px;display:grid}.contact-title{max-width:14ch;font-size:clamp(3.2rem,9.4vw,8.6rem);line-height:.92}.contact-title em{display:block}.contact-row{max-width:560px;color:var(--text);justify-items:start;gap:26px;font-size:18px;line-height:1.75;display:grid}.contact-row .btn{width:100%;max-width:400px}.contact-meta{border-top:1px solid var(--line);gap:0;margin-top:16px;display:grid}.contact-meta li{border-bottom:1px solid var(--line);gap:4px;padding:20px 0;display:grid}.contact-meta small{color:var(--gold-deep);letter-spacing:.2em;text-transform:uppercase;font-size:11px;font-weight:700}.contact-meta a,.contact-meta span{font-family:var(--font-display);font-size:clamp(1.5rem,4.4vw,2rem);line-height:1.15}.site-footer{--text:var(--text-on-sand);isolation:isolate;color:var(--title);background:var(--sand);position:relative;overflow:clip}.footer-main{gap:28px;padding-block:clamp(76px,9vw,120px) 44px;display:grid}.footer-main .brand-name small{color:var(--gold-deep)}.footer-links{flex-wrap:wrap;gap:14px 30px;display:flex}.footer-links a{letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:10px;font-size:13px;font-weight:600;transition:color .22s;display:inline-flex}.footer-links span{color:var(--rose)}.footer-bottom{padding-block:22px max(22px, env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--text);flex-wrap:wrap;justify-content:space-between;gap:8px 20px;font-size:12px;display:flex}.wa-float{right:14px;bottom:max(14px, env(safe-area-inset-bottom));z-index:40;min-height:68px;color:var(--cream);background:var(--title);box-shadow:0 18px 40px var(--title);border-radius:999px;align-items:center;gap:12px;padding:0 26px 0 20px;display:inline-flex;position:fixed}@supports (color:color-mix(in lab, red, red)){.wa-float{box-shadow:0 18px 40px color-mix(in srgb, var(--title) 36%, transparent)}}.wa-float{letter-spacing:.1em;text-transform:uppercase;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .42s ease, transform .52s var(--ease), visibility 0s linear .52s;font-size:14px;font-weight:700;transform:translateY(18px)scale(.96)}.wa-float svg{flex-shrink:0;width:34px;height:34px}.wa-float.is-shown{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .42s ease, transform .52s var(--ease), visibility 0s;transform:none}html:not(.js) .wa-float{opacity:1;visibility:visible;pointer-events:auto;transform:none}.lightbox{z-index:100;color:var(--title);background:var(--paper);opacity:0;pointer-events:none;place-items:center;padding:70px 16px 40px;transition:opacity .26s;display:grid;position:fixed;inset:0}.lightbox.is-open{opacity:1;pointer-events:auto}.lb-btn{z-index:2;border:1px solid var(--title);place-items:center;width:48px;height:48px;display:grid;position:absolute}@supports (color:color-mix(in lab, red, red)){.lb-btn{border:1px solid color-mix(in srgb, var(--title) 40%, transparent)}}.lb-btn{color:var(--title);background:var(--paper);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.lb-btn{background:color-mix(in srgb, var(--paper) 80%, transparent)}}.lb-btn{font-size:22px;transition:color .2s,background-color .2s,border-color .2s}.lb-close{font-size:30px;font-weight:300;top:14px;right:14px}.lb-prev,.lb-next{bottom:20px}.lb-prev{left:14px}.lb-next{right:14px}.lightbox-figure{justify-items:center;gap:16px;max-width:min(1100px,94vw);max-height:100%;display:grid}.lightbox-figure img{object-fit:contain;opacity:0;width:auto;max-width:100%;height:auto;max-height:74vh;transition:opacity .32s ease, transform .52s var(--ease);transform:scale(.98)}.lightbox-figure img.is-loaded{opacity:1;transform:none}.lightbox-figure figcaption{color:var(--gold-deep);letter-spacing:.16em;text-transform:uppercase;opacity:0;align-items:baseline;gap:14px;font-size:12px;font-weight:600;transition:opacity .32s .12s;display:flex}.lightbox-figure figcaption small{color:var(--text);font-size:12px}.lightbox-figure img.is-loaded+figcaption{opacity:1}@keyframes reveal-up{0%{opacity:0;translate:0 34px}}@keyframes word-up{0%{translate:0 112%}}@keyframes mask-in{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes zoom-settle{0%{scale:1.22}}@keyframes fade-in{0%{opacity:0}}@keyframes marquee{to{transform:translate(-50%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes swipe-line{0%{opacity:.4;transform:scaleX(.2)}60%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}@keyframes scroll-cue{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom}to{transform-origin:bottom;transform:scaleY(0)}}@keyframes frame-in{0%{opacity:0;transform:translate(-12px,12px)}}@keyframes menu-in{0%{opacity:0;transform:translateY(20px)}}.js [data-reveal]:not(.is-visible),.js [data-stagger]:not(.is-visible)>*{opacity:0}.js [data-reveal=image]:not(.is-visible){opacity:1}.js [data-reveal=image]:not(.is-visible)>img{clip-path:inset(0 0 100%)}.js [data-split]:not(.is-split){opacity:0}.js [data-split]:not(.is-visible) .w>span{translate:0 112%}.w{vertical-align:top;margin:0 -.07em -.16em;padding:0 .07em .16em;display:inline-block;overflow:hidden}.w>span{display:inline-block}@media (hover:hover) and (pointer:fine){.btn-gold:hover{background:var(--cocoa);box-shadow:0 18px 40px var(--title);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.btn-gold:hover{box-shadow:0 18px 40px color-mix(in srgb, var(--title) 32%, transparent)}}.btn-dark:hover{background:var(--cocoa);transform:translateY(-3px)}.btn:hover .btn-icon{transform:rotate(45deg)}.link-arrow:hover{color:var(--rose);gap:18px}.pill-cta:hover{color:var(--cream);background:var(--title);border-color:var(--title)}.desktop-nav a:hover{color:var(--champagne)}.service-link:hover .service-name{transform:translate(12px)}.service-link:hover{color:var(--champagne)}.service-link:hover .service-go{color:var(--cream);background:var(--title);transform:scale(1.08)}.portfolio-item:hover img{transform:scale(1.06)}.portfolio-item:hover .portfolio-caption b{color:var(--title);background:var(--paper);transform:rotate(90deg)}.footer-links a:hover{color:var(--champagne)}.edu-chips a:hover{color:var(--cream);background:var(--title);border-color:var(--title)}.edu-chips a:hover b{color:var(--sand)}.contact-meta a:hover{color:var(--rose)}.wa-float:hover{transform:translateY(-3px)}.lb-btn:hover{color:var(--cream);background:var(--title);border-color:var(--title)}.marquee:hover .marquee-track{animation-play-state:paused}}.portfolio-item:focus-visible img{transform:scale(1.04)}.portfolio-item:active img{transform:scale(1.03)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;color:var(--cream);background:var(--title);transition:transform .24s var(--ease);border-radius:999px;padding:12px 20px;font-size:13px;font-weight:700;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus-visible{outline-offset:3px;transform:none}main:focus{outline:none}.on-dark a:focus-visible,.on-dark button:focus-visible{outline-color:var(--title)}.btn-outline{color:var(--title);border:1px solid var(--title);background:0 0}@supports (color:color-mix(in lab, red, red)){.btn-outline{border:1px solid color-mix(in srgb, var(--title) 55%, transparent)}}.btn-outline{box-shadow:none}.btn-outline .btn-icon{background:var(--title)}@supports (color:color-mix(in lab, red, red)){.btn-outline .btn-icon{background:color-mix(in srgb, var(--title) 10%, transparent)}}@media (hover:hover) and (pointer:fine){.btn-outline:hover{color:var(--cream);background:var(--title);border-color:var(--title);transform:translateY(-3px)}.btn-outline:hover .btn-icon{background:var(--sand)}}.btn-outline:active{color:var(--cream);background:var(--title)}.btn:focus-visible{outline-offset:3px}.hero-actions{gap:12px}.hero-actions .btn{flex:100%;max-width:400px}.hero-note{color:var(--text);flex-wrap:wrap;order:5;align-items:center;gap:6px 22px;margin-top:22px;font-size:13px;display:flex}.hero-note .link-arrow{padding-block:6px}.hero-note>span{color:var(--text)}.hero-kicker{font-size:11px}.portrait-frame{aspect-ratio:1/.9}.steps{margin-bottom:clamp(36px,5vw,64px)}.steps-title{color:var(--gold-deep);letter-spacing:.2em;text-transform:uppercase;margin-bottom:14px;font-size:12px;font-weight:700}.steps ol{border-top:1px solid var(--line);display:grid}.steps li{border-bottom:1px solid var(--line);grid-template-columns:40px 1fr;column-gap:8px;padding:16px 0;display:grid}.steps small{color:var(--rose);font-family:var(--font-display);grid-row:span 2;padding-top:5px;font-size:22px;font-style:italic}.steps b{color:var(--title);font-family:var(--font-display);font-size:1.35rem;font-weight:500;line-height:1.2}.steps span{color:var(--text);font-size:15px;line-height:1.55}.service-note{font-size:15px}.service-link:active{background:var(--paper)}@supports (color:color-mix(in lab, red, red)){.service-link:active{background:color-mix(in srgb, var(--paper) 45%, transparent)}}.portfolio-cta{color:var(--title);font-family:var(--font-display);justify-items:start;gap:18px;margin-top:clamp(36px,5vw,60px);font-size:clamp(1.6rem,4vw,2.2rem);font-style:italic;line-height:1.2;display:grid}.portfolio-cta p{max-width:30ch}.portfolio-cta .btn{width:100%;max-width:380px;font-family:var(--font-sans);font-style:normal}.swipe-hint{font-size:12px}.lightbox-figure{gap:14px}.lb-cta{min-height:48px;color:var(--cream);background:var(--title);letter-spacing:.12em;text-transform:uppercase;transition:background-color .22s ease, transform .22s var(--ease);border-radius:999px;align-items:center;gap:10px;padding:0 24px;font-size:12px;font-weight:700;display:inline-flex}.lb-cta .wa-icon{width:20px;height:20px}.lb-cta:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.lb-cta:hover{background:var(--cocoa);transform:translateY(-2px)}}.lb-cta:focus-visible,.lb-btn:focus-visible{outline:2px solid var(--title);outline-offset:3px}.lightbox-figure img{max-height:66vh}.contact-text{max-width:560px;color:var(--text);font-size:18px;line-height:1.75}.contact-paths{gap:16px;display:grid}.contact-path{border:1px solid var(--line);background:var(--paper-soft);align-content:start;justify-items:start;gap:10px;padding:clamp(24px,4vw,40px);display:grid}@supports (color:color-mix(in lab, red, red)){.contact-path{background:color-mix(in srgb, var(--paper-soft) 60%, transparent)}}.contact-path small{color:var(--gold-deep);letter-spacing:.2em;text-transform:uppercase;font-size:12px;font-weight:700}.contact-path h3{font-family:var(--font-display);font-size:clamp(1.9rem,4.6vw,2.6rem);font-weight:400;line-height:1.05}.contact-path p{color:var(--text);margin-bottom:14px;font-size:16px;line-height:1.6}.contact-path .btn{width:100%;max-width:400px;margin-top:auto}.contact-meta small{font-size:12px}.wa-float{min-height:56px;padding:0 22px 0 16px;font-size:13px}.wa-float svg{width:28px;height:28px}.mobile-menu-foot{gap:12px}.mobile-menu-foot p{margin-top:8px}@media (width>=640px){.steps ol{border-top:0;grid-template-columns:repeat(3,1fr);gap:28px}.steps li{border-top:1px solid var(--line);border-bottom:0;grid-template-columns:1fr;padding:18px 0 0;display:grid}.steps small{grid-row:auto;padding:0 0 6px}}@media (width>=900px){.hero-actions .btn{flex:none;min-width:270px}.hero-note{margin-top:26px}.portrait-frame{aspect-ratio:710/888}.steps{grid-template-columns:3fr 9fr;align-items:start;column-gap:24px;display:grid}.steps-title{padding-top:18px}.portfolio-cta{grid-template-columns:1fr auto;align-items:center;gap:40px}.portfolio-cta .btn{width:auto;min-width:320px}.contact-paths{grid-template-columns:1fr 1fr;gap:24px}.wa-float{min-height:68px;padding:0 28px 0 20px;font-size:14px}.wa-float svg{width:34px;height:34px}.lb-cta{position:static}}@media (width<=899px){.lightbox{padding-bottom:88px}.lightbox-figure img{max-height:58vh}}.ig-icon{flex:none;width:18px;height:18px;display:block}.link-arrow b:has(.ig-icon),.footer-links span:has(.ig-icon){place-items:center;line-height:1;display:grid}@media (width>=640px){.portfolio-item{flex-basis:48%}.pillars{gap:24px}.edu-points li{grid-template-columns:56px 1fr}}@media (width>=900px){html{scroll-padding-top:88px}.header-inner{height:88px}.site-header.is-scrolled{background:var(--paper)}@supports (color:color-mix(in lab, red, red)){.site-header.is-scrolled{background:color-mix(in srgb, var(--paper) 82%, transparent)}}.site-header.is-scrolled{backdrop-filter:blur(16px)}.site-header.is-scrolled .header-inner{height:70px}.desktop-nav{align-items:center;gap:clamp(22px,3vw,44px);display:flex}.desktop-nav a{letter-spacing:.18em;text-transform:uppercase;padding-block:8px;font-size:12px;font-weight:600;transition:color .24s;position:relative}.desktop-nav a:after{background:var(--champagne);content:"";transform-origin:100%;height:1px;transition:transform .42s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a.is-active:after{transform-origin:0;transform:scaleX(1)}.desktop-nav a.is-active{color:var(--champagne)}.header-inner{gap:28px}.pill-cta svg{width:18px;height:18px}.pill-cta span,.pill-cta b{display:inline}.pill-cta{border:1px solid var(--title);align-items:center;gap:14px;width:auto;height:auto;min-height:46px;margin-left:0;padding:0 20px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.pill-cta{border:1px solid color-mix(in srgb, var(--title) 45%, transparent)}}.pill-cta{color:var(--title);letter-spacing:.16em;text-transform:uppercase;border-radius:999px;font-size:12px;font-weight:700;transition:color .24s,background-color .24s,border-color .24s,transform .16s}.menu-toggle,.mobile-menu{display:none}.hero{padding-top:110px}.hero-ring{width:min(78vw,1100px);top:4%;right:-12vw}.hero-grid{flex:1;grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;column-gap:24px;padding-block:20px}.hero-copy{z-index:3;pointer-events:none;grid-area:1/1/auto/9;display:block;position:relative}.hero-copy>*{pointer-events:auto}.hero-kicker{margin-bottom:30px;font-size:12px}.hero h1{pointer-events:none;margin:0;font-size:clamp(7rem,14.4vw,14.5rem)}.h1-line-2{padding-left:.62em}.hero-lead{margin-top:38px;font-size:18px}.hero-actions{margin-top:38px}.hero-actions .btn{flex:none;min-width:290px}.portrait-frame{aspect-ratio:710/888}.hero-portrait{z-index:1;grid-area:1/7/auto/13;width:min(100%,540px);margin-right:0}.badge{width:128px;height:128px;bottom:54px;left:-52px}.hero-foot{justify-content:space-between;align-items:center;gap:24px;padding-block:0 34px;display:flex;position:relative}.scroll-cue{color:var(--text);letter-spacing:.22em;text-transform:uppercase;align-items:center;gap:14px;font-size:11px;font-weight:600;display:inline-flex}.scroll-cue i{background:var(--title);width:1px;height:46px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.scroll-cue i{background:color-mix(in srgb, var(--title) 20%, transparent)}}.scroll-cue i:after{background:var(--rose);content:"";animation:scroll-cue 2.6s var(--ease) infinite;position:absolute;inset:0}.hero-quick{gap:clamp(20px,3vw,48px);display:flex}.hero-quick a{color:var(--text);letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid #0000;align-items:baseline;gap:10px;padding-block:8px;font-size:12px;font-weight:600;transition:color .24s,border-color .24s;display:inline-flex}.hero-quick small{color:var(--rose);font-family:var(--font-display);letter-spacing:0;font-size:16px;font-style:italic}.hero-quick a:hover{color:var(--title);border-color:var(--title)}.about-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;column-gap:24px}.about-media{grid-column:1/6;width:100%;max-width:none}.about-body{grid-column:7/13}.services-head{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;column-gap:24px}.services-head .section-heading{grid-column:1/8}.services-aside{grid-column:9/13;padding-bottom:8px}.service-group{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;column-gap:24px}.service-group-head{grid-column:1/5;align-self:start;position:sticky;top:110px}.service-rows{grid-column:5/13}.service-rows li:first-child .service-link{border-top:0;margin-top:0;padding-top:4px}.services-cta{grid-template-columns:1fr auto;align-items:center;gap:40px}.services-cta .btn{width:auto;min-width:340px}.portfolio-head{grid-template-columns:1fr auto;justify-content:space-between;align-items:end}.portfolio-grid{width:min(100% - var(--gutter) * 2, var(--max));grid-template-rows:380px 340px;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-inline:auto;padding:0;display:grid;overflow:visible}.portfolio-item{aspect-ratio:auto;flex:none;width:100%;height:100%}.work-1{grid-area:1/1/3/6}.work-2{grid-column:6/13}.work-3{grid-column:6/9}.work-4{grid-column:9/13}.portfolio-caption{bottom:22px;left:24px;right:24px}.swipe-hint{display:none}.edu-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;column-gap:24px}.edu-media{grid-column:1/6;width:100%;max-width:none}.edu-body{grid-column:7/13}.contact-row{grid-template-columns:1fr auto;place-items:center start;gap:40px;max-width:none}.contact-row p{max-width:520px}.contact-row .btn{width:auto;min-width:340px}.contact-meta{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:32px}.contact-meta li{border-bottom:0;padding-bottom:0}.footer-main{grid-template-columns:1fr auto;align-items:center}.wa-float{min-height:76px;padding:0 32px 0 24px;font-size:15px;bottom:28px;right:28px}.wa-float svg{width:38px;height:38px}.lb-prev,.lb-next{margin-top:-24px;top:50%;bottom:auto}.lb-prev{left:28px}.lb-next{right:28px}.lb-close{top:24px;right:28px}}@media (width>=1400px){.hero-portrait{width:min(100%,580px)}}@media (width<=380px){.hero h1{font-size:5.2rem}.btn{padding-inline:22px;font-size:12px}.brand-name{font-size:22px}}@media (width<=899px){.hero h1{margin:24px 0 0 -4px}.badge{width:clamp(68px,19vw,86px);height:clamp(68px,19vw,86px);padding:4px;inset:calc(100% + 32px) 0 auto auto}.about-media:before{aspect-ratio:3/4;inset:20px -20px auto 20px}.edu-media:before{aspect-ratio:1/1.12;width:100%;inset:-18px auto auto -18px}.about-tag,.edu-seal{margin-top:38px;display:inline-grid;position:static}.portfolio-item{aspect-ratio:auto;background:0 0;flex-direction:column;display:flex}.portfolio-item:after{display:none}.portfolio-item img{aspect-ratio:4/4.9;background:var(--sand);object-position:var(--img-position-mobile,var(--img-position,50% 50%));flex:none;height:auto}.portfolio-caption{color:var(--title);margin-top:14px;position:static}.portfolio-caption small{color:var(--rose)}.portfolio-caption b{border-color:var(--title)}@supports (color:color-mix(in lab, red, red)){.portfolio-caption b{border-color:color-mix(in srgb, var(--title) 40%, transparent)}}}@media (width<=480px){.btn{letter-spacing:.06em;gap:10px;padding-inline:20px;font-size:12.5px}.btn-label{gap:9px}.btn-label .wa-icon{width:19px;height:19px}.service-link{flex-direction:column;align-items:stretch;gap:14px}.service-end{justify-content:space-between}}.hero-portrait:before{border-color:var(--title);inset:14px -14px -14px 14px}@supports (color:color-mix(in lab, red, red)){.hero-portrait:before{border-color:color-mix(in srgb, var(--title) 28%, transparent)}}.portrait-frame{box-shadow:0 34px 60px -34px var(--title)}@supports (color:color-mix(in lab, red, red)){.portrait-frame{box-shadow:0 34px 60px -34px color-mix(in srgb, var(--title) 50%, transparent)}}.portrait-frame:before{z-index:2;border:1px solid var(--cream);position:absolute;inset:10px}@supports (color:color-mix(in lab, red, red)){.portrait-frame:before{border:1px solid color-mix(in srgb, var(--cream) 70%, transparent)}}.portrait-frame:before{content:"";pointer-events:none}.portrait-frame:after{background:linear-gradient(transparent, var(--title));inset:76% 0 0}@supports (color:color-mix(in lab, red, red)){.portrait-frame:after{background:linear-gradient(transparent, color-mix(in srgb, var(--title) 16%, transparent))}}.about-media{isolation:isolate;width:min(100%,460px);margin-bottom:34px;padding-left:clamp(18px,7vw,52px)}.about-media:before{z-index:-1;aspect-ratio:auto;background:var(--sand);opacity:1;border:0;width:64%;inset:14% auto -26px 0}.about-media:after{z-index:2;border-top:1px solid var(--gold);border-right:1px solid var(--gold);content:"";pointer-events:none;width:38%;height:26%;position:absolute;top:-14px;right:-14px}.about-photo{aspect-ratio:4/5}.about-tag{z-index:3;margin:0;padding:12px 20px;display:grid;position:absolute;inset:auto auto -22px 0}.edu-media{width:min(100%,460px);padding:0;display:grid}.edu-media:before{aspect-ratio:auto;border:1px solid var(--title);width:auto;inset:-10px}@supports (color:color-mix(in lab, red, red)){.edu-media:before{border:1px solid color-mix(in srgb, var(--title) 34%, transparent)}}.edu-photo{aspect-ratio:1/1.1}.edu-seal{z-index:2;justify-content:space-between;align-items:center;gap:16px;margin:0;padding:14px 22px;display:flex;position:relative;inset:auto}.edu-seal small{color:var(--sand)}.edu-seal span{font-size:26px}.edu-media{margin-bottom:10px}@media (width>=900px){.about-media{width:100%;max-width:none;padding-left:clamp(24px,4vw,64px)}.about-media:before{width:58%}.edu-media{width:100%;max-width:none}.hero-portrait:before{inset:18px -18px -18px 18px}}@media (prefers-reduced-motion:no-preference){.site-header{animation:.9s .1s backwards fade-in}.hero-kicker{animation:reveal-up .9s var(--ease) .2s backwards}.hero h1 .h1-line>span{animation:word-up 1.2s var(--ease) .32s backwards}.hero h1 .h1-line-2>span{animation-delay:.44s}.hero-lead{animation:reveal-up .9s var(--ease) .7s backwards}.hero-actions{animation:reveal-up .9s var(--ease) .82s backwards}.hero-portrait .portrait-frame{animation:mask-in 1.3s var(--ease) .15s backwards}.hero-portrait .portrait-frame img{animation:zoom-settle 1.9s var(--ease) .15s backwards}.hero-portrait:before{animation:frame-in 1.1s var(--ease) .7s backwards}.badge{animation:1s 1.1s backwards fade-in}.badge-ring{animation:38s linear infinite spin}.hero-foot{animation:1s 1.2s backwards fade-in}[data-reveal].is-visible{animation:reveal-up 1s var(--ease) var(--reveal-delay,0s) backwards}[data-reveal=image].is-visible{animation:none}[data-reveal=image].is-visible>img{animation:mask-in 1.3s var(--ease) backwards, zoom-settle 1.9s var(--ease) backwards}[data-stagger].is-visible>*{animation:reveal-up 1s var(--ease) calc(var(--i,0) * .11s) backwards}.portfolio-grid.is-visible>.portfolio-item{animation-duration:1.2s}[data-split].is-visible .w>span{animation:word-up 1.1s var(--ease) calc(min(var(--i,0), 16) * 55ms) backwards}.mobile-menu nav a,.mobile-menu-foot{will-change:transform, opacity}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation:none!important}.marquee-track{flex-wrap:wrap;justify-content:center;width:auto;transform:none}.marquee ul+ul{display:none}}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
