/*
Theme Name: Mustafa Shatat Law Firm — Final
Theme URI: https://mustafash.com
Author: Mustafa Shatat Law Firm
Author URI: https://mustafash.com
Description: Final custom block theme for Mustafa Shatat Law Firm, focused on Palestinian legal services and cross-border representation for clients living abroad.
Version: 2.2.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: mustafa-shatat-law-final
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: full-site-editing, block-patterns, custom-colors, custom-logo, editor-style, featured-images, translation-ready
*/

:root{
  --msl-ink:#1d1d1f;
  --msl-muted:#66615a;
  --msl-paper:#f7f4ee;
  --msl-soft:#f0ece4;
  --msl-white:#fff;
  --msl-gold:#9b7a45;
  --msl-border:#ded8ce;
  --msl-max:1180px;
}
html{scroll-behavior:smooth}
body{margin:0;background:var(--msl-paper);color:var(--msl-ink)}
a{color:inherit;text-underline-offset:.18em}
a:hover{color:var(--msl-gold)}
.msl-kicker{letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:700;color:var(--msl-gold)}
.msl-card{background:var(--msl-white);border:1px solid var(--msl-border);border-radius:18px;padding:clamp(22px,3vw,34px);height:100%;box-sizing:border-box}
.msl-card-link{font-weight:650}
.msl-page-lede{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.6;color:var(--msl-muted);max-width:820px}
.msl-note{border-left:3px solid var(--msl-gold);padding:.2rem 0 .2rem 1.1rem;color:var(--msl-muted)}
.msl-soft-section{background:var(--msl-soft)}
.msl-hero-title{max-width:13.5ch;font-size:clamp(3.05rem,5.25vw,4.85rem)!important}
.msl-hero-copy{max-width:780px}
.msl-service-grid .wp-block-column,.msl-additional-services .wp-block-column,.msl-doc-grid .wp-block-column{display:flex}
.msl-service-grid .msl-card,.msl-additional-services .msl-card,.msl-doc-grid .msl-card{width:100%;display:flex;flex-direction:column}
.msl-service-grid .msl-card>p:last-child,.msl-additional-services .msl-card>p:last-child{margin-top:auto}
.msl-portrait-placeholder{
  min-height:400px;border-radius:22px;border:1px solid var(--msl-border);
  background:linear-gradient(180deg,rgba(29,29,31,.02),rgba(29,29,31,.08)),var(--msl-paper);
  display:flex;align-items:flex-end;padding:1.5rem;box-sizing:border-box
}
.msl-header-nav{flex-shrink:0}
.msl-header-nav .wp-block-navigation__container{gap:.95rem;flex-wrap:nowrap}
.msl-header-nav .wp-block-navigation-item__content{white-space:nowrap}
.msl-header-nav .wp-block-navigation__submenu-container{
  min-width:235px;border:1px solid var(--msl-border);border-radius:12px;padding:.5rem;
  box-shadow:0 14px 34px rgba(29,29,31,.10)
}
.msl-header-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:.55rem .7rem}
.msl-footer-links p{margin:.35rem 0}
.msl-footer-links a{color:#fff;text-decoration:none}
.msl-footer-links a:hover{text-decoration:underline;color:#fff}
.msl-process-step{border-top:1px solid var(--msl-border);padding-top:1.15rem}
.msl-checklist li{margin-bottom:.45rem}
.msl-contact-form{display:grid;gap:1rem}
.msl-contact-form label{display:block;font-weight:650;margin-bottom:.35rem}
.msl-contact-form input,.msl-contact-form select,.msl-contact-form textarea{
  width:100%;box-sizing:border-box;border:1px solid var(--msl-border);border-radius:12px;
  background:#fff;color:var(--msl-ink);padding:.85rem 1rem;font:inherit
}
.msl-contact-form textarea{min-height:150px;resize:vertical}
.msl-contact-form button{
  appearance:none;border:0;border-radius:999px;background:var(--msl-ink);color:#fff;
  padding:.9rem 1.35rem;font:inherit;font-weight:700;cursor:pointer
}
.msl-contact-form button:hover{background:#333}
.msl-form-status{padding:1rem 1.1rem;border-radius:12px;margin-bottom:1rem}
.msl-form-success{background:#eef6ef;border:1px solid #bdd8c0}
.msl-form-error{background:#fbefef;border:1px solid #e3bdbd}
.msl-honeypot{position:absolute!important;left:-9999px!important;height:1px;width:1px;overflow:hidden}
.msl-guides-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:1.8rem}
.msl-guide-card{background:#fff;border:1px solid var(--msl-border);border-radius:18px;padding:1.6rem}
.msl-guide-card h3{font-family:Georgia,'Times New Roman',serif;font-size:1.35rem;line-height:1.25}
.msl-guide-card h3 a{text-decoration:none}
.msl-small{font-size:.85rem;color:var(--msl-muted)}
.msl-empty-guides{color:var(--msl-muted)}
.msl-legal-box{background:#fff;border:1px solid var(--msl-border);border-radius:18px;padding:clamp(22px,3vw,34px)}
.msl-table-wrap{overflow-x:auto}
.msl-table-wrap table{width:100%;border-collapse:collapse}
.msl-table-wrap th,.msl-table-wrap td{padding:.85rem;border-bottom:1px solid var(--msl-border);text-align:left;vertical-align:top}
@media(max-width:1100px){
  .msl-header-nav .wp-block-navigation__container{gap:.72rem}
  .msl-header-nav{font-size:.84rem}
}
@media(max-width:781px){
  .msl-mobile-hide{display:none!important}
  .msl-hero-title{font-size:clamp(2.35rem,11.2vw,3.6rem)!important;line-height:1.04!important;max-width:11.5ch}
  .msl-hero-copy{font-size:1.16rem!important;line-height:1.55}
  .msl-mobile-buttons .wp-block-button,.msl-mobile-buttons .wp-block-button__link{width:100%}
  .msl-mobile-buttons .wp-block-button__link{box-sizing:border-box;text-align:center}
  .msl-portrait-placeholder{min-height:300px}
  .msl-guides-grid{grid-template-columns:1fr}
  .msl-service-sidebar{margin-top:1rem}
}
@media(max-width:520px){
  .msl-kicker{font-size:.72rem;letter-spacing:.1em}
}


/* v2.1 — professional profile and contact details */
.msl-profile-photo{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:22px;
  border:1px solid var(--msl-border);
  display:block;
}
.msl-contact-details a{text-decoration:none}
.msl-contact-details a:hover{text-decoration:underline}
.msl-credential-list li{margin-bottom:.55rem}
.msl-office-card address{font-style:normal;line-height:1.65}
.msl-contact-actions{
  display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.2rem
}
.msl-contact-actions a{
  display:inline-block;border:1px solid var(--msl-border);border-radius:999px;
  padding:.7rem 1rem;text-decoration:none;background:#fff
}
@media(max-width:781px){
  .msl-contact-actions a{width:100%;box-sizing:border-box;text-align:center}
}


/* v2.2 — desktop hero balance + SEO presentation */
.msl-hero-section{
  overflow:hidden;
}
.msl-hero-section .wp-block-columns{
  align-items:center;
}
.msl-hero-title{
  max-width:15ch;
  font-size:clamp(3rem,4.25vw,4.15rem)!important;
  line-height:.99!important;
  letter-spacing:-.035em;
  margin-top:0!important;
  margin-bottom:1.25rem!important;
}
.msl-hero-copy{
  max-width:710px;
  font-size:clamp(1.13rem,1.5vw,1.34rem)!important;
  line-height:1.58!important;
  margin-bottom:1.65rem!important;
}
.msl-focus-card h3{
  font-size:1.42rem;
  line-height:1.2;
}
.msl-trust-strip{
  border-top:1px solid var(--msl-border);
  border-bottom:1px solid var(--msl-border);
}
.msl-trust-strip .wp-block-column{
  padding:.35rem 0;
}
.msl-trust-label{
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--msl-muted);
  margin-bottom:.2rem!important;
}
.msl-trust-value{
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.08rem;
  margin-top:0!important;
}
@media(min-width:782px) and (max-width:1180px){
  .msl-hero-title{
    font-size:clamp(2.75rem,4.7vw,3.7rem)!important;
    max-width:14ch;
  }
}
@media(max-width:781px){
  .msl-hero-title{
    font-size:clamp(2.35rem,10vw,3.25rem)!important;
    max-width:12.5ch;
    line-height:1.02!important;
  }
  .msl-hero-copy{
    font-size:1.12rem!important;
  }
  .msl-trust-strip .wp-block-column{
    border-bottom:1px solid var(--msl-border);
    padding:.9rem 0;
  }
  .msl-trust-strip .wp-block-column:last-child{
    border-bottom:0;
  }
}
