/*
Theme Name: Speak & Walk Rehab Solutions
Theme URI: https://speakandwalk.com
Author: CopyAds
Author URI: https://copyads.in
Description: Custom theme for Speak & Walk Rehabilitation, a multidisciplinary rehab centre in Dubai. Built from the approved site design (home, about, services, 16 individual therapy pages, our therapists, blog, gallery, contact).
Version: 1.0
Requires PHP: 7.4
Text Domain: speak-walk
*/


:root{
  --teal:#0A829D; --teal-dark:#076277; --teal-deep:#054F5E;
  --olive:#81AF40; --olive-dark:#5C7D2C;
  --cream:#FAF9F5; --ink:#16232A; --muted:#64766F; --border:#E7E5DD;
  --blob:62% 38% 55% 45% / 55% 45% 60% 40%;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:'Montserrat',sans-serif;color:var(--ink);background:var(--cream);line-height:1.6;}
img{max-width:100%;display:block;}
a{text-decoration:none;color:inherit;}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--olive-dark);margin-bottom:10px;display:block;}
h1,h2,h3{font-family:'Montserrat',sans-serif;font-weight:700;color:var(--teal-dark);margin:0 0 14px;letter-spacing:-0.5px;}
h1{font-size:44px;line-height:1.12;}
h2{font-size:32px;line-height:1.2;}
h3{font-size:19px;font-weight:600;letter-spacing:0;}
p{color:var(--muted);margin:0 0 16px;}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;padding:14px 26px;border-radius:8px;border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease;}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background:var(--olive);color:#fff;}
.btn-outline{background:transparent;color:var(--teal);border-color:var(--teal);}
.btn-outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.btn-white{background:#fff;color:var(--olive-dark);}

/* top utility bar */
.utility{background:var(--teal-dark);color:#fff;font-size:12px;}
.utility .wrap{display:flex;justify-content:space-between;align-items:center;padding:8px 32px;flex-wrap:wrap;gap:6px;}
.utility a{opacity:.92;}
.utility .u-left, .utility .u-right{display:flex;gap:20px;align-items:center;}

/* nav */
header.nav{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--border);}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;gap:24px;}
.brand{display:flex;align-items:center;gap:10px;}
.brand .word{font-size:19px;font-weight:700;color:var(--teal-dark);line-height:1;}
.brand .word span{color:var(--olive);}
.brand .sub{font-size:8.5px;letter-spacing:2px;color:var(--muted);font-weight:600;}
.navlinks{display:flex;gap:30px;font-size:14px;font-weight:500;color:var(--ink);flex:1;justify-content:center;}
.navlinks a{position:relative;padding:6px 0;}
.navlinks a.active{color:var(--teal);}
.navlinks a.active::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--olive);border-radius:2px;}
.navcta{display:flex;align-items:center;gap:14px;}

/* organic blob image frame */
.blob-frame{border-radius:var(--blob);overflow:hidden;}
.blob-frame img{width:100%;height:100%;object-fit:cover;}

/* section paddings */
.section{padding:88px 0;}
.section-tight{padding:56px 0;}
.bg-white{background:#fff;}
.bg-cream{background:var(--cream);}
.bg-teal-tint{background:#0A829D0A;}
.bg-teal-dark{background:var(--teal-dark);color:#fff;}
.bg-teal-dark h2, .bg-teal-dark h3{color:#fff;}
.bg-teal-dark p{color:#cfe7ec;}
.bg-teal-deep{background:var(--teal-deep);color:#fff;}
.bg-olive{background:var(--olive);color:#fff;}

/* grid utilities */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}

/* cards */
.card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:26px 22px;}
.icon-circle{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16px;}
.icon-circle.teal{background:#0A829D14;}
.icon-circle.olive{background:#81AF4016;}
.stat{text-align:left;}
.stat .num{font-size:28px;font-weight:700;color:var(--teal-dark);}
.stat .lbl{font-size:12.5px;color:var(--muted);}

/* photo card (services) */
.photo-card{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;}
.photo-card .thumb{height:170px;overflow:hidden;}
.photo-card .thumb img{width:100%;height:100%;object-fit:cover;}
.photo-card .thumb.placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;}
.photo-card .body{padding:14px 14px 16px;}
.photo-card h3{font-size:13.5px;margin:0;text-align:center;}
.photo-card p{font-size:12.5px;margin:6px 0 0;text-align:center;}

.photo-row{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff;display:flex;gap:14px;align-items:center;padding:12px;}
.photo-row .thumb{width:64px;height:64px;border-radius:12px;overflow:hidden;flex-shrink:0;}
.photo-row .thumb img{width:100%;height:100%;object-fit:cover;}
.photo-row .thumb.placeholder{display:flex;align-items:center;justify-content:center;background:#0A829D0F;}

/* avatar card (who we serve) */
.avatar-card{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:999px;padding:8px 18px 8px 8px;background:#fff;}
.avatar-card .av{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0;}
.avatar-card .av img{width:100%;height:100%;object-fit:cover;}
.avatar-card .av.placeholder{display:flex;align-items:center;justify-content:center;background:#81AF4016;}
.avatar-card span.lbl{font-size:13px;font-weight:500;}

/* premium service cards */
.svc-card{border:1px solid var(--border);border-radius:18px;overflow:hidden;background:#fff;transition:transform .18s ease;}
.svc-card:hover{transform:translateY(-4px);}
.svc-card .img{height:190px;position:relative;overflow:hidden;}
.svc-card .img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;}
.svc-card:hover .img img{transform:scale(1.05);}
.svc-card .tag{position:absolute;top:12px;left:12px;background:#fff;color:var(--teal-dark);font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:5px 11px;border-radius:999px;}
.svc-card .body{padding:20px;}
.svc-card h3{font-size:16px;margin-bottom:6px;}
.svc-card p{font-size:13px;margin-bottom:14px;}
.svc-card .more{font-size:12.5px;font-weight:700;color:var(--teal);display:inline-flex;align-items:center;gap:5px;}

.feature-panel{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;}
.feature-panel .img-wrap{border-radius:22px;overflow:hidden;height:380px;}
.feature-panel .img-wrap img{width:100%;height:100%;object-fit:cover;}

/* service detail page */
.breadcrumb{font-size:12.5px;color:var(--muted);margin-bottom:18px;}
.breadcrumb a{color:var(--teal);font-weight:500;}
.svc-hero{position:relative;border-radius:22px;overflow:hidden;height:380px;}
.svc-hero img{width:100%;height:100%;object-fit:cover;}
.svc-hero .overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,79,94,.82) 0%,rgba(5,79,94,.15) 55%,rgba(5,79,94,0) 100%);}
.svc-hero .caption{position:absolute;left:32px;right:32px;bottom:26px;color:#fff;}
.svc-hero .caption .tag{display:inline-block;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.4);color:#fff;font-size:11px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin-bottom:10px;}
.svc-hero .caption h1{color:#fff;font-size:32px;margin-bottom:4px;}
.condition-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;}
.condition-list .item{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--ink);}
.sidebar-cta{border:1px solid var(--border);border-radius:18px;padding:26px;background:#fff;}

/* logo marquee (project supporters) */
.logo-marquee{overflow:hidden;position:relative;width:100%;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.logo-track{display:flex;gap:28px;width:max-content;animation:scrollLogos 26s linear infinite;}
.logo-track:hover{animation-play-state:paused;}
.logo-item{flex-shrink:0;width:180px;height:90px;border:1px solid var(--border);border-radius:14px;background:#fff;
  display:flex;align-items:center;justify-content:center;padding:14px;}
.logo-item img{max-width:100%;max-height:100%;object-fit:contain;}
@keyframes scrollLogos{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* comma/blob decorative motif */
.motif{position:absolute;opacity:.07;pointer-events:none;}

/* footer */
footer{background:var(--teal-deep);color:#cfe1e4;padding:64px 0 26px;}
footer h4{color:#fff;font-size:13px;letter-spacing:1px;text-transform:uppercase;margin-bottom:16px;font-weight:600;}
footer a{color:#b9d4d8;font-size:14px;line-height:2.1;display:block;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;font-size:12.5px;color:#8fb3b8;flex-wrap:wrap;gap:10px;}
.social{display:flex;gap:12px;margin-top:14px;}
.social a{width:34px;height:34px;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;}

/* floating whatsapp */
.wa-float{position:fixed;bottom:22px;right:22px;width:56px;height:56px;border-radius:50%;background:#25D366;
  display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(0,0,0,.22);z-index:200;}
.wa-float:hover{transform:scale(1.06);}

/* mobile nav */
.menu-toggle-input{display:none;}
.hamburger{display:none;cursor:pointer;width:24px;height:18px;position:relative;}
.hamburger span{position:absolute;left:0;right:0;height:2px;background:var(--teal-dark);border-radius:2px;}
.hamburger span:nth-child(1){top:0;} .hamburger span:nth-child(2){top:8px;} .hamburger span:nth-child(3){top:16px;}
.mobile-panel{display:none;flex-direction:column;background:#fff;border-top:1px solid var(--border);}
.mobile-panel a{padding:15px 32px;border-bottom:1px solid var(--border);font-size:14.5px;font-weight:500;}
.menu-toggle-input:checked ~ .mobile-panel{display:flex;}

@media(max-width:900px){
  .navlinks{display:none;}
  .hamburger{display:block;}
  .grid-2{grid-template-columns:1fr;gap:32px;}
  .grid-3{grid-template-columns:1fr 1fr;}
  .grid-4{grid-template-columns:1fr 1fr;}
  .grid-5{grid-template-columns:1fr 1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .feature-panel{grid-template-columns:1fr;gap:24px;}
  .feature-panel .img-wrap{height:260px;}
  .svc-hero{height:280px;}
  .svc-hero .caption h1{font-size:24px;}
  .condition-list{grid-template-columns:1fr;}
  h1{font-size:32px;}
  h2{font-size:26px;}
}

/* Arabic / RTL support */
body.lang-ar{font-family:'Cairo',sans-serif;}
body.lang-ar h1,body.lang-ar h2,body.lang-ar h3{font-family:'Cairo',sans-serif;}
html[dir="rtl"] .navlinks{flex-direction:row-reverse;}
html[dir="rtl"] .navcta{flex-direction:row-reverse;}
html[dir="rtl"] .utility .wrap{flex-direction:row-reverse;}
html[dir="rtl"] .utility .u-left,html[dir="rtl"] .utility .u-right{flex-direction:row-reverse;}
html[dir="rtl"] .nav .wrap{flex-direction:row-reverse;}
html[dir="rtl"] .feature-panel,html[dir="rtl"] .grid-2{direction:rtl;}
html[dir="rtl"] .footer-grid{direction:rtl;text-align:right;}
html[dir="rtl"] .condition-list .item,html[dir="rtl"] .avatar-card,html[dir="rtl"] .photo-row{flex-direction:row-reverse;text-align:right;}
.lang-en-btn,.lang-ar-btn{cursor:pointer;background:none;border:none;color:inherit;font:inherit;padding:0;opacity:.65;}
.lang-en-btn.lang-active,.lang-ar-btn.lang-active{opacity:1;font-weight:700;text-decoration:underline;}
