/* Novlan Bros Agriculture - contact page (/contact-us/).
   Scoped entirely under .nb-contact so nothing leaks into the CMS header or footer. */

.nb-contact{--nbc-ink:#07152d;--nbc-blue:#0033A1;--nbc-blue-dark:#002474;--nbc-mist:#f7f8f5;--nbc-line:#dce3ea;--nbc-muted:#65748a;--nbc-lime:#FFD100;color:var(--nbc-ink);font-family:"Manrope",Arial,sans-serif}
.nb-contact *{box-sizing:border-box}
.nb-contact a{color:inherit;text-decoration:none}
.nb-contact .nbc-shell{width:min(100% - 2.5rem,1280px);margin-inline:auto}
.nb-contact .nbc-eyebrow{margin:0;color:var(--nbc-blue);font-family:"Space Grotesk",Arial,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}

.nb-contact .nbc-intro{border-bottom:1px solid var(--nbc-line);background:#fff}
.nb-contact .nbc-intro-grid{display:grid;align-items:center;gap:clamp(2.5rem,6vw,6rem);padding-block:clamp(3.2rem,7vw,6.2rem)}
.nb-contact .nbc-intro-copy h1{margin:1rem 0 0;font-family:"Space Grotesk",Arial,sans-serif;font-size:clamp(2.6rem,5.1vw,5rem);font-weight:700;letter-spacing:-.075em;line-height:.92}
.nb-contact .nbc-intro-copy h1 em{color:var(--nbc-blue);font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.06em}
.nb-contact .nbc-intro-copy p:not(.nbc-eyebrow){max-width:690px;color:#55657a;font-size:.95rem;line-height:1.78}
.nb-contact .nbc-lead{margin-top:1.7rem;color:#283b55;font-size:1.05rem;font-weight:600;line-height:1.65}
.nb-contact .nbc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem 1.1rem;margin-top:2rem}
.nb-contact .nbc-btn{display:inline-flex;align-items:center;gap:.55rem;border-radius:999px;background:var(--nbc-blue);color:#fff;padding:.9rem 1.25rem;font-family:"Space Grotesk",Arial,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:background 160ms ease}
.nb-contact .nbc-btn:hover{background:var(--nbc-blue-dark);color:#fff}
.nb-contact .nbc-textbtn{display:inline-flex;align-items:center;gap:.5rem;padding:.72rem .2rem;color:var(--nbc-ink);font-family:"Space Grotesk",Arial,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.nb-contact .nbc-textbtn:hover{color:var(--nbc-blue)}
.nb-contact .nbc-aerial{position:relative;overflow:hidden;margin:0;min-height:300px;border-radius:.95rem;background:#dbe4e6;box-shadow:0 20px 45px rgba(7,21,45,.1)}
.nb-contact .nbc-aerial img{display:block;width:100%;height:100%;min-height:300px;object-fit:cover}
.nb-contact .nbc-aerial figcaption{position:absolute;right:0;bottom:0;left:0;padding:2.25rem 1.2rem 1.1rem;background:linear-gradient(transparent,rgba(3,17,42,.85));color:#fff;font-size:.73rem;font-weight:700;letter-spacing:.04em}
.nb-contact .nbc-aerial figcaption span{display:block;margin-bottom:.25rem;color:var(--nbc-lime);font-family:"Space Grotesk",Arial,sans-serif;font-size:.58rem;letter-spacing:.14em;text-transform:uppercase}

.nb-contact .nbc-section{padding-block:clamp(4.2rem,8vw,7rem);background:var(--nbc-mist)}
.nb-contact .nbc-heading{padding-bottom:2rem;border-bottom:1px solid var(--nbc-line)}
.nb-contact .nbc-heading h2{margin:1rem 0 0;font-family:"Space Grotesk",Arial,sans-serif;font-size:clamp(2.25rem,4.3vw,4.1rem);font-weight:700;letter-spacing:-.075em;line-height:.92}
.nb-contact .nbc-heading h2 em{color:var(--nbc-blue);font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.06em}
.nb-contact .nbc-layout{display:grid;gap:3rem;padding-top:2.25rem}
.nb-contact .nbc-formhead{padding-bottom:1.5rem;border-bottom:1px solid var(--nbc-line)}
.nb-contact .nbc-formhead h3,.nb-contact .nbc-storehead h3{margin:.55rem 0;font-family:"Space Grotesk",Arial,sans-serif;font-size:1.55rem;letter-spacing:-.05em}
.nb-contact .nbc-formhead p:not(.nbc-eyebrow){max-width:430px;margin:0;color:var(--nbc-muted);font-size:.88rem;line-height:1.6}
.nb-contact .nbc-formslot{margin-top:1.6rem;padding-top:1.6rem;border-top:2px solid var(--nbc-blue)}
.nb-contact .nbc-storehead{padding-bottom:1.5rem;border-bottom:1px solid var(--nbc-line)}
.nb-contact .nbc-storehead h3{margin-bottom:.18rem}
.nb-contact .nbc-storehead p:not(.nbc-eyebrow){margin:0;color:var(--nbc-muted);font-size:.86rem}
.nb-contact .nbc-details{display:grid;gap:1rem;padding-block:1.5rem;border-bottom:1px solid var(--nbc-line)}
.nb-contact .nbc-detail{display:flex;gap:.8rem;color:var(--nbc-blue)}
.nb-contact .nbc-detail>div{flex:1;color:var(--nbc-ink)}
.nb-contact .nbc-detail span.nbc-label,.nb-contact .nbc-num>span{display:block;color:var(--nbc-muted);font-family:"Space Grotesk",Arial,sans-serif;font-size:.63rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.nb-contact .nbc-detail p{margin:.35rem 0 0;color:#43536a;font-size:.88rem;line-height:1.55}
.nb-contact .nbc-detail-actions{display:flex;align-items:center;gap:.25rem;margin-top:.45rem}
.nb-contact .nbc-detail-actions a,.nb-contact .nbc-email{display:inline-flex;align-items:center;gap:.35rem;color:var(--nbc-blue);font-size:.77rem;font-weight:800;text-decoration:underline;text-decoration-color:var(--nbc-lime);text-decoration-thickness:2px;text-underline-offset:3px}
.nb-contact .nbc-nums{display:grid;gap:.65rem}
.nb-contact .nbc-num>div{display:flex;align-items:center;gap:.35rem;margin-top:.22rem}
.nb-contact .nbc-num a{color:var(--nbc-blue);font-size:.88rem;font-weight:800}
.nb-contact .nbc-hours{padding-block:1.5rem;border-bottom:1px solid var(--nbc-line)}
.nb-contact .nbc-hours-title{display:flex;align-items:center;gap:.5rem;color:var(--nbc-ink)}
.nb-contact .nbc-hours-title svg{color:var(--nbc-blue)}
.nb-contact .nbc-hours-title strong{font-family:"Space Grotesk",Arial,sans-serif;font-size:.78rem;letter-spacing:-.02em}
.nb-contact .nbc-hours-grid{display:grid;gap:.5rem;margin-top:1rem}
.nb-contact .nbc-hours-grid p{display:flex;justify-content:space-between;gap:.75rem;margin:0;color:#596a80;font-size:.78rem}
.nb-contact .nbc-hours-grid strong{color:var(--nbc-ink);font-weight:700}
.nb-contact .nbc-depts{padding-top:1.5rem}
.nb-contact .nbc-dept-grid{display:grid;gap:.75rem;margin-top:.85rem}
.nb-contact .nbc-dept{display:flex;gap:.55rem;color:var(--nbc-blue)}
.nb-contact .nbc-dept div{display:grid;gap:.12rem}
.nb-contact .nbc-dept strong{color:var(--nbc-ink);font-size:.8rem}
.nb-contact .nbc-dept span{color:var(--nbc-muted);font-size:.74rem}
.nb-contact .nbc-dept a:hover{color:var(--nbc-blue);text-decoration:underline}

/* the CMS form plugin renders inside .nbc-formslot */
.nb-contact .nbc-formslot form{display:grid;gap:1.25rem}
.nb-contact .nbc-formslot label{display:grid;gap:.45rem;color:#526176;font-family:"Space Grotesk",Arial,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.nb-contact .nbc-formslot input,.nb-contact .nbc-formslot textarea{width:100%;box-sizing:border-box;border:0;border-bottom:1px solid #d7dee6;border-radius:0;background:transparent;padding:.72rem 0;color:#07152d;font:500 .92rem/1.4 "Manrope",Arial,sans-serif;outline:none}
.nb-contact .nbc-formslot textarea{min-height:120px;resize:vertical}
.nb-contact .nbc-formslot input:focus,.nb-contact .nbc-formslot textarea:focus{border-color:var(--nbc-blue);box-shadow:0 2px 0 rgba(0,51,161,.15)}
.nb-contact .nbc-formslot input::placeholder,.nb-contact .nbc-formslot textarea::placeholder{color:#95a3b5}
.nb-contact .nbc-formslot button[type="submit"]{width:fit-content;border:0;border-radius:999px;background:var(--nbc-blue);color:#fff;cursor:pointer;padding:.84rem 1.18rem;font:800 .75rem/1 "Space Grotesk",Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;transition:background 160ms ease}
.nb-contact .nbc-formslot button[type="submit"]:hover{background:var(--nbc-blue-dark)}

@media (min-width:700px){
  .nb-contact .nbc-intro-grid{grid-template-columns:minmax(0,1.07fr) minmax(350px,.93fr)}
  .nb-contact .nbc-aerial,.nb-contact .nbc-aerial img{min-height:420px}
}
@media (min-width:1024px){
  .nb-contact .nbc-layout{grid-template-columns:minmax(370px,.78fr) minmax(0,1.22fr);gap:3.5rem}
  .nb-contact .nbc-formcol{padding-right:3.5rem;border-right:1px solid var(--nbc-line)}
  .nb-contact .nbc-dept-grid{grid-template-columns:repeat(3,1fr)}
  .nb-contact .nbc-details{grid-template-columns:1.12fr 1fr .85fr}
  .nb-contact .nbc-detail{padding-right:.8rem;border-right:1px solid var(--nbc-line)}
  .nb-contact .nbc-detail:last-child{border-right:0}
  .nb-contact .nbc-hours-grid{grid-template-columns:repeat(3,1fr)}
  .nb-contact .nbc-hours-grid p{display:grid;gap:.25rem}
}
@media (max-width:800px){ .nb-contact .nbc-shell{width:min(100% - 2rem,1280px)} }
@media (max-width:500px){
  .nb-contact .nbc-intro-copy h1{font-size:2.55rem}
  .nb-contact .nbc-aerial,.nb-contact .nbc-aerial img{min-height:275px}
  .nb-contact .nbc-dept-grid{grid-template-columns:1fr}
}

/* icons, moved out of the page body to keep it small */
.nb-contact .nbi{display:inline-block;flex:none;width:18px;height:18px;background-repeat:no-repeat;background-position:center;background-size:contain;vertical-align:middle}
.nb-contact .nbi-0{background-image:url("data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="%230033A1" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"/><polyline points="12 5 19 12 12 19"/></svg>")}
.nb-contact .nbi-1{background-image:url("data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%230033A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"/><circle cx="12" cy="10" r="3"/></svg>")}
.nb-contact .nbi-2{background-image:url("data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="%230033A1" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/></svg>")}
.nb-contact .nbi-3{background-image:url("data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%230033A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"/></svg>")}
.nb-contact .nbi-4{background-image:url("data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="%230033A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="4" width="20" height="16" rx="2"/><polyline points="22,6 12,13 2,6"/></svg>")}
.nb-contact .nbi-5{background-image:url("data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="%230033A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 16 14"/></svg>")}
.nb-contact .nbi-6{background-image:url("data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="%230033A1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"/></svg>")}
