:root {
  --night:#1a1423;
  --deep:#271e35;
  --violet:#39334a;
  --pink:#fb2968;
  --white:#fff;
  --muted:rgba(255,255,255,.8);
  --ink:#1a1423;
  --ink-muted:rgba(26,20,35,.8);
  --line:rgba(255,255,255,.2)}


* {
  box-sizing:border-box}

html {
  scroll-behavior:smooth}

body {
  margin:0;
  background:var(--night);
  color:var(--white);
  font:16px/1.58 'DM Sans',sans-serif;
  }

a {
  color:inherit;
  text-decoration:none}

img {
  max-width:100%;
  display:block}

button {
  font:inherit}

h1,h2,h3,p {
  margin:0;
  overflow-wrap:break-word}

button,a {
   -webkit-tap-highlight-color:transparent}

a:focus-visible,button:focus-visible {
  outline:3px solid var(--white);
  outline-offset:4px}

.container {
  width:min(1280px,calc(100% - 100px));
  margin-inline:auto}

.eyebrow {
  font-size:11px;
  letter-spacing:.19em;
  font-weight:800;
  text-transform:uppercase}

.display {
  font-family:'Manrope','DM Sans',sans-serif;
  font-weight:800;
  letter-spacing:-.08em;
  line-height:1.03}

.muted {
  color:var(--muted)}

.pink {
  color:var(--pink)}

.rule {
  border-top:1px solid var(--line)}

.section {
  padding:112px 0}

.smalllink {
  display:inline-flex;
  align-items:center;
  gap:12px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.015em;
  border-bottom:1px solid currentColor;
  padding-bottom:6px}

.smalllink:hover {
  color:var(--white)}


.btn {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:22px;
  padding:16px 24px;
  border:1px solid transparent;
  font-size:13px;
  font-weight:800;
  border-radius:2px;
  transition:transform .2s,background .2s}

.btn:hover {
  transform:translateY(-3px)}

.btn-pink {
  background:var(--pink);
  color:var(--night)}

.btn-pink:hover {
  background:var(--white)}

.btn-outline {
  border-color:var(--line);
  color:white;
  background:rgba(255,255,255,.02)}

.btn-outline:hover {
  background:var(--deep)}

.btn-light {
  background:var(--white);
  color:var(--ink)}



.site-nav {
  position:relative;
  z-index:20;
  background:var(--night);
  border-bottom:1px solid rgba(255,255,255,.1)}

.nav-row {
  height:91px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px}

.logo-lockup {
  display:flex;
  align-items:center;
  gap:16px;
  flex-shrink:0}

.logo-lockup .header-luminos-logo {
  width:220px;
  height:auto;
  flex-shrink:0}

.logo-lockup .header-ibly-logo {
  width:48px;
  height:auto;
  flex-shrink:0;
  background:transparent}

.logo-lockup .region {
  display:inline-flex;
  border-left:1px solid var(--line);
  padding-left:15px;
  color:var(--muted);
  font-weight:800;
  letter-spacing:.14em;
  font-size:11px}

.nav-links {
  display:flex;
  align-items:center;
  gap:30px;
  font-size:13px;
  font-weight:700}

.nav-links>a:not(.btn) {
  color:var(--muted)}

.nav-links>a:hover:not(.btn),.nav-links>a[aria-current=page] {
  color:var(--white)}

.nav-links .btn {
  padding:12px 17px;
  font-size:12px}

.mobile-toggle {
  display:none;
  border:1px solid var(--line);
  background:transparent;
  color:white;
  font-weight:700;
  padding:10px 14px;
  font-size:12px;
  cursor:pointer}



.hero {
  position:relative;
  overflow:hidden;
  background:radial-gradient(circle at 82% 37%,rgba(57,51,74,.7),transparent 39%),radial-gradient(circle at 20% 4%,rgba(39,30,53,.7),transparent 55%),linear-gradient(155deg,var(--night) 0%,var(--deep) 48%,var(--night) 100%)}

.hero:before {
  content:'';
  position:absolute;
  left:5%;
  right:5%;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--line),transparent)}

.hero-grid {
  display:grid;
  grid-template-columns:1.15fr .85fr;
  min-height:675px;
  align-items:center;
  gap:34px;
  padding-top:70px;
  padding-bottom:95px}

.hero-copy {
  position:relative;
  z-index:2}

.hero .eyebrow {
  color:var(--muted);
  display:flex;
  gap:12px;
  align-items:center}

.hero .eyebrow:before {
  content:'';
  height:7px;
  width:7px;
  background:var(--pink);
  border-radius:100%}

.hero h1 {
  font-size:clamp(58px,5.3vw,88px);
  max-width:800px;
  margin:25px 0 28px}

.hero h1 span:not(.pink) {
  color:var(--white)}

.hero-lead {
  max-width:640px;
  color:var(--muted);
  font-size:18px;
  line-height:1.68}

.hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:34px}

.hero-photo {
  position:relative;
  min-height:490px;
  display:flex;
  align-items:center;
  justify-content:center}

.hero-photo:before {
  content:'';
  position:absolute;
  width:380px;
  height:380px;
  border:1px solid var(--line);
  transform:rotate(24deg);
  border-radius:38px}

.hero-photo:after {
  content:'';
  position:absolute;
  inset:32px;
  border:1px solid var(--line);
  border-radius:52% 48% 43% 57%;
  transform:rotate(-23deg)}

.hero-photo img {
  width:min(90%,445px);
  filter:drop-shadow(0 16px 58px rgba(251,41,104,.11));
  position:relative;
  z-index:2;
  animation:floaty 7s ease-in-out infinite}

@keyframes floaty {
  50% {
  transform:translateY(-12px)}

}

.hero-float {
  position:absolute;
  bottom:12px;
  right:4%;
  z-index:4;
  border-left:2px solid var(--pink);
  background:rgba(26,20,35,.9);
  padding:13px 21px;
  font-size:11px;
  letter-spacing:.13em;
  font-weight:700;
  color:var(--muted)}

.hero-number {
  color:var(--pink);
  font-weight:800}



.mini-strip {
  background:var(--deep);
  border-block:1px solid var(--line)}

.mini-strip .container {
  display:flex;
  justify-content:space-between;
  gap:22px;
  padding:22px 0;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:11px;
  font-weight:800}

.mini-strip span::before {
  content:'✦';
  color:var(--pink);
  margin-right:16px}



.split-heading {
  display:grid;
  grid-template-columns:1fr .65fr;
  gap:70px;
  align-items:end;
  margin-bottom:45px}

.split-heading h2,.solo-heading h2 {
  font-size:clamp(46px,5.3vw,79px);
  max-width:910px;
  margin:17px 0 0}

.split-heading p,.solo-heading p {
  color:var(--muted);
  line-height:1.7;
  font-size:17px;
  max-width:460px}

.intro-section {
  background:linear-gradient(145deg,var(--deep),var(--night))}

.deliver-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px}

.deliver-card {
  border:1px solid var(--line);
  background:var(--deep);
  padding:32px;
  min-height:308px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:border-color .2s,transform .2s}

.deliver-card:hover {
  transform:translateY(-5px);
  border-color:var(--pink)}

.deliver-card .index {
  font-size:12px;
  letter-spacing:.14em;
  color:var(--muted);
  font-weight:800}

.deliver-card h3 {
  font-size:clamp(28px,2.6vw,36px);
  letter-spacing:-.06em;
  line-height:1.08;
  margin:14px 0}

.deliver-card p {
  font-size:14px;
  color:var(--muted)}

.deliver-card .arrow {
  font-size:25px;
  color:var(--pink);
  align-self:flex-end}



.leadership {
  background:linear-gradient(165deg,var(--night) 0%,var(--deep) 100%)}

.leadership-layout {
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:78px;
  align-items:center}

.portrait-shell {
  position:relative;
  min-height:590px;
  background:linear-gradient(145deg,var(--violet) 0%,var(--deep) 65%,var(--night) 100%);
  overflow:hidden;
  border:1px solid var(--line)}

.portrait-shell:before {
  content:'01 / LEADERSHIP';
  position:absolute;
  top:32px;
  left:32px;
  color:var(--muted);
  font-size:10px;
  letter-spacing:.16em;
  font-weight:800}

.portrait-shell:after {
  content:'';
  position:absolute;
  width:450px;
  height:450px;
  background:radial-gradient(circle,rgba(251,41,104,.25),transparent 67%);
  top:17%;
  left:-10%}

.portrait-shell img {
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  height:92%;
  object-fit:contain;
  object-position:bottom center;
  z-index:1}

.portrait-shell .photo-placeholder {
  position:absolute;
  bottom:20px;
  right:22px;
  z-index:2;
  opacity:.6;
  font-size:10px;
  letter-spacing:.11em}

.leadership-copy h2 {
  font-size:clamp(46px,5.2vw,76px);
  margin:21px 0 30px}

.leadership-copy p {
  font-size:17px;
  color:var(--muted);
  line-height:1.75;
  margin-bottom:18px}

.leader-name {
  margin:30px 0 20px;
  border-left:3px solid var(--pink);
  padding-left:18px}

.leader-name strong {
  display:block;
  font-size:23px;
  letter-spacing:-.04em}

.leader-name span {
  color:var(--muted);
  font-size:13px}



.work-section {
  background:var(--white);
  color:var(--ink)}

.work-section .eyebrow {
  color:var(--ink-muted)}

.work-section .split-heading p {
  color:var(--ink-muted)}

.work-grid {
  display:grid;
  grid-template-columns:1.22fr 1fr 1fr;
  gap:14px}

.work-card {
  position:relative;
  min-height:430px;
  padding:34px;
  display:flex;
  flex-direction:column;
  gap:30px;
  overflow:hidden;
  color:var(--white)}

.work-card:nth-child(1) {
  background:linear-gradient(143deg,var(--violet) 0%,var(--night) 90%)}

.work-card:nth-child(2) {
  background:linear-gradient(135deg,var(--deep),var(--violet))}

.work-card:nth-child(3) {
  background:linear-gradient(130deg,var(--violet),var(--night))}

.work-card:after {
  content:'';
  position:absolute;
  width:265px;
  height:265px;
  border:1px solid var(--line);
  border-radius:50%;
  right:-120px;
  top:50px;
  opacity:.36}

.work-card .tag {
  font-size:10px;
  letter-spacing:.16em;
  font-weight:800;
  color:var(--muted)}

.work-card .case-label {
  font-size:12px;
  font-weight:800;
  color:var(--muted)}

.work-card h3 {
  font-family:Manrope,sans-serif;
  font-size:clamp(33px,3vw,51px);
  font-weight:800;
  letter-spacing:-.075em;
  line-height:1.05;
  margin:13px 0 14px}

.work-card p {
  font-size:13px;
  color:var(--muted);
  max-width:290px}

.work-card .smalllink {
  margin-top:auto;
  align-self:flex-start;
  color:white}

.work-footer {
  margin-top:30px;
  color:var(--ink-muted);
  font-size:13px}



.ai-section {
  background:linear-gradient(170deg,var(--deep),var(--night));
  overflow:hidden}

.ai-layout {
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:90px;
  align-items:center}

.ai-layout h2 {
  font-size:clamp(48px,5.4vw,83px);
  margin:19px 0 25px}

.ai-layout p {
  color:var(--muted);
  font-size:17px;
  line-height:1.75;
  margin-bottom:24px}

.ai-points {
  display:grid;
  gap:13px}

.ai-points div {
  padding:20px 22px;
  border-left:2px solid var(--pink);
  background:rgba(255,255,255,.04);
  color:var(--muted)}

.ai-art {
  min-height:470px;
  border:1px solid var(--line);
  display:flex;
  justify-content:center;
  align-items:center;
  background:radial-gradient(circle at 48% 45%,var(--violet),var(--deep) 65%);
  position:relative}

.ai-art:before {
  content:'ENGINEERING • QUALITY • INTELLIGENCE';
  position:absolute;
  left:24px;
  top:24px;
  font-size:10px;
  letter-spacing:.15em;
  color:var(--muted)}

.ai-art img {
  width:min(72%,360px);
  filter:drop-shadow(0 0 45px rgba(251,41,104,.25))}



.uk-ro {
  background:var(--deep)}

.ukro-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px}

.uk-ro h2 {
  font-size:clamp(50px,5vw,76px);
  margin:20px 0 25px}

.uk-ro p {
  font-size:17px;
  color:var(--muted);
  line-height:1.8}

.ukro-tiles {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px}

.location-tile {
  padding:28px;
  background:var(--deep);
  border:1px solid var(--line);
  min-height:300px;
  display:flex;
  flex-direction:column;
  justify-content:space-between}

.location-tile img {
  width:115px}

.location-tile h3 {
  font-size:35px;
  letter-spacing:-.065em}

.location-tile p {
  font-size:13px}

.location-tile small {
  font-size:10px;
  letter-spacing:.15em;
  color:var(--muted);
  font-weight:800}



.evolution {
  background:var(--white);
  color:var(--ink)}

.evolution .eyebrow {
  color:var(--ink-muted)}

.evolution h2 {
  font-size:clamp(42px,4.5vw,70px);
  margin:20px 0}

.evolution p {
  max-width:700px;
  color:var(--ink-muted);
  font-size:18px;
  line-height:1.7}

.evolution .smalllink {
  margin-top:26px}



.contact-banner {
  background:linear-gradient(140deg,var(--deep) 0%,var(--violet) 80%);
  padding:113px 0}

.contact-banner h2 {
  font-size:clamp(54px,7vw,104px);
  margin:20px 0 24px;
  max-width:1090px}

.contact-banner p {
  color:var(--muted);
  font-size:18px;
  max-width:650px}

.contact-actions {
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:34px}

.contact-note {
  font-size:12px!important;
  margin-top:19px;
  color:var(--muted)!important}



.footer {
  background:var(--night);
  color:var(--muted);
  padding:65px 0 30px}

.footer-top {
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr;
  gap:50px;
  padding-bottom:50px}

.footer-logo {
  width:235px;
  margin-bottom:23px}

.footer p {
  font-size:14px;
  line-height:1.75;
  max-width:390px}

.footer strong {
  color:white;
  font-size:13px}

.footer a:hover {
  color:var(--white)}

.footer-links {
  display:flex;
  flex-direction:column;
  gap:10px;
  font-size:13px;
  margin-top:15px}

.footer-bottom {
  border-top:1px solid var(--line);
  padding-top:27px;
  display:flex;
  justify-content:space-between;
  gap:25px;
  flex-wrap:wrap;
  font-size:12px}


@media(max-width:1120px) {
  .nav-links {
  gap:16px}

.logo-lockup .header-luminos-logo {
  width:177px}

.hero-grid {
  grid-template-columns:1.15fr .85fr}

.hero h1 {
  font-size:clamp(51px,5.7vw,75px)}

.hero-photo {
  min-height:350px}

.hero-photo img {
  width:94%}

.hero-photo:before {
  width:300px;
  height:300px}

.split-heading {
  gap:30px}

.leadership-layout {
  gap:30px}

.work-grid {
  grid-template-columns:repeat(3,1fr)}

}


@media(max-width:840px) {
  .container {
  width:calc(100% - 42px)}

.nav-row {
  height:76px}

.nav-links {
  display:none;
  position:absolute;
  top:75px;
  left:0;
  right:0;
  background:var(--deep);
  border-bottom:1px solid var(--line);
  flex-direction:column;
  align-items:stretch;
  padding:18px 22px 25px;
  gap:12px}

.nav-links.show {
  display:flex}

.nav-links a {
  padding:10px 0}

.nav-links .btn {
  align-self:flex-start}

.mobile-toggle {
  display:block}

.hero-grid {
  grid-template-columns:1fr;
  padding-top:60px;
  padding-bottom:58px}

.hero h1 {
  font-size:clamp(51px,9.8vw,79px)}

.hero-photo {
  min-height:320px}

.hero-photo img {
  max-width:300px}

.hero-photo:before {
  width:280px;
  height:280px}

.hero-photo:after {
  inset:15px}

.mini-strip .container {
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:9px 25px}

.split-heading,.leadership-layout,.ai-layout,.ukro-grid,.story-split {
  grid-template-columns:1fr}

.deliver-grid {
  grid-template-columns:1fr 1fr}

.work-grid {
  grid-template-columns:1fr 1fr}

.work-card:first-child {
  grid-column:span 2}

.portrait-shell {
  min-height:480px}

.footer-top {
  grid-template-columns:1fr 1fr}

.footer-top>div:first-child {
  grid-column:span 2}

.section {
  padding:85px 0}

.ukro-tiles {
  max-width:730px}

}


@media(max-width:530px) {
  .logo-lockup .header-luminos-logo {
  width:177px}

.logo-lockup .region {
  font-size:10px;
  padding-left:8px}

.hero h1,.page-hero h1 {
  font-size:clamp(47px,10.5vw,69px)}

.hero-lead {
  font-size:16px}

.hero-actions,.contact-actions {
  flex-direction:column}

.btn {
  width:100%}

.hero-photo {
  min-height:270px}

.hero-photo img {
  max-width:230px}

.hero-photo:before {
  width:230px;
  height:230px}

.hero-photo:after {
  inset:12px}

.hero-float {
  right:0;
  bottom:-8px}

.mini-strip .container {
  font-size:9px}

.deliver-grid,.work-grid,.two-col-list,.ukro-tiles,.footer-top {
  grid-template-columns:1fr}

.deliver-card {
  min-height:260px}

.work-card:first-child {
  grid-column:auto}

.work-card {
  min-height:360px}

.footer-top>div:first-child {
  grid-column:auto}

.split-heading h2,.solo-heading h2,.leadership-copy h2,.ai-layout h2,.uk-ro h2 {
  font-size:clamp(43px,10vw,64px)}

.portrait-shell {
  min-height:395px}

.location-tile {
  min-height:230px}

.page-hero {
  padding:75px 0}

.page-hero .subtitle {
  font-size:17px}

}


@media(prefers-reduced-motion:reduce) {
  * {
  scroll-behavior:auto!important;
  animation:none!important;
  transition:none!important}

}




.ibly-legacy {
  margin-top:24px;
  display:flex;
  align-items:center;
  gap:17px;
  padding-top:21px;
  border-top:1px solid var(--line);
  max-width:420px}


.ibly-logo-link {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 146px;
  min-height:58px;
  padding:11px 12px;
  border-radius:3px;
  background:var(--white);
  color:var(--ink)}


.ibly-original-logo {
  display:block;
  width:120px;
  height:auto;
  max-height:48px;
  object-fit:contain}





.ibly-legacy-copy strong {
  color:var(--white);
  font-size:13px}


.ibly-legacy-copy span {
  color:var(--muted);
  font-size:12px;
  line-height:1.45}


@media(max-width:400px) {
  .ibly-legacy {
  gap:11px}

.ibly-logo-link {
  flex-basis:122px;
  padding:9px 8px;
  min-height:52px}

.ibly-original-logo {
  width:106px}

.ibly-legacy-copy span {
  font-size:11px}

}

[hidden] { display: none !important; }
img { height: auto; }
html { scroll-padding-top: 24px; }
:target { scroll-margin-top: 24px; }
:focus-visible { outline:3px solid var(--white); outline-offset: 5px; }
.work-section :focus-visible, .evolution :focus-visible { outline-color:var(--ink); }
.work-section .work-card :focus-visible { outline-color:var(--white); }
.skip-link { position: absolute; top: 8px; left: 8px; z-index: 50; transform: translateY(-160%); padding: 12px 18px; background:white; color:var(--ink); font-weight: 700; }
.skip-link:focus { transform: none; }
.evolution .smalllink:hover { color:var(--ink); }
.section-link { margin-top: 26px; }
.testimonials-section { background:linear-gradient(145deg, var(--deep), var(--night)); }
.testimonials-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.testimonial-card { margin: 0; padding: clamp(24px, 3vw, 40px); border:1px solid var(--line); background:var(--deep); display: flex; flex-direction: column; gap: 28px; }
.testimonial-card blockquote { margin: 0; padding-top: 22px; border-top:3px solid var(--pink); font-size: clamp(17px, 1.5vw, 21px); line-height: 1.7; color:var(--white); }
.testimonial-card figcaption { margin-top: auto; display: flex; flex-direction: column; gap: 4px; font-size: 13px; color:var(--muted); }
.testimonial-card figcaption strong { color:var(--white); font-size: 18px; }
.testimonial-card .testimonial-company { color:var(--white); }
.testimonial-featured { grid-column: 1 / -1; }
@media (max-width: 530px) {
  .testimonials-grid { grid-template-columns: 1fr; }
}
.hero-grid > *, .split-heading > *, .deliver-grid > *, .leadership-layout > *, .work-grid > *, .ai-layout > *, .ukro-grid > *, .ukro-tiles > *, .footer-top > * { min-width: 0; }
.hero-photo img, .ai-art img { height: auto; }
.work-card > * { position: relative; z-index: 1; }
.work-card::after { pointer-events: none; }
.work-card .work-milestone { margin-block: 16px; color:var(--white); font-size: 23px; font-weight: 800; }
.portrait-shell { margin: 0; }
.portrait-shell img { height: 92%; }
.team-profiles { margin-top: 64px; }
.team-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.team-profile { min-width: 0; display: flex; flex-direction: column; border:1px solid var(--line); background:var(--deep); }
.team-portrait { height: 340px; padding-top: 24px; overflow: hidden; background:radial-gradient(ellipse at bottom, var(--violet), var(--deep) 75%); }
.team-portrait img { width: 100%; height: 100%; object-fit: contain; object-position: bottom center; }
.team-profile-copy { display: flex; flex-direction: column; align-items: flex-start; flex: 1; padding: 32px; }
.team-profile-copy h3 { font-family: Manrope, sans-serif; font-size: 32px; letter-spacing: -.05em; line-height: 1.15; }
.team-role { margin-top: 10px; color:var(--white); font-weight: 700; }
.team-bio { margin-top: 18px; color:var(--muted); }
.team-profile-copy .smalllink { margin-top: auto; padding-top: 24px; }
@media (max-width: 530px) {
  .team-grid { grid-template-columns: 1fr; }
  .team-portrait { height: 300px; }
  .team-profile-copy { padding: 24px; }
}
.footer-logo { height: auto; }
.ibly-logo-link img { width: 120px; height: auto; }
.footer-links a { overflow-wrap: anywhere; }
.footer-links a, .nav-links a { min-height: 44px; display: flex; align-items: center; }
.footer-links { gap: 0; }
.footer-links span { padding-top: 10px; }
.smalllink { min-height: 44px; }
.anchor-aliases { position: relative; }
@media (max-width: 1120px) {
  .nav-row { gap: 20px; }
  .logo-lockup .header-ibly-logo { width: 40px; }
  .nav-links { gap: 14px; font-size: 12px; }
  .location-tile { padding: 22px; }
  .location-tile h3 { font-size: 30px; }
}
@media (max-width: 1024px) {
  .nav-row { height: auto; min-height: 76px; flex-wrap: wrap; padding-block: 16px; gap: 16px; }
  .nav-links { display: flex; position: static; flex-basis: 100%; padding: 14px 0 0; border-bottom:0; border-top:1px solid var(--line); background:transparent; gap: 4px; }
  .mobile-toggle { display: block; margin-left: auto; min-height: 44px; }
  .nav-links .btn { width: auto; }
}
@media (max-width: 530px) {
  .container { width: calc(100% - 36px); }
  .logo-lockup { gap: 10px; }
  .logo-lockup .header-luminos-logo { width: 155px; }
  .logo-lockup .header-ibly-logo { width: 36px; }
  .logo-lockup .region { padding-left: 8px; }
  .mobile-toggle { padding: 8px 10px; }
  .hero h1 { font-size: clamp(40px, 10.5vw, 56px); }
  .contact-banner h2 { font-size: clamp(40px, 10.5vw, 56px); }
  .hero-float { font-size: 9px; padding: 12px; }
  .hero-photo::after { inset: 20px; }
  .ai-art { min-height: 330px; }
  .ai-art::before { font-size: 8px; left: 16px; }
  .section { padding-block: 64px; }
  .contact-banner { padding-block: 72px; }
  .ibly-logo-link { flex-basis: 122px; }
}
@media (max-width: 360px) {
  .logo-lockup .region { display: none; }
}

