/* ============================================================
   PMCK theme
   NO brand hex codes in this file. The palette arrives as
   --brand / --brand-dark / --accent / --head-bg and friends
   from inc/context.php, so a blue subsidiary needs zero new CSS.
   ============================================================ */

:root{
  /* Fallbacks only. PHP overrides these per subsidiary context. */
  --brand:#034835;
  --brand-dark:#002400;
  --brand-ink:#023020;
  --brand-soft:#EEF3E3;
  --brand-pale:#DDE7C9;
  --brand-rgb:3, 72, 53;
  --accent:#8BCA02;
  --head-bg:#EEF3E3;
  --head-ink:#023020;

  --red:#DB291F;
  --body:#4A5751;
  --muted:#5C6B62;
  --line:#E1E7D6;
  --white:#fff;

  --wrap:1400px;
  --radius:10px;

  --pmck-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 42'%3E%3Cpath fill='%23000' fill-rule='evenodd' clip-rule='evenodd' d='M15.0609 26.9398C14.864 26.7429 14.7534 26.4758 14.7534 26.1974C14.7534 25.919 14.864 25.6519 15.0609 25.455L23.6621 16.8538L17.288 16.8553C17.0092 16.8553 16.7418 16.7445 16.5447 16.5474C16.3476 16.3503 16.2368 16.0829 16.2368 15.8041C16.2368 15.5253 16.3476 15.2579 16.5447 15.0608C16.7418 14.8636 17.0092 14.7529 17.288 14.7529L26.1966 14.7529C26.3347 14.7527 26.4714 14.7798 26.599 14.8325C26.7267 14.8853 26.8426 14.9627 26.9403 15.0604C27.0379 15.158 27.1153 15.274 27.1681 15.4016C27.2209 15.5292 27.2479 15.666 27.2478 15.8041V24.7126C27.2478 24.9914 27.137 25.2588 26.9399 25.456C26.7427 25.6531 26.4754 25.7639 26.1966 25.7639C25.9178 25.7639 25.6504 25.6531 25.4532 25.456C25.2561 25.2588 25.1454 24.9914 25.1454 24.7126L25.1468 18.3386L16.5456 26.9398C16.3487 27.1367 16.0817 27.2473 15.8033 27.2473C15.5248 27.2473 15.2578 27.1367 15.0609 26.9398Z'/%3E%3C/svg%3E");
  --pmck-caret:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M7.4 8.6 12 13.2l4.6-4.6L18 10l-6 6-6-6z'/%3E%3C/svg%3E");
}

*,*::before,*::after{box-sizing:border-box;}

body{
  margin:0;background:var(--white);color:var(--body);
  font-family:'Barlow',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,h5,h6{margin:0 0 .5em;color:var(--brand-ink);line-height:1.2;}
a{color:inherit;}
img{max-width:100%;height:auto;display:block;}
button{font:inherit;}

.pmck-wrap{max-width:1240px;margin:0 auto;padding:0 40px;}
@media (max-width:767px){.pmck-wrap{padding:0 20px;}}
.pmck-section{padding:48px 0 64px;}

.pmck-skip{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--brand);color:#fff;padding:12px 18px;}
.pmck-skip:focus{left:0;}

.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;}

.pmck-i{width:1em;height:1em;fill:currentColor;flex-shrink:0;}

/* ============================================================
   Buttons and the arrow badge
   ONE shape, any colour. ::after is the rounded square
   (background-color); ::before is the arrow drawn with mask from
   a single colourless data-URI, so its colour is just
   background-color and hover can change it.
   ============================================================ */

.pmck-btn{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--brand);color:#fff;text-decoration:none;
  border:2px solid var(--brand);border-radius:10px;
  padding:13px 20px;font-weight:700;font-size:18px;
  transition:background .18s,color .18s,border-color .18s;
}
.pmck-btn:hover{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff;}

.pmck-btn--red{background:var(--red);border-color:var(--red);}
.pmck-btn--red:hover{background:#fff;color:var(--red);border-color:var(--red);}

.pmck-btn--block{display:flex;width:100%;justify-content:center;}

.pmck-badge{position:relative;padding-right:56px;}
.pmck-badge::after{
  content:"";position:absolute;right:9px;top:50%;transform:translateY(-50%);
  width:30px;height:30px;border-radius:7px;background-color:#fff;
  transition:background-color .18s;
}
.pmck-badge::before{
  content:"";position:absolute;right:13px;top:50%;transform:translateY(-50%);
  width:22px;height:22px;z-index:1;background-color:var(--brand);
  transition:background-color .18s;
  -webkit-mask:var(--pmck-arrow) no-repeat center/22px 22px;
  mask:var(--pmck-arrow) no-repeat center/22px 22px;
}
.pmck-btn--red.pmck-badge::before{background-color:var(--red);}
.pmck-badge:hover::after{background-color:var(--brand);}
.pmck-badge:hover::before{background-color:#fff;}
.pmck-btn--red.pmck-badge:hover::after{background-color:var(--red);}
.pmck-btn--red.pmck-badge:hover::before{background-color:#fff;}

/* ============================================================
   Header
   Top bar = --brand. Main bar = --head-bg with --head-ink text.
   ============================================================ */

.pmck-head{position:relative;background:var(--head-bg);}
.pmck-head__inner{max-width:var(--wrap);margin:0 auto;display:flex;align-items:center;}

.pmck-head__top{background:var(--brand);}
.pmck-head__top .pmck-head__inner{
  justify-content:flex-end;gap:0;padding:9px 40px;
  font-size:15px;font-weight:700;color:#fff;
}
.pmck-head__toplink{
  color:#fff;text-decoration:none;padding-right:20px;
  text-transform:uppercase;letter-spacing:.04em;
}
.pmck-head__toplink:hover{opacity:.8;}
.pmck-head__topsep{width:1px;height:18px;background:rgba(255,255,255,.45);}

/* language dropdown */
.pmck-lang{position:relative;padding-left:20px;}
.pmck-lang__toggle{
  display:flex;align-items:center;gap:7px;background:none;border:0;color:#fff;
  cursor:pointer;font-weight:700;font-size:15px;letter-spacing:.03em;padding:2px 0;
}
.pmck-lang__globe{width:18px;height:18px;}
.pmck-lang__caret{width:14px;height:14px;transition:transform .18s;}
.pmck-lang__toggle[aria-expanded="true"] .pmck-lang__caret{transform:rotate(180deg);}
.pmck-lang__menu{
  position:absolute;right:0;top:calc(100% + 9px);z-index:120;min-width:132px;
  background:#fff;border-radius:8px;padding:6px 0;
  box-shadow:0 8px 22px rgba(0,0,0,.18);display:none;
}
.pmck-lang__menu.is-open{display:block;}
.pmck-lang__item{display:block;padding:9px 16px;color:var(--brand-ink);text-decoration:none;font-weight:600;font-size:15px;}
.pmck-lang__item:hover{background:var(--brand-soft);}
.pmck-lang__item.is-current{font-weight:700;background:var(--brand-soft);}

.pmck-head__main .pmck-head__inner{justify-content:space-between;gap:28px;padding:12px 40px;}
.pmck-head__logo{display:block;flex-shrink:0;}
.pmck-head__logo img{max-height:58px;width:auto;}
.pmck-head__logotext{color:var(--head-ink);font-weight:700;font-size:22px;}

.pmck-head__nav{display:flex;align-items:center;gap:28px;}
.pmck-head__navlang{display:none;}
.pmck-head__nav .pmck-btn{font-size:16px;}

.pmck-nav__list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:28px;}
.pmck-nav__list a{
  color:var(--head-ink);text-decoration:none;font-weight:600;font-size:16px;
  line-height:1.5;display:inline-flex;align-items:center;gap:6px;
}
.pmck-nav__list > li{position:relative;}
.pmck-nav__list > li > a:hover{color:var(--brand);}

/* chevron on any item that has a submenu */
.pmck-nav__list > li.menu-item-has-children > a::after{
  content:"";width:13px;height:13px;flex-shrink:0;background-color:currentColor;
  -webkit-mask:var(--pmck-caret) no-repeat center/13px 13px;
  mask:var(--pmck-caret) no-repeat center/13px 13px;
}

.pmck-nav__list .sub-menu{
  list-style:none;margin:0;padding:8px 0;
  position:absolute;left:0;top:100%;min-width:250px;z-index:110;
  background:#fff;border-radius:0 0 10px 10px;
  box-shadow:0 10px 24px rgba(0,0,0,.12);display:none;
}
.pmck-nav__list li:hover > .sub-menu,
.pmck-nav__list li:focus-within > .sub-menu{display:block;}
.pmck-nav__list .sub-menu a{display:block;padding:10px 18px;font-size:17px;font-weight:500;}
.pmck-nav__list .sub-menu a:hover{background:var(--brand-soft);color:var(--brand);}

.pmck-burger{display:none;background:none;border:0;color:var(--head-ink);padding:6px;cursor:pointer;}
.pmck-burger .pmck-i{width:30px;height:30px;}
.pmck-burger__close{display:none;}
.pmck-burger[aria-expanded="true"] .pmck-burger__open{display:none;}
.pmck-burger[aria-expanded="true"] .pmck-burger__close{display:block;}

@media (max-width:1280px){
  .pmck-head__nav{gap:18px;}
  .pmck-nav__list{gap:18px;}
  .pmck-nav__list a{font-size:16px;}
  .pmck-head__main .pmck-head__inner{padding:12px 24px;}
  .pmck-head__top .pmck-head__inner{padding:9px 24px;}
}

@media (max-width:1100px){
  .pmck-head__top{display:none;}
  .pmck-burger{display:block;}
  .pmck-head__main .pmck-head__inner{padding:10px 16px;}
  .pmck-head__logo img{max-height:44px;}

  .pmck-head__nav{
    display:none;position:absolute;left:0;right:0;top:100%;z-index:90;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--head-bg);padding:8px 16px 22px;
    box-shadow:0 14px 26px rgba(0,0,0,.16);
  }
  .pmck-head__nav.is-open{display:flex;}

  .pmck-nav__list{flex-direction:column;align-items:stretch;gap:0;}
  .pmck-nav__list > li{border-bottom:1px solid rgba(2,48,32,.12);}
  .pmck-nav__list a{display:flex;padding:13px 4px;}
  .pmck-nav__list > li.menu-item-has-children > a::after{margin-left:auto;}
  .pmck-nav__list .sub-menu{position:static;display:block;background:none;box-shadow:none;padding:0 0 8px 14px;}
  .pmck-nav__list .sub-menu a{padding:8px 4px;}

  .pmck-head__nav .pmck-btn{margin-top:18px;justify-content:flex-start;align-self:flex-start;}
  .pmck-head__navlang{display:block;margin-top:18px;}
  .pmck-head__navlang .pmck-lang{padding-left:0;}
  .pmck-head__navlang .pmck-lang__toggle{color:var(--head-ink);}
  .pmck-head__navlang .pmck-lang__menu{right:auto;left:0;}
}

/* ============================================================
   Hero
   ============================================================ */

.pmck-hero{background:var(--brand);color:#fff;padding:32px 0 40px;}
.pmck-hero__title{color:#fff;font-size:clamp(30px,4vw,44px);font-weight:700;line-height:1.12;margin:0;}
.pmck-hero__sub{margin:14px 0 0;font-size:19px;line-height:1.55;color:rgba(255,255,255,.92);max-width:46ch;}

.pmck-hero.has-image{position:relative;isolation:isolate;}
.pmck-hero.has-image::before{
  content:"";position:absolute;inset:0;z-index:-2;
  background-image:var(--hero-img);background-size:cover;background-position:center;
}
.pmck-hero.has-image::after{
  content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,
    rgba(var(--brand-rgb),.95) 0%,
    rgba(var(--brand-rgb),.88) 45%,
    rgba(var(--brand-rgb),.55) 100%);
}
@media (max-width:767px){
  .pmck-hero.has-image::after{background:rgba(var(--brand-rgb),.92);}
}

/* Every listing hero is the same height, whatever the copy length, so the
   pages line up when you move between them. One variable to tune them all. */
.pmck-hero--tall{
  --pmck-hero-h:400px;
  min-height:var(--pmck-hero-h);
  display:flex;align-items:center;
  padding-top:0;padding-bottom:0;
}
.pmck-hero--tall > .pmck-wrap{width:100%;}
@media (max-width:980px){.pmck-hero--tall{--pmck-hero-h:320px;}}
@media (max-width:600px){.pmck-hero--tall{--pmck-hero-h:260px;padding:36px 0;}}

.pmck-crumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:16px;color:rgba(255,255,255,.6);margin-bottom:26px;}
.pmck-crumb a{text-decoration:none;}
.pmck-crumb a:hover{color:#fff;}

/* ============================================================
   Prose and cards
   ============================================================ */

.pmck-prose h2{font-size:24px;margin-top:1.6em;}
.pmck-prose h3{font-size:20px;margin-top:1.4em;}
.pmck-prose p{margin:0 0 1em;}
.pmck-prose ul,.pmck-prose ol{margin:0 0 1em;padding-left:1.2em;}

.pmck-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;}
.pmck-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
.pmck-card__media img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.pmck-card__body{padding:18px 20px 22px;}
.pmck-card__title{font-size:20px;margin:0 0 8px;}
.pmck-card__title a{text-decoration:none;}
.pmck-card__excerpt{margin:0;font-size:16px;color:var(--muted);}

/* ============================================================
   Career single
   ============================================================ */

.pmck-cols{display:flex;gap:42px;align-items:flex-start;padding:36px 0 60px;}
.pmck-cols__main{flex:1;min-width:0;}
.pmck-cols__side{width:310px;flex-shrink:0;position:sticky;top:22px;}

.pmck-block{margin-bottom:36px;}
.pmck-block h2{font-size:24px;font-weight:700;margin-bottom:14px;}
.pmck-block p{margin:0 0 14px;}

.pmck-pill{
  background:var(--brand-pale);border-radius:8px;padding:13px 18px;margin-bottom:9px;
  display:flex;justify-content:space-between;gap:16px;align-items:baseline;
}
.pmck-pill b{color:var(--brand-ink);font-weight:600;font-size:18px;}

.pmck-ticks{list-style:none;margin:0;padding:0;}
.pmck-ticks li{display:flex;gap:12px;margin-bottom:20px;line-height:1.55;font-size:18px;}
.pmck-ticks .pmck-i{width:19px;height:19px;margin-top:5px;color:var(--accent);}

.pmck-jobcard{
  background:#fff;border-radius:10px;padding:22px 22px 20px;
  border-top:4px solid var(--brand);box-shadow:0 2px 10px rgba(2,48,32,.05);
}
.pmck-jobcard__label{font-size:15px;font-weight:600;color:var(--muted);margin-bottom:6px;}
.pmck-jobcard__salary{font-size:34px;font-weight:700;color:var(--brand-ink);line-height:1.05;}
.pmck-jobcard__rule{border:0;border-top:1px solid var(--line);margin:18px 0;}
.pmck-fact{display:flex;gap:11px;margin-bottom:15px;}
.pmck-fact__ic{
  width:24px;height:24px;border-radius:50%;background:var(--brand);color:#fff;
  display:grid;place-items:center;flex-shrink:0;margin-top:1px;
}
.pmck-fact__ic .pmck-i{width:12px;height:12px;}
.pmck-fact b{display:block;color:var(--brand-ink);font-size:17px;font-weight:600;line-height:1.35;}
.pmck-fact span{font-size:16px;color:var(--muted);}
.pmck-jobcard .pmck-btn{margin-top:20px;width:100%;justify-content:flex-start;}

@media (max-width:880px){
  .pmck-cols{flex-direction:column;gap:28px;}
  .pmck-cols__side{width:100%;position:static;}
}

/* ============================================================
   Footer
   ============================================================ */

.pmck-foot{background:var(--brand-dark);color:#fff;font-size:18px;}
.pmck-foot__inner{max-width:var(--wrap);margin:0 auto;padding:60px 40px 30px;}
.pmck-foot a{color:#fff;text-decoration:none;}
.pmck-foot a:hover{opacity:.75;}

.pmck-foot__top{display:flex;gap:70px;align-items:flex-start;}
.pmck-foot__brand{flex:0 0 380px;max-width:380px;}
.pmck-foot__logo img{max-height:64px;width:auto;margin-bottom:26px;}
.pmck-foot__blurb{margin:0 0 28px;font-size:18px;line-height:1.65;max-width:34ch;}

.pmck-foot__cols{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:34px;}
.pmck-foot__h{
  color:var(--accent);font-size:18px;font-weight:700;margin:0 0 16px;padding-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.28);
}
.pmck-foot__h a{color:var(--accent);}
.pmck-foot__list{list-style:none;margin:0;padding:0;}
.pmck-foot__list li{margin-bottom:16px;line-height:1.35;}

.pmck-social{display:flex;gap:16px;align-items:center;}
.pmck-social__link{color:var(--accent);display:block;}
.pmck-social__link .pmck-i{width:22px;height:22px;}
.pmck-social__link:hover{opacity:.75;}

.pmck-foot__bottom{
  margin-top:52px;padding-top:24px;border-top:1px solid rgba(255,255,255,.28);
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:17px;
}
.pmck-foot__copy{margin:0;}
.pmck-foot__legallist{list-style:none;margin:0;padding:0;display:flex;align-items:center;}
.pmck-foot__legallist li{padding:0 26px;}
.pmck-foot__legallist li:not(:last-child){border-right:1px solid rgba(255,255,255,.35);}
.pmck-foot__legallist li:last-child{padding-right:0;}

@media (max-width:1100px){
  .pmck-foot__top{flex-direction:column;gap:40px;}
  .pmck-foot__brand{flex:none;max-width:none;}
  .pmck-foot__cols{width:100%;}
}
@media (max-width:640px){
  .pmck-foot__inner{padding:40px 20px 26px;}
  .pmck-foot__cols{grid-template-columns:repeat(2,1fr);gap:26px;}
  .pmck-foot__bottom{flex-direction:column;align-items:flex-start;gap:14px;}
  .pmck-foot__legallist{flex-wrap:wrap;}
  .pmck-foot__legallist li{padding:0 16px 0 0;border-right:0!important;}
}

/* ============================================================
   Modals
   ============================================================ */

.pmck-modal{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:20px;}
.pmck-modal[hidden]{display:none;}
.pmck-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);}
.pmck-modal__box{
  position:relative;z-index:1;background:var(--brand-soft);
  border-radius:14px;padding:30px 40px 34px;width:100%;max-height:90vh;overflow-y:auto;
  border-top:8px solid var(--brand);
}
.pmck-modal__box--emergency{max-width:900px;}
.pmck-modal__box--apply{max-width:820px;background:#fff;}
.pmck-modal__x{
  position:absolute;right:16px;top:16px;background:none;border:0;cursor:pointer;
  color:var(--muted);padding:6px;line-height:0;
}
.pmck-modal__x .pmck-i{width:22px;height:22px;}
.pmck-modal__x:hover{color:var(--brand-ink);}
.pmck-modal__title{text-align:center;font-size:40px;font-weight:700;margin:0 0 24px;}
.pmck-modal__intro{text-align:center;margin:-14px 0 24px;font-size:18px;}

.pmck-emg{display:flex;gap:20px;margin:0 0 22px;align-items:stretch;}
.pmck-emg__card{flex:1;min-width:0;background:#fff;border-radius:10px;padding:22px 24px 24px;}
.pmck-emg__h{font-size:22px;font-weight:700;margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--line);}
.pmck-emg__row{display:flex;gap:12px;align-items:flex-start;margin:0 0 14px;line-height:1.5;}
.pmck-emg__row:last-child{margin-bottom:0;}
.pmck-emg__ic{
  width:26px;height:26px;border-radius:50%;background:var(--brand);color:#fff;
  display:grid;place-items:center;flex-shrink:0;margin-top:2px;
}
.pmck-emg__ic .pmck-i{width:13px;height:13px;}
.pmck-emg__row a{text-decoration:none;color:var(--brand-ink);font-size:18px;}
.pmck-emg__row a:hover{text-decoration:underline;}
.pmck-emg__addr{color:var(--brand-ink);font-size:18px;}

.pmck-emg__apps{display:flex;gap:26px;margin-top:20px;flex-wrap:wrap;}
.pmck-emg__app{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-weight:700;font-size:18px;color:var(--brand-ink);}
.pmck-emg__app img{width:24px;height:24px;object-fit:contain;}
.pmck-emg__appic{width:24px;height:24px;color:var(--brand);}
.pmck-emg__chev{width:15px;height:15px;color:var(--muted);}
.pmck-emg__app:hover{color:var(--brand);}

.pmck-emg__call{font-size:19px;gap:12px;}
.pmck-emg__call .pmck-i{width:30px;height:30px;}

.pmck-form__missing{background:#FFF8E1;border:1px dashed #D8B34A;padding:12px 16px;border-radius:8px;color:#6B5518;}

@media (max-width:767px){
  .pmck-modal__box{padding:22px 16px 26px;}
  .pmck-modal__title{font-size:26px;margin-bottom:18px;}
  .pmck-emg{flex-direction:column;gap:14px;}
}

/* ============================================================
   Contact Form 7 inside the application popup
   ============================================================ */

.pmck-form .pmck-row{display:flex;gap:15px;flex-wrap:wrap;}
.pmck-form .pmck-col{flex:1 1 calc(50% - 8px);min-width:220px;}
.pmck-form label{display:block;font-weight:600;font-size:17px;line-height:1.2;margin-bottom:5px;color:var(--brand-ink);}
.pmck-form input[type="text"],
.pmck-form input[type="email"],
.pmck-form input[type="tel"],
.pmck-form textarea{
  width:100%;background:#F2F2F2;border:1px solid #D0D5DD;border-radius:10px;padding:10px;font:inherit;
}
.pmck-form textarea{min-height:120px;}
.pmck-form p{margin:0 0 15px;}
.pmck-form .wpcf7-form-control-wrap{display:block;}
.pmck-form .wpcf7-list-item{margin:0;}
.pmck-form .pmck-consent{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.35;}
.pmck-form .pmck-consent input[type="checkbox"]{transform:scale(1.4);margin-top:4px;}
.pmck-form .pmck-consent label{font-weight:400;font-size:15px;color:inherit;}
.pmck-form a{color:#2563EB;text-decoration:underline;}

/* Upload box. Styling goes on the WRAPPER, not the file input: a file input is
   rendered from shadow DOM, so flex and pseudo-elements on it are unreliable. */
.pmck-form .pmck-upload{
  position:relative;height:160px;border:2px dashed #D0D5DD;border-radius:8px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:16px;cursor:pointer;gap:4px;
  transition:border-color .18s,background-color .18s;
}
.pmck-form .pmck-upload:hover{border-color:var(--brand);background:var(--brand-soft);}
.pmck-form .pmck-upload input[type="file"]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;}
.pmck-form .pmck-upload__label{font-weight:700;color:var(--brand-ink);}
.pmck-form .pmck-upload__hint{font-size:14px;color:var(--muted);}

/* Submit button.
   The arrow badge cannot live on the button itself: CF7 renders an
   <input type="submit">, and an input has no ::before or ::after. So the
   badge goes on a wrapping span, which is why the CF7 markup has one. */
.pmck-form .pmck-actions{
  display:flex;justify-content:center;align-items:center;margin-top:6px;position:relative;
}
.pmck-form .pmck-submit{position:relative;display:inline-flex;}
.pmck-form .wpcf7-submit{
  display:inline-flex;align-items:center;justify-content:flex-start;
  background:var(--brand);color:#fff;border:2px solid var(--brand);
  border-radius:10px;padding:12px 58px 12px 22px;font-weight:700;font-size:18px;cursor:pointer;
  transition:background .18s,color .18s;
}
.pmck-form .wpcf7-submit:hover{background:#fff;color:var(--brand);}
.pmck-form .pmck-submit::after{
  content:"";position:absolute;right:11px;top:50%;transform:translateY(-50%);
  width:30px;height:30px;border-radius:7px;background-color:#fff;
  transition:background-color .18s;pointer-events:none;
}
.pmck-form .pmck-submit::before{
  content:"";position:absolute;right:15px;top:50%;transform:translateY(-50%);
  width:22px;height:22px;z-index:1;background-color:var(--brand);
  transition:background-color .18s;pointer-events:none;
  -webkit-mask:var(--pmck-arrow) no-repeat center/22px 22px;
  mask:var(--pmck-arrow) no-repeat center/22px 22px;
}
.pmck-form .pmck-submit:hover::after{background-color:var(--brand);}
.pmck-form .pmck-submit:hover::before{background-color:#fff;}

/* The spinner sits inline after the button and would shove it off centre. */
.pmck-form .wpcf7-spinner{position:absolute;left:100%;margin-left:14px;}


/* ============================================================
   Tooltip
   Click, not hover: this has to work on a phone, where the row
   it explains is most likely to be read.
   ============================================================ */

.pmck-tip{
  display:inline-grid;place-items:center;vertical-align:middle;
  width:19px;height:19px;margin-left:7px;padding:0;
  border:0;border-radius:50%;cursor:pointer;
  background:var(--brand);color:#fff;
  font-size:13px;font-weight:700;line-height:1;
}
.pmck-tip:hover{background:var(--brand-dark);}

.pmck-tipbox{
  position:absolute;z-index:950;max-width:300px;
  background:var(--brand-ink);color:#fff;
  border-radius:8px;padding:12px 14px;
  font-size:15px;line-height:1.45;font-weight:400;
  box-shadow:0 8px 22px rgba(0,0,0,.24);
}
.pmck-tipbox::after{
  content:"";position:absolute;top:-6px;left:var(--tip-x,20px);
  border:6px solid transparent;border-top:0;border-bottom-color:var(--brand-ink);
}