:root {
  --ims-gems-ink: #182028;
  --ims-gems-ink-2: #222d38;
  --ims-gems-ivory: #f8f4ea;
  --ims-gems-gold: #d3ad5d;
  --ims-gems-gold-soft: #ead391;
  --ims-gems-muted: #66717b;
  --ims-gems-border: rgba(24, 32, 40, .13);
  --ims-gems-shell: 1280px;
}
.ims-gems-section-widget{color:var(--ims-gems-ink)}
.ims-gems-section-widget,.ims-gems-section-widget *{box-sizing:border-box}
.ims-gems-section-widget h1,.ims-gems-section-widget h2,.ims-gems-section-widget h3{font-weight:500;letter-spacing:-.02em}
.ims-gems-shell{width:min(calc(100% - 32px),var(--ims-gems-shell));margin-inline:auto}
.ims-gems-section{padding:110px 0}
.ims-gems-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 20px;color:var(--ims-gems-gold);font-size:11px;font-weight:600;letter-spacing:.25em;text-transform:uppercase}
.ims-gems-eyebrow>span{display:inline-block;width:40px;height:1px;background:currentColor}
.ims-gems-section-widget em{font-style:italic;color:var(--ims-gems-gold)}
.ims-gems-reveal{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1)}
.ims-gems-reveal.is-visible{opacity:1;transform:none}
.ims-gems-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.ims-gems-btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:10px;padding:0 25px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.16em;text-decoration:none;text-transform:uppercase;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.ims-gems-btn:hover{transform:translateY(-2px)}
.ims-gems-btn--gold,.ims-gems-btn--primary{background:linear-gradient(135deg,var(--ims-gems-gold),var(--ims-gems-gold-soft));color:var(--ims-gems-ink);box-shadow:0 20px 50px -20px rgba(211,173,93,.75)}
.ims-gems-btn--ghost,.ims-gems-btn--secondary{border-color:rgba(234,211,145,.58);color:#fff;background:rgba(255,255,255,.03);backdrop-filter:blur(8px)}

/* Hero */
.ims-gems-hero{position:relative;min-height:100svh;overflow:hidden;background:var(--ims-gems-ink);color:#fff}
.ims-gems-hero__image{position:absolute;inset:-7%;width:114%;height:114%;object-fit:cover;will-change:transform}
.ims-gems-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,19,24,.67),rgba(13,19,24,.45) 45%,rgba(13,19,24,.93)),linear-gradient(90deg,rgba(13,19,24,.7),transparent 70%)}
.ims-gems-hero__content{position:relative;display:flex;min-height:100svh;flex-direction:column;justify-content:flex-end;padding-top:150px;padding-bottom:70px}
.ims-gems-hero__content>div:first-child{max-width:860px}
.ims-gems-hero h1{max-width:900px;margin:0;color:#fff;font-size:clamp(48px,6.4vw,92px);line-height:1.02}
.ims-gems-hero__description{max-width:640px;margin:28px 0 0;color:rgba(255,255,255,.7);font-size:18px;line-height:1.75}
.ims-gems-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:65px;padding-top:30px;border-top:1px solid rgba(255,255,255,.12)}
.ims-gems-stats div{display:flex;flex-direction:column}.ims-gems-stats strong{color:var(--ims-gems-gold);font-size:48px;font-weight:500}.ims-gems-stats span{margin-top:6px;color:rgba(255,255,255,.53);font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}

/* Marquee */
.ims-gems-marquee{display:block;position:relative;width:100%;overflow:hidden;padding:35px 0;border-block:1px solid rgba(255,255,255,.09);background:var(--ims-gems-ink);color:#fff;text-align:center}
.ims-gems-marquee__intro{display:block;margin:0 0 23px;color:rgba(255,255,255,.45);font-size:10px;letter-spacing:.28em;text-transform:uppercase}
.ims-gems-marquee__viewport{display:block;width:100%;overflow:hidden}
/* Progressive enhancement: frontend always shows a static first group before JS enables motion. */
.ims-gems-marquee__track{display:flex;width:100%;min-width:100%;align-items:center;justify-content:center;transform:none;animation:none;will-change:auto}
.ims-gems-marquee__group{display:flex;flex:0 1 auto;align-items:center;justify-content:center;flex-wrap:wrap;gap:62px;padding:0 31px}
.ims-gems-marquee__group[aria-hidden="true"]{display:none}
.ims-gems-marquee__item{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:max-content;color:inherit;text-decoration:none;white-space:nowrap;opacity:.55}
.ims-gems-marquee__text{display:inline-block;color:rgba(255,255,255,.38);font-size:22px;letter-spacing:.18em;line-height:1.25;white-space:nowrap}
.ims-gems-marquee.is-animated.is-marquee-ready .ims-gems-marquee__track{width:max-content;min-width:0;justify-content:flex-start;transform:translate3d(0,0,0);will-change:transform;animation:ims-gems-marquee var(--ims-marquee-duration,34s) linear infinite}
.ims-gems-marquee.is-animated.is-marquee-ready .ims-gems-marquee__group{display:flex;flex:0 0 auto;justify-content:flex-start;flex-wrap:nowrap}
.ims-gems-marquee.is-animated.is-marquee-ready .ims-gems-marquee__group[aria-hidden="true"]{display:flex}
@keyframes ims-gems-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(var(--ims-marquee-shift,-1000px),0,0)}}

/* Content */
.ims-gems-about{display:grid;grid-template-columns:5fr 6fr;gap:8.333%}.ims-gems-about h2,.ims-gems-section-heading h2{margin:0;font-size:clamp(42px,5vw,68px);line-height:1.05}
.ims-gems-about__content{color:var(--ims-gems-muted);font-size:17px;line-height:1.8}.ims-gems-about__content>p{margin:0 0 22px}
.ims-gems-about__features{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:35px}.ims-gems-about__features b{color:var(--ims-gems-gold);font-size:28px}.ims-gems-about__features h3{margin:10px 0 4px;color:var(--ims-gems-ink);font-size:21px}.ims-gems-about__features p{margin:0;font-size:14px;line-height:1.6}
.ims-gems-skyline{position:relative;display:grid;min-height:68vh;place-items:center;overflow:hidden;color:#fff;text-align:center}.ims-gems-skyline>img{position:absolute;inset:-14% 0;width:100%;height:128%;object-fit:cover;will-change:transform}.ims-gems-skyline__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,25,31,.72),rgba(18,25,31,.38),rgba(18,25,31,.82))}.ims-gems-skyline__content{position:relative;width:min(calc(100% - 32px),950px)}.ims-gems-skyline h2{margin:0;font-size:clamp(42px,5.5vw,76px);line-height:1.05}.ims-gems-skyline__content>p:last-child{max-width:700px;margin:28px auto 0;color:rgba(255,255,255,.67);line-height:1.75}
.ims-gems-services{background:var(--ims-gems-ink);color:#fff}.ims-gems-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:54px}.ims-gems-section-heading>div{max-width:760px}.ims-gems-section-heading>p,.ims-gems-section-heading>div>p:last-child{max-width:470px;margin:20px 0 0;color:var(--ims-gems-muted);line-height:1.7}.ims-gems-services .ims-gems-section-heading>p{color:rgba(255,255,255,.62)}
.ims-gems-service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.ims-gems-service-card{position:relative;min-height:340px;padding:38px;border:1px solid rgba(255,255,255,.1);border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.045),transparent);transition:border-color .25s ease,transform .25s ease}.ims-gems-service-card:hover{border-color:rgba(211,173,93,.48);transform:translateY(-4px)}.ims-gems-service-card>span{display:grid;width:54px;height:54px;place-items:center;border:1px solid rgba(211,173,93,.45);border-radius:50%;color:var(--ims-gems-gold);}.ims-gems-service-card h3{margin:28px 0 12px;color:#fff;font-size:31px}.ims-gems-service-card p{max-width:590px;margin:0;color:rgba(255,255,255,.65);line-height:1.7}.ims-gems-service-card ul{margin:24px 0 0;padding:0;list-style:none}.ims-gems-service-card li{margin:10px 0;color:rgba(255,255,255,.55);font-size:14px}.ims-gems-service-card> b{position:absolute;top:30px;right:32px;color:rgba(255,255,255,.27);font-size:24px;transition:.25s}.ims-gems-service-card:hover>b{color:var(--ims-gems-gold);transform:rotate(45deg)}
.ims-gems-space-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.ims-gems-space-card{position:relative;grid-column:span 5;min-height:350px;margin:0;overflow:hidden;border-radius:28px;background:var(--ims-gems-ink)}.ims-gems-space-card--wide{grid-column:span 7}.ims-gems-space-card--tall{grid-column:span 4;min-height:500px}.ims-gems-space-card img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}.ims-gems-space-card:hover img{transform:scale(1.05)}.ims-gems-space-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,25,31,.9),rgba(18,25,31,.05) 65%)}.ims-gems-space-card__caption{position:absolute;z-index:1;right:0;bottom:0;left:0;padding:28px}.ims-gems-space-card small{display:block;color:var(--ims-gems-gold);font-size:10px;letter-spacing:.22em;text-transform:uppercase}.ims-gems-space-card strong{display:block;margin-top:8px;color:#fff;font-size:28px;font-weight:500}
.ims-gems-offices-section,.ims-gems-why{background:#f1ede3}.ims-gems-office-group{margin-top:55px}.ims-gems-office-group__heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:26px;padding-bottom:14px;border-bottom:1px solid var(--ims-gems-border)}.ims-gems-office-group__heading h3{margin:0;font-size:30px}.ims-gems-office-group__heading span{color:var(--ims-gems-gold);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.ims-gems-office-group .ims-gems-office-grid{--ims-gems-columns:3;display:grid;grid-template-columns:repeat(var(--ims-gems-columns),minmax(0,1fr));gap:22px}
.ims-gems-detail-split{display:grid;grid-template-columns:1fr 1fr;background:var(--ims-gems-ink);color:#fff}.ims-gems-detail-split__image{min-height:720px}.ims-gems-detail-split__image img{width:100%;height:100%;object-fit:cover}.ims-gems-detail-split__content{display:flex;flex-direction:column;justify-content:center;padding:75px clamp(35px,6vw,100px)}.ims-gems-detail-split h2{margin:0;font-size:clamp(42px,4vw,65px);line-height:1.08}.ims-gems-detail-split__content>p{color:rgba(255,255,255,.65);line-height:1.8}.ims-gems-detail-split ul{margin:22px 0 0;padding:0;list-style:none}.ims-gems-detail-split li{padding:10px 0;color:rgba(255,255,255,.68)}
.ims-gems-why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;border:1px solid var(--ims-gems-border);border-radius:28px;background:var(--ims-gems-border)}.ims-gems-why-grid article{min-height:260px;padding:34px;background:#faf8f1}.ims-gems-why-grid article>span{color:var(--ims-gems-gold);font-size:22px}.ims-gems-why-grid h3{margin:28px 0 10px;font-size:26px}.ims-gems-why-grid p{margin:0;color:var(--ims-gems-muted);font-size:14px;line-height:1.7}
.ims-gems-location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:48px}.ims-gems-location-card__feature{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:28px;background:var(--ims-gems-ink);box-shadow:0 30px 80px -35px rgba(24,32,40,.55)}.ims-gems-location-card__feature>img{width:100%;height:100%;object-fit:cover}.ims-gems-location-card__feature:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,25,31,.88),rgba(18,25,31,.04) 70%)}.ims-gems-location-card__feature>span{position:absolute;z-index:1;right:25px;bottom:25px;left:25px;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(18,25,31,.78);backdrop-filter:blur(14px)}.ims-gems-location-card__feature small,.ims-gems-location-card__feature strong,.ims-gems-location-card__feature em{display:block}.ims-gems-location-card__feature small{color:var(--ims-gems-gold);font-size:10px;letter-spacing:.2em;text-transform:uppercase}.ims-gems-location-card__feature strong{margin-top:7px;color:#fff;font-size:25px;font-weight:500}.ims-gems-location-card__feature em{margin-top:5px;color:rgba(255,255,255,.58);font-size:13px;font-style:normal}.ims-gems-location-card ul{margin:25px 0 0;padding:0;list-style:none}.ims-gems-location-card li{border-bottom:1px solid var(--ims-gems-border)}.ims-gems-location-card li a{display:flex;gap:12px;padding:15px 3px;color:var(--ims-gems-ink);font-size:16px;text-decoration:none}.ims-gems-location-card li span{color:var(--ims-gems-gold)}
.ims-gems-cta{position:relative;display:grid;min-height:620px;place-items:center;overflow:hidden;background:var(--ims-gems-ink);color:#fff;text-align:center}.ims-gems-cta>img{position:absolute;inset:-10%;width:120%;height:120%;object-fit:cover;opacity:.35;will-change:transform}.ims-gems-cta__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,25,31,.8),rgba(18,25,31,.95))}.ims-gems-cta__content{position:relative;width:min(calc(100% - 32px),900px)}.ims-gems-cta h2{margin:0;font-size:clamp(48px,6vw,78px);line-height:1.05}.ims-gems-cta__content>p{max-width:650px;margin:28px auto 0;color:rgba(255,255,255,.66);line-height:1.75}.ims-gems-cta .ims-gems-actions{justify-content:center}


/* Elementor section widgets v1.3 */
.ims-gems-section-widget{position:relative;width:100%}
.ims-gems-section-widget a{transition:color .25s ease,background-color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease}
.ims-gems-eyebrow__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.ims-gems-eyebrow__icon:empty{display:none}
.ims-gems-eyebrow__icon svg{display:block;width:1em;height:1em;fill:currentColor}
.ims-gems-hero__main{width:100%}
.ims-gems-hero .ims-gems-actions svg,.ims-gems-cta .ims-gems-actions svg{display:block;width:1em;height:1em;fill:currentColor}
.ims-gems-stat__icon{display:inline-flex;margin-bottom:10px;color:var(--ims-gems-gold)}
.ims-gems-stat__icon svg{display:block;width:1em;height:1em;fill:currentColor}
.ims-gems-marquee.is-static .ims-gems-marquee__track{width:100%;min-width:0;justify-content:center;animation:none}
.ims-gems-marquee.is-static .ims-gems-marquee__group{justify-content:center;flex-wrap:wrap;padding-inline:20px}
.ims-gems-marquee.is-pause-hover.is-marquee-ready:hover .ims-gems-marquee__track{animation-play-state:paused}
.ims-gems-marquee.is-reverse.is-marquee-ready .ims-gems-marquee__track{animation-direction:reverse}
.ims-gems-marquee__logo{display:inline-flex;align-items:center;justify-content:center}
.ims-gems-marquee__logo img{display:block;width:auto;max-width:220px;object-fit:contain;filter:grayscale(1)}
.ims-gems-about-feature{display:block;color:inherit;text-decoration:none}
.ims-gems-about-feature__icon{display:inline-flex;color:var(--ims-gems-gold);font-size:28px}
.ims-gems-about-feature__icon svg{display:block;width:1em;height:1em;fill:currentColor}
.ims-gems-skyline .ims-gems-eyebrow{justify-content:center}
.ims-gems-services .ims-gems-section-heading__description{color:rgba(255,255,255,.62)}
.ims-gems-service-card{display:block;position:relative;min-height:350px;color:inherit;text-decoration:none;background:linear-gradient(90deg,rgba(8,20,37,.98) 0%,rgba(3,13,27,.98) 100%);border:1px solid rgba(255,255,255,.12);border-radius:28px;overflow:hidden}
.ims-gems-service-card::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.03),transparent 45%,rgba(0,0,0,.08) 100%);pointer-events:none}
.ims-gems-service-card__top{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:30px}
.ims-gems-service-card__badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.ims-gems-service-card__number,.ims-gems-service-card__main-icon{display:grid;width:58px;height:58px;place-items:center;border:1px solid rgba(211,173,93,.45);border-radius:50%;color:var(--ims-gems-gold);background:rgba(255,255,255,.02)}
.ims-gems-service-card__number{font-size:16px;font-weight:600;line-height:1}
.ims-gems-service-card__main-icon{font-size:24px}
.ims-gems-service-card__main-icon svg,.ims-gems-service-card__feature-icon svg,.ims-gems-service-card__link-icon svg{display:block;width:1em;height:1em;fill:currentColor}
.ims-gems-service-card h3{position:relative;z-index:1;margin:0 0 16px;color:#fff;font-size:31px;font-weight:500;line-height:1.18;letter-spacing:-.03em}
.ims-gems-service-card__description{position:relative;z-index:1;max-width:590px;margin:0;color:rgba(255,255,255,.65);font-size:16px;line-height:1.72}
.ims-gems-service-card ul{position:relative;z-index:1;margin:28px 0 0;padding:0;list-style:none}
.ims-gems-service-card li{display:flex;align-items:flex-start;gap:12px;margin:12px 0;color:rgba(255,255,255,.72);font-size:15px;line-height:1.6}
.ims-gems-service-card__feature-icon{display:inline-flex;flex:0 0 auto;margin-top:3px;color:var(--ims-gems-gold);font-size:14px}
.ims-gems-service-card__link-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:rgba(255,255,255,.45);font-size:22px;transition:.25s}
.ims-gems-service-card:hover .ims-gems-service-card__link-icon{color:rgba(255,255,255,.8);transform:translate(2px,-2px)}
@media (max-width:767px){.ims-gems-service-card{min-height:0}.ims-gems-service-card h3{font-size:24px}.ims-gems-service-card__description{font-size:15px}.ims-gems-service-card li{font-size:14px}.ims-gems-service-card__number,.ims-gems-service-card__main-icon{width:52px;height:52px}}
.ims-gems-space-card{display:block;text-decoration:none}
.ims-gems-space-card--full{grid-column:1/-1}
.ims-gems-office-card__link-icon{display:inline-flex}
.ims-gems-detail-split__feature-icon{display:inline-flex;flex:0 0 auto;color:var(--ims-gems-gold)}
.ims-gems-detail-split__feature-icon svg{display:block;width:1em;height:1em;fill:currentColor}
.ims-gems-detail-split li{display:flex;align-items:center;gap:10px}
.ims-gems-why-card{display:block;color:inherit;text-decoration:none;background:#faf8f1}
.ims-gems-why-card__top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.ims-gems-why-card__icon{display:inline-flex;color:var(--ims-gems-gold);font-size:26px}
.ims-gems-why-card__icon svg{display:block;width:1em;height:1em;fill:currentColor}
.ims-gems-location-card__caption{position:absolute;z-index:1;right:25px;bottom:25px;left:25px;display:block;padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(18,25,31,.78);backdrop-filter:blur(14px)}
.ims-gems-location-card__list{margin:25px 0 0;padding:0;list-style:none}
.ims-gems-location-card__list li{border-bottom:1px solid var(--ims-gems-border)}
.ims-gems-location-card__list a{display:flex;align-items:center;gap:12px;padding:15px 3px;color:var(--ims-gems-ink);font-size:16px;text-decoration:none}
.ims-gems-location-card__list-icon{display:inline-flex;flex:0 0 auto;color:var(--ims-gems-gold)}
.ims-gems-location-card__list-icon svg{display:block;width:1em;height:1em;fill:currentColor}
.ims-gems-location-card__name{min-width:0;flex:1}
.ims-gems-location-card__price{margin-left:auto;color:var(--ims-gems-gold);white-space:nowrap}
.ims-gems-cta .ims-gems-eyebrow{justify-content:center}
.ims-gems-cta__description{max-width:650px;margin:28px auto 0;color:rgba(255,255,255,.66);line-height:1.75}
.ims-gems-cta .ims-gems-btn span{display:inline-flex;align-items:center}

@media (max-width:767px){
  .ims-gems-space-card--full{grid-column:auto}
  .ims-gems-location-card__caption{right:15px;bottom:15px;left:15px}
  .ims-gems-location-card__price{display:none}
}

/* v1.3 control compatibility fixes */
.ims-gems-eyebrow .ims-gems-eyebrow__icon{width:auto;height:auto;background:none}
.ims-gems-space-card__caption{display:block}
.ims-gems-office-card__link-icon{display:inline-flex;align-items:center;justify-content:center;color:inherit;line-height:1}
.ims-gems-office-card__link-icon svg{display:block;width:1em;height:1em;fill:currentColor}

/* ==========================================================
 * Responsive system v1.1.0
 * Landing-only. Header/Footer are intentionally not styled here.
 * ========================================================== */
.elementor-widget-ims-gems-hero-section,
.elementor-widget-ims-gems-hero-section .elementor-widget-container{
  width:100%;
  max-width:100%;
}
.elementor-widget-ims-gems-hero-section .ims-gems-hero{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
.elementor-widget-ims-gems-hero-section .ims-gems-hero__image{
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.ims-gems-space-card{
  position:relative;
  display:block;
  isolation:isolate;
  overflow:hidden;
  text-decoration:none;
}
.ims-gems-space-card img{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%;
  min-height:100%;
  object-fit:cover!important;
  object-position:center center;
}
.ims-gems-space-card::after{z-index:0}
.ims-gems-space-card__caption{
  position:absolute;
  z-index:1;
  right:0;
  bottom:0;
  left:0;
  display:flex;
  min-height:100%;
  flex-direction:column;
  justify-content:flex-end;
}

@media (max-width:1024px){
  .ims-gems-section{padding:76px 0}
  .ims-gems-section-heading{gap:32px;margin-bottom:42px}
  .ims-gems-about{grid-template-columns:1fr;gap:36px}
  .ims-gems-about__features{gap:22px;margin-top:28px}
  .ims-gems-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .ims-gems-office-group .ims-gems-office-grid{--ims-gems-columns:2;gap:18px}
  .ims-gems-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ims-gems-detail-split{grid-template-columns:1fr}
  .ims-gems-detail-split__image{min-height:500px}
  .ims-gems-detail-split__content{padding:52px 32px}
  .ims-gems-cta{min-height:500px}
}

@media (max-width:767px){
  .ims-gems-shell{width:min(calc(100% - 28px),var(--ims-gems-shell))}
  .ims-gems-section{padding:52px 0}
  .ims-gems-eyebrow{gap:9px;margin-bottom:14px;font-size:10px;letter-spacing:.2em}
  .ims-gems-eyebrow>span{width:30px}
  .ims-gems-actions{gap:10px;margin-top:24px}
  .ims-gems-btn{min-height:46px;padding:0 20px;font-size:11px;letter-spacing:.12em}

  .ims-gems-hero{min-height:100svh}
  .ims-gems-hero__content{min-height:100svh;padding-top:96px;padding-bottom:32px}
  .ims-gems-hero h1{font-size:clamp(36px,10vw,44px);line-height:1.02}
  .ims-gems-hero__description{margin-top:18px;font-size:15px;line-height:1.65}
  .ims-gems-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px;margin-top:32px;padding-top:22px}
  .ims-gems-stats strong{font-size:32px}
  .ims-gems-stats span{margin-top:4px;font-size:9px;letter-spacing:.14em}

  .ims-gems-marquee{padding:22px 0}
  .ims-gems-marquee__intro{margin-bottom:14px;font-size:9px;letter-spacing:.2em}
  .ims-gems-marquee__group{gap:32px;padding-inline:16px}
  .ims-gems-marquee__text{font-size:17px;letter-spacing:.13em}
  .ims-gems-marquee__logo img{max-width:150px}

  .ims-gems-about{gap:28px}
  .ims-gems-about h2,.ims-gems-section-heading h2{font-size:clamp(32px,9vw,38px);line-height:1.08}
  .ims-gems-about__content{font-size:15px;line-height:1.7}
  .ims-gems-about__content>p{margin-bottom:16px}
  .ims-gems-about__features{grid-template-columns:1fr;gap:18px;margin-top:24px}
  .ims-gems-about__features h3{margin-top:7px;font-size:19px}

  .ims-gems-skyline{min-height:52svh}
  .ims-gems-skyline>img{inset:0;width:100%;height:100%;object-fit:cover}
  .ims-gems-skyline__content{width:min(calc(100% - 28px),950px)}
  .ims-gems-skyline h2{font-size:clamp(34px,9.5vw,42px)}
  .ims-gems-skyline__content>p:last-child{margin-top:18px;font-size:15px;line-height:1.65}

  .ims-gems-section-heading{display:block;margin-bottom:28px}
  .ims-gems-section-heading>p,.ims-gems-section-heading>div>p:last-child{margin-top:16px;font-size:15px;line-height:1.65}

  .ims-gems-service-grid{grid-template-columns:1fr;gap:14px}
  .ims-gems-service-card{min-height:0;padding:24px 22px;border-radius:22px}
  .ims-gems-service-card__top{margin-bottom:22px}
  .ims-gems-service-card__number,.ims-gems-service-card__main-icon{width:50px;height:50px}
  .ims-gems-service-card h3{margin-bottom:12px;font-size:24px}
  .ims-gems-service-card__description{font-size:15px;line-height:1.6}
  .ims-gems-service-card ul{margin-top:18px}
  .ims-gems-service-card li{gap:10px;margin:8px 0;font-size:14px;line-height:1.5}

  .ims-gems-space-grid{grid-template-columns:1fr;gap:14px}
  .ims-gems-space-card,.ims-gems-space-card--wide{grid-column:auto;min-height:260px;border-radius:22px}
  .ims-gems-space-card--tall{grid-column:auto;min-height:320px}
  .ims-gems-space-card__caption{padding:20px}
  .ims-gems-space-card strong{max-width:100%;margin-top:6px;font-size:23px;line-height:1.18}

  .ims-gems-office-group{margin-top:30px}
  .ims-gems-office-group + .ims-gems-office-group{margin-top:38px}
  .ims-gems-office-group__heading{margin-bottom:18px;padding-bottom:11px}
  .ims-gems-office-group__heading h3{font-size:24px}
  .ims-gems-office-group__heading span{font-size:9px;letter-spacing:.14em}
  .ims-gems-office-group .ims-gems-office-grid{--ims-gems-columns:1;gap:14px}

  .ims-gems-detail-split{grid-template-columns:1fr}
  .ims-gems-detail-split__image{min-height:340px}
  .ims-gems-detail-split__content{padding:38px 16px 42px}
  .ims-gems-detail-split h2{font-size:clamp(32px,9vw,38px)}
  .ims-gems-detail-split__description{font-size:15px;line-height:1.65}
  .ims-gems-detail-split ul{margin-top:18px}
  .ims-gems-detail-split li{padding:7px 0;font-size:14px}

  .ims-gems-why-grid{grid-template-columns:1fr;border-radius:22px}
  .ims-gems-why-grid article,.ims-gems-why-card{min-height:0;padding:24px 22px}
  .ims-gems-why-grid h3{margin:20px 0 8px;font-size:23px}
  .ims-gems-why-grid p{line-height:1.6}

  .ims-gems-location-grid{grid-template-columns:1fr;gap:30px}
  .ims-gems-location-card__feature{border-radius:22px}
  .ims-gems-location-card__caption{right:14px;bottom:14px;left:14px;padding:16px;border-radius:15px}
  .ims-gems-location-card__feature strong{font-size:22px}
  .ims-gems-location-card__list{margin-top:18px}
  .ims-gems-location-card__list a{gap:10px;padding:12px 2px;font-size:14px}
  .ims-gems-location-card__price{display:none}

  .ims-gems-cta{min-height:430px;padding:52px 0}
  .ims-gems-cta>img{inset:0;width:100%;height:100%;object-fit:cover}
  .ims-gems-cta__content{width:min(calc(100% - 28px),900px)}
  .ims-gems-cta h2{font-size:clamp(34px,9.5vw,40px)}
  .ims-gems-cta__description{margin-top:18px;font-size:15px;line-height:1.65}
  .ims-gems-cta .ims-gems-actions{margin-top:24px}
}

@media (max-width:420px){
  .ims-gems-section{padding:46px 0}
  .ims-gems-shell{width:min(calc(100% - 24px),var(--ims-gems-shell))}
  .ims-gems-hero h1{font-size:35px}
  .ims-gems-stats{gap:14px 10px}
  .ims-gems-space-card,.ims-gems-space-card--wide{min-height:240px}
  .ims-gems-space-card--tall{min-height:290px}
  .ims-gems-cta{min-height:400px}
}

@media (prefers-reduced-motion:reduce){
  .ims-gems-reveal{opacity:1;transform:none;transition:none}
  .ims-gems-marquee__track{animation:none}
  .ims-gems-hero__image,.ims-gems-skyline>img,.ims-gems-cta>img{transform:none!important}
}

/* Marquee frontend visibility hardening v1.1.3 */
body:not(.elementor-editor-active) .elementor-widget-ims-gems-brand-marquee,
body:not(.elementor-editor-active) [data-widget_type="ims-gems-brand-marquee.default"] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
body:not(.elementor-editor-active) .elementor-widget-ims-gems-brand-marquee > .elementor-widget-container,
body:not(.elementor-editor-active) [data-widget_type="ims-gems-brand-marquee.default"] > .elementor-widget-container {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
body:not(.elementor-editor-active) .ims-gems-marquee {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-height: 118px;
  background: var(--ims-gems-ink, #182028) !important;
}
body:not(.elementor-editor-active) .ims-gems-marquee__viewport,
body:not(.elementor-editor-active) .ims-gems-marquee__track,
body:not(.elementor-editor-active) .ims-gems-marquee__group,
body:not(.elementor-editor-active) .ims-gems-marquee__item,
body:not(.elementor-editor-active) .ims-gems-marquee__text,
body:not(.elementor-editor-active) .ims-gems-marquee__logo {
  visibility: visible !important;
  opacity: 1;
}
body:not(.elementor-editor-active) .ims-gems-marquee__item {
  opacity: .55 !important;
}
@media (max-width:767px){
  body:not(.elementor-editor-active) .ims-gems-marquee{min-height:96px}
}
