/*
Theme Name: ProRata Calculate
Theme URI: https://proratacalculate.co.uk/
Author: ProRata Calculate
Author URI: https://proratacalculate.co.uk/
Description: Standalone theme for proratacalculate.co.uk — recreates the approved static ProRata Calculate site exactly (navy #08152A + blue #196EFD, Poppins). All page and post content is managed in the WordPress editor; the theme supplies the header, footer, templates and calculator scripts.
Version: 1.2.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: proratacalculate
Tags: one-column, custom-logo
*/

/* WordPress template additions — author box on article pages (single.php)
   and the unified minimal blog list on the blog index (home.php).
   This block sits between the theme header and the verbatim static
   stylesheet in the root style.css; assets/css/style.css stays a
   byte-identical copy of the static CSS, as before. */
.author-box{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid #D8E2F0;border-radius:10px;padding:18px 20px;margin:26px 0 6px}
.author-ava{flex:none}
.author-ava img{border-radius:50%;display:block;width:72px;height:72px}
.author-initials{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:#08152A;color:#fff;font-weight:700;font-size:1.3rem}
.author-name{font-weight:700;color:#08152A;font-size:1.08rem;margin:0}
.author-role{color:#0B4FBA;font-size:.85rem;font-weight:600;margin:.1em 0 .35em}
.author-bio{margin:.2em 0 .4em}
.author-more{margin:0;font-size:.92rem}
@media(max-width:600px){.author-box{flex-direction:column;gap:10px}}
.blog-list{margin-top:26px}
.blog-list .recent-item img{width:200px;height:112px;object-fit:cover}
.blog-list h2.blog-list-sub{margin-top:16px}
@media(max-width:600px){.blog-list .recent-item img{width:110px;height:76px}}


:root{--bg:#F6F8FB;--ink:#08152A;--navy:#08152A;--blue:#196EFD;--blue-d:#0B4FBA;--line:#DCE3EC;--card:#FFFFFF;--soft:#EEF2F8;--mut:#5B6B7F;--radius:10px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Poppins,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16.5px;line-height:1.6}
h1,h2,h3{font-family:Poppins,system-ui,sans-serif;line-height:1.2;color:var(--ink)}
h1{font-size:2rem;font-weight:700;margin:.1em 0 .3em}
h2{font-size:1.4rem;font-weight:600;margin:1.3em 0 .45em}
h3{font-size:1.08rem;font-weight:600;margin:1em 0 .3em}
p{margin:.55em 0}
a{color:var(--blue-d);text-underline-offset:3px}a:hover{color:var(--blue)}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
@media(max-width:600px){.wrap{padding:0 14px}}
main>.wrap{padding-top:36px}
@media(max-width:600px){main>.wrap{padding-top:24px}}
main p{max-width:none}.notfound p{margin-left:auto;margin-right:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 14px;z-index:99}
/* header */
.site-head{background:#fff;border-bottom:1px solid var(--line)}
.head-in{display:flex;align-items:center;gap:16px;padding:8px 0}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font-weight:700;font-size:1.12rem;white-space:nowrap}
.logo img{width:34px;height:34px;display:block}
nav.main-nav{margin-left:auto}nav.main-nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0;align-items:center}
nav.main-nav a{display:block;padding:7px 10px;text-decoration:none;color:var(--ink);font-size:.92rem;border-radius:7px}
nav.main-nav a:hover{background:var(--soft);color:var(--blue-d)}
#nav-drop-btn{background:none;border:none;font:inherit;font-size:.92rem;cursor:pointer;padding:7px 10px;color:var(--ink);border-radius:7px}
#nav-drop-btn:hover{background:var(--soft);color:var(--blue-d)}
.nav-drop{position:relative}
.nav-drop-panel{display:none;position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid #D8E2F0;border-radius:var(--radius);width:540px;max-width:88vw;padding:8px;box-shadow:0 10px 26px rgba(8,21,42,.13);z-index:60}
.nav-drop.open .nav-drop-panel{display:grid;grid-template-columns:1fr 1fr;gap:2px 6px}
@media(min-width:861px){.nav-drop:hover .nav-drop-panel,.nav-drop:focus-within .nav-drop-panel{display:grid;grid-template-columns:1fr 1fr;gap:2px 6px}}
.nav-drop-panel a{white-space:normal;padding:7px 9px}
.nav-drop-panel a:hover{background:#EEF3FA;color:var(--blue-d)}
#nav-toggle{display:none;background:none;border:1px solid var(--ink);border-radius:7px;padding:6px 12px;font:inherit;cursor:pointer}
#nav-scrim{position:fixed;inset:0;background:rgba(8,21,42,.4);opacity:0;transition:opacity .25s;z-index:38}
#nav-scrim.show{opacity:1}
@media(max-width:860px){#nav-toggle{display:block;margin-left:auto}nav.main-nav{display:none;position:fixed;top:51px;right:0;left:0;background:#fff;border-bottom:1px solid var(--line);padding:8px 16px 14px;z-index:39}nav.main-nav.open{display:block}nav.main-nav ul{flex-direction:column;align-items:stretch}.nav-drop-panel{position:static;box-shadow:none;border:none;background:transparent;width:auto;max-width:none}.nav-drop.open .nav-drop-panel{display:block}}
.intro{font-size:1.03rem;color:#2A3B52;margin:.2em 0 10px}
.rates-note{font-size:.86rem;color:var(--mut);border-top:1px dashed var(--line);padding-top:9px;margin-top:22px}
/* calculator card */
.calc-shell{border:1px solid var(--line);border-radius:12px;background:var(--card);overflow:hidden;margin:20px 0 22px}
.calc-head{background:var(--navy);color:#fff;padding:13px 18px}.calc-head h2{color:#fff;margin:0;font-size:1.22rem;font-weight:600}.calc-head p{margin:2px 0 0;font-size:.92rem;color:#C9D6EA}
.calc-body{padding:16px 18px 18px}
.calc-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:13px}
.calc-tab,.mode-btn{border:1px solid #B9C6D8;background:#fff;border-radius:8px;padding:6px 14px;font:inherit;font-size:.9rem;cursor:pointer;color:var(--ink)}
.calc-tab.active,.mode-btn.active{background:var(--navy);border-color:var(--navy);color:#fff}
.field{margin-bottom:11px}.field label{display:block;font-weight:600;font-size:.92rem;margin-bottom:3px}
.field input,.field select{width:100%;padding:9px 11px;border:1px solid #AEBBD0;border-radius:8px;font:inherit;background:#fff;color:var(--ink)}
.field input:focus,.field select:focus{outline:3px solid rgba(25,110,253,.35);outline-offset:1px;border-color:var(--blue)}
.field .hint{font-size:.83rem;color:var(--mut);margin-top:3px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}@media(max-width:600px){.two-col{grid-template-columns:1fr}}
.chips{display:flex;gap:7px;flex-wrap:wrap;margin:4px 0 12px}.chip{border:1px solid #B9C6D8;color:var(--blue-d);background:var(--soft);border-radius:8px;padding:5px 11px;font:inherit;font-size:.86rem;cursor:pointer}.chip:hover{background:#E0E9F7}
.calc-btns{display:flex;gap:9px;margin:14px 0 4px}
.btn-calc{flex:1;background:var(--blue);color:#fff;border:none;border-radius:8px;padding:12px 16px;font:inherit;font-size:1rem;font-weight:600;cursor:pointer}.btn-calc:hover{background:var(--blue-d)}
.btn-reset{background:#fff;color:var(--ink);border:1px solid #AEBBD0;border-radius:8px;padding:12px 18px;font:inherit;font-weight:500;cursor:pointer}.btn-reset:hover{background:var(--soft)}
/* simple results */
.results{margin-top:14px}
.result-main{background:var(--soft);border-radius:9px;padding:13px 15px}
.result-main .calc-big-label{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.calc-big{font-size:1.95rem;font-weight:700;line-height:1.15;color:var(--navy)}
.result-note{font-size:.85rem;color:var(--mut)}
.calc-row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:8px 2px;border-bottom:1px solid var(--line)}
.calc-row-label{font-size:.92rem;color:#2A3B52}
.calc-amount,.amt{font-weight:600;font-size:1.05rem}
.calc-workings{background:var(--soft);border-left:4px solid var(--blue);padding:10px 13px;border-radius:0 8px 8px 0;margin-top:13px;font-size:.94rem}
.fte-track{height:10px;background:#DCE3EC;border-radius:5px;overflow:hidden;margin:7px 0}.fte-fill{height:100%;background:var(--blue);width:0;transition:width .7s ease}
.calc-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.mini-btn{border:1px solid #AEBBD0;background:#fff;border-radius:7px;padding:5px 12px;font:inherit;font-size:.86rem;cursor:pointer}.mini-btn:hover{background:var(--soft)}
.th-box{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}
.th-bar{display:flex;height:14px;border-radius:7px;overflow:hidden;border:1px solid var(--line);margin:9px 0}
.th-bar span{display:block;height:100%;transition:width .7s ease}
.seg-net{background:var(--blue)}.seg-tax{background:var(--navy)}.seg-ni{background:#7C93AD}.seg-pen{background:#C3CFDD}
.th-legend{font-size:.87rem;display:grid;grid-template-columns:1fr 1fr;gap:2px 14px}
table.data{width:100%;border-collapse:collapse;margin:12px 0;font-size:.95rem}table.data th,table.data td{border:1px solid var(--line);padding:7px 10px;text-align:left;vertical-align:top}table.data th{background:var(--soft);font-weight:600}
.table-scroll{overflow-x:auto}
.err{background:#FDECEA;border:1px solid #C0563B;border-radius:8px;padding:9px 13px;margin:11px 0}
/* faq */
.faq-item{border:1px solid var(--line);border-radius:9px;background:#fff;margin-bottom:8px;overflow:hidden}
.faq-item button{width:100%;text-align:left;background:none;border:none;font:inherit;font-weight:600;padding:12px 14px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center}
.faq-chev{width:9px;height:9px;border-right:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(45deg);flex:none;transition:transform .25s}
.faq-item.open .faq-chev{transform:rotate(225deg)}
.faq-body{max-height:0;overflow:hidden;transition:max-height .35s ease}.faq-body p{margin:0;padding:0 14px 13px}
.pulse{animation:pulseA .45s ease}@keyframes pulseA{0%{background:#DCE9FE}100%{background:transparent}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001s!important;transition-duration:.001s!important}}
/* other calculators + content helpers */
.other-calcs{margin-top:28px;background:#EEF3FA;border:1px solid #D8E2F0;border-radius:10px;padding:16px 18px 12px}
.other-calcs h2{margin:0 0 8px;font-size:1.12rem;font-weight:600;color:var(--navy);border-left:4px solid var(--blue);padding-left:10px;line-height:1.25}
.link-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 26px}@media(max-width:600px){.link-list{grid-template-columns:1fr}}
.link-list li{border-bottom:1px solid #D8E2F0;font-size:.95rem}
.link-list li:last-child{border-bottom:none}@media(min-width:601px){.link-list li:nth-last-child(-n+2){border-bottom:none}}
.link-list a{display:flex;align-items:baseline;gap:7px;padding:8px 2px;text-decoration:none;color:var(--navy);font-weight:500;transition:transform .15s ease,color .15s ease}
.link-list a::before{content:"\2192";color:var(--blue);font-weight:600;flex:none}
.link-list a:hover{color:var(--blue);transform:translateX(4px)}
.post-item{border-bottom:1px solid var(--line);padding:14px 0}
.post-item h2{margin:.15em 0 .3em}
.meta-line{color:var(--mut);font-size:.88rem}
/* homepage top band */
.home-top{margin:0 -20px;padding:14px 20px 24px;background:#EEF3FA;border-bottom:2px solid var(--blue);border-radius:0 0 10px 10px}
@media(max-width:600px){.home-top{margin:0 -14px;padding:12px 14px 20px}}
.home-top h1{margin-top:0}
.h1-accent{color:var(--blue-d)}
.h1-rule{display:block;width:64px;height:4px;background:var(--blue);border-radius:2px;margin-top:10px}
.trust-chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 2px}
.trust-chip{background:#fff;border:1px solid #B9CBE8;color:var(--navy);border-radius:8px;padding:5px 11px;font-size:.85rem;font-weight:500}
/* blog images, cards, recent panel */
.feat-img{display:block;width:100%;max-width:800px;height:auto;border:1px solid var(--line);border-radius:10px;margin:14px auto 6px}
figure.article-fig{margin:22px auto;width:100%;max-width:800px}
figure.article-fig img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:10px}
figure.article-fig figcaption{font-size:.86rem;color:var(--mut);margin-top:6px;text-align:center}
.post-thumb{display:block;margin-bottom:10px}
.post-thumb img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:10px}
.blog-card-title a{text-decoration:none;color:var(--navy)}
.blog-card-title a:hover{text-decoration:underline;color:var(--blue-d);text-underline-offset:3px}
.recent-panel{margin-top:30px;background:#EEF3FA;border:1px solid #D8E2F0;border-radius:10px;padding:16px 18px 8px}
.recent-panel h2{margin:0 0 6px;font-size:1.12rem;font-weight:600;color:var(--navy);border-left:4px solid var(--blue);padding-left:10px;line-height:1.25}
.recent-item{display:flex;gap:14px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #D8E2F0}
.recent-item:last-child{border-bottom:none}
.recent-item img{width:132px;height:auto;flex:none;border-radius:8px;border:1px solid #D8E2F0}
@media(max-width:600px){.recent-item img{width:96px}}
.recent-item h3{margin:.1em 0 .2em;font-size:1rem}
.recent-item h3 a{color:var(--navy);text-decoration:none}
.recent-item h3 a:hover{color:var(--blue-d);text-decoration:underline;text-underline-offset:3px}
.recent-item p{margin:0;font-size:.9rem;color:#2A3B52;max-width:none}
.pull{border-left:4px solid var(--blue);padding:4px 0 4px 15px;font-size:1.08rem;font-weight:500;margin:18px 0}
.note-box{background:var(--soft);border-radius:var(--radius);padding:13px 16px;margin:16px 0}
/* footer */
.site-foot{margin-top:40px;background:var(--navy);color:#DCE7F7}
.site-foot .wrap{padding-top:38px;padding-bottom:0}
.foot-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px 34px}@media(max-width:700px){.foot-grid{grid-template-columns:1fr}}
.foot-brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:1.05rem;color:#fff;margin:0 0 8px}
.foot-logo-tile{background:#fff;border-radius:8px;padding:4px;display:inline-flex;flex:none}
.foot-logo-tile img{width:26px;height:26px;display:block}
.site-foot p{margin:.35em 0;font-size:.92rem;color:#C9D6EA;max-width:34em}
.foot-mail{margin-top:10px}.foot-mail a{color:#8FB9FF;text-decoration:none;font-weight:500}
.foot-mail a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.foot-h{color:#fff;font-size:.95rem;font-weight:600;margin:2px 0 10px}
.foot-col ul{list-style:none;margin:0;padding:0}
.foot-col li{margin:0 0 7px;font-size:.93rem}
.foot-col a{color:#BCD2F5;text-decoration:none}
.foot-col a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.foot-base{border-top:1px solid rgba(255,255,255,.15);margin-top:26px;padding:14px 0 18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px 26px;font-size:.85rem;color:#9FB4D0}
.foot-base .foot-copy{white-space:nowrap}
.cookie-bar{position:fixed;left:14px;right:14px;bottom:14px;z-index:50;background:var(--navy);color:#E7EEF9;border-radius:10px;padding:12px 16px}
.cookie-bar a{color:#9DC2FF}.cookie-in{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.cookie-in p{margin:0;flex:1;min-width:240px;font-size:.9rem}
.cookie-in button{background:var(--blue);color:#fff;border:none;border-radius:7px;padding:8px 15px;font:inherit;cursor:pointer}
/* 404 */
.notfound{text-align:center;padding:40px 0 10px}.nf-code{font-size:4.2rem;font-weight:800;color:var(--blue);line-height:1}
.nf-slice{display:inline-block;animation:nfTilt 3.2s ease-in-out infinite;transform-origin:50% 80%}
@keyframes nfTilt{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@media(prefers-reduced-motion:reduce){.nf-slice{animation:none}}
@media print{.site-head,.site-foot,.cookie-bar,.calc-actions,.calc-btns{display:none}}
