/* Blue is action; green confirms a completed request. */
[hidden]{display:none!important}
.buyerGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.buyerGrid>*{background:#fff;border:1px solid #d2dfea;border-radius:18px;padding:28px;color:#142c49}
.buyerGrid>a{display:flex;flex-direction:column;transition:border-color .18s,box-shadow .18s}
.buyerGrid>a:hover{border-color:#246ddd;box-shadow:0 12px 30px #17457a14}
.buyerGrid small{color:#245cad;font-weight:800;letter-spacing:.1em}
.buyerGrid h3{font-size:23px;line-height:1.3;margin:18px 0 12px}
.buyerGrid p{line-height:1.75;color:#51647a}.buyerGrid b{margin-top:auto;padding-top:18px;color:#185bb4}
.buyerNotice{background:#eaf2ff;border:1px solid #bfd3ee;border-radius:12px;padding:18px;color:#173b66;line-height:1.7}
.buyerNotice a{text-decoration:underline;font-weight:700}.buyerMicrocopy{font-size:13px!important;line-height:1.6!important}
.buyerScope{background:#eaf0f7}.buyerSteps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;padding-left:24px}
.buyerSteps li{padding:10px}.buyerSteps p{color:#53667c;line-height:1.7}.buyerSteps li::marker{color:#246ddd;font-weight:800}
.buyerBrowse{margin:24px 0}.buyerOptional{margin-top:18px;border-top:1px solid #c9d8e7;padding:18px 0}
.buyerOptional summary{cursor:pointer;font-weight:700}.buyerOptional .piInquiryGrid{margin-top:18px}
.buyerSuccess{background:#effaf5;border:1px solid #9bd4b9;padding:24px;color:#123b2b;border-radius:16px;line-height:1.8}
.buyerSuccess strong{display:inline-block;font-size:20px}.buyerSuccess .primary{color:white}
.buyerPreview{display:flex;flex-direction:column;height:100dvh;overflow:hidden}
.previewBar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 20px;background:#0b192d;color:#edf5ff;border-bottom:1px solid #29425f}
.previewBar>div{display:grid;gap:6px}.previewBar small{color:#aac1df;font-size:10px;letter-spacing:.1em}.previewBar .previewSizes{display:flex}
.previewSizes button{border:1px solid #587493;border-radius:8px;padding:10px;background:transparent;color:white;cursor:pointer}.previewSizes button[aria-pressed=true]{background:#235ca7}
.previewNote{flex:0 0 auto;margin:0;padding:6px 20px;font-size:11px;line-height:1.4;color:#c5d5e8;background:#15273f}
#previewHost{flex:1;min-height:0;display:flex;justify-content:center;background:#27384e}
#previewHost iframe{width:100%;height:100%;border:0;background:white}#previewHost.previewMobile iframe{width:min(390px,100%)}
.optionDetailHero .primary,.cta button.primary{border:none;cursor:pointer}.planCard .buyerMicrocopy{color:#53667c}
@media(max-width:800px){.buyerGrid{grid-template-columns:1fr}.buyerSteps{grid-template-columns:1fr 1fr}.previewBar{flex-wrap:wrap;padding:8px 12px;gap:7px}.previewBar .previewSizes{display:none}.previewBar .primary{width:100%}.previewNote{padding:5px 12px}.optionDetailHero .actions{flex-direction:column}}
@media(max-width:480px){.buyerSteps{grid-template-columns:1fr}.buyerGrid>*{padding:22px}}
@media(prefers-reduced-motion:reduce){.buyerGrid>a{transition:none}}

/* Selección del plan en la ficha, sin cambiar la estructura general de V8.3. */
.buyerPlanSection{background:#f5f8fc;scroll-margin-top:70px}
.buyerPlanChoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.buyerPlanChoice{display:grid;text-align:left;gap:12px;padding:24px;background:#fff;color:#132942;border:2px solid #d5e0ec;border-radius:16px;cursor:pointer;min-height:160px;font:inherit}
.buyerPlanChoice span{font-weight:800;font-size:19px}.buyerPlanChoice strong{color:#1b5cae;font-size:21px}.buyerPlanChoice small{color:#51677d;line-height:1.5}
.buyerPlanChoice[aria-pressed=true]{border-color:#2f7df4;box-shadow:0 10px 28px #2f7df421;background:#f9fcff}
.buyerPlanChoice:focus-visible{outline:3px solid #91c8ff;outline-offset:3px}
.buyerPlanAction{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding-top:28px}
.buyerPlanAction p{margin:0 auto 0 0;font-weight:750;color:#173451}.buyerPlanAction a.primary{text-align:center}
.piEduHome{display:grid;grid-template-columns:1.3fr .7fr;gap:56px;align-items:center;background:#edf4fc}
.piEduHome h2{max-width:730px}.piEduHome p{max-width:660px;line-height:1.7;color:#4d6178}.piEduHome .piEduNote{font-size:13px;color:#61778d}
.piEduTopics{display:grid;gap:12px}.piEduTopics span{display:block;padding:18px 20px;background:#fff;border:1px solid #d8e5f3;border-radius:12px;color:#214a7a;font-weight:750}
@media(max-width:800px){.buyerPlanChoices,.piEduHome{grid-template-columns:1fr}.piEduHome{gap:24px}.buyerPlanAction{align-items:stretch;flex-direction:column}.buyerPlanAction p{margin:0}.buyerPlanChoice{min-height:0}}
.buyerSetup{margin:28px 0 10px;padding:23px;border:1px solid #dce6f0;border-radius:22px;background:linear-gradient(135deg,#f8fbff,#eef5fe)}.buyerSetup h3{margin:9px 0 5px;font-size:clamp(22px,3vw,30px)}.buyerSetup>p{line-height:1.55;max-width:780px}.buyerSetupChoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.buyerSetupChoice{display:flex;flex-direction:column;gap:8px;text-align:left;padding:18px;border:1px solid #cbd9e9;border-radius:15px;background:#fff;color:#15263a;cursor:pointer;min-height:152px}.buyerSetupChoice.selected{border:2px solid #3278dc;box-shadow:0 7px 27px #1c61b321;background:#f8fbff}.buyerSetupChoice b{font-size:18px}.buyerSetupChoice strong{color:#215ead;font-size:16px}.buyerSetupChoice small{line-height:1.5;color:#5b6e85;font-size:13px}@media(max-width:690px){.buyerSetup{padding:17px}.buyerSetupChoices{grid-template-columns:1fr}.buyerSetupChoice{min-height:0}}

.previewChoices{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:10px 16px;background:#f8f5f4;border-bottom:1px solid #eadfe0}.previewChoices[hidden]{display:none}.previewChoices label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#3b3440}.previewChoices select{max-width:200px;padding:7px 10px;border:1px solid #bdb3b9;border-radius:8px;background:white;color:#262029}.previewVariantDescription{font-size:12px;color:#61535d}@media(max-width:650px){.previewChoices{justify-content:flex-start}.previewChoices label{width:100%;justify-content:space-between}.previewChoices select{width:54%}}

@media(min-width:801px){.buyerNeeds .buyerGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
