/* Premium layer: palette, type, header, sidebar, buttons, calculators, footer, motion. Light scheme only; dark keeps the theme values. */
html:root{
--cs-light-primary-color:#12261b;--cs-light-secondary-color:#5b6a61;--cs-light-accent-color:#1a8844;
--cs-light-site-background-start:#fafaf7;--cs-light-site-background-end:#fafaf7;--cs-light-layout-background:#fff;--cs-light-header-background:#fff;
--cs-light-border-color:#e4e9e5;--cs-light-input-background:#fff;--cs-light-header-highlight-background:#eef6f1;
--cs-light-button-background-start:#1a8844;--cs-light-button-background-end:#1a8844;--cs-light-button-color:#fff;
--cs-light-button-hover-background-start:#126b34;--cs-light-button-hover-background-end:#126b34;--cs-light-button-hover-color:#fff;
--cs-font-post-title-weight:600;--cs-font-post-title-letter-spacing:-.03em;--cs-font-primary-weight:700;--cs-font-primary-letter-spacing:-.015em;
--cs-button-border-radius:10px;
--ttp-green:#1a8844;--ttp-green-dark:#0f3b25;--ttp-gold:#d9a521;--ttp-radius:14px;--ttp-shadow:0 2px 10px rgba(15,59,37,.06);--ttp-shadow-hover:0 12px 30px rgba(15,59,37,.13)}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3{text-wrap:balance}

/* Header */
.cs-header{border-bottom:1px solid var(--cs-light-border-color,#e4e9e5);box-shadow:0 1px 12px rgba(15,59,37,.05)}
.cs-header__nav-inner>li>a{position:relative;transition:color .2s}
.cs-header__nav-inner>li>a:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--ttp-green);transform:scaleX(0);transition:transform .25s}
.cs-header__nav-inner>li>a:hover:after,.cs-header__nav-inner>li.current-menu-item>a:after,.cs-header__nav-inner>li.current-menu-ancestor>a:after{transform:scaleX(1)}
.cs-header__nav-inner>li.current-menu-item>a,.cs-header__nav-inner>li>a:hover{color:var(--ttp-green)}
.cs-logo img{height:auto;max-height:52px;width:auto}

/* Sidebar as a card */
.cs-sidebar__inner{border:1px solid var(--cs-light-border-color,#e4e9e5);border-radius:var(--ttp-radius);box-shadow:var(--ttp-shadow)}
.ttp-hublinks li{border-bottom-color:#eef2ef;transition:padding .15s}
.ttp-hublinks li:hover{padding-left:.25rem}

/* Buttons */
button,input[type=button],input[type=submit],.cs-button,.wp-block-button__link{border-radius:10px;box-shadow:0 1px 2px rgba(15,59,37,.15)}
.ttp-calc .ttp-btn{border-radius:10px;padding:.65rem 1.15rem;font-weight:600;background:var(--ttp-green);border-color:var(--ttp-green);box-shadow:0 1px 2px rgba(15,59,37,.15);transition:background .2s,box-shadow .2s,transform .2s}
.ttp-calc .ttp-btn:hover{background:#126b34;border-color:#126b34;transform:translateY(-1px);box-shadow:0 6px 14px rgba(26,136,68,.25)}
.ttp-calc .ttp-btn--ghost{background:#fff;color:var(--ttp-green);box-shadow:none}
.ttp-calc .ttp-btn--ghost:hover{background:#e8f5f0;color:#126b34;transform:none;box-shadow:none}

/* Calculators */
.ttp-calc{--p:#1a8844;--pl:#e8f5f0;--b:#dfe7e2;--t:#12261b;border:1px solid #cfe3d7;border-radius:var(--ttp-radius);box-shadow:var(--ttp-shadow);padding:1.5rem}
.ttp-calc .ttp-input{background:#fff;border-radius:10px;border:1px solid #cfd9d3;transition:border-color .2s,box-shadow .2s}
.ttp-calc .ttp-input:focus-within{border-color:var(--ttp-green);box-shadow:0 0 0 3px rgba(26,136,68,.15)}
.ttp-calc .ttp-result{background:linear-gradient(135deg,#0f3b25 0%,#1a8844 100%);color:#fff;border-radius:var(--ttp-radius);padding:1.4rem;box-shadow:0 10px 26px rgba(15,59,37,.18)}
.ttp-calc .ttp-result .ttp-big{color:#fff;font-size:2.5rem;letter-spacing:-.03em}
.ttp-calc .ttp-result .ttp-big small,.ttp-calc .ttp-result .ttp-sub,.ttp-calc .ttp-result .ttp-note{color:rgba(255,255,255,.82)}
.ttp-calc .ttp-result .ttp-rows td,.ttp-calc .ttp-result .ttp-rows th{border-bottom-color:rgba(255,255,255,.22);color:#fff}
.ttp-calc .ttp-result a{color:#fff}
.ttp-calc .ttp-result .ttp-warn{color:#12261b}
.ttp-calc .ttp-result .ttp-btn{background:#fff;color:#0f3b25;border-color:#fff}
.ttp-calc .ttp-result .ttp-btn:hover{background:#e8f5f0;color:#0f3b25}
.ttp-calc .ttp-result .ttp-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.ttp-calc .ttp-result .ttp-btn--ghost:hover{background:rgba(255,255,255,.14);color:#fff}
.ttp-calc .ttp-opt[aria-pressed=true]{box-shadow:0 0 0 1px var(--ttp-green)}
.ttp-table th{background:#e8f5f0}
.ttp-faq details{border-radius:10px;padding:.7rem .9rem;border:1px solid #e4e9e5;margin:0 0 .5rem;background:#fff}
.ttp-faq details[open]{border-color:#cfe3d7;background:#f6fbf8}
@media(max-width:560px){.ttp-calc .ttp-result .ttp-big{font-size:2.1rem}}

/* Hub icons on home cards */
.ttp-hubcard .ttp-ico{display:block;margin-bottom:.5rem}

/* Scroll-to-top */
.cs-scroll-top{color:var(--ttp-green)}

/* Footer: deep green band with link columns */
.cs-footer{background:#0f3b25;color:#c9dcd0;margin-top:2rem;padding:1.5rem 0 .6rem}
.cs-footer a,.cs-footer .cs-footer__desc,.cs-footer .cs-footer__copyright,.cs-footer p{color:#c9dcd0}
.cs-footer a:hover{color:#fff}
.cs-footer .cs-footer__item-inner,.cs-footer .cs-footer__item-inner-bottom{border-color:rgba(255,255,255,.14)}
.cs-footer .cs-footer__nav a{color:#e3efe8}
.ttp-footcols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:1.2rem 2rem;padding:0;margin:0 0 .8rem}
.ttp-footcols h4{margin:0 0 .5rem;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ttp-gold)}
.ttp-footcols ul{list-style:none;margin:0;padding:0}
.ttp-footcols li{margin:0 0 .25rem}
.ttp-footcols a{text-decoration:none;font-size:.92rem}
.ttp-footcols a:hover{text-decoration:underline}
.ttp-footbrand strong{display:block;color:#fff;font-size:1.15rem;margin-bottom:.5rem}
.ttp-footbrand p{margin:0;font-size:.9rem;line-height:1.55}
.ttp-footbadge{display:inline-flex;align-items:center;gap:.4rem;margin-top:.6rem;padding:.3rem .7rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-size:.78rem;color:#e3efe8}
.ttp-footbadge:before{content:"\2713";color:var(--ttp-gold);font-weight:700}
@media(max-width:900px){.ttp-footcols{grid-template-columns:1fr 1fr}.ttp-footbrand{grid-column:1/-1}}
@media(max-width:520px){.ttp-footcols{grid-template-columns:1fr}}

/* Motion: cards fade in as they enter the screen (only when JS runs) */
.ttp-reveal-on .ttp-task,.ttp-reveal-on .ttp-hubcard,.ttp-reveal-on .ttp-pop,.ttp-reveal-on .ttp-post{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease,box-shadow .25s,border-color .25s}
.ttp-reveal-on .ttp-in{opacity:1;transform:none}
.ttp-task,.ttp-hubcard,.ttp-pop,.ttp-post{border-radius:var(--ttp-radius);box-shadow:var(--ttp-shadow)}
.ttp-task:hover,.ttp-hubcard:hover,.ttp-pop:hover,.ttp-post:hover{box-shadow:var(--ttp-shadow-hover)}
@media(prefers-reduced-motion:reduce){.ttp-reveal-on .ttp-task,.ttp-reveal-on .ttp-hubcard,.ttp-reveal-on .ttp-pop,.ttp-reveal-on .ttp-post{opacity:1;transform:none;transition:none}}

.cs-footer .cs-footer__item,.cs-footer .cs-footer__item-inner,.cs-footer .cs-footer__item-inner-bottom{margin:0!important;padding-top:.4rem!important;padding-bottom:.4rem!important}
.cs-footer .cs-footer__col{margin:0!important}
.cs-footer .cs-footer__copyright{margin:.3rem 0 0!important}
.cs-footer .cs-footer__item-inner{border:0!important}
