/* Shared readable type scale. Keep the existing site palette and components. */
:root{--text-body:18px;--text-small:15px;--text-control:17px}
html{scroll-padding-top:185px}
body{font-size:var(--text-body);line-height:1.75}
button,input,select,textarea{font:inherit}
p{line-height:1.8}
.container{width:min(var(--container),calc(100% - 64px))}
.site-header .nav-row{height:auto;min-height:154px;display:grid;grid-template-columns:1fr auto;gap:0 32px;padding-top:12px}
.site-header .brand{grid-column:1;grid-row:1;justify-self:start;padding-block:5px 13px;gap:14px}
.brand>img{width:64px;height:72px;object-fit:contain}
.brand>span{font-size:40px;letter-spacing:-.035em;gap:8px}
.brand small{font-size:12px;letter-spacing:.4em}
.nav-actions{grid-column:2;grid-row:1;gap:16px}
.main-nav{grid-column:1/-1;grid-row:2;width:100%;height:auto;justify-content:space-between;gap:8px;border-top:1px solid var(--line)}
.main-nav,.nav-group{min-width:0}
.client-label-short{display:none}
.nav-trigger{font-size:18px;line-height:1.4;font-weight:700;padding:18px 10px;min-height:62px;gap:10px}
.nav-trigger .nav-category-icon{width:22px;height:22px}
.nav-trigger>span{font-size:18px}
.button,.button-small,.hero-copy .button,.pricing-section .button{font-size:var(--text-control);min-height:52px;padding:14px 23px;line-height:1.4}
.icon-button{width:48px;height:48px;flex-shrink:0}
.icon-button>.service-icon{width:24px;height:24px}
.utility{min-height:44px;height:auto}
.utility-inner{min-height:44px;gap:20px;font-size:14px}
.utility-contact,.utility-resources{gap:20px}
.utility a,.language button,.language #langMenu a{font-size:14px}
.language button{min-height:40px}
.mega-menu{width:min(1360px,calc(100vw - 64px));max-height:calc(100dvh - 205px);padding:28px 30px 0}
.mega-grid{gap:10px 18px}
.mega-link{padding:16px 12px;min-height:94px;gap:16px}
.mega-link strong{font-size:18px;line-height:1.45}
.mega-link small{font-size:15px;white-space:normal;line-height:1.6;overflow:visible;text-overflow:clip}
.menu-icon{width:48px;height:48px;flex-shrink:0}
.menu-icon>.service-icon,.menu-icon .service-brand-image{width:36px;height:34px}
.mega-heading p,.mega-footer{font-size:16px}
.mobile-nav summary{font-size:19px;min-height:64px}
.mobile-links a{font-size:17px;min-height:54px;padding:14px}
.mobile-links a>.service-brand-image{width:32px;height:32px}
.mobile-search{font-size:18px;min-height:48px}
.text-link,.info-card .text-link,.contact-channel .text-link{font-size:17px;line-height:1.6}
.eyebrow,.platform-card>.eyebrow{font-size:13px;letter-spacing:.09em}
.page-heading{font-size:clamp(40px,4.4vw,64px);line-height:1.15}
.section h2{font-size:clamp(30px,3vw,42px);line-height:1.25}
.section-heading>p,.lead,.product-hero .lead,.hero-copy>p{font-size:20px;line-height:1.75}
.showcase-heading{font-size:clamp(40px,4.3vw,66px);line-height:1.14}
.showcase-slide>p,.showcase-lead{font-size:20px;line-height:1.8}
.showcase-tags a,.showcase-bottom,.location-rows p,.more-locations{font-size:16px}
.locations-title h2{font-size:25px}
.location-rows strong{font-size:19px}
.showcase-controls button{font-size:16px;min-width:44px;min-height:44px}
.brand-ribbon-head{font-size:15px}
.brand-ribbon button{font-size:14px;min-height:44px}
.brand-set img{max-width:132px;max-height:48px}
.platform-card h3{font-size:29px;max-width:none}
.platform-card p,.platform-card ul,.secondary-services strong,.operation-list p,.portal-grid p,.contact-inner p,.faq-layout>div>p,.faq-list details>p,.check-list,.info-card p,.prose,.usecase-panel>div,.quote-state p,.offer-card p{font-size:18px}
.secondary-services small{font-size:15px}
.operation-list h3,.usecase-panel h3,.product-glance-copy h2{font-size:25px}
.faq-list summary,.knowledge-card summary{font-size:19px;line-height:1.6}
.comparison-table,.price-table{font-size:16px}
.comparison-table thead th,.comparison-table thead th:first-child,.price-table th{font-size:16px}
.price-table td:first-child small,.price-note,.offer-card strong small{font-size:15px}
.breadcrumb{font-size:15px;line-height:1.7;flex-wrap:wrap}
.directory-card h3{font-size:21px}
.directory-card p{font-size:16px}
.directory-search input,.search-form input,.search-form select{font-size:18px;min-width:0}
.search-form label,.result-count,.filter-list a,.billing-cycles>a{font-size:16px}
.filter-list a,.billing-cycles>a{min-height:44px;padding:11px 16px}
.related-grid a,.related-grid strong{font-size:18px;line-height:1.6}
.knowledge-service{font-size:17px}
.knowledge-service small{font-size:14px}
.knowledge-card details>p{font-size:17px}
.knowledge-card details>.text-link{font-size:16px}
.knowledge-pagination a{font-size:16px;min-width:44px;min-height:44px}
.plan-resource strong,.configuration-specs,.configuration-buy .button{font-size:17px}
.configuration-name h3{font-size:23px}
.configuration-name p,.configuration-price-note,.configuration-cost small,.plan-resource small{font-size:15px}
.pricing-section input,.pricing-section select{font-size:17px}
.footer-brand>img{width:64px;height:72px}
.footer-brand>span{font-size:40px}
.footer-intro p,.footer-service-group li,.footer-business-details address,.footer-business dd,.footer-business dt,.footer-community p,.footer-resources>a{font-size:16px;line-height:1.8}
.footer-service-group h2{font-size:19px}
.footer-contact-links strong{font-size:21px}
.footer-contact-links small,.footer-social a,.footer-footprint,.footer-detailed .footer-bottom{font-size:15px}
.service-detail-section{background:#f5f7fc;border-block:1px solid var(--line)}
.service-detail-section .section-heading{align-items:flex-start;gap:36px}
.service-detail-section .section-heading>p{font-size:18px;max-width:540px}
.service-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.service-detail-card{padding:28px;border:1px solid #dce4f0;border-radius:10px;background:#fff}
.service-detail-card>span{display:block;font-family:Ubuntu,Arial,sans-serif;font-size:16px;color:var(--blue);margin-bottom:18px;font-weight:700}
.service-detail-card h3{font-size:23px;line-height:1.35;margin:0 0 12px}
.service-detail-card p{font-size:17px;line-height:1.8;margin:0;color:#53647d}
.service-preparation{margin-top:24px;background:white;border:1px solid var(--line);border-radius:8px;padding:0 26px}
.service-preparation summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;list-style:none;font-size:18px;font-weight:700;min-height:68px;padding:18px 0}
.service-preparation summary::-webkit-details-marker{display:none}
.service-preparation summary span{font-size:25px;color:var(--blue);font-weight:400}
.service-preparation[open] summary span{transform:rotate(45deg)}
.service-preparation p{font-size:17px;max-width:1000px;margin:0;padding-bottom:22px}
summary:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
/* Cover the specific rules used by all six pricing families and company pages. */
body .utility .utility-inner>div>a,body .utility .language button{font-size:14px}
body .showcase h1{font-size:clamp(40px,4.3vw,66px);line-height:1.14}
body .showcase .button,body .showcase-contact,body .hero-copy .text-link,body .platform-card>.text-link,body .search-form .button,body .directory-search>.button,body .quote-state>.button,body .portal-grid>.button{font-size:17px;min-height:52px}
body .showcase-services>a{font-size:16px;padding:10px 13px;min-height:46px}
body .showcase-services .service-icon{width:22px;height:22px}
body .showcase-slide>.eyebrow,body .locations-title .eyebrow,body .brand-ribbon-label>.eyebrow,body .footer-business .eyebrow{font-size:13px}
body .showcase-signature{font-size:15px}
body .carousel-controls button{width:44px;height:44px}
body .carousel-dots>button,body .carousel-controls .carousel-pause{font-size:15px}
body .brand-ribbon-label button{font-size:14px;min-height:44px}
body .check-list li,body .product-glance-copy .check-list li{font-size:17px;line-height:1.8}
body .product-hero .actions>.text-link{font-size:17px}
body .game-showcase-caption>div>span,body .game-showcase-more>span,body .visual-caption{font-size:15px}
body .company-contact-list dt,body .location-card li,body .language-note,body .notice,body .domain-request p{font-size:17px}
body .usecase-panel span,body .directory-group>h2>span{font-size:16px}
body .footer-intro>div>p,body .footer-business address,body .footer-business dt,body .footer-business dd,body .footer-business .text-link,body .footer-community>p,body .footer-whatsapp,body .footer-whatsapp>span{font-size:16px}
body .footer-social span{font-size:15px}
body .pricing-section p,body .pricing-section li,body .pricing-section .hardware-spec{font-size:17px;line-height:1.75}
body .pricing-section .button,body .pricing-section .button-secondary{font-size:17px;min-height:52px;padding:14px 20px;line-height:1.4}
body .pricing-section small,body .pricing-section .pricing-plan-top>span:last-child,body .pricing-section .pricing-plan-cost>span,body .pricing-section .pricing-plan-setup,body .pricing-section .cloud-console-label,body .pricing-section .game-requirement-tags>span,body .pricing-section .domain-term-list>span,body .pricing-section .configuration-details,body .pricing-section .dedicated-quote-foot{font-size:15px;line-height:1.6}
body .pricing-section .hardware-table,body .pricing-section .hardware-table th,body .pricing-section .cloud-resource-grid strong,body .pricing-section .plan-resource strong,body .pricing-section .hardware-requirements strong{font-size:17px}
body .pricing-section .hosting-quote-checklist>div>span{font-size:20px}
body .pricing-section .configuration-name h3{font-size:23px}
body .pricing-availability-note{font-size:16px;line-height:1.7}
body .game-showcase-caption h3{font-size:25px}
body .product-hero .page-heading{font-size:clamp(38px,4.4vw,64px)}
body .brand-logo{width:170px;height:64px;padding-inline:22px}
body .brand-logo img{height:44px;max-width:125px}
body .nav-actions>.button{font-size:17px;min-height:52px;padding:14px 21px}
@media(min-width:1280px) and (max-width:1380px){
 .main-nav{gap:4px}
 .nav-trigger{font-size:17px;padding-inline:5px;gap:6px}
 .nav-trigger .nav-category-icon{width:19px;height:19px}
}
@media(max-width:1200px){
 .nav-trigger{font-size:17px;padding-inline:7px;gap:7px}
 .utility-resources .social-links{display:none}
 .service-detail-card{padding:23px}
}
@media(max-width:1279px){
 html{scroll-padding-top:120px}
 .site-header .nav-row{display:flex;min-height:102px;padding-top:0;gap:22px}
 .site-header .brand{padding:0}
 .brand>img{width:56px;height:64px}.brand>span{font-size:35px}
 .main-nav{display:none}.nav-actions{margin-left:auto}.mobile-toggle{display:flex}
 .mobile-nav{max-height:calc(100dvh - 102px)}
 .utility-inner{gap:14px}.utility-contact,.utility-resources{gap:14px}
 .platform-card{padding:26px}
 .footer-brand>span{font-size:35px}
}
@media(max-width:800px){
 body{font-size:17px}
 .container{width:calc(100% - 40px)}
 .site-header .nav-row{min-height:92px;gap:14px}
 .brand>img{width:50px;height:58px}.brand>span{font-size:32px}.brand small{font-size:10px}
 .nav-actions{gap:8px}.nav-actions .button-small{padding:12px 16px;font-size:16px}
 .utility-contact a,.utility-resources a,.language button{font-size:14px}
 .mobile-nav{padding-inline:20px;max-height:calc(100dvh - 92px)}
 .mobile-links{grid-template-columns:1fr}
 .showcase-slide>p,.showcase-lead,.product-hero .lead,.lead,.section-heading>p{font-size:19px}
 .platform-card p,.platform-card ul,.faq-list details>p,.info-card p,.prose,.quote-state p{font-size:17px}
 .service-detail-grid{grid-template-columns:1fr}
 .service-detail-card{padding:25px}.service-detail-card>span{margin-bottom:12px}
 .service-detail-section .section-heading{gap:18px}
 .service-detail-section .section-heading>p{font-size:17px}
 .footer-brand>img{width:56px;height:64px}
 .footer-intro p,.footer-service-group li,.footer-business-details address,.footer-business dd,.footer-business dt,.footer-community p,.footer-resources>a{font-size:16px}
}
@media(max-width:540px){
 html{scroll-padding-top:105px}
 .container{width:calc(100% - 36px)}
 .site-header .nav-row{min-height:90px;gap:10px}
 .site-header .brand{gap:10px}.brand>img{width:46px;height:54px}.brand>span{font-size:29px}
 .nav-actions{gap:4px}.nav-actions>a.icon-button{display:none}
 .nav-actions .button-small{font-size:15px;padding:12px;min-height:46px}
 .nav-actions .button-small>.service-icon{display:none}
 body .nav-actions>.button{font-size:16px;padding:12px 14px;min-height:46px}
 .client-label-long{display:none}.client-label-short{display:inline}
 .nav-actions .mobile-toggle{width:44px}
 .utility-contact{gap:0}.utility-contact a:not(:first-child){display:none}
 .utility-resources>a,.utility-resources>.social-links{display:none}
 body .utility .utility-inner>.utility-resources>a:first-child{display:none}
 body .utility .utility-inner{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;gap:16px;padding-block:0}
 body .utility .utility-inner>div{width:auto;min-height:40px}
 body .utility .utility-inner>.utility-resources{justify-content:flex-end}
 .utility-inner{min-height:40px;justify-content:space-between}.utility{min-height:40px}
 .platform-card{display:flex}.platform-card p{min-height:0}.platform-card h3{max-width:none}
 .secondary-services{grid-template-columns:1fr;gap:8px}.secondary-services strong{font-size:18px}
 .secondary-services small{font-size:16px}
 .showcase-tags a{font-size:15px}.showcase-slide>p{font-size:18px}
 .actions{flex-wrap:wrap;gap:18px}.actions>.button{max-width:100%}
 .brand-set img{max-width:112px;max-height:42px}
 .billing-cycles{display:flex;flex-wrap:wrap}.billing-cycles>a{font-size:15px}
 .configuration-plan .configuration-buy{flex-direction:column;align-items:stretch;gap:16px}
 .configuration-cost strong{white-space:nowrap}
 .configuration-buy .button{width:100%}
 .related-grid{grid-template-columns:1fr}
 .footer-contact-links strong{font-size:19px}
 .footer-service-group li{font-size:16px}
}
@media(max-width:380px){
 .site-header .nav-row{flex-wrap:wrap;padding-block:12px;gap:10px}
 .site-header .brand{flex:1}.nav-actions{gap:6px}
 .nav-actions .button-small{font-size:14px;padding:10px}
 .brand>img{width:38px;height:46px}.brand>span{font-size:25px}
 .nav-actions .mobile-toggle{width:40px}
}
