
@import url('https://fonts.googleapis.com/css2?family=Tilt+Warp&family=Figtree:wght@400;500;600;700&display=swap');
.gts{
  --navy:#071F60;--navy-deep:#041444;--gold:#FFC300;--sun:#FFC82B;--sky:#6EC5EF;
  --paper:#F2F7FC;--card:#FFFFFF;--ink:#0B1A3F;--muted:#4A5A80;--line:rgba(7,31,96,.12);
  --display:"Tilt Warp","Arial Black",system-ui,sans-serif;
  --body:"Figtree",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:22px;--ease:cubic-bezier(.2,.8,.2,1);
}
.gts *,.gts *::before,.gts *::after{box-sizing:border-box}
.gts{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}
.gts-wrap{max-width:1200px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.gts h1,.gts h2,.gts h3{font-family:var(--display);font-weight:400;line-height:1.08;text-wrap:balance;margin:0;text-transform:none}
.gts h2{font-size:clamp(30px,4.2vw,50px);letter-spacing:-.01em;color:var(--navy)}
.gts h3{font-size:clamp(24px,2.6vw,32px);color:var(--navy)}
.gts p,.gts li{font-family:var(--body);font-size:17px}
.gts p{margin:0;max-width:68ch}
.gts a{color:inherit;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/100% 2px no-repeat;transition:background-size .35s var(--ease),color .2s}
.gts a:hover{background-size:0 2px}
.gts a:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:8px}
.gts-band{padding-block:clamp(56px,8vw,104px)}

/* Hero: navy, no animation, story index as the visual */
.gts-hero{background:radial-gradient(110% 90% at 90% 0%,#123a9c 0%,var(--navy) 50%,var(--navy-deep) 100%);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.gts-hero::before{content:"";position:absolute;right:-90px;bottom:-110px;width:420px;height:364px;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);background:rgba(110,197,239,.08);z-index:-1}
.gts-hero .gts-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,72px);align-items:start;padding-block:clamp(56px,8vw,104px)}
.gts-hero-copy{display:grid;gap:20px;min-width:0}
.gts-kicker{font-family:var(--display);font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--sky)}
.gts-hero h1{font-size:clamp(42px,6.4vw,84px);color:var(--gold);letter-spacing:-.02em;line-height:.98}
.gts-hero p{color:rgba(255,255,255,.88)}
.gts-hero p a{color:var(--gold)}
.gts-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.gts-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;padding:15px 24px;border-radius:999px;font-family:var(--display);font-size:16px;line-height:1;background:none!important;border:2px solid var(--gold);color:var(--gold)!important;transition:transform .3s var(--ease),color .3s,box-shadow .3s;isolation:isolate}
.gts-btn::before{content:"";position:absolute;inset:0;background:var(--gold);transform:translateY(101%);border-radius:inherit;transition:transform .45s var(--ease);z-index:-1}
.gts-btn:hover{transform:translateY(-3px);color:var(--navy)!important;box-shadow:0 14px 30px -12px rgba(255,195,0,.7)}
.gts-btn:hover::before{transform:none}
.gts-btn.gts-solid{color:var(--navy)!important}
.gts-btn.gts-solid::before{transform:none}

/* Story index: a call log */
.gts-log{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:22px;display:grid;gap:4px;min-width:0}
.gts-log-head{display:flex;justify-content:space-between;align-items:center;padding:0 10px 12px;border-bottom:1px dashed rgba(255,255,255,.2);margin-bottom:6px}
.gts-log-head span{font-family:var(--display);font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--sky)}
.gts-log-head i{width:10px;height:10px;border-radius:50%;background:#3ddc84;box-shadow:0 0 0 0 rgba(61,220,132,.6);animation:gtsPulse 2.4s infinite}
@keyframes gtsPulse{70%{box-shadow:0 0 0 10px rgba(61,220,132,0)}100%{box-shadow:0 0 0 0 rgba(61,220,132,0)}}
.gts-log a{display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:center;padding:11px 10px;border-radius:12px;background:none!important;color:#fff!important;transition:background-color .3s,transform .3s var(--ease)}
.gts-log a:hover{background-color:rgba(255,195,0,.14)!important;transform:translateX(6px)}
.gts-log b{font-family:var(--display);font-weight:400;font-size:18px;color:var(--gold)}
.gts-log em{font-style:normal;font-size:16px;line-height:1.3}
.gts-log small{font-size:13px;color:var(--sky);white-space:nowrap}

/* In short (GEO summary) */
.gts-short{margin-top:-1px;background:var(--sun);color:var(--navy)}
.gts-short .gts-wrap{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,56px);align-items:center;padding-block:clamp(32px,4vw,48px)}
.gts-short h2{font-size:clamp(26px,3vw,36px);color:var(--navy)}
.gts-short ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}
.gts-short li{position:relative;padding-left:28px;font-size:16px;line-height:1.5;color:var(--navy)}
.gts-short li::before{content:"";position:absolute;left:0;top:.35em;width:14px;height:12px;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);background:var(--navy);transition:transform .35s var(--ease)}
.gts-short li:hover::before{transform:rotate(60deg) scale(1.2)}

/* Theme heads */
.gts-theme{display:grid;grid-template-columns:auto 1fr;gap:18px 28px;align-items:end;margin-bottom:clamp(32px,4vw,48px)}
.gts-theme .gts-tnum{font-family:var(--display);font-size:clamp(60px,8vw,110px);line-height:.8;color:var(--sky);opacity:.55}
.gts-theme p{grid-column:2;color:var(--muted)}

/* Story card: a sales note */
.gts-note{position:relative;background:var(--card);border-radius:var(--r);border:1px solid var(--line);overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.gts-note:hover{transform:translateY(-6px);box-shadow:0 30px 60px -32px rgba(7,31,96,.45)}
.gts-tab{display:flex;align-items:center;gap:12px;padding:14px 22px;background:#eaf3fb;border-bottom:1px solid var(--line);transition:background .35s}
.gts-note:hover .gts-tab{background:var(--navy)}
.gts-av{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold);font-family:var(--display);font-size:16px;transition:transform .5s var(--ease),background .3s,color .3s}
.gts-note:hover .gts-av{transform:rotate(-12deg) scale(1.08);background:var(--gold);color:var(--navy)}
.gts-who{display:grid;line-height:1.25}
.gts-who strong{font-weight:600;font-size:15px;color:var(--navy);transition:color .3s}
.gts-who span{font-size:13px;color:var(--muted);transition:color .3s}
.gts-who a{background-size:0 2px}
.gts-who a:hover{background-size:100% 2px}
.gts-note:hover .gts-who strong{color:#fff}
.gts-note:hover .gts-who span{color:var(--sky)}
.gts-sn{margin-left:auto;font-family:var(--display);font-size:15px;color:var(--muted);transition:color .3s,transform .4s var(--ease)}
.gts-note:hover .gts-sn{color:var(--gold);transform:translateX(-4px)}
.gts-body{padding:clamp(24px,3vw,36px);display:grid;gap:16px;align-content:start}
.gts-quote{font-family:var(--display);font-size:clamp(20px,2.2vw,26px);line-height:1.25;color:var(--navy);padding-left:20px;border-left:5px solid var(--gold);max-width:none}
.gts-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.gts-tags a{font-size:14px;font-weight:600;padding:8px 14px;border-radius:999px;background:rgba(110,197,239,.16)!important;color:var(--navy)!important;transition:background-color .3s,transform .3s var(--ease)}
.gts-tags a:hover{background-color:var(--gold)!important;transform:translateY(-2px)}

.gts-grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.gts-stack{display:grid;gap:22px}

/* Feature story: big photo plus note */
.gts-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:0;align-items:stretch}
.gts-feature.gts-flip{grid-template-columns:.95fr 1.05fr}
.gts-feature.gts-flip .gts-media{order:2}
.gts-media{position:relative;min-height:420px;overflow:hidden;background:var(--navy)}
.gts-media picture{display:contents}
.gts-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s var(--ease)}
.gts-note:hover .gts-media img{transform:scale(1.05)}
.gts-media figcaption{position:absolute;left:16px;bottom:16px;right:16px;font-size:13px;line-height:1.4;color:#fff;background:rgba(4,20,68,.72);padding:8px 12px;border-radius:10px;width:fit-content;max-width:calc(100% - 32px)}

/* Bees: the closer story */
.gts-bees{background:var(--navy);color:#fff;border-radius:32px;padding:clamp(32px,5vw,64px);display:grid;grid-template-columns:auto 1fr;gap:clamp(24px,4vw,56px);align-items:center;position:relative;overflow:hidden;isolation:isolate}
.gts-bees h3{color:var(--gold);font-size:clamp(30px,4vw,48px)}
.gts-bees p{color:rgba(255,255,255,.88)}
.gts-swatch{display:grid;grid-template-columns:repeat(3,56px);gap:10px}
.gts-swatch i{display:block;width:56px;height:48px;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);transition:transform .5s var(--ease)}
.gts-bees:hover .gts-swatch i:nth-child(odd){transform:translateY(-8px) rotate(30deg)}
.gts-bees:hover .gts-swatch i:nth-child(even){transform:translateY(8px) rotate(-30deg)}
.gts-bee{position:absolute;font-size:22px;right:8%;top:18%;transition:transform 1.4s var(--ease);z-index:-1}
.gts-bees:hover .gts-bee{transform:translate(-160px,60px) rotate(-20deg)}
.gts-bees .gts-who strong{color:#fff}.gts-bees .gts-who span{color:var(--sky)}

/* Closer */
.gts-closer{background:var(--navy);color:#fff;border-radius:32px;padding:clamp(36px,6vw,72px);display:grid;gap:18px;position:relative;overflow:hidden;isolation:isolate}
.gts-closer h2{color:var(--gold);font-size:clamp(32px,5vw,58px)}
.gts-closer p{font-size:clamp(17px,1.8vw,20px);color:rgba(255,255,255,.88)}
.gts-closer::after{content:"";position:absolute;right:-120px;top:-120px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(110,197,239,.35),transparent 70%);z-index:-1;transition:transform 1.2s var(--ease)}
.gts-closer:hover::after{transform:translate(-60px,60px) scale(1.2)}
.gts-advice{display:block;border-radius:24px;overflow:hidden;margin-top:24px;background:none!important;transition:transform .5s var(--ease),box-shadow .5s}
.gts-advice:hover{transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(7,31,96,.55)}
.gts-advice img{width:100%;display:block}

@supports (animation-timeline:view()){
  .gts-reveal{animation:gtsRise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}
  @keyframes gtsRise{from{transform:translateY(26px)}to{transform:none}}
}

/* Contrast overrides: the site's own text colours beat scoped ones on dark bands */
.gts .gts-hero h1,.gts .gts-closer h2,.gts .gts-bees h3{color:#FFC300!important}
.gts .gts-hero p,.gts .gts-closer p,.gts .gts-bees p{color:#fff!important}
.gts .gts-hero p a,.gts .gts-closer p a,.gts .gts-bees p a{color:#FFC300!important}

@media (max-width:900px){
  .gts-hero .gts-wrap,.gts-feature,.gts-feature.gts-flip,.gts-grid2,.gts-short .gts-wrap{grid-template-columns:1fr}
  .gts-feature.gts-flip .gts-media{order:0}
  .gts-media{min-height:0;aspect-ratio:4/3}
  .gts-short ul{grid-template-columns:1fr}
}
@media (max-width:620px){
  .gts-theme{grid-template-columns:1fr}.gts-theme p{grid-column:1}
  .gts-bees{grid-template-columns:1fr}
  .gts-btn{width:100%;justify-content:center}
  .gts-log small{display:none}
  .gts-log a{grid-template-columns:32px 1fr}
}
@media (prefers-reduced-motion:reduce){
  .gts *,.gts *::before,.gts *::after{animation:none!important;transition:none!important}
}
