/* LienMaster® — static replica of the custom "lienmaster" (Underscores) WordPress theme
   Palette: navy #003865, accent blue #3398d3, quote band #ededee, page bg #f9f9f9, text #404040 */
:root{
  --navy:#003865; --blue:#3398d3; --text:#404040; --muted:#999; --band:#ededee; --page:#f9f9f9; --rule:#ccc;
  --header-h:129px;
}
html{box-sizing:border-box;-webkit-text-size-adjust:100%}
*,*:before,*:after{box-sizing:inherit}
body{margin:0;background:var(--page);color:var(--text);font-family:'Roboto',sans-serif;font-size:16px;line-height:1.5}
img{max-width:100%;height:auto;border:0}
a{color:var(--navy);text-decoration:underline}
a:hover,a:focus{color:midnightblue}
p{margin:0 0 1.5em}
ul,ol{margin:0 0 1.5em 3em;padding:0}
h1,h2,h3,h4{font-weight:600;margin:0 0 10px;padding:0;clear:both;line-height:1.2}
h1{font-size:35px;letter-spacing:-2px;line-height:.95em;margin-top:.67em}
h2,h3{text-transform:uppercase}
h2{font-size:1.5em}h3{font-size:1.17em}
hr{background:var(--rule);border:0;height:1px;margin-bottom:1.5em}
strong{font-weight:700}
.screen-reader-text{clip:rect(1px,1px,1px,1px);position:absolute!important;height:1px;width:1px;overflow:hidden}
.screen-reader-text:focus{clip:auto!important;background:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);color:#21759b;display:block;font-size:14px;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.clear{clear:both;width:100%}
.eleveneighty{width:1180px;margin:0 auto}
.split{float:left;display:inline-block;width:48%;margin-right:1%}
.twenty{width:24%;float:left;margin-right:1px}

/* ---------- header ---------- */
.site-header{position:fixed;top:0;left:0;right:0;z-index:9999;background:#fff;box-shadow:1px 1px 1px 1px var(--navy)}
.site-branding{float:left}
.site-branding a{display:block;line-height:0}
.site-branding img{display:block;margin:12px;width:242px;height:105px}
.main-navigation{float:right;width:70%;clear:right}
.main-navigation ul{list-style:none;margin:0;padding:0}
.main-navigation li{float:left;position:relative}
.main-navigation a{display:block;text-decoration:none;color:#000;font-size:15px;padding:12px;letter-spacing:-.3px;white-space:nowrap}
#primary-menu{padding:48px 0;float:right}
.main-navigation li a:hover,.main-navigation li a:focus,.main-navigation li:focus-within>a{background:#fff;color:var(--navy)}
.main-navigation .sub-menu{position:absolute;left:-999em;top:100%;z-index:99999;background:#fff;box-shadow:0 3px 3px rgba(0,0,0,.2);min-width:200px}
.main-navigation .sub-menu li{float:none}
.main-navigation .sub-menu a{width:200px;white-space:normal;padding:4px 12px;background:#fff;color:#000}
.main-navigation .sub-menu a:hover,.main-navigation .sub-menu li:focus-within>a{color:var(--navy)}
.main-navigation .sub-menu .sub-menu{top:0;left:-999em}
.main-navigation li:hover>.sub-menu,.main-navigation li:focus-within>.sub-menu{left:auto}
.main-navigation .sub-menu li:hover>.sub-menu,.main-navigation .sub-menu li:focus-within>.sub-menu{left:100%}
.main-navigation .sub-menu .has-children>a:after{content:"\203A";float:right;margin-left:8px}
.main-navigation .client-login>a{background:var(--navy);color:#fff}
.main-navigation .client-login>a:hover,.main-navigation .client-login>a:focus{background:var(--blue);color:#fff}
.menu-toggle{display:none;background:var(--navy);border:0;padding:5px;margin-top:15px;cursor:pointer;width:100%;text-align:left;line-height:0}
.menu-toggle img{vertical-align:middle}

/* ---------- page shell ---------- */
.site-content{padding-top:var(--header-h);margin-top:18px}
.content-area{padding-top:72px}
.entry-title{margin-top:0}
.entry-content{margin:1.5em 0 0}
.entry-content td{vertical-align:top;padding:10px}
.tagline{color:var(--navy);display:block;font-size:24px;text-align:center;font-weight:700;width:100%;margin:40px 0 24px;clear:both}
.tagline p{margin:0}
.alignleft{float:left;margin-right:1.5em;margin-bottom:1em}
.aligncenter{display:block;margin:0 auto}

/* ---------- home ---------- */
.home .site-content{margin-top:0;padding-top:0}
.slidearea{margin-top:var(--header-h);position:relative}
.rslides{position:relative;list-style:none;overflow:hidden;width:100%;padding:0;margin:0;aspect-ratio:1920/422}
.rslides li{position:absolute;inset:0;opacity:0;transition:opacity 1s ease-in-out;margin:0}
.rslides li.active{opacity:1;z-index:2}
.rslides img{display:block;width:100%;height:100%;object-fit:cover}
.rslides_tabs{list-style:none;margin:0 auto;padding:0;text-align:center;font-size:10px}
.rslides_tabs li{display:inline}
.rslides_tabs button{display:inline-block;width:17px;height:17px;border:0;border-radius:12px;margin:3px;padding:0;background:#ccc;cursor:pointer;font-size:0}
.rslides_tabs button[aria-selected="true"]{background:#43a5c4}
.home-entry-content{padding-top:18px}
.home-entry-content{overflow:hidden}
.home-entry-content h1{font-style:oblique;letter-spacing:-2px;transform:scale(1.15,1);text-align:center;margin-top:.67em}
.home-entry-content h1 span{color:var(--navy)}
.home-entry-content h2{text-align:center}
.home-entry-content h2 a{color:var(--blue);text-decoration:none}
.home-entry-content p{color:var(--navy);font-size:18px;text-align:center}
.portals{margin-bottom:20px}
.portalitem{min-height:190px}
.portalitem:nth-child(odd){text-align:right}
.portalitem .iconalign{float:right;margin:10px;width:103px;height:103px}
.portalitem:nth-child(even) .iconalign{float:left}
.atitle{font-size:24px;text-transform:uppercase}
.atitle a{color:#000;text-decoration:none}
.atitle a:hover{color:#666}
.acontent{color:var(--muted);font-size:14px}
.home-page-quote{background:var(--band);font-size:18px;padding:20px 0}
.home-page-quote p,.home-page-quote h3,.home-page-quote li{text-align:center}
.home-page-quote ul{margin:0;padding:0;list-style:none}
.home-page-quote li{color:var(--navy);margin-top:10px}
.home-page-quote h3{color:#000}
.home-contact{padding-top:1.5em}
.mascot{width:360px;padding-top:200px}

/* ---------- forms (Gravity Forms legacy look) ---------- */
.lm-form{margin:0 0 1.5em}
.lm-form .gfield{margin-bottom:16px}
.lm-form label,.lm-form legend{display:block;font-weight:700;font-size:14px;margin-bottom:4px;padding:0}
.lm-form .sublabel{display:block;font-weight:400;font-size:12px;color:#666;margin-top:2px}
.lm-form .req{color:#790000}
.lm-form input[type=text],.lm-form input[type=email],.lm-form input[type=tel],.lm-form input[type=date],.lm-form input[type=number],.lm-form select,.lm-form textarea{font:inherit;color:#666;border:1px solid var(--rule);border-radius:3px;padding:5px;width:100%;background:#fff}
.lm-form input:focus,.lm-form select:focus,.lm-form textarea:focus{color:#111;outline:2px solid var(--blue);outline-offset:0}
.lm-form .size-small{max-width:200px}
.lm-form .size-medium{max-width:400px}
.lm-form .size-large{max-width:100%}
.lm-form textarea{min-height:160px}
.lm-form .size-small textarea{max-width:400px}
.lm-form .gfield.size-small:has(textarea){max-width:400px}
.lm-form fieldset{border:0;margin:0;padding:0}
.lm-form .section{border-bottom:1px solid var(--rule);margin:28px 0 16px;padding-bottom:6px;font-size:20px;text-transform:uppercase;font-weight:600}
.lm-form .inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;max-width:700px}
.lm-form .inputs .full{grid-column:1/-1}
.lm-form .inline{display:flex;gap:16px;align-items:end;flex-wrap:wrap}
.lm-form .inline .gfield{margin-bottom:16px}
.lm-form .choices{list-style:none;margin:0;padding:0}
.lm-form .choices li{margin:4px 0}
.lm-form .choices label{display:inline;font-weight:400;font-size:15px;margin-left:6px}
.lm-form .description{font-size:13px;color:#666;margin-top:4px}
.lm-form .hp{position:absolute!important;left:-9999px;top:-9999px;height:1px;width:1px;overflow:hidden}
.lm-form button[type=submit],.lm-form input[type=submit]{font:inherit;font-weight:700;border:1px solid;border-color:#ccc #ccc #bbb;border-radius:3px;background:#e6e6e6;box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 15px 17px rgba(255,255,255,.5),inset 0 -5px 12px rgba(0,0,0,.05);color:rgba(0,0,0,.8);line-height:1;padding:.6em 1em .4em;text-shadow:0 1px 0 rgba(255,255,255,.8);cursor:pointer}
.lm-form button[type=submit]:hover{border-color:#ccc #bbb #aaa}
.lm-form button[type=submit][disabled]{opacity:.6;cursor:wait}
.lm-form .status{margin-top:12px;font-weight:700}
.lm-form .status.error{color:#790000}
.lm-form .file-list{font-size:13px;color:#666;margin:6px 0 0;padding:0;list-style:none}
.lm-form .dropzone{border:2px dashed var(--rule);border-radius:3px;padding:18px;text-align:center;background:#fff;max-width:400px}
.lm-form .dropzone input{margin-top:8px}
.cf-turnstile{margin:12px 0}

/* ---------- contact page ---------- */
#contact{position:relative;width:100%;margin:0;padding:24px}
#contact .half{margin-bottom:1em}
#contact iframe{max-width:100%;border:0}
@media screen and (min-width:1000px){
  #contact .first-half{width:50%;float:left;padding-right:32px}
  #contact .second-half{width:50%;float:right;padding-left:16px}
}

/* ---------- tables (TablePress default) ---------- */
.tablepress{width:100%;border-collapse:collapse;margin:0 auto 1rem;clear:both}
.tablepress th,.tablepress td{padding:.5rem;text-align:left;vertical-align:top;border-top:1px solid #ddd;color:#111}
.tablepress thead th{background:#d9edf7;font-weight:700;vertical-align:middle;border-top:0}
.tablepress tbody tr:nth-child(even) td{background:#f9f9f9}
.tablepress tbody tr:nth-child(odd) td{background:#fff}
.tablepress h3{margin:25px 0 4px}
.tablepress td.price{white-space:nowrap;font-weight:700}

/* ---------- team (Elementor layout) ---------- */
.team{max-width:1140px;margin:0 auto}
.member{display:flex;gap:20px;align-items:flex-start;padding:10px 0}
.member .photo{flex:0 0 50%;text-align:center}
.member .bio{flex:1 1 50%}
.member .bio p{color:#7a7a7a}
.member .bio strong{color:#404040}
.member + .member{border-top:1px solid var(--navy);margin-top:15px;padding-top:30px}
.member.no-photo{border-top:1px solid var(--navy);margin-top:15px;padding-top:30px}

/* ---------- glossary / testimonials / misc ---------- */
.glossary dt{font-weight:700;text-transform:uppercase;margin-top:1em}
.glossary dd{margin:0 0 .5em}
.testimonials blockquote{margin:0 0 2.2em;padding:0}
.rates p{margin:0 0 .6em}
.rates .rule{margin:1.5em 0}
.download-link{text-align:right}

/* ---------- footer ---------- */
.site-footer{background:var(--navy);color:#fff;margin-top:24px}
.site-footer h2{font-size:20px;margin-top:1.5em}
.site-footer a{color:#fff;text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.site-footer .widget{margin:0 0 1.5em}
.site-footer .social img{width:65px;height:65px;vertical-align:middle}
.site-info{border-top:1px solid #fff;padding:10px 0 30px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

/* ---------- 404 ---------- */
.error-page{text-align:center;padding:40px 0}
.error-page .code{font-size:72px;font-weight:700;color:var(--navy);margin:0}

/* ---------- responsive ---------- */
@media screen and (max-width:1180px){.eleveneighty{width:1024px}}
@media screen and (max-width:1024px){
  :root{--header-h:0px}
  .eleveneighty{width:99%;padding:0 .5%}
  .site-header{position:relative}
  .site-content{padding-top:0}
  .slidearea{margin-top:0}
  .site-branding{float:none;text-align:center}
  .main-navigation{float:none;width:100%;clear:both}
  .menu-toggle{display:block}
  #primary-menu{display:none;padding:0;float:none;width:100%}
  .main-navigation.toggled #primary-menu{display:block}
  .main-navigation li{float:none}
  .main-navigation a{padding:5px;border-bottom:1px solid var(--rule);white-space:normal}
  .main-navigation .sub-menu,.main-navigation .sub-menu .sub-menu{position:static;display:block;box-shadow:none;padding-left:20px;min-width:0}
  .main-navigation .sub-menu a{width:100%}
  .main-navigation .sub-menu .has-children>a:after{content:""}
  .split{float:none;display:block;width:100%;margin-right:0}
  .twenty{width:33%}
  .twenty:nth-child(4){clear:left}
  .portalitem:nth-child(odd){text-align:left}
  .portalitem .iconalign,.portalitem:nth-child(even) .iconalign{float:left}
  .mascot{padding-top:0;display:block;margin:0 auto}
  .content-area{padding-top:24px}
}
@media screen and (max-width:800px){
  .twenty{width:49%}.twenty:nth-child(4){clear:none}
  .member{flex-direction:column}.member .photo{flex-basis:auto}
  .lm-form .inputs{grid-template-columns:1fr}
}
@media screen and (max-width:600px){
  .twenty{width:100%}
  h1{font-size:30px}
  .site-branding img{width:200px;height:auto}
}
