/*
Theme Name: HomeHaloHub Garden Terrace Green
Theme URI: https://homehalohub.com/
Author: HomeHaloHub
Description: Premium Home Improvement resource portal with stepped garden terraces, alternating category levels, round trade icon-discs and structured project cards.
Version: 1.0.0
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
Text Domain: homehalohub
*/
:root{
 --moss:#2F5D3A;
 --sprout:#79B84C;
 --brick:#B5543A;
 --clay:#D99058;
 --cream:#F5F0E6;
 --bark:#3D2E23;
 --sky:#DCEBE4;
 --wrap:1260px;
 --display:Georgia,"Times New Roman",serif;
 --body:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--bark);font-family:var(--body);overflow-x:clip}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input{font:inherit}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:clip;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hh-skip{position:absolute;left:12px;top:8px;z-index:9999;background:var(--sprout);color:var(--cream);padding:10px 14px;transform:translateY(-180%)}
.hh-skip:focus{transform:none}

/* Header */
.hh-header{background:#fff;border-bottom:1px solid #DED8CD}
.hh-head{max-width:var(--wrap);min-height:88px;margin:auto;padding:0 22px;display:grid;grid-template-columns:260px minmax(0,1fr) 242px;gap:22px;align-items:center}
.hh-brand img{width:245px;height:48px;object-fit:contain;object-position:left center}
.hh-nav ul{display:flex;justify-content:center;align-items:center;gap:5px;list-style:none;margin:0;padding:0}
.hh-nav a{display:flex;align-items:center;min-height:44px;padding:0 12px;font-size:12px;font-weight:800;white-space:nowrap;border-bottom:3px solid transparent}
.hh-nav a:hover,.hh-nav .current-menu-item>a{color:var(--moss);border-bottom-color:var(--sprout)}
.hh-search{height:44px;display:grid;grid-template-columns:1fr 44px;border:1px solid #BEB6AA;background:#fff;border-radius:12px;overflow:hidden}
.hh-search input{min-width:0;border:0;padding:0 12px;outline:0;background:#fff;color:var(--bark)}
.hh-search button{border:0;border-left:1px solid #D1CAC0;background:var(--moss);color:var(--cream);font-weight:900}
.hh-trust{border-top:1px solid #ECE7DE}
.hh-trust-inner{max-width:var(--wrap);margin:auto;padding:8px 22px;text-align:center;font-size:10.5px;font-weight:800;letter-spacing:.10em;text-transform:uppercase;color:#726A61}

.hh-main{overflow:hidden}
.hh-inner{max-width:var(--wrap);margin:auto;padding-left:22px;padding-right:22px}
.hh-kicker{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--brick)}
.hh-section-head{display:grid;grid-template-columns:.82fr 1.18fr;gap:52px;align-items:end;margin-bottom:34px}
.hh-section-head h2{font-family:var(--display);font-size:48px;line-height:.97;margin:6px 0 0;font-weight:700}
.hh-section-head p,.hh-section-head>a{margin:0;color:#736C65;line-height:1.65}
.hh-section-head>a{justify-self:end;color:var(--moss);font-weight:800}

/* Stepped edge primitive */
.hh-step-edge{height:48px;position:relative;overflow:hidden}
.hh-step-edge:before{content:"";position:absolute;inset:0;background:var(--next,#fff);clip-path:polygon(0 66%,10% 66%,10% 48%,20% 48%,20% 30%,30% 30%,30% 48%,40% 48%,40% 66%,50% 66%,50% 48%,60% 48%,60% 30%,70% 30%,70% 48%,80% 48%,80% 66%,90% 66%,90% 48%,100% 48%,100% 100%,0 100%)}

/* Hero */
.hh-hero{background:var(--moss);color:var(--cream)}
.hh-hero-inner{max-width:var(--wrap);margin:auto;padding:68px 22px 72px;display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.95fr);gap:58px;align-items:center}
.hh-hero h1{font-family:var(--display);font-size:56px;line-height:.95;margin:10px 0 19px;font-weight:700;max-width:690px}
.hh-hero p{font-size:18px;line-height:1.68;max-width:620px;margin:0 0 26px;color:#E4EBDD}
.hh-actions{display:flex;gap:12px;flex-wrap:wrap}
.hh-btn{min-height:48px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;border-radius:10px}
.hh-btn.sprout{background:var(--sprout);color:var(--cream)}
.hh-btn.outline{border:2px solid var(--cream);color:var(--cream);background:transparent}
.hh-hero-image{background:#fff;padding:10px;border-radius:18px;overflow:hidden}
.hh-hero-image img{width:100%;height:402px;object-fit:cover;border-radius:14px}
.hh-hero-image:after{content:"";display:block;height:8px;background:var(--clay);margin-top:10px;border-radius:4px}
.hh-hero-meta{display:flex;justify-content:space-between;gap:12px;padding:8px 2px 0;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#665447}

/* Stats */
.hh-stats-level{background:var(--cream);padding:38px 0 50px}
.hh-stats{display:grid;grid-template-columns:repeat(4,1fr)}
.hh-stat{text-align:center;padding:12px 18px;position:relative}
.hh-stat:not(:last-child):after{content:"";position:absolute;right:0;top:18%;bottom:18%;width:1px;background:#D7D0C3}
.hh-leaf{width:24px;height:18px;margin:0 auto 10px;border-radius:70% 20% 70% 20%;background:var(--leaf,var(--sprout));transform:rotate(-18deg)}
.hh-stat:nth-child(1){--leaf:#79B84C}.hh-stat:nth-child(2){--leaf:#4E8D40}.hh-stat:nth-child(3){--leaf:#2F5D3A}.hh-stat:nth-child(4){--leaf:#93C966}
.hh-stat strong{display:block;font-family:var(--display);font-size:48px;line-height:.95;font-weight:700;color:var(--bark)}
.hh-stat span{display:block;margin-top:8px;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#746C63}

/* Category terraces */
.hh-cats-wrap{background:var(--cream);padding:58px 0 0}
.hh-cats-wrap .hh-section-head{padding-bottom:10px}
.hh-level{padding:30px 0 36px;position:relative}
.hh-level.cream{background:var(--cream)}
.hh-level.sky{background:var(--sky)}
.hh-level-grid{max-width:var(--wrap);margin:auto;padding:0 22px;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.hh-level-grid.one{grid-template-columns:1fr 1fr 1fr 1fr}
.hh-level-grid.one .hh-category-card{grid-column:2/4}
.hh-category-card{--disc:var(--moss);min-height:224px;background:rgba(255,255,255,.74);padding:28px 22px 22px;border-radius:12px;transition:transform .18s ease,box-shadow .18s ease}
.hh-category-card:nth-child(4n+1){--disc:var(--moss)}
.hh-category-card:nth-child(4n+2){--disc:var(--sprout)}
.hh-category-card:nth-child(4n+3){--disc:var(--brick)}
.hh-category-card:nth-child(4n){--disc:var(--clay)}
.hh-category-card:hover{transform:translateY(-4px);box-shadow:0 10px 22px rgba(61,46,35,.11)}
.hh-category-card:hover .hh-icon-disc{filter:brightness(.82)}
.hh-icon-disc{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:var(--disc);color:#fff;margin-bottom:22px;transition:filter .18s ease}
.hh-category-card:nth-child(4n) .hh-icon-disc{color:var(--bark)}
.hh-icon-disc svg{width:40px;height:40px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hh-category-card h3{font-family:var(--display);font-size:23px;line-height:1.05;margin:0 0 8px}
.hh-category-card p{margin:0;color:#726C65;font-size:13px}
.hh-level-step{height:42px;background:var(--from,var(--cream));position:relative}
.hh-level-step:after{content:"";position:absolute;inset:0;background:var(--to,var(--sky));clip-path:polygon(0 70%,18% 70%,18% 48%,36% 48%,36% 26%,54% 26%,54% 48%,72% 48%,72% 70%,100% 70%,100% 100%,0 100%)}

/* Resources */
.hh-resources{padding:84px 0 92px;background:#fff}
.hh-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 24px}
.hh-card{--disc:var(--moss);position:relative;background:var(--cream);border-radius:12px;overflow:hidden;box-shadow:0 6px 18px rgba(61,46,35,.06)}
.hh-media{padding:10px 10px 0}.hh-media img{width:100%;height:220px;object-fit:cover;border-radius:10px 10px 10px 28px}
.hh-card-body{padding:20px 20px 18px}
.hh-cat{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--disc)}
.hh-card h3{font-family:var(--display);font-size:24px;line-height:1.08;margin:8px 0 9px;color:var(--bark)}
.hh-card p{margin:0;color:#70685F;line-height:1.52}
.hh-card-meta{margin-top:14px;padding-bottom:10px;border-bottom:3px solid var(--sprout);font-size:11px;color:#7A7269}

/* Statement */
.hh-band{background:var(--brick);color:var(--cream);padding:76px 0}
.hh-band-inner{max-width:var(--wrap);margin:auto;padding:0 22px;display:grid;grid-template-columns:.25fr 1.55fr .35fr;gap:42px;align-items:start}
.hh-band-no{font-family:var(--display);font-size:64px;line-height:.9;color:#F3D4B9}
.hh-band strong{display:block;font-family:var(--display);font-size:49px;line-height:1;max-width:900px}
.hh-band span{display:block;margin-top:12px;max-width:760px;line-height:1.65;color:#F3E2D6}
.hh-clay-block{height:150px;background:var(--clay);border-radius:10px}
.hh-older{display:flex;justify-content:center;margin:42px 0 72px}
.hh-older a{min-height:48px;padding:0 20px;background:var(--moss);color:var(--cream);display:inline-flex;align-items:center;font-weight:800;border-radius:10px}

/* Article */
.hh-article-shell{background:var(--cream);padding:48px 0 92px}
.hh-article{max-width:920px;margin:0 auto;padding:0 22px}
.hh-article-head,.hh-article-body{background:var(--cream);border-radius:12px}
.hh-article-head{padding:30px 32px;margin-bottom:18px}
.hh-breadcrumb{font-size:12px;color:var(--moss);margin-bottom:18px}
.hh-article h1{font-family:var(--display);font-size:50px;line-height:1.02;margin:6px 0 14px}
.hh-meta{font-size:13px;color:#776E66;display:flex;gap:10px;flex-wrap:wrap}
.hh-article-body{padding:30px 32px;background:#fff}
.hh-article-hero{margin:0 0 30px;background:var(--sky);padding:8px;border-radius:14px}
.hh-article-hero img{width:100%;height:470px;object-fit:cover;border-radius:10px}
.hh-keypoints{padding:18px 20px;border-left:5px solid var(--sprout);background:var(--sky);margin-bottom:26px}
.hh-keypoints strong{display:block;color:var(--moss);margin-bottom:7px}
.entry-content{font-size:19px;line-height:1.8;color:var(--bark);overflow-wrap:anywhere}
.entry-content p{margin:0 0 1.5em}
.entry-content h2{font-family:var(--display);font-size:32px;margin:2.2em 0 .7em}
.entry-content h3{font-family:var(--display);font-size:26px}
.entry-content a{color:var(--moss);text-decoration:underline;text-underline-offset:.14em}
.hh-inline-related{margin:28px 0;padding:18px 20px;background:var(--sky);border-left:5px solid var(--moss)}
.hh-inline-related-title{display:block;margin-bottom:10px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--moss)}
.hh-inline-related ol{list-style:none;margin:0;padding:0}
.hh-inline-related li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:9px 0;border-top:1px solid #C6D8D0}
.hh-inline-related li:first-child{border-top:0}.hh-link-no{font-size:11px;font-weight:800;color:var(--brick)}
.hh-author{display:grid;grid-template-columns:72px 1fr;gap:18px;padding:22px 0;margin-top:34px;border-top:1px solid #D8D0C5}
.hh-author img{width:72px;height:72px;object-fit:cover;border-radius:50%}
.hh-related{margin-top:48px}.hh-related h2{font-family:var(--display);font-size:34px}
.hh-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

/* Lists */
.hh-list{max-width:1000px;margin:auto;padding:44px 22px 82px}
.hh-list h1{font-family:var(--display);font-size:42px}
.hh-row{border-top:1px solid #D4CCC1;padding:18px 0}
.hh-row h2{font-family:var(--display);font-size:24px;margin:0 0 6px}
.hh-row p{margin:0;color:#6E675F}

/* Footer */
.hh-footer-step{height:48px;background:var(--cream);position:relative}
.hh-footer-step:after{content:"";position:absolute;inset:0;background:var(--moss);clip-path:polygon(0 66%,12% 66%,12% 48%,24% 48%,24% 30%,36% 30%,36% 48%,48% 48%,48% 66%,60% 66%,60% 48%,72% 48%,72% 30%,84% 30%,84% 48%,100% 48%,100% 100%,0 100%)}
.hh-footer{background:var(--moss);color:var(--cream);padding:62px 0 30px}
.hh-foot{max-width:var(--wrap);margin:auto;padding:0 22px}
.hh-foot-top{display:grid;grid-template-columns:1fr 320px;gap:34px;align-items:end;padding-bottom:24px;border-bottom:1px solid rgba(245,240,230,.16)}
.hh-foot-brand img{width:250px;height:48px;object-fit:contain;object-position:left center}
.hh-foot-copy{max-width:650px;color:#D7E3D4;line-height:1.65;margin:14px 0 0}
.hh-foot-levels{display:grid;grid-template-columns:1.4fr 1fr .7fr;gap:7px;align-items:end}
.hh-foot-levels i:nth-child(1){height:34px;background:var(--sprout)}.hh-foot-levels i:nth-child(2){height:48px;background:var(--clay)}.hh-foot-levels i:nth-child(3){height:62px;background:var(--brick)}
.hh-foot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-top:26px}
.hh-foot-grid strong{display:block;color:#D5C7A9;font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}
.hh-foot-grid a{display:block;min-height:32px;color:var(--sprout);font-weight:700}
.hh-copy{margin-top:24px;padding-top:15px;border-top:1px solid rgba(245,240,230,.08);display:flex;justify-content:space-between;color:#B9C8B7;font-size:11px}

:focus-visible{outline:3px solid var(--sprout);outline-offset:2px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:1100px){
 .hh-head{grid-template-columns:205px 1fr 205px;gap:12px}.hh-brand img{width:195px}.hh-nav a{padding:0 7px;font-size:10.9px}
 .hh-level-grid{grid-template-columns:repeat(3,1fr)}
 .hh-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
 .hh-head{grid-template-columns:1fr 215px;padding-top:8px;padding-bottom:8px}.hh-nav{grid-column:1/-1}.hh-nav ul{justify-content:flex-start;flex-wrap:wrap}
 .hh-hero-inner{grid-template-columns:1fr}.hh-hero h1{font-size:46px}
 .hh-stats{grid-template-columns:1fr 1fr}
 .hh-section-head{grid-template-columns:1fr;gap:12px}.hh-section-head>a{justify-self:start}
 .hh-level-grid{grid-template-columns:repeat(2,1fr)}
 .hh-level-grid.one{grid-template-columns:repeat(2,1fr)}.hh-level-grid.one .hh-category-card{grid-column:1/-1}
 .hh-band-inner{grid-template-columns:1fr}.hh-clay-block{height:70px}
 .hh-related-grid{grid-template-columns:1fr}
 .hh-foot-top{grid-template-columns:1fr}
}
@media(max-width:560px){
 .hh-head{grid-template-columns:1fr;padding-left:14px;padding-right:14px}.hh-search{width:100%}
 .hh-hero-inner{padding:44px 14px 54px}.hh-hero h1{font-size:39px}
 .hh-grid{grid-template-columns:1fr}.hh-band strong{font-size:36px}
 .hh-level-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-left:14px;padding-right:14px}
 .hh-category-card{min-height:200px;padding:22px 16px 18px}.hh-icon-disc{width:58px;height:58px}
 .hh-level-step{height:28px}.hh-level-step:after{clip-path:polygon(0 72%,20% 72%,20% 50%,40% 50%,40% 28%,60% 28%,60% 50%,80% 50%,80% 72%,100% 72%,100% 100%,0 100%)}
 .hh-footer-step{height:30px}
 .hh-foot-grid{grid-template-columns:1fr 1fr}
 .hh-article{width:94%;padding-left:0;padding-right:0}.hh-article h1{font-size:38px}
}
