/* industry pages + case studies (includes/seo_industries.php) — sits on top of gx.css */
.gs-crumb{color:inherit;text-decoration:none}
.gs-crumb:hover{text-decoration:underline}
.gs-needs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.gs-needs-sm{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}
@media(max-width:900px){.gs-needs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.gs-needs,.gs-needs-sm{grid-template-columns:1fr}}
.gs-need{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--gx-line);border-radius:14px;padding:15px 16px;font-size:15px;line-height:1.45;color:var(--gx-ink);font-weight:600}
.gs-need::before{content:"";flex:none;width:20px;height:20px;margin-top:1px;border-radius:50%;background:var(--gx-sky) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231477FF' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/11px no-repeat}
.gs-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
@media(max-width:900px){.gs-points{grid-template-columns:1fr}}
.gs-point{background:var(--gx-bg);border:1px solid var(--gx-line);border-radius:var(--gx-r);padding:24px 22px}
.gs-point h3{font-family:var(--gx-font);font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--gx-ink);margin:0 0 8px}
.gs-point p{margin:0;font-size:14.5px;line-height:1.6;color:var(--gx-muted)}
.gs-pks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media(max-width:900px){.gs-pks{grid-template-columns:1fr}}
.gs-pk{display:flex;flex-direction:column;background:#fff;border:1px solid var(--gx-line);border-radius:16px;padding:22px 20px}
.gs-pk h3{font-family:var(--gx-font);font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--gx-ink);margin:0 0 6px}
.gs-price{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.gs-price b{font-family:var(--gx-font);font-size:30px;line-height:1;font-weight:900;letter-spacing:-.04em;color:var(--gx-ink)}
.gs-price span{font-size:12.5px;font-weight:600;color:var(--gx-muted)}
.gs-pk p{font-size:13.5px;line-height:1.5;color:var(--gx-muted);margin:10px 0 12px}
.gs-pk ul{margin:0 0 18px;padding-left:18px;font-size:13.5px;line-height:1.7;color:var(--gx-text)}
.gs-pk-acts{margin-top:auto;display:flex;gap:10px;flex-wrap:wrap}
.gs-faq{max-width:880px;margin-top:22px}
.gs-faq details{background:#fff;border:1px solid var(--gx-line);border-radius:12px;padding:0 18px;margin-bottom:10px}
.gs-faq summary{cursor:pointer;list-style:none;padding:16px 0;font-weight:700;font-size:15.5px;color:var(--gx-ink);display:flex;justify-content:space-between;gap:14px}
.gs-faq summary::-webkit-details-marker{display:none}
.gs-faq summary::after{content:"+";flex:none;font-size:20px;line-height:1;color:var(--gx-blue)}
.gs-faq details[open] summary::after{content:"\2013"}
.gs-faq details p{margin:0 0 16px;font-size:14.5px;line-height:1.65;color:var(--gx-text)}
.gs-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.gs-chips a{padding:8px 14px;border:1px solid var(--gx-line);border-radius:999px;background:#fff;font-size:13.5px;font-weight:700;color:var(--gx-ink);text-decoration:none}
.gs-chips a:hover{border-color:var(--gx-blue);color:var(--gx-blue)}
.gs-inds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media(max-width:900px){.gs-inds{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.gs-inds{grid-template-columns:1fr}}
.gs-ind{display:flex;flex-direction:column;background:#fff;border:1px solid var(--gx-line);border-radius:var(--gx-r);overflow:hidden;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
.gs-ind:hover{transform:translateY(-4px);box-shadow:var(--gx-sh)}
.gs-ind img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top center;display:block;background:#E9EFF6}
.gs-ind div{padding:18px 20px 20px}
.gs-ind h3{font-family:var(--gx-font);font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--gx-ink);margin:0 0 6px}
.gs-ind p{font-size:14px;line-height:1.55;color:var(--gx-muted);margin:0 0 10px}
.gs-ind small{font-size:12.5px;font-weight:700;color:var(--gx-blue)}
.gs-facts{display:flex;flex-wrap:wrap;gap:8px 26px;margin-top:22px;font-size:14px;color:var(--gx-muted)}
.gs-facts b{color:var(--gx-ink)}
.gs-facts a{color:var(--gx-blue);text-decoration:none}
.gs-cover{margin:0;border-radius:18px;overflow:hidden;border:1px solid var(--gx-line);box-shadow:var(--gx-sh);background:#E9EFF6}
.gs-cover img{display:block;width:100%;height:auto}
.gs-about{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:34px;margin-top:48px;align-items:start}
@media(max-width:900px){.gs-about{grid-template-columns:1fr;gap:14px}}

/* ---- hosting & domain pages (includes/addon_page.php) — appended 2026-09-30 ---- */
.gs-offer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;background:#fff;border:1px solid var(--gx-line);border-radius:20px;padding:36px;box-shadow:var(--gx-sh)}
@media(max-width:900px){.gs-offer{grid-template-columns:1fr;gap:26px;padding:24px 20px}}
.gs-offer .gs-price b{font-size:46px}
.gs-offer .gs-price span{font-size:15px}
.gs-offer-note{margin:10px 0 0;font-size:14px;line-height:1.5;font-weight:600;color:var(--gx-blue2)}
.gs-needs-1{grid-template-columns:1fr;margin-top:14px}
.gs-callout{margin:18px 0 0;padding:14px 16px;border:1px solid #CFE3FF;border-radius:14px;background:var(--gx-sky);font-size:14.5px;line-height:1.55;color:var(--gx-text)}
.gs-callout b{color:var(--gx-ink)}
.gs-step{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gx-blue)}
.gs-faq details p a{color:var(--gx-blue2);font-weight:700}

/* ---- /get-found package cards — appended 2026-09-30 ---- */
.gs-found{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:26px}
@media(max-width:1100px){.gs-found{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.gs-found{grid-template-columns:1fr}}
.gs-fcard{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--gx-line);border-radius:18px;padding:26px 22px;box-shadow:var(--gx-sh)}
.gs-fcard.pop{border-color:var(--gx-blue);box-shadow:0 10px 34px rgba(30,99,255,.16)}
.gs-fbadge{position:absolute;top:-12px;left:22px;background:var(--gx-blue);color:#fff;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:99px}
.gs-fcard h3{margin:0 0 8px;font-size:19px;line-height:1.25;color:var(--gx-ink)}
.gs-fsum{margin:0 0 14px;font-size:14.5px;line-height:1.5;color:var(--gx-text)}
.gs-fcard .gs-price b{font-size:38px}
.gs-flist{list-style:none;margin:16px 0 22px;padding:0;display:grid;gap:9px;flex:1}
.gs-flist li{position:relative;padding-left:24px;font-size:14.5px;line-height:1.45;color:var(--gx-text)}
.gs-flist li:before{content:"";position:absolute;left:0;top:.35em;width:13px;height:13px;border-radius:50%;background:var(--gx-blue) center/8px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E")}
.gs-fcard .gx-btn{justify-content:center}

.gs-fask{display:block;margin-top:10px;text-align:center;font-size:14px;font-weight:600;color:var(--gx-blue2)}

.gs-found-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:860px}
@media(max-width:640px){.gs-found-2{grid-template-columns:1fr}}

/* every other trade, on the industries hub */
.gs-trades{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:14px;margin-top:24px}
.gs-trade{padding:16px 18px;border:1px solid var(--gx-line);border-radius:14px;background:#fff;box-shadow:var(--gx-sh)}
.gs-trade h3{margin:0 0 7px;font-size:14px;font-weight:800;letter-spacing:.01em;color:var(--gx-blue2)}
.gs-trade p{margin:0;font-size:13.5px;line-height:1.65;color:var(--gx-text)}

/* type-of-website cards (/work, /solutions): the same card without a wrapper div, so the
   padding has to come from the direct children. */
.gs-ind>h3,.gs-ind>p,.gs-ind>.gs-ind-meta{padding-left:20px;padding-right:20px}
.gs-ind>h3{padding-top:18px}
.gs-ind>p{flex:1 1 auto}
.gs-ind-meta{display:inline-flex;align-items:center;gap:6px;padding-bottom:20px;font-size:12.5px;font-weight:800;color:var(--gx-blue)}
.gs-ind:hover .gs-ind-meta svg{transform:translateX(3px)}
.gs-ind-meta svg{width:14px;height:14px;transition:transform .2s}
