/* FRANK PREMIUM LOOK (Dan and Tess, 16 Oct 2026)
   One layer for every page: the portal, the Frank Check pages, Terms, Privacy, owner pages and the 404.
   Everything sits under html.pl, so nothing changes until the look is switched on (look.js). At launch the class
   goes on for everyone. Same tokens as the new homepage: Newsreader for headings, Public Sans for reading,
   navy, ivory and brass, a fine grain on every background, no highlighter, no hard offset shadows. */
@import url("https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;0,6..72,600;1,6..72,400&family=Public+Sans:wght@400;500;600;700;800&display=swap");

/* ===== AUTOMATIC: every older rule that carried the classic look, rewritten (build_premium.py) ===== */
html.pl .top a.link{border-bottom:2px solid var(--brass)}
html.pl .label{font-family:var(--sans)}
html.pl .label::after{background:linear-gradient(90deg,var(--pen),transparent)}
html.pl .err{color:var(--pen)}
html.pl .tier .who{font-family:var(--sans)}
html.pl .tier .price{font-family:var(--display)}
html.pl .tier .flag{background:var(--brass-hi);font-family:var(--sans)}
html.pl .box{background:linear-gradient(135deg,rgba(185,138,46,0.112),rgba(185,138,46,0.028))}
html.pl .opt[aria-pressed=true]{background:#F7F2E7}
html.pl .status{font-family:var(--sans)}
html.pl .status.needs_answer{background:#F7F2E7}
html.pl .status.refunded,html.pl .status.failed{color:var(--pen)}
html.pl .crewsteps li.now .tick{color:var(--brass-ink)}
html.pl .meter .mbar i{background:linear-gradient(90deg,#0E2A47 0%,#0E2A47 calc(100% - 10px),var(--brass-hi) calc(100% - 10px))}
html.pl .fhmove .k{font-family:var(--sans)}
html.pl .fhcrew{border-left:3px solid var(--brass)}
html.pl .fhsince .k{font-family:var(--sans)}
html.pl .fhword b{font-family:var(--sans)}
html.pl .fchead .k{font-family:var(--sans)}
html.pl .fcb b{font-family:var(--sans)}
html.pl .fvoice .k{font-family:var(--sans)}
html.pl .fvoice h3{font-family:var(--display)}
html.pl .fvoice h3 mark{background:var(--brass-hi)}
html.pl .fvopt.on{box-shadow:var(--cardsh)}
html.pl .fcflash{outline:3px solid var(--brass-hi)}
html.pl .fcsave .k,html.pl .fcidea .k{font-family:var(--sans)}
html.pl .lfcard{background:var(--grain),linear-gradient(135deg,#F7F2E7,#F7F2E7 55%,#fff);box-shadow:var(--cardsh)}
html.pl .lfcard img{border:3px solid var(--brass)}
html.pl .lfcard .k{font-family:var(--sans)}
html.pl .lfcard h3{font-family:var(--display)}
html.pl .farcard .k{font-family:var(--sans)}
html.pl .dlp,html.pl .dlx{margin:6px 10px 0 0}
html.pl .mseg .k{font-family:var(--sans)}
html.pl .tuopt.best{background:#F7F2E7}
html.pl .plabel{font-family:var(--sans)}
html.pl .plabel b{color:var(--brass-ink);box-shadow:var(--cardsh)}
html.pl .plabel::after{background:linear-gradient(90deg,var(--pen),transparent)}
html.pl #memberCard{background-image:var(--grain),radial-gradient(420px 200px at 100% 0,rgba(185,138,46,0.112),transparent 60%);box-shadow:var(--cardsh)}
html.pl #memberCard h3{color:var(--brass-ink)}
html.pl #memberCard .meter .mbar i{background:var(--brass-hi)}
html.pl #memberCard .btn{background:var(--brass-hi);border-color:var(--brass)}
html.pl #plans .card.live{border-top-color:var(--brass);box-shadow:var(--cardsh)}
html.pl .status.building,html.pl .status.queued{background:var(--brass-hi)}
html.pl #newplan .panel{box-shadow:var(--cardsh)}
html.pl #newplan .panel-top{font-family:var(--sans)}
html.pl #newplan .bar i{background:var(--pen)}
html.pl .talklog .tm.frank{border-left:3px solid var(--brass)}
html.pl .talklog .tm b{font-family:var(--sans)}
html.pl #newplan .opt[aria-pressed="true"]{background:#F7F2E7}
html.pl #newplan .result .tip{background:linear-gradient(135deg,rgba(185,138,46,0.084),rgba(185,138,46,0.021))}
html.pl #newplan .result .fit span{font-family:var(--display);background:none}
html.pl #newplan .result .kick{font-family:var(--sans)}
html.pl #newplan .result .outline.prop{box-shadow:var(--cardsh)}
html.pl #newplan .result .outline.prop .qlab{font-family:var(--sans)}
html.pl #newplan .result .outline.prop .incorner{background-image:var(--grain,none),radial-gradient(420px 180px at 100% 0,rgba(185,138,46,0.154),transparent 60%);box-shadow:var(--cardsh)}
html.pl #newplan .result .outline.prop .incorner img{border:3px solid var(--brass)}
html.pl #newplan .result .outline.prop .incorner .ik{font-family:var(--sans)}
html.pl #newplan .result .outline.prop .incorner .ih{font-family:var(--display)}
html.pl #newplan .result .outline.prop .incorner .ih mark{color:var(--brass-ink)}
html.pl #newplan .bub b{font-family:var(--sans)}
html.pl #newplan .bub.me{border-right:3px solid var(--brass);background:linear-gradient(180deg,#F7F2E7,#fff)}
html.pl #newplan .panel{box-shadow:var(--cardsh)}
html.pl .mechip .av{color:var(--brass-ink);font-family:var(--display)}
html.pl .mechip .tb{font-family:var(--sans)}
html.pl .mechip:hover{box-shadow:var(--cardsh)}
html.pl .rsbox{background:linear-gradient(135deg,#F7F2E7,#F7F2E7);border-left:3px solid var(--brass)}
html.pl .fitbox{background:linear-gradient(135deg,rgba(185,138,46,0.112),rgba(185,138,46,0.035));border:1px solid rgba(185,138,46,0.385);border-left:3px solid var(--brass)}
html.pl .fitbox .k{color:var(--brass-ink);font-family:var(--sans)}
html.pl .tipsbox .k{font-family:var(--sans)}
html.pl .upbox h4{font-family:var(--display);color:var(--brass-ink)}
html.pl .upt b{font-family:var(--display)}
html.pl .upp{background:var(--brass-hi)}
html.pl .fold[open]{border-left-color:var(--brass)}
html.pl .fold .fi{color:var(--brass-ink);font:400 20px/1 var(--slab);box-shadow:var(--cardsh)}
html.pl .fold>summary::after{box-shadow:0 3px 0 var(--brass-hi)}
html.pl .ff-sec h4{font-family:var(--sans)}
html.pl .ff-pill{font-family:var(--sans)}
html.pl .ff-pill.stuck{background:var(--brass-hi)}
html.pl .ff-b:hover{background:#F7F2E7}
html.pl.v2 body{background-image:var(--grain),radial-gradient(900px 380px at 50% -120px,rgba(185,138,46,0.112),transparent 70%),linear-gradient(180deg,#FFFFFF 0,#F7F4EE 420px,#F2EEE6 100%)}
html.pl.v2 .lounge h1,html.pl.v2 #hello{font-family:var(--display)}
html.pl.v2 #hello mark{background:none}
html.pl.v2 .fhmove .btn:not(.ghost),html.pl.v2 .fchat .btn:not(.ghost),html.pl.v2 #plans .card .btn:not(.ghost):not(.dlx):not(.small){box-shadow:var(--cardsh)!important}
html.pl.v2 .fhmove .btn:not(.ghost):hover,html.pl.v2 .fchat .btn:not(.ghost):hover,html.pl.v2 #plans .card .btn:not(.ghost):not(.dlx):not(.small):hover{box-shadow:var(--cardsh)!important}
html.pl.v2 .pnav button[aria-current="page"]::after{background:var(--brass-hi)}
html.pl .a2hs{background:linear-gradient(160deg,#F7F2E7 0%,#FFFFFF 70%);box-shadow:var(--cardsh)}
/* ===== HAND WRITTEN ===== */
html.pl{
 --navy:#0F1E33;--navy2:#17304F;--ink:#0F1E33;--ink2:#0B1626;--night:#0F1E33;--text:#1B2534;--mute:#465163;--char:#465163;
 --line:#D9D3C6;--line2:#E7E2D6;--warm:#E3DDD2;--stone:#EFEBE3;--ivory:#F5F2EB;--paper:#FFFFFF;--paper1:#FFFEFB;--paper2:#F8F5EE;
 --brass:#B98A2E;--brass-hi:#E3B85C;--brass-lt:#E3B85C;--brass-ink:#76570F;--hi:#E3B85C;--pen:#8A2F2F;--green:#2F6B4F;
 --display:"Newsreader",Georgia,"Times New Roman",serif;--slab:var(--display);--serif:var(--display);
 --sans:"Public Sans","Helvetica Neue",Arial,sans-serif;--mono:var(--sans);
 --shadow:0 1px 2px rgba(15,30,51,.06),0 12px 32px rgba(15,30,51,.08);
 --cardsh:0 1px 2px rgba(15,30,51,.05),0 14px 34px -18px rgba(15,30,51,.30);
}
html.pl body{font-family:var(--sans);color:var(--text);background-color:var(--ivory)!important;background-image:var(--grain),linear-gradient(180deg,#F7F4EE,#F1EDE4)!important;background-size:160px 160px,100% 100%!important;background-repeat:repeat,repeat-y!important;background-attachment:scroll!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html.pl a{color:var(--navy);text-underline-offset:3px;text-decoration-thickness:1.5px}

/* Headings: Newsreader, never slab, never highlighted */
html.pl h1,html.pl h2,html.pl h3,html.pl h4{font-family:var(--display);font-weight:500;letter-spacing:-.005em;color:var(--navy);font-optical-sizing:auto}
html.pl h1{font-size:clamp(34px,4.6vw,54px);line-height:1.06;letter-spacing:-.018em}
html.pl h2{font-size:clamp(26px,3vw,36px);line-height:1.12;letter-spacing:-.012em}
html.pl h3{font-weight:500;font-size:clamp(21px,2vw,25px);line-height:1.2}
html.pl mark{background:none!important;color:inherit!important;padding:0!important}
html.pl h1::before,html.pl h1::after{background:none!important}
html.pl .lede{font-family:var(--sans);font-weight:400;color:var(--text)}
html.pl .label{font-family:var(--sans);font-weight:700;font-size:13px;letter-spacing:.14em;color:var(--brass-ink)}
html.pl .label::after{background:linear-gradient(90deg,var(--brass),transparent);height:1px}

/* Header: ivory glass bar with the typeset wordmark */
html.pl .top{background-color:rgba(245,242,235,.94)!important;background-image:var(--grain)!important;border-bottom:1px solid var(--line)!important;color:var(--navy)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
html.pl .top .in{max-width:1180px;padding:14px 24px!important;min-height:72px}
html.pl .top a.link{color:var(--navy);border-bottom:1.5px solid var(--brass)}
html.pl .plmark{display:inline-flex;align-items:baseline;color:var(--navy);font-family:var(--display);font-weight:600;font-size:26px;letter-spacing:-.01em;position:relative;padding:4px 0 0 13px;white-space:nowrap;line-height:1}
html.pl .plmark::before{content:"";position:absolute;left:0;top:0;width:9px;height:20px;border-left:3px solid var(--brass);border-top:3px solid var(--brass)}
html.pl .plmark span{font-weight:400;font-style:italic;margin-left:.22em}
html.pl .top a:has(.plmark){text-decoration:none}

/* Buttons: pill shaped, solid navy, no yellow offset shadow; ghost is a navy outline */
html.pl .btn{font-family:var(--sans);font-weight:700;border-radius:999px;border:2px solid var(--navy);background:var(--navy);color:#fff;box-shadow:none!important;padding:14px 26px;min-height:52px;letter-spacing:0;transition:background .2s,border-color .2s}
html.pl .btn:hover{background:var(--navy2);border-color:var(--navy2);transform:none}
html.pl .btn:not(.ghost):not(.btn-ghost):not(.small):not(.link){outline:1.5px solid var(--brass);outline-offset:3px;transition:background .2s,border-color .2s,outline-offset .2s}
html.pl .btn:not(.ghost):not(.btn-ghost):not(.small):not(.link):hover{outline-offset:2px}
html.pl .btn.ghost,html.pl .btn.btn-ghost{background:transparent;color:var(--navy);border-color:var(--navy)}
html.pl .btn.ghost:hover,html.pl .btn.btn-ghost:hover{background:rgba(15,30,51,.05)}
html.pl .btn.small{padding:9px 18px;min-height:44px;font-size:15px}
html.pl .btn:focus-visible,html.pl button:focus-visible,html.pl a:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
html.pl .btn:not(.ghost):not(.btn-ghost):focus-visible{outline:3px solid var(--brass);outline-offset:4px}

/* Cards and boxes: white paper on ivory, hairline border, soft shadow */
html.pl .card{background:var(--paper);border:1px solid var(--line2);border-radius:12px;box-shadow:var(--cardsh)}
html.pl .box{background:linear-gradient(180deg,#FBF9F4,#F4F0E6);border-left:3px solid var(--brass);border-radius:0 10px 10px 0}
html.pl .opt[aria-pressed=true]{background:#F6F0E2;border-color:var(--navy)}
html.pl .status{font-family:var(--sans);letter-spacing:.04em}
html.pl .status.needs_answer{background:#F6EBCF;color:var(--brass-ink)}
html.pl .tier .price{font-family:var(--display);font-weight:500;letter-spacing:-.01em}
html.pl .tier .flag{background:var(--brass-hi);color:var(--navy)}
html.pl input[type=email],html.pl input[type=text],html.pl input[type=number],html.pl textarea{border-color:var(--line);border-radius:10px}
html.pl input:focus,html.pl textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(185,138,46,.25)}
html.pl .foot{color:var(--mute)}
html.pl .err{color:var(--pen)}

/* ===== PORTAL ===== */
html.pl main.wrap.narrow{max-width:1180px;padding:24px 24px 72px}
/* Home: greeting row, then a two column desk on wide screens (no dead space at the sides, Justin) */
html.pl .lounge{grid-template-columns:auto 1fr!important;padding:30px 0 0!important;margin:0 0 6px!important}
html.pl .lounge h1,html.pl #hello{font-family:var(--display)!important;font-weight:500!important;letter-spacing:-.018em!important;font-size:clamp(34px,4.4vw,52px)!important;line-height:1.05!important;color:var(--navy)!important}
html.pl .lounge .fhsub{font-family:var(--sans)!important;font-size:18px!important;color:var(--mute)!important}
html.pl .lfrank img{width:72px!important;height:72px!important;border:0!important;box-shadow:0 0 0 1px var(--line),0 8px 20px rgba(15,30,51,.14)!important}
html.pl .pnav{border-bottom:1px solid var(--line)!important;gap:36px!important;justify-content:flex-start!important}
html.pl .pnav button{flex:0 0 auto!important;font-family:var(--sans)!important;font-weight:600!important;font-size:17px!important;color:var(--mute)!important;border-bottom:2px solid transparent!important;padding:0 0 2px!important}
html.pl .pnav button[aria-current="page"]{color:var(--navy)!important;font-weight:700!important;border-bottom:2px solid var(--brass)!important}
html.pl .pnav button[aria-current="page"]::after{display:none!important}
@media (min-width:1000px){
 html.pl #vHome{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:28px;align-items:start;margin-top:26px}
 html.pl #vHome>#frankHome{grid-column:1}
 html.pl #vHome>#lookFwd{grid-column:2;position:sticky;top:96px;display:grid;gap:18px}
 html.pl #vHome>#lookFwd>*{margin:0!important}
}
/* Frank's home cards */
html.pl .fh>*,html.pl #frankHome .card,html.pl #frankHome>div>div{border-radius:12px}
html.pl .fhcrew{border-left:3px solid var(--brass)!important;background:var(--paper)!important;box-shadow:var(--cardsh)!important;border-color:var(--line2)!important}
html.pl .fhcrew img{border:0!important;box-shadow:0 0 0 1px var(--line)}
html.pl .fhcrew q,html.pl .fhword,html.pl .fhsub{font-family:var(--display)}
/* Chat with Frank: ivory paper, navy type, the photo of Frank, one brass rule */
html.pl .fc,html.pl #frankChat,html.pl .fchat{background:var(--paper)!important;background-image:none!important;color:var(--text)!important;border:1px solid var(--line2)!important;border-top:3px solid var(--brass)!important;border-radius:12px!important;box-shadow:var(--cardsh)!important}
html.pl .fchead img{border:0!important;box-shadow:0 0 0 1px var(--line),0 6px 14px rgba(15,30,51,.12)!important}
html.pl .fchead .k{display:block!important;color:var(--brass-ink)!important;letter-spacing:.02em!important;text-transform:none!important;font-size:14px!important;font-weight:700!important}
html.pl .fchead h3{font-family:var(--display)!important;font-weight:500!important;color:var(--navy)!important;letter-spacing:-.01em!important;font-size:28px!important}
html.pl .fchead h3 mark{color:inherit!important}
html.pl .fcpriv{color:var(--mute)!important;border-top:1px solid var(--line2)!important}
html.pl .fcpriv b{color:var(--navy)!important}
html.pl .fclearn label{color:var(--navy)}
html.pl .fclearn .hint{color:var(--mute)!important}
html.pl .fcb.fr{border-left:3px solid var(--navy)!important;background:#FBF9F4!important}
html.pl .fcb.me{border-right:3px solid var(--brass)!important;background:#fff!important}
/* Next step, look forward, how far you've come */
html.pl .nscard{border:1px solid var(--line2)!important;border-top:3px solid var(--navy)!important;background:var(--paper)!important;background-image:none!important;box-shadow:var(--cardsh)!important}
html.pl .nscard h3,html.pl .lfcard h3{font-family:var(--display)!important;font-weight:500!important;letter-spacing:-.01em!important;color:var(--navy)!important}
html.pl .lfcard{border:1px solid var(--line2)!important;background:var(--grain),linear-gradient(180deg,#FFFEFB,#F6F2E8)!important;box-shadow:var(--cardsh)!important}
html.pl .lfcard img,html.pl .fhcrew img{border:0!important;box-shadow:0 0 0 1px var(--line)!important}
html.pl .lfcard .k,html.pl .nscard .k,html.pl .farcard .k{color:var(--brass-ink)!important;letter-spacing:.02em!important;text-transform:none!important;font-size:14px!important;font-weight:700!important}
html.pl .farcard{border:1px solid var(--line2)!important;border-left:3px solid var(--green)!important;background:var(--paper)!important;box-shadow:var(--cardsh)!important}
html.pl .farcard p{font-family:var(--display)!important;color:var(--navy)!important}
html.pl .ltitle{font-family:var(--display)!important;font-weight:500!important;font-size:28px!important;letter-spacing:-.01em!important}
/* Member chip */
html.pl .mechip{border:1px solid var(--line)!important;background:transparent!important;box-shadow:none!important;color:var(--navy)!important}
html.pl .mechip .av{background:var(--navy)!important;color:#fff!important;font-family:var(--display)!important;font-weight:600!important}
html.pl .mechip .tb{background:transparent!important;border:1px solid var(--line)!important;color:var(--mute)!important;letter-spacing:0!important;text-transform:none!important}
/* Progress and meters */
html.pl .crewsteps li.now .tick{background:var(--navy);color:var(--brass-hi)}
html.pl .meter .mbar{border:1px solid var(--navy);background:#ECE7DC}
html.pl .meter .mbar i{background:linear-gradient(90deg,var(--navy),var(--navy2))}
/* New plan flow */
html.pl #newplan .panel{box-shadow:var(--shadow)!important;border:1px solid var(--line2);border-radius:12px}
html.pl #newplan .panel-top{font-family:var(--sans)!important;letter-spacing:.04em!important}
html.pl #newplan .opt[aria-pressed="true"]{background:#F6F0E2!important}
html.pl #newplan .result .fit span{font-family:var(--display)!important;font-weight:500;background:none!important;letter-spacing:-.01em!important;border-bottom:2px solid var(--brass)}
html.pl #newplan .result .outline.prop{box-shadow:var(--cardsh)!important;border-left:3px solid var(--navy)!important}
html.pl #newplan .result .outline.prop .incorner{box-shadow:var(--shadow)!important;background-image:var(--grain),radial-gradient(420px 180px at 100% 0,rgba(227,184,92,.16),transparent 60%)!important}
html.pl #newplan .result .outline.prop .incorner img{border:0!important;box-shadow:0 0 0 2px rgba(255,255,255,.6)}
html.pl #newplan .result .outline.prop .incorner .ih{font-family:var(--display)!important;font-weight:500!important;letter-spacing:-.01em!important}
html.pl #newplan .result .outline.prop .incorner .ih mark{color:var(--brass-hi)!important}
html.pl #newplan .result .tip{background:linear-gradient(180deg,#FBF9F4,#F4F0E6)!important}
html.pl #newplan .bub.me{border-right:3px solid var(--brass)!important;background:#fff!important}
html.pl #newplan .bub.fr{border-left:3px solid var(--navy)!important}
html.pl #newplan .result .kick{color:var(--brass-ink)!important}
@media (max-width:640px){
 html.pl main.wrap.narrow{padding:12px 16px 56px}
 html.pl .top .in{padding:10px 16px!important;min-height:60px}
 html.pl .plmark{font-size:22px}
 html.pl .lounge{grid-template-columns:auto 1fr!important;gap:4px 14px!important;padding-top:18px!important}
 html.pl .lfrank img{width:56px!important;height:56px!important}
 html.pl .pnav{gap:24px!important}
 html.pl .pnav button{font-size:16px!important}
}
/* Strong override: no offset shadows or yellow fills on any button, whatever older rule targets it */
html.pl .btn:not(#_a):not(#_b){box-shadow:none!important;transform:none!important}
html.pl .btn:not(.ghost):not(.btn-ghost):not(.light):not(#_a):not(#_b){background:var(--navy)!important;border-color:var(--navy)!important;color:#fff!important}
html.pl .btn:not(.ghost):not(.btn-ghost):not(.light):not(#_a):not(#_b):hover{background:var(--navy2)!important;border-color:var(--navy2)!important}
html.pl .btn.ghost:not(#_a):not(#_b),html.pl .btn.btn-ghost:not(#_a):not(#_b){background:transparent!important;color:var(--navy)!important;border-color:var(--navy)!important}
html.pl .foot{max-width:1180px;padding:24px}

/* Dark panels keep light text and light brass (member card, Frank's proposal box) */
html.pl #memberCard{box-shadow:var(--shadow)!important;background-image:var(--grain),radial-gradient(420px 200px at 100% 0,rgba(227,184,92,.14),transparent 60%)!important}
html.pl #memberCard h3,html.pl #memberCard h4{color:var(--brass-hi)!important;font-family:var(--display)!important;font-weight:500!important}
html.pl #memberCard .meter .mbar i{background:var(--brass-hi)!important}
html.pl #memberCard .btn:not(.ghost):not(#_a):not(#_b){background:var(--brass-hi)!important;color:var(--navy)!important;border-color:var(--brass-hi)!important}
html.pl #memberCard .btn.ghost:not(#_a):not(#_b){color:#fff!important;border-color:rgba(255,255,255,.75)!important}
html.pl #memberCard .upt .btn:not(.ghost):not(#_a):not(#_b){background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important}
html.pl .upt{border:1px solid var(--line2)!important;background:var(--paper)!important}
html.pl .upt b{font-family:var(--display)!important;font-weight:600!important}
html.pl .upp{background:none!important;padding:0!important;border-bottom:2px solid var(--brass);border-radius:0!important;font-weight:700!important;color:var(--navy)!important}
html.pl .a2hs{border:1px solid var(--line2)!important;border-top:3px solid var(--brass)!important;background:var(--grain),linear-gradient(180deg,#FFFEFB,#F6F2E8)!important;box-shadow:var(--cardsh)!important}
html.pl .a2hs h2{font-family:var(--display)!important;font-weight:500!important}
html.pl .a2hs .ico{border-color:var(--navy)}
/* Small capital labels are set in Public Sans, never the heading face */
html.pl [class*="lab"],html.pl .kick,html.pl .qlab,html.pl .fsect,html.pl .ffk{font-family:var(--sans)!important}
html.pl .fhmove{border-top:3px solid var(--navy)!important}

/* ===== ROUND 2 (Tess, 16 Oct 2026) ===== */
/* The ready plan is the hero */
html.pl .fhmove{padding:34px 34px 30px!important;border-radius:14px!important;background:var(--grain),linear-gradient(180deg,#FFFFFF,#FBF8F2)!important}
html.pl .fhmove .k{display:block!important;color:var(--brass-ink)!important;font-size:15px!important;font-weight:700!important;letter-spacing:.01em!important;text-transform:none!important;margin:0 0 4px!important}
html.pl .fhmove h2{font-family:var(--display)!important;font-weight:500!important;font-size:clamp(32px,3.4vw,44px)!important;line-height:1.08!important;letter-spacing:-.016em!important;margin:2px 0 10px!important}
html.pl .fhmove .from{font-size:18px!important;color:var(--text)!important;margin:0 0 20px!important}
html.pl .fhmove .btn{min-height:56px!important;padding:15px 30px!important;font-size:17.5px!important}
html.pl .vhelp{display:none}
/* Forwarding help folds away */
html.pl details.fwdfold>summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px}
html.pl details.fwdfold>summary::-webkit-details-marker{display:none}
html.pl details.fwdfold>summary h3{margin:0!important;font-size:21px!important}
html.pl .fwdshow::after{content:attr(data-show) " \203A";font-weight:700;font-size:15px;color:var(--navy);text-decoration:underline;text-underline-offset:3px}
html.pl details.fwdfold[open] .fwdshow::after{content:attr(data-hide)}
html.pl details.fwdfold[open]>summary{margin-bottom:12px}
/* Compact plan list */
html.pl .plfind{width:100%;margin:4px 0 12px;font-size:17px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}
html.pl .pllist{display:grid;gap:0;border-top:1px solid var(--line2)}
html.pl .plrow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px 16px;align-items:center;padding:14px 2px;border-bottom:1px solid var(--line2)}
html.pl .plrow[hidden]{display:none!important}
html.pl .plr-t b{display:block;font-family:var(--display);font-weight:500;font-size:19px;color:var(--navy);line-height:1.25}
html.pl .plr-t .hint{font-size:14.5px}
html.pl .plr-more{grid-column:1/-1}
html.pl .plr-more>summary{list-style:none;cursor:pointer;font-size:15px;font-weight:700;color:var(--navy);text-decoration:underline;text-underline-offset:3px;width:max-content}
html.pl .plr-more>summary::-webkit-details-marker{display:none}
html.pl .plr-more>summary::after{content:attr(data-show)}
html.pl .plr-more[open]>summary::after{content:attr(data-hide)}
html.pl .plr-more>.card{margin-top:10px;box-shadow:none!important}
@media (max-width:640px){html.pl .plrow{grid-template-columns:minmax(0,1fr) auto}html.pl .plrow>.btn{grid-column:1/-1;justify-self:start}}
/* Frank File summary */
html.pl .ff-sum{margin:6px 0 18px;padding:18px 20px;border:1px solid var(--line2);border-left:3px solid var(--brass);border-radius:0 10px 10px 0;background:linear-gradient(180deg,#FBF9F4,#F4F0E6)}
html.pl .ff-sum h4{margin:0 0 8px;font-family:var(--display);font-weight:500;font-size:21px;color:var(--navy);text-transform:none;letter-spacing:0}
html.pl .ff-sum p,html.pl .ff-sum li{font-size:16.5px;margin:6px 0}
html.pl .ff-sum ul{margin:6px 0;padding-left:20px}
html.pl .ff-sec h4{font-family:var(--sans)!important;font-size:13px!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--brass-ink)!important;font-weight:700!important}
/* Plan space detail folds away */
html.pl .mhow>summary{list-style:none;cursor:pointer;font-size:15px;font-weight:700;color:#fff;text-decoration:underline;text-underline-offset:3px;margin:10px 0 6px;width:max-content}
html.pl .mhow>summary::-webkit-details-marker{display:none}
html.pl .mhow>summary::after{content:attr(data-show)}
html.pl .mhow[open]>summary::after{content:attr(data-hide)}
html.pl .mhow .hint{color:#E3EAF1!important}
html.pl #refer p,html.pl #refer .hint{font-family:var(--sans)!important}
html.pl #a2hsSet{margin:0!important}
html.pl #sgPhone{background:none!important;box-shadow:none!important;border:0!important;padding:0!important}
/* Live review (Tess): more room between the upgrade choices on a phone, easier to scan */
@media (max-width:640px){html.pl .upt{margin:0 0 14px!important;padding:16px 16px 14px!important}html.pl .upt ul{font-size:16px!important;line-height:1.5!important}html.pl .upp{font-size:16.5px}}

/* Newsreader wherever a bold sans label used to sit; upright, never bold italic (Dan, 17 Oct 2026) */
html.pl .fchead .k,html.pl .lfcard .k,html.pl .nscard .k,html.pl .farcard .k,html.pl .fhmove .k{font-family:var(--display)!important;font-weight:500!important;font-size:18px!important;letter-spacing:-.005em!important}
html.pl .fwdshow::after,html.pl .plr-more>summary,html.pl .mhow>summary{font-family:var(--display);font-weight:500;font-size:17px;text-decoration:none;background:linear-gradient(90deg,var(--brass),var(--brass)) no-repeat left bottom/100% 1.5px;padding-bottom:2px}
html.pl .upp{font-family:var(--display)!important;font-weight:500!important;font-size:17px!important}
