/**
 * TEMAGUE current homepage presentation layer.
 * Shared/base and legacy block compatibility rules live in foundation.css and
 * are loaded immediately before this file to preserve the original cascade.
 */

/* v1.4.94 — rebuilt homepage below Hero */
body.home .tg-rebuild{--hh:80px;--ink:#0c0c0d;--muted:#68686d;--line:#dedede;--red:#e3262e;background:#fff;color:var(--ink);font-family:"Manrope",sans-serif}
body.home .tg-rebuild *{box-sizing:border-box} body.home .tg-shell{width:min(100% - 48px,1440px);margin:auto}
body.home .tg-screen{height:calc(100svh - var(--hh));min-height:calc(100svh - var(--hh));overflow:hidden;display:flex;align-items:center;background:#fff;color:var(--ink);border-bottom:1px solid var(--line);scroll-snap-align:start;scroll-snap-stop:always}
body.home .tg-rebuild h2,body.home .tg-rebuild h3{font-family:"Space Grotesk",sans-serif;color:var(--ink)}
body.home .tg-rebuild h2{margin:0;font-size:clamp(44px,6vw,94px);line-height:.92;letter-spacing:-.055em;font-weight:600} body.home .tg-rebuild h2 em{color:var(--red);font-style:normal} body.home .tg-rebuild p{color:var(--muted)}
body.home .tg-kicker,body.home .tg-section-head>span,body.home .tg-package-copy>span,body.home .tg-difference-copy>span,body.home .tg-proof-title>span,body.home .tg-contact>span,:is(body.home,body.page,body.single-post) .tg-new-footer nav>span,:is(body.home,body.page,body.single-post) .tg-footer-grid>div>span{font-size:11px;font-weight:700;letter-spacing:.16em}
body.home .tg-intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;grid-template-rows:auto 1fr auto;gap:24px 56px;align-items:center}.tg-intro-copy p{max-width:680px;font-size:18px;line-height:1.7}.tg-intro-media{margin:0;height:min(34vh,340px);overflow:hidden;grid-column:1;grid-row:2/4;border-radius:28px 4px}.tg-intro-media img,.tg-package-media img,.tg-difference-media img{width:100%;height:100%;object-fit:cover;display:block}.tg-intro-note{display:flex;gap:20px;border-top:1px solid var(--line);padding-top:18px}.tg-intro-note p{margin:0;line-height:1.6}
body.home .tg-package-grid{display:grid;grid-template-columns:70px minmax(320px,.82fr) minmax(420px,1.18fr);gap:38px;align-items:center}.tg-package-index{align-self:start;font:600 13px/1 "Space Grotesk"}.tg-package-copy h2{margin:14px 0 24px;font-size:clamp(58px,7.4vw,118px)}.tg-package-copy p{max-width:570px;font-size:17px;line-height:1.7}.tg-package-price{margin:28px 0 20px;font:600 clamp(22px,2vw,32px)/1 "Space Grotesk"}.tg-text-link{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;border-bottom:1px solid;padding-bottom:5px;font-weight:700}.tg-text-link svg{width:15px;height:15px}.tg-package-media{margin:0;height:min(68vh,650px);overflow:hidden;border-radius:4px 38px}
body.home .tg-process .tg-shell{display:grid;gap:60px}.tg-section-head{display:flex;justify-content:space-between;gap:40px}.tg-process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid}.tg-process-card{min-height:240px;padding:22px 26px 10px 0;border-right:1px solid var(--line)}.tg-process-card+.tg-process-card{padding-left:26px}.tg-process-card h3{margin:52px 0 12px;font-size:clamp(26px,2.6vw,42px);letter-spacing:-.04em}.tg-process-card p{margin:0;line-height:1.6}
body.home .tg-difference-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,8vw,120px);align-items:center}.tg-difference-media{margin:0;height:min(67vh,650px);overflow:hidden;border-radius:34px 4px}.tg-difference-copy h2{margin:18px 0 28px}.tg-difference-copy>p{max-width:650px;font-size:17px;line-height:1.75}.tg-rule{margin-top:38px;padding-top:20px;border-top:1px solid;display:flex;justify-content:space-between;font:700 clamp(17px,1.8vw,28px)/1 "Space Grotesk"}.tg-rule strong:last-child{color:var(--red)}
body.home .tg-proof-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw}.tg-proof-title h2{margin-top:18px}.tg-proof-list{border-top:1px solid}.tg-proof-list article{display:grid;grid-template-columns:48px .55fr 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}.tg-proof-list h3,.tg-proof-list p{margin:0}.tg-proof-list p{line-height:1.6}
body.home .tg-contact{text-align:center}.tg-contact h2{margin:18px auto 26px;font-size:clamp(60px,8vw,126px)}.tg-contact p{margin:0 auto 30px;max-width:650px;font-size:18px}.tg-contact-button{display:inline-flex;align-items:center;gap:14px;padding:16px 22px;border-radius:999px;background:var(--ink);color:#fff;text-decoration:none;font-weight:700}.tg-contact-button svg{width:17px;height:17px}
:is(body.home,body.page,body.single-post) .tg-new-footer{height:calc(100svh - var(--hh));min-height:calc(100svh - var(--hh));display:grid;grid-template-rows:1fr auto;scroll-snap-align:start;scroll-snap-stop:always;background:#1f1f1f;color:#fff}.tg-footer-main{display:flex;align-items:center;background:#1f1f1f}.tg-footer-grid{display:grid;grid-template-columns:1.4fr .7fr .9fr;gap:8vw}.tg-footer-brand{color:#fff;text-decoration:none;font-family:"Poppins",sans-serif;font-weight:800;font-size:clamp(42px,6vw,88px);letter-spacing:-.105em}.tg-new-footer p{color:#aaa;line-height:1.7}.tg-new-footer nav,.tg-footer-grid>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.tg-new-footer a{color:#fff;text-decoration:none}.tg-footer-bottom{background:#000;padding:22px 0}.tg-footer-bottom .tg-shell{display:flex;justify-content:space-between;color:#aaa;font-size:10px;letter-spacing:.14em}
body.home .tg-rebuild [data-tg-reveal]{opacity:0;transform:translateY(32px);filter:blur(5px);transition:opacity .7s,transform .85s cubic-bezier(.2,.75,.2,1),filter .7s}.tg-rebuild .is-active [data-tg-reveal]{opacity:1;transform:none;filter:none}.tg-package.is-active .tg-package-media{animation:tgMedia .9s both}.tg-difference.is-active .tg-difference-media{animation:tgClip .95s both}.tg-process.is-active .tg-process-card{animation:tgStep .65s both}.tg-process.is-active .tg-process-card:nth-child(2){animation-delay:.08s}.tg-process.is-active .tg-process-card:nth-child(3){animation-delay:.16s}.tg-process.is-active .tg-process-card:nth-child(4){animation-delay:.24s}@keyframes tgMedia{from{opacity:.2;transform:scale(.96) translateX(28px)}}@keyframes tgClip{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes tgStep{from{opacity:0;transform:translateY(22px)}}
@media(max-width:1180px){body.home .tg-rebuild{--hh:70px}.tg-package-grid{grid-template-columns:50px .9fr 1.1fr}}
@media(max-width:760px){body.home .tg-rebuild{--hh:68px}body.home .tg-shell{width:min(100% - 32px,720px)}body.home .tg-rebuild h2{font-size:clamp(38px,12vw,64px)}body.home .tg-intro-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:14px}.tg-intro-media{grid-column:auto;grid-row:auto;height:25vh}.tg-intro-copy p{font-size:14px;line-height:1.5;margin:0}.tg-intro-note p{font-size:12px}.tg-package-grid{grid-template-columns:1fr;gap:9px}.tg-package-index{display:none}.tg-package-copy h2{margin:7px 0 10px;font-size:clamp(46px,14vw,70px)}.tg-package-copy p{font-size:13px;line-height:1.45;margin:0}.tg-package-price{margin:12px 0;font-size:21px}.tg-package-media{order:-1;height:30vh;border-radius:20px 3px}.tg-text-link{font-size:12px}.tg-process .tg-shell{gap:22px}.tg-section-head{display:block}.tg-section-head h2{margin-top:8px}.tg-process-grid{grid-template-columns:1fr 1fr}.tg-process-card,.tg-process-card+.tg-process-card{min-height:0;padding:12px}.tg-process-card h3{margin:14px 0 5px;font-size:21px}.tg-process-card p{font-size:10px;line-height:1.4}.tg-difference-grid{grid-template-columns:1fr;gap:16px}.tg-difference-media{height:29vh}.tg-difference-copy h2{margin:7px 0 10px}.tg-difference-copy>p{font-size:12px;line-height:1.45;margin:0}.tg-rule{margin-top:13px;padding-top:10px;font-size:13px}.tg-proof-grid{grid-template-columns:1fr;gap:22px}.tg-proof-title h2{margin-top:7px}.tg-proof-list article{grid-template-columns:28px 1fr;padding:11px 0;gap:5px 10px}.tg-proof-list article p{grid-column:2;font-size:11px}.tg-proof-list h3{font-size:18px}.tg-contact h2{font-size:clamp(48px,14vw,72px)}.tg-contact p{font-size:14px}.tg-footer-grid{grid-template-columns:1fr 1fr;gap:24px}.tg-footer-grid>div:first-child{grid-column:1/-1}.tg-footer-brand{font-size:50px}.tg-new-footer p{font-size:11px}.tg-footer-bottom{padding:15px 0}.tg-footer-bottom .tg-shell{font-size:8px}}
@media(prefers-reduced-motion:reduce){body.home .tg-rebuild [data-tg-reveal]{opacity:1;transform:none;filter:none;transition:none}}


/* =========================================================
   v1.4.96 — FULL RUNTIME AUDIT FIX
   Never hide homepage content unless the snap controller has successfully initialized.
   ========================================================= */
body.home .tg-rebuild [data-tg-reveal] {
  opacity: 1;
  transform: none;
  filter: none;
}

html.tg-snap-enhanced body.home .tg-rebuild [data-tg-screen]:not(.is-active) [data-tg-reveal] {
  opacity: 0;
  transform: translate3d(0,28px,0);
  filter: blur(4px);
}

html.tg-snap-enhanced body.home .tg-rebuild [data-tg-screen].is-active [data-tg-reveal] {
  opacity: 1;
  transform: none;
  filter: none;
}

/* Hero + every rebuilt composition is exactly the remaining viewport under sticky header. */
body.home .tg-hero,
body.home .tg-rebuild [data-tg-screen] {
  scroll-snap-align: start;
  scroll-snap-stop: always;
}

@media (min-width:1181px) {
  body.home .tg-rebuild [data-tg-screen] {
    height: calc(100svh - var(--hh));
    min-height: calc(100svh - var(--hh));
    max-height: calc(100svh - var(--hh));
  }
}
@media (min-width:761px) and (max-width:1180px) {
  body.home .tg-rebuild [data-tg-screen] {
    height: calc(100svh - var(--hh));
    min-height: calc(100svh - var(--hh));
    max-height: calc(100svh - var(--hh));
  }
}
@media (max-width:760px) {
  body.home .tg-rebuild [data-tg-screen] {
    height: calc(100svh - var(--hh));
    min-height: calc(100svh - var(--hh));
    max-height: calc(100svh - var(--hh));
  }
}

/* Footer is one complete stop too. */
body.home .tg-rebuild .tg-new-footer {
  overflow: hidden;
}

/* v1.4.97 — premium post-hero redesign. Desktop is composition-led; mobile cards become individual screen stops. */
body.home .tg-premium-rebuild{background:#fff}
body.home .tg-premium-rebuild .tg-screen{background:#fff;color:#0a0a0b}
body.home .tg-premium-rebuild h2{font-family:"Space Grotesk",sans-serif;font-weight:600;letter-spacing:-.065em}
body.home .tg-premium-rebuild h2 em{font-style:normal;color:#e3262e}
.tg-statement-layout{position:relative;height:70vh;display:grid;grid-template-columns:.72fr 1.28fr;grid-template-rows:auto 1fr auto;gap:18px 50px;align-items:start}.tg-statement-number{font-size:10px;font-weight:700;letter-spacing:.16em}.tg-statement-title{z-index:3}.tg-statement-title h2{font-size:clamp(58px,7.7vw,124px)}.tg-statement-image{position:absolute;margin:0;overflow:hidden}.tg-statement-image img{width:100%;height:100%;object-fit:cover}.tg-statement-image-a{right:0;bottom:0;width:38%;height:54%;border-radius:42px 4px 42px 4px}.tg-statement-image-b{left:0;bottom:2%;width:22%;height:32%;border-radius:4px 30px 4px 30px}.tg-statement-copy{grid-column:2;align-self:end;max-width:520px;margin:0 42% 0 0;font-size:16px;line-height:1.65}
.tg-premium-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.tg-premium-head h2{margin-top:8px;font-size:clamp(48px,5.5vw,84px)}.tg-premium-head>p{max-width:350px;margin:0 0 8px;line-height:1.55}.tg-offer-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;align-items:end}.tg-offer-card{position:relative;overflow:hidden;background:#f2f2ef;border:1px solid #ddd;padding:16px;border-radius:4px 28px 4px 28px}.tg-offer-essential{grid-column:1/5;height:48vh}.tg-offer-signature{grid-column:5/9;height:55vh;transform:translateY(-12px)}.tg-offer-bespoke{grid-column:9/13;height:44vh}.tg-offer-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.13em}.tg-offer-card figure{height:calc(100% - 118px);margin:14px 0;overflow:hidden;border-radius:2px 18px}.tg-offer-card img{width:100%;height:100%;object-fit:cover}.tg-offer-bottom{display:flex;justify-content:space-between;align-items:end;gap:10px}.tg-offer-bottom strong{font:600 18px/1 "Space Grotesk"}.tg-offer-bottom p{margin:0;max-width:145px;font-size:10px;text-align:right}
.tg-process-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:center}.tg-process-layout>header h2{margin-top:12px;font-size:clamp(52px,6.2vw,94px)}.tg-process-stack{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tg-process-tile{position:relative;min-height:235px;padding:22px;background:#f4f4f1;border-radius:4px 26px 4px 26px;overflow:hidden}.tg-process-tile:nth-child(2),.tg-process-tile:nth-child(3){background:#111;color:#fff}.tg-process-tile:nth-child(2) h3,.tg-process-tile:nth-child(3) h3,.tg-process-tile:nth-child(2) p,.tg-process-tile:nth-child(3) p{color:#fff}.tg-process-tile b{font-size:10px}.tg-process-tile h3{margin:52px 0 8px;font-size:32px}.tg-process-tile p{max-width:240px;margin:0;font-size:12px;line-height:1.5}.tg-process-tile>span{position:absolute;right:20px;top:18px;font-size:22px}
.tg-exclusive-layout{position:relative;height:68vh;display:grid;grid-template-columns:1.08fr .92fr;gap:7vw;align-items:center}.tg-exclusive-main{height:100%;margin:0;overflow:hidden;border-radius:40px 4px}.tg-exclusive-main img{width:100%;height:100%;object-fit:cover}.tg-exclusive-copy h2{margin:12px 0 24px;font-size:clamp(54px,6.5vw,100px)}.tg-exclusive-copy p{max-width:590px;font-size:16px;line-height:1.7}.tg-exclusive-badge{position:absolute;left:calc(50% - 72px);bottom:26px;width:145px;height:145px;border-radius:50%;background:#e3262e;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-8deg)}.tg-exclusive-badge strong{font:600 42px/1 "Space Grotesk"}.tg-exclusive-badge span{font-size:9px;letter-spacing:.15em;margin-top:6px}
.tg-values-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:42px}.tg-values-head h2{font-size:clamp(54px,6.5vw,100px)}.tg-values-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #111}.tg-values-grid article{min-height:260px;padding:20px 24px;border-right:1px solid #ddd}.tg-values-grid article:first-child{padding-left:0}.tg-values-grid b{font-size:10px}.tg-values-grid h3{margin:64px 0 12px;font-size:25px}.tg-values-grid p{font-size:12px;line-height:1.55}
html.tg-snap-enhanced body.home .tg-premium-rebuild [data-tg-screen]:not(.is-active) [data-tg-reveal]{opacity:1;transform:none;filter:none}
html.tg-snap-enhanced body.home .tg-premium-rebuild [data-tg-screen].is-active [data-tg-reveal]{animation:tgPremiumRise .72s cubic-bezier(.2,.75,.2,1) both}
html.tg-snap-enhanced body.home .tg-premium-rebuild [data-tg-screen].is-active [data-tg-reveal]:nth-child(2){animation-delay:.06s}
html.tg-snap-enhanced body.home .tg-premium-rebuild [data-tg-screen].is-active [data-tg-reveal]:nth-child(3){animation-delay:.12s}
@keyframes tgPremiumRise{from{opacity:0;transform:translateY(26px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@media(max-width:760px){
 .tg-statement-layout{height:auto;display:flex;flex-direction:column;gap:12px}.tg-statement-title h2{font-size:clamp(42px,12vw,62px)}.tg-statement-image{position:relative;inset:auto;width:100%;height:28vh}.tg-statement-image-b{display:none}.tg-statement-copy{margin:0;font-size:13px}
 body.home .tg-offer{height:auto;min-height:0;max-height:none;overflow:visible;display:block;padding:0;border:0}.tg-offer>.tg-shell{width:100%;}.tg-premium-head{height:calc(100svh - 68px);padding:24px 16px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;margin:0;scroll-snap-align:start}.tg-premium-head h2{font-size:clamp(44px,12vw,60px)}.tg-premium-head>p{font-size:13px}
 .tg-offer-grid{display:block}.tg-offer-card,.tg-offer-essential,.tg-offer-signature,.tg-offer-bespoke{width:100%;height:calc(100svh - 68px);transform:none;display:flex;flex-direction:column;justify-content:center;border:0;border-radius:0;padding:16px;scroll-snap-align:start;scroll-snap-stop:always}.tg-offer-card figure{height:48vh;margin:16px 0;border-radius:3px 24px}.tg-offer-bottom strong{font-size:22px}.tg-offer-bottom p{font-size:11px}
 .tg-process-layout{grid-template-columns:1fr;gap:18px}.tg-process-layout>header h2{font-size:clamp(42px,12vw,60px)}.tg-process-stack{grid-template-columns:1fr 1fr;gap:8px}.tg-process-tile{min-height:180px;padding:14px}.tg-process-tile h3{margin:38px 0 6px;font-size:22px}.tg-process-tile p{font-size:10px}
 .tg-exclusive-layout{height:auto;grid-template-columns:1fr;gap:16px}.tg-exclusive-main{height:30vh}.tg-exclusive-copy h2{font-size:clamp(42px,12vw,60px);margin:7px 0 10px}.tg-exclusive-copy p{font-size:12px;line-height:1.45;margin:0}.tg-exclusive-badge{width:92px;height:92px;left:auto;right:8px;bottom:2px}.tg-exclusive-badge strong{font-size:27px}
 .tg-values-head{display:block;margin-bottom:18px}.tg-values-head h2{font-size:clamp(42px,12vw,60px)}.tg-values-grid{grid-template-columns:1fr 1fr}.tg-values-grid article{min-height:165px;padding:12px}.tg-values-grid h3{margin:28px 0 6px;font-size:18px}.tg-values-grid p{font-size:9.5px}
}

/* v1.4.98 — editorial redesign based on user's reference language: large grids, flat fields, minimal radius. */
body.home .tg-temague-editorial{font-family:"Manrope",sans-serif;background:#fff;color:#050505}
body.home .tg-temague-editorial .tg-screen{background:#fff;color:#050505}
body.home .tg-temague-editorial .tg-shell{width:min(100% - 64px,1760px)}
.tg-ed-heading{display:flex;align-items:flex-start;gap:28px;margin-bottom:34px}.tg-ed-heading>span{padding-top:12px;font-size:10px;font-weight:700}.tg-ed-heading h2{font-size:clamp(48px,5.8vw,92px);line-height:.94;margin:0}.tg-ed-heading-light h2,.tg-ed-heading-light>span{color:#fff}
.tg-ed-intro-grid{display:grid;grid-template-columns:1.45fr .55fr;gap:42px;align-items:end}.tg-ed-intro-grid figure{height:46vh;margin:0;overflow:hidden}.tg-ed-intro-grid img,.tg-service-editorial-grid img,.tg-month-grid img,.tg-story-grid img,.tg-careers-grid img{width:100%;height:100%;object-fit:cover;display:block}.tg-ed-intro-grid>div{padding-bottom:4px}.tg-ed-bigcopy{font:600 clamp(28px,3vw,48px)/1.05 "Space Grotesk",sans-serif;color:#050505;margin:0 0 22px}.tg-ed-intro-grid>div>p:not(.tg-ed-bigcopy){font-size:14px;line-height:1.65;max-width:430px}.tg-ed-intro-grid a{display:inline-block;margin-top:22px;padding:15px 0;color:#050505;text-decoration:none;border-bottom:1px solid;font-weight:700;font-size:12px;letter-spacing:.08em}
body.home .tg-services-black,body.home .tg-values-black{background:#050505;color:#fff;border-color:#222}.tg-services-black .tg-shell,.tg-values-black .tg-shell{color:#fff}.tg-service-editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.tg-service-editorial-grid article{color:#fff}.tg-service-editorial-grid figure{height:35vh;margin:0 0 24px;overflow:hidden}.tg-service-editorial-grid article>div>span{font-size:10px;color:#999}.tg-service-editorial-grid h3{color:#fff;margin:8px 0 9px;font-size:clamp(26px,2.3vw,40px);letter-spacing:-.04em}.tg-service-editorial-grid p{color:#bbb;margin:0;line-height:1.55;font-size:12px;max-width:420px}.tg-service-editorial-grid strong{display:block;margin-top:15px;color:#fff;font-size:13px}
.tg-process-editorial .tg-ed-heading{margin-bottom:30px}.tg-month-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5vw}.tg-month-item b{display:block;font:600 clamp(25px,2.2vw,36px)/1 "Space Grotesk";margin-bottom:26px}.tg-month-item figure{height:22vh;margin:0 0 20px;overflow:hidden}.tg-month-item h3{font-size:26px;margin:0 0 8px}.tg-month-item p{font-size:11px;line-height:1.5;min-height:36px;margin:0 0 22px}.tg-month-item>span{display:inline-block;border:1px solid #222;padding:12px 17px;font-size:10px;font-weight:700}
.tg-exclusive-editorial .tg-ed-heading{margin-bottom:24px}.tg-story-grid{width:min(100%,1120px);display:grid;grid-template-columns:1fr;margin:auto}.tg-story-grid article{display:grid;grid-template-columns:1fr 1fr;min-height:23vh;background:#f5f5f3}.tg-story-grid figure{height:23vh;margin:0;overflow:hidden}.tg-story-grid article>div{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px}.tg-story-grid strong{font-size:18px}.tg-story-grid p{font-size:11px;line-height:1.5;max-width:320px}
.tg-values-black .tg-ed-heading{margin-bottom:28px}.tg-careers-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px}.tg-careers-grid figure{height:34vh;margin:0 0 20px;overflow:hidden}.tg-careers-grid h3{color:#fff;font-size:28px;margin:0 0 7px}.tg-careers-grid p{color:#ddd;margin:0;font-size:12px;line-height:1.55}
html.tg-snap-enhanced .tg-temague-editorial [data-tg-screen]:not(.is-active) [data-tg-reveal]{opacity:1;transform:none;filter:none}
html.tg-snap-enhanced .tg-temague-editorial [data-tg-screen].is-active [data-tg-reveal]{animation:tgEditorialIn .62s cubic-bezier(.2,.75,.2,1) both}
.tg-services-black.is-active .tg-service-editorial-grid article:nth-child(2),.tg-month-grid .tg-month-item:nth-child(2),.tg-careers-grid article:nth-child(2){animation-delay:.08s}
.tg-services-black.is-active .tg-service-editorial-grid article:nth-child(3),.tg-month-grid .tg-month-item:nth-child(3){animation-delay:.14s}.tg-month-grid .tg-month-item:nth-child(4){animation-delay:.20s}
@keyframes tgEditorialIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@media(max-width:760px){
 body.home .tg-temague-editorial .tg-shell{width:min(100% - 32px,720px)}
 .tg-ed-heading{gap:12px;margin-bottom:18px}.tg-ed-heading h2{font-size:clamp(40px,12vw,58px)}.tg-ed-heading>span{padding-top:7px}
 .tg-ed-intro-grid{grid-template-columns:1fr;gap:14px}.tg-ed-intro-grid figure{height:29vh}.tg-ed-bigcopy{font-size:27px;margin-bottom:8px}.tg-ed-intro-grid>div>p:not(.tg-ed-bigcopy){font-size:11px;margin:0}.tg-ed-intro-grid a{margin-top:10px;padding:8px 0;font-size:9px}
 body.home .tg-services-black{height:auto;min-height:0;max-height:none;display:block;overflow:visible;padding:0}.tg-services-black>.tg-shell{width:100%}.tg-services-black .tg-ed-heading{height:calc(100svh - 68px);padding:28px 16px;margin:0;display:flex;align-items:center}.tg-service-editorial-grid{display:block}.tg-service-editorial-grid article{height:calc(100svh - 68px);padding:20px 16px;display:flex;flex-direction:column;justify-content:center;scroll-snap-align:start;scroll-snap-stop:always}.tg-service-editorial-grid figure{height:48vh;margin-bottom:18px}.tg-service-editorial-grid h3{font-size:34px}.tg-service-editorial-grid p{font-size:11px}
 body.home .tg-process-editorial{height:auto;min-height:0;max-height:none;display:block;overflow:visible}.tg-process-editorial>.tg-shell{width:100%}.tg-process-editorial .tg-ed-heading{height:calc(100svh - 68px);padding:28px 16px;margin:0;align-items:center}.tg-month-grid{display:block}.tg-month-item{height:calc(100svh - 68px);padding:20px 16px;display:flex;flex-direction:column;justify-content:center;scroll-snap-align:start;scroll-snap-stop:always}.tg-month-item b{margin-bottom:15px}.tg-month-item figure{height:43vh}.tg-month-item h3{font-size:30px}.tg-month-item p{min-height:0}
 .tg-story-grid article{min-height:0}.tg-story-grid figure{height:22vh}.tg-story-grid article>div{padding:16px}.tg-story-grid strong{font-size:13px}.tg-story-grid p{font-size:9px}
 .tg-careers-grid{grid-template-columns:1fr 1fr;gap:10px}.tg-careers-grid figure{height:25vh;margin-bottom:10px}.tg-careers-grid h3{font-size:16px}.tg-careers-grid p{font-size:9px}
}

/* v1.4.99 — functional screen snapping + cleaner premium editorial composition */
html.tg-snap-enhanced,html.tg-native-snap{scroll-behavior:smooth}
body.home .tg-temague-editorial [data-tg-screen],
body.home .tg-hero{scroll-snap-align:start;scroll-snap-stop:always}
body.home .tg-temague-editorial .tg-screen{overflow:hidden}

/* Stronger editorial finish: flatter, sharper, more restrained. */
.tg-temague-editorial .tg-ed-heading{border-top:1px solid currentColor;padding-top:14px}
.tg-temague-editorial .tg-ed-heading h2{max-width:980px}
.tg-temague-editorial .tg-ed-intro-grid figure,
.tg-temague-editorial .tg-service-editorial-grid figure,
.tg-temague-editorial .tg-month-grid figure,
.tg-temague-editorial .tg-story-grid figure,
.tg-temague-editorial .tg-careers-grid figure{border-radius:0}
.tg-temague-editorial .tg-service-editorial-grid article{border-top:1px solid #3a3a3a;padding-top:16px}
.tg-temague-editorial .tg-month-item{border-top:1px solid #111;padding-top:14px}
.tg-temague-editorial .tg-month-item>span{background:transparent}
.tg-temague-editorial .tg-story-grid article{background:#f2f2f0}
.tg-temague-editorial .tg-story-grid article+article{border-top:1px solid #d7d7d3}
.tg-temague-editorial .tg-careers-grid article{border-top:1px solid #3a3a3a;padding-top:16px}

/* Desktop: all multi-item content deliberately fits inside one screen. */
@media(min-width:761px){
 body.home .tg-temague-editorial [data-tg-screen]{
   height:calc(100svh - 80px);
   min-height:calc(100svh - 80px);
   max-height:calc(100svh - 80px);
 }
 .tg-temague-editorial .tg-services-black .tg-service-editorial-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .tg-temague-editorial .tg-process-editorial .tg-month-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* Mobile: large repeated items become individual full-screen stops. */
@media(max-width:760px){
 body.home .tg-temague-editorial [data-tg-screen]:not(.tg-services-black):not(.tg-process-editorial){
   height:calc(100svh - 68px);
   min-height:calc(100svh - 68px);
   max-height:calc(100svh - 68px);
 }
 .tg-temague-editorial .tg-services-black .tg-ed-heading,
 .tg-temague-editorial .tg-service-editorial-grid article,
 .tg-temague-editorial .tg-process-editorial .tg-ed-heading,
 .tg-temague-editorial .tg-month-item{
   height:calc(100svh - 68px);
   min-height:calc(100svh - 68px);
   max-height:calc(100svh - 68px);
   scroll-snap-align:start;
   scroll-snap-stop:always;
 }
}

/* v1.5.0 — CTA showcase: reference-inspired yellow panel with original TEMAGUE SVG device artwork. */
body.home .tg-temague-editorial .tg-showcase-cta{
  background:#fff;
  padding:clamp(24px,3vw,48px) 0;
}
body.home .tg-showcase-cta .tg-showcase-cta-inner{
  position:relative;
  height:min(72vh,650px);
  overflow:hidden;
  display:grid;
  grid-template-columns:.88fr 1.12fr;
  align-items:center;
  background:#ffdc5d;
  border:1px solid rgba(0,0,0,.08);
  border-radius:28px;
  box-shadow:0 8px 24px rgba(0,0,0,.08);
}
.tg-showcase-cta-copy{position:relative;z-index:2;padding:clamp(36px,5vw,82px)}
.tg-showcase-cta-copy>span{display:block;margin-bottom:18px;font-size:10px;font-weight:700;letter-spacing:.16em}
body.home .tg-showcase-cta-copy h2{
  margin:0;
  max-width:690px;
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(54px,6.2vw,100px);
  line-height:.9;
  letter-spacing:-.065em;
  color:#111;
}
.tg-showcase-cta-copy p{max-width:500px;margin:24px 0;color:#111;font-size:15px;line-height:1.55}
.tg-showcase-cta-button{display:inline-flex;align-items:center;gap:12px;padding:14px 19px;border:1px solid #111;color:#111;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.03em;background:#fff}
.tg-showcase-cta-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tg-showcase-cta-art{position:absolute;right:-1%;bottom:-13%;width:58%;height:105%;display:flex;align-items:flex-end;justify-content:flex-end;pointer-events:none}
.tg-device-art{display:block;width:100%;height:100%;overflow:visible}
.tg-showcase-cta.is-active .tg-device-front{animation:tgDeviceFront .8s cubic-bezier(.2,.75,.2,1) both}
.tg-showcase-cta.is-active .tg-device-back-a{animation:tgDeviceLeft .9s cubic-bezier(.2,.75,.2,1) both}
.tg-showcase-cta.is-active .tg-device-back-b{animation:tgDeviceRight .9s cubic-bezier(.2,.75,.2,1) both}
@keyframes tgDeviceFront{from{opacity:0;transform:translate(252px,70px) scale(.96)}to{opacity:1;transform:translate(252px,28px) scale(1)}}
@keyframes tgDeviceLeft{from{opacity:0;transform:translate(110px,130px) rotate(-2deg)}to{opacity:1;transform:translate(76px,104px) rotate(-8deg)}}
@keyframes tgDeviceRight{from{opacity:0;transform:translate(380px,135px) rotate(2deg)}to{opacity:1;transform:translate(414px,110px) rotate(8deg)}}
@media(max-width:760px){
 body.home .tg-temague-editorial .tg-showcase-cta{padding:14px 0}
 body.home .tg-showcase-cta .tg-showcase-cta-inner{height:calc(100svh - 96px);grid-template-columns:1fr;align-items:start;border-radius:20px}
 .tg-showcase-cta-copy{padding:30px 24px 0}
 body.home .tg-showcase-cta-copy h2{font-size:clamp(42px,12vw,60px)}
 .tg-showcase-cta-copy p{font-size:12px;margin:13px 0}
 .tg-showcase-cta-button{padding:11px 14px;font-size:10px}
 .tg-showcase-cta-art{right:-15%;bottom:-12%;width:105%;height:61%}
}

/* v1.5.1 — CTA artwork: exactly one phone + one laptop. */
.tg-showcase-cta-art{right:-2%;bottom:-11%;width:61%;height:106%}
.tg-showcase-cta .tg-device-back,
.tg-showcase-cta .tg-device-front{display:none}
.tg-showcase-cta.is-active .tg-phone-device{animation:tgPhoneOne .82s cubic-bezier(.2,.75,.2,1) both}
.tg-showcase-cta.is-active .tg-laptop-device{animation:tgLaptopOne .9s cubic-bezier(.2,.75,.2,1) both}
@keyframes tgPhoneOne{
 from{opacity:0;transform:translate(90px,82px) rotate(-2deg) scale(.96)}
 to{opacity:1;transform:translate(116px,48px) rotate(-7deg) scale(1)}
}
@keyframes tgLaptopOne{
 from{opacity:0;transform:translate(290px,142px) scale(.96)}
 to{opacity:1;transform:translate(255px,112px) scale(1)}
}
@media(max-width:760px){
 .tg-showcase-cta-art{right:-21%;bottom:-9%;width:118%;height:58%}
}

/* v1.5.2 — typography + premium CTA/device refinement */
body.home .tg-temague-editorial,
body.home .tg-temague-editorial p,
body.home .tg-temague-editorial a,
body.home .tg-temague-editorial span,
body.home .tg-temague-editorial strong,
body.home .tg-temague-editorial b{
  font-family:"Google Sans","Poppins",sans-serif;
}
body.home .tg-temague-editorial h1,
body.home .tg-temague-editorial h2,
body.home .tg-temague-editorial h3,
body.home .tg-temague-editorial h4{
  font-family:"Google Sans","Poppins",sans-serif;
}

/* CTA button uses the same visual language as the existing Hero CTA. */
body.home .tg-showcase-cta-button{
  min-height:48px;
  padding:0 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  color:#000;
  font-family:"Google Sans","Poppins",sans-serif;
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
  text-decoration:none;
  border:1px solid rgba(231,255,161,.96);
  border-radius:999px;
  background:linear-gradient(180deg,#d8ff66 0%,#b9ef38 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62),0 0 0 1px rgba(0,0,0,.14),0 10px 30px rgba(0,0,0,.20),0 0 24px rgba(200,232,74,.18);
}
body.home .tg-showcase-cta-button svg{
  width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;
}

/* More believable product proportions and hierarchy. */
body.home .tg-showcase-cta-art{
  right:-2.5%;
  bottom:-8%;
  width:62%;
  height:101%;
}
body.home .tg-showcase-cta .tg-device-art{width:100%;height:100%}
body.home .tg-showcase-cta.is-active .tg-phone-device{animation:tgPhonePremium52 .82s cubic-bezier(.2,.75,.2,1) both}
body.home .tg-showcase-cta.is-active .tg-laptop-device{animation:tgLaptopPremium52 .92s cubic-bezier(.2,.75,.2,1) both}
@keyframes tgPhonePremium52{
 from{opacity:0;transform:translate(108px,92px) rotate(-2deg) scale(.965)}
 to{opacity:1;transform:translate(128px,62px) rotate(-6deg) scale(1)}
}
@keyframes tgLaptopPremium52{
 from{opacity:0;transform:translate(328px,166px) scale(.97)}
 to{opacity:1;transform:translate(300px,142px) scale(1)}
}
@media(max-width:760px){
 body.home .tg-showcase-cta-art{right:-25%;bottom:-6%;width:124%;height:57%}
 body.home .tg-showcase-cta-button{min-height:44px;padding:0 17px;font-size:11px}
}

/* v1.5.3 — cleaner section hierarchy; typography aligned with the header menu. */
body.home .tg-temague-editorial,
body.home .tg-temague-editorial p,
body.home .tg-temague-editorial a,
body.home .tg-temague-editorial span,
body.home .tg-temague-editorial strong,
body.home .tg-temague-editorial b,
body.home .tg-temague-editorial h1,
body.home .tg-temague-editorial h2,
body.home .tg-temague-editorial h3,
body.home .tg-temague-editorial h4,
body.home .tg-showcase-cta-copy,
body.home .tg-showcase-cta-button{
  font-family:"Poppins",sans-serif;
}
body.home .tg-temague-editorial .tg-ed-heading{
  display:block;
  margin-bottom:20px;
  padding-top:12px;
}
body.home .tg-temague-editorial .tg-ed-heading>span{display:none}
body.home .tg-temague-editorial .tg-ed-heading h2{
  width:100%;
  max-width:none;
  white-space:nowrap;
  font-family:"Poppins",sans-serif;
  font-size:clamp(34px,4vw,64px);
  font-weight:600;
  line-height:1;
  letter-spacing:-.045em;
}
body.home .tg-showcase-cta-copy h2{
  font-family:"Poppins",sans-serif;
}
@media(min-width:761px){
  body.home .tg-temague-editorial .tg-ed-intro-grid figure{height:51vh}
  body.home .tg-temague-editorial .tg-service-editorial-grid figure{height:40vh}
  body.home .tg-temague-editorial .tg-month-item figure{height:27vh}
  body.home .tg-temague-editorial .tg-careers-grid figure{height:39vh}
}
@media(max-width:760px){
  body.home .tg-temague-editorial .tg-ed-heading h2{
    white-space:normal;
    font-size:clamp(34px,10vw,50px);
  }
}

/* v1.5.5 — TEMAGUE angular premium visual system */
:root{--tg-tech-lime:#a8f000;--tg-tech-ink:#0a0d12;--tg-tech-muted:#667080;--tg-tech-line:rgba(10,13,18,.72)}
body.home .tg-temague-editorial{background:#f7f8f8;color:var(--tg-tech-ink)}
body.home .tg-temague-editorial .tg-screen{position:relative;isolation:isolate;background:linear-gradient(122deg,transparent 0 82%,rgba(15,18,23,.025) 82% 84%,transparent 84%),#f8f9f9}
body.home .tg-temague-editorial .tg-screen::after{content:"";position:absolute;z-index:-1;right:-38px;top:10%;width:78px;height:210px;background:linear-gradient(180deg,#c8ff64,var(--tg-tech-lime));transform:skewX(-30deg);opacity:.86}
body.home .tg-angular-shell{position:relative}
body.home .tg-tech-line{height:20px;position:relative;margin:0 0 14px}
body.home .tg-tech-line::before{content:"";position:absolute;left:0;right:7%;top:8px;height:1px;background:var(--tg-tech-line)}
body.home .tg-tech-line::after{content:"";position:absolute;left:0;top:5px;width:140px;height:6px;background:linear-gradient(90deg,var(--tg-tech-lime) 0 78%,transparent 78%);clip-path:polygon(4% 0,100% 0,96% 100%,0 100%)}
body.home .tg-tech-line i{position:absolute;right:5.5%;top:8px;width:245px;height:16px;border-top:1px solid rgba(10,13,18,.45);border-right:1px solid rgba(10,13,18,.45);transform:skewX(42deg)}
body.home .tg-tech-line b{display:none}
body.home .tg-temague-editorial .tg-ed-heading{margin:0 0 22px;padding:0}
body.home .tg-temague-editorial .tg-ed-heading h2,body.home .tg-showcase-cta-copy h2{font-family:"Oxanium","Zalando Sans Expanded",sans-serif;font-style:italic;font-weight:800;letter-spacing:-.055em}
body.home .tg-temague-editorial .tg-ed-heading h2{font-size:clamp(38px,4.7vw,78px);line-height:.94;white-space:nowrap}
body.home .tg-lime-dot{color:var(--tg-tech-lime)}
body.home .tg-editorial-intro .tg-angular-intro{display:grid;grid-template-columns:minmax(0,2.75fr) minmax(300px,.95fr);gap:34px;align-items:stretch}
body.home .tg-editorial-intro .tg-angular-intro>figure{position:relative;height:clamp(350px,52vh,540px);margin:0;overflow:hidden;border-radius:0;clip-path:polygon(3.8% 0,96% 0,100% 11%,96% 100%,86% 100%,84% 96%,3% 96%,0 91%,0 10%);background:#111}
body.home .tg-editorial-intro .tg-angular-intro>figure::after{content:"";position:absolute;inset:auto 0 0 0;height:6px;background:linear-gradient(90deg,var(--tg-tech-lime) 0 15%,transparent 15% 82%,var(--tg-tech-lime) 82% 100%)}
body.home .tg-editorial-intro .tg-angular-intro>figure img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92) contrast(1.08)}
body.home .tg-editorial-intro .tg-angular-intro>div{align-self:center;padding:30px 5% 30px 0;font-family:"Poppins",sans-serif}
body.home .tg-editorial-intro .tg-ed-bigcopy{margin:0 0 20px;font-size:clamp(21px,1.65vw,30px);line-height:1.24;font-weight:500;color:#111927}
body.home .tg-editorial-intro .tg-ed-bigcopy+p{margin:0 0 30px;font-size:clamp(15px,1.18vw,20px);line-height:1.55;color:#687181}
body.home .tg-editorial-intro .tg-angular-intro>div>a{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;min-width:240px;min-height:58px;padding:0 28px;border:1px solid #80c900;border-radius:999px;background:linear-gradient(180deg,#111b18,#050807);color:#fff;text-decoration:none;font-family:"Oxanium","Zalando Sans Expanded",sans-serif;font-size:16px;font-weight:700;letter-spacing:.035em;box-shadow:inset 10px 0 0 var(--tg-tech-lime),0 0 0 2px rgba(168,240,0,.18),0 10px 26px rgba(82,145,0,.18)}
body.home .tg-services-black,body.home .tg-values-black{background:linear-gradient(122deg,transparent 0 83%,rgba(168,240,0,.045) 83% 84%,transparent 84%),#0b0e12;color:#fff}
body.home .tg-services-black .tg-tech-line::before,body.home .tg-values-black .tg-tech-line::before{background:rgba(255,255,255,.55)}
body.home .tg-services-black .tg-tech-line i,body.home .tg-values-black .tg-tech-line i{border-color:rgba(255,255,255,.3)}
body.home .tg-services-black .tg-ed-heading h2,body.home .tg-values-black .tg-ed-heading h2{color:#fff}
body.home .tg-service-editorial-grid article,body.home .tg-careers-grid article,body.home .tg-month-item,body.home .tg-story-grid article{border-radius:0;background:transparent}
body.home .tg-service-editorial-grid figure,body.home .tg-careers-grid figure,body.home .tg-month-item figure,body.home .tg-story-grid figure{overflow:hidden;border-radius:0;clip-path:polygon(4% 0,100% 0,100% 88%,96% 100%,0 100%,0 10%)}
body.home .tg-service-editorial-grid figure img,body.home .tg-careers-grid figure img,body.home .tg-month-item figure img,body.home .tg-story-grid figure img{transition:transform .65s cubic-bezier(.2,.75,.2,1),filter .65s ease}
body.home .tg-service-editorial-grid article:hover figure img,body.home .tg-careers-grid article:hover figure img,body.home .tg-month-item:hover figure img,body.home .tg-story-grid article:hover figure img{transform:scale(1.035);filter:contrast(1.06)}
body.home .tg-service-editorial-grid h3,body.home .tg-month-item h3,body.home .tg-story-grid strong,body.home .tg-careers-grid h3{font-family:"Oxanium","Zalando Sans Expanded",sans-serif;font-weight:700;letter-spacing:-.025em}
body.home .tg-service-editorial-grid article>div,body.home .tg-careers-grid article,body.home .tg-month-item,body.home .tg-story-grid article>div{border-top:2px solid var(--tg-tech-lime)}
body.home .tg-month-item>span{display:inline-flex;width:max-content;padding:8px 14px;border:1px solid currentColor;font-family:"Oxanium","Zalando Sans Expanded",sans-serif;font-size:10px;letter-spacing:.08em}
body.home .tg-story-grid article{gap:28px}
body.home .tg-story-grid article>div{padding-top:22px}
body.home .tg-temague-editorial .tg-showcase-cta{background:#f8f9f9}
body.home .tg-showcase-cta .tg-showcase-cta-inner{border-radius:0;clip-path:polygon(2% 0,98% 0,100% 8%,100% 92%,98% 100%,2% 100%,0 92%,0 8%);border:0;background:linear-gradient(115deg,#d7ff69 0%,#b6f12b 48%,#9ee800 100%)}
@media(min-width:761px){
 body.home .tg-temague-editorial .tg-screen>.tg-shell{padding-top:18px;padding-bottom:18px}
 body.home .tg-service-editorial-grid figure{height:42vh}
 body.home .tg-careers-grid figure{height:41vh}
 body.home .tg-month-item figure{height:29vh}
}
@media(max-width:760px){
 body.home .tg-tech-line{margin-bottom:10px}
 body.home .tg-tech-line::after{width:92px}
 body.home .tg-tech-line i{width:100px}
 body.home .tg-temague-editorial .tg-ed-heading h2{white-space:normal;font-size:clamp(32px,10vw,48px)}
 body.home .tg-editorial-intro .tg-angular-intro{grid-template-columns:1fr;gap:18px}
 body.home .tg-editorial-intro .tg-angular-intro>figure{height:42vh}
 body.home .tg-editorial-intro .tg-angular-intro>div{padding:0 4px}
 body.home .tg-editorial-intro .tg-ed-bigcopy{font-size:18px}
 body.home .tg-editorial-intro .tg-ed-bigcopy+p{font-size:13px;margin-bottom:18px}
 body.home .tg-editorial-intro .tg-angular-intro>div>a{min-height:48px;min-width:205px;font-size:13px}
 body.home .tg-temague-editorial .tg-screen::after{width:38px;height:110px}
}

/* v1.5.6 — cleaner image geometry + rounded CTA frame + contrasting CTA action */
body.home .tg-editorial-intro .tg-angular-intro>figure,
body.home .tg-service-editorial-grid figure,
body.home .tg-month-item figure,
body.home .tg-story-grid figure,
body.home .tg-careers-grid figure{
  clip-path:none;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(12,16,22,.12);
  box-shadow:0 10px 30px rgba(11,15,20,.08);
}
body.home .tg-services-black .tg-service-editorial-grid figure,
body.home .tg-values-black .tg-careers-grid figure{
  border-color:rgba(255,255,255,.14);
  box-shadow:0 12px 32px rgba(0,0,0,.22);
}
body.home .tg-editorial-intro .tg-angular-intro>figure::after{
  left:18px;
  right:18px;
  bottom:0;
  height:4px;
  border-radius:4px 4px 0 0;
}
body.home .tg-editorial-intro .tg-angular-intro>figure img,
body.home .tg-service-editorial-grid figure img,
body.home .tg-month-item figure img,
body.home .tg-story-grid figure img,
body.home .tg-careers-grid figure img{
  border-radius:inherit;
}

/* CTA section frame: deliberately softer than the angular content cards. */
body.home .tg-showcase-cta .tg-showcase-cta-inner{
  clip-path:none;
  border-radius:30px;
  overflow:hidden;
  border:1px solid rgba(12,16,22,.10);
  box-shadow:0 14px 42px rgba(20,25,20,.12);
}

/* CTA button is no longer green: dark graphite + warm orange accent. */
body.home .tg-showcase-cta-button{
  color:#fff;
  border:1px solid rgba(255,255,255,.20);
  background:linear-gradient(180deg,#24272c 0%,#08090b 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 0 0 1px rgba(0,0,0,.22),0 12px 30px rgba(0,0,0,.22);
}
body.home .tg-showcase-cta-button svg{color:#ff8a34}
@media(max-width:760px){
 body.home .tg-editorial-intro .tg-angular-intro>figure,
 body.home .tg-service-editorial-grid figure,
 body.home .tg-month-item figure,
 body.home .tg-story-grid figure,
 body.home .tg-careers-grid figure{border-radius:14px}
 body.home .tg-showcase-cta .tg-showcase-cta-inner{border-radius:22px}
}

/* Footer structure and interaction */
:is(body.home,body.page,body.single-post) .tg-new-footer{grid-template-rows:.70fr auto}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-main{min-height:0;padding:14px 0 8px}
:is(body.home,body.page,body.single-post) .tg-footer-grid{align-items:start}
:is(body.home,body.page,body.single-post) .tg-footer-about p{max-width:430px;margin-bottom:0}
:is(body.home,body.page,body.single-post) .tg-footer-socials{display:flex;align-items:center;gap:10px;margin-top:18px}
:is(body.home,body.page,body.single-post) .tg-footer-socials a{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.22);border-radius:50%;color:#fff;transition:transform .2s ease,border-color .2s ease,background-color .2s ease}
:is(body.home,body.page,body.single-post) .tg-footer-socials a:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.52);background:rgba(255,255,255,.07)}
:is(body.home,body.page,body.single-post) .tg-footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
:is(body.home,body.page,body.single-post) .tg-footer-contact>a,:is(body.home,body.page,body.single-post) .tg-footer-location{display:flex;align-items:center;gap:10px;color:#fff}
:is(body.home,body.page,body.single-post) .tg-footer-contact i{width:18px;text-align:center;font-size:15px}
:is(body.home,body.page,body.single-post) .tg-footer-contact p{margin:2px 0 0}
:is(body.home,body.page,body.single-post) .tg-footer-bottom{padding:34px 0}
:is(body.home,body.page,body.single-post) .tg-footer-bottom .tg-shell{align-items:center;gap:24px}
:is(body.home,body.page,body.single-post) .tg-footer-legal{display:flex;flex-direction:row;align-items:center;gap:24px}
:is(body.home,body.page,body.single-post) .tg-footer-legal a{color:#aaa;text-decoration:none;white-space:nowrap}
:is(body.home,body.page,body.single-post) .tg-footer-legal a:hover{color:#fff}
@media(max-width:760px){
 :is(body.home,body.page,body.single-post) .tg-new-footer{grid-template-rows:1fr auto}
 :is(body.home,body.page,body.single-post) .tg-footer-main{padding:18px 0 12px}
 :is(body.home,body.page,body.single-post) .tg-footer-bottom{padding:20px 0}
 :is(body.home,body.page,body.single-post) .tg-footer-bottom .tg-shell{align-items:flex-start;gap:12px;flex-direction:column}
 :is(body.home,body.page,body.single-post) .tg-footer-legal{gap:14px;flex-wrap:wrap}
}

/* v1.6.2 — footer proportion repair
   Footer is content-height, not a forced full viewport. */
body.home .tg-temague-editorial>.tg-new-footer{
  height:auto;
  min-height:0;
  max-height:none;
  display:block;
  overflow:visible;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-main{
  height:auto;
  min-height:0;
  padding:34px 0 26px;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-grid{
  min-height:0;
  align-items:start;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-bottom{
  height:auto;
  min-height:0;
  padding:22px 0;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-bottom .tg-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-legal{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:26px;
  margin:0;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-legal a{
  display:inline-block;
  width:auto;
  margin:0;
  padding:0;
}
@media(max-width:760px){
 body.home .tg-temague-editorial>.tg-new-footer{
   height:auto;
   min-height:0;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-main{padding:28px 0 24px}
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-bottom{padding:18px 0}
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-bottom .tg-shell{
   flex-direction:column;
   align-items:flex-start;
   gap:12px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-legal{
   justify-content:flex-start;
   gap:16px;
   flex-wrap:wrap;
 }
}

/* Footer alignment, section contrast and screen fit */

/* Legal row: true vertical centering with copyright. */
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-bottom .tg-shell{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
}
:is(body.home,body.page,body.single-post) .tg-footer-copyright,
:is(body.home,body.page,body.single-post) .tg-footer-legal,
:is(body.home,body.page,body.single-post) .tg-footer-legal a{
  line-height:1.35;
}
:is(body.home,body.page,body.single-post) .tg-footer-legal{
  align-self:center;
}

/* Social icons: standard circular buttons, left aligned; remove stray decorative line. */
:is(body.home,body.page,body.single-post) .tg-footer-about{
  text-align:left;
}
:is(body.home,body.page,body.single-post) .tg-footer-about::before,
:is(body.home,body.page,body.single-post) .tg-footer-about::after,
:is(body.home,body.page,body.single-post) .tg-footer-socials::before,
:is(body.home,body.page,body.single-post) .tg-footer-socials::after{
  content:none;
  display:none;
}
:is(body.home,body.page,body.single-post) .tg-footer-socials{
  width:auto;
  margin:18px 0 0;
  padding:0;
  justify-content:flex-start;
  align-self:flex-start;
}
:is(body.home,body.page,body.single-post) .tg-footer-socials a{
  box-sizing:border-box;
  flex:0 0 38px;
  width:38px;
  height:38px;
  min-width:38px;
  min-height:38px;
  padding:0;
  margin:0;
  border:1px solid rgba(255,255,255,.28);
  border-radius:50%;
  line-height:1;
}
:is(body.home,body.page,body.single-post) .tg-footer-socials a i{
  width:auto;
  line-height:1;
}

/* Remove the extra line sitting immediately above section titles.
   The main technical line with the lime segment remains. */
body.home .tg-temague-editorial .tg-ed-heading{
  border-top:0;
}
body.home .tg-temague-editorial .tg-ed-heading::before,
body.home .tg-temague-editorial .tg-ed-heading::after{
  content:none;
  display:none;
}

/* Light sections: force readable dark headings/body. */
body.home .tg-services-black{
  background:#f8f9f9;
  color:#0a0d12;
}
body.home .tg-services-black .tg-ed-heading h2,
body.home .tg-services-black .tg-service-editorial-grid h3,
body.home .tg-services-black .tg-service-editorial-grid p,
body.home .tg-services-black .tg-service-editorial-grid span{
  color:#0a0d12;
}
body.home .tg-values-black{
  background:#f8f9f9;
  color:#0a0d12;
}
body.home .tg-values-black .tg-ed-heading h2,
body.home .tg-values-black .tg-careers-grid h3,
body.home .tg-values-black .tg-careers-grid p,
body.home .tg-values-black .tg-careers-grid span{
  color:#0a0d12;
}

/* Main black + lime technical rule must remain fully visible. */
body.home .tg-services-black .tg-tech-line::before,
body.home .tg-values-black .tg-tech-line::before{
  background:#111820;
  opacity:1;
}
body.home .tg-services-black .tg-tech-line i,
body.home .tg-values-black .tg-tech-line i{
  border-color:#111820;
  opacity:1;
}
body.home .tg-services-black .tg-tech-line b,
body.home .tg-values-black .tg-tech-line b{
  opacity:1;
}

/* Desktop: reserve enough room for the technical rule + heading.
   Slightly reduce media so each section remains inside one screen. */
@media(min-width:761px){
 body.home .tg-services-black .tg-service-editorial-grid figure{height:min(29vh,300px)}
 body.home .tg-process-editorial .tg-month-item figure{height:min(21vh,215px)}
 body.home .tg-exclusive-editorial .tg-story-grid figure{max-height:min(25vh,260px)}
 body.home .tg-values-black .tg-careers-grid figure{height:min(29vh,300px)}
 body.home .tg-temague-editorial .tg-tech-line{margin-top:0;margin-bottom:10px}
 body.home .tg-temague-editorial .tg-ed-heading{margin-top:0;margin-bottom:14px}
}

/* Mobile: every individual card/item becomes its own viewport stop. */
@media(max-width:760px){
 body.home .tg-services-black .tg-ed-heading,
 body.home .tg-process-editorial .tg-ed-heading{
   min-height:calc(100svh - 68px);
   display:flex;
   flex-direction:column;
   justify-content:center;
 }
 body.home .tg-services-black .tg-service-editorial-grid>article,
 body.home .tg-process-editorial .tg-month-grid>.tg-month-item{
   min-height:calc(100svh - 68px);
   height:calc(100svh - 68px);
   box-sizing:border-box;
   display:flex;
   flex-direction:column;
   justify-content:center;
   overflow:hidden;
   scroll-snap-align:start;
   scroll-snap-stop:always;
 }
 body.home .tg-services-black .tg-service-editorial-grid>article figure,
 body.home .tg-process-editorial .tg-month-grid>.tg-month-item figure{
   flex:0 0 auto;
   max-height:44vh;
 }
 :is(body.home,body.page,body.single-post) .tg-footer-bottom .tg-shell{
   flex-direction:column;
   align-items:flex-start;
 }
}

/* Section action and footer typography */
body.home .tg-editorial-intro .tg-angular-intro>div>a{min-width:210px;min-height:54px;padding:0 9px 0 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid rgba(11,14,18,.14);border-radius:999px;background:linear-gradient(180deg,#171b20 0%,#080a0d 100%);color:#fff;box-shadow:0 12px 28px rgba(10,13,18,.14),inset 0 1px 0 rgba(255,255,255,.13);letter-spacing:.025em;text-decoration:none}
body.home .tg-editorial-intro .tg-angular-intro>div>a::after{content:"↗";width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;margin:0;border-radius:50%;background:#d5fb57;color:#0a0d12;font-size:16px;font-weight:700;box-shadow:none}
body.home .tg-editorial-intro .tg-angular-intro>div>a:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(10,13,18,.18),inset 0 1px 0 rgba(255,255,255,.15)}
:is(body.home,body.page,body.single-post) .tg-footer-about,:is(body.home,body.page,body.single-post) .tg-footer-about p,:is(body.home,body.page,body.single-post) .tg-footer-socials{border-left:0}
:is(body.home,body.page,body.single-post) .tg-footer-about::before,:is(body.home,body.page,body.single-post) .tg-footer-about::after,:is(body.home,body.page,body.single-post) .tg-footer-about p::before,:is(body.home,body.page,body.single-post) .tg-footer-about p::after,:is(body.home,body.page,body.single-post) .tg-footer-socials::before,:is(body.home,body.page,body.single-post) .tg-footer-socials::after{content:none;display:none}
:is(body.home,body.page,body.single-post) .tg-new-footer{font-family:"Poppins",sans-serif}
:is(body.home,body.page,body.single-post) .tg-footer-brand{font-size:clamp(34px,3.2vw,54px);line-height:1;font-weight:700;letter-spacing:-.045em}
:is(body.home,body.page,body.single-post) .tg-footer-about>p{margin-top:20px;font-size:15px;line-height:1.65;font-weight:400}
:is(body.home,body.page,body.single-post) .tg-footer-explore>span,:is(body.home,body.page,body.single-post) .tg-footer-contact>span{display:block;margin-bottom:14px;font-size:12px;line-height:1.3;font-weight:700;letter-spacing:.12em}
:is(body.home,body.page,body.single-post) .tg-footer-explore a,:is(body.home,body.page,body.single-post) .tg-footer-contact a,:is(body.home,body.page,body.single-post) .tg-footer-location,:is(body.home,body.page,body.single-post) .tg-footer-contact p{font-size:14px;line-height:1.5;font-weight:400}
:is(body.home,body.page,body.single-post) .tg-footer-explore{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
:is(body.home,body.page,body.single-post) .tg-footer-explore>span{margin-bottom:4px}
:is(body.home,body.page,body.single-post) .tg-footer-contact{gap:10px}
:is(body.home,body.page,body.single-post) .tg-footer-socials{justify-content:flex-start;margin-left:0}
:is(body.home,body.page,body.single-post) .tg-footer-copyright,:is(body.home,body.page,body.single-post) .tg-footer-legal a{font-size:12px;line-height:1.4;font-weight:400;letter-spacing:.03em}

/* Responsive safeguards */

/* Section 1 CTA: exactly one premium arrow, drawn with CSS rather than a text glyph. */
body.home .tg-editorial-intro .tg-angular-intro>div>a::after{
  content:"";
  width:36px;height:36px;flex:0 0 36px;border-radius:50%;
  background-color:#d5fb57;
  background-image:
    linear-gradient(45deg,transparent 46%,#0a0d12 47%,#0a0d12 54%,transparent 55%),
    linear-gradient(#0a0d12,#0a0d12),
    linear-gradient(#0a0d12,#0a0d12);
  background-size:14px 14px,8px 2px,2px 8px;
  background-position:center,calc(50% + 3px) calc(50% - 4px),calc(50% + 6px) calc(50% - 1px);
  background-repeat:no-repeat;
}


/* Mobile: remove desktop transforms/offsets that can throw content outside viewport. */
@media(max-width:760px){
 body.home .tg-temague-editorial,
 body.home .tg-temague-editorial>.tg-screen,
 body.home .tg-temague-editorial>.tg-screen>.tg-shell,
 body.home .tg-temague-editorial .tg-angular-intro,
 body.home .tg-temague-editorial .tg-service-editorial-grid,
 body.home .tg-temague-editorial .tg-month-grid,
 body.home .tg-temague-editorial .tg-story-grid,
 body.home .tg-temague-editorial .tg-careers-grid{
   width:100%;
   max-width:100%;
   margin-left:0;
   margin-right:0;
   transform:none;
   translate:none;
   box-sizing:border-box;
 }
 body.home .tg-temague-editorial>.tg-screen>.tg-shell{
   width:min(91vw,680px);
   margin-left:auto;
   margin-right:auto;
   padding-left:0;
   padding-right:0;
   overflow:visible;
 }

 /* Section 1: complete composition fits instead of being clipped. */
 body.home .tg-editorial-intro{
   min-height:calc(100svh - 68px);
   height:auto;
   max-height:none;
   overflow:visible;
 }
 body.home .tg-editorial-intro .tg-angular-heading h2{
   font-size:clamp(34px,10vw,52px);
   line-height:.96;
 }
 body.home .tg-editorial-intro .tg-angular-intro{
   display:grid;
   grid-template-columns:1fr;
   gap:18px;
 }
 body.home .tg-editorial-intro .tg-angular-intro>figure{
   width:100%;
   height:30svh;
   min-height:210px;
   max-height:290px;
 }
 body.home .tg-editorial-intro .tg-angular-intro>div{
   width:100%;
   padding:0;
 }

 /* Services: heading plus every card is an actual vertical stop and always in viewport. */
 body.home .tg-services-black{
   height:auto;
   max-height:none;
   overflow:visible;
 }
 body.home .tg-services-black .tg-service-editorial-grid{
   display:block;
 }
 body.home .tg-services-black .tg-service-editorial-grid>article{
   width:100%;
   min-width:0;
   max-width:100%;
   height:calc(100svh - 68px);
   min-height:calc(100svh - 68px);
   margin:0;
   padding:18px 0;
   display:flex;
   flex-direction:column;
   justify-content:center;
   box-sizing:border-box;
   overflow:hidden;
 }
 body.home .tg-services-black .tg-service-editorial-grid>article figure{
   width:100%;
   height:min(42svh,380px);
   max-height:42svh;
 }

 /* How It Works: remove horizontal grid/slider behavior; stack cards vertically. */
 body.home .tg-process-editorial{
   height:auto;
   max-height:none;
   overflow:visible;
 }
 body.home .tg-process-editorial .tg-month-grid{
   display:block;
 }
 body.home .tg-process-editorial .tg-month-grid>.tg-month-item{
   width:100%;
   min-width:0;
   max-width:100%;
   height:calc(100svh - 68px);
   min-height:calc(100svh - 68px);
   margin:0;
   padding:18px 0;
   display:flex;
   flex-direction:column;
   justify-content:center;
   box-sizing:border-box;
   overflow:hidden;
 }
 body.home .tg-process-editorial .tg-month-item figure{
   width:100%;
   height:min(42svh,380px);
   max-height:42svh;
   flex:0 0 auto;
 }

 /* Remaining editorial sections: no side overflow. */
 body.home .tg-exclusive-editorial,
 body.home .tg-values-black{
   height:auto;
   max-height:none;
   overflow:visible;
 }
 body.home .tg-exclusive-editorial .tg-story-grid,
 body.home .tg-values-black .tg-careers-grid{
   grid-template-columns:1fr;
 }

 /* CTA: scale device art down so laptop/phone stay inside rounded frame. */
 body.home .tg-contact-screen{
   height:auto;
   min-height:calc(100svh - 68px);
   max-height:none;
   overflow:visible;
 }
 body.home .tg-contact-screen>.tg-showcase-cta-inner{
   width:min(91vw,680px);
   height:auto;
   min-height:calc(100svh - 96px);
   max-height:none;
   padding:28px 20px 20px;
   display:flex;
   flex-direction:column;
   justify-content:center;
   overflow:hidden;
 }
 body.home .tg-showcase-cta-copy{
   width:100%;
   position:relative;
   z-index:2;
 }
 body.home .tg-showcase-cta-art{
   width:100%;
   height:auto;
   min-height:0;
   margin-top:12px;
   overflow:visible;
 }
 body.home .tg-device-art{
   display:block;
   width:88%;
   height:auto;
   max-height:38svh;
   margin:0 auto;
   transform:none;
 }

 /* Footer: simple vertical flow, consistent left edge, no collisions. */
 :is(body.home,body.page,body.single-post) .tg-new-footer{
   height:auto;
   min-height:0;
   max-height:none;
   overflow:visible;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-main{
   height:auto;
   padding:32px 0 26px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-grid{
   display:grid;
   grid-template-columns:1fr;
   gap:28px;
   width:min(91vw,680px);
   margin:0 auto;
 }
 :is(body.home,body.page,body.single-post) .tg-footer-about,
 :is(body.home,body.page,body.single-post) .tg-footer-explore,
 :is(body.home,body.page,body.single-post) .tg-footer-contact{
   width:100%;
   margin:0;
   padding:0;
   align-items:flex-start;
   text-align:left;
 }
 :is(body.home,body.page,body.single-post) .tg-footer-socials{
   width:auto;
   justify-content:flex-start;
   margin:16px 0 0;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-bottom .tg-shell{
   width:min(91vw,680px);
   margin:0 auto;
   flex-direction:column;
   align-items:flex-start;
   justify-content:flex-start;
   gap:12px;
 }
 :is(body.home,body.page,body.single-post) .tg-footer-legal{
   justify-content:flex-start;
   gap:14px;
   flex-wrap:wrap;
 }
}

/* Workflow and device presentation */

/* Section 1: exactly one arrow. Neutralize any legacy pseudo icon then draw one clean NE arrow. */
body.home .tg-editorial-intro .tg-angular-intro>div>a{
  position:relative;
  padding-right:58px;
}
body.home .tg-editorial-intro .tg-angular-intro>div>a::before{
  content:none;
  display:none;
}
body.home .tg-editorial-intro .tg-angular-intro>div>a::after{
  content:"";
  position:absolute;
  right:9px;
  top:50%;
  width:36px;
  height:36px;
  margin-top:-18px;
  border-radius:50%;
  background:#d5fb57;
}
body.home .tg-editorial-intro .tg-angular-intro>div>a span::before,
body.home .tg-editorial-intro .tg-angular-intro>div>a span::after{
  content:none;
  display:none;
}
body.home .tg-editorial-intro .tg-angular-intro>div>a::after{
  background-color:#d5fb57;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 17L17 7M9 7h8v8' fill='none' stroke='%230a0d12' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size:18px 18px;
  background-position:center;
  background-repeat:no-repeat;
}

/* How It Works is now a connected workflow, not a photo/card gallery. */
body.home .tg-workflow{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  padding:34px 0 12px;
}
body.home .tg-workflow-rail{
  position:absolute;
  left:10%;
  right:10%;
  top:76px;
  height:2px;
  background:#cbd0d5;
}
body.home .tg-workflow-rail span{
  display:block;
  width:100%;
  height:100%;
  background:linear-gradient(90deg,#d5fb57 0 72%,#3775ef 100%);
  transform-origin:left center;
}
body.home .tg-workflow-step{
  position:relative;
  z-index:1;
  min-width:0;
  padding:0 18px;
  text-align:center;
}
body.home .tg-workflow-node{
  width:86px;
  height:86px;
  margin:0 auto 26px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(10,13,18,.13);
  border-radius:24px;
  background:linear-gradient(145deg,#fff,#e8ebef);
  box-shadow:0 16px 30px rgba(10,13,18,.10),inset 0 1px 0 #fff;
}
body.home .tg-workflow-node>span{
  position:absolute;
  top:-10px;
  right:-9px;
  min-width:30px;
  height:30px;
  padding:0 7px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#111820;
  color:#fff;
  font-size:11px;
  font-weight:700;
}
body.home .tg-workflow-node>i{
  font-size:29px;
  color:#111820;
}
body.home .tg-workflow-step:nth-of-type(5) .tg-workflow-node{
  background:linear-gradient(145deg,#d5fb57,#aeea31);
}
body.home .tg-workflow-copy h3{
  margin:0 0 10px;
  font-size:19px;
  font-style:normal;
  font-weight:700;
}
body.home .tg-workflow-copy p{
  max-width:260px;
  margin:0 auto;
  color:#606873;
  font-size:14px;
  line-height:1.65;
}

/* Device composition: preserve aspect and physical continuity. */
body.home .tg-device-art{
  overflow:visible;
}
body.home .tg-laptop-device,
body.home .tg-phone-device{
  transform-box:fill-box;
  transform-origin:center;
}

/* Mobile workflow: each step is one full screen stop and rail becomes vertical. */
@media(max-width:760px){
 body.home .tg-process-editorial .tg-shell{
   width:100%;
 }
 body.home .tg-process-editorial .tg-tech-line,
 body.home .tg-process-editorial .tg-ed-heading{
   width:91vw;
   margin-left:auto;
   margin-right:auto;
 }
 body.home .tg-workflow{
   display:block;
   width:100%;
   padding:0;
 }
 body.home .tg-workflow-rail{
   display:none;
 }
 body.home .tg-workflow-step{
   width:91vw;
   height:calc(100svh - 68px);
   min-height:calc(100svh - 68px);
   margin:0 auto;
   padding:22px 7vw;
   display:flex;
   flex-direction:column;
   align-items:center;
   justify-content:center;
   box-sizing:border-box;
   text-align:center;
   scroll-snap-align:start;
   scroll-snap-stop:always;
 }
 body.home .tg-workflow-node{
   width:104px;
   height:104px;
   margin-bottom:30px;
   border-radius:28px;
 }
 body.home .tg-workflow-node>i{font-size:34px}
 body.home .tg-workflow-copy h3{font-size:24px}
 body.home .tg-workflow-copy p{max-width:330px;font-size:15px}
 body.home .tg-showcase-cta-art{display:flex;align-items:center;justify-content:center}
 body.home .tg-device-art{
   width:82%;
   max-width:480px;
   max-height:35svh;
   margin:8px auto 0;
 }
}

/* Final responsive layout */

/* FOOTER DESKTOP/TABLET
   Gray area deliberately roomier; black strip remains compact. */
:is(body.home,body.page,body.single-post) .tg-new-footer{
  height:auto;
  min-height:0;
  max-height:none;
  display:block;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-main{
  min-height:0;
  padding:clamp(62px,8vh,94px) 0;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-bottom{
  min-height:0;
  padding:24px 0;
}
:is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-bottom .tg-shell{
  min-height:24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  justify-content:stretch;
  column-gap:40px;
}
:is(body.home,body.page,body.single-post) .tg-footer-copyright{
  display:flex;
  align-items:center;
  min-height:24px;
  margin:0;
}
:is(body.home,body.page,body.single-post) .tg-footer-legal{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:flex-end;
  align-self:center;
  gap:24px;
  min-height:24px;
  margin:0;
  padding:0;
}
:is(body.home,body.page,body.single-post) .tg-footer-legal a{
  display:inline-flex;
  align-items:center;
  height:24px;
  margin:0;
  padding:0;
  line-height:24px;
}

/* SECTION 1: there is now only one arrow source: this lime circle. */
body.home .tg-editorial-intro .tg-angular-intro>div>a{
  gap:0;
}
body.home .tg-editorial-intro .tg-angular-intro>div>a>span,
body.home .tg-editorial-intro .tg-angular-intro>div>a>svg{
  display:none;
}

/* Mobile layout is consolidated after all base component rules. */

/* Current typography system below hero */
body.home .tg-temague-editorial{
  font-family:"Noto Sans",sans-serif;
}
body.home .tg-temague-editorial .tg-ed-heading h2,
body.home .tg-temague-editorial .tg-angular-heading h2{
  font-family:"Poppins",sans-serif;
}
body.home .tg-temague-editorial p,
body.home .tg-temague-editorial .tg-ed-bigcopy,
body.home .tg-temague-editorial .tg-workflow-copy p,
body.home .tg-temague-editorial .tg-footer-about>p,
body.home .tg-temague-editorial .tg-footer-contact p{
  font-family:"Noto Sans",sans-serif;
}


/* v1.6.9 — audited typography ownership */
body.home .tg-temague-editorial .tg-ed-heading h2,
body.home .tg-temague-editorial .tg-angular-heading h2{
  font-family:"Poppins",sans-serif;
}
body.home .tg-temague-editorial p,
body.home .tg-temague-editorial .tg-ed-bigcopy,
body.home .tg-temague-editorial .tg-workflow-copy p{
  font-family:"Noto Sans",sans-serif;
}

/* v1.7.0 — Latest Posts band above the existing footer */
body.home .tg-latest-posts{
  background:#f4f5f3;
  color:#0a0d12;
  border-top:1px solid rgba(10,13,18,.10);
}
body.home .tg-latest-posts-shell{
  min-height:clamp(210px,27vh,300px);
  padding-top:28px;
  padding-bottom:28px;
  display:grid;
  grid-template-columns:minmax(210px,.72fr) minmax(0,2.28fr);
  align-items:center;
  gap:clamp(34px,5vw,80px);
  box-sizing:border-box;
}
body.home .tg-latest-posts-head>span{
  display:block;
  margin-bottom:9px;
  font-family:"Noto Sans",sans-serif;
  font-size:10px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.16em;
}
body.home .tg-latest-posts-head h2{
  margin:0;
  font-family:"Poppins",sans-serif;
  font-size:clamp(28px,3.2vw,48px);
  line-height:.98;
  font-weight:700;
  letter-spacing:-.045em;
}
body.home .tg-latest-posts-list{
  border-top:1px solid #111820;
}
body.home .tg-latest-post-item{
  min-height:56px;
  display:grid;
  grid-template-columns:100px minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  border-bottom:1px solid rgba(10,13,18,.16);
}
body.home .tg-latest-post-item time{
  font-family:"Noto Sans",sans-serif;
  font-size:10px;
  line-height:1.3;
  font-weight:600;
  letter-spacing:.08em;
  color:#68707a;
  text-transform:uppercase;
}
body.home .tg-latest-post-item h3{
  margin:0;
  min-width:0;
  font-family:"Poppins",sans-serif;
  font-size:clamp(14px,1.35vw,18px);
  line-height:1.25;
  font-weight:600;
}
body.home .tg-latest-post-item h3 a{
  color:inherit;
  text-decoration:none;
}
body.home .tg-latest-post-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#0a0d12;
  font-family:"Noto Sans",sans-serif;
  font-size:10px;
  line-height:1;
  font-weight:700;
  letter-spacing:.06em;
  text-decoration:none;
  text-transform:uppercase;
}
body.home .tg-latest-post-link span{
  width:24px;
  height:24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#d5fb57;
  font-size:12px;
}
body.home .tg-latest-post-item h3 a:hover,
body.home .tg-latest-post-link:hover{
  opacity:.62;
}

/* Latest Posts + the unchanged footer form the final desktop viewport composition. */
@media(min-width:761px){
 body.home .tg-latest-posts{
   min-height:clamp(210px,27vh,300px);
 }
}

/* Compact, readable mobile list without disturbing footer dimensions. */
@media(max-width:760px){
 body.home .tg-latest-posts{
   height:auto;
   min-height:0;
 }
 body.home .tg-latest-posts-shell{
   width:calc(100% - 36px);
   min-height:0;
   margin:0 auto;
   padding:30px 0;
   display:block;
 }
 body.home .tg-latest-posts-head{
   margin-bottom:24px;
 }
 body.home .tg-latest-posts-head h2{
   font-size:34px;
 }
 body.home .tg-latest-post-item{
   min-height:0;
   padding:15px 0;
   grid-template-columns:1fr auto;
   grid-template-areas:"date link" "title title";
   gap:8px 14px;
 }
 body.home .tg-latest-post-item time{grid-area:date}
 body.home .tg-latest-post-item h3{grid-area:title;font-size:15px}
 body.home .tg-latest-post-link{grid-area:link}
}

/* v1.7.1 — final-screen composition fix
   Latest Posts is intentionally the compact remainder above the existing footer. */
@media(min-width:761px){
 body.home .tg-latest-posts{
   height:clamp(118px,16vh,155px);
   min-height:0;
   max-height:155px;
   overflow:hidden;
 }
 body.home .tg-latest-posts-shell{
   height:100%;
   min-height:0;
   padding-top:14px;
   padding-bottom:14px;
   grid-template-columns:minmax(190px,.62fr) minmax(0,2.38fr);
   gap:clamp(28px,4vw,64px);
 }
 body.home .tg-latest-posts-head>span{
   margin-bottom:5px;
   font-size:9px;
 }
 body.home .tg-latest-posts-head h2{
   font-size:clamp(23px,2.5vw,36px);
 }
 body.home .tg-latest-posts-list{
   min-width:0;
 }
 body.home .tg-latest-post-item{
   min-height:0;
   height:38px;
   grid-template-columns:86px minmax(0,1fr) auto;
   gap:14px;
 }
 body.home .tg-latest-post-item time,
 body.home .tg-latest-post-link{
   font-size:9px;
 }
 body.home .tg-latest-post-item h3{
   font-size:clamp(12px,1.05vw,15px);
   white-space:nowrap;
   overflow:hidden;
   text-overflow:ellipsis;
 }
 body.home .tg-latest-post-link span{
   width:21px;
   height:21px;
 }
}

/* On shorter desktop screens compress only Latest Posts; footer sizing stays untouched. */
@media(min-width:761px) and (max-height:820px){
 body.home .tg-latest-posts{
   height:112px;
   max-height:112px;
 }
 body.home .tg-latest-posts-shell{
   padding-top:10px;
   padding-bottom:10px;
 }
 body.home .tg-latest-posts-head h2{
   font-size:25px;
 }
 body.home .tg-latest-post-item{
   height:30px;
 }
 body.home .tg-latest-post-item:nth-child(n+4){
   display:none;
 }
}

/* v1.7.2 — compact final-band correction from viewport screenshot.
   The Latest Posts band uses only the actual remaining space above the unchanged footer. */
@media(min-width:761px){
 body.home .tg-latest-posts{
   height:118px;
   min-height:118px;
   max-height:118px;
   overflow:hidden;
 }
 body.home .tg-latest-posts-shell{
   width:calc(100% - 72px);
   height:118px;
   min-height:118px;
   margin:0 auto;
   padding:12px 0;
   display:grid;
   grid-template-columns:330px minmax(0,1fr);
   align-items:center;
   gap:42px;
   overflow:hidden;
   box-sizing:border-box;
 }
 body.home .tg-latest-posts-head{
   min-width:0;
   align-self:center;
 }
 body.home .tg-latest-posts-head>span{
   margin:0 0 5px;
   font-size:8px;
   line-height:1;
 }
 body.home .tg-latest-posts-head h2{
   margin:0;
   font-size:30px;
   line-height:1;
   white-space:nowrap;
 }
 body.home .tg-latest-posts-list{
   width:100%;
   min-width:0;
   max-height:94px;
   align-self:center;
   overflow:hidden;
 }
 body.home .tg-latest-post-item{
   width:100%;
   height:31px;
   min-height:31px;
   grid-template-columns:92px minmax(0,1fr) 116px;
   gap:14px;
   box-sizing:border-box;
 }
 body.home .tg-latest-post-item time{
   font-size:8px;
 }
 body.home .tg-latest-post-item h3{
   font-size:13px;
   line-height:1.15;
   white-space:nowrap;
   overflow:hidden;
   text-overflow:ellipsis;
 }
 body.home .tg-latest-post-link{
   justify-self:end;
   font-size:9px;
   white-space:nowrap;
 }
 body.home .tg-latest-post-link .tg-latest-arrow{
   width:24px;
   height:24px;
   display:inline-flex;
   align-items:center;
   justify-content:center;
   flex:0 0 24px;
   border-radius:50%;
   background:#d5fb57;
 }
 body.home .tg-latest-post-link .tg-latest-arrow svg{
   width:13px;
   height:13px;
   display:block;
   fill:none;
   stroke:#0a0d12;
   stroke-width:1.8;
   stroke-linecap:round;
   stroke-linejoin:round;
 }
}

/* Short desktop screens: make the band even leaner rather than clipping its heading. */
@media(min-width:761px) and (max-height:820px){
 body.home .tg-latest-posts,
 body.home .tg-latest-posts-shell{
   height:100px;
   min-height:100px;
   max-height:100px;
 }
 body.home .tg-latest-posts-shell{
   padding-top:8px;
   padding-bottom:8px;
 }
 body.home .tg-latest-posts-head h2{
   font-size:26px;
 }
 body.home .tg-latest-posts-list{
   max-height:84px;
 }
 body.home .tg-latest-post-item{
   height:28px;
   min-height:28px;
 }
}

/* Keep the new icon clean on mobile too. */
@media(max-width:760px){
 body.home .tg-latest-post-link .tg-latest-arrow{
   width:24px;
   height:24px;
   display:inline-flex;
   align-items:center;
   justify-content:center;
   border-radius:50%;
   background:#d5fb57;
 }
 body.home .tg-latest-post-link .tg-latest-arrow svg{
   width:13px;
   height:13px;
   fill:none;
   stroke:#0a0d12;
   stroke-width:1.8;
   stroke-linecap:round;
   stroke-linejoin:round;
 }
}

/* v1.7.8 — FINAL FOOTER REBUILD
   One final snap screen = Latest Posts remainder + existing gray footer + existing black footer.
   No nested screen, no standalone Latest Posts snap target. */
@media(min-width:761px){
 body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{
   display:grid;
   grid-template-rows:minmax(96px,1fr) auto auto;
   overflow:hidden;
   background:#f4f5f3;
 }

 /* Latest Posts owns ONLY the leftover first row and centers inside it. */
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts{
   width:100%;
   height:100%;
   min-height:0;
   max-height:none;
   margin:0;
   padding:0;
   display:flex;
   align-items:center;
   justify-content:center;
   overflow:hidden;
   background:#f4f5f3;
   color:#0a0d12;
   border-top:1px solid rgba(10,13,18,.10);
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
   width:calc(100% - 72px);
   height:auto;
   min-height:0;
   max-height:100%;
   margin:0 auto;
   padding:6px 0;
   display:grid;
   grid-template-columns:280px minmax(0,1fr);
   align-items:center;
   align-content:center;
   gap:32px;
   overflow:hidden;
   box-sizing:border-box;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head{
   min-width:0;
   margin:0;
   padding:0;
   align-self:center;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head>span{
   display:block;
   margin:0 0 5px;
   font-family:"Noto Sans",sans-serif;
   font-size:8px;
   line-height:1;
   font-weight:700;
   letter-spacing:.16em;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head h2{
   margin:0;
   font-family:"Poppins",sans-serif;
   font-size:24px;
   line-height:1;
   font-weight:700;
   letter-spacing:-.04em;
   white-space:nowrap;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-list{
   width:100%;
   min-width:0;
   height:auto;
   max-height:none;
   margin:0;
   align-self:center;
   overflow:hidden;
   border-top:1px solid rgba(10,13,18,.55);
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item{
   width:100%;
   height:28px;
   min-height:28px;
   margin:0;
   display:grid;
   grid-template-columns:30px minmax(0,1fr) 108px;
   align-items:center;
   gap:10px;
   border-bottom:1px solid rgba(10,13,18,.16);
   overflow:hidden;
   box-sizing:border-box;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-index{
   width:20px;
   height:20px;
   display:inline-flex;
   align-items:center;
   justify-content:center;
   border:1px solid rgba(10,13,18,.30);
   border-radius:50%;
   font-family:"Noto Sans",sans-serif;
   font-size:7px;
   line-height:1;
   font-weight:700;
   color:#0a0d12;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item h3{
   min-width:0;
   margin:0;
   font-family:"Poppins",sans-serif;
   font-size:11px;
   line-height:1.1;
   font-weight:600;
   white-space:nowrap;
   overflow:hidden;
   text-overflow:ellipsis;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item h3 a{
   color:#0a0d12;
   text-decoration:none;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-link{
   width:108px;
   min-width:108px;
   display:inline-flex;
   align-items:center;
   justify-content:flex-end;
   gap:7px;
   justify-self:end;
   color:#0a0d12;
   font-family:"Noto Sans",sans-serif;
   font-size:8px;
   line-height:1;
   font-weight:700;
   letter-spacing:.05em;
   text-decoration:none;
   text-transform:uppercase;
   white-space:nowrap;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-arrow{
   width:20px;
   height:20px;
   flex:0 0 20px;
   display:inline-flex;
   align-items:center;
   justify-content:center;
   border-radius:50%;
   background:#d5fb57;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-arrow svg{
   width:11px;
   height:11px;
   display:block;
   fill:none;
   stroke:#0a0d12;
   stroke-width:1.8;
   stroke-linecap:round;
   stroke-linejoin:round;
 }

 /* Restore footer visual sizing from the known-good branch explicitly. */
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-main{
   height:auto;
   min-height:0;
   padding:clamp(62px,8vh,94px) 0;
   display:flex;
   align-items:center;
   background:#1f1f1f;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-bottom{
   height:auto;
   min-height:0;
   padding:24px 0;
   background:#000;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-bottom>.tg-shell{
   display:grid;
   grid-template-columns:minmax(0,1fr) auto;
   align-items:center;
   column-gap:40px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-brand{
   font-size:clamp(34px,3.2vw,54px);
   line-height:1;
 }
}

/* v1.9.10 — mobile final-screen ownership.
   The old v1.7.8 natural-flow override was intentionally removed here.
   Mobile sizing is owned by the responsive final-area block above:
   Latest Posts is one viewport, followed by gray + black footer as one viewport. */

/* v1.7.9 — use the previously wasted top space in Latest Posts. */
@media(min-width:761px){
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
   padding:0;
   grid-template-columns:360px minmax(0,1fr);
   gap:42px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head{
   display:flex;
   flex-direction:column;
   justify-content:center;
   align-items:flex-start;
   min-height:100%;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head>span{
   margin-bottom:7px;
   font-size:9px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head h2{
   font-size:31px;
   line-height:1;
 }
 body.home .tg-latest-view-all{
   margin-top:12px;
   display:inline-flex;
   align-items:center;
   gap:8px;
   color:#0a0d12;
   font-family:"Noto Sans",sans-serif;
   font-size:9px;
   line-height:1;
   font-weight:700;
   letter-spacing:.06em;
   text-decoration:none;
   text-transform:uppercase;
   white-space:nowrap;
 }
 body.home .tg-latest-view-all svg{
   width:13px;
   height:13px;
   fill:none;
   stroke:currentColor;
   stroke-width:1.8;
   stroke-linecap:round;
   stroke-linejoin:round;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item{
   height:31px;
   min-height:31px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item h3{
   font-size:12px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-link{
   font-size:8px;
 }
}

/* On shorter desktop screens, keep everything centered and contained. */
@media(min-width:761px) and (max-height:820px){
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
   grid-template-columns:330px minmax(0,1fr);
   gap:32px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head h2{
   font-size:27px;
 }
 body.home .tg-latest-view-all{
   margin-top:9px;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item{
   height:28px;
   min-height:28px;
 }
}

/* Mobile View All remains part of the heading flow. */
@media(max-width:760px){
 body.home .tg-latest-view-all{
   margin-top:12px;
   display:inline-flex;
   align-items:center;
   gap:8px;
   color:#0a0d12;
   font-size:10px;
   font-weight:700;
   text-decoration:none;
   text-transform:uppercase;
 }
 body.home .tg-latest-view-all svg{
   width:14px;
   height:14px;
   fill:none;
   stroke:currentColor;
   stroke-width:1.8;
   stroke-linecap:round;
   stroke-linejoin:round;
 }
}


/* v1.8.0 — requested footer asymmetry + selected-section decoration cleanup */

/* Footer: shift Explore toward Contact, leaving a broader brand-side field. */
@media (min-width: 761px){
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-grid{
    grid-template-columns:minmax(0,1.65fr) minmax(150px,.52fr) minmax(245px,.78fr);
    column-gap:clamp(22px,3vw,48px);
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-explore{
    justify-self:end;
    width:max-content;
    min-width:150px;
  }
}

/* Remove ONLY the large right-side lime / light-gray decorative motif
   from Services, Built Around Real Business, and the final CTA. */
body.home .tg-services-black .tg-tech-line,
body.home .tg-values-black .tg-tech-line,
body.home .tg-showcase-cta .tg-tech-line{
  display:none;
}
body.home .tg-services-black::before,
body.home .tg-services-black::after,
body.home .tg-values-black::before,
body.home .tg-values-black::after,
body.home .tg-showcase-cta::before,
body.home .tg-showcase-cta::after{
  content:none;
  display:none;
}


/* v1.8.1 — final-screen height correction.
   The final Latest Posts + footer composition occupies the full viewport below the sticky header. */
@media (min-width:761px){
 body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{
   height:calc(100svh - var(--tg-header-h,80px));
   min-height:calc(100svh - var(--tg-header-h,80px));
   max-height:calc(100svh - var(--tg-header-h,80px));
   grid-template-rows:minmax(0,1fr) auto auto;
   overflow:hidden;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts{
   height:100%;
   min-height:0;
   max-height:none;
   display:flex;
   align-items:center;
   overflow:hidden;
 }
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
   height:auto;
   min-height:0;
   max-height:100%;
   align-self:center;
 }
}


/* v1.8.4 — responsive mobile root fix */
body.home .tg-services-mobile-title{display:none}

/* Section-1-inspired circular arrow, adapted for the lime Hero button so the circle remains visible. */
body.home .tg-hero__cta .tg-hero__cta-arrow{
 width:36px;height:36px;flex:0 0 36px;padding:9px;box-sizing:border-box;
 border:0;border-radius:50%;background:#0a0d12;color:#d5fb57;
 fill:none;stroke:#d5fb57;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;filter:none;
}

@media(max-width:760px){
 body.home .tg-services-black{height:auto;min-height:0;max-height:none;padding:0;overflow:visible}
 body.home .tg-services-black>.tg-shell{width:100%;height:auto;min-height:0;max-height:none;margin:0;padding:0 18px;overflow:visible;box-sizing:border-box}
 body.home .tg-services-black>.tg-shell>.tg-ed-heading{display:none}
 body.home .tg-services-black .tg-service-editorial-grid{display:block;width:100%;height:auto;min-height:0;max-height:none;margin:0;padding:0;overflow:visible}
 body.home .tg-services-black .tg-service-editorial-grid>article{
  width:100%;height:calc(100svh - var(--tg-header-h,68px));min-height:calc(100svh - var(--tg-header-h,68px));max-height:calc(100svh - var(--tg-header-h,68px));
  margin:0;padding:18px 0;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;overflow:hidden
 }
 body.home .tg-services-black .tg-service-editorial-grid>article:first-child{justify-content:flex-start;padding-top:clamp(24px,4svh,38px)}
 body.home .tg-services-mobile-title{
  display:block;flex:0 0 auto;margin:0 0 clamp(14px,2.5svh,22px);
  font-family:"Poppins",sans-serif;font-size:clamp(30px,9vw,40px);line-height:1;font-weight:700;letter-spacing:-.04em;color:#fff
 }
 body.home .tg-services-black .tg-service-editorial-grid>article figure{
  flex:0 1 auto;width:100%;height:min(38svh,300px);min-height:140px;max-height:38svh;margin:0 0 clamp(12px,2svh,18px);overflow:hidden
 }
 body.home .tg-services-black .tg-service-editorial-grid>article:first-child figure{height:min(31svh,245px);max-height:31svh}
 body.home .tg-services-black .tg-service-editorial-grid>article figure img{width:100%;height:100%;object-fit:cover;display:block}
 body.home .tg-services-black .tg-service-editorial-grid>article>div{flex:0 0 auto;min-width:0}
 body.home .tg-services-black .tg-service-editorial-grid>article h3{margin:6px 0;font-size:clamp(24px,7vw,31px);line-height:1}
 body.home .tg-services-black .tg-service-editorial-grid>article p{margin:0 0 7px;max-width:none;font-size:12px;line-height:1.4}
 body.home .tg-services-black .tg-service-editorial-grid>article strong{margin-top:7px}
}


/* v1.8.7 — Hero CTA tight-fit correction.
   Keep the 36px circle/arrow unchanged; make the outer button frame hug it closely. */
body.home .tg-hero__cta{
  min-height:0;
  height:auto;
  padding-top:3px;
  padding-bottom:3px;
  line-height:1;
  align-items:center;
}
body.home .tg-hero__cta .tg-hero__cta-arrow{
  width:36px;
  height:36px;
  flex:0 0 36px;
  padding:9px;
}
@media(max-width:760px){
 body.home .tg-hero__cta{
   min-height:0;
   height:auto;
   padding-top:3px;
   padding-bottom:3px;
   line-height:1;
 }
 body.home .tg-hero__cta .tg-hero__cta-arrow{
   width:36px;
   height:36px;
   flex:0 0 36px;
   padding:9px;
 }
}


/* v1.8.8 — Hero CTA symmetric spacing.
   Override the generic .px-button horizontal padding/gap so the arrow circle
   sits equally close to the outer frame on the right as the label does on the left. */
body.home .tg-hero__cta{
  gap:12px;
  padding:3px 3px 3px 18px;
}
@media(max-width:760px){
 body.home .tg-hero__cta{
   gap:10px;
   padding:3px 3px 3px 16px;
 }
}


/* v1.8.9 — match Section 1 + final CTA button proportions to the corrected Hero CTA.
   Keep their existing visual identities/icons; only tighten and balance the frame. */

/* Section 1 — START A PROJECT */
body.home .tg-editorial-intro .tg-angular-intro>div>a{
  min-height:0;
  height:auto;
  padding:3px 3px 3px 18px;
  gap:12px;
  line-height:1;
  align-items:center;
}

/* Its arrow is generated by ::after: keep the circle prominent and hug the outer edge. */
body.home .tg-editorial-intro .tg-angular-intro>div>a::after{
  width:36px;
  height:36px;
  flex:0 0 36px;
  margin:0;
  box-sizing:border-box;
}

/* Final CTA button — slightly taller, with a tighter horizontal frame. */
body.home .tg-showcase-cta a,
body.home .tg-showcase-cta .px-button{
  min-height:40px;
  height:auto;
  padding:6px 18px;
  line-height:1;
  align-items:center;
}

/* If the final CTA uses the shared hero-style SVG arrow, preserve its full size. */
body.home .tg-showcase-cta .tg-hero__cta-arrow{
  width:36px;
  height:36px;
  flex:0 0 36px;
  padding:9px;
}

@media(max-width:760px){
 body.home .tg-editorial-intro .tg-angular-intro>div>a{
   padding:3px 3px 3px 16px;
   gap:10px;
 }
 body.home .tg-editorial-intro .tg-angular-intro>div>a::after{
   width:36px;
   height:36px;
   flex-basis:36px;
 }
 body.home .tg-showcase-cta a,
 body.home .tg-showcase-cta .px-button{
   min-height:38px;
   padding:6px 16px;
 }
}


/* TEMAGUE Services — responsive package presentation.
   The shell stretches across the complete section height on desktop, while the
   card owns the remaining grid row. Internal type scales against viewport
   height so content never needs to be clipped. */
body.home .tg-services-showcase{background:#f7f8f6;color:#07101b;align-items:stretch;overflow:hidden}
body.home .tg-services-layout{
  height:100%;
  min-height:0;
  margin-inline:auto;
  margin-block:0;
  align-self:stretch;
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr) auto;
  gap:clamp(7px,1.05svh,13px);
  padding-block:clamp(10px,1.45svh,18px);
  align-content:stretch;
}
body.home .tg-services-title{font-size:clamp(38px,min(4.25vw,7.2svh),72px);line-height:.9;letter-spacing:-.065em;margin:0}
body.home .tg-services-title span{color:#384352}
.tg-services-tabs{display:grid;grid-template-columns:repeat(3,1fr);height:clamp(50px,6.6svh,62px);min-height:0;border:1px solid #d7dce0;border-radius:20px;overflow:hidden;background:#eef1f2}
.tg-services-tab{appearance:none;border:0;border-right:1px solid #d7dce0;background:transparent;color:#07101b;font:700 clamp(14px,min(1.18vw,2.25svh),21px)/1 "Space Grotesk",sans-serif;display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer}
.tg-services-tab:last-child{border-right:0}
.tg-services-tab.is-active{background:#111a25;color:#fff;box-shadow:inset 0 0 0 1px #9aee18}
.tg-tab-icon{width:clamp(31px,4.6svh,38px);height:clamp(31px,4.6svh,38px);border-radius:11px;background:#fff;color:#07101b;display:grid;place-items:center;flex:0 0 auto}
.tg-tab-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.tg-tab-icon i{font-size:16px;line-height:1}
.tg-services-tab.is-active .tg-tab-icon{background:#9aee18}
.tg-services-card{height:100%;min-height:0;border:1px solid #dbe0d7;border-radius:28px;background:radial-gradient(circle at 17% 42%,rgba(154,238,24,.12),transparent 31%),#fbfcf8;display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,1.02fr);overflow:hidden}
.tg-services-copy{min-width:0;min-height:0;padding:clamp(12px,1.8svh,24px) clamp(18px,2vw,34px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(6px,1.05svh,12px)}
.tg-services-status{justify-self:start;background:#fff;border-radius:999px;padding:clamp(5px,.8svh,7px) 13px;font-size:clamp(10px,1.5svh,13px);font-weight:700;display:flex;align-items:center;gap:8px}
.tg-services-status i{width:9px;height:9px;border-radius:50%;background:#75df21}
.tg-services-details{min-height:0;align-self:center;display:grid;grid-template-columns:minmax(160px,.66fr) minmax(270px,1.34fr);gap:clamp(20px,2.6vw,48px);align-items:center}
.tg-services-price{min-width:0;padding-right:clamp(20px,2.5vw,42px);border-right:1px solid #cfd5cf}
.tg-services-price small{display:block;font:700 clamp(14px,2.1svh,20px)/1 "Space Grotesk",sans-serif;margin-bottom:clamp(3px,.55svh,6px)}
.tg-services-price strong{display:block;max-width:100%;font:700 clamp(46px,min(5vw,8.5svh),82px)/.86 "Space Grotesk",sans-serif;letter-spacing:-.06em;white-space:nowrap}
.tg-services-price strong.is-custom{font-size:clamp(26px,min(3vw,5.2svh),46px);letter-spacing:-.03em}
.tg-services-benefits{list-style:none;padding:0;margin:0;display:grid;gap:clamp(3px,.7svh,7px);font:600 clamp(11px,min(1vw,1.85svh),17px)/1.16 "Space Grotesk",sans-serif;min-width:0}
.tg-services-benefits li{position:relative;padding-left:clamp(22px,2vw,30px);white-space:normal}
.tg-services-benefits li::before{content:"✓";position:absolute;left:0;top:-1px;width:clamp(16px,2.15svh,21px);height:clamp(16px,2.15svh,21px);border-radius:50%;display:grid;place-items:center;background:#8eea20;color:#fff;font-size:clamp(9px,1.4svh,12px)}
.tg-services-demo{height:clamp(42px,5.7svh,54px);border-radius:999px;background:#95ed17;color:#050b11;text-decoration:none;font:700 clamp(13px,1.75svh,16px)/1 "Space Grotesk",sans-serif;display:flex;align-items:center;justify-content:space-between;padding:4px 5px 4px clamp(17px,1.7vw,25px);max-width:560px}
.tg-services-arrow{width:clamp(34px,4.7svh,44px);height:clamp(34px,4.7svh,44px);border-radius:50%;background:#08111c;color:#a0f31e;display:grid;place-items:center}
.tg-services-arrow svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tg-services-visual{position:relative;min-width:0;min-height:0;display:grid;place-items:center;padding:2.5% 6% 2.5% 1%}
.tg-device{width:min(72%,580px);max-height:82%;aspect-ratio:1.62;background:#101923;border:9px solid #0b121a;border-radius:15px 15px 7px 7px;box-shadow:0 22px 26px rgba(5,15,20,.18);transform:perspective(900px) rotateX(2deg) rotateY(-3deg)}
.tg-device-bar{height:12%;display:flex;align-items:center;justify-content:space-between;padding:0 5%;font-size:9px;color:#fff}.tg-device-bar i{width:16%;height:8px;border-radius:9px;background:#9aee18}
.tg-device-screen{height:68%;padding:8% 7%;background:linear-gradient(135deg,#1b2933 0 55%,#33454a 55%);color:#fff}.tg-device-screen strong{font:800 clamp(17px,min(2.15vw,4.2svh),35px)/.9 "Space Grotesk",sans-serif}.tg-device-screen em{font-style:normal;color:#9aee18}.tg-device-screen span{display:block;width:20%;height:10px;border-radius:10px;background:#9aee18;margin-top:8%}
.tg-device-foot{height:20%;display:grid;grid-template-columns:repeat(3,1fr);gap:4%;padding:5%}.tg-device-foot i{background:#fff;border-radius:4px}
.tg-float-card{position:absolute;background:#fff;border-radius:10px;padding:clamp(8px,1.25svh,11px);box-shadow:0 12px 24px rgba(5,15,20,.13);font:700 clamp(8px,1.3svh,10px)/1 "Space Grotesk",sans-serif}.tg-float-card span{display:flex;gap:6px;margin-top:8px}.tg-float-card i{display:block;width:clamp(27px,4.2svh,36px);height:clamp(29px,4.5svh,40px);border-radius:4px;background:#edf0ef}.tg-float-card i::before{content:"";display:block;width:10px;height:10px;border-radius:50%;background:#9aee18;margin:6px auto}.tg-float-services{right:7%;top:14%}.tg-float-why{right:3%;top:46%}.tg-float-contact{right:5%;bottom:9%;width:clamp(120px,13vw,150px);height:clamp(62px,9svh,78px);background:#111b25;color:#fff}.tg-float-contact span{height:34px;background:#253842;border-radius:5px;border-bottom:2px solid #9aee18}
.tg-services-description{margin:0;padding-top:clamp(4px,.65svh,7px);border-top:1px solid #d3d8d4;color:#4f5967;font-size:clamp(10px,min(1vw,1.75svh),16px);line-height:1.2;white-space:normal}
@media(min-width:761px){
 /* Desktop TEMAGUE Designs: keep the whole composition vertically centered.
    v1.9.12 made the card ~45% taller with a hard minimum and could push the
    composition outside the one-screen section. This keeps the requested card
    20% shorter than v1.9.12 while preserving the section's fixed viewport. */
 body.home .tg-services-layout{
   align-self:center;
   height:auto;
   min-height:0;
   max-height:100%;
   margin-block:auto;
   grid-template-rows:auto auto clamp(288px,32svh,376px) auto;
   align-content:center;
 }
 body.home .tg-services-card{
   height:clamp(288px,32svh,376px);
   min-height:0;
 }

 /* Scale the package artwork with the shorter card instead of allowing the
    mockup and floating cards to crowd or clip against the frame. */
 body.home .tg-services-visual .tg-device{
   width:min(58%,464px);
   max-height:66%;
   border-width:7px;
 }
 body.home .tg-services-visual .tg-float-card{
   padding:clamp(6px,1svh,9px);
   font-size:clamp(7px,1.05svh,9px);
 }
 body.home .tg-services-visual .tg-float-card span{
   gap:5px;
   margin-top:6px;
 }
 body.home .tg-services-visual .tg-float-card i{
   width:clamp(22px,3.35svh,29px);
   height:clamp(24px,3.6svh,32px);
 }
 body.home .tg-services-visual .tg-float-card i::before{
   width:8px;
   height:8px;
   margin:5px auto;
 }
 body.home .tg-services-visual .tg-float-services{right:10%;top:16%}
 body.home .tg-services-visual .tg-float-why{right:6%;top:46%}
 body.home .tg-services-visual .tg-float-contact{
   right:8%;
   bottom:11%;
   width:clamp(96px,10.4vw,120px);
   height:clamp(50px,7.2svh,62px);
 }
 body.home .tg-services-visual .tg-float-contact span{height:27px}
}
@media(min-width:761px) and (max-height:720px){
 body.home .tg-services-layout{gap:6px;padding-block:8px}
 body.home .tg-services-title{font-size:clamp(34px,6svh,48px)}
 .tg-services-tabs{height:46px;border-radius:15px}.tg-services-tab{font-size:13px;gap:8px}.tg-tab-icon{width:29px;height:29px;border-radius:8px}.tg-tab-icon svg{width:16px;height:16px}
 .tg-services-card{border-radius:20px}
 .tg-services-copy{padding:9px 18px;gap:5px}.tg-services-status{padding:4px 9px;font-size:10px}
 .tg-services-details{grid-template-columns:minmax(150px,.64fr) minmax(250px,1.36fr);column-gap:22px}.tg-services-price{padding-right:18px}
 .tg-services-price small{font-size:13px}.tg-services-price strong{font-size:clamp(40px,7.8svh,56px)}.tg-services-price strong.is-custom{font-size:clamp(24px,4.8svh,34px)}
 .tg-services-benefits{font-size:10.5px;gap:2px}.tg-services-benefits li{padding-left:20px}.tg-services-benefits li::before{width:15px;height:15px;font-size:8px}
 .tg-services-demo{height:38px;font-size:12px;padding-left:15px}.tg-services-arrow{width:30px;height:30px}.tg-services-arrow svg{width:14px;height:14px}
 .tg-services-visual{padding:1.5% 6% 1.5% 1%}.tg-device{width:min(66%,470px);border-width:7px}.tg-float-card{padding:7px;font-size:8px}.tg-float-card i{width:25px;height:27px}.tg-float-contact{width:112px;height:58px}
 .tg-services-description{font-size:10px;line-height:1.14;padding-top:3px}
}

/* v1.9.3 — audit hardening: keyboard focus and sticky-header-safe section anchors. */
.tg-services-tab:focus-visible {
  position: relative;
  z-index: 1;
  outline: 2px solid currentColor;
  outline-offset: -4px;
}

body.home #tg-services,
body.home #tg-process,
body.home #tg-about,
body.home #tg-why,
body.home #tg-contact {
  scroll-margin-top: var(--tg-header-h, 80px);
}

/* v1.9.4 — CTA device polish: centered top sensor group, clean phone UI edge, and better CTA proportions. */

/* v1.9.5 — Section 1 CTA restoration.
   Keep the original premium capsule proportions; isolate it from the final CTA polish. */
body.home .tg-editorial-intro .tg-angular-intro>div>a{
  position:relative;
  min-width:210px;
  min-height:54px;
  height:54px;
  padding:0 54px 0 24px;
  gap:0;
  justify-content:flex-start;
  align-items:center;
  line-height:1;
  box-sizing:border-box;
}
body.home .tg-editorial-intro .tg-angular-intro>div>a::after{
  position:absolute;
  right:9px;
  top:50%;
  width:36px;
  height:36px;
  flex:0 0 36px;
  margin:0;
  transform:translateY(-50%);
  box-sizing:border-box;
}
@media(max-width:760px){
  body.home .tg-editorial-intro .tg-angular-intro>div>a{
    min-width:205px;
    min-height:48px;
    height:48px;
    padding:0 50px 0 20px;
  }
  body.home .tg-editorial-intro .tg-angular-intro>div>a::after{
    right:7px;
    width:34px;
    height:34px;
    flex-basis:34px;
  }
}



/* =========================================================
   v1.9.11 — CANONICAL MOBILE LAYOUT
   Base component rules are declared above. This is the only mobile ownership
   layer for the active homepage and intentionally sits last in the cascade.
   Every active section is one viewport below the sticky header.
   ========================================================= */
@media (max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  body.home .tg-rebuild{--hh:68px}
  body.home .tg-temague-editorial,
  body.home .tg-temague-editorial>.tg-screen,
  body.home .tg-temague-editorial>.tg-screen>.tg-shell{max-width:100%;box-sizing:border-box}
  body.home .tg-temague-editorial>.tg-screen{
    width:100%;
    height:calc(100svh - var(--tg-header-h,68px));
    min-height:calc(100svh - var(--tg-header-h,68px));
    max-height:calc(100svh - var(--tg-header-h,68px));
    overflow:hidden;
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  body.home .tg-temague-editorial>.tg-screen>.tg-shell{
    width:100%;height:100%;min-height:0;margin:0;padding-left:18px;padding-right:18px;
  }

  /* Section 1 */
  body.home .tg-editorial-intro{overflow:hidden}
  body.home .tg-editorial-intro>.tg-shell{padding-top:12px;padding-bottom:12px;display:flex;flex-direction:column}
  body.home .tg-editorial-intro .tg-tech-line{flex:0 0 auto;margin:0 0 7px}
  body.home .tg-editorial-intro .tg-ed-heading{flex:0 0 auto;margin:0 0 8px}
  body.home .tg-editorial-intro .tg-angular-heading h2{margin:0;font-size:clamp(28px,8.6vw,41px);line-height:.94}
  body.home .tg-editorial-intro .tg-angular-intro{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(130px,28svh) auto;gap:9px}
  body.home .tg-editorial-intro .tg-angular-intro>figure{width:100%;height:100%;min-height:0;max-height:none;margin:0}
  body.home .tg-editorial-intro .tg-angular-intro>div{min-height:0;padding:0}
  body.home .tg-editorial-intro .tg-ed-bigcopy{margin:0 0 4px;font-size:15px;line-height:1.3}
  body.home .tg-editorial-intro .tg-ed-bigcopy+p{margin:0 0 7px;font-size:11px;line-height:1.38}
  body.home .tg-editorial-intro .tg-angular-intro>div>a{min-width:0;min-height:44px;height:44px;padding:0 52px 0 18px;font-size:12px}

  /* TEMAGUE Designs — desktop composition scaled down instead of collapsed. */
  body.home .tg-services-showcase{align-items:stretch;overflow:hidden}
  body.home .tg-services-showcase>.tg-services-layout{
    width:100%;height:100%;min-height:0;margin:0;padding:9px 14px;
    display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:6px;align-content:stretch
  }
  body.home .tg-services-title{margin:0;font-size:clamp(30px,9vw,39px);line-height:.9}
  body.home .tg-services-tabs{height:44px;min-height:44px;border-radius:14px}
  body.home .tg-services-tab{min-width:0;padding:0 4px;font-size:10.5px;gap:5px}
  body.home .tg-tab-icon{width:27px;height:27px;flex:0 0 27px;border-radius:8px}
  body.home .tg-tab-icon i{font-size:12px;line-height:1}
  body.home .tg-tab-icon svg{width:14px;height:14px}
  body.home .tg-services-card{
    height:100%;min-height:0;grid-template-columns:minmax(0,1.14fr) minmax(112px,.86fr);
    border-radius:18px;overflow:hidden
  }
  body.home .tg-services-copy{
    min-width:0;min-height:0;padding:9px 8px 9px 10px;
    display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:5px
  }
  body.home .tg-services-status{padding:4px 8px;font-size:8px;gap:5px}
  body.home .tg-services-status i{width:6px;height:6px}
  body.home .tg-services-details{
    min-width:0;min-height:0;align-self:center;display:grid;grid-template-columns:1fr;gap:5px;align-content:center
  }
  body.home .tg-services-price{min-width:0;padding:0 0 5px;border-right:0;border-bottom:1px solid #cfd5cf}
  body.home .tg-services-price small{margin:0 0 2px;font-size:9px;line-height:1}
  body.home .tg-services-price strong{font-size:clamp(27px,8.5vw,36px);line-height:.88;letter-spacing:-.045em;white-space:nowrap}
  body.home .tg-services-price strong.is-custom{font-size:clamp(19px,6.2vw,25px);letter-spacing:-.02em}
  body.home .tg-services-benefits{min-width:0;margin:0;gap:2px;font-size:clamp(7.4px,2.15vw,8.8px);line-height:1.16}
  body.home .tg-services-benefits li{min-width:0;padding-left:15px;white-space:normal}
  body.home .tg-services-benefits li::before{top:0;width:11px;height:11px;font-size:6.5px}
  body.home .tg-services-demo{width:100%;max-width:none;height:34px;padding:3px 4px 3px 11px;font-size:10px}
  body.home .tg-services-arrow{width:27px;height:27px;flex:0 0 27px}
  body.home .tg-services-arrow svg{width:13px;height:13px}
  body.home .tg-services-visual{display:block;position:relative;min-width:0;min-height:0;padding:0;overflow:hidden}
  body.home .tg-services-visual .tg-device{position:absolute;left:7%;top:50%;width:82%;max-height:none;border-width:5px;border-radius:8px 8px 4px 4px;transform:translateY(-50%) perspective(900px) rotateX(2deg) rotateY(-3deg)}
  body.home .tg-device-bar{font-size:5px}.tg-device-bar i{height:4px}
  body.home .tg-device-screen strong{font-size:clamp(9px,2.9vw,13px)}
  body.home .tg-device-screen span{height:5px}
  body.home .tg-float-card{padding:4px;border-radius:5px;font-size:5.5px;box-shadow:0 5px 10px rgba(5,15,20,.11)}
  body.home .tg-float-card span{gap:2px;margin-top:4px}
  body.home .tg-float-card i{width:13px;height:15px;border-radius:2px}
  body.home .tg-float-card i::before{width:4px;height:4px;margin:3px auto}
  body.home .tg-float-services{right:3%;top:17%}
  body.home .tg-float-why{right:1%;top:47%}
  body.home .tg-float-contact{right:2%;bottom:12%;width:58px;height:34px;padding:4px}
  body.home .tg-float-contact span{height:15px;border-radius:2px;border-bottom-width:1px}
  body.home .tg-services-description{margin:0;padding-top:4px;font-size:8.2px;line-height:1.15}

  /* How It Works — title + all 4 cards in one screen. */
  body.home .tg-process-editorial>.tg-shell{display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;padding:10px 18px}
  body.home .tg-process-editorial .tg-tech-line{display:none}
  body.home .tg-process-editorial .tg-ed-heading{width:100%;height:auto;min-height:0;margin:0;padding:0;display:block}
  body.home .tg-process-editorial .tg-ed-heading h2{margin:0;font-size:clamp(30px,8.8vw,39px);line-height:.95}
  body.home .tg-process-editorial .tg-workflow{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0}
  body.home .tg-process-editorial .tg-workflow-rail{display:none}
  body.home .tg-process-editorial .tg-workflow-step{width:auto;height:auto;min-height:0;margin:0;padding:8px 7px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;text-align:center;border:1px solid rgba(10,13,18,.10);background:#f7f8f6;box-sizing:border-box;scroll-snap-align:none}
  body.home .tg-workflow-node{width:46px;height:46px;margin:0 0 6px;border-radius:13px}
  body.home .tg-workflow-node>span{top:-5px;right:-6px;min-width:20px;height:20px;padding:0 4px;font-size:7px}
  body.home .tg-workflow-node>i{font-size:17px}
  body.home .tg-workflow-copy h3{margin:0 0 3px;font-size:14px;line-height:1.05}
  body.home .tg-workflow-copy p{max-width:145px;margin:0 auto;font-size:8.8px;line-height:1.27}

  /* One Design. One Business. — equal image/text width and full vertical use. */
  body.home .tg-exclusive-editorial>.tg-shell{display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;padding:10px 18px}
  body.home .tg-exclusive-editorial .tg-tech-line{display:none}
  body.home .tg-exclusive-editorial .tg-ed-heading{width:100%;height:auto;min-height:0;margin:0;padding:0;display:block}
  body.home .tg-exclusive-editorial .tg-ed-heading h2{margin:0;font-size:clamp(28px,8vw,37px);line-height:.95}
  body.home .tg-exclusive-editorial .tg-story-grid{min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;margin:0}
  body.home .tg-exclusive-editorial .tg-story-grid>article{width:100%;height:100%;min-height:0;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;gap:0}
  body.home .tg-exclusive-editorial .tg-story-grid>article figure{width:100%;height:100%;min-height:0;max-height:none;margin:0;order:initial}
  body.home .tg-exclusive-editorial .tg-story-grid>article figure img{width:100%;height:100%;object-fit:cover;display:block}
  body.home .tg-exclusive-editorial .tg-story-grid>article>div{width:100%;min-width:0;padding:9px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;order:initial}
  body.home .tg-exclusive-editorial .tg-story-grid>article:nth-child(2)>div{grid-column:1;grid-row:1}
  body.home .tg-exclusive-editorial .tg-story-grid>article:nth-child(2)>figure{grid-column:2;grid-row:1}
  body.home .tg-exclusive-editorial .tg-story-grid strong{font-size:9.5px;line-height:1.15}
  body.home .tg-exclusive-editorial .tg-story-grid>article p{margin:4px 0 0;font-size:8.8px;line-height:1.28}

  /* Built Around Real Business — use the complete section height. */
  body.home .tg-values-black>.tg-shell{display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;padding:10px 18px}
  body.home .tg-values-black .tg-tech-line{display:none}
  body.home .tg-values-black .tg-ed-heading{width:100%;height:auto;min-height:0;margin:0;padding:0;display:block}
  body.home .tg-values-black .tg-ed-heading h2{margin:0;font-size:clamp(28px,8vw,37px);line-height:.95}
  body.home .tg-values-black .tg-careers-grid{min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;margin:0}
  body.home .tg-values-black .tg-careers-grid>article{width:100%;height:100%;min-height:0;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto auto;align-items:end;overflow:hidden;box-sizing:border-box}
  body.home .tg-values-black .tg-careers-grid>article figure{grid-column:1;grid-row:1/4;width:100%;height:100%;min-height:0;max-height:none;margin:0}
  body.home .tg-values-black .tg-careers-grid>article figure img{width:100%;height:100%;object-fit:cover;display:block}
  body.home .tg-values-black .tg-careers-grid>article h3{grid-column:2;grid-row:2;margin:0;padding:0 9px 3px;font-size:13px;line-height:1.04}
  body.home .tg-values-black .tg-careers-grid>article p{grid-column:2;grid-row:3;margin:0;padding:0 9px 9px;font-size:8.8px;line-height:1.28}

  /* CTA — respect mobile gutters; copy first, complete artwork below. */
  body.home .tg-contact-screen{padding:9px 0;display:flex;align-items:stretch;overflow:hidden}
  body.home .tg-contact-screen>.tg-showcase-cta-inner{
    width:calc(100% - 36px);max-width:none;height:100%;min-height:0;margin:0 auto;padding:14px 13px 10px;
    display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:7px;overflow:hidden;box-sizing:border-box
  }
  body.home .tg-showcase-cta-copy{position:relative;z-index:2;width:100%;min-width:0;min-height:0}
  body.home .tg-showcase-cta-copy>span{font-size:8px}
  body.home .tg-showcase-cta-copy h2{margin:3px 0 5px;font-size:clamp(26px,7.7vw,36px);line-height:.94}
  body.home .tg-showcase-cta-copy p{margin:0 0 7px;font-size:9.5px;line-height:1.3}
  body.home .tg-showcase-cta-button{min-height:38px;height:38px;padding:0 13px;font-size:9.5px}
  body.home .tg-showcase-cta-art{position:relative;inset:auto;width:100%;height:100%;min-width:0;min-height:0;margin:0;display:flex;align-items:center;justify-content:center;overflow:hidden;transform:none}
  body.home .tg-showcase-cta-art .tg-device-art{position:static;inset:auto;display:block;width:100%;max-width:410px;height:auto;max-height:100%;margin:0 auto;transform:none}

  /* Latest Posts — one independent screen, hierarchy mirrors desktop. */
  :is(body.home,body.page,body.single-post) .tg-new-footer{height:auto;min-height:0;max-height:none;display:block;overflow:visible;background:#1f1f1f}
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts{
    width:100%;height:calc(100svh - var(--tg-header-h,68px));min-height:calc(100svh - var(--tg-header-h,68px));max-height:calc(100svh - var(--tg-header-h,68px));
    margin:0;padding:0;display:flex;align-items:stretch;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;background:#f4f5f3;color:#0a0d12
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
    width:100%;height:100%;min-height:0;margin:0;padding:16px 18px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:13px;overflow:hidden;box-sizing:border-box
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head{margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:end;gap:4px 10px}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head>span{grid-column:1;grid-row:1;margin:0;font-size:8px;line-height:1;letter-spacing:.16em}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head h2{grid-column:1;grid-row:2;margin:0;font-size:clamp(27px,7.8vw,36px);line-height:.95;white-space:normal}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-view-all{grid-column:2;grid-row:1/3;align-self:end;margin:0;display:inline-flex;align-items:center;gap:6px;font-size:8.5px;line-height:1;white-space:nowrap}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-view-all svg{width:13px;height:13px}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-list{min-height:0;margin:0;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));overflow:hidden;border-top:1px solid rgba(10,13,18,.45)}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item{
    width:100%;height:auto;min-height:0;margin:0;padding:8px 0;display:grid;
    grid-template-columns:26px minmax(0,1fr);grid-template-areas:"index title" ". link";align-content:center;align-items:start;gap:5px 9px;overflow:hidden;border-bottom:1px solid rgba(10,13,18,.14)
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-index{grid-area:index;width:22px;height:22px;font-size:7px;align-self:start}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item h3{grid-area:title;min-width:0;margin:0;font-size:clamp(12.5px,3.55vw,15.5px);line-height:1.18;white-space:normal;overflow:visible;text-overflow:clip}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-link{grid-area:link;width:auto;min-width:0;justify-self:start;display:inline-flex;align-items:center;gap:6px;font-size:8.5px;line-height:1;white-space:nowrap}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-link .tg-latest-arrow{width:24px;height:24px;flex:0 0 24px}

  /* Footer — next independent screen: about/social, 2 columns, then legal strip. */
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-main{
    width:100%;height:calc(100svh - var(--tg-header-h,68px) - 84px);min-height:calc(100svh - var(--tg-header-h,68px) - 84px);max-height:calc(100svh - var(--tg-header-h,68px) - 84px);
    margin:0;padding:14px 0;display:flex;align-items:stretch;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;background:#1f1f1f
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-footer-grid{
    width:calc(100% - 36px);height:100%;min-height:0;margin:0 auto;padding:0;display:grid;
    grid-template-columns:1fr 1fr;grid-template-rows:auto minmax(0,1fr);gap:12px 18px;align-content:stretch
  }
  :is(body.home,body.page,body.single-post) .tg-footer-about{grid-column:1/-1;min-height:0}
  :is(body.home,body.page,body.single-post) .tg-footer-brand{font-size:clamp(31px,8.8vw,38px);line-height:.95}
  :is(body.home,body.page,body.single-post) .tg-footer-about>p{max-width:330px;margin:7px 0 0;font-size:10px;line-height:1.32}
  :is(body.home,body.page,body.single-post) .tg-footer-socials{margin-top:8px;gap:6px}
  :is(body.home,body.page,body.single-post) .tg-footer-socials a{width:28px;height:28px}
  :is(body.home,body.page,body.single-post) .tg-footer-explore,:is(body.home,body.page,body.single-post) .tg-footer-contact{width:100%;min-width:0;gap:4px;align-self:start}
  :is(body.home,body.page,body.single-post) .tg-footer-explore>span,:is(body.home,body.page,body.single-post) .tg-footer-contact>span{margin-bottom:3px;font-size:8px;letter-spacing:.14em}
  :is(body.home,body.page,body.single-post) .tg-footer-explore a,:is(body.home,body.page,body.single-post) .tg-footer-contact a,:is(body.home,body.page,body.single-post) .tg-footer-location,:is(body.home,body.page,body.single-post) .tg-footer-contact p{font-size:9px;line-height:1.25}
  :is(body.home,body.page,body.single-post) .tg-footer-contact p{margin:3px 0 0}
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-bottom{
    width:100%;height:84px;min-height:84px;max-height:84px;margin:0;padding:10px 0;display:flex;align-items:center;background:#000;overflow:hidden
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-bottom>.tg-shell{
    width:calc(100% - 36px);height:auto;min-height:0;margin:0 auto;padding:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px
  }
  :is(body.home,body.page,body.single-post) .tg-footer-copyright{min-height:0;font-size:8.5px;line-height:1.2}
  :is(body.home,body.page,body.single-post) .tg-footer-legal{min-height:0;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:nowrap}
  :is(body.home,body.page,body.single-post) .tg-footer-legal a{height:auto;min-height:0;font-size:7.8px;line-height:1.2;white-space:nowrap}
}

/* Short phones: preserve the same hierarchy and reduce only scale, never split sections. */
@media (max-width:760px) and (max-height:700px){
  body.home .tg-services-showcase>.tg-services-layout{padding-top:6px;padding-bottom:6px;gap:4px}
  body.home .tg-services-title{font-size:28px}
  body.home .tg-services-tabs{height:39px;min-height:39px}.tg-tab-icon{width:24px;height:24px;flex-basis:24px}
  body.home .tg-services-copy{padding:7px 7px 7px 9px;gap:3px}
  body.home .tg-services-price strong{font-size:26px}.tg-services-price strong.is-custom{font-size:19px}
  body.home .tg-services-benefits{font-size:7.2px;gap:1px}
  body.home .tg-services-demo{height:30px}.tg-services-arrow{width:23px;height:23px;flex-basis:23px}
  body.home .tg-services-description{font-size:7.3px}
  body.home .tg-process-editorial>.tg-shell,
  body.home .tg-exclusive-editorial>.tg-shell,
  body.home .tg-values-black>.tg-shell{padding-top:7px;padding-bottom:7px;gap:6px}
  body.home .tg-workflow-node{width:39px;height:39px;margin-bottom:4px}.tg-workflow-node>i{font-size:14px}
  body.home .tg-workflow-copy h3{font-size:12px}.tg-workflow-copy p{font-size:7.5px}
  body.home .tg-exclusive-editorial .tg-story-grid>article>div{padding:7px}
  body.home .tg-exclusive-editorial .tg-story-grid strong{font-size:8.5px}.tg-exclusive-editorial .tg-story-grid>article p{font-size:7.7px}
  body.home .tg-values-black .tg-careers-grid>article h3{font-size:11px}.tg-values-black .tg-careers-grid>article p{font-size:7.7px}
  body.home .tg-contact-screen>.tg-showcase-cta-inner{padding-top:10px;padding-bottom:8px}
  body.home .tg-showcase-cta-copy h2{font-size:26px}.tg-showcase-cta-copy p{font-size:8.5px}.tg-showcase-cta-button{height:34px;min-height:34px}
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{padding-top:12px;padding-bottom:12px;gap:9px}
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item{padding:5px 0}.tg-new-footer .tg-latest-post-item h3{font-size:11.5px}.tg-new-footer .tg-latest-post-link{font-size:7.7px}
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-main{padding-top:10px;padding-bottom:10px}
  :is(body.home,body.page,body.single-post) .tg-footer-brand{font-size:30px}.tg-footer-about>p{font-size:8.8px}.tg-footer-socials a{width:25px;height:25px}
  :is(body.home,body.page,body.single-post) .tg-footer-explore a,:is(body.home,body.page,body.single-post) .tg-footer-contact a,:is(body.home,body.page,body.single-post) .tg-footer-location,:is(body.home,body.page,body.single-post) .tg-footer-contact p{font-size:8px}
}


/* v1.9.15 — Built Different. For a Reason. section rebuilt as four cards while preserving the visual language. */
body.home .tg-values-black > .tg-shell{
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr);
  gap:16px;
}
body.home .tg-values-intro{
  max-width:780px;
  margin:0;
  font-size:14px;
  line-height:1.65;
  color:#0a0d12;
}
body.home .tg-careers-grid--business{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px 24px;
  align-content:start;
  margin:0;
}
body.home .tg-careers-grid--business > article{
  display:flex;
  flex-direction:column;
  min-height:0;
  margin:0;
  padding:0;
}
body.home .tg-careers-grid--business figure{
  height:min(17vh,180px);
  margin:0 0 14px;
}
body.home .tg-careers-grid--business .tg-values-card-copy{
  border-top:2px solid var(--tg-tech-lime);
  padding-top:12px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
body.home .tg-careers-grid--business .tg-values-index{
  display:inline-block;
  font-family:"Oxanium","Zalando Sans Expanded",sans-serif;
  font-size:11px;
  font-weight:700;
  line-height:1;
  letter-spacing:.14em;
  color:var(--tg-tech-lime);
}
body.home .tg-values-black .tg-careers-grid--business h3{
  margin:0;
  font-size:clamp(18px,1.9vw,26px);
  line-height:1.04;
}
body.home .tg-values-black .tg-careers-grid--business p{
  margin:0;
  font-size:13px;
  line-height:1.5;
  color:#22303a;
}

@media (min-width:1200px){
  body.home .tg-careers-grid--business{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
  }
  body.home .tg-careers-grid--business figure{
    height:min(14vh,145px);
    margin-bottom:12px;
  }
  body.home .tg-values-black .tg-careers-grid--business h3{
    font-size:clamp(16px,1.35vw,22px);
  }
  body.home .tg-values-black .tg-careers-grid--business p{
    font-size:12px;
    line-height:1.42;
  }
}

@media (max-width:760px){
  body.home .tg-values-black > .tg-shell{
    grid-template-rows:auto auto minmax(0,1fr);
    gap:10px;
    padding:10px 18px;
  }
  body.home .tg-values-intro{
    font-size:10px;
    line-height:1.45;
  }
  body.home .tg-careers-grid--business{
    grid-template-columns:1fr;
    grid-template-rows:none;
    gap:10px;
  }
  body.home .tg-careers-grid--business > article{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:stretch;
    overflow:hidden;
  }
  body.home .tg-careers-grid--business figure{
    grid-column:1;
    grid-row:1;
    height:100%;
    min-height:120px;
    margin:0;
  }
  body.home .tg-careers-grid--business .tg-values-card-copy{
    grid-column:2;
    grid-row:1;
    padding:9px;
    border-top:0;
    border-left:2px solid var(--tg-tech-lime);
    justify-content:center;
  }
  body.home .tg-careers-grid--business .tg-values-index{
    font-size:9px;
  }
  body.home .tg-values-black .tg-careers-grid--business h3{
    font-size:13px;
    line-height:1.08;
  }
  body.home .tg-values-black .tg-careers-grid--business p{
    font-size:8.8px;
    line-height:1.32;
  }
}

@media (max-width:760px) and (max-height:700px){
  body.home .tg-values-black > .tg-shell{
    gap:8px;
    padding-top:7px;
    padding-bottom:7px;
  }
  body.home .tg-values-intro{
    font-size:9px;
    line-height:1.38;
  }
  body.home .tg-careers-grid--business{
    gap:8px;
  }
  body.home .tg-careers-grid--business figure{
    min-height:104px;
  }
  body.home .tg-careers-grid--business .tg-values-card-copy{
    padding:7px 8px;
  }
  body.home .tg-values-black .tg-careers-grid--business h3{
    font-size:11px;
  }
  body.home .tg-values-black .tg-careers-grid--business p{
    font-size:7.7px;
    line-height:1.28;
  }
}


/* v1.9.16 — TEMAGUE Designs heading now uses the same section-heading system and technical rule as the other homepage sections. */
body.home .tg-services-showcase .tg-services-layout{
  grid-template-rows:auto auto auto minmax(0,1fr) auto;
}
body.home .tg-services-showcase .tg-services-heading{
  margin:0 0 22px;
  padding:0;
}
body.home .tg-services-showcase .tg-services-title{
  margin:0;
  color:var(--tg-tech-ink);
  font-family:"Oxanium","Zalando Sans Expanded",sans-serif;
  font-style:italic;
  font-weight:800;
  font-size:clamp(38px,4.7vw,78px);
  line-height:.94;
  letter-spacing:-.055em;
  white-space:nowrap;
}
body.home .tg-services-showcase .tg-services-title span{color:inherit}
body.home .tg-services-showcase .tg-tech-line{
  margin-top:0;
}

@media(max-width:760px){
  body.home .tg-services-showcase>.tg-services-layout{
    grid-template-rows:auto auto auto minmax(0,1fr) auto;
  }
  body.home .tg-services-showcase .tg-services-heading{
    margin:0 0 8px;
  }
  body.home .tg-services-showcase .tg-services-title{
    margin:0;
    font-size:clamp(28px,8.6vw,41px);
    line-height:.94;
    letter-spacing:-.055em;
    white-space:normal;
  }
  body.home .tg-services-showcase .tg-tech-line{
    margin:0 0 7px;
  }
}

@media(max-width:760px) and (max-height:700px){
  body.home .tg-services-showcase .tg-services-heading{margin-bottom:5px}
  body.home .tg-services-showcase .tg-tech-line{margin-bottom:5px}
  body.home .tg-services-showcase .tg-services-title{font-size:28px}
}


/* v1.9.17 — TEMAGUE Designs: center the entire section composition vertically.
   The technical rule, title, tabs, package card and description behave as one
   compact content group instead of stretching to fill the viewport. */
@media (min-width:761px){
  body.home .tg-services-showcase{
    display:flex;
    align-items:center;
    justify-content:center;
  }
  body.home .tg-services-showcase>.tg-services-layout{
    width:100%;
    height:auto;
    min-height:0;
    max-height:100%;
    margin-block:auto;
    padding-block:clamp(8px,1.1svh,14px);
    grid-template-rows:auto auto auto clamp(288px,32svh,376px) auto;
    gap:clamp(6px,.85svh,10px);
    align-content:center;
    align-self:center;
  }
  body.home .tg-services-showcase .tg-services-heading{
    margin:0;
  }
  body.home .tg-services-showcase .tg-tech-line{
    margin:0;
  }
  body.home .tg-services-showcase .tg-services-card{
    height:clamp(288px,32svh,376px);
    min-height:0;
  }
  body.home .tg-services-showcase .tg-services-description{
    margin:0;
  }
}

@media (max-width:760px){
  body.home .tg-services-showcase{
    display:flex;
    align-items:center;
    justify-content:center;
  }
  body.home .tg-services-showcase>.tg-services-layout{
    width:100%;
    height:auto;
    min-height:0;
    max-height:100%;
    margin-block:auto;
    align-self:center;
    align-content:center;
  }
}

/* v1.9.18 — preserve shared section gutters while keeping TEMAGUE Designs vertically centered. */
@media (min-width:761px){
  body.home .tg-services-showcase>.tg-services-layout{
    width:min(100% - 64px,1760px);
    margin-inline:auto;
  }
}
@media (max-width:760px){
  body.home .tg-services-showcase>.tg-services-layout{
    width:min(100% - 32px,720px);
    margin-inline:auto;
  }
}


/* v1.9.21 — zero inter-section spacing on the homepage.
   Only spacing BETWEEN homepage sections is removed; each section keeps its own internal padding/gutters. */
body.home .wp-site-blocks,
body.home main.tg-rebuild,
body.home .tg-temague-editorial{
  gap:0 !important;
  row-gap:0 !important;
  column-gap:0 !important;
}
body.home .wp-site-blocks > *,
body.home main.tg-rebuild > *,
body.home .tg-temague-editorial > [data-tg-screen],
body.home .tg-temague-editorial > .tg-new-footer{
  margin-top:0 !important;
  margin-bottom:0 !important;
  margin-block:0 !important;
}
body.home main.tg-rebuild > [data-tg-screen] + [data-tg-screen],
body.home main.tg-rebuild > [data-tg-screen] + .tg-new-footer,
body.home main.tg-rebuild > .tg-new-footer + [data-tg-screen]{
  margin-top:0 !important;
}


/* v1.9.22 — give Latest Posts a taller desktop presence so the CTA section does not ride into the same viewport. */
@media (min-width:761px){
  body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{
    grid-template-rows:minmax(210px,1.28fr) auto auto;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts{
    align-items:stretch;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
    min-height:180px;
    padding:14px 0 12px;
    align-self:center;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-main{
    padding:clamp(48px,6.6vh,74px) 0;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-bottom{
    padding:20px 0;
  }
}


/* v1.9.24 — Latest Posts +20px to fully cover the preceding CTA edge on desktop. */


/* v1.9.25 — enlarge the entire Latest Posts composition without changing its section height. */
@media (min-width:761px){
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
    grid-template-columns:340px minmax(0,1fr);
    gap:42px;
    padding:10px 0;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head>span{
    margin-bottom:8px;
    font-size:10px;
    letter-spacing:.17em;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head h2{
    font-size:34px;
    line-height:.98;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-view-all{
    gap:8px;
    font-size:10.5px;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-view-all svg{
    width:16px;
    height:16px;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item{
    height:40px;
    min-height:40px;
    grid-template-columns:40px minmax(0,1fr) 132px;
    gap:14px;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-index{
    width:28px;
    height:28px;
    font-size:9px;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-item h3{
    font-size:15px;
    line-height:1.12;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-post-link{
    width:132px;
    min-width:132px;
    gap:9px;
    font-size:10px;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-arrow{
    width:28px;
    height:28px;
    flex-basis:28px;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-arrow svg{
    width:14px;
    height:14px;
  }
}


/* v1.9.27 — center Latest Posts content without altering the proven section height. */
@media (min-width:761px){
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
    align-items:center;
    align-content:center;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-head{
    height:120px;
    min-height:120px;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-view-all{
    margin-top:12px;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-posts-list{
    align-self:center;
    margin:0;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-arrow svg,
  :is(body.home,body.page,body.single-post) .tg-new-footer .tg-latest-view-all svg{
    transform:rotate(45deg);
    transform-origin:center;
  }
}


/* v1.9.28 — keep Latest Posts within the same max-width gutter system as the rest of the homepage.
   Prevents the journal row from stretching across ultra-wide CSS viewports when the browser is zoomed out. */
@media (min-width:761px){
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
    width:min(100% - 72px,1760px);
    max-width:1760px;
    margin-inline:auto;
  }
}
@media (max-width:760px){
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts>.tg-latest-posts-shell{
    width:min(100% - 32px,720px);
    max-width:720px;
    margin-inline:auto;
  }
}


/* v1.9.29 — contrast audit for homepage Sections 1–4.
   These four sections use light surfaces, so all readable UI text is explicitly
   pinned to dark, high-contrast values instead of inheriting legacy white rules. */
body.home .tg-editorial-intro,
body.home .tg-services-showcase,
body.home .tg-process-editorial,
body.home .tg-exclusive-editorial{
  color:#0a0d12;
}

/* Section 1 — Websites made to stand apart */
body.home .tg-editorial-intro .tg-ed-heading h2,
body.home .tg-editorial-intro .tg-ed-bigcopy{
  color:#0a0d12;
}
body.home .tg-editorial-intro .tg-ed-bigcopy + p{
  color:#384352;
}
body.home .tg-editorial-intro .tg-tech-line::before{
  background:rgba(10,13,18,.72);
}
body.home .tg-editorial-intro .tg-tech-line i{
  border-color:rgba(10,13,18,.45);
}

/* Section 2 — TEMAGUE Designs. Keep only intentional dark-surface text white. */
body.home .tg-services-showcase .tg-services-title,
body.home .tg-services-showcase .tg-services-status,
body.home .tg-services-showcase .tg-services-price,
body.home .tg-services-showcase .tg-services-benefits,
body.home .tg-services-showcase .tg-services-description,
body.home .tg-services-showcase .tg-float-services,
body.home .tg-services-showcase .tg-float-why{
  color:#07101b;
}
body.home .tg-services-showcase .tg-services-description{color:#3f4a57}
body.home .tg-services-showcase .tg-services-tab:not(.is-active){color:#07101b}
body.home .tg-services-showcase .tg-services-tab.is-active{color:#fff}
body.home .tg-services-showcase .tg-services-tab.is-active .tg-tab-icon{color:#07101b}
body.home .tg-services-showcase .tg-device-bar,
body.home .tg-services-showcase .tg-device-screen,
body.home .tg-services-showcase .tg-float-contact{color:#fff}
body.home .tg-services-showcase .tg-tech-line::before{background:rgba(10,13,18,.72)}
body.home .tg-services-showcase .tg-tech-line i{border-color:rgba(10,13,18,.45)}

/* Section 3 — How it works */
body.home .tg-process-editorial .tg-ed-heading h2,
body.home .tg-process-editorial .tg-workflow-copy h3{
  color:#0a0d12;
}
body.home .tg-process-editorial .tg-workflow-copy p{color:#4b5563}
body.home .tg-process-editorial .tg-workflow-node>i{color:#111820}
body.home .tg-process-editorial .tg-workflow-node>span{color:#fff;background:#111820}
body.home .tg-process-editorial .tg-tech-line::before{background:rgba(10,13,18,.72)}
body.home .tg-process-editorial .tg-tech-line i{border-color:rgba(10,13,18,.45)}

/* Section 4 — One design. One business. */
body.home .tg-exclusive-editorial .tg-ed-heading h2,
body.home .tg-exclusive-editorial .tg-story-grid strong{
  color:#0a0d12;
}
body.home .tg-exclusive-editorial .tg-story-grid p{color:#3f4a57}
body.home .tg-exclusive-editorial .tg-story-grid article>div{color:#0a0d12}
body.home .tg-exclusive-editorial .tg-tech-line::before{background:rgba(10,13,18,.72)}
body.home .tg-exclusive-editorial .tg-tech-line i{border-color:rgba(10,13,18,.45)}

/* v1.9.34 — CANONICAL VIEWPORT SYSTEM (audit cleanup)
   One source of truth for the visible header height. Sections 01–06 and the
   snap controller now agree on the same rendered header geometry. Experimental
   viewport patches v1.9.23 and v1.9.30–v1.9.33 were removed. */
@media (min-width:1181px){
  body.home{--tg-page-header-h:80px}
}
@media (min-width:761px) and (max-width:1180px){
  body.home{--tg-page-header-h:70px}
}

@media (min-width:761px){
  body.home .tg-rebuild{
    --hh:var(--tg-page-header-h) !important;
    --tg-header-h:var(--tg-page-header-h) !important;
    --tg-section-h:calc(100svh - var(--tg-page-header-h)) !important;
    padding:0 !important;
    margin:0 !important;
    gap:0 !important;
  }

  /* Sections 01–06: exact remaining viewport below the fixed header. */
  body.home .tg-rebuild > .tg-editorial-intro,
  body.home .tg-rebuild > .tg-services-showcase,
  body.home .tg-rebuild > .tg-process-editorial,
  body.home .tg-rebuild > .tg-exclusive-editorial,
  body.home .tg-rebuild > .tg-values-black,
  body.home .tg-rebuild > .tg-contact-screen{
    width:100% !important;
    height:var(--tg-section-h) !important;
    min-height:var(--tg-section-h) !important;
    max-height:var(--tg-section-h) !important;
    margin:0 !important;
    padding-block:0 !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    scroll-margin-top:var(--tg-page-header-h);
  }

  /* Gutenberg group must not add flow spacing around the section blocks. */
  body.home main.tg-rebuild.wp-block-group,
  body.home main.tg-rebuild.is-layout-flow{
    margin:0 !important;
    padding:0 !important;
    row-gap:0 !important;
    gap:0 !important;
  }
  body.home main.tg-rebuild.is-layout-flow > *{
    margin-block-start:0 !important;
    margin-block-end:0 !important;
  }

  /* Center each section's complete content composition without changing section height. */
  body.home .tg-editorial-intro > .tg-shell,
  body.home .tg-process-editorial > .tg-shell,
  body.home .tg-exclusive-editorial > .tg-shell,
  body.home .tg-values-black > .tg-shell{
    width:min(100% - 64px,1760px) !important;
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100% - 20px) !important;
    margin:auto !important;
    box-sizing:border-box !important;
    overflow:hidden;
    align-self:center;
  }

  body.home .tg-services-showcase > .tg-services-layout{
    width:min(100% - 64px,1760px) !important;
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100% - 20px) !important;
    margin:auto !important;
    align-self:center !important;
    align-content:center !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  body.home .tg-contact-screen > .tg-showcase-cta-inner{
    width:min(100% - 64px,1760px) !important;
    max-height:calc(100% - 20px) !important;
    min-height:0 !important;
    margin:auto !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    align-self:center !important;
  }
}

/* Short desktop viewports: scale dense content, never the section box itself. */
@media (min-width:761px) and (max-height:700px){
  body.home .tg-editorial-intro .tg-ed-heading h2,
  body.home .tg-services-showcase .tg-services-title,
  body.home .tg-process-editorial .tg-ed-heading h2,
  body.home .tg-exclusive-editorial .tg-ed-heading h2,
  body.home .tg-values-black .tg-ed-heading h2{
    font-size:clamp(30px,3.5vw,48px) !important;
  }
  body.home .tg-editorial-intro .tg-angular-intro>figure{
    height:min(220px,31svh) !important;
  }
  body.home .tg-services-showcase .tg-services-card{
    height:min(250px,36svh) !important;
    min-height:0 !important;
  }
  body.home .tg-process-editorial .tg-workflow-node{
    width:54px !important;height:54px !important;
  }
  body.home .tg-exclusive-editorial .tg-story-grid{
    max-height:calc(var(--tg-section-h) - 105px) !important;
  }
  body.home .tg-values-black .tg-careers-grid--business figure{
    height:min(112px,20svh) !important;
  }
  body.home .tg-contact-screen .tg-showcase-cta-copy h2{
    font-size:clamp(38px,4vw,62px) !important;
  }
}



/* v1.9.35 — restore the proven pre-v1.9.20 homepage DOM contract while retaining Site Editor sections.
   The custom home-shell renders the section blocks as direct children of the snap root,
   so Gutenberg core/group flow layout can no longer inject spacing or alter section geometry. */
body.home main.tg-rebuild[data-tg-snap-root]{
  display:block;
  width:100%;
  max-width:none;
  margin:0 !important;
  padding:0 !important;
  gap:0 !important;
  row-gap:0 !important;
  column-gap:0 !important;
}
body.home main.tg-rebuild[data-tg-snap-root] > [data-tg-screen],
body.home main.tg-rebuild[data-tg-snap-root] > .tg-new-footer{
  margin-block:0 !important;
}


/* v1.9.36 — restore the original gray footer height.
   Latest Posts, black legal footer, and snap-root behavior remain unchanged. */
@media (min-width:761px){
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-main{
    padding:clamp(62px,8vh,94px) 0;
  }
}


/* v1.9.37 — allocate an explicit desktop row to the gray footer instead of relying on auto + padding.
   Latest Posts receives the remaining space; black legal footer stays automatic. */
@media (min-width:761px){
  body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{
    grid-template-rows:minmax(210px,1fr) minmax(360px,42vh) auto;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-main{
    height:100%;
    min-height:360px;
    padding:0;
    display:flex;
    align-items:center;
    box-sizing:border-box;
  }
  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-main>.tg-footer-grid{
    width:min(100% - 72px,1760px);
    margin-inline:auto;
  }
}


/* v1.9.38 — keep the complete final screen visible.
   Reserve the black legal footer, keep Latest Posts at its proven height,
   and let the gray footer take only the remaining space. */
@media (min-width:761px){
  body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{
    display:grid;
    grid-template-rows:210px minmax(0,1fr) auto;
    overflow:hidden;
  }

  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-latest-posts{
    min-height:0;
    height:100%;
  }

  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-main{
    height:100%;
    min-height:0;
    padding:0;
    display:flex;
    align-items:center;
    overflow:hidden;
  }

  :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-bottom{
    height:auto;
    min-height:0;
    padding:20px 0;
    flex:none;
  }
}


/* v1.9.39 — reduce Latest Posts desktop row so the gray footer receives more height. */
@media (min-width:761px){
  body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{
    grid-template-rows:180px minmax(0,1fr) auto;
  }
}


/* v1.9.40 — reduce Latest Posts desktop row to 170px. */
@media (min-width:761px){
  body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{
    grid-template-rows:170px minmax(0,1fr) auto;
  }
}


/* v1.9.41 — TEMAGUE Designs desktop card height +20%, width and tab logic unchanged. */
@media (min-width:761px){
  body.home .tg-services-showcase>.tg-services-layout{
    grid-template-rows:auto auto auto clamp(345.6px,38.4svh,451.2px) auto;
  }
  body.home .tg-services-showcase .tg-services-card{
    height:clamp(345.6px,38.4svh,451.2px);
  }
}
@media (min-width:761px) and (max-height:700px){
  body.home .tg-services-showcase .tg-services-card{
    height:min(300px,43.2svh) !important;
  }
}


/* v1.9.42 — keep the taller TEMAGUE Designs card without clipping the package description.
   Rebalance only the internal vertical budget of this section. */
@media (min-width:761px){
  body.home .tg-services-showcase>.tg-services-layout{
    height:calc(100% - 16px) !important;
    max-height:calc(100% - 16px) !important;
    padding-block:0 !important;
    gap:clamp(4px,.55svh,7px) !important;
    grid-template-rows:auto auto auto minmax(0,1fr) auto !important;
    overflow:visible !important;
  }

  body.home .tg-services-showcase .tg-tech-line{
    margin:0 !important;
  }

  body.home .tg-services-showcase .tg-services-heading{
    margin:0 !important;
  }

  body.home .tg-services-showcase .tg-services-title{
    font-size:clamp(36px,min(4vw,6.2svh),62px) !important;
    line-height:.92 !important;
  }

  body.home .tg-services-showcase .tg-services-tabs{
    height:clamp(44px,5.8svh,54px) !important;
    min-height:44px !important;
  }

  body.home .tg-services-showcase .tg-services-card{
    width:100%;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
  }

  body.home .tg-services-showcase .tg-services-description{
    margin:0 !important;
    padding-top:4px !important;
    font-size:clamp(10px,min(.9vw,1.55svh),14px) !important;
    line-height:1.15 !important;
    overflow:visible !important;
  }
}

/* Short desktop viewports: preserve the description first, then scale the card within the remaining row. */
@media (min-width:761px) and (max-height:700px){
  body.home .tg-services-showcase>.tg-services-layout{
    gap:4px !important;
    height:calc(100% - 10px) !important;
    max-height:calc(100% - 10px) !important;
  }
  body.home .tg-services-showcase .tg-services-title{
    font-size:36px !important;
  }
  body.home .tg-services-showcase .tg-services-tabs{
    height:42px !important;
    min-height:42px !important;
  }
  body.home .tg-services-showcase .tg-services-card{
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
  }
  body.home .tg-services-showcase .tg-services-description{
    font-size:9px !important;
    line-height:1.12 !important;
  }
}


/* v1.9.43 — restore TEMAGUE Designs card height to the pre-v1.9.41 size. */
@media (min-width:761px){
  body.home .tg-services-showcase>.tg-services-layout{
    grid-template-rows:auto auto auto clamp(288px,32svh,376px) auto !important;
  }

  body.home .tg-services-showcase .tg-services-card{
    height:clamp(288px,32svh,376px) !important;
    min-height:0 !important;
    max-height:none !important;
  }
}

@media (min-width:761px) and (max-height:700px){
  body.home .tg-services-showcase .tg-services-card{
    height:min(250px,36svh) !important;
    min-height:0 !important;
  }
}


/* v1.9.44 — local inline SVG icon compatibility (Font Awesome CDN removed). */
.tg-icon{display:inline-block;width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.12em;box-sizing:content-box}
.tg-icon .is-fill{fill:currentColor;stroke:none}
body.home .tg-tab-icon .tg-icon{width:16px;height:16px;vertical-align:0}
body.home .tg-workflow-node>.tg-icon{width:1em;height:1em}
:is(body.home,body.page,body.single-post) .tg-footer-socials a .tg-icon{width:18px;height:18px}
:is(body.home,body.page,body.single-post) .tg-footer-contact .tg-icon,:is(body.home,body.page,body.single-post) .tg-footer-location .tg-icon{width:18px;height:18px;flex:0 0 18px}
body.single .tg-rating-star .tg-icon{width:18px;height:18px;display:block}
body.single .tg-share .tg-icon{width:1em;height:1em}


/* v1.9.48 — official Font Awesome Free SVG path treatment (no CDN/webfont). */
.tg-icon.tg-icon-fa-svg{
  fill:currentColor !important;
  stroke:none !important;
  stroke-width:0 !important;
  overflow:visible;
}
.tg-icon.tg-icon-fa-svg path{
  fill:currentColor !important;
  stroke:none !important;
}
body.home .tg-workflow-node>.tg-icon-fa-svg{
  width:19px;
  height:19px;
  vertical-align:0;
}
:is(body.home,body.page,body.single-post) .tg-footer-socials a .tg-icon-fa-svg{
  width:18px;
  height:18px;
  vertical-align:0;
}
body.home .tg-tab-icon .tg-icon-fa-svg{
  width:16px;
  height:16px;
}


/* v1.9.61 audit fix — final footer geometry only; no visual footer values changed. */
@media(min-width:761px){
 body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{overflow:visible}
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-bottom{display:block;visibility:visible;flex:none}
}
@media(max-width:760px){
 :is(body.home,body.page,body.single-post) .tg-new-footer>.tg-footer-bottom{display:block;visibility:visible}
}

/* v1.9.64 — homepage final screen rebalance:
   Latest Posts -15px (170px -> 155px); gray footer receives the freed 15px. */
@media (min-width:761px){
  body.home .tg-rebuild>.tg-new-footer[data-tg-screen]{
    grid-template-rows:155px minmax(0,1fr) auto;
  }
}

/* v1.9.70 — Built Different cards use local 3D SVG artwork instead of remote demo photos. */
body.home .tg-careers-grid--business figure{
  overflow:hidden;
  border-radius:20px;
  background:linear-gradient(135deg,#f8fbf1 0%,#eef5e2 100%);
}
body.home .tg-careers-grid--business figure svg{
  width:100%;
  height:100%;
  display:block;
}
body.home .tg-careers-grid--business figure .tg-values-art text{
  font-family:Arial,sans-serif;
}

/* v1.9.71 — Built Different cleanup: SVG-only cards, no top lime rule, neutral lower accent. */
body.home .tg-careers-grid--business .tg-values-card-copy{
  border-top:0 !important;
  border-bottom:2px solid #2d3742;
  padding-top:12px;
  padding-bottom:12px;
}
@media(max-width:760px){
  body.home .tg-careers-grid--business .tg-values-card-copy{
    border-top:0 !important;
    border-left:0 !important;
    border-bottom:2px solid #2d3742;
  }
}


/* v1.9.72 — Built Different section now uses the same workflow design system as How it works. */
body.home #tg-why.tg-process-editorial > .tg-shell{
  display:block !important;
  grid-template-rows:none !important;
  gap:0 !important;
}
body.home #tg-why.tg-process-editorial .tg-ed-heading{
  margin-bottom:30px;
}
body.home #tg-why.tg-process-editorial .tg-workflow{
  margin:0;
}
body.home #tg-why.tg-process-editorial .tg-workflow-copy h3,
body.home #tg-why.tg-process-editorial .tg-ed-heading h2{
  color:#0a0d12;
}
body.home #tg-why.tg-process-editorial .tg-workflow-copy p{
  color:#4b5563;
}
body.home #tg-why.tg-process-editorial .tg-workflow-node > i{
  color:#111820;
}
body.home #tg-why.tg-process-editorial .tg-workflow-node > span{
  color:#fff;
  background:#111820;
}
@media (max-width:760px){
  body.home #tg-why.tg-process-editorial > .tg-shell{
    padding:10px 18px;
  }
  body.home #tg-why.tg-process-editorial .tg-ed-heading{
    margin-bottom:10px;
  }
}


/* v1.9.73 — Built Different section restored to card layout with exact copy and upgraded 3D artwork. */
body.home #tg-why > .tg-shell{
  display:grid;
  grid-template-rows:auto auto auto minmax(0,1fr);
  gap:16px;
}
body.home #tg-why .tg-values-intro{
  max-width:860px;
  margin:0;
  font-size:14px;
  line-height:1.68;
  color:#4a5560;
}
body.home #tg-why .tg-careers-grid--business{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  align-content:start;
  margin:0;
}
body.home #tg-why .tg-careers-grid--business > article{
  display:flex;
  flex-direction:column;
  min-height:0;
  margin:0;
}
body.home #tg-why .tg-careers-grid--business figure{
  height:min(18vh,190px);
  margin:0 0 14px;
  overflow:hidden;
  border-radius:24px;
  background:linear-gradient(135deg,#fbfcf7 0%,#eef3e7 100%);
  box-shadow:0 18px 30px rgba(15,20,27,.08);
}
body.home #tg-why .tg-careers-grid--business figure svg{
  width:100%;
  height:100%;
  display:block;
}
body.home #tg-why .tg-values-card-copy{
  padding:0 0 10px;
  border-bottom:2px solid #2f3a46;
  display:flex;
  flex-direction:column;
  gap:8px;
}
body.home #tg-why .tg-values-index{
  display:inline-block;
  font-family:"Oxanium","Zalando Sans Expanded",sans-serif;
  font-size:11px;
  font-weight:700;
  line-height:1;
  letter-spacing:.14em;
  color:#111820;
}
body.home #tg-why .tg-careers-grid--business h3{
  margin:0;
  color:#0a0d12;
  font-size:clamp(18px,1.9vw,26px);
  line-height:1.06;
}
body.home #tg-why .tg-careers-grid--business p{
  margin:0;
  font-size:13px;
  line-height:1.52;
  color:#22303a;
}
@media (min-width:1200px){
  body.home #tg-why .tg-careers-grid--business{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
  }
  body.home #tg-why .tg-careers-grid--business figure{
    height:min(14.5vh,152px);
    margin-bottom:12px;
  }
  body.home #tg-why .tg-careers-grid--business h3{
    font-size:clamp(16px,1.35vw,22px);
  }
  body.home #tg-why .tg-careers-grid--business p{
    font-size:12px;
    line-height:1.45;
  }
}
@media (max-width:760px){
  body.home #tg-why > .tg-shell{
    gap:10px;
    padding:10px 18px;
  }
  body.home #tg-why .tg-values-intro{
    font-size:10.4px;
    line-height:1.46;
  }
  body.home #tg-why .tg-careers-grid--business{
    grid-template-columns:1fr;
    gap:10px;
  }
  body.home #tg-why .tg-careers-grid--business > article{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:stretch;
    gap:0;
  }
  body.home #tg-why .tg-careers-grid--business figure{
    grid-column:1;
    grid-row:1;
    height:100%;
    min-height:132px;
    margin:0;
    border-radius:20px 0 0 20px;
  }
  body.home #tg-why .tg-values-card-copy{
    grid-column:2;
    grid-row:1;
    border-bottom:0;
    border-left:2px solid #2f3a46;
    padding:10px 10px 10px 12px;
    justify-content:center;
  }
  body.home #tg-why .tg-values-index{font-size:9px}
  body.home #tg-why .tg-careers-grid--business h3{font-size:13px;line-height:1.09}
  body.home #tg-why .tg-careers-grid--business p{font-size:8.9px;line-height:1.34}
}
