@font-face{font-family:Manrope;src:url("assets/manrope.woff2") format("woff2");font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:"Advisory Serif";src:url("assets/advisory-serif-latin.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Source Serif";src:url("assets/source-serif-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
:root{
  color-scheme:light;
  --ink:#172b39;--body:#404e52;--muted:#566263;--bronze:#795b30;--rule:#d4d3c9;
  --ground:#fbfaf6;--paper:#f7f4eb;--wash:#efeee7;--deep:#172b36;
  --serif:"Advisory Serif",Georgia,serif;--sans:Manrope,Arial,sans-serif;
  --edge:clamp(24px,5.3vw,88px);--ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:20px}
body{margin:0;background:var(--ground);color:var(--ink);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
img{max-width:100%;display:block}
h1,h2,h3,p,ol,figure,dl,dd{margin:0}
a{color:inherit;text-underline-offset:.22em}
button,summary,a{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid #8e682e;outline-offset:5px}
[hidden]{display:none!important}
::selection{background:#dfd2b8;color:#172b39}
.wrap{width:min(calc(100% - var(--edge) * 2),1360px);margin-inline:auto}
.skip{position:fixed;top:12px;left:12px;padding:12px 20px;background:white;z-index:10;transform:translateY(-180%)}
.skip:focus{transform:translateY(0)}

.mast-inner{display:flex;justify-content:center;align-items:center;min-height:66px}
.signature{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font:700 19px/1 var(--sans);letter-spacing:-.7px;opacity:.5}
.signature img{width:29px;height:auto}
.hero{text-align:center;padding-top:25px;padding-bottom:39px}
.eyebrow{font-size:11px;line-height:1.5;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hero h1{max-width:23ch;margin:17px auto 0;font:400 clamp(38px,4.5vw,67px)/1.07 var(--serif);letter-spacing:-.045em;text-wrap:balance}
.wealth-term{white-space:nowrap}
.headline-promise{display:block;color:var(--bronze);margin-top:.2em}
.application-prompt{max-width:42ch;margin:18px auto 0;font:500 14px/1.5 var(--sans);color:var(--body);text-wrap:balance}
.application-prompt + .application-wrap{margin-top:18px}
.application-wrap{position:relative;width:min(100%,760px);margin:30px auto 0;background:var(--ground);scroll-margin-top:20px}
.application{height:450px}
.application>.tf-v1-widget{width:100%;height:100%}
.application iframe{width:100%;height:100%;border:0}
.embed-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;background:var(--ground)}
.embed-placeholder p{font:400 23px/1.2 var(--serif)}
.embed-placeholder a{color:var(--ink);font-size:14px;text-underline-offset:.2em}
.application-note{max-width:54ch;margin:12px auto 0;font-size:12px;line-height:1.6;color:var(--muted)}
.form-fallback{font-size:12px;line-height:1.6;color:var(--muted);margin-top:8px}
.form-fallback a{display:inline-block;min-height:44px;padding:12px 4px;font-weight:650}
.scope{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding-block:23px;text-align:center}
.scope>p:last-child{max-width:80ch;font-size:13px;line-height:1.8;color:var(--body);margin:10px auto 0}
.how{padding-block:66px 70px}
.how h2{text-align:center;font:400 clamp(34px,3.2vw,48px)/1.1 var(--serif);letter-spacing:-.04em}
.how-intro{max-width:64ch;margin:17px auto 0;text-align:center;font-size:16px;line-height:1.7;color:var(--body)}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;margin-top:37px}
.steps li{border-top:1px solid var(--rule);padding-top:18px}
.step-number{font-size:10px;letter-spacing:.1em;font-weight:700;color:var(--bronze)}
.steps h3{font:400 26px/1.2 var(--serif);letter-spacing:-.025em;margin-top:13px}
.steps p{font-size:14px;line-height:1.7;color:var(--body);margin-top:10px}
.terms-note{text-align:center;font-size:12px;color:var(--muted);margin-top:28px}
.footer{padding-block:18px}
.return-to-application{display:table;margin:22px auto 0;padding:10px 4px;font-size:13px;font-weight:750;transition:color .2s}
@media(hover:hover){.return-to-application:hover{color:var(--bronze)}}
.return-to-application:active{transform:translateY(1px)}
.footer-base{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding-top:15px}
.footer-base small,.footer-base a{font-size:11px;color:var(--muted)}
.footer-base nav{display:flex;gap:19px}
.footer-base a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;padding:8px 0;font-weight:600}
.legal-documents{max-width:83ch}
.notice{border-top:1px solid var(--rule);padding:12px 0}
.notice summary{font-size:14px;font-weight:650;cursor:pointer}
.notice-body{padding-block:13px}
.notice-body p{font-size:14px;line-height:1.7;margin-bottom:12px}
.notice-body h3{font:400 23px/1.25 var(--serif);margin:20px 0 8px}
.legal-ready .notice:not([open]){display:none}
@media(max-width:760px){
 :root{--edge:22px}
 .mast-inner{min-height:57px}.signature{font-size:17px}.signature img{width:26px}
 .hero{padding-top:15px;padding-bottom:29px}
 .hero h1{font-size:clamp(24px,6.6vw,33px);line-height:1.09;max-width:24ch;margin-top:13px;letter-spacing:-.04em}
 .application-wrap{margin-top:24px}.application{height:420px}
 .form-fallback{font-size:11px;max-width:35ch;margin-inline:auto}
 .scope{padding-block:21px}.scope .eyebrow{font-size:10px}.scope>p:last-child{font-size:12px;line-height:1.7}
 .how{padding-block:43px 40px}.how h2{font-size:35px}.how-intro{font-size:15px;line-height:1.6}
 .steps{grid-template-columns:1fr;gap:22px;margin-top:26px}
 .steps li{display:grid;grid-template-columns:23px 1fr;gap:12px;padding-top:17px}
 .step-number{padding-top:5px}.steps h3{font-size:25px;margin-top:0}.steps p{margin-top:6px}
 .terms-note{font-size:11px;line-height:1.7;margin-top:21px}
 .footer-base{flex-wrap:wrap;gap:5px 15px}.footer-base nav{gap:15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Tax campaign refinements */
.tax-campaign .application-wrap{padding:12px;border:2px solid var(--bronze);border-radius:3px;box-shadow:0 8px 32px rgba(23,43,57,.075);overflow:hidden}
/* Large in-page links to the pricing form. */
.pricing-cta.return-to-application {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: min(100%, 340px);
  min-height: 64px;
  margin: 24px auto 0;
  padding: 16px 24px;
  border: 1px solid var(--ink);
  border-radius: 4px;
  background: var(--ink);
  color: var(--ground);
  font: 750 18px/1.35 var(--sans);
  text-align: center;
  text-decoration: none;
  transition: background .2s, transform .2s;
}
@media(hover:hover){.pricing-cta.return-to-application:hover {background: #2d4552;}}
.tax-campaign .pricing-cta{touch-action:manipulation}
.pricing-cta.return-to-application:active {transform: translateY(1px);}
.pricing-cta.return-to-application span {font-size: 22px; line-height: 1;}
.contact-note{margin:14px auto 0;text-align:center;font-size:12px;line-height:1.8;color:var(--muted)}
.contact-note a{display:inline-block;padding-block:4px;text-decoration-thickness:1px}
@media(max-width:760px){
 .tax-campaign{--mobile-section-gap:38px}
 .tax-campaign .mast-inner{min-height:0;padding-top:19px}
 .tax-campaign .signature{font-size:14.45px;gap:6.8px;letter-spacing:-.595px}
 .tax-campaign .signature img{width:22.1px}
 .tax-campaign .hero{padding-block:var(--mobile-section-gap) 0}
 .tax-campaign .hero h1{font-size:clamp(29px,8vw,32px);line-height:1.12}
 .tax-campaign .headline-promise{margin-top:0}
 .tax-campaign .application-prompt > span{display:block}
 .tax-campaign .application-prompt + .application-wrap{margin-top:var(--mobile-section-gap)}
 .pricing-cta.return-to-application{width:100%}
 .tax-campaign .how{padding-top:var(--mobile-section-gap)}
 .tax-campaign .application-wrap{padding:8px}
 .contact-note{max-width:34ch}
}

@media(min-width:761px){.tax-campaign .steps h3{min-height:2.4em}}

@media(max-width:760px){.tax-campaign .how-title-line{display:block}}

@media(max-width:760px), (pointer:coarse) and (orientation:landscape) and (max-height:540px){
 .tax-campaign .application-wrap{height:75vh;height:75svh}
 /* Keep the iframe inside its frame even when a desktop-loaded widget writes an inline height. */
 .tax-campaign .application{height:100%!important}
}


/* Tax offer hierarchy: fit and preparation first; attendance is the supporting promise. */
.tax-campaign .offer-subhead{margin:20px auto 0;color:var(--bronze);font:600 19px/1.45 var(--sans);text-wrap:balance}
.tax-campaign .offer-subhead + .application-prompt{margin-top:7px}
.tax-campaign .pricing-cta{width:min(100%,380px);font-size:17px;gap:12px;padding-inline:20px}
@media(max-width:760px){
 .tax-campaign .offer-subhead{margin-top:18px;font-size:16px}
 .tax-campaign .pricing-cta{width:100%;margin-top:40px}
}
@media(max-width:360px){
 .tax-campaign .pricing-cta{font-size:16px;gap:10px;padding-inline:14px}
}
