Skip to content
:root {
--bg: #111110;
--bg-2: #191814;
--bg-3: #1d1c18;
--ink: #F0EDE6;
--ink-dim: rgba(240, 237, 230, 0.62);
--ink-mute: rgba(240, 237, 230, 0.38);
--hairline: rgba(240, 237, 230, 0.14);
--hairline-strong: rgba(240, 237, 230, 0.24);
--gold: #ffbd59;
--gold-soft: rgba(255, 189, 89, 0.10);
--gold-line: rgba(255, 189, 89, 0.35);
--max: 1320px;
--pad-x: clamp(24px, 5vw, 80px);
--section-y: clamp(96px, 12vw, 160px);
}
*, *::before, *::after { box-sizing: border-box; }
html, body {
margin: 0;
padding: 0;
background: var(--bg);
color: var(--ink);
font-family: 'DM Sans', system-ui, sans-serif;
font-size: 18px;
line-height: 1.5;
-webkit-font-smoothing: antialiased;
text-rendering: geometricPrecision;
overflow-x: hidden;
}
/* grid background removed from body — only in hero */
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { font-family: inherit; cursor: pointer; }
.container {
max-width: var(--max);
margin: 0 auto;
padding-left: var(--pad-x);
padding-right: var(--pad-x);
position: relative;
}
/*
────────────────────────────────────────
TYPOGRAPHY ── */
.eyebrow {
font-family: 'Playfair Display', serif;
font-style: italic;
font-weight: 500;
font-size: clamp(15px, 1.2vw, 18px);
color: var(--gold);
letter-spacing: 0.04em;
margin: 0 0 20px 0;
display: inline-flex;
align-items: center;
gap: 14px;
}
.eyebrow::before {
content: "";
display: inline-block;
width: 28px;
height: 1px;
background: var(--gold);
opacity: 0.7;
}
.gold-italic, .gi {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-weight: 500;
}
h1, h2, h3, h4 { font-weight: 500; letter-spacing: -0.02em; margin: 0; text-wrap: balance; }
h1 { font-size: clamp(40px, 4.8vw, 68px); line-height: 1.02; letter-spacing: -0.028em; }
h2 { font-size: clamp(36px, 4vw, 58px); line-height: 1.05; }
h3 { font-size: clamp(22px, 1.8vw, 28px); line-height: 1.15; }
h4 { font-size: clamp(18px, 1.3vw, 20px); line-height: 1.2; }
p { margin: 0; text-wrap: pretty; }
.lede { font-size: clamp(18px, 1.4vw, 22px); color: var(--ink-dim); line-height: 1.5; }
/*
────────────────────────────────────────
BUTTONS ── */
.btn {
display: inline-flex;
align-items: center;
gap: 12px;
padding: 16px 26px;
border: 1px solid var(--gold);
background: var(--gold);
color: #111110;
font-weight: 500;
font-size: 16px;
letter-spacing: -0.005em;
transition: transform .15s ease, background .2s ease;
border-radius: 0;
}
.btn:hover { transform: translateY(-1px); }
.btn.btn-ghost {
background: transparent;
color: var(--ink);
border-color: var(--hairline-strong);
}
.btn.btn-ghost:hover { border-color: var(--gold); color: var(--gold); }
.btn .arrow {
display: inline-block;
transition: transform .2s ease;
}
.btn:hover .arrow { transform: translateX(4px); }
/*
────────────────────────────────────────
NAV ── */
.nav {
position: sticky;
top: 0;
z-index: 100;
background: rgba(17, 17, 16, 0.78);
backdrop-filter: blur(14px);
-webkit-backdrop-filter: blur(14px);
border-bottom: 1px solid var(--hairline);
}
.nav-inner {
display: flex;
align-items: center;
justify-content: space-between;
height: 76px;
gap: 32px;
}
.logo {
display: inline-flex;
align-items: center;
gap: 10px;
font-family: 'DM Sans', sans-serif;
font-weight: 500;
font-size: 19px;
letter-spacing: -0.01em;
color: var(--ink);
}
.logo .mark {
width: 28px;
height: 28px;
display: inline-flex;
align-items: center;
justify-content: center;
background: var(--gold);
color: #111110;
font-weight: 600;
font-size: 16px;
letter-spacing: -0.02em;
}
.logo i {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-weight: 500;
margin-left: 2px;
}
.nav-links {
display: flex;
gap: 36px;
font-size: 15px;
color: var(--ink-dim);
}
.nav-links a { transition: color .2s ease; }
.nav-links a:hover { color: var(--gold); }
.nav-cta { display: flex; align-items: center; gap: 18px; }
.nav-cta .phone {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--ink-dim);
font-size: 15px;
}
.nav-cta .btn { padding: 11px 18px; font-size: 14px; }
@media (max-width: 1180px) {
.nav-cta .phone { display: none; }
}
@media (max-width: 1080px) {
.nav-links { display: none; }
}
/*
────────────────────────────────────────
DECORATIONS ── */
.rule-left {
position: absolute;
left: 0; top: 0; bottom: 0;
width: 3px;
background: var(--gold);
}
.corner-marks {
position: absolute;
inset: 0;
pointer-events: none;
}
.corner-marks::before,
.corner-marks::after {
content: "+";
position: absolute;
color: var(--gold);
opacity: 0.4;
font-size: 20px;
font-weight: 300;
}
.corner-marks::before { top: 12px; left: 12px; }
.corner-marks::after { bottom: 12px; right: 12px; }
/*
────────────────────────────────────────
HERO ── */
.hero {
position: relative;
padding-top: clamp(40px, 5vw, 64px);
padding-bottom: clamp(48px, 6vw, 72px);
border-bottom: 1px solid var(--hairline);
overflow: hidden;
}
.hero::after {
content: "";
position: absolute;
inset: 0;
background-image:
linear-gradient(to right, rgba(240,237,230,0.025) 1px, transparent 1px),
linear-gradient(to bottom, rgba(240,237,230,0.025) 1px, transparent 1px);
background-size: 80px 80px;
pointer-events: none;
z-index: 0;
}
.hero > * { position: relative; z-index: 1; }
.hero::before {
content: "";
position: absolute;
top: -10%;
right: -10%;
width: 60vw;
height: 60vw;
max-width: 720px;
max-height: 720px;
background: radial-gradient(circle, rgba(255,189,89,0.06) 0%, transparent 60%);
pointer-events: none;
z-index: 0;
}
.hero-grid {
display: grid;
grid-template-columns: 1.05fr 1fr;
gap: clamp(40px, 6vw, 96px);
align-items: center;
position: relative;
z-index: 1;
}
@media (max-width: 1024px) {
.hero-grid { grid-template-columns: 1fr; gap: 48px; }
}
.hero h1 .gi { display: block; }
.hero-lede {
margin-top: 22px;
font-size: clamp(17px, 1.25vw, 20px);
color: var(--ink-dim);
line-height: 1.5;
max-width: 54ch;
}
.hero-lede b { color: var(--ink); font-weight: 500; }
.hero-cta {
margin-top: 32px;
display: flex;
gap: 14px;
flex-wrap: wrap;
align-items: center;
}
.hero-trust {
margin-top: 32px;
padding-top: 22px;
border-top: 1px solid var(--hairline);
display: flex;
gap: 32px;
flex-wrap: wrap;
}
.hero-badge {
display: flex;
width: max-content;
max-width: 100%;
align-items: center;
gap: 14px;
padding: 8px 16px 8px 12px;
border: 1px solid var(--gold);
background: rgba(255, 189, 89, 0.10);
margin-bottom: 22px;
font-size: 14px;
color: var(--ink);
letter-spacing: -0.005em;
}
.hero-badge .pill {
font-family: 'DM Sans', sans-serif;
font-weight: 600;
font-size: 12px;
letter-spacing: 0.06em;
color: #111110;
background: var(--gold);
padding: 4px 8px;
text-transform: uppercase;
}
.hero-badge em {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-weight: 500;
}
.hero-trust .item {
display: flex;
align-items: baseline;
gap: 10px;
font-size: 15px;
color: var(--ink-dim);
}
.hero-trust .item b {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-weight: 500;
font-size: 17px;
}
/* ──── VIDEO PLACEHOLDER ──── */
.video-wrap {
position: relative;
aspect-ratio: 16 / 10;
background: linear-gradient(160deg, #1d1c18, #131210);
border: 1px solid var(--hairline-strong);
overflow: hidden;
}
.video-wrap::before {
content: "";
position: absolute;
inset: 0;
background-image:
linear-gradient(to right, rgba(255,189,89,0.05) 1px, transparent 1px),
linear-gradient(to bottom, rgba(255,189,89,0.05) 1px, transparent 1px);
background-size: 40px 40px;
}
.video-wrap iframe,
.video-wrap video {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
border: 0;
}
.video-poster {
position: absolute;
inset: 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 22px;
text-align: center;
padding: 32px;
}
.play-btn {
width: 88px;
height: 88px;
border-radius: 50%;
background: var(--gold);
color: #111110;
border: none;
display: flex;
align-items: center;
justify-content: center;
transition: transform .2s ease, box-shadow .2s ease;
position: relative;
z-index: 2;
cursor: pointer;
}
.play-btn:hover { transform: scale(1.04); }
.play-btn svg { width: 30px; height: 30px; margin-left: 4px; }
.video-caption {
position: relative;
z-index: 2;
color: var(--ink-dim);
font-size: 15px;
}
.video-caption b { color: var(--ink); font-weight: 500; }
.video-tag {
position: absolute;
left: 20px;
top: 20px;
padding: 6px 12px;
border: 1px solid var(--hairline-strong);
background: rgba(17,17,16,0.65);
backdrop-filter: blur(6px);
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 13px;
z-index: 2;
}
.video-runtime {
position: absolute;
right: 20px;
bottom: 20px;
font-size: 12px;
letter-spacing: 0.18em;
text-transform: uppercase;
color: var(--ink-mute);
z-index: 2;
}
/*
────────────────────────────────────────
TRUST STRIP ── */
.trust {
padding: clamp(48px, 6vw, 72px) 0;
border-bottom: 1px solid var(--hairline);
}
.trust-inner {
display: grid;
grid-template-columns: auto 1fr;
align-items: center;
gap: clamp(28px, 4vw, 64px);
}
.trust-label {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--ink-dim);
font-size: 16px;
line-height: 1.4;
max-width: 18ch;
}
.trust-label b {
display: block;
font-family: 'DM Sans', sans-serif;
font-style: normal;
font-weight: 500;
color: var(--ink);
font-size: 18px;
margin-bottom: 4px;
}
.logos {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: clamp(28px, 4vw, 64px);
}
.logos .l {
font-family: 'DM Sans', sans-serif;
font-weight: 500;
color: var(--ink-dim);
font-size: clamp(18px, 1.4vw, 22px);
letter-spacing: -0.01em;
opacity: 0.85;
white-space: nowrap;
}
.logos .l.serif {
font-family: 'Playfair Display', serif;
font-weight: 500;
letter-spacing: 0.06em;
}
.logos .l.tracked {
letter-spacing: 0.18em;
text-transform: uppercase;
font-size: clamp(14px, 1vw, 16px);
}
.logos .l.bold {
font-weight: 700;
}
@media (max-width: 720px) {
.trust-inner { grid-template-columns: 1fr; }
}
/*
────────────────────────────────────────
SECTION HEADERS ── */
.section {
padding: var(--section-y) 0;
border-bottom: 1px solid var(--hairline);
position: relative;
}
.section-head {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(40px, 6vw, 96px);
align-items: end;
margin-bottom: clamp(56px, 7vw, 88px);
}
.section-head.center {
grid-template-columns: 1fr;
text-align: center;
place-items: center;
}
.section-head.center .eyebrow { justify-content: center; }
.section-head .right {
color: var(--ink-dim);
font-size: clamp(17px, 1.3vw, 20px);
line-height: 1.55;
max-width: 48ch;
}
@media (max-width: 900px) {
.section-head { grid-template-columns: 1fr; align-items: start; }
}
/*
────────────────────────────────────────
PROBLEM ── */
.problem-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 0;
border-top: 1px solid var(--hairline);
border-bottom: 1px solid var(--hairline);
}
.problem-grid .cell {
padding: 36px 32px 36px 32px;
border-right: 1px solid var(--hairline);
display: flex;
flex-direction: column;
gap: 18px;
}
.problem-grid .cell:last-child { border-right: none; }
.problem-grid .num {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 24px;
}
.problem-grid h3 {
font-size: 24px;
line-height: 1.15;
font-weight: 500;
color: var(--ink);
margin: 0;
text-wrap: balance;
}
.problem-grid p {
font-size: 16px;
color: var(--ink-dim);
line-height: 1.5;
margin: 0;
}
@media (max-width: 1024px) {
.problem-grid { grid-template-columns: 1fr 1fr; }
.problem-grid .cell:nth-child(2n) { border-right: none; }
.problem-grid .cell:nth-child(-n+2) { border-bottom: 1px solid var(--hairline); }
}
@media (max-width: 600px) {
.problem-grid { grid-template-columns: 1fr; }
.problem-grid .cell { border-right: none; border-bottom: 1px solid var(--hairline); }
.problem-grid .cell:last-child { border-bottom: none; }
}
/*
────────────────────────────────────────
SERVICES ── */
.services-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 28px;
}
@media (max-width: 900px) {
.services-grid { grid-template-columns: 1fr; }
}
.service {
border: 1px solid var(--hairline-strong);
background: rgba(240, 237, 230, 0.02);
padding: 44px 44px 40px;
position: relative;
display: flex;
flex-direction: column;
gap: 24px;
}
.service.featured {
border-color: var(--gold);
background: rgba(255, 189, 89, 0.04);
}
.service::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 80px;
height: 2px;
background: var(--gold);
}
.service .qty {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 18px;
letter-spacing: 0.02em;
}
.service h3 {
font-size: clamp(28px, 2.6vw, 38px);
font-weight: 500;
line-height: 1.05;
color: var(--ink);
letter-spacing: -0.02em;
text-wrap: balance;
}
.service h3 .gi { display: inline; }
.service .desc {
color: var(--ink-dim);
font-size: 17px;
line-height: 1.55;
}
.service .desc b { color: var(--ink); font-weight: 500; }
.service ul {
list-style: none;
padding: 0;
margin: 0;
border-top: 1px solid var(--hairline);
}
.service ul li {
font-size: 16px;
color: var(--ink);
padding: 14px 0;
border-bottom: 1px solid var(--hairline);
display: grid;
grid-template-columns: 22px 1fr;
gap: 12px;
line-height: 1.4;
align-items: baseline;
}
.service ul li::before {
content: "✓";
color: var(--gold);
font-size: 16px;
}
.service .foot {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
margin-top: 8px;
}
.service .who {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--ink-dim);
font-size: 15px;
line-height: 1.4;
max-width: 22ch;
}
.service .who b {
color: var(--gold);
font-weight: 500;
}
/*
────────────────────────────────────────
PROCESS (Done4You) ── */
.process {
display: grid;
grid-template-columns: repeat(5, 1fr);
border-top: 1px solid var(--hairline);
border-bottom: 1px solid var(--hairline);
}
.process .step {
padding: 40px 28px;
border-right: 1px solid var(--hairline);
display: flex;
flex-direction: column;
gap: 16px;
position: relative;
}
.process .step:last-child { border-right: none; }
.process .step .step-num {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 16px;
letter-spacing: 0.04em;
}
.process .step h4 {
font-size: 22px;
font-weight: 500;
color: var(--ink);
line-height: 1.15;
margin: 0;
}
.process .step p {
font-size: 15px;
color: var(--ink-dim);
line-height: 1.5;
}
.process .step .time {
margin-top: auto;
padding-top: 14px;
border-top: 1px solid var(--hairline);
font-size: 13px;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--ink-mute);
}
@media (max-width: 1024px) {
.process { grid-template-columns: 1fr 1fr; }
.process .step { border-right: 1px solid var(--hairline); border-bottom: 1px solid var(--hairline); }
.process .step:nth-child(2n) { border-right: none; }
.process .step:last-child { grid-column: 1 / -1; border-bottom: none; }
}
@media (max-width: 600px) {
.process { grid-template-columns: 1fr; }
.process .step { border-right: none; }
.process .step:last-child { grid-column: auto; }
}
/*
────────────────────────────────────────
CURRICULUM (Weiterbildung) ── */
.curriculum {
display: grid;
grid-template-columns: 360px 1fr;
gap: clamp(40px, 5vw, 80px);
align-items: start;
}
@media (max-width: 1024px) {
.curriculum { grid-template-columns: 1fr; }
}
.curriculum-side h3 {
font-size: clamp(28px, 2.4vw, 36px);
line-height: 1.1;
margin-bottom: 20px;
}
.curriculum-side p {
color: var(--ink-dim);
font-size: 17px;
line-height: 1.55;
margin-bottom: 28px;
}
.curriculum-side .meta {
border-top: 1px solid var(--hairline);
}
.curriculum-side .meta .row {
display: grid;
grid-template-columns: 100px 1fr;
gap: 18px;
padding: 14px 0;
border-bottom: 1px solid var(--hairline);
align-items: baseline;
}
.curriculum-side .meta .key {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 15px;
}
.curriculum-side .meta .val {
font-size: 15px;
color: var(--ink);
}
.modules {
display: flex;
flex-direction: column;
border-top: 1px solid var(--hairline);
}
.module {
display: grid;
grid-template-columns: 80px 1fr auto;
gap: 24px;
padding: 28px 0;
border-bottom: 1px solid var(--hairline);
align-items: start;
}
.module .mnum {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 18px;
padding-top: 3px;
}
.module h4 {
font-size: 22px;
font-weight: 500;
color: var(--ink);
margin: 0 0 8px 0;
line-height: 1.15;
}
.module p {
font-size: 16px;
color: var(--ink-dim);
line-height: 1.55;
max-width: 60ch;
}
.module .duration {
font-size: 13px;
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--ink-mute);
white-space: nowrap;
padding-top: 6px;
}
@media (max-width: 600px) {
.module { grid-template-columns: 60px 1fr; }
.module .duration { grid-column: 1 / -1; padding-top: 4px; }
}
/*
────────────────────────────────────────
STATS ── */
.stats-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 0;
border: 1px solid var(--hairline-strong);
}
.stat-cell {
padding: 44px 36px 36px;
border-right: 1px solid var(--hairline);
display: flex;
flex-direction: column;
gap: 16px;
position: relative;
}
.stat-cell:last-child { border-right: none; }
.stat-cell.hero { background: rgba(255, 189, 89, 0.06); }
.stat-cell .lbl {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 16px;
}
.stat-cell .v {
font-family: 'DM Sans', sans-serif;
font-weight: 500;
color: var(--ink);
font-size: clamp(54px, 5.5vw, 76px);
line-height: 0.95;
letter-spacing: -0.035em;
display: flex;
align-items: baseline;
gap: 6px;
}
.stat-cell .v .unit {
font-size: clamp(22px, 1.8vw, 28px);
color: var(--ink-dim);
font-weight: 400;
letter-spacing: -0.01em;
}
.stat-cell .v .pos {
color: var(--gold);
font-family: 'Playfair Display', serif;
font-style: italic;
font-weight: 500;
}
.stat-cell .d {
font-size: 15px;
color: var(--ink-dim);
line-height: 1.5;
}
.stat-cell .d b { color: var(--ink); font-weight: 500; }
@media (max-width: 1024px) {
.stats-grid { grid-template-columns: 1fr 1fr; }
.stat-cell:nth-child(2n) { border-right: none; }
.stat-cell:nth-child(-n+2) { border-bottom: 1px solid var(--hairline); }
}
@media (max-width: 600px) {
.stats-grid { grid-template-columns: 1fr; }
.stat-cell { border-right: none; border-bottom: 1px solid var(--hairline); }
.stat-cell:last-child { border-bottom: none; }
}
/*
────────────────────────────────────────
FOUNDERS ── */
.founders {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 28px;
}
@media (max-width: 900px) {
.founders { grid-template-columns: 1fr; }
}
.founder-card {
border: 1px solid var(--hairline-strong);
background: rgba(240, 237, 230, 0.02);
overflow: hidden;
display: grid;
grid-template-columns: 220px 1fr;
gap: 0;
}
@media (max-width: 600px) {
.founder-card { grid-template-columns: 1fr; }
.founder-card .portrait { aspect-ratio: 4 / 3; }
}
.founder-card .portrait {
background: linear-gradient(180deg, #1d1c18, #131210);
position: relative;
min-height: 240px;
}
.founder-card .portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 18%;
filter: grayscale(20%);
}
.founder-card .body {
padding: 28px 32px 28px 32px;
display: flex;
flex-direction: column;
gap: 14px;
}
.founder-card .role {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 15px;
}
.founder-card .name {
font-size: 24px;
font-weight: 500;
color: var(--ink);
line-height: 1.1;
letter-spacing: -0.015em;
}
.founder-card .bio {
font-size: 15px;
color: var(--ink-dim);
line-height: 1.55;
}
.founder-card .creds {
margin-top: auto;
padding-top: 14px;
border-top: 1px solid var(--hairline);
display: flex;
flex-wrap: wrap;
gap: 8px 16px;
font-size: 13px;
color: var(--ink-mute);
letter-spacing: 0.04em;
}
.founder-card .creds b {
color: var(--gold);
font-family: 'Playfair Display', serif;
font-style: italic;
font-weight: 500;
}
/*
────────────────────────────────────────
TESTIMONIALS ── */
.testimonials-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}
@media (max-width: 1024px) {
.testimonials-grid { grid-template-columns: 1fr; }
}
.testimonial {
border: 1px solid var(--hairline-strong);
background: rgba(240, 237, 230, 0.02);
padding: 36px 36px 32px;
display: flex;
flex-direction: column;
gap: 24px;
position: relative;
}
.testimonial .qmark {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 80px;
line-height: 0.3;
margin: 14px 0 0 0;
opacity: 0.8;
}
.testimonial blockquote {
margin: 0;
font-size: 18px;
line-height: 1.5;
color: var(--ink);
font-weight: 400;
text-wrap: balance;
}
.testimonial blockquote em {
color: var(--gold);
font-family: 'Playfair Display', serif;
font-style: italic;
font-weight: 500;
}
.testimonial .who {
margin-top: auto;
padding-top: 22px;
border-top: 1px solid var(--hairline);
display: flex;
flex-direction: column;
gap: 4px;
}
.testimonial .who .n {
font-size: 15px;
font-weight: 500;
color: var(--ink);
}
.testimonial .who .c {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--ink-dim);
font-size: 14px;
}
.testimonial .metric {
display: inline-flex;
align-items: baseline;
gap: 6px;
padding: 6px 10px;
border: 1px solid var(--gold-line);
align-self: flex-start;
background: var(--gold-soft);
}
.testimonial .metric .v {
font-family: 'DM Sans', sans-serif;
font-weight: 500;
color: var(--gold);
font-size: 18px;
letter-spacing: -0.02em;
}
.testimonial .metric .l {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 13px;
}
/*
────────────────────────────────────────
COMPARISON ── */
.compare {
display: grid;
grid-template-columns: 1fr 1fr;
border: 1px solid var(--hairline-strong);
}
@media (max-width: 800px) {
.compare { grid-template-columns: 1fr; }
}
.compare .col {
padding: 36px 36px 32px;
border-right: 1px solid var(--hairline-strong);
}
.compare .col:last-child { border-right: none; }
@media (max-width: 800px) {
.compare .col { border-right: none; border-bottom: 1px solid var(--hairline-strong); }
.compare .col:last-child { border-bottom: none; }
}
.compare .col.good { background: rgba(255, 189, 89, 0.04); }
.compare .col h4 {
font-size: 22px;
font-weight: 500;
color: var(--ink);
margin: 0 0 6px 0;
}
.compare .col .lbl {
font-family: 'Playfair Display', serif;
font-style: italic;
font-size: 15px;
margin-bottom: 22px;
}
.compare .col.bad .lbl { color: var(--ink-mute); }
.compare .col.good .lbl { color: var(--gold); }
.compare ul {
list-style: none;
padding: 0;
margin: 0;
}
.compare ul li {
padding: 14px 0;
border-top: 1px solid var(--hairline);
display: grid;
grid-template-columns: 22px 1fr;
gap: 12px;
font-size: 16px;
line-height: 1.45;
align-items: baseline;
}
.compare ul li:last-child { border-bottom: 1px solid var(--hairline); }
.compare .col.bad li { color: var(--ink-dim); }
.compare .col.bad li::before {
content: "—";
color: var(--ink-mute);
font-size: 16px;
}
.compare .col.good li { color: var(--ink); }
.compare .col.good li::before {
content: "✓";
color: var(--gold);
font-size: 16px;
}
/*
────────────────────────────────────────
FAQ ── */
.faq-list {
border-top: 1px solid var(--hairline);
}
.faq-item {
border-bottom: 1px solid var(--hairline);
}
.faq-item summary {
list-style: none;
cursor: pointer;
padding: 26px 0;
display: grid;
grid-template-columns: 60px 1fr 32px;
gap: 20px;
align-items: start;
font-size: clamp(18px, 1.6vw, 22px);
font-weight: 500;
color: var(--ink);
letter-spacing: -0.01em;
line-height: 1.25;
transition: color .2s ease;
}
.faq-item summary:hover { color: var(--gold); }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item .qnum {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 17px;
padding-top: 4px;
}
.faq-item .toggle {
width: 28px;
height: 28px;
border: 1px solid var(--hairline-strong);
display: flex;
align-items: center;
justify-content: center;
position: relative;
transition: transform .25s ease, border-color .25s ease, background .25s ease;
color: var(--ink);
margin-top: 4px;
}
.faq-item .toggle::before,
.faq-item .toggle::after {
content: "";
position: absolute;
background: currentColor;
}
.faq-item .toggle::before {
width: 12px;
height: 1px;
}
.faq-item .toggle::after {
width: 1px;
height: 12px;
transition: transform .25s ease;
}
.faq-item[open] .toggle {
background: var(--gold);
color: #111110;
border-color: var(--gold);
}
.faq-item[open] .toggle::after { transform: scaleY(0); }
.faq-item .answer {
padding: 0 0 28px 80px;
color: var(--ink-dim);
font-size: 17px;
line-height: 1.6;
max-width: 70ch;
}
.faq-item .answer b { color: var(--ink); font-weight: 500; }
@media (max-width: 600px) {
.faq-item summary { grid-template-columns: 40px 1fr 28px; gap: 14px; }
.faq-item .answer { padding-left: 54px; }
}
/*
────────────────────────────────────────
FINAL CTA / FORM ── */
.cta-section {
padding: clamp(96px, 12vw, 160px) 0;
background: var(--bg-2);
border-bottom: 1px solid var(--hairline);
position: relative;
}
.cta-section::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 50% 0%, rgba(255,189,89,0.10) 0%, transparent 50%);
pointer-events: none;
}
.cta-section .container { position: relative; z-index: 1; }
.cta-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: clamp(40px, 6vw, 96px);
align-items: start;
}
@media (max-width: 1024px) {
.cta-grid { grid-template-columns: 1fr; }
}
.cta-lead h2 {
font-size: clamp(38px, 4.4vw, 64px);
line-height: 1.02;
letter-spacing: -0.025em;
text-wrap: balance;
margin-bottom: 28px;
}
.cta-lead .promise {
font-size: 18px;
color: var(--ink-dim);
line-height: 1.55;
max-width: 50ch;
margin-bottom: 36px;
}
.cta-checks {
list-style: none;
padding: 0;
margin: 0 0 36px 0;
display: grid;
gap: 12px;
}
.cta-checks li {
display: grid;
grid-template-columns: 24px 1fr;
gap: 12px;
font-size: 16px;
color: var(--ink);
line-height: 1.4;
align-items: baseline;
}
.cta-checks li::before {
content: "✓";
color: var(--gold);
font-size: 18px;
}
.cta-meta {
border-top: 1px solid var(--hairline);
padding-top: 24px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
}
.cta-meta .item {
display: flex;
flex-direction: column;
gap: 4px;
}
.cta-meta .item .k {
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 14px;
}
.cta-meta .item .v {
font-size: 16px;
color: var(--ink);
}
/* form */
.form-card {
border: 1px solid var(--hairline-strong);
background: var(--bg);
padding: 40px 40px 32px;
position: relative;
}
.form-card::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 80px;
height: 2px;
background: var(--gold);
}
.form-card h3 {
font-size: 26px;
margin: 0 0 8px 0;
font-weight: 500;
}
.form-card .sub {
color: var(--ink-dim);
font-size: 15px;
margin-bottom: 28px;
line-height: 1.5;
}
.form-card .row { margin-bottom: 18px; }
.form-card .grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 500px) {
.form-card .grid2 { grid-template-columns: 1fr; }
}
.form-card label {
display: block;
font-family: 'Playfair Display', serif;
font-style: italic;
color: var(--gold);
font-size: 13px;
margin-bottom: 8px;
letter-spacing: 0.02em;
}
.form-card input,
.form-card select,
.form-card textarea {
width: 100%;
padding: 13px 16px;
background: rgba(240, 237, 230, 0.02);
border: 1px solid var(--hairline-strong);
color: var(--ink);
font-family: 'DM Sans', sans-serif;
font-size: 15px;
transition: border-color .2s ease, background .2s ease;
border-radius: 0;
outline: none;
}
.form-card textarea { min-height: 96px; resize: vertical; line-height: 1.5; }
.form-card input::placeholder,
.form-card textarea::placeholder {
color: var(--ink-mute);
}
.form-card input:focus,
.form-card select:focus,
.form-card textarea:focus {
border-color: var(--gold);
background: rgba(255, 189, 89, 0.04);
}
.form-card .submit {
width: 100%;
margin-top: 6px;
justify-content: center;
padding: 18px 26px;
font-size: 16px;
}
.form-card .legal {
margin-top: 20px;
font-size: 12px;
color: var(--ink-mute);
line-height: 1.5;
letter-spacing: 0.01em;
}
.form-card .legal a { color: var(--ink-dim); text-decoration: underline; text-decoration-color: var(--hairline-strong);
}
.form-success {
display: none;
text-align: center;
padding: 48px 16px;
}
.form-success h3 {
color: var(--gold);
font-family: 'Playfair Display', serif;
font-style: italic;
font-size: 36px;
line-height: 1.1;
margin-bottom: 18px;
}
.form-success p { color: var(--ink-dim); font-size: 17px; line-height: 1.5; max-width: 32ch; margin: 0 auto; }
.form-card.is-success .form-fields { display: none; }
.form-card.is-success .form-success { display: block; }
/*
────────────────────────────────────────
FOOTER ── */
footer {
background: var(--bg);
padding: 64px 0 32px;
}
.footer-top {
display: grid;
grid-template-columns: 1.4fr 1fr 1fr 1fr;
gap: 40px;
padding-bottom: 48px;
border-bottom: 1px solid var(--hairline);
}
@media (max-width: 900px) {
.footer-top { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 500px) {
.footer-top { grid-template-columns: 1fr; gap: 28px; }
}
.footer-col h5 {
font-family: 'Playfair Display', serif;
font-style: italic;
font-weight: 500;
color: var(--gold);
font-size: 14px;
margin: 0 0 16px 0;
letter-spacing: 0.02em;
}
.footer-col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.footer-col ul a { color: var(--ink-dim); font-size: 15px; transition: color .2s ease; }
.footer-col ul a:hover { color: var(--gold); }
.footer-blurb {
color: var(--ink-dim);
font-size: 15px;
line-height: 1.55;
max-width: 32ch;
margin-top: 18px;
}
.footer-bottom {
padding-top: 28px;
display: flex;
justify-content: space-between;
align-items: center;
font-size: 13px;
color: var(--ink-mute);
letter-spacing: 0.04em;
flex-wrap: wrap;
gap: 16px;
}
.footer-bottom .links { display: flex; gap: 24px; }
.footer-bottom .links a:hover { color: var(--gold); }
/* ─────── helpers ─────── */
.deco-plus {
position: absolute;
color: var(--gold);
opacity: 0.3;
font-weight: 300;
font-size: 20px;
pointer-events: none;
}
/*
────────────────────────────────────────
LINKEDIN COMPONENTS ── */
.li-icon {
--li-size: 22px;
width: var(--li-size);
height: var(--li-size);
display: inline-block;
vertical-align: middle;
flex-shrink: 0;
}
.li-icon-lg { --li-size: 32px; }
.li-icon-xl { --li-size: 48px; }
/* Floating LinkedIn notification cards on hero */
.hero-stage {
position: relative;
width: 100%;
}
.hero-float {
position: absolute;
background: #ffffff;
color: #1d1c18;
border: 1px solid rgba(0,0,0,0.08);
box-shadow: 0 18px 40px rgba(0,0,0,0.45), 0 4px 10px rgba(0,0,0,0.25);
padding: 12px 14px;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, system-ui, sans-serif;
font-size: 13px;
line-height: 1.35;
z-index: 4;
border-radius: 6px;
pointer-events: none;
}
.hero-float-1 {
top: -16px;
left: -12px;
width: 240px;
}
.hero-float-2 {
bottom: -16px;
right: -16px;
width: 256px;
}
.hero-float .row {
display: flex;
align-items: center;
gap: 10px;
}
.hero-float .row + .row { margin-top: 8px; }
.hero-float .av {
width: 34px;
height: 34px;
border-radius: 50%;
background: linear-gradient(135deg, #0A66C2, #2c8ff5);
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-weight: 600;
font-size: 13px;
flex-shrink: 0;
}
.hero-float .av.av-2 {
background: linear-gradient(135deg, #d97757, #ffbd59);
}
.hero-float .meta { font-size: 12px; color: rgba(0,0,0,0.55); }
.hero-float .title-line { font-weight: 600; color: #1d1c18; }
.hero-float .badge {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 2px 8px 2px 4px;
background: #E7F3FF;
color: #0A66C2;
border-radius: 12px;
font-weight: 600;
font-size: 11px;
}
.hero-float .badge .dot {
width: 6px; height: 6px; border-radius: 50%;
background: #0A66C2;
}
.hero-float hr {
border: none;
border-top: 1px solid rgba(0,0,0,0.08);
margin: 10px 0;
}
@media (max-width: 1024px) {
.hero-float-1 { left: 8px; top: -14px; }
.hero-float-2 { right: 8px; bottom: -14px; }
}
@media (max-width: 560px) {
.hero-float { display: none; }
}
/* LinkedIn Post mockups */
.li-post {
background: #ffffff;
color: #1d1c18;
border: 1px solid rgba(0,0,0,0.10);
border-radius: 8px;
padding: 16px 16px 14px;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, system-ui, sans-serif;
font-size: 14px;
line-height: 1.45;
box-shadow: 0 14px 36px rgba(0,0,0,0.45);
display: flex;
flex-direction: column;
gap: 10px;
}
.li-post .head { display: flex; gap: 10px; align-items: flex-start; }
.li-post .av {
width: 44px; height: 44px;
border-radius: 50%;
flex-shrink: 0;
overflow: hidden;
background: #e8e8e8;
}
.li-post .av img { width: 100%; height: 100%; object-fit: cover; }
.li-post .name { font-weight: 600; font-size: 14px; color: #1d1c18; line-height: 1.2; }
.li-post .role { font-size: 12px; color: rgba(0,0,0,0.6); line-height: 1.3; margin-top: 1px; max-width: 26ch; }
.li-post .when {
font-size: 11px;
color: rgba(0,0,0,0.55);
margin-top: 3px;
}
.li-post .more { color: rgba(0,0,0,0.55); font-size: 18px; margin-left: auto; line-height: 1; }
.li-post .body { color: #1d1c18; font-size: 13.5px; white-space: pre-wrap; }
.li-post .body b { color: #1d1c18; font-weight: 600; }
.li-post .body em { color: #0A66C2; font-style: normal; font-weight: 500; }
.li-post .stats {
display: flex;
justify-content: space-between;
padding-top: 8px;
border-top: 1px solid rgba(0,0,0,0.06);
font-size: 12px;
color: rgba(0,0,0,0.55);
align-items: center;
}
.li-post .reax {
display: flex;
align-items: center;
gap: 4px;
}
.li-post .reax .dots {
display: inline-flex;
margin-right: 2px;
}
.li-post .reax .dots span {
width: 16px; height: 16px;
border-radius: 50%;
border: 1.5px solid #fff;
margin-left: -4px;
display: inline-block;
}
.li-post .reax .dots span:nth-child(1) { background: #0A66C2; margin-left: 0; }
.li-post .reax .dots span:nth-child(2) { background: #DF704D; }
.li-post .reax .dots span:nth-child(3) { background: #4DAA50; }
.li-post .actions {
display: flex;
justify-content: space-around;
padding-top: 8px;
border-top: 1px solid rgba(0,0,0,0.06);
color: rgba(0,0,0,0.6);
font-size: 13px;
font-weight: 500;
}
.li-post .actions span { display: inline-flex; align-items: center; gap: 6px; }
/* Post section grid */
.posts-section {
background: linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%);
}
.posts-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
align-items: start;
}
@media (max-width: 1024px) {
.posts-grid { grid-template-columns: 1fr 1fr; }
.posts-grid > :nth-child(3) { grid-column: 1 / -1; max-width: 480px; justify-self: center; }
}
@media (max-width: 640px) {
.posts-grid { grid-template-columns: 1fr; }
.posts-grid > :nth-child(3) { grid-column: auto; max-width: none; }
}
.post-wrap {
position: relative;
}
.post-wrap .post-tag {
position: absolute;
top: -14px;
left: 18px;
padding: 5px 12px;
background: var(--gold);
color: #111110;
font-size: 12px;
font-weight: 500;
letter-spacing: 0.04em;
text-transform: uppercase;
z-index: 2;
}
/* LinkedIn signature badge */
.li-badge {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 5px 12px 5px 6px;
background: rgba(10, 102, 194, 0.12);
border: 1px solid rgba(10, 102, 194, 0.5);
color: #4d9cea;
font-size: 12px;
font-weight: 500;
letter-spacing: 0.01em;
}
.li-badge svg { display: block; }
/* Process step icons */
.step-icon {
width: 40px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
color: var(--gold);
background: rgba(255, 189, 89, 0.08);
border: 1px solid var(--gold-line);
margin-bottom: 6px;
}
.step-icon svg { width: 22px; height: 22px; }
/* Big decorative LinkedIn logo */
.big-li-deco {
position: absolute;
pointer-events: none;
opacity: 0.04;
z-index: 0;
}
.big-li-deco svg { width: 100%; height: 100%; }
/* Service card LinkedIn header bar */
.service .head-bar {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
margin-bottom: -8px;
}