/*
Theme Name: The VPN Bro
Theme URI: https://thevpnbro.com/
Author: The VPN Bro
Author URI: https://thevpnbro.com/
Description: A clean, fast, mobile-first deals theme for NordVPN and Surfshark Black Friday guides for the USA, UK, and Canada. Independent guide, not affiliated with NordVPN or Surfshark.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: thevpnbro
Tags: custom-menu, featured-images, translation-ready
*/
:root{--ink:#14213d;--muted:#4b5a73;--blue:#1450c8;--blue-dark:#0d368f;--green:#0b6b4a;--pale:#eef4ff;--line:#dbe3ec;--warn-bg:#fff4d6;--warn-line:#d9a400}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);line-height:1.7;font-size:17px;background:#fff}
a{color:var(--blue)}a:hover{color:var(--blue-dark)}
.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
.notice-bar{background:var(--warn-bg);border-bottom:2px solid var(--warn-line);padding:10px 16px;font-size:15px;line-height:1.5}
.notice-bar strong{color:#6b4e00}
.wrap{max-width:980px;margin:0 auto;padding:0 18px}
.site-header{border-bottom:1px solid var(--line);padding:18px 0 12px}
.site-brand{font-size:26px;font-weight:800;line-height:1.2}.site-brand a{color:var(--ink);text-decoration:none}
.site-tagline{color:var(--muted);font-size:15px;margin-top:2px}
.header-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.search-form{display:flex;gap:6px;margin-top:12px}.search-form input[type=search]{flex:1;min-width:180px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font-size:16px}
.search-form button,.btn{padding:10px 16px;border:0;border-radius:8px;background:var(--blue);color:#fff;font-size:16px;cursor:pointer;text-decoration:none;display:inline-block}
.search-form button:hover,.btn:hover{background:var(--blue-dark);color:#fff}
.btn-green{background:var(--green)}.btn-green:hover{background:#084f36}
.main-nav{margin-top:14px}.main-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px}
.main-nav a{color:var(--ink);text-decoration:none;font-weight:600;padding:6px 0;display:inline-block}
.main-nav a:hover,.main-nav .current-menu-item a{color:var(--blue);text-decoration:underline}
main{padding:28px 0 48px}
h1{font-size:34px;line-height:1.25;margin:0 0 12px}h2{font-size:25px;line-height:1.3;margin:32px 0 10px}h3{font-size:20px;margin:24px 0 8px}
p{margin:0 0 14px}ul,ol{margin:0 0 16px;padding-left:24px}li{margin-bottom:6px}
table{width:100%;border-collapse:collapse;margin:16px 0;font-size:16px}th,td{border:1px solid var(--line);padding:9px 10px;text-align:left}th{background:var(--pale)}
.callout{background:var(--pale);border-left:4px solid var(--blue);padding:14px 16px;margin:18px 0;border-radius:0 8px 8px 0}
.warn-box{background:var(--warn-bg);border:1px solid var(--warn-line);padding:14px 16px;margin:18px 0;border-radius:8px}
.faqs{border-top:2px solid var(--line);margin-top:32px;padding-top:8px}.faq-q{margin-top:22px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:20px 0}
.card{border:1px solid var(--line);border-radius:10px;padding:16px;background:#fff}
.card h3{margin-top:0}.card a{text-decoration:none;font-weight:700}
/* Tool cards: combined selector, so a later generic .card rule cannot override these. */
.card.vpn-tool{border:2px solid var(--blue);background:var(--pale);padding:20px}
.card.vpn-tool h2{margin-top:0}
.card.vpn-tool label{display:block;margin:12px 0;font-weight:600}
.card.vpn-tool input,.card.vpn-tool select{width:100%;max-width:340px;padding:10px;border:1px solid var(--line);border-radius:8px;font-size:16px;margin-top:4px;background:#fff}
.card.vpn-tool .tool-out{margin-top:16px}
.card.vpn-tool .tool-out[hidden]{display:none}
.breadcrumbs{font-size:14px;color:var(--muted);margin-bottom:14px}.breadcrumbs a{color:var(--muted)}
.meta{color:var(--muted);font-size:14px;margin-bottom:16px}
.site-footer{border-top:1px solid var(--line);padding:24px 0 36px;color:var(--muted);font-size:15px}
.footer-nav ul{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px}.footer-nav a{color:var(--muted)}
@media(max-width:640px){body{font-size:16px}h1{font-size:28px}.site-brand{font-size:23px}.search-form{width:100%}.cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
