/* Reference: the supplied two-option capsule. Existing role artwork remains unchanged. */
#role-tabs:empty{display:none}
.duo-section.has-role-tabs>.duo-grid{display:none}
#role-tabs{--role-accent:#ff603d;--role-muted:#716965}
#role-tabs>.ant-tabs,#role-tabs .ant-tabs{overflow:visible}
#role-tabs .ant-tabs-nav{width:min(660px,100%);margin:24px auto 48px;padding:4px;border:1px solid #fff;border-radius:999px;background:linear-gradient(110deg,#fff4ee,#fffaf7);box-shadow:0 16px 40px rgba(105,62,43,.08)}
#role-tabs .ant-tabs-nav::before{border:0}
#role-tabs .ant-tabs-nav-wrap,#role-tabs .ant-tabs-nav-list{width:100%}
#role-tabs .ant-tabs-nav-list{display:flex}
#role-tabs .ant-tabs-tab{display:flex;flex:1;justify-content:center;min-height:40px;padding:6px 24px;margin:0;border-radius:999px;transition:background .2s ease,box-shadow .2s ease}
#role-tabs .ant-tabs-tab-active{background:#fff;box-shadow:0 8px 24px rgba(105,62,43,.08)}
#role-tabs .ant-tabs-tab-btn{width:100%;text-align:center;color:var(--role-muted);font-size:18px;font-weight:600;line-height:1.5}
#role-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#242424;text-shadow:none}
#role-tabs .ant-tabs-tab:hover .ant-tabs-tab-btn{color:var(--role-accent)}
#role-tabs .ant-tabs-tab-btn:focus-visible{outline:2px solid var(--role-accent);outline-offset:6px;border-radius:24px}
#role-tabs .ant-tabs-ink-bar{display:none}
#role-tabs .ant-tabs-content-holder{min-width:0}
#role-tabs .role-tab-content{max-width:680px;margin:0 auto}
#role-tabs .role-tab-content:has(.writer-role){max-width:1120px}
#role-tabs .writer-role{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:clamp(32px,5vw,64px);max-width:none;margin:0 auto;padding:24px 0 8px}
#role-tabs .writer-role .writer-copy{min-width:0;padding-left:clamp(8px,2vw,28px)}
#role-tabs .writer-role .duo-role-heading{text-align:left}
#role-tabs .writer-role .duo-role-heading h3{justify-content:flex-start;font-size:clamp(34px,3.2vw,48px);font-weight:500;line-height:1.2;letter-spacing:-.04em}
#role-tabs .writer-role .duo-role-heading h3 span{font-size:15px;font-weight:400;color:#60636a}
#role-tabs .writer-role .duo-role-heading p{max-width:360px;margin:18px 0 0;font-size:clamp(18px,1.65vw,22px);line-height:1.65;color:#55595f}
#role-tabs .writer-description{max-width:520px;margin:30px 0 0;font-size:16px;line-height:1.9;color:#656971}
#role-tabs .writer-capability-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:28px 0 0;padding:0;list-style:none}
#role-tabs .writer-capability-cards li{display:flex;align-items:center;gap:10px;min-width:0;padding:14px 12px;border:1px solid #f4e9e3;border-radius:18px;background:#fff9f5;color:#222831}
#role-tabs .writer-capability-cards strong{font-size:14px;font-weight:500;white-space:nowrap}
#role-tabs .writer-capability-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:#fff0e8;color:#ff603d}
#role-tabs .writer-capability-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#role-tabs .writer-output-meta{display:flex;align-items:center;gap:12px;margin:20px 0 0;font-size:13px;color:#777b82}
#role-tabs .writer-output-meta span{color:#c3b6af}
#role-tabs .writer-outcome{margin:30px 0 0;font-size:clamp(20px,2vw,28px);font-weight:500;line-height:1.5;letter-spacing:-.025em;color:#20242a}
#role-tabs .writer-outcome strong{font-weight:500;color:#ff603d}
#role-tabs .writer-role .role-art{width:100%;max-width:600px;margin:0}
#role-tabs .writer-role .role-art iframe{display:block;width:100%;aspect-ratio:520/430;border:0;background:#fff}
#role-tabs .duo-role{padding-top:0}
@media(max-width:900px){
  #role-tabs .writer-role{grid-template-columns:minmax(400px,1.18fr) minmax(280px,.82fr);gap:24px;padding-top:8px}
  #role-tabs .writer-role .writer-copy{padding-left:0}
  #role-tabs .writer-role .duo-role-heading h3{font-size:32px}
  #role-tabs .writer-role .duo-role-heading h3 span{font-size:13px}
  #role-tabs .writer-role .duo-role-heading p{font-size:17px}
  #role-tabs .writer-description{margin-top:22px;font-size:14px}
  #role-tabs .writer-capability-cards{gap:8px;margin-top:22px}
  #role-tabs .writer-capability-cards li{gap:7px;padding:10px 8px;border-radius:14px}
  #role-tabs .writer-capability-cards strong{font-size:12px}
  #role-tabs .writer-capability-icon{flex-basis:30px;width:30px;height:30px}
  #role-tabs .writer-capability-icon svg{width:18px;height:18px}
  #role-tabs .writer-output-meta{margin-top:16px}
  #role-tabs .writer-outcome{margin-top:22px;font-size:20px}
}
@media(max-width:720px){
  #role-tabs .ant-tabs-nav{margin:24px auto 32px;padding:4px}
  #role-tabs .ant-tabs-tab{min-height:44px;padding:6px 16px}
  #role-tabs .ant-tabs-tab-btn{font-size:16px}
  #role-tabs .writer-role{gap:20px}
  #role-tabs .writer-role .duo-role-heading h3{font-size:30px}
  #role-tabs .writer-role .duo-role-heading h3 span{font-size:13px}
  #role-tabs .writer-role .duo-role-heading p{margin-top:12px;font-size:17px}
  #role-tabs .writer-capability-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:540px){
  #role-tabs .writer-role{grid-template-columns:1fr;gap:20px;max-width:640px}
  #role-tabs .writer-role .writer-copy{text-align:center}
  #role-tabs .writer-role .duo-role-heading{text-align:center}
  #role-tabs .writer-role .duo-role-heading h3{justify-content:center}
  #role-tabs .writer-role .duo-role-heading p{margin-inline:auto}
  #role-tabs .writer-description{margin-inline:auto}
  #role-tabs .writer-capability-cards{max-width:440px;margin-inline:auto}
  #role-tabs .writer-output-meta{justify-content:center}
  #role-tabs .writer-role .role-art{margin-inline:auto}
}
@media(prefers-reduced-motion:reduce){#role-tabs .ant-tabs-tab{transition:none}}

/* Unified role stage: both roles share one title grid, one height and one visual rhythm. */
#role-tabs .ant-tabs-content-holder{min-height:610px}
#role-tabs .role-tab-content{width:100%;max-width:1180px;min-height:610px}
#role-tabs .role-tab-content:has(.writer-role),#role-tabs .role-tab-content:has(.advisor-role){max-width:1180px}
#role-tabs .advisor-role,#role-tabs .writer-role{grid-template-columns:minmax(340px,.88fr) minmax(500px,1.12fr);gap:56px;min-height:560px;padding:0;align-items:center}
#role-tabs .advisor-profile,#role-tabs .writer-copy{min-width:0;padding:0}
#role-tabs .advisor-role .duo-role-heading,#role-tabs .writer-role .duo-role-heading{text-align:left}
#role-tabs .advisor-role .duo-role-heading h3,#role-tabs .writer-role .duo-role-heading h3{display:flex;align-items:center;justify-content:flex-start;gap:14px;margin:0;font-size:36px;line-height:1.25;font-weight:650;letter-spacing:-.04em;color:#17202f}
#role-tabs .advisor-role .duo-role-heading h3 span,#role-tabs .writer-role .duo-role-heading h3 span{display:flex;align-items:center;gap:14px;padding-left:0;border-left:0;font-size:18px;line-height:1.5;font-weight:400;letter-spacing:-.01em;color:#667080}
#role-tabs .advisor-role .duo-role-heading h3 span::before,#role-tabs .writer-role .duo-role-heading h3 span::before{content:"";width:1px;height:26px;background:#d7d9dd}
#role-tabs .advisor-promise,#role-tabs .writer-promise{margin:28px 0 8px;font-size:42px;font-weight:400;line-height:1.2;letter-spacing:-.045em;color:#142033}
#role-tabs .advisor-intro,#role-tabs .writer-description{max-width:470px;margin:0 0 32px;font-size:18px;line-height:1.75;color:#737b89}
#role-tabs .writer-capability-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:0}
#role-tabs .writer-capability-cards li{min-height:94px;padding:16px;border-color:#f0e5e0;background:linear-gradient(135deg,#fffaf7 0%,#fff 72%);box-shadow:0 12px 28px rgba(28,35,45,.035)}
#role-tabs .writer-capability-icon{flex-basis:48px;width:48px;height:48px}
#role-tabs .writer-capability-icon svg{width:25px;height:25px}
#role-tabs .writer-capability-cards strong{font-size:15px;font-weight:600}
#role-tabs .writer-output-meta{margin-top:18px}
#role-tabs .writer-outcome{margin-top:28px;font-size:24px}
#role-tabs .writer-role .role-art{display:flex;align-items:center;justify-content:center;width:100%;max-width:none;min-height:510px;margin:0}
#role-tabs .writer-role .role-art iframe{width:100%;height:510px;aspect-ratio:auto}
#role-tabs .ant-tabs-tabpane-active .duo-role{animation:role-pane-in .42s cubic-bezier(.16,1,.3,1)}
@keyframes role-pane-in{from{opacity:.35;transform:translateY(12px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@media(max-width:920px){
  #role-tabs .advisor-role,#role-tabs .writer-role{grid-template-columns:minmax(290px,.9fr) minmax(390px,1.1fr);gap:28px}
  #role-tabs .advisor-promise,#role-tabs .writer-promise{font-size:34px}
  #role-tabs .advisor-intro,#role-tabs .writer-description{font-size:16px}
  #role-tabs .writer-capability-cards{gap:8px}
  #role-tabs .writer-capability-cards li{min-height:82px;padding:10px 8px}
  #role-tabs .writer-capability-icon{flex-basis:36px;width:36px;height:36px}
  #role-tabs .writer-capability-cards strong{font-size:12px}
  #role-tabs .writer-outcome{font-size:20px}
}
@media(max-width:760px){
  #role-tabs .ant-tabs-content-holder,#role-tabs .role-tab-content{min-height:0}
  #role-tabs .advisor-role,#role-tabs .writer-role{grid-template-columns:1fr;gap:36px;min-height:0}
  #role-tabs .advisor-profile,#role-tabs .writer-copy,#role-tabs .advisor-stage,#role-tabs .writer-role .role-art{width:100%;max-width:640px;margin-inline:auto}
}
@media(max-width:540px){
  #role-tabs .advisor-role .duo-role-heading,#role-tabs .writer-role .duo-role-heading{text-align:left}
  #role-tabs .advisor-role .duo-role-heading h3,#role-tabs .writer-role .duo-role-heading h3{justify-content:flex-start;font-size:30px}
  #role-tabs .advisor-role .duo-role-heading h3 span,#role-tabs .writer-role .duo-role-heading h3 span{font-size:15px}
  #role-tabs .advisor-promise,#role-tabs .writer-promise{font-size:28px}
  #role-tabs .advisor-intro,#role-tabs .writer-description{font-size:16px;text-align:left}
  #role-tabs .writer-role .writer-copy{text-align:left}
  #role-tabs .writer-capability-cards{grid-template-columns:1fr;max-width:none;margin-inline:0}
  #role-tabs .writer-output-meta{justify-content:flex-start}
  #role-tabs .writer-role .role-art{min-height:390px}
  #role-tabs .writer-role .role-art iframe{height:390px}
}
@media(prefers-reduced-motion:reduce){#role-tabs .ant-tabs-tabpane-active .duo-role{animation:none}}

/* Stacked role story: one shared stage, two consecutive responsibilities. */
.duo-section.has-role-stack{--stack-top:148px;width:100%;max-width:none;padding-inline:clamp(20px,4vw,64px);padding-bottom:clamp(80px,10vw,150px)}
.duo-section.has-role-stack>.section-heading{max-width:1180px;margin-inline:auto}
.duo-section.has-role-stack #role-tabs{position:relative;width:min(1180px,100%);margin:24px auto 42px}
.duo-section.has-role-stack #role-tabs>.duo-grid{display:block;width:100%;max-width:none;margin:0 auto;padding:0 0 10vh}
.role-stack-nav{position:sticky;top:78px;z-index:12;display:grid;grid-template-columns:1fr 76px 1fr;align-items:center;width:min(680px,calc(100% - 24px));margin:0 auto 42px;padding:5px;border:1px solid rgba(255,255,255,.92);border-radius:999px;background:rgba(255,248,244,.94);box-shadow:0 14px 38px rgba(80,48,34,.08);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.role-stack-nav button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:6px 18px;border:0;border-radius:999px;background:transparent;color:#857a75;font:inherit;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
.role-stack-nav button span{font-size:12px;font-weight:400;color:#9d918b}
.role-stack-nav button strong{font-size:17px;font-weight:600;letter-spacing:-.02em}
.role-stack-nav button.is-active{background:#fff;color:#20252c;box-shadow:0 8px 22px rgba(76,47,35,.075)}
.role-stack-nav button.is-active span{color:#ff603d}
.role-stack-nav button:hover{color:#ff603d}
.role-stack-nav button:focus-visible{outline:2px solid #ff603d;outline-offset:3px}
.role-stack-flow{position:relative;display:block;height:1px;background:#e6d9d2}
.role-stack-flow::after{content:"";position:absolute;right:-1px;top:50%;width:7px;height:7px;border-top:1.5px solid #c9b7ae;border-right:1.5px solid #c9b7ae;transform:translateY(-50%) rotate(45deg)}
.role-stack-flow i{position:absolute;left:0;top:-1px;width:50%;height:3px;border-radius:3px;background:#ff7a5d;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.duo-section.has-role-stack[data-active-role="writer"] .role-stack-flow i{transform:translateX(100%)}
.duo-section.has-role-stack .duo-role{position:sticky;display:grid;grid-template-columns:minmax(340px,.88fr) minmax(500px,1.12fr);align-items:center;gap:56px;min-height:610px;margin:0;padding:44px;border:1px solid #eee8e4;border-radius:32px;background:#fff;box-shadow:0 22px 70px rgba(31,38,47,.09),0 2px 8px rgba(31,38,47,.035);overflow:hidden;isolation:isolate;transform-origin:50% 0;transition:transform .45s cubic-bezier(.16,1,.3,1),filter .35s ease,box-shadow .35s ease}
.duo-section.has-role-stack .advisor-role{top:var(--stack-top);z-index:1;scroll-margin-top:var(--stack-top);background:linear-gradient(145deg,#fff 0%,#fff 70%,#fff9f6 100%)}
.duo-section.has-role-stack .writer-role{top:calc(var(--stack-top) + 10px);z-index:2;margin-top:32px;scroll-margin-top:calc(var(--stack-top) + 10px);background:linear-gradient(145deg,#fff 0%,#fff 66%,#fff8f4 100%)}
.duo-section.has-role-stack .advisor-role.is-behind{transform:translateY(-12px) scale(.972);filter:saturate(.88);box-shadow:0 12px 38px rgba(31,38,47,.06)}
.duo-section.has-role-stack .duo-role::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(105deg,transparent 0 62%,rgba(255,116,78,.025) 62% 100%)}
.duo-section.has-role-stack .advisor-profile,.duo-section.has-role-stack .writer-copy{min-width:0;padding:0}
.duo-section.has-role-stack .writer-role .role-art{min-height:510px}

@media(max-width:920px){
  .duo-section.has-role-stack{--stack-top:138px;padding-inline:24px}
  .duo-section.has-role-stack .duo-role{grid-template-columns:minmax(290px,.9fr) minmax(390px,1.1fr);gap:28px;padding:30px}
}
@media(max-width:760px){
  .duo-section.has-role-stack{--stack-top:128px;padding-inline:16px}
  .duo-section.has-role-stack #role-tabs{margin-bottom:28px}
  .role-stack-nav{top:68px;margin-bottom:28px}
  .role-stack-nav{grid-template-columns:1fr 42px 1fr}
  .role-stack-nav button{gap:6px;padding-inline:10px}
  .role-stack-nav button span{display:none}
  #role-tabs .duo-grid .duo-role{position:relative;top:auto;grid-template-columns:1fr;gap:36px;min-height:0;padding:28px 24px;border-radius:26px;scroll-margin-top:132px}
  #role-tabs .duo-grid .advisor-profile,#role-tabs .duo-grid .writer-copy,#role-tabs .duo-grid .advisor-stage,#role-tabs .duo-grid .writer-role .role-art{width:100%;max-width:640px;margin-inline:auto}
  .duo-section.has-role-stack .writer-role{margin-top:28px}
  .duo-section.has-role-stack .advisor-role.is-behind{transform:none;filter:none}
}
@media(max-width:540px){
  .duo-section.has-role-stack{padding-inline:12px}
  .duo-section.has-role-stack #role-tabs{width:100%}
  .role-stack-nav{width:100%}
  .duo-section.has-role-stack .duo-role{padding:24px 18px;border-radius:22px}
  .role-stack-nav button strong{font-size:15px}
}
@media(prefers-reduced-motion:reduce){
  .duo-section.has-role-stack .duo-role,.role-stack-flow i{transition:none}
}

/* Sasonix-inspired flow: cards stay in normal document order and stack through
   staggered sticky offsets. The next chapter remains visible while approaching,
   then covers the previous card without an abrupt tab-like swap. */

/* Compact stacked cards: keep the relationship visible without overwhelming the page. */
.duo-section.has-role-stack{--stack-top:138px}
.duo-section.has-role-stack #role-tabs{width:min(1160px,100%)}
.duo-section.has-role-stack #role-tabs>.duo-grid{width:100%}
#role-tabs .duo-grid .duo-role{grid-template-columns:minmax(350px,.92fr) minmax(470px,1.08fr);gap:46px;min-height:520px;padding:34px 42px;border-radius:28px}
#role-tabs .advisor-role .duo-role-heading h3,#role-tabs .writer-role .duo-role-heading h3{font-size:31px;gap:12px}
#role-tabs .advisor-role .duo-role-heading h3 span,#role-tabs .writer-role .duo-role-heading h3 span{font-size:16px;gap:12px}
#role-tabs .advisor-role .duo-role-heading h3 span::before,#role-tabs .writer-role .duo-role-heading h3 span::before{height:22px}
#role-tabs .advisor-promise,#role-tabs .writer-promise{margin-top:22px;font-size:34px;line-height:1.25}
#role-tabs .advisor-intro,#role-tabs .writer-description{margin-bottom:24px;font-size:16px;line-height:1.7}
#role-tabs .advisor-stage{width:100%;max-width:520px;margin-inline:auto}
#role-tabs .writer-role .role-art{max-width:520px;min-height:430px;margin-inline:auto}
#role-tabs .writer-role .role-art iframe{height:430px}
#role-tabs .writer-capability-cards li{min-height:78px;padding:12px}
#role-tabs .writer-capability-icon{flex-basis:40px;width:40px;height:40px}
#role-tabs .writer-capability-icon svg{width:22px;height:22px}
#role-tabs .writer-outcome{margin-top:22px;font-size:21px}
#role-tabs .advisor-traits{gap:12px}
#role-tabs .advisor-traits>div{grid-template-columns:40px minmax(0,1fr);gap:10px;min-height:78px;padding:12px}
#role-tabs .advisor-trait-icon{width:40px;height:40px}
#role-tabs .advisor-trait-icon svg{width:22px;height:22px}
#role-tabs .advisor-traits dt{font-size:16px;white-space:nowrap}
#role-tabs .advisor-traits dd{font-size:11px;line-height:1.5}

@media(max-width:920px){
  #role-tabs .duo-grid .duo-role{grid-template-columns:minmax(280px,.92fr) minmax(360px,1.08fr);gap:24px;padding:28px}
  #role-tabs .advisor-promise,#role-tabs .writer-promise{font-size:30px}
  #role-tabs .writer-role .role-art{min-height:390px}
  #role-tabs .writer-role .role-art iframe{height:390px}
}
@media(max-width:760px){
  #role-tabs .duo-grid .duo-role{grid-template-columns:1fr;padding:26px 22px}
  #role-tabs .advisor-promise,#role-tabs .writer-promise{font-size:28px}
}

/* 2026-10-06 alignment pass: one wider stage, balanced columns and safe text widths. */
.duo-section.has-role-stack #role-tabs{width:min(1380px,100%)}
#role-tabs .duo-grid .duo-role{
  grid-template-columns:minmax(470px,.94fr) minmax(560px,1.06fr);
  gap:64px;
  min-height:540px;
  padding:40px 60px;
}
#role-tabs .advisor-profile,#role-tabs .writer-copy{max-width:520px}
#role-tabs .advisor-stage{width:100%;max-width:560px;box-sizing:border-box;margin-inline:auto;padding-left:28px}
#role-tabs .advisor-role .advisor-conversation{width:100%;max-width:100%;box-sizing:border-box}
#role-tabs .writer-capability-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#role-tabs .writer-capability-cards li{min-width:0;padding-inline:14px}
#role-tabs .writer-capability-cards strong{white-space:nowrap}
#role-tabs .writer-outcome{max-width:520px;white-space:nowrap}
#role-tabs .writer-role .role-art{width:100%;max-width:560px;min-height:420px;box-sizing:border-box}
#role-tabs .writer-role .role-art iframe{height:420px}

@media(max-width:1120px){
  #role-tabs .duo-grid .duo-role{grid-template-columns:minmax(360px,.92fr) minmax(440px,1.08fr);gap:32px;padding:34px 38px}
  #role-tabs .writer-outcome{white-space:normal}
}
@media(max-width:920px){
  #role-tabs .duo-grid .duo-role{grid-template-columns:minmax(300px,.9fr) minmax(390px,1.1fr);gap:24px;padding:28px}
  #role-tabs .writer-capability-cards li{padding-inline:10px}
}
@media(max-width:760px){
  #role-tabs .duo-grid .duo-role{grid-template-columns:1fr;min-height:0;padding:26px 22px}
  #role-tabs .advisor-profile,#role-tabs .writer-copy{max-width:640px}
  #role-tabs .writer-capability-cards{grid-template-columns:1fr}
  #role-tabs .writer-capability-cards strong{white-space:normal}
}

/* Tighten the handoff from the stacked roles to the offers section. */
.duo-section.has-role-stack{padding-bottom:48px}
.duo-section.has-role-stack #role-tabs{margin-bottom:24px}
.duo-section.has-role-stack #role-tabs>.duo-grid{padding-bottom:24px}
