/* WordPress-only additions: layout resets, admin bar, WPForms styled to match the Infinity forms. */
.wp-site-blocks{padding:0!important}
.wp-site-blocks>*{margin-block:0!important}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.admin-bar .site-header{top:32px}
@media (max-width:782px){body.admin-bar .site-header{top:46px}#wpadminbar{position:fixed}}

/* Core blocks inside .prose / posts */
.prose .wp-block-image,.article__body .wp-block-image{margin:28px 0}
.prose .wp-block-image img,.article__body .wp-block-image img{border-radius:var(--r-md,14px);height:auto}
.wp-block-quote{margin:28px 0;padding-left:20px;border-left:3px solid var(--green)}
.wp-block-table table,.article__body table{width:100%;border-collapse:collapse;font-size:.95rem}
.article__body table td,.article__body table th{border:1px solid var(--line);padding:10px 12px;text-align:left}

/* ---------- WPForms: consultation form ---------- */
.form--wpf .wpforms-container{margin:0!important}
.form--wpf .wpforms-form{display:grid;gap:14px}
.form--wpf .wpforms-field-container{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form--wpf .wpforms-field{padding:0!important;display:grid;gap:6px;grid-column:1/-1}
.form--wpf .wpforms-field.inf-half{grid-column:auto}
.form--wpf .wpforms-field-label{font-size:.84rem!important;font-weight:600!important;color:var(--ink)!important;margin:0!important}
.form--wpf .wpforms-required-label{color:var(--muted)}
.form--wpf input[type=text],.form--wpf input[type=email],.form--wpf input[type=tel],.form--wpf select,.form--wpf textarea{width:100%!important;max-width:none!important;font:inherit!important;font-size:1rem!important;color:var(--ink)!important;padding:13px 14px!important;height:auto!important;border:1px solid var(--line-2)!important;border-radius:12px!important;background:var(--mist)!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s,background .2s}
.form--wpf textarea{min-height:110px!important;resize:vertical}
.form--wpf input:focus,.form--wpf select:focus,.form--wpf textarea:focus{outline:none!important;border-color:var(--indigo)!important;background:var(--white)!important;box-shadow:0 0 0 4px rgba(90,71,181,.1)!important}
.form--wpf .wpforms-field-checkbox ul,.form--wpf .wpforms-field-radio ul{display:flex!important;flex-wrap:wrap;gap:8px;margin:0!important;padding:0!important;list-style:none}
.form--wpf .wpforms-field-checkbox li,.form--wpf .wpforms-field-radio li{position:relative;margin:0!important;padding:0!important}
.form--wpf .wpforms-field-checkbox li input,.form--wpf .wpforms-field-radio li input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer;z-index:1}
.form--wpf .wpforms-field-checkbox li label,.form--wpf .wpforms-field-radio li label{display:inline-flex!important;margin:0!important;padding:8px 14px!important;border-radius:999px;border:1px solid var(--line-2);font-size:.88rem!important;font-weight:500!important;background:var(--white);color:var(--ink)!important;transition:background .2s,color .2s,border-color .2s}
.form--wpf .wpforms-field-checkbox li input:checked+label,.form--wpf .wpforms-field-radio li input:checked+label,.form--wpf li.wpforms-selected label{background:var(--ink);color:#fff!important;border-color:var(--ink)}
.form--wpf li input:focus-visible+label{outline:3px solid var(--green);outline-offset:2px}
.form--wpf .wpforms-submit-container{padding:0!important;margin:0!important}
.form--wpf button[type=submit],.quick-wpf button[type=submit]{display:inline-flex!important;align-items:center;justify-content:center;width:100%;min-height:50px!important;height:auto!important;padding:13px 24px!important;border-radius:999px!important;background:var(--green)!important;color:var(--ink)!important;font:600 .98rem/1.1 var(--sans)!important;border:1.5px solid transparent!important;cursor:pointer;box-shadow:none;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.form--wpf button[type=submit]:hover,.quick-wpf button[type=submit]:hover{transform:translateY(-1px);box-shadow:0 12px 28px -14px rgba(54,176,43,.9)!important}
.form--wpf label.wpforms-error,.quick-wpf label.wpforms-error{font-size:.8rem;color:#b42318!important;margin-top:4px}
.form--wpf [class^=wpforms-confirmation-container],.quick-wpf [class^=wpforms-confirmation-container]{padding:16px!important;border-radius:12px;background:var(--green-100)!important;color:var(--green-700)!important;border:0!important;font-weight:600;margin:0!important}
.form--wpf [class^=wpforms-confirmation-container] p,.quick-wpf [class^=wpforms-confirmation-container] p{margin:0}

/* ---------- WPForms: hero quick-start (pill) ---------- */
.quick-wpf{margin-top:36px;max-width:520px}
.quick-wpf .wpforms-container{margin:0!important}
.quick-wpf .wpforms-form{display:flex;gap:6px;padding:6px;border-radius:999px;background:var(--white);border:1px solid var(--line-2);box-shadow:var(--shadow)}
.quick-wpf .wpforms-form:focus-within{border-color:var(--indigo);box-shadow:0 0 0 4px rgba(90,71,181,.1)}
.quick-wpf .wpforms-field-container{flex:1;min-width:0}
.quick-wpf .wpforms-field{padding:0!important}
.quick-wpf .wpforms-field-label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.quick-wpf input[type=email]{width:100%!important;max-width:none!important;border:0!important;background:transparent!important;font:inherit!important;font-size:1rem!important;padding:10px 16px!important;height:46px!important;color:var(--ink)!important;box-shadow:none!important;outline:none!important}
.quick-wpf .wpforms-submit-container{padding:0!important;margin:0!important}
.quick-wpf button[type=submit]{width:auto;min-height:46px!important;white-space:nowrap}
/* Form messages (errors from WPForms or the form guard): a calm note under the field, never squeezed inside the pill. */
.form--wpf .wpforms-error-container,.quick-wpf .wpforms-error-container{display:block;box-sizing:border-box;margin:0;padding:10px 14px 10px 38px;border-radius:12px;background:#FEF3F2;border:1px solid #FDD3CF;color:#B42318!important;font-weight:500;font-size:.85rem;line-height:1.45;font-family:inherit;text-align:left;position:relative;grid-column:1/-1}
.form--wpf .wpforms-error-container::before,.quick-wpf .wpforms-error-container::before{content:"!";position:absolute;left:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;background:#B42318;color:#fff;font-weight:700;font-size:.72rem;line-height:18px;font-family:inherit;text-align:center}
.form--wpf .wpforms-error-container p,.quick-wpf .wpforms-error-container p{margin:0}
.form--wpf .wpforms-error-container{margin-bottom:14px}
.quick-wpf{position:relative}
.quick-wpf .wpforms-form{position:relative}
.quick-wpf .wpforms-error-container{position:absolute;top:calc(100% + 10px);left:0;right:0;width:auto;flex:none;z-index:2}
.quick-wpf:has(.wpforms-error-container){padding-bottom:62px}
@media (max-width:640px){
  .form--wpf .wpforms-field-container{grid-template-columns:1fr}
  .quick-wpf{width:100%;margin-inline:auto}
  .quick-wpf .wpforms-form{flex-direction:column;border-radius:22px}
  .quick-wpf button[type=submit]{width:100%}
}

/* Heading groups placed inside columns/bands sit tight like the hand-built sections */
.split>*>.head,.why-band>*>.head{margin-bottom:0}
.split>*>.head+*,.why-band>*>.head+*{margin-top:32px}
.split>*>.head .lead.mt-s{margin-top:16px}
.form--wpf button[type=submit]::after{content:"";width:18px;height:18px;margin-left:10px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E") center/contain no-repeat}
.form--wpf .wpforms-required-label{color:var(--muted)!important;font-weight:400}

/* Pagination (search) */
ul.page-numbers{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
ul.page-numbers a,ul.page-numbers span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--white);color:var(--ink);font-weight:600;font-size:.92rem;text-decoration:none}
ul.page-numbers .current{background:var(--ink);border-color:var(--ink);color:#fff}
ul.page-numbers a:hover{border-color:var(--indigo)}

/* top navigation labels never wrap */
.nav a,.nav button{white-space:nowrap}
