/*
Theme Name: BPW Wanem
Theme URI: https://example.com/
Author: Bijaya Prakash Wanem
Description: Official personal website theme of Bijaya Prakash Wanem. Pixel-identical conversion of the original HTML design, bilingual (नेपाली / English) with a full-screen glowing menu, WordPress-native header/footer hooks and a Customizer hero-photo option.
Version: 1.0.0
Requires at least: 5.8
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bpw-wanem
Tags: one-column, custom-logo, translation-ready, accessibility-ready
*/

/* =========================================================
   ROOT
========================================================= */

:root{
    --red:#5a0712;
    --red-dark:#30040a;
    --red-light:#8e1525;

    --blue:#071d3d;
    --blue-light:#123b70;
    --blue-dark:#030d1e;

    --white:#ffffff;
    --text:#f6f3f1;
    --muted:#c9c4c4;

    --glass:rgba(255,255,255,.055);
    --border:rgba(255,255,255,.13);

    --shadow:0 20px 60px rgba(0,0,0,.35);

    --container:1200px;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:"Noto Sans Devanagari",sans-serif;
    background:
        linear-gradient(
            115deg,
            var(--red-dark) 0%,
            var(--red) 75%,
            var(--blue) 75%,
            var(--blue-dark) 100%
        );
    color:var(--text);
    line-height:1.8;
    overflow-x:hidden;
}

body.menu-open{
    overflow:hidden;
}

a{
    color:inherit;
    text-decoration:none;
}

img{
    max-width:100%;
    display:block;
}

button{
    font-family:inherit;
}

.container{
    width:min(92%,var(--container));
    margin:auto;
}

section{
    padding:110px 0;
    position:relative;
}

section::before{
    content:"";
    position:absolute;
    width:300px;
    height:300px;
    border-radius:50%;
    background:rgba(10,64,125,.12);
    filter:blur(70px);
    pointer-events:none;
}

/* =========================================================
   HEADER
========================================================= */

.site-header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:9000;
    padding:18px 0;
    background:rgba(42,4,10,.82);
    backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(255,255,255,.08);
}

.header-inner{
    width:min(92%,var(--container));
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.brand{
    font-weight:800;
    letter-spacing:.5px;
    font-size:20px;
}

.brand span{
    display:block;
    font-size:11px;
    color:#c8bfc0;
    font-weight:400;
    letter-spacing:1px;
}

/* =========================================================
   GLOWING HAMBURGER
========================================================= */

.menu-toggle{
    width:62px;
    height:62px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.3);
    background:
        radial-gradient(circle at 30% 30%,#8e1525,#40050d 65%);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    cursor:pointer;
    position:relative;
    box-shadow:
        0 0 10px rgba(255,70,90,.45),
        0 0 28px rgba(255,30,55,.25),
        inset 0 0 15px rgba(255,255,255,.06);
    transition:.35s ease;
}

.menu-toggle:hover{
    transform:rotate(5deg) scale(1.08);
    box-shadow:
        0 0 15px rgba(255,80,100,.8),
        0 0 45px rgba(255,30,60,.5),
        0 0 90px rgba(16,78,145,.25);
}

.menu-toggle span{
    width:26px;
    height:2px;
    background:#fff;
    border-radius:20px;
    transition:.35s ease;
}

.menu-toggle.active span:nth-child(1){
    transform:translateY(8px) rotate(45deg);
}

.menu-toggle.active span:nth-child(2){
    opacity:0;
}

.menu-toggle.active span:nth-child(3){
    transform:translateY(-8px) rotate(-45deg);
}

/* =========================================================
   FULLSCREEN MENU
========================================================= */

.fullscreen-menu{
    position:fixed;
    inset:0;
    z-index:8500;
    background:
        radial-gradient(circle at 85% 15%,rgba(22,75,140,.42),transparent 32%),
        radial-gradient(circle at 15% 85%,rgba(150,15,40,.32),transparent 35%),
        linear-gradient(
            120deg,
            #35050b 0%,
            #5a0712 75%,
            #071d3d 75%,
            #030d1e 100%
        );

    visibility:hidden;
    opacity:0;
    transform:scale(1.04);
    transition:.45s ease;
    overflow-y:auto;
}

.fullscreen-menu.open{
    visibility:visible;
    opacity:1;
    transform:scale(1);
}

.menu-inner{
    width:min(90%,1100px);
    min-height:100%;
    margin:auto;
    padding:120px 0 50px;
    display:flex;
    flex-direction:column;
}

.menu-top{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    margin-bottom:50px;
}

.menu-top h2{
    font-family:"Playfair Display",serif;
    font-size:clamp(35px,6vw,70px);
    line-height:1.1;
}

.menu-top p{
    color:#cfc7c8;
    margin-top:10px;
}

.menu-close-text{
    color:#aaa;
    font-size:13px;
}

.menu-navigation{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px 35px;
}

.menu-navigation a{
    display:flex;
    align-items:center;
    gap:16px;
    padding:20px 12px;
    border-bottom:1px solid rgba(255,255,255,.1);
    font-size:19px;
    transition:.3s ease;
}

.menu-navigation a i{
    width:32px;
    color:#df5365;
}

.menu-navigation a:hover{
    padding-left:25px;
    color:#fff;
    text-shadow:
        0 0 10px rgba(255,90,110,.7),
        0 0 25px rgba(255,30,60,.3);
    border-color:#a3293b;
}

.menu-bottom{
    margin-top:auto;
    padding-top:60px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
}

.menu-social{
    display:flex;
    gap:12px;
}

.menu-social a{
    width:43px;
    height:43px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    transition:.3s;
}

.menu-social a:hover{
    background:#7b1020;
    transform:translateY(-4px);
    box-shadow:0 0 25px rgba(255,40,70,.4);
}

.language-btn{
    border:1px solid rgba(255,255,255,.25);
    background:rgba(255,255,255,.07);
    color:#fff;
    padding:11px 19px;
    border-radius:30px;
    cursor:pointer;
    transition:.3s;
}

.language-btn:hover{
    background:#711021;
    box-shadow:0 0 25px rgba(255,40,60,.35);
}

/* =========================================================
   HERO
========================================================= */

.hero{
    min-height:100vh;
    padding-top:160px;
    display:flex;
    align-items:center;
    overflow:hidden;
}

.hero-grid{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:70px;
    align-items:center;
}

.hero-content{
    position:relative;
    z-index:2;
}

.eyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:7px 14px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:50px;
    background:rgba(255,255,255,.05);
    color:#ddd;
    font-size:13px;
    margin-bottom:25px;
}

.eyebrow::before{
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:#ff4e65;
    box-shadow:0 0 12px #ff3654;
}

.hero h1{
    font-family:"Playfair Display","Noto Sans Devanagari",serif;
    font-size:clamp(45px,7vw,88px);
    line-height:1.05;
    margin-bottom:18px;
}

.hero h1 span{
    color:#ff7888;
}

.hero-subtitle{
    font-size:clamp(18px,2vw,25px);
    font-weight:600;
    color:#fff;
    margin-bottom:8px;
}

.hero-role{
    color:#c9c1c1;
    margin-bottom:28px;
}

.hero-description{
    max-width:680px;
    color:#d7d1d1;
    font-size:17px;
}

.hero-buttons{
    margin-top:35px;
    display:flex;
    flex-wrap:wrap;
    gap:13px;
}

.btn{
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:13px 21px;
    border-radius:8px;
    border:1px solid rgba(255,255,255,.18);
    transition:.3s;
}

.btn-primary{
    background:#781022;
}

.btn-primary:hover{
    background:#9c1c32;
    box-shadow:0 10px 35px rgba(120,16,34,.4);
    transform:translateY(-2px);
}

.btn-outline{
    background:rgba(255,255,255,.05);
}

.btn-outline:hover{
    background:#092b57;
}

/* SINGLE PHOTO FRAME */

.hero-photo{
    position:relative;
}

.photo-frame{
    width:100%;
    max-width:500px;
    aspect-ratio:4/5;
    margin-left:auto;
    border-radius:25px;
    padding:10px;
    background:
        linear-gradient(145deg,#b42b40,#4e0711 48%,#123f73);
    box-shadow:
        0 30px 80px rgba(0,0,0,.5),
        0 0 50px rgba(137,20,40,.2);
    position:relative;
}

.photo-frame::before{
    content:"";
    position:absolute;
    inset:-2px;
    border-radius:27px;
    background:linear-gradient(135deg,#ff536b,transparent 35%,#174c83);
    z-index:-1;
    filter:blur(10px);
    opacity:.65;
}

.photo-placeholder{
    width:100%;
    height:100%;
    border-radius:17px;
    border:1px solid rgba(255,255,255,.2);
    background:
        linear-gradient(
            145deg,
            rgba(90,7,18,.8),
            rgba(5,22,47,.9)
        );
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:30px;
    position:relative;
    overflow:hidden;
}

.photo-placeholder img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:14px;
}

.photo-placeholder .placeholder-content{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    background:rgba(20,3,8,.38);
    pointer-events:none;
}

.placeholder-content i{
    font-size:55px;
    margin-bottom:12px;
    color:#e76a7c;
}

.placeholder-content small{
    color:#ddd;
}

/* =========================================================
   SECTION TITLES
========================================================= */

.section-heading{
    margin-bottom:55px;
    max-width:780px;
}

.section-label{
    color:#ff6477;
    text-transform:uppercase;
    letter-spacing:2px;
    font-size:12px;
    font-weight:700;
    margin-bottom:10px;
}

.section-heading h2{
    font-family:"Playfair Display","Noto Sans Devanagari",serif;
    font-size:clamp(34px,5vw,58px);
    line-height:1.15;
    margin-bottom:17px;
}

.section-heading p{
    color:#c8c1c1;
}

/* =========================================================
   ABOUT
========================================================= */

.about-grid{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:60px;
    align-items:start;
}

.profile-card{
    background:linear-gradient(
        145deg,
        rgba(255,255,255,.08),
        rgba(255,255,255,.025)
    );
    border:1px solid var(--border);
    border-radius:22px;
    padding:30px;
    box-shadow:var(--shadow);
}

.profile-card h3{
    font-size:25px;
    margin-bottom:20px;
}

.profile-list{
    list-style:none;
}

.profile-list li{
    padding:14px 0;
    border-bottom:1px solid rgba(255,255,255,.09);
}

.profile-list strong{
    display:block;
    color:#ff8290;
    font-size:13px;
}

.profile-list span{
    color:#eee;
}

.content-box{
    color:#d7d0d0;
}

.content-box p{
    margin-bottom:20px;
}

.content-box h3{
    margin:30px 0 15px;
    color:#fff;
}

/* =========================================================
   TIMELINE
========================================================= */

.timeline{
    position:relative;
    max-width:1000px;
    margin:auto;
}

.timeline::before{
    content:"";
    position:absolute;
    left:17px;
    top:0;
    bottom:0;
    width:2px;
    background:linear-gradient(#a5263a,#17497d);
}

.timeline-item{
    position:relative;
    padding-left:65px;
    margin-bottom:35px;
}

.timeline-dot{
    position:absolute;
    left:7px;
    top:5px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#7e1022;
    border:4px solid #35050b;
    box-shadow:0 0 20px rgba(255,50,70,.5);
}

.timeline-card{
    padding:26px;
    border-radius:16px;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.1);
    transition:.3s;
}

.timeline-card:hover{
    transform:translateX(5px);
    border-color:rgba(255,80,100,.35);
}

.timeline-year{
    color:#ff6c7e;
    font-size:14px;
    font-weight:800;
    letter-spacing:1px;
}

.timeline-card h3{
    margin:5px 0 10px;
    font-size:21px;
}

.timeline-card p{
    color:#cfc8c8;
}

/* =========================================================
   PRIORITIES
========================================================= */

.priority-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}

.priority-card{
    padding:30px;
    min-height:240px;
    border-radius:18px;
    background:
        linear-gradient(
            145deg,
            rgba(117,13,31,.48),
            rgba(7,29,61,.58)
        );
    border:1px solid rgba(255,255,255,.1);
    transition:.35s;
}

.priority-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 50px rgba(0,0,0,.3);
    border-color:rgba(255,90,110,.35);
}

.priority-icon{
    width:52px;
    height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:#6d0c1d;
    color:#ff8b99;
    font-size:20px;
    margin-bottom:22px;
}

.priority-card h3{
    margin-bottom:10px;
}

.priority-card p{
    color:#c9c4c4;
    font-size:15px;
}

/* =========================================================
   EDUCATION
========================================================= */

.education-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
}

.education-card{
    padding:28px;
    border-left:3px solid #9c1b31;
    background:rgba(255,255,255,.04);
    border-radius:0 16px 16px 0;
}

.education-card h3{
    margin-bottom:9px;
}

.education-card p{
    color:#c9c3c3;
}

/* =========================================================
   BLOG
========================================================= */

.blog-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.blog-card{
    overflow:hidden;
    border-radius:20px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.11);
    transition:.35s;
}

.blog-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--shadow);
}

.blog-image{
    height:220px;
    overflow:hidden;
    position:relative;
}

.blog-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.5s;
}

.blog-card:hover .blog-image img{
    transform:scale(1.06);
}

.blog-body{
    padding:25px;
}

.blog-date{
    color:#ff7182;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:1px;
}

.blog-body h3{
    font-size:22px;
    line-height:1.4;
    margin:9px 0 12px;
}

.blog-body p{
    color:#c8c2c2;
    font-size:14px;
}

.read-more{
    margin-top:18px;
    border:1px solid rgba(255,255,255,.18);
    background:transparent;
    color:white;
    padding:9px 15px;
    border-radius:7px;
    cursor:pointer;
    transition:.3s;
}

.read-more:hover{
    background:#751024;
}

.blog-full{
    display:none;
    margin-top:17px;
    padding-top:17px;
    border-top:1px solid rgba(255,255,255,.1);
    color:#cfc9c9;
    font-size:14px;
}

.blog-card.expanded .blog-full{
    display:block;
}

/* =========================================================
   GALLERY
========================================================= */

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:13px;
}

.gallery-item{
    height:220px;
    overflow:hidden;
    border-radius:13px;
    position:relative;
    border:1px solid rgba(255,255,255,.1);
}

.gallery-item img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.45s;
}

.gallery-item:hover img{
    transform:scale(1.1);
    filter:brightness(.7);
}

.gallery-item::after{
    content:"\f00e";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%) scale(.5);
    opacity:0;
    font-size:25px;
    transition:.3s;
}

.gallery-item:hover::after{
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
}

/* =========================================================
   VIDEOS
========================================================= */

.video-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:22px;
}

.video-card{
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.1);
    border-radius:18px;
    overflow:hidden;
}

.video-frame{
    aspect-ratio:16/9;
    background:#020812;
}

.video-frame iframe{
    width:100%;
    height:100%;
    border:0;
}

.video-info{
    padding:20px;
}

.video-info h3{
    margin-bottom:5px;
}

.video-info p{
    color:#aaa;
    font-size:13px;
}

/* =========================================================
   LINKS
========================================================= */

.links-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}

.link-card{
    padding:25px;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.1);
    border-radius:16px;
    display:flex;
    align-items:center;
    gap:15px;
    transition:.3s;
}

.link-card i{
    font-size:22px;
    color:#f0677a;
}

.link-card:hover{
    background:#641020;
    transform:translateY(-5px);
}

/* =========================================================
   CONTACT
========================================================= */

.contact-box{
    border-radius:25px;
    padding:55px;
    background:
        linear-gradient(
            120deg,
            rgba(116,12,31,.75),
            rgba(5,31,65,.85)
        );
    border:1px solid rgba(255,255,255,.13);
    text-align:center;
}

.contact-box h2{
    font-family:"Playfair Display",serif;
    font-size:clamp(35px,5vw,58px);
    margin-bottom:15px;
}

.contact-box p{
    max-width:700px;
    margin:0 auto 28px;
    color:#d2cccc;
}

/* =========================================================
   FOOTER
========================================================= */

footer{
    background:#020912;
    padding:50px 0 25px;
    border-top:1px solid rgba(255,255,255,.08);
}

.footer-grid{
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr;
    gap:40px;
    padding-bottom:35px;
}

.footer-brand{
    font-size:25px;
    font-weight:800;
}

.footer-grid h4{
    margin-bottom:15px;
}

.footer-grid a,
.footer-grid p{
    display:block;
    color:#aaa;
    margin-bottom:8px;
    font-size:14px;
}

.footer-social{
    display:flex;
    gap:10px;
    margin-top:15px;
}

.footer-social a{
    width:38px;
    height:38px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
}

.copyright{
    text-align:center;
    border-top:1px solid rgba(255,255,255,.08);
    padding-top:22px;
    color:#777;
    font-size:12px;
}

/* =========================================================
   LANGUAGE TRANSITION
========================================================= */

.lang-fade{
    animation:languageFade .35s ease;
}

@keyframes languageFade{
    from{
        opacity:.2;
        transform:translateY(4px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:1000px){

    .hero-grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .hero-photo{
        order:-1;
    }

    .photo-frame{
        margin:auto;
        max-width:440px;
    }

    .about-grid{
        grid-template-columns:1fr;
    }

    .priority-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .blog-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .video-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .gallery-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .links-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .footer-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:700px){

    section{
        padding:80px 0;
    }

    .site-header{
        padding:12px 0;
    }

    .brand{
        font-size:16px;
    }

    .brand span{
        font-size:9px;
    }

    .menu-toggle{
        width:52px;
        height:52px;
    }

    .menu-navigation{
        grid-template-columns:1fr;
    }

    .menu-top{
        align-items:flex-start;
        flex-direction:column;
        gap:20px;
    }

    .menu-bottom{
        flex-direction:column;
        align-items:flex-start;
    }

    .hero{
        padding-top:125px;
    }

    .hero h1{
        font-size:45px;
    }

    .hero-description{
        font-size:15px;
    }

    .photo-frame{
        max-width:100%;
    }

    .priority-grid,
    .education-grid,
    .blog-grid,
    .video-grid{
        grid-template-columns:1fr;
    }

    .gallery-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .gallery-item{
        height:180px;
    }

    .links-grid{
        grid-template-columns:1fr;
    }

    .contact-box{
        padding:35px 22px;
    }

    .footer-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:430px){

    .hero h1{
        font-size:39px;
    }

    .hero-buttons{
        flex-direction:column;
    }

    .btn{
        justify-content:center;
    }

    .gallery-item{
        height:155px;
    }

    .menu-navigation a{
        font-size:16px;
    }
}


/* FINAL 75/25 COMPACT DESIGN */
body{background:linear-gradient(115deg,var(--red-dark) 0%,var(--red) 75%,var(--blue) 75%,var(--blue-dark) 100%);}
.fullscreen-menu{background:linear-gradient(120deg,#35050b 0%,#5a0712 75%,#071d3d 75%,#030d1e 100%);}
section{padding:78px 0;}
.hero{padding-top:128px;min-height:100vh;}
.hero-grid{gap:48px;}
.eyebrow{margin-bottom:18px;}
.hero h1{margin-bottom:12px;}
.hero-role{margin-bottom:18px;}
.hero-description{line-height:1.7;}
.hero-buttons{margin-top:24px;}
.section-heading{margin-bottom:34px;}
.section-heading h2{margin-bottom:10px;}
.about-grid{gap:40px;}
.profile-card{padding:24px;}
.profile-card h3{margin-bottom:14px;}
.profile-list li{padding:10px 0;}
.content-box p{margin-bottom:13px;}
.content-box h3{margin:22px 0 10px;}
.timeline-item{margin-bottom:18px;}
.timeline-card{padding:20px 22px;}
.timeline-card h3{margin:4px 0 7px;}
.priority-grid,.education-grid{gap:15px;}
.priority-card{padding:23px;min-height:205px;}
.priority-icon{margin-bottom:15px;}
.education-card{padding:22px;}
.blog-grid{gap:17px;}
.blog-body{padding:21px;}
.blog-body h3{margin:7px 0 9px;}
.gallery-grid{gap:9px;}
.gallery-item{height:195px;}
.video-grid{gap:16px;}
.video-info{padding:16px;}
.links-grid{gap:13px;}
.link-card{padding:19px;}
.contact-box{padding:40px;}
.menu-inner{padding:105px 0 35px;}
.menu-top{margin-bottom:30px;}
.menu-navigation{gap:6px 25px;}
.menu-navigation a{padding:15px 10px;}
.menu-bottom{padding-top:35px;}
@media(max-width:1000px){section{padding:65px 0;}.hero{padding-top:118px;}.hero-grid,.about-grid{gap:32px;}.priority-grid,.blog-grid,.video-grid{grid-template-columns:repeat(2,1fr);}.links-grid{grid-template-columns:repeat(2,1fr);}.gallery-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:700px){section{padding:52px 0;}.hero{padding-top:108px;min-height:auto;}.hero-grid,.about-grid,.education-grid,.priority-grid,.blog-grid,.video-grid{grid-template-columns:1fr;gap:14px;}.hero-grid{gap:28px;}.hero-description{font-size:15px;}.hero-buttons{margin-top:18px;gap:9px;}.section-heading{margin-bottom:25px;}.section-heading h2{font-size:32px;}.timeline-item{padding-left:48px;margin-bottom:14px;}.timeline::before{left:12px;}.timeline-dot{left:2px;}.timeline-card{padding:17px 18px;}.priority-card{min-height:0;padding:20px;}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:7px;}.gallery-item{height:155px;}.links-grid{grid-template-columns:1fr;gap:10px;}.contact-box{padding:28px 20px;}.menu-navigation{grid-template-columns:1fr;gap:0;}.menu-navigation a{padding:12px 8px;}.menu-bottom{padding-top:25px;flex-direction:column;align-items:flex-start;}}


/* =========================================================
   PROFILE SECTION — THREE HORIZONTAL DETAIL CARDS + PLAIN CONTENT
   ========================================================= */

.about-grid{
    display:flex;
    flex-direction:column;
    gap:28px;
    align-items:stretch;
}

.profile-card{
    width:100%;
    padding:26px 30px;
    position:relative;
    overflow:hidden;
    background:
        linear-gradient(135deg,
            rgba(142,21,37,.20),
            rgba(255,255,255,.045) 48%,
            rgba(18,59,112,.18)
        );
}

.profile-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:5px;
    height:100%;
    background:linear-gradient(180deg,#ff6477,#174c83);
    border-radius:0 5px 5px 0;
}

.profile-card h3{
    position:relative;
    padding-left:8px;
    margin-bottom:20px;
}

.profile-list{
    list-style:none;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
}

.profile-list li{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:125px;
    padding:18px 20px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:16px;
    background:
        linear-gradient(145deg,
            rgba(255,255,255,.065),
            rgba(255,255,255,.025)
        );
    box-shadow:0 12px 30px rgba(0,0,0,.12);
    transition:.3s ease;
}

.profile-list li:hover{
    transform:translateY(-4px);
    border-color:rgba(255,100,119,.28);
    background:rgba(255,255,255,.055);
}

.profile-list strong{
    display:block;
    margin-bottom:7px;
    color:#ff8290;
    font-size:13px;
}

.profile-list span{
    color:#eee;
    line-height:1.65;
}

.content-box{
    width:100%;
    padding:4px 0 0;
    color:#d7d0d0;
}

.content-box h3{
    position:relative;
    margin:30px 0 12px;
    padding:0;
    border:0;
    border-radius:0;
    background:none;
    font-size:21px;
    color:#fff;
}

.content-box p{
    margin-bottom:15px;
    padding:0;
    border:0;
    border-radius:0;
    background:none;
    box-shadow:none;
    line-height:1.85;
    transition:none;
}

.content-box p:hover{
    transform:none;
    border-color:transparent;
    background:none;
}

.content-box p:first-child{
    border-top:0;
}

@media(max-width:1000px){
    .profile-list{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:700px){
    .profile-card{
        padding:23px 20px;
    }

    .profile-list{
        grid-template-columns:1fr;
        gap:12px;
    }

    .profile-list li{
        min-height:0;
        padding:15px 17px;
    }

    .content-box{
        padding-top:2px;
    }

    .content-box h3{
        font-size:19px;
        margin:24px 0 10px;
        padding:0;
    }

    .content-box p{
        padding:0;
        line-height:1.8;
    }
}



/* =========================================================
   PROFILE SECTION — SUBTLE 3D TITLE + JUSTIFIED DESCRIPTION
   ========================================================= */
.content-box h3{
    position:relative;
    display:flex;
    align-items:center;
    gap:12px;
    margin:30px 0 15px;
    padding:10px 14px 10px 0;
    color:#fff;
    line-height:1.35;
    border:0;
    background:transparent;
    text-shadow:0 2px 7px rgba(0,0,0,.35);
}

.content-box h3::before{
    content:"";
    display:block;
    width:5px;
    min-width:5px;
    height:34px;
    border-radius:2px;
    background:linear-gradient(180deg,#ff6b7d,#a51d34 52%,#174c83);
    box-shadow:
        2px 2px 0 rgba(0,0,0,.28),
        4px 4px 8px rgba(0,0,0,.22),
        0 0 10px rgba(255,100,119,.12);
}

.content-box h3::after{
    content:"";
    flex:1;
    height:1px;
    margin-left:2px;
    background:linear-gradient(90deg,
        rgba(255,255,255,.45),
        rgba(255,255,255,.16) 55%,
        rgba(255,255,255,.02)
    );
    box-shadow:0 2px 2px rgba(0,0,0,.28);
    transform:translateY(5px);
}

.content-box p{
    margin-bottom:15px;
    padding:18px 20px;
    text-align:justify;
    text-justify:inter-word;
    border:1px solid rgba(255,255,255,.09);
    border-left:3px solid rgba(255,100,119,.38);
    border-radius:12px;
    background:linear-gradient(135deg,
        rgba(255,255,255,.045),
        rgba(18,59,112,.08)
    );
    box-shadow:
        0 10px 24px rgba(0,0,0,.14),
        inset 0 1px 0 rgba(255,255,255,.035);
    line-height:1.85;
}

.content-box p:hover{
    border-color:rgba(255,255,255,.13);
    border-left-color:rgba(255,100,119,.55);
    background:linear-gradient(135deg,
        rgba(255,255,255,.055),
        rgba(18,59,112,.11)
    );
}

@media(max-width:700px){
    .content-box h3{
        gap:9px;
        padding-right:6px;
        font-size:19px;
    }

    .content-box h3::before{
        width:4px;
        min-width:4px;
        height:30px;
    }

    .content-box p{
        padding:15px 16px;
        line-height:1.8;
    }
}



/* =========================================================
   NEWS — MINIMAL ADDITION
========================================================= */

.news-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:17px;
}

.news-card{
    padding:25px;
    border-radius:20px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.11);
    transition:.35s;
}

.news-card:hover{
    transform:translateY(-8px);
    box-shadow:var(--shadow);
    border-color:rgba(255,90,110,.35);
}

.news-date{
    color:#ff7182;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:9px;
}

.news-card h3{
    font-size:21px;
    line-height:1.4;
    margin-bottom:12px;
}

 .news-card p{
    color:#c8c2c2;
    font-size:14px;
}
.news-source{
    color:#9f9999;
    font-size:12px;
    margin-top:16px;
    margin-bottom:15px;
}
.news-read-more{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#fff;
    text-decoration:none;
    font-size:13px;
    font-weight:600;
    padding:10px 14px;
    border-radius:10px;
    border:1px solid rgba(255,255,255,.13);
    background:rgba(255,255,255,.05);
    transition:.3s;
}
.news-read-more:hover{
    transform:translateY(-2px);
    border-color:rgba(255,90,110,.45);
    color:#ff7182;
}
.news-read-more i{
    font-size:11px;
}

@media(max-width:1000px){
    .news-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:700px){
    .news-grid{
        grid-template-columns:1fr;
        gap:14px;
    }
}



/* =========================================================
   MOBILE / TABLET MENU INTERACTION FIX
========================================================= */

.site-header{
    z-index:10000;
}

.menu-toggle{
    z-index:10001;
    position:relative;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
}

.fullscreen-menu{
    z-index:9500;
    pointer-events:none;
    -webkit-overflow-scrolling:touch;
}

.fullscreen-menu.open{
    pointer-events:auto;
}

.menu-navigation a,
.language-btn{
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
}

@media(max-width:700px){
    .fullscreen-menu{
        width:100%;
        height:100dvh;
        min-height:100dvh;
    }

    .menu-inner{
        min-height:100%;
        height:auto;
        padding-top:100px;
        padding-bottom:30px;
    }

    .menu-navigation{
        width:100%;
    }

    .menu-navigation a{
        min-height:48px;
    }
}



/* =========================================================
   HEADER BRAND / LOGO — FINAL RESPONSIVE IDENTITY
   ========================================================= */
.brand{
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:2px;
    max-width:calc(100% - 78px);
    min-width:0;
    position:relative;
    padding-left:14px;
    line-height:1.25;
}

.brand::before{
    content:"";
    position:absolute;
    left:0;
    top:4px;
    bottom:4px;
    width:3px;
    border-radius:3px;
    background:linear-gradient(180deg,#ff6477,#a51d34 55%,#174c83);
    box-shadow:0 0 10px rgba(255,90,110,.35);
}

.brand .brand-name{
    display:block;
    font-size:clamp(16px,1.7vw,22px);
    line-height:1.2;
    color:#fff;
    font-weight:800;
    letter-spacing:.25px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.brand .brand-role{
    display:block;
    font-size:clamp(9px,.85vw,12px);
    line-height:1.45;
    color:#e1dada;
    font-weight:600;
    letter-spacing:.15px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.brand .brand-party{
    color:#ff9aa7;
    font-weight:500;
}

@media(max-width:700px){
    .brand{
        gap:1px;
        padding-left:10px;
        max-width:calc(100% - 66px);
    }

    .brand::before{
        width:2px;
        top:3px;
        bottom:3px;
    }

    .brand .brand-name{
        font-size:clamp(14px,4.4vw,18px);
        letter-spacing:0;
    }

    .brand .brand-role{
        font-size:clamp(7px,2.25vw,10px);
        line-height:1.35;
    }
}

@media(max-width:430px){
    .brand{
        max-width:calc(100% - 62px);
        padding-left:8px;
    }

    .brand .brand-name{
        font-size:clamp(13px,4.3vw,16px);
    }

    .brand .brand-role{
        font-size:clamp(6.5px,2.05vw,9px);
    }
}

/* =========================================================
   WORDPRESS COMPATIBILITY ADDITIONS (no visual change)
========================================================= */

/* Admin bar: keep fixed header + fullscreen menu below it */
body.admin-bar .site-header{ top:32px; }
body.admin-bar .fullscreen-menu{ top:32px; }
@media (max-width:782px){
    body.admin-bar .site-header{ top:46px; }
    body.admin-bar .fullscreen-menu{ top:46px; }
}
#wpadminbar{ position:fixed; }
#wpadminbar *{ line-height:normal; }

/* Accessibility helper */
.screen-reader-text{
    border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%);
    height:1px; margin:-1px; overflow:hidden; padding:0;
    position:absolute; width:1px; word-wrap:normal !important;
}
.screen-reader-text:focus{
    background:#fff; color:#000; clip:auto; clip-path:none;
    display:block; height:auto; width:auto; padding:12px 20px;
    left:8px; top:8px; z-index:100000; font-size:14px;
}

/* Core alignment classes */
.alignleft{ float:left; margin:0 1.5em 1em 0; }
.alignright{ float:right; margin:0 0 1em 1.5em; }
.aligncenter{ display:block; margin-left:auto; margin-right:auto; }
.wp-caption{ max-width:100%; }
.wp-caption-text{ font-size:13px; color:var(--muted); }

/* Fallback templates (pages / posts / 404 / search) */
.bpw-page{ padding-top:150px; min-height:70vh; }
.bpw-page .entry-title{
    font-family:"Playfair Display",serif;
    font-size:clamp(32px,5vw,56px);
    line-height:1.15; margin-bottom:28px;
}
.bpw-page .entry-content{ max-width:860px; }
.bpw-page .entry-content p,
.bpw-page .entry-content ul,
.bpw-page .entry-content ol{ margin-bottom:1.2em; color:var(--text); }
.bpw-page .entry-content a{ color:#df5365; text-decoration:underline; }
.bpw-page .entry-content img{ border-radius:14px; height:auto; }
.bpw-page .entry-content h2,
.bpw-page .entry-content h3{ margin:1.4em 0 .6em; }
.bpw-list article{ padding:22px 0; border-bottom:1px solid rgba(255,255,255,.1); }
.bpw-list h2 a:hover{ color:#df5365; }
