:root {
  --uraf-primary: #68e1fd;
  --uraf-primary-strong: #21c9ef;
  --uraf-dark: #08111f;
  --uraf-dark-soft: #101c2d;
  --uraf-text: #111827;
  --uraf-muted: #6b7280;
  --uraf-line: rgba(17, 24, 39, .09);
}

html { scroll-behavior: smooth; }
body.uraf-site { font-family: "Inter", sans-serif; background: #fff; overflow-x: hidden; }
.uraf-site h1, .uraf-site h2, .uraf-site h3, .uraf-site .brand-word, .uraf-site .footer-brand { font-family: "Roboto Slab", serif; }
::selection { background: var(--uraf-primary); color: var(--uraf-dark); }

.scroll-progress { position: fixed; inset: 0 0 auto 0; height: 3px; z-index: 70; pointer-events: none; }
.scroll-progress span { display:block; width:0; height:100%; background: linear-gradient(90deg, var(--uraf-primary), #8b5cf6); box-shadow: 0 0 18px rgba(104,225,253,.75); }
.pointer-glow { position: fixed; width: 300px; height: 300px; border-radius: 999px; background: radial-gradient(circle, rgba(104,225,253,.13), rgba(104,225,253,0) 67%); transform: translate(-50%, -50%); pointer-events:none; z-index:1; opacity:0; transition: opacity .25s ease; }
body:hover .pointer-glow { opacity:1; }

/* preloader */
.uraf-preloader { display:flex; align-items:center; justify-content:center; transition: opacity .75s ease, visibility .75s ease; }
.preloader-inner { text-align:center; min-width:220px; }
.preloader-mark { width:74px; height:74px; margin:0 auto 18px; display:grid; place-items:center; border-radius:22px; background:var(--uraf-dark); color:var(--uraf-primary); font:700 38px/1 "Roboto Slab",serif; box-shadow:0 20px 50px rgba(8,17,31,.18); animation: preloadFloat 1.3s ease-in-out infinite; }
.preloader-name { font:700 18px/1.2 "Roboto Slab",serif; color:var(--uraf-dark); letter-spacing:.02em; }
.preloader-line { width:180px; height:3px; background:#e5e7eb; margin:18px auto 0; overflow:hidden; border-radius:999px; }
.preloader-line span { display:block; width:45%; height:100%; background:var(--uraf-primary-strong); border-radius:inherit; animation: preloadLine 1.15s ease-in-out infinite; }
@keyframes preloadFloat { 0%,100%{ transform:translateY(0) rotate(0)} 50%{transform:translateY(-8px) rotate(-2deg)} }
@keyframes preloadLine { 0%{transform:translateX(-120%)} 100%{transform:translateX(310%)} }

/* header */
.uraf-header .main-nav { transition: background .35s ease, box-shadow .35s ease, backdrop-filter .35s ease; }
.uraf-header .main-nav.is-scrolled { background:rgba(255,255,255,.88); backdrop-filter:blur(18px); box-shadow:0 10px 40px rgba(8,17,31,.07); }
.brand-wrap { min-height:72px; gap:12px; }
.brand-mark { width:42px; height:42px; display:inline-grid; place-items:center; border-radius:13px; background:var(--uraf-dark); color:var(--uraf-primary); font:700 22px/1 "Roboto Slab",serif; box-shadow:0 10px 25px rgba(8,17,31,.13); transition:transform .3s ease, box-shadow .3s ease; }
.brand-wrap:hover .brand-mark { transform:rotate(-7deg) scale(1.06); box-shadow:0 14px 30px rgba(8,17,31,.18); }
.brand-mark.small { width:36px; height:36px; border-radius:11px; font-size:19px; margin-right:10px; }
.brand-word, .footer-brand { color:var(--uraf-dark); font-weight:700; font-size:22px; }
.language-switch { display:flex; padding:3px; background:#eef2f7; border:1px solid rgba(17,24,39,.06); border-radius:999px; }
.lang-btn { min-width:34px; height:30px; border:0; border-radius:999px; background:transparent; color:#6b7280; font-weight:800; font-size:11px; cursor:pointer; transition:.25s ease; }
.lang-btn.active { background:var(--uraf-dark); color:#fff; box-shadow:0 5px 12px rgba(8,17,31,.16); }
.desktop-language { display:none; align-self:center; margin-left:8px; }
@media (min-width:1024px) { .desktop-language { display:flex; } .brand-wrap + .flex .language-switch { display:none; } }

/* hero */
.hero-stage { min-height:760px; display:flex; align-items:center; }
.hero-container { z-index:3; }
.hero-grid-lines { position:absolute; inset:0; opacity:.3; background-image:linear-gradient(rgba(8,17,31,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(8,17,31,.035) 1px,transparent 1px); background-size:44px 44px; mask-image:linear-gradient(to bottom,black,transparent 90%); }
.hero-orb { position:absolute; border-radius:999px; filter:blur(4px); opacity:.65; animation:orbFloat 10s ease-in-out infinite; }
.hero-orb-one { width:330px; height:330px; left:-120px; top:90px; background:radial-gradient(circle at 30% 30%,rgba(104,225,253,.5),rgba(104,225,253,.03) 70%); }
.hero-orb-two { width:390px; height:390px; right:-150px; bottom:-40px; background:radial-gradient(circle at 50% 50%,rgba(139,92,246,.15),rgba(139,92,246,0) 70%); animation-delay:-4s; }
@keyframes orbFloat { 0%,100%{transform:translate3d(0,0,0)} 50%{transform:translate3d(24px,-28px,0)} }
.hero-art-wrap { position:relative; transform-style:preserve-3d; will-change:transform; transition:transform .14s ease-out; }
.hero-art { position:relative; z-index:3; filter:drop-shadow(0 26px 40px rgba(8,17,31,.12)); animation:heroFloat 5.5s ease-in-out infinite; }
@keyframes heroFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-14px)} }
.hero-art-ring { position:absolute; border-radius:999px; border:1px solid rgba(104,225,253,.45); z-index:1; animation:ringPulse 4s ease-in-out infinite; }
.ring-one { width:78%; height:78%; left:11%; top:11%; }
.ring-two { width:92%; height:92%; left:4%; top:4%; animation-delay:-2s; }
@keyframes ringPulse { 0%,100%{transform:scale(.98);opacity:.25} 50%{transform:scale(1.05);opacity:.75} }
.floating-chip { position:absolute; z-index:6; display:flex; align-items:center; gap:8px; padding:9px 13px; border-radius:999px; background:rgba(255,255,255,.86); backdrop-filter:blur(12px); box-shadow:0 14px 35px rgba(8,17,31,.12); border:1px solid rgba(255,255,255,.8); color:var(--uraf-dark); font-size:12px; animation:chipFloat 4s ease-in-out infinite; }
.floating-chip span { width:8px;height:8px;border-radius:50%;background:var(--uraf-primary-strong);box-shadow:0 0 0 5px rgba(104,225,253,.16); }
.chip-one { left:2%; top:17%; }
.chip-two { right:3%; top:28%; animation-delay:-1.2s; }
.chip-three { right:15%; bottom:8%; animation-delay:-2.1s; }
@keyframes chipFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-9px)} }
.hero-eyebrow { display:inline-flex; align-items:center; gap:10px; padding:7px 11px; border:1px solid rgba(8,17,31,.08); border-radius:999px; background:rgba(255,255,255,.75); color:#4b5563; font-size:12px; font-weight:700; margin-bottom:20px; }
.live-dot { width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 0 rgba(34,197,94,.35); animation:livePulse 2s infinite; }
@keyframes livePulse { 70%{box-shadow:0 0 0 8px rgba(34,197,94,0)} 100%{box-shadow:0 0 0 0 rgba(34,197,94,0)} }
.hero-title { font-size:clamp(2.65rem,5vw,4.65rem)!important; line-height:1.02!important; letter-spacing:-.045em; }
.typed-line { min-height:34px; margin:-2px 0 18px; color:#475569; font-size:18px; }
.typed-line strong { color:var(--uraf-dark); position:relative; }
.typed-line strong:after { content:""; position:absolute; left:0; right:0; bottom:-4px; height:5px; background:var(--uraf-primary); opacity:.65; z-index:-1; transform:skewX(-10deg); }
.hero-tagline { margin-bottom:10px; }
.hero-summary { color:#6b7280; line-height:1.8; max-width:610px; margin:0 auto; }
@media (min-width:1024px) { .hero-summary { margin-left:0; } }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:28px; }
@media (min-width:1024px) { .hero-actions { justify-content:flex-start; } }
.uraf-btn { min-height:50px; padding:0 22px; display:inline-flex; align-items:center; justify-content:center; gap:9px; font-weight:800; font-size:13px; border-radius:4px; position:relative; overflow:hidden; transition:transform .25s ease, box-shadow .25s ease, background .25s ease; }
.uraf-btn:before { content:""; position:absolute; width:90px;height:180%; left:-130px; top:-40%; transform:rotate(22deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent); transition:left .55s ease; }
.uraf-btn:hover:before { left:115%; }
.uraf-btn-light { color:var(--uraf-dark); background:#fff; border-bottom:1px solid #e5e7eb; box-shadow:0 12px 30px rgba(8,17,31,.08); }
.uraf-btn-dark { color:#fff; background:var(--uraf-dark); border-bottom:1px solid #000; box-shadow:0 14px 32px rgba(8,17,31,.17); }
.uraf-btn-dark:hover { color:#fff; box-shadow:0 18px 38px rgba(8,17,31,.24); }
.hero-trust-row { display:flex; gap:26px; justify-content:center; margin-top:32px; padding-top:24px; border-top:1px solid rgba(8,17,31,.08); }
@media (min-width:1024px) { .hero-trust-row { justify-content:flex-start; } }
.hero-trust-row span { display:flex; flex-direction:column; align-items:flex-start; }
.hero-trust-row b { color:var(--uraf-dark); font-size:14px; }
.hero-trust-row small { color:#9ca3af; font-size:10px; margin-top:3px; text-transform:uppercase; letter-spacing:.08em; }
.scroll-cue { position:absolute; bottom:18px; left:50%; width:26px; height:42px; border:1px solid rgba(8,17,31,.18); border-radius:999px; z-index:5; }
.scroll-cue span { position:absolute; width:4px;height:8px;border-radius:999px;background:var(--uraf-dark);left:50%;top:8px;transform:translateX(-50%);animation:scrollCue 1.8s infinite; }
@keyframes scrollCue { 0%{opacity:0;transform:translate(-50%,0)} 35%{opacity:1} 100%{opacity:0;transform:translate(-50%,15px)} }

/* marquee */
.audience-strip { background:var(--uraf-dark); color:#fff; overflow:hidden; border-top:1px solid rgba(255,255,255,.06); }
.marquee-track { overflow:hidden; }
.marquee-content { width:max-content; display:flex; align-items:center; gap:30px; padding:15px 0; animation:marquee 24s linear infinite; }
.marquee-content span { font-family:"Roboto Slab",serif; font-weight:700; color:#f8fafc; font-size:14px; letter-spacing:.03em; }
.marquee-content i { color:var(--uraf-primary); font-style:normal; }
@keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* shared section */
.section-label { display:inline-block; margin-bottom:10px; color:#64748b; font-size:11px; font-weight:800; letter-spacing:.16em; }
.tailone-divider { position:relative; width:100px; height:30px; margin:0 auto 8px; }
.tailone-divider:before, .tailone-divider:after { content:""; position:absolute; top:14px; width:44px; height:2px; background:var(--uraf-primary-strong); }
.tailone-divider:before { left:0; } .tailone-divider:after { right:0; }
.tailone-divider span { position:absolute; left:46px; top:10px; width:10px; height:10px; border:2px solid var(--uraf-primary-strong); border-radius:50%; }
.tailone-divider.light:before,.tailone-divider.light:after{background:var(--uraf-primary)}
.tailone-divider.light span{border-color:var(--uraf-primary)}

/* about */
.about-panel { min-height:330px; padding:42px; position:relative; overflow:hidden; border-bottom:1px solid rgba(8,17,31,.09); transform-style:preserve-3d; transition:box-shadow .35s ease; }
.about-panel h3 { font-size:27px; margin:55px 0 16px; position:relative; z-index:2; }
.about-panel p { line-height:1.85; position:relative; z-index:2; }
.panel-dark { background:var(--uraf-dark); color:#cbd5e1; box-shadow:0 22px 45px rgba(8,17,31,.14); }
.panel-dark h3 { color:#fff; }
.panel-light { background:#f8fafc; color:#64748b; }
.panel-light h3 { color:var(--uraf-dark); }
.panel-number { position:absolute; top:28px; left:42px; font-size:11px; font-weight:800; letter-spacing:.12em; color:var(--uraf-primary-strong); }
.panel-orbit { position:absolute; width:220px;height:220px;border-radius:50%;border:1px solid rgba(104,225,253,.17);right:-80px;bottom:-100px;box-shadow:0 0 0 35px rgba(104,225,253,.035),0 0 0 70px rgba(104,225,253,.02); }
.focus-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:26px; position:relative; z-index:2; }
.focus-tags span { padding:7px 11px; border-radius:999px; background:#fff; color:#334155; font-size:11px; font-weight:800; border:1px solid rgba(8,17,31,.07); }

/* services */
.service-stage { overflow:hidden; }
.service-card-wow { min-height:390px; position:relative; padding:36px 30px 32px; margin-bottom:28px; background:#fff; border:1px solid rgba(8,17,31,.06); border-bottom:1px solid #e5e7eb; text-align:left; overflow:hidden; transform-style:preserve-3d; transition:box-shadow .35s ease,border-color .35s ease; }
.service-card-wow:before { content:""; position:absolute; inset:0; background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(104,225,253,.14),transparent 34%); opacity:0; transition:opacity .3s ease; }
.service-card-wow:hover:before { opacity:1; }
.service-card-wow:hover { border-color:rgba(104,225,253,.35); box-shadow:0 26px 60px rgba(8,17,31,.11); }
.service-icon-wrap { width:66px;height:66px;display:grid;place-items:center;background:#f1f5f9;color:var(--uraf-dark);position:relative;z-index:2;transition:.35s ease; }
.service-card-wow:hover .service-icon-wrap { background:var(--uraf-dark); color:var(--uraf-primary); transform:rotate(-5deg) scale(1.03); }
.service-index { position:absolute; right:26px; top:27px; color:#cbd5e1; font:700 13px/1 "Roboto Slab",serif; }
.service-card-wow h3 { color:var(--uraf-dark); font-size:20px; line-height:1.35; margin:30px 0 14px; position:relative; z-index:2; }
.service-card-wow p { color:#64748b; line-height:1.8; position:relative; z-index:2; }
.card-line { position:absolute; left:0; bottom:0; width:0; height:3px; background:linear-gradient(90deg,var(--uraf-primary),#8b5cf6); transition:width .45s ease; }
.service-card-wow:hover .card-line { width:100%; }
.featured-service { background:linear-gradient(160deg,#fff,#f4fdff); }
.service-badge { position:absolute; right:24px; bottom:24px; font-size:9px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; color:#0f7890; background:rgba(104,225,253,.18); padding:6px 8px; border-radius:999px; }

/* mission */
.mission-glow { position:absolute; width:480px;height:480px;border-radius:50%;right:-180px;top:-180px;background:radial-gradient(circle,rgba(104,225,253,.12),transparent 70%); }
.mission-heading { color:var(--uraf-dark); font-size:clamp(2rem,4vw,3.2rem); line-height:1.08; letter-spacing:-.035em; margin:9px 0 20px; }
.mission-lead { color:#64748b; line-height:1.8; max-width:430px; }
.text-link-wow { display:inline-flex; align-items:center; gap:10px; color:var(--uraf-dark); font-weight:800; margin-top:28px; padding-bottom:4px; border-bottom:2px solid var(--uraf-primary-strong); }
.text-link-wow b { transition:transform .25s ease; }
.text-link-wow:hover b { transform:translate(3px,-3px); }
.mission-list { border-top:1px solid #e5e7eb; }
.mission-item { display:grid; grid-template-columns:58px 1fr; gap:14px; padding:20px 0; border-bottom:1px solid #e5e7eb; align-items:start; transition:padding-left .25s ease,background .25s ease; }
.mission-item:hover { padding-left:10px; background:linear-gradient(90deg,rgba(104,225,253,.07),transparent); }
.mission-item span { color:var(--uraf-primary-strong); font:700 12px/1.6 "Roboto Slab",serif; }
.mission-item p { color:#475569; line-height:1.65; margin:0; }

/* contact */
.contact-stage { background:linear-gradient(145deg,#08111f 0%,#0c1728 60%,#10223a 100%); color:#fff; }
.contact-stage:before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px); background-size:48px 48px; mask-image:linear-gradient(to bottom,transparent,black 30%,black); }
.contact-orb { position:absolute; width:560px;height:560px;border-radius:50%;left:-260px;bottom:-320px;background:radial-gradient(circle,rgba(104,225,253,.18),transparent 67%); }
.section-label-light { color:#93c5d0; }
.contact-intro { color:#94a3b8; line-height:1.8; font-size:18px; max-width:700px; margin:0 auto; }
.contact-info-card { min-height:100%; padding:36px; border:1px solid rgba(255,255,255,.09); background:rgba(255,255,255,.035); backdrop-filter:blur(12px); }
.contact-info-mark { width:62px;height:62px;display:grid;place-items:center;background:var(--uraf-primary);color:var(--uraf-dark);font:700 31px/1 "Roboto Slab",serif;margin-bottom:34px;box-shadow:0 15px 35px rgba(104,225,253,.14); }
.contact-info-card h3 { color:#fff; font-size:24px; margin-bottom:5px; }
.contact-info-card p { color:#94a3b8; margin-bottom:22px; }
.contact-info-card a { color:var(--uraf-primary); font-weight:700; word-break:break-word; }
.contact-location { display:flex;align-items:center;gap:10px;margin:30px 0 20px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);color:#e2e8f0; }
.contact-location span { color:var(--uraf-primary); }
.contact-mini-copy { color:#64748b; font-size:12px; line-height:1.7; }
.contact-form-shell { background:#fff; padding:36px; box-shadow:0 28px 70px rgba(0,0,0,.22); }
.contact-form-shell label { display:block; color:#334155; font-size:11px; font-weight:800; letter-spacing:.06em; margin-bottom:8px; text-transform:uppercase; }
.contact-form-shell input,.contact-form-shell textarea { width:100%; border:1px solid #e5e7eb; border-bottom:2px solid #d9e1e8; background:#f8fafc; color:var(--uraf-dark); padding:13px 14px; outline:none; transition:border .25s ease,box-shadow .25s ease,background .25s ease; }
.contact-form-shell input:focus,.contact-form-shell textarea:focus { border-color:var(--uraf-primary-strong); background:#fff; box-shadow:0 0 0 4px rgba(104,225,253,.12); }
.submit-wow { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:10px; border:0; background:var(--uraf-dark); color:#fff; padding:0 26px; font-weight:800; cursor:pointer; box-shadow:0 14px 30px rgba(8,17,31,.2); transition:transform .25s ease,box-shadow .25s ease; }
.submit-wow:hover { box-shadow:0 18px 40px rgba(8,17,31,.3); }
.submit-wow[disabled] { opacity:.65; cursor:not-allowed; }
.form-alert { display:none; margin-bottom:18px; padding:12px 14px; font-size:13px; border-left:3px solid var(--uraf-primary-strong); background:#eefbfd; color:#164e63; }
.form-alert.show { display:block; }
.form-alert.error { background:#fff1f2; border-color:#fb7185; color:#9f1239; }
.hp-field { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }

/* footer */
.uraf-footer .footer-links a { display:inline-block; margin:6px 0 6px 24px; color:#64748b; font-weight:700; font-size:13px; }
.uraf-footer .footer-links a:hover { color:var(--uraf-dark); }
.uraf-footer .footer-dark { background:var(--uraf-dark); color:#94a3b8; }
.back-top { z-index:45; transition:transform .25s ease,background .25s ease; }
.back-top:hover { transform:translateY(-4px); background:#fff; }

/* tilt/magnetic helpers */
.tilt-card { will-change:transform; transition:transform .18s ease-out,box-shadow .35s ease,border-color .35s ease; }
.magnetic { will-change:transform; transition:transform .15s ease-out,box-shadow .25s ease,background .25s ease; }

/* responsive */
@media (max-width:1023px) {
  .hero-stage { min-height:auto; padding-top:112px!important; }
  .hero-copy { max-width:720px; margin-left:auto; margin-right:auto; }
  .hero-art-wrap { max-width:570px; margin:0 auto; }
  .nav-right-wrap { display:block; }
  .navbar { box-shadow:0 20px 30px rgba(8,17,31,.07); }
}
@media (max-width:767px) {
  .hero-stage { padding-bottom:72px!important; }
  .hero-title { font-size:2.65rem!important; }
  .hero-trust-row { gap:16px; justify-content:space-between; }
  .floating-chip { transform:scale(.9); }
  .about-panel { min-height:290px; padding:32px 28px; }
  .panel-number { left:28px; }
  .contact-form-shell,.contact-info-card { padding:28px 22px; }
  .scroll-cue { display:none; }
  .uraf-footer .footer-links a { margin-left:0; margin-right:20px; }
  .pointer-glow { display:none; }
}
@media (max-width:480px) {
  .brand-word { font-size:18px; }
  .brand-mark { width:38px;height:38px; }
  .hero-title { font-size:2.35rem!important; }
  .hero-actions .uraf-btn { width:100%; }
  .hero-trust-row small { font-size:8px; }
  .floating-chip { display:none; }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  .pointer-glow { display:none; }
  .hero-art-wrap,.tilt-card,.magnetic { transform:none!important; }
}


/* refinement update: cleaner header and remove audience strip */
.audience-strip { display:none !important; }
.uraf-header .main-nav { background: rgba(255,255,255,.96); border-bottom: 1px solid rgba(17,24,39,.05); }
.brand-wrap { min-height: 64px; }
.uraf-header .navbar > li > a { padding-top: 1.35rem !important; padding-bottom: 1.35rem !important; color:#64748b; }
.uraf-header .navbar > li > a:hover, .uraf-header .navbar > li > a.active { color: var(--uraf-dark); }
.hero-stage { min-height: 700px; padding-top: 7.5rem !important; }
.hero-actions { margin-top: 24px; }
.hero-trust-row { margin-top: 26px; padding-top: 20px; }
.scroll-cue { display:none; }
@media (max-width:1023px) {
  .brand-wrap { min-height: 60px; }
  .hero-stage { padding-top: 6.6rem !important; }
}


/* =========================================================
   URAF PREMIUM REFINEMENT
   Restrained motion, cleaner hierarchy, SaaS-grade polish
   ========================================================= */
:root {
  --uraf-primary: #60d9f5;
  --uraf-primary-strong: #18b9df;
  --uraf-dark: #0b1626;
  --uraf-dark-soft: #132137;
  --uraf-text: #172033;
  --uraf-muted: #667085;
  --uraf-surface: #f7f9fc;
  --uraf-line: rgba(15, 23, 42, .075);
}

body.uraf-site { color: var(--uraf-text); background:#fff; }
.pointer-glow, .hero-orb, .hero-art-ring, .floating-chip, .live-dot { display:none !important; }

/* navigation */
.uraf-header .main-nav {
  background:rgba(255,255,255,.94);
  border-bottom:1px solid rgba(15,23,42,.055);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow:none;
}
.uraf-header .main-nav.is-scrolled {
  background:rgba(255,255,255,.975);
  box-shadow:0 10px 36px rgba(15,23,42,.055);
}
.brand-wrap { min-height:68px; gap:11px; }
.brand-mark {
  width:40px; height:40px; border-radius:12px;
  box-shadow:none;
  transition:background .2s ease, color .2s ease;
}
.brand-wrap:hover .brand-mark { transform:none; box-shadow:none; background:#122033; }
.brand-word { font-size:21px; letter-spacing:-.025em; }
.uraf-header .navbar > li > a {
  padding:1.48rem 1.05rem !important;
  font-size:13px; font-weight:700; color:#667085;
  border-bottom:0 !important; position:relative;
}
.uraf-header .navbar > li > a:after {
  content:""; position:absolute; left:1.05rem; right:1.05rem; bottom:16px;
  height:2px; border-radius:999px; background:var(--uraf-primary-strong);
  transform:scaleX(0); transform-origin:center; transition:transform .2s ease;
}
.uraf-header .navbar > li > a:hover:after,
.uraf-header .navbar > li > a.active:after { transform:scaleX(1); }
.language-switch { background:#f3f5f8; border:1px solid #e9edf2; }
.lang-btn { transition:background .2s ease,color .2s ease; }
.lang-btn.active { box-shadow:none; }

/* hero */
.hero-stage {
  min-height:720px;
  padding-top:8rem !important;
  padding-bottom:5.5rem !important;
  background:
    radial-gradient(circle at 12% 22%, rgba(96,217,245,.10), transparent 28%),
    linear-gradient(180deg,#fbfcfe 0%,#f7f9fc 100%) !important;
}
.hero-grid-lines { opacity:.17; background-size:52px 52px; }
.hero-art-wrap {
  max-width:520px; margin:0 auto;
  transform:none !important;
  transition:none !important;
}
.hero-art {
  animation:none !important;
  filter:drop-shadow(0 30px 50px rgba(15,23,42,.10));
}
.hero-copy { max-width:590px; }
.hero-eyebrow {
  border:1px solid #e6ebf1;
  background:#fff;
  color:#5f6b7a;
  font-size:11px; font-weight:700; letter-spacing:.055em; text-transform:uppercase;
  padding:8px 12px; margin-bottom:22px; box-shadow:0 6px 18px rgba(15,23,42,.035);
}
.hero-title {
  font-size:clamp(3rem,5vw,4.75rem)!important;
  line-height:1.015!important;
  letter-spacing:-.052em;
  margin-bottom:16px !important;
}
.hero-audience {
  color:#334155; font-size:14px; font-weight:650; line-height:1.6;
  margin:-3px 0 18px;
}
.hero-audience span {
  display:inline-block; padding-bottom:6px; border-bottom:2px solid rgba(24,185,223,.36);
}
.hero-tagline { color:#475467 !important; font-size:19px !important; margin-bottom:11px; }
.hero-summary { color:#667085; line-height:1.78; font-size:15px; max-width:560px; }
.uraf-btn {
  min-height:52px; padding:0 21px; border-radius:12px;
  font-size:13px; letter-spacing:-.005em;
  box-shadow:none; transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.uraf-btn:before { display:none; }
.uraf-btn-light { border:1px solid #e4e8ee; background:#fff; }
.uraf-btn-light:hover { transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,23,42,.07); }
.uraf-btn-dark { background:var(--uraf-dark); box-shadow:0 10px 24px rgba(11,22,38,.13); border:0; }
.uraf-btn-dark:hover { transform:translateY(-2px); box-shadow:0 16px 32px rgba(11,22,38,.18); }
.hero-trust-row { gap:30px; margin-top:30px; padding-top:22px; }
.hero-trust-row b { font-size:14px; letter-spacing:-.015em; }
.hero-trust-row small { font-size:9px; letter-spacing:.10em; }

/* shared section polish */
.section-label {
  font-size:10px; letter-spacing:.16em; font-weight:800; color:#198ba5;
}
.tailone-divider { width:84px; margin-top:12px; margin-bottom:22px; }
.tailone-divider:before,.tailone-divider:after { width:31px; height:1px; }
.tailone-divider span { left:38px; width:8px; height:8px; top:11px; border-width:1px; }
#about, #services, .mission-section { padding-top:6.5rem !important; padding-bottom:6.5rem !important; }

/* about */
.about-panel {
  min-height:310px; padding:38px; border:1px solid var(--uraf-line);
  border-radius:20px; box-shadow:none; transform:none !important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.about-panel:hover { transform:translateY(-4px) !important; box-shadow:0 20px 46px rgba(15,23,42,.075); }
.panel-dark { border-color:transparent; background:linear-gradient(145deg,#0b1626,#122238); box-shadow:0 20px 48px rgba(11,22,38,.13); }
.panel-light { background:#f8fafc; }
.about-panel h3 { margin-top:50px; font-size:25px; letter-spacing:-.025em; }
.panel-number { top:29px; left:38px; }
.panel-orbit { opacity:.52; }
.focus-tags span { background:#fff; border-color:#e8ecf1; }

/* services */
.service-stage { background:#f8fafc !important; }
.service-card-wow {
  min-height:360px; padding:34px 29px 30px; border:1px solid #e9edf2;
  border-radius:18px; box-shadow:none; transform:none !important;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.service-card-wow:before { display:none; }
.service-card-wow:hover { transform:translateY(-5px) !important; border-color:#dce5eb; box-shadow:0 20px 46px rgba(15,23,42,.075); }
.service-icon-wrap { width:58px; height:58px; border-radius:14px; background:#eff4f7; }
.service-card-wow:hover .service-icon-wrap { transform:none; background:#e7f8fc; color:#10758d; }
.service-card-wow h3 { font-size:19px; margin-top:27px; }
.service-card-wow p { color:#667085; line-height:1.76; font-size:14px; }
.card-line { display:none; }
.featured-service { background:#fff; }
.service-badge { right:22px; bottom:22px; background:#e8f8fb; color:#10758d; }

/* mission */
.mission-glow { display:none; }
.mission-heading { font-size:clamp(2rem,3.6vw,3.05rem); }
.mission-item { padding:22px 0; transition:padding-left .18s ease, background .18s ease; }
.mission-item:hover { padding-left:7px; background:linear-gradient(90deg,rgba(96,217,245,.055),transparent); }
.text-link-wow { border-bottom:1px solid var(--uraf-primary-strong); transition:color .18s ease; }
.text-link-wow:hover b { transform:none; }

/* contact */
.contact-stage {
  background:linear-gradient(145deg,#0a1422 0%,#0e1b2e 100%);
  padding-top:6.5rem !important; padding-bottom:6.5rem !important;
}
.contact-stage:before { opacity:.45; background-size:56px 56px; }
.contact-orb { display:none; }
.contact-info-card { border-radius:18px; background:rgba(255,255,255,.045); backdrop-filter:none; }
.contact-info-mark { width:56px; height:56px; border-radius:14px; box-shadow:none; }
.contact-form-shell { border-radius:18px; padding:34px; box-shadow:0 24px 64px rgba(0,0,0,.20); }
.contact-form-shell input,.contact-form-shell textarea { border-radius:10px; background:#fbfcfd; border:1px solid #e5e9ee; padding:13px 14px; }
.contact-form-shell input:focus,.contact-form-shell textarea:focus { box-shadow:0 0 0 3px rgba(96,217,245,.14); }
.submit-wow { min-height:52px; border-radius:11px; box-shadow:none; transition:transform .18s ease,box-shadow .18s ease; }
.submit-wow:hover { transform:translateY(-2px); box-shadow:0 14px 28px rgba(11,22,38,.18); }

/* footer */
.uraf-footer { border-top:1px solid #eef1f4; }
.uraf-footer .footer-links a { transition:color .18s ease; }
.back-top { border-radius:12px !important; box-shadow:0 8px 22px rgba(15,23,42,.08); }

/* remove gimmick movement helpers while preserving tasteful CSS hover states */
.tilt-card, .magnetic { will-change:auto; transform:none !important; }

@media (max-width:1023px) {
  .hero-stage { min-height:auto; padding-top:7rem !important; }
  .hero-copy { max-width:680px; margin-left:auto; margin-right:auto; }
  .hero-art-wrap { max-width:500px; }
  .navbar { border-top:1px solid #eef1f4; box-shadow:0 18px 30px rgba(15,23,42,.055); }
}
@media (max-width:767px) {
  .hero-stage { padding-top:6.4rem !important; padding-bottom:4.5rem !important; }
  .hero-title { font-size:2.75rem!important; }
  #about, #services, .mission-section, .contact-stage { padding-top:4.8rem !important; padding-bottom:4.8rem !important; }
  .about-panel, .service-card-wow, .contact-form-shell, .contact-info-card { border-radius:16px; }
}
@media (max-width:480px) {
  .hero-title { font-size:2.4rem!important; }
  .hero-trust-row { gap:12px; }
  .brand-word { font-size:17px; }
}

/* final premium motion tuning */
.scroll-progress { height:2px; }
.scroll-progress span { background:var(--uraf-primary-strong); box-shadow:none; }
.preloader-mark { animation:none !important; box-shadow:none; border-radius:16px; }
.preloader-line { height:2px; background:#edf0f3; }
.preloader-line span { background:var(--uraf-primary-strong); animation-duration:1.35s; }


/* hide extra footer descriptive line requested by user */
.uraf-footer [data-i18n="footer.copy"] { display:none !important; }


/* remove upper footer block per latest revision */
#footer-content { display:none !important; }
.uraf-footer { background: transparent; }
.uraf-footer .footer-dark { margin-top: 0; }


/* ===== v4: dark mode + super minimal footer + device refinement ===== */
body.uraf-site {
  --page-bg: #ffffff;
  --surface: #ffffff;
  --surface-soft: #f8fafc;
  --surface-soft-2: #f2f6fa;
  --text-main: #0f172a;
  --text-muted: #667085;
  --line-soft: #e7edf3;
  --header-bg-custom: rgba(255,255,255,.94);
  --header-bg-scrolled: rgba(255,255,255,.92);
  --footer-minimal-bg: transparent;
  background: var(--page-bg);
  color: var(--text-main);
}
body.theme-dark {
  --page-bg: #0b1220;
  --surface: #111a2b;
  --surface-soft: #0f1726;
  --surface-soft-2: #162235;
  --text-main: #e5eef9;
  --text-muted: #9fb0c7;
  --line-soft: rgba(159,176,199,.18);
  --header-bg-custom: rgba(11,18,32,.9);
  --header-bg-scrolled: rgba(11,18,32,.94);
  --footer-minimal-bg: #0b1220;
}
body.uraf-site,
body.uraf-site .text-black,
body.uraf-site .text-gray-700 { color: var(--text-main); }
body.uraf-site .text-gray-500 { color: var(--text-muted); }
.uraf-header .main-nav { background: var(--header-bg-custom); }
.uraf-header .main-nav.is-scrolled { background: var(--header-bg-scrolled); }
body.theme-dark .uraf-header .main-nav { border-bottom-color: rgba(159,176,199,.10); box-shadow: none; }
body.theme-dark .brand-word, body.theme-dark .footer-brand, body.theme-dark .hero-title, body.theme-dark h2, body.theme-dark h3, body.theme-dark .mission-heading { color: #f8fbff !important; }
body.theme-dark .brand-mark { background: #08111f; color: var(--uraf-primary); box-shadow: 0 12px 28px rgba(0,0,0,.28); }
body.theme-dark .uraf-header .navbar > li > a, body.theme-dark .menu-mobile { color: #c2d2e6 !important; }
body.theme-dark .uraf-header .navbar > li > a:hover, body.theme-dark .uraf-header .navbar > li > a.active { color: #ffffff !important; }
body.theme-dark .language-switch { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.08); }
body.theme-dark .lang-btn { color: #b9c8db; }
body.theme-dark .lang-btn.active { background: #e8f7fb; color: #0b1220; box-shadow: none; }
.theme-toggle {
  width: 38px; height: 38px; border-radius: 999px; border: 1px solid rgba(17,24,39,.08);
  background: #f6f8fb; color: #0f172a; display: inline-flex; align-items: center; justify-content: center;
  position: relative; transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}
.theme-toggle:hover { transform: translateY(-1px); }
.theme-toggle .theme-icon { position: absolute; line-height: 1; font-size: 15px; transition: opacity .2s ease, transform .2s ease; }
.theme-toggle .theme-icon-sun { opacity: 0; transform: scale(.8); }
.theme-toggle .theme-icon-moon { opacity: 1; transform: scale(1); }
.theme-toggle.is-dark .theme-icon-sun { opacity: 1; transform: scale(1); }
.theme-toggle.is-dark .theme-icon-moon { opacity: 0; transform: scale(.8); }
body.theme-dark .theme-toggle { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.08); color: #f8fbff; }
.hero-stage, #about, .mission-section { background: var(--page-bg) !important; }
#services { background: var(--surface-soft) !important; }
body.theme-dark .hero-grid-lines { opacity: .14; background-image: linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); }
body.theme-dark .hero-eyebrow { background: rgba(255,255,255,.03); border-color: rgba(255,255,255,.08); color: #c2d2e6; }
body.theme-dark .hero-summary, body.theme-dark .hero-tagline, body.theme-dark .contact-intro, body.theme-dark .mission-lead, body.theme-dark .about-panel p, body.theme-dark .service-card-wow p, body.theme-dark .mission-item p { color: var(--text-muted) !important; }
body.theme-dark .hero-audience { color: #d7e3f0; }
body.theme-dark .hero-trust-row { border-top-color: rgba(159,176,199,.15); }
body.theme-dark .hero-trust-row b { color: #ffffff; }
body.theme-dark .hero-trust-row small { color: #98a9bf; }
body.theme-dark .uraf-btn-light { background: #142033; color: #f8fbff; border-bottom-color: transparent; box-shadow: none; }
body.theme-dark .uraf-btn-dark { background: #e8f7fb; color: #08111f; border-bottom-color: transparent; box-shadow: none; }
body.theme-dark .uraf-btn-dark:hover { color: #08111f; }
body.theme-dark .section-label { color: #7ddcf3; }
body.theme-dark .tailone-divider:before, body.theme-dark .tailone-divider:after { background: rgba(125,220,243,.32); }
body.theme-dark .about-panel { border-color: rgba(159,176,199,.15); box-shadow: none; }
body.theme-dark .panel-dark { background: #08111f; color: #c8d6e6; }
body.theme-dark .panel-light { background: var(--surface); color: var(--text-muted); }
body.theme-dark .focus-tags span { background: rgba(255,255,255,.04); color: #dce7f3; border-color: rgba(255,255,255,.08); }
body.theme-dark .service-card-wow { background: var(--surface); border-color: rgba(159,176,199,.14); box-shadow: none; }
body.theme-dark .service-card-wow:hover { border-color: rgba(125,220,243,.28); box-shadow: 0 18px 40px rgba(0,0,0,.22); }
body.theme-dark .service-icon-wrap { background: rgba(255,255,255,.06); color: #f8fbff; }
body.theme-dark .service-card-wow:hover .service-icon-wrap { background: rgba(125,220,243,.14); color: #7ddcf3; }
body.theme-dark .service-index { color: #59708f; }
body.theme-dark .service-badge { background: rgba(125,220,243,.12); color: #7ddcf3; }
body.theme-dark .mission-list { border-top-color: rgba(159,176,199,.15); }
body.theme-dark .mission-item { border-bottom-color: rgba(159,176,199,.15); }
body.theme-dark .mission-item:hover { background: linear-gradient(90deg,rgba(125,220,243,.08),transparent); }
body.theme-dark .text-link-wow { color: #f8fbff; border-bottom-color: rgba(125,220,243,.85); }
body.theme-dark .contact-stage { background: linear-gradient(145deg,#08111f 0%,#0c1729 100%); }
body.theme-dark .contact-info-card { background: rgba(255,255,255,.03); border-color: rgba(255,255,255,.08); }
body.theme-dark .contact-info-card p, body.theme-dark .contact-location { color: #d6e1ee; }
body.theme-dark .contact-mini-copy { color: #8fa4be; }
body.theme-dark .contact-form-shell { background: var(--surface); box-shadow: 0 28px 64px rgba(0,0,0,.28); }
body.theme-dark .contact-form-shell label { color: #dce7f3; }
body.theme-dark .contact-form-shell input, body.theme-dark .contact-form-shell textarea { background: var(--surface-soft-2); border-color: rgba(159,176,199,.16); color: #f8fbff; }
body.theme-dark .contact-form-shell input::placeholder, body.theme-dark .contact-form-shell textarea::placeholder { color: #8ea1b9; }
body.theme-dark .contact-form-shell input:focus, body.theme-dark .contact-form-shell textarea:focus { background: #172539; box-shadow: 0 0 0 3px rgba(125,220,243,.15); }
body.theme-dark .submit-wow { background: #e8f7fb; color: #08111f; }
body.theme-dark .submit-wow:hover { box-shadow: 0 14px 26px rgba(0,0,0,.20); }
.footer-minimal { background: var(--footer-minimal-bg); border-top: 1px solid var(--line-soft); }
.footer-minimal-copy { margin: 0; text-align: center; color: var(--text-muted); font-size: 13px; line-height: 1.7; }
body.theme-dark .footer-minimal-copy { color: #90a5bf; }
body.theme-dark .back-top { background: #162235; border-color: #162235; color: #e5eef9; box-shadow: none; }
body.theme-dark .back-top:hover { background: #1b2a41; }
@media (max-width: 1023px) {
  .nav-right-wrap { width: 100%; }
  .navbar { background: var(--surface) !important; border-top: 1px solid var(--line-soft); border-radius: 0 0 16px 16px; }
  body.theme-dark .navbar { background: #0f1726 !important; }
}
@media (max-width: 767px) {
  .theme-toggle { width: 36px; height: 36px; }
  .hero-copy, .hero-summary, .contact-intro { max-width: none; }
  .hero-trust-row { flex-wrap: wrap; }
  .hero-trust-row span { min-width: calc(33.333% - 10px); }
  .contact-form-shell form .flex.-mx-4 { margin-left: 0; margin-right: 0; }
  .contact-form-shell form .flex.-mx-4 > div { padding-left: 0; padding-right: 0; }
  .footer-minimal-copy { font-size: 12px; }
}
@media (max-width: 575px) {
  .main-nav .container { padding-left: 1rem; padding-right: 1rem; }
  .brand-wrap { gap: 10px; }
  .brand-word { font-size: 1.1rem; }
  .hero-title { line-height: 1.08 !important; }
  .hero-audience { font-size: 14px; }
  .hero-actions { gap: 10px; }
  .contact-form-shell, .contact-info-card { padding: 24px 18px; }
}
@media (max-width: 390px) {
  .lang-btn { min-width: 30px; height: 28px; font-size: 10px; }
  .theme-toggle { width: 34px; height: 34px; }
  .brand-word { font-size: 1rem; }
}


/* ===== v5: header controls alignment fix ===== */
.nav-right-wrap {
  align-items: center;
}
.language-switch {
  height: 38px;
  align-items: center;
  flex-shrink: 0;
}
.lang-btn {
  height: 30px;
  line-height: 30px;
  padding: 0 10px;
}
.theme-toggle {
  flex: 0 0 38px;
  align-self: center;
  margin: 0;
  padding: 0;
}
.desktop-language {
  align-self: center;
  margin-left: 10px;
  margin-right: 0;
}
.desktop-theme-toggle {
  display: none;
  align-self: center;
  margin-left: 8px;
}
@media (min-width: 1024px) {
  .desktop-theme-toggle {
    display: inline-flex;
  }
  .nav-right-wrap {
    gap: 0;
  }
}
@media (max-width: 1023px) {
  .uraf-header .flex.flex-row.items-center.py-4 {
    gap: 8px;
  }
  .uraf-header .flex.flex-row.items-center.py-4 .language-switch,
  .uraf-header .flex.flex-row.items-center.py-4 .theme-toggle,
  .uraf-header .flex.flex-row.items-center.py-4 .menu-mobile {
    margin: 0 !important;
  }
  .menu-mobile {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }
}
@media (max-width: 480px) {
  .language-switch {
    height: 36px;
  }
  .lang-btn {
    height: 28px;
    line-height: 28px;
    padding: 0 8px;
  }
  .theme-toggle {
    flex-basis: 36px;
    width: 36px;
    height: 36px;
  }
}
@media (max-width: 390px) {
  .language-switch {
    height: 34px;
  }
  .lang-btn {
    height: 26px;
    line-height: 26px;
    padding: 0 7px;
  }
  .theme-toggle {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
  }
}

/* ===== v8: single theme control + robust responsive layout ===== */
html { max-width:100%; overflow-x:hidden; }
body.uraf-site { min-width:0; max-width:100%; overflow-x:hidden; }
body.uraf-site img, body.uraf-site svg { max-width:100%; }
body.uraf-site input, body.uraf-site textarea, body.uraf-site select, body.uraf-site button { max-width:100%; }
.uraf-header .container { position:relative; }
.desktop-theme-toggle { display:none !important; }
.hero-copy, .hero-art-wrap, .about-panel, .service-card-wow, .contact-info-card, .contact-form-shell { min-width:0; }
.uraf-btn { max-width:100%; text-align:center; }

@media (max-width:1023px) {
  .uraf-header .main-nav { backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }
  .uraf-header .navbar { max-height:calc(100vh - 68px); overflow-y:auto; overscroll-behavior:contain; box-shadow:0 18px 34px rgba(15,23,42,.08); }
  body.theme-dark .uraf-header .navbar { box-shadow:0 18px 34px rgba(0,0,0,.24); }
  .uraf-header .navbar > li > a { padding:1rem 1.15rem !important; }
  .uraf-header .navbar > li > a:after { bottom:8px; }
  .hero-stage { min-height:auto !important; }
}

@media (max-width:767px) {
  .hero-stage { padding-top:7.2rem !important; padding-bottom:4rem !important; }
  .hero-title { font-size:clamp(2.35rem,11.5vw,3.35rem) !important; letter-spacing:-.045em; }
  .hero-summary { font-size:15px; line-height:1.75; }
  .hero-actions { width:100%; flex-direction:column; align-items:stretch; }
  .hero-actions .uraf-btn { width:100%; min-height:50px; }
  .hero-trust-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  .hero-trust-row span { min-width:0 !important; }
  #about, #services, .mission-section, .contact-stage { padding-top:4.2rem !important; padding-bottom:4.2rem !important; }
  .about-panel, .service-card-wow { min-height:0; }
  .mission-item { grid-template-columns:42px minmax(0,1fr); gap:10px; }
  .contact-form-shell input, .contact-form-shell textarea, .field-group input, .field-group textarea, .field-group select { font-size:16px; }
  .submit-wow { width:100%; min-height:50px; }
}

@media (max-width:479px) {
  .main-nav .container { padding-left:.75rem; padding-right:.75rem; }
  .brand-mark { width:36px; height:36px; border-radius:10px; }
  .brand-word { font-size:.95rem; }
  .uraf-header .flex.flex-row.items-center.py-4 { gap:6px; }
  .language-switch { height:34px; }
  .lang-btn { min-width:28px; padding:0 7px; font-size:10px; }
  .theme-toggle { flex-basis:34px; width:34px; height:34px; }
  .menu-mobile { padding:.45rem !important; }
  .menu-mobile svg { width:26px; height:26px; }
  .hero-stage { padding-top:6.7rem !important; }
  .hero-title { font-size:clamp(2.05rem,11.5vw,2.8rem) !important; }
  .hero-eyebrow { font-size:10px; }
  .hero-trust-row { grid-template-columns:1fr; }
  .about-panel, .service-card-wow, .contact-form-shell, .contact-info-card { padding:22px 17px; }
  .mission-heading { font-size:2rem; }
}

@media (max-width:359px) {
  .brand-word { display:none; }
  .hero-title { font-size:2rem !important; }
}


/* ===== v10: final header layout fix ===== */

.uraf-header .main-nav .container { position: relative; }
.uraf-header .header-row {
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px;
  min-height:72px;
}
.uraf-header .brand-wrap { flex:0 0 auto; }
.uraf-header .nav-right-wrap {
  min-width:0;
  flex:1 1 auto;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:12px;
}
.uraf-header .navbar {
  width:auto !important;
  min-width:0;
  flex:1 1 auto;
  justify-content:flex-end;
  margin:0;
}
.uraf-header .header-controls {
  display:flex !important;
  align-items:center !important;
  flex:0 0 auto;
  gap:8px;
  white-space:nowrap;
}
.uraf-header .header-controls .language-switch,
.uraf-header .header-controls .theme-toggle,
.uraf-header .header-controls .menu-mobile { margin:0 !important; }
.uraf-header .header-controls .language-switch {
  display:flex !important;
  align-items:center;
  padding:3px;
  height:38px;
}
.uraf-header .header-controls .lang-btn {
  min-width:34px;
  height:30px;
  padding:0 10px;
  line-height:30px;
}
.uraf-header .header-controls .theme-toggle {
  width:38px;
  height:38px;
  flex:0 0 38px;
}
.uraf-header .header-controls .menu-mobile {
  display:none;
  border:0;
  background:transparent;
  color:inherit;
  align-items:center;
  justify-content:center;
  padding:8px;
}
@media (min-width:1024px) {
  .uraf-header .navbar { display:flex !important; }
}
@media (max-width:1023px) {
  .uraf-header .header-row { min-height:68px; }
  .uraf-header .nav-right-wrap { flex:0 0 auto; width:auto !important; }
  .uraf-header .navbar {
    position:absolute;
    left:0;
    right:0;
    top:100%;
    width:100% !important;
    display:none;
    flex:none;
    z-index:20;
  }
  .uraf-header .navbar:not(.hidden) { display:block !important; }
  .uraf-header .header-controls .menu-mobile { display:inline-flex !important; }
}
@media (max-width:575px) {
  .uraf-header .header-row { gap:10px; }
  .uraf-header .header-controls { gap:6px; }
  .uraf-header .header-controls .language-switch { height:34px; }
  .uraf-header .header-controls .lang-btn { min-width:28px; height:28px; line-height:28px; padding:0 7px; font-size:10px; }
  .uraf-header .header-controls .theme-toggle { width:34px; height:34px; flex-basis:34px; }
  .uraf-header .header-controls .menu-mobile { padding:5px; }
}

/* portfolio */
.portfolio-stage {
  background: var(--page-bg) !important;
}
.portfolio-heading {
  max-width: 820px;
}
.portfolio-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.portfolio-card {
  min-width: 0;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--line-soft);
  border-radius: 22px;
  background: var(--surface);
  box-shadow: 0 14px 38px rgba(15, 23, 42, .06);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.portfolio-card:hover {
  transform: translateY(-5px);
  border-color: rgba(24, 185, 223, .30);
  box-shadow: 0 24px 56px rgba(15, 23, 42, .10);
}
.portfolio-image {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  margin: 0;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--surface-soft-2);
  border-bottom: 1px solid var(--line-soft);
}
.portfolio-image:after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 24%;
  pointer-events: none;
  background: linear-gradient(to top, rgba(8,17,31,.12), transparent);
}
.portfolio-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: top center;
  transition: transform .45s ease;
}
.portfolio-card:hover .portfolio-image img {
  transform: scale(1.018);
}
.portfolio-image-fallback {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: none;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 7px;
  background: linear-gradient(145deg, var(--surface-soft-2), var(--surface));
  color: var(--text-muted);
}
.portfolio-image-fallback span {
  color: var(--text-main);
  font: 800 22px/1 "Roboto Slab", serif;
  letter-spacing: .06em;
}
.portfolio-image-fallback small {
  font-size: 11px;
  font-weight: 700;
}
.portfolio-image.is-broken img {
  display: none;
}
.portfolio-image.is-broken .portfolio-image-fallback {
  display: flex;
}
.portfolio-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 26px;
}
.portfolio-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 18px;
}
.portfolio-category,
.portfolio-year {
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.25;
}
.portfolio-category {
  background: #e8f8fb;
  color: #10758d;
}
.portfolio-year {
  background: #f0f4f8;
  color: #526174;
}
.portfolio-card h3 {
  margin: 0 0 12px;
  color: var(--text-main);
  font-size: 21px;
  line-height: 1.3;
  letter-spacing: -.025em;
}
.portfolio-card p {
  margin: 0;
  color: var(--text-muted);
  line-height: 1.75;
  font-size: 14px;
}
.portfolio-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: max-content;
  margin-top: auto;
  padding-top: 24px;
  color: var(--text-main);
  font-weight: 800;
  font-size: 13px;
}
.portfolio-link span {
  padding-bottom: 3px;
  border-bottom: 1px solid var(--uraf-primary-strong);
}
.portfolio-link b {
  color: var(--uraf-primary-strong);
  font-size: 17px;
  transition: transform .2s ease;
}
.portfolio-link:hover b {
  transform: translateX(4px);
}
.portfolio-grid.is-single {
  grid-template-columns: minmax(0, 1fr);
}
.portfolio-grid.is-single .portfolio-card {
  display: grid;
  grid-template-columns: minmax(0, 1.42fr) minmax(300px, .78fr);
  min-height: 410px;
}
.portfolio-grid.is-single .portfolio-image {
  height: 100%;
  aspect-ratio: auto;
  border-right: 1px solid var(--line-soft);
  border-bottom: 0;
}
.portfolio-grid.is-single .portfolio-content {
  justify-content: center;
  padding: clamp(30px, 4vw, 52px);
}
.portfolio-grid.is-single .portfolio-card.no-image {
  grid-template-columns: minmax(0, 1fr);
  min-height: 0;
}
.portfolio-grid.is-single .portfolio-card.no-image .portfolio-content {
  min-height: 280px;
}
.portfolio-grid.is-single .portfolio-card h3 {
  font-size: clamp(24px, 2.4vw, 32px);
}
body.theme-dark .portfolio-card {
  background: var(--surface);
  border-color: rgba(159,176,199,.14);
  box-shadow: none;
}
body.theme-dark .portfolio-card:hover {
  border-color: rgba(125,220,243,.30);
  box-shadow: 0 22px 48px rgba(0,0,0,.24);
}
body.theme-dark .portfolio-category {
  background: rgba(125,220,243,.12);
  color: #7ddcf3;
}
body.theme-dark .portfolio-year {
  background: rgba(255,255,255,.07);
  color: #c9d7e8;
}
body.theme-dark .portfolio-image {
  background: #0d1728;
}
body.theme-dark .portfolio-image:after {
  background: linear-gradient(to top, rgba(3,8,16,.34), transparent);
}
body.theme-dark .portfolio-link {
  color: #f8fbff;
}
@media (max-width: 1023px) {
  .portfolio-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .portfolio-grid.is-single .portfolio-card {
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
    min-height: 360px;
  }
}
@media (max-width: 767px) {
  .portfolio-grid.is-single .portfolio-card {
    display: flex;
    min-height: 0;
  }
  .portfolio-grid.is-single .portfolio-image {
    height: auto;
    aspect-ratio: 16 / 10;
    border-right: 0;
    border-bottom: 1px solid var(--line-soft);
  }
  .portfolio-grid.is-single .portfolio-content {
    padding: 26px;
  }
}
@media (max-width: 640px) {
  .portfolio-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .portfolio-card {
    border-radius: 17px;
  }
  .portfolio-content,
  .portfolio-grid.is-single .portfolio-content {
    padding: 22px 20px;
  }
  .portfolio-grid.is-single .portfolio-card h3 {
    font-size: 23px;
  }
}
