

body.header-over:not(.user-scrolled-down) #header {
    background: #0e301440 !important;
    box-shadow: none !important;
}


a {
    color: rgba(14,114,19,1);
}

a:hover {
    color: rgba(0, 0, 0,.8);
}

p, h1, h2, h3, h4, h5, h6 {
    color: #000;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto', serif;
}

h2 {
	font-weight: 300 !important;
}

footer p, p.h1, p.h2, p.h3, p.h4, p.h5, p.h6 {
  color: #6c757d;
}

.shadow-primary-lg, .shadow-primary-lg-hover:hover {
    box-shadow: 0 10px 40px 10px rgba(203,172,165,.5)!important;
}


.btn-primary {
    color: #fff !important;
    background-color: rgba(14,114,19,1) !important;
    border-color: rgba(14,114,19,1) !important;
}

.btn-theme-color {
    color: #fff !important;
    background-color: rgba(93,139,190,1) !important;
    border-color: rgba(93,139,190,1) !important;
}

.btn-soft-static.btn-primary:not([aria-expanded=true]):not(.active), .btn-soft.btn-primary:not(:hover):not([aria-expanded=true]):not(.active) {
    color: rgba(93,139,190,1);
    border-color: rgba(93,139,190,.25);
    background-color: rgba(93,139,190,.25);
}

.btn-primary:not(.btn-noshadow):hover, .btn-primary:not(.btn-noshadow):not(.btn-soft):active, .btn-primary:not(.btn-noshadow):not(.btn-soft):focus {
    box-shadow: 0 4px 11px rgba(0,0,0,.35);
}

.btn-primary.focus, .btn-primary:focus, .btn-primary:hover {
    color: #fff;
    background-color: rgba(93,139,190,.8);
    border-color: rgba(93,139,190,.8);
}

.bg-theme-color-light {
    background-color: rgba(93,139,190,.1) !important;
}

.bg-theme-color {
    background-color: rgba(14,114,19, 1) !important;
    color: #fff;
}

.text-primary {
	color: rgba(14,114,19, 1) !important;
}
.bg-primary {
	background: rgba(14,114,19, 1) !important;
}
a.bg-primary:hover {
	background: rgba(0,0,0, 1) !important;
}

.bg-theme-color {
	color: #fff !important;
}
.bg-theme-color .text-primary,
.bg-theme-color p {
	color: #fff !important;
}
.bg-theme-color .bg-primary {
	background: #f3982c !important;
}
.shape-v:after, .shape-v:before {
    background-color: #fff;
}

.w-70 {
	width: 70%!important;
}


.rounded-xl {
	border-radius: 10px !important;
	overflow: hidden;
}

.overlay-dark-hover:hover:after, .overlay-dark:after {
    background: #0e3014;
}


.video-bg {
  position: fixed;
  inset: 0;
  z-index: -1;
  overflow: hidden;
}

.video-bg video {
  width: 100vw;
  height: 100vh;
  object-fit: cover;
}




.hero-section {
  color: #fff;
}

.hero-logo {
	width: 100%;
	max-width: 520px;
}

.hero-tagline {
  font-size: clamp(1.7rem, 3vw, 2.4rem);
  font-weight: 500;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #fff;
}

.hero-lead {
  max-width: 820px;
  margin: 0 auto;
  font-size: 1.5rem;
  line-height: 1.6;
  opacity: 0.9;
  color: #fff;
}



.service-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1.25rem;

  font-size: 1.8rem;
  font-weight: 500;
  color: #2f6b3f;

  text-decoration: none;
  border-bottom: 1px solid rgba(47,107,63,0.35);
  padding-bottom: 2px;

  transition: color 0.2s ease, border-color 0.2s ease, gap 0.2s ease;
}

.service-cta:hover {
  color: #1f4f2d;
  border-color: rgba(31,79,45,0.6);
  gap: 0.75rem;
}





.instagram-section {
  margin-top: 3rem;
  text-align: center;
}

.instagram-heading {
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #5f6f5f;
  margin-bottom: 1.5rem;
}

.instagram-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 0.75rem;
  max-width: 900px;
  margin: 0 auto 1.5rem;
}

.instagram-grid a {
  display: block;
  overflow: hidden;
  border-radius: 8px;
}

.instagram-grid img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.instagram-grid a:hover img {
  transform: scale(1.04);
}

.instagram-cta {
  font-size: 0.9rem;
  color: #2f6b3f;
  text-decoration: none;
  border-bottom: 1px solid rgba(47,107,63,0.35);
  padding-bottom: 2px;
}


.photo_frame {
	border: 10px solid #fff;
}
		

.eapps-instagram-feed-header {
    background: #fff;
    padding: 0px !important;
}




.navbar .dropdown-item:focus-visible,
.navbar .dropdown-item:hover {
  background-color: rgba(14,114,19,.12);
  color: #0e3014;
}

.navbar .dropdown-item:focus-visible {
  outline: none;
  box-shadow: inset 4px 0 0 rgba(14,114,19,1);
}

.skip-link{
  position:absolute; left:-9999px; top:auto;
  width:1px; height:1px; overflow:hidden;
}
.skip-link:focus{
  left:1rem; top:1rem;
  width:auto; height:auto;
  padding:.75rem 1rem;
  background:#fff;
  border-radius:.5rem;
  box-shadow:0 .5rem 1.25rem rgba(0,0,0,.12);
  z-index:9999;
}

/* synlig keyboard-focus */
:focus-visible{
  outline: 3px solid rgba(13,110,253,.6);
  outline-offset: 3px;
}

/* respektera reduced motion (video + animation) */
@media (prefers-reduced-motion: reduce){
  .video-bg video{ display:none; }
  * { scroll-behavior: auto !important; }
}



html, body { overflow-x: hidden; }

/* Gör offcanvas lite bredare på små mobiler */
@media (max-width: 420px) {
  .offcanvas { width: 88vw; }
}
