/* Shared phone and tablet layouts. Desktop styles stay in their original files. */
.mobile-table-hint{display:none}

@media(max-width:850px){
  .site-header{padding:22px 24px;gap:18px}
  .site-header .brand{white-space:normal}
  .site-nav{gap:12px;min-width:0}
  .site-nav a{min-height:44px;display:flex;align-items:center;justify-content:center}
  .section,.hero{padding-left:24px;padding-right:24px}
  .section-head,.hero,.guide-inner,.home-about,.home-contact,.profile-story,.consultation-page{grid-template-columns:minmax(0,1fr)}
  .hero>div,.section-head>div,.section-head>p,.home-contact>div,.profile-cta>div{min-width:0}
  .section-head p{margin-bottom:0}
  .hero{gap:40px}
  .section-head,.systems-showcase .section-head{gap:22px}
  .systems-showcase .section-head{grid-template-columns:minmax(0,1fr)}
  .strip{padding-left:24px;padding-right:24px;gap:12px 24px}
  .actions .btn{min-height:48px;text-align:center}
  .partnership-section>.section-head,.projects-section .section-head,.issue-guide .section-head{grid-template-columns:minmax(0,1fr)}
  .issue-guide .guide-inner{grid-template-columns:minmax(0,1fr)}
  .issue-guide .choices{grid-template-columns:minmax(0,1fr)}
  .issue-guide .choices button{scroll-margin-top:16px}
  .issue-guide .recommendation{grid-column:1/-1;margin-bottom:10px}
  .issue-guide .recommendation{position:static}
  .partnership-section .services,.projects-section .project-grid{grid-template-columns:minmax(0,1fr)}
  .partnership-section .service:nth-child(2){margin-top:0}
  .project-featured .project-content{grid-template-columns:minmax(0,1fr);gap:20px}
  .projects-section .project-featured{grid-column:auto}
  .refined-profile{grid-template-columns:minmax(0,1fr)}
  .career-card .career-info,.client-value-list article>div{min-width:0}
  .consultation-card{width:100%}
  .site-footer{padding:28px 24px;align-items:flex-start}
  .site-footer nav{gap:8px 20px}
  .site-footer nav a{min-height:44px;display:flex;align-items:center}

  /* The desktop sidebar becomes a touch friendly row of demo views. */
  .app-console{grid-template-columns:minmax(0,1fr);min-height:0}
  .app-sidebar{display:block;padding:10px;border-right:0;border-bottom:1px solid #dfe5eb}
  .app-sidebar .app-logo,.sidebar-workspace,.app-menu-label,.sidebar-extra,.sidebar-account{display:none}
  .app-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .app-menu button{justify-content:center;text-align:center;min-height:48px;padding:9px 6px;font-size:14px;line-height:1.4}
  .app-menu button svg{display:none}
  .app-menu button span{min-width:0;overflow-wrap:anywhere}
  .software-screen{min-height:0}
  .app-topbar{height:auto;min-height:52px;padding:12px 16px;flex-wrap:wrap;gap:8px}
  .app-topbar strong{min-width:0;flex:1 1 160px;font-size:13px;line-height:1.5}
  .app-topbar-tools{flex-shrink:0}
  .app-topbar-tools svg{display:none}
  .app-page-heading{flex-direction:column;align-items:flex-start;gap:12px}
  .app-page-heading>div{min-width:0;width:100%}
  .period-pill{white-space:normal;max-width:100%}
  .app-card-heading{flex-wrap:wrap;align-items:flex-start}
  .field-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
  .field,.field strong,.attachment>div{min-width:0;overflow-wrap:anywhere}
  .app-note{align-items:flex-start;line-height:1.6}
  .app-note svg,.attachment svg,.monitor-list svg{flex-shrink:0}
  .app-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .mobile-table-hint{display:block;margin:0 0 9px!important;font-size:12px;color:#526d80;line-height:1.6}
  .app-table-wrap:focus-visible{outline:3px solid #bd8b28;outline-offset:3px}
  .app-table .row-link{min-height:44px;padding:7px 0}
  .app-toolbar button,.app-primary-button{min-height:44px;font-size:14px}
  .regulatory-heading{grid-template-columns:minmax(0,1fr);gap:20px}
  .regulatory-kicker{flex-wrap:wrap;line-height:1.6}
  .regulatory-topic-bar{flex-wrap:wrap;gap:8px 20px}
  .regulatory-topic-bar button{min-height:48px;margin:0;padding:12px 0;font-size:14px;line-height:1.5}
  .regulatory-bottom{flex-wrap:wrap}
  .studio-pause,.regulatory-pause{min-height:44px;padding:10px 0;font-size:14px}
}

@media(max-width:700px){
  .site-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .site-nav a,.site-nav .btn{font-size:14px;line-height:1.4;padding:9px 4px;text-align:center;border-radius:7px}
  .site-nav a:not(.btn){background:#ffffff08}
  .studio-selector button{min-height:62px}
  .console-content{padding:20px 14px}
  .app-panels,.detail-layout{grid-template-columns:minmax(0,1fr)}
  .app-metrics{grid-template-columns:minmax(0,1fr);gap:10px}
  .app-metric{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;align-items:center;padding:16px}
  .app-metric>span{font-size:14px;line-height:1.5;margin:0;color:#51697a}
  .app-metric strong{font-size:26px;line-height:1.2;letter-spacing:-.03em;white-space:nowrap}
  .app-metric small{display:block;grid-column:1/-1;font-size:12px;line-height:1.6;margin-top:3px;color:#617584}
  .chart-total,.budget-balance,.invoice-header,.record-heading,.connected-record{flex-wrap:wrap}
  .chart-total{line-height:1.6}
  .activity-line{display:grid;grid-template-columns:27px minmax(0,1fr);gap:6px 10px}
  .activity-line>strong{grid-column:2;line-height:1.5}
  .activity-line b{line-height:1.5}
  .routing-line{flex-wrap:wrap;gap:8px}
  .routing-line>div{min-width:130px}
  .routing-line>.tag{margin-left:35px}
  .grid-tab-strip{flex-wrap:wrap;gap:10px 16px}
  .attachment{align-items:flex-start;line-height:1.6}
  .workflow-steps{display:grid;grid-template-columns:minmax(0,1fr);width:100%}
  .workflow-steps button{min-width:0;min-height:44px;padding:10px 12px;text-align:left}
  .studio-control-bar{flex-direction:column;align-items:stretch;gap:4px;padding:14px}
  .studio-pause{margin:0;align-self:flex-start}
  .studio-caption{align-items:flex-start;padding:22px 18px}
  .studio-caption>div{min-width:0}
  .studio-caption p{font-size:14px;line-height:1.7}
  .caption-hidaya{display:none}
  .regulatory-topic-bar{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
  .regulatory-topic-bar button{width:100%;justify-content:flex-start}
  .regulatory-content{padding:25px 20px}
  .regulatory-content h3{font-size:25px;line-height:1.4}
  .practice-connection{flex-direction:column;gap:9px}
  .practice-connection p{font-size:16px}
  .regulatory-content a{min-height:44px;font-size:14px;line-height:1.6}
  .regulatory-bottom{padding:14px 20px;gap:2px}
  .regulatory-bottom>span{line-height:1.7;letter-spacing:.04em}
}

@media(max-width:600px){
  .site-header{padding:20px;gap:16px}
  .site-header .brand{font-size:25px;line-height:1.25}
  .site-header .brand small{font-size:12px;line-height:1.6;letter-spacing:.08em}
  .section,.hero{padding-left:20px;padding-right:20px}
  .section{padding-top:52px;padding-bottom:56px}
  .hero{padding-top:44px;padding-bottom:48px;gap:36px}
  .hero h1{font-size:clamp(2.5rem,10vw,3.25rem);line-height:1.12;max-width:100%;margin-bottom:24px}
  h2,.systems-showcase .section-head h2,.regulatory-heading h2,.home-contact h2{font-size:clamp(2rem,7.8vw,2.5rem);line-height:1.18}
  .hero .intro{font-size:17px;line-height:1.75}
  .eyebrow,.label{line-height:1.6;letter-spacing:.09em}
  .hero-aside .big{font-size:30px}
  .strip{padding:18px 20px;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;font-size:12px}
  .actions{gap:10px;margin-top:25px}
  .actions .btn{width:100%;padding:14px 18px}
  .section-head{margin-bottom:28px}
  .service-heading{flex-wrap:wrap;gap:16px}
  .service-heading .offering-icon{order:-1}
  .partnership-section .service,.projects-section .project{padding:28px 24px;border-radius:17px}
  .partnership-section .service h3{font-size:32px}
  .partnership-section .services{gap:32px}
  .partnership-section .service::after{inset:8px -5px -8px 8px;border-radius:17px}
  .project-top{gap:14px;margin-bottom:22px}
  .projects-section .project h4,.projects-section .project-featured h4{font-size:29px;line-height:1.23}
  .projects-section .project .label{font-size:14px;letter-spacing:.04em}
  .offering-icon{width:46px;height:46px;flex-basis:46px;border-radius:13px}
  .offering-group-heading{gap:14px;align-items:flex-start}
  .offering-group-heading>div{min-width:0}
  .group-number{width:34px;flex-basis:34px;font-size:29px}
  .issue-guide .choices{grid-template-columns:minmax(0,1fr)}
  .issue-guide .choices button{padding:18px;gap:12px;font-size:16px;line-height:1.6;min-height:70px}
  .issue-guide .recommendation{padding:28px 24px}
  .subscription-bridge h3{font-size:34px;line-height:1.2}
  .subscription-bridge p{font-size:18px;line-height:1.75}
  .subscription-bridge .btn{width:100%;text-align:center}
  .refined-profile h1{font-size:clamp(2.5rem,10vw,3.25rem);line-height:1.12;gap:12px}
  .profile-suffix{margin-top:0}
  .profile-role{font-size:15px;margin-bottom:22px}
  .refined-profile .profile-value{font-size:30px;line-height:1.22}
  .refined-profile .profile-lead{font-size:17px}
  .profile-proof{grid-template-columns:minmax(0,1fr)}
  .profile-proof>div{display:grid;grid-template-columns:minmax(90px,.55fr) minmax(0,1fr);gap:16px;padding:18px 0;align-items:center}
  .profile-proof strong{min-width:0;font-size:32px;white-space:normal}
  .profile-proof strong small{font-size:15px}
  .profile-proof>div>span{font-size:15px;line-height:1.6;max-width:none;margin:0}
  .refined-profile .portrait-frame{width:100%;max-width:320px;justify-self:center}
  .career-card{display:block;padding:28px 24px}
  .career-card ul{padding-left:0;border-left:0;margin-top:22px}
  .career-card li{font-size:16px}
  .career-section h2,.refined-story .story-intro h2,.credentials-section h2,.profile-cta h2{font-size:34px;line-height:1.2}
  .client-experience-controls{flex-wrap:wrap;gap:12px}
  .client-scroll-toggle{min-height:44px}
  .client-logo-list>li{width:14rem}
  .client-logo-card{padding:16px;min-height:144px}
  .credentials-grid{grid-template-columns:minmax(0,1fr)}
  .credentials-grid{grid-template-areas:"cgms" "masters" "planning" "bachelors"}
  .credentials-grid article{padding:26px 24px}
  .technology-row li{max-width:100%;overflow-wrap:anywhere}
  .consultation-page{gap:28px}
  .consultation-intro{padding-top:0}
  .consultation-intro h1{font-size:clamp(2.5rem,10vw,3.25rem);line-height:1.12}
  .contact-details,.consultation-note{margin-top:26px}
  .contact-details{padding-top:22px}
  .consultation-note{padding:24px}
  .consultation-card{padding:28px 22px;border-radius:17px}
  .form-heading h2{font-size:31px;line-height:1.2}
  .form-field label{font-size:16px}
  .form-field label span{white-space:normal}
  .form-actions{flex-direction:column;align-items:stretch;gap:12px;margin-top:24px}
  .form-actions button{width:100%;min-height:50px}
  .form-grid{grid-template-columns:minmax(0,1fr)}
  .form-wide{grid-column:auto}
  .site-footer{padding:28px 20px;display:flex;flex-direction:column;gap:12px}
}

@media(max-width:360px){
  .site-header,.section,.hero,.strip,.site-footer{padding-left:16px;padding-right:16px}
  .site-header .brand{font-size:23px}
  .site-nav a,.site-nav .btn{font-size:13px}
  .partnership-section .service,.projects-section .project,.consultation-card{padding-left:20px;padding-right:20px}
  .app-card{padding:14px}
  .field-pair{grid-template-columns:minmax(0,1fr)}
  .app-metric strong{font-size:24px}
  .donut-summary{flex-wrap:wrap;gap:16px}
  .invoice-header{gap:14px}
}
