/*
Theme Name:   SSNIDTheft GP Child
Description:  GeneratePress child theme: SSNIDTheft.com header, footer and landing page template.
Template:     generatepress
Version:      1.0.0
Text Domain:  ssnidtheft-child
*/

/* ---------- Design tokens ---------- */
:root{
  --ssn-frame:1040px;               /* ONE width shared by header, body content and footer */
  --ssn-bg:#F5F6FC;--ssn-surface:#fff;--ssn-ink:#1A1647;--ssn-muted:#55587A;
  --ssn-brand:#3B2FD9;--ssn-mint:#27C48A;--ssn-alert:#E5484D;--ssn-line:#DADCEE;--ssn-soft:#E9E8FF;
  --ssn-head:'Bricolage Grotesque',Figtree,system-ui,sans-serif;
  --ssn-body:Figtree,system-ui,sans-serif;
}
@media (prefers-color-scheme:dark){
  :root{--ssn-bg:#12112B;--ssn-surface:#1D1C42;--ssn-ink:#EEF0FF;--ssn-muted:#A9ACD6;--ssn-brand:#8E86FF;--ssn-mint:#4FE0AC;--ssn-alert:#FF7A7E;--ssn-line:#33326B;--ssn-soft:#2A2965}
}

/* ---------- GeneratePress wrapper overrides (site-wide) ---------- */
body.ssn-site #page{max-width:none;margin:0;padding:0}
body.ssn-site:not(.ssn-landing-page) .site-content{max-width:var(--ssn-frame);margin-left:auto;margin-right:auto;width:100%}
body.ssn-site .site-footer{max-width:none;margin:0;padding:0;background:transparent}
/* failsafe: hide GeneratePress' own header/navigation if any of it still renders */
body.ssn-site .site-header,body.ssn-site .main-navigation,body.ssn-site .mobile-menu-control-wrapper{display:none}
body.ssn-landing-page{background:var(--ssn-bg)}

/* ---------- Shared frame ---------- */
.ssn-wrap{max-width:var(--ssn-frame);margin:0 auto;padding:0 20px;width:100%}
.ssn-header,.ssn-landing,.ssn-footer{font:17px/1.6 var(--ssn-body);color:var(--ssn-ink)}
.ssn-header *,.ssn-landing *,.ssn-footer *{box-sizing:border-box}
.ssn-header :focus-visible,.ssn-landing :focus-visible,.ssn-footer :focus-visible{outline:3px solid var(--ssn-mint);outline-offset:2px}

/* ---------- Buttons ---------- */
.ssn-header .ssn-btn,.ssn-landing .ssn-btn{display:inline-block;background:var(--ssn-alert);color:#fff;font-weight:700;border:0;border-radius:99px;padding:12px 22px;text-decoration:none;font-size:1rem;cursor:pointer;white-space:nowrap}
.ssn-header .ssn-btn:hover,.ssn-landing .ssn-btn:hover,.ssn-header .ssn-btn:focus,.ssn-landing .ssn-btn:focus{background:var(--ssn-alert);color:#fff;text-decoration:none;filter:brightness(.93)}
.ssn-header .ssn-btn--sm{padding:8px 14px;font-size:.9rem}

/* ---------- Header ---------- */
.ssn-header{position:sticky;top:0;z-index:50;background:var(--ssn-bg);border-bottom:1px solid var(--ssn-line)}
.admin-bar .ssn-header{top:32px}
@media (max-width:782px){.admin-bar .ssn-header{top:46px}}
@media (max-width:600px){.admin-bar .ssn-header{top:0}}
.ssn-bar{display:flex;align-items:center;gap:16px;padding-top:10px;padding-bottom:10px}
.ssn-logo{display:block;line-height:0;text-decoration:none}
.ssn-logo img{display:block;height:44px;width:auto;background:#fff;border-radius:10px;padding:4px 10px}
.ssn-nav{display:flex;gap:4px;overflow-x:auto;flex:1;scrollbar-width:none}
.ssn-nav a{white-space:nowrap;padding:6px 10px;border-radius:99px;color:var(--ssn-ink);text-decoration:none;font-size:.9rem;font-weight:500}
.ssn-nav a:hover,.ssn-nav a:focus{background:var(--ssn-soft);color:var(--ssn-ink);text-decoration:none}
.ssn-header .ssn-menu-btn{display:none;margin-left:auto;align-items:center;gap:6px;font:700 .95rem var(--ssn-body);color:var(--ssn-ink);background:var(--ssn-soft);border:0;border-radius:99px;padding:10px 16px;cursor:pointer;box-shadow:none}
.ssn-header .ssn-menu-btn:hover,.ssn-header .ssn-menu-btn:focus{background:var(--ssn-soft);color:var(--ssn-ink)}
@media (max-width:760px){
  .ssn-cta-desk{display:none!important}
  .ssn-header .ssn-menu-btn{display:inline-flex}
  .ssn-header .ssn-nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--ssn-bg);border-bottom:1px solid var(--ssn-line);padding:8px 20px 16px;max-height:calc(100vh - 70px);overflow-y:auto}
  .ssn-header .ssn-nav.open{display:flex}
  .ssn-header .ssn-nav a{padding:14px 8px;border-radius:10px;font-size:1.05rem;border-bottom:1px solid var(--ssn-line)}
}

/* ---------- Landing page body ---------- */
.ssn-landing{width:100%;flex:1 1 100%;min-width:0;background:var(--ssn-bg)}
.ssn-landing [id]{scroll-margin-top:84px}
.ssn-landing h1,.ssn-landing h2,.ssn-landing h3{font-family:var(--ssn-head);line-height:1.1;margin:0 0 .5em;letter-spacing:-.02em;color:inherit}
.ssn-landing h1{font-size:clamp(2.3rem,7vw,4.2rem);font-weight:800}
.ssn-landing h2{font-size:clamp(1.6rem,4vw,2.3rem);font-weight:800}
.ssn-landing h3{font-size:1.15rem;font-weight:600}
.ssn-landing p{margin:1em 0}
.ssn-landing ul,.ssn-landing ol{margin:1em 0;padding-left:1.4em}
.ssn-landing a{color:var(--ssn-brand);text-decoration:underline}
.ssn-section{padding:56px 0}
.ssn-hero{padding:64px 0 48px}
.ssn-hero p.ssn-lead{font-size:1.25rem;max-width:34em;color:var(--ssn-muted)}
.ssn-hero h1 em{font-style:normal;background:linear-gradient(transparent 62%,var(--ssn-mint) 62%)}
.ssn-landing .ssn-note{font-size:.92rem;color:var(--ssn-muted)}
.ssn-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:20px 0}
.ssn-landing .ssn-pick button{font:600 1rem var(--ssn-body);text-align:left;padding:16px;border-radius:16px;border:2px solid var(--ssn-line);background:var(--ssn-surface);color:var(--ssn-ink);cursor:pointer;min-height:76px;box-shadow:none}
.ssn-landing .ssn-pick button:hover,.ssn-landing .ssn-pick button:focus{background:var(--ssn-surface);color:var(--ssn-ink);border-color:var(--ssn-brand)}
.ssn-landing .ssn-pick button[aria-pressed=true]{border-color:var(--ssn-brand);background:var(--ssn-soft)}
.ssn-pick small{display:block;font-weight:400;color:var(--ssn-muted);margin-top:2px}
#ssn-answer{background:var(--ssn-surface);border:2px solid var(--ssn-brand);border-radius:20px;padding:24px;min-height:120px}
#ssn-answer ol{padding-left:1.2em;margin:.5em 0 0}
#ssn-answer li{margin:.5em 0}
.ssn-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;align-items:start}
.ssn-landing .ssn-check{list-style:none;padding:0;margin:0}
.ssn-check li{border-bottom:1px solid var(--ssn-line);margin:0}
.ssn-check label{display:flex;gap:12px;padding:12px 4px;cursor:pointer;align-items:flex-start}
.ssn-check input{width:22px;height:22px;accent-color:var(--ssn-mint);margin-top:2px;flex:none}
.ssn-check input:checked+span{text-decoration:line-through;color:var(--ssn-muted)}
.ssn-prog{height:10px;background:var(--ssn-line);border-radius:9px;overflow:hidden;margin:10px 0 6px}
.ssn-prog i{display:block;height:100%;width:0;background:var(--ssn-mint);transition:width .3s}
.ssn-clusters{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}
.ssn-clusters>div{border-top:4px solid var(--ssn-brand);padding-top:10px}
.ssn-landing .ssn-clusters ul{padding:0;margin:0;list-style:none}
.ssn-clusters li{padding:3px 0;font-size:.97rem}
.ssn-res{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.ssn-landing .ssn-res a{display:block;padding:16px;border-radius:14px;background:var(--ssn-surface);border:1px solid var(--ssn-line);text-decoration:none;color:var(--ssn-ink)}
.ssn-landing .ssn-res a:hover{border-color:var(--ssn-brand)}
.ssn-res b{display:block}
.ssn-res span{font-size:.88rem;color:var(--ssn-muted)}
.ssn-band{background:var(--ssn-ink);color:var(--ssn-bg)}
.ssn-landing .ssn-band a{color:var(--ssn-mint)}
.ssn-landing .ssn-band .ssn-res a{color:var(--ssn-ink)}
.ssn-warn{border-left:6px solid var(--ssn-alert);background:var(--ssn-surface);padding:16px 20px;border-radius:0 14px 14px 0}

/* ---------- Footer ---------- */
.ssn-footer{padding:40px 0;background:var(--ssn-bg);border-top:1px solid var(--ssn-line);font-size:.92rem;color:var(--ssn-muted)}
.ssn-footer .ssn-nav{flex-wrap:wrap;overflow:visible;margin:12px 0}
.ssn-footer p{margin:1em 0 0}

@media (prefers-reduced-motion:reduce){.ssn-header *,.ssn-landing *{transition:none!important}html{scroll-behavior:auto!important}}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
