:root{--green:#315f52;--dark:#1d443a;--cream:#fcfaf5;--muted:#edf2ee;--gold:#c8913d;--ink:#20312c;--gray:#61706b;--line:#d7dfda;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.65}.wrap{width:min(1120px,calc(100% - 36px));margin:auto}.site-header{position:sticky;top:0;z-index:10;background:rgba(252,250,245,.96);backdrop-filter:blur(10px);border-bottom:1px solid #ddd}.header-inner{min-height:78px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink)}.brand img{width:42px}.brand strong,.brand small{display:block}.brand strong,h1,h2,h3{font-family:Georgia,serif}.brand small{font-size:.78rem;color:var(--gray)}nav{display:flex;align-items:center;gap:22px}nav a{text-decoration:none;color:var(--ink);font-weight:700;font-size:.94rem}.button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:999px;background:var(--green);color:white!important;text-decoration:none;font-weight:800;padding:14px 22px;cursor:pointer}.button:hover{background:var(--dark)}.button.small{padding:10px 16px}.button.ghost{background:transparent;color:var(--green)!important;border:2px solid var(--green)}.menu-button{display:none;border:0;background:none;font-size:1.5rem}.hero{padding:92px 0 78px;background:radial-gradient(circle at 80% 10%,#f3dfb8 0,transparent 31%),linear-gradient(135deg,#fffdf8,#f4f0e6)}.hero-copy{max-width:920px;text-align:center}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.16em;font-weight:900;font-size:.78rem;color:var(--gold)}h1{font-size:clamp(3rem,7vw,6rem);line-height:1.01;margin:0 0 22px}h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.1;margin:0 0 20px}h3{font-size:1.35rem;margin:0 0 10px}.lead{font-size:clamp(1.15rem,2vw,1.4rem);color:var(--gray);max-width:760px;margin:0 auto}.actions{display:flex;gap:14px;justify-content:center;margin:30px 0}.trust-list{list-style:none;padding:0;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.trust-list li{background:white;border:1px solid var(--line);border-radius:999px;padding:8px 13px;font-weight:700;font-size:.88rem}.photo-ribbon{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:10px;background:#eef2ee}.photo-ribbon img{width:100%;height:280px;object-fit:contain;object-position:center;background:#fff;border-radius:14px}.section{padding:88px 0}.intro{text-align:center}.narrow{max-width:760px}.muted{background:var(--muted)}.grid{display:grid;gap:18px;margin-top:34px}.four{grid-template-columns:repeat(4,1fr)}.three{grid-template-columns:repeat(3,1fr)}article{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:26px}.icon{font-size:2rem}.note,article p{color:var(--gray)}.rates article{position:relative}.featured{border:2px solid var(--gold)}.tag{position:absolute;top:-14px;left:20px;background:var(--gold);padding:5px 10px;border-radius:99px;font-weight:900;font-size:.75rem}.price{font:900 2.1rem Georgia,serif;color:var(--green)}.price small{font:700 .85rem Arial;color:var(--gray)}.about,.contact{background:var(--green);color:white}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.portrait{border-radius:30px;overflow:hidden;box-shadow:0 22px 50px #17382f55;aspect-ratio:4/5}.portrait img{width:100%;height:100%;object-fit:cover}.about p:not(.kicker){color:#eef6f2}.light{color:#f1c875}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}.gallery img{width:100%;height:320px;object-fit:contain;object-position:center;background:#f7f5ef;border:1px solid var(--line);border-radius:18px;padding:8px}.steps b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--green);color:white}.contact{background:var(--dark)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.contact a,footer a{color:white}form{background:white;color:var(--ink);border-radius:var(--radius);padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-weight:800;font-size:.9rem}input,select,textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #cbd3cf;border-radius:12px;font:inherit}.full{grid-column:1/-1}.form-note{grid-column:1/-1;margin:0;color:var(--gray);font-size:.82rem}footer{background:#142e27;color:#dbe5e1;padding:22px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px}@media(max-width:900px){.about-grid,.contact-grid{grid-template-columns:1fr}.four{grid-template-columns:1fr 1fr}.photo-ribbon{grid-template-columns:repeat(2,1fr)}.menu-button{display:block}nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--cream);padding:20px;flex-direction:column;box-shadow:0 15px 30px #0001}nav.open{display:flex}.gallery img{height:300px}}@media(max-width:620px){.hero{padding:68px 0 55px}.section{padding:64px 0}.four,.three,.gallery,form{grid-template-columns:1fr}.full{grid-column:auto}.actions,.footer-inner{flex-direction:column;align-items:stretch}.actions .button{text-align:center}.brand small{display:none}.photo-ribbon{grid-template-columns:1fr 1fr}.photo-ribbon img:nth-child(n+3){display:none}.gallery img{height:360px}.about-grid{gap:34px}.portrait{max-height:520px}.contact-grid{gap:34px}}

.walk-section{background:#fffdf8}.walk-note{max-width:760px}.walk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.walk-grid figure{margin:0;background:#f7f5ef;border:1px solid var(--line);border-radius:20px;padding:10px}.walk-grid img{width:100%;height:390px;object-fit:contain;object-position:center;background:white;border-radius:14px}.walk-grid figcaption{padding:12px 8px 6px;font-weight:800;color:var(--green);text-align:center}@media(max-width:900px){.walk-grid{grid-template-columns:1fr 1fr}.walk-grid figure:last-child{grid-column:1/-1;max-width:540px;width:100%;justify-self:center}}@media(max-width:620px){.walk-grid{grid-template-columns:1fr}.walk-grid figure:last-child{grid-column:auto;max-width:none}.walk-grid img{height:420px}}


/* Version 5: stronger business-name hierarchy */
.business-hero-name{
  font-size:clamp(3.1rem,7vw,6rem);
  line-height:1.02;
  margin:0 0 14px;
  letter-spacing:-0.035em;
}
.hero-tagline{
  font-size:clamp(1.55rem,3vw,2.45rem);
  line-height:1.16;
  margin:0 0 18px;
  max-width:760px;
  font-weight:600;
}
@media(max-width:620px){
  .business-hero-name{font-size:clamp(2.55rem,13vw,4rem)}
  .hero-tagline{font-size:clamp(1.35rem,6vw,1.8rem)}
}


/* Version 6: center hero tagline */
.hero-tagline{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}

/* Version 8: expanded Happy Clients gallery */
.happy-clients-extra-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}
.happy-client-extra{
  min-height:240px;
  border-radius:18px;
  overflow:hidden;
  background:#f3efe8;
  display:flex;
  align-items:center;
  justify-content:center;
}
.happy-client-extra img{
  width:100%;
  height:100%;
  max-height:340px;
  object-fit:contain;
  display:block;
}
@media(max-width:760px){
  .happy-clients-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:480px){
  .happy-clients-extra-grid{grid-template-columns:1fr;}
}

/* Version 9: Hillary and Eddie on the opening page */
.hero, #hero, #home, .opening, .intro, section:first-of-type {
  position: relative;
}
.memorial-corner {
  position: absolute;
  top: 24px;
  z-index: 4;
  width: clamp(105px, 12vw, 165px);
  height: clamp(105px, 12vw, 165px);
  border-radius: 50%;
  overflow: hidden;
  background: rgba(255,255,255,.92);
  padding: 5px;
  box-shadow: 0 8px 24px rgba(0,0,0,.16);
}
.memorial-corner-left { left: 24px; }
.memorial-corner-right { right: 24px; }
.memorial-corner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 50%;
  display: block;
}
.memorial-corner-left img {
  object-position: 50% 35%;
}
.memorial-corner-right img {
  object-position: 50% 48%;
}
@media (max-width: 760px) {
  .memorial-corner {
    width: 86px;
    height: 86px;
    top: 12px;
  }
  .memorial-corner-left { left: 10px; }
  .memorial-corner-right { right: 10px; }
}
@media (max-width: 480px) {
  .memorial-corner {
    width: 70px;
    height: 70px;
  }
}

/* Version 10: visually center Hillary's face in her corner portrait */
.memorial-corner-left img {
  object-position: 50% 24%;
}

/* Version 11: show more of Hillary's ears and nudge portrait down/right */
.memorial-corner-left img {
  object-fit: contain;
  object-position: 56% 42%;
  background: #eee9e1;
  transform: scale(0.92);
}

/* Version 12: Hillary fills the circle again, while keeping the improved positioning */
.memorial-corner-left img {
  object-fit: cover;
  object-position: 56% 39%;
  transform: none;
  background: transparent;
}
