/*
Theme Name: Hastings Home Support
Theme URI: https://example.com/
Author: Hastings Home Support
Description: A responsive sage-green and cream WordPress theme for a non-regulated home help and companionship service.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: hastings-home-support
*/
:root{--sage:#728a76;--sage-dark:#405b49;--sage-pale:#e7ede4;--cream:#fbf8ef;--paper:#fffdf8;--ink:#26362d;--muted:#637168;--line:#dce3d8;--accent:#d6a86a;--radius:22px;--shadow:0 16px 45px rgba(48,67,53,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}a{color:var(--sage-dark)}a:hover{color:#263d2d}img{max-width:100%;height:auto}button,input,textarea{font:inherit}.container{width:min(1120px,calc(100% - 40px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(251,248,239,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(220,227,216,.85)}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);min-width:0}.brand img{width:54px;height:54px;object-fit:contain}.brand-name{display:block;font-size:1.05rem;font-weight:800;letter-spacing:-.03em;line-height:1.2}.brand-tagline{display:block;color:var(--muted);font-size:.75rem;margin-top:4px}.primary-nav ul{list-style:none;display:flex;align-items:center;gap:24px;margin:0;padding:0}.primary-nav a{text-decoration:none;font-size:.92rem;font-weight:650}.nav-toggle{display:none;border:1px solid var(--line);background:var(--paper);padding:10px 13px;border-radius:12px;color:var(--ink)}.button,button.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--sage-dark);color:white;text-decoration:none;border:1px solid var(--sage-dark);padding:13px 20px;border-radius:999px;font-weight:750;transition:transform .2s,background .2s}.button:hover{background:#314837;color:white;transform:translateY(-1px)}.button.secondary{background:transparent;color:var(--sage-dark)}.button.secondary:hover{background:var(--sage-pale)}.hero{padding:74px 0 66px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:55px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--sage-dark);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.eyebrow:before{content:"";width:24px;height:2px;background:var(--accent)}h1,h2,h3{line-height:1.14;letter-spacing:-.04em;margin:0 0 18px}h1{font-size:clamp(2.6rem,5.2vw,4.65rem);max-width:690px}h2{font-size:clamp(2rem,3.5vw,3.1rem)}h3{font-size:1.28rem}.hero p{font-size:1.13rem;color:var(--muted);max-width:590px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-art{position:relative;min-height:390px;display:grid;place-items:center;background:var(--sage-pale);border-radius:44% 44% 28px 28px;overflow:hidden}.hero-art:before,.hero-art:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(114,138,118,.23)}.hero-art:before{width:300px;height:300px}.hero-art:after{width:380px;height:380px}.hero-art img{width:min(68%,330px);position:relative;z-index:1}.art-note{position:absolute;z-index:2;bottom:24px;right:22px;background:var(--paper);border-radius:16px;padding:12px 16px;box-shadow:var(--shadow);font-size:.85rem;font-weight:750}.trust-strip{border-block:1px solid var(--line);background:rgba(255,253,248,.7)}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:20px 0}.trust-item{display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;font-weight:700;font-size:.94rem}.trust-item span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--sage-pale);color:var(--sage-dark)}.section{padding:82px 0}.section-head{max-width:690px;margin:0 auto 38px;text-align:center}.section-head p{color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:27px;box-shadow:0 7px 25px rgba(48,67,53,.035)}.service-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--sage-pale);color:var(--sage-dark);font-size:1.4rem;margin-bottom:19px}.service-card p{color:var(--muted);margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.soft-panel{background:var(--sage-pale);border-radius:32px;padding:38px}.check-list{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:13px}.check-list li{display:flex;gap:12px;align-items:flex-start}.check-list li:before{content:"✓";flex:none;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:white;color:var(--sage-dark);font-weight:900}.muted{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step{padding:25px;border-top:2px solid var(--sage);background:rgba(255,253,248,.68);border-radius:0 0 18px 18px}.step-number{color:var(--sage);font-weight:850;font-size:.82rem;letter-spacing:.12em;margin-bottom:15px}.faq-list{max-width:800px;margin:auto;display:grid;gap:12px}.faq-list details{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:18px 21px}.faq-list summary{font-weight:750;cursor:pointer}.faq-list details p{color:var(--muted);margin-bottom:0}.contact-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;background:var(--sage-pale);padding:38px;border-radius:30px}.contact-panel p{color:var(--muted)}.contact-form{display:grid;gap:14px}.contact-form label{display:grid;gap:6px;font-weight:700;font-size:.92rem}.contact-form input,.contact-form textarea{width:100%;border:1px solid #cbd6ca;background:var(--paper);border-radius:12px;padding:12px 14px;color:var(--ink)}.contact-form textarea{min-height:130px;resize:vertical}.form-note{font-size:.83rem;color:var(--muted)}.site-footer{padding:36px 0;border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.footer-brand{display:flex;align-items:center;gap:10px;font-weight:800}.footer-brand img{width:40px;height:40px}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{font-size:.9rem;text-decoration:none}.copyright{color:var(--muted);font-size:.84rem;margin:10px 0 0}.notice{border-left:3px solid var(--accent);padding:12px 16px;background:rgba(255,253,248,.65);font-size:.9rem;color:var(--muted)}.page-content{padding:60px 0;min-height:45vh}.page-content article{max-width:800px;margin:auto}.page-content h1{font-size:clamp(2.3rem,4vw,3.5rem)}.page-content p{max-width:75ch}.alignwide{max-width:1120px;margin-inline:auto}.alignfull{width:100%}.wp-block-button__link{background:var(--sage-dark);border-radius:999px;color:white;padding:12px 20px;text-decoration:none}.wp-block-image img{border-radius:16px}@media(max-width:900px){.hero-grid,.split{grid-template-columns:1fr;gap:35px}.hero-art{min-height:330px;max-width:580px;width:100%;margin-inline:auto}.cards{grid-template-columns:repeat(2,1fr)}.contact-panel{grid-template-columns:1fr}.primary-nav ul{gap:15px}.brand-tagline{max-width:210px}}@media(max-width:680px){.container{width:min(100% - 28px,1120px)}.header-inner{min-height:72px}.brand img{width:45px;height:45px}.brand-name{font-size:.95rem}.brand-tagline{font-size:.68rem}.nav-toggle{display:inline-flex}.primary-nav{display:none;position:absolute;left:0;right:0;top:100%;padding:10px 14px 18px;background:var(--cream);border-bottom:1px solid var(--line)}.primary-nav.is-open{display:block}.primary-nav ul{display:grid;gap:0}.primary-nav li a{display:block;padding:12px 8px}.hero{padding:50px 0}.hero-art{min-height:280px}.trust-grid{grid-template-columns:1fr;gap:12px;padding:18px 0}.trust-item{justify-content:flex-start;text-align:left}.section{padding:58px 0}.cards,.steps{grid-template-columns:1fr}.service-card{padding:23px}.soft-panel,.contact-panel{padding:25px}.footer-inner{align-items:flex-start}.hero-actions .button{width:100%}}
