/*
Theme Name: NMHIC Advisers
Theme URI: https://gonmhic.com
Description: Custom theme for NMH Insurance Agency (gonmhic.com). v2 implements the approved Claude Design homepage: print-era warmth, Paper #FBF8F3, Ink #22262A, Oxblood #8C1D22 single accent, Libre Caslon Text + Public Sans, 4px radius, hairline rules. No gradients, no shadows. Structural CSS is enqueued from /css/ (front-page.css on the homepage, interior.css everywhere else); this file holds the theme header plus the WordPress integration layer only.
Version: 2.2.0
Author: NMH in-house
Text Domain: nmhic-advisers
*/

/* ===== WordPress integration layer (loads after the page stylesheet) ===== */

.skip-link{position:absolute;left:-9999px;top:0;background:var(--oxblood);color:#fff;padding:10px 18px;z-index:100;border-radius:0 0 4px 0}
.skip-link:focus{left:0;color:#fff}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* wp_nav_menu renders a UL when an admin menu is assigned; the built-in
   fallback prints plain anchors. Both must lay out identically. */
.masthead nav ul{display:flex;gap:24px;align-items:center;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.masthead nav li{margin:0}
.masthead nav li a{color:var(--ink);text-decoration:none;font-size:.95rem;font-weight:500;padding:8px 0;display:inline-block}
.masthead nav li a:hover{color:var(--oxblood)}
.masthead nav li.menu-quote a,.masthead nav .quote a{background:var(--oxblood);color:#fff;font-weight:700;padding:10px 20px;border-radius:4px}
.masthead nav li.menu-quote a:hover,.masthead nav .quote a:hover{background:var(--oxblood-deep);color:#fff}
@media(max-width:720px){
  .nav-open .masthead nav ul{flex-direction:column;align-items:stretch;gap:0}
  .masthead nav li a{display:block;padding:14px 0;border-bottom:1px solid var(--rule);font-size:1.02rem}
  .masthead nav li.menu-quote a{margin-top:14px;text-align:center;border-bottom:none}
}

/* Advice archive (home.php): category-grouped index per the approved design. */
.cat-head{font-family:var(--serif);font-weight:700;font-size:1.35rem;margin:40px 0 2px;padding-bottom:10px;border-bottom:1px solid var(--rule)}
.cat-jump{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 8px}
.cat-jump a{border:1px solid var(--rule);border-radius:4px;padding:8px 16px;font-size:.9rem;color:var(--ink);text-decoration:none;background:var(--paper)}
.cat-jump a:hover{border-color:var(--oxblood);color:var(--oxblood)}

/* Single article extras: byline and closing CTA. */
.crumbs{font-size:.85rem;color:var(--ink-soft);margin-bottom:6px}
.crumbs a{color:var(--ink-soft);text-decoration:none}
.crumbs a:hover{color:var(--oxblood)}
.article-byline{display:flex;align-items:center;gap:12px;margin:0 0 30px;padding-bottom:22px;border-bottom:1px solid var(--rule);font-size:.9rem;color:var(--ink-soft)}
.article-byline .avatar img{border-radius:50%;display:block}
.article-byline b{color:var(--ink)}
.article-cta{border:1px solid var(--rule);border-left:3px solid var(--oxblood);background:#fff;border-radius:4px;padding:20px 22px;margin-top:36px;font-size:.95rem}

/* WordPress content niceties. */
article img{max-width:100%;height:auto}
article blockquote{border-left:3px solid var(--oxblood);padding-left:18px;font-family:var(--serif);font-style:italic;margin:0 0 18px;color:var(--ink-soft)}
.aligncenter{margin-left:auto;margin-right:auto;display:block}
.wp-caption{max-width:100%}
.wp-caption-text{font-size:.84rem;color:var(--ink-soft);font-style:italic}

/* ===== Page-content components (from the designed page kit) ===== */

/* Request a Quote line cards */
.qgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:26px 0 18px}
@media(max-width:600px){.qgrid{grid-template-columns:1fr}}
.qcard{display:block;border:1px solid var(--rule);border-radius:4px;background:#fff;padding:18px 20px;text-decoration:none}
.qcard:hover{border-color:var(--oxblood)}
.qcard b{display:block;font-family:var(--serif);font-size:1.08rem;color:var(--ink);margin-bottom:3px}
.qcard span{font-size:.88rem;color:var(--ink-soft)}

/* Gravity Forms slot: visible placeholder until the form shortcode is pasted in */
.gf-slot{border:1px dashed var(--rule);border-radius:4px;background:var(--paper-deep);padding:26px 24px;margin:18px 0;color:var(--ink-soft);font-size:.92rem;text-align:center}
.gform_wrapper{margin:18px 0}

/* Where We Work state grid */
.stgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 24px}
@media(max-width:760px){.stgrid{grid-template-columns:repeat(2,1fr)}}
.st{padding:9px 2px;border-bottom:1px solid var(--rule);font-size:.92rem}
.st.no{color:var(--ink-soft)}
.st.no span{font-size:.75rem;font-style:italic}

/* Reviews page quote cards */
.rq{border:1px solid var(--rule);border-radius:4px;background:#fff;padding:22px 24px;margin:0 0 16px}
.rq blockquote{font-family:var(--serif);font-style:italic;font-size:1.05rem;line-height:1.7;margin:0 0 10px}
.rq .who{font-size:.86rem;color:var(--ink-soft)}

/* Carriers directory */
.dir{display:grid;grid-template-columns:1fr 1fr;gap:14px 32px}
@media(max-width:760px){.dir{grid-template-columns:1fr}}
.dir-row{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:start;padding:12px 0;border-bottom:1px solid var(--rule)}
.dir-row > div:only-child{grid-column:2}
.dir-row img{height:20px;width:20px;object-fit:contain;margin-top:3px}
.dir-row img.lg{width:auto;max-width:64px;height:auto;max-height:24px}
.dir-row h3{font-family:var(--serif);font-size:1rem;margin:0 0 2px}
.dir-row p{font-size:.88rem;color:var(--ink-soft);margin:0}
.mg{width:20px;height:20px;margin-top:3px;border:1px solid var(--rule);border-radius:4px;background:var(--paper-deep);display:grid;place-items:center;font-family:var(--serif);font-weight:700;font-size:.72rem;color:var(--ink-soft)}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips > span{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--rule);border-radius:4px;padding:8px 16px;font-size:.92rem;background:#fff}
.chips img{height:18px;width:auto;max-width:70px}

/* Carriers page category blocks */
.cat{margin-top:38px}
.cat h2{font-family:var(--serif);font-size:1.25rem;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--rule)}
.cat h2 .n{font-family:var(--sans);font-weight:400;font-size:.82rem;color:var(--ink-soft);margin-left:8px}

/* Article page rail layout: .pg2 supplies the page padding, so the nested
   article must not add its own (interior.css gives bare articles 56px). */
.pg2 article{padding:0;margin:0}
.pg2 .crumbs{margin-top:0}
@media(max-width:900px){.rail{position:static}}

/* gravity form styles */
.gform_validation_errors .gform_submission_error{margin: initial;}
.gform_footer button {
  background:var(--oxblood) !important;
  color:#fff !important;
  font-weight:700 !important;
  padding:10px 20px !important;
  border-radius:4px !important;
  font-family: 'Roboto Slab' !important;
}
.gfield_list_icons button {
  background:var(--oxblood) !important;
  color:#fff !important;
}
.gform_footer button:hover,
.gfield_list_icons button:hover {
  background:var(--oxblood-deep) !important;
  color:#fff !important;
  font-family: 'Roboto Slab' !important;
}
.gform-theme--foundation .gform-field-label>.gfield_required,
.gform-theme--foundation.gform_editor legend.gform-field-label>span>.gfield_required {
  vertical-align: top;
}
#field_2_18 .gfield_required_asterisk,
#field_4_36 .gfield_required_asterisk {
  display: none !important;
}