:root{
  --tglx-deep:#07383e;
  --tglx-deep-2:#0c5057;
  --tglx-aqua:#72d6cf;
  --tglx-aqua-soft:#e9f7f5;
  --tglx-coral:#ef7459;
  --tglx-coral-dark:#d85d45;
  --tglx-paper:#fbfaf6;
  --tglx-card:#fff;
  --tglx-soft:#f1f5f3;
  --tglx-ink:#183235;
  --tglx-muted:#657477;
  --tglx-line:#dce6e4;
  --tglx-radius:18px;
  --tglx-shadow:0 18px 45px rgba(7,56,62,.08);
}
.tglx-page{background:var(--tglx-paper);color:var(--tglx-ink);font:inherit;font-size:inherit;line-height:1.7;overflow:hidden}
.tglx-page *{box-sizing:border-box}
.tglx-page h1,.tglx-page h2,.tglx-page h3{color:var(--tglx-deep);font-family:inherit;line-height:1.15;letter-spacing:-.025em;margin-top:0}
.tglx-page h1{font-size:clamp(2.35rem,5.2vw,4.8rem);max-width:930px;margin-bottom:22px}
.tglx-page h2{font-size:clamp(1.75rem,3.2vw,2.85rem)}
.tglx-page h3{font-size:1.24rem}
.tglx-page p{color:var(--tglx-muted)}
.tglx-page a{text-underline-offset:3px}
.tglx-shell{width:min(1380px,calc(100% - 40px));margin-inline:auto}
.tglx-eyebrow,.tglx-card-kicker{display:block;color:var(--tglx-deep-2);font-weight:850;font-size:.76rem;line-height:1.2;text-transform:uppercase;letter-spacing:.14em;margin-bottom:15px}
.tglx-lead{max-width:850px;font-size:clamp(1.08rem,1.8vw,1.3rem);line-height:1.65;color:var(--tglx-muted)!important}
.tglx-button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.tglx-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 21px;border-radius:999px;text-decoration:none!important;font-weight:800;border:1px solid transparent;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.tglx-button:hover{transform:translateY(-2px)}
.tglx-button--dark{background:var(--tglx-deep);color:#fff!important;box-shadow:0 10px 24px rgba(7,56,62,.16)}
.tglx-button--dark:hover{background:var(--tglx-deep-2)}
.tglx-button--light{background:var(--tglx-coral);color:#fff!important;box-shadow:0 10px 25px rgba(239,116,89,.2)}
.tglx-button--light:hover{background:var(--tglx-coral-dark)}
.tglx-button--ghost{color:var(--tglx-deep)!important;border-color:var(--tglx-line);background:#fff}
.tglx-text-link{font-weight:800;color:var(--tglx-deep-2)!important;text-decoration:none!important}

/* Page headers follow the light, calm style of the current Leiden theme. */
.tglx-simple-hero,.tglx-ranking-hero,.tglx-about-hero{position:relative;background:linear-gradient(180deg,#fff 0%,#f6f7f2 100%);padding:clamp(64px,8vw,104px) 0 clamp(68px,8vw,108px);border-bottom:1px solid var(--tglx-line)}
.tglx-simple-hero:before,.tglx-ranking-hero:before,.tglx-about-hero:before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,var(--tglx-deep) 0 38%,var(--tglx-aqua) 38% 72%,var(--tglx-coral) 72%)}
.tglx-simple-hero:after,.tglx-ranking-hero:after,.tglx-about-hero:after{content:"";position:absolute;right:-70px;bottom:-95px;width:360px;height:210px;border-radius:50%;border:28px solid rgba(114,214,207,.18);transform:rotate(-8deg);pointer-events:none}
.tglx-simple-hero .tglx-shell,.tglx-ranking-hero .tglx-shell,.tglx-about-hero .tglx-shell{position:relative;z-index:1}
.tglx-breadcrumbs{display:flex;align-items:center;gap:10px;margin-bottom:28px;font-size:.9rem;color:var(--tglx-muted)}
.tglx-breadcrumbs a{color:var(--tglx-deep);text-decoration:none;font-weight:700}

/* About */
.tglx-about-hero__grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.72fr);gap:clamp(34px,6vw,82px);align-items:center}
.tglx-local-note{position:relative;border:1px solid #cfe5e1;border-radius:22px;padding:30px;background:var(--tglx-aqua-soft);box-shadow:var(--tglx-shadow)}
.tglx-local-note:before{content:"";display:block;width:58px;height:7px;border-radius:999px;background:var(--tglx-coral);margin-bottom:20px}
.tglx-local-note>span{display:inline-flex;border-radius:999px;background:#fff;color:var(--tglx-deep);font-size:.76rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;padding:7px 11px;margin-bottom:13px;border:1px solid var(--tglx-line)}
.tglx-local-note p{color:var(--tglx-ink);margin:0}
.tglx-about-story{padding:clamp(68px,8vw,110px) 0 30px}
.tglx-section-heading{max-width:830px;margin-bottom:36px}
.tglx-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,5vw,72px)}
.tglx-two-columns p{font-size:1.06rem;margin:0}
.tglx-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:36px 0 clamp(72px,8vw,112px)}
.tglx-value-grid article{position:relative;overflow:hidden;min-height:255px;padding:29px;border-radius:var(--tglx-radius);background:#fff;border:1px solid var(--tglx-line);box-shadow:0 12px 34px rgba(7,56,62,.055)}
.tglx-value-grid article:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:var(--tglx-aqua)}
.tglx-value-grid article:nth-child(2):before{background:var(--tglx-coral)}
.tglx-value-grid article:nth-child(3):before{background:var(--tglx-deep)}
.tglx-value-grid article>span{display:block;font-size:3.45rem;line-height:1;color:rgba(7,56,62,.12);font-weight:900;margin-bottom:40px}
.tglx-about-method{background:#eef5f2;padding:clamp(72px,8vw,110px) 0;border-top:1px solid var(--tglx-line);border-bottom:1px solid var(--tglx-line)}
.tglx-about-method__grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(35px,7vw,105px);align-items:start}
.tglx-process-list{counter-reset:step;list-style:none;padding:0;margin:0;display:grid;gap:13px}
.tglx-process-list li{counter-increment:step;display:grid;grid-template-columns:48px 125px 1fr;gap:18px;align-items:start;padding:21px;border-radius:15px;background:#fff;border:1px solid var(--tglx-line)}
.tglx-process-list li:before{content:counter(step,decimal-leading-zero);font-weight:900;color:var(--tglx-coral)}
.tglx-process-list strong{color:var(--tglx-deep)}
.tglx-process-list span{color:var(--tglx-muted)}
.tglx-about-closing,.tglx-business-note,.tglx-method-panel{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:clamp(62px,7vw,95px);margin-bottom:clamp(62px,7vw,95px);padding:clamp(26px,4vw,48px);border-radius:22px;background:#fff;border:1px solid var(--tglx-line);box-shadow:var(--tglx-shadow)}
.tglx-about-closing>div,.tglx-business-note>div,.tglx-method-panel>div{max-width:800px}
.tglx-about-closing p,.tglx-business-note p,.tglx-method-panel p{margin-bottom:0}

/* Scoring */
.tglx-score-explainer{padding:clamp(66px,8vw,104px) 0;display:grid;gap:18px}
.tglx-score-type{display:grid;grid-template-columns:105px 1fr;gap:27px;padding:30px;border:1px solid var(--tglx-line);border-radius:20px;background:#fff;box-shadow:0 11px 34px rgba(7,56,62,.055)}
.tglx-score-type--primary{border-color:#bedfd9}
.tglx-score-icon{display:grid;place-items:center;aspect-ratio:1;border-radius:19px;background:var(--tglx-deep);color:#fff;font-size:1.55rem;font-weight:900}
.tglx-score-icon--visitor{background:var(--tglx-coral)}
.tglx-formula-section{background:#eaf6f3;padding:clamp(68px,8vw,105px) 0;border-block:1px solid #cfe7e2}
.tglx-formula-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,90px);align-items:center}
.tglx-formula-card{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;padding:27px;border-radius:20px;background:#fff;color:var(--tglx-ink);border:1px solid var(--tglx-line);box-shadow:var(--tglx-shadow)}
.tglx-formula-card>div:not(.tglx-formula-result){padding:17px;border-radius:14px;background:var(--tglx-soft)}
.tglx-formula-card span{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.09em;color:var(--tglx-muted);font-weight:800}
.tglx-formula-card strong{font-size:1.2rem}
.tglx-formula-card hr{grid-column:1/-1;width:100%;border:0;border-top:1px solid var(--tglx-line)}
.tglx-formula-result{grid-column:1/-1;display:flex;justify-content:space-between;align-items:end;padding-top:5px}
.tglx-formula-result strong{font-size:2.1rem;color:var(--tglx-deep)}
.tglx-rules-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:19px;padding:clamp(66px,8vw,105px) 0}
.tglx-rules-grid article{padding:27px;border-radius:18px;background:#fff;border:1px solid var(--tglx-line)}

/* Business */
.tglx-business-options{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:clamp(68px,8vw,106px) 0 20px}
.tglx-business-options article{display:flex;flex-direction:column;align-items:flex-start;padding:29px;border:1px solid var(--tglx-line);border-radius:20px;background:#fff;box-shadow:0 12px 36px rgba(7,56,62,.06)}
.tglx-business-options article p{flex:1}
.tglx-option-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:17px;background:var(--tglx-aqua-soft);color:var(--tglx-deep);font-size:1.7rem;margin-bottom:26px}
.tglx-business-options article:nth-child(2) .tglx-option-icon{background:#fff1ed;color:var(--tglx-coral-dark)}
.tglx-business-note>a{font-weight:900;color:var(--tglx-deep)}

/* Forms */
.tglx-form-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.34fr);gap:31px;align-items:start;padding:clamp(52px,7vw,92px) 0}
.tglx-form-card{padding:clamp(22px,4vw,40px);border-radius:21px;background:#fff;border:1px solid var(--tglx-line);box-shadow:var(--tglx-shadow)}
.tglx-form{display:grid;gap:20px}
.tglx-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.tglx-field{display:grid;gap:8px;color:var(--tglx-deep);font-size:.92rem;font-weight:800}
.tglx-field input,.tglx-field textarea,.tglx-field select{width:100%;min-height:52px;padding:12px 14px;border:1px solid #cbd9d6;border-radius:12px;background:#fff;color:var(--tglx-ink);font:inherit;font-weight:500;outline:0;transition:border .18s,box-shadow .18s}
.tglx-field textarea{min-height:145px;resize:vertical}
.tglx-field input:focus,.tglx-field textarea:focus,.tglx-field select:focus{border-color:var(--tglx-deep-2);box-shadow:0 0 0 4px rgba(114,214,207,.22)}
.tglx-consent{display:flex;align-items:flex-start;gap:11px;color:var(--tglx-muted);font-size:.94rem}
.tglx-consent input{margin-top:5px}
.tglx-honeypot{position:absolute!important;left:-9999px!important}
.tglx-form-aside{position:sticky;top:112px;padding:25px;border-radius:19px;background:#eaf6f3;border:1px solid #d2e9e5}
.tglx-form-aside h2{font-size:1.5rem}
.tglx-form-notice{display:flex;align-items:flex-start;gap:13px;padding:17px 18px;border-radius:14px;font-weight:700;margin-bottom:18px;border:1px solid transparent}
.tglx-form-notice strong{display:block;color:inherit;font-size:1.03rem;margin-bottom:2px}
.tglx-form-notice p{margin:0;color:inherit}
.tglx-form-notice__icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;font-weight:950}
.tglx-form-notice--success{background:#e9f7ef;color:#17613b;border-color:#c9ead7}
.tglx-form-notice--success .tglx-form-notice__icon{background:#17613b;color:#fff}
.tglx-form-notice--error{background:#fff0ed;color:#8a3527;border-color:#f1cfc8}
.tglx-form-notice--error .tglx-form-notice__icon{background:#8a3527;color:#fff}
.tglx-form button[disabled]{opacity:.65;cursor:wait;transform:none!important}

/* Rankings */
.tglx-ranking-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;margin-top:31px;padding-top:19px;border-top:1px solid var(--tglx-line);color:var(--tglx-muted)}
.tglx-ranking-meta a{color:var(--tglx-deep);font-weight:800;text-decoration:none}
.tglx-ranking-list{display:grid;gap:21px;padding:clamp(62px,8vw,100px) 0 10px}
.tglx-ranking-card{position:relative;display:grid;grid-template-columns:72px minmax(180px,270px) 1fr;min-height:240px;border-radius:20px;background:#fff;border:1px solid var(--tglx-line);box-shadow:0 14px 42px rgba(7,56,62,.065);overflow:hidden}
.tglx-ranking-card--top{border-color:#c5ded9;box-shadow:0 20px 50px rgba(7,56,62,.1)}
.tglx-rank-number{display:grid;place-items:center;background:var(--tglx-deep);color:#fff;font-size:2rem;font-weight:900}
.tglx-ranking-card--top .tglx-rank-number{background:var(--tglx-coral)}
.tglx-ranking-image{display:block;min-height:100%}
.tglx-ranking-image img{width:100%;height:100%;object-fit:cover;display:block}
.tglx-ranking-card__body{padding:27px;display:flex;flex-direction:column;justify-content:center}
.tglx-ranking-card__head{display:flex;justify-content:space-between;gap:24px;align-items:start}
.tglx-ranking-card__head h2{font-size:clamp(1.4rem,2.5vw,2.05rem);margin:0}
.tglx-ranking-card__head h2 a{color:inherit;text-decoration:none}
.tglx-ranking-total{min-width:126px;text-align:right}
.tglx-ranking-total span,.tglx-score-grid span{display:block;font-size:.72rem;line-height:1.25;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--tglx-muted)}
.tglx-ranking-total strong{font-size:2.05rem;line-height:1;color:var(--tglx-coral-dark)}
.tglx-ranking-total small{font-size:.8rem;color:var(--tglx-muted)}
.tglx-ranking-motivation{font-size:1.01rem;margin:17px 0}
.tglx-score-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:17px}
.tglx-score-grid>div{min-width:140px;padding:10px 13px;border-radius:11px;background:var(--tglx-soft)}
.tglx-score-grid strong{display:block;color:var(--tglx-deep)}
.tglx-chip-list{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 17px;gap:7px}
.tglx-chip-list li{padding:6px 10px;border-radius:999px;background:var(--tglx-aqua-soft);color:var(--tglx-deep);font-size:.8rem;font-weight:800}
.tglx-archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:clamp(62px,8vw,100px) 0}
.tglx-archive-card{overflow:hidden;border:1px solid var(--tglx-line);border-radius:20px;background:#fff;box-shadow:0 13px 40px rgba(7,56,62,.065)}
.tglx-archive-card img{width:100%;aspect-ratio:16/8.5;object-fit:cover;display:block}
.tglx-archive-card>div{padding:25px}
.tglx-archive-card h2 a{color:inherit;text-decoration:none}
.tglx-empty-state{grid-column:1/-1;padding:48px;border-radius:20px;background:#fff;border:1px dashed #bfd2cf;text-align:center}

/* Visible FAQ */
.tglx-ranking-faq{padding:10px 0 clamp(72px,8vw,110px)}
.tglx-faq-list{display:grid;gap:12px;max-width:920px}
.tglx-faq-list details{border:1px solid var(--tglx-line);border-radius:15px;background:#fff;overflow:hidden}
.tglx-faq-list summary{position:relative;cursor:pointer;list-style:none;padding:20px 58px 20px 21px;color:var(--tglx-deep);font-weight:850}
.tglx-faq-list summary::-webkit-details-marker{display:none}
.tglx-faq-list summary:after{content:"+";position:absolute;right:21px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--tglx-coral)}
.tglx-faq-list details[open] summary:after{content:"−"}
.tglx-faq-list details>div{padding:0 21px 20px}
.tglx-faq-list details>div p:last-child{margin-bottom:0}

@media(max-width:900px){
  .tglx-about-hero__grid,.tglx-about-method__grid,.tglx-formula-grid,.tglx-form-layout{grid-template-columns:1fr}
  .tglx-value-grid,.tglx-business-options{grid-template-columns:1fr}
  .tglx-two-columns,.tglx-rules-grid,.tglx-archive-grid{grid-template-columns:1fr}
  .tglx-form-aside{position:static}
  .tglx-ranking-card{grid-template-columns:58px minmax(150px,220px) 1fr}
  .tglx-process-list li{grid-template-columns:40px 1fr}.tglx-process-list li span{grid-column:2}
}
@media(max-width:680px){
  .tglx-shell{width:min(100% - 28px,1380px)}
  .tglx-simple-hero,.tglx-ranking-hero,.tglx-about-hero{padding:58px 0 62px}
  .tglx-page h1{font-size:clamp(2.05rem,11vw,3.4rem)}
  .tglx-local-note{padding:22px}
  .tglx-form-grid{grid-template-columns:1fr}
  .tglx-score-type{grid-template-columns:70px 1fr;padding:21px;gap:17px}
  .tglx-formula-card{grid-template-columns:1fr}.tglx-formula-card>b{text-align:center}.tglx-formula-result{grid-column:1}
  .tglx-about-closing,.tglx-business-note,.tglx-method-panel{align-items:flex-start;flex-direction:column}
  .tglx-ranking-card{grid-template-columns:48px 1fr;min-height:auto}
  .tglx-ranking-image{grid-column:2;aspect-ratio:16/9;min-height:0}
  .tglx-ranking-card__body{grid-column:2;padding:20px}
  .tglx-ranking-card__head{display:block}
  .tglx-ranking-total{text-align:left;margin-top:14px}
  .tglx-rank-number{grid-row:1 / span 2;font-size:1.35rem;align-items:start;padding-top:21px}
}
@media(prefers-reduced-motion:reduce){.tglx-button{transition:none}}
