:root { --ink:#101711; --green:#173c2c; --fairway:#2f6a47; --cream:#f4f0e5; --paper:#fffdf7; --red:#b52a31; --line:rgba(16,23,17,.14); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
.site-header { min-height:78px; padding:16px clamp(22px,5vw,76px); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); background:rgba(255,253,247,.94); position:sticky; top:0; z-index:20; backdrop-filter:blur(12px); }
.brand { display:flex; align-items:center; gap:12px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.brand-mark { width:42px; height:42px; border-radius:50%; display:grid; place-items:center; color:white; background:var(--green); font-size:12px; letter-spacing:-.03em; }
nav { display:flex; align-items:center; gap:clamp(18px,3vw,40px); font-size:14px; font-weight:700; }
nav a:hover,.footer-links a:hover { color:var(--red); }
.nav-shop { border:1px solid var(--ink); padding:11px 18px; border-radius:999px; }
.nav-shop:hover { background:var(--ink); color:white; }
.hero { min-height:700px; display:grid; grid-template-columns:1.05fr .95fr; overflow:hidden; }
.hero-copy { padding:clamp(68px,10vw,140px) clamp(28px,7vw,100px); align-self:center; }
.eyebrow { margin:0 0 20px; color:var(--fairway); text-transform:uppercase; letter-spacing:.22em; font-size:12px; font-weight:900; }
.eyebrow.light { color:#b8d4c2; }
h1,h2 { font-family:Georgia,'Times New Roman',serif; letter-spacing:-.045em; margin:0; }
h1 { font-size:clamp(54px,6.5vw,96px); line-height:.96; font-weight:500; }
h1 em { color:var(--red); font-weight:500; }
.hero-text { max-width:610px; margin:32px 0; font-size:clamp(18px,1.6vw,22px); line-height:1.6; color:#526056; }
.hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:26px; }
.button { min-height:54px; padding:0 24px; display:inline-flex; align-items:center; justify-content:center; gap:12px; border-radius:4px; font-size:14px; font-weight:900; transition:transform .2s ease,background .2s ease; }
.button:hover { transform:translateY(-2px); }
.button-primary { background:var(--green); color:white; box-shadow:0 12px 28px rgba(23,60,44,.2); }
.button-primary:hover { background:var(--fairway); }
.social-link { display:inline-flex; align-items:center; gap:9px; font-weight:800; }
.trust-row { display:flex; flex-wrap:wrap; gap:18px 30px; margin-top:55px; padding-top:24px; border-top:1px solid var(--line); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.trust-row span::before { content:'✓'; color:var(--fairway); margin-right:8px; }
.logo-stage { min-height:650px; background:var(--cream); position:relative; display:grid; place-items:center; padding:50px; isolation:isolate; }
.logo-stage img { width:min(88%,650px); aspect-ratio:1; object-fit:cover; border-radius:50%; position:relative; z-index:2; mix-blend-mode:multiply; filter:contrast(1.03); }
.circle-accent { position:absolute; width:70%; aspect-ratio:1; border-radius:50%; border:1px solid rgba(23,60,44,.25); }
.circle-accent::before,.circle-accent::after { content:''; position:absolute; border:1px solid rgba(23,60,44,.12); border-radius:50%; inset:-40px; }
.circle-accent::after { inset:-80px; }
.local-badge { position:absolute; z-index:3; right:8%; bottom:9%; width:105px; height:105px; border-radius:50%; background:var(--red); color:white; display:grid; place-content:center; text-align:center; transform:rotate(-8deg); box-shadow:0 12px 30px rgba(0,0,0,.18); }
.local-badge strong { font-family:Georgia,serif; font-size:36px; line-height:1; }
.local-badge span { font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
.mission { background:var(--green); color:white; padding:100px max(7vw,28px); display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:end; }
.mission .eyebrow { grid-column:1/-1; margin-bottom:-25px; }
.mission h2,.cta h2 { font-size:clamp(42px,5vw,72px); line-height:1.04; }
.mission>p:last-child { max-width:660px; color:#d1dfd5; line-height:1.8; font-size:18px; margin:0; }
.dogs { padding:110px max(7vw,28px); background:var(--cream); }
.dogs-heading { display:grid; grid-template-columns:1fr .8fr; gap:22px 60px; align-items:end; margin-bottom:55px; }
.dogs-heading .eyebrow { grid-column:1/-1; margin-bottom:0; }
.dogs-heading h2 { font-size:clamp(48px,5vw,76px); }
.dogs-heading>p:last-child { margin:0; color:#5a655d; line-height:1.75; font-size:17px; }
.dogs-layout { display:grid; grid-template-columns:minmax(320px,.85fr) 1.15fr; gap:clamp(32px,5vw,80px); align-items:stretch; }
.dog-photo { margin:0; min-height:620px; overflow:hidden; border:1px solid rgba(23,60,44,.18); background:white; }
.dog-photo img { width:100%; height:100%; object-fit:cover; display:block; }
.dog-bios { display:grid; grid-template-columns:1fr; border-top:1px solid rgba(23,60,44,.25); }
.dog-bios article { padding:34px 0; }
.dog-bios article+article { border-top:1px solid rgba(23,60,44,.18); }
.dog-role { color:var(--red); font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.18em; }
.dog-bios h3 { margin:14px 0 14px; font-family:Georgia,serif; font-size:29px; }
.dog-bios p { margin:0; color:#59635c; line-height:1.72; }
.latest { padding:110px max(7vw,28px); background:var(--paper); overflow:hidden; }
.latest-heading { margin-bottom:52px; }
.scroll-rail { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(300px,38vw); gap:18px; overflow-x:auto; padding:4px 0 24px; scroll-snap-type:x mandatory; scrollbar-color:var(--green) var(--cream); }
.feed-card { min-height:390px; padding:34px; display:flex; flex-direction:column; align-items:flex-start; border:1px solid var(--line); scroll-snap-align:start; transition:transform .2s ease,box-shadow .2s ease; }
.feed-card:hover { transform:translateY(-3px); box-shadow:0 18px 45px rgba(16,23,17,.12); }
.feed-icon { width:48px; height:48px; border:1px solid currentColor; border-radius:50%; display:grid; place-items:center; margin-bottom:auto; font-size:24px; }
.feed-logo { font-size:32px; font-weight:900; letter-spacing:-.06em; margin-bottom:auto; }
.feed-kicker { margin:28px 0 15px; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.18em; opacity:.72; }
.feed-card strong { font-family:Georgia,serif; font-size:clamp(30px,3vw,43px); line-height:1.08; font-weight:500; }
.feed-action { margin-top:32px; font-size:13px; font-weight:900; }
.instagram-card { background:#e9ddd4; }
.ebay-card { background:var(--green); color:white; }
.ebay-card .feed-logo { color:#f0b840; }
.tiktok-card { background:var(--ink); color:white; }
.shop-card { background:var(--red); color:white; }
.swipe-note { margin:12px 0 0; color:#6d756f; font-size:12px; text-transform:uppercase; letter-spacing:.12em; font-weight:800; }
.features { padding:110px max(7vw,28px); }
.section-heading { display:grid; grid-template-columns:1fr .65fr; gap:50px; align-items:end; margin-bottom:70px; }
.section-heading h2 { font-size:clamp(46px,5vw,74px); }
.section-heading>p { margin:0; color:#5a655d; line-height:1.7; font-size:17px; }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.feature-grid article { padding:40px 38px 30px 0; }
.feature-grid article+article { border-left:1px solid var(--line); padding-left:38px; }
.feature-number { color:var(--red); font-size:12px; font-weight:900; letter-spacing:.15em; }
.feature-grid h3 { margin:34px 0 15px; font-family:Georgia,serif; font-size:26px; }
.feature-grid p { color:#626d65; line-height:1.7; margin:0; }
.cta { margin:0 max(4vw,20px) 40px; padding:65px max(4vw,28px); background:var(--red); color:white; display:flex; align-items:center; justify-content:space-between; gap:40px; }
.button-light { background:white; color:var(--ink); flex-shrink:0; }
.button-light:hover { background:var(--cream); }
footer { background:var(--ink); color:white; padding:45px max(6vw,26px); display:grid; grid-template-columns:1fr auto; gap:28px; align-items:center; }
footer>div:first-child { display:flex; flex-direction:column; gap:6px; }
footer strong { letter-spacing:.12em; }
footer span,footer small { color:#aeb5af; }
.footer-links { display:flex; flex-wrap:wrap; gap:26px; font-size:14px; font-weight:700; }
footer small { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.12); padding-top:24px; }
@media (max-width:900px) { nav>a:not(.nav-shop){display:none}.hero{grid-template-columns:1fr}.hero-copy{padding-top:76px;padding-bottom:76px}.logo-stage{min-height:500px}.mission,.section-heading,.dogs-heading{grid-template-columns:1fr;gap:28px}.mission .eyebrow{margin-bottom:0}.dogs-heading .eyebrow{grid-column:1}.dogs-layout{grid-template-columns:1fr}.dog-photo{min-height:auto;aspect-ratio:1}.feature-grid{grid-template-columns:1fr}.feature-grid article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}.scroll-rail{grid-auto-columns:minmax(290px,74vw)}.cta{align-items:flex-start;flex-direction:column} }
@media (max-width:560px) { .site-header{min-height:68px;padding:12px 18px}.brand span:last-child{display:none}.nav-shop{padding:10px 14px}.hero-copy{padding-left:22px;padding-right:22px}h1{font-size:52px}.hero-actions{align-items:flex-start;flex-direction:column}.trust-row{display:grid;gap:14px;margin-top:42px}.logo-stage{min-height:410px;padding:25px}.local-badge{width:82px;height:82px;right:4%}.local-badge strong{font-size:28px}.mission,.features,.dogs,.latest{padding-top:76px;padding-bottom:76px}.dog-bios article{padding-right:0}.scroll-rail{grid-auto-columns:86vw}.feed-card{min-height:350px;padding:28px}.cta{margin-left:12px;margin-right:12px;padding:44px 24px}footer{grid-template-columns:1fr}footer small{grid-column:1} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}.button{transition:none} }
