/* Amir's Manrope, exact -4% tracking and restrained site UI. */
.start-page :where(*, *::before, *::after) { letter-spacing:var(--ls); font-kerning:normal; }
.start-page main { padding:0 var(--pad-x); }
.start-page .header { position:relative; }
.start-nav { display:flex; gap:28px; font-size:14px; }
.start-nav a { display:inline-flex; align-items:center; min-height:44px; }
.start-nav a:hover { color:#626262; }
.welcome { display:grid; grid-template-columns:1fr 1.16fr; grid-template-rows:auto auto; column-gap:clamp(30px,5vw,76px); align-items:center; padding:40px 0 44px; }
.welcome__copy { align-self:end; }
.welcome__category { font-size:14px; line-height:1.4; }
.welcome__copy h1 { max-width:540px; font-size:clamp(44px,4.8vw,68px); line-height:1.04; margin:22px 0 24px; }
.welcome__description { font-size:18px; line-height:1.45; max-width:365px; color:#515151; }
.welcome__action { align-self:start; padding-top:28px; }
.start-cta { display:flex; align-items:center; justify-content:space-between; gap:40px; width:fit-content; min-height:54px; padding:15px 20px; background:var(--fg); color:var(--bg); font-size:16px; font-weight:600; transition:background .2s var(--ease); }
.start-cta:hover { background:#333; }
.welcome__meta { max-width:330px; margin-top:12px; color:#626262; font-size:12px; line-height:1.5; }
.welcome__visual { grid-column:2; grid-row:1 / 3; min-width:0; }
.hero-demo { position:relative; overflow:hidden; border:1px solid #e9e9e9; border-radius:20px; background:#fff; }
.hero-demo video { display:block; width:100%; aspect-ratio:15 / 13; height:auto; object-fit:contain; background:#fff; }
.demo-toggle { position:absolute; bottom:12px; right:12px; min-height:44px; padding:10px 14px; border:1px solid #e9e9e9; border-radius:8px; font-size:12px; background:#fff; }
.demo-toggle[hidden] { display:none; }
.welcome__visual figcaption { display:flex; justify-content:space-between; flex-wrap:wrap; gap:5px 14px; padding-top:12px; font-size:12px; color:#626262; line-height:1.4; }
.text-link { display:inline-flex; align-items:center; min-height:44px; gap:20px; font-size:14px; white-space:nowrap; border-bottom:1px solid #000; }
.text-link:hover { color:#626262; }
.start-gallery { padding:22px 0 56px; scroll-margin-top:24px; }
.start-gallery__heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:24px; }
.start-gallery h2 { font-size:clamp(26px,3vw,40px); line-height:1.1; }
.value-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.value-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid #e9e9e9; border-radius:20px; background:#f7f7f7; }
.value-card__image { display:block; height:290px; overflow:hidden; background:#fff; }
.value-card__image img { display:block; width:100%; height:100%; object-fit:cover; }
.value-card--veyra { background:#edf1f4; }
.value-card--font { background:#faf7f1; }
.value-card--font .value-card__image { background:#faf7f1; }
.value-card__body { display:flex; flex-direction:column; flex:1; padding:24px 26px 22px; }
.value-card__label { color:#626262; font-size:12px; line-height:1.4; margin-bottom:10px; }
.value-card h3 { font-size:clamp(23px,2.2vw,30px); line-height:1.15; }
.value-card__body>p:not(.value-card__label) { max-width:420px; font-size:15px; line-height:1.45; color:#515151; margin-top:10px; }
.value-card__links { display:flex; justify-content:space-between; flex-wrap:wrap; align-items:center; gap:8px 20px; margin-top:auto; padding-top:17px; font-size:14px; }
.value-card__links a,.value-card__links>span:first-child { display:inline-flex; align-items:center; gap:15px; min-height:44px; }
.value-card__links a { border-bottom:1px solid #b7b7b7; }
.value-card__meta { font-size:12px; color:#626262; }
.value-card:is(a):hover h3,.value-card__links a:hover { color:#626262; }
.start-author { display:grid; grid-template-columns:160px minmax(0,660px); gap:50px; justify-content:center; align-items:center; padding:64px 0; border-top:1px solid var(--border); scroll-margin-top:24px; }
.start-author__portrait { width:160px; height:208px; object-fit:cover; object-position:center; background:#f3f3f3; }
.start-author h2 { font-size:clamp(26px,2.8vw,38px); line-height:1.12; margin:15px 0 18px; max-width:600px; }
.start-author__copy>p:not(.t-label) { max-width:555px; font-size:16px; line-height:1.5; color:#515151; }
.start-author .text-link { margin:13px 24px 0 0; }
.start-page .footer { margin-top:0; }
.start-page .footer__social { flex-wrap:wrap; }
@media(max-width:767px) {
 .start-page .header { padding-top:8px; padding-bottom:8px; }
 .start-nav { gap:0; font-size:12px; }
 .start-nav a:first-child { display:none; }
 .welcome { grid-template-columns:1fr; grid-template-rows:auto auto auto; gap:0; padding:24px 0 32px; }
 .welcome__category { font-size:13px; }
 .welcome__copy h1 { max-width:490px; font-size:clamp(37px,10.3vw,55px); line-height:1.04; margin:15px 0 16px; }
 .welcome__description { max-width:420px; font-size:16px; line-height:1.4; }
 .welcome__visual { grid-column:1; grid-row:2; margin-top:22px; }
 .hero-demo video { height:clamp(218px,64vw,340px); aspect-ratio:auto; }
 .demo-toggle { bottom:8px; right:8px; min-height:44px; font-size:11px; padding:8px 12px; }
 .welcome__visual figcaption { font-size:11px; padding-top:9px; }
 .welcome__action { grid-row:3; padding-top:20px; }
 .start-cta { width:100%; }
 .welcome__meta { max-width:none; font-size:11px; margin-top:9px; }
 .start-gallery { padding:0 0 38px; }
 .start-gallery__heading { display:block; margin-bottom:20px; }
 .start-gallery__heading .text-link { margin-top:10px; }
 .value-grid { grid-template-columns:1fr; gap:20px; }
 .value-card__image { height:auto; aspect-ratio:1.6; }
 .value-card__body { padding:21px 20px 18px; }
 .value-card h3 { font-size:25px; }
 .value-card__links { font-size:13px; gap:8px 16px; }
 .value-card__meta { font-size:11px; }
 .start-author { grid-template-columns:1fr; gap:22px; padding:38px 0; }
 .start-author__portrait { width:84px; height:104px; }
 .start-author h2 { margin:13px 0 15px; max-width:400px; }
 .start-author__copy>p:not(.t-label) { font-size:15px; }
}
@media(prefers-reduced-motion:reduce) { .start-page * { transition:none !important; scroll-behavior:auto !important; } }
