@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Variable.woff2) format("woff2-variations"),url(/fonts/Satoshi-Variable.woff2) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-VariableItalic.woff2) format("woff2-variations"),url(/fonts/Satoshi-VariableItalic.woff2) format("woff2");font-weight:300 900;font-style:italic;font-display:swap}@font-face{font-family:Brandon Grotesque;src:url(/fonts/BrandonGrotesque-Light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Brandon Grotesque;src:url(/fonts/BrandonGrotesque-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Brandon Grotesque;src:url(/fonts/BrandonGrotesque-RegularItalic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Brandon Grotesque;src:url(/fonts/BrandonGrotesque-Medium.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Brandon Grotesque;src:url(/fonts/BrandonGrotesque-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Brandon Grotesque;src:url(/fonts/BrandonGrotesque-BoldItalic.otf) format("opentype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Brandon Grotesque;src:url(/fonts/BrandonGrotesque-Black.otf) format("opentype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Granville;src:url(/fonts/Granville-Light.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Granville;src:url(/fonts/Granville-LightItalic.otf) format("opentype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Granville;src:url(/fonts/Granville-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Granville;src:url(/fonts/Granville-Italic.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Granville;src:url(/fonts/Granville-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Granville;src:url(/fonts/Granville-BoldItalic.otf) format("opentype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Omnes Pro;src:url(/fonts/Omnes-Black.ttf) format("truetype");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Instrument Sans;src:url(/fonts/InstrumentSans-Variable.woff2) format("woff2-variations"),url(/fonts/InstrumentSans-Variable.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Instrument Sans Outline;src:url(/fonts/InstrumentSans-Outline.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--tsp-maroon: #7c3c3c;--tsp-maroon-deep: #5e2c2c;--tsp-maroon-soft: #a86060;--tsp-black: #0f0f0e;--tsp-black-raised: #1a1a18;--tsp-charcoal: #38383b;--tsp-graphite: #6d6d70;--tsp-mist: #b8b8b8;--tsp-line: #e3e3e3;--tsp-paper: #f6f4f0;--tsp-white: #ffffff;--fg-1: var(--tsp-black);--fg-2: var(--tsp-charcoal);--fg-3: var(--tsp-graphite);--fg-on-dark-1: var(--tsp-white);--fg-on-dark-2: #d7d7d3;--fg-on-dark-3: #8c8c88;--bg-1: var(--tsp-white);--bg-2: var(--tsp-paper);--bg-dark-1: var(--tsp-black);--bg-dark-2: var(--tsp-black-raised);--accent: var(--tsp-maroon);--accent-hover: var(--tsp-maroon-deep);--on-accent: var(--tsp-white);--border-soft: var(--tsp-line);--border-strong: var(--tsp-charcoal);--border-on-dark: rgba(255,255,255,.18);--scrim-top: linear-gradient(180deg, rgba(15,15,14,.65) 0%, rgba(15,15,14,0) 60%);--scrim-bottom: linear-gradient(0deg, rgba(15,15,14,.75) 0%, rgba(15,15,14,0) 70%);--scrim-vignette: radial-gradient(ellipse at center, transparent 55%, rgba(15,15,14,.45) 100%)}:root{--font-body: "Omnes Pro", "Satoshi", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: "Instrument Sans", "Lucida Sans Unicode", "Lucida Grande", Geneva, sans-serif;--font-ui: "Brandon Grotesque", "Cabin", var(--font-body);--font-accent: "Granville", "Cormorant Garamond", Georgia, serif;--fs-hero: clamp(3.5rem, 7vw, 8rem);--fs-h1: clamp(2.5rem, 4.5vw, 4rem);--fs-h2: clamp(2rem, 3.2vw, 3rem);--fs-h3: clamp(1.5rem, 2.2vw, 2rem);--fs-h4: 1.25rem;--fs-body: 1rem;--fs-small: .875rem;--fs-label: .75rem;--fs-micro: .6875rem;--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--fw-bold: 700;--fw-black: 900;--lh-tight: 1.05;--lh-snug: 1.2;--lh-base: 1.55;--lh-loose: 1.75;--ls-tight: -.02em;--ls-normal: 0;--ls-wide: .04em;--ls-wider: .12em;--ls-widest: .22em}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--max-site: 1500px;--max-content: 1400px;--pad-page: 4vw;--pad-header: 6vw;--pad-section: 10vh;--gutter: 11px;--radius-0: 0;--radius-1: 1px;--radius-2: 2px;--shadow-0: none;--shadow-1: 0 1px 0 rgba(15,15,14,.06);--shadow-2: 0 12px 32px -16px rgba(15,15,14,.18);--shadow-image: 0 30px 60px -30px rgba(15,15,14,.55);--ease-default: cubic-bezier(.4, 0, .2, 1);--ease-soft: cubic-bezier(.25, .1, .25, 1);--dur-fast: .18s;--dur-base: .42s;--dur-slow: .9s}.tsp-hero,h1.tsp-hero{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-hero);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:inherit;margin:0}.tsp-h1,h1{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h1);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);color:inherit;margin:0}.tsp-h2,h2{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-h2);line-height:var(--lh-snug);letter-spacing:var(--ls-tight);color:inherit;margin:0}.tsp-h3,h3{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-h3);line-height:var(--lh-snug);color:inherit;margin:0}.tsp-h4,h4{font-family:var(--font-ui);font-weight:var(--fw-bold);font-size:var(--fs-h4);line-height:var(--lh-snug);color:inherit;margin:0}.tsp-body,p{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--fs-body);line-height:var(--lh-base);color:inherit;margin:0;text-wrap:pretty}.tsp-lead{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:1.25rem;line-height:var(--lh-base);color:var(--fg-1)}.tsp-small{font-family:var(--font-body);font-size:var(--fs-small);line-height:var(--lh-base);color:var(--fg-3)}.tsp-label,.tsp-eyebrow{font-family:var(--font-ui);font-weight:var(--fw-medium);font-size:var(--fs-label);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--fg-3)}.tsp-eyebrow.is-accent{color:var(--accent)}.tsp-banner{font-family:var(--font-ui);font-weight:var(--fw-bold);font-size:var(--fs-label);letter-spacing:var(--ls-widest);text-transform:uppercase;color:var(--fg-1)}.tsp-quote{font-family:var(--font-accent);font-style:italic;font-weight:var(--fw-regular);font-size:clamp(1.5rem,3vw,2.75rem);line-height:1.3;color:var(--fg-1)}.on-dark .tsp-hero,.on-dark h1,.on-dark h2,.on-dark h3,.on-dark h4,.on-dark .tsp-h1,.on-dark .tsp-h2,.on-dark .tsp-h3,.on-dark .tsp-h4,.on-dark .tsp-lead{color:var(--fg-on-dark-1)}.on-dark p,.on-dark .tsp-body{color:var(--fg-on-dark-2)}.on-dark .tsp-small,.on-dark .tsp-label,.on-dark .tsp-eyebrow{color:var(--fg-on-dark-3)}.tsp-doc{font-family:var(--font-body);color:var(--fg-1);background:var(--bg-1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.tsp-doc *,.tsp-doc *:before,.tsp-doc *:after{box-sizing:border-box}.tsp-doc a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:1px;transition:opacity var(--dur-fast) var(--ease-default)}.tsp-doc a:hover{opacity:.6}.tsp-doc img{display:block;max-width:100%}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-base);color:var(--fg-1);background:var(--bg-1);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;display:block}picture.rimg{display:contents}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:100%;max-width:var(--max-content);margin-inline:auto;padding-inline:var(--pad-page)}.section{padding-block:clamp(3.5rem,8vw,8rem)}.eyebrow{font-family:var(--font-ui);font-weight:var(--fw-bold);font-size:var(--fs-label);letter-spacing:var(--ls-wider);text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--font-ui);font-weight:var(--fw-medium);font-size:var(--fs-body);letter-spacing:var(--ls-wide);padding:1.1em 2.4em;border:1.5px solid transparent;border-radius:var(--radius-1);background-repeat:no-repeat;background-position:left center;background-size:0% 100%;transition:background-size .42s cubic-bezier(.22,.61,.36,1),background-color var(--dur-fast) var(--ease-default),color .3s ease,border-color .3s ease}.btn:hover{background-size:100% 100%}.btn--light{background-color:var(--tsp-white);color:var(--tsp-charcoal);background-image:linear-gradient(var(--accent),var(--accent))}.btn--light:hover{color:var(--tsp-paper);border-color:var(--tsp-paper)}.btn--maroon{background-color:var(--accent);color:var(--on-accent);background-image:linear-gradient(var(--tsp-white),var(--tsp-white))}.btn--maroon:hover{color:var(--accent)}.btn--outline-light{background-color:transparent;color:var(--tsp-white);border-color:#ffffffd9}.btn--outline-light:not(.site-header__contact){background-image:linear-gradient(var(--tsp-white),var(--tsp-white))}.btn--outline-light:not(.site-header__contact):hover{color:var(--accent);border-color:var(--tsp-white)}.btn--outline-maroon{background-color:transparent;color:var(--accent);border-color:var(--accent);background-image:linear-gradient(var(--accent),var(--accent))}.btn--outline-maroon:hover{color:var(--on-accent);border-color:var(--accent)}.site-header__contact:hover{background-color:#ffffff1f}.field-list{display:grid;gap:var(--space-5)}.field{min-width:0;margin:0;padding:0;border:0}.field__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gutter)}.field__label{display:block;margin:0 0 var(--space-2);color:#ffffffd1;font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-snug)}.field__label--sub{color:#ffffffab;font-size:var(--fs-small)}.field__required{margin-inline-start:.45em;color:#ffffff80;font-size:.9em;font-weight:var(--fw-light);white-space:nowrap}.field__help{margin:calc(var(--space-1) * -1) 0 var(--space-2);color:#ffffff94;font-size:var(--fs-small)}.field__input{display:block;width:100%;min-width:0;height:2.6rem;margin:0;padding:.25rem 0 .65rem;border:0;border-bottom:1px solid rgba(255,255,255,.68);border-radius:0;outline:0;background:transparent;color:var(--tsp-white);font:inherit;line-height:var(--lh-base);transition:border-color var(--dur-fast) var(--ease-default)}.field__input::placeholder{color:#ffffff57;opacity:1}.field__input:focus{border-bottom-color:var(--tsp-white)}textarea.field__input{min-height:6.5rem;padding-top:.35rem;resize:vertical}.field__input--short{max-width:12rem}.field__input[type=date]{color-scheme:dark}.field__control{position:relative;max-width:12rem}.field__control .field__input{padding-inline-start:1rem}.field__prefix{position:absolute;z-index:1;left:0;bottom:.65rem;color:#ffffff6b;pointer-events:none}.field.field--on-light{color:var(--tsp-charcoal)}.field--on-light .field__label,.field.field--on-light>.field__label{color:var(--tsp-charcoal)}.field--on-light .field__label--sub,.field.field--on-light>.field__label--sub,.field--on-light .field__help{color:var(--tsp-graphite)}.field--on-light .field__required,.field.field--on-light>.field__required{color:var(--tsp-graphite)}.field--on-light .field__input,.field.field--on-light>.field__input{border-bottom-color:var(--tsp-line);color:var(--tsp-charcoal)}.field--on-light .field__input::placeholder,.field.field--on-light>.field__input::placeholder{color:var(--tsp-mist)}.field--on-light .field__input:focus,.field.field--on-light>.field__input:focus{border-bottom-color:var(--accent)}.field--on-light .field__input[type=date],.field.field--on-light>.field__input[type=date]{color-scheme:light}@media(max-width:600px){.field__row{grid-template-columns:1fr;gap:var(--space-5)}}.reveal{opacity:0;transform:translateY(24px);transition:opacity var(--dur-slow) var(--ease-soft),transform var(--dur-slow) var(--ease-soft)}.reveal.is-in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}.photo-frame{border-radius:14px;overflow:hidden}.hp-field{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}.form-status{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:10px;font-family:var(--font-ui);font-size:var(--fs-small);line-height:1.45}.form-status[data-kind=success]{background:color-mix(in srgb,#22ad01 14%,transparent);color:#197a03}.form-status[data-kind=error]{background:color-mix(in srgb,#f45757 16%,transparent);color:#b21f1f}form[data-submitted=true] .field-list,form[data-submitted=true] .optional-details,form[data-submitted=true] .inquiry-form__submit,form[data-submitted=true] .contact-form__submit,form[data-submitted=true] .helper,form[data-submitted=true] button[type=submit]{display:none}
