/* Shared homepage rhythm, responsive layouts and reference 08 footer. */
.gh-home { --gh-section-space: 56px; }
.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-container { min-width: 0; }
.gh-reference-hero { overflow: hidden; }
.gh-home :is(.gh-web-design-layout,.gh-web-security-layout,.gh-help-container) { padding-inline: 0; }
.gh-home .gh-faq-layout { margin-inline: 0; }
.gh-home .gh-faq-handnote { display: none; }
.gh-home .gh-platform-why-copy { padding-left: 0; }
.gh-home .gh-launch-banner { margin-inline: 0; }
.gh-home .gh-hosting-trust { width: 100%; }
.gh-home .gh-web-design-layout { grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr); gap: 40px; }
.gh-home .gh-web-design-details { grid-template-columns: minmax(0,1fr) 185px; gap: 20px; }
.gh-home .gh-web-security-layout { gap: 48px; }
.gh-home .gh-help-account-cards { grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); }
.gh-home :is(.gh-web-reference,.gh-help-reference,.gh-platform-services,.gh-faq-reference) :is(p,small) { overflow-wrap: break-word; }
.gh-home :is(.gh-platform-controls button,.gh-hosting-controls button) { min-width: 44px; min-height: 44px; }
.gh-home .gh-platform-page { grid-auto-rows: auto; align-content: start; align-self: start; }
.gh-footer-reference { background: #1b2834; color: #e6edf6; font-family: var(--gh-font-family); }
.gh-footer-reference * { box-sizing: border-box; }
.gh-footer-reference a { overflow-wrap: anywhere; }
.gh-footer-reference .gh-footer-main { padding: 44px 0 34px; background: linear-gradient(110deg,#1c2935,#192632); }
.gh-footer-reference .gh-footer-grid { display: grid; grid-template-columns: minmax(230px,1.7fr) repeat(4,minmax(120px,1fr)) minmax(250px,1.55fr); gap: 30px; align-items: start; }
.gh-footer-reference .gh-footer-logo img { width: 235px; max-width: 100%; height: auto; }
.gh-footer-reference p { font-size: 16px; line-height: 1.6; color: #d0dcec; margin: 16px 0; }
.gh-footer-reference h4 { color: #fff; font-size: 17px; font-weight: 700; margin: 0 0 23px; }
.gh-footer-reference [class*='gh-footer-col-'] h4::after { content: ''; display: block; width: 34px; height: 3px; border-radius: 3px; margin-top: 14px; background: #ff9700; }
.gh-footer-reference .gh-footer-col-domains h4::after { background: #35a8ff; }
.gh-footer-reference .gh-footer-col-digital h4::after { background: #19c57d; }
.gh-footer-reference .gh-footer-col-support h4::after { background: #bd75ee; }
.gh-footer-reference .gh-footer-grid > div > a:not(.gh-footer-logo):not(.gh-footer-preferences) { display: block; color: #dbe6f4; font-size: 15px; line-height: 1.5; margin-bottom: 12px; text-decoration: none; }
.gh-footer-reference .gh-system-status i { display: inline; background: none; width: auto; height: auto; color: #80bef5; margin-right: 7px; border-radius: 0; }
.gh-footer-reference .gh-footer-social { display: flex; flex-wrap: wrap; gap: 12px; list-style: none; margin: 20px 0 0; padding: 0; }
.gh-footer-reference .gh-footer-social a { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: #293747; color: #fff; font-size: 21px; text-decoration: none; }
.gh-footer-reference .gh-footer-newsletter { border-left: 1px solid #41505e; padding-left: 30px; }
.gh-footer-reference .gh-footer-newsletter h4 { font-size: 22px; margin-bottom: 10px; }
.gh-footer-reference .gh-footer-newsletter p { margin: 0 0 15px; color: #b8c8db; }
.gh-footer-reference .gh-footer-preferences { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #fff; padding: 14px 16px; background: #273747; border: 1px solid #425368; border-radius: 12px; font-size: 14px; text-decoration: none; }
.gh-footer-preferences i { color: #ffa000; font-size: 22px; }
.gh-footer-reference .gh-footer-newsletter small { display: block; color: #a9b9cc; margin-top: 12px; font-size: 13px; }
.gh-footer-reference .gh-footer-bottom { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 22px; padding-block: 27px; font-size: 14px; color: #c8d8e9; }
.gh-footer-reference .gh-footer-legal { display: flex; gap: 20px; flex-wrap: wrap; }
.gh-footer-reference .gh-footer-legal a { color: #c8d8e9; font-size: 14px; }
.gh-footer-reference .gh-footer-bottom-band { background: linear-gradient(110deg,#101b26,#0d1722); }
.gh-footer-reference .gh-footer-bottom { background: transparent; padding-inline: 0; min-height: 80px; }
.gh-footer-reference .gh-footer-bottom > span { flex: 1 1 520px; }
.gh-footer-reference .gh-footer-payments { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 22px; padding: 0; margin: 0 30px 0 0; list-style: none; }
.gh-footer-payments li { display: flex; align-items: center; }
.gh-footer-payments i { font-size: 32px; line-height: 1; }
.gh-footer-payments .fa-cc-visa { color: #668cff; }
.gh-footer-payments .fa-cc-mastercard { color: #ff9b29; }
.gh-footer-payments .fa-cc-paypal { color: #47baff; }
.gh-footer-payments .fa-cc-amex { color: #49b8ea; }
.gh-footer-payments .fa-apple-pay,.gh-footer-payments .fa-google-pay { color: #f4f7fb; font-size: 38px; }
.gh-footer-reference .gh-footer-legal a + a { border-left: 1px solid #718093; padding-left: 20px; }
@media(max-width:1200px) { .gh-footer-reference .gh-footer-bottom > span { flex-basis: 100%; } .gh-footer-reference .gh-footer-payments { margin-right: 0; } }
@media(max-width:767px) { .gh-footer-reference .gh-footer-bottom > span { flex: 0 1 auto; } .gh-footer-reference .gh-footer-payments { justify-content: flex-start; gap: 18px; } }
.gh-footer-reference a:hover { color: #ffaf35 !important; }
.gh-footer-reference a:focus-visible { outline: 3px solid #ffad27; outline-offset: 4px; }
@media(max-width:1500px) {
 .gh-footer-reference .gh-footer-grid { grid-template-columns: 1.6fr repeat(4,1fr); gap: 26px; }
 .gh-footer-reference .gh-footer-newsletter { grid-column: 1 / -1; border-left: 0; border-top: 1px solid #41505e; padding: 24px 0 0; max-width: none; }
 .gh-footer-reference .gh-footer-preferences { max-width: 400px; }
 .gh-home .gh-web-design-details { grid-template-columns: 1fr; }
 .gh-web-growth { display: block; }
 .gh-web-growth ul { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .gh-web-growth > i { float: left; margin-right: 14px; }
 .gh-platform-domain-copy { padding-left: 70px; }
 .gh-platform-earth-badges { gap: 10px; left: 20px; right: 20px; }
 .gh-platform-earth-badges > div { gap: 8px; padding: 10px; }
 .gh-platform-region { padding: 10px; }
 .gh-faq-layout { grid-template-columns: minmax(0,2fr) minmax(0,1fr); gap: 24px; }
 .gh-help-human-badge { right: 19%; }
}
@media(max-width:1100px) {
 .gh-home { --gh-section-space: 44px; }
 .gh-platform-page { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .gh-platform-why-layout { grid-template-columns: 1fr; gap: 28px; }
 .gh-platform-earth { min-height: 360px; }
 .gh-platform-domain-panel { grid-template-columns: 1fr; gap: 24px; }
 .gh-platform-domain-copy { padding-left: 0; }
 .gh-platform-domain-globe { opacity: .2; }
 .gh-home .gh-web-design-layout,.gh-home .gh-web-security-layout { grid-template-columns: 1fr; gap: 28px; }
 .gh-web-photo { width: 100%; max-height: 520px; }
 .gh-web-design-photo { order: 2; }
 .gh-home .gh-web-design-details { grid-template-columns: minmax(0,1fr) 220px; }
 .gh-web-growth { display: block; }
 .gh-web-reference h2 br { display: none; }
 .gh-help-support-heading { max-width: 70%; }
 .gh-help-human-badge,.gh-help-handnote { display: none; }
 .gh-help-support-cards { width: 100%; grid-template-columns: repeat(4,minmax(0,1fr)); }
 .gh-help-shortcut-cards { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .gh-help-support-cards .gh-help-arrow { position: static; margin-top: 12px; }
 .gh-help-reference .gh-help-support-cards p { padding-right: 0; }
 .gh-faq-layout { grid-template-columns: 1fr; }
 .gh-faq-support { padding-bottom: 20px; }
 .gh-faq-skyline { height: 160px; max-width: 400px; margin: 16px auto -20px; }
 .gh-launch-copy { max-width: 100%; }
 .gh-launch-trust { position: static; width: fit-content; margin-top: 24px; }
 .gh-launch-banner::after { background: linear-gradient(90deg,#0b1723,#0b1723bd); }
 .gh-footer-reference .gh-footer-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
 .gh-footer-reference .gh-footer-about { grid-column: 1 / -1; max-width: 520px; }
}
@media(max-width:767px) {
 .gh-home { --gh-section-space: 36px; }
 .gh-home h2 { font-size: clamp(26px,5vw,34px); }
 .gh-platform-heading p,.gh-platform-page p,.gh-platform-page a,.gh-platform-reasons small { font-size: 14px; }
 .gh-platform-page { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
 .gh-platform-page article { padding: 18px 14px; min-height: 205px; }
 .gh-platform-earth-top { padding: 20px; flex-wrap: wrap; }
 .gh-platform-earth { aspect-ratio: auto; min-height: 430px; }
 .gh-platform-earth-badges { gap: 8px; }
 .gh-platform-earth-badges > div { display: block; border-radius: 12px; }
 .gh-platform-earth-badges i { margin-bottom: 6px; }
 .gh-platform-domain-panel { padding: 24px 18px; }
 .gh-home .gh-web-design-details { grid-template-columns: 1fr; }
 .gh-web-growth { display: block; }
 .gh-web-security-cards { gap: 10px; }
 .gh-web-security-cards article { padding: 12px; }
 .gh-web-photo-badge { gap: 8px; padding: 11px; }
 .gh-web-photo-badge small { font-size: 10px; }
 .gh-web-handnote { font-size: 14px; }
 .gh-web-protected-strip { padding: 12px; gap: 8px; }
 .gh-web-protected-strip strong { font-size: 17px; }
 .gh-help-support-heading { max-width: 100%; }
 .gh-help-portrait { opacity: .13; width: 75%; }
 .gh-help-support-cards,.gh-help-shortcut-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .gh-help-heading-row { align-items: flex-start; flex-direction: column; gap: 16px; }
 .gh-help-reference .gh-help-support-cards .gh-help-card-title { font-size: 15px; }
 .gh-help-reference .gh-help-shortcut-cards > a { padding-inline: 17px; }
 .gh-faq-heading > p { font-size: 15px; }
 .gh-faq-list summary { gap: 10px; padding-inline: 12px; font-size: 15px; }
 .gh-faq-list details > p { padding: 0 18px 18px 56px; }
 .gh-launch-banner { padding: 28px 22px; }
 .gh-launch-benefits { gap: 15px; flex-wrap: wrap; }
 .gh-footer-reference .gh-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .gh-footer-reference .gh-footer-bottom { flex-direction: column; align-items: flex-start; line-height: 1.6; padding-bottom: 90px; }
}
@media(max-width:480px) {
 .gh-platform-domain-form { display: grid; grid-template-columns: 18px minmax(0,1fr); padding: 12px; border-radius: 16px; gap: 8px; }
 .gh-platform-domain-form button { grid-column: 1 / -1; width: 100%; min-height: 46px; }
 .gh-platform-domain-form input:not([type=hidden]) { width: 100%; font-size: 16px; }
 .gh-platform-earth-top h3 { font-size: 23px; }
 .gh-platform-earth-badges { left: 12px; right: 12px; bottom: 12px; }
 .gh-platform-earth-badges strong { font-size: 11px; }
 .gh-web-security-cards { grid-template-columns: 1fr; }
 .gh-web-security-cards article > i { float: left; margin-right: 12px; }
 .gh-web-photo { aspect-ratio: 1.1; }
 .gh-web-photo-badge small,.gh-web-design-note,.gh-web-protected-tagline { display: none; }
 .gh-web-photo-badge strong { font-size: 11px; }
 .gh-web-conversion { bottom: 20%; }
 .gh-web-security-checklist { right: 9%; top: 31%; }
 .gh-web-security-checklist li { font-size: 12px; padding: 3px 7px; }
 .gh-web-protection-note { top: 9%; font-size: 13px; }
 .gh-web-actions > a { width: 100%; justify-content: center; text-align: center; }
 .gh-help-support-cards,.gh-help-shortcut-cards { grid-template-columns: 1fr; }
 .gh-home .gh-help-account-cards { grid-template-columns: 1fr; }
 .gh-help-support-cards .gh-help-arrow { position: absolute; bottom: 20px; }
 .gh-help-reference .gh-help-support-cards p { padding-right: 36px; }
 .gh-help-support-cards .gh-help-icon { float: left; margin: 0 16px 12px 0; }
 .gh-help-support-cards .gh-help-card-title { padding-top: 3px; }
 .gh-help-support-cards p { clear: both; }
 .gh-faq-number,.gh-faq-toggle { flex-basis: 28px; height: 28px; }
 .gh-faq-list details > p { padding-left: 18px; }
 .gh-faq-support { padding: 24px 16px 0; }
 .gh-faq-support h3 { font-size: 20px; }
 .gh-faq-headset { width: 50px; height: 50px; right: 16px; font-size: 25px; }
 .gh-faq-support-links small { font-size: 11px; }
 .gh-launch-actions { flex-wrap: wrap; }
 .gh-launch-actions a { justify-content: center; width: 100%; }
 .gh-launch-earth { width: 100%; }
 .gh-footer-reference .gh-footer-grid { gap: 28px 18px; }
 .gh-footer-reference h4 { font-size: 16px; }
 .gh-footer-reference .gh-footer-grid > div > a:not(.gh-footer-logo):not(.gh-footer-preferences) { font-size: 14px; }
}
@media(prefers-reduced-motion:reduce) { .gh-home *, .gh-footer-reference * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
