/* AIMT Free Tools family: standalone public hub, private-link Blueprint and
   cost worksheet. Site-wide typography/colors/nav come from AIMT's canonical
   shared stylesheets. Only new composition primitives live here. */
.ft-body{margin:0;background:var(--aimt-color-bg-primary);color:var(--aimt-color-text-primary);font-family:var(--aimt-font-sans);font-weight:300;-webkit-font-smoothing:antialiased}
.ft-body *{box-sizing:border-box}
.ft-body a:focus-visible,.ft-body button:focus-visible,.ft-body input:focus-visible,.ft-body textarea:focus-visible,.ft-body select:focus-visible{outline:2px solid var(--aimt-color-accent);outline-offset:3px}
.ft-shell{width:min(var(--aimt-container-max),calc(100% - 4rem));margin:0 auto}
.ft-eyebrow{display:block;font-family:var(--aimt-font-mono);font-weight:400;letter-spacing:var(--aimt-track-label-sm);text-transform:uppercase;font-size:var(--aimt-type-mono-sm);color:var(--aimt-color-accent);margin-bottom:1rem}
.ft-hero{padding:5rem 0 3.3rem;border-bottom:.5px solid rgba(255,255,255,.09)}
.ft-hero h1{font-family:var(--aimt-font-mont);font-size:clamp(2.35rem,5.8vw,4.4rem);font-weight:700;line-height:1.04;letter-spacing:-.035em;max-width:850px;text-transform:uppercase;margin:0}
.ft-hero h1 span{color:rgba(255,255,255,.49)}
.ft-lede{font-size:clamp(.97rem,1.6vw,1.12rem);font-weight:300;line-height:1.7;max-width:570px;color:rgba(255,255,255,.64);margin:1.2rem 0 0}
.ft-section{padding:3rem 0 4rem}
.ft-section-head{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1.55rem}
.ft-section-head h2{font-family:var(--aimt-font-mont);font-size:1.5rem;font-weight:600;letter-spacing:-.025em;margin:0}
.ft-section-head p{color:rgba(255,255,255,.5);margin:0;font-size:.85rem}
.ft-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}
.ft-filter{font:500 .72rem var(--aimt-font-sans);padding:.65rem 1rem;min-height:39px;border-radius:980px;background:rgba(255,255,255,.035);color:rgba(255,255,255,.65);border:.5px solid rgba(255,255,255,.12);cursor:pointer}
.ft-filter[aria-pressed="true"]{background:#faf8f5;border-color:#faf8f5;color:var(--aimt-color-bg-primary)}
.ft-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.ft-tool-card{padding:1.8rem;min-height:290px;border:.5px solid rgba(255,255,255,.09);border-radius:var(--aimt-radius-card);background:rgba(255,255,255,.03);display:flex;flex-direction:column}
.ft-tool-card[hidden]{display:none!important}
.ft-card-meta{font:.57rem var(--aimt-font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--aimt-color-accent);margin-bottom:1.5rem;line-height:1.5}
.ft-tool-card h3{font:600 1.4rem/1.18 var(--aimt-font-mont);letter-spacing:-.028em;margin:0 0 .7rem}
.ft-tool-card p{font-size:.91rem;line-height:1.65;color:rgba(255,255,255,.57);margin:0 0 1.4rem}
.ft-card-link{margin-top:auto;text-decoration:none;color:#fff;font:600 .67rem var(--aimt-font-mont);letter-spacing:.07em;text-transform:uppercase;padding-top:.7rem}
.ft-card-link:hover{text-decoration:underline;text-underline-offset:5px}
.ft-card-link span{margin-left:8px;font-size:1rem}
.ft-support{padding:2rem 0 4.4rem}
.ft-support-inner{background:var(--aimt-color-light-bg);border-radius:var(--aimt-radius-card);padding:2.1rem 2.35rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;color:var(--aimt-color-light-text)}
.ft-support h2{font:600 clamp(1.2rem,2.3vw,1.55rem) var(--aimt-font-mont);margin:0 0 .4rem;letter-spacing:-.025em}
.ft-support p{margin:0;color:var(--aimt-color-light-muted);font-size:.85rem;line-height:1.6}
.ft-pill-link{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;text-decoration:none;font:700 .64rem var(--aimt-font-mont);letter-spacing:.08em;text-transform:uppercase;padding:1rem 1.3rem;border-radius:980px;background:var(--aimt-color-light-text);color:white;min-height:46px}
.ft-pill-link:hover{background:var(--aimt-color-bg-primary)}
.ft-footer{border-top:.5px solid rgba(255,255,255,.08);padding:1.5rem 0 2.3rem;color:rgba(255,255,255,.44);font-size:.75rem;line-height:1.6}
.ft-footer-inner{display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.ft-footer a{color:rgba(255,255,255,.65);text-decoration:none}
.ft-footer a:hover{text-decoration:underline}
.ft-footer-links{display:flex;gap:1.2rem;flex-wrap:wrap}
.ft-content-wrap{max-width:910px;padding:3rem 0 4rem}
.ft-breadcrumb{font-size:.77rem;color:rgba(255,255,255,.48);margin-bottom:1.4rem}
.ft-breadcrumb a{color:rgba(255,255,255,.66)}
.ft-page-title{font:700 clamp(2rem,5vw,3.2rem)/1.07 var(--aimt-font-mont);text-transform:uppercase;letter-spacing:-.03em;margin:0 0 1rem}
.ft-intro{color:rgba(255,255,255,.66);font-size:.98rem;line-height:1.72;max-width:690px;margin:0 0 2rem}
.ft-note{background:rgba(255,255,255,.035);border:1px solid rgba(163,150,141,.18);padding:1rem 1.15rem;border-radius:var(--aimt-radius-md);font-size:.82rem;color:rgba(255,255,255,.7);line-height:1.6;margin:1.4rem 0}
.ft-actions{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center;margin:1.35rem 0}
.ft-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:980px;min-height:44px;padding:.78rem 1.3rem;border:1px solid rgba(255,255,255,.18);background:transparent;color:white;font:600 .68rem var(--aimt-font-mont);letter-spacing:.055em;text-transform:uppercase;text-decoration:none;cursor:pointer}
.ft-btn:hover{background:rgba(255,255,255,.08)}
.ft-btn-primary{background:#faf8f5;color:var(--aimt-color-bg-primary);border-color:#faf8f5}
.ft-btn-primary:hover{background:#e3ded9;color:var(--aimt-color-bg-primary)}
.ft-form-card{background:var(--aimt-color-light-bg);color:var(--aimt-color-light-text);border-radius:var(--aimt-radius-card);padding:2rem 2.2rem;margin:1.4rem 0}
.ft-form-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid rgba(0,0,0,.09);padding-bottom:1.1rem;margin-bottom:1.25rem}
.ft-form-header h2{font:600 1.12rem var(--aimt-font-mont);letter-spacing:-.025em;margin:0}
.ft-form-header span{font:400 .62rem var(--aimt-font-mono);color:var(--aimt-color-light-muted);letter-spacing:.1em;text-transform:uppercase}
.ft-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.ft-field{display:flex;flex-direction:column;min-width:0;gap:.4rem}
.ft-field.ft-full{grid-column:1/-1}
.ft-field label{font-size:.77rem;font-weight:500;color:var(--aimt-color-light-text)}
.ft-field small{font-size:.67rem;color:var(--aimt-color-light-muted);line-height:1.45}
.ft-field input,.ft-field textarea,.ft-field select{width:100%;min-height:43px;border:1px solid #d9d2cb;background:#fff;border-radius:8px;padding:.68rem .75rem;color:#262626;font:400 .9rem var(--aimt-font-sans)}
.ft-field textarea{resize:vertical;min-height:74px;line-height:1.48}
.ft-field input[type=number]{appearance:textfield}
.ft-field input[type=number]::-webkit-inner-spin-button{opacity:.5}
.ft-field input:focus,.ft-field textarea:focus,.ft-field select:focus{border-color:var(--aimt-color-accent)}
.ft-field input[aria-invalid=true]{border-color:#985454}
.ft-mini-label{font:.6rem var(--aimt-font-mono);letter-spacing:.13em;color:var(--aimt-color-light-muted);text-transform:uppercase;display:block;margin:1.35rem 0 .8rem}
.ft-form-copy{font-size:.77rem;line-height:1.55;color:var(--aimt-color-light-muted);margin:1rem 0 0}
.ft-results{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.11);border-radius:var(--aimt-radius-card);padding:1.8rem 2.1rem;margin:1.5rem 0}
.ft-results-eyebrow{font:.59rem var(--aimt-font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--aimt-color-accent)}
.ft-results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.35rem;margin:1.2rem 0}
.ft-results strong{font:600 1.7rem var(--aimt-font-mont);letter-spacing:-.035em;display:block;margin:.3rem 0}
.ft-results .ft-results-label{font:.76rem var(--aimt-font-sans);color:rgba(255,255,255,.55)}
.ft-results p{font-size:.79rem;line-height:1.7;color:rgba(255,255,255,.57)}
.ft-result-status{font-size:.84rem;color:rgba(255,255,255,.75);line-height:1.6}
.ft-checklist{display:grid;gap:.55rem;padding:0;margin:1rem 0;list-style:none}
.ft-checklist li{font-size:.86rem;color:rgba(255,255,255,.65)}
.ft-checklist li::before{content:'✓';margin-right:.65rem;color:var(--aimt-color-accent)}
.ft-resources{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:var(--aimt-radius-md);padding:1.5rem;margin:1.2rem 0}
.ft-resources h2{font:600 1rem var(--aimt-font-mont);margin:0 0 .65rem}
.ft-resources ul{margin:.6rem 0;padding-left:1.2rem;color:rgba(255,255,255,.65);line-height:1.85;font-size:.82rem}
.ft-resources a{color:#f1eae3}
.ft-tiny{font-size:.72rem;color:rgba(255,255,255,.45);line-height:1.6}
@media(max-width:850px){.ft-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ft-support-inner{align-items:flex-start}}
@media(max-width:680px){.ft-shell{width:calc(100% - 2.5rem)}.ft-hero{padding:3.2rem 0 2.35rem}.ft-section{padding:2.2rem 0}.ft-section-head{display:block}.ft-section-head p{margin-top:.5rem}.ft-grid{grid-template-columns:1fr}.ft-tool-card{min-height:225px;padding:1.5rem}.ft-card-meta{margin-bottom:1.1rem}.ft-support{padding:1rem 0 3rem}.ft-support-inner{display:block;padding:1.7rem}.ft-pill-link{margin-top:1.15rem}.ft-content-wrap{padding:2rem 0 3rem}.ft-form-card{padding:1.4rem;margin:1.1rem 0}.ft-form-grid{grid-template-columns:1fr}.ft-form-header h2{font-size:1rem}.ft-results{padding:1.45rem}.ft-results-grid{grid-template-columns:1fr 1fr}.ft-results-grid div:last-child{grid-column:1/-1}.ft-actions .ft-btn{flex:1 1 155px}.ft-footer-inner{display:block}.ft-footer-links{margin-top:.8rem}}
@media print{
  @page{size:letter;margin:12mm}
  html,.ft-body{background:#fff!important;color:#262626!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .aimt-public-nav,.ft-footer,.ft-breadcrumb,.ft-no-print,.ft-actions,.ft-support{display:none!important}
  .ft-shell{width:100%!important;max-width:none!important}
  .ft-content-wrap{padding:0!important}
  .ft-page-title{font-size:21pt;line-height:1.13;color:#262626;margin-bottom:7pt}
  .ft-eyebrow{font-size:7pt;color:#7a6e66;margin:0 0 6pt}
  .ft-intro{font-size:9pt;line-height:1.45;margin:0 0 10pt;color:#4a4440}
  .ft-form-card{border:1px solid #d9d2cb;border-radius:8px;margin:7pt 0;padding:11pt!important;break-inside:avoid}
  .ft-form-header{padding-bottom:6pt;margin-bottom:7pt}
  .ft-form-header h2{font-size:10pt}
  .ft-form-header span,.ft-mini-label{font-size:7pt}
  .ft-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7pt 10pt}
  .ft-field label{font-size:7.3pt}
  .ft-field small{font-size:6.7pt}
  .ft-field input,.ft-field select,.ft-field textarea{font-size:9pt;min-height:22pt;padding:4pt 5pt;color:#262626!important;border:1px solid #d0c8c0!important;box-shadow:none!important}
  .ft-field textarea{min-height:37pt}
  .ft-results{background:#faf8f5!important;border:1px solid #ddd6cf;margin:9pt 0;padding:10pt}
  .ft-results-eyebrow,.ft-results-label,.ft-result-status,.ft-results p{color:#6c625b!important}
  .ft-results-grid{grid-template-columns:repeat(3,1fr);margin:4pt 0;gap:6pt}
  .ft-results strong{color:#262626!important;font-size:14pt}
  .ft-results p{font-size:7pt;margin:6pt 0 0}
  .ft-note{color:#514a45!important;background:#faf8f5!important;margin:7pt 0;padding:7pt;font-size:7pt}
}

/* Editorial hub: category panels lead directly to three working resources. */
.ft-hub .ft-hero{padding:5.5rem 0 3.5rem;border-bottom:0}
.ft-hub .ft-hero h1{max-width:1050px;font-size:clamp(2.25rem,4.8vw,4.1rem);line-height:1.1;text-transform:none}
.ft-hub .ft-hero h1 span{color:#b4a49a}
.ft-hub .ft-lede{max-width:650px}
.ft-hero-note{font-size:.73rem;letter-spacing:.025em;color:rgba(255,255,255,.48);margin:1.4rem 0 0}
.ft-hub .ft-section{padding-top:0}
.ft-hub .ft-section-head{padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.12);margin-bottom:1.8rem}
.ft-hub .ft-section-head h2{font-size:1rem}
.ft-hub .ft-grid{gap:1.2rem}
.ft-hub .ft-tool-card{position:relative;min-height:470px;padding:2rem;background:linear-gradient(155deg,rgba(163,150,141,.12),rgba(255,255,255,.025));border:1px solid rgba(163,150,141,.24);border-radius:12px}
.ft-hub .ft-tool-card[data-ft-category=pricing]{background:#eee8e0;color:#292522;border-color:#eee8e0}
.ft-panel-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.2rem;color:#c5b3a6}
.ft-panel-icon{width:42px;height:42px}
.ft-panel-number{font:400 .7rem var(--aimt-font-mono);letter-spacing:.12em;opacity:.65}
.ft-hub .ft-tool-card h3{font:500 .72rem var(--aimt-font-sans);letter-spacing:.11em;text-transform:uppercase;color:#c5b3a6;margin-bottom:1rem}
.ft-hub .ft-tool-card .ft-panel-payoff{font:500 clamp(1.65rem,2.2vw,2rem)/1.15 var(--aimt-font-mont);letter-spacing:-.04em;color:#faf8f5;margin-bottom:1.1rem}
.ft-hub .ft-tool-card p{font-size:.9rem;line-height:1.65}
.ft-hub .ft-tool-card .ft-panel-subline{font-size:.75rem;color:rgba(255,255,255,.48);margin-bottom:2rem}
.ft-hub .ft-card-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.17);padding-top:1.2rem;min-height:44px;text-transform:none;font:500 .88rem var(--aimt-font-sans);letter-spacing:0}
.ft-hub [data-ft-category=pricing] .ft-panel-top,.ft-hub [data-ft-category=pricing] h3{color:#755944}
.ft-hub [data-ft-category=pricing] .ft-panel-payoff,.ft-hub [data-ft-category=pricing] .ft-card-link{color:#292522}
.ft-hub [data-ft-category=pricing] p,.ft-hub [data-ft-category=pricing] .ft-panel-subline{color:#655b53}
.ft-hub [data-ft-category=pricing] .ft-card-link{border-color:rgba(41,37,34,.2)}
.ft-field input::placeholder,.ft-field textarea::placeholder{color:#736b63;opacity:1}
@media(max-width:1050px) and (min-width:681px){.ft-hub .ft-grid{grid-template-columns:1fr}.ft-hub .ft-tool-card{min-height:340px}.ft-hub .ft-panel-top{margin-bottom:1.3rem}}
@media(max-width:680px){.ft-hub .ft-hero{padding:3.2rem 0 2.5rem}.ft-hub .ft-tool-card{padding:1.65rem;min-height:420px}.ft-hub .ft-section-head p{font-size:.8rem}.ft-panel-top{margin-bottom:1.8rem}}
