@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');
:root{color-scheme:light;--ink:#213d38;--muted:#58736c;--forest:#164b41;--cream:#f7f5ef;--line:#d8e0d8;--white:#fff;--accent:#d8af74}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}h1,h2,h3{font-family:'Libre Baskerville',Georgia,serif;line-height:1.2;letter-spacing:-.035em}h1{font-size:clamp(2.7rem,6vw,5.2rem);margin:.3em 0}h2{font-size:clamp(1.9rem,3.5vw,3rem);margin:.25em 0 .7em}h3{font-size:1.28rem}a{color:var(--forest)}button,.button{display:inline-flex;align-items:center;justify-content:center;background:var(--forest);color:#fff;border:1px solid var(--forest);border-radius:4px;padding:.78rem 1.3rem;text-decoration:none;font:600 1rem 'DM Sans',sans-serif;cursor:pointer}button:hover,.button:hover{background:#0b352e}.button.secondary{background:transparent;color:var(--forest)}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.78rem;font-weight:700;color:#83613a}.top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem max(4vw,1.25rem);background:#fff}.brand{display:flex;align-items:center;gap:.7rem;color:var(--forest);font-family:Georgia,serif;font-weight:700;font-size:1.15rem;line-height:1.1;text-decoration:none}.brand small{display:block;font:500 .75rem 'DM Sans',sans-serif;letter-spacing:.07em;margin-top:.3rem}.brand-mark{display:grid;place-items:center;width:2.4rem;height:2.4rem;border:1px solid var(--accent);border-radius:50%;color:#a57e48;font-size:1.6rem}.top nav{display:flex;gap:1rem;flex-wrap:wrap;justify-content:flex-end}.top nav a{text-decoration:none;font-size:.88rem;font-weight:600}.top nav a:hover{text-decoration:underline}main{max-width:1440px;margin:auto}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:610px;background:#e8ede5}.hero-text{padding:clamp(3rem,7vw,7rem);align-self:center}.lead{font-size:1.22rem;max-width:33rem;margin-bottom:2rem}.hero-art{background:#a9bca9 url('horse.jpg') center/cover no-repeat;min-height:350px}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,7rem);padding:6rem max(6vw,1.4rem);align-items:start}.split p{font-size:1.12rem;margin-top:0}.panel{margin:0 max(4vw,1rem);padding:4rem clamp(2rem,7vw,7rem);background:#dfe9df;max-width:1100px}.panel>p:last-child{max-width:650px;font-size:1.12rem}.posts{padding:5rem max(6vw,1.4rem)}.post-grid,.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.card{background:#fff;border:1px solid var(--line);border-radius:5px;padding:1.5rem}.post-grid .card p{white-space:normal;overflow-wrap:anywhere}.post-grid time,.subtle,.card small{color:var(--muted);font-size:.9rem}.contact{background:var(--forest);color:white;padding:5rem max(6vw,1.4rem)}.contact .eyebrow{color:#e4c28c}.contact .button{background:#f1dfbd;color:#203d37;border-color:#f1dfbd}.contact .secondary{background:transparent;color:#fff;border-color:#fff}.narrow{max-width:780px;padding:3rem 1.25rem;min-height:65vh}.narrow h1,.admin h1{font-size:clamp(2.2rem,4vw,3.7rem)}.admin{max-width:1100px;padding:2rem 1.25rem 5rem;min-height:70vh}.admin-head{margin-bottom:1.5rem}.admin .tiles{grid-template-columns:repeat(2,1fr)}.tiles .card{text-decoration:none}.tiles .card h2{font-size:1.55rem}.form{display:grid;gap:1rem;margin:1.4rem 0 2.5rem}.form label{display:grid;gap:.35rem;font-weight:600}.form input:not([type=checkbox]),.form textarea,.form select{width:100%;padding:.7rem .8rem;border:1px solid #aebfb6;border-radius:4px;font:inherit;background:#fff;color:var(--ink)}.form textarea{resize:vertical}.form button{justify-self:start}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form label.inline{display:flex;align-items:center}.alert,.success{padding:1rem;background:#fce5df;border-left:4px solid #a63b29}.success{background:#e4f1e4;border-color:#367851}.list{display:grid;gap:.65rem}.list-row{background:#fff;border:1px solid var(--line);padding:1rem 1.2rem;display:flex;justify-content:space-between;gap:1rem;align-items:center}.list-row small{display:block;color:var(--muted)}.list-row>div:last-child{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.list-row form{display:inline}.text-button{border:0;background:none;color:#8b3b32;padding:0;font:inherit;text-decoration:underline}.legal{white-space:normal}.invoice-wrap{max-width:900px;padding:2rem 1rem}.print-tools{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.invoice{background:#fff;padding:3.5rem;min-height:950px;box-shadow:0 5px 30px #1d352019}.invoice h1{font-size:3rem}.invoice-head,.invoice-meta{display:flex;justify-content:space-between;gap:3rem}.invoice-head>div:last-child{text-align:right}.invoice-meta{margin:6rem 0 3rem}.invoice-meta strong{display:block}table{width:100%;border-collapse:collapse}th{text-align:left;border-bottom:2px solid var(--forest);padding:.8rem .4rem}td{padding:1rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}td:not(:first-child),th:not(:first-child){text-align:right}.totals{width:min(360px,100%);margin:2rem 0 0 auto}.totals>div{display:flex;justify-content:space-between;padding:.5rem 0}.totals .grand{font-size:1.2rem;border-top:2px solid var(--forest)}.tax-note{font-size:.9rem}.invoice-foot{margin-top:6rem}footer{padding:2rem max(4vw,1rem);background:#fff;color:var(--muted);font-size:.85rem}footer a{margin-left:1rem}
.brand-logo{display:block;width:80px;height:80px;object-fit:contain;flex:none}.hero-logo{display:block;width:clamp(130px,18vw,205px);height:auto;margin:0 0 1.2rem;border-radius:3px}
@media(max-width:800px){.top{align-items:flex-start;flex-direction:column}.hero{grid-template-columns:1fr}.hero-text{padding:3rem 1.5rem}.hero-art{min-height:320px}.split{grid-template-columns:1fr;padding:4rem 1.5rem;gap:1rem}.post-grid{grid-template-columns:1fr}.admin .tiles{grid-template-columns:1fr}.invoice{padding:1.4rem;min-height:auto}.invoice-head,.invoice-meta{gap:1rem}.invoice-head>div:last-child{font-size:.85rem}.invoice-meta{margin:3rem 0}.list-row{align-items:flex-start;flex-direction:column}}
.danger{background:#932d24;border-color:#932d24}.danger:hover{background:#742019}.delete-link{color:#932d24}
@media(max-width:480px){.form-row{grid-template-columns:1fr}.invoice-head,.invoice-meta{display:block}.invoice-head>div:last-child{text-align:left;margin-top:2rem}table{font-size:.82rem}th,td{padding:.5rem .15rem}}
@media print{body{background:#fff}.top,.print-tools,footer{display:none!important}.invoice-wrap{padding:0;max-width:none}.invoice{box-shadow:none;padding:0;min-height:auto}@page{size:A4;margin:18mm}}
