:root{--green:#253d30;--olive:#68765a;--cream:#f7f3e9;--gold:#b89a65;--ink:#243129}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream);line-height:1.65}a{color:inherit}header{background:#fffdf8;position:sticky;top:0;z-index:5;box-shadow:0 2px 12px #0001}.nav{max-width:1160px;margin:auto;padding:15px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:Georgia,serif;font-size:23px;font-weight:bold;letter-spacing:1px;text-decoration:none;color:var(--green)}.brand small{display:block;font:10px Arial;letter-spacing:2px}.links{display:flex;gap:23px;align-items:center}.links a{text-decoration:none;font-size:14px;font-weight:600}.btn{display:inline-block;background:var(--gold);color:#17251d;text-decoration:none;border:0;padding:13px 23px;border-radius:3px;font-weight:700;cursor:pointer}.btn.dark{background:var(--green);color:white}.hero{background:linear-gradient(100deg,#142a20e8,#142a2099),url('https://images.unsplash.com/photo-1473448912268-2022ce9509d8?auto=format&fit=crop&w=1800&q=85') center/cover;color:white;min-height:560px;display:flex;align-items:center}.wrap{max-width:1160px;margin:auto;padding:0 24px}.hero .wrap{width:100%}.eyebrow{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#d8c398;font-weight:bold}.hero h1{font-family:Georgia,serif;font-size:clamp(42px,6vw,76px);line-height:1.08;max-width:780px;margin:18px 0}.hero p{max-width:620px;font-size:19px;color:#eee}.hero .btn{margin-top:16px}section{padding:85px 0}h2{font-family:Georgia,serif;font-size:clamp(30px,4vw,44px);line-height:1.2;margin:10px 0 20px}h3{font-family:Georgia,serif;font-size:24px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.photo{width:100%;height:420px;object-fit:cover;border-radius:4px}.muted{color:#5d675f}.services{background:#eaece4}.center{text-align:center}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.service{background:#fffdf8;padding:32px;border-top:4px solid var(--gold);box-shadow:0 8px 20px #00000008}.service .symbol{font-size:30px}.service p{color:#5d675f}.approach{background:var(--green);color:white}.approach .grid{grid-template-columns:repeat(4,1fr)}.step{padding:12px 18px;border-left:1px solid #ffffff55}.step strong{color:#e4c78d;font-size:28px}.step p{color:#e3e8df}.contact{display:grid;grid-template-columns:1fr 1fr;gap:60px}.contact form{display:grid;gap:13px}.contact input,.contact textarea{font:inherit;padding:13px;border:1px solid #cdd1c8;border-radius:3px;background:white;width:100%}.contact textarea{min-height:140px;resize:vertical}.note{font-size:13px;color:#69736a}footer{background:#182b20;color:#e6e9df;padding:35px 24px;text-align:center;font-size:13px}footer strong{font-family:Georgia,serif;font-size:21px}.menu{display:none}@media(max-width:760px){.links{display:none}.menu{display:block;background:none;border:0;font-size:27px;color:var(--green)}.links.open{display:flex;position:absolute;top:68px;left:0;right:0;background:#fffdf8;flex-direction:column;align-items:stretch;padding:22px}.intro,.contact{grid-template-columns:1fr;gap:30px}.grid,.approach .grid{grid-template-columns:1fr}.hero{min-height:530px}section{padding:58px 0}.photo{height:290px}}.site-logo{display:block;width:190px;max-height:66px;object-fit:contain;object-position:left center}.hero{background:linear-gradient(90deg,rgba(12,28,20,.72),rgba(12,28,20,.34) 58%,rgba(12,28,20,.08)),url('../stone-wall-hero.jpg') center 44%/cover;min-height:620px}.hero h1{text-shadow:0 2px 10px #0009}.hero .wrap{padding-top:70px;padding-bottom:70px}.hero .eyebrow{letter-spacing:2.5px}.hero p{text-shadow:0 1px 8px #0008}.hero .eyebrow{color:#f0d6a2}.photo{object-position:center}.brand{display:flex;align-items:center}@media(max-width:760px){.site-logo{width:145px;max-height:56px}.hero{background-position:38% center;min-height:590px;background-image:linear-gradient(90deg,rgba(12,28,20,.78),rgba(12,28,20,.36)),url('../stone-wall-hero.jpg')}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.company-feature-logo{object-fit:contain;background:#f3eee4;padding:24px;height:420px}@media(max-width:760px){.company-feature-logo{height:290px;padding:12px}}
/* Cross Hares premium identity refresh */
:root{--green:#203a2c;--olive:#66735b;--cream:#f8f5ee;--gold:#b99760;--ink:#26372d}
body{font-family:'Trebuchet MS',Arial,sans-serif;line-height:1.7}h1,h2,h3,.brand,footer strong{font-family:Georgia,'Times New Roman',serif}h2 em,.hero h1 em{font-weight:normal;color:var(--gold)}
header{background:#fbf8f1ee;backdrop-filter:blur(12px);border-bottom:1px solid #6c6d5a25;box-shadow:none}.nav{min-height:94px}.site-logo{width:225px;max-height:76px}.links a:not(.btn){letter-spacing:.06em;text-transform:uppercase;font-size:11px}.links a:not(.btn):hover{color:#987645}.btn{border-radius:2px;letter-spacing:.065em;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px);background:#d2b37c}.btn.dark:hover{background:#34533e}
.hero{min-height:690px;background:linear-gradient(90deg,rgba(12,26,20,.89) 0%,rgba(12,26,20,.7) 40%,rgba(12,26,20,.2) 75%),url('../stone-wall-hero.jpg') center 52%/cover;position:relative}.hero .wrap{padding-top:90px;padding-bottom:90px;position:relative;z-index:3}.hero h1{font-size:clamp(44px,5.6vw,79px);letter-spacing:-.025em;max-width:850px}.hero h1 em{color:#e6c68b}.hero p{font-size:18px;line-height:1.75;max-width:590px}.eyebrow{font-size:11px;letter-spacing:.25em}.hero-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap;margin-top:30px}.hero .btn{margin:0}.hero-secondary{color:#fff;text-decoration:none;border-bottom:1px solid #d6c5a4;padding-bottom:5px;font-size:13px;letter-spacing:.07em}
.assurance{background:#203a2c;color:#eee9dc;border-top:1px solid #ffffff24}.assurance-inner{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:22px;padding-bottom:22px}.assurance span{font-size:11px;letter-spacing:.12em;text-transform:uppercase}.assurance span:not(:last-child):after{content:'◆';font-size:6px;color:#c3a16b;margin-left:30px}
section{padding:105px 0}h2{letter-spacing:-.025em}h2 em{color:#9a7949}.intro{gap:75px}.company-feature-logo{background:#eae3d6;padding:40px;border:1px solid #c8baa0;border-radius:0;box-shadow:15px 15px 0 #d9d3c6}.services{background:#eeeee7}.grid{gap:22px}.service{border:1px solid #d7d7cc;border-top:3px solid #b99760;box-shadow:none;padding:34px 30px;transition:transform .2s,box-shadow .2s}.service:hover{transform:translateY(-4px);box-shadow:0 12px 30px #223d2914}.service .symbol{color:#a18456;font-size:27px}.service h3{font-size:23px;margin:12px 0}.service p{font-size:14px}.approach{background:#203a2c}.approach .grid{gap:0}.step{border-left:1px solid #e4d5ae55;padding:15px 25px}.step strong{font-family:Georgia,serif;color:#d6b67b}.step h3{font-size:21px}.step p{font-size:14px}.contact{gap:85px}.contact input:focus,.contact textarea:focus{outline:2px solid #b99760;outline-offset:2px}.contact label{font-size:13px;font-weight:bold;letter-spacing:.025em}.contact input,.contact textarea{margin-top:6px;font-weight:normal}footer{padding:55px 24px}footer strong{letter-spacing:.13em}
@media(max-width:760px){.nav{min-height:74px}.site-logo{width:170px;max-height:58px}.hero{min-height:620px;background-position:48% center;background-image:linear-gradient(90deg,rgba(12,26,20,.88),rgba(12,26,20,.57)),url('../stone-wall-hero.jpg')}.hero .wrap{padding-top:70px;padding-bottom:70px}.hero h1{font-size:clamp(41px,10vw,60px)}.hero p{font-size:16px}.assurance-inner{display:grid;grid-template-columns:1fr 1fr;gap:12px}.assurance span{font-size:10px}.assurance span:after{display:none}section{padding:70px 0}.company-feature-logo{height:270px;box-shadow:8px 8px 0 #d9d3c6}.intro{gap:35px}.step{padding:12px 20px}.links.open{top:74px;box-shadow:0 12px 24px #0002}}
/* Consistent button arrow and alignment across phone, tablet and desktop. */
@media (max-width:760px){.hero-actions .btn span[aria-hidden="true"]{font-size:0}.hero-actions .btn span[aria-hidden="true"]::after{content:"→";font-size:18px;line-height:1;display:inline-block;vertical-align:middle}}
@media (max-width:760px){.hero-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-align:center}.hero-actions .btn span[aria-hidden="true"]::after{vertical-align:baseline}}

/* One-time, accessible running hare entrance animation. */
.hare-runway{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}
.hare-runner{position:absolute;left:0;bottom:8%;width:clamp(135px,19vw,265px);height:auto;filter:drop-shadow(0 5px 5px rgba(0,0,0,.35));animation:hare-cross 3.3s cubic-bezier(.34,.08,.66,.93) .3s both;will-change:transform,opacity}
.hare-runner .hare-bounce{transform-origin:center;animation:hare-bound .43s ease-in-out infinite alternate}
.hare-runner .front-leg{transform-box:fill-box;transform-origin:15% 20%;animation:hare-front .43s ease-in-out infinite alternate}
.hare-runner .back-leg{transform-box:fill-box;transform-origin:80% 18%;animation:hare-back .43s ease-in-out infinite alternate}
.hare-runner .front-leg.far,.hare-runner .back-leg.far{animation-direction:alternate-reverse}
@keyframes hare-cross{0%{transform:translateX(-115%) scale(.95);opacity:0}7%{opacity:1}87%{opacity:1}100%{transform:translateX(calc(100vw + 25px)) scale(.95);opacity:0}}
@keyframes hare-bound{from{transform:translateY(9px) rotate(-2deg)}to{transform:translateY(-12px) rotate(2deg)}}
@keyframes hare-front{from{transform:rotate(25deg)}to{transform:rotate(-27deg)}}
@keyframes hare-back{from{transform:rotate(-24deg)}to{transform:rotate(24deg)}}
@media(max-width:760px){.hare-runner{width:145px;bottom:10%;animation-duration:2.9s}}
@media(prefers-reduced-motion:reduce){.hare-runway{display:none}}

/* Genuine Cross Hares logo artwork, animated as a galloping image sequence. */
.hare-runway{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}
.logo-hare-runner{position:absolute;left:0;bottom:5%;width:clamp(170px,24vw,310px);height:auto;object-fit:contain;filter:drop-shadow(0 5px 6px rgba(0,0,0,.3));animation:logo-hare-cross 4s linear .15s both;will-change:transform,opacity}
@keyframes logo-hare-cross{0%{transform:translateX(-110%) translateY(4px);opacity:0}5%{opacity:1}88%{opacity:1}100%{transform:translateX(calc(100vw + 30px)) translateY(-4px);opacity:0}}
@media(max-width:760px){.logo-hare-runner{width:175px;bottom:5%;animation-duration:3.3s}}
@media(prefers-reduced-motion:reduce){.hare-runway{display:none}}
/* Consistent CTA layout at every screen width, including tablets. */
.hero-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-align:center}
.hero-actions .btn span[aria-hidden="true"]{font-size:18px;line-height:1;display:inline-block;vertical-align:baseline}
.hero-actions .btn span[aria-hidden="true"]::after{content:none}

.netlify-honeypot { display: none; }


/* Prefer the existing WebP hero where supported; original JPEG stays as fallback. */
@supports (background-image: image-set(url('../stone-wall-hero.webp') type('image/webp'))) {
  .hero {
    background-image: linear-gradient(90deg,rgba(12,26,20,.89) 0%,rgba(12,26,20,.7) 40%,rgba(12,26,20,.2) 75%),
      image-set(url('../stone-wall-hero.webp') type('image/webp'),url('../stone-wall-hero.jpg') type('image/jpeg'));
  }
  @media (max-width:760px) {
    .hero {
      background-image: linear-gradient(90deg,rgba(12,26,20,.88),rgba(12,26,20,.57)),
        image-set(url('../stone-wall-hero.webp') type('image/webp'),url('../stone-wall-hero.jpg') type('image/jpeg'));
    }
  }
}
