/* TaxReck split screen, shared by every page in the new design (the home page was approved on 21 September 2026).
   Loads after styles.css and modern.css; each page adds its own stylesheet after this one (home.css, book.css).
   The left half stays still: the logo, a headline that changes with the part of the page you are reading, the contents,
   the next tax deadline and the phone number. The right half scrolls. Below 1100px the left half becomes the opening block. */

.split{--lw:25.5vw;--lpad:clamp(24px,2.3vw,36px);--pad:clamp(28px,3.4vw,56px);background:#fff}
.split .vh{position:absolute!important;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.split p{margin:0}

/* ---------- the logo, drawn from the owner's artwork (106 horizontal, 105 stacked with the line) ---------- */
.tl{display:block;height:auto;overflow:visible}
.tl-coin,.tl-reck{fill:var(--acc)}
.tl-t,.tl-tax,.tl-line{fill:var(--ink)}
.rev .tl-t,.rev .tl-tax,.rev .tl-line{fill:#fff}
.tl-coin,.tl-t,.tl-tax,.tl-reck,.tl-line{transform-box:fill-box;transform-origin:center}
/* once a visit: the T drops in, the coin rolls into place from the right, then the name follows */
.logo-intro .left .tl-t{animation:tlDrop .55s var(--ease) .1s both}
.logo-intro .left .tl-coin{animation:tlRoll 1.1s cubic-bezier(.25,.8,.25,1) .25s both}
.logo-intro .left .tl-tax{animation:tlIn .6s var(--ease) .95s both}
.logo-intro .left .tl-reck{animation:tlIn .6s var(--ease) 1.1s both}
@keyframes tlDrop{from{opacity:0;transform:translateY(-14px)}}
@keyframes tlRoll{from{opacity:0;transform:translateX(150px) rotate(380deg)}30%{opacity:1}}
@keyframes tlIn{from{opacity:0;transform:translateX(-10px)}}
/* while the cursor is on the logo the coin keeps spinning on its own upright axis, left to right, where it stands, one turn
   every 2.5 seconds; when the cursor leaves, app.js lets the turn in progress finish and then stops it face on */
.tl.turn .tl-coin{animation:tlTurn 2.5s linear infinite}
@keyframes tlTurn{from{transform:rotateY(0)}to{transform:rotateY(360deg)}}

/* ---------- buttons ---------- */
.sbtn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 24px;border-radius:999px;border:1.5px solid transparent;font:inherit;font-size:15.5px;font-weight:700;letter-spacing:-.01em;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.sbtn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.sbtn-lime{background:var(--acc);color:var(--on-acc)}
.sbtn-lime:hover{background:#fff}
.sbtn-glass{border-color:rgba(255,255,255,.26);background:rgba(255,255,255,.05);color:#fff}
.sbtn-glass:hover{background:#fff;border-color:#fff;color:var(--ink)}
.sbtn-ink{background:var(--ink);color:#fff}
.sbtn-ink:hover{background:var(--dark-2)}
.sbtn-line{border-color:rgba(11,16,32,.2);color:var(--ink)}
.sbtn-line:hover{background:var(--ink);border-color:var(--ink);color:#fff}

/* ---------- the still half ---------- */
.left{position:fixed;left:0;top:0;bottom:0;width:var(--lw);z-index:20;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:28px var(--lpad);background:var(--dark);color:#fff;overflow:hidden}
.left::before{content:"";position:absolute;left:-240px;bottom:-300px;width:760px;height:760px;border-radius:50%;background:radial-gradient(closest-side,rgba(var(--acc-rgb),.18),rgba(var(--acc-rgb),0));pointer-events:none}
.left::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:52px 52px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 72%);mask-image:linear-gradient(180deg,#000,transparent 72%);pointer-events:none}
.left > *{position:relative;z-index:1}
.left :is(a,button):focus-visible,.smenu :is(a,button):focus-visible{outline:3px solid var(--acc);outline-offset:3px}
.ltop{display:flex;justify-content:space-between;align-items:center;gap:16px}
.split .brand{display:inline-flex;text-decoration:none}
.split .left .brand .tl{width:clamp(150px,12.5vw,196px)}
.menu-btn{display:inline-flex;align-items:center;gap:11px;height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .25s,border-color .25s}
.menu-btn:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.34)}
.menu-btn i{display:grid;gap:4px}
.menu-btn i::before,.menu-btn i::after{content:"";width:16px;height:2px;border-radius:1px;background:currentColor}

.lmid{display:flex;flex-direction:column;justify-content:safe center;min-height:0;padding:22px 0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}
.lmid::-webkit-scrollbar{display:none}
.lmid > *{flex:none}
.lhead{display:flex;align-items:center;gap:16px}
.up{margin-left:auto;flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s,background .25s,color .25s,border-color .25s}
.up.show{opacity:1;visibility:visible;transition:opacity .3s,background .25s,color .25s,border-color .25s}
.up:hover{background:var(--acc);border-color:var(--acc);color:var(--on-acc)}
.up svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.count{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--on-dark-2)}
.count b{color:var(--acc);font-size:15px}
.count i{width:40px;height:1px;background:rgba(255,255,255,.25)}
.say{display:grid;margin-top:20px}
.say > *{grid-area:1/1;align-self:end;margin:0;color:#fff;font-size:clamp(36px,3.6vw,58px);font-weight:800;letter-spacing:-.05em;line-height:1;text-wrap:balance;opacity:0;transform:translateY(16px);transition:opacity .5s,transform .6s var(--ease)}
.say > .on{opacity:1;transform:none}
.say span{color:var(--acc)}
.lsub{margin-top:18px!important;max-width:42ch;min-height:3.2em;color:var(--on-dark);font-size:16.5px;line-height:1.6;transition:opacity .35s}
.lsub.swap{opacity:0}
.lcta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.toc{display:grid;gap:1px;max-width:340px;margin-top:clamp(22px,4.2vh,44px)}
.toc a{display:flex;align-items:center;gap:14px;padding:6px 0;color:#8791A6;font-size:14.5px;font-weight:600;text-decoration:none;transition:color .3s}
.toc a:hover{color:#fff}
.toc em{width:20px;font-style:normal;font-size:12px;color:#6F7A93;transition:color .3s}
.toc i{width:18px;height:2px;border-radius:1px;background:#3A4460;transition:width .35s var(--ease),background .3s}
.toc a[aria-current]{color:#fff}
.toc a[aria-current] i{width:44px;background:var(--acc)}
.toc a[aria-current] em{color:var(--acc)}

.lbot{display:flex;justify-content:space-between;align-items:center;gap:14px 18px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}
.nxt{flex:1 1 auto;display:flex;align-items:center;gap:14px;min-width:0;color:#fff;text-decoration:none}
.nring{--p:6;flex:none;display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:conic-gradient(var(--acc) calc(var(--p) * 1%),rgba(255,255,255,.12) 0)}
.nring b{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--dark);font-size:15px;font-weight:800;letter-spacing:-.02em}
.nring b.now{font-size:10.5px;letter-spacing:0;text-transform:uppercase;color:var(--acc)}
.nxt small,.tel small{display:block;color:var(--on-dark-2);font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.nxt strong{display:block;font-size:14.5px;font-weight:700;line-height:1.3}
.nxt:hover strong{color:var(--acc)}
.tel{flex:none;color:#fff;text-align:right;text-decoration:none}
.tel b{font-size:20px;letter-spacing:-.03em}
.tel:hover b{color:var(--acc)}

/* short laptop screens: the contents go first, then the moving subtitle */
@media (min-width:1100px) and (max-width:1279px){.lbot{flex-wrap:wrap}}
@media (min-width:1100px) and (max-height:820px){.toc{display:none}.lcta{margin-top:22px}}
@media (min-width:1100px) and (max-height:640px){.lsub,.count{display:none}.say{margin-top:0}}
@media (min-width:1100px) and (max-height:700px){.menu-top .tl{width:80px}.menu-nav > a,.menu-h{padding:5px 0}.menu-group a{padding:3px 0}}

/* the still half is a quarter narrower than it was, so what sits in it comes down a step to match */
@media (min-width:1100px){
  .split .left .brand .tl{width:clamp(124px,9.4vw,152px)}
  .left .menu-btn{height:40px;padding:0 14px;gap:9px;font-size:13.5px}
  .count{font-size:12px}
  .count b{font-size:14px}
  .count i{width:26px}
  .say{margin-top:12px}
  .say > *{font-size:clamp(28px,2.6vw,42px)}
  .lsub{margin-top:13px!important;max-width:36ch;font-size:15px;line-height:1.5}
  .lcta{gap:10px;margin-top:16px}
  .left .sbtn{height:46px;padding:0 18px;font-size:14.5px}
  .toc a{gap:12px;padding:5px 0;font-size:13.8px}
  .split .toc.dense{margin-top:clamp(14px,2.4vh,26px)}
  .split .toc.dense a{padding:1px 0;font-size:13.2px}
  .toc em{width:18px;font-size:11.5px}
  .toc a[aria-current] i{width:36px}
  /* the foot: the number sits up in the space under the contents, the deadline goes to the bottom */
  .left{grid-template-rows:auto minmax(0,1fr) auto auto auto}
  .lbot{display:contents}
  .tel{order:1;position:relative;margin-top:16px;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.1);text-align:center}
  .tel::before{content:"";display:block;width:34px;height:34px;margin:0 auto 12px;border-radius:50%;background:var(--acc) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z' fill='none' stroke='%230B1020' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/17px no-repeat;transition:transform .3s var(--ease)}
  .tel:hover::before{transform:scale(1.08)}
  .tel small{margin-bottom:7px;font-size:10.5px;letter-spacing:.14em}
  .tel b{display:block;font-size:26px;letter-spacing:-.035em;line-height:1}
  .nxt{order:2;display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
  .nxt small{font-size:10.5px}
  .nxt strong{font-size:13px}
  .nring{width:40px;height:40px}
  .nring b{width:32px;height:32px;font-size:12.5px}
  .menu-foot{grid-template-columns:1fr;gap:12px}
  .menu-foot a:not(.sbtn){font-size:14px}
  .menu-foot .sbtn{margin-top:4px}
}

/* ---------- the menu: over the still half only (the whole screen on phones), headed by the stacked logo with its line ---------- */
.smenu{position:fixed;left:0;top:0;bottom:0;width:var(--lw);z-index:30;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;padding:28px var(--lpad);color:#fff;overflow-y:auto;overscroll-behavior:contain;background:radial-gradient(70% 45% at 0% 100%,rgba(var(--acc-rgb),.16),rgba(var(--acc-rgb),0) 70%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px) 0 0/52px 52px,linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px) 0 0/52px 52px,var(--dark);opacity:0;transition:opacity .3s}
.smenu[hidden]{display:none}
.smenu.show{opacity:1}
.smenu:focus{outline:none}
.menu-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.menu-top .tl{width:clamp(92px,7.4vw,120px)}
.menu-x{display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:none;color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .25s}
.menu-x:hover{background:rgba(255,255,255,.1)}
.menu-x svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.menu-nav{display:grid;align-content:center;min-height:0}
.menu-nav > a,.menu-h{display:flex;align-items:baseline;gap:14px;margin:0;padding:7px 0;color:#fff;font-size:clamp(18px,1.55vw,22px);font-weight:700;letter-spacing:-.025em;line-height:1.2;text-decoration:none;transition:color .25s}
.menu-nav em{flex:none;width:22px;font-style:normal;font-size:12px;font-weight:700;letter-spacing:0;color:#6F7A93}
.menu-nav > a:hover,.menu-nav > a[aria-current]{color:var(--acc)}
.menu-h{width:100%;border:0;background:none;font-family:inherit;text-align:left;cursor:pointer}
.menu-h:hover,.menu-h.here{color:var(--acc)}
.menu-h i{align-self:center;width:8px;height:8px;margin-left:2px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg);transition:transform .25s}
.menu-h[aria-expanded="true"] i{transform:translateY(2px) rotate(225deg)}
.menu-group ul[hidden]{display:none}
.menu-group a[aria-current]{color:var(--acc)}
.menu-group ul{display:grid;margin:0 0 6px 36px;padding-left:16px;border-left:1px solid rgba(255,255,255,.14)}
.menu-group a{display:block;padding:5px 0;color:var(--on-dark);font-size:15.5px;font-weight:600;text-decoration:none;transition:color .25s}
.menu-group a:hover{color:var(--acc)}
.menu-foot{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:14px 18px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}
.menu-foot a:not(.sbtn){color:#fff;font-size:14.5px;font-weight:700;text-decoration:none;overflow-wrap:anywhere}
.menu-foot a:not(.sbtn):hover{color:var(--acc)}
.menu-foot small{display:block;margin-bottom:2px;color:var(--on-dark-2);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.menu-foot .sbtn{justify-self:start;height:46px;padding:0 20px;font-size:14.5px}

/* ---------- the moving half ---------- */
.right{margin-left:var(--lw);min-height:100vh}
.sec{padding:40px var(--pad) 92px;border-bottom:1px solid var(--line)}
.sec:first-child{padding-top:26px}
.label{display:flex;align-items:center;gap:12px;margin:0 0 22px!important;font-size:13px;font-weight:700;color:var(--muted)}
.label b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--ink);color:var(--acc);font-size:12px}
.label::after{content:"";flex:1;height:1px;background:var(--line)}
.sh{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.more{display:inline-flex;margin-top:20px;padding-bottom:2px;border-bottom:2px solid var(--acc);color:var(--ink);font-weight:700;text-decoration:none}
.more:hover{color:var(--acc-text)}
.lead{max-width:52ch;margin-bottom:30px!important;color:var(--graphite);font-size:20px;line-height:1.55}

/* ---------- questions (every page) ---------- */
.faq{border-bottom:1px solid var(--line)}
.faq-item{border-top:1px solid var(--line)}
.faq-item h3{margin:0;font:inherit;letter-spacing:inherit}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:20px 0;border:0;background:none;color:var(--ink);font:inherit;font-size:17.5px;font-weight:700;letter-spacing:-.015em;text-align:left;cursor:pointer}
.faq-q:hover{color:var(--acc-text)}
.faq-q i{flex:none;position:relative;width:34px;height:34px;border-radius:50%;background:var(--soft);transition:background .25s}
.faq-q i::before,.faq-q i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;border-radius:1px;background:var(--ink);transform:translate(-50%,-50%);transition:transform .3s var(--ease)}
.faq-q i::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq-item.open .faq-q i{background:var(--acc)}
.faq-item.open .faq-q i::after{transform:translate(-50%,-50%)}
.faq-a{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .38s var(--ease),visibility 0s .38s}
.faq-item.open .faq-a{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .38s var(--ease)}
.faq-a > div{overflow:hidden}
.faq-a p{max-width:62ch;padding-bottom:22px;color:var(--muted);font-size:16px;line-height:1.65}

/* ---------- the closing section: a lime card and the contact details (every page) ---------- */
.sec:last-child{border-bottom:0}
.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}
.ccard{position:relative;overflow:hidden;padding:34px;border-radius:28px;background:var(--acc);color:var(--on-acc)}
.ccard h3{max-width:18ch;margin:0;color:var(--ink);font-size:clamp(26px,2.4vw,34px);font-weight:800;letter-spacing:-.045em;line-height:1.08}
.ccard p{margin-top:12px!important;color:#2A3A0A;line-height:1.55}
.ccard .row{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.cinfo{display:grid;align-content:start;gap:16px;padding:30px;border-radius:28px;background:var(--soft)}
.cinfo a,.cinfo div{color:var(--ink);text-decoration:none}
.cinfo small{display:block;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.cinfo b{font-size:18px;letter-spacing:-.02em}
.cinfo a:hover b{color:var(--acc-text)}
.cinfo .wa-link{display:inline-flex;align-items:center;gap:10px;justify-self:start;margin-top:4px;padding:11px 18px;border-radius:999px;background:var(--ink);color:#fff;font-size:14.5px;font-weight:700}
.cinfo .wa-link:hover{background:var(--dark-2)}
.cinfo .wa-link svg{width:18px;height:18px;color:var(--acc)}

/* ---------- footer, inside the moving half ---------- */
.split footer.sfoot{clip-path:none;margin:0;padding:0 var(--pad) 40px;border-radius:0;background:#fff;color:var(--muted);font-size:14.5px}
.sfoot-top{display:flex;align-items:center;gap:clamp(24px,3vw,44px);padding:44px 0 32px;border-top:1px solid var(--line)}
.sfoot-top .tl{flex:none;width:130px}
.sfoot-about{display:grid;gap:6px;line-height:1.6}
.sfoot-about p:first-child{color:var(--graphite);font-size:17px;font-weight:600;letter-spacing:-.01em}
.sfoot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:30px 0;border-top:1px solid var(--line)}
.split .sfoot h4{margin:0 0 12px;color:var(--ink);font-size:14px;letter-spacing:-.01em}
.split .sfoot ul{display:grid;gap:4px}
.split .sfoot a{color:var(--muted);text-decoration:none}
.split .sfoot a:hover{color:var(--acc-text)}
.split .sfoot details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.split .sfoot summary{padding:18px 0;color:var(--ink);font-size:15px;font-weight:700;letter-spacing:-.01em;text-transform:none;cursor:pointer;list-style:none}
.split .sfoot summary::-webkit-details-marker{display:none}
.split .sfoot summary::after{content:"+";float:right;color:var(--acc-text);font-size:20px;line-height:1}
.split .sfoot details[open] summary::after{content:"\2013"}
.split .sfoot .privacybody p{margin:0 0 12px;color:var(--muted);font-size:14px;line-height:1.7}
.split .sfoot .privacybody strong{color:var(--ink)}
.split .sfoot .legal{padding-top:22px;color:var(--muted);font-size:13px;line-height:1.7}
.split .sfoot .legal p{margin:0 0 6px;max-width:90ch}
.split .sfoot .legal a{color:var(--graphite)}

/* ---------- tablets and phones: the still half becomes the opening block, with a slim bar on top ---------- */
@media (max-width:1099px){
  .split{--lw:0px;--pad:clamp(20px,5vw,40px)}
  .left{position:relative;inset:auto;width:auto;display:block;padding:104px var(--pad) 30px;overflow:hidden}
  .split .left .ltop{position:fixed;left:0;right:0;top:0;z-index:60;padding:12px var(--pad);background:rgba(11,16,32,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
  .split .left .brand .tl{width:140px}
  .lmid{padding:0}
  .lhead,.toc{display:none}
  .smenu{right:0;width:auto;z-index:400;padding:14px var(--pad) 28px}
  .menu-top .tl{width:92px}
  body.menu-open{overflow:hidden}
  .say{margin-top:0}
  .say > *{opacity:1;transform:none;font-size:clamp(40px,9vw,64px)}
  .say > :not(h1){display:none}
  .lsub{min-height:0}
  .lbot{margin-top:34px}
  .sec{padding:56px var(--pad) 64px}
  .sec:first-child{padding-top:var(--pad)}
  .sh{position:static;width:auto;height:auto;margin:0 0 18px;overflow:visible;clip:auto;clip-path:none;white-space:normal;color:var(--ink);font-size:clamp(32px,6.6vw,46px);font-weight:800;letter-spacing:-.045em;line-height:1.04}
  .sh span{color:var(--acc-text)}
  .label{margin-bottom:14px!important}
  #totop{display:block}
}
@media (max-width:760px){
  .contact{grid-template-columns:1fr}
  .sfoot-top{flex-direction:column;align-items:flex-start;gap:18px}
  .sfoot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){
  .lbot{flex-direction:column;align-items:flex-start}
  .tel{text-align:left}
  .lcta .sbtn{flex:1 1 100%}
  .ccard,.cinfo{padding:26px}
  .sfoot-grid{grid-template-columns:1fr}
  .menu-foot{grid-template-columns:1fr}
}
@media (min-width:1100px){#totop{display:none}}

@media (prefers-reduced-motion:reduce){
  .logo-intro .left :is(.tl-t,.tl-coin,.tl-tax,.tl-reck),.tl.turn .tl-coin{animation:none}
  .say > *{transform:none;transition:opacity .2s}
  .lsub,.smenu,.up{transition:none}
}

/* a screen under about 920px tall: the two buttons come down a size so they sit on one line */
@media (min-width:1100px) and (max-height:920px){
  .split .left .sbtn{height:42px;padding:0 13px;font-size:13.2px}
  .split .lcta{gap:8px;margin-top:14px}
  .split .say{margin-top:10px}
  .split .lsub{margin-top:11px!important}
  .split .toc.dense{margin-top:clamp(12px,1.8vh,20px)}
  .split .toc.dense a{padding:0}
  .split .toc a{padding:2px 0}
  .split .tel{padding-top:18px}
  .split .tel::before{width:28px;height:28px;margin-bottom:8px;background-size:14px}
  .split .tel small{margin-bottom:5px}
  .split .tel b{font-size:23px}
  .split .nxt{margin-top:12px;padding-top:12px}
  .split .lsub{line-height:1.45}
  .split .lcta{margin-top:12px}
}
/* the longest contents lists (nine or ten items) need a tall screen; on a short one they stand down */
@media (min-width:1100px) and (max-height:880px){
  .split .toc.long{display:none}
}

/* ---------- credentials (14 October 2026) ---------- */
/* the line at the foot of the still half, on every page: the ICB licence, HMRC agent (in the logo green) and Companies
   House ACSP, linking to the credentials on the about page. On a computer it sits under the next deadline, so it is
   always in view; on tablets and phones it closes the opening block. One line at every computer width: the full wording
   from 1536px, a step smaller at 1440px, and "ACSP" on its own below that (the link's label always carries it in full). */
.lcred{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);color:var(--on-dark-2);font-size:11px;font-weight:700;letter-spacing:.005em;line-height:1.35;text-align:center;text-decoration:none;transition:color .25s}
.lcred svg{flex:none;width:15px;height:15px;fill:none;stroke:var(--acc);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.lcred-t{text-wrap:balance}
.lcred b{color:var(--acc);font-weight:inherit}
.lcred i{margin:0 5px;color:var(--acc);font-style:normal}
.lcred:hover{color:#fff}
@media (min-width:1100px){.lcred{order:3}.lcred-t{white-space:nowrap}}
@media (min-width:1700px){.lcred{font-size:12px}}
@media (min-width:1440px) and (max-width:1535px){.lcred{font-size:10px}}
@media (min-width:1100px) and (max-width:1439px){.lcred-ch{display:none}}
@media (min-width:1100px) and (max-height:920px){.split .lcred{margin-top:10px;padding-top:10px}}
@media (max-width:1099px){.lcred{justify-content:flex-start;margin-top:22px;padding-top:16px;font-size:12.5px;text-align:left}}
@media (max-width:520px){.lcred{font-size:11px}.lcred i{margin:0 4px}}

/* the "Certified & accredited" panel on the home and about pages: a navy panel with a faint grid, a centred heading, and
   six white cards in two rows, the registrations first (ICB, HMRC, Companies House), then the software (QuickBooks, Xero,
   FreeAgent). Each card has a short caption, so an accreditation and software we simply work in are never confused.
   HMRC and Companies House do not allow firms to use their logos, so those two cards are TaxReck badges: an icon in our
   colours and the name in text. */
.accred{position:relative;isolation:isolate;overflow:hidden;margin-top:26px;padding:clamp(36px,4.2vw,60px) clamp(20px,3vw,44px) clamp(28px,3.4vw,44px);border-radius:30px;background:var(--ink);text-align:center}
.accred::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 35%,#000 25%,transparent 85%);mask-image:radial-gradient(ellipse 80% 70% at 50% 35%,#000 25%,transparent 85%)}
.accred::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 55% 45% at 50% 0,rgba(var(--acc-rgb),.13),transparent 70%)}
.accred-k{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:1px solid rgba(var(--acc-rgb),.28);border-radius:999px;background:rgba(var(--acc-rgb),.08);color:var(--acc);font-size:12.5px;font-weight:800;letter-spacing:.01em}
.accred-k i{width:7px;height:7px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 4px rgba(var(--acc-rgb),.18)}
.accred h2,.accred h3{margin:18px 0 0;color:#fff;font-size:clamp(30px,3.3vw,46px);font-weight:800;letter-spacing:-.045em;line-height:1.04}
.accred h2 span,.accred h3 span{color:var(--acc)}
.accred-sub{max-width:64ch;margin:14px auto 0!important;color:var(--on-dark);font-size:16px;line-height:1.6}
.accred-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,20px);margin:clamp(28px,3.2vw,42px) 0 0;padding:0;list-style:none}
.accred-cards li{display:flex;flex-direction:column;align-items:center;gap:14px;min-height:184px;padding:22px 16px 16px;border-radius:22px;background:#fff;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.accred-cards li:hover{transform:translateY(-4px);box-shadow:0 22px 40px -18px rgba(0,0,0,.55)}
.accred-cards .lg{flex:1;display:grid;place-items:center;width:100%}
.accred-cards img{display:block;width:auto;max-width:100%;height:calc(var(--h) * 1px)}
.accred-cards small{display:block;min-height:calc(2.7em + 12px);padding-top:12px;width:100%;border-top:1px solid var(--line);color:var(--muted);font-size:12.5px;font-weight:700;line-height:1.35}
.accred-cards .lic small{color:var(--ink)}
.accred-cards .lic small b{color:var(--acc-text)}
.accred-cards .reg .lg{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px}
.reg-ic{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:var(--ink);box-shadow:inset 0 0 0 1px rgba(var(--acc-rgb),.25)}
.reg-ic svg{width:26px;height:26px;fill:none;stroke:var(--acc);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.reg-t em{display:block;color:var(--muted);font-size:11px;font-style:normal;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.reg-t b{display:block;margin-top:3px;color:var(--ink);font-size:clamp(17px,1.45vw,20px);font-weight:800;letter-spacing:-.03em;line-height:1.1}
.accred + .a-creds{margin-top:clamp(22px,2.6vw,32px)}
@media (max-width:760px){.accred-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.accred-cards li{min-height:164px;padding:18px 12px 14px}.accred-cards img{height:calc(var(--h) * .85px)}.reg-ic{width:44px;height:44px;border-radius:13px}.reg-ic svg{width:23px;height:23px}.reg-t b{font-size:16px}}
@media (prefers-reduced-motion:reduce){.accred-cards li{transition:none}.accred-cards li:hover{transform:none}}
