/* ===== Workshop detail page — authored in calc(1024 * var(--u,1px)) design space, scaled via --u ===== */
.w-hero,.w-strip,.w-about,.w-exp,.w-det,.w-gl,.w-tf{padding:0}
.wh{font-family:var(--serif);font-size:calc(19 * var(--u,1px));font-weight:600;color:var(--green);display:flex;align-items:center;gap:calc(8 * var(--u,1px));line-height:1.1}
.wh img{width:calc(26 * var(--u,1px));height:calc(26 * var(--u,1px));object-fit:contain;flex:none}
.tk li{position:relative;padding-left:calc(24 * var(--u,1px));font-size:calc(10 * var(--u,1px));line-height:1.35;color:#4a4a42;margin-bottom:calc(8 * var(--u,1px))}
.tk li::before{content:"";position:absolute;left:0;top:-1px;width:calc(13 * var(--u,1px));height:calc(13 * var(--u,1px));border:1.4px solid var(--green);border-radius:50%}
.tk li::after{content:"";position:absolute;left:calc(4.5 * var(--u,1px));top:calc(2 * var(--u,1px));width:calc(3 * var(--u,1px));height:calc(6 * var(--u,1px));border:solid var(--green);border-width:0 1.5px 1.5px 0;transform:rotate(40deg)}

/* Hero */
.w-hero{display:block;min-height:calc(360 * var(--u,1px));padding:0;margin-top:calc(58 * var(--u,1px));overflow:visible;background:#1a2a1f}
.w-hero .bg-img{object-position:center}
.w-hero::after{background:linear-gradient(90deg,rgba(8,26,18,.55),rgba(8,26,18,.1) 50%,transparent 70%)}
.w-hero{overflow:visible;z-index:3}
.crumbs{display:flex;align-items:center}
.w-hero .bg-img{width:100%}
.w-hero .hero-text{max-width:none;padding:calc(28 * var(--u,1px)) 0 0 calc(59 * var(--u,1px));width:calc(640 * var(--u,1px))}
.w-hero .crumbs{font-size:calc(9.5 * var(--u,1px));gap:calc(9 * var(--u,1px));margin-bottom:calc(14 * var(--u,1px))}
.live{display:inline-block;background:var(--gold);color:#fff;font-size:calc(8 * var(--u,1px));font-weight:600;letter-spacing:.06em;padding:calc(3 * var(--u,1px)) calc(8 * var(--u,1px));border-radius:calc(3 * var(--u,1px))}
.w-hero h1{font-size:calc(38 * var(--u,1px));font-weight:500;line-height:1.02;margin:calc(10 * var(--u,1px)) 0 calc(12 * var(--u,1px));color:#fff}
.w-sub{font-size:calc(17 * var(--u,1px));font-weight:300;margin-bottom:calc(14 * var(--u,1px));color:#fff}
.w-lead{font-size:calc(11 * var(--u,1px));line-height:1.6;max-width:calc(335 * var(--u,1px));color:rgba(255,255,255,.92)}
.w-meta{display:flex;gap:calc(30 * var(--u,1px));margin-top:calc(38 * var(--u,1px))}
.w-meta li{display:flex;align-items:center;gap:calc(10 * var(--u,1px));font-size:calc(10 * var(--u,1px));line-height:1.55;color:#fff}
.w-meta img{width:calc(26 * var(--u,1px));height:calc(28 * var(--u,1px));object-fit:contain;filter:brightness(1.4) drop-shadow(0 0 .5px #fff)}
.reserve{position:absolute;left:calc(727 * var(--u,1px));top:calc(22 * var(--u,1px));width:calc(261 * var(--u,1px));background:#fffdf8;color:var(--ink);border-radius:calc(6 * var(--u,1px));padding:calc(14 * var(--u,1px)) calc(22 * var(--u,1px)) calc(14 * var(--u,1px));box-shadow:0 calc(10 * var(--u,1px)) calc(30 * var(--u,1px)) rgba(0,0,0,.2);z-index:3}
.reserve h2{font-size:calc(17 * var(--u,1px));font-weight:600;color:var(--ink);margin-bottom:calc(4 * var(--u,1px))}
.price-row{display:flex;align-items:center;gap:calc(8 * var(--u,1px));margin-bottom:calc(10 * var(--u,1px))}
.price-row b{font-family:var(--serif);font-size:calc(25 * var(--u,1px));font-weight:700;color:var(--ink)}
.price-row s{font-size:calc(10 * var(--u,1px));color:var(--muted)}
.price-row em{font-style:normal;font-size:calc(8.5 * var(--u,1px));font-weight:600;background:var(--gold-2);color:#6a5527;border-radius:calc(12 * var(--u,1px));padding:calc(5 * var(--u,1px)) calc(9 * var(--u,1px));margin-left:auto}
.reserve .tk li{margin-bottom:calc(6 * var(--u,1px));color:var(--ink)}
.reserve .btn{display:block;text-align:center;border-radius:calc(4 * var(--u,1px));padding:calc(8 * var(--u,1px)) calc(10 * var(--u,1px));font-size:calc(9.5 * var(--u,1px));font-weight:500;margin-top:calc(8 * var(--u,1px))}
.reserve .btn-dark{margin-top:calc(14 * var(--u,1px))}
.reserve .btn-line{border:1.2px solid var(--green);color:var(--green);display:flex;gap:calc(7 * var(--u,1px));align-items:center;justify-content:center}
.seats{font-size:calc(8.5 * var(--u,1px));font-weight:600;color:#c04a3c;margin:calc(12 * var(--u,1px)) 0 calc(4 * var(--u,1px)) calc(22 * var(--u,1px))}
.reg{display:flex;align-items:center;gap:calc(8 * var(--u,1px));font-size:calc(9 * var(--u,1px));line-height:1.4;color:var(--ink)}
.reg img{width:calc(78 * var(--u,1px));height:calc(34 * var(--u,1px));object-fit:cover;border-radius:calc(17 * var(--u,1px))}

/* Strip */
.w-strip{background:rgba(251,246,236,.95);height:calc(72 * var(--u,1px))}
.w-strip ul{display:grid;grid-template-columns:repeat(4,1fr);margin:0 calc(300 * var(--u,1px)) 0 calc(46 * var(--u,1px));height:100%}
.w-strip li{display:flex;align-items:center;gap:calc(7 * var(--u,1px));padding:0 calc(6 * var(--u,1px));border-right:1px solid #e1dac3;font-size:calc(7.6 * var(--u,1px));color:var(--muted);line-height:1.4}
.w-strip li:last-child{border:0}
.w-strip b{display:block;font-size:calc(8.8 * var(--u,1px));font-weight:600;color:var(--ink)}
.w-strip img{width:calc(34 * var(--u,1px));height:calc(30 * var(--u,1px));object-fit:contain;flex:none}

/* About */
.w-about{display:grid;grid-template-columns:calc(373 * var(--u,1px)) calc(238 * var(--u,1px)) calc(267 * var(--u,1px));gap:calc(13 * var(--u,1px)) calc(14 * var(--u,1px));padding:calc(8 * var(--u,1px)) calc(48 * var(--u,1px)) calc(18 * var(--u,1px)) calc(57 * var(--u,1px));align-items:start;overflow:hidden}
.w-about .wh{font-size:calc(22 * var(--u,1px));margin-bottom:calc(8 * var(--u,1px))}
.w-about .wa-text{padding-top:calc(10 * var(--u,1px))}
.wa-text p{font-size:calc(10 * var(--u,1px));line-height:1.62;color:#4a4a42;max-width:calc(372 * var(--u,1px))}
.btn-sand{background:#f0dcb0;color:#5a4a22;border-radius:calc(22 * var(--u,1px));padding:calc(9 * var(--u,1px)) calc(22 * var(--u,1px));font-size:calc(10 * var(--u,1px));font-weight:500;display:inline-flex;align-items:center;gap:calc(7 * var(--u,1px));margin-top:calc(14 * var(--u,1px))}
.btn-sand.small{padding:calc(7 * var(--u,1px)) calc(18 * var(--u,1px));margin-top:calc(8 * var(--u,1px));font-size:calc(9.5 * var(--u,1px))}
.wa-video{position:relative;height:calc(182 * var(--u,1px));border-radius:calc(5 * var(--u,1px));overflow:hidden;margin-top:0}
.wa-video::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 45%)}
.play{position:absolute;left:calc(14 * var(--u,1px));bottom:calc(14 * var(--u,1px));display:flex;align-items:center;gap:calc(10 * var(--u,1px));background:none;border:0;color:#fff;font:500 calc(9.5 * var(--u,1px))/1.3 var(--sans);text-align:left;cursor:pointer;z-index:2}
.play i{width:calc(30 * var(--u,1px));height:calc(30 * var(--u,1px));border-radius:50%;background:#fff;position:relative;flex:none}
.play i::after{content:"";position:absolute;left:calc(12 * var(--u,1px));top:calc(8 * var(--u,1px));border-style:solid;border-width:calc(7 * var(--u,1px)) 0 calc(7 * var(--u,1px)) calc(10 * var(--u,1px));border-color:transparent transparent transparent #222}
.play small{font-size:calc(9 * var(--u,1px));font-weight:400}
.wa-panel{background:#e8ede0;border-radius:calc(5 * var(--u,1px));padding:calc(14 * var(--u,1px)) calc(18 * var(--u,1px)) calc(8 * var(--u,1px));margin-top:0}
.wa-panel h3{font-family:var(--serif);font-size:calc(14 * var(--u,1px));font-weight:600;color:var(--ink);margin-bottom:calc(12 * var(--u,1px))}
.leaf{position:absolute;z-index:-1;pointer-events:none;max-width:none;height:auto}
.wl1{left:0;top:calc(88 * var(--u,1px));width:calc(46 * var(--u,1px))}.wl2{right:0;top:calc(6 * var(--u,1px));width:calc(44 * var(--u,1px))}

/* Experience */
.w-exp{padding:0 calc(47 * var(--u,1px)) calc(8 * var(--u,1px))}
.w-exp .wh{margin:0 0 calc(9 * var(--u,1px)) calc(3 * var(--u,1px))}
.exp{display:grid;grid-template-columns:repeat(6,1fr);gap:calc(9 * var(--u,1px))}
.exp li{background:#fff;border-radius:calc(4 * var(--u,1px));box-shadow:0 calc(2 * var(--u,1px)) calc(10 * var(--u,1px)) rgba(0,0,0,.05);height:calc(124 * var(--u,1px));padding:calc(8 * var(--u,1px)) calc(6 * var(--u,1px));text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(8.4 * var(--u,1px));line-height:1.35;color:var(--muted)}
.exp img{width:calc(36 * var(--u,1px));height:calc(36 * var(--u,1px));object-fit:contain;margin-bottom:calc(4 * var(--u,1px))}
.exp b{font-size:calc(9.6 * var(--u,1px));font-weight:600;color:var(--ink);margin-bottom:calc(3 * var(--u,1px))}

/* Details + facilitator */
.w-det{display:grid;grid-template-columns:calc(515 * var(--u,1px)) 1fr;gap:0 calc(18 * var(--u,1px));padding:calc(10 * var(--u,1px)) calc(47 * var(--u,1px)) calc(12 * var(--u,1px)) calc(50 * var(--u,1px))}
.w-det .wh{margin-bottom:calc(7 * var(--u,1px))}
.wd-row{display:grid;grid-template-columns:calc(263 * var(--u,1px)) calc(226 * var(--u,1px));gap:calc(13 * var(--u,1px))}
.wd-list{background:#e8ede0;border-radius:calc(4 * var(--u,1px));padding:calc(11 * var(--u,1px)) calc(14 * var(--u,1px));display:flex;flex-direction:column;gap:calc(7 * var(--u,1px));height:calc(209 * var(--u,1px))}
.wd-list li{display:flex;gap:calc(11 * var(--u,1px));align-items:flex-start;font-size:calc(9.4 * var(--u,1px));line-height:1.4;color:#4a4a42}
.wd-list img{width:calc(19 * var(--u,1px));height:calc(19 * var(--u,1px));object-fit:contain;flex:none;margin-top:calc(2 * var(--u,1px))}
.wd-list b{display:block;font-size:calc(10 * var(--u,1px));font-weight:600;color:var(--ink)}
.wd-photo{height:calc(214 * var(--u,1px));border-radius:calc(4 * var(--u,1px));overflow:hidden;margin-top:calc(-5 * var(--u,1px))}
.wd-right{padding-left:calc(16 * var(--u,1px))}
.fac{display:grid;grid-template-columns:calc(150 * var(--u,1px)) 1fr;gap:calc(12 * var(--u,1px));align-items:start}
.fac-ph{height:calc(136 * var(--u,1px));border-radius:calc(4 * var(--u,1px));overflow:hidden}
.fac-tx h3{font-size:calc(17 * var(--u,1px));font-weight:600;color:var(--ink);margin-top:calc(-2 * var(--u,1px))}
.roles{font-size:calc(7.8 * var(--u,1px));color:var(--muted);margin:1px 0 calc(5 * var(--u,1px))}
.roles i{font-style:normal;color:var(--gold);margin:0 calc(3 * var(--u,1px))}
.fac-tx p:not(.roles){font-size:calc(7.8 * var(--u,1px));line-height:1.55;color:#4a4a42}
.fac-q{margin:calc(11 * var(--u,1px)) 0 0;background:#fff;border-radius:calc(4 * var(--u,1px));box-shadow:0 calc(2 * var(--u,1px)) calc(10 * var(--u,1px)) rgba(0,0,0,.05);padding:calc(12 * var(--u,1px)) calc(20 * var(--u,1px)) calc(10 * var(--u,1px)) calc(84 * var(--u,1px));position:relative;min-height:calc(68 * var(--u,1px))}
.fac-q img{position:absolute;left:calc(16 * var(--u,1px));top:calc(10 * var(--u,1px));width:calc(22 * var(--u,1px));height:calc(20 * var(--u,1px));object-fit:contain}
.fac-q p{font-family:var(--serif);font-style:italic;font-size:calc(10.8 * var(--u,1px));line-height:1.55;color:#4a4a42}
.fac-q cite{display:block;font-style:normal;font-size:calc(7.5 * var(--u,1px));letter-spacing:.04em;color:var(--muted);margin-top:calc(4 * var(--u,1px))}

/* Glimpses */
.w-gl{padding:calc(2 * var(--u,1px)) calc(47 * var(--u,1px)) calc(12 * var(--u,1px)) calc(50 * var(--u,1px))}
.w-gl .wh{margin-bottom:calc(8 * var(--u,1px))}
.gl-wrap{display:flex;align-items:center;gap:calc(10 * var(--u,1px))}
.gl{display:flex;gap:calc(9 * var(--u,1px));flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;padding:0 calc(4 * var(--u,1px))}
.gl::-webkit-scrollbar,.wt-track::-webkit-scrollbar{display:none}
.gl img{height:calc(76 * var(--u,1px));width:auto;flex:1 0 auto;object-fit:cover;border-radius:calc(3 * var(--u,1px))}
.w-arrow{width:calc(28 * var(--u,1px));height:calc(28 * var(--u,1px));border-radius:50%;border:1px solid #d8d0b8;background:#fffdf8;color:var(--ink);font-size:calc(15 * var(--u,1px));line-height:1;cursor:pointer;flex:none;display:grid;place-items:center;padding:0 0 calc(2 * var(--u,1px))}
.w-arrow:hover{background:var(--gold-2)}

/* Testimonials + FAQ */
.w-tf{display:grid;grid-template-columns:calc(690 * var(--u,1px)) 1fr;gap:0 calc(17 * var(--u,1px));padding:calc(4 * var(--u,1px)) calc(47 * var(--u,1px)) calc(18 * var(--u,1px)) calc(50 * var(--u,1px))}
.w-tf .wh{margin-bottom:calc(8 * var(--u,1px))}
.wt-wrap{display:flex;align-items:center;gap:calc(8 * var(--u,1px))}
.wt-track{display:flex;gap:calc(11 * var(--u,1px));flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;padding:calc(2 * var(--u,1px)) calc(2 * var(--u,1px)) calc(6 * var(--u,1px))}
.wt-track figure{flex:0 0 calc(196 * var(--u,1px));background:#fff;border-radius:calc(4 * var(--u,1px));box-shadow:0 calc(2 * var(--u,1px)) calc(10 * var(--u,1px)) rgba(0,0,0,.06);padding:calc(9 * var(--u,1px)) calc(12 * var(--u,1px)) calc(9 * var(--u,1px));height:calc(106 * var(--u,1px));display:flex;flex-direction:column;justify-content:space-between}
.wt-top{display:flex;gap:calc(9 * var(--u,1px))}
.wt-top img{width:calc(36 * var(--u,1px));height:calc(36 * var(--u,1px));border-radius:50%;object-fit:cover;flex:none}
.wt-top blockquote{font-size:calc(7.6 * var(--u,1px));line-height:1.5;color:#4a4a42}
.wt-track figcaption{padding-left:0}
.wt-track figcaption b{display:block;font-size:calc(8.2 * var(--u,1px));font-weight:600;color:var(--ink)}
.stars{color:#e2a31b;font-size:calc(10 * var(--u,1px));letter-spacing:1px;line-height:1}
.wf{padding-left:calc(10 * var(--u,1px))}
.wf .wh{font-size:calc(19 * var(--u,1px));margin-bottom:calc(8 * var(--u,1px));white-space:nowrap}
.wf-list{background:#fff;border-radius:calc(4 * var(--u,1px));box-shadow:0 calc(2 * var(--u,1px)) calc(10 * var(--u,1px)) rgba(0,0,0,.06);padding:calc(2 * var(--u,1px)) calc(12 * var(--u,1px))}
.wf-list details{border-bottom:1px solid #eee7d6}
.wf-list details:last-child{border:0}
.wf-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:calc(8.2 * var(--u,1px));color:var(--ink);padding:calc(7 * var(--u,1px)) 0}
.wf-list summary::-webkit-details-marker{display:none}
.wf-list summary::after{content:"+";font-size:calc(11 * var(--u,1px));color:var(--ink)}
.wf-list details[open] summary::after{content:"–"}
.wf-list details p{font-size:calc(8 * var(--u,1px));color:var(--muted);line-height:1.5;padding-bottom:calc(7 * var(--u,1px))}

/* CTA */
.w-cta{display:block;min-height:calc(149 * var(--u,1px));padding:0;background:#16301f}
.w-cta .cta-text{padding:calc(12 * var(--u,1px)) 0 0 calc(68 * var(--u,1px))}
.w-cta h2{font-size:calc(26 * var(--u,1px));font-weight:600;margin-bottom:calc(2 * var(--u,1px))}
.w-cta p{font-size:calc(11.5 * var(--u,1px));margin:0 0 calc(14 * var(--u,1px))}
.w-cta .btn{padding:calc(10 * var(--u,1px)) calc(22 * var(--u,1px));font-size:calc(10.5 * var(--u,1px));border-width:1.2px}
.w-cta::after{background:linear-gradient(90deg,rgba(8,26,18,.55),transparent 60%)}
.w-cta .cta-script{position:absolute;right:calc(98 * var(--u,1px));top:calc(16 * var(--u,1px));font-size:calc(26 * var(--u,1px));line-height:1.05;color:#fff;text-align:left;margin:0;max-width:none}

@media(max-width:1000px){
  .w-hero{margin-top:calc(58 * var(--u,1px))}
  .w-hero .hero-text{width:auto;padding:calc(24 * var(--u,1px)) 5vw 0}
  .reserve{position:relative;left:auto;top:auto;width:auto;margin:calc(20 * var(--u,1px)) 5vw calc(-30 * var(--u,1px))}
  .w-meta{flex-wrap:wrap;gap:calc(16 * var(--u,1px));margin-top:calc(20 * var(--u,1px))}
  .w-strip{height:auto}.w-strip ul{grid-template-columns:1fr 1fr;margin:0 5vw;padding:calc(10 * var(--u,1px)) 0}
  .w-about,.w-det,.w-tf,.wd-row,.fac{grid-template-columns:1fr}
  .w-about,.w-det,.w-tf,.w-gl,.w-exp{padding-left:5vw;padding-right:5vw}
  .exp{grid-template-columns:repeat(2,1fr)}
  .wd-photo{margin-top:0}.wd-right{padding-left:0;margin-top:calc(20 * var(--u,1px))}
  .w-cta .cta-script{display:none}
  .w-cta .cta-text{padding:calc(20 * var(--u,1px)) 5vw}
  .wf{padding-left:0;margin-top:calc(20 * var(--u,1px))}
}
