/* Capassi Group 2.1 — larger identity and a comfortable reading scale. */
html{font-size:100%;scroll-padding-top:155px}
body{font-size:18px;line-height:1.75}
p,li,address{overflow-wrap:break-word}
h1,h2,h3{letter-spacing:-.035em}
.btn,.text-btn{font-size:16px;line-height:1.5}
.btn{min-height:50px;padding:14px 22px}
.btn span{font-size:21px}
.eyebrow{font-size:13px;line-height:1.65;letter-spacing:.11em}
.section-intro,.section-heading .section-intro{font-size:17px;line-height:1.8;max-width:470px;color:#435f73}
.section-heading{gap:35px}
/* Brand sizing is independent of the text scale. */
.nav-wrap{height:116px;gap:24px}
.header .brand{gap:14px;flex-shrink:0}
.header .brand img{width:64px;height:64px}
.header .brand>span{font-size:44px;letter-spacing:-.06em}
.header .brand-small{font-size:16px;letter-spacing:.27em;line-height:1.4;margin-top:4px}
.header .brand-small i{font-size:9px;letter-spacing:.02em;margin-left:6px}
nav{gap:23px;font-size:15px}
nav a{padding:14px 0}
.header-request{font-size:15px;padding:13px 17px;gap:11px;flex-shrink:0}
.count,.btn .count{font-size:14px;min-width:26px;height:26px}
.topbar{font-size:11px;letter-spacing:.08em}
.topbar .wrap{height:38px}
.utility-links a{font-size:13px}
.capassi-admin-preview{font-size:13px;line-height:1.6}
.enterprise-hero .hero-copy{max-width:800px;padding-top:64px;padding-bottom:80px}
.enterprise-hero .eyebrow{font-size:12px;letter-spacing:.12em}
.enterprise-hero .hero-lead{font-size:19px;line-height:1.8;max-width:620px;color:#d1dce6}
.enterprise-hero .hero-audience{font-size:14px;line-height:1.7;color:#b6c9d8}
.enterprise-hero .hero-actions{flex-wrap:wrap;gap:14px}
.enterprise-hero .hero-actions .btn{font-size:16px;padding:15px 22px}
.hero-signature{font-size:10px;color:#a7bdcf;letter-spacing:.1em}
.proof-grid strong{font-size:46px}
.proof-grid p{font-size:15px;line-height:1.65;color:#425f74}
.brand-strip-heading{font-size:12px;letter-spacing:.09em;color:#4f687b}
.brand-strip-heading>a{font-size:15px}
.brand-strip img{height:48px}
.family-body{padding:27px 23px}
.family-body h3{font-size:26px;line-height:1.2;padding-right:18px}
.family-body p{font-size:17px;line-height:1.65;color:#496579}
.family-brands{font-size:13px;line-height:1.6}
.family-image .index{font-size:11px;letter-spacing:.06em;padding:6px 8px;color:#36556d}
.family-controls .btn,.family-explore{font-size:16px}
.family-card{scroll-margin-top:12px}
.enterprise-solutions .section-intro{font-size:17px;line-height:1.8;max-width:470px;color:#b5c9da}
.enterprise-solutions .service-grid article>span{font-size:12px;line-height:1.65;color:#bdd0df}
.enterprise-solutions .service-grid h3{font-size:28px;line-height:1.25;overflow-wrap:break-word;hyphens:auto}
.enterprise-solutions .service-grid p{font-size:17px;line-height:1.8;color:#c0d0de}
.enterprise-solutions .service-grid .text-btn{font-size:16px;line-height:1.6}
.enterprise-solutions .urgent strong{font-size:18px}
.enterprise-solutions .urgent>div>span:last-child{font-size:16px;line-height:1.7;color:#bfd0dd}
.enterprise-solutions .urgent .text-btn{font-size:16px}
.enterprise-about .about-graphic>.eyebrow{font-size:12px}
.enterprise-about .year span{font-size:17px;line-height:1.7;color:#c5d5e1}
.enterprise-about .about-graphic>span:last-child{font-size:11px;line-height:1.8;color:#b6ccdc}
.enterprise-about .about-copy .eyebrow{font-size:12px;line-height:1.7}
.enterprise-about .about-copy h2{font-size:clamp(34px,3vw,46px)}
.enterprise-about .about-copy p{font-size:18px;line-height:1.8;color:#476579}
.enterprise-about .about-copy .about-intro{font-size:20px;line-height:1.7;color:#284b65}
.business-audiences{gap:10px;margin:26px 0}
.business-audiences span{font-size:13px;line-height:1.5;padding:8px 11px;color:#405f75}
.enterprise-about .about-copy>.text-btn{font-size:16px;line-height:1.7}
.machining-photo figcaption{font-size:11px;line-height:1.65;color:#bed1df;letter-spacing:.06em}
.machining-lead p{font-size:18px;line-height:1.8;color:#456478}
.machining-lead .btn{font-size:16px}
.machining-grid h3{font-size:25px;line-height:1.3}
.machining-grid p{font-size:16px;line-height:1.8;color:#496579}
.machining-index{font-size:12px;line-height:1.65}
.machining-tags span{font-size:13px;line-height:1.5}
.search-field input{font-size:18px;line-height:1.5}
.search-form .btn{font-size:16px}
.category-btn{font-size:16px;line-height:1.55;padding:12px 10px;gap:8px}
.category-btn small{font-size:13px}
.catalog-layout{grid-template-columns:255px minmax(0,1fr);gap:32px}
.sidebar-help strong{font-size:17px}
.sidebar-help p,.sidebar-help .text-btn{font-size:15px;line-height:1.7}
.mobile-filter-label{font-size:15px}
#category-select{font-size:16px}
.results-top,.results-top .link-btn{font-size:15px;line-height:1.6}
.product-body{padding:25px}
.product-card .eyebrow{font-size:12px;line-height:1.7;color:#4e6a7e;letter-spacing:.06em}
.product-card h3{font-size:25px;line-height:1.25}
.product-card p{font-size:16px;line-height:1.75;color:#486579}
.product-card .text-btn{font-size:16px;line-height:1.6}
.catalog-disclaimer{font-size:14px;line-height:1.75;color:#526d81}
.brand-family-heading .eyebrow{font-size:12px}
.brand-family-heading strong{font-size:18px}
.brand-logo-grid figcaption{font-size:13px;line-height:1.6;color:#4c6578}
.brand-note{font-size:14px;line-height:1.75;color:#526d81}
.guide-banner h2{font-size:40px}
.guide-banner p{font-size:18px;line-height:1.8;color:#c4d6e4}
.guide-banner .eyebrow{font-size:12px;color:#b9cfdf}
.guide-banner .btn{font-size:16px;white-space:normal}
.enterprise-contact p{font-size:18px;line-height:1.8;color:#415f74}
.enterprise-contact .eyebrow{font-size:13px}
.enterprise-contact .contact-details>div>span{font-size:12px;line-height:1.7}
.enterprise-contact .contact-details address{font-size:17px;line-height:1.8}
.enterprise-contact .contact-details a{font-size:16px;line-height:1.7}
.enterprise-contact .contact-details .contact-phone{font-size:32px}
.enterprise-contact .contact-details small{font-size:14px;line-height:1.8;color:#49677c}
.enterprise-footer .brand>span{font-size:36px}
.enterprise-footer .brand img{width:48px;height:48px}
.enterprise-footer .brand-small{font-size:14px}
.enterprise-footer .brand-small i{font-size:8px}
.enterprise-footer .footer-main{grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:32px}
.enterprise-footer .footer-identity p{font-size:15px;line-height:1.8;color:#b4c8d8}
.footer-column{font-size:15px;line-height:1.65;gap:13px}
.footer-column strong{font-size:12px;line-height:1.6;letter-spacing:.07em}
.footer-column span{font-size:14px;line-height:1.8;color:#b1c6d6}
.footer-column a{overflow-wrap:anywhere}
.enterprise-footer .footer-bottom{font-size:12px;line-height:1.7;color:#b0c5d6;flex-wrap:wrap}
.enterprise-footer .footer-bottom .link-btn,.enterprise-footer .footer-bottom .private{font-size:12px;line-height:1.7}
.mobile-request{font-size:16px;min-height:52px}
/* The commercial forms use the same comfortable scale as the home page. */
.dialog{line-height:1.75}
.dialog h2{font-size:34px;line-height:1.2}
.dialog p,.dialog .guide-summary p{font-size:16px;line-height:1.75}
.dialog .eyebrow,.detail-tag{font-size:13px;line-height:1.7}
.form-field{font-size:15px;line-height:1.6}
.form-field input,.form-field select,.form-field textarea{font-size:16px;line-height:1.5;padding:12px}
.form-field small,.detail-info p{font-size:14px;line-height:1.7}
.detail-info strong{font-size:16px;line-height:1.7}
.helper-note,.muted{font-size:14px!important;line-height:1.75!important;color:#4b667b!important}
.dialog-actions .btn,.review-actions .btn,.empty-state .btn{font-size:16px;padding:13px 18px}
.dialog-actions .link-btn{font-size:15px;line-height:1.7}
.steps>button,.steps>div{font-size:14px;line-height:1.6;padding:14px 0}
.guide-option{font-size:16px;line-height:1.6}
.guide-summary strong{font-size:18px;line-height:1.6}
.success-tag,.send-status,.storage-note{font-size:15px!important;line-height:1.7}
.manual-add summary{font-size:16px;line-height:1.7}
.request-item h3{font-size:20px;line-height:1.3}
.request-item small{font-size:14px;line-height:1.7}
.request-item textarea{font-size:15px;line-height:1.6}
.request-item input{font-size:16px}
.mini-label{font-size:12px;line-height:1.6}
.review-text{font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.empty-state p,.empty-request p{font-size:16px;line-height:1.75}
.toast{font-size:15px;line-height:1.6}
@media(max-width:1200px){
 .nav-wrap{height:108px;gap:20px}
 .header .brand img{width:58px;height:58px}
 .header .brand>span{font-size:40px}
 .header .brand-small{font-size:15px}
 nav{display:none;position:absolute;left:0;right:0;top:108px;background:white;padding:16px 30px;box-shadow:0 15px 25px #092b4914;flex-direction:column;gap:3px;font-size:17px}
 nav.open{display:flex}
 .menu-toggle{display:block;margin-left:0;order:2;font-size:29px;padding:8px;min-width:44px;min-height:44px}
 .header-request{order:1;margin-left:auto;font-size:16px}
 nav a:after{display:none}
 .enterprise-hero .hero-copy{width:78%}
 .enterprise-footer .footer-main{grid-template-columns:1.3fr 1fr 1fr;gap:35px}
 .enterprise-footer .footer-column:last-child{grid-column:1/-1;display:flex;flex-direction:column}
}
@media(max-width:1000px){
 .section-heading{display:block}
 .section-heading .section-intro{margin-top:22px;max-width:650px}
 .family-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .enterprise-solutions .service-grid{grid-template-columns:1fr;gap:24px}
 .enterprise-solutions .service-grid article{padding:30px}
 .enterprise-solutions .service-grid h3{font-size:29px}
 .enterprise-about .about-grid,.machining-intro{grid-template-columns:1fr;gap:38px}
 .enterprise-about .about-graphic{max-width:600px;width:100%;min-height:350px}
 .enterprise-about .about-copy .about-intro{font-size:20px}
 .enterprise-about .about-copy p{font-size:18px}
 .machining-photo img{height:auto;aspect-ratio:3/2}
 .machining-grid{grid-template-columns:1fr;gap:18px}
 .machining-grid article{padding:28px}
 .catalog-layout{display:block}
 .catalog-sidebar{padding:0;background:none}
 #category-list,.sidebar-help{display:none}
 .mobile-filter-label,#category-select{display:block}
 #category-select{width:100%;padding:13px;background:white;margin-bottom:24px}
 .product-body{padding:22px}
 .product-card h3{font-size:24px}
 .enterprise-footer .footer-main{grid-template-columns:1fr 1fr;gap:35px}
 .footer-identity{grid-column:1/-1}
}
@media(max-width:760px){
 .nav-wrap{height:98px}
 nav{top:98px}
 .header .brand img{width:52px;height:52px}
 .header .brand>span{font-size:36px}
 .header .brand-small{font-size:14px}
 .header .brand-small i{display:none}
 .enterprise-hero .hero-copy{width:100%;padding-top:40px;padding-bottom:10px}
 .enterprise-hero .eyebrow{font-size:12px;line-height:1.7;letter-spacing:.08em}
 .enterprise-hero .hero-lead{font-size:18px;line-height:1.8}
 .enterprise-hero .hero-audience{font-size:14px}
 .enterprise-hero .hero-actions .btn{font-size:16px;padding:14px 18px}
 .proof-grid strong{font-size:40px}
 .proof-grid p{font-size:14px;max-width:none}
 .brand-strip-heading{flex-direction:column;align-items:flex-start;gap:12px;font-size:12px}
 .brand-strip-heading>a{font-size:15px;text-align:left}
 .brand-strip img{height:42px}
 .family-body h3{font-size:24px}
 .family-body p{font-size:16px}
 .family-brands{font-size:12px}
 .enterprise-solutions .service-grid p,.enterprise-solutions .section-intro{font-size:17px}
 .enterprise-about .about-copy .about-intro{font-size:19px}
 .enterprise-about .about-copy p,.machining-lead p{font-size:17px}
 .business-audiences span{font-size:13px}
 .machining-grid p{font-size:16px}
 .catalog-layout{display:block}
 .catalog-sidebar{padding:0;background:none}
 #category-list,.sidebar-help{display:none}
 .mobile-filter-label,#category-select{display:block}
 #category-select{width:100%;padding:13px;background:white;margin-bottom:24px}
 .results-top{gap:15px;flex-wrap:wrap}
 .guide-banner p{font-size:17px}
 .enterprise-contact p{font-size:17px}
 .enterprise-contact .contact-details{grid-template-columns:1fr;gap:32px;max-width:none}
 .enterprise-contact .contact-details .contact-phone{font-size:30px}
 .footer-column{font-size:15px}
 .enterprise-footer .footer-bottom{font-size:12px;gap:18px}
 .enterprise-footer .footer-bottom .link-btn,.enterprise-footer .footer-bottom .private{font-size:12px}
}
@media(max-width:600px){
 html{scroll-padding-top:148px}
 body{font-size:16px}
 .topbar .wrap{height:36px;justify-content:flex-end}
 .topbar .wrap>span{display:none}
 .utility-links{gap:20px}
 .utility-links a,.utility-links a:first-child{font-size:12px;display:inline}
 .nav-wrap{height:92px;gap:9px}
 nav{top:92px;padding:16px 20px;font-size:17px}
 .header .brand{gap:10px}
 .header .brand img{width:48px;height:48px}
 .header .brand>span{font-size:32px}
 .header .brand-small{font-size:13px;margin-top:3px}
 .header-request{font-size:0;min-height:44px;min-width:44px;padding:9px 7px;gap:5px}
 .header-request .count{font-size:15px;min-width:24px;height:24px}
 .header-request>span:last-child{font-size:20px}
 .menu-toggle{font-size:27px;padding:6px}
 .enterprise-hero .eyebrow{font-size:11px;line-height:1.8}
 .enterprise-hero .hero-lead{font-size:17px;line-height:1.8}
 .enterprise-hero .hero-audience{font-size:14px}
 .enterprise-hero .hero-actions{flex-direction:column;align-items:stretch}
 .enterprise-hero .hero-actions .btn{font-size:16px;width:100%;padding:14px 18px}
 .proof-grid p{font-size:14px;line-height:1.7}
 .proof-grid>div{padding-left:18px;padding-right:8px}
 .brand-strip-heading,.brand-strip-heading>a{font-size:12px;line-height:1.7}
 .brand-strip img{height:38px}
 .family-body{padding:23px 20px}
 .family-body h3{font-size:24px;line-height:1.25}
 .family-body p{font-size:16px;line-height:1.7}
 .family-brands{font-size:12px;line-height:1.7}
 .family-image .index{font-size:11px;line-height:1.5;max-width:calc(100% - 24px);padding:5px 7px}
 .family-controls .btn,.family-explore{font-size:16px;line-height:1.6}
 .enterprise-solutions .section-intro,.section-heading .section-intro{font-size:17px}
 .enterprise-solutions .service-grid article{padding:27px 23px}
 .enterprise-solutions .service-grid h3{font-size:28px}
 .enterprise-solutions .service-grid p{font-size:17px;line-height:1.8}
 .enterprise-solutions .urgent .text-btn{padding-left:0}
 .enterprise-about .about-copy .eyebrow{font-size:12px}
 .enterprise-about .about-copy .about-intro{font-size:19px}
 .enterprise-about .about-copy p{font-size:17px;line-height:1.8}
 .enterprise-about .about-graphic{min-height:335px}
 .machining-grid h3{font-size:25px}
 .machining-grid p{font-size:16px}
 .search-field{min-width:0;padding-left:9px;gap:8px}
 .search-field input{font-size:16px;padding:12px 0}
 .search-form .btn{font-size:15px;padding:12px;gap:7px}
 .search-form .btn span{display:none}
 .product-grid{grid-template-columns:1fr;gap:22px}
 .product-body{padding:23px}
 .product-card h3{font-size:25px}
 .product-card p,.product-card .text-btn{font-size:16px;line-height:1.75}
 .product-card .eyebrow{font-size:12px}
 .catalog-disclaimer{font-size:14px;line-height:1.75}
 .brand-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .brand-logo-grid img{height:55px}
 .brand-logo-grid figcaption{font-size:13px}
 .guide-banner p{font-size:17px}
 .guide-banner .btn{font-size:16px}
 .enterprise-contact p{font-size:17px}
 .enterprise-contact .btn{font-size:16px;padding:15px 18px}
 .enterprise-contact .contact-details>div>span{font-size:12px}
 .enterprise-contact .contact-details address{font-size:17px}
 .enterprise-contact .contact-details a{font-size:16px}
 .enterprise-contact .contact-details small{font-size:14px}
 .footer-column{font-size:15px}
 .footer-column strong{font-size:12px;line-height:1.6}
 .enterprise-footer .footer-identity p{font-size:15px}
 .enterprise-footer .footer-bottom,.enterprise-footer .footer-bottom .private,.enterprise-footer .footer-bottom .link-btn{font-size:12px;line-height:1.75}
 .mobile-request{font-size:16px;padding:14px;min-height:54px}
 .dialog{padding:36px 22px 26px}
 .dialog h2{font-size:30px}
 .dialog .eyebrow{font-size:12px}
 .form-field{font-size:15px}
 .form-field input,.form-field select,.form-field textarea{font-size:16px}
 .dialog-actions,.review-actions{gap:12px;flex-wrap:wrap}
 .dialog-actions .btn,.review-actions .btn{font-size:16px;padding:13px 16px}
 .steps>button,.steps>div{font-size:13px;line-height:1.6}
 .guide-options{grid-template-columns:1fr}
 .guide-option{font-size:16px}
 .request-item{grid-template-columns:minmax(0,1fr)72px 25px;gap:9px}
 .request-item input{width:72px;font-size:16px}
 .request-item textarea{font-size:15px}
 .mini-label{font-size:11px}
 .review-text{font-size:15px}
 .toast{font-size:15px}
}
@media(max-width:480px){
 .family-grid{grid-template-columns:1fr;gap:23px}
 .family-body h3{font-size:26px}
 .brand-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
 .brand-strip img{height:44px}
 .enterprise-footer .footer-main{grid-template-columns:1fr;gap:33px}
 .footer-identity,.enterprise-footer .footer-column:last-child{grid-column:auto}
 .enterprise-footer .footer-bottom{padding-bottom:104px}
}
@media(max-width:400px){.header-request>span:last-child{display:none}}
@media(max-width:360px){
 .nav-wrap{height:86px;gap:7px}
 nav{top:86px}
 .header .brand{gap:8px}
 .header .brand img{width:40px;height:40px}
 .header .brand>span{font-size:28px}
 .header .brand-small{font-size:12px}
 .header-request>span:last-child{display:none}
 .enterprise-hero .eyebrow{font-size:10px}
 .proof-grid p{font-size:13px}
}
