/* TotalGrader Studio — polished responsive design system */
:root{--ink:#14213d;--muted:#66748b;--blue:#4169e1;--blue-dark:#294fc4;--cyan:#74d5e8;--line:#e6ebf3;--soft:#f5f7fc;--paper:#fff;--green:#13845c;--shadow:0 18px 55px rgba(20,33,61,.09);--radius:20px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px/1.72 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--blue);text-decoration:none;transition:color .18s ease}a:hover{color:var(--blue-dark);text-decoration:none}img{max-width:100%;height:auto}.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:15px;top:15px;background:white;padding:10px;z-index:99}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(230,235,243,.9)}.header-inner{min-height:82px;display:flex;align-items:center;gap:34px}.site-brand{margin-right:auto}.site-title{display:inline-flex;align-items:center;gap:0;color:var(--ink);font-size:26px;font-weight:850;letter-spacing:-1.4px;line-height:1}.site-title span{color:var(--blue)}.site-title small{display:block;margin-left:10px;padding-left:10px;border-left:1px solid var(--line);font-size:9px;letter-spacing:1.4px;color:#8793a8;font-weight:800}.custom-logo{max-height:52px;width:auto}.primary-navigation ul{display:flex;align-items:center;gap:30px;list-style:none;margin:0;padding:0}.primary-navigation a{color:#53617a;font-size:13px;font-weight:700}.primary-navigation a:hover{color:var(--blue)}.header-cta{display:inline-flex;align-items:center;gap:10px;padding:12px 17px;border-radius:10px;background:var(--ink);color:#fff;font-size:13px;font-weight:750;box-shadow:0 6px 16px rgba(20,33,61,.12)}.header-cta:hover{background:var(--blue);color:#fff}.menu-toggle{display:none}
/* Homepage hero */
.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:70px;padding:88px 0 82px}.hero:before{content:"";position:absolute;z-index:-1;top:18px;right:-10vw;width:58vw;height:520px;background:radial-gradient(ellipse at 65% 45%,rgba(116,213,232,.20),rgba(65,105,225,.07) 45%,transparent 72%);pointer-events:none}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--blue);font-size:10px;font-weight:850;letter-spacing:1.65px;text-transform:uppercase;margin-bottom:16px}.eyebrow:before{content:"";display:inline-block;width:22px;height:2px;background:var(--cyan);border-radius:5px}.hero h1{max-width:650px;font-size:clamp(44px,5.4vw,70px);line-height:1.035;letter-spacing:-3.4px;margin:0 0 23px;font-weight:850}.hero h1 span{color:var(--blue)}.hero-copy>p{max-width:560px;font-size:18px;line-height:1.75;color:var(--muted);margin:0 0 29px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:48px;border:0;border-radius:10px;padding:12px 20px;font-weight:780;font-size:14px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff;box-shadow:0 9px 22px rgba(65,105,225,.23)}.button-primary:hover{background:var(--blue-dark);color:#fff;box-shadow:0 12px 25px rgba(65,105,225,.28)}.button-light{background:#edf2ff;color:var(--blue)}.button-light:hover{background:#e2eaff}.text-link{font-size:13px;font-weight:800;color:var(--blue)}.hero-panel{position:relative;background:linear-gradient(145deg,#fff 15%,#f5f8ff 100%);border:1px solid #e4eaf5;border-radius:24px;padding:31px 34px;box-shadow:0 25px 70px rgba(37,61,112,.12);overflow:hidden}.hero-panel:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;background:rgba(116,213,232,.16);right:-95px;top:-105px}.panel-top{position:relative;z-index:1;font-size:10px;font-weight:850;letter-spacing:1.2px;color:#78869c}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#29b47d;margin-right:8px;box-shadow:0 0 0 4px rgba(41,180,125,.12)}.panel-label{float:right;background:#edf2ff;color:#52699d;padding:4px 9px;border-radius:6px;font-size:9px}.snapshot-score{font-size:88px;font-weight:850;letter-spacing:-6px;line-height:1;margin-top:30px;color:var(--ink)}.snapshot-score span{font-size:38px;color:var(--blue);letter-spacing:-2px}.snapshot-grade{font-size:14px;font-weight:800;color:var(--green);margin-top:9px}.meter{height:10px;background:#e5eaf3;border-radius:20px;overflow:hidden;margin-top:22px}.meter span{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,var(--blue),#72cfe2)}.snapshot-foot{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:13px}.snapshot-foot strong{color:var(--ink)}.fine-print,.calculator-note{font-size:11px;line-height:1.6;color:#8490a3;margin-top:20px}.section-block{padding:50px 0 65px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:27px}.section-heading h1,.section-heading h2{font-size:clamp(28px,3vw,38px);line-height:1.15;letter-spacing:-1.4px;margin:0 0 8px;font-weight:830}.section-heading p{margin:0;color:var(--muted);font-size:15px}.section-heading>.text-link{padding-bottom:7px;white-space:nowrap}
/* Tool cards and trust strip */
.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.tool-card{position:relative;display:flex;flex-direction:column;min-height:218px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:16px;color:var(--ink);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.tool-card:after{content:"↗";position:absolute;right:22px;top:23px;color:#a2aec1;font-size:16px}.tool-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#c8d5f5;color:var(--ink)}.tool-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:linear-gradient(145deg,#eef3ff,#e5f8fb);color:var(--blue);font-size:13px;font-weight:900;margin-bottom:17px}.tool-card-title{font-size:17px;font-weight:820;letter-spacing:-.25px}.tool-card-desc{font-size:13px;color:var(--muted);line-height:1.6;margin-top:6px;max-width:310px}.tool-card-link{font-size:12px;color:var(--blue);font-weight:850;margin-top:auto;padding-top:17px}.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:27px 32px;background:linear-gradient(110deg,#f4f7ff,#f5fbfc);border:1px solid #e8edf6;border-radius:18px;margin:16px 0 38px}.trust-strip div{display:flex;flex-direction:column;gap:3px}.trust-strip strong{font-size:14px}.trust-strip span{font-size:12px;color:var(--muted)}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.post-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.post-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.post-thumb{display:block;aspect-ratio:16/9;background:var(--soft);overflow:hidden}.post-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.post-card:hover .post-thumb img{transform:scale(1.035)}.post-card-body{padding:21px}.post-meta{font-size:11px;color:#8793a7;font-weight:650}.post-card h2,.post-card h3{font-size:18px;line-height:1.35;letter-spacing:-.35px;margin:9px 0}.post-card h2 a,.post-card h3 a{color:var(--ink)}.post-card p{font-size:13px;line-height:1.65;color:var(--muted)}
/* Footer */
.site-footer{background:#111d35;color:#fff;margin-top:72px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:55px;padding:55px 0 48px}.footer-logo{color:#fff}.footer-logo span{color:#8cb7ff}.footer-brand p{color:#aab6ca;font-size:13px;max-width:330px;margin-top:17px}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links h2{font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:#fff;margin:0 0 7px}.footer-links a{font-size:12px;color:#aab6ca}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:17px 0;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#91a0b8}
/* Content templates */
.page-container{max-width:880px;padding-top:58px}.entry-header{margin-bottom:27px}.entry-header h1{font-size:clamp(34px,4vw,49px);line-height:1.12;letter-spacing:-1.8px;margin:8px 0 15px;font-weight:850}.entry-excerpt{font-size:18px;line-height:1.65;color:var(--muted)}.entry-content{font-size:16px;line-height:1.85;color:#34435b}.entry-content h2{font-size:28px;line-height:1.25;letter-spacing:-.7px;color:var(--ink);margin:42px 0 13px}.entry-content h3{font-size:21px;color:var(--ink);margin:29px 0 10px}.entry-content p,.entry-content ul,.entry-content ol{margin:0 0 19px}.entry-content a{text-decoration:underline;text-underline-offset:3px}.entry-content table{width:100%;border-collapse:collapse;margin:22px 0;font-size:14px}.entry-content th,.entry-content td{padding:12px;border:1px solid var(--line);text-align:left}.entry-content th{background:var(--soft)}.featured-image img{width:100%;border-radius:16px}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:45px;padding-top:48px}.main-content{min-width:0}.sidebar{display:flex;flex-direction:column;gap:16px}.widget{padding:21px;border:1px solid var(--line);border-radius:15px;background:#fff}.widget-title{font-size:16px;letter-spacing:-.3px;margin:0 0 12px}.calculator-shell{max-width:800px;margin:32px auto;padding:32px;background:#fff;border:1px solid #e3e9f3;border-radius:20px;box-shadow:0 16px 45px rgba(20,33,61,.07)}.calculator-intro h2{font-size:29px;line-height:1.2;letter-spacing:-.8px;margin:0 0 8px}.calculator-intro p{color:var(--muted);margin:0 0 25px;font-size:14px}.calculator-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:780;color:#34435b}.field input,.field select{width:100%;min-height:48px;border:1px solid #dce3ee;border-radius:10px;padding:11px 13px;font:inherit;font-size:14px;font-weight:500;color:var(--ink);background:#fbfcfe;transition:border-color .18s,box-shadow .18s}.field input:focus,.field select:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(65,105,225,.11);background:#fff}.field-help{grid-column:1/-1;color:var(--muted);font-size:13px;margin:0}.calculator-actions{display:flex;gap:11px;margin-top:24px}.calculator-result{background:linear-gradient(110deg,#eff4ff,#f0fbfc);border:1px solid #dce8fb;border-radius:13px;padding:20px;margin-top:21px}.calculator-result[hidden]{display:none}.result-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:#72809a;font-weight:850}.result-value{display:block;font-size:32px;line-height:1.2;color:var(--blue);margin:7px 0;font-weight:850;letter-spacing:-1px}.result-detail{font-size:13px;color:#43516a;margin:0}.calculator-note{margin-top:20px}.author-box{background:var(--soft);border:1px solid var(--line);border-radius:13px;padding:19px;margin-top:32px}.author-box p{margin:5px 0 0}.error-page{text-align:center;padding:110px 20px}.error-page h1{font-size:44px;letter-spacing:-1.5px}.error-page p,.empty-state{color:var(--muted)}.search-form{display:flex;gap:7px}.search-field{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:9px}.search-submit{border:0;border-radius:9px;background:var(--blue);color:white;padding:10px 15px;font-weight:700}.pagination{margin:32px 0}
@media(max-width:960px){.hero{gap:38px;padding:68px 0}.primary-navigation ul{gap:18px}.content-layout{grid-template-columns:minmax(0,1fr) 235px;gap:28px}}
@media(max-width:760px){.container{width:calc(100% - 34px)}.header-inner{min-height:70px;gap:15px}.site-title{font-size:23px}.site-title small{display:none}.menu-toggle{display:block;margin-left:auto;background:#fff;border:1px solid var(--line);border-radius:9px;padding:8px 9px}.menu-toggle span{display:block;width:20px;height:2px;background:var(--ink);margin:4px}.header-cta{display:none}.primary-navigation{display:none;position:absolute;left:0;right:0;top:70px;background:#fff;border-bottom:1px solid var(--line);padding:12px 20px 18px;box-shadow:0 18px 25px rgba(20,33,61,.08)}.primary-navigation.is-open{display:block}.primary-navigation ul{display:flex;flex-direction:column;align-items:stretch;gap:0}.primary-navigation a{display:block;padding:11px 5px;border-bottom:1px solid #f0f2f6}.hero{grid-template-columns:1fr;gap:32px;padding:53px 0 45px}.hero:before{width:100vw;right:-20px;height:420px}.hero h1{font-size:clamp(42px,10vw,57px);letter-spacing:-2.5px}.hero-copy>p{font-size:16px}.hero-panel{max-width:540px}.section-block{padding:37px 0 45px}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.section-heading>.text-link{padding:0}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tool-card{padding:18px;min-height:210px}.post-grid{grid-template-columns:1fr 1fr}.trust-strip{grid-template-columns:1fr;padding:22px;gap:15px}.footer-main{grid-template-columns:1fr 1fr;gap:30px;padding:42px 0}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}.content-layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr}.page-container{padding-top:39px}.calculator-shell{padding:24px;margin:23px 0}.site-footer{margin-top:48px}}
@media(max-width:480px){.container{width:calc(100% - 28px)}.hero{padding-top:43px}.hero h1{font-size:42px}.hero-actions{align-items:stretch;flex-direction:column;gap:13px}.hero-actions .button{width:100%}.hero-actions .text-link{text-align:center}.hero-panel{padding:25px}.snapshot-score{font-size:76px}.tool-grid,.post-grid{grid-template-columns:1fr}.tool-card{min-height:185px}.calculator-shell{padding:19px;border-radius:15px}.calculator-fields{grid-template-columns:1fr}.calculator-actions{flex-direction:column}.calculator-actions .button{width:100%}.sidebar{display:flex}.footer-main{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/-1}.entry-header h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
