/* /english/: the hub of the free English tools. Built from tools.css pieces;
   only what is the hub's own lives here. The look follows the landing and /about/:
   its sky behind a centred heading, path cards on an arc, white sections with
   cards on hairlines. No pastel bands; a category's colour is only its icon. */

/* Hero */
.hub-hero{position:relative;overflow-x:clip;padding:clamp(48px,7vw,96px) var(--gutter,20px) 0;text-align:center}
.hub-sky{position:absolute;z-index:0;top:0;left:50%;translate:-50% 0;width:min(100%,1600px);height:calc(100% - 7rem);border-radius:0 0 16px 16px;overflow:hidden;pointer-events:none}
.hub-sky img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 100%}
.hub-sky::after{content:"";position:absolute;inset:0 0 auto;height:10rem;background:linear-gradient(#fff,rgba(255,255,255,0))}
.hub-hero-copy{position:relative;z-index:1;max-width:1040px;margin:0 auto}
.hub-hero .tt-title{max-width:none;margin:0 auto;font:600 clamp(2.2rem,4.6vw,4rem)/1.04 var(--font-display);letter-spacing:-.05em;text-wrap:balance}
/* The highlighted words in the landing hero's green, as on the home page. */
.hub-hero .tt-title em{color:#25a100}
.hub-hero .tt-lede{max-width:56ch;margin:18px auto 0!important;font-size:clamp(16px,1.25vw,18px);color:var(--ink-soft);text-wrap:pretty}
.hub-hero .tt-actions{justify-content:center;margin-top:28px}
.hub-hero .tt-pill-line{background:#fff}
.hub-facts{display:flex!important;flex-wrap:wrap;justify-content:center;gap:10px!important;max-width:none!important;margin:28px auto 0!important}
.hub-facts .tt-fact{padding:8px 14px 8px 12px;border:1px solid rgba(20,10,40,.08);border-radius:999px;background:rgba(255,255,255,.86);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-size:14px}
.hub-arc{position:relative;z-index:1;height:clamp(230px,22vw,290px);margin-top:clamp(36px,5vw,56px)}
.hub-card{position:absolute;top:0;left:50%;width:clamp(110px,10vw,148px);aspect-ratio:3/4;overflow:hidden;border:4px solid #fff;border-radius:24px;background:#fff;
  box-shadow:0 0 0 1px rgba(0,0,0,.2),0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);
  transform:translateX(calc(-50% + var(--i) * 108%)) translateY(calc(var(--i) * var(--i) * 9px)) rotate(calc(var(--i) * 5deg))}
.hub-card:nth-child(1){--i:-3}.hub-card:nth-child(2){--i:-2}.hub-card:nth-child(3){--i:-1}.hub-card:nth-child(4){--i:0}
.hub-card:nth-child(5){--i:1}.hub-card:nth-child(6){--i:2}.hub-card:nth-child(7){--i:3}
.hub-card img{display:block;width:100%;height:100%;object-fit:cover}

/* Start here: three tools side by side, in the hero above the arc */
.hub-start-band{position:relative;z-index:1;max-width:1100px;margin:clamp(36px,5vw,56px) auto 0}
.hub-start{text-align:center}
.hub-start-h{font:600 clamp(1.4rem,2.4vw,1.75rem)/1.15 var(--font-display);letter-spacing:-.04em}
.hub-start-sub{margin-top:6px!important;color:var(--ink-soft)}
.tt-start-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px!important;text-align:start}
.tt-start-list .tt-tool-row{height:100%;padding:18px 20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(20,10,40,.04);transition:border-color .2s,box-shadow .2s,transform .2s}
.tt-start-list .tt-ico{width:52px;height:52px;border-radius:14px}
.tt-start-list .tt-ico .tt-i{width:26px;height:26px}
.tt-start-list b{font-size:18px}

/* Goals */
.hub-goals{text-align:center}
.hub-goals .tt-chips{justify-content:center;margin-top:24px}

/* The four categories: white sections on a hairline, heading on the left, cards on the right. */
.hub-cats{display:grid;gap:0;padding-block:clamp(8px,2vw,16px) var(--space-section)}
.tt-hub-cat{scroll-margin-top:calc(var(--top-h) + 16px)}
.hub-cats .tt-hub-cat+.tt-hub-cat .tt-panel{border-top:1px solid var(--line)}
.hub-cats .tt-panel{padding:clamp(36px,5vw,64px) 0;border-radius:0;background:transparent}
.hub-cats .tt-panel-head .tt-ico{width:56px;height:56px;border-radius:16px;background:var(--cat-bg);color:var(--cat-ink)}
.hub-cats .tt-panel-head h2{font-weight:600}
.hub-cats .tt-tool{border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 1px 2px rgba(20,10,40,.04);transition:border-color .2s,box-shadow .2s,transform .2s}
.hub-cats .tt-tool .tt-ico{background:var(--cat-bg);color:var(--cat-ink)}
@media (hover:hover) and (pointer:fine){
  .hub-cats .tt-tool:hover,.tt-start-list .tt-tool-row:hover{border-color:rgba(126,34,255,.35);box-shadow:0 10px 24px -12px rgba(60,20,120,.25);transform:translateY(-2px)}
}

/* Popular pages */
.hub-popular{padding-top:0}
.hub-popular .tt-linkcols{margin-top:36px}

@media (prefers-reduced-motion:reduce){
  .hub-cats .tt-tool,.tt-start-list .tt-tool-row{transition:none}
}
@media (max-width:899px){
  .tt-start-list{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .hub-card{width:96px;border-radius:18px}
  .hub-arc{height:200px}
}
@media (max-width:639px){
  .hub-hero .tt-actions .tt-pill{flex:1 1 100%}
  .hub-card:nth-child(1),.hub-card:nth-child(7){display:none}
}
