/* Responsive brand presentation, shared by public pages and operations. */
:root { --navigation-top:44px; --navigation-main:84px; --navigation-height:calc(var(--navigation-top) + var(--navigation-main)); }
*,*::before,*::after { box-sizing:border-box; }
img,video,svg { max-width:100%; }
input,select,textarea { max-width:100%; min-width:0; }
label,.form-grid > *,.split > *,.ops-card,.ops-workspace { min-width:0; }
button,a { touch-action:manipulation; }
:focus-visible { outline:3px solid #2078b4; outline-offset:4px; }
.jazuz-home .service-topbar { height:var(--navigation-top); padding-inline:max(24px,calc((100vw - 1360px)/2)); }
.jazuz-home .service-topbar > span { font-size:.75rem; letter-spacing:.02em; }
.social-links { gap:10px; }
.social-links .social-icon { width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px; border-radius:12px; transition:background .18s,transform .18s; margin:0; }
.social-icon img { width:24px; height:24px; display:block; }
.social-icon:hover { background:rgba(255,255,255,.12); transform:translateY(-2px); }
.social-icon:focus-visible { outline-color:#f3c222; }
.social-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; clip-path:inset(50%); overflow:hidden; white-space:nowrap; }
.service-topbar .social-links { gap:4px; }
.jazuz-home .site-header { top:var(--navigation-top); height:var(--navigation-main); grid-template-columns:auto minmax(0,1fr) auto auto; gap:clamp(16px,2vw,28px); padding-inline:max(24px,calc((100vw - 1360px)/2)); border-bottom:1px solid #e6edf3; }
.jazuz-home .brand { gap:10px; }
.jazuz-home .brand-mark { width:54px; height:54px; }
.jazuz-home .brand strong { font-size:1rem; }
.jazuz-home .brand small { font-size:.65rem; }
.jazuz-home .main-nav { grid-column:auto; display:flex; gap:clamp(14px,1.6vw,24px); }
.jazuz-home .main-nav a { font-size:.875rem; padding:12px 0; white-space:nowrap; }
.jazuz-home .header-quote { min-height:48px; }
.jazuz-home .nav-toggle { display:none; }
.jazuz-home .hero { padding-top:calc(var(--navigation-height) + 64px); }
.jazuz-home .hero-shell { max-width:1360px; margin-inline:auto; gap:clamp(32px,5vw,72px); grid-template-columns:minmax(0,1fr) minmax(360px,440px); }
.jazuz-home .hero-content h1 { font-size:clamp(3.25rem,5vw,5.2rem); line-height:1.04; }
.jazuz-home .section { max-width:1360px; }
.jazuz-home main section[id],.jazuz-home main [id="quote"] { scroll-margin-top:calc(var(--navigation-height) + 24px); }
.jazuz-home .quote-panel { border-radius:16px; padding:32px; }
.jazuz-home .quote-panel label { font-size:.875rem; }
.jazuz-home .quote-panel input,.jazuz-home .quote-panel select,.jazuz-home .quote-panel textarea { font-size:1rem; min-height:48px; border-radius:8px; }
.jazuz-home .service-card,.jazuz-home .review-card,.jazuz-home .blog-card { border-radius:12px; }
.jazuz-home .service-card p { font-size:.95rem; line-height:1.65; }
.jazuz-home .service-card h3 { font-size:1.15rem; }
.jazuz-home .blog-card p,.jazuz-home .review-card p { font-size:1rem; }
.jazuz-home .process-grid p { font-size:1rem; }
.jazuz-home .process-grid h3 { font-size:1.125rem; }
.jazuz-home .contact-grid a { min-width:0; overflow-wrap:anywhere; }
.jazuz-home .site-footer { gap:24px; }
.footer-links { align-items:center; flex-wrap:wrap; }
.footer-links .social-links { margin-left:auto; }
.blog-main { margin-top:var(--navigation-height); }
.navigation-backdrop { position:fixed; inset:var(--navigation-height) 0 0; width:100%; height:auto; border:0; padding:0; background:rgba(9,24,38,.5); backdrop-filter:blur(3px); z-index:49; }
.navigation-backdrop[hidden] { display:none; }
body.navigation-open { overflow:hidden; }
body.navigation-open iframe[title="Chat widget"],body.navigation-open iframe[title="Visit tawk.to"] { visibility:hidden; pointer-events:none; }
.menu-glyph { width:20px; height:18px; position:relative; display:block; }
.menu-glyph span { position:absolute; left:0; width:20px; height:2px; border-radius:2px; background:currentColor; transition:transform .18s,opacity .18s,top .18s; }
.menu-glyph span:nth-child(1) { top:2px; }
.menu-glyph span:nth-child(2) { top:8px; }
.menu-glyph span:nth-child(3) { top:14px; }
.nav-toggle[aria-expanded="true"] .menu-glyph span:nth-child(1) { top:8px; transform:rotate(45deg); }
.nav-toggle[aria-expanded="true"] .menu-glyph span:nth-child(2) { opacity:0; }
.nav-toggle[aria-expanded="true"] .menu-glyph span:nth-child(3) { top:8px; transform:rotate(-45deg); }
.ops-table-wrap { overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
.ops-card-actions { flex-wrap:wrap; }
@media(min-width:1600px) { .jazuz-home .hero { padding-inline:max(40px,calc((100vw - 1360px)/2)); } }
@media(max-width:1120px) {
  .jazuz-home .site-header { grid-template-columns:minmax(0,1fr) auto auto; gap:16px; }
  .jazuz-home .header-contact { display:none; }
  .jazuz-home .nav-toggle { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; color:#122a42; border:1px solid #d9e2ec; border-radius:12px; background:#f5f8fb; cursor:pointer; }
  .jazuz-home .nav-toggle:hover,.jazuz-home .nav-toggle[aria-expanded="true"] { background:#f3c222; border-color:#f3c222; }
  .jazuz-home .main-nav { display:none; }
  .jazuz-home .main-nav[data-open="true"] { display:flex; flex-direction:column; align-items:stretch; justify-self:stretch; width:calc(100% - 32px); position:absolute; top:100%; left:16px; right:16px; gap:4px; padding:20px; background:#fff; border:1px solid #d9e2ec; border-top:3px solid #f3c222; border-radius:0 0 18px 18px; box-shadow:0 20px 40px rgba(9,24,38,.16); max-height:calc(100dvh - var(--navigation-height) - 24px); overflow-y:auto; }
  .jazuz-home .main-nav[data-open="true"] a { display:flex; align-items:center; justify-content:space-between; min-height:48px; padding:12px 16px; font-size:1rem; border-radius:8px; }
  .jazuz-home .main-nav[data-open="true"] a::after { content:'↗'; color:#617387; }
  .jazuz-home .main-nav[data-open="true"] a:hover { background:#f3f7fb; }
  .jazuz-home .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jazuz-home .hero-shell { grid-template-columns:minmax(0,1fr) minmax(340px,.9fr); gap:32px; }
  .jazuz-home .hero-content h1 { font-size:clamp(3rem,5vw,4rem); }
  .jazuz-home .hero-actions { flex-wrap:wrap; flex-direction:row; gap:12px; }
}
@media(max-width:900px) {
  .jazuz-home .hero-shell { grid-template-columns:1fr; gap:40px; }
  .jazuz-home .hero-content { padding-top:0; max-width:680px; }
  .jazuz-home .hero-content h1 { max-width:16ch; font-size:clamp(3rem,7vw,4.5rem); }
  .jazuz-home .hero-copy { max-width:55ch; }
  .jazuz-home .quote-panel { width:100%; max-width:680px; margin:0; }
  .jazuz-home .hero-actions { align-items:center; }
  .jazuz-home .jazuz-story { grid-template-columns:1fr; gap:36px; }
  .jazuz-home .story-images { max-width:680px; height:400px; }
  .jazuz-home .review-grid,.jazuz-home .blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jazuz-home .process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ops-hero { grid-template-columns:1fr; }
  .ops-shell { width:calc(100% - 32px); }
}
@media(max-width:600px) {
  :root { --navigation-main:72px; }
  .jazuz-home .service-topbar { padding-inline:16px; }
  .jazuz-home .service-topbar .social-links { gap:10px; }
  .jazuz-home .site-header { grid-template-columns:minmax(0,1fr) auto; padding-inline:16px; gap:12px; }
  .jazuz-home .brand-mark { width:42px; height:42px; }
  .jazuz-home .brand strong { font-size:.875rem; }
  .jazuz-home .brand small { font-size:.58rem; }
  .jazuz-home .header-quote { display:none; }
  .jazuz-home .hero { padding:calc(var(--navigation-height) + 36px) 20px 48px; }
  .jazuz-home .hero-shell { gap:32px; }
  .jazuz-home .hero-content h1 { font-size:clamp(2.65rem,10vw,3.6rem); max-width:13ch; }
  .jazuz-home .hero-copy { font-size:1rem; }
  .jazuz-home .hero-actions .button { font-size:.875rem; padding:14px 16px; }
  .jazuz-home .quote-panel { padding:24px; }
  .jazuz-home .quote-panel .form-grid { grid-template-columns:1fr; }
  .jazuz-home .service-grid,.jazuz-home .review-grid,.jazuz-home .blog-grid,.jazuz-home .contact-grid { grid-template-columns:1fr; gap:20px; }
  .jazuz-home .service-card .service-image { height:200px; }
  .jazuz-home .service-card h3,.jazuz-home .service-card p { padding-inline:22px; }
  .jazuz-home .section-heading h2 { font-size:clamp(1.85rem,7vw,2.35rem); }
  .jazuz-home .story-images { height:300px; gap:10px; }
  .jazuz-home .story-caption { left:12px; padding:14px 16px; font-size:.65rem; }
  .jazuz-home .process-grid { gap:24px 18px; }
  .jazuz-home .process-grid h3 { font-size:1rem; }
  .jazuz-home .process-grid p { font-size:.95rem; }
  .jazuz-home .tool-input-row { flex-wrap:wrap; }
  .jazuz-home .tool-input-row input { flex:1 1 150px; }
  .jazuz-home .tool-input-row button { flex:1 1 110px; min-height:48px; }
  .footer-links .social-links { margin-left:0; width:100%; }
  .blog-main { padding:36px 20px 72px; }
  .article-body { font-size:1rem; }
  .ops-token-card { padding:20px; }
  .ops-hero { padding:20px; }
  .ops-hero h1 { font-size:2rem; }
}
@media(max-width:360px) { .jazuz-home .brand strong { font-size:.78rem; } .jazuz-home .brand { gap:7px; } .jazuz-home .quote-panel { padding:20px; } .jazuz-home .hero-actions .button { flex:1 1 100%; } .jazuz-home .process-grid { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none !important; animation:none !important; } }
