/**
 * Contact page (page-contact.php) + [sc_contact_form] shortcode.
 * Uses the theme's shared design tokens from common.css.
 *
 * Layout: 2-col top (Contact Information card | Send Us a Message form),
 * a row of category cards, and a 2-col FAQ accordion.
 */

.sc-contact{font-family:var(--font-jost,'Jost',sans-serif);color:var(--ink);}
/* .section has no padding on custom page templates (home.css isn't loaded). */
.scc-body{padding:38px 0 52px;}

/* Shared card + section heading -------------------------------------- */
.scc-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 22px rgba(20,40,30,.05);}
.scc-h{font-family:var(--font-jost,'Jost',sans-serif);font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin:0 0 22px;}

/* ===================================================================
 * TOP: Contact Information + Form
 * =================================================================== */
.scc-top{display:grid;grid-template-columns:1fr 1.42fr;gap:26px;align-items:start;}

/* ---- Contact Information card ---- */
.sc-cinfo{padding:30px 30px 16px;}
.sc-cinfo-list{list-style:none;margin:0;padding:0;}
.sc-cinfo-row{display:flex;align-items:flex-start;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);}
.sc-cinfo-row:last-child{border-bottom:none;}
.sc-cinfo-ico{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:13px;background:var(--mint,#eaf3ee);color:var(--green);flex-shrink:0;}
.sc-cinfo-c{display:flex;flex-direction:column;gap:3px;min-width:0;}
.sc-cinfo-k{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.sc-cinfo-v{font-size:16px;color:var(--ink);line-height:1.45;}
.sc-cinfo-v--link{color:var(--green);font-weight:700;text-decoration:none;word-break:break-word;}
.sc-cinfo-v--link:hover{text-decoration:underline;}
.sc-cinfo-v--accent{color:var(--green);font-weight:700;}
.sc-cinfo-v--note{font-size:13.5px;color:var(--muted);line-height:1.5;}

/* ---- Send Us a Message form card ---- */
.sc-contact-form{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 22px rgba(20,40,30,.05);padding:30px 30px 32px;font-family:var(--font-jost,'Jost',sans-serif);color:var(--ink);}
.scf-title{font-family:var(--font-jost,'Jost',sans-serif);font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin:0 0 10px;}
.scf-intro{font-size:15px;color:var(--muted);line-height:1.55;margin:0 0 22px;}
.scf-intro a{color:var(--green);font-weight:700;text-decoration:none;white-space:nowrap;}
.scf-intro a:hover{text-decoration:underline;}

/* Errors (always shown at the top of the form) */
.scf-errors{background:#fdecec;border:1px solid #f6c9c9;border-radius:12px;padding:14px 16px 14px 18px;margin:0 0 22px;}
.scf-errors p{margin:0;padding:3px 0 3px 22px;position:relative;font-size:14px;color:#b3261e;line-height:1.45;}
.scf-errors p::before{content:"!";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:50%;background:#d62a28;color:#fff;font-size:11px;font-weight:800;line-height:16px;text-align:center;}

/* Thank-you (success) */
.scf-thanks{display:flex;align-items:flex-start;gap:14px;background:#eef7f2;border:1px solid #c7e6d6;border-radius:13px;padding:20px 22px;}
.scf-thanks-ico{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;flex-shrink:0;}
.scf-thanks p{margin:0;font-size:15.5px;line-height:1.55;color:var(--ink);align-self:center;}

/* Fields */
.scf-field{margin-bottom:18px;}
.scf-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.scf-field label{display:block;font-size:14px;font-weight:600;color:var(--ink);margin:0 0 8px;}
.scf-field label span{color:var(--green);}
.scf-field label em{color:var(--muted);font-style:normal;font-weight:500;}
.scf-field input,
.scf-field select,
.scf-field textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:0 15px;font-family:inherit;font-size:15px;color:var(--ink);background:#fff;transition:border-color .15s,box-shadow .15s;}
.scf-field input,
.scf-field select{height:52px;}
.scf-field textarea{padding:13px 15px;min-height:104px;resize:vertical;line-height:1.55;}
.scf-field input::placeholder,
.scf-field textarea::placeholder{color:#9aa4a0;}
.scf-field input:focus,
.scf-field select:focus,
.scf-field textarea:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px rgba(29,160,116,.13);}
.scf-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;padding-right:42px;cursor:pointer;}

/* Consent */
.scf-consent{display:flex;align-items:flex-start;gap:11px;margin:4px 0 22px;cursor:pointer;}
.scf-consent input{margin-top:3px;width:17px;height:17px;flex-shrink:0;accent-color:var(--green);cursor:pointer;}
.scf-consent span{font-size:13px;color:var(--muted);line-height:1.55;}

/* Cloudflare Turnstile */
.scf-turnstile{margin:0 0 20px;}

/* Honeypot — hidden from humans, visible to bots */
.scf-hp{position:absolute !important;left:-9999px !important;top:-9999px !important;width:1px;height:1px;overflow:hidden;}

/* Send button */
.scf-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:54px;border:0;border-radius:12px;background:var(--green);color:#fff;font-family:var(--font-jost,'Jost',sans-serif);font-weight:800;font-size:16px;cursor:pointer;box-shadow:0 8px 20px rgba(29,160,116,.26);transition:background .2s,transform .15s;}
.scf-btn svg{flex-shrink:0;}
.scf-btn:hover{background:var(--green-d,#178460);transform:translateY(-1px);}
.scf-btn:active{transform:translateY(0);}

/* ===================================================================
 * Category cards
 * =================================================================== */
.scc-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:26px;}
.scc-cat{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 22px rgba(20,40,30,.05);padding:30px 22px 26px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;}
.scc-cat:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(20,40,30,.10);border-color:#d4e0d9;}
.scc-cat-ico{display:inline-flex;align-items:center;justify-content:center;width:66px;height:66px;border-radius:50%;background:var(--mint,#eaf3ee);color:var(--green);margin-bottom:16px;}
.scc-cat-t{font-family:var(--font-jost,'Jost',sans-serif);font-weight:800;font-size:18px;color:var(--ink);margin:0 0 8px;}
.scc-cat-d{font-size:14px;color:var(--muted);line-height:1.5;margin:0 0 16px;}
.scc-cat-more{margin-top:auto;display:inline-flex;align-items:center;gap:6px;color:var(--green);font-weight:700;font-size:14px;}
.scc-cat:hover .scc-cat-more{gap:9px;}
.scc-cat-more svg{transition:transform .18s;}

/* ===================================================================
 * FAQ accordion
 * =================================================================== */
.scc-faq{margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 22px rgba(20,40,30,.05);padding:30px 30px 32px;}
.scc-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 26px;align-items:start;}
.scc-faq-col{display:flex;flex-direction:column;gap:14px;min-width:0;}
.scc-faq-item{border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden;}
.scc-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;cursor:pointer;padding:16px 18px;font-size:15px;font-weight:600;color:var(--ink);transition:background .15s;}
.scc-faq-item summary::-webkit-details-marker{display:none;}
.scc-faq-item summary:hover{background:#f6f9f7;}
.scc-faq-chev{flex-shrink:0;color:var(--muted);transition:transform .2s;}
.scc-faq-item[open] summary{color:var(--green);}
.scc-faq-item[open] .scc-faq-chev{transform:rotate(180deg);color:var(--green);}
.scc-faq-a{padding:0 18px 17px;font-size:14px;color:var(--muted);line-height:1.6;}
.scc-faq-a a{color:var(--green);font-weight:600;text-decoration:none;}
.scc-faq-a a:hover{text-decoration:underline;}

/* ===================================================================
 * Responsive
 * =================================================================== */
@media (max-width:980px){
	.scc-top{grid-template-columns:1fr;}
	.scc-cats{grid-template-columns:repeat(2,1fr);}
	.scc-faq-grid{grid-template-columns:1fr;}
}
@media (max-width:560px){
	.scc-body{padding:26px 0 40px;}
	.sc-cinfo,.sc-contact-form,.scc-faq{padding-left:20px;padding-right:20px;}
	.scc-cats{grid-template-columns:1fr;}
	.scf-row{grid-template-columns:1fr;gap:0;}
}

/* Respect reduced motion */
@media (prefers-reduced-motion:reduce){
	.scc-cat,.scf-btn,.scc-cat-more svg,.scc-faq-chev{transition:none;}
}

/* ===================================================================
 * Conditional fields (dependent on Inquiry Type) + product picker
 * =================================================================== */
.scf-cond[hidden]{display:none;}
.scf-cond{animation:scfFade .18s ease;}
@keyframes scfFade{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:none;}}
.scf-field--full{width:100%;}

/* selectWoo / select2 sized to match the native fields */
.sc-contact-form .select2-container{width:100% !important;}
.sc-contact-form .select2-container--default .select2-selection--single{height:52px;border:1px solid var(--line);border-radius:11px;display:flex;align-items:center;padding:0 15px;background:#fff;}
.sc-contact-form .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:52px;padding:0;color:var(--ink);font-size:15px;}
.sc-contact-form .select2-container--default .select2-selection--single .select2-selection__placeholder{color:#9aa4a0;}
.sc-contact-form .select2-container--default .select2-selection--single .select2-selection__arrow{height:50px;right:12px;}
.sc-contact-form .select2-container--default.select2-container--focus .select2-selection--single,
.sc-contact-form .select2-container--default.select2-container--open .select2-selection--single{border-color:var(--green);box-shadow:0 0 0 3px rgba(29,160,116,.13);}
.select2-dropdown{border-color:var(--line);border-radius:11px;overflow:hidden;}
.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid var(--line);border-radius:8px;padding:8px 10px;}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--green);}
