/* Content controls the height; layouts adapt before text runs out of room. */
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
body { overflow-wrap:break-word; }
main, section, .hero-content, .section-heading>*, .more-solutions-heading>*,
.light-feature>*, .card-info>*, .benefits article>div, .method-grid>*,
.care-compact>*, .contact-copy, .contact-form, .form-row, .form-row>* { min-width:0; }
h1,h2,h3 { overflow-wrap:break-word; }
.hero { height:auto; max-height:none; min-height:100svh; }
.hero h1 { line-height:1.12; }
.scene-note { position:relative; inset:auto; max-width:none; display:flex; align-items:center; gap:12px; padding:16px 22px; margin-top:12px; border-top:1px solid #ffffff35; background:#112034e8; border-radius:0 0 22px 22px; }
.scene-note>span { margin:0; font-size:28px; }
.scene-note p { font-size:12px; }
.hero-app-scene { height:auto; min-height:560px; display:flex; flex-direction:column; align-items:center; padding-top:68px; }
.hero-demo-phone { position:relative; inset:auto; flex-shrink:0; margin:0 18px 24px; transform:rotate(3deg); }
.hero-demo-phone:hover { transform:rotate(1deg); }
.scene-label { line-height:1.7; }
.scene-disclaimer { position:relative; inset:auto; max-width:none; width:100%; padding:0 22px 19px; line-height:1.8; font-size:9px; letter-spacing:.7px; }
.scene-note+.scene-disclaimer { padding-top:16px; }
.scene-note { align-self:stretch; }
.hero-footer { position:static; grid-column:1/-1; margin-top:22px; gap:18px; flex-wrap:wrap; }
.hero-actions { flex-wrap:wrap; }
.hero-starting-price { line-height:1.8; }
.section-heading h2, .care-heading h2, .contact-copy h2 { line-height:1.17; }
.eyebrow { line-height:1.8; }
.light-stage { padding:24px 24px 28px; }
.light-stage .stage-topline { position:static; width:100%; flex-wrap:wrap; gap:8px 14px; font-size:9px; line-height:1.7; margin-bottom:22px; }
.stage-live { flex-shrink:0; }
.light-device-toolbar { margin:0 0 22px; }
.device-switch { max-width:100%; flex-shrink:1; flex-wrap:wrap; margin-top:0; }
.device-switch button { min-height:44px; flex:1 1 auto; }
.light-feature.is-computer .light-stage { padding-top:24px; }
.light-budget, .card-price { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:10px 14px; }
.light-budget>div, .card-price>div { min-width:0; }
.light-budget small, .card-price>small { flex-shrink:0; font-size:11px; line-height:1.7; padding-bottom:4px; }
.light-budget strong { display:block; font-size:clamp(26px,3.3vw,34px); line-height:1.4; }
.card-title { min-height:0; }
.card-title h3 { line-height:1.22; }
.card-info>p.card-summary { min-height:0; margin-top:12px; }
.card-price strong { font-size:clamp(22px,2vw,27px); line-height:1.4; }
.card-actions:before, .card-actions:after { content:none; }
.card-preview { padding-bottom:36px; }
.original-preview-ui { height:100%; overflow:hidden; }
.card-preview .demo-stamp { bottom:0; right:0; left:0; padding:9px 14px; font-size:9px; line-height:1.7; border-radius:0; background:#142237; color:#f8faff; text-align:right; }
.solution-details>summary, .faq-list summary { min-height:52px; line-height:1.65; }
.faq-list summary>span { flex:0 0 24px; text-align:center; }
.inline-lab-heading>div { min-width:0; }
.inline-lab-heading h3 { line-height:1.3; }
.inline-lab-heading .eyebrow { line-height:1.8; }
.inline-lab-toolbar { flex-wrap:wrap; }
.lab-close { min-width:44px; min-height:44px; }
.live-loading { white-space:normal; text-align:center; }
.inline-lab-footer>* { min-width:0; }
.contact-form input, .contact-form select, .contact-form textarea { width:100%; min-width:0; max-width:100%; font-size:16px; }
.contact-form input, .contact-form select { min-height:48px; }
.contact-form textarea { min-height:140px; resize:vertical; }
.contact-form label { line-height:1.7; }
.contact-form .button { width:100%; white-space:normal; text-align:center; }
.whatsapp-direct { max-width:100%; }
.whatsapp-direct>span:last-child { min-width:0; }
.whatsapp-direct b { overflow-wrap:anywhere; }
.wa-icon { flex-shrink:0; }
.footer-top, .footer-bottom { gap:20px; flex-wrap:wrap; }
.footer-top>* { min-width:0; }
.text-link { line-height:1.8; }

@media (min-width:851px) {
  .hero { padding-bottom:35px; align-content:center; row-gap:24px; }
  .hero-app-scene { justify-self:end; width:100%; max-width:670px; }
}
@media (min-width:601px) and (max-width:1100px) {
  .solution-card { flex-basis:calc((100% - 26px)/2); }
  .section-heading { align-items:flex-start; }
  .section-heading>div { flex:1 1 60%; }
  .section-heading>p { flex:1 1 34%; }
  .method-grid { gap:24px; }
}
@media (max-width:850px) {
  .site-header { gap:12px; height:calc(80px + env(safe-area-inset-top)); padding-top:env(safe-area-inset-top); }
  .header-cta { margin:0 0 0 auto; flex-shrink:0; }
  .menu-toggle { width:44px; height:44px; flex:0 0 44px; align-items:center; }
  .mobile-nav:not([hidden]) { top:100%; max-height:calc(100svh - 80px - env(safe-area-inset-top)); overflow-y:auto; background:#101c2d; gap:4px; padding-top:12px; padding-bottom:12px; padding-left:max(18px,env(safe-area-inset-left)); padding-right:max(18px,env(safe-area-inset-right)); }
  .mobile-nav a { display:flex; align-items:center; min-height:48px; }
  .hero { padding-top:120px; min-height:0; }
  .hero-app-scene { min-height:0; max-width:600px; padding-top:62px; }
  .hero-demo-phone { width:270px; margin-bottom:24px; }
  .hero-footer { margin-top:0; }
  .scene-note { margin-top:0; }
  .scene-note br { display:none; }
  .scene-note p { font-size:13px; }
  .contact-section { grid-template-columns:minmax(0,1fr); gap:34px; }
  .site-footer { padding-left:max(18px,env(safe-area-inset-left)); padding-right:max(18px,env(safe-area-inset-right)); padding-bottom:max(30px,env(safe-area-inset-bottom)); }
}
@media (max-width:600px) {
  .section { padding:56px max(18px,env(safe-area-inset-right)) 56px max(18px,env(safe-area-inset-left)); }
  .site-header { padding-left:max(18px,env(safe-area-inset-left)); padding-right:max(12px,env(safe-area-inset-right)); gap:8px; }
  .brand { font-size:23px; }
  .brand-mark { margin-right:10px; width:30px; }
  .header-cta { padding:10px 14px; font-size:12px; min-height:44px; }
  .hero { padding:calc(112px + env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) 36px max(18px,env(safe-area-inset-left)); gap:28px; }
  .hero .eyebrow { font-size:10px; letter-spacing:1px; align-items:flex-start; }
  .tiny-cross { margin-top:3px; flex-shrink:0; }
  .hero h1 { font-size:clamp(43px,11.5vw,64px); line-height:1.13; margin:22px 0; }
  .hero h1 .lime br { display:initial; }
  .hero-description { font-size:16px; line-height:1.8; }
  .hero-actions { gap:15px 22px; margin-top:24px; }
  .hero-actions .button { min-height:52px; font-size:13px; }
  .hero-actions .text-link { display:inline-flex; align-items:center; min-height:44px; font-size:13px; }
  .hero-starting-price { font-size:12px; gap:5px 8px; margin-top:18px; }
  .hero-starting-price>span { font-size:11px; }
  .hero-app-scene { padding-top:56px; border-radius:18px; width:100%; margin:0; }
  .hero-demo-phone { width:min(247px,calc(100% - 42px)); margin:0 0 25px; border-width:5px; border-radius:28px; }
  .hero-demo-photo { height:165px; }
  .hero-demo-brand { font-size:20px; }
  .scene-label { left:15px; right:15px; top:17px; font-size:8px; letter-spacing:.6px; }
  .scene-dot { flex-shrink:0; }
  .scene-note { display:none; }
  .scene-disclaimer { padding:0 15px 17px; font-size:8px; }
  .hero-footer { font-size:9px; letter-spacing:.8px; }
  .section-heading { flex-direction:column; align-items:stretch; gap:18px; }
  .section .eyebrow { font-size:10px; letter-spacing:1px; margin-bottom:18px; }
  .section h2, .light-heading h2, .value-intro h2, .care-heading h2, .contact-copy h2 { font-size:clamp(31px,8.7vw,44px); line-height:1.2; }
  .section-heading>p { font-size:15px; line-height:1.8; }
  .light-config { padding:25px 21px; }
  .light-config>h3 { font-size:clamp(25px,6.5vw,31px); line-height:1.25; }
  .config-intro, .light-use-case p { font-size:15px; line-height:1.8; }
  .business-selector { grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
  .business-selector button { min-height:46px; font-size:12px; padding:9px 4px; }
  .business-name-label { font-size:13px; line-height:1.9; }
  .business-name-label>span { display:inline-block; margin-left:5px; font-size:11px; }
  .light-stage, .light-feature.is-computer .light-stage { padding:22px 12px 25px; }
  .light-stage .stage-topline { font-size:8px; gap:6px 12px; margin-bottom:18px; }
  .stage-live { font-size:8px; }
  .light-stage .stage-caption { font-size:12px; line-height:1.8; max-width:300px; }
  .light-offer, .light-feature.is-computer .light-offer { padding:0 21px 25px; }
  .light-budget { gap:12px; }
  .light-budget strong { font-size:clamp(26px,7.3vw,33px); letter-spacing:-1px; }
  .light-budget>div>span { font-size:10px; letter-spacing:.5px; }
  .light-actions { flex-direction:column; align-items:stretch; }
  .light-actions .button { font-size:14px; min-height:50px; }
  .light-actions .text-link { min-height:44px; display:flex; align-items:center; font-size:13px; }
  .solution-details>summary { font-size:14px; gap:12px; }
  .solution-details p, .solution-details li, .care-details p { font-size:14px; line-height:1.85; }
  .more-solutions-heading h3 { font-size:clamp(27px,7vw,34px); line-height:1.25; }
  .more-solutions-heading>p { font-size:15px; }
  .gallery-toolbar { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
  .filter-group { flex:1 1 100%; display:grid; grid-template-columns:.7fr 1fr 1fr; gap:6px; max-width:none; }
  .filter { min-height:44px; padding:9px 8px; font-size:12px; white-space:normal; }
  .gallery-controls { margin-left:auto; gap:10px; }
  .round-button { width:44px; height:44px; font-size:25px; }
  .app-gallery { gap:16px; margin-right:0; padding-right:0; }
  .solution-card { flex-basis:calc(100% - 20px); }
  .card-title h3 { font-size:clamp(24px,6.5vw,29px); }
  .card-info>p.card-summary { font-size:15px; line-height:1.8; }
  .card-price strong { font-size:clamp(22px,6vw,28px); letter-spacing:-.7px; }
  .card-price>div>span { font-size:10px; }
  .card-maintenance { display:inline-flex; align-items:center; min-height:44px; font-size:12px; }
  .card-actions .demo-button { font-size:14px; min-height:48px; }
  .example-caption { font-size:12px; }
  .example-picker button { min-height:44px; font-size:12px; }
  .card-preview { height:310px; }
  .simple-pricing-note, .gallery-footer>p { font-size:13px; line-height:1.85; }
  .benefits h3 { font-size:23px; line-height:1.3; }
  .benefits article p, .method-grid p, .care-heading>p:last-child, .care-compact p { font-size:15px; line-height:1.85; }
  .benefits>article { gap:14px; }
  .method-grid h3, .care-compact h3 { font-size:23px; line-height:1.3; }
  .method-grid>article { grid-template-columns:28px minmax(0,1fr); gap:8px 12px; }
  .care-compact article { grid-template-columns:28px minmax(0,1fr); gap:5px 12px; }
  .faq-list summary { font-size:16px; gap:16px; }
  .faq-list details>p { font-size:15px; line-height:1.9; }
  .inline-lab-heading { flex-wrap:wrap; padding:20px 16px; }
  .inline-lab-heading>div { flex:1 1 190px; }
  .inline-lab-heading h3 { font-size:25px; }
  .inline-lab-heading .eyebrow { font-size:9px; }
  .lab-close { font-size:12px; margin-left:auto; }
  .inline-lab-toolbar { padding:0 16px 20px; }
  .inline-lab-toolbar .device-switch { margin-top:15px; }
  .inline-app-canvas { padding-left:10px; padding-right:10px; }
  .inline-lab-footer { padding:18px 16px; }
  .inline-lab-footer>span { font-size:12px; line-height:1.8; }
  .inline-lab-footer .button { white-space:normal; font-size:13px; gap:15px; }
  .device-switch button { font-size:12px; padding:10px 13px; }
  .contact-copy>p:not(.eyebrow) { font-size:16px; line-height:1.85; }
  .contact-section .contact-form { padding:24px 18px; }
  .contact-form h3 { font-size:25px; line-height:1.3; }
  .form-row { grid-template-columns:minmax(0,1fr); gap:0; }
  .contact-form label { font-size:14px; }
  .contact-form .form-note { font-size:13px; line-height:1.85; }
  .whatsapp-direct { width:100%; padding:15px; gap:12px; }
  .whatsapp-direct b { font-size:21px; }
  .footer-top { display:grid; grid-template-columns:1fr; gap:20px; }
  .footer-top>p, .footer-top>a:last-child { margin:0; font-size:13px; }
  .footer-top>a:last-child { justify-self:start; min-height:44px; display:flex; align-items:center; }
  .footer-bottom { line-height:1.8; font-size:12px; }
}
@media (max-width:380px) {
  .header-cta { display:none; }
  .menu-toggle { margin-left:auto; }
  .light-config { padding:23px 16px; }
  .light-offer, .light-feature.is-computer .light-offer { padding:0 16px 24px; }
  .light-budget { grid-template-columns:1fr; gap:6px; }
  .light-budget small { text-align:left; }
  .card-price { gap:8px; }
  .card-price>small { font-size:10px; }
  .business-selector { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .contact-section .contact-form { padding:22px 15px; }
  .whatsapp-direct b { font-size:19px; }
}
@media (prefers-reduced-motion:reduce) {
  html, .app-gallery { scroll-behavior:auto; }
  .hero-demo-phone, .button { transition:none; }
}
