/*
Theme Name: Blind Repair Tech & More
Version: 2.8
Description: Lightweight responsive theme for Blind Repair Tech & More.
*/
:root{--navy:#062b63;--blue:#0758a6;--purple:#5d4bd8;--cyan:#31b7e8;--light:#eef7ff;--ink:#17243a;--border:#d9e4ef}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.6}a{color:var(--blue)}.wrap{max-width:1180px;margin:auto;padding:0 22px}.top{padding:10px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:20px}.top img{max-height:78px;width:auto;height:auto;display:block}.contact{font-size:14px;display:flex;gap:20px}.nav{background:var(--navy)}.nav .wrap{display:flex;justify-content:space-between;align-items:center}.nav ul{list-style:none;display:flex;gap:4px;margin:0;padding:0}.nav li a{color:white;text-decoration:none;padding:14px 15px;display:block;font-weight:700}.btn{display:inline-block;background:var(--purple);color:white!important;padding:12px 18px;border-radius:7px;text-decoration:none;font-weight:800}.hero{color:white;padding:80px 0;background:linear-gradient(90deg,rgba(4,31,72,.94),rgba(4,31,72,.65)),url('assets/hero.webp') center/cover}.hero h1{font-size:clamp(36px,5vw,58px);line-height:1.05;max-width:850px}.hero p{font-size:20px;max-width:720px}.section{padding:60px 0}.alt{background:var(--light)}h2{color:var(--navy);font-size:34px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{padding:22px;border:1px solid var(--border);border-radius:10px;box-shadow:0 6px 18px #14325a12}.band{background:linear-gradient(90deg,var(--navy),var(--blue));color:white;padding:38px 0}.band h2{color:white}.footer{background:#061d42;color:#dbe8f8;padding:42px 0}.footer a{color:white}@media(max-width:800px){.top,.nav .wrap{flex-direction:column}.contact{flex-wrap:wrap;justify-content:center}.nav ul{flex-wrap:wrap;justify-content:center}.grid{grid-template-columns:1fr 1fr}.hero{padding:55px 0}}@media(max-width:520px){.grid{grid-template-columns:1fr}}

/* Service cards are intentionally clickable on the Services page. */
.brt-service-card-link { cursor: pointer; }
.brt-service-card-link:focus { outline: 2px solid currentColor; outline-offset: 3px; }

/* Navigation uses only the WordPress Primary Navigation/Main Menu. */
.nav .brt-primary-menu { list-style:none; display:flex; gap:4px; margin:0; padding:0; }
.nav .brt-primary-menu > li { position:relative; }
.nav .brt-primary-menu > li > a { color:white; text-decoration:none; padding:14px 15px; display:block; font-weight:700; }
.nav .brt-primary-menu ul { list-style:none; margin:0; padding:0; }
@media(max-width:800px){.nav .brt-primary-menu{flex-wrap:wrap;justify-content:center}}


/* Blind Repair Tech v1.7 — navigation styling only */
.site-header .main-navigation,
.site-header nav {
    width: 100%;
}

.site-header .main-navigation ul,
.site-header nav ul {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 6px;
}

.site-header .main-navigation > ul > li > a,
.site-header nav > ul > li > a {
    white-space: nowrap;
    padding: 10px 12px;
    line-height: 1.2;
}

.site-header .main-navigation .sub-menu,
.site-header nav .sub-menu {
    min-width: 280px;
    white-space: normal;
}

.site-header .main-navigation .sub-menu a,
.site-header nav .sub-menu a {
    white-space: normal;
    line-height: 1.3;
    padding: 10px 14px;
}

.site-header .main-navigation .menu-item-has-children > a::after,
.site-header nav .menu-item-has-children > a::after {
    margin-left: 6px;
}

@media (max-width: 1100px) {
    .site-header .main-navigation > ul > li > a,
    .site-header nav > ul > li > a {
        padding-left: 8px;
        padding-right: 8px;
        font-size: 0.94rem;
    }
}

@media (max-width: 820px) {
    .site-header .main-navigation ul,
    .site-header nav ul {
        flex-wrap: wrap;
    }
}


/* Blind Repair Tech v1.8 — Services dropdown behavior */
.site-header .main-navigation ul,
.site-header nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-header .main-navigation > ul > li,
.site-header nav > ul > li {
    position: relative;
}

.site-header .main-navigation > ul > li > .sub-menu,
.site-header nav > ul > li > .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9999;
    display: none;
    min-width: 300px;
    margin: 0;
    padding: 6px 0;
    background: #fff;
    box-shadow: 0 8px 20px rgba(0,0,0,.15);
}

.site-header .main-navigation > ul > li:hover > .sub-menu,
.site-header .main-navigation > ul > li:focus-within > .sub-menu,
.site-header nav > ul > li:hover > .sub-menu,
.site-header nav > ul > li:focus-within > .sub-menu {
    display: block;
}

.site-header .main-navigation > ul > li > .sub-menu > li,
.site-header nav > ul > li > .sub-menu > li {
    display: block;
    width: 100%;
    position: relative;
}

.site-header .main-navigation > ul > li > .sub-menu > li > a,
.site-header nav > ul > li > .sub-menu > li > a {
    display: block;
    width: 100%;
    white-space: normal;
    padding: 10px 14px;
    box-sizing: border-box;
}

.site-header .main-navigation > ul > li > .sub-menu > li > a:hover,
.site-header nav > ul > li > .sub-menu > li > a:hover {
    background: rgba(0,0,0,.05);
}

/* Hide submenu styling only on mobile; mobile menus can expand normally. */
@media (max-width: 820px) {
    .site-header .main-navigation > ul > li > .sub-menu,
    .site-header nav > ul > li > .sub-menu {
        position: static;
        min-width: 0;
        box-shadow: none;
    }
}


/* Blind Repair Tech v1.9 — actual navigation dropdown styling */
.nav #brt-primary-menu {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 4px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav #brt-primary-menu > li {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
}

.nav #brt-primary-menu > li > a {
    display: block;
    white-space: nowrap;
    padding: 12px 11px;
    line-height: 1.2;
}

.nav #brt-primary-menu > li.menu-item-has-children > a::after {
    content: " ▾";
    font-size: .8em;
}

.nav #brt-primary-menu > li > ul.sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 99999;
    min-width: 310px;
    margin: 0;
    padding: 6px 0;
    list-style: none;
    background: #fff;
    border: 1px solid rgba(0,0,0,.12);
    box-shadow: 0 8px 20px rgba(0,0,0,.16);
}

.nav #brt-primary-menu > li:hover > ul.sub-menu,
.nav #brt-primary-menu > li:focus-within > ul.sub-menu {
    display: block;
}

.nav #brt-primary-menu > li > ul.sub-menu > li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}

.nav #brt-primary-menu > li > ul.sub-menu > li > a {
    display: block;
    box-sizing: border-box;
    width: 100%;
    padding: 10px 14px;
    white-space: normal;
    line-height: 1.3;
}

.nav #brt-primary-menu > li > ul.sub-menu > li > a:hover,
.nav #brt-primary-menu > li > ul.sub-menu > li > a:focus {
    background: rgba(0,0,0,.06);
}

@media (max-width: 1100px) {
    .nav #brt-primary-menu > li > a {
        padding-left: 8px;
        padding-right: 8px;
        font-size: .94rem;
    }
}

@media (max-width: 820px) {
    .nav #brt-primary-menu {
        flex-wrap: wrap;
    }

    .nav #brt-primary-menu > li > ul.sub-menu {
        position: static;
        min-width: 0;
        box-shadow: none;
    }
}


/* Blind Repair Tech v2.0 — fix Services dropdown link visibility */
.nav #brt-primary-menu > li > ul.sub-menu > li > a,
.nav #brt-primary-menu > li > ul.sub-menu > li > a:visited {
    color: var(--navy) !important;
    background: #fff;
    text-decoration: none;
    opacity: 1;
    visibility: visible;
}

.nav #brt-primary-menu > li > ul.sub-menu > li > a:hover,
.nav #brt-primary-menu > li > ul.sub-menu > li > a:focus {
    color: var(--navy) !important;
    background: #eef7ff;
    text-decoration: none;
}


/* Blind Repair Tech v2.1 — fallback page content styling */
.lead {
    font-size: 1.15rem;
    line-height: 1.6;
}

.faq-item {
    margin: 0 0 12px;
    padding: 0;
    border: 1px solid rgba(0,0,0,.12);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

.faq-item summary {
    cursor: pointer;
    padding: 16px 18px;
    font-weight: 700;
    line-height: 1.4;
}

.faq-item p {
    margin: 0;
    padding: 0 18px 18px;
    line-height: 1.6;
}

.section-callout {
    margin-top: 28px;
    padding: 24px;
    border-radius: 10px;
    background: rgba(238,247,255,.9);
}

.section-callout h2 {
    margin-top: 0;
}

/* Mobile navigation: one visible control, with all service links exposed on opening. */
.brt-menu-toggle { display:none; }
@media (max-width:820px) {
 .nav .wrap { align-items:stretch; }
 .brt-menu-toggle { display:block; width:100%; padding:13px 16px; color:#fff; background:var(--navy); border:1px solid rgba(255,255,255,.7); border-radius:5px; text-align:left; font:inherit; font-weight:700; cursor:pointer; }
 .brt-menu-toggle::after { content:'▾'; float:right; }
 .brt-menu-toggle[aria-expanded="true"]::after { content:'▴'; }
 .nav #brt-primary-menu { display:none; width:100%; margin:0; padding:8px 0 12px; flex-direction:column; align-items:stretch; }
 .nav #brt-primary-menu.is-open { display:flex; }
 .nav #brt-primary-menu > li > a { white-space:normal; padding:12px 15px; }
 .nav #brt-primary-menu > li > ul.sub-menu { display:block; position:static; width:100%; min-width:0; padding:0 0 5px 15px; border:0; box-shadow:none; background:transparent; }
 .nav #brt-primary-menu > li > ul.sub-menu > li > a,
 .nav #brt-primary-menu > li > ul.sub-menu > li > a:visited { padding:9px 15px; color:#fff !important; background:transparent; }
 .nav #brt-primary-menu > li > ul.sub-menu > li > a:hover,
 .nav #brt-primary-menu > li > ul.sub-menu > li > a:focus { color:var(--navy) !important; background:#eef7ff; }
}

/* A separate Services control keeps the dropdown open for pointer and keyboard use. */
@media (min-width:821px) {
 .nav #brt-primary-menu > li.menu-item-has-children > a { padding-right:34px; }
 .nav #brt-primary-menu > li.menu-item-has-children > a::after { content:none; }
 .nav #brt-primary-menu > li.submenu-open > ul.sub-menu { display:block; }
 .nav #brt-primary-menu > li > ul.sub-menu { max-height:80vh; overflow-y:auto; }
 .brt-submenu-toggle { position:absolute; top:0; right:0; height:100%; min-width:30px; padding:0 6px; color:#fff; background:transparent; border:0; font:inherit; cursor:pointer; }
 .brt-submenu-toggle:focus-visible { outline:2px solid #fff; outline-offset:-3px; }
}
@media (max-width:820px) { .brt-submenu-toggle { display:none; } }
