/* === PUTKIREMONTTILASKURI FINAL UNIQUE HEADER === */
/* Uses only pr-* classes so old menu CSS cannot break it */

.pr-header-final{
  position:sticky !important;
  top:0 !important;
  z-index:999999 !important;
  width:100% !important;
  max-width:100vw !important;
  background:#ffffff !important;
  border-bottom:1px solid #eadfce !important;
  box-shadow:0 8px 24px rgba(21,28,36,.06) !important;
  overflow:hidden !important;
}

.pr-header-final,
.pr-header-final *{
  box-sizing:border-box !important;
}

.pr-header-inner{
  width:100% !important;
  max-width:1220px !important;
  margin:0 auto !important;
  padding:0 22px !important;
  min-height:74px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  overflow:hidden !important;
}

.pr-logo-link{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex:0 0 250px !important;
  width:250px !important;
  min-width:250px !important;
  max-width:250px !important;
  text-decoration:none !important;
  overflow:hidden !important;
}

.pr-logo-img{
  display:block !important;
  width:240px !important;
  max-width:240px !important;
  height:auto !important;
  opacity:1 !important;
  visibility:visible !important;
}

.pr-desktop-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex:1 1 auto !important;
  gap:14px !important;
  min-width:0 !important;
  overflow:hidden !important;
}

.pr-desktop-nav a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:40px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#47515d !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:900 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.pr-desktop-nav a.pr-important{
  color:#7a552a !important;
}

.pr-desktop-nav a.pr-cta{
  background:#151c24 !important;
  color:#ffffff !important;
  padding:0 15px !important;
  border:1px solid #151c24 !important;
}

.pr-mobile-nav{
  display:none !important;
}

/* Medium desktop */
@media(min-width:901px) and (max-width:1120px){
  .pr-header-inner{
    padding:0 14px !important;
    gap:12px !important;
  }

  .pr-logo-link{
    flex-basis:205px !important;
    width:205px !important;
    min-width:205px !important;
    max-width:205px !important;
  }

  .pr-logo-img{
    width:198px !important;
    max-width:198px !important;
  }

  .pr-desktop-nav{
    gap:9px !important;
  }

  .pr-desktop-nav a{
    font-size:12px !important;
  }

  .pr-desktop-nav a.pr-cta{
    padding:0 10px !important;
  }
}

/* Mobile */
@media(max-width:900px){
  html,
  body{
    max-width:100vw !important;
    overflow-x:hidden !important;
  }

  .pr-header-final{
    overflow:hidden !important;
  }

  .pr-header-inner{
    width:100% !important;
    max-width:100vw !important;
    min-height:0 !important;
    padding:9px 10px 10px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:8px !important;
    overflow:hidden !important;
  }

  .pr-logo-link{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    flex:0 0 auto !important;
    justify-content:flex-start !important;
    overflow:hidden !important;
  }

  .pr-logo-img{
    width:220px !important;
    max-width:78vw !important;
    height:auto !important;
  }

  .pr-desktop-nav{
    display:none !important;
  }

  .pr-mobile-nav{
    display:grid !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    grid-template-areas:
      "home home price price guide guide"
      "jobs jobs jobs calc calc calc" !important;
    gap:6px !important;
    overflow:hidden !important;
  }

  .pr-mobile-nav a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:0 !important;
    width:100% !important;
    height:34px !important;
    padding:0 3px !important;
    border:1px solid #eadfce !important;
    background:#ffffff !important;
    color:#151c24 !important;
    -webkit-text-fill-color:#151c24 !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:900 !important;
    text-align:center !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    overflow:hidden !important;
  }

  .pr-mobile-nav .pr-home{ grid-area:home !important; }
  .pr-mobile-nav .pr-price{ grid-area:price !important; }
  .pr-mobile-nav .pr-guide{ grid-area:guide !important; }

  .pr-mobile-nav .pr-jobs{
    grid-area:jobs !important;
    background:#fff8ed !important;
    color:#7a552a !important;
    -webkit-text-fill-color:#7a552a !important;
    border-color:#e6d8c6 !important;
  }

  .pr-mobile-nav .pr-calc{
    grid-area:calc !important;
    background:#151c24 !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    border-color:#151c24 !important;
  }
}

@media(max-width:370px){
  .pr-logo-img{
    width:200px !important;
    max-width:76vw !important;
  }

  .pr-mobile-nav{
    gap:5px !important;
  }

  .pr-mobile-nav a{
    height:32px !important;
    font-size:11px !important;
    padding:0 2px !important;
  }
}

/* === LOCKED FINAL HEADER MENU STYLE === */
/* This locks logo/menu typography so page-specific CSS cannot change it. */

.pr-header-final,
.pr-header-final *{
  font-family: Arial, Helvetica, sans-serif !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
}

.pr-header-final{
  background:#fff !important;
  border-bottom:1px solid #eadfce !important;
  box-shadow:0 8px 24px rgba(21,28,36,.05) !important;
}

.pr-header-inner{
  max-width:1220px !important;
  min-height:74px !important;
  margin:0 auto !important;
  padding:0 22px !important;
}

/* Logo */
.pr-logo-link{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-decoration:none !important;
  overflow:hidden !important;
}

.pr-logo-img{
  display:block !important;
  width:240px !important;
  max-width:240px !important;
  height:auto !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* Desktop menu */
.pr-desktop-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:14px !important;
}

.pr-desktop-nav a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:40px !important;
  min-height:40px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#47515d !important;
  -webkit-text-fill-color:#47515d !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.pr-desktop-nav a:hover{
  color:#7a552a !important;
  -webkit-text-fill-color:#7a552a !important;
}

.pr-desktop-nav a.pr-important{
  color:#7a552a !important;
  -webkit-text-fill-color:#7a552a !important;
}

.pr-desktop-nav a.pr-cta{
  background:#151c24 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border:1px solid #151c24 !important;
  padding:0 15px !important;
}

/* Mobile menu */
.pr-mobile-nav{
  font-family:Arial, Helvetica, sans-serif !important;
}

.pr-mobile-nav a{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:36px !important;
  min-height:36px !important;
  padding:0 4px !important;
  margin:0 !important;
  border:1px solid #e6d8c6 !important;
  background:#fff !important;
  color:#151c24 !important;
  -webkit-text-fill-color:#151c24 !important;
  font-family:Arial, Helvetica, sans-serif !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-align:center !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}

.pr-mobile-nav .pr-jobs{
  background:#151c24 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:#151c24 !important;
}

.pr-mobile-nav .pr-calc{
  background:#c8a06a !important;
  color:#151c24 !important;
  -webkit-text-fill-color:#151c24 !important;
  border-color:#c8a06a !important;
}

@media(min-width:901px){
  .pr-header-inner{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:24px !important;
  }

  .pr-logo-link{
    flex:0 0 250px !important;
    width:250px !important;
    max-width:250px !important;
  }

  .pr-desktop-nav{
    display:flex !important;
  }

  .pr-mobile-nav{
    display:none !important;
  }
}

@media(max-width:900px){
  .pr-header-inner{
    width:100% !important;
    max-width:100% !important;
    min-height:0 !important;
    padding:9px 10px 10px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:8px !important;
  }

  .pr-logo-link{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .pr-logo-img{
    width:220px !important;
    max-width:78vw !important;
  }

  .pr-desktop-nav{
    display:none !important;
  }

  .pr-mobile-nav{
    display:grid !important;
    width:100% !important;
    max-width:100% !important;
    grid-template-columns:repeat(6, minmax(0,1fr)) !important;
    grid-template-areas:
      "home home price price guide guide"
      "jobs jobs jobs calc calc calc" !important;
    gap:6px !important;
  }

  .pr-mobile-nav .pr-home{ grid-area:home !important; }
  .pr-mobile-nav .pr-price{ grid-area:price !important; }
  .pr-mobile-nav .pr-guide{ grid-area:guide !important; }
  .pr-mobile-nav .pr-jobs{ grid-area:jobs !important; }
  .pr-mobile-nav .pr-calc{ grid-area:calc !important; }
}

@media(max-width:370px){
  .pr-logo-img{
    width:205px !important;
    max-width:76vw !important;
  }

  .pr-mobile-nav{
    gap:5px !important;
  }

  .pr-mobile-nav a{
    height:34px !important;
    min-height:34px !important;
    font-size:11px !important;
    padding:0 2px !important;
  }
}
