.sh-home [hidden] { display: none !important; }

.sh-home .sh-hero {
  padding: clamp(48px, 6vw, 92px) 0 clamp(56px, 7vw, 100px);
  background: radial-gradient(circle at 4% 8%, #e4efff 0, transparent 34%),
              linear-gradient(135deg, #f8fbff 0%, #f4f8fd 57%, #edf4ff 100%);
}
.sh-home .sh-hero-grid {
  grid-template-columns: minmax(0, 1.18fr) minmax(330px, .82fr);
  gap: clamp(32px, 5vw, 76px);
  align-items: start;
}
.sh-home .sh-hero-copy { min-width: 0; }
.sh-home .sh-hero h1 { max-width: 720px; font-size: clamp(42px, 5.1vw, 70px); line-height: 1.02; }
.sh-home .sh-hero .sh-lede { max-width: 660px; margin: 21px 0 31px; }
.sh-home .sh-hero .sh-lede strong { color: #142f56; font-weight: 800; }
.sh-home .sh-hero-domain-form { max-width: 710px; }
.sh-home .sh-hero-domain-form label { display: block; margin-bottom: 11px; color: #183759; font-size: 15px; font-weight: 800; }
.sh-home .sh-hero-domain-field {
  display: flex; gap: 8px; align-items: stretch; padding: 7px; background: #fff;
  border: 1px solid #c8d8ed; border-radius: 16px;
  box-shadow: 0 16px 44px rgba(18, 54, 103, .10);
}
.sh-home .sh-hero-domain-field:focus-within { border-color: #165fe0; box-shadow: 0 0 0 4px rgba(22, 95, 224, .13), 0 16px 44px rgba(18, 54, 103, .10); }
.sh-home .sh-hero-domain-field input {
  width: 100%; min-width: 0; height: 56px; padding: 0 15px; border: 0; outline: 0;
  background: transparent; color: #122d51; font-size: clamp(16px, 1.7vw, 20px); font-weight: 600;
}
.sh-home .sh-hero-domain-field input::placeholder { color: #7d91ac; opacity: 1; }
.sh-home .sh-hero-domain-field button {
  flex: 0 0 auto; min-width: 154px; border: 0; border-radius: 11px; padding: 0 18px;
  background: #135ee5; color: #fff; font: 800 15px/1.2 Inter, Arial, sans-serif;
  cursor: pointer; transition: background .18s ease, transform .18s ease;
}
.sh-home .sh-hero-domain-field button:hover { background: #0a4cc1; transform: translateY(-1px); }
.sh-home .sh-hero-domain-field button:disabled { opacity: .7; cursor: wait; transform: none; }
.sh-home .sh-hero-domain-field button span { margin-left: 7px; font-size: 19px; vertical-align: -1px; }
.sh-home #sh-hero-domain-hint { margin: 15px 0 11px; color: #5c718d; font-size: 13px; line-height: 1.5; }
.sh-home .sh-domain-endings { display: flex; flex-wrap: wrap; gap: 8px; }
.sh-home .sh-domain-endings button,
.sh-home .sh-domain-fit-adjust button,
.sh-home #sh-hero-alternatives button {
  border: 1px solid #cbdaf0; background: #fff; color: #18416f;
  border-radius: 999px; padding: 8px 13px; font: 700 13px/1.3 Inter, Arial, sans-serif; cursor: pointer;
}
.sh-home .sh-domain-endings button:hover,
.sh-home .sh-domain-fit-adjust button:hover,
.sh-home #sh-hero-alternatives button:hover { border-color: #1463eb; color: #0b50c5; }
.sh-home .sh-domain-endings button:focus-visible,
.sh-home .sh-domain-fit-adjust button:focus-visible,
.sh-home #sh-hero-alternatives button:focus-visible,
.sh-home .sh-hero-domain-field button:focus-visible { outline: 3px solid #f5b942; outline-offset: 2px; }
.sh-home .sh-hero .sh-reassurance { margin-top: 18px; max-width: 680px; line-height: 1.55; }

.sh-home .sh-domain-guide {
  margin-top: 31px; padding: clamp(23px, 3vw, 35px); color: #fff;
  border-radius: 24px; background: linear-gradient(155deg, #092a55, #104281 100%);
  box-shadow: 0 28px 60px rgba(13, 42, 82, .19);
}
.sh-home .sh-domain-guide-head { display: flex; justify-content: space-between; gap: 12px; color: #a9c9f7; font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.sh-home .sh-domain-guide ol { padding: 17px 0 2px; margin: 0; list-style: none; }
.sh-home .sh-domain-guide li { display: flex; gap: 16px; padding: 20px 0; border-bottom: 1px solid rgba(226, 237, 255, .17); }
.sh-home .sh-domain-guide li > span { flex: 0 0 36px; height: 36px; display: grid; place-items: center; border: 1px solid rgba(220, 237, 255, .28); border-radius: 10px; color: #9dc8ff; font-size: 12px; font-weight: 800; }
.sh-home .sh-domain-guide strong { display: block; font-size: 17px; line-height: 1.3; }
.sh-home .sh-domain-guide li p { margin: 5px 0 0; color: #c4d8f1; font-size: 13px; line-height: 1.55; }
.sh-home .sh-domain-guide-foot { display: flex; gap: 14px; align-items: center; padding-top: 25px; }
.sh-home .sh-domain-guide-foot > span { flex: 0 0 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: #d9ebff; color: #0b438d; font-size: 23px; }
.sh-home .sh-domain-guide-foot p { margin: 0; color: #fff; font-size: 13px; line-height: 1.5; font-weight: 700; }

.sh-home .sh-hero-domain-result { max-width: 710px; margin-top: 22px; padding: 22px; scroll-margin-top: 100px; background: #fff; border: 1px solid #d4e2f3; border-radius: 19px; box-shadow: 0 20px 48px rgba(18, 54, 103, .11); }
.sh-home .sh-hero-domain-result:focus { outline: 3px solid #1769c4; outline-offset: 4px; }
.sh-home .sh-domain-result-heading > span { display: inline-flex; padding: 6px 10px; border-radius: 999px; background: #edf4ff; color: #154c99; font-size: 11px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.sh-home .sh-domain-result-heading > span[data-state="available"] { background: #e8f8ed; color: #14643a; }
.sh-home .sh-domain-result-heading > span[data-state="taken"] { background: #fff1e9; color: #93441e; }
.sh-home .sh-domain-result-heading > span[data-state="error"] { background: #fff1e9; color: #93441e; }
.sh-home .sh-domain-result-heading strong { display: block; margin-top: 9px; color: #112e53; overflow-wrap: anywhere; font-size: clamp(20px, 2.5vw, 29px); }
.sh-home .sh-domain-result-heading p { color: #5b708e; font-size: 14px; line-height: 1.55; margin: 7px 0 0; }
.sh-home .sh-domain-fit { margin-top: 17px; }
.sh-home .sh-fit-step { padding: 19px; border: 1px solid #d5e3f3; border-radius: 14px; background: #f5f9fe; scroll-margin-top: 100px; }
.sh-home .sh-fit-step:focus, .sh-home .sh-domain-recommendation:focus { outline: 3px solid #1769c4; outline-offset: 4px; }
.sh-home .sh-fit-step-label { color: #1653a0; font-size: 11px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.sh-home .sh-fit-step h3 { margin: 8px 0 15px; color: #102f55; font-size: clamp(19px, 2.4vw, 24px); line-height: 1.2; }
.sh-home .sh-fit-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.sh-home .sh-fit-choices button { min-height: 47px; border: 1px solid #c6d9ee; border-radius: 10px; padding: 10px 13px; background: #fff; color: #173a64; font: 750 13px/1.35 Inter, Arial, sans-serif; text-align: left; cursor: pointer; }
.sh-home .sh-fit-choices button:hover, .sh-home .sh-fit-choices button:focus-visible { border-color: #1765d2; background: #eaf3ff; outline: 2px solid transparent; }
.sh-home .sh-fit-back { margin-top: 13px; border: 0; background: transparent; color: #1655a4; font: 750 13px/1.4 Inter, Arial, sans-serif; cursor: pointer; }
.sh-home .sh-domain-recommendation { border: 1px solid #c9dcf7; border-radius: 14px; padding: 18px; background: #fbfdff; scroll-margin-top: 100px; }
.sh-home .sh-domain-recommendation > span { color: #1653a0; font-size: 11px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.sh-home .sh-domain-recommendation h3 { margin: 8px 0 7px; color: #0e2b50; font-size: 25px; line-height: 1.1; }
.sh-home .sh-domain-recommendation p { margin: 8px 0; color: #496583; font-size: 13px; line-height: 1.55; }
.sh-home .sh-fit-inclusions { display: flex; flex-wrap: wrap; gap: 7px; margin: 13px 0; }
.sh-home .sh-fit-inclusions span { padding: 6px 10px; border-radius: 999px; background: #eaf7ee; color: #145d37; font-size: 12px; font-weight: 750; }
.sh-home .sh-domain-recommendation #sh-hero-fit-offer { color: #14643a; font-weight: 800; }
.sh-home .sh-domain-recommendation #sh-hero-fit-price { color: #113d7d; font-weight: 800; }
.sh-home .sh-domain-fit-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-top: 16px; }
.sh-home .sh-domain-fit-actions .sh-button { min-height: 44px; padding: 9px 15px; font-size: 13px; text-align: center; }
.sh-home #sh-hero-domain-only { display: inline-block; margin-top: 10px; color: #1555af; font-size: 13px; font-weight: 800; }
.sh-home .sh-fit-browse { display: inline-block; margin-top: 15px; color: #496583; font-size: 13px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.sh-home .sh-fit-browse:hover, .sh-home .sh-fit-browse:focus-visible { color: #1555af; }
.sh-home .sh-fit-terms { margin-top: 14px; color: #5a718f; font-size: 12px; line-height: 1.5; }
.sh-home .sh-fit-terms summary { width: fit-content; cursor: pointer; color: #255a9c; font-weight: 750; }
.sh-home .sh-fit-terms p { max-width: 62ch; }
.sh-home .sh-domain-taken { margin-top: 16px; color: #365270; font-size: 14px; line-height: 1.55; }
.sh-home .sh-domain-taken p { margin: 9px 0; }
.sh-home .sh-domain-taken a { color: #1055ba; font-weight: 800; }
.sh-home .sh-domain-taken .sh-domain-owner-question { color: #102f55; font-size: 18px; font-weight: 800; }
.sh-home .sh-domain-owner-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 13px 0; }
.sh-home .sh-domain-owner-actions a.sh-button { color: #fff; min-height: 44px; padding: 10px 15px; font-size: 13px; }
.sh-home .sh-domain-owner-actions button { min-height: 44px; padding: 9px 14px; border: 1px solid #c6d9ee !important; border-radius: 8px; background: #fff !important; color: #1555af !important; box-shadow: none !important; font: 750 13px/1.35 Inter, Arial, sans-serif; cursor: pointer; }
.sh-home .sh-domain-owner-actions button:hover, .sh-home .sh-domain-owner-actions button:focus-visible { border-color: #1555af !important; background: #eef5ff !important; }
.sh-home .sh-domain-taken .sh-domain-owner-note { color: #5b708e; font-size: 12px; }
.sh-home #sh-hero-alternatives-wrap { scroll-margin-top: 100px; }
.sh-home #sh-hero-alternatives-wrap[hidden] { display: none; }
.sh-home #sh-hero-alternatives { display: flex; flex-wrap: wrap; gap: 8px; }
.sh-home #plans { scroll-margin-top: 90px; }

@media (max-width: 960px) {
  .sh-home .sh-hero-grid { grid-template-columns: 1fr; }
  .sh-home .sh-domain-guide { max-width: 710px; margin-top: 0; }
}
@media (max-width: 620px) {
  .sh-home .sh-hero { padding-top: 38px; }
  .sh-home .sh-hero h1 { font-size: clamp(38px, 11vw, 52px); }
  .sh-home .sh-hero .sh-lede { font-size: 16px; line-height: 1.6; }
  .sh-home .sh-hero-domain-field { flex-direction: column; }
  .sh-home .sh-hero-domain-field input { height: 48px; }
  .sh-home .sh-hero-domain-field button { min-height: 46px; width: 100%; }
  .sh-home .sh-fit-choices { grid-template-columns: 1fr; }
  .sh-home .sh-hero-domain-result { padding: 17px; }
  .sh-home .sh-domain-fit-actions .sh-button { width: 100%; }
  .sh-home .sh-domain-owner-actions { flex-direction: column; align-items: stretch; }
  .sh-home .sh-domain-owner-actions a, .sh-home .sh-domain-owner-actions button { width: 100%; text-align: center; }
  .sh-home .sh-domain-guide { padding: 22px; border-radius: 18px; }
}
