:root {
  --brush-lg: url("/wp-content/uploads/2026/07/hf_20260714_111258_47ab1d88-100f-4a5a-994d-edd09d27715a.png");
  --brush-angle: -115deg;
}
.brush-head { position: relative; display: inline-block; }
.brush-fill { position: relative; z-index: 1; display: inline-block; }
.brush-on .brush-head .brush-fill { clip-path: inset(-0.12em -0.18em -0.12em 100%); transition: clip-path 0.5s cubic-bezier(.36,.12,.2,1); }
.brush-on .brush-head.painting .brush-fill { clip-path: inset(-0.12em -0.18em -0.12em -0.05em); }
.brush-sweep { position: absolute; z-index: 3; top: 50%; right: -1.1em; width: 4.6em; height: 4.6em; margin-top: -2.45em; opacity: 0; pointer-events: none; will-change: transform, opacity; background: var(--brush-lg) center / contain no-repeat; transform: translateX(0.6em) rotate(var(--brush-angle)); transform-origin: 50% 50%; }
.brush-on .brush-head.painting .brush-sweep { animation: brush-write 0.55s cubic-bezier(.36,.12,.2,1) forwards; }
@keyframes brush-write {
  0%   { opacity: 0; transform: translateX(0.6em) rotate(var(--brush-angle)); }
  12%  { opacity: 1; }
  86%  { opacity: 1; transform: translateX(calc(-1 * var(--sweep-dist, 200px))) rotate(var(--brush-angle)); }
  100% { opacity: 0; transform: translateX(calc(-1 * var(--sweep-dist, 200px) - 0.8em)) rotate(var(--brush-angle)); }
}
@media (prefers-reduced-motion: reduce) { .brush-on .brush-head .brush-fill { clip-path: none !important; transition: none !important; } .brush-sweep { display: none !important; } }

/* ===== Block bridge ===== */
.wp-block-group.hero, .wp-block-group.proof-strip, .wp-block-group.value, .wp-block-group.services, .wp-block-group.portfolio, .wp-block-group.journey, .wp-block-group.testimonials, .wp-block-group.about, .wp-block-group.final-cta, .wp-block-group.insta, .wp-block-group.page-hero, .wp-block-group.philosophy, .wp-block-group.addon { margin-block: 0; }
.method > .wp-block-group__inner-container, .service-cards > .wp-block-group__inner-container, .testimonial-grid > .wp-block-group__inner-container, .about-grid > .wp-block-group__inner-container, .hero-ctas > .wp-block-group__inner-container, .insta-grid > .wp-block-group__inner-container, .page-hero-grid > .wp-block-group__inner-container, .addon-grid > .wp-block-group__inner-container { display: contents; }
.value .method { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important; gap: 24px; margin-top: 40px; }
.services .service-cards { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important; gap: 24px; }
@media (min-width: 1100px) { .services .service-cards { grid-template-columns: repeat(5, 1fr) !important; } }
.testimonials .testimonial-grid { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important; gap: 24px; }
.testimonials .t-card { background: #fff; border-radius: 4px; padding: 24px; display: flex; flex-direction: column; gap: 16px; }
.testimonials .t-card .cite { font-weight: 700; color: #1A1A1A; margin: 0; }
.testimonials .stars { color: #C48B94; font-size: 1.1rem; letter-spacing: 3px; margin: 0; }
.about .about-grid { display: grid !important; grid-template-columns: minmax(260px, 420px) 1fr !important; gap: 64px; align-items: center; }
@media (max-width: 860px) { .about .about-grid { grid-template-columns: 1fr !important; } }
.page-hero .page-hero-grid { display: grid !important; grid-template-columns: 1.2fr 1fr !important; gap: 64px; align-items: center; }
@media (max-width: 860px) { .page-hero .page-hero-grid { grid-template-columns: 1fr !important; } }
.addon .addon-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 64px; align-items: center; }
@media (max-width: 860px) { .addon .addon-grid { grid-template-columns: 1fr !important; } }
/* Buttons (general, works on every page) */
.wp-block-button__link { min-height: 50px; padding: 13px 28px; border-radius: 4px; font-weight: 700; font-size: 1.0625rem; line-height: 1.2; border: 1px solid transparent; }
.btn-primary .wp-block-button__link { background: #96525C; color: #fff; }
.btn-primary .wp-block-button__link:hover { background: #8E4B55; }
.btn-secondary .wp-block-button__link { background: transparent; color: #1A1A1A; border-color: #1A1A1A; }
.btn-secondary .wp-block-button__link:hover { background: #1A1A1A; color: #F9F1ED; }
.hero .btn-secondary .wp-block-button__link { color: #F9F1ED; border-color: #F9F1ED; }
.hero .btn-secondary .wp-block-button__link:hover { background: #F9F1ED; color: #1A1A1A; }
.btn-on-dark .wp-block-button__link, .final-cta .wp-block-button__link { background: #F9F1ED; color: #1A1A1A; }
.btn-on-dark .wp-block-button__link:hover, .final-cta .wp-block-button__link:hover { background: #fff; }
/* Journey accordion chevron */
.journey-step summary { list-style: none; }
.journey-step summary::-webkit-details-marker { display: none; }
.journey-step summary::after { content: ""; flex: none; width: 18px; height: 18px; margin-inline-start: auto; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2396525C' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center/contain no-repeat; transition: transform .25s ease-out; }
.journey-step[open] summary::after { transform: rotate(180deg); }
/* Instagram grid */
.insta .insta-head { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-bottom: 24px; }
.insta .insta-head p { margin: 4px 0 0; color: #55453F; }
.insta .insta-grid { display: grid !important; grid-template-columns: repeat(6, 1fr) !important; gap: 8px; }
@media (max-width: 900px) { .insta .insta-grid { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 500px) { .insta .insta-grid { grid-template-columns: repeat(2, 1fr) !important; } }
.insta .insta-grid .wp-block-image { margin: 0; }
.insta .insta-grid img { aspect-ratio: 1; object-fit: cover; width: 100%; border-radius: 2px; }
