.hemlock-article {
–hp-green: #115228;
–hp-green-deep: #04200E;
–hp-green-soft: #E8F1EB;
–hp-sage: #B0CAB8;
–hp-gold: #C69B33;
–hp-gold-soft: #F4E8C5;
–hp-paper: #FCFAF4;
–hp-paper-wash: #DDDCC8;
–hp-text: #26362B;
–hp-muted: #667368;
–hp-border: rgba(17, 82, 40, 0.18);
–hp-white: #FFFFFE;
–hp-radius-sm: 12px;
–hp-radius-md: 18px;
–hp-radius-lg: 26px;
–hp-shadow: 0 18px 45px rgba(4, 32, 14, 0.10);
–hp-shadow-soft: 0 10px 28px rgba(4, 32, 14, 0.08);
–hp-max: 880px;
color: var(–hp-text);
font-family: inherit;
line-height: 1.72;
background: transparent;
}
.hemlock-article *,
.hemlock-article *::before,
.hemlock-article *::after {
box-sizing: border-box;
}
.hemlock-article .hp-wrap {
max-width: var(–hp-max);
margin: 0 auto;
}
.hemlock-article a {
color: var(–hp-green);
text-decoration-thickness: 1.5px;
text-underline-offset: 3px;
}
.hemlock-article a:hover,
.hemlock-article a:focus-visible {
color: var(–hp-green-deep);
}
.hemlock-article :focus-visible {
outline: 3px solid rgba(198, 155, 51, 0.55);
outline-offset: 4px;
border-radius: 8px;
}
.hemlock-article h1,
.hemlock-article h2,
.hemlock-article h3,
.hemlock-article h4 {
color: var(–hp-green-deep);
line-height: 1.12;
letter-spacing: -0.02em;
margin: 0;
}
.hemlock-article h1 {
font-size: clamp(2.35rem, 5vw, 4.8rem);
max-width: 820px;
}
.hemlock-article h2 {
font-size: clamp(1.7rem, 3vw, 2.55rem);
margin-top: 76px;
margin-bottom: 18px;
}
.hemlock-article h3 {
font-size: clamp(1.2rem, 2vw, 1.55rem);
margin-top: 32px;
margin-bottom: 10px;
}
.hemlock-article h4 {
font-size: 1.05rem;
margin-bottom: 8px;
}
.hemlock-article p {
margin: 0 0 18px;
font-size: 1.05rem;
}
.hemlock-article .hp-eyebrow {
display: inline-flex;
align-items: center;
gap: 8px;
margin-bottom: 18px;
color: var(–hp-green);
font-weight: 800;
letter-spacing: 0.12em;
text-transform: uppercase;
font-size: 0.78rem;
}
.hemlock-article .hp-eyebrow svg,
.hemlock-article .hp-icon svg {
width: 18px;
height: 18px;
stroke-width: 2.2;
}
.hemlock-article .hp-hero {
background: transparent;
}
.hemlock-article .hp-hero__dek {
max-width: 780px;
margin-top: 24px;
font-size: clamp(1.1rem, 2vw, 1.35rem);
color: var(–hp-muted);
}
.hemlock-article .hp-hero__meta {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 28px;
}
.hemlock-article .hp-pill {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 9px 12px;
border: 1px solid var(–hp-border);
border-radius: 999px;
color: var(–hp-green-deep);
background: rgba(252, 250, 244, 0.65);
font-size: 0.92rem;
font-weight: 700;
}
.hemlock-article .hp-section-note {
margin: 28px 0;
padding: 22px;
border: 1px solid var(–hp-border);
border-left: 7px solid var(–hp-green);
border-radius: var(–hp-radius-md);
background:
radial-gradient(circle at 22px 22px, rgba(198, 155, 51, 0.12), transparent 28px),
rgba(252, 250, 244, 0.82);
}
.hemlock-article .hp-section-note strong {
color: var(–hp-green-deep);
}
.hemlock-article .hp-button-row {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 24px;
}
.hemlock-article .hp-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
min-height: 48px;
padding: 13px 20px;
border-radius: 999px;
font-weight: 850;
text-decoration: none;
transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}
.hemlock-article .hp-btn svg {
width: 18px;
height: 18px;
}
.hemlock-article .hp-btn–primary {
background: var(–hp-green);
color: var(–hp-white) !important;
box-shadow: var(–hp-shadow-soft);
}
.hemlock-article .hp-btn–primary:hover,
.hemlock-article .hp-btn–primary:focus-visible {
background: var(–hp-green-deep);
color: var(–hp-white) !important;
transform: translateY(-2px);
}
.hemlock-article .hp-btn–secondary {
border: 1px solid var(–hp-border);
color: var(–hp-green-deep);
background: var(–hp-white);
}
.hemlock-article .hp-btn–secondary:hover,
.hemlock-article .hp-btn–secondary:focus-visible {
background: var(–hp-paper);
transform: translateY(-2px);
}
.hemlock-article .hp-grid {
display: grid;
gap: 18px;
}
.hemlock-article .hp-grid–2 {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.hemlock-article .hp-grid–3 {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
.hemlock-article .hp-card {
position: relative;
overflow: hidden;
padding: 22px;
border: 1px solid var(–hp-border);
border-radius: var(–hp-radius-md);
background: var(–hp-white);
box-shadow: var(–hp-shadow-soft);
}
.hemlock-article .hp-card::after {
content: “”;
position: absolute;
right: -34px;
top: -42px;
width: 118px;
height: 118px;
border-radius: 45% 55% 48% 52%;
background: rgba(176, 202, 184, 0.24);
pointer-events: none;
}
.hemlock-article .hp-card–green {
background: linear-gradient(135deg, rgba(17, 82, 40, 0.98), rgba(4, 32, 14, 0.96));
color: var(–hp-white);
}
.hemlock-article .hp-card–green h3,
.hemlock-article .hp-card–green h4,
.hemlock-article .hp-card–green p,
.hemlock-article .hp-card–green li {
color: var(–hp-white);
}
.hemlock-article .hp-card–gold {
background: linear-gradient(135deg, rgba(244, 232, 197, 0.92), rgba(252, 250, 244, 0.96));
}
.hemlock-article .hp-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 42px;
height: 42px;
margin-bottom: 14px;
border-radius: 14px;
background: var(–hp-green-soft);
color: var(–hp-green);
}
.hemlock-article .hp-card–green .hp-icon {
background: rgba(255, 255, 255, 0.14);
color: var(–hp-white);
}
.hemlock-article .hp-card ul,
.hemlock-article .hp-checklist,
.hemlock-article .hp-list {
margin: 12px 0 0;
padding: 0;
list-style: none;
}
.hemlock-article .hp-card li,
.hemlock-article .hp-checklist li,
.hemlock-article .hp-list li {
position: relative;
margin: 10px 0;
padding-left: 30px;
}
.hemlock-article .hp-card li::before,
.hemlock-article .hp-checklist li::before,
.hemlock-article .hp-list li::before {
content: “”;
position: absolute;
left: 0;
top: 0.42em;
width: 16px;
height: 16px;
border-radius: 50%;
background: var(–hp-green);
box-shadow: inset 0 0 0 4px rgba(255, 255, 255, 0.62);
}
.hemlock-article .hp-card–green li::before {
background: var(–hp-gold);
box-shadow: inset 0 0 0 4px rgba(4, 32, 14, 0.35);
}
.hemlock-article .hp-answer {
margin: 38px 0 42px;
padding: 28px;
border-radius: var(–hp-radius-lg);
border: 1px solid var(–hp-border);
box-shadow: var(–hp-shadow);
background: var(–hp-white);
}
.hemlock-article .hp-answer__label {
display: inline-flex;
gap: 8px;
align-items: center;
color: var(–hp-green);
font-size: 0.82rem;
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: 850;
margin-bottom: 12px;
}
.hemlock-article .hp-answer__headline {
font-size: clamp(1.35rem, 2.5vw, 2rem);
line-height: 1.18;
font-weight: 900;
color: var(–hp-green-deep);
margin-bottom: 12px;
}
.hemlock-article .hp-table-wrap {
overflow-x: auto;
margin: 28px 0;
border: 1px solid var(–hp-border);
border-radius: var(–hp-radius-md);
background: var(–hp-white);
box-shadow: var(–hp-shadow-soft);
}
.hemlock-article table {
width: 100%;
min-width: 720px;
border-collapse: collapse;
font-size: 0.98rem;
}
.hemlock-article th,
.hemlock-article td {
padding: 16px;
border-bottom: 1px solid var(–hp-border);
vertical-align: top;
text-align: left;
}
.hemlock-article th {
color: var(–hp-white);
background: var(–hp-green);
font-weight: 850;
}
.hemlock-article tbody tr:nth-child(even) td {
background: rgba(176, 202, 184, 0.12);
}
.hemlock-article tbody tr:last-child td {
border-bottom: 0;
}
.hemlock-article .hp-verdict {
display: inline-flex;
padding: 5px 9px;
border-radius: 999px;
background: var(–hp-green-soft);
color: var(–hp-green-deep);
font-size: 0.78rem;
font-weight: 850;
white-space: nowrap;
}
.hemlock-article .hp-image {
margin: 34px 0;
}
.hemlock-article .hp-image img {
display: block;
width: 100%;
height: auto;
border-radius: var(–hp-radius-lg);
box-shadow: var(–hp-shadow);
}
.hemlock-article .hp-image figcaption {
margin-top: 10px;
color: var(–hp-muted);
font-size: 0.92rem;
}
.hemlock-article .hp-steps {
counter-reset: hp-step;
display: grid;
gap: 14px;
margin: 26px 0;
}
.hemlock-article .hp-step {
counter-increment: hp-step;
display: grid;
grid-template-columns: 58px 1fr;
gap: 18px;
align-items: start;
padding: 20px;
border: 1px solid var(–hp-border);
border-radius: var(–hp-radius-md);
background: var(–hp-white);
box-shadow: var(–hp-shadow-soft);
}
.hemlock-article .hp-step::before {
content: counter(hp-step, decimal-leading-zero);
display: flex;
align-items: center;
justify-content: center;
width: 54px;
height: 54px;
border-radius: 18px;
color: var(–hp-white);
background: var(–hp-green);
font-weight: 900;
}
.hemlock-article .hp-cta {
position: relative;
overflow: hidden;
margin: 46px 0;
padding: clamp(26px, 5vw, 42px);
border-radius: var(–hp-radius-lg);
color: var(–hp-white);
background-size: cover;
background-position: center;
box-shadow: var(–hp-shadow);
isolation: isolate;
}
.hemlock-article .hp-cta::before {
content: “”;
position: absolute;
inset: 0;
background:
linear-gradient(110deg, rgba(4, 32, 14, 0.92), rgba(17, 82, 40, 0.78) 48%, rgba(4, 32, 14, 0.30)),
radial-gradient(circle at 22% 18%, rgba(198, 155, 51, 0.24), transparent 32%);
z-index: -1;
}
.hemlock-article .hp-cta__logo {
display: block;
width: min(210px, 58vw);
height: auto;
margin-bottom: 22px;
filter: brightness(0) invert(1);
}
.hemlock-article .hp-cta h2,
.hemlock-article .hp-cta h3,
.hemlock-article .hp-cta p {
color: var(–hp-white);
}
.hemlock-article .hp-cta h2 {
margin-top: 0;
font-size: clamp(1.65rem, 3vw, 2.45rem);
}
.hemlock-article .hp-cta p {
max-width: 650px;
color: rgba(255, 255, 255, 0.9);
}
.hemlock-article .hp-cta .hp-btn–primary {
background: var(–hp-white);
color: var(–hp-green-deep) !important;
}
.hemlock-article .hp-cta .hp-btn–primary:hover,
.hemlock-article .hp-cta .hp-btn–primary:focus-visible {
background: var(–hp-gold-soft);
color: var(–hp-green-deep) !important;
}
.hemlock-article .hp-cta .hp-btn–secondary {
border-color: rgba(255, 255, 255, 0.42);
color: var(–hp-white) !important;
background: rgba(255, 255, 255, 0.08);
}
.hemlock-article .hp-cta .hp-btn–secondary:hover,
.hemlock-article .hp-cta .hp-btn–secondary:focus-visible {
background: rgba(255, 255, 255, 0.16);
color: var(–hp-white) !important;
}
.hemlock-article .hp-faq {
margin-top: 26px;
}
.hemlock-article .hp-faq details {
border: 1px solid var(–hp-border);
border-radius: var(–hp-radius-md);
background: var(–hp-white);
box-shadow: var(–hp-shadow-soft);
margin-bottom: 12px;
overflow: hidden;
}
.hemlock-article .hp-faq summary {
cursor: pointer;
padding: 18px 20px;
color: var(–hp-green-deep);
font-weight: 850;
}
.hemlock-article .hp-faq details p {
padding: 0 20px 20px;
margin: 0;
}
.hemlock-article .hp-references {
margin-top: 68px;
padding-top: 28px;
border-top: 1px solid var(–hp-border);
}
.hemlock-article .hp-references h2 {
margin-top: 0;
}
.hemlock-article .hp-references ol {
padding-left: 22px;
}
.hemlock-article .hp-references li {
margin: 10px 0;
color: var(–hp-muted);
font-size: 0.94rem;
}
.hemlock-article sup {
font-size: 0.72em;
line-height: 0;
}
.hemlock-article sup a {
font-weight: 850;
text-decoration: none;
}
.hemlock-article .hp-schema {
display: none;
}
@media (max-width: 760px) {
.hemlock-article .hp-grid–2,
.hemlock-article .hp-grid–3 {
grid-template-columns: 1fr;
}
.hemlock-article .hp-step {
grid-template-columns: 1fr;
}
.hemlock-article .hp-step::before {
width: 46px;
height: 46px;
}
.hemlock-article h2 {
margin-top: 56px;
}
}
Painting a popcorn ceiling can be the fastest cosmetic refresh.