@layer base {b, strong { font-weight: bolder; }
ol, ul, menu { list-style: none; }
}
@layer utilities {.my-8 { margin-block: calc(var(--spacing) * 8); }
.mt-4 { margin-top: calc(var(--spacing) * 4); }
.mb-1 { margin-bottom: calc(var(--spacing) * 1); }
.mb-3 { margin-bottom: calc(var(--spacing) * 3); }
.mb-8 { margin-bottom: calc(var(--spacing) * 8); }
.mb-10 { margin-bottom: calc(var(--spacing) * 10); }
.grid { display: grid; }
.max-w-3xl { max-width: var(--container-3xl); }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0px, 1fr)); }
.gap-1 { gap: calc(var(--spacing) * 1); }
.gap-4 { gap: calc(var(--spacing) * 4); }
.gap-8 { gap: calc(var(--spacing) * 8); }
.gap-10 { gap: calc(var(--spacing) * 10); }
: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-y-6 > :not(:last-child)) { --tw-space-y-reverse: 0; margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse)); margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse))); }
.border-y { border-block-style: var(--tw-border-style); border-block-width: 1px; }
.bg-background\/95 { background-color: hsl(var(--background)); }
@supports (color:color-mix(in lab,red,red)) {.bg-background\/95 { background-color: color-mix(in oklab,hsl(var(--background)) 95%,transparent); }
}
.bg-\[radial-gradient\(ellipse_at_center\,rgba\(217\,165\,32\,0\.04\)\,transparent_70\%\)\] { background-image: radial-gradient(rgba(217, 165, 32, 0.04), rgba(0, 0, 0, 0) 70%); }
.px-8 { padding-inline: calc(var(--spacing) * 8); }
.py-6 { padding-block: calc(var(--spacing) * 6); }
.py-12 { padding-block: calc(var(--spacing) * 12); }
.py-14 { padding-block: calc(var(--spacing) * 14); }
.py-16 { padding-block: calc(var(--spacing) * 16); }
.pt-12 { padding-top: calc(var(--spacing) * 12); }
.pb-8 { padding-bottom: calc(var(--spacing) * 8); }
.text-left { text-align: left; }
.text-3xl { font-size: var(--text-3xl); line-height: var(--tw-leading,var(--text-3xl--line-height)); }
.text-\[10px\] { font-size: 10px; }
.leading-none { --tw-leading: 1; line-height: 1; }
.leading-relaxed { --tw-leading: var(--leading-relaxed); line-height: var(--leading-relaxed); }
.text-muted-foreground\/40 { color: hsl(var(--muted-foreground)); }
@supports (color:color-mix(in lab,red,red)) {.text-muted-foreground\/40 { color: color-mix(in oklab,hsl(var(--muted-foreground)) 40%,transparent); }
}
.text-muted-foreground\/55 { color: hsl(var(--muted-foreground)); }
@supports (color:color-mix(in lab,red,red)) {.text-muted-foreground\/55 { color: color-mix(in oklab,hsl(var(--muted-foreground)) 55%,transparent); }
}
.italic { font-style: italic; }
.underline { text-decoration-line: underline; }
.underline-offset-4 { text-underline-offset: 4px; }
.opacity-40 { opacity: 0.4; }
.opacity-60 { opacity: 0.6; }
@media (hover: hover) {.hover\:opacity-100:hover { opacity: 1; }
}
@media (min-width: 40rem) {.sm\:w-auto { width: auto; }
.sm\:flex-row { flex-direction: row; }
.sm\:gap-16 { gap: calc(var(--spacing) * 16); }
.sm\:text-left { text-align: left; }
}
@media (min-width: 48rem) {.md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.md\:px-8 { padding-inline: calc(var(--spacing) * 8); }
.md\:py-16 { padding-block: calc(var(--spacing) * 16); }
.md\:py-24 { padding-block: calc(var(--spacing) * 24); }
.md\:text-center { text-align: center; }
.md\:text-4xl { font-size: var(--text-4xl); line-height: var(--tw-leading,var(--text-4xl--line-height)); }
}
body:has(.public-site[data-public-page="true"]) [class~="opacity-40"] { opacity: 1; color: hsl(var(--muted-foreground)); }
body:has(.public-site[data-public-page="true"]) :is([class~="opacity-60"], [class~="opacity-70"], [class~="opacity-80"]) { opacity: 1; }
.site-width-text { max-width: var(--w-text); }
}
.home-closing-line { font-family: var(--app-font-serif); color: hsl(var(--foreground)); text-align: center; margin: 0px 0px 16px; font-size: 20px; font-style: italic; font-weight: 400; line-height: 1.3; }
@media (min-width: 768px) {.home-closing-line { font-size: 24px; }
}
.home-where-heard .where-heard { text-align: center; margin: 40px 0px 0px; }
.home-where-heard .where-heard .where-heard-heading { font-family: var(--app-font-sans); text-transform: uppercase; letter-spacing: 0.1em; color: hsl(var(--primary)); margin-bottom: 16px; font-size: 12px; font-weight: 500; line-height: 1.4; }
.home-where-heard .where-heard .where-heard-list { font-family: var(--app-font-sans); padding: 0px; font-size: 15px; font-weight: 300; line-height: 1.6; list-style: none; }
.home-where-heard .where-heard .where-heard-list > li + li { margin-top: 6px; }
.home-sample-eyebrow { font-family: var(--app-font-sans); text-transform: uppercase; letter-spacing: 0.14em; color: hsl(var(--primary)); text-align: center; margin: 0px 0px 24px; font-size: 12px; font-weight: 500; }
.home-practice-link { color: hsl(var(--primary)); text-underline-offset: 4px; text-decoration: underline; }
.drawn-hero { --dh-navy: hsl(var(--background)); --dh-navy-2: hsl(var(--card)); --dh-gold: hsl(var(--primary)); --dh-gold-soft: hsl(var(--primary)); --dh-cream: #f1ede4; --dh-offwhite: hsl(var(--foreground)); --t-house: 1.2s; --t-side: .5s; --stagger: .26s; --start-oct: 1.5s; --start-labels: 1.8s; --t-end: 4.3s; background: var(--dh-navy); padding: 0px 16px; }
.dh-wrap { text-align: center; max-width: 1040px; margin: 0px auto; padding: 28px 0px 40px; }
.dh-eyebrow { font: 500 11px/1.4 var(--app-font-sans); letter-spacing: 0.18em; text-transform: uppercase; color: var(--dh-gold-soft); margin: 0px 0px 14px; }
.drawn-hero .dh-h1 { font-family: var(--app-font-serif); letter-spacing: 0px; text-wrap: balance; max-width: 16em; color: var(--dh-offwhite); margin: 0px auto 6px; font-size: clamp(30px, 4.6vw, 50px); font-weight: 600; line-height: 1.1; }
.dh-stage { aspect-ratio: 1424 / 900; width: min(100%, 760px, max(320px, 158.2dvh - 791px)); margin: 10px auto 0px; position: relative; }
.dh-stage::before { content: ""; background: radial-gradient(circle,var(--dh-navy-2) 0%,transparent 70%); opacity: 0; border-radius: 50%; animation: 1.2s ease-out 0.2s 1 normal forwards running dh-fade; position: absolute; inset: 12%; }
.dh-stage svg { width: 100%; height: 100%; display: block; position: absolute; inset: 0px; overflow: visible; }
.dh-svg-narrow { display: none !important; }
.dh-after { animation: dh-soft .7s ease-out var(--t-end) both; margin-top: 14px; }
.dh-line { font-family: var(--app-font-serif); color: var(--dh-cream); text-wrap: balance; max-width: 22em; margin: 0px auto 20px; font-size: clamp(19px, 2.6vw, 27px); line-height: 1.3; }
.drawn-hero .dh-cta { min-height: var(--btn-h); background: var(--dh-gold); color: var(--dh-navy); font: 500 17px var(--app-font-sans); border: 0px; border-radius: 4px; justify-content: center; align-items: center; padding: 0px 28px; text-decoration: none; display: inline-flex; }
.drawn-hero .dh-cta:focus-visible { outline: 2px solid var(--dh-offwhite); outline-offset: 3px; }
.drawn-hero .house { fill: var(--dh-cream); fill-opacity: 0; stroke: var(--dh-gold); stroke-width: 10px; stroke-linejoin: round; stroke-dasharray: 2200; stroke-dashoffset: 2200px; animation: dh-draw var(--t-house) cubic-bezier(.4,0,.2,1) .25s forwards,dh-fillin .6s ease-out 1.25s forwards; }
.drawn-hero .door { fill: var(--dh-navy); opacity: 0; animation: 0.4s ease-out 1.6s 1 normal forwards running dh-fade; }
.drawn-hero .side, .drawn-hero .hair { stroke: var(--dh-gold); stroke-linecap: round; fill: none; stroke-dasharray: 300; stroke-dashoffset: 300px; animation: dh-draw var(--t-side) cubic-bezier(.4,0,.2,1) forwards; }
.drawn-hero .side { stroke-width: 12px; }
.drawn-hero .hair { stroke-width: 2.5px; opacity: 0.9; }
.drawn-hero .tick { fill: var(--dh-gold-soft); opacity: 0; animation: 0.5s ease-out 0s 1 normal forwards running dh-tick; }
.drawn-hero .side:first-child, .drawn-hero .tick:first-child { --k: 0; }
.drawn-hero .side:nth-child(2), .drawn-hero .tick:nth-child(2) { --k: 1; }
.drawn-hero .side:nth-child(3), .drawn-hero .tick:nth-child(3) { --k: 2; }
.drawn-hero .side:nth-child(4), .drawn-hero .tick:nth-child(4) { --k: 3; }
.drawn-hero .side:nth-child(5), .drawn-hero .tick:nth-child(5) { --k: 4; }
.drawn-hero .side:nth-child(6), .drawn-hero .tick:nth-child(6) { --k: 5; }
.drawn-hero .side:nth-child(7), .drawn-hero .tick:nth-child(7) { --k: 6; }
.drawn-hero .side:nth-child(8), .drawn-hero .tick:nth-child(8) { --k: 7; }
.drawn-hero .hair:first-child { --k: 0; }
.drawn-hero .hair:nth-child(2) { --k: 1; }
.drawn-hero .hair:nth-child(3) { --k: 2; }
.drawn-hero .hair:nth-child(4) { --k: 3; }
.drawn-hero .hair:nth-child(5) { --k: 4; }
.drawn-hero .hair:nth-child(6) { --k: 5; }
.drawn-hero .hair:nth-child(7) { --k: 6; }
.drawn-hero .hair:nth-child(8) { --k: 7; }
.drawn-hero .side { animation-delay: calc(var(--start-oct) + var(--k) * var(--stagger)); }
.drawn-hero .hair { animation-delay: calc(var(--start-oct) + var(--k) * var(--stagger) + .3s); }
.drawn-hero .tick { animation-delay: calc(var(--start-oct) + var(--k) * var(--stagger) + .4s); }
.drawn-hero .lbl { font: 500 30px var(--app-font-sans); letter-spacing: 0.14em; text-transform: uppercase; fill: var(--dh-cream); opacity: 0; transform-box: fill-box; transform-origin: 50% center; animation-duration: 0.55s; animation-timing-function: cubic-bezier(0.2, 0.8, 0.2, 1); animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: forwards; animation-play-state: running; animation-name: dh-settle; animation-timeline: auto; animation-range: normal; animation-delay: calc(var(--start-labels) + var(--k) * var(--stagger)); transform: translateY(8px); }
.drawn-hero .lbl .n { font: 500 40px var(--app-font-serif); letter-spacing: 0px; fill: var(--dh-gold-soft); }
.drawn-hero .lbl-rule { stroke: var(--dh-gold); stroke-width: 2px; transform-box: fill-box; transition: transform 0.22s ease-out; transform: scaleX(0); }
.drawn-hero .lbl-link[data-copy-key="PILLAR_LBL_1"] .lbl-rule, .drawn-hero .lbl-link[data-copy-key="PILLAR_LBL_5"] .lbl-rule { transform-origin: 50% center; }
.drawn-hero .lbl-link:is([data-copy-key="PILLAR_LBL_6"], [data-copy-key="PILLAR_LBL_7"], [data-copy-key="PILLAR_LBL_8"]) .lbl-rule { transform-origin: 100% center; }
.drawn-hero .lbl-link:is([data-copy-key="PILLAR_LBL_2"], [data-copy-key="PILLAR_LBL_3"], [data-copy-key="PILLAR_LBL_4"]) .lbl-rule { transform-origin: 0px center; }
.drawn-hero .lbl-link { outline: none; }
.drawn-hero .lbl-link:hover .lbl-rule, .drawn-hero .lbl-link:focus-visible .lbl-rule { transform: scaleX(1); }
.dh-list { text-align: left; grid-template-columns: 1fr; gap: 0px; max-width: 300px; margin: 10px auto 0px; padding: 0px; list-style: none; display: none; }
.dh-list li { font: 500 12.5px/1.3 var(--app-font-sans); letter-spacing: 0.12em; text-transform: uppercase; white-space: nowrap; color: var(--dh-cream); opacity: 0; animation-duration: 0.55s; animation-timing-function: cubic-bezier(0.2, 0.8, 0.2, 1); animation-iteration-count: 1; animation-direction: normal; animation-fill-mode: forwards; animation-play-state: running; animation-name: dh-settle; animation-timeline: auto; animation-range: normal; animation-delay: calc(var(--start-labels) + var(--k) * var(--stagger)); border-bottom: 1px solid rgba(176, 141, 60, 0.22); grid-template-columns: 28px 1fr; align-items: baseline; padding: 7px 0px; display: grid; transform: translateY(6px); }
.dh-list li:last-child { border-bottom: 0px; }
.dh-list li b { font: 500 17px var(--app-font-serif); letter-spacing: 0px; color: var(--dh-gold-soft); }
.dh-list a { color: inherit; outline: none; text-decoration: none; }
.dh-list a span { background: linear-gradient(hsl(var(--primary)),hsl(var(--primary))) left bottom / 0 1px no-repeat; padding-bottom: 2px; transition: background-size 0.22s ease-out; }
.dh-list a:hover span, .dh-list a:focus-visible span { background-size: 100% 1px; }
@media (max-width: 600px) {.dh-labels, .dh-svg-wide { display: none !important; }
.dh-svg-narrow { visibility: visible; display: block !important; }
.dh-list { display: grid; }
.dh-stage { aspect-ratio: 1 / 1; width: min(100%, 300px); }
.dh-after { margin-top: 22px; }
}
@media (prefers-reduced-motion: reduce) {.drawn-hero :is(.house, .side, .hair, .lbl, .tick, .door, .dh-after, .dh-list li), .dh-stage::before { animation: auto ease 0s 1 normal none running none !important; }
.drawn-hero .house { stroke-dashoffset: 0; fill-opacity: 1; }
.drawn-hero :is(.side, .hair) { stroke-dashoffset: 0; }
.drawn-hero :is(.lbl, .tick, .door, .dh-after, .dh-list li), .dh-stage::before { opacity: 1; transform: none; }
}
