/* GrabbyHost brand kit. Tokens/utilities are reusable; component rollout is scoped. */
:root {
 --gh-navy-950:#091329; --gh-navy-900:#101d3b; --gh-navy-800:#1b3157;
 --gh-orange-500:#ff9500; --gh-orange-600:#ed8200; --gh-orange-700:#ad5300;
 --gh-blue-600:#185fc7; --gh-blue-100:#e9f1fc; --gh-surface:#fff; --gh-surface-soft:#f3f6fb;
 --gh-text:#101d3b; --gh-text-muted:#52647e; --gh-border:#dce4ef;
 --gh-success:#13834b; --gh-danger:#c62f4f; --gh-violet:#7341bd;
 --gh-gradient-navy:radial-gradient(circle at 15% 0,#2c5bc059,transparent 17rem),linear-gradient(#101d3b,#091329);
 --gh-gradient-light:linear-gradient(135deg,#f3f7fd 0%,#fff 72%);
 --gh-type-body:clamp(1.0625rem,1.025rem + .16vw,1.125rem);
 --gh-type-card-copy:clamp(1rem,.965rem + .15vw,1.09375rem);
 --gh-type-card-title:clamp(1.125rem,1.08rem + .18vw,1.25rem);
 --gh-type-small:1rem; --gh-type-label:.875rem; --gh-type-meta:.9375rem;
 --gh-type-h2:clamp(1.75rem,2.6vw,2.75rem); --gh-type-h3:var(--gh-type-card-title);
 --gh-weight-body:400; --gh-weight-label:600; --gh-weight-heading:700;
 --gh-space-1:8px; --gh-space-2:16px; --gh-space-3:24px; --gh-space-4:32px;
 --gh-section-space:64px; --gh-card-radius:16px;
}
.gh-type-heading { font:var(--gh-weight-heading) var(--gh-type-h2)/1.18 var(--gh-font-family); letter-spacing:-.035em; }
.gh-type-body { font:var(--gh-weight-body) var(--gh-type-body)/1.6 var(--gh-font-family); }
.gh-type-small { font:var(--gh-weight-body) var(--gh-type-small)/1.5 var(--gh-font-family); }
.gh-surface-light { background:var(--gh-gradient-light); color:var(--gh-text); }
.gh-surface-navy { background:var(--gh-gradient-navy); color:#fff; }
/* Font Awesome is loaded after component styles on the live site. Its display rule
   overrides single-class grid boxes; scoped flex restores actual glyph centering. */
.gh-home i:is(.gh-help-icon,.gh-help-arrow,.gh-platform-icon,.gh-hosting-trust-icon,.gh-faq-headset),
.gh-home :is(.gh-web-benefits > div,.gh-web-growth,.gh-web-security-cards article,.gh-platform-reasons > div,.gh-faq-support-links a) > i:first-child,
.gh-home .gh-hosting-card-icon,.gh-home .gh-platform-icon,
#header .gh-theme-toggle-desktop > i,#header .gh-theme-toggle-mobile > i {
 display:inline-flex; align-items:center; justify-content:center; line-height:1; text-align:center; flex-shrink:0;
}
.gh-home i:is(.gh-help-icon,.gh-help-arrow,.gh-faq-headset)::before,
.gh-home :is(.gh-web-benefits > div,.gh-web-growth,.gh-web-security-cards article,.gh-platform-reasons > div,.gh-faq-support-links a) > i:first-child::before,
#header .gh-theme-toggle-desktop > i::before,#header .gh-theme-toggle-mobile > i::before { position:static; margin:0; line-height:1; }
#header .gh-theme-toggle-desktop { align-items:center; justify-content:center; padding:0; min-width:44px; min-height:44px; }
#header .gh-theme-toggle-desktop > i { width:24px; height:24px; margin:0; }
/* One spacing rhythm and one heading scale; hero paint is deliberately untouched. */
.gh-home { --gh-section-space:64px; color:var(--gh-text); }
.gh-home > :is(.gh-hosting-reference,.gh-platform-services,.gh-platform-why,.gh-web-reference,.gh-help-reference,.gh-faq-reference) { padding-block:var(--gh-section-space); }
.gh-home .gh-platform-domains { padding-block:0 var(--gh-section-space); background:var(--gh-surface); }
.gh-home .gh-launch-reference { padding-block:0 var(--gh-section-space); background:var(--gh-surface); }
.gh-home .gh-hosting-intro { padding-top:0; }
.gh-home .gh-hosting-intro h2 { margin-top:20px; -webkit-text-stroke:0; }
.gh-home > section:not(.gh-reference-hero) h2 { font-size:var(--gh-type-h2); font-weight:var(--gh-weight-heading); line-height:1.18; letter-spacing:-.035em; }
.gh-home > section:not(.gh-reference-hero) h3 { font-size:var(--gh-type-h3); font-weight:var(--gh-weight-heading); line-height:1.3; letter-spacing:-.02em; }
.gh-home :is(.gh-platform-heading,.gh-platform-why-copy,.gh-web-reference,.gh-help-heading-row,.gh-help-support-heading,.gh-faq-heading) p { font-size:var(--gh-type-body); line-height:1.6; font-weight:400; color:var(--gh-text-muted); }
.gh-home :is(.gh-platform-page p,.gh-web-security-cards p,.gh-help-reference .gh-help-support-cards p,.gh-help-reference .gh-help-shortcut-cards p,.gh-help-reference .gh-help-account-cards p,.gh-faq-list details > p,.gh-faq-support > p,.gh-hosting-tagline) { font-size:var(--gh-type-card-copy); line-height:1.62; color:var(--gh-text-muted); }
.gh-home :is(.gh-platform-reasons small,.gh-web-benefits small,.gh-hosting-features) { font-size:var(--gh-type-small); line-height:1.55; color:var(--gh-text-muted); }
.gh-home :is(.gh-platform-page a,.gh-web-growth li,.gh-faq-support-links strong,.gh-faq-support-links small,.gh-hosting-billing,.gh-hosting-trust small,.gh-platform-domain-actions a) { font-size:var(--gh-type-small); line-height:1.5; }
.gh-home :is(.gh-help-kicker,.gh-web-eyebrow,.gh-platform-kicker,.gh-hosting-kicker,.gh-launch-kicker) { font-size:var(--gh-type-label); font-weight:600; letter-spacing:.09em; }
.gh-home :is(.gh-help-support-cards,.gh-help-shortcut-cards,.gh-help-account-cards) .gh-help-card-title { font-size:1rem; line-height:1.35; }
.gh-home .gh-faq-list summary { font-size:1rem; font-weight:600; line-height:1.45; }
.gh-home .gh-faq-support-links small { color:var(--gh-text-muted); }
.gh-home :is(.gh-help-support-cards,.gh-help-shortcut-cards,.gh-help-account-cards) > a { border-radius:var(--gh-card-radius); }
/* Three surfaces instead of competing blue, cream and pink section washes. */
.gh-home :is(.gh-hosting-reference,.gh-web-security,.gh-help-account) { background:var(--gh-gradient-light); }
.gh-home :is(.gh-platform-services,.gh-web-design,.gh-help-shortcuts,.gh-faq-reference,.gh-platform-why) { background:var(--gh-surface); }
.gh-home .gh-help-support { background:var(--gh-surface-soft); }
.gh-home .gh-help-portrait::after { background:linear-gradient(90deg,var(--gh-surface-soft),transparent 40%); }
.gh-home .gh-help-portrait { z-index:0; pointer-events:none; }
.gh-home .gh-help-container { z-index:1; }
.gh-home :is(.gh-platform-domain-panel,.gh-launch-banner) { background:var(--gh-gradient-navy); }
.gh-home .gh-launch-banner::after { background:linear-gradient(90deg,#091329 0%,#101d3bf2 38%,#09132933 85%); }
.gh-home :is(.gh-web-reference h2 em,.gh-help-reference h2 em,.gh-platform-heading h2 em,.gh-platform-why-copy h2 em,.gh-faq-heading h2 em) { color:var(--gh-blue-600); }
.gh-home :is(.gh-web-button,.gh-platform-primary,.gh-help-client-primary,.gh-launch-actions a:first-child,.gh-hosting-primary) { background:linear-gradient(135deg,#176be0,#1254b5); border:1px solid #1764cc; color:#fff; font-size:1rem; font-weight:700; min-height:48px; border-radius:12px; box-shadow:0 5px 14px #185fc71a; transition:background .18s ease,box-shadow .18s ease; }
.gh-home :is(.gh-web-button,.gh-platform-primary,.gh-help-client-primary,.gh-launch-actions a:first-child,.gh-hosting-primary):hover { background:linear-gradient(135deg,#125ac4,#104697); color:#fff; box-shadow:0 7px 18px #185fc72b; }
.gh-home .gh-help-client-primary > i { color:inherit; }
.gh-home :is(.gh-web-text-link,.gh-platform-page a,.gh-faq-contact) { color:var(--gh-blue-600); }
.gh-home .gh-platform-domain-form button { background:#ff9900; color:#fff; font-weight:700; }
.gh-home .gh-web-growth ul { clear:both; }
.gh-home .gh-platform-viewport { align-items:flex-start; }
.gh-home .gh-platform-earth { width:100%; min-width:0; }
.gh-home .gh-platform-earth-top { flex-wrap:wrap; }
.gh-home .gh-platform-page article { min-height:230px; }
.gh-home .gh-hosting-track { padding-bottom:12px; }
.gh-home .gh-help-human-badge { right:17%; }
.gh-home .gh-help-handnote { display:none; }
.gh-home .gh-faq-support { display:flex; flex-direction:column; }
.gh-home .gh-faq-skyline { margin-top:auto; min-height:150px; width:100%; min-width:0; overflow:hidden; }
.gh-home :is(.gh-web-photo-badge small,.gh-platform-earth-top small,.gh-platform-earth-badges strong,.gh-launch-benefits li) { font-size:var(--gh-type-meta); line-height:1.5; }
.gh-home .gh-web-photo-badge { max-width:85%; }
.gh-footer-reference .gh-footer-main { background:var(--gh-gradient-navy); }
.gh-footer-reference .gh-footer-bottom-band { background:var(--gh-navy-950); }
@media(max-width:1200px) {
 .gh-home { --gh-section-space:48px; }
 .gh-home .gh-help-support-cards { width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .gh-home .gh-help-support-heading { max-width:100%; }
 .gh-home .gh-help-portrait { opacity:.12; }
 .gh-home .gh-help-human-badge { display:none; }
 .gh-home .gh-platform-earth-top { flex-wrap:wrap; }
 .gh-home .gh-web-design-layout { grid-template-columns:1fr; }
 .gh-home .gh-web-design-photo { order:2; }
 .gh-home .gh-web-design-details { grid-template-columns:minmax(0,1fr) 220px; }
}
@media(max-width:767px) {
 .gh-home { --gh-section-space:40px; }
 .gh-home .gh-web-design-details { grid-template-columns:1fr; }
 .gh-home .gh-help-support-cards { grid-template-columns:1fr; }
 .gh-home .gh-help-support-cards .gh-help-arrow { position:absolute; right:18px; bottom:20px; margin:0; }
 .gh-home .gh-help-support-cards p { padding-right:40px; }
 .gh-home .gh-help-support-cards .gh-help-icon { float:left; margin:0 16px 14px 0; }
 .gh-home .gh-help-support-cards p { clear:both; }
 .gh-home .gh-launch-benefits { gap:16px 24px; }
 .gh-home .gh-web-protected-strip strong { font-size:1rem; }
 .gh-home .gh-web-growth li { font-size:var(--gh-type-small); }
 .gh-home .gh-platform-earth { min-height:470px; }
 .gh-home .gh-launch-trust { max-width:100%; }
 .gh-home .gh-help-portrait { display:none; }
}
@media(max-width:380px) { .gh-home .gh-platform-page { grid-template-columns:1fr; } .gh-home .gh-web-growth ul { grid-template-columns:1fr; } }
body.gh-dark-mode { --gh-surface:#0d1a30; --gh-surface-soft:#14243c; --gh-text:#eef4fd; --gh-text-muted:#b5c5dc; --gh-border:#304461; --gh-gradient-light:linear-gradient(135deg,#14243c,#0d1a30); }
body.gh-dark-mode .gh-home :is(.gh-web-reference h2 em,.gh-help-reference h2 em,.gh-platform-heading h2 em,.gh-platform-why-copy h2 em,.gh-faq-heading h2 em) { color:#81b5ff; }
body.gh-dark-mode .gh-home :is(.gh-web-text-link,.gh-platform-page a) { color:#91bfff; }
.gh-home .gh-hosting-trust { width:70%; min-width:0; }
.gh-home .gh-platform-viewport { overflow-x:hidden; }
.gh-home .gh-platform-track { display:flex; grid-template-columns:none; gap:14px; width:100%; padding:2px 2px 8px; }
.gh-home .gh-platform-track > article { flex:0 0 calc((100% - 56px) / 5); min-width:0; min-height:230px; scroll-snap-align:none; }
.gh-home .gh-platform-track > article.gh-service-web .gh-platform-icon { color:#185fc7; background:#e9f1fc; }
.gh-home .gh-platform-track > article.gh-service-wordpress .gh-platform-icon { color:#0960a0; background:#eaf4ff; }
.gh-home .gh-platform-track > article.gh-service-vps .gh-platform-icon { color:#df7800; background:#fff3df; }
.gh-home .gh-platform-track > article.gh-service-domains .gh-platform-icon { color:#13834b; background:#e7f7ee; }
.gh-home .gh-platform-track > article.gh-service-email .gh-platform-icon { color:#7341bd; background:#f3eaff; }
.gh-home .gh-platform-track > article.gh-service-website .gh-platform-icon { color:#c62f83; background:#fff0f7; }
.gh-home .gh-platform-track > article.gh-service-security .gh-platform-icon { color:#c62f4f; background:#fff0f3; }
.gh-home .gh-platform-track > article.gh-service-marketing .gh-platform-icon { color:#c67a00; background:#fff5df; }
.gh-home .gh-platform-controls button:disabled { opacity:1; cursor:pointer; }
.gh-home .gh-help-account-cards > a:nth-child(1) { --help-accent:#13834b; --help-tint:#e7f7ee; }
.gh-home .gh-help-account-cards > a:nth-child(2) { --help-accent:#c62f4f; --help-tint:#fff0f3; }
.gh-home .gh-help-account-cards > a:nth-child(3) { --help-accent:#c67a00; --help-tint:#fff5df; }
.gh-home .gh-help-account-cards > a:nth-child(4) { --help-accent:#185fc7; --help-tint:#e9f1fc; }
.gh-home .gh-help-account-cards > a:nth-child(5) { --help-accent:#7341bd; --help-tint:#f3eaff; }
.gh-home .gh-help-account-cards > a { border-color:color-mix(in srgb,var(--help-accent) 18%,white); background:linear-gradient(135deg,#fff 45%,var(--help-tint)); }
.gh-home .gh-help-account-cards .gh-help-icon,.gh-home .gh-help-account-cards .gh-help-arrow { color:var(--help-accent); background:var(--help-tint); }
@media(max-width:1100px) { .gh-home .gh-hosting-trust { width:100%; min-width:0; } .gh-home .gh-platform-track > article { flex-basis:calc((100% - 28px) / 3); } }
@media(max-width:767px) { .gh-home .gh-platform-track > article { flex-basis:calc((100% - 14px) / 2); } }
@media(max-width:420px) { .gh-home .gh-platform-track > article { flex-basis:86%; } }
/* Test content measure: 85% with a wide-screen ceiling; mobile keeps safe gutters. */
body.grabby-modern-page :is(.gh-home-container,#header .gh-top-header,.gh-footer-grid,.gh-footer-bottom) { width:85%; max-width:1760px; margin-inline:auto; }
@media(max-width:767px) { body.grabby-modern-page :is(.gh-home-container,#header .gh-top-header,.gh-footer-grid,.gh-footer-bottom) { width:calc(100% - 32px); max-width:none; } }
/* Contextual button palette: blue for conversion, navy for guidance/security,
   orange for the closing launch action and the existing domain searches. */
.gh-home :is(.gh-platform-primary,.gh-web-security .gh-web-button) { background:var(--gh-gradient-navy); border-color:#29456c; box-shadow:0 5px 14px #0913291a; }
.gh-home :is(.gh-platform-primary,.gh-web-security .gh-web-button):hover { background:linear-gradient(135deg,#254577,#142849); border-color:#42679b; color:#fff; }
.gh-home .gh-launch-actions a:first-child { background:linear-gradient(135deg,#e87800,#da6500); border-color:#e87800; color:#fff; font-size:1.25rem; border-radius:999px; box-shadow:0 5px 16px #e878002b; }
.gh-home .gh-launch-actions a:first-child:hover { background:linear-gradient(135deg,#d96800,#bd5000); border-color:#d96800; color:#fff; }
.gh-home .gh-launch-actions a:last-child { border-radius:999px; }
.gh-home :is(.gh-web-button,.gh-platform-primary,.gh-help-client-primary,.gh-hosting-primary,.gh-launch-actions a) > i { color:inherit; }
.gh-home :is(.gh-web-button,.gh-platform-primary,.gh-help-client-primary,.gh-hosting-primary,.gh-launch-actions a):active { box-shadow:none; }
/* Detail refinement: comfortable feature-card width and hero-matched search. */
.gh-home .gh-web-design-details { grid-template-columns:minmax(0,1fr) minmax(250px,.6fr); gap:24px; }
.gh-home .gh-web-growth ul { grid-template-columns:1fr; }
.gh-home .gh-web-growth > i { float:none; margin-right:0; }
.gh-home .gh-web-growth > i { color:var(--gh-orange-500); background:#fff2df; }
.gh-home .gh-platform-heading { margin-bottom:32px; }
.gh-home :is(.gh-platform-why-copy,.gh-web-design-content,.gh-web-security-content,.gh-help-support-heading,.gh-faq-heading) h2 b { color:var(--gh-orange-600); font-family:inherit; font-weight:inherit; }
.gh-home .gh-faq-support h3 b { color:var(--gh-orange-600); font-family:inherit; font-weight:inherit; }
.gh-home .gh-faq-support-links a:nth-child(1) > i:first-child { color:#13834b; background:#e7f7ee; }
.gh-home .gh-faq-support-links a:nth-child(1) > i:last-child { color:#13834b; }
.gh-home .gh-faq-support-links a:nth-child(2) > i:first-child { color:var(--gh-orange-600); background:#fff2df; }
.gh-home .gh-faq-support-links a:nth-child(2) > i:last-child { color:var(--gh-orange-600); }
.gh-home .gh-faq-support-links a:nth-child(3) > i:first-child { color:var(--gh-blue-600); background:var(--gh-blue-100); }
.gh-home .gh-faq-support-links a:nth-child(3) > i:last-child { color:var(--gh-blue-600); }
.gh-home .gh-platform-domain-form { display:flex; align-items:center; min-height:76px; padding:10px 13px 10px 30px; gap:20px; border-radius:999px; background:#fff; box-shadow:0 12px 24px #1f2f3f1f; }
.gh-home .gh-platform-domain-form > i { font-size:29px; color:#8a96a8; }
.gh-home .gh-platform-domain-form input:not([type=hidden]) { min-width:0; height:52px; font-size:19px; color:#142033; background:transparent; }
.gh-home .gh-platform-domain-form input::placeholder { color:#8590a1; opacity:1; }
.gh-home .gh-platform-domain-form button { display:inline-flex; align-items:center; justify-content:center; height:55px; padding:0 30px; font-size:18px; font-weight:700; border-radius:999px; background:#ff9900; color:#fff; }
.gh-home .gh-platform-domain-form:focus-within { outline:3px solid #2563eb55; outline-offset:3px; }
@media(max-width:767px) {
 .gh-home .gh-web-design-details { grid-template-columns:1fr; }
 .gh-home .gh-platform-domain-form { display:grid; grid-template-columns:28px minmax(0,1fr); gap:10px; padding:14px; border-radius:22px; }
 .gh-home .gh-platform-domain-form > i { grid-column:1; grid-row:1; font-size:24px; }
 .gh-home .gh-platform-domain-form input:not([type=hidden]) { grid-column:2; grid-row:1; width:100%; height:48px; font-size:16px; }
 .gh-home .gh-platform-domain-form button { grid-column:1 / -1; grid-row:2; width:100%; height:50px; font-size:16px; }
}
