/* Larger headlines, selective alignment and the user's beige, rose and teal palette. */
:root { --porcelain: #f5f1ea; --cream: #eee6de; --brand-maroon: #9f0233; --maroon: #9f0233; --highlight: #f3bfd2; --rose: #f3bfd2; --soft-pink: #f3bfd2; --accent-on-light: #b95b7e; --gold: #f3bfd2; --gold-deep: #b95b7e; --teal: #0f4a4c; --teal-footer: #083639; --heading-section: clamp(32px,3.9vw,52px); }
body { background: var(--porcelain); }
::selection { background: var(--highlight); color: var(--teal-footer); }
body[class] main h2 { font-size: var(--heading-section); }
body[class] main .hero h1 { font-size: clamp(38px,4.5vw,62px); }
body.page-index main .hero h1 { font-size: clamp(42px,5.7vw,82px); max-width: 1120px; }
body.page-index main .hero-sub { font-family: var(--body); font-size: 14px; font-weight: 400; text-transform: none; letter-spacing: 0; line-height: 1.85; max-width: 740px; }
.flourish { color: var(--accent-on-light); }
.hero .flourish, .dark .flourish, .paths .flourish, .final .flourish, .statement .glow, .tier .tier-subtitle, .tier .meta { color: var(--highlight); }
.mobile-menu { background: var(--brand-maroon); }
.client-band { background: var(--brand-maroon); }
header .logo .brand-wordmark { width: 146px; height: auto; max-height: 48px; }
.brand-logo { min-width: 146px; }
.menu-brand .brand-wordmark { width: 146px; }
.exceptional .wrap { max-width: 1320px; padding-inline: 5vw; }
.exceptional h2 { max-width: 1000px; }
.exceptional p { max-width: none; }
.standout .wrap { max-width: 1280px; }
.standout h2, .statement h2 { max-width: 1000px; }
.standout p { max-width: none; }
.work-strip { max-width: 1320px; gap: 48px; padding-inline: 5vw; }
.pillars .grid { gap: 44px; }
.pillar { background: var(--teal); color: #fff; }
body[class] main .pillar h3 { color: #fff; text-align: left; justify-content: flex-start; margin-inline: 22px; }
body[class] main .pillar p { color: #f3f0e9; text-align: left; margin-inline: 22px; font-size: 12.5px; }
.pillar .text-link { color: var(--highlight); border-color: var(--highlight); align-self: flex-start; margin: auto 22px 0; }
.founder .cols > div:last-child { text-align: left; }
body[class] main .founder :is(h2,p) { text-align: left; margin-inline: 0; }
.founder p { max-width: 65ch; }
.tiers .grid { gap: 56px; }
.tier .btn { width: 132px; height: 32px; min-height: 32px; font-size: 8.5px !important; letter-spacing: .08em !important; padding-inline: 8px !important; overflow: visible; }
.tier .btn::after { inset: -6px 0; }
.tier .btn::before { border-radius: inherit; }
.tier-copy { grid-template-rows: 48px 42px 88px 18px 44px; }
.tier .tier-copy h3 { width: 100%; max-width: 100%; font-size: 18px; }
body[class] main .tier .tier-description { line-height: 1.65; }
.peek .grid { gap: 56px; max-width: 1180px; padding-inline: 5vw; }
.peek .home-showcase { display: block; border-radius: 2px; overflow: hidden; }
.peek .home-showcase img { width: 100%; height: auto; aspect-ratio: 1080 / 1600; object-fit: contain; }
.peek .cta .btn { display: inline-flex; width: auto; align-items: center; justify-content: center; }
body[class] main .svc h2 { font-size: clamp(30px,3vw,40px); }
.case-tier-guide, .case-tier-options, .case-tier-options a { text-align: left; }
body[class] main .case-tier-guide :is(h2,p) { text-align: left; margin-inline: 0; }
.case-tier-options a { align-items: flex-start; }
body[class] main .case-scope h2 { font-size: 22px; }
body[class] main .case-tier-guide h2 { font-size: 38px; }
footer { background: var(--teal-footer); text-align: left; }
footer > .wrap { max-width: none; padding-inline: 5vw; }
.foot-grid { grid-template-columns: 1.4fr 1fr 1fr; gap: 64px; }
.footer-brand { width: 180px; margin: 0 0 22px; }
.foot-grid p { margin-inline: 0; text-align: left; color: #ece7df; }
.foot-list a { color: #f4efe8; }
.foot-list .label { color: var(--highlight); }
.foot-bottom { width: 100vw; margin-inline: -5vw; padding: 30px 5vw 0; justify-content: space-between; border-top-color: #ffffff50; color: #dfdfd5; }
.foot-bottom a { color: #f4efe8; }
@media(min-width:1100px) { .desktop-copy-line { display: block; } }
@media(max-width:1100px) {
 .tiers .grid { gap: 44px; }
 .tier-copy { grid-template-rows: 40px 36px 62px 18px 44px; }
}
@media(max-width:900px) {
 .foot-grid { grid-template-columns: 1fr 1fr; gap: 44px; }
 .foot-grid > div:first-child { grid-column: 1 / -1; }
 .work-strip { gap: 32px; }
 .peek .grid { gap: 32px; }
}
@media(max-width:620px) {
 body[class] main h2 { font-size: 34px; }
 body[class] main .hero h1 { font-size: 39px; }
 body.page-index main .hero h1 { font-size: 42px; }
 body.page-index main .hero-sub { font-size: 13px; max-width: 33ch; }
 header .logo .brand-wordmark, .menu-brand .brand-wordmark { width: 120px; }
 .brand-logo { min-width: 120px; }
 .exceptional h2 { max-width: 340px; }
 .exceptional p, .standout p { max-width: 42ch; }
 .work-strip { gap: 32px; }
 .tiers .grid { gap: 40px; }
 .tier-copy { grid-template-rows: 36px 32px 58px 18px 44px; }
 .peek .grid { grid-template-columns: 1fr; gap: 36px; padding-inline: 6vw; }
 .peek .home-showcase { max-width: 420px; margin-inline: auto; }
 .foot-grid { grid-template-columns: 1fr; gap: 36px; }
 .foot-grid > div:first-child { grid-column: auto; }
 .footer-brand { width: 160px; }
 .foot-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
 body[class] main .case-tier-guide h2 { font-size: 32px; }
 body[class] main .case-scope h2 { font-size: 22px; }
}
