/* Readability layer shared by all sections and every responsive breakpoint.
   Important declarations intentionally supersede previous small-screen sizes. */
html{font-size:100%;-webkit-text-size-adjust:100%}
body{font-size:1rem;line-height:1.65}
:is(.hero-description,.section-heading>p,.service-copy>p,.person-card>p,.commercial-team article p,.experience-grid p:not(.eyebrow),.case-heading p:not(.eyebrow),.case-caption p,.contact-intro>p:not(.eyebrow),.scene-caption>p,.scene-caption p:not(.eyebrow)){font-size:1rem!important;line-height:1.7!important}
.hero-description{font-size:1.125rem!important}
:is(.eyebrow,.person-area,.person-heading .person-area,.experience-years>span,.case-caption>span){font-size:.75rem!important;line-height:1.6!important;letter-spacing:.06em!important}
:is(.service-detail,.service-copy .service-detail,.service-copy .service-detail a,.service-copy .academy-tools,.person-specialty,.commercial-team article div>span,.case-disclaimer,.case-reference,.hero-note,.demo-tag,.scene-meta .demo-tag,.contact-people p,.contact-panel .form-note,.footer-bottom,.footer-main>p,.group-footer,.group-link){font-size:.875rem!important;line-height:1.6!important}
.services-editorial .service-copy>p,.experience-grid p:not(.eyebrow){color:#496572}
.services-editorial .service-lead .service-copy>p{color:#c1d3da}
.services-editorial .service-copy .service-detail,.services-editorial .service-copy .academy-tools{color:#765235}
.services-editorial .service-lead .service-copy .service-detail{color:#edbd98}
.services-editorial .services-heading h2 span{color:#526e7a}
.services-editorial .service-lead h3{min-height:0}
.services-editorial .service-lead .service-copy{gap:0}
.services-editorial .service-copy{row-gap:12px}
.services-editorial .services-featured{align-items:stretch}
.services-editorial .service-lead .service-copy .service-detail{padding-top:6px}
.person-heading{align-items:flex-start;flex-direction:column}
.person-heading .person-area{max-width:100%}
.commercial-team{grid-template-columns:.7fr 1.15fr 1.15fr}
.commercial-team h4{font-size:1.125rem}
.case-reference{flex-wrap:wrap}
.case-reference>span{max-width:none}
.contact-people p{color:#496572}
.contact-panel .form-note{color:#52636d!important}
.contact-panel :is(label,input,textarea,select,.button,#brief-summary,#copy-status){font-size:1rem!important;line-height:1.6}
.contact-panel input::placeholder,.contact-panel textarea::placeholder{color:#596f7b;opacity:1}
.contact-panel :is(input,select,button){min-height:44px}
.contact-panel #brief-summary{max-height:none}
.brand>span{font-size:.75rem!important;letter-spacing:.025em!important;line-height:1.5!important}
.group-link{padding:3px 0 3px 20px;max-width:170px}
.site-header nav a,.header-inner #navigation a,.hero-actions :is(.button,.text-link),.result-buttons .text-link{font-size:1rem!important;min-height:44px;display:inline-flex;align-items:center}
.menu-toggle{font-size:1rem!important;min-height:44px}
.header-inner{gap:22px}
.header-inner #navigation{gap:22px}
.text-link{font-size:1rem}
.slide-tab{font-size:.875rem!important;line-height:1.5!important;min-height:44px}
.slide-tab>span{font-size:.75rem!important}
.slide-tabs{gap:18px}
.scene-arrows button,#playback{min-width:44px;min-height:44px}
.scene-caption{height:auto!important;min-height:0!important;padding-bottom:20px!important}
.scene-caption h2{line-height:1.25}
.footer-bottom a,.group-footer{display:inline-flex;align-items:center;min-height:44px}
.group-footer strong{font-size:.875rem}
.team-grid .person-heading{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:20px}
.person-identity{display:flex;flex-direction:column;gap:6px}
.person-identity h3{margin:0}
.person-identity .person-area{font-size:.875rem!important;letter-spacing:0!important;line-height:1.5!important;color:#c0d3dd}
.slide-tab{white-space:normal;color:#adc3cd}
.scene-arrows button,#playback{font-size:1rem}

/* Demos are readable mini applications, not reduced screenshots. */
.showcase .scene-container{height:auto!important;min-height:580px;padding:0}
.product-demo{height:auto!important}
.product-window{height:auto!important;min-height:580px;font-size:.875rem;overflow:hidden}
.case-preview{height:auto!important;min-width:0}
.case-preview .product-window{min-height:580px}
.product-window :is(div,p,span,strong,b,small,time,button){font-size:.875rem!important;line-height:1.5}
.product-window h3{font-size:1.125rem!important;line-height:1.3}
.product-window :is(.window-chrome,.window-chrome *,.workspace-label,.person-label,.person-label *,.ai-label,.ai-label *,.app-eyebrow,.system-label-demo,.system-label-demo *){font-size:.75rem!important;line-height:1.5;letter-spacing:.015em}
.product-window .product-wordmark{font-size:1rem!important}
.window-chrome{height:auto;min-height:32px;overflow-wrap:anywhere;padding:5px 10px}
.product-toolbar{height:auto;min-height:48px;padding:10px 14px;flex-wrap:wrap}
.workspace-label{display:none}
.product-window :is(.ticket-origin,.app-breadcrumb,.org-intro,.org-heading>span,.org-scope,.file-import span,.week-heading>span,.week-days,.grid-time,.received-email div>span,.received-email time,.email-content,.widget-composer,.visitor-message>span,.portal-page>p,.portal-menu,.web-service,.application-note){color:#496575}
.product-window .org-source{color:#80532c}
.product-window .ai-label>strong{background:#9d511a;color:#fff}
.product-window .classification>span{color:#765033}
.product-window .classification>.recommended{background:#9d511a;color:#fff}
.org-heading{gap:8px;flex-wrap:wrap}
.org-questions button{min-height:44px;padding:9px 11px;flex:1 1 auto}
.org-questions{gap:8px}
.org-human p{padding:0}
.org-source,.org-scope{align-items:flex-start}
.org-source svg,.org-scope svg{flex-shrink:0;margin-top:3px}
.ai-label{flex-wrap:wrap}
.ai-label>span{flex:1;min-width:100px}
.ai-pulse{flex-shrink:0}
.approval-example{gap:9px}
.portal-website{height:auto;display:grid;grid-template-columns:.8fr 1.2fr;align-items:start}
.portal-menu{grid-column:1/-1;flex-wrap:wrap;gap:10px;padding:12px}
.portal-page{padding:20px 14px;max-width:none}
.portal-page h3{font-size:1.375rem!important}
.embedded-agent{position:relative;inset:auto;width:auto;min-width:0;margin:12px 12px 16px 0;overflow:hidden}
.agent-widget-body{flex:none;min-height:auto}
.visitor-message{margin-left:0}
.agent-widget-header{flex-wrap:wrap}
.widget-composer{gap:8px}
.widget-composer>span{width:25px;height:25px;flex:none}
.weekly-calendar .week-heading{flex-wrap:wrap}
.weekly-calendar .week-grid{height:180px;margin-left:47px}
.weekly-calendar .week-days{margin-left:47px}
.weekly-calendar .grid-time{left:-43px}
.weekly-calendar .time-a{top:12px}.weekly-calendar .time-b{top:99px}
.weekly-calendar .schedule-block{width:75%;padding:7px 9px}
.weekly-calendar .meeting{top:5px}.weekly-calendar .training{top:92px;left:23%}
.file-import{flex-wrap:wrap;gap:7px}
.file-import>div{min-width:150px}
.request-status>div:last-child{flex-wrap:wrap;gap:8px}
.automation-flow{flex-wrap:wrap;gap:6px;justify-content:flex-start}
.received-email{flex-wrap:wrap;gap:7px}
.received-email>div{flex:1;min-width:150px}
.office-top{flex-wrap:wrap}
.office-device{display:flex;flex-direction:column;gap:5px;padding:10px 5px;text-align:center}
.voice-request p{padding-right:0}.voice-wave{display:none}
.office-devices{gap:6px}
@media(max-width:1100px){.header-inner{gap:15px}.header-inner #navigation{gap:15px}.group-link{max-width:140px;padding-left:15px}.case-pair{grid-template-columns:1fr}.services-editorial .services-featured{grid-template-columns:1fr}.services-editorial .service-lead+.service-lead:before{inset:0 25px auto;width:auto;height:1px}.services-editorial .service-lead .service-copy{padding:26px}.person-heading{flex-direction:column}}
@media(max-width:900px){.team-grid{grid-template-columns:1fr}.person-heading{flex-direction:row;align-items:center}.commercial-team{grid-template-columns:1fr 1fr}.commercial-team>div{grid-column:1/-1}.contact-inline-grid{grid-template-columns:1fr}}
@media(max-width:650px){
 .hero-description{font-size:1rem!important}
 .slide-tabs{display:flex;overflow:auto;gap:16px;scroll-snap-type:x proximity;max-width:100%;padding-bottom:8px}
 .slide-tab{flex:0 0 auto;max-width:190px;white-space:normal;scroll-snap-align:start}
 .slide-tab>span{display:none}
 .showcase .scene-container,.product-window,.case-preview .product-window{min-height:0}
 .product-window :is(.office-app,.ticket-app,.calendar-product-app,.messages-product-app,.org-app){padding:14px}
 .portal-website{grid-template-columns:1fr}
 .portal-page{padding:15px}
 .portal-page h3 br{display:none}
 .portal-page>p,.portal-page>.web-service{display:none}
 .embedded-agent{margin:0 12px 14px}
 .portal-menu>span{display:none}
 .person-heading{flex-direction:column;align-items:flex-start}
 .commercial-team{grid-template-columns:1fr}
 .services-editorial .service-lead .service-copy{grid-template-columns:1fr;padding:24px}
 .services-editorial .service-lead .service-copy>*{grid-column:1}
 .services-editorial .service-lead .service-simple-icon{display:flex;margin-bottom:16px}
 .services-editorial .service-copy{grid-template-columns:28px minmax(0,1fr);column-gap:10px}
 .case-pair{padding:0 10px}.case-caption{padding:20px 8px}
 .footer-main{gap:25px}.footer-bottom{gap:18px;flex-wrap:wrap}
 .services-editorial .service-lead .service-copy .service-detail{grid-column:1}
}
