
@layer properties {
@supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
*, :before, :after, ::backdrop {
--tw-translate-x: 0;
--tw-translate-y: 0;
--tw-translate-z: 0;
--tw-rotate-x: initial;
--tw-rotate-y: initial;
--tw-rotate-z: initial;
--tw-skew-x: initial;
--tw-skew-y: initial;
--tw-space-y-reverse: 0;
--tw-space-x-reverse: 0;
--tw-border-style: solid;
--tw-leading: initial;
--tw-font-weight: initial;
--tw-tracking: initial;
--tw-ordinal: initial;
--tw-slashed-zero: initial;
--tw-numeric-figure: initial;
--tw-numeric-spacing: initial;
--tw-numeric-fraction: initial;
--tw-shadow: 0 0 #0000;
--tw-shadow-color: initial;
--tw-shadow-alpha: 100%;
--tw-inset-shadow: 0 0 #0000;
--tw-inset-shadow-color: initial;
--tw-inset-shadow-alpha: 100%;
--tw-ring-color: initial;
--tw-ring-shadow: 0 0 #0000;
--tw-inset-ring-color: initial;
--tw-inset-ring-shadow: 0 0 #0000;
--tw-ring-inset: initial;
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-offset-shadow: 0 0 #0000;
--tw-outline-style: solid;
--tw-blur: initial;
--tw-brightness: initial;
--tw-contrast: initial;
--tw-grayscale: initial;
--tw-hue-rotate: initial;
--tw-invert: initial;
--tw-opacity: initial;
--tw-saturate: initial;
--tw-sepia: initial;
--tw-drop-shadow: initial;
--tw-drop-shadow-color: initial;
--tw-drop-shadow-alpha: 100%;
--tw-drop-shadow-size: initial;
--tw-duration: initial;
--tw-ease: initial;
--tw-content: "";
--tw-animation-delay: 0s;
--tw-animation-direction: normal;
--tw-animation-duration: initial;
--tw-animation-fill-mode: none;
--tw-animation-iteration-count: 1;
--tw-enter-blur: 0;
--tw-enter-opacity: 1;
--tw-enter-rotate: 0;
--tw-enter-scale: 1;
--tw-enter-translate-x: 0;
--tw-enter-translate-y: 0;
--tw-exit-blur: 0;
--tw-exit-opacity: 1;
--tw-exit-rotate: 0;
--tw-exit-scale: 1;
--tw-exit-translate-x: 0;
--tw-exit-translate-y: 0;
}
}
}
@layer theme {
:root, :host {
--font-sans: "Kumbh Sans", sans-serif;
--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
"Courier New", monospace;
--color-black: #000;
--spacing: .25rem;
--container-sm: 24rem;
--container-md: 28rem;
--container-lg: 32rem;
--text-xs: .75rem;
--text-xs--line-height: calc(1 / .75);
--text-sm: .875rem;
--text-sm--line-height: calc(1.25 / .875);
--text-base: 1rem;
--text-base--line-height: calc(1.5 / 1);
--text-lg: 1.125rem;
--text-lg--line-height: calc(1.75 / 1.125);
--text-xl: 1.25rem;
--text-xl--line-height: calc(1.75 / 1.25);
--text-7xl: 4.5rem;
--text-7xl--line-height: 1;
--font-weight-normal: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--tracking-tight: -.025em;
--tracking-widest: .1em;
--leading-relaxed: 1.625;
--ease-in-out: cubic-bezier(.4, 0, .2, 1);
--animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
--aspect-video: 16 / 9;
--default-transition-duration: .15s;
--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
--default-font-family: "Kumbh Sans", sans-serif;
--default-mono-font-family: var(--font-mono);
--font-display: "Cormorant Garamond", Georgia, serif;
--color-background: var(--background);
--color-foreground: var(--foreground);
--color-border: var(--border);
}
}
@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]) {
-webkit-text-decoration: underline dotted;
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;
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;
}
* {
border-color: var(--color-border);
}
body {
background-color: var(--color-background);
color: var(--color-foreground);
}
}
@layer components;
@layer utilities {
.pointer-events-none {
pointer-events: none;
}
.invisible {
visibility: hidden;
}
.visible {
visibility: visible;
}
.sr-only {
clip-path: inset(50%);
white-space: nowrap;
border-width: 0;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
position: absolute;
overflow: hidden;
}
.absolute {
position: absolute;
}
.fixed {
position: fixed;
}
.relative {
position: relative;
}
.inset-0 {
inset: 0;
}
.inset-x-0 {
inset-inline: 0;
}
.inset-y-0 {
inset-block: 0;
}
.-top-12 {
top: calc(var(--spacing) * -12);
}
.top-0 {
top: 0;
}
.top-1\.5 {
top: calc(var(--spacing) * 1.5);
}
.top-1\/2 {
top: 50%;
}
.top-3\.5 {
top: calc(var(--spacing) * 3.5);
}
.top-4 {
top: calc(var(--spacing) * 4);
}
.top-\[1px\] {
top: 1px;
}
.top-\[50\%\] {
top: 50%;
}
.top-\[60\%\] {
top: 60%;
}
.top-full {
top: 100%;
}
.-right-12 {
right: calc(var(--spacing) * -12);
}
.right-0 {
right: 0;
}
.right-1 {
right: var(--spacing);
}
.right-2 {
right: calc(var(--spacing) * 2);
}
.right-3 {
right: calc(var(--spacing) * 3);
}
.right-4 {
right: calc(var(--spacing) * 4);
}
.-bottom-12 {
bottom: calc(var(--spacing) * -12);
}
.bottom-0 {
bottom: 0;
}
.-left-12 {
left: calc(var(--spacing) * -12);
}
.left-0 {
left: 0;
}
.left-1\/2 {
left: 50%;
}
.left-2 {
left: calc(var(--spacing) * 2);
}
.left-\[50\%\] {
left: 50%;
}
.z-10 {
z-index: 10;
}
.z-20 {
z-index: 20;
}
.z-50 {
z-index: 50;
}
.z-\[1\] {
z-index: 1;
}
.-mx-1 {
margin-inline: calc(var(--spacing) * -1);
}
.mx-2 {
margin-inline: calc(var(--spacing) * 2);
}
.mx-3\.5 {
margin-inline: calc(var(--spacing) * 3.5);
}
.mx-auto {
margin-inline: auto;
}
.my-0\.5 {
margin-block: calc(var(--spacing) * .5);
}
.my-1 {
margin-block: var(--spacing);
}
.-mt-4 {
margin-top: calc(var(--spacing) * -4);
}
.mt-1\.5 {
margin-top: calc(var(--spacing) * 1.5);
}
.mt-2 {
margin-top: calc(var(--spacing) * 2);
}
.mt-4 {
margin-top: calc(var(--spacing) * 4);
}
.mt-6 {
margin-top: calc(var(--spacing) * 6);
}
.mt-24 {
margin-top: calc(var(--spacing) * 24);
}
.mt-auto {
margin-top: auto;
}
.mr-2 {
margin-right: calc(var(--spacing) * 2);
}
.mb-1 {
margin-bottom: var(--spacing);
}
.-ml-4 {
margin-left: calc(var(--spacing) * -4);
}
.ml-1 {
margin-left: var(--spacing);
}
.ml-auto {
margin-left: auto;
}
.block {
display: block;
}
.flex {
display: flex;
}
.grid {
display: grid;
}
.hidden {
display: none;
}
.inline-flex {
display: inline-flex;
}
.table {
display: table;
}
.aspect-square {
aspect-ratio: 1;
}
.aspect-video {
aspect-ratio: var(--aspect-video);
}
.size-\(--cell-size\) {
width: var(--cell-size);
height: var(--cell-size);
}
.size-4 {
width: calc(var(--spacing) * 4);
height: calc(var(--spacing) * 4);
}
.h-\(--cell-size\) {
height: var(--cell-size);
}
.h-1\.5 {
height: calc(var(--spacing) * 1.5);
}
.h-2 {
height: calc(var(--spacing) * 2);
}
.h-2\.5 {
height: calc(var(--spacing) * 2.5);
}
.h-3 {
height: calc(var(--spacing) * 3);
}
.h-3\.5 {
height: calc(var(--spacing) * 3.5);
}
.h-4 {
height: calc(var(--spacing) * 4);
}
.h-5 {
height: calc(var(--spacing) * 5);
}
.h-7 {
height: calc(var(--spacing) * 7);
}
.h-8 {
height: calc(var(--spacing) * 8);
}
.h-9 {
height: calc(var(--spacing) * 9);
}
.h-10 {
height: calc(var(--spacing) * 10);
}
.h-12 {
height: calc(var(--spacing) * 12);
}
.h-\[1px\] {
height: 1px;
}
.h-\[var\(--radix-navigation-menu-viewport-height\)\] {
height: var(--radix-navigation-menu-viewport-height);
}
.h-\[var\(--radix-select-trigger-height\)\] {
height: var(--radix-select-trigger-height);
}
.h-auto {
height: auto;
}
.h-full {
height: 100%;
}
.h-px {
height: 1px;
}
.h-svh {
height: 100svh;
}
.max-h-\(--radix-context-menu-content-available-height\) {
max-height: var(--radix-context-menu-content-available-height);
}
.max-h-\(--radix-select-content-available-height\) {
max-height: var(--radix-select-content-available-height);
}
.max-h-\[300px\] {
max-height: 300px;
}
.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\] {
max-height: var(--radix-dropdown-menu-content-available-height);
}
.min-h-0 {
min-height: 0;
}
.min-h-\[60px\] {
min-height: 60px;
}
.min-h-screen {
min-height: 100vh;
}
.min-h-svh {
min-height: 100svh;
}
.w-\(--cell-size\) {
width: var(--cell-size);
}
.w-\(--sidebar-width\) {
width: var(--sidebar-width);
}
.w-0 {
width: 0;
}
.w-1 {
width: var(--spacing);
}
.w-2 {
width: calc(var(--spacing) * 2);
}
.w-2\.5 {
width: calc(var(--spacing) * 2.5);
}
.w-3 {
width: calc(var(--spacing) * 3);
}
.w-3\.5 {
width: calc(var(--spacing) * 3.5);
}
.w-3\/4 {
width: 75%;
}
.w-4 {
width: calc(var(--spacing) * 4);
}
.w-5 {
width: calc(var(--spacing) * 5);
}
.w-7 {
width: calc(var(--spacing) * 7);
}
.w-8 {
width: calc(var(--spacing) * 8);
}
.w-9 {
width: calc(var(--spacing) * 9);
}
.w-10 {
width: calc(var(--spacing) * 10);
}
.w-64 {
width: calc(var(--spacing) * 64);
}
.w-72 {
width: calc(var(--spacing) * 72);
}
.w-\[1px\] {
width: 1px;
}
.w-\[100px\] {
width: 100px;
}
.w-auto {
width: auto;
}
.w-fit {
width: fit-content;
}
.w-full {
width: 100%;
}
.w-max {
width: max-content;
}
.w-px {
width: 1px;
}
.max-w-\(--skeleton-width\) {
max-width: var(--skeleton-width);
}
.max-w-lg {
max-width: var(--container-lg);
}
.max-w-max {
max-width: max-content;
}
.max-w-md {
max-width: var(--container-md);
}
.min-w-\(--cell-size\) {
min-width: var(--cell-size);
}
.min-w-0 {
min-width: 0;
}
.min-w-5 {
min-width: calc(var(--spacing) * 5);
}
.min-w-8 {
min-width: calc(var(--spacing) * 8);
}
.min-w-9 {
min-width: calc(var(--spacing) * 9);
}
.min-w-10 {
min-width: calc(var(--spacing) * 10);
}
.min-w-\[8rem\] {
min-width: 8rem;
}
.min-w-\[12rem\] {
min-width: 12rem;
}
.min-w-\[var\(--radix-select-trigger-width\)\] {
min-width: var(--radix-select-trigger-width);
}
.flex-1 {
flex: 1;
}
.shrink-0 {
flex-shrink: 0;
}
.grow {
flex-grow: 1;
}
.grow-0 {
flex-grow: 0;
}
.basis-full {
flex-basis: 100%;
}
.caption-bottom {
caption-side: bottom;
}
.border-collapse {
border-collapse: collapse;
}
.origin-\(--radix-context-menu-content-transform-origin\) {
transform-origin: var(--radix-context-menu-content-transform-origin);
}
.origin-\(--radix-dropdown-menu-content-transform-origin\) {
transform-origin: var(--radix-dropdown-menu-content-transform-origin);
}
.origin-\(--radix-hover-card-content-transform-origin\) {
transform-origin: var(--radix-hover-card-content-transform-origin);
}
.origin-\(--radix-menubar-content-transform-origin\) {
transform-origin: var(--radix-menubar-content-transform-origin);
}
.origin-\(--radix-popover-content-transform-origin\) {
transform-origin: var(--radix-popover-content-transform-origin);
}
.origin-\(--radix-select-content-transform-origin\) {
transform-origin: var(--radix-select-content-transform-origin);
}
.origin-\(--radix-tooltip-content-transform-origin\) {
transform-origin: var(--radix-tooltip-content-transform-origin);
}
.-translate-x-1\/2 {
--tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.-translate-x-px {
--tw-translate-x: -1px;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.translate-x-\[-50\%\] {
--tw-translate-x: -50%;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.translate-x-px {
--tw-translate-x: 1px;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.-translate-y-1\/2 {
--tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.translate-y-\[-50\%\] {
--tw-translate-y: -50%;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.rotate-45 {
rotate: 45deg;
}
.rotate-90 {
rotate: 90deg;
}
.transform {
transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
}
.animate-caret-blink {
animation: 1.25s ease-out infinite caret-blink;
}
.animate-in {
animation: enter var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.animate-pulse {
animation: var(--animate-pulse);
}
.cursor-default {
cursor: default;
}
.cursor-pointer {
cursor: pointer;
}
.touch-none {
touch-action: none;
}
.list-none {
list-style-type: none;
}
.flex-col {
flex-direction: column;
}
.flex-col-reverse {
flex-direction: column-reverse;
}
.flex-row {
flex-direction: row;
}
.flex-wrap {
flex-wrap: wrap;
}
.place-content-center {
place-content: center;
}
.items-center {
align-items: center;
}
.items-end {
align-items: flex-end;
}
.items-start {
align-items: flex-start;
}
.items-stretch {
align-items: stretch;
}
.justify-between {
justify-content: space-between;
}
.justify-center {
justify-content: center;
}
.gap-1 {
gap: var(--spacing);
}
.gap-1\.5 {
gap: calc(var(--spacing) * 1.5);
}
.gap-2 {
gap: calc(var(--spacing) * 2);
}
.gap-4 {
gap: calc(var(--spacing) * 4);
}
:where(.space-y-1\.5 > :not(:last-child)) {
--tw-space-y-reverse: 0;
margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
}
:where(.space-y-2 > :not(:last-child)) {
--tw-space-y-reverse: 0;
margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
}
:where(.space-x-1 > :not(:last-child)) {
--tw-space-x-reverse: 0;
margin-inline-start: calc(var(--spacing) * var(--tw-space-x-reverse));
margin-inline-end: calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)));
}
.overflow-auto {
overflow: auto;
}
.overflow-hidden {
overflow: hidden;
}
.overflow-x-hidden {
overflow-x: hidden;
}
.overflow-y-auto {
overflow-y: auto;
}
.rounded-\[2px\] {
border-radius: 2px;
}
.rounded-\[inherit\] {
border-radius: inherit;
}
.rounded-full {
border-radius: 3.40282e38px;
}
.rounded-lg {
border-radius: var(--radius);
}
.rounded-md {
border-radius: calc(var(--radius) - 2px);
}
.rounded-none {
border-radius: 0;
}
.rounded-sm {
border-radius: calc(var(--radius) - 4px);
}
.rounded-xl {
border-radius: calc(var(--radius) + 4px);
}
.rounded-t-\[10px\] {
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
.rounded-l-md {
border-top-left-radius: calc(var(--radius) - 2px);
border-bottom-left-radius: calc(var(--radius) - 2px);
}
.rounded-tl-sm {
border-top-left-radius: calc(var(--radius) - 4px);
}
.rounded-r-md {
border-top-right-radius: calc(var(--radius) - 2px);
border-bottom-right-radius: calc(var(--radius) - 2px);
}
.border {
border-style: var(--tw-border-style);
border-width: 1px;
}
.border-2 {
border-style: var(--tw-border-style);
border-width: 2px;
}
.border-\[1\.5px\] {
border-style: var(--tw-border-style);
border-width: 1.5px;
}
.border-y {
border-block-style: var(--tw-border-style);
border-block-width: 1px;
}
.border-t {
border-top-style: var(--tw-border-style);
border-top-width: 1px;
}
.border-r {
border-right-style: var(--tw-border-style);
border-right-width: 1px;
}
.border-b {
border-bottom-style: var(--tw-border-style);
border-bottom-width: 1px;
}
.border-l {
border-left-style: var(--tw-border-style);
border-left-width: 1px;
}
.border-dashed {
--tw-border-style: dashed;
border-style: dashed;
}
.border-\(--color-border\) {
border-color: var(--color-border);
}
.border-border\/50 {
border-color: var(--border);
}
@supports (color: color-mix(in lab, red, red)) {
.border-border\/50 {
border-color: color-mix(in oklab, var(--border) 50%, transparent);
}
}
.border-destructive\/50 {
border-color: var(--destructive);
}
@supports (color: color-mix(in lab, red, red)) {
.border-destructive\/50 {
border-color: color-mix(in oklab, var(--destructive) 50%, transparent);
}
}
.border-input {
border-color: var(--input);
}
.border-primary {
border-color: var(--primary);
}
.border-primary\/50 {
border-color: var(--primary);
}
@supports (color: color-mix(in lab, red, red)) {
.border-primary\/50 {
border-color: color-mix(in oklab, var(--primary) 50%, transparent);
}
}
.border-sidebar-border {
border-color: var(--sidebar-border);
}
.border-transparent {
border-color: #0000;
}
.border-t-transparent {
border-top-color: #0000;
}
.border-l-transparent {
border-left-color: #0000;
}
.bg-\(--color-bg\) {
background-color: var(--color-bg);
}
.bg-accent {
background-color: var(--accent);
}
.bg-background {
background-color: var(--background);
}
.bg-black\/80 {
background-color: #000c;
}
@supports (color: color-mix(in lab, red, red)) {
.bg-black\/80 {
background-color: color-mix(in oklab, var(--color-black) 80%, transparent);
}
}
.bg-border {
background-color: var(--border);
}
.bg-card {
background-color: var(--card);
}
.bg-destructive {
background-color: var(--destructive);
}
.bg-foreground {
background-color: var(--foreground);
}
.bg-muted {
background-color: var(--muted);
}
.bg-muted\/50 {
background-color: var(--muted);
}
@supports (color: color-mix(in lab, red, red)) {
.bg-muted\/50 {
background-color: color-mix(in oklab, var(--muted) 50%, transparent);
}
}
.bg-popover {
background-color: var(--popover);
}
.bg-primary {
background-color: var(--primary);
}
.bg-primary\/10 {
background-color: var(--primary);
}
@supports (color: color-mix(in lab, red, red)) {
.bg-primary\/10 {
background-color: color-mix(in oklab, var(--primary) 10%, transparent);
}
}
.bg-primary\/20 {
background-color: var(--primary);
}
@supports (color: color-mix(in lab, red, red)) {
.bg-primary\/20 {
background-color: color-mix(in oklab, var(--primary) 20%, transparent);
}
}
.bg-secondary {
background-color: var(--secondary);
}
.bg-sidebar {
background-color: var(--sidebar);
}
.bg-sidebar-border {
background-color: var(--sidebar-border);
}
.bg-transparent {
background-color: #0000;
}
.fill-current {
fill: currentColor;
}
.fill-primary {
fill: var(--primary);
}
.p-0 {
padding: 0;
}
.p-1 {
padding: var(--spacing);
}
.p-2 {
padding: calc(var(--spacing) * 2);
}
.p-3 {
padding: calc(var(--spacing) * 3);
}
.p-4 {
padding: calc(var(--spacing) * 4);
}
.p-6 {
padding: calc(var(--spacing) * 6);
}
.p-\[1px\] {
padding: 1px;
}
.px-\(--cell-size\) {
padding-inline: var(--cell-size);
}
.px-1 {
padding-inline: var(--spacing);
}
.px-1\.5 {
padding-inline: calc(var(--spacing) * 1.5);
}
.px-2 {
padding-inline: calc(var(--spacing) * 2);
}
.px-2\.5 {
padding-inline: calc(var(--spacing) * 2.5);
}
.px-3 {
padding-inline: calc(var(--spacing) * 3);
}
.px-4 {
padding-inline: calc(var(--spacing) * 4);
}
.px-8 {
padding-inline: calc(var(--spacing) * 8);
}
.py-0\.5 {
padding-block: calc(var(--spacing) * .5);
}
.py-1 {
padding-block: var(--spacing);
}
.py-1\.5 {
padding-block: calc(var(--spacing) * 1.5);
}
.py-2 {
padding-block: calc(var(--spacing) * 2);
}
.py-3 {
padding-block: calc(var(--spacing) * 3);
}
.py-4 {
padding-block: calc(var(--spacing) * 4);
}
.py-6 {
padding-block: calc(var(--spacing) * 6);
}
.pt-0 {
padding-top: 0;
}
.pt-3 {
padding-top: calc(var(--spacing) * 3);
}
.pt-4 {
padding-top: calc(var(--spacing) * 4);
}
.pr-1 {
padding-right: var(--spacing);
}
.pr-2 {
padding-right: calc(var(--spacing) * 2);
}
.pr-2\.5 {
padding-right: calc(var(--spacing) * 2.5);
}
.pr-8 {
padding-right: calc(var(--spacing) * 8);
}
.pb-3 {
padding-bottom: calc(var(--spacing) * 3);
}
.pb-4 {
padding-bottom: calc(var(--spacing) * 4);
}
.pl-2 {
padding-left: calc(var(--spacing) * 2);
}
.pl-2\.5 {
padding-left: calc(var(--spacing) * 2.5);
}
.pl-4 {
padding-left: calc(var(--spacing) * 4);
}
.pl-8 {
padding-left: calc(var(--spacing) * 8);
}
.text-center {
text-align: center;
}
.text-left {
text-align: left;
}
.align-middle {
vertical-align: middle;
}
.font-mono {
font-family: var(--font-mono);
}
.text-7xl {
font-size: var(--text-7xl);
line-height: var(--tw-leading, var(--text-7xl--line-height));
}
.text-base {
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
}
.text-lg {
font-size: var(--text-lg);
line-height: var(--tw-leading, var(--text-lg--line-height));
}
.text-sm {
font-size: var(--text-sm);
line-height: var(--tw-leading, var(--text-sm--line-height));
}
.text-xl {
font-size: var(--text-xl);
line-height: var(--tw-leading, var(--text-xl--line-height));
}
.text-xs {
font-size: var(--text-xs);
line-height: var(--tw-leading, var(--text-xs--line-height));
}
.text-\[0\.8rem\] {
font-size: .8rem;
}
.leading-none {
--tw-leading: 1;
line-height: 1;
}
.font-bold {
--tw-font-weight: var(--font-weight-bold);
font-weight: var(--font-weight-bold);
}
.font-medium {
--tw-font-weight: var(--font-weight-medium);
font-weight: var(--font-weight-medium);
}
.font-normal {
--tw-font-weight: var(--font-weight-normal);
font-weight: var(--font-weight-normal);
}
.font-semibold {
--tw-font-weight: var(--font-weight-semibold);
font-weight: var(--font-weight-semibold);
}
.tracking-tight {
--tw-tracking: var(--tracking-tight);
letter-spacing: var(--tracking-tight);
}
.tracking-widest {
--tw-tracking: var(--tracking-widest);
letter-spacing: var(--tracking-widest);
}
.break-words {
overflow-wrap: break-word;
}
.whitespace-nowrap {
white-space: nowrap;
}
.text-accent-foreground {
color: var(--accent-foreground);
}
.text-card-foreground {
color: var(--card-foreground);
}
.text-current {
color: currentColor;
}
.text-destructive {
color: var(--destructive);
}
.text-destructive-foreground {
color: var(--destructive-foreground);
}
.text-foreground {
color: var(--foreground);
}
.text-muted-foreground {
color: var(--muted-foreground);
}
.text-popover-foreground {
color: var(--popover-foreground);
}
.text-primary {
color: var(--primary);
}
.text-primary-foreground {
color: var(--primary-foreground);
}
.text-secondary-foreground {
color: var(--secondary-foreground);
}
.text-sidebar-foreground {
color: var(--sidebar-foreground);
}
.text-sidebar-foreground\/70 {
color: var(--sidebar-foreground);
}
@supports (color: color-mix(in lab, red, red)) {
.text-sidebar-foreground\/70 {
color: color-mix(in oklab, var(--sidebar-foreground) 70%, transparent);
}
}
.tabular-nums {
--tw-numeric-spacing: tabular-nums;
font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, );
}
.underline-offset-4 {
text-underline-offset: 4px;
}
.opacity-0 {
opacity: 0;
}
.opacity-50 {
opacity: .5;
}
.opacity-60 {
opacity: .6;
}
.opacity-70 {
opacity: .7;
}
.shadow {
--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-\[0_0_0_1px_var\(--sidebar-border\)\] {
--tw-shadow: 0 0 0 1px var(--tw-shadow-color, var(--sidebar-border));
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-lg {
--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-md {
--tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-none {
--tw-shadow: 0 0 #0000;
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-sm {
--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-xl {
--tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-xs {
--tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, #0000000d);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ring-0 {
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ring-1 {
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ring-ring {
--tw-ring-color: var(--ring);
}
.ring-sidebar-ring {
--tw-ring-color: var(--sidebar-ring);
}
.ring-offset-background {
--tw-ring-offset-color: var(--background);
}
.outline {
outline-style: var(--tw-outline-style);
outline-width: 1px;
}
.filter {
filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
}
.transition {
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-\[left\,right\,width\] {
transition-property: left, right, width;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-\[margin\,opacity\] {
transition-property: margin, opacity;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-\[width\,height\,padding\] {
transition-property: width, height, padding;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-\[width\] {
transition-property: width;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-all {
transition-property: all;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-colors {
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-opacity {
transition-property: opacity;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.transition-transform {
transition-property: transform, translate, scale, rotate;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.duration-200 {
--tw-duration: .2s;
transition-duration: .2s;
}
.duration-300 {
--tw-duration: .3s;
transition-duration: .3s;
}
.duration-1000 {
--tw-duration: 1s;
transition-duration: 1s;
}
.ease-in-out {
--tw-ease: var(--ease-in-out);
transition-timing-function: var(--ease-in-out);
}
.ease-linear {
--tw-ease: linear;
transition-timing-function: linear;
}
.fade-in-0 {
--tw-enter-opacity: 0;
}
.outline-none {
--tw-outline-style: none;
outline-style: none;
}
.select-none {
-webkit-user-select: none;
user-select: none;
}
.zoom-in-95 {
--tw-enter-scale: .95;
}
.\[--cell-size\:2rem\] {
--cell-size: 2rem;
}
.running {
animation-play-state: running;
}
.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *) {
opacity: 1;
}
@media (hover: hover) {
.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *) {
opacity: 1;
}
}
.group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar="menu-action"]) *) {
padding-right: calc(var(--spacing) * 8);
}
.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible="icon"] *) {
margin-top: calc(var(--spacing) * -8);
}
.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible="icon"] *) {
display: none;
}
.group-data-\[collapsible\=icon\]\:\!size-8:is(:where(.group)[data-collapsible="icon"] *) {
width: calc(var(--spacing) * 8) !important;
height: calc(var(--spacing) * 8) !important;
}
.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible="icon"] *) {
width: var(--sidebar-width-icon);
}
.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]:is(:where(.group)[data-collapsible="icon"] *) {
width: calc(var(--sidebar-width-icon) + 1rem);
}
.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]:is(:where(.group)[data-collapsible="icon"] *) {
width: calc(var(--sidebar-width-icon) + 1rem + 2px);
}
.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible="icon"] *) {
overflow: hidden;
}
.group-data-\[collapsible\=icon\]\:\!p-0:is(:where(.group)[data-collapsible="icon"] *) {
padding: 0 !important;
}
.group-data-\[collapsible\=icon\]\:\!p-2:is(:where(.group)[data-collapsible="icon"] *) {
padding: calc(var(--spacing) * 2) !important;
}
.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible="icon"] *) {
opacity: 0;
}
.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible="offcanvas"] *) {
right: calc(var(--sidebar-width) * -1);
}
.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible="offcanvas"] *) {
left: calc(var(--sidebar-width) * -1);
}
.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible="offcanvas"] *) {
width: 0;
}
.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible="offcanvas"] *) {
--tw-translate-x: 0px;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused="true"] *) {
position: relative;
}
.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused="true"] *) {
z-index: 10;
}
.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused="true"] *) {
border-color: var(--ring);
}
.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused="true"] *) {
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused="true"] *) {
--tw-ring-color: var(--ring);
}
@supports (color: color-mix(in lab, red, red)) {
.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused="true"] *) {
--tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
}
}
.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side="left"] *) {
right: calc(var(--spacing) * -4);
}
.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side="left"] *) {
border-right-style: var(--tw-border-style);
border-right-width: 1px;
}
.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side="right"] *) {
left: 0;
}
.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side="right"] *) {
rotate: 180deg;
}
.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side="right"] *) {
border-left-style: var(--tw-border-style);
border-left-width: 1px;
}
.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state="open"] *) {
rotate: 180deg;
}
.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant="floating"] *) {
border-radius: var(--radius);
}
.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant="floating"] *) {
border-style: var(--tw-border-style);
border-width: 1px;
}
.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant="floating"] *) {
border-color: var(--sidebar-border);
}
.group-data-\[variant\=floating\]\:shadow:is(:where(.group)[data-variant="floating"] *) {
--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.group-\[\.toast\]\:bg-muted:is(:where(.group).toast *) {
background-color: var(--muted);
}
.group-\[\.toast\]\:bg-primary:is(:where(.group).toast *) {
background-color: var(--primary);
}
.group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *) {
color: var(--muted-foreground);
}
.group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *) {
color: var(--primary-foreground);
}
.group-\[\.toaster\]\:border-border:is(:where(.group).toaster *) {
border-color: var(--border);
}
.group-\[\.toaster\]\:bg-background:is(:where(.group).toaster *) {
background-color: var(--background);
}
.group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *) {
color: var(--foreground);
}
.group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *) {
--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
@media (hover: hover) {
.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover ~ *) {
color: var(--sidebar-accent-foreground);
}
}
.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled ~ *) {
cursor: not-allowed;
}
.peer-disabled\:opacity-70:is(:where(.peer):disabled ~ *) {
opacity: .7;
}
.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active="true"] ~ *) {
color: var(--sidebar-accent-foreground);
}
.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size="default"] ~ *) {
top: calc(var(--spacing) * 1.5);
}
.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size="lg"] ~ *) {
top: calc(var(--spacing) * 2.5);
}
.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size="sm"] ~ *) {
top: var(--spacing);
}
.file\:border-0::file-selector-button {
border-style: var(--tw-border-style);
border-width: 0;
}
.file\:bg-transparent::file-selector-button {
background-color: #0000;
}
.file\:text-sm::file-selector-button {
font-size: var(--text-sm);
line-height: var(--tw-leading, var(--text-sm--line-height));
}
.file\:font-medium::file-selector-button {
--tw-font-weight: var(--font-weight-medium);
font-weight: var(--font-weight-medium);
}
.file\:text-foreground::file-selector-button {
color: var(--foreground);
}
.placeholder\:text-muted-foreground::placeholder {
color: var(--muted-foreground);
}
.after\:absolute:after {
content: var(--tw-content);
position: absolute;
}
.after\:-inset-2:after {
content: var(--tw-content);
inset: calc(var(--spacing) * -2);
}
.after\:inset-y-0:after {
content: var(--tw-content);
inset-block: 0;
}
.after\:left-1\/2:after {
content: var(--tw-content);
left: 50%;
}
.after\:w-1:after {
content: var(--tw-content);
width: var(--spacing);
}
.after\:w-\[2px\]:after {
content: var(--tw-content);
width: 2px;
}
.after\:-translate-x-1\/2:after {
content: var(--tw-content);
--tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible="offcanvas"] *):after {
content: var(--tw-content);
left: 100%;
}
.first\:rounded-l-md:first-child {
border-top-left-radius: calc(var(--radius) - 2px);
border-bottom-left-radius: calc(var(--radius) - 2px);
}
.first\:border-l:first-child {
border-left-style: var(--tw-border-style);
border-left-width: 1px;
}
.last\:rounded-r-md:last-child {
border-top-right-radius: calc(var(--radius) - 2px);
border-bottom-right-radius: calc(var(--radius) - 2px);
}
@media (hover: hover) {
.hover\:bg-accent:hover {
background-color: var(--accent);
}
.hover\:bg-destructive\/80:hover {
background-color: var(--destructive);
}
@supports (color: color-mix(in lab, red, red)) {
.hover\:bg-destructive\/80:hover {
background-color: color-mix(in oklab, var(--destructive) 80%, transparent);
}
}
.hover\:bg-destructive\/90:hover {
background-color: var(--destructive);
}
@supports (color: color-mix(in lab, red, red)) {
.hover\:bg-destructive\/90:hover {
background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
}
}
.hover\:bg-muted:hover, .hover\:bg-muted\/50:hover {
background-color: var(--muted);
}
@supports (color: color-mix(in lab, red, red)) {
.hover\:bg-muted\/50:hover {
background-color: color-mix(in oklab, var(--muted) 50%, transparent);
}
}
.hover\:bg-primary\/80:hover {
background-color: var(--primary);
}
@supports (color: color-mix(in lab, red, red)) {
.hover\:bg-primary\/80:hover {
background-color: color-mix(in oklab, var(--primary) 80%, transparent);
}
}
.hover\:bg-primary\/90:hover {
background-color: var(--primary);
}
@supports (color: color-mix(in lab, red, red)) {
.hover\:bg-primary\/90:hover {
background-color: color-mix(in oklab, var(--primary) 90%, transparent);
}
}
.hover\:bg-secondary\/80:hover {
background-color: var(--secondary);
}
@supports (color: color-mix(in lab, red, red)) {
.hover\:bg-secondary\/80:hover {
background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
}
}
.hover\:bg-sidebar-accent:hover {
background-color: var(--sidebar-accent);
}
.hover\:text-accent-foreground:hover {
color: var(--accent-foreground);
}
.hover\:text-foreground:hover {
color: var(--foreground);
}
.hover\:text-muted-foreground:hover {
color: var(--muted-foreground);
}
.hover\:text-sidebar-accent-foreground:hover {
color: var(--sidebar-accent-foreground);
}
.hover\:underline:hover {
text-decoration-line: underline;
}
.hover\:opacity-100:hover {
opacity: 1;
}
.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover {
--tw-shadow: 0 0 0 1px var(--tw-shadow-color, var(--sidebar-accent));
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:is(:where(.group)[data-collapsible="offcanvas"] *):hover {
background-color: var(--sidebar);
}
.hover\:after\:bg-sidebar-border:hover:after {
content: var(--tw-content);
background-color: var(--sidebar-border);
}
}
.focus\:bg-accent:focus {
background-color: var(--accent);
}
.focus\:text-accent-foreground:focus {
color: var(--accent-foreground);
}
.focus\:ring-1:focus {
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.focus\:ring-2:focus {
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.focus\:ring-ring:focus {
--tw-ring-color: var(--ring);
}
.focus\:ring-offset-2:focus {
--tw-ring-offset-width: 2px;
--tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
}
.focus\:outline-none:focus {
--tw-outline-style: none;
outline-style: none;
}
.focus-visible\:ring-1:focus-visible {
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.focus-visible\:ring-2:focus-visible {
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.focus-visible\:ring-ring:focus-visible {
--tw-ring-color: var(--ring);
}
.focus-visible\:ring-sidebar-ring:focus-visible {
--tw-ring-color: var(--sidebar-ring);
}
.focus-visible\:ring-offset-1:focus-visible {
--tw-ring-offset-width: 1px;
--tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
}
.focus-visible\:ring-offset-2:focus-visible {
--tw-ring-offset-width: 2px;
--tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
}
.focus-visible\:ring-offset-background:focus-visible {
--tw-ring-offset-color: var(--background);
}
.focus-visible\:outline-none:focus-visible {
--tw-outline-style: none;
outline-style: none;
}
.active\:bg-sidebar-accent:active {
background-color: var(--sidebar-accent);
}
.active\:text-sidebar-accent-foreground:active {
color: var(--sidebar-accent-foreground);
}
.disabled\:pointer-events-none:disabled {
pointer-events: none;
}
.disabled\:cursor-not-allowed:disabled {
cursor: not-allowed;
}
.disabled\:opacity-50:disabled {
opacity: .5;
}
.has-focus\:border-ring:has(:focus) {
border-color: var(--ring);
}
.has-focus\:ring-\[3px\]:has(:focus) {
--tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.has-focus\:ring-ring\/50:has(:focus) {
--tw-ring-color: var(--ring);
}
@supports (color: color-mix(in lab, red, red)) {
.has-focus\:ring-ring\/50:has(:focus) {
--tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
}
}
.has-\[\:disabled\]\:opacity-50:has(:disabled) {
opacity: .5;
}
.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant="inset"]) {
background-color: var(--sidebar);
}
.aria-disabled\:pointer-events-none[aria-disabled="true"] {
pointer-events: none;
}
.aria-disabled\:opacity-50[aria-disabled="true"] {
opacity: .5;
}
.aria-selected\:text-muted-foreground[aria-selected="true"] {
color: var(--muted-foreground);
}
.data-\[active\=true\]\:bg-sidebar-accent[data-active="true"] {
background-color: var(--sidebar-accent);
}
.data-\[active\=true\]\:font-medium[data-active="true"] {
--tw-font-weight: var(--font-weight-medium);
font-weight: var(--font-weight-medium);
}
.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active="true"] {
color: var(--sidebar-accent-foreground);
}
.data-\[disabled\]\:pointer-events-none[data-disabled] {
pointer-events: none;
}
.data-\[disabled\]\:opacity-50[data-disabled] {
opacity: .5;
}
.data-\[disabled\=true\]\:pointer-events-none[data-disabled="true"] {
pointer-events: none;
}
.data-\[disabled\=true\]\:opacity-50[data-disabled="true"] {
opacity: .5;
}
.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion="from-end"] {
--tw-enter-translate-x: calc(52*var(--spacing));
}
.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion="from-start"] {
--tw-enter-translate-x: calc(52*var(--spacing)*-1);
}
.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion="to-end"] {
--tw-exit-translate-x: calc(52*var(--spacing));
}
.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion="to-start"] {
--tw-exit-translate-x: calc(52*var(--spacing)*-1);
}
.data-\[motion\^\=from-\]\:animate-in[data-motion^="from-"] {
animation: enter var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.data-\[motion\^\=from-\]\:fade-in[data-motion^="from-"] {
--tw-enter-opacity: 0;
}
.data-\[motion\^\=to-\]\:animate-out[data-motion^="to-"] {
animation: exit var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.data-\[motion\^\=to-\]\:fade-out[data-motion^="to-"] {
--tw-exit-opacity: 0;
}
.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction="vertical"] {
height: 1px;
}
.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction="vertical"] {
width: 100%;
}
.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction="vertical"] {
flex-direction: column;
}
.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction="vertical"]:after {
content: var(--tw-content);
left: 0;
}
.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction="vertical"]:after {
content: var(--tw-content);
height: var(--spacing);
}
.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction="vertical"]:after {
content: var(--tw-content);
width: 100%;
}
.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction="vertical"]:after {
content: var(--tw-content);
--tw-translate-x: 0px;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction="vertical"]:after {
content: var(--tw-content);
--tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[placeholder\]\:text-muted-foreground[data-placeholder] {
color: var(--muted-foreground);
}
.data-\[range-end\=true\]\:rounded-md[data-range-end="true"] {
border-radius: calc(var(--radius) - 2px);
}
.data-\[range-end\=true\]\:bg-primary[data-range-end="true"] {
background-color: var(--primary);
}
.data-\[range-end\=true\]\:text-primary-foreground[data-range-end="true"] {
color: var(--primary-foreground);
}
.data-\[range-middle\=true\]\:rounded-none[data-range-middle="true"] {
border-radius: 0;
}
.data-\[range-middle\=true\]\:bg-accent[data-range-middle="true"] {
background-color: var(--accent);
}
.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle="true"] {
color: var(--accent-foreground);
}
.data-\[range-start\=true\]\:rounded-md[data-range-start="true"] {
border-radius: calc(var(--radius) - 2px);
}
.data-\[range-start\=true\]\:bg-primary[data-range-start="true"] {
background-color: var(--primary);
}
.data-\[range-start\=true\]\:text-primary-foreground[data-range-start="true"] {
color: var(--primary-foreground);
}
.data-\[selected-single\=true\]\:bg-primary[data-selected-single="true"] {
background-color: var(--primary);
}
.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single="true"] {
color: var(--primary-foreground);
}
.data-\[selected\=true\]\:rounded-none[data-selected="true"] {
border-radius: 0;
}
.data-\[selected\=true\]\:bg-accent[data-selected="true"] {
background-color: var(--accent);
}
.data-\[selected\=true\]\:text-accent-foreground[data-selected="true"] {
color: var(--accent-foreground);
}
.data-\[side\=bottom\]\:translate-y-1[data-side="bottom"] {
--tw-translate-y: var(--spacing);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[side\=bottom\]\:slide-in-from-top-2[data-side="bottom"] {
--tw-enter-translate-y: calc(2*var(--spacing)*-1);
}
.data-\[side\=left\]\:-translate-x-1[data-side="left"] {
--tw-translate-x: calc(var(--spacing) * -1);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[side\=left\]\:slide-in-from-right-2[data-side="left"] {
--tw-enter-translate-x: calc(2*var(--spacing));
}
.data-\[side\=right\]\:translate-x-1[data-side="right"] {
--tw-translate-x: var(--spacing);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[side\=right\]\:slide-in-from-left-2[data-side="right"] {
--tw-enter-translate-x: calc(2*var(--spacing)*-1);
}
.data-\[side\=top\]\:-translate-y-1[data-side="top"] {
--tw-translate-y: calc(var(--spacing) * -1);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[side\=top\]\:slide-in-from-bottom-2[data-side="top"] {
--tw-enter-translate-y: calc(2*var(--spacing));
}
.data-\[state\=active\]\:bg-background[data-state="active"] {
background-color: var(--background);
}
.data-\[state\=active\]\:text-foreground[data-state="active"] {
color: var(--foreground);
}
.data-\[state\=active\]\:shadow[data-state="active"] {
--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.data-\[state\=checked\]\:translate-x-4[data-state="checked"] {
--tw-translate-x: calc(var(--spacing) * 4);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[state\=checked\]\:bg-primary[data-state="checked"] {
background-color: var(--primary);
}
.data-\[state\=checked\]\:text-primary-foreground[data-state="checked"] {
color: var(--primary-foreground);
}
.data-\[state\=closed\]\:animate-accordion-up[data-state="closed"] {
animation: accordion-up var(--tw-animation-duration, var(--tw-duration, .2s))var(--tw-ease, ease-out)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.data-\[state\=closed\]\:animate-out[data-state="closed"] {
animation: exit var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.data-\[state\=closed\]\:duration-300[data-state="closed"] {
--tw-duration: .3s;
transition-duration: .3s;
}
.data-\[state\=closed\]\:fade-out-0[data-state="closed"] {
--tw-exit-opacity: 0;
}
.data-\[state\=closed\]\:zoom-out-95[data-state="closed"] {
--tw-exit-scale: .95;
}
.data-\[state\=closed\]\:slide-out-to-bottom[data-state="closed"] {
--tw-exit-translate-y: 100%;
}
.data-\[state\=closed\]\:slide-out-to-left[data-state="closed"] {
--tw-exit-translate-x: -100%;
}
.data-\[state\=closed\]\:slide-out-to-right[data-state="closed"] {
--tw-exit-translate-x: 100%;
}
.data-\[state\=closed\]\:slide-out-to-top[data-state="closed"] {
--tw-exit-translate-y: -100%;
}
.data-\[state\=hidden\]\:animate-out[data-state="hidden"] {
animation: exit var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.data-\[state\=hidden\]\:fade-out[data-state="hidden"] {
--tw-exit-opacity: 0;
}
.data-\[state\=on\]\:bg-accent[data-state="on"] {
background-color: var(--accent);
}
.data-\[state\=on\]\:text-accent-foreground[data-state="on"] {
color: var(--accent-foreground);
}
.data-\[state\=open\]\:animate-accordion-down[data-state="open"] {
animation: accordion-down var(--tw-animation-duration, var(--tw-duration, .2s))var(--tw-ease, ease-out)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.data-\[state\=open\]\:animate-in[data-state="open"] {
animation: enter var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.data-\[state\=open\]\:bg-accent[data-state="open"] {
background-color: var(--accent);
}
.data-\[state\=open\]\:bg-accent\/50[data-state="open"] {
background-color: var(--accent);
}
@supports (color: color-mix(in lab, red, red)) {
.data-\[state\=open\]\:bg-accent\/50[data-state="open"] {
background-color: color-mix(in oklab, var(--accent) 50%, transparent);
}
}
.data-\[state\=open\]\:bg-secondary[data-state="open"] {
background-color: var(--secondary);
}
.data-\[state\=open\]\:text-accent-foreground[data-state="open"] {
color: var(--accent-foreground);
}
.data-\[state\=open\]\:text-muted-foreground[data-state="open"] {
color: var(--muted-foreground);
}
.data-\[state\=open\]\:opacity-100[data-state="open"] {
opacity: 1;
}
.data-\[state\=open\]\:duration-500[data-state="open"] {
--tw-duration: .5s;
transition-duration: .5s;
}
.data-\[state\=open\]\:fade-in-0[data-state="open"] {
--tw-enter-opacity: 0;
}
.data-\[state\=open\]\:zoom-in-90[data-state="open"] {
--tw-enter-scale: .9;
}
.data-\[state\=open\]\:zoom-in-95[data-state="open"] {
--tw-enter-scale: .95;
}
.data-\[state\=open\]\:slide-in-from-bottom[data-state="open"] {
--tw-enter-translate-y: 100%;
}
.data-\[state\=open\]\:slide-in-from-left[data-state="open"] {
--tw-enter-translate-x: -100%;
}
.data-\[state\=open\]\:slide-in-from-right[data-state="open"] {
--tw-enter-translate-x: 100%;
}
.data-\[state\=open\]\:slide-in-from-top[data-state="open"] {
--tw-enter-translate-y: -100%;
}
@media (hover: hover) {
.data-\[state\=open\]\:hover\:bg-accent[data-state="open"]:hover {
background-color: var(--accent);
}
.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state="open"]:hover {
background-color: var(--sidebar-accent);
}
.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state="open"]:hover {
color: var(--sidebar-accent-foreground);
}
}
.data-\[state\=open\]\:focus\:bg-accent[data-state="open"]:focus {
background-color: var(--accent);
}
.data-\[state\=selected\]\:bg-muted[data-state="selected"] {
background-color: var(--muted);
}
.data-\[state\=unchecked\]\:translate-x-0[data-state="unchecked"] {
--tw-translate-x: 0px;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.data-\[state\=unchecked\]\:bg-input[data-state="unchecked"] {
background-color: var(--input);
}
.data-\[state\=visible\]\:animate-in[data-state="visible"] {
animation: enter var(--tw-animation-duration, var(--tw-duration, .15s))var(--tw-ease, ease)var(--tw-animation-delay, 0s)var(--tw-animation-iteration-count, 1)var(--tw-animation-direction, normal)var(--tw-animation-fill-mode, none);
}
.data-\[state\=visible\]\:fade-in[data-state="visible"] {
--tw-enter-opacity: 0;
}
@media (width >= 40rem) {
.sm\:mt-0 {
margin-top: 0;
}
.sm\:flex {
display: flex;
}
.sm\:max-w-sm {
max-width: var(--container-sm);
}
.sm\:flex-row {
flex-direction: row;
}
.sm\:justify-end {
justify-content: flex-end;
}
.sm\:gap-2\.5 {
gap: calc(var(--spacing) * 2.5);
}
:where(.sm\:space-x-2 > :not(:last-child)) {
--tw-space-x-reverse: 0;
margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
}
.sm\:rounded-lg {
border-radius: var(--radius);
}
.sm\:text-left {
text-align: left;
}
}
@media (width >= 48rem) {
.md\:absolute {
position: absolute;
}
.md\:block {
display: block;
}
.md\:flex {
display: flex;
}
.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\] {
width: var(--radix-navigation-menu-viewport-width);
}
.md\:w-auto {
width: auto;
}
.md\:flex-row {
flex-direction: row;
}
.md\:text-sm {
font-size: var(--text-sm);
line-height: var(--tw-leading, var(--text-sm--line-height));
}
.md\:opacity-0 {
opacity: 0;
}
.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant="inset"] ~ *) {
margin: calc(var(--spacing) * 2);
}
.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant="inset"] ~ *) {
margin-left: 0;
}
.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant="inset"] ~ *) {
border-radius: calc(var(--radius) + 4px);
}
.md\:peer-data-\[variant\=inset\]\:shadow:is(:where(.peer)[data-variant="inset"] ~ *) {
--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2:is(:where(.peer)[data-state="collapsed"] ~ *):is(:where(.peer)[data-variant="inset"] ~ *) {
margin-left: calc(var(--spacing) * 2);
}
}
.after\:md\:hidden:after {
content: var(--tw-content);
}
@media (width >= 48rem) {
.after\:md\:hidden:after {
display: none;
}
}
.dark\:border-destructive:is(.dark *) {
border-color: var(--destructive);
}
.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text {
fill: var(--muted-foreground);
}
.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"] {
stroke: var(--border);
}
@supports (color: color-mix(in lab, red, red)) {
.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"] {
stroke: color-mix(in oklab, var(--border) 50%, transparent);
}
}
.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor {
stroke: var(--border);
}
.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"] {
stroke: #0000;
}
.\[\&_\.recharts-layer\]\:outline-none .recharts-layer {
--tw-outline-style: none;
outline-style: none;
}
.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"] {
stroke: var(--border);
}
.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector, .\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor {
fill: var(--muted);
}
.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"] {
stroke: var(--border);
}
.\[\&_\.recharts-sector\]\:outline-none .recharts-sector {
--tw-outline-style: none;
outline-style: none;
}
.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"] {
stroke: #0000;
}
.\[\&_\.recharts-surface\]\:outline-none .recharts-surface {
--tw-outline-style: none;
outline-style: none;
}
.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] {
padding-inline: calc(var(--spacing) * 2);
}
.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] {
padding-block: calc(var(--spacing) * 1.5);
}
.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading] {
font-size: var(--text-xs);
line-height: var(--tw-leading, var(--text-xs--line-height));
}
.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading] {
--tw-font-weight: var(--font-weight-medium);
font-weight: var(--font-weight-medium);
}
.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading] {
color: var(--muted-foreground);
}
.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group] {
padding-inline: calc(var(--spacing) * 2);
}
.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden]) ~ [cmdk-group] {
padding-top: 0;
}
.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg {
height: calc(var(--spacing) * 5);
}
.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg {
width: calc(var(--spacing) * 5);
}
.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input] {
height: calc(var(--spacing) * 12);
}
.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item] {
padding-inline: calc(var(--spacing) * 2);
}
.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item] {
padding-block: calc(var(--spacing) * 3);
}
.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg {
height: calc(var(--spacing) * 5);
}
.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg {
width: calc(var(--spacing) * 5);
}
.\[\&_p\]\:leading-relaxed p {
--tw-leading: var(--leading-relaxed);
line-height: var(--leading-relaxed);
}
.\[\&_svg\]\:pointer-events-none svg {
pointer-events: none;
}
.\[\&_svg\]\:size-4 svg {
width: calc(var(--spacing) * 4);
height: calc(var(--spacing) * 4);
}
.\[\&_svg\]\:shrink-0 svg {
flex-shrink: 0;
}
.\[\&_tr\]\:border-b tr {
border-bottom-style: var(--tw-border-style);
border-bottom-width: 1px;
}
.\[\&_tr\:last-child\]\:border-0 tr:last-child {
border-style: var(--tw-border-style);
border-width: 0;
}
.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected="true"] button {
border-top-left-radius: calc(var(--radius) - 2px);
border-bottom-left-radius: calc(var(--radius) - 2px);
}
.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role="checkbox"]) {
padding-right: 0;
}
:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), [dir="rtl"], [dir="rtl"] *) *):is(.rdp-button_next > svg), :is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)), [dir="rtl"], [dir="rtl"] *) *):is(.rdp-button_previous > svg) {
rotate: 180deg;
}
.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected="true"] button {
border-top-right-radius: calc(var(--radius) - 2px);
border-bottom-right-radius: calc(var(--radius) - 2px);
}
.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\] > [role="checkbox"] {
--tw-translate-y: 2px;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.\[\&\>button\]\:hidden > button {
display: none;
}
.\[\&\>span\]\:line-clamp-1 > span {
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
display: -webkit-box;
overflow: hidden;
}
.\[\&\>span\]\:text-xs > span {
font-size: var(--text-xs);
line-height: var(--tw-leading, var(--text-xs--line-height));
}
.\[\&\>span\]\:opacity-70 > span {
opacity: .7;
}
.\[\&\>span\:last-child\]\:truncate > span:last-child {
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
.\[\&\>svg\]\:absolute > svg {
position: absolute;
}
.\[\&\>svg\]\:top-4 > svg {
top: calc(var(--spacing) * 4);
}
.\[\&\>svg\]\:left-4 > svg {
left: calc(var(--spacing) * 4);
}
.\[\&\>svg\]\:size-3\.5 > svg {
width: calc(var(--spacing) * 3.5);
height: calc(var(--spacing) * 3.5);
}
.\[\&\>svg\]\:size-4 > svg {
width: calc(var(--spacing) * 4);
height: calc(var(--spacing) * 4);
}
.\[\&\>svg\]\:h-2\.5 > svg {
height: calc(var(--spacing) * 2.5);
}
.\[\&\>svg\]\:h-3 > svg {
height: calc(var(--spacing) * 3);
}
.\[\&\>svg\]\:h-3\.5 > svg {
height: calc(var(--spacing) * 3.5);
}
.\[\&\>svg\]\:w-2\.5 > svg {
width: calc(var(--spacing) * 2.5);
}
.\[\&\>svg\]\:w-3 > svg {
width: calc(var(--spacing) * 3);
}
.\[\&\>svg\]\:w-3\.5 > svg {
width: calc(var(--spacing) * 3.5);
}
.\[\&\>svg\]\:shrink-0 > svg {
flex-shrink: 0;
}
.\[\&\>svg\]\:text-destructive > svg {
color: var(--destructive);
}
.\[\&\>svg\]\:text-foreground > svg {
color: var(--foreground);
}
.\[\&\>svg\]\:text-muted-foreground > svg {
color: var(--muted-foreground);
}
.\[\&\>svg\]\:text-sidebar-accent-foreground > svg {
color: var(--sidebar-accent-foreground);
}
.\[\&\>svg\+div\]\:translate-y-\[-3px\] > svg + div {
--tw-translate-y: -3px;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.\[\&\>svg\~\*\]\:pl-7 > svg ~ * {
padding-left: calc(var(--spacing) * 7);
}
.\[\&\>tr\]\:last\:border-b-0 > tr:last-child {
border-bottom-style: var(--tw-border-style);
border-bottom-width: 0;
}
.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction="vertical"] > div {
rotate: 90deg;
}
.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state="open"] > svg {
rotate: 180deg;
}
[data-side="left"] .\[\[data-side\=left\]_\&\]\:cursor-w-resize {
cursor: w-resize;
}
[data-side="left"][data-collapsible="offcanvas"] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 {
right: calc(var(--spacing) * -2);
}
[data-side="left"][data-state="collapsed"] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize, [data-side="right"] .\[\[data-side\=right\]_\&\]\:cursor-e-resize {
cursor: e-resize;
}
[data-side="right"][data-collapsible="offcanvas"] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 {
left: calc(var(--spacing) * -2);
}
[data-side="right"][data-state="collapsed"] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize {
cursor: w-resize;
}
[data-slot="card-content"] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent, [data-slot="popover-content"] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent {
background-color: #0000;
}
}
@property --tw-animation-delay {
syntax: "*";
inherits: false;
initial-value: 0s;
}
@property --tw-animation-direction {
syntax: "*";
inherits: false;
initial-value: normal;
}
@property --tw-animation-duration {
syntax: "*";
inherits: false
}
@property --tw-animation-fill-mode {
syntax: "*";
inherits: false;
initial-value: none;
}
@property --tw-animation-iteration-count {
syntax: "*";
inherits: false;
initial-value: 1;
}
@property --tw-enter-blur {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-enter-opacity {
syntax: "*";
inherits: false;
initial-value: 1;
}
@property --tw-enter-rotate {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-enter-scale {
syntax: "*";
inherits: false;
initial-value: 1;
}
@property --tw-enter-translate-x {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-enter-translate-y {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-exit-blur {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-exit-opacity {
syntax: "*";
inherits: false;
initial-value: 1;
}
@property --tw-exit-rotate {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-exit-scale {
syntax: "*";
inherits: false;
initial-value: 1;
}
@property --tw-exit-translate-x {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-exit-translate-y {
syntax: "*";
inherits: false;
initial-value: 0;
}
@font-face {
font-family: Cormorant Garamond;
font-style: normal;
font-weight: 500;
font-display: swap;
src: url("../fonts/cormorant-garamond-latin-500-normal.woff2") format("woff2");
}
@font-face {
font-family: Cormorant Garamond;
font-style: italic;
font-weight: 500;
font-display: swap;
src: url("../fonts/cormorant-garamond-latin-500-italic.woff2") format("woff2");
}
@font-face {
font-family: Kumbh Sans;
font-style: normal;
font-weight: 400;
font-display: swap;
src: url("../fonts/kumbh-sans-latin-400-normal.woff2") format("woff2");
}
@font-face {
font-family: Kumbh Sans;
font-style: normal;
font-weight: 500;
font-display: swap;
src: url("../fonts/kumbh-sans-latin-500-normal.woff2") format("woff2");
}
@font-face {
font-family: Kumbh Sans;
font-style: normal;
font-weight: 600;
font-display: swap;
src: url("../fonts/kumbh-sans-latin-600-normal.woff2") format("woff2");
}
:root {
--radius: .25rem;
--background: oklch(100% 0 0);
--foreground: oklch(18% .003 285);
--card: oklch(18.5% 0 0);
--card-foreground: var(--foreground);
--popover: oklch(18.5% 0 0);
--popover-foreground: var(--foreground);
--primary: oklch(16% 0 0);
--primary-foreground: oklch(100% 0 0);
--secondary: oklch(24% 0 0);
--secondary-foreground: var(--foreground);
--muted: oklch(95% .005 285);
--muted-foreground: oklch(50% .014 285);
--accent: oklch(29% 0 0);
--accent-foreground: var(--foreground);
--destructive: oklch(57.7% .245 27.325);
--destructive-foreground: oklch(98.4% .003 247.858);
--border: oklch(87% .01 285);
--input: oklch(33% 0 0);
--ring: oklch(80% 0 0);
--hero-ink: oklch(16% .003 285);
--on-image: oklch(100% 0 0);
--image-muted: oklch(83% .004 285);
--image-overlay: linear-gradient(90deg,oklch(8% 0 0 / .78),oklch(8% 0 0 / .4) 48%,oklch(8% 0 0 / .58));
--glass-surface: oklch(18% .003 285 / .55);
--hero-copy-surface: oklch(12% 0 0 / .82);
--hero-copy-shade: linear-gradient(90deg, var(--hero-copy-surface), oklch(12% 0 0 / .92));
--slideshow-shade: linear-gradient(90deg,var(--hero-ink) 32%,transparent 57%);
--hero-shade: linear-gradient(90deg, oklch(8% 0 0 / .72), oklch(8% 0 0 / .12) 48%, oklch(8% 0 0 / .82) 100%);
--hero-mobile-shade: linear-gradient(90deg, oklch(8% 0 0 / .7), oklch(8% 0 0 / .25));
--chart-1: oklch(64.6% .222 41.116);
--chart-2: oklch(60% .118 184.704);
--chart-3: oklch(39.8% .07 227.392);
--chart-4: oklch(82.8% .189 84.429);
--chart-5: oklch(76.9% .188 70.08);
--sidebar: oklch(98.4% .003 247.858);
--sidebar-foreground: oklch(12.9% .042 264.695);
--sidebar-primary: oklch(20.8% .042 265.755);
--sidebar-primary-foreground: oklch(98.4% .003 247.858);
--sidebar-accent: oklch(96.8% .007 247.896);
--sidebar-accent-foreground: oklch(20.8% .042 265.755);
--sidebar-border: oklch(92.9% .013 255.508);
--sidebar-ring: oklch(70.4% .04 256.788);
}
html {
scroll-behavior: smooth;
scroll-padding-top: 100px;
}
body {
font-family: var(--font-sans);
letter-spacing: 0;
-webkit-font-smoothing: antialiased;
font-size: 14px;
}
h1, h2, h3, p {
margin: 0;
}
h1, h2 {
font-family: var(--font-display);
letter-spacing: 0;
font-weight: 400;
line-height: 1.05;
}
h2 {
font-size: 64px;
}
em {
font-weight: 400;
}
a {
text-decoration: none;
}
button, a, input, select, textarea {
-webkit-tap-highlight-color: transparent;
}
::selection {
background: var(--primary);
color: var(--primary-foreground);
}
.page-width {
width: calc(100% - 112px);
max-width: 1450px;
margin-inline: auto;
}
.eyebrow {
text-transform: uppercase;
letter-spacing: 0;
font-size: 10px;
font-weight: 600;
line-height: 1.6;
display: block;
}
.site-header {
background: var(--hero-ink);
z-index: 30;
border-bottom: 1px solid var(--border);
justify-content: space-between;
align-items: center;
height: 92px;
padding: 0 56px;
display: flex;
position: relative;
}
.header-logo {
width: 183px;
height: auto;
}
.desktop-nav {
gap: 32px;
display: flex;
}
.desktop-nav a {
color: var(--muted-foreground);
font-size: 12px;
transition: color .2s;
}
.header-cta {
background: none;
border-radius: 0;
height: 39px;
padding: 0 17px;
font-size: 11px;
}
.mobile-menu-button {
display: none;
}
.home-hero {
background: var(--hero-ink);
height: calc(90svh - 92px);
min-height: 640px;
max-height: 1050px;
position: relative;
overflow: hidden;
}
.hero-photo {
object-fit: cover;
object-position: 50% 65%;
width: 62%;
height: 100%;
animation: 1.5s ease-out both hero-image;
position: absolute;
top: 0;
right: 0;
}
.hero-shade {
background: var(--hero-shade);
position: absolute;
inset: 0;
}
.hero-content {
max-width: 560px;
animation: .9s ease-out both hero-enter;
position: absolute;
top: 14%;
left: 56px;
}
.hero-content .eyebrow {
margin-bottom: 28px;
}
.hero-content h1 {
font-size: 85px;
line-height: 1.02;
}
.hero-line {
white-space: nowrap;
display: block;
overflow: hidden;
}
.hero-line > span {
animation: 1s cubic-bezier(.22, 1, .36, 1) both hero-line-enter;
display: block;
}
.hero-line:nth-child(2) > span {
animation-delay: .12s;
}
.hero-line:nth-child(3) > span {
animation-delay: .24s;
}
.hero-actions {
align-items: center;
gap: 18px;
margin-top: 38px;
display: flex;
}
.hero-primary {
border-radius: 0;
gap: 30px;
height: 49px;
padding: 0 23px;
font-size: 12px;
}
.hero-secondary {
gap: 20px;
height: 49px;
font-size: 12px;
}
.hero-side {
isolation: isolate;
width: 380px;
position: absolute;
bottom: 100px;
left: 56px;
}
.hero-side p {
margin-top: 0;
font-size: 15px;
font-weight: 500;
line-height: 1.8;
}
.hero-bottom {
justify-content: space-between;
align-items: center;
font-size: 10px;
display: flex;
position: absolute;
bottom: 30px;
left: 56px;
right: 56px;
}
.hero-bottom a {
align-items: center;
gap: 18px;
display: flex;
}
.client-strip {
border-bottom: 1px solid var(--border);
justify-content: space-between;
align-items: center;
padding: 35px 56px;
display: flex;
}
.client-strip > .eyebrow {
color: var(--muted-foreground);
font-size: 9px;
}
.client-strip > div {
font-family: var(--font-display);
align-items: center;
gap: 75px;
font-size: 30px;
display: flex;
}
.client-mark {
flex-shrink: 0;
justify-content: center;
align-items: center;
width: 130px;
height: 65px;
display: flex;
}
.client-mark img {
object-fit: contain;
max-width: 100%;
max-height: 100%;
}
.client-mark span {
white-space: nowrap;
}
.client-strip > div {
gap: 45px;
}
.client-strip {
min-height: 125px;
}
.intro-section {
grid-template-columns: 1.1fr 1fr;
gap: 60px;
padding-block: 112px;
display: grid;
}
.intro-heading .eyebrow {
color: var(--muted-foreground);
margin-bottom: 27px;
}
.intro-copy {
max-width: 480px;
padding-top: 38px;
}
.intro-copy p {
font-size: 15px;
line-height: 1.9;
}
.intro-copy .muted-copy {
color: var(--muted-foreground);
margin-top: 18px;
font-size: 13px;
}
.text-link {
border-bottom: 1px solid var(--border);
background: none;
border-radius: 0;
gap: 26px;
height: 40px;
margin-top: 23px;
padding: 0;
font-size: 12px;
}
.intro-images {
grid-column: 1 / -1;
grid-template-columns: .8fr 1.4fr .8fr;
align-items: center;
gap: 24px;
margin-top: 15px;
display: grid;
}
.intro-images img {
object-fit: cover;
width: 100%;
height: 340px;
}
.intro-images img:nth-child(2) {
height: 260px;
}
.section-heading-row {
justify-content: space-between;
align-items: flex-end;
gap: 30px;
display: flex;
}
.section-heading-row .eyebrow {
color: var(--muted-foreground);
margin-bottom: 17px;
}
.section-description {
color: var(--muted-foreground);
margin-top: 20px;
margin-bottom: 43px;
font-size: 13px;
}
.work-section {
padding-bottom: 80px;
}
.project-block {
margin-bottom: 60px;
}
.project-image-link {
display: block;
position: relative;
overflow: hidden;
}
.project-cover {
object-fit: cover;
width: 100%;
height: 550px;
transition: transform .7s;
}
.project-image-link:hover .project-cover {
transform: scale(1.025);
}
.project-view {
background: var(--primary);
color: var(--primary-foreground);
align-items: center;
gap: 22px;
padding: 12px 18px;
font-size: 11px;
display: flex;
position: absolute;
bottom: 24px;
right: 24px;
}
.project-view svg {
width: 16px;
}
.project-caption {
justify-content: space-between;
align-items: center;
gap: 25px;
padding-top: 24px;
display: flex;
}
.project-caption .eyebrow {
color: var(--muted-foreground);
font-size: 9px;
}
.project-caption h3 {
font-family: var(--font-display);
margin-top: 6px;
font-size: 40px;
font-weight: 400;
}
.project-caption > p, .project-number {
color: var(--muted-foreground);
font-size: 11px;
}
.services-section {
padding-block: 30px 110px;
}
.services-section .section-heading-row > p {
max-width: 300px;
color: var(--muted-foreground);
font-size: 12px;
line-height: 1.8;
}
.service-list {
margin-top: 50px;
}
.service-row {
border-top: 1px solid var(--border);
grid-template-columns: 55px 1.3fr 1fr 25px;
align-items: center;
gap: 24px;
padding: 28px 0;
transition: padding .25s;
display: grid;
}
.service-row:last-child {
border-bottom: 1px solid var(--border);
}
.service-row:hover {
padding-left: 10px;
}
.service-index {
color: var(--muted-foreground);
font-size: 11px;
}
.service-row h3 {
font-family: var(--font-display);
font-size: 33px;
font-weight: 400;
}
.service-row p {
color: var(--muted-foreground);
font-size: 11px;
line-height: 1.9;
}
.values-band {
border-block: 1px solid var(--border);
font-family: var(--font-display);
justify-content: space-around;
gap: 30px;
padding: 37px 56px;
font-size: 26px;
display: flex;
}
.process-section {
padding-block: 110px;
}
.section-title {
max-width: 640px;
}
.section-title .eyebrow {
color: var(--muted-foreground);
margin-bottom: 20px;
}
.section-title > p {
color: var(--muted-foreground);
max-width: 450px;
margin-top: 23px;
font-size: 13px;
line-height: 1.9;
}
.process-grid {
grid-template-columns: repeat(5, 1fr);
gap: 30px;
margin-top: 60px;
display: grid;
}
.process-grid > div {
border-top: 1px solid var(--border);
padding-top: 23px;
}
.process-number {
color: var(--muted-foreground);
font-size: 10px;
}
.process-grid h3 {
font-family: var(--font-display);
margin-top: 27px;
margin-bottom: 15px;
font-size: 31px;
font-weight: 400;
}
.process-grid p {
color: var(--muted-foreground);
font-size: 11px;
line-height: 1.9;
}
.contact-band {
background: var(--primary);
color: var(--primary-foreground);
padding: 85px max(56px, 50vw - 725px);
}
.contact-band h2 {
margin-top: 24px;
font-size: 81px;
}
.contact-band-bottom {
justify-content: space-between;
align-items: center;
gap: 35px;
margin-top: 35px;
display: flex;
}
.contact-band-bottom p {
max-width: 535px;
font-size: 13px;
line-height: 1.9;
}
.round-cta {
background: var(--primary-foreground);
width: 90px;
height: 90px;
color: var(--primary);
border-radius: 50%;
flex-shrink: 0;
}
.round-cta:hover {
background: var(--primary-foreground);
opacity: .85;
}
.round-cta svg {
width: 35px;
height: 35px;
}
.site-footer {
background: var(--hero-ink);
padding: 65px 56px 25px;
}
.footer-top {
justify-content: space-between;
align-items: center;
gap: 30px;
margin-bottom: 55px;
display: flex;
}
.footer-top img {
width: 285px;
height: auto;
}
.footer-top p {
font-size: 12px;
line-height: 2;
}
.footer-top p span {
color: var(--muted-foreground);
font-size: 10px;
}
.footer-bottom {
border-top: 1px solid var(--border);
color: var(--muted-foreground);
justify-content: space-between;
gap: 20px;
padding-top: 25px;
font-size: 9px;
display: flex;
}
.footer-bottom nav {
gap: 25px;
display: flex;
}
.page-intro .eyebrow {
color: var(--muted-foreground);
margin-bottom: 28px;
}
.page-intro p {
max-width: 555px;
color: var(--muted-foreground);
margin-top: 25px;
font-size: 14px;
line-height: 1.9;
}
.portfolio-filters {
border-bottom: 1px solid var(--border);
flex-wrap: wrap;
gap: 20px;
margin-bottom: 40px;
padding-bottom: 15px;
display: flex;
}
.portfolio-filters button {
color: var(--muted-foreground);
border-radius: 0;
font-size: 12px;
}
.portfolio-filters .filter-active {
color: var(--foreground);
border-bottom: 1px solid var(--foreground);
}
.project-intro {
padding-block: 40px 60px;
}
.project-intro > .text-link {
margin-bottom: 40px;
}
.project-intro h1 {
margin-top: 15px;
font-size: 100px;
}
.project-intro > p {
max-width: 660px;
color: var(--muted-foreground);
margin-top: 25px;
font-size: 14px;
line-height: 1.9;
}
.case-cover, .about-cover {
object-fit: cover;
width: 100%;
height: 650px;
}
.gallery {
grid-template-columns: 1fr 1fr;
gap: 28px;
padding-block: 70px;
display: grid;
}
.gallery-item {
background: none;
border-radius: 0;
height: auto;
padding: 0;
display: block;
overflow: hidden;
}
.gallery-item img {
object-fit: cover;
width: 100%;
height: 620px;
transition: transform .4s;
}
.gallery-item:hover img {
transform: scale(1.02);
}
.gallery-wide {
grid-column: 1 / -1;
}
.gallery-wide img {
object-fit: contain;
height: auto;
max-height: 850px;
}
.next-project {
padding-block: 25px 90px;
}
.next-project > .eyebrow {
color: var(--muted-foreground);
}
.next-project > a {
border-bottom: 1px solid var(--border);
justify-content: space-between;
align-items: center;
margin-top: 20px;
padding-bottom: 30px;
display: flex;
}
.next-project h2 {
font-size: 85px;
}
.lightbox {
z-index: 100;
background: var(--hero-ink);
justify-content: center;
align-items: center;
gap: 18px;
padding: 50px 20px;
display: flex;
position: fixed;
inset: 0;
}
.lightbox img {
object-fit: contain;
max-width: calc(100% - 110px);
max-height: 85vh;
}
.lightbox-close {
position: absolute;
top: 20px;
right: 25px;
}
.lightbox-count {
color: var(--image-muted);
font-size: 12px;
position: absolute;
bottom: 20px;
}
.lightbox > button {
color: var(--on-image);
}
.detailed-service {
border-top: 1px solid var(--border);
grid-template-columns: 1fr 1.4fr 1.1fr;
align-items: start;
gap: 40px;
padding-block: 50px;
display: grid;
}
.detailed-service > .eyebrow {
color: var(--muted-foreground);
}
.detailed-service p {
color: var(--muted-foreground);
margin-top: 25px;
font-size: 13px;
line-height: 1.9;
}
.detailed-service img {
object-fit: cover;
width: 100%;
height: 330px;
}
.service-type {
height: 200px;
font-family: var(--font-display);
color: var(--muted-foreground);
justify-content: center;
align-items: center;
font-size: 60px;
font-style: italic;
display: flex;
}
.about-story {
grid-template-columns: 1fr 1fr;
gap: 35px 75px;
padding-block: 100px;
display: grid;
}
.about-story > .eyebrow {
color: var(--muted-foreground);
grid-column: 1 / -1;
}
.about-story p {
color: var(--muted-foreground);
margin-bottom: 25px;
font-size: 14px;
line-height: 1.9;
}
.about-pair {
grid-template-columns: 1fr 1fr;
gap: 30px;
padding-bottom: 100px;
display: grid;
}
.about-pair img {
object-fit: cover;
width: 100%;
height: 600px;
}
.contact-layout {
grid-template-columns: 1fr 1.6fr;
gap: 100px;
padding-bottom: 110px;
display: grid;
}
.contact-layout aside {
padding-top: 20px;
}
.contact-layout aside h2 {
margin-top: 20px;
font-size: 48px;
}
.contact-layout aside p {
color: var(--muted-foreground);
margin-top: 25px;
font-size: 12px;
line-height: 2;
}
.contact-form {
grid-template-columns: 1fr 1fr;
gap: 35px 25px;
display: grid;
}
.contact-form label {
font-size: 11px;
}
.contact-form input, .contact-form select, .contact-form textarea {
border-bottom: 1px solid var(--border);
width: 100%;
color: var(--foreground);
background: none;
border-radius: 0;
outline: none;
margin-top: 5px;
padding: 15px 0;
font-size: 13px;
display: block;
}
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus {
border-color: var(--primary);
}
.contact-form option {
background: var(--background);
}
.contact-form input::placeholder, .contact-form textarea::placeholder {
color: var(--muted-foreground);
}
.form-full {
grid-column: 1 / -1;
}
.form-submit {
justify-content: space-between;
align-items: center;
gap: 25px;
display: flex;
}
.form-submit span {
color: var(--muted-foreground);
max-width: 220px;
font-size: 9px;
line-height: 1.8;
}
.form-submit button {
border-radius: 0;
gap: 20px;
height: 48px;
padding-inline: 25px;
font-size: 12px;
}
.form-success {
border: 1px solid var(--border);
padding: 45px;
}
.form-success h2 {
margin-top: 25px;
font-size: 55px;
}
.form-success p {
color: var(--muted-foreground);
margin-block: 20px 30px;
}
@keyframes hero-enter {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes hero-image {
from {
transform: scale(1.03);
}
to {
transform: scale(1);
}
}
@media (width >= 1600px) {
.hero-content h1 {
font-size: 100px;
}
.hero-content {
left: max(56px, 50vw - 725px);
}
}
@media (width <= 1050px) {
.page-width {
width: calc(100% - 64px);
}
.site-header {
padding-inline: 32px;
}
.desktop-nav {
gap: 20px;
}
.hero-content {
left: 32px;
}
.hero-content h1 {
font-size: 72px;
}
.hero-side {
width: 165px;
right: 32px;
}
.hero-bottom {
left: 32px;
right: 32px;
}
.client-strip {
padding-inline: 32px;
}
.client-strip > div {
gap: 35px;
}
.client-strip > .eyebrow:last-child {
display: none;
}
.intro-section {
gap: 35px;
}
h2 {
font-size: 53px;
}
.service-row {
grid-template-columns: 35px 1.4fr 1fr 20px;
gap: 15px;
}
.service-row h3 {
font-size: 28px;
}
.project-cover {
height: 480px;
}
.process-grid {
gap: 20px;
}
.contact-band {
padding-inline: 32px;
}
.contact-band h2 {
font-size: 70px;
}
.values-band {
padding-inline: 32px;
font-size: 21px;
}
.site-footer {
padding-inline: 32px;
}
.contact-layout {
gap: 40px;
}
.detailed-service {
grid-template-columns: .5fr 1.2fr 1fr;
gap: 25px;
}
}
@media (width <= 700px) {
.page-width {
width: calc(100% - 40px);
}
.site-header {
height: 76px;
padding-inline: 20px;
}
.header-logo {
width: 165px;
}
.desktop-nav, .header-cta {
display: none;
}
.mobile-menu-button {
display: inline-flex;
}
.mobile-nav {
background: var(--hero-ink);
border-bottom: 1px solid var(--border);
padding: 15px 25px 30px;
position: absolute;
top: 76px;
left: 0;
right: 0;
}
.mobile-nav a {
font-family: var(--font-display);
border-bottom: 1px solid var(--border);
justify-content: space-between;
align-items: center;
padding: 12px 0;
font-size: 32px;
display: flex;
}
.home-hero {
height: calc(88svh - 76px);
min-height: 580px;
max-height: 800px;
}
.hero-photo {
object-position: 62% center;
}
.hero-shade {
background: var(--hero-mobile-shade);
}
.hero-content {
top: 15%;
left: 20px;
right: 15px;
}
.hero-content h1 {
font-size: 58px;
}
.hero-content .eyebrow {
margin-bottom: 25px;
font-size: 9px;
}
.hero-side {
display: none;
}
.hero-actions {
flex-wrap: wrap;
gap: 6px;
margin-top: 32px;
}
.hero-primary {
gap: 20px;
height: 46px;
padding-inline: 15px;
}
.hero-secondary {
gap: 10px;
padding-inline: 10px;
font-size: 11px;
}
.hero-bottom {
font-size: 8px;
bottom: 24px;
left: 20px;
right: 20px;
}
.hero-bottom > span {
max-width: 180px;
line-height: 1.8;
}
.hero-bottom a {
gap: 8px;
}
.client-strip {
padding: 26px 20px;
display: block;
}
.client-strip > div {
justify-content: space-between;
gap: 15px;
margin-top: 17px;
font-size: 24px;
}
.client-strip .client-kebab {
font-size: 20px;
}
.intro-section {
grid-template-columns: 1fr;
gap: 25px;
padding-block: 70px;
}
h2 {
font-size: 46px;
}
.intro-copy {
padding-top: 0;
}
.intro-copy p {
font-size: 13px;
}
.intro-heading .eyebrow {
margin-bottom: 20px;
}
.intro-images {
grid-template-columns: 1fr 1fr;
align-items: start;
gap: 10px;
}
.intro-images img, .intro-images img:nth-child(2) {
height: 250px;
}
.intro-images img:nth-child(3) {
display: none;
}
.section-heading-row {
align-items: flex-start;
gap: 12px;
}
.section-heading-row .text-link {
white-space: normal;
gap: 8px;
margin-top: 40px;
font-size: 9px;
}
.section-heading-row h2 {
font-size: 44px;
}
.section-description {
margin-bottom: 25px;
font-size: 11px;
line-height: 1.8;
}
.project-cover {
height: 360px;
}
.project-caption {
align-items: end;
gap: 10px;
padding-top: 17px;
}
.project-caption h3 {
font-size: 34px;
}
.project-caption > p {
display: none;
}
.project-number {
font-size: 9px;
}
.project-caption .eyebrow {
font-size: 8px;
}
.project-view {
gap: 10px;
padding: 10px 12px;
font-size: 9px;
bottom: 15px;
right: 15px;
}
.project-block {
margin-bottom: 40px;
}
.work-section {
padding-bottom: 35px;
}
.services-section {
padding-block: 25px 70px;
}
.services-section .section-heading-row {
display: block;
}
.services-section .section-heading-row > p {
margin-top: 20px;
font-size: 12px;
}
.service-list {
margin-top: 30px;
}
.service-row {
grid-template-columns: 23px 1fr 20px;
padding-block: 23px;
}
.service-row p {
display: none;
}
.service-row h3 {
font-size: 27px;
}
.values-band {
grid-template-columns: 1fr 1fr;
gap: 20px;
padding: 27px 20px;
font-size: 22px;
display: grid;
}
.process-section {
padding-block: 70px;
}
.process-grid {
grid-template-columns: 1fr 1fr;
gap: 30px 22px;
margin-top: 40px;
}
.process-grid h3 {
margin-top: 16px;
}
.process-grid p {
font-size: 11px;
}
.contact-band {
padding: 65px 20px;
}
.contact-band h2 {
font-size: 47px;
}
.contact-band-bottom {
gap: 20px;
margin-top: 25px;
}
.contact-band-bottom p {
font-size: 11px;
}
.round-cta {
width: 65px;
height: 65px;
}
.round-cta svg {
width: 25px;
height: 25px;
}
.site-footer {
padding: 45px 20px 25px;
}
.footer-top {
margin-bottom: 35px;
display: block;
}
.footer-top img {
width: 235px;
}
.footer-top p {
margin-top: 30px;
font-size: 11px;
}
.footer-bottom {
flex-wrap: wrap;
gap: 20px;
font-size: 8px;
}
.footer-bottom nav {
order: 3;
gap: 30px;
width: 100%;
}
.page-intro {
padding-block: 60px 40px;
}
.page-intro h1 {
font-size: 59px;
}
.page-intro p {
font-size: 12px;
}
.portfolio-filters {
flex-wrap: wrap;
gap: 5px;
}
.portfolio-filters button {
padding-inline: 10px;
font-size: 11px;
}
.project-intro {
padding-block: 10px 40px;
}
.project-intro h1 {
overflow-wrap: anywhere;
font-size: 64px;
}
.project-intro > p {
font-size: 12px;
}
.case-cover, .about-cover {
height: 380px;
}
.gallery {
gap: 12px;
padding-block: 40px;
}
.gallery-item img {
height: 280px;
}
.gallery-wide img {
height: auto;
max-height: none;
}
.next-project {
padding-block: 15px 60px;
}
.next-project h2 {
font-size: 49px;
}
.next-project svg {
width: 30px;
}
.detailed-service {
grid-template-columns: 1fr;
gap: 20px;
padding-block: 35px;
}
.detailed-service h2 {
font-size: 40px;
}
.detailed-service img {
height: 350px;
}
.service-type {
justify-content: flex-start;
height: 100px;
font-size: 45px;
}
.about-story {
grid-template-columns: 1fr;
gap: 25px;
padding-block: 60px;
}
.about-story p {
font-size: 13px;
}
.about-pair {
gap: 12px;
padding-bottom: 60px;
}
.about-pair img {
height: 330px;
}
.contact-layout {
grid-template-columns: 1fr;
gap: 45px;
padding-bottom: 65px;
}
.contact-layout aside {
padding-top: 0;
}
.contact-layout aside h2 {
font-size: 40px;
}
.contact-form {
gap: 28px 20px;
}
.contact-form label {
font-size: 10px;
}
.contact-form input, .contact-form select, .contact-form textarea {
font-size: 12px;
}
.form-submit {
align-items: flex-start;
}
.form-submit button {
padding-inline: 15px;
font-size: 11px;
}
.lightbox {
gap: 4px;
padding-inline: 8px;
}
.lightbox img {
max-width: calc(100% - 80px);
}
.lightbox > button {
flex-shrink: 0;
}
.form-success {
padding: 30px;
}
}
@keyframes hero-line-enter {
from {
transform: translateY(110%);
}
to {
transform: translateY(0);
}
}
.motion-reveal {
opacity: 0;
transition: opacity .8s, transform 1s cubic-bezier(.22, 1, .36, 1);
transform: translateY(32px);
}
.motion-reveal.motion-visible {
opacity: 1;
transform: translateY(0);
}
.process-grid > div:nth-child(2), .service-row:nth-child(2) {
transition-delay: 70ms;
}
.process-grid > div:nth-child(3), .service-row:nth-child(3) {
transition-delay: .14s;
}
.process-grid > div:nth-child(4), .service-row:nth-child(4) {
transition-delay: .21s;
}
.process-grid > div:nth-child(5), .service-row:nth-child(5) {
transition-delay: .28s;
}
.mobile-nav {
animation: .35s both hero-enter;
}
.mobile-nav a {
animation: .45s both hero-enter;
}
.text-link svg, .hero-actions svg, .round-cta svg {
transition: transform .3s;
}
.text-link:hover svg, .hero-actions a:hover svg, .round-cta:hover svg {
transform: translate(3px, -3px);
}
@media (width >= 701px) and (width <= 900px) {
.home-hero {
min-height: 560px;
}
.hero-content h1 {
font-size: 67px;
}
.hero-side {
width: 220px;
top: auto;
bottom: 90px;
}
.client-strip > div {
gap: 18px;
}
.client-mark {
width: 100px;
}
.client-strip > .eyebrow {
max-width: 70px;
}
}
@media (width <= 700px) {
.client-strip > div {
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 22px;
display: grid;
}
.client-mark {
width: 100%;
height: 45px;
}
.client-mark span {
font-size: 19px;
}
.hero-content {
max-width: 500px;
}
.hero-side {
display: none;
}
}
@media (width <= 380px) {
.hero-content h1 {
font-size: 49px;
}
.hero-content .eyebrow {
font-size: 8px;
}
.client-mark span {
font-size: 17px;
}
}
@media (prefers-reduced-motion: reduce) {
.motion-reveal {
opacity: 1;
transform: none;
}
html {
scroll-behavior: auto;
}
*, :before, :after {
transition: none !important;
animation: none !important;
}
}
.dark {
--background: oklch(12.9% .042 264.695);
--foreground: oklch(98.4% .003 247.858);
--card: oklch(20.8% .042 265.755);
--card-foreground: oklch(98.4% .003 247.858);
--popover: oklch(20.8% .042 265.755);
--popover-foreground: oklch(98.4% .003 247.858);
--primary: oklch(92.9% .013 255.508);
--primary-foreground: oklch(20.8% .042 265.755);
--secondary: oklch(27.9% .041 260.031);
--secondary-foreground: oklch(98.4% .003 247.858);
--muted: oklch(27.9% .041 260.031);
--muted-foreground: oklch(70.4% .04 256.788);
--accent: oklch(27.9% .041 260.031);
--accent-foreground: oklch(98.4% .003 247.858);
--destructive: oklch(70.4% .191 22.216);
--destructive-foreground: oklch(98.4% .003 247.858);
--border: oklch(100% 0 0 / .1);
--input: oklch(100% 0 0 / .15);
--ring: oklch(55.1% .027 264.364);
--chart-1: oklch(48.8% .243 264.376);
--chart-2: oklch(69.6% .17 162.48);
--chart-3: oklch(76.9% .188 70.08);
--chart-4: oklch(62.7% .265 303.9);
--chart-5: oklch(64.5% .246 16.439);
--sidebar: oklch(20.8% .042 265.755);
--sidebar-foreground: oklch(98.4% .003 247.858);
--sidebar-primary: oklch(48.8% .243 264.376);
--sidebar-primary-foreground: oklch(98.4% .003 247.858);
--sidebar-accent: oklch(27.9% .041 260.031);
--sidebar-accent-foreground: oklch(98.4% .003 247.858);
--sidebar-border: oklch(100% 0 0 / .1);
--sidebar-ring: oklch(55.1% .027 264.364);
}
h1, h2, h3 {
font-family: var(--font-display);
letter-spacing: 0;
font-weight: 500;
}
.page-width {
width: calc(100% - 100px);
max-width: 1290px;
}
.site-header {
background: var(--background);
border: 0;
height: 76px;
padding-inline: 50px;
position: sticky;
top: 0;
}
.header-logo {
filter: invert();
width: 155px;
}
.desktop-nav {
gap: 28px;
}
.desktop-nav a {
color: var(--foreground);
font-size: 14px;
font-weight: 500;
}
.desktop-nav a:hover, .desktop-nav a.nav-active {
color: var(--primary);
}
.header-cta {
background: var(--primary);
color: var(--primary-foreground);
border: 0;
border-radius: 40px;
height: 42px;
padding-inline: 24px;
font-weight: 600;
}
.header-cta:hover {
background: var(--primary);
opacity: .9;
}
.home-hero {
height: calc(94svh - 76px);
min-height: 620px;
max-height: 1100px;
color: var(--on-image);
}
.studio-slideshow, .slideshow-images, .slideshow-frame {
position: absolute;
inset: 0;
}
.slideshow-frame {
opacity: 0;
visibility: hidden;
transition: opacity 1.3s, visibility 1.3s;
overflow: hidden;
}
.slideshow-frame.is-active {
opacity: 1;
visibility: visible;
}
.slideshow-photo {
object-fit: cover;
object-position: 62% 45%;
width: 100%;
height: 100%;
transition: transform 7s;
transform: scale(1.035);
}
.is-active .slideshow-photo {
transform: scale(1);
}
.hero-shade {
background: var(--image-overlay);
pointer-events: none;
}
.home-hero .hero-content {
max-width: 460px;
top: 13%;
left: 50px;
right: auto;
}
.home-hero .hero-content h1 {
font-size: 76px;
font-weight: 500;
line-height: 1.02;
}
.hero-actions {
margin-top: 34px;
}
.hero-primary {
border-radius: 40px;
height: 48px;
padding-inline: 30px;
font-weight: 600;
}
.hero-side {
width: 210px;
inset: 13% 50px auto auto;
}
.hero-side p {
font-size: 15px;
font-weight: 400;
line-height: 1.65;
}
.hero-preview {
aspect-ratio: 1;
border-radius: 26px;
margin-top: 30px;
display: block;
position: relative;
overflow: hidden;
}
.hero-preview img {
object-fit: cover;
width: 100%;
height: 100%;
}
.hero-preview svg {
background: var(--primary);
width: 42px;
height: 42px;
color: var(--primary-foreground);
border-radius: 50%;
padding: 10px;
position: absolute;
bottom: 18px;
right: 18px;
}
.hero-note {
background: var(--glass-surface);
-webkit-backdrop-filter: blur(16px);
backdrop-filter: blur(16px);
border-radius: 28px;
max-width: 310px;
padding: 24px;
position: absolute;
bottom: 44px;
left: 50px;
}
.hero-note-images {
margin-bottom: 17px;
display: flex;
}
.hero-note-images img {
object-fit: cover;
border: 2px solid var(--image-muted);
border-radius: 50%;
width: 42px;
height: 42px;
margin-right: -6px;
}
.hero-note h3 {
font-size: 20px;
}
.hero-note p {
color: var(--image-muted);
margin-top: 7px;
font-size: 12px;
}
.slideshow-controls {
z-index: 4;
align-items: center;
gap: 25px;
display: flex;
position: absolute;
bottom: 42px;
right: 50px;
}
.slide-project {
align-items: center;
gap: 12px;
font-size: 12px;
display: flex;
}
.slide-buttons {
align-items: center;
gap: 0;
display: flex;
}
.slide-count {
margin-right: 12px;
font-size: 11px;
}
.slide-buttons button {
width: 30px;
height: 34px;
color: var(--on-image);
}
.slide-buttons svg {
width: 16px;
height: 16px;
}
.aery-heading {
grid-template-columns: 1fr 1fr;
align-items: start;
gap: 40px;
margin-bottom: 55px;
display: grid;
}
.aery-heading h2 {
max-width: 570px;
font-size: 57px;
}
.eyebrow {
font-size: 12px;
font-weight: 600;
}
.aery-heading .eyebrow {
padding-top: 8px;
}
.aery-service-grid {
grid-template-rows: minmax(300px, auto) minmax(300px, auto);
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 28px;
display: grid;
}
.aery-service-item {
background: var(--muted);
border-radius: 32px;
flex-direction: column;
padding: 35px;
transition: transform .3s;
display: flex;
}
.aery-service-item:first-child {
background: var(--hero-ink);
color: var(--on-image);
grid-row: span 2;
}
.aery-service-item > span {
color: var(--muted-foreground);
font-size: 18px;
}
.aery-service-item h3 {
margin-top: 13px;
font-size: 27px;
}
.aery-service-item p {
color: var(--muted-foreground);
margin-top: auto;
padding-top: 24px;
font-size: 14px;
line-height: 1.7;
}
.aery-service-item:first-child p, .aery-service-item:first-child > span {
color: var(--image-muted);
}
.aery-marquee {
padding-block: 110px;
overflow: hidden;
}
.aery-marquee-track {
width: max-content;
font-family: var(--font-display);
align-items: center;
gap: 45px;
font-size: 125px;
line-height: 1.1;
animation: 40s linear infinite studio-marquee;
display: flex;
}
.aery-marquee-group {
align-items: center;
gap: 45px;
display: flex;
}
.aery-marquee img {
object-fit: cover;
border-radius: 35px;
width: 175px;
height: 125px;
}
@keyframes studio-marquee {
to {
transform: translateX(-50%);
}
}
.aery-about {
background: var(--hero-ink);
color: var(--on-image);
border-radius: 36px;
padding: 100px 40px 70px;
}
.aery-about-top {
grid-template-columns: 1fr 1fr;
align-items: center;
gap: 65px;
display: grid;
}
.aery-about h2 {
margin-block: 25px;
font-size: 57px;
}
.aery-about p {
color: var(--image-muted);
font-size: 16px;
line-height: 1.7;
}
.aery-about ul {
margin-top: 28px;
padding: 0;
list-style: none;
}
.aery-about li {
align-items: center;
gap: 12px;
margin-top: 18px;
font-size: 15px;
display: flex;
}
.aery-about li svg {
width: 22px;
height: 22px;
color: var(--image-muted);
}
.aery-about-photo {
border-radius: 32px;
min-height: 540px;
position: relative;
overflow: hidden;
}
.aery-about-photo > img {
object-fit: cover;
width: 100%;
height: 540px;
}
.aery-about-photo > p {
background: var(--glass-surface);
color: var(--on-image);
padding: 30px;
font-size: 24px;
line-height: 1.2;
position: absolute;
bottom: 0;
left: 0;
right: 0;
}
.aery-about-photo strong {
background: var(--primary);
color: var(--primary-foreground);
padding-inline: 5px;
font-weight: 500;
}
.aery-clients {
justify-content: space-between;
align-items: center;
gap: 30px;
margin-top: 95px;
display: flex;
}
.aery-clients > p {
max-width: 170px;
color: var(--on-image);
font-size: 19px;
line-height: 1.3;
}
.aery-clients .client-mark {
width: 130px;
height: 65px;
}
.aery-clients .client-mark span {
font-size: 23px;
font-family: var(--font-display);
}
.aery-work > h2 {
text-align: center;
max-width: 950px;
margin: 0 auto 70px;
font-size: 90px;
font-weight: 600;
}
.aery-project {
border-top: 1px solid var(--border);
grid-template-columns: 280px 1fr;
gap: 45px;
padding-block: 45px;
display: grid;
}
.aery-project h3 {
font-size: 40px;
line-height: 1.1;
}
.aery-project p {
color: var(--muted-foreground);
margin-top: 32px;
font-size: 15px;
line-height: 1.7;
}
.aery-project .text-link {
background: var(--foreground);
color: var(--background);
border: 0;
border-radius: 40px;
padding-inline: 22px;
}
.aery-project > a {
border-radius: 30px;
overflow: hidden;
}
.aery-project img {
object-fit: cover;
width: 100%;
height: 460px;
transition: transform .6s;
}
.aery-project > a:hover img {
transform: scale(1.025);
}
.aery-more {
padding-block: 40px 110px;
}
.aery-more-grid {
grid-template-columns: repeat(3, 1fr);
gap: 28px;
display: grid;
}
.aery-more article img {
object-fit: cover;
border-radius: 28px;
width: 100%;
height: 350px;
}
.aery-more h3 {
margin-top: 23px;
font-size: 26px;
}
.aery-more p {
color: var(--muted-foreground);
margin-top: 10px;
line-height: 1.6;
}
.aery-more .text-link {
margin-top: 12px;
}
.contact-band {
background: var(--background);
color: var(--foreground);
border-top: 1px solid var(--border);
padding-block: 90px;
}
.contact-band h2 {
max-width: 1000px;
font-size: 65px;
}
.contact-band .text-link {
color: var(--foreground);
border-color: var(--border);
}
.round-cta {
background: var(--primary);
color: var(--primary-foreground);
}
.round-cta:hover {
background: var(--primary);
}
.site-footer {
background: var(--hero-ink);
color: var(--on-image);
padding-top: 80px;
}
.footer-top p span, .footer-bottom {
color: var(--image-muted);
}
.footer-top {
align-items: start;
}
.footer-top h2 {
margin-bottom: 30px;
font-size: 52px;
}
.footer-bottom {
border-color: var(--glass-surface);
}
.page-intro {
padding-block: 100px 70px;
}
.page-intro h1 {
font-size: 86px;
}
.project-caption h3, .service-row h3, .process-grid h3 {
font-family: var(--font-display);
font-weight: 500;
}
.project-cover {
border-radius: 28px;
}
.project-view {
border-radius: 40px;
}
.project-caption h3 {
font-size: 35px;
}
.process-section {
background: var(--background);
}
.detailed-service h2 {
font-size: 43px;
}
.detailed-service img, .about-cover, .about-pair img {
border-radius: 28px;
}
.mobile-nav {
background: var(--background);
}
@media (width <= 1050px) {
.site-header {
padding-inline: 32px;
}
.desktop-nav {
gap: 18px;
}
.page-width {
width: calc(100% - 64px);
}
.home-hero .hero-content {
max-width: 360px;
left: 32px;
}
.home-hero .hero-content h1 {
font-size: 62px;
}
.hero-side {
width: 165px;
right: 32px;
}
.hero-note {
bottom: 30px;
left: 32px;
}
.slideshow-controls {
gap: 12px;
bottom: 30px;
right: 32px;
}
.aery-service-item {
padding: 25px;
}
.aery-service-item h3 {
font-size: 24px;
}
.aery-service-item p {
font-size: 13px;
}
.aery-about {
padding: 65px 30px;
}
.aery-about-top {
gap: 30px;
}
.aery-about h2, .aery-heading h2 {
font-size: 47px;
}
.aery-clients {
flex-wrap: wrap;
gap: 20px;
}
.aery-clients .client-mark {
width: 100px;
}
.aery-work > h2 {
font-size: 70px;
}
.aery-project {
grid-template-columns: 220px 1fr;
gap: 30px;
}
.aery-project h3 {
font-size: 32px;
}
.aery-more-grid {
gap: 20px;
}
}
@media (width <= 700px) {
.site-header {
height: 72px;
padding-inline: 20px;
}
.header-logo {
width: 145px;
}
.page-width {
width: calc(100% - 40px);
}
.home-hero {
height: calc(94svh - 72px);
min-height: 620px;
}
.home-hero .hero-content {
max-width: 290px;
top: 60px;
left: 20px;
right: 20px;
}
.home-hero .hero-content h1 {
font-size: 49px;
line-height: 1.05;
}
.hero-side {
display: none;
}
.hero-note {
max-width: 270px;
padding: 20px;
bottom: 86px;
left: 20px;
}
.hero-note h3 {
font-size: 18px;
}
.hero-note-images {
margin-bottom: 12px;
}
.slideshow-controls {
justify-content: space-between;
bottom: 20px;
left: 20px;
right: 20px;
}
.slide-project {
max-width: 165px;
font-size: 11px;
}
.slideshow-photo {
object-position: 65% center;
}
.aery-services {
padding-top: 70px;
}
.aery-heading {
grid-template-columns: 1fr;
gap: 20px;
margin-bottom: 30px;
}
.aery-heading h2 {
font-size: 40px;
}
.aery-service-grid {
grid-template-rows: auto;
grid-template-columns: 1fr 1fr;
gap: 15px;
}
.aery-service-item {
border-radius: 24px;
min-height: 220px;
padding: 23px 20px;
}
.aery-service-item:first-child {
grid-area: auto / 1 / auto / -1;
min-height: 260px;
}
.aery-service-item h3 {
overflow-wrap: anywhere;
font-size: 22px;
}
.aery-service-item p {
font-size: 13px;
}
.aery-marquee {
padding-block: 70px;
}
.aery-marquee-track {
gap: 25px;
font-size: 72px;
}
.aery-marquee-group {
gap: 25px;
}
.aery-marquee img {
border-radius: 22px;
width: 110px;
height: 80px;
}
.aery-about {
border-radius: 28px;
padding: 45px 24px;
}
.aery-about-top {
grid-template-columns: 1fr;
gap: 35px;
}
.aery-about h2 {
font-size: 40px;
}
.aery-about p {
font-size: 14px;
}
.aery-about li {
font-size: 13px;
}
.aery-about-photo, .aery-about-photo > img {
height: 360px;
min-height: 360px;
}
.aery-about-photo > p {
padding: 24px;
font-size: 22px;
}
.aery-clients {
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 45px;
display: grid;
}
.aery-clients > p {
grid-column: 1 / -1;
max-width: none;
}
.aery-clients .client-mark {
width: 100%;
height: 55px;
}
.aery-work {
padding-block: 70px 30px;
}
.aery-work > h2 {
margin-bottom: 35px;
font-size: 46px;
}
.aery-project {
grid-template-columns: 1fr;
gap: 25px;
padding-block: 30px;
}
.aery-project h3 {
font-size: 32px;
}
.aery-project p {
margin-top: 18px;
font-size: 14px;
}
.aery-project img {
height: 360px;
}
.aery-more {
padding-bottom: 60px;
}
.aery-more-grid {
grid-template-columns: 1fr;
gap: 35px;
}
.aery-more article img {
height: 350px;
}
.contact-band {
padding-block: 60px;
}
.contact-band h2 {
font-size: 42px;
}
.page-intro {
padding-block: 60px 45px;
}
.page-intro h1, .project-intro h1 {
font-size: 55px;
}
.mobile-nav {
top: 72px;
}
.footer-top h2 {
font-size: 40px;
}
.footer-top img {
width: 220px;
}
}
@media (prefers-reduced-motion: reduce) {
.aery-marquee-track {
animation: none;
}
.slideshow-photo {
transform: none;
}
}
.aery-service-item:nth-child(2) {
transition-delay: .1s;
}
.aery-service-item:nth-child(3) {
transition-delay: .2s;
}
@media (width <= 1050px) and (width >= 701px) {
.aery-service-grid {
grid-template-rows: minmax(350px, auto) minmax(350px, auto);
}
}
@media (width <= 700px) {
.slideshow-photo {
object-position: 40% center;
}
.aery-service-grid {
grid-template-rows: auto;
}
.aery-service-item {
min-height: 275px;
}
.aery-service-item:first-child {
min-height: 260px;
}
.aery-service-item h3 {
font-size: 20px;
}
.aery-service-item p {
font-size: 12px;
line-height: 1.6;
}
}
h1, h2 {
font-weight: 500;
}
h3 {
font-family: var(--font-sans);
font-weight: 500;
}
em {
font-style: italic;
font-weight: 500;
}
.eyebrow {
letter-spacing: .18em;
font-size: 10px;
}
.site-header {
height: 76px;
}
.home-hero {
height: calc(91svh - 76px);
min-height: 590px;
max-height: 1000px;
}
.studio-background-video {
position: absolute;
inset: 0;
}
.studio-background-video video {
object-fit: cover;
object-position: 66% center;
width: 100%;
height: 100%;
}
.video-toggle {
z-index: 5;
color: var(--on-image);
background: var(--hero-copy-surface);
border-radius: 50%;
width: 44px;
height: 44px;
position: absolute;
bottom: 28px;
right: 50px;
}
.video-toggle:hover {
background: var(--hero-ink);
color: var(--on-image);
}
.home-hero .hero-content {
max-width: 460px;
animation: none;
top: 12%;
left: 50px;
transform: none;
}
.home-hero .hero-content h1 {
font-size: 78px;
line-height: .98;
}
.hero-line {
white-space: nowrap;
margin-bottom: -8px;
padding-bottom: 8px;
}
.home-hero .hero-content .eyebrow {
margin-bottom: 28px;
font-size: 10px;
}
.hero-primary {
background: var(--primary);
color: var(--primary-foreground);
}
.hero-side {
background: var(--hero-copy-shade);
border-radius: 24px;
width: 230px;
padding: 18px;
inset: 12% 50px auto auto;
}
.hero-side p {
color: var(--on-image);
font-size: 16px;
font-weight: 500;
line-height: 1.7;
}
.hero-preview {
aspect-ratio: 1;
border-radius: 18px;
margin-top: 20px;
}
.hero-note {
background: var(--hero-copy-surface);
max-width: 290px;
padding: 22px;
bottom: 34px;
left: 50px;
}
.hero-note h3 {
font-family: var(--font-display);
font-size: 28px;
line-height: 1.1;
}
.hero-note p {
color: var(--on-image);
line-height: 1.6;
}
.hero-explore {
color: var(--on-image);
align-items: center;
gap: 15px;
font-size: 13px;
display: flex;
position: absolute;
bottom: 38px;
right: 115px;
}
@keyframes explore-cue {
50% {
transform: translateY(5px);
}
}
.aery-services {
padding-block: 95px 0;
}
.aery-heading h2 {
font-size: 66px;
}
.aery-service-grid {
grid-template-rows: repeat(2, minmax(285px, auto));
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 25px;
}
.aery-service-item {
border-radius: 30px;
min-width: 0;
padding: 32px;
}
.aery-service-item:first-child {
grid-row: span 2;
}
.aery-service-item h3 {
font-family: var(--font-sans);
font-size: 25px;
line-height: 1.25;
}
.aery-service-item p {
color: var(--foreground);
font-size: 14px;
line-height: 1.8;
}
.aery-service-item:first-child h3 {
font-size: 34px;
}
.aery-service-item:first-child p {
color: var(--on-image);
}
.aery-marquee {
padding-block: 95px;
}
.aery-marquee-track {
font-family: var(--font-display);
font-size: 135px;
}
.aery-about h2 {
font-size: 70px;
}
.aery-about-copy > p + p {
margin-top: 20px;
}
.aery-about-copy .text-link {
color: var(--on-image);
border-color: var(--image-muted);
}
.aery-about-photo > p {
background: var(--hero-copy-surface);
font-family: var(--font-display);
font-size: 34px;
}
.aery-work {
padding-block: 120px 45px;
}
.work-eyebrow {
text-align: center;
margin-bottom: 24px;
}
.aery-work > h2 {
margin-bottom: 75px;
font-size: 88px;
font-weight: 500;
}
.aery-project h3 {
font-family: var(--font-display);
margin-top: 18px;
font-size: 44px;
}
.aery-project p {
margin-top: 25px;
font-size: 15px;
line-height: 1.8;
}
.aery-project img {
object-position: center;
height: 520px;
}
.aery-project:nth-of-type(3n+1) img {
object-fit: contain;
background: var(--muted);
height: 600px;
}
.contact-band h2 {
font-size: 76px;
}
.contact-band-bottom p {
font-size: 16px;
}
.footer-top h2 {
font-weight: 500;
}
@media (width <= 1050px) {
.home-hero .hero-content {
max-width: 365px;
left: 32px;
}
.home-hero .hero-content h1 {
font-size: 65px;
}
.hero-side {
width: 205px;
right: 32px;
}
.hero-note {
left: 32px;
}
.aery-heading h2 {
font-size: 56px;
}
.aery-service-item {
padding: 25px;
}
.aery-service-item h3 {
font-size: 21px;
}
.aery-service-item:first-child h3 {
font-size: 29px;
}
.aery-about h2 {
font-size: 58px;
}
.aery-project {
grid-template-columns: 235px minmax(0, 1fr);
gap: 30px;
}
.aery-project img {
height: 420px;
}
.aery-project:nth-of-type(3n+1) img {
height: 480px;
}
}
@media (width <= 700px) {
.site-header {
height: 72px;
}
.header-logo {
width: 180px;
}
.home-hero {
height: calc(91svh - 72px);
min-height: 620px;
max-height: 850px;
}
.home-hero .hero-content {
max-width: none;
top: 42px;
left: 20px;
right: 20px;
}
.home-hero .hero-content h1 {
font-size: 55px;
}
.home-hero .hero-content .eyebrow {
margin-bottom: 20px;
font-size: 9px;
}
.hero-actions {
margin-top: 26px;
}
.hero-side {
border-radius: 18px;
width: auto;
padding: 16px;
display: block;
inset: auto 20px 83px;
}
.hero-side p {
font-size: 14px;
line-height: 1.7;
}
.hero-preview, .hero-note {
display: none;
}
.hero-explore {
bottom: 30px;
left: 20px;
right: auto;
}
.video-toggle {
bottom: 20px;
right: 20px;
}
.aery-services {
padding-top: 55px;
}
.aery-heading h2 {
font-size: 46px;
}
.aery-service-grid {
grid-template-rows: auto;
grid-template-columns: 1fr 1fr;
gap: 15px;
}
.aery-service-item, .aery-service-item:first-child {
border-radius: 24px;
grid-row: auto;
min-height: 275px;
padding: 22px 18px;
}
.aery-service-item:first-child {
grid-column: 1 / -1;
min-height: 270px;
}
.aery-service-item h3 {
font-size: 20px;
}
.aery-service-item p {
font-size: 13px;
}
.aery-marquee {
padding-block: 65px;
}
.aery-marquee-track {
font-size: 85px;
}
.aery-about h2 {
font-size: 49px;
}
.aery-about-photo > p {
font-size: 30px;
}
.aery-work {
padding-top: 75px;
}
.aery-work > h2 {
margin-bottom: 40px;
font-size: 53px;
}
.aery-project {
grid-template-columns: 1fr;
gap: 25px;
padding-block: 35px;
}
.aery-project h3 {
font-size: 40px;
}
.aery-project img, .aery-project:nth-of-type(3n+1) img {
aspect-ratio: 4 / 5;
object-fit: cover;
height: auto;
}
.aery-project .text-link {
margin-top: 20px;
}
.contact-band h2 {
font-size: 48px;
}
.contact-band-bottom p {
font-size: 14px;
}
.eyebrow {
font-size: 9px;
}
.detailed-service h2 {
font-size: 40px;
}
}
@media (width >= 701px) and (width <= 1050px) {
.hero-note {
display: none;
}
}
@media (width <= 380px) {
.home-hero .hero-content h1 {
font-size: 49px;
}
.aery-service-grid {
grid-template-columns: 1fr;
}
.aery-service-item, .aery-service-item:first-child {
min-height: 235px;
}
.home-hero .hero-content .eyebrow {
font-size: 8px;
}
}
@media (prefers-reduced-motion: reduce) {
.hero-line > span, .hero-explore svg {
animation: none;
}
.hero-line > span {
transform: none;
}
}
.aery-services {
padding-top: 120px;
}
.aery-heading {
margin-bottom: 55px;
}
.aery-service-grid {
grid-template-rows: repeat(2, minmax(300px, auto));
gap: 28px;
}
.aery-service-item {
border-radius: 32px;
padding: 35px;
}
.aery-about {
border-radius: 36px;
padding: 100px 40px 70px;
}
.aery-about-top {
gap: 65px;
}
.aery-clients {
margin-top: 95px;
}
.aery-work {
padding-top: 120px;
}
.aery-project {
grid-template-columns: 280px minmax(0, 1fr);
gap: 45px;
padding-block: 45px;
}
.aery-project img, .aery-project:nth-of-type(3n+1) img {
object-fit: cover;
background: var(--muted);
height: 460px;
}
.aery-project > a {
border-radius: 30px;
}
.aery-project .project-arrow {
width: 90px;
height: 38px;
margin-top: 30px;
padding: 0;
}
.project-arrow svg {
transform: rotate(45deg);
}
.project-arrow:hover svg {
transform: rotate(45deg) translateX(3px);
}
.studio-stories {
padding-block: 95px 120px;
}
.studio-stories .aery-heading {
align-items: center;
}
.studio-stories .aery-heading p {
color: var(--muted-foreground);
font-size: 15px;
line-height: 1.8;
}
.studio-stories h2, .studio-journal h2 {
font-size: 65px;
}
.studio-story-grid {
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 30px;
display: grid;
}
.studio-story-grid article {
min-width: 0;
}
.studio-story-grid article > a {
border-radius: 32px;
display: block;
position: relative;
overflow: hidden;
}
.studio-story-grid img {
object-fit: cover;
width: 100%;
height: 390px;
transition: transform .3s;
}
.studio-story-grid article > a:hover img {
transform: scale(1.02);
}
.story-open {
color: var(--on-image);
justify-content: center;
align-items: center;
display: flex;
position: absolute;
inset: 0;
}
.story-open svg {
box-sizing: content-box;
border: 1px solid var(--on-image);
background: var(--glass-surface);
border-radius: 50%;
padding: 16px;
}
.studio-story-grid p {
color: var(--muted-foreground);
margin-top: 24px;
font-size: 14px;
line-height: 1.8;
}
.studio-story-grid h3 {
margin-top: 24px;
font-size: 16px;
}
.studio-story-grid article > span {
color: var(--muted-foreground);
margin-top: 6px;
font-size: 12px;
display: block;
}
.studio-feature {
width: 100%;
height: 480px;
overflow: hidden;
}
.studio-feature img {
object-fit: cover;
object-position: center 42%;
width: 100%;
height: 100%;
}
.studio-journal {
padding-block: 120px 50px;
}
.studio-journal article {
border-top: 1px solid var(--border);
grid-template-columns: 260px 180px minmax(0, 1fr) 125px;
align-items: start;
gap: 35px;
padding-block: 30px;
display: grid;
}
.studio-journal img {
object-fit: cover;
border-radius: 32px;
width: 100%;
height: 195px;
}
.studio-journal .eyebrow {
color: var(--muted-foreground);
margin-top: 8px;
font-size: 9px;
}
.studio-journal h3 {
margin-top: 6px;
font-size: 28px;
line-height: 1.15;
}
.journal-link {
background: var(--muted);
border-radius: 40px;
gap: 12px;
height: 38px;
font-size: 11px;
}
.contact-band {
border: 0;
padding: 90px 0 130px;
}
.contact-band h2 {
font-family: var(--font-display);
max-width: none;
margin: 0;
font-size: 55px;
line-height: 1.18;
}
.contact-band h2 a {
color: var(--muted-foreground);
text-underline-offset: 5px;
text-decoration: underline;
transition: color .3s;
}
.contact-band h2 a:hover {
color: var(--foreground);
}
.site-footer {
padding-top: 90px;
}
.footer-top {
grid-template-columns: 1.2fr 1fr .7fr;
gap: 90px;
margin-bottom: 95px;
display: grid;
}
.footer-top h2 {
font-family: var(--font-sans);
margin-bottom: 25px;
font-size: 26px;
line-height: 1.2;
}
.footer-top .text-link {
color: var(--image-muted);
border: 0;
margin-top: 0;
font-size: 13px;
}
.footer-top p {
color: var(--image-muted);
margin-top: 16px;
font-size: 12px;
}
.footer-link-column nav {
color: var(--image-muted);
flex-direction: column;
align-items: start;
gap: 18px;
font-size: 13px;
display: flex;
}
.footer-link-column a:hover {
color: var(--on-image);
}
.footer-brand img {
width: 210px;
max-width: 100%;
height: auto;
}
.footer-bottom {
padding-block: 25px;
font-size: 11px;
}
.footer-lines {
background: repeating-linear-gradient(to bottom,var(--image-muted) 0 2px,transparent 2px 12px);
opacity: .8;
height: 95px;
margin-top: 55px;
}
.aery-service-item:nth-child(2), .studio-story-grid > article:nth-child(2) {
transition-delay: .1s;
}
.aery-service-item:nth-child(3), .studio-story-grid > article:nth-child(3) {
transition-delay: .2s;
}
.aery-project > a {
transition-delay: .1s;
}
.mobile-nav, .mobile-nav a {
animation-duration: .5s;
}
@media (width <= 1050px) {
.aery-service-item {
padding: 25px;
}
.aery-about {
padding: 65px 30px;
}
.aery-about-top {
gap: 30px;
}
.aery-project {
grid-template-columns: 220px minmax(0, 1fr);
gap: 30px;
}
.studio-story-grid {
gap: 20px;
}
.studio-story-grid img {
height: 310px;
}
.studio-journal article {
grid-template-columns: 170px 100px minmax(0, 1fr) 110px;
gap: 20px;
}
.studio-journal h3 {
font-size: 23px;
}
.studio-journal img {
height: 150px;
}
.footer-top {
gap: 40px;
}
.footer-top h2 {
font-size: 23px;
}
}
@media (width <= 700px) {
.aery-services {
padding-top: 70px;
}
.aery-heading {
margin-bottom: 30px;
}
.aery-service-grid {
grid-template-rows: auto;
gap: 15px;
}
.aery-service-item {
border-radius: 24px;
padding: 23px 20px;
}
.aery-about {
border-radius: 28px;
padding: 45px 24px;
}
.aery-clients {
margin-top: 45px;
}
.aery-work {
padding-top: 70px;
}
.aery-project {
grid-template-columns: 1fr;
gap: 25px;
padding-block: 30px;
}
.aery-project img, .aery-project:nth-of-type(3n+1) img {
aspect-ratio: 4 / 5;
height: auto;
}
.studio-stories {
padding-block: 60px 70px;
}
.studio-stories h2, .studio-journal h2 {
font-size: 46px;
}
.studio-story-grid {
grid-template-columns: 1fr;
gap: 40px;
}
.studio-story-grid img {
aspect-ratio: 4 / 5;
height: auto;
}
.studio-stories .aery-heading p {
font-size: 14px;
}
.studio-feature {
height: 300px;
}
.studio-journal {
padding-block: 70px 30px;
}
.studio-journal article {
grid-template-columns: 110px minmax(0, 1fr);
gap: 15px;
}
.studio-journal img {
border-radius: 20px;
grid-row: span 3;
height: 150px;
}
.studio-journal h3 {
font-size: 22px;
}
.studio-journal .eyebrow {
margin-top: 0;
}
.journal-link {
justify-self: start;
}
.contact-band {
padding-block: 60px 80px;
}
.contact-band h2 {
font-size: 38px;
}
.footer-top {
grid-template-columns: 1fr 1fr;
gap: 40px 20px;
margin-bottom: 50px;
}
.footer-brand {
grid-column: 1 / -1;
}
.footer-top h2 {
font-size: 22px;
}
.footer-link-column nav {
gap: 14px;
font-size: 12px;
}
.footer-lines {
height: 70px;
margin-top: 30px;
}
.footer-bottom {
font-size: 10px;
}
.aery-project > a {
transition-delay: 0s;
}
}
@media (prefers-reduced-motion: reduce) {
.motion-reveal {
transition: none;
transform: none;
}
.studio-story-grid img {
transition: none;
}
}
.site-header {
height: 63px;
padding-inline: 70px;
}
.header-logo {
width: 170px;
}
.home-hero {
height: 100svh;
min-height: 0;
max-height: none;
animation: 1s both reference-fade;
}
.studio-background-video video {
object-position: center;
}
.home-hero .hero-content {
max-width: 390px;
animation: none;
top: 130px;
left: 70px;
}
.home-hero .hero-content h1 {
font-size: 62px;
line-height: 1.03;
animation: 1s both reference-fade-up;
}
.hero-line > span {
animation: none;
transform: none;
}
.hero-line {
overflow: visible;
}
.hero-actions {
animation: 1s .1s both reference-fade-up;
}
.hero-side {
background: none;
border-radius: 0;
width: 230px;
padding: 0;
animation: 1s .3s both reference-fade-up;
top: 130px;
right: 70px;
}
.hero-side p {
text-shadow: 0 1px 6px var(--hero-ink);
font-size: 15px;
line-height: 1.7;
}
.hero-preview {
aspect-ratio: auto;
border-radius: 32px;
height: 280px;
margin-top: 28px;
}
.hero-preview img {
object-position: center 25%;
}
.hero-note {
animation: 1s .3s both reference-fade-up;
bottom: 70px;
left: 70px;
}
.hero-explore {
animation: 1s .4s both reference-fade-up;
bottom: 70px;
right: 135px;
}
.video-toggle {
bottom: 58px;
right: 70px;
}
.motion-reveal {
transition: opacity 1s, transform 1s;
transform: translateY(60px);
}
.aery-heading > h2, .aery-about-photo, .aery-clients > :nth-child(2) {
transition-delay: .1s;
}
.aery-clients > :nth-child(3) {
transition-delay: .2s;
}
.aery-clients > :nth-child(4) {
transition-delay: .3s;
}
.aery-clients > :nth-child(5) {
transition-delay: .4s;
}
.aery-clients > :nth-child(6) {
transition-delay: .5s;
}
.aery-marquee.motion-reveal {
transform: none;
}
.aery-work > h2.motion-character-title {
opacity: 1;
transition: none;
transform: none;
}
.motion-word {
white-space: nowrap;
display: inline-block;
}
.motion-char {
opacity: 0;
display: inline-block;
}
.motion-visible .motion-char {
opacity: 1;
}
.aery-service-item:hover {
transform: none;
}
.hero-explore svg {
animation: none;
}
.aery-service-item:nth-child(4) {
transition-delay: .1s;
}
.aery-service-item:nth-child(5) {
transition-delay: .2s;
}
.project-cover-frame {
aspect-ratio: 3 / 2;
background: var(--muted);
border-radius: inherit;
width: 100%;
display: grid;
overflow: hidden;
}
.project-cover-frame.cover-pair {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 8px;
}
.project-cover-frame img, .aery-project .project-cover-frame img, .aery-project:nth-of-type(3n+1) .project-cover-frame img {
object-fit: cover;
object-position: center 25%;
aspect-ratio: auto;
width: 100%;
height: 100%;
min-height: 0;
}
.aery-project .project-cover-frame {
aspect-ratio: 3 / 2;
height: auto;
}
.project-cover-frame.case-cover {
aspect-ratio: 3 / 2;
max-width: 1150px;
height: auto;
}
@keyframes reference-fade {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes reference-fade-up {
from {
opacity: 0;
transform: translateY(60px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.hero-main-photo {
display: block;
position: absolute;
inset: 0;
}
.hero-main-photo img {
object-fit: cover;
object-position: center;
width: 100%;
height: 100%;
}
.hero-mini-slideshow {
background: var(--hero-ink);
border-radius: 32px;
width: 100%;
height: 280px;
margin-top: 28px;
position: relative;
overflow: hidden;
}
.hero-mini-frame {
opacity: 0;
visibility: hidden;
transition: opacity 1.5s, visibility 1.5s;
position: absolute;
inset: 0;
}
.hero-mini-frame.is-active {
opacity: 1;
visibility: visible;
}
.hero-mini-frame img {
object-fit: cover;
object-position: center 25%;
width: 100%;
height: 100%;
}
.mini-caption {
color: var(--on-image);
background: var(--hero-copy-shade);
padding: 20px 45px 16px 16px;
font-size: 12px;
line-height: 1.4;
position: absolute;
bottom: 0;
left: 0;
right: 0;
}
.mini-pause {
background: var(--hero-ink);
width: 32px;
height: 32px;
color: var(--on-image);
border-radius: 50%;
position: absolute;
bottom: 8px;
right: 8px;
}
.mini-pause:hover {
background: var(--hero-copy-surface);
color: var(--on-image);
}
@media (width <= 1050px) {
.site-header {
height: 58px;
padding-inline: 30px;
}
.desktop-nav, .header-cta {
display: none;
}
.mobile-menu-button {
display: inline-flex;
}
.mobile-nav {
background: var(--background);
padding: 20px 30px;
position: absolute;
top: 58px;
left: 0;
right: 0;
}
.mobile-nav a {
justify-content: space-between;
padding: 12px 0;
font-size: 24px;
display: flex;
}
.home-hero .hero-content {
max-width: 335px;
top: 90px;
left: 30px;
}
.home-hero .hero-content h1 {
font-size: 57px;
}
.hero-side {
width: 230px;
top: 90px;
right: 30px;
}
.hero-note {
display: block;
bottom: 30px;
left: 30px;
}
.hero-explore {
bottom: 30px;
right: 95px;
}
.video-toggle {
bottom: 20px;
right: 30px;
}
}
@media (width <= 700px) {
.header-logo {
width: 165px;
}
.site-header {
padding-inline: 20px;
}
.home-hero {
height: 100svh;
min-height: 650px;
max-height: none;
}
.home-hero .hero-content {
max-width: none;
top: 65px;
left: 20px;
right: 20px;
}
.home-hero .hero-content h1 {
font-size: 52px;
}
.hero-side {
background: var(--hero-copy-surface);
border-radius: 18px;
width: auto;
padding: 16px;
inset: auto 20px 90px;
}
.hero-side p {
font-size: 14px;
}
.hero-note, .hero-preview {
display: none;
}
.hero-explore {
bottom: 30px;
left: 20px;
right: auto;
}
.video-toggle {
bottom: 20px;
right: 20px;
}
.project-cover-frame, .aery-project .project-cover-frame, .project-cover-frame.case-cover {
aspect-ratio: 4 / 5;
height: auto;
}
.project-cover-frame.cover-pair {
grid-template-columns: 1fr;
gap: 0;
}
.cover-companion {
display: none;
}
}
@media (width <= 380px) {
.home-hero .hero-content h1 {
font-size: 48px;
}
}
@media (width <= 700px) {
.hero-side {
background: none;
width: 135px;
padding: 0;
bottom: 68px;
left: auto;
right: 20px;
}
.hero-side > p {
display: none;
}
.hero-mini-slideshow {
border-radius: 20px;
height: 155px;
margin: 0;
}
.mini-caption {
padding: 10px 35px 12px 10px;
font-size: 9px;
}
.mini-pause {
width: 26px;
height: 26px;
}
.home-hero .hero-content {
top: 42px;
}
.home-hero .hero-content h1 {
font-size: 48px;
}
.hero-main-photo img {
object-position: center 62%;
}
}
@media (prefers-reduced-motion: reduce) {
.motion-reveal {
transition: none;
transform: none;
}
.home-hero, .home-hero .hero-content, .hero-actions, .hero-side, .hero-note, .hero-explore {
animation: none;
}
}
.career-culture {
grid-template-columns: 1fr 1fr;
align-items: center;
gap: 70px;
padding-bottom: 90px;
display: grid;
}
.career-culture > img {
aspect-ratio: 4 / 5;
object-fit: cover;
border-radius: 28px;
width: 100%;
}
.career-culture h2 {
margin-block: 22px;
font-size: 60px;
}
.career-culture p, .career-description p, .career-application p {
color: var(--muted-foreground);
font-size: 15px;
line-height: 1.8;
}
.career-culture ul {
flex-wrap: wrap;
gap: 22px;
margin-top: 30px;
padding: 0;
list-style: none;
display: flex;
}
.career-culture li {
border-bottom: 1px solid var(--border);
padding-bottom: 10px;
font-size: 14px;
}
.career-openings {
padding-bottom: 110px;
}
.career-openings > h2 {
margin: 20px 0 45px;
}
.career-opening {
border-top: 1px solid var(--border);
grid-template-columns: 40px minmax(0, 1fr) auto;
align-items: center;
gap: 30px;
padding-block: 35px;
display: grid;
}
.career-opening h3 {
font-family: var(--font-display);
font-size: 36px;
line-height: 1.15;
}
.career-opening p {
color: var(--muted-foreground);
margin-top: 12px;
font-size: 14px;
line-height: 1.8;
}
.career-opening > a {
gap: 15px;
}
.career-back {
padding-top: 32px;
}
.career-back + .page-intro {
padding-top: 45px;
}
.career-description {
grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
gap: 100px;
padding-bottom: 100px;
display: grid;
}
.career-description h2 {
margin-bottom: 25px;
font-size: 48px;
}
.career-description h3 {
margin: 35px 0 18px;
font-size: 20px;
}
.career-description ul {
padding-left: 20px;
font-size: 15px;
line-height: 1.9;
}
.career-description li + li {
margin-top: 10px;
}
.career-description aside {
border-top: 1px solid var(--border);
align-self: start;
padding-top: 30px;
}
.career-description aside h2 {
margin-top: 20px;
}
.career-description aside button {
gap: 18px;
margin-top: 25px;
}
.career-application {
border-top: 1px solid var(--border);
grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr);
gap: 70px;
padding-block: 70px 110px;
scroll-margin-top: 90px;
display: grid;
}
.career-application h2 {
overflow-wrap: anywhere;
margin: 20px 0;
font-size: 46px;
}
.career-application label span {
color: var(--muted-foreground);
}
@media (width <= 1050px) {
.career-culture, .career-description, .career-application {
gap: 35px;
}
.career-culture h2 {
font-size: 48px;
}
}
@media (width <= 700px) {
.career-culture, .career-description, .career-application {
grid-template-columns: 1fr;
gap: 35px;
}
.career-culture {
padding-bottom: 65px;
}
.career-culture h2 {
font-size: 46px;
}
.career-openings {
padding-bottom: 65px;
}
.career-opening {
grid-template-columns: 24px minmax(0, 1fr);
gap: 16px;
}
.career-opening h3 {
font-size: 30px;
}
.career-opening > a {
grid-column: 2;
justify-self: start;
}
.career-description {
padding-bottom: 65px;
}
.career-description h2 {
font-size: 40px;
}
.career-application {
padding-block: 50px 70px;
}
.career-application h2 {
font-size: 40px;
}
}
@property --tw-translate-x {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-translate-y {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-translate-z {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-rotate-x {
syntax: "*";
inherits: false
}
@property --tw-rotate-y {
syntax: "*";
inherits: false
}
@property --tw-rotate-z {
syntax: "*";
inherits: false
}
@property --tw-skew-x {
syntax: "*";
inherits: false
}
@property --tw-skew-y {
syntax: "*";
inherits: false
}
@property --tw-space-y-reverse {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-space-x-reverse {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-border-style {
syntax: "*";
inherits: false;
initial-value: solid;
}
@property --tw-leading {
syntax: "*";
inherits: false
}
@property --tw-font-weight {
syntax: "*";
inherits: false
}
@property --tw-tracking {
syntax: "*";
inherits: false
}
@property --tw-ordinal {
syntax: "*";
inherits: false
}
@property --tw-slashed-zero {
syntax: "*";
inherits: false
}
@property --tw-numeric-figure {
syntax: "*";
inherits: false
}
@property --tw-numeric-spacing {
syntax: "*";
inherits: false
}
@property --tw-numeric-fraction {
syntax: "*";
inherits: false
}
@property --tw-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
syntax: "*";
inherits: false
}
@property --tw-shadow-alpha {
syntax: "<percentage>";
inherits: false;
initial-value: 100%;
}
@property --tw-inset-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
syntax: "*";
inherits: false
}
@property --tw-inset-shadow-alpha {
syntax: "<percentage>";
inherits: false;
initial-value: 100%;
}
@property --tw-ring-color {
syntax: "*";
inherits: false
}
@property --tw-ring-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
syntax: "*";
inherits: false
}
@property --tw-inset-ring-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
syntax: "*";
inherits: false
}
@property --tw-ring-offset-width {
syntax: "<length>";
inherits: false;
initial-value: 0;
}
@property --tw-ring-offset-color {
syntax: "*";
inherits: false;
initial-value: #fff;
}
@property --tw-ring-offset-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-outline-style {
syntax: "*";
inherits: false;
initial-value: solid;
}
@property --tw-blur {
syntax: "*";
inherits: false
}
@property --tw-brightness {
syntax: "*";
inherits: false
}
@property --tw-contrast {
syntax: "*";
inherits: false
}
@property --tw-grayscale {
syntax: "*";
inherits: false
}
@property --tw-hue-rotate {
syntax: "*";
inherits: false
}
@property --tw-invert {
syntax: "*";
inherits: false
}
@property --tw-opacity {
syntax: "*";
inherits: false
}
@property --tw-saturate {
syntax: "*";
inherits: false
}
@property --tw-sepia {
syntax: "*";
inherits: false
}
@property --tw-drop-shadow {
syntax: "*";
inherits: false
}
@property --tw-drop-shadow-color {
syntax: "*";
inherits: false
}
@property --tw-drop-shadow-alpha {
syntax: "<percentage>";
inherits: false;
initial-value: 100%;
}
@property --tw-drop-shadow-size {
syntax: "*";
inherits: false
}
@property --tw-duration {
syntax: "*";
inherits: false
}
@property --tw-ease {
syntax: "*";
inherits: false
}
@property --tw-content {
syntax: "*";
inherits: false;
initial-value: "";
}
@keyframes pulse {
50% {
opacity: .5;
}
}
@keyframes enter {
from {
opacity: var(--tw-enter-opacity, 1);
transform: translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0)scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1))rotate(var(--tw-enter-rotate, 0));
filter: blur(var(--tw-enter-blur, 0));
}
}
@keyframes exit {
to {
opacity: var(--tw-exit-opacity, 1);
transform: translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0)scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1))rotate(var(--tw-exit-rotate, 0));
filter: blur(var(--tw-exit-blur, 0));
}
}
@keyframes accordion-down {
from {
height: 0;
}
to {
height: var(--radix-accordion-content-height, var(--bits-accordion-content-height, var(--reka-accordion-content-height, var(--kb-accordion-content-height, var(--ngp-accordion-content-height, auto)))));
}
}
@keyframes accordion-up {
from {
height: var(--radix-accordion-content-height, var(--bits-accordion-content-height, var(--reka-accordion-content-height, var(--kb-accordion-content-height, var(--ngp-accordion-content-height, auto)))));
}
to {
height: 0;
}
}
@keyframes caret-blink {
0%, 70%, 100% {
opacity: 1;
}
20%, 50% {
opacity: 0;
}
}
