/*
Theme Name: Sohrab Advocate Premium v1.8 – Portrait Repositioned
Theme URI: https://example.com/
Author: Website Starter
Description: Responsive informational website theme for Mohd Sohrab Khan, Advocate.
Version: 1.8.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
Text Domain: sohrab-advocate
*/
:root{--navy:#102b46;--blue:#174c73;--gold:#c6a15b;--ink:#203040;--muted:#667585;--paper:#f7f8fa;--line:#e5e9ee;--white:#fff;--shadow:0 14px 40px rgba(16,43,70,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff}a{color:var(--blue);text-decoration:none}a:hover{color:#0b2d49}img{max-width:100%;height:auto}button,input,textarea{font:inherit}.container{width:min(1140px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;color:var(--navy);font-weight:800;letter-spacing:.01em}.brand-mark{width:42px;height:42px;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;font-family:Georgia,serif;font-size:23px}.brand small{display:block;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:22px}.main-nav a{font-size:14px;font-weight:650;color:#34495d}.main-nav a:hover{color:var(--gold)}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 12px;color:var(--navy)}.hero{background:linear-gradient(115deg,rgba(9,31,52,.97),rgba(22,69,103,.91)),radial-gradient(circle at 85% 15%,#54748b,transparent 40%);color:#fff;padding:78px 0 82px;position:relative;overflow:hidden}.hero:after{content:"§";position:absolute;right:8%;top:-95px;font:380px/1 Georgia,serif;color:rgba(255,255,255,.045)}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:55px;position:relative;z-index:1}.eyebrow{color:#e3c786;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800}.hero h1{font:700 clamp(38px,5vw,62px)/1.08 Georgia,serif;margin:16px 0}.hero p{color:#e2e9ef;max-width:660px;font-size:18px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 19px;border-radius:7px;font-weight:750;border:1px solid transparent;transition:.2s}.btn-gold{background:var(--gold);color:#172d40}.btn-gold:hover{background:#d7b978;color:#172d40}.btn-outline{border-color:rgba(255,255,255,.55);color:#fff}.btn-outline:hover{background:#fff;color:var(--navy)}.portrait-wrap{justify-self:end;width:min(100%,340px);padding:10px;border:1px solid rgba(255,255,255,.3);border-radius:180px 180px 16px 16px;background:rgba(255,255,255,.08)}.portrait{height:390px;width:100%;object-fit:cover;object-position:center top;border-radius:170px 170px 10px 10px;background:#d9e0e5}.portrait-placeholder{height:390px;border-radius:170px 170px 10px 10px;background:linear-gradient(145deg,#dbe1e6,#9daeb9);display:grid;place-items:center;color:#496176;font:26px Georgia,serif;text-align:center;padding:20px}.trust-strip{background:#f1f4f6;border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:22px 0}.trust-item{display:flex;gap:12px;align-items:center;color:var(--navy);font-weight:700}.trust-item span{color:var(--muted);font-size:12px;font-weight:500;display:block}.section{padding:76px 0}.section-soft{background:var(--paper)}.section-head{max-width:720px;margin:0 auto 36px;text-align:center}.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:#9b7839;font-weight:800}.section h2,.page-title{font:700 clamp(30px,4vw,42px)/1.15 Georgia,serif;color:var(--navy);margin:10px 0 14px}.section-head p{color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px;box-shadow:0 5px 20px rgba(16,43,70,.035)}.card-icon{width:45px;height:45px;border-radius:12px;background:#eef3f6;color:var(--blue);display:grid;place-items:center;font-size:22px;margin-bottom:17px}.card h3{margin:0 0 8px;color:var(--navy);font:700 21px Georgia,serif}.card p{margin:0;color:var(--muted);font-size:14px}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}.about-panel{background:var(--navy);color:#fff;padding:34px;border-radius:14px;min-height:270px;display:flex;flex-direction:column;justify-content:center}.about-panel .symbol{font:70px Georgia,serif;color:var(--gold)}.about-panel p{color:#dbe5ec}.about-copy p{color:var(--muted)}.updates{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.update-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.update-image{height:175px;background:#e9eef2;display:grid;place-items:center;color:#617587;font-size:42px}.update-image img{width:100%;height:100%;object-fit:cover}.update-body{padding:20px}.update-meta{font-size:12px;color:#8a6a34;font-weight:750}.update-body h3{font:700 19px/1.3 Georgia,serif;color:var(--navy);margin:8px 0}.update-body p{font-size:14px;color:var(--muted)}.text-link{font-weight:750;font-size:14px}.contact-band{background:var(--navy);color:#fff;padding:48px 0}.contact-band h2{font:700 32px Georgia,serif;margin:0 0 8px}.contact-band p{color:#d7e0e7;margin:0}.contact-band-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.contact-band .btn{white-space:nowrap}.site-footer{background:#0a1e30;color:#d5dfe7;padding:45px 0 100px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:35px}.site-footer h3{color:#fff;font:700 19px Georgia,serif}.site-footer p,.site-footer li{font-size:14px;color:#c1ccd5}.site-footer a{color:#e4c47e}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:7px 0}.copyright{border-top:1px solid rgba(255,255,255,.15);margin-top:30px;padding-top:18px;font-size:12px;color:#aebbc6}.contact-dock{position:fixed;z-index:30;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;box-shadow:0 -5px 24px rgba(0,0,0,.13);border-top:1px solid var(--line)}.dock-link{padding:11px 5px 9px;text-align:center;color:#fff;font-size:12px;font-weight:750;display:flex;flex-direction:column;gap:2px;align-items:center}.dock-link b{font-size:19px;line-height:1.2}.dock-call{background:#174c73}.dock-email{background:#46586b}.dock-wa{background:#168b55}.dock-map{background:#9a783d}.page-hero{background:var(--paper);padding:48px 0;border-bottom:1px solid var(--line)}.content-area{padding:55px 0 100px}.content-area article{max-width:850px}.content-area p,.content-area li{color:#465768}.content-area h2,.content-area h3{font-family:Georgia,serif;color:var(--navy)}.entry-content{max-width:850px}.entry-content img{border-radius:9px}.entry-content a{text-decoration:underline}.post-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.post-card{padding:22px;border:1px solid var(--line);border-radius:10px}.post-card h2{font:700 22px Georgia,serif;margin:7px 0}.post-card p{color:var(--muted)}.notice{background:#fff8e9;border-left:4px solid var(--gold);padding:16px 18px;color:#5c4a2c;font-size:14px}.wp-block-button__link{background:var(--navy);border-radius:6px}.pagination{margin-top:30px}.pagination .page-numbers{padding:8px 12px;border:1px solid var(--line);border-radius:5px;margin-right:5px}.screen-reader-text{position:absolute;left:-9999px}
@media(max-width:850px){.main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px 22px 22px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:13px}.main-nav.is-open{display:flex}.menu-toggle{display:block}.hero-grid{grid-template-columns:1fr .7fr;gap:25px}.portrait-wrap{width:260px}.portrait,.portrait-placeholder{height:330px}.cards,.updates{grid-template-columns:repeat(2,1fr)}.about-grid{gap:28px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.container{width:min(100% - 30px,1140px)}.header-inner{min-height:68px}.main-nav{top:68px}.hero{padding:52px 0 45px}.hero-grid{grid-template-columns:1fr}.hero h1{font-size:42px}.hero p{font-size:16px}.portrait-wrap{justify-self:start;width:205px}.portrait,.portrait-placeholder{height:235px}.trust-grid{grid-template-columns:1fr;gap:13px}.section{padding:54px 0}.cards,.updates,.post-list{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr}.about-panel{min-height:190px}.contact-band-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr;gap:18px}.site-footer{padding-bottom:95px}.contact-dock .dock-link{font-size:11px;padding:9px 3px}.contact-dock .dock-link b{font-size:18px}}

/* Homepage hero: 60% information, 40% portrait */
.hero{padding:58px 0 60px}
.hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:42px}
.hero-copy{min-width:0}
.hero h1{max-width:100%;font-size:clamp(38px,4.5vw,60px)}
.hero-designation{font:italic 700 clamp(25px,2.7vw,35px)/1.2 Georgia,serif;color:var(--gold);margin:0 0 16px}
.hero-copy>p{font-size:17px;line-height:1.75;max-width:640px}
.portrait-wrap{justify-self:stretch;width:100%;max-width:none;padding:8px;border-radius:12px;background:rgba(255,255,255,.08)}
.portrait{height:390px;width:100%;object-fit:cover;object-position:70% 25%;border-radius:7px}
.contact-dock{position:fixed;z-index:9999;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));box-shadow:0 -5px 24px rgba(0,0,0,.16);border-top:1px solid #dfe5eb;padding-bottom:env(safe-area-inset-bottom);min-height:58px}
.dock-link{min-height:58px;padding:9px 5px 8px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;text-decoration:none!important;color:#fff!important;font-size:12px;font-weight:750}
.dock-link b{font-size:19px;line-height:1.2}
body{padding-bottom:62px}
.site-footer{padding-bottom:85px}
@media(max-width:850px){
 .hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px}
 .portrait-wrap{width:100%}
 .portrait{height:330px}
}
@media(max-width:600px){
 .hero{padding:42px 0 38px}
 .hero-grid{grid-template-columns:1fr;gap:24px}
 .hero h1{font-size:40px}
 .hero-copy>p{font-size:16px}
 .portrait-wrap{width:min(100%,360px);justify-self:center}
 .portrait{height:300px;object-position:70% 20%}
 .contact-dock{min-height:60px}
 .dock-link{min-height:60px;font-size:11px;padding:8px 3px}
 .dock-link b{font-size:18px}
 body{padding-bottom:66px}
}



/* v1.7: responsive hero and portrait alignment across desktop, tablet and mobile */
.hero-grid {
    grid-template-columns: minmax(0, 1.5fr) minmax(300px, 1fr);
    align-items: center;
}
.hero-copy { min-width: 0; }
.portrait-wrap {
    width: 100%;
    max-width: 420px;
    justify-self: center;
    align-self: center;
}
.hero .portrait {
    display: block;
    width: 100%;
    height: clamp(340px, 34vw, 440px);
    object-fit: cover;
    object-position: 72% 22%;
}

/* Tablet: stack copy and a centred portrait instead of squeezing them side by side. */
@media (max-width: 1024px) {
    .hero { padding: 52px 0 54px; }
    .hero-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 30px;
    }
    .hero-copy { width: 100%; max-width: 760px; margin-inline: auto; }
    .hero h1 { max-width: 100%; }
    .hero-copy > p { max-width: 720px; }
    .hero-actions { gap: 12px; }
    .portrait-wrap {
        width: min(100%, 390px);
        max-width: 390px;
        justify-self: center;
        margin-inline: auto;
    }
    .hero .portrait {
        height: 420px;
        object-position: 72% 20%;
    }
}

/* Phones: balanced text, portrait and touch-friendly navigation buttons. */
@media (max-width: 600px) {
    .hero { padding: 36px 0 34px; }
    .hero-grid { gap: 24px; }
    .hero h1 {
        font-size: clamp(34px, 9vw, 42px);
        line-height: 1.08;
        overflow-wrap: normal;
    }
    .eyebrow { font-size: 11px; line-height: 1.6; }
    .hero-copy > p { font-size: 16px; line-height: 1.65; }
    .hero-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 10px;
        width: 100%;
    }
    .hero-actions .btn {
        min-width: 0;
        width: 100%;
        min-height: 52px;
        padding: 11px 9px;
        text-align: center;
        white-space: normal;
        font-size: 14px;
    }
    .hero-actions .btn:last-child { grid-column: 1 / -1; }
    .portrait-wrap {
        width: min(100%, 340px);
        max-width: 340px;
        padding: 7px;
        margin-inline: auto;
    }
    .hero .portrait {
        width: 100%;
        height: 390px;
        object-position: 72% 19%;
    }
}

/* Very narrow phones */
@media (max-width: 380px) {
    .hero .portrait { height: 350px; }
    .hero-actions .btn { font-size: 13px; }
}


/* v1.8: shift portrait content left within the frame so the advocate moves 15% toward centre */
.hero .portrait {
    object-position: 87% 19% !important;
}
@media (max-width: 1024px) {
    .hero .portrait {
        object-position: 87% 19% !important;
    }
}
@media (max-width: 600px) {
    .hero .portrait {
        object-position: 87% 19% !important;
    }
}
