/* Vista de detalle de workshop. Tokens compartidos: ../public-pages.css */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-family-primary);color:var(--gd-text);background:var(--gd-bg);overflow-x:hidden}
a{color:inherit}
img{max-width:100%;height:auto}
.gd-shell{width:min(100% - 32px,var(--gd-max));margin-inline:auto}
.gd-section{padding:72px 0}
.gd-section--soft{background:#f7f8fb}
.gd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gd-card{border:1px solid rgba(30,55,103,.16);border-radius:8px;padding:24px;background:#fff;box-shadow:0 10px 28px rgba(30,55,103,.06)}
.gd-btn{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:12px 20px;border:0;border-radius:999px;background:var(--gd-primary);color:#fff;text-decoration:none;font-weight:800;cursor:pointer;transition:transform var(--gd-transition),box-shadow var(--gd-transition),opacity var(--gd-transition)}
.gd-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(30,55,103,.18)}
.gd-btn:disabled{cursor:not-allowed;opacity:.68;transform:none;box-shadow:none}
.gd-muted{color:var(--gd-secondary)}
.gd-narrow{max-width:860px}
.gd-eyebrow,.gd-badge{display:inline-flex;margin:0 0 14px;color:var(--gd-secondary);font-weight:800;text-transform:uppercase;letter-spacing:.08em}

.gd-workshop-hero{position:relative;min-height:clamp(660px,78vh,760px);display:flex;align-items:center;background-image:linear-gradient(90deg,rgba(5,22,62,.9) 0%,rgba(5,22,62,.74) 34%,rgba(5,22,62,.18) 58%,rgba(5,22,62,0) 100%),var(--workshop-hero-image);background-size:cover;background-position:center right;background-repeat:no-repeat;color:#fff;isolation:isolate}
.gd-workshop-hero__inner{display:flex;align-items:center;padding:44px 0}
.gd-workshop-hero__content{width:min(610px,49%);padding-top:6px}
.gd-live-label{display:inline-flex;margin:0 0 14px;padding:7px 11px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,125,44,.2);color:#ffbf8c;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.gd-workshop-hero h1{margin:0;color:#fff;font-size:clamp(38px,3.9vw,58px);line-height:1;letter-spacing:0}
.gd-workshop-headline{margin:14px 0 0;color:#fff;font-size:clamp(22px,2vw,30px);font-weight:900;line-height:1.12;letter-spacing:0}
.gd-workshop-description{max-width:560px;margin:14px 0 0;color:rgba(255,255,255,.9);font-size:clamp(16px,1.22vw,18px);line-height:1.42}
.gd-workshop-meta{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.gd-workshop-meta li{display:inline-flex;min-height:36px;align-items:center;padding:8px 10px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.1);color:#fff;font-size:13px;font-weight:800;backdrop-filter:blur(8px)}
.gd-workshop-price-card{display:grid;gap:5px;width:min(100%,300px);margin:18px 0 14px;padding:14px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:rgba(4,18,52,.3);box-shadow:0 16px 34px rgba(0,0,0,.14);backdrop-filter:blur(8px)}
.gd-workshop-price-card span{color:#ffbf8c;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.gd-workshop-price-card strong{display:block;color:#fff;font-size:clamp(28px,2.8vw,40px);line-height:1}
.gd-workshop-price-card p{margin:0;color:rgba(255,255,255,.88);font-weight:800}
.gd-workshop-price-card small{color:rgba(255,255,255,.72);font-weight:800}
.gd-workshop-countdown{display:grid;gap:2px;margin-top:6px!important;padding-top:9px;border-top:1px solid rgba(255,255,255,.18)}
.gd-workshop-countdown span{color:rgba(255,255,255,.72);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.gd-workshop-countdown strong{font-size:18px;line-height:1.1}
.gd-btn--hero{background:#ff8a32;color:#111827;box-shadow:0 14px 28px rgba(255,138,50,.22)}

.gd-checkout-section{padding:42px 0 48px;background:#071a45;color:#fff;scroll-margin-top:84px}
.gd-checkout-payment{position:relative;display:grid;grid-template-columns:minmax(320px,.88fr) minmax(420px,1.12fr);gap:24px;align-items:start;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:rgba(255,255,255,.07);padding:24px;box-shadow:0 14px 34px rgba(0,0,0,.14);scroll-margin-top:96px}
.gd-checkout-payment__form{min-width:0}
.gd-checkout-payment__stripe{position:sticky;top:18px;min-width:0}
.gd-checkout-section .gd-eyebrow{color:#ffbf8c;font-size:13px}
.gd-checkout-section h2{margin:0 0 16px;color:#fff;font-size:clamp(24px,2.4vw,34px);letter-spacing:0}
.gd-checkout-details{display:grid;gap:8px;margin:0}
.gd-checkout-details div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.gd-checkout-details dt{color:rgba(255,255,255,.64);font-weight:800}
.gd-checkout-details dd{margin:0;color:#fff;font-weight:900}
.gd-checkout-includes{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.gd-checkout-includes li{position:relative;padding-left:26px;color:rgba(255,255,255,.9);font-weight:800}
.gd-checkout-includes li::before{content:"\2713";position:absolute;left:0;top:0;color:#ffbf8c;font-weight:900}
.gd-stripe-container{display:flex;min-height:520px;align-items:center;justify-content:center;padding:22px;border:1px dashed rgba(255,255,255,.3);border-radius:8px;background:rgba(255,255,255,.07);text-align:center}
.gd-stripe-container p{max-width:390px;margin:0;color:rgba(255,255,255,.88);font-size:17px;font-weight:900;line-height:1.35}
.gd-checkout-loading,.gd-checkout-error,.gd-checkout-closed{min-height:0;margin:12px 0 0;color:#fff;font-weight:800}
.gd-checkout-loading:empty,.gd-checkout-error:empty,.gd-checkout-closed:empty{display:none}
.gd-checkout-payment form{margin-top:18px}
.gd-anchor-marker{position:absolute;top:-92px;left:0;width:1px;height:1px;pointer-events:none}
.gd-buyer-form{display:grid;gap:12px;margin:0 0 16px}
.gd-buyer-form label{display:grid;gap:6px;color:rgba(255,255,255,.78);font-size:13px;font-weight:900}
.gd-buyer-form input{width:100%;min-height:42px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:rgba(255,255,255,.92);color:#071a45;padding:10px 12px;font:inherit;font-weight:700}
.gd-phone-grid{display:grid;grid-template-columns:132px minmax(0,1fr);gap:10px}
.gd-consent{grid-template-columns:18px minmax(0,1fr)!important;align-items:start;padding:10px;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:rgba(255,255,255,.06)}
.gd-consent input{min-height:auto;margin-top:3px}
.gd-form-status{min-height:20px;margin:0;color:#ffbf8c;font-weight:800}
.gd-payment-state{position:fixed;right:18px;bottom:18px;z-index:80;max-width:360px;padding:14px 16px;border-radius:8px;background:#071a45;color:#fff;box-shadow:0 18px 44px rgba(0,0,0,.25);font-weight:800}
.gd-payment-state--error{background:#5b1721}
.gd-payment-modal{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px;background:rgba(3,10,28,.68)}
.gd-payment-modal[hidden],.gd-payment-state[hidden]{display:none}
.gd-payment-modal__panel{width:min(100%,520px);border-radius:8px;background:#fff;color:#071a45;padding:30px;box-shadow:0 24px 80px rgba(0,0,0,.3)}
.gd-payment-modal__panel h2{margin:0 0 12px;font-size:32px;letter-spacing:0}
.gd-payment-modal__panel p{font-weight:700;line-height:1.5}

.gd-instructor-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:32px;align-items:center}
.gd-instructor-media,.gd-gallery img{overflow:hidden;border-radius:8px;box-shadow:0 18px 42px rgba(30,55,103,.16)}
.gd-instructor-media{aspect-ratio:4/5}
.gd-instructor-media img,.gd-gallery img{display:block;width:100%;height:100%;object-fit:cover}
.gd-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gd-gallery img{aspect-ratio:4/3}
.gd-event-info-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:24px;align-items:stretch}
.gd-event-summary{border:1px solid rgba(255,255,255,.16);border-radius:8px;background:#071a45;color:#fff;padding:24px;box-shadow:0 14px 34px rgba(30,55,103,.14)}
.gd-event-summary .gd-eyebrow{color:#ffbf8c}
.gd-event-summary h3{margin:0 0 16px;color:#fff;font-size:clamp(24px,2.2vw,34px);line-height:1.05;letter-spacing:0}
.gd-event-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.gd-workshop-access-note{margin-top:20px;color:var(--gd-primary);font-weight:900;text-align:center}
.gd-workshop-final{text-align:center}
.gd-workshop-final p{max-width:720px;margin-inline:auto}

@media(max-width:900px){
  .gd-workshop-hero{min-height:860px;align-items:flex-end;background-image:linear-gradient(180deg,rgba(5,22,62,.03) 0%,rgba(5,22,62,.08) 34%,rgba(5,22,62,.76) 60%,rgba(5,22,62,.96) 100%),var(--workshop-hero-image);background-position:72% top}
  .gd-workshop-hero__inner{align-items:flex-end;padding:410px 0 38px}
  .gd-workshop-hero__content{width:100%;max-width:620px}
  .gd-workshop-hero h1{font-size:clamp(34px,10vw,48px)}
  .gd-workshop-headline{font-size:clamp(21px,6.2vw,29px)}
  .gd-workshop-description{font-size:16px}
  .gd-checkout-payment,.gd-event-info-layout,.gd-grid,.gd-instructor-grid,.gd-gallery{grid-template-columns:1fr}
  .gd-checkout-payment__stripe{position:static}
  .gd-section{padding:52px 0}
  .gd-checkout-section{padding:38px 0 44px}
  .gd-instructor-media{max-width:360px}
  .gd-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:560px){
  .gd-shell{width:min(100% - 24px,var(--gd-max))}
  .gd-workshop-hero{min-height:900px;background-position:72% top}
  .gd-workshop-hero__inner{padding:390px 0 32px}
  .gd-workshop-meta{display:grid;gap:8px}
  .gd-workshop-meta li{width:100%;border-radius:8px;font-size:12px}
  .gd-workshop-price-card{width:100%;margin-top:16px}
  .gd-btn{width:100%;min-height:48px}
  .gd-checkout-payment,.gd-event-summary{padding:20px}
  .gd-checkout-details div{grid-template-columns:1fr;gap:4px}
  .gd-phone-grid{grid-template-columns:1fr}
  .gd-stripe-container{min-height:260px}
  .gd-gallery{grid-template-columns:1fr}
}
