/* Product presentation only. All prices and purchase forms remain server rendered. */
body.drk3-product-offer .ast-woocommerce-container div.product .summary { width:100%!important; float:none; margin:0 0 32px; }
body.drk3-product-offer .summary>.drkm-entry { display:none; }
body.drk3-product-offer :is(.drk3-offer,.drk3-offer-section,.drk3-offer-author,.drk3-offer-description) { box-sizing:border-box; color:#264e53; }
body.drk3-product-offer :is(.drk3-offer,.drk3-offer-section,.drk3-offer-author,.drk3-offer-description) * { box-sizing:border-box; min-width:0; overflow-wrap:anywhere; }
body.drk3-product-offer :is(.drk3-offer,.drk3-offer-section,.drk3-offer-author,.drk3-offer-description) :is(a,button,summary):focus-visible { outline:3px solid #16798d; outline-offset:4px; }
body.drk3-product-offer .drk3-offer { display:grid; grid-template-columns:minmax(180px,280px) minmax(0,1fr); gap:0 48px; max-width:1040px; margin:0 auto; }
body.drk3-product-offer .drk3-offer-cover { grid-column:1; grid-row:1/3; }
body.drk3-product-offer .drk3-offer-cover img { display:block; width:100%; height:auto; border-radius:14px; }
body.drk3-product-offer .drk3-offer-heading { grid-column:2; }
body.drk3-product-offer .drk3-offer-kind { margin:0 0 8px; font-size:14px; line-height:1.5; color:#536b6f; }
body.drk3-product-offer.single-product div.product .summary .drk3-offer .product_title { font-size:clamp(26px,3vw,36px); line-height:1.25; font-weight:500; margin:0 0 14px; text-wrap:pretty; }
body.drk3-product-offer .drk3-offer-body { grid-column:2; }
body.drk3-product-offer .drk3-offer-byline { margin:0 0 16px; font-size:15px; line-height:1.5; }
body.drk3-product-offer .drk3-offer-byline a { text-decoration:underline; text-underline-offset:3px; }
body.drk3-product-offer .drk3-offer-price { display:flex; align-items:center; flex-wrap:wrap; gap:8px 20px; margin:0 0 10px; }
body.drk3-product-offer.single-product div.product .summary .drk3-offer-price .price { margin:0; font-size:28px; line-height:1.3; }
body.drk3-product-offer .drk3-offer-price>span { font-size:14px; color:#536b6f; }
body.drk3-product-offer .drk3-offer-facts { margin:0 0 14px; font-size:15px; line-height:1.6; }
body.drk3-product-offer .drk3-offer-facts>span { display:block; }
body.drk3-product-offer .drk3-offer-intro { margin:0 0 18px; font-size:17px; line-height:1.6; }
body.drk3-product-offer .drk3-offer-actions { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; max-width:500px; }
body.drk3-product-offer .drk3-offer-preview { display:flex; align-items:center; justify-content:center; gap:14px; padding:12px 16px; min-height:66px; border:1px solid #bad4d5; border-radius:9px; background:#eff7f7; color:#185e6b; text-decoration:none; line-height:1.5; }
body.drk3-product-offer .drk3-offer-preview strong { display:block; font-size:16px; font-weight:600; }
body.drk3-product-offer .drk3-offer-preview small { display:block; font-size:13px; }
body.drk3-product-offer .drk3-offer-actions form { margin:0; }
body.drk3-product-offer .drk3-offer-actions button { width:100%; min-height:48px; margin:0!important; padding:12px 14px; font-size:16px; line-height:1.5; }
body.drk3-product-offer .drk3-offer-access { font-size:14px; line-height:1.55; color:#536b6f; margin:12px 0 4px; }
body.drk3-product-offer .drk3-offer-contents { display:inline-flex; align-items:center; gap:10px; min-height:44px; font-size:15px; }
body.drk3-product-offer .drk3-offer-note { margin:8px 0 0; font-size:14px; line-height:1.6; color:#536b6f; }
body.drk3-product-offer :is(.drk3-offer-section,.drk3-offer-author,.drk3-offer-description) { margin:32px 0; scroll-margin-top:24px; }
body.drk3-product-offer :is(.drk3-offer-section,.drk3-offer-author) h2 { margin:0 0 16px; font-size:clamp(24px,2.7vw,30px); line-height:1.3; text-transform:none; }
body.drk3-product-offer .drk3-offer-section>p { max-width:78ch; }
body.drk3-product-offer .drk3-offer-section h3 { font-size:20px; line-height:1.4; margin:24px 0 12px; }
body.drk3-product-offer .drk3-offer-tracks { list-style:none; margin:0!important; padding:0!important; border-top:1px solid #d4e3e1; }
body.drk3-product-offer .drk3-offer-tracks li { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:center; padding:16px 0; margin:0; border-bottom:1px solid #d4e3e1; line-height:1.5; }
body.drk3-product-offer .drk3-offer-tracks strong { font-size:17px; font-weight:600; }
body.drk3-product-offer .drk3-offer-full-time { display:block; font-size:14px; color:#536b6f; margin-top:4px; font-variant-numeric:tabular-nums; }
body.drk3-product-offer .drk3-offer-tracks a { display:flex; align-items:center; flex-wrap:wrap; gap:6px; padding:10px 14px; min-height:44px; color:#185e6b; border:1px solid #bad4d5; border-radius:8px; font-size:14px; text-decoration:none; background:#eff7f7; }
body.drk3-product-offer .drk3-offer-overlap { padding:16px 20px; background:#f6f3ec; border-radius:9px; font-size:15px; margin-top:20px; }
body.drk3-product-offer .drk3-offer-author { display:grid; grid-template-columns:120px minmax(0,1fr); align-items:center; gap:28px; padding:28px; background:#eff7f7; border-radius:14px; }
body.drk3-product-offer .drk3-author-photo { display:block; width:120px; height:120px; object-fit:cover; border-radius:50%; }
body.drk3-product-offer .drk3-offer-author.drk3-author-text { grid-template-columns:minmax(0,1fr); }
body.drk3-product-offer .drk3-offer-author p { margin-bottom:10px; line-height:1.65; }
body.drk3-product-offer .drk3-offer-author a { display:inline-flex; align-items:center; min-height:44px; }
body.drk3-product-offer .drk3-offer-faq details { border-top:1px solid #d4e3e1; margin:0; }
body.drk3-product-offer :is(.drk3-offer-faq,.drk3-offer-description) summary { padding:16px 0; min-height:48px; cursor:pointer; font-size:17px; font-weight:600; line-height:1.5; }
body.drk3-product-offer .drk3-offer-faq details p { margin:0 0 18px; max-width:78ch; font-size:16px; line-height:1.7; }
body.drk3-product-offer .drk3-offer-repeat { display:flex; align-items:center; flex-wrap:wrap; gap:12px 24px; margin-top:20px; }
body.drk3-product-offer .drk3-offer-repeat form { margin:0; }
body.drk3-product-offer .drk3-offer-repeat a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; }
body.drk3-product-offer .drk3-offer-description { padding:0 22px; border:1px solid #d4e3e1; border-radius:10px; }
body.drk3-product-offer .drk3-offer-description:not([open])>.drk3-product-description { display:none; }
@media(max-width:1000px) {
  body.drk3-product-offer .drk3-offer { grid-template-columns:180px minmax(0,1fr); gap:0 28px; }
}
@media(max-width:767px) {
  body.drk3-product-offer .drk3-offer { grid-template-columns:80px minmax(0,1fr); gap:0 16px; }
  body.drk3-product-offer .drk3-offer-cover { grid-row:1; }
  body.drk3-product-offer .drk3-offer-cover img { border-radius:8px; }
  body.drk3-product-offer.single-product div.product .summary .drk3-offer .product_title { font-size:23px; line-height:1.3; margin:0; }
  body.drk3-product-offer .drk3-offer-kind { font-size:12px; margin-bottom:6px; }
  body.drk3-product-offer .drk3-offer-body { grid-column:1/-1; padding-top:14px; }
  body.drk3-product-offer .drk3-offer-byline { font-size:14px; margin-bottom:12px; }
  body.drk3-product-offer .drk3-offer-price { gap:6px 14px; }
  body.drk3-product-offer.single-product div.product .summary .drk3-offer-price .price { font-size:26px; }
  body.drk3-product-offer .drk3-offer-price>span { font-size:13px; }
  body.drk3-product-offer .drk3-offer-intro { font-size:16px; line-height:1.55; margin-bottom:16px; }
  body.drk3-product-offer .drk3-offer-facts { font-size:14px; margin-bottom:12px; }
  body.drk3-product-offer .drk3-offer-tracks li { grid-template-columns:minmax(0,1fr); gap:10px; }
  body.drk3-product-offer .drk3-offer-tracks a { justify-self:start; }
  body.drk3-product-offer .drk3-offer-author { grid-template-columns:64px minmax(0,1fr); align-items:start; padding:20px 16px; gap:16px; }
  body.drk3-product-offer .drk3-author-photo { width:64px; height:64px; }
  body.drk3-product-offer .drk3-offer-author h2 { font-size:22px; margin-bottom:12px; }
  body.drk3-product-offer .drk3-offer-author p { font-size:15px; }
  body.drk3-product-offer .drk3-offer-description { padding:0 16px; }
}
@media(max-width:360px) {
  body.drk3-product-offer .drk3-offer { grid-template-columns:64px minmax(0,1fr); gap:0 12px; }
  body.drk3-product-offer.single-product div.product .summary .drk3-offer .product_title { font-size:21px; }
  body.drk3-product-offer .drk3-offer-author { grid-template-columns:minmax(0,1fr); }
}
