/* Contact page aligned with the current Smartstuff editorial design system. */

body.smartstuff-contact-page .page-header { display:none; }
body.smartstuff-contact-page .site-content { margin:0; padding:0; background:#fff; }
body.smartstuff-contact-page .site-content>.woostify-container { width:100%; max-width:none; padding:0; }

.ss-contact-main { --navy:#09111d; --navy-2:#111d2b; --orange:#ff8218; --ink:#17202c; --muted:#64717f; --line:#dfe5ea; --mist:#f2f6f9; color:var(--ink); background:#fff; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:16px; line-height:1.65; }
.ss-contact-main *,.ss-contact-main *::before,.ss-contact-main *::after { box-sizing:border-box; }
.ss-contact-main :is(h1,h2,h3,p) { margin-top:0; }
.ss-contact-main :is(h1,h2,h3) { color:inherit; font-family:inherit; letter-spacing:-.04em; }
.ss-contact-wrap { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.ss-contact-eyebrow { margin-bottom:18px; color:var(--orange); font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }

.ss-contact-section { padding:112px 0 120px; background:var(--mist); }
.ss-contact-layout { display:grid; grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr); align-items:start; gap:90px; }
.ss-contact-details { padding-top:30px; }
.ss-contact-details__intro { max-width:510px; margin-bottom:30px; color:var(--ink); font-size:19px; font-weight:650; line-height:1.55; }
.ss-contact-routes { overflow:hidden; border-top:1px solid var(--line); }
.ss-contact-routes>a { display:grid; grid-template-columns:38px 1fr; align-items:center; gap:12px; padding:18px 0; border-bottom:1px solid var(--line); color:var(--ink); }
.ss-contact-routes>a:hover,.ss-contact-routes>a:focus-visible { color:var(--ink); }
.ss-contact-route__icon { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; color:var(--navy); background:#fff; font-weight:800; transition:transform .18s ease,background .18s ease; }
.ss-contact-routes>a:hover .ss-contact-route__icon,.ss-contact-routes>a:focus-visible .ss-contact-route__icon { color:#111923; background:var(--orange); transform:translate(2px,-2px); }
.ss-contact-routes small,.ss-contact-routes strong { display:block; }
.ss-contact-routes small { margin-bottom:1px; color:#7a8793; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.ss-contact-routes strong { overflow-wrap:anywhere; font-size:16px; }
.ss-contact-address { display:flex; flex-direction:column; margin:34px 0 0; color:#425260; font-style:normal; line-height:1.7; }
.ss-contact-address span:first-child { margin-bottom:4px; color:var(--ink); font-weight:750; }
.ss-contact-registration { margin:22px 0 0; color:#84909b; font-size:12px; }
.ss-contact-registration span { margin:0 7px; color:var(--orange); }

.ss-contact-form-card { padding:48px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 24px 60px rgba(22,42,61,.09); }
.ss-contact-form-card__intro { max-width:570px; margin-bottom:27px; color:var(--muted); }
.ss-contact-form-card__intro strong { color:var(--ink); }
.ss-contact-form-card .wpcf7-form .row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:0; }
.ss-contact-form-card .wpcf7-form .row>div { width:auto; max-width:none; padding:0; }
.ss-contact-form-card .wpcf7-form p { margin-bottom:14px; }
.ss-contact-form-card .wpcf7-form :is(input[type="text"],input[type="email"],textarea) { width:100%; min-height:58px; margin:0; padding:16px 18px; border:1px solid #d7dfe6; border-radius:8px; color:var(--ink); background:#f8fafb; font:inherit; font-size:15px; box-shadow:none; transition:border-color .18s ease,box-shadow .18s ease,background .18s ease; }
.ss-contact-form-card .wpcf7-form textarea { min-height:205px; resize:vertical; }
.ss-contact-form-card .wpcf7-form :is(input[type="text"],input[type="email"],textarea):focus { outline:0; border-color:#ec842d; background:#fff; box-shadow:0 0 0 3px rgba(255,130,24,.14); }
.ss-contact-form-card .wpcf7-form ::placeholder { color:#85919d; opacity:1; }
.ss-contact-form-card .wpcf7-submit { min-height:48px; width:auto; display:inline-flex; margin-top:18px; padding:0 20px; border:1px solid var(--orange); border-radius:8px; color:#121b25; background:var(--orange); font:inherit; font-size:13px; font-weight:800; text-transform:none; transition:background .18s ease,transform .18s ease; }
.ss-contact-form-card .wpcf7-submit:hover,.ss-contact-form-card .wpcf7-submit:focus-visible { color:#121b25; background:#ff963d; transform:translateY(-1px); }
.ss-contact-form-card .wpcf7-submit::after { content:" →"; }
.ss-contact-form-card .wpcf7-spinner { vertical-align:middle; }
.ss-contact-form-card .wpcf7-response-output { margin:20px 0 0; border-width:1px; border-radius:8px; font-size:14px; }
.ss-contact-form-card .wpcf7-not-valid-tip { margin-top:5px; font-size:12px; }

@media (max-width:980px) {
  .ss-contact-layout { grid-template-columns:1fr; gap:42px; }
  .ss-contact-layout { gap:58px; }
  .ss-contact-details { padding-top:0; }
}

@media (max-width:700px) {
  .ss-contact-wrap { width:min(100% - 32px,1180px); }
  .ss-contact-section { padding:72px 0; }
  .ss-contact-form-card { padding:30px 22px; border-radius:14px; }
  .ss-contact-form-card .wpcf7-form .row { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion:reduce) { .ss-contact-main *,.ss-contact-main *::before,.ss-contact-main *::after { transition:none!important; } }
