/* SAM Contact — Frontend styles (RTL-first, responsive) */

.sam-cc{
    --sam-cc-accent:#805b8c;
    --sam-cc-accent-soft:rgba(128,91,140,.10);
    --sam-cc-ink:#0f172a;
    --sam-cc-muted:#64748b;
    --sam-cc-bg:#f8fafc;
    --sam-cc-card:#ffffff;
    --sam-cc-line:#e2e8f0;
    --sam-cc-hero:#805b8c;
    --sam-cc-hero-soft:rgba(128,91,140,.10);
    color:var(--sam-cc-ink);
    background:transparent;
    font-family:inherit;
}
.sam-cc *{box-sizing:border-box}

/* ===== Hero (minimal page title) ===== */
.sam-cc-hero{
    position:relative;
    padding:40px 20px 8px;
    text-align:center;
    background:transparent;
    color:var(--sam-cc-ink);
}
.sam-cc-hero-inner{position:relative;max-width:760px;margin:0 auto}
.sam-cc-hero h1{
    margin:0;
    font-size:clamp(24px,3.6vw,34px);
    line-height:1.25;
    font-weight:700;
    color:var(--sam-cc-hero);
}
.sam-cc-hero h1::after{
    content:"";display:block;width:46px;height:3px;border-radius:3px;
    background:var(--sam-cc-hero);margin:14px auto 0;
}
.sam-cc-hero p{margin:12px 0 0;font-size:clamp(14px,2vw,17px);color:var(--sam-cc-muted)}

/* with background image → contained banner */
.sam-cc-hero.has-bg{
    max-width:1140px;margin:20px auto 0;padding:64px 20px;border-radius:18px;
    background-size:cover;background-position:center;color:#fff;
}
.sam-cc-hero.has-bg::before{
    content:"";position:absolute;inset:0;border-radius:18px;
    background:rgba(128,91,140,.82);
}
.sam-cc-hero.has-bg h1,.sam-cc-hero.has-bg p{color:#fff}
.sam-cc-hero.has-bg h1::after{background:#fff}
.sam-cc-hero.has-bg p{opacity:.92}

/* ===== Layout ===== */
.sam-cc-wrap{max-width:1140px;margin:0 auto;padding:48px 20px 72px}
.sam-cc-grid{
    display:grid;
    grid-template-columns:1fr 1.4fr;
    gap:28px;
    align-items:start;
}
.sam-cc h2{font-size:24px;margin:0 0 20px;color:var(--sam-cc-ink)}

/* ===== Info card ===== */
.sam-cc-info,.sam-cc-form{
    background:var(--sam-cc-card);
    border:1px solid var(--sam-cc-line);
    border-radius:18px;
    padding:28px;
    box-shadow:0 10px 30px -18px rgba(15,23,42,.25);
}
.sam-cc-info-list{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.sam-cc-info-list li{display:flex;gap:14px;align-items:flex-start}
.sam-cc-ic{
    flex:0 0 46px;width:46px;height:46px;border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    background:var(--sam-cc-hero-soft);color:var(--sam-cc-hero);
}
.sam-cc-ic.sam-cc-wa svg{width:22px;height:22px;fill: #825c8d;}
.sam-cc-info-list .sam-cc-lbl{display:block;font-size:13px;color:var(--sam-cc-muted);margin-bottom:2px}
.sam-cc-info-list a,.sam-cc-info-list span+span{font-size:16px;font-weight:600;color:var(--sam-cc-ink);text-decoration:none;word-break:break-word}
.sam-cc-info-list a:hover{color:var(--sam-cc-hero)}

/* ===== Social ===== */
.sam-cc-social{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;padding-top:22px;border-top:1px solid var(--sam-cc-line)}
.sam-cc-soc{
    width:42px;height:42px;border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    transition:transform .15s ease,filter .15s ease;
}
.sam-cc-soc:hover{transform:translateY(-3px);filter:brightness(1.08)}
.sam-cc-soc svg{width:22px;height:22px}

/* ===== Form ===== */
.sam-cc-form .wpcf7{margin-top:4px}
.sam-cc-form input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.sam-cc-form textarea,
.sam-cc-form select{
    width:100%;padding:13px 14px;border:1px solid var(--sam-cc-line);
    border-radius:10px;font-size:15px;background:#fff;margin-bottom:4px;
    transition:border-color .15s ease,box-shadow .15s ease;
}
.sam-cc-form input:focus,.sam-cc-form textarea:focus,.sam-cc-form select:focus{
    outline:none;border-color:var(--sam-cc-hero);
    box-shadow:0 0 0 3px var(--sam-cc-hero-soft);
}
.sam-cc-form textarea{min-height:130px;resize:vertical}
.sam-cc-form .wpcf7-submit,
.sam-cc-form input[type=submit]{
    width:auto;background:var(--sam-cc-hero);color:#fff;border:0;
    padding:13px 32px;border-radius:10px;font-size:16px;font-weight:700;
    cursor:pointer;transition:filter .15s ease,transform .15s ease;
}
.sam-cc-form .wpcf7-submit:hover{filter:brightness(1.08);transform:translateY(-1px)}
.sam-cc-noform{color:var(--sam-cc-muted);background:var(--sam-cc-bg);padding:18px;border-radius:10px;border:1px dashed var(--sam-cc-line)}

/* ===== Map + branches ===== */
.sam-cc-map-sec{margin-top:48px}
.sam-cc-map{
    width:100%;height:420px;border-radius:18px;overflow:hidden;
    border:1px solid var(--sam-cc-line);box-shadow:0 10px 30px -18px rgba(15,23,42,.25);
    z-index:0;
}
.sam-cc-branches{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
    gap:18px;margin-top:24px;
}
.sam-cc-branch-card{
    background:var(--sam-cc-card);border:1px solid var(--sam-cc-line);
    border-radius:16px;padding:22px;
    border-top:4px solid var(--sam-cc-hero);
    transition:transform .15s ease,box-shadow .15s ease;
}
.sam-cc-branch-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px -18px rgba(15,23,42,.3)}
.sam-cc-branch-card h3{margin:0 0 8px;font-size:18px}
.sam-cc-b-addr{margin:0 0 6px;color:var(--sam-cc-muted);font-size:14px;line-height:1.6}
.sam-cc-b-hours{margin:0 0 14px;color:var(--sam-cc-muted);font-size:13px}
.sam-cc-b-actions{display:flex;flex-wrap:wrap;gap:8px}
.sam-cc-btn{
    display:inline-block;padding:9px 16px;border-radius:9px;font-size:14px;font-weight:600;
    text-decoration:none;background:var(--sam-cc-hero);color:#fff;transition:filter .15s ease;
}
.sam-cc-btn:hover{filter:brightness(1.08);color:#fff}
.sam-cc-btn.ghost{background:transparent;color:var(--sam-cc-hero);border:1px solid var(--sam-cc-hero)}

/* Leaflet popup */
.sam-cc-pop{font-family:inherit;min-width:180px}
.sam-cc-pop strong{display:block;font-size:15px;margin-bottom:4px;color:#0f172a}
.sam-cc-pop span{display:block;font-size:13px;color:#64748b;margin-bottom:2px}
.sam-cc-pop a{display:inline-block;margin-top:8px;color:var(--sam-cc-hero);font-weight:600;text-decoration:none}

/* ===== Responsive ===== */
@media (max-width:860px){
    .sam-cc-grid{grid-template-columns:1fr}
    .sam-cc-hero{padding:30px 16px 4px}
    .sam-cc-hero.has-bg{padding:48px 18px;border-radius:14px}
    .sam-cc-wrap{padding:32px 16px 56px}
    .sam-cc-map{height:340px}
}
