/* Shared typography for the front end and Gutenberg editor. */
:root {
  --font-size-body:17px;
  --font-size-small:15px;
  --font-size-nav:15.5px;
  --font-size-card-title:20px;
  --font-size-h1:clamp(40px,3.6vw,52px);
  --font-size-h2:clamp(30px,2.6vw,38px);
  --font-size-h3:clamp(21px,1.7vw,24px);
  --line-height-body:1.7;
  --reading-width:760px;
  --text-teal:#007e6e;
}
body,.editor-styles-wrapper{font-size:var(--font-size-body);line-height:var(--line-height-body)}
h1{font-size:var(--font-size-h1)}
h2{font-size:var(--font-size-h2);line-height:1.22}
h3{font-size:var(--font-size-h3);line-height:1.3}
a,.eyebrow,.text-link{color:var(--text-teal)}
.eyebrow{font-size:12.5px;line-height:1.5}
.rasyo-nav a{font-size:var(--font-size-nav);font-weight:600}
.brand-tagline{font-size:12px}
.rasyo-button,.wp-block-button__link,.hero-actions a{font-size:16px;font-weight:600;min-height:48px;padding:13px 22px;background:var(--text-teal);border-color:var(--text-teal)}
.rasyo-button.secondary,.is-style-outline .wp-block-button__link{background:#fff;border-color:#bdcbd7}
.hero-copy{max-width:700px}
.hero-copy h1{font-size:clamp(40px,3.6vw,52px);line-height:1.12}
.hero-copy>p:not(.eyebrow){font-size:18.5px;line-height:1.6;max-width:650px}
.hero-notes{font-size:13px}
.trust-item strong{font-size:17px;line-height:1.3}
.trust-item small{font-size:14px;line-height:1.5}
.text-link,.service-card>a{font-size:var(--font-size-small);font-weight:600}
.service-card{padding:20px 17px;min-width:0}
.card-top{align-items:flex-start;flex-wrap:wrap}
.service-card h3,.service-hub-group .service-card h3{font-size:var(--font-size-card-title);line-height:1.3;overflow-wrap:anywhere}
.service-card p,.service-hub-group .service-card p{font-size:16px;line-height:1.6;margin:14px 0}
.service-card>a{padding-top:8px}
.tax-copy h2,.about-copy h2{font-size:clamp(29px,2.25vw,34px);line-height:1.25}
.tax-copy p:not(.eyebrow),.about-copy p:not(.eyebrow){font-size:var(--font-size-body);line-height:var(--line-height-body)}
.checklist{font-size:16.5px;line-height:1.7}
.other-services h3{font-size:18px;line-height:1.3}
.other-services a{font-size:15px;line-height:1.55;padding:9px}
.why-card{flex-wrap:wrap}
.why-card h3{font-size:18px;line-height:1.3}
.why-card p{font-size:15.5px;line-height:1.6}
.bottom-grid h2{font-size:clamp(29px,2.2vw,32px);line-height:1.25}
.blog-card h3,.blog-main .blog-card h3,.bottom-grid .blog-card h3{font-size:20px;line-height:1.35}
.blog-card h3 a{font-size:inherit}
.blog-card p,.blog-main .blog-card p,.bottom-grid .blog-card p{font-size:16px;line-height:1.6}
.blog-card small,.blog-main .blog-card small,.post-meta{font-size:13.5px;line-height:1.5}
.blog-card a,.blog-main .blog-card a{font-size:15px;font-weight:600}
.wp-block-details,details.faq,.bottom-grid details{padding:17px 18px}
.wp-block-details summary,details.faq summary,.bottom-grid details summary{font-size:17px;font-weight:600;line-height:1.5}
.wp-block-details p,details.faq p,.bottom-grid details p{font-size:16.5px;line-height:1.65}
.rasyo-form,.compact-form .rasyo-form{gap:16px}
.rasyo-form label,.compact-form label{font-size:15px;line-height:1.5}
.rasyo-form input:not([type=checkbox]),.rasyo-form select,.rasyo-form textarea,.compact-form input:not([type=checkbox]),.compact-form select,.compact-form textarea{font-size:16px;line-height:1.5;padding:12px;min-height:48px;min-width:0}
.rasyo-form textarea,.compact-form textarea{min-height:120px}
.rasyo-form ::placeholder{font-size:16px;color:var(--muted);opacity:1}
.rasyo-form .privacy-check{font-size:14.5px;line-height:1.6}
.form-note,.compact-form .form-note{font-size:15px!important;line-height:1.6}
.contact-details p{font-size:16px;line-height:1.65}
.contact-details strong{font-size:15px}
.map-placeholder p,.notice,.source-note,.cta-channels p,.category-nav a{font-size:var(--font-size-small);line-height:1.6}
.rasyo-footer p,.rasyo-footer a:not(.rasyo-brand),.rasyo-footer .contact-details p,.rasyo-footer .social-placeholder,.footer-bottom{font-size:15px;line-height:1.6}
.rasyo-footer h3,.rasyo-footer .contact-details strong{font-size:15px;line-height:1.6}
.footer-bottom nav a{font-size:14.5px!important}
.breadcrumb{font-size:14px;line-height:1.6}
.page-intro h1{font-size:var(--font-size-h1);line-height:1.16}
.page-intro .lead{max-width:var(--reading-width);font-size:18px;line-height:1.7}
.wp-block-post-content>h2,.wp-block-post-content>h3,.wp-block-post-content>p,.wp-block-post-content>ul,.wp-block-post-content>ol,.wp-block-post-content>.wp-block-details{max-width:var(--reading-width)}
.service-main .wp-block-post-content>p,.service-main .wp-block-post-content>ul,.service-main .wp-block-post-content>ol{font-size:17px;line-height:1.7}
.service-main h2,.service-main .rasyo-cta h2{font-size:clamp(30px,2.5vw,36px);line-height:1.25}
.service-main h3{font-size:var(--font-size-h3)}
.service-main .wp-block-post-content>h2{margin-top:40px}
.service-main .wp-block-post-content>p{margin-block:18px}
.service-specific-cta{max-width:var(--reading-width)}
@media(max-width:1100px){
  .rasyo-nav{gap:16px}.header-row{gap:18px}
  .trust-item{align-items:flex-start;flex-wrap:wrap}
  .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  :root{--font-size-nav:16px;--font-size-h2:32px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust-item{flex-wrap:nowrap}
  .why-card{flex-wrap:nowrap}
}
@media(max-width:540px){
  :root{--font-size-body:16px;--font-size-h1:40px;--font-size-h2:30px;--font-size-h3:21px;--font-size-card-title:19px}
  .hero-copy h1{font-size:40px}.hero-copy>p:not(.eyebrow){font-size:17px}
  .hero-notes{font-size:12px}.hero-actions a{font-size:15px;padding:12px 17px}
  .service-grid{grid-template-columns:1fr}
  .card-top{flex-direction:row;flex-wrap:nowrap;align-items:center}
  .service-card{padding:20px}.service-card h3{overflow-wrap:normal}
  .service-card p{font-size:16px}.section-heading h2{font-size:30px}
  .trust-item{flex-wrap:wrap}.trust-item strong{font-size:16px}.trust-item small{font-size:13px}
  .why-card{flex-wrap:wrap}.why-card h3{font-size:18px}
  .bottom-grid .blog-card{grid-template-columns:100px minmax(0,1fr)}
  .bottom-grid .blog-card h3{font-size:19px}
  .compact-form .form-grid{grid-template-columns:1fr}
  .page-intro .lead,.service-main .wp-block-post-content>p,.service-main .wp-block-post-content>ul,.service-main .wp-block-post-content>ol{font-size:16.5px;line-height:1.7}
  .wp-block-details summary,details.faq summary,.bottom-grid details summary{font-size:16.5px}
  .wp-block-details p,details.faq p,.bottom-grid details p{font-size:16px}
  .rasyo-footer p,.rasyo-footer a:not(.rasyo-brand),.rasyo-footer .contact-details p,.rasyo-footer .social-placeholder,.footer-bottom{font-size:14.5px}
}
