/* Shared 2026 visual refinement. No page or portfolio data is duplicated here. */
:root { --paper:#fff; --ink:#111312; --charcoal:#555b57; --gold-dark:#806124; --line:rgba(17,19,18,.13); --radius:16px; --motion-ease:cubic-bezier(.22,1,.36,1); }
body { background:var(--paper); -webkit-font-smoothing:antialiased; }
.shell { width:calc(100% - clamp(40px,6vw,112px)); max-width:1664px; }
.site-header { background:rgba(255,255,255,.92); backdrop-filter:blur(18px) saturate(140%); -webkit-backdrop-filter:blur(18px) saturate(140%); border-bottom:1px solid var(--line); }
.nav-shell { min-height:80px; }
.primary-nav a { font-size:11px; letter-spacing:.045em; }
.brand small { letter-spacing:.08em; }
.button { min-height:50px; padding:15px 22px; border-radius:10px; font-size:12px; line-height:1.4; letter-spacing:0; transition:transform 180ms var(--motion-ease),background-color 180ms ease; }
.button:active { transform:scale(.97)!important; }
.nav-cta { min-height:46px; padding:13px 18px; }
:where(a,button):focus-visible { outline:2px solid var(--gold-dark); outline-offset:5px; }
.eyebrow { font-size:10px; letter-spacing:.13em; line-height:1.6; margin-bottom:24px; }
.page-title { max-width:18ch; font-size:clamp(42px,4.7vw,72px); line-height:1.06; letter-spacing:-.055em; font-weight:650; text-wrap:balance; }
.page-intro { max-width:56ch; font-size:16px; line-height:1.75; color:var(--charcoal); margin:24px 0 0; }
[data-page-view] > .section:first-child { padding-top:146px; }
.section { padding-bottom:80px; }
.hero { padding:136px 0 34px; background:#fff; }
.hero__layout { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:38px 5%; align-items:center; }
.hero-title { max-width:19ch; font-size:clamp(44px,4.55vw,76px); line-height:1.06; letter-spacing:-.06em; font-weight:650; }
.hero-title span { display:inline; white-space:normal; }
.hero-title span::after { content:' '; }
.hero-title { overflow-wrap:normal; }
.hero__subheadline { font-size:clamp(17px,1.5vw,22px); font-weight:700; line-height:1.45; margin-top:24px; letter-spacing:-.02em; }
.hero__subheadline + .hero__summary { margin-top:12px; }
.hero__summary { max-width:49ch; font-size:16px; line-height:1.75; margin-top:24px; padding-left:0; border:0; }
.hero__actions { display:inline-flex; margin:26px 20px 0 0; vertical-align:middle; }
.hero-work-link { display:inline-flex; align-items:center; gap:18px; font-size:13px; font-weight:700; padding:15px 0; margin-top:26px; vertical-align:middle; }
.hero-work-link span { color:var(--gold-dark); }
.hero-credential { display:flex; align-items:center; flex-wrap:wrap; gap:9px; color:var(--charcoal); font-size:11px; margin:22px 0 0; }
.hero-credential > span:first-child { color:var(--gold-dark); font-size:14px; }
.hero-credential__divider { opacity:.4; margin-inline:3px; }
.hero__platforms { margin-top:24px; padding-top:16px; gap:20px; font-size:9px; }
.hero__platforms li:not(:last-child)::after { right:-11px; }
.hero__visual { max-width:600px; width:100%; aspect-ratio:4/3; justify-self:center; margin:0; perspective:1100px; }
.hero__visual::before { content:''; position:absolute; inset:18px -14px -16px 16px; border:1px solid #d8d5cb; border-radius:22px; background:#f3f1eb; transform:rotate(3deg); }
.hero__portrait-frame { border:1px solid rgba(17,19,18,.12); border-radius:18px; overflow:hidden; box-shadow:0 24px 44px -22px rgba(25,25,20,.3); transform-style:preserve-3d; }
.hero__portrait-frame::before { content:none; }
.hero__portrait-frame img { border-radius:0; object-fit:cover; object-position:center top; filter:none; }
.hero-method { padding-top:28px; }
.hero-method h2 { margin-bottom:26px; font-size:clamp(20px,1.8vw,27px); font-weight:600; letter-spacing:-.035em; }
.hero-method ol { gap:24px; }
.hero-method__number { font-size:10px; font-variant-numeric:tabular-nums; margin-bottom:10px; }
.hero-method h3 { font-size:13px; margin-bottom:8px; }
.hero-method p { font-size:12px; line-height:1.65; }
.capability-strip { background:#f3f1eb; padding-block:20px; }
.capability-strip__track span { font-size:10px; }
.ticker-toggle { background:#f3f1eb; border-radius:6px; }
.capability-strip[data-ticker-engine="waapi"] .capability-strip__track { animation:none!important; }
@media(min-width:1001px) {
  .site-footer .footer__top { grid-template-columns:minmax(220px,1fr) auto minmax(100px,.4fr); }
  .site-footer .footer__top nav { display:flex; flex-wrap:nowrap; gap:clamp(14px,1.6vw,26px); }
  .site-footer .footer__top nav a { white-space:nowrap; }
}
.automation-library__header { max-width:none; grid-template-columns:1.3fr 1fr; gap:0 8%; margin-bottom:48px; }
.automation-library__header > p:not(.eyebrow) { font-size:16px; line-height:1.75; max-width:42ch; }
.automation-library__header .page-title em { display:block; }
.automation-library__disciplines { font-size:10px; margin-top:28px; }
.automation-business-grid { gap:24px; }
.business-folder__front { box-shadow:0 18px 32px -24px rgba(0,0,0,.55); }
.business-folder__name { letter-spacing:-.025em; }
.frontend__heading { gap:7%; align-items:end; margin-bottom:40px; }
.frontend__heading p:not(.eyebrow) { font-size:16px; line-height:1.75; max-width:43ch; }
.funnel-card { border-radius:14px; box-shadow:0 10px 20px -16px rgba(0,0,0,.3); }
.website-projects { gap:32px; margin-top:44px; }
.website-project { border-color:#e2e3de; border-radius:18px; box-shadow:0 8px 24px -20px rgba(0,0,0,.24); transform-style:preserve-3d; transition:transform 260ms var(--motion-ease),border-color 200ms ease; }
.website-project__preview { aspect-ratio:1.8; background:#f3f1eb; }
.website-project__body { padding:28px 30px; }
.website-project h2 { font-size:28px; letter-spacing:-.035em; }
.website-project .website-project__category { font-size:10px; letter-spacing:.09em; text-transform:uppercase; }
.website-project .website-project__description { font-size:14px; line-height:1.75; }
.website-project .website-project__features { font-size:11px; }
.about__portrait { max-width:380px; aspect-ratio:1; border-radius:18px; }
.about__portrait img { object-fit:cover; object-position:center top; filter:none; }
.about__copy .page-title { max-width:17ch; }
.about__copy p { max-width:56ch; font-size:15px; line-height:1.8; }
.about-note { display:none; }
.certification-badge { display:inline-flex; flex-direction:column; align-items:center; gap:12px; max-width:100%; margin-top:24px; text-decoration:none; }
.certification-badge img { display:block; width:160px; max-width:100%; height:auto; border:0; }
.certification-badge > span:not(.visually-hidden) { font-size:12px; font-weight:700; color:var(--gold-dark); }
.page-consultation { padding:40px 0; }
.page-consultation h2 { font-size:30px; }
.page-consultation .eyebrow { margin-bottom:14px; }
.contact-methods h2 { font-size:36px; }
.discovery { background:#fff; border-bottom:1px solid var(--line); }
.final-cta { min-height:0; }
.final-cta__inner { padding-block:48px; }
.final-cta__blueprint { display:none; }
.final-cta h2 { max-width:26ch; font-size:clamp(28px,3vw,42px); line-height:1.15; letter-spacing:-.04em; }
.final-cta__inner > p:not(.eyebrow) { font-size:14px; line-height:1.75; margin-top:20px; max-width:60ch; }
.final-cta__actions { margin-top:24px; }
.contact-methods__links a { padding-block:22px; }
.site-footer .footer__statement strong { font-size:24px; }
.floating-whatsapp { border-radius:12px; }
@media(hover:hover) and (pointer:fine) {
  .button:hover { transform:translateY(-2px); }
  .website-project:hover { border-color:#b6a16c; }
  .hero-work-link:hover span { transform:translate(2px,-2px); transition:transform 180ms var(--motion-ease); }
}
@media(min-width:1101px) and (max-height:800px) {
  .hero { padding-top:110px; padding-bottom:28px; }
  .hero-title { font-size:clamp(44px,4.2vw,60px); }
  .hero__visual { max-width:600px; }
  .hero__layout { row-gap:28px; }
  .hero__summary { margin-top:18px; }
  .hero-method h2 { margin-bottom:20px; }
}
@media(max-width:1100px) {
  .hero__layout { gap:32px; grid-template-columns:1.15fr 1fr; }
  .hero-title { font-size:clamp(40px,5vw,56px); }
  .hero__visual { max-width:460px; }
  .hero-method ol { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .automation-business-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hero-work-link { margin-top:12px; }
}
@media(max-width:960px) {
  .nav-shell { min-height:76px; }
  .primary-nav { background:#fff; }
  .primary-nav a { font-size:14px; min-height:44px; }
  .hero { padding-top:116px; }
  .hero__summary { font-size:15px; }
  .automation-library__header { gap:24px; }
  .automation-library__header > p:not(.eyebrow) { font-size:14px; }
}
@media(max-width:700px) {
  .shell { width:calc(100% - 40px); }
  .hero { padding:110px 0 32px; }
  .hero__layout { grid-template-columns:1fr; gap:36px; }
  .hero-title { font-size:clamp(38px,10.8vw,60px); max-width:19ch; }
  .eyebrow { font-size:9px; margin-bottom:20px; }
  .hero__summary { font-size:15px; margin-top:22px; }
  .hero__actions { margin-top:22px; margin-right:14px; }
  .hero-work-link { margin-top:12px; font-size:12px; }
  .hero-credential { font-size:10px; }
  .hero__platforms { gap:14px; font-size:8px; }
  .hero__platforms li:not(:last-child)::after { right:-8px; }
  .hero__visual { width:100%; max-width:480px; }
  .hero-method ol { grid-template-columns:1fr; gap:20px; }
  .hero-method li { display:flex; gap:20px; }
  .hero-method h3 { font-size:14px; }
  .hero-method p { font-size:13px; max-width:42ch; }
  .page-title { font-size:40px; }
  .automation-library__header { grid-template-columns:1fr; gap:20px; margin-bottom:36px; }
  .automation-library__header .eyebrow { margin:0; }
  .automation-library__disciplines { margin-top:0; font-size:8px; gap:8px; }
  .automation-library__disciplines i { width:14px; }
  .automation-business-grid { grid-template-columns:1fr; }
  .website-projects { grid-template-columns:1fr; gap:24px; }
  .website-project__body { padding:24px; }
  .website-project h2 { font-size:25px; }
  .frontend__heading p:not(.eyebrow) { font-size:15px; }
  [data-page-view] > .section:first-child { padding-top:116px; }
  .section { padding-bottom:48px; }
  .about__portrait { max-width:280px; }
  .page-consultation h2 { font-size:26px; }
  .contact-methods h2 { font-size:30px; }
}
@media(prefers-reduced-transparency:reduce) { .site-header { background:#fff; backdrop-filter:none; -webkit-backdrop-filter:none; } }
@media(prefers-contrast:more) { :root { --charcoal:#303330; --line:#777; } .site-header { background:#fff; } }
@media(prefers-reduced-motion:reduce) {
  .capability-strip[data-playing="true"] .capability-strip__track { animation:none!important; }
  .button,.website-project,[data-depth-object] { transition:none!important; transform:none!important; }
}
