/* Purpose-built RTL phone composition. */
:root{--header-height:60px;--page-gutter:20px}body{font-size:16px;max-width:768px;margin-inline:auto}.container{max-width:560px}.header-inner{padding-inline:20px;max-width:560px;margin-inline:auto;gap:12px}.brand-monogram{width:34px;height:34px;font-size:.8125rem}.brand-identity{gap:8px}.brand-en{font-size:.8125rem}.header-inner .availability{max-width:122px;font-size:.8125rem}.hero-ledger{padding-block:16px;font-size:.8125rem}.hero-ledger [lang=en]{font-size:.75rem}.hero-section{border-bottom:1px solid var(--border);padding-bottom:32px}.hero-grid{display:flex;flex-direction:column;gap:28px;padding-top:24px}.hero-narrative{width:100%}.hero-intro{font-size:.875rem;margin-bottom:12px}.hero-content h1{font-size:clamp(2rem,8.2vw,2.25rem);line-height:1.35}.hero-lead{font-size:1.0625rem;line-height:1.8;margin-top:16px}.hero-actions{margin-top:24px;gap:12px}.hero-actions .btn{flex:1 1 144px;min-width:max-content;min-height:52px;padding:12px;font-size:1rem;gap:8px}.hero-portrait{padding:8px;width:100%;background:var(--color-surface-soft)}.portrait-frame{height:240px;aspect-ratio:auto}.portrait-frame img{object-fit:cover;object-position:center top}.hero-portrait figcaption{padding-block:8px 0;font-size:.8125rem}.hero-portrait figcaption [lang=en]{font-size:.6875rem}.section-block{padding-block:48px}.section-heading{margin-bottom:24px}h2{font-size:1.625rem;line-height:1.4}.section-heading p{font-size:1rem;margin-top:12px}.work-notice{font-size:.875rem;padding-inline-start:12px;margin-bottom:24px}.portfolio-gallery{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:-20px;padding-inline:20px;scroll-padding-inline:20px;padding-bottom:4px;overscroll-behavior-x:contain}.portfolio-gallery::-webkit-scrollbar{display:none}.project-card{flex:0 0 91%;scroll-snap-align:center;display:flex;flex-direction:column;padding-bottom:12px}.project-card>p{margin-bottom:12px}.project-card h3{font-size:1.25rem}.project-meta{font-size:.8125rem;margin-top:16px}.project-detail-link{margin-top:auto;padding-top:8px}.project-image-action{width:36px;height:36px;bottom:12px;left:12px}.concept-tag{font-size:.8125rem}.carousel-controls{display:flex;align-items:center;justify-content:space-between;margin-top:16px;color:var(--color-text-muted);font-size:.875rem}.carousel-dots{display:flex;gap:0;direction:rtl}.carousel-dot{width:44px;height:44px;display:grid;place-items:center;border:0;padding:0;background:transparent}.carousel-dot>span{width:6px;height:6px;border-radius:50%;background:#787E73;transition:width var(--duration-feedback),background var(--duration-feedback)}.carousel-dot[aria-current]>span{width:22px;border-radius:4px;background:var(--color-accent-ink)}.services-section{background:#EFEAE0}.service-row{border-top:1px solid var(--border);padding-block:24px}.service-row:last-child{border-bottom:1px solid var(--border)}.service-accordion>summary{display:grid;grid-template-columns:32px minmax(0,1fr) 24px;align-items:start;gap:12px;list-style:none;cursor:pointer}.service-index{font-size:1.25rem;padding-top:4px}.service-accordion summary h3{font-size:1.25rem}.service-plus{padding-top:6px}.service-plus svg{transition:transform var(--duration-state) var(--ease)}.service-accordion[open] .service-plus svg{transform:rotate(45deg)}.service-detail{padding-top:24px;padding-inline-start:44px}.service-links{gap:16px}.process-timeline{display:grid;gap:0}.process-step{display:grid;grid-template-columns:32px minmax(0,1fr);gap:16px;padding-block:24px;border-top:1px solid var(--border)}.process-number{font-size:1rem;line-height:1.8}.process-step h3{font-size:1.125rem;margin-bottom:8px}.process-step p{font-size:1rem}.process-output{margin-top:12px}.about-section{background:var(--color-surface-soft)}.about-grid{display:flex;flex-direction:column-reverse;gap:32px}.about-image{max-width:240px;align-self:start}.about-image img{aspect-ratio:1;object-fit:cover}.about-lead{font-size:1.25rem;margin-top:16px}.about-copy>p:not(.about-lead){font-size:1rem}.about-specialties{gap:12px;font-size:.875rem}.faq-grid{display:grid;gap:24px}.faq-item summary{font-size:1rem}.faq-item p{font-size:1rem}.contact-section{padding-block:48px}.contact-grid{display:grid;gap:40px}.contact-copy h2{font-size:1.75rem;max-width:15ch}.contact-copy>p{font-size:1rem;margin-top:16px}.contact-copy>.btn{width:100%;min-height:52px;margin-top:24px}.contact-copy .contact-channel-label{margin-top:24px}.inquiry-form{padding:24px 20px}.form-row{grid-template-columns:1fr;gap:0}.form-group input,.form-group select,.form-group textarea{min-height:52px;font-size:16px}.form-group{margin-bottom:20px}.inquiry-form .btn{min-height:52px;padding-inline:12px;gap:8px}.site-footer{padding-bottom:calc(var(--dock-height,64px) + 24px)}.site-footer>.container{flex-direction:column;gap:16px;align-items:start}.site-footer nav{gap:12px 20px}.bottom-dock{position:fixed;bottom:0;right:0;left:0;z-index:50;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:calc(64px + env(safe-area-inset-bottom,0px));height:auto;padding-bottom:env(safe-area-inset-bottom,0px);max-width:768px;margin-inline:auto;background:var(--color-bg);border-top:1px solid var(--border);transition:transform 150ms var(--ease)}.bottom-dock a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;min-height:44px;font-size:.8125rem;position:relative}.bottom-dock a svg{width:22px;height:22px}.bottom-dock [aria-current]{color:var(--color-accent-ink);font-weight:600}.bottom-dock [aria-current]::before{content:'';position:absolute;top:0;right:24%;left:24%;height:2px;background:var(--color-accent-ink)}.bottom-dock.dock-hidden{transform:translateY(110%)}html{scroll-padding-bottom:calc(var(--dock-height,64px) + 16px)}.project-dialog{inset:auto 0 0;margin-inline:auto;width:100%;max-width:768px;height:92dvh;max-height:92dvh;border-radius:8px 8px 0 0}.sheet-handle{display:grid;place-items:center;height:24px;flex-shrink:0;touch-action:none;cursor:grab}.sheet-handle span{width:36px;height:4px;border-radius:4px;background:#787E73}.dialog-header{padding:0 20px 16px}.dialog-header h2{font-size:1.125rem}.dialog-body{padding:20px}.dialog-footer{padding-inline:20px}.study-content h3{font-size:1.125rem}.study-content p{font-size:1rem}.project-demo{padding:20px 16px}.demo-products{grid-template-columns:1fr}.demo-product{display:flex;align-items:center;justify-content:space-between;gap:12px}.demo-product .btn{width:auto;margin:0}.demo-product h4{margin:0}.demo-cart-row{font-size:.9375rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{scroll-margin-bottom:100px}
@media(min-width:560px){.section-block{padding-block:64px}:root{--page-gutter:24px}.hero-content h1{font-size:2.5rem}.portrait-frame{height:280px}.portfolio-gallery{margin-inline:-24px;padding-inline:24px;scroll-padding-inline:24px}.project-card{flex-basis:88%}}
@media(max-width:359px){.header-inner .availability{max-width:94px;font-size:.8125rem}.brand-en{font-size:.75rem}.hero-ledger [lang=en]{display:none}.hero-content h1{font-size:2rem}.portrait-frame{height:220px}.hero-actions .btn{flex-basis:100%}.service-detail{padding-inline-start:0}.inquiry-form{padding:20px 16px}.inquiry-form .btn{font-size:.9375rem}.bottom-dock a{font-size:.8125rem}.project-card{flex-basis:95%}.hero-portrait figcaption [lang=en]{display:none}}

@media(max-width:359px) and (max-height:700px){.hero-ledger{padding-block:10px}.hero-grid{gap:20px;padding-top:16px}.hero-intro{margin-bottom:8px}.hero-content h1{font-size:1.875rem;line-height:1.24}.hero-lead{font-size:1rem;line-height:1.6;margin-top:12px}.hero-actions{margin-top:16px;gap:8px}.hero-actions .btn{flex:1 1 0;min-width:0;padding:8px 6px;font-size:.875rem;gap:6px;white-space:nowrap}}


.bottom-dock a{min-width:0;padding:6px 2px;overflow-wrap:anywhere}.bottom-dock a span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal}.carousel-controls{display:none}.js-enhanced .carousel-controls{display:flex}
@media(max-width:239px){.header-inner .availability{display:none}.bottom-dock{grid-template-columns:repeat(4,minmax(44px,1fr));overflow-x:hidden;justify-content:start}.bottom-dock a[data-section="hero"]{display:none}.bottom-dock a{min-width:44px}.bottom-dock a span{display:none}.carousel-controls{display:none!important}.hero-actions .btn{flex:1 1 100%;min-width:0;white-space:normal}}
