/* Página Sitios Web: componentes sobre la identidad compartida. */
.web-breadcrumb { display:flex; gap:12px; padding-top:26px; font-size:12px; color:var(--muted); }
.web-breadcrumb a { text-decoration:underline; text-underline-offset:4px; }
.web-hero { display:grid; grid-template-columns:1.35fr 1fr; align-items:center; gap:75px; padding-block:45px 70px; }
.web-hero h1 { font-size:clamp(36px,4vw,58px); }
.web-hero .lead { max-width:540px; }
.web-hero .actions { flex-wrap:wrap; gap:12px 24px; }
.web-hero .actions .button { min-height:56px; font-size:15px; padding-inline:27px; }
.web-entry-offer { background:var(--deep); border-top:3px solid var(--brand); border-radius:16px; padding:32px; color:white; }
.web-entry-offer .eyebrow { color:var(--brand); margin-bottom:20px; }
.web-entry-offer p { color:#d0deea; }
.web-entry-offer .hero-price { color:var(--brand); font-size:52px; }
.web-entry-offer .hero-price + p { font-size:13px; margin-top:6px; }
.entry-alternative { padding-block:20px; margin-bottom:20px; border-bottom:1px solid #34546b; font-size:14px; }
.web-entry-offer .button { margin-top:25px; width:100%; }
.web-section-nav { border-block:1px solid var(--line); background:var(--canvas); }
.web-section-nav .container { display:flex; gap:35px; flex-wrap:wrap; padding-block:15px; }
.web-section-nav a { font-size:13px; font-weight:600; padding-block:8px; color:var(--link); }
.web-section-nav a:hover { text-decoration:underline; }
.web-choice-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.web-choice { display:flex; flex-direction:column; border:1px solid var(--line); border-radius:14px; padding:29px; }
.choice-corporate { background:#edf7fc; border-color:#a2d2e8; }
.web-choice h3 { font-size:27px; margin-block:15px; }
.web-choice > p { font-size:14px; min-height:100px; }
.web-choice ul { padding-left:18px; font-size:13px; line-height:1.7; margin-block:20px 25px; }
.web-choice li { margin-bottom:8px; }
.choice-price { border-top:1px solid var(--line); padding-top:20px; margin-top:auto; }
.choice-price p { color:var(--ink); font-size:13px; }
.choice-price strong { font-size:27px; letter-spacing:-.04em; }
.choice-price span { display:block; font-size:11px; color:var(--muted); }
.choice-price p:last-child { font-size:12px; margin-top:10px; }
.web-choice .text-link { margin-top:16px; font-size:13px; }
.web-plans-section { background:var(--canvas); border-block:1px solid var(--line); }
.web-included-summary { border-bottom:1px solid var(--line); padding-block:25px; display:flex; gap:30px; font-size:13px; }
.payment-options { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-bottom:35px; }
.payment-options article { padding-left:23px; border-left:3px solid var(--brand); }
.payment-options h3 { font-size:24px; margin-bottom:13px; }
.payment-options p { font-size:15px; }
.payment-table-wrap { overflow-x:auto; border:1px solid var(--line); border-radius:12px; }
.payment-table { width:100%; border-collapse:collapse; font-size:14px; }
.payment-table caption { text-align:left; padding:20px 24px; font-size:12px; color:var(--muted); }
.payment-table th,.payment-table td { padding:19px 24px; text-align:left; border-top:1px solid var(--line); }
.payment-table thead { background:var(--deep); color:white; }
.payment-table thead th { font-weight:600; font-size:12px; }
.payment-table td:last-child { color:var(--link); font-weight:650; }
.web-infrastructure { background:var(--canvas); border-block:1px solid var(--line); }
.infrastructure-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.infrastructure-grid article { border-top:2px solid var(--brand); padding-top:23px; }
.infrastructure-grid h3 { font-size:24px; margin-bottom:18px; }
.infrastructure-grid p { font-size:14px; margin-bottom:13px; }
.email-inline { overflow-wrap:anywhere; font-weight:600; color:var(--link); }
.web-next { text-align:center; max-width:780px; }
.web-next > p:not(.eyebrow) { font-size:17px; margin:23px auto 17px; max-width:630px; }
@media(max-width:1199px) { .web-hero { gap:35px; } .web-choice { padding:24px; } .web-choice > p { min-height:125px; } }
@media(max-width:959px) {
 .web-hero { gap:25px; } .web-hero .lead { font-size:16px; } .web-entry-offer { padding:25px; } .web-entry-offer .hero-price { font-size:42px; }
 .web-choice-grid { grid-template-columns:1fr; } .web-choice > p { min-height:0; } .web-choice ul { margin-block:15px; } .choice-price { margin-top:10px; }
 .web-included-summary { flex-direction:column; gap:8px; } .infrastructure-grid { gap:20px; } .infrastructure-grid h3 { font-size:21px; }
 .payment-table th,.payment-table td { padding:16px; } .web-section-nav .container { gap:15px 25px; }
}
@media(max-width:639px) {
 .web-breadcrumb { padding-top:20px; } .web-hero { grid-template-columns:1fr; padding-block:31px 40px; gap:30px; }
 .web-hero h1 { font-size:39px; } .web-hero h1 br { display:none; } .web-hero .actions { flex-direction:column; align-items:stretch; } .web-hero .actions .text-link { justify-content:center; }
 .web-entry-offer { padding:27px; } .web-entry-offer .hero-price { font-size:51px; }
 .web-section-nav .container { display:grid; grid-template-columns:1fr 1fr; gap:5px 20px; } .web-section-nav a { font-size:12px; }
 .web-choice { padding:25px; } .web-choice > p { font-size:15px; } .web-choice ul { font-size:14px; }
 .payment-options { grid-template-columns:1fr; gap:25px; } .payment-table { min-width:540px; } .payment-table caption { padding:17px; }
 .infrastructure-grid { grid-template-columns:1fr; gap:24px; } .infrastructure-grid h3 { font-size:24px; } .web-next { text-align:left; }
}

/* Encabezados SEO legibles y enlaces editoriales identificables. */
.web-choice h3 { font-size: 24px; line-height: 1.22; min-height: 118px; }
.web-plans-section .plan h3 { font-size: 25px; }
.infrastructure-grid p a, .web-next > p a { color: var(--link); text-decoration: underline; text-underline-offset: 3px; }
@media(max-width:959px) { .web-choice h3 { min-height: 0; } .web-plans-section .plan h3 { font-size: 23px; } }
@media(max-width:639px) { .web-plans-section .plan h3 { font-size: 28px; } }
