/* Blog, tag and project pages in the homepage "Index" direction: paper/ink + lime highlighter.
   Loaded last; triple body scope wins over generated Astro selectors. Lime is only ever a
   background behind ink text, never a text colour on paper. */
body.site-index.site-index.site-index {
  --paper: #f4f4f1;
  --ink: #101113;
  --muted: #5a5b5e;
  --line: #10111324;
  --hot: #d4ff3a;
  --display: "Space Grotesk", sans-serif;
  --gutter: 56px;
  background: var(--paper);
  color: var(--ink);
  font-family: Outfit, sans-serif;
}
body.site-index.site-index.site-index :focus-visible { outline: 3px solid var(--ink); outline-offset: 4px; }
body.site-index.site-index.site-index main, body.site-index.site-index.site-index main > .container, body.site-index.site-index.site-index > .container { background: transparent; }
body.site-index.site-index.site-index .container { max-width: 1280px; padding-inline: var(--gutter); box-sizing: border-box; }

/* header */
body.site-index.site-index.site-index .header, body.site-index.site-index.site-index .header__container { background: var(--paper); box-shadow: none; border-bottom: 0; backdrop-filter: none; }
body.site-index.site-index.site-index .nav__links a { color: var(--ink); font: 500 15px var(--display); }
body.site-index.site-index.site-index .nav__links a:not(.contact-btn):is(:hover, :focus-visible) { color: var(--ink) !important; box-shadow: inset 0 -6px 0 var(--hot); text-decoration: none !important; }
body.site-index.site-index.site-index .nav__links a.contact-btn { background: var(--ink); color: var(--paper); border: 1.5px solid var(--ink); border-radius: 99px; padding: 10px 18px; }
body.site-index.site-index.site-index .nav__links a.contact-btn:is(:hover, :focus-visible) { background: var(--hot) !important; border-color: var(--hot) !important; color: var(--ink) !important; transform: none; }
body.site-index.site-index.site-index .nav__brand .logo-link:is(:hover, :focus-visible) { color: var(--ink); }
body.site-index.site-index.site-index .nav__burger span { background: var(--ink); }

/* buttons */
body.site-index.site-index.site-index .btn-primary, body.site-index.site-index.site-index .btn-secondary {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; width: auto;
  min-height: 50px; padding: 13px 24px; border-radius: 99px; border: 1.5px solid var(--hot);
  background: var(--hot); color: var(--ink); font: 600 16px Outfit, sans-serif; text-decoration: none; box-shadow: none;
  white-space: nowrap; transition: transform .15s ease;
}
body.site-index.site-index.site-index .btn-primary:is(:hover, :focus-visible) { background: var(--hot); color: var(--ink); transform: translateY(-2px); }

/* breadcrumb */
body.site-index.site-index.site-index .breadcrumb { margin: 24px 0 0; padding: 0; background: none; }
body.site-index.site-index.site-index .breadcrumb li:not(:last-child)::after { margin: 0 .4rem; color: #9a9b9e; }
body.site-index.site-index.site-index .breadcrumb ol { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; font: 500 13px var(--display); color: var(--muted); }
body.site-index.site-index.site-index .breadcrumb a { color: var(--muted); text-decoration: none; }
body.site-index.site-index.site-index .breadcrumb a:hover { color: var(--ink); box-shadow: inset 0 -4px 0 var(--hot); }

/* shared: links in running text get a lime marker underline */
body.site-index.site-index.site-index :is(.blog__intro, .article__content, .project-content, .cta-description) a:not(.btn-primary) {
  color: var(--ink); font-weight: 500; text-decoration: none;
  background: linear-gradient(var(--hot), var(--hot)) 0 100% / 100% 6px no-repeat;
}
body.site-index.site-index.site-index :is(.blog__intro, .article__content, .project-content) a:not(.btn-primary):hover { background-size: 100% 100%; }

/* blog index + tag pages: posts as an index list */
body.site-index.site-index.site-index .blog { padding: 56px 0 0; text-align: left; }
body.site-index.site-index.site-index .blog > h1, body.site-index.site-index.site-index main > .container > h1, body.site-index.site-index.site-index > .container > h1 {
  margin: 48px 0 24px; font: 700 clamp(46px, 8vw, 104px)/.95 var(--display); letter-spacing: -.045em; color: var(--ink); text-align: left;
}
body.site-index.site-index.site-index .blog > h1 { margin-top: 0; }
body.site-index.site-index.site-index .blog__intro { max-width: 760px; margin: 0 0 64px; font-size: 18px; line-height: 1.6; color: var(--muted); text-align: left; }
body.site-index.site-index.site-index > .container > .tags { margin: 0 0 40px; justify-content: flex-start; }
body.site-index.site-index.site-index :is(.blog__grid, .posts-grid) { display: block; margin: 0 0 110px; padding: 0; border-top: 1.5px solid var(--ink); }
body.site-index.site-index.site-index :is(.blog__grid, .posts-grid) .post-card {
  position: relative; display: grid; grid-template-columns: 168px minmax(0, 1fr) 130px; column-gap: 32px; align-items: center;
  margin: 0; padding: 22px 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0;
  background: none; box-shadow: none; transform: none; overflow: visible; transition: background-color .2s ease, padding .25s ease;
}
body.site-index.site-index.site-index :is(.blog__grid, .posts-grid) .post-card:hover { background: var(--hot); padding-inline: 16px; transform: none; box-shadow: none; }
body.site-index.site-index.site-index .post-card__image { grid-column: 1; grid-row: 1 / span 2; width: 168px; height: 112px; object-fit: cover; border-radius: 4px; }
body.site-index.site-index.site-index .post-card__content { grid-column: 2; padding: 0; text-align: left; }
body.site-index.site-index.site-index :is(.blog__grid, .posts-grid) .post-card time { position: static; grid-column: 3; grid-row: 1; align-self: start; padding: 0; font: 500 13px var(--display); color: var(--muted); text-align: right; }
body.site-index.site-index.site-index .post-card__title { margin: 0 0 6px; font: 500 clamp(20px, 2.2vw, 26px)/1.2 var(--display); letter-spacing: -.02em; text-align: left; }
body.site-index.site-index.site-index .post-card__title a { color: var(--ink); text-decoration: none; }
body.site-index.site-index.site-index .post-card__title a::after { content: ""; position: absolute; inset: 0; } /* whole row clickable */
body.site-index.site-index.site-index .post-card__description { margin: 0; font-size: 15px; line-height: 1.5; color: var(--muted); }
body.site-index.site-index.site-index .post-card__link { display: none; }
body.site-index.site-index.site-index .post-card__meta { display: flex; flex-wrap: wrap; gap: 4px 12px; margin: 0 0 6px; }
body.site-index.site-index.site-index .post-card__meta .tag { position: relative; z-index: 1; }

/* tags: plain text, no pills */
body.site-index.site-index.site-index .tag, body.site-index.site-index.site-index .tags .tag {
  display: inline; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none;
  font: 500 13px var(--display); color: var(--muted); text-decoration: none;
}
body.site-index.site-index.site-index a.tag:hover { color: var(--ink); background: linear-gradient(var(--hot), var(--hot)) 0 100% / 100% 5px no-repeat; }
body.site-index.site-index.site-index .tags { display: flex; flex-wrap: wrap; gap: 4px 14px; justify-content: flex-start; margin: 0; padding: 0; }

/* article */
body.site-index.site-index.site-index .article { max-width: 1168px; margin: 0 auto; padding: 0 0 100px; background: none; box-shadow: none; text-align: left; }
body.site-index.site-index.site-index .article__header { max-width: 900px; margin: 48px 0 40px; padding: 0; text-align: left; }
body.site-index.site-index.site-index .article__meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 20px; justify-content: flex-start; margin: 0 0 18px; font: 500 13px var(--display); color: var(--muted); }
body.site-index.site-index.site-index .article__header h1 { margin: 0 0 22px; font: 700 clamp(38px, 5.6vw, 68px)/1 var(--display); letter-spacing: -.04em; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .article__description { max-width: 760px; margin: 0 0 26px; font-size: 21px; line-height: 1.45; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .share-buttons { display: flex; gap: 8px; justify-content: flex-start; margin: 0; }
body.site-index.site-index.site-index .share-button { width: 38px; height: 38px; display: inline-grid; place-items: center; border: 1.5px solid var(--ink); border-radius: 50%; background: none !important; color: var(--ink) !important; font-size: 15px; transform: none; box-shadow: none; }
body.site-index.site-index.site-index .share-button:hover { background: var(--hot) !important; border-color: var(--hot); }
body.site-index.site-index.site-index .article__image { display: block; width: 100%; max-width: 1168px; height: auto; max-height: 560px; margin: 0 0 56px; object-fit: cover; border-radius: 4px; box-shadow: none; }
body.site-index.site-index.site-index .article__content { max-width: 720px; margin: 0; font-size: 19px; line-height: 1.65; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .article__content :is(p, li) { font-size: inherit; line-height: inherit; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .article__content h2 { margin: 2.2em 0 .6em; font: 700 clamp(26px, 3vw, 34px)/1.12 var(--display); letter-spacing: -.03em; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .article__content h3 { margin: 1.8em 0 .5em; font: 600 clamp(20px, 2.2vw, 24px)/1.2 var(--display); letter-spacing: -.015em; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .article__content ul { padding-left: 1.2em; }
body.site-index.site-index.site-index .article__content li { margin: .35em 0; }
body.site-index.site-index.site-index .article__content li::marker { color: var(--ink); }
body.site-index.site-index.site-index .article__content strong { font-weight: 600; }
body.site-index.site-index.site-index .article__content blockquote { margin: 1.6em 0; padding: 0; border: 0; background: none; font: 500 clamp(21px, 2.4vw, 26px)/1.35 var(--display); letter-spacing: -.015em; }
body.site-index.site-index.site-index .article__content hr { margin: 2.5em 0; border: 0; border-top: 1px solid var(--line); }


/* article contact block: same underline form as the home contact */
body.site-index.site-index.site-index .contact-section { max-width: 720px; margin: 0; padding: 72px 0 0; border-top: 1.5px solid var(--ink); background: none; box-shadow: none; text-align: left; }
body.site-index.site-index.site-index .contact-section h2 { margin: 0 0 32px; font: 700 clamp(34px, 4.4vw, 56px)/1 var(--display); letter-spacing: -.035em; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .contact-section .contact-form { max-width: none; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
body.site-index.site-index.site-index .contact-section .two-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; }
body.site-index.site-index.site-index .contact-section .form-group { margin: 0 0 26px; text-align: left; }
body.site-index.site-index.site-index .contact-section .form-group label { display: block; margin-bottom: 4px; font: 500 13px var(--display); color: var(--muted); text-align: left; }
body.site-index.site-index.site-index .contact-section .form-group :is(input, textarea) {
  width: 100%; padding: 10px 0; border: 0; border-bottom: 1.5px solid var(--ink); border-radius: 0;
  background: transparent; color: var(--ink); font: 400 17px Outfit, sans-serif; box-shadow: none;
}
body.site-index.site-index.site-index .contact-section .form-group :is(input, textarea):focus { outline: none; box-shadow: 0 3px 0 var(--hot); }
body.site-index.site-index.site-index .contact-section button[type="submit"] { margin: 6px 0 0; }

/* project page */
body.site-index.site-index.site-index .project-details { margin: 0; padding: 48px 0 0; background: none; box-shadow: none; text-align: left; }
body.site-index.site-index.site-index .project-details > header { margin: 0 0 48px; padding: 0; text-align: left; }
body.site-index.site-index.site-index .project-details h1 { margin: 0 0 18px; font: 700 clamp(44px, 7.4vw, 96px)/.95 var(--display); letter-spacing: -.045em; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .project-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 56px; align-items: start; margin: 0; padding: 0; }
body.site-index.site-index.site-index .project-image { margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
body.site-index.site-index.site-index .project-image img, body.site-index.site-index.site-index img.project-image { display: block; width: 100%; height: auto; border-radius: 4px; box-shadow: 0 18px 40px #10111322; }
body.site-index.site-index.site-index .project-content { position: sticky; top: 24px; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; text-align: left; }
body.site-index.site-index.site-index .project-content .description { margin: 0 0 28px; font-size: 19px; line-height: 1.6; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .project-content h2 { margin: 32px 0 8px; padding-top: 16px; border-top: 1.5px solid var(--ink); font: 600 20px/1.2 var(--display); letter-spacing: -.01em; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .project-content ul { margin: 0 0 8px; padding: 0; list-style: none; }
body.site-index.site-index.site-index .project-content .feature { margin: 0; padding: 10px 0; border-bottom: 1px solid var(--line); background: none; box-shadow: none; }
body.site-index.site-index.site-index .project-content .feature::before { display: none; }
body.site-index.site-index.site-index .project-content .feature p { margin: 0; font-size: 16px; line-height: 1.5; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .project-content blockquote { margin: 28px 0 0; padding: 0; border: 0; background: none; font: 500 20px/1.4 var(--display); letter-spacing: -.01em; color: var(--ink); }
body.site-index.site-index.site-index .project-content .btn-primary { display: inline-flex; margin: 28px 0 0; }

/* project CTA: full-bleed lime band, same as the home budget band */
body.site-index.site-index.site-index .cta-section {
  margin: 110px calc(50% - 50vw) 0; padding: 80px max(var(--gutter), calc(50vw - 584px));
  border: 0; border-radius: 0; background: var(--hot); color: var(--ink); text-align: left; box-shadow: none;
}
body.site-index.site-index.site-index .cta-content { max-width: 1168px; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; text-align: left; }
body.site-index.site-index.site-index .cta-title { margin: 0 0 14px; font: 700 clamp(30px, 4.4vw, 56px)/1.02 var(--display); letter-spacing: -.035em; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .cta-title a { color: var(--ink); text-decoration: underline; text-decoration-thickness: 3px; text-underline-offset: 6px; }
body.site-index.site-index.site-index .cta-description { max-width: 640px; margin: 0 0 28px; font-size: 18px; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .cta-section .btn-primary { background: var(--ink); border-color: var(--ink); color: var(--paper); }
body.site-index.site-index.site-index .cta-section .btn-primary:is(:hover, :focus-visible) { background: var(--paper); color: var(--ink); }

/* footer */
body.site-index.site-index.site-index .footer { margin-top: 0; background: var(--paper); border-top: 0; }
body.site-index.site-index.site-index .footer > .container { max-width: 1280px; padding-inline: var(--gutter); }
body.site-index.site-index.site-index .footer__location { margin-top: 110px; padding-top: 30px; border-top: 1.5px solid var(--ink); text-align: left; }
body.site-index.site-index.site-index .cta-section + .footer .footer__location, body.site-index.site-index.site-index .cta-section ~ .footer .footer__location { margin-top: 0; border-top: 0; }
body.site-index.site-index.site-index .location__areas { justify-content: flex-start; gap: 56px; max-width: none; margin: 0; }
body.site-index.site-index.site-index .location__primary { flex: 1.4; }
body.site-index.site-index.site-index .location__secondary { flex: 1; }
body.site-index.site-index.site-index .footer__location h3 { font: 500 16px var(--display); color: var(--ink); }
body.site-index.site-index.site-index .footer a { color: var(--muted); }
body.site-index.site-index.site-index .footer__bottom { background: var(--paper); }


/* ---------- local landing pages (cities + artisan): retheme local-pages-refresh.css through its variables ---------- */
body.site-index.site-index.site-index.local-landing, body.site-index.site-index.site-index.local-landing--artisan {
  --local-ink: #101113;
  --local-muted: #5a5b5e;
  --local-paper: #f4f4f1;
  --local-surface: #f9f9f6;
  --local-line: #dcdcd6;
  --local-accent: #101113;
  --local-accent-dark: #101113;
  --local-accent-soft: #e9eae3;
}
body.site-index.site-index.site-index.local-landing main { background: var(--paper); }
body.site-index.site-index.site-index.local-landing main :where(h2, h3, h4) { font-family: var(--display); letter-spacing: -.02em; }
body.site-index.site-index.site-index.local-landing main h2 { font-weight: 700; letter-spacing: -.03em; }
body.site-index.site-index.site-index.local-landing :is(.local-seo-banner-image-content, .metier-seo-banner-image-content) h1 { font-family: var(--display); font-weight: 700; letter-spacing: -.04em; }
body.site-index.site-index.site-index.local-landing main .btn-primary { color: var(--ink) !important; background: var(--hot) !important; border-color: var(--hot) !important; }
body.site-index.site-index.site-index.local-landing main .btn-primary:hover { color: var(--ink) !important; background: var(--hot) !important; }
body.site-index.site-index.site-index.local-landing main .btn-secondary { color: var(--ink) !important; border-color: var(--ink) !important; }
body.site-index.site-index.site-index.local-landing main .btn-secondary:hover { color: var(--ink) !important; background: var(--hot) !important; border-color: var(--hot) !important; }
/* white-text secondary buttons inside dark cards (inline color #fff !important): keep a dark hover */
body.site-index.site-index.site-index.local-landing main .btn-secondary[style*="#fff"]:hover { background: rgb(255 255 255 / .14) !important; border-color: #fff !important; }
body.site-index.site-index.site-index.local-landing main :is(.btn-primary, .btn-secondary):focus-visible { outline: 3px solid var(--ink); }
body.site-index.site-index.site-index.local-landing main :is(p, li) a:not(.btn-primary):not(.btn-secondary):not(.breadcrumb a) { color: var(--ink); text-decoration: none; background: linear-gradient(var(--hot), var(--hot)) 0 100% / 100% 5px no-repeat; }
body.site-index.site-index.site-index.local-landing :is(.cta, .cta-card, .contact-card) :is(h2, h3, p) { color: inherit; }
body.site-index.site-index.site-index.local-landing main :is(span.icon, span.peak-marker) { display: none !important; }  /* decorative emoji icons */
body.site-index.site-index.site-index.local-landing :is(.zone-bubble, .zone-peak, .zone-name) { background: none; border: 1px solid var(--local-line); color: var(--ink); }
body.site-index.site-index.site-index.local-landing :is(.zone-bubble, .zone-peak, .zone-name):hover { background: var(--hot); border-color: var(--hot); color: var(--ink); }

/* ---------- expertise pages (maintenance, agences) ---------- */
body.site-index.site-index.site-index .wp-maintenance { --maintenance-ink: #101113; --maintenance-muted: #5a5b5e; --maintenance-line: #dcdcd6; }
body.site-index.site-index.site-index .wp-maintenance :is(h1, h2, h3) { font-family: var(--display); letter-spacing: -.03em; color: var(--ink); }
body.site-index.site-index.site-index .wp-maintenance h1 { max-width: 14ch; font-size: clamp(40px, 6vw, 76px); font-weight: 700; line-height: .98; letter-spacing: -.045em; }
body.site-index.site-index.site-index .wp-maintenance h2 { font-weight: 700; }
body.site-index.site-index.site-index .wp-maintenance .btn-primary { background: var(--hot); border-color: var(--hot); color: var(--ink); }
body.site-index.site-index.site-index .wp-maintenance .btn-primary:hover { background: var(--hot); color: var(--ink); }
body.site-index.site-index.site-index .wp-maintenance :is(p, li) a:not(.btn-primary):not(.breadcrumb a) { color: var(--ink); text-decoration: none; background: linear-gradient(var(--hot), var(--hot)) 0 100% / 100% 5px no-repeat; }

/* ---------- shared FAQ (local and expertise pages) ---------- */
body.site-index.site-index.site-index .faq { max-width: 1168px; margin: 0 auto; padding: 100px var(--gutter) 0; box-sizing: content-box; text-align: left; border: 0; background: none; }
body.site-index.site-index.site-index .faq > h2 { margin: 0 0 28px; padding-top: 22px; border-top: 1.5px solid var(--ink); font: 700 clamp(30px, 4vw, 48px)/1.05 var(--display); letter-spacing: -.035em; color: var(--ink); text-align: left; }
body.site-index.site-index.site-index .faq__grid { display: block; max-width: none; margin: 0; padding: 0; }
body.site-index.site-index.site-index .faq-item { margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: none !important; box-shadow: none; transform: none; }
body.site-index.site-index.site-index .faq-item:hover { transform: none; box-shadow: none; }
body.site-index.site-index.site-index .faq-item__question { padding: 20px 40px 20px 0; font: 500 20px/1.3 var(--display); letter-spacing: -.01em; color: var(--ink); }
body.site-index.site-index.site-index .faq-item__question::after { color: var(--ink) !important; }
body.site-index.site-index.site-index .faq-item__answer { max-width: 760px; margin: 0; padding: 0 0 22px; font-size: 17px; color: var(--muted); }

/* ---------- utility pages (legal, 404) ---------- */
body.site-index.site-index.site-index .expertise-seo:not(.wp-maintenance) { max-width: 1168px; margin: 0 auto; padding: 0 var(--gutter) 40px; box-sizing: content-box; text-align: left; }
body.site-index.site-index.site-index .expertise-seo :is(p, ul) { max-width: 760px; }
body.site-index.site-index.site-index main.py-12 .max-w-3xl { max-width: 860px; margin-inline: 0; text-align: left; }
body.site-index.site-index.site-index .error-container, body.site-index.site-index.site-index .error-container :is(h1, h2, p) { text-align: center; margin-inline: auto; }
body.site-index.site-index.site-index :is(.expertise-seo, .error-container, main.py-12) :is(h1, h2, h3) { font-family: var(--display); color: var(--ink); }
body.site-index.site-index.site-index :is(.expertise-seo, main.py-12) :is(h1, h2, h3) { text-align: left; }
body.site-index.site-index.site-index :is(.expertise-seo, .error-container, main.py-12) h1 { margin: 40px 0 20px; font-size: clamp(38px, 5.6vw, 68px); font-weight: 700; line-height: 1; letter-spacing: -.04em; }
body.site-index.site-index.site-index :is(.expertise-seo, .error-container, main.py-12) h2 { margin: 2em 0 .6em; font-size: clamp(24px, 2.8vw, 32px); font-weight: 700; line-height: 1.15; letter-spacing: -.03em; }
body.site-index.site-index.site-index :is(.expertise-seo, .error-container, main.py-12) h3 { font-size: 21px; font-weight: 600; letter-spacing: -.015em; }
body.site-index.site-index.site-index :is(.expertise-seo, main.py-12) :is(p, li) { color: var(--ink); font-size: 17px; line-height: 1.65; text-align: left; }
body.site-index.site-index.site-index .expertise-seo .btn-primary { margin-inline: 0; }

@media (max-width: 900px) {
  body.site-index.site-index.site-index .project-grid { grid-template-columns: 1fr; gap: 40px; }
  body.site-index.site-index.site-index .project-content { position: static; order: -1; }
}
@media (max-width: 768px) {
  body.site-index.site-index.site-index { --gutter: 20px; }
  body.site-index.site-index.site-index .blog { padding-top: 28px; }
  body.site-index.site-index.site-index .blog__intro { margin-bottom: 40px; font-size: 16px; }
  body.site-index.site-index.site-index :is(.blog__grid, .posts-grid) .post-card { grid-template-columns: 96px minmax(0, 1fr); column-gap: 16px; row-gap: 4px; padding: 16px 0; }
  body.site-index.site-index.site-index :is(.blog__grid, .posts-grid) .post-card:hover { padding-inline: 0; background: none; }
  body.site-index.site-index.site-index .post-card__image { width: 96px; height: 72px; grid-row: 1 / span 2; }
  body.site-index.site-index.site-index :is(.blog__grid, .posts-grid) .post-card time { grid-column: 2; grid-row: auto; text-align: left; font-size: 12px; }
  body.site-index.site-index.site-index .post-card__description { font-size: 14px; }
  body.site-index.site-index.site-index .article__header { margin-top: 28px; }
  body.site-index.site-index.site-index .article__description { font-size: 18px; }
  body.site-index.site-index.site-index .article__image { margin-bottom: 36px; }
  body.site-index.site-index.site-index .article__content { font-size: 17px; }
  body.site-index.site-index.site-index .project-details { padding-top: 28px; }
  body.site-index.site-index.site-index .cta-section { margin-top: 70px; padding: 56px var(--gutter); }
  body.site-index.site-index.site-index .footer__location { margin-top: 70px; }
  body.site-index.site-index.site-index .location__areas { flex-direction: column; gap: 28px; }
  body.site-index.site-index.site-index .contact-section { padding-top: 48px; }
  body.site-index.site-index.site-index .contact-section .two-columns { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  body.site-index.site-index.site-index .btn-primary, body.site-index.site-index.site-index :is(.blog__grid, .posts-grid) .post-card { transition: none; }
}
