:root {
  --item61-blue: #075bbd;
  --item61-blue-dark: #03448f;
  --item61-ink: #071c2d;
  --item61-soft: #eaf4ff;
}

/*
 * Regra visual obrigatória do Item 61: todo texto específico do serviço de
 * registro de domínio usa azul, negrito e 25 px. O escopo evita alterar o
 * cabeçalho, o rodapé e os demais produtos do site.
 */
.item61-home :where(h1,h2,h3,p,span,strong,b,em,li,a),
.item61-page :where(h1,h2,h3,p,span,strong,b,em,li,a),
.plan.plan-domain :where(h3,.badge,.price,li,a),
.item61-checkout :where(h1,h2,h3,p,span,strong,b,em,li,label,legend,small,a,button,input,textarea),
.item61-payment :where(h1,h2,h3,p,span,strong,b,em,li,label,small,a,button,textarea),
.item61-client :where(h1,h2,h3,p,span,strong,b,em,li,small,a) {
  color: var(--item61-blue) !important;
  font-size: 25px !important;
  font-weight: 800 !important;
  line-height: 1.45;
}

.item61-home .button,
.item61-page .button,
.plan.plan-domain .button,
.item61-checkout .button,
.item61-payment .button,
.item61-client .button {
  color: var(--item61-blue) !important;
  border: 3px solid var(--item61-blue) !important;
  background: #fff !important;
  box-shadow: 0 8px 0 rgba(7,91,189,.14);
}
.item61-home .button:hover,
.item61-page .button:hover,
.plan.plan-domain .button:hover,
.item61-checkout .button:hover,
.item61-payment .button:hover,
.item61-client .button:hover {
  color: var(--item61-blue-dark) !important;
  border-color: var(--item61-blue-dark) !important;
  background: #dceeff !important;
}

/* Home block */

.item61-home {
  position: relative;
  overflow: hidden;
  padding: 72px 0;
  color: var(--item61-blue);
  background: linear-gradient(125deg, #f7fbff 0%, #e5f2ff 55%, #cde7ff 100%);
}
.item61-home::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  right: -130px;
  top: -210px;
  border: 1px solid rgba(7,91,189,.22);
  border-radius: 50%;
  box-shadow: 0 0 0 58px rgba(7,91,189,.035), 0 0 0 116px rgba(7,91,189,.025);
}
.item61-home__grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 56px;
}
.item61-kicker {
  display: inline-flex;
  margin-bottom: 14px;
  color: #8bcaff;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.item61-home h2 {
  max-width: 720px;
  margin: 0 0 14px;
  color: var(--item61-blue);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(2rem, 5vw, 4.3rem);
  line-height: .98;
}
.item61-home p { max-width: 720px; margin: 0; color: var(--item61-blue); font-size: 25px; }
.item61-home__offer {
  min-width: 260px;
  padding: 26px;
  border: 2px solid rgba(7,91,189,.35);
  border-radius: 22px;
  background: rgba(255,255,255,.8);
  backdrop-filter: blur(14px);
  text-align: center;
  box-shadow: 0 24px 70px rgba(0,0,0,.24);
}
.item61-home__offer strong,
.item61-price strong {
  display: block;
  color: var(--item61-blue);
  font-size: 25px;
  font-weight: 900;
}
.item61-home__offer strong { color: var(--item61-blue); }
.item61-home__offer span { display: block; margin: 6px 0 20px; color: var(--item61-blue); font-weight: 800; }
.item61-home__offer .button { width: 100%; }
.item61-home__grid > div:first-child,
.item61-hero__grid > div:first-child,
.plan.plan-domain .plan-body { text-align: center; }
.item61-home h2,
.item61-home p,
.item61-hero h1,
.item61-hero p { margin-left: auto; margin-right: auto; }
.item61-price { justify-content: center; }
.item61-register-button,
.plan.plan-domain .button { justify-content: center; text-align: center; }
.plan.plan-domain .plan-body { align-items: center; }
.plan.plan-domain ul { width: 100%; padding-left: 0; list-style-position: inside; }

/* Domain page */

.item61-page { background: #f6f9fc; color: var(--item61-ink); }
.item61-hero { position: relative; overflow: hidden; padding: 92px 0 82px; background: linear-gradient(180deg, #fff 0%, var(--item61-soft) 100%); }
.item61-hero::after { content: ""; position: absolute; inset: 0; opacity: .55; pointer-events: none; background-image: radial-gradient(#8abce7 1px, transparent 1px); background-size: 26px 26px; mask-image: linear-gradient(to left,#000,transparent 70%); }
.item61-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr); gap: 72px; align-items: center; }
.item61-hero h1 { max-width: 780px; margin: 0 0 22px; color: var(--item61-ink); font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.7rem, 6.5vw, 6.2rem); line-height: .9; letter-spacing: -.055em; }
.item61-hero p { max-width: 720px; margin: 0 0 28px; color: #345167; font-size: 1.12rem; line-height: 1.75; }
.item61-price { display: flex; align-items: baseline; gap: 13px; margin: 8px 0 24px; }
.item61-price span { color: #3e617b; font-weight: 800; }
.item61-register-button { min-width: 240px; text-align: center; }
.item61-domain-card { position: relative; min-height: 320px; display: flex; align-items: center; justify-content: center; padding: 44px; border: 1px solid #b8d9f3; border-radius: 28px; background: rgba(255,255,255,.83); box-shadow: 0 30px 90px rgba(18,79,129,.2); transform: rotate(2.5deg); }
.item61-domain-card span,.item61-domain-card b,.item61-domain-card em { font-size: clamp(1.6rem,3vw,2.8rem); font-style: normal; letter-spacing: -.05em; }
.item61-domain-card span { color: #7595ad; }
.item61-domain-card b { color: #092c49; }
.item61-domain-card em { color: var(--item61-blue); font-weight: 900; }
.item61-domain-card i { position: absolute; width: 10px; height: 10px; left: 28px; top: 25px; border-radius: 50%; background: #ff6b5f; }
.item61-domain-card i:nth-of-type(2) { left: 46px; background: #ffc44c; }
.item61-domain-card i:nth-of-type(3) { left: 64px; background: #45c17c; }
.item61-details { padding: 78px 0; }
.item61-details__grid { display: grid; grid-template-columns: 1.1fr .9fr .9fr; gap: 24px; }
.item61-details article { padding: 32px; border: 1px solid #d6e4ee; border-radius: 18px; background: #fff; box-shadow: 0 14px 40px rgba(16,66,104,.07); }
.item61-details h2 { margin: 10px 0 16px; color: var(--item61-ink); font-size: 1.45rem; }
.item61-details p,.item61-details li { color: #49667b; line-height: 1.7; }
.item61-details ul { margin: 0; padding-left: 20px; }
.item61-details li + li { margin-top: 8px; }
.item61-index { color: var(--item61-blue); font-size: .78rem; font-weight: 900; letter-spacing: .16em; }
.item61-final { padding: 0 0 86px; }
.item61-final .container { padding: 34px; border: 2px solid #9ec9ef; border-radius: 22px; background: #e8f4ff; color: var(--item61-blue); text-align: center; }
.item61-final p { max-width: 850px; margin: 0 auto 24px; line-height: 1.7; }
.item61-client { border-top: 4px solid var(--item61-blue); }

/* Responsive */

@media (max-width: 900px) {
  .item61-home__grid,.item61-hero__grid,.item61-details__grid { grid-template-columns: 1fr; }
  .item61-home__offer { width: 100%; }
  .item61-hero { padding: 64px 0; }
  .item61-domain-card { min-height: 230px; }
}

@media (max-width: 560px) {
  .item61-home,.item61-details { padding: 54px 0; }
  .item61-home__grid,.item61-hero__grid { gap: 36px; }
  .item61-home__offer,.item61-domain-card,.item61-details article,.item61-final .container { border-radius: 14px; }
  .item61-domain-card { padding: 26px; }
  .item61-price { align-items: flex-start; flex-direction: column; }
}
