/*
Theme Name: Cash Advance USA 2026
Theme URI: https://www.cashadvanceusa.net/
Author: Loans.net Network
Description: Replacement for the 2014 "csa" theme. Same templates, widget areas, menu locations and heading levels; new blue/amber design, new logo, CTA buttons and disclosure footer. No content changes.
Version: 2.0.2
Requires at least: 6.3
Requires PHP: 7.4
Text Domain: csa
*/
/* Layout: white header with blue Apply button; hero = photo left with a deep curved edge, headline + amber CTA right; content + rail; blue steps band with phone mockup; light footer. */
:root{
  --royal:#0d5bf2; --royal-deep:#0a49c9; --navy:#0a2a84; --band:#0b3ac4; --band-deep:#08298f;
  --amber:#ffb320; --amber-deep:#f29d00; --amber-ink:#10204f;
  --sky:#eef3ff; --line:#dbe3f5; --paper:#ffffff; --ink:#363e52; --ink-soft:#5d6680;
  --font:"Figtree","Segoe UI",Arial,sans-serif;
  --r-sm:8px; --r-md:16px; --max:1200px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.62}
a{color:var(--royal)}
img{max-width:100%;height:auto}
.wrap{max-width:var(--max);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3,h4{font-family:var(--font);text-wrap:balance;color:var(--navy);line-height:1.18;margin:0}
:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link:focus{position:fixed!important;top:8px;left:8px;width:auto;height:auto;clip:auto;z-index:100;background:var(--paper);padding:10px 14px;border-radius:var(--r-sm)}

/* logo */
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);flex:none}
.logo svg{width:40px;height:40px;flex:none}
.logo span{font-weight:800;font-size:21px;letter-spacing:-.02em;line-height:1;white-space:nowrap}
.logo b{color:var(--royal);font-weight:800}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:var(--paper);box-shadow:0 1px 0 var(--line)}
.admin-bar .site-header{top:32px}
.site-header .wrap{display:flex;align-items:center;gap:20px;min-height:76px;position:relative}
.nav{margin-left:auto}
.nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.nav a{display:block;padding:10px 12px;text-decoration:none;color:var(--navy);font-weight:600;font-size:16px;border-radius:var(--r-sm)}
.nav a:hover{background:var(--sky)}
.nav .current-menu-item>a{color:var(--royal)}
.nav .menu-apply>a{background:var(--royal);color:#fff;font-weight:700;padding:12px 26px;margin-left:12px}
.nav .menu-apply>a:hover{background:var(--royal-deep)}
.burger{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:var(--r-sm);width:46px;height:46px;cursor:pointer;padding:0}
.burger span,.burger span::before,.burger span::after{display:block;width:20px;height:2px;background:var(--navy);margin:0 auto;position:relative;content:""}
.burger span::before{position:absolute;top:-6px}.burger span::after{position:absolute;top:6px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font);font-weight:800;font-size:18px;line-height:1.2;text-decoration:none;border-radius:var(--r-sm);padding:16px 36px;background:var(--amber);color:var(--amber-ink);transition:background .15s,transform .15s}
.btn:hover{background:var(--amber-deep);color:var(--amber-ink)}
.btn:active{transform:translateY(1px)}

/* hero */
.hero{background:var(--paper);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;min-height:500px}
.hero-photo{order:-1;align-self:stretch;position:relative;min-height:360px;border-radius:0 0 260px 0;overflow:hidden;background:var(--sky)}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 40%}
.hero-copy{padding:48px max(16px,env(safe-area-inset-right,0px)) 56px 56px;max-width:600px}
.hero h2{font-size:22px;font-weight:700;color:var(--royal);margin-bottom:10px}
.hero h3{font-size:clamp(36px,4.4vw,54px);font-weight:800;letter-spacing:-.025em;line-height:1.05}
.hero h3 br{display:none}
.hero h3 span{margin-left:.26em}
.hero .btn{margin-top:30px}

/* main */
.main .layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:64px;padding-block:64px 80px}
.entry-col{min-width:0;max-width:720px}
.entry h1,.page-title{font-size:clamp(30px,3.4vw,40px);font-weight:800;letter-spacing:-.02em;margin-bottom:18px}
.entry h2{font-size:26px;font-weight:800;margin:38px 0 10px}
.entry h3{font-size:22px;font-weight:800;margin:32px 0 8px}
.entry h4{font-size:19px;margin:28px 0 8px}
.entry p{margin:0 0 16px}
.entry ul,.entry ol{padding-left:1.3em;margin:0 0 16px}
.entry li{margin-bottom:6px}
.entry a{color:var(--royal);text-underline-offset:3px;font-weight:600}
.entry b,.entry strong{color:var(--navy)}
.entry img{border-radius:var(--r-sm)}
.entry table{border-collapse:collapse;width:100%;display:block;overflow-x:auto;margin:0 0 20px}
.entry th,.entry td{border:1px solid var(--line);padding:8px 12px;text-align:left}
.alignleft{float:left;margin:4px 20px 12px 0}
.alignright{float:right;margin:4px 0 12px 20px}
.aligncenter{display:block;margin:0 auto 16px}
.wp-caption{max-width:100%}
.wp-caption-text{font-size:14px;color:var(--ink-soft)}
.entry-footer{margin-top:24px;font-size:14px}
.summary-item{padding:20px 0;border-bottom:1px solid var(--line)}
.summary-item .entry-title{font-size:22px;margin:0 0 6px}
.summary-item .entry-title a{text-decoration:none}

/* rail */
.rail{display:flex;flex-direction:column;gap:20px;min-width:0}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px}
.apply-card{background:linear-gradient(160deg,var(--royal),var(--navy));border:0;position:sticky;top:100px;padding:26px 24px}
.apply-card .btn{width:100%}
.rail .widget-title{font-size:19px;font-weight:800;margin-bottom:10px}
.rail ul{list-style:none;margin:0;padding:0}
.rail li a{display:block;padding:10px 0;border-top:1px solid var(--line);text-decoration:none;color:var(--ink);font-weight:600;line-height:1.35}
.rail li:first-child a{border-top:0}
.rail li a:hover{color:var(--royal)}
.rail .widget-title~ul li a,.rail .widget-title~* li a{color:var(--navy);font-weight:700}
#pages_by_tax-2{background:var(--sky);border-color:transparent}
#pages_by_tax-2 ul{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}
#pages_by_tax-2 li a{font-size:15px;border-color:#d3ddf3}
#pages_by_tax-2 li:nth-child(2) a{border-top:0}

/* FAQ accordion, ready for later content: <details class="faq"><summary>Q</summary><div>A</div></details> */
.faq{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:16px 32px 16px 0;position:relative;font-weight:800;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:24px;color:var(--royal)}
.faq[open] summary::after{content:"\2212"}
.faq>div{padding:0 0 16px}

/* apply form page: compact hero, no photo */
.page-template-caap-template .hero-grid{grid-template-columns:1fr;min-height:0}
.page-template-caap-template .hero-copy{max-width:none;text-align:center;padding:28px 16px 12px}
.page-template-caap-template .hero .btn{display:none}
.page-template-caap-template .hero h3{font-size:clamp(28px,3vw,38px)}
.main--form .form-wrap{padding-top:24px;padding-bottom:56px;max-width:860px}
.form-title{text-align:center;font-size:clamp(26px,3vw,34px);margin-bottom:24px}
.form-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:20px;min-height:320px}

/* steps band */
#applyDiv{background:linear-gradient(135deg,var(--band),var(--band-deep));color:#fff;overflow:hidden}
.band-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:56px;align-items:center;padding-block:72px}
.steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:30px;counter-reset:s}
.steps li{display:grid;grid-template-columns:52px 1fr;column-gap:20px;align-items:center;counter-increment:s}
.steps li::before{content:counter(s);grid-row:span 2;width:52px;height:52px;border-radius:50%;border:2px solid rgba(255,255,255,.85);display:grid;place-items:center;font-weight:800;font-size:20px;color:#fff}
.steps h2{color:#fff;font-size:26px;font-weight:800;text-transform:capitalize;align-self:end}
.steps p{margin:0;color:#d6e2ff;font-size:18px;align-self:start}
.band-cta{margin-top:40px}
.phone{justify-self:center;width:300px;max-width:100%;aspect-ratio:300/560;background:#fff;border-radius:44px;border:10px solid #0b1a45;box-shadow:0 30px 60px -20px rgba(0,0,0,.45);padding:22px 20px;display:flex;flex-direction:column;gap:16px;position:relative}
.phone::before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:90px;height:20px;border-radius:12px;background:#0b1a45}
.phone .logo{margin-top:22px}
.phone .logo svg{width:30px;height:30px}.phone .logo span{font-size:16px}
.ph-bar{height:12px;border-radius:6px;background:var(--line)}
.ph-bar.w60{width:60%}.ph-bar.w80{width:80%}.ph-bar.w40{width:40%}
.ph-field{height:42px;border-radius:10px;border:1.5px solid var(--line)}
.ph-cta{height:46px;border-radius:10px;background:var(--amber);margin-top:auto}

/* Phone mockup: example application screen image (2026-10-22). */
.phone{padding:0;overflow:hidden}
.phone::before{z-index:2}
.phone .phone-screen{display:block;width:100%;height:100%;object-fit:cover;object-position:top center}

/* footer */
.site-footer{background:var(--sky);color:var(--ink-soft);font-size:15px}
.site-footer .wrap{padding-block:52px 34px;display:flex;flex-direction:column;gap:28px}
.foot-top{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between}
.foot-menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 24px}
.foot-menu a{color:var(--navy);text-decoration:none;font-weight:600}
.foot-menu a:hover{color:var(--royal);text-decoration:underline}
.disclosure{border-top:1px solid var(--line);padding-top:24px;display:grid;gap:10px;max-width:900px;line-height:1.55;font-size:14px}
.disclosure p{margin:0}
.disclosure strong{color:var(--navy);font-size:15px}
.copy{border-top:1px solid var(--line);padding-top:18px;font-size:14px}
.copy p{margin:0}
.sticky-apply{display:none}

@media (max-width:1020px){
  .main .layout{grid-template-columns:1fr;gap:44px}
  .apply-card{position:static}
  .band-grid{grid-template-columns:1fr}
  .phone{display:none}
}
@media (max-width:880px){
  .burger{display:block}
  .nav{position:absolute;left:0;right:0;top:100%;background:var(--paper);box-shadow:0 12px 24px -16px rgba(10,42,132,.35);display:none;padding:8px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px))}
  .nav.open{display:block}
  .nav ul{flex-direction:column;align-items:stretch}
  .nav .menu-apply>a{margin:8px 0 0;text-align:center}
  .hero-grid{grid-template-columns:1fr;min-height:0}
  .hero-photo{min-height:0;aspect-ratio:3/2;border-radius:0 0 140px 0}
  .hero-copy{padding:28px max(16px,env(safe-area-inset-right,0px)) 40px max(16px,env(safe-area-inset-left,0px));max-width:none}
  .logo span{font-size:19px}
  .sticky-apply{display:block;position:fixed;left:0;right:0;bottom:0;z-index:55;background:var(--paper);box-shadow:0 -10px 24px -18px rgba(10,42,132,.5);padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
  .sticky-apply .btn{width:100%;padding-block:14px}
  .site-footer{padding-bottom:76px}
}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
@media (max-width:600px){.admin-bar .site-header{top:0}}
@media (max-width:480px){
  #pages_by_tax-2 ul{grid-template-columns:1fr}
  #pages_by_tax-2 li:nth-child(2) a{border-top:1px solid #d3ddf3}
  .alignleft,.alignright{float:none;margin:0 0 16px}
}
/* Tablet / small laptop: use the hamburger menu so the header never wraps (2026-10-22). */
.nav a{white-space:nowrap}
@media (max-width:1100px){
  .burger{display:block}
  .nav{position:absolute;left:0;right:0;top:100%;background:var(--paper);box-shadow:0 12px 24px -16px rgba(10,42,132,.35);display:none;padding:8px max(16px,env(safe-area-inset-right,0px)) 16px max(16px,env(safe-area-inset-left,0px))}
  .nav.open{display:block}
  .nav ul{flex-direction:column;align-items:stretch}
  .nav .menu-apply>a{margin:8px 0 0;text-align:center}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
