/*
 * Page « Contact » — styles.
 *
 * Bloc extrait verbatim de la maquette base_contact.html, chargé UNIQUEMENT sur
 * le gabarit template-contact.php (voir inc/enqueue.php) afin de n'impacter
 * aucune autre page. Le reset box-sizing d'origine (« * ») est ici scopé à
 * « .contact-page » pour ne pas altérer l'en-tête / le pied de page globaux.
 *
 * @package medecins-du-monde
 */

/* Reset box-sizing scopé au contenu de la page contact (au lieu du « * » global). */
.contact-page,.contact-page *,.contact-page *::before,.contact-page *::after{box-sizing:border-box}
.contact-page{margin:0;font-family:'Open Sans',sans-serif;color:#1d1a55;background:#fff;line-height:1.4;-webkit-font-smoothing:antialiased}
.contact-page h1,.contact-page h2,.contact-page h3,.contact-page h4{margin:0;font-weight:400;font-size:16px}
.contact-page p{margin:0}
.contact-page a{text-decoration:none;color:inherit}
.contact-page ul{margin:0;padding:0;list-style:none}
.contact-page button,.contact-page input,.contact-page select,.contact-page textarea{font-family:inherit}
.anton{font-family:'Anton',sans-serif;text-transform:uppercase}

/* ===== SHARED ===== */
.cummon-button{padding:9px 10px 9px 14px;border-radius:5px;height:fit-content;align-items:center;background:#e9511c;border:1px solid #e9511c;white-space:nowrap;width:fit-content;line-height:20px;display:flex;gap:18px;color:#fff;font-weight:600;cursor:pointer;transition:background-color .3s ease,color .3s ease,border-color .3s ease}
.cummon-button:hover{background:transparent;color:#e9511c;border-color:#e9511c}
.cummon-button.solid{color:#fff}
.cummon-button img{width:14px;height:8px;transition:transform .3s ease}
.cummon-button:hover img{content:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iNyIgdmlld0JveD0iMCAwIDEyIDciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik04LjU5MzQ5IDBMMTEuNTkzNSAzTDExLjk1MzUgMy4zNkwxMS41OTM1IDMuNzJMOC41OTM0OSA2LjcyTDcuODkwNDkgNkwxMC4wMzIgMy44NkgtOC41ODMwN2UtMDZWMi44NkgxMC4wMzE1TDcuODkwNDkgMC43Mkw4LjU5NDQ5IDBIOC41OTM0OVoiIGZpbGw9IiNFOTUxMUMiPjwvcGF0aD4KPC9zdmc+');transform:translateX(3px)}
.cummon-button.light{background:#bddfec;border-color:#bddfec;color:#1d1a55}
.cummon-button.light:hover{background:transparent;color:#bddfec}
.cummon-button.light:hover img{content:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMTMiIHZpZXdCb3g9IjAgMCAyMiAxMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE1LjgxNiAwTDIxLjMzNzQgNS44MDM1N0wyMiA2LjVMMjEuMzM3NCA3LjE5NjQzTDE1LjgxNiAxM0wxNC41MjIyIDExLjYwNzFMMTguNDYzNSA3LjQ2NzI2SDBWNS41MzI3NEgxOC40NjI2TDE0LjUyMjIgMS4zOTI4NkwxNS44MTc5IDBIMTUuODE2WiIgZmlsbD0iI0JEREZFQyI+PC9wYXRoPgo8L3N2Zz4=')}
.section-tag{position:absolute;transform:rotate(-4.14deg);padding:8px 16px;font-family:'Anton',sans-serif;text-transform:uppercase;background:#e9511c;border-radius:5px;color:#fff;font-size:28px;line-height:normal;left:3px;top:-30px;white-space:nowrap}
.title{position:relative}

/* ===== HERO ===== */
.contact-hero{position:relative;text-align:center;padding:92px 26px 68px}
/* Bandeau centré : la pastille sort du flux et se pose sur le haut du titre, comme les
   étiquettes de section de l'accueil (.events-content y fait de même). Les 37.4px qu'elle
   occupait dans le flux sont rendus au titre par la marge de .ct-hero-head. */
.ct-hero-head{position:relative;margin-top:37.4px}
.contact-hero .section-tag{z-index:2;left:50%;top:-52px;transform:translateX(-50%) rotate(-4.14deg)}
.contact-hero h1{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(52px,8vw,104px);line-height:.96;color:#055da8;letter-spacing:-.01em;position:relative;z-index:1}
.contact-hero h1 span{color:#1d1a55;background:linear-gradient(#bddfec,#bddfec) no-repeat;background-size:100% 70%;background-position:0 60%}
.contact-hero .lead{font-size:22px;line-height:1.5;color:#1d1a55;max-width:620px;margin:28px auto 0}

/* ===== SECTION SHELL ===== */
.section{padding:74px 26px}
.section-head{position:relative;margin-bottom:54px;max-width:760px;padding-top:25px}
/* La pastille est déjà hors flux : la réserve de 25px reste le padding-top de .section-head,
   et .sh-title l'ancre au titre lui-même plutôt qu'à l'intitulé entier. */
.sh-title{position:relative}
.section-head .section-tag{top:-55px;left:0}
.section-head h2{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:clamp(38px,5vw,64px);line-height:1;color:#055da8}
.section-head .sub{font-size:17px;line-height:1.6;color:#4a4a6a;margin-top:18px;max-width:600px}

/* ===== INFO CARDS ===== */
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.info-card{min-width:0;border-radius:8px;padding:30px 26px 32px;display:flex;flex-direction:column;transition:background-color .45s cubic-bezier(.22,.61,.36,1),color .45s cubic-bezier(.22,.61,.36,1),border-color .4s ease,transform .5s cubic-bezier(.22,.61,.36,1)}
.info-card:hover{transform:translateY(-8px)}
.card-plain:hover{background:#1d1a55;color:#fff;border-color:#1d1a55}
.card-plain:hover .ic-head{border-bottom-color:rgba(255,255,255,.28)}
.card-blue:hover{background:#1d1a55;color:#fff}
.card-blue:hover .ic-num{background:#bddfec;color:#1d1a55}
.card-blue:hover .hours-row+.hours-row{border-top-color:rgba(255,255,255,.28)}
.card-dark:hover{background:#bddfec;color:#1d1a55}
.card-dark:hover .ic-head{border-bottom-color:rgba(29,26,85,.28)}
.card-dark:hover .field+.field{border-top-color:rgba(29,26,85,.2)}
.info-card .ic-num{transition:transform .4s cubic-bezier(.34,1.56,.64,1),background-color .4s ease,color .4s ease}
.info-card:hover .ic-num{transform:translateY(-3px) rotate(-4deg) scale(1.06)}
.info-card .ic-head{display:flex;align-items:center;gap:10px;font-family:'Anton',sans-serif;text-transform:uppercase;font-size:14px;letter-spacing:.04em;padding-bottom:14px;margin-bottom:18px;border-bottom:1px solid currentColor}
.info-card .ic-num{font-family:'Anton',sans-serif;font-size:14px;padding:2px 9px;border-radius:4px}
.info-card h3{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:24px;line-height:1.05;margin-bottom:14px}
.info-card .role{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin:-8px 0 18px;opacity:.8}
.info-card .desc{font-size:14px;line-height:1.6;margin-bottom:20px}
.field{margin-bottom:14px}
.field+.field{padding-top:14px;border-top:1px dashed rgba(0,0,0,.18)}
.field .fk{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:14px;letter-spacing:.05em;opacity:.7;margin-bottom:5px}
.field .fv{font-size:16px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.field .fv a{font-weight:600;color:inherit;text-decoration:none;background-image:linear-gradient(#e9511c,#e9511c);background-size:0 100%;background-repeat:no-repeat;background-position:0 0;padding:1px 4px;margin:0 -4px;border-radius:3px;transition:background-size .4s cubic-bezier(.22,.61,.36,1),color .3s ease}
.field .fv a:hover{background-size:100% 100%;color:#fff}
.field .fv .sm{font-size:14px;font-weight:400;opacity:.85;display:block;margin-top:3px}
.hours-row{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding:7px 0}
.hours-row+.hours-row{border-top:1px dashed rgba(29,26,85,.25)}
.hours-row .d{opacity:.75}
.hours-row .h{font-weight:700}
.hours-note{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:14px;letter-spacing:.03em;margin-top:16px;opacity:.7}
/* info card colour variants */
.card-blue{background:#bddfec;color:#1d1a55}
.card-blue .ic-num{background:#1d1a55;color:#fff}
.card-green{background:#00af9c;color:#fff;border:1px solid #00af9c}
.card-green .ic-head{border-bottom-color:rgba(255,255,255,.35)}
.card-green .ic-num{background:#fff;color:#00af9c}
.card-green .field .fk{color:#fff;opacity:.85}
.card-green .field .fv a{color:#fff}
.card-green .field+.field{border-top-color:rgba(255,255,255,.3)}
.card-green:hover{background:#009786;border-color:#009786;color:#fff}
.card-green .role{color:#fff;opacity:.9}
.card-plain{background:#fff;color:#1d1a55;border:1px solid #e1e8f3}
.card-plain .ic-head{border-bottom-color:#e6ecf5}
.card-plain .ic-num{background:#e9511c;color:#fff}
.card-dark{background:#1d1a55;color:#fff}
.card-dark .field+.field{border-top-color:rgba(255,255,255,.22)}
.card-dark .ic-head{border-bottom-color:rgba(255,255,255,.28)}
.card-dark .ic-num{background:#e9511c;color:#fff}
.card-dark .info-card{height:100%}
.mt-auto{margin-top:auto}

/* ===== INFO SPLIT (Horaires) ===== */
.info-split{display:grid;grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr);gap:18px;align-items:start}
.quick-contacts{padding-top:30px}
.qc-block+.qc-block{margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.2)}

/* ===== CONTACT DIRECTORY (Interlocuteurs) — intro à gauche, grille à droite ===== */
.dir-split{display:grid;grid-template-columns:minmax(280px,0.82fr) minmax(0,1.6fr);gap:60px;align-items:start}
.dir-aside{position:sticky;top:96px}
.dir-aside .section-head{margin-bottom:0}
.dir-aside .cummon-button{margin-top:30px}
.dir-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.dir-card{min-width:0;border:1px solid #cfe0ef;border-radius:8px;padding:26px 24px;display:flex;flex-direction:column;background:#fff;transition:background-color .4s cubic-bezier(.22,.61,.36,1),color .4s cubic-bezier(.22,.61,.36,1),border-color .4s ease,transform .45s cubic-bezier(.22,.61,.36,1)}
.dir-card:hover{background:#1d1a55;border-color:#1d1a55;color:#fff;transform:translateY(-6px)}
.dir-card:hover .role{color:#bddfec}
.dir-card:hover h3{color:#fff}
.dir-card:hover .dir-fields{border-top-color:rgba(255,255,255,.2)}
.dir-card:hover .dir-link{color:#fff}
.dir-card .ic-num{transition:transform .35s cubic-bezier(.22,.61,.36,1)}
.dir-card:hover .ic-num{transform:translateY(-2px) rotate(-3deg)}
.dir-card .ic-num{display:inline-block;font-family:'Anton',sans-serif;font-size:14px;padding:2px 9px;border-radius:4px;background:#e9511c;color:#fff;align-self:flex-start}
.dir-card .role{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:14px;letter-spacing:.05em;color:#055da8;margin-top:16px}
.dir-card h3{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:24px;line-height:1.05;color:#1d1a55;margin-top:4px}
.dir-card .dir-fields{margin-top:18px;padding-top:18px;border-top:1px solid #eef2f8;display:flex;flex-direction:column;gap:14px}
.dir-card .field{margin:0}
.dir-card .field+.field{border-top:none;padding-top:0}
.dir-card .dir-foot{margin-top:auto;padding-top:20px}
.dir-card .dir-link{display:inline-flex;align-items:center;gap:12px;min-width:0;overflow-wrap:anywhere;font-family:'Anton',sans-serif;text-transform:uppercase;font-size:14px;letter-spacing:.03em;color:#055da8;background-image:linear-gradient(#e9511c,#e9511c);background-size:0 100%;background-repeat:no-repeat;background-position:0 0;padding:3px 6px;margin:0 -6px;border-radius:3px;transition:background-size .4s cubic-bezier(.22,.61,.36,1),color .3s ease}
.dir-card .dir-link img{width:16px;transition:transform .3s ease}
.dir-link:hover{background-size:100% 100%;color:#fff}
.dir-link:hover img{transform:translateX(4px);filter:brightness(0) invert(1)}
.dir-card.span2{grid-column:1 / -1}

/* ===== FORM ===== */
.form-shell{border-radius:10px;padding:46px 44px;background:#055da8;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='2' stitchTiles='stitch' result='t'/%3E%3CfeColorMatrix in='t' type='matrix' values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='linear' slope='2.5'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.22'/%3E%3C/svg%3E");max-width:none}
.form-light .form-shell{background:#f3f6fb;background-image:none;border:1px solid #e1e8f3}
.contact-form .fg{margin-bottom:20px}
.contact-form .frow{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form label{display:block;font-family:'Anton',sans-serif;text-transform:uppercase;font-size:14px;letter-spacing:.04em;color:#bddfec;margin-bottom:9px}
.form-light .contact-form label{color:#055da8}
.form-shell input,.form-shell select,.form-shell textarea{width:100%;padding:13px 15px;font-size:16px;color:#1d1a55;background:#fff;border:1px solid #fff;border-radius:5px;outline:none;transition:box-shadow .15s ease}
.form-light .form-shell input,.form-light .form-shell select,.form-light .form-shell textarea{border-color:#cdd8ea}
.form-shell input:hover,.form-shell select:hover,.form-shell textarea:hover{box-shadow:0 0 0 2px rgba(255,255,255,.45)}
.form-light .form-shell input:hover,.form-light .form-shell select:hover,.form-light .form-shell textarea:hover{box-shadow:0 0 0 2px #bddfec}
.form-shell input:focus,.form-shell select:focus,.form-shell textarea:focus{box-shadow:0 0 0 3px rgba(233,81,28,.6)}
.form-shell textarea{resize:vertical;min-height:140px;line-height:1.55}
.form-shell input::placeholder,.form-shell textarea::placeholder{color:#8a90ad}
.select-wrap{position:relative}
.select-wrap select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:40px}
.select-wrap .arr{position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none;color:#1d1a55;font-size:14px}
.submit-row{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:26px;flex-wrap:wrap}
.btn-submit{display:flex;align-items:center;gap:12px;padding:6px 16px 6px 32px;border:none;border-radius:50px;background:#bddfec;color:#055da8;font-family:'Anton',sans-serif;font-size:16px;text-transform:uppercase;cursor:pointer;transition:filter .2s ease}
.btn-submit:hover{filter:brightness(1.06)}
.btn-submit .ico{width:30px;height:30px;border-radius:100%;background:#055da8;display:grid;place-items:center;transition:transform .3s ease}
.btn-submit:hover .ico{transform:translateX(4px)}
.btn-submit .ico img{width:14px;height:8px;filter:brightness(0) invert(1)}
.form-warn{display:none;font-size:14px;font-weight:600;color:#ffd9cf}
.form-light .form-warn{color:#bd1118}
.privacy{font-size:14px;line-height:1.7;margin-top:20px;color:#cfe0ef}
.form-light .privacy{color:#6a6f88}
.privacy a{text-decoration:underline}
.form-success{display:none;flex-direction:column;align-items:flex-start;gap:14px;color:#fff}
.form-light .form-success{color:#1d1a55}
.form-success .chk{width:54px;height:54px;border-radius:100%;background:#00af9c;display:grid;place-items:center;color:#fff;font-size:26px}
.form-success h3{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:30px}
.form-success p{font-size:16px;line-height:1.6;max-width:480px;opacity:.92}

/* ===== TRIPLE CTA ===== */
.cta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cta-card{border-radius:10px;padding:40px 30px 34px;min-height:300px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;border:1px solid transparent;transition:background-color .4s cubic-bezier(.22,.61,.36,1),color .4s cubic-bezier(.22,.61,.36,1),border-color .4s ease,transform .45s cubic-bezier(.22,.61,.36,1)}
.cta-card:hover{transform:translateY(-6px);background:#fff}
.cta-indigo:hover{color:#1d1a55;border-color:#1d1a55}
.cta-blue:hover{color:#055da8;border-color:#055da8}
.cta-teal:hover{color:#00af9c;border-color:#00af9c}
.cta-card:hover .cummon-button img{transform:translateX(4px)}
.cta-card .cta-num{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:14px;letter-spacing:.05em;margin-bottom:16px;opacity:.85}
.cta-card h3{font-family:'Anton',sans-serif;text-transform:uppercase;font-size:38px;line-height:.98;margin-bottom:16px}
.cta-card p{font-size:16px;line-height:1.6;margin-bottom:30px;opacity:.92;max-width:300px}
.cta-indigo{background:#1d1a55}
.cta-blue{background:#055da8}
.cta-teal{background:#00af9c}

/* ===== ACCENT VARIANTS ===== */
.acc-blue .section-tag,.acc-blue .cummon-button{background:#055da8;border-color:#055da8}
.acc-blue .cummon-button:hover{background:transparent;color:#055da8}
.acc-blue .cummon-button:hover img{content:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iNyIgdmlld0JveD0iMCAwIDEyIDciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik04LjU5MzQ5IDBMMTEuNTkzNSAzTDExLjk1MzUgMy4zNkwxMS41OTM1IDMuNzJMOC41OTM0OSA2LjcyTDcuODkwNDkgNkwxMC4wMzIgMy44NkgtOC41ODMwN2UtMDZWMi44NkgxMC4wMzE1TDcuODkwNDkgMC43Mkw4LjU5NDQ5IDBIOC41OTM0OVoiIGZpbGw9IiMwNTVEQTgiPjwvcGF0aD4KPC9zdmc+')}
.acc-blue .contact-hero h1{color:#1d1a55}
.acc-teal .section-tag,.acc-teal .cummon-button{background:#00af9c;border-color:#00af9c}
.acc-teal .cummon-button:hover{background:transparent;color:#00af9c}

/* ===== POLISH: reveal, focus, selection ===== */
.js-reveal{opacity:0;transition:opacity .6s cubic-bezier(.22,.61,.36,1)}
.js-reveal.in{opacity:1}
.js-rise{opacity:0;transform:translateY(34px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}
.js-rise.in{opacity:1;transform:none}
.contact-page a:focus-visible,.contact-page button:focus-visible,.get-help:focus-visible{outline:3px solid #e9511c;outline-offset:3px;border-radius:5px}
.nav-links>li:focus-visible,.nav-label:focus-visible{outline:3px solid #e9511c;outline-offset:-2px}
.acc-blue a:focus-visible,.acc-blue button:focus-visible{outline-color:#055da8}
.contact-page ::selection{background:#bddfec;color:#1d1a55}
.form-success:focus{outline:none}
@media (prefers-reduced-motion:reduce){.js-reveal,.js-reveal.in,.js-rise,.js-rise.in{opacity:1;transform:none;transition:none}}

/* ===== RESPONSIVE ===== */
@media (max-width:1279px){
  .section-tag{font-size:18px;line-height:27px}
  .ct-hero-head{margin-top:36.4px}
  .contact-hero .section-tag{top:-37px}
  .section-head .section-tag{top:-39px}
}
@media (max-width:1100px){
  .card-grid,.cta-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .card-dark{grid-column:1 / -1}
  .info-split{grid-template-columns:1fr}
  .dir-split{grid-template-columns:1fr;gap:36px}
  .dir-aside{position:static}
}
@media (max-width:767px){
  .section-tag{font-size:14px;line-height:21px}
  .ct-hero-head{margin-top:33.4px}
  .contact-hero .section-tag{top:-32px}
  .section-head .section-tag{top:-33px}
}
@media (max-width:760px){
  .card-grid,.cta-grid{grid-template-columns:minmax(0,1fr)}
  .card-dark{grid-column:auto}
  .crow{grid-template-columns:1fr;gap:12px;padding:24px 4px}
  .crow-action{justify-self:start}
  .dir-grid{grid-template-columns:minmax(0,1fr)}
  .dir-card.span2{grid-column:auto}
  .contact-form .frow{grid-template-columns:1fr}
  .section{padding:54px 18px}
  .contact-hero{padding:60px 18px 48px}
  .form-shell{padding:30px 22px}
}

/* ------------------------------------------------------------------ *
 * Intégration Contact Form 7 : neutralise l'habillage par défaut de
 * CF7 pour que le formulaire reste fidèle à la maquette. Les états
 * succès / erreur designés (.form-success, .form-warn) sont pilotés
 * par assets/js/contact.js sur les évènements wpcf7.
 * ------------------------------------------------------------------ */
.contact-page .wpcf7-form-control-wrap{display:block}
.contact-page .contact-form .wpcf7-not-valid-tip{margin-top:6px;font-size:13px;font-weight:600;color:#ffd9cf}
.contact-page .form-light .wpcf7-not-valid-tip{color:#bd1118}
.contact-page .wpcf7-response-output{display:none!important}
.contact-page .contact-form .wpcf7-spinner{margin:0 0 0 10px}
.contact-page.form-sent .contact-form{display:none}
.contact-page.form-sent .form-success{display:flex}
.contact-page .contact-form .form-warn.show{display:block}

/* ------------------------------------------------------------------ *
 * Offset du header. Le thème rend le <header> en position:fixed
 * (overlay des pages de contenu). Sur le gabarit Contact — comme sur
 * la 404 — on le remet dans le flux (sticky) pour que le contenu
 * s'affiche SOUS le header (sinon le badge « Contact » du hero est
 * masqué).
 * ------------------------------------------------------------------ */
body.page-template-template-contact header{position:sticky}

@media (min-width: 1700px) {
  .contact-page h1,
  .contact-page h2,
  .contact-page h3,
  .contact-page h4 {
    font-size: 1.1112vw;
  }
  .cummon-button {
    padding: 0.625vw 0.6945vw 0.625vw 0.9723vw;
    border-radius: 0.3472vw;
    border: 0.0694vw solid #e9511c;
    line-height: 1.389vw;
    gap: 1.2501vw;
  }
  .cummon-button img {
    width: 0.9723vw;
    height: 0.5556vw;
  }
  .cummon-button:hover img {
    transform: translateX(0.2083vw);
  }
  .section-tag {
    padding: 0.5556vw 1.1112vw;
    border-radius: 0.3472vw;
    font-size: 1.9446vw;
    left: 0.2083vw;
    top: -2.0835vw;
  }
  .contact-hero {
    padding: 6.3893vw 1.8057vw 4.7225vw;
  }
  .ct-hero-head {
    margin-top: 2.5974vw;
  }
  .contact-hero .section-tag {
    top: -3.6113vw;
  }
  .contact-hero h1 {
    font-size: clamp(3.6113vw,8vw,7.2227vw);
  }
  .contact-hero .lead {
    font-size: 1.5279vw;
    max-width: 43.0582vw;
    margin: 1.9446vw auto 0;
  }
  .section {
    padding: 5.1392vw 1.8057vw;
  }
  .section-head {
    margin-bottom: 3.7502vw;
    max-width: 52.781vw;
    padding-top: 1.7362vw;
  }
  .section-head .section-tag {
    top: -3.8197vw;
  }
  .section-head h2 {
    font-size: clamp(2.639vw,5vw,4.4447vw);
  }
  .section-head .sub {
    font-size: 1.1806vw;
    margin-top: 1.2501vw;
    max-width: 41.6692vw;
  }
  .card-grid {
    gap: 1.2501vw;
  }
  .info-card {
    border-radius: 0.5556vw;
    padding: 2.0835vw 1.8057vw 2.2224vw;
  }
  .info-card:hover {
    transform: translateY(-0.5556vw);
  }
  .info-card:hover .ic-num {
    transform: translateY(-0.2083vw) rotate(-4deg) scale(1.06);
  }
  .info-card .ic-head {
    gap: 0.6945vw;
    font-size: 0.9723vw;
    padding-bottom: 0.9723vw;
    margin-bottom: 1.2501vw;
    border-bottom: 0.0694vw solid currentColor;
  }
  .info-card .ic-num {
    font-size: 0.9723vw;
    padding: 0.1389vw 0.625vw;
    border-radius: 0.2778vw;
  }
  .info-card h3 {
    font-size: 1.6668vw;
    margin-bottom: 0.9723vw;
  }
  .info-card .role {
    font-size: 0.9723vw;
    margin: -0.5556vw 0 1.2501vw;
  }
  .info-card .desc {
    font-size: 0.9723vw;
    margin-bottom: 1.389vw;
  }
  .field {
    margin-bottom: 0.9723vw;
  }
  .field+.field {
    padding-top: 0.9723vw;
    border-top: 0.0694vw dashed rgba(0,0,0,.18);
  }
  .field .fk {
    font-size: 0.9723vw;
    margin-bottom: 0.3472vw;
  }
  .field .fv {
    font-size: 1.1112vw;
  }
  .field .fv a {
    padding: 0.0694vw 0.2778vw;
    margin: 0 -0.2778vw;
    border-radius: 0.2083vw;
  }
  .field .fv .sm {
    font-size: 0.9723vw;
    margin-top: 0.2083vw;
  }
  .hours-row {
    gap: 0.8334vw;
    font-size: 0.9723vw;
    padding: 0.4861vw 0;
  }
  .hours-row+.hours-row {
    border-top: 0.0694vw dashed rgba(29,26,85,.25);
  }
  .hours-note {
    font-size: 0.9723vw;
    margin-top: 1.1112vw;
  }
  .card-green {
    border: 0.0694vw solid #00af9c;
  }
  .card-plain {
    border: 0.0694vw solid #e1e8f3;
  }
  .info-split {
    gap: 1.2501vw;
  }
  .quick-contacts {
    padding-top: 2.0835vw;
  }
  .qc-block+.qc-block {
    margin-top: 1.6668vw;
    padding-top: 1.6668vw;
    border-top: 0.0694vw solid rgba(255,255,255,.2);
  }
  .dir-split {
    grid-template-columns: minmax(19.4456vw,0.82fr) minmax(0,1.6fr);
    gap: 4.1669vw;
  }
  .dir-aside {
    top: 6.6671vw;
  }
  .dir-aside .cummon-button {
    margin-top: 2.0835vw;
  }
  .dir-grid {
    gap: 1.2501vw;
  }
  .dir-card {
    border: 0.0694vw solid #cfe0ef;
    border-radius: 0.5556vw;
    padding: 1.8057vw 1.6668vw;
  }
  .dir-card:hover {
    transform: translateY(-0.4167vw);
  }
  .dir-card:hover .ic-num {
    transform: translateY(-0.1389vw) rotate(-3deg);
  }
  .dir-card .ic-num {
    font-size: 0.9723vw;
    padding: 0.1389vw 0.625vw;
    border-radius: 0.2778vw;
  }
  .dir-card .role {
    font-size: 0.9723vw;
    margin-top: 1.1112vw;
  }
  .dir-card h3 {
    font-size: 1.6668vw;
    margin-top: 0.2778vw;
  }
  .dir-card .dir-fields {
    margin-top: 1.2501vw;
    padding-top: 1.2501vw;
    border-top: 0.0694vw solid #eef2f8;
    gap: 0.9723vw;
  }
  .dir-card .dir-foot {
    padding-top: 1.389vw;
  }
  .dir-card .dir-link {
    gap: 0.8334vw;
    font-size: 0.9723vw;
    padding: 0.2083vw 0.4167vw;
    margin: 0 -0.4167vw;
    border-radius: 0.2083vw;
  }
  .dir-card .dir-link img {
    width: 1.1112vw;
  }
  .dir-link:hover img {
    transform: translateX(0.2778vw);
  }
  .form-shell {
    border-radius: 0.6945vw;
    padding: 3.1946vw 3.0557vw;
  }
  .form-light .form-shell {
    border: 0.0694vw solid #e1e8f3;
  }
  .contact-form .fg {
    margin-bottom: 1.389vw;
  }
  .contact-form .frow {
    gap: 1.2501vw;
  }
  .contact-form label {
    font-size: 0.9723vw;
    margin-bottom: 0.625vw;
  }
  .form-shell input,
  .form-shell select,
  .form-shell textarea {
    padding: 0.9028vw 1.0417vw;
    font-size: 1.1112vw;
    border: 0.0694vw solid #fff;
    border-radius: 0.3472vw;
  }
  .form-shell input:hover,
  .form-shell select:hover,
  .form-shell textarea:hover {
    box-shadow: 0 0 0 0.1389vw rgba(255,255,255,.45);
  }
  .form-light .form-shell input:hover,
  .form-light .form-shell select:hover,
  .form-light .form-shell textarea:hover {
    box-shadow: 0 0 0 0.1389vw #bddfec;
  }
  .form-shell input:focus,
  .form-shell select:focus,
  .form-shell textarea:focus {
    box-shadow: 0 0 0 0.2083vw rgba(233,81,28,.6);
  }
  .form-shell textarea {
    min-height: 9.7228vw;
  }
  .select-wrap select {
    padding-right: 2.7779vw;
  }
  .select-wrap .arr {
    right: 1.1112vw;
    font-size: 0.9723vw;
  }
  .submit-row {
    gap: 1.2501vw;
    margin-top: 1.8057vw;
  }
  .btn-submit {
    gap: 0.8334vw;
    padding: 0.4167vw 1.1112vw 0.4167vw 2.2224vw;
    border-radius: 3.4724vw;
    font-size: 1.1112vw;
  }
  .btn-submit .ico {
    width: 2.0835vw;
    height: 2.0835vw;
  }
  .btn-submit:hover .ico {
    transform: translateX(0.2778vw);
  }
  .btn-submit .ico img {
    width: 0.9723vw;
    height: 0.5556vw;
  }
  .form-warn {
    font-size: 0.9723vw;
  }
  .privacy {
    font-size: 0.9723vw;
    margin-top: 1.389vw;
  }
  .form-success {
    gap: 0.9723vw;
  }
  .form-success .chk {
    width: 3.7502vw;
    height: 3.7502vw;
    font-size: 1.8057vw;
  }
  .form-success h3 {
    font-size: 2.0835vw;
  }
  .form-success p {
    font-size: 1.1112vw;
    max-width: 33.3353vw;
  }
  .cta-grid {
    gap: 1.2501vw;
  }
  .cta-card {
    border-radius: 0.6945vw;
    padding: 2.7779vw 2.0835vw 2.3613vw;
    min-height: 20.8346vw;
    border: 0.0694vw solid transparent;
  }
  .cta-card:hover {
    transform: translateY(-0.4167vw);
  }
  .cta-card:hover .cummon-button img {
    transform: translateX(0.2778vw);
  }
  .cta-card .cta-num {
    font-size: 0.9723vw;
    margin-bottom: 1.1112vw;
  }
  .cta-card h3 {
    font-size: 2.639vw;
    margin-bottom: 1.1112vw;
  }
  .cta-card p {
    font-size: 1.1112vw;
    margin-bottom: 2.0835vw;
    max-width: 20.8346vw;
  }
  .js-rise {
    transform: translateY(2.3613vw);
  }
  .contact-page a:focus-visible,
  .contact-page button:focus-visible,
  .get-help:focus-visible {
    outline: 0.2083vw solid #e9511c;
    outline-offset: 0.2083vw;
    border-radius: 0.3472vw;
  }
  .nav-links>li:focus-visible,
  .nav-label:focus-visible {
    outline: 0.2083vw solid #e9511c;
    outline-offset: -0.1389vw;
  }
  .contact-page .contact-form .wpcf7-not-valid-tip {
    margin-top: 0.4167vw;
    font-size: 0.9028vw;
  }
  .contact-page .contact-form .wpcf7-spinner {
    margin: 0 0 0 0.6945vw;
  }
}
