/* iPhone Duo Thanksgiving story — v4 (selling-point layout, crisp) */

.duoStory{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:#f3e6d4;
  padding:88px 0 96px;
  color:#1c1410;
}
.duoStory-scene{
  position:absolute;inset:0;z-index:0;pointer-events:none;
}
.duoStory-scene img{
  width:100%;height:100%;object-fit:cover;object-position:center 35%;
  display:block;filter:none;
}
.duoStory-veil{
  position:absolute;inset:0;
  /* Light overall wash; stronger cream in the lower feature/finale zone so type stays crisp */
  background:
    linear-gradient(180deg,
      rgba(247,236,220,.28) 0%,
      rgba(247,236,220,.42) 38%,
      rgba(247,236,220,.78) 68%,
      rgba(247,236,220,.94) 100%),
    linear-gradient(90deg,
      rgba(247,236,220,.40) 0%,
      rgba(247,236,220,.08) 48%,
      rgba(247,236,220,.18) 100%);
}
.duoStory .wrap{position:relative;z-index:3}

/* Refined corner decor — kept, quieter than v3 */
.duoDecor{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.duoDecor-item{
  position:absolute;display:block;
  filter:drop-shadow(0 4px 8px rgba(40,16,8,.12));
  opacity:.9;
}
.duoDecor-maple-tl{top:-16px;left:-8px;width:100px;height:100px;transform:rotate(-20deg)}
.duoDecor-wheat-tl{top:86px;left:-4px;width:28px;height:130px;transform:rotate(-16deg)}
.duoDecor-oak-tr{top:-18px;right:6px;width:68px;height:104px;transform:rotate(16deg)}
.duoDecor-berries-tr{top:80px;right:-6px;width:96px;height:72px;transform:rotate(8deg)}
.duoDecor-pumpkin-bl{bottom:-8px;left:10px;width:72px;height:60px}
.duoDecor-maple-gold-br{bottom:-8px;right:-10px;width:96px;height:96px;transform:rotate(22deg)}
.duoFall{
  position:absolute;width:30px;height:30px;opacity:.45;
  animation:duoDrift 22s linear infinite;will-change:transform;z-index:2;
}
.duoFall img{width:100%;height:100%;display:block}
.duoFall-1{left:14%;top:-28px;animation-duration:24s}
.duoFall-2{left:48%;top:-40px;width:22px;height:22px;animation-duration:28s;animation-delay:-8s}
.duoFall-3{left:78%;top:-24px;width:26px;height:26px;animation-duration:26s;animation-delay:-14s}
@keyframes duoDrift{
  0%{transform:translate3d(0,0,0) rotate(0)}
  50%{transform:translate3d(-24px,340px,0) rotate(90deg)}
  100%{transform:translate3d(14px,720px,0) rotate(170deg)}
}

/* Type */
.duoRibbon{
  display:inline-block;position:relative;
  padding:7px 18px 7px 14px;margin:0 0 18px;
  background:linear-gradient(180deg,#b45309,#9a3412);
  color:#fff7ed;letter-spacing:.16em;font-size:10px;font-weight:700;
  text-transform:uppercase;border-radius:2px 3px 3px 2px;
  box-shadow:0 4px 10px rgba(80,20,8,.18);line-height:1.3;
}
.duoRibbon::after{
  content:"";position:absolute;right:-11px;top:0;bottom:0;width:12px;
  background:linear-gradient(180deg,#b45309,#9a3412);
  clip-path:polygon(0 0,100% 50%,0 100%);
}
.duoCard{
  background:#fffaf4;
  border:1px solid rgba(80,50,30,.08);
  border-radius:28px;
  box-shadow:0 18px 44px rgba(48,24,12,.10), inset 0 1px 0 rgba(255,255,255,.8);
  padding:36px 40px 34px;
}
.duoStory h2{
  margin:0;
  font-family:var(--serif,"Instrument Serif",Georgia,"Playfair Display",serif);
  font-weight:400;letter-spacing:-.03em;color:#1c1410;line-height:.98;
}
.duoStory h2 em{font-style:italic;font-weight:400;color:#c2410c}
.duoLead{
  margin:18px 0 0;
  font-size:18.5px;line-height:1.55;color:#2a211c;
  max-width:38em;
}
.duoBullets{
  list-style:none;margin:26px 0 0;padding:0;
  display:flex;flex-direction:column;gap:14px;
}
.duoBullets li{
  display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:start;
}
.duoIco{
  width:40px;height:40px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%, #fbbf24, #c2410c 70%);
  color:#fff7ed;display:grid;place-items:center;flex:none;
  box-shadow:0 3px 8px rgba(80,30,10,.22);
}
.duoIco svg{display:block}
.duoBullets strong{
  display:block;font-size:16.5px;line-height:1.3;color:#1c1410;font-weight:650;
}
.duoBullets span{
  display:block;margin-top:2px;font-size:14.5px;line-height:1.45;color:#3f342e;
}
.duoStory .textLink{
  display:inline-block;margin-top:22px;font-weight:650;color:#9a3412;
}

/* Hook — large typographic hero */
.duoHook{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,400px);
  gap:56px 64px;align-items:center;
  margin-bottom:88px;
}
.duoHook-copy h2{font-size:clamp(44px,6.4vw,84px)}
.duoHook .duoLead{font-size:19.5px;max-width:28em}

/* Zigzag feature rows */
.duoFeature{
  display:grid;
  grid-template-columns:minmax(240px,380px) minmax(0,1fr);
  gap:48px 64px;align-items:center;
  margin:0 0 72px;
}
.duoFeature--rev{grid-template-columns:minmax(0,1fr) minmax(240px,380px)}
.duoFeature--rev > .duoItem{order:2}
.duoFeature--rev > .duoFeature-copy{order:1}
.duoFeature-copy h2{font-size:clamp(32px,4.4vw,56px)}
.duoFeature-copy{max-width:640px}

/* Finale */
.duoFinale{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,380px);
  gap:48px 64px;align-items:center;
  margin-top:16px;
}
.duoFinale-copy h2{font-size:clamp(32px,4.4vw,56px)}
.duoSteps{
  list-style:none;margin:28px 0 0;padding:0;
  display:flex;flex-direction:column;gap:14px;
}
.duoSteps li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:center}
.duoStepNum{
  width:48px;height:48px;border-radius:50%;
  display:grid;place-items:center;
  font-family:var(--serif,"Instrument Serif",Georgia,serif);
  font-size:20px;color:#fff7ed;
  background:radial-gradient(circle at 35% 30%, #fbbf24, #9a3412 62%);
  box-shadow:0 4px 10px rgba(80,30,10,.25);border:1px solid rgba(253,230,138,.55);
}
.duoSteps strong{font-size:18px;color:#1c1410;font-weight:650;line-height:1.3}

/* Video card — linen, refined ribbon + seal, no covering controls */
.duoItem{margin:0;position:relative;z-index:3}
.duoStage{width:100%;max-width:400px;margin:0 auto;position:relative}
.duoHook .duoStage{max-width:400px}
.duoStage-glow{
  position:absolute;inset:-18px;border-radius:40px;
  background:radial-gradient(circle at 50% 40%, rgba(255,200,120,.28), transparent 68%);
  pointer-events:none;
}
.duoBezel{
  position:relative;
  padding:14px 12px 18px;border-radius:28px;
  background:
    linear-gradient(180deg, rgba(255,250,242,.98), rgba(245,232,214,.96)),
    url("/assets/landing/duo-demo/linen-tile.webp");
  background-size:auto, 180px 180px;
  border:1px solid rgba(255,236,210,.95);
  box-shadow:0 3px 0 #c4a07a, 0 22px 48px rgba(78,50,33,.20);
}
.duoBezel-ribbon{
  position:absolute;top:10px;left:50%;transform:translateX(-50%);
  width:48px;height:12px;background:linear-gradient(180deg,#9f1239,#7f1d1d);
  border-radius:0 0 3px 3px;box-shadow:0 3px 6px rgba(80,10,20,.22);
  z-index:4;pointer-events:none;
}
.duoBezel-ribbon::before,.duoBezel-ribbon::after{
  content:"";position:absolute;top:0;border-style:solid;
}
.duoBezel-ribbon::before{left:-7px;border-width:0 7px 12px 0;border-color:transparent #7f1d1d transparent transparent}
.duoBezel-ribbon::after{right:-7px;border-width:0 0 12px 7px;border-color:transparent transparent transparent #7f1d1d}
.duoBezel-seal{
  position:absolute;top:6px;right:8px;width:24px;height:24px;
  background:url("/assets/landing/duo-demo/deco-seal.svg") center/contain no-repeat;
  z-index:4;pointer-events:none;filter:drop-shadow(0 2px 3px rgba(80,20,8,.28));
}
.duoBezel video{
  display:block;width:100%;height:auto;border-radius:18px;background:#1c1410;
  vertical-align:middle;
}
.duoPlay{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:74px;height:74px;border:0;border-radius:50%;
  background:rgba(47,31,23,.42);color:#fff;font-size:26px;
  display:grid;place-items:center;padding:0 0 0 5px;cursor:pointer;z-index:3;
  box-shadow:0 10px 25px rgba(54,32,21,.22), inset 0 0 0 8px rgba(255,255,255,.14);
  transition:transform .2s ease, background .2s ease;
}
.duoPlay:hover{transform:translate(-50%,-50%) scale(1.05);background:rgba(47,31,23,.55)}
.duoPlay:focus-visible{outline:3px solid #bf511e;outline-offset:5px}
.is-playing .duoPlay{opacity:0;pointer-events:none}
.duoItem figcaption{
  margin:14px 2px 0;color:#3f342e;font-size:14.5px;line-height:1.45;
  background:#fffaf4;padding:8px 12px;border-radius:10px;
}

/* Blog: compact, lighter atmosphere, article stays readable */
.articleContent .duoStory{
  margin:48px 0 56px;padding:36px 8px 40px;border-radius:28px;
}
.articleContent .duoStory-scene img{opacity:.85}
.articleContent .duoStory-veil{
  background:linear-gradient(180deg, rgba(255,248,238,.72), rgba(255,248,238,.88));
  border-radius:28px;
}
.articleContent .duoHook,
.articleContent .duoFeature,
.articleContent .duoFeature--rev,
.articleContent .duoFinale{
  grid-template-columns:minmax(0,1fr) minmax(200px,260px);
  gap:28px 36px;margin:0 0 40px;
}
.articleContent .duoFeature--rev{grid-template-columns:minmax(200px,260px) minmax(0,1fr)}
.articleContent .duoHook-copy h2,
.articleContent .duoFeature-copy h2,
.articleContent .duoFinale-copy h2{font-size:clamp(28px,4vw,40px)}
.articleContent .duoCard{padding:22px 24px}
.articleContent .duoLead{font-size:16.5px}
.articleContent .duoDecor-wheat-tl,
.articleContent .duoFall{display:none}
.articleContent .duoStage{max-width:260px}

@media(max-width:760px){
  .duoStory{padding:56px 0 64px}
  .duoHook,
  .duoFeature,
  .duoFeature--rev,
  .duoFinale{
    grid-template-columns:1fr;gap:24px;margin-bottom:56px;
  }
  .duoFeature--rev .duoFeature-media,
  .duoFeature--rev .duoFeature-copy{order:unset}
  .duoHook-copy h2{font-size:clamp(36px,11vw,52px)}
  .duoFeature-copy h2,
  .duoFinale-copy h2{font-size:clamp(28px,8vw,40px)}
  .duoCard{padding:24px 22px}
  .duoStage{max-width:320px}
  .duoDecor-maple-tl{width:72px;height:72px}
  .duoDecor-oak-tr{width:52px;height:80px}
  .duoDecor-wheat-tl{display:none}
  .duoFall-3{display:none}
  .articleContent .duoHook,
  .articleContent .duoFeature,
  .articleContent .duoFeature--rev,
  .articleContent .duoFinale{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .duoFall{animation:none;opacity:.35;top:auto;bottom:10%}
  .duoFall-1{left:10%}
  .duoFall-2{left:42%}
  .duoFall-3{display:none}
  .duoPlay{transition:none}
}
