/* Corporate presentation — preserve the existing motion system. */
:root{--primary:#21568b;--primary-dark:#163d65;--primary-light:#e9f0f7;--accent:#287a72;--radius-lg:12px}
[data-theme="dark"]{--primary:#8eb4dc;--primary-dark:#477cae;--primary-light:#1a2c40}
.container{max-width:1240px}
.navbar{padding:16px 0}.nav-link{font-size:.8rem;font-weight:600}
.section-tag{letter-spacing:.13em;font-weight:700}
.section-title{font-size:clamp(1.9rem,3.4vw,2.8rem);letter-spacing:-.035em;line-height:1.2}
.page-title{font-size:clamp(2.5rem,5vw,3.8rem);letter-spacing:-.04em}
.page-description{max-width:720px;margin-inline:auto;line-height:1.8}
.hero-title{font-size:clamp(2.7rem,5vw,4.5rem);letter-spacing:-.045em;line-height:1.12}
.hero-description{line-height:1.8}.hero-subtitle{letter-spacing:.13em}
.hero .btn-primary{background:#285f9b}.hero-title .highlight{color:#a4c3e6}
.btn{border-radius:8px;font-weight:650;padding:14px 22px}
.service-card,.case-card,.blog-card,.value-card,.process-card,.service-detail-card,.case-study-card,.featured-post,.blog-post-item,.sidebar-widget,.contact-form-card,.quick-action-card,.faq-item{border-radius:12px}
.service-title{letter-spacing:-.02em}.service-content{padding:30px}
.service-icon,.service-detail-icon{border-radius:10px}
.section-header{max-width:800px;margin-inline:auto}
.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.team-card{display:grid;grid-template-columns:136px minmax(0,1fr);align-items:start;padding:20px;gap:20px;border-radius:12px;overflow:visible}
.team-image{height:170px;width:136px;border-radius:8px;overflow:hidden}
.team-image img{width:136px;height:170px;object-fit:cover;object-position:center 25%;filter:none!important;transform:none!important}
.team-info{padding:0;min-width:0}.team-info h3{font-size:1.05rem;margin-bottom:7px;line-height:1.35}
.team-role{font-size:.74rem;line-height:1.5;letter-spacing:0;margin-bottom:12px}
.team-info p{font-size:.82rem;line-height:1.7;color:var(--text-secondary)}
.team-social{margin-top:14px}
.story-image{max-width:440px;margin-inline:auto}.story-image img{border-radius:12px}
.story-content h2{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.25;letter-spacing:-.035em}
.footer-description{line-height:1.8}
@media(max-width:900px){.team-grid{grid-template-columns:1fr}}
@media(max-width:480px){.team-card{grid-template-columns:96px minmax(0,1fr);gap:16px;padding:16px}.team-image,.team-image img{width:96px;height:128px}.team-info h3{font-size:.98rem}.team-role{font-size:.7rem}.team-info p{font-size:.78rem}}
/* Mobile navigation: panel follows the real header height. */
@media(max-width:1023px){
 .navbar{z-index:1100}
 .navbar .nav-toggle{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:12px;border:1px solid var(--border);border-radius:10px;flex-shrink:0}
 .nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .nav-toggle.active span:nth-child(2){opacity:0}
 .nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .navbar .nav-menu{display:flex;position:absolute;inset:100% 0 auto;height:calc(100vh - var(--nav-height,80px));height:calc(100dvh - var(--nav-height,80px));padding:16px 20px max(24px,env(safe-area-inset-bottom));margin:0;gap:4px;align-items:stretch;justify-content:flex-start;overflow-y:auto;overscroll-behavior:contain;background:var(--bg-primary);border-top:1px solid var(--border);visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility .2s}
 .navbar .nav-menu.active{visibility:visible;pointer-events:auto;opacity:1;transform:translateY(0)}
 .navbar .nav-menu>li{width:100%;flex-shrink:0}
 .navbar .nav-menu .nav-link{display:flex;align-items:center;min-height:50px;padding:12px 14px;border-radius:8px;font-size:1rem;line-height:1.45;color:var(--text-primary)}
 .navbar .nav-menu .nav-link:hover,.navbar .nav-menu .nav-link[aria-current="page"]{background:var(--primary-light);color:var(--primary)}
 .navbar .nav-menu .nav-link::after{display:none}
 .navbar .nav-menu .theme-toggle{width:48px;height:48px;margin:10px 14px;border:1px solid var(--border);border-radius:10px}
 .navbar button:focus-visible,.navbar a:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
 body.nav-open .motion-control{visibility:hidden}
}
@media(prefers-reduced-motion:reduce){.navbar .nav-menu,.nav-toggle span{transition:none}}
