/* Challenge-only editorial layer. Keep copy, checkout wiring and original logo. */
:root{--ink:#321322;--max:1200px;--paper:url(/sales/media/tx-paper.svg)}
body{background-color:var(--ivory);background-image:var(--paper)}
h1,h2,.step .n,.ex .who{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.045em}
.topbar{border-bottom-color:var(--hair-gold)}
.hero{background:var(--paper),radial-gradient(ellipse at 80% 50%,#eadbcb,transparent 65%);background-color:var(--ivory);padding-top:24px;position:relative}
.hero .frame{padding:0;border:0;background:transparent;box-shadow:0 22px 48px -36px #32132288;overflow:hidden;border-radius:3px}
.hero .hero-head{margin-top:56px;max-width:1060px}
.hero .hero-head h1{font-size:clamp(38px,5.8vw,78px);color:var(--plum-deep);line-height:1.08}
.hero h1 .hl{background:none;color:var(--plum);padding:0;margin:0;line-height:inherit;font-style:italic;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:8px}
.hero .eyebrow{color:var(--plum)}
.hero .stack p,.hero p{color:var(--ink-2)}
.hero .stack b,.hero p b{color:var(--plum-deep)}
.hero .pull{color:var(--plum);font-family:Georgia,serif;font-weight:500}
.hero .reassure{color:#65555b}
.hero .bring-leave{margin-top:0;background:var(--paper),#fffaf1;border-top:4px solid var(--plum);box-shadow:12px 12px 0 #c6a15b24;padding:28px}
.btn{border-radius:0;background:linear-gradient(110deg,#e9cb8d,#c6a15b 48%,#e3c488);border:1px solid #b18a43;box-shadow:0 6px 16px -10px #32132288;letter-spacing:.07em}
.btn:hover{background:#ebcf98;transform:translateY(-2px)}
.paper.shade{box-shadow:none;background-color:#eee4d5;border-block:1px solid var(--hair-gold)}
section{position:relative}
.plum-grain{background-image:repeating-linear-gradient(165deg,transparent 0,transparent 110px,#c6a15b20 111px,transparent 113px),radial-gradient(ellipse at 80% 0,#79374f,transparent 70%),var(--grain);background-color:var(--plum-deep)}
.pain .rows{gap:72px;align-items:center}
.pain h2{font-size:clamp(38px,4.7vw,64px)}
.flag-detail{height:260px;overflow:hidden;border:1px solid var(--gold);margin-bottom:34px;transform:rotate(2deg);box-shadow:14px 14px 0 #c6a15b22}
.flag-detail img{width:100%;height:100%;object-fit:cover;object-position:right top;transform:scale(2.4);transform-origin:100% 0}
.around{counter-reset:feature;margin-top:34px;border:0;gap:1px;background:var(--hair-gold)}
.around>div{background:var(--ivory);border:0;padding:26px;counter-increment:feature}
.around>div:before{content:counter(feature,decimal-leading-zero);display:block;font-family:Georgia,serif;font-size:30px;color:var(--plum);margin-bottom:14px}
.csshot{max-width:1000px;margin-left:auto;margin-right:auto;padding:18px;background:#fffaf0;border:1px solid var(--hair-gold);box-shadow:16px 18px 0 #c6a15b26}
.csshot::before{display:none}
.csshot img{border-color:var(--hair);box-shadow:none}
.steps{margin-top:40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border:0}
.step{display:block;padding:26px;background:var(--ivory);border:1px solid var(--hair-gold);border-top:5px solid var(--plum);position:relative}
.step:nth-child(2){border-top-color:var(--gold)}
.step .n{color:var(--plum);font-size:84px;margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid var(--gold)}
.step .cols{grid-template-columns:1fr;gap:16px;margin-top:22px}
.ex{border:1px solid var(--hair-gold);border-top:4px solid var(--plum);background:var(--paper),var(--ivory)}
.ex:nth-child(2n){background:var(--paper),#eee4d5;border-top-color:var(--gold)}
.ex .who{color:var(--plum);font-size:68px}
.flow4>div{background:var(--paper),#fffaf1;position:relative;padding-top:28px}
.flow4>div b{color:var(--plum)}
.close{overflow:hidden;padding:100px 0}
.close:before{content:"";position:absolute;inset:20px;border:1px solid #c6a15b70;pointer-events:none}
.close .wrap{position:relative}
.close h2{max-width:22ch;margin-inline:auto}
.close .cta-row{justify-content:center}
.close .reassure{margin-inline:auto}
#seat{background:var(--paper),radial-gradient(ellipse at top right,#dec59a70,transparent 60%),var(--ivory)}
.faq details{border-bottom-color:var(--hair-gold)}
@media(min-width:1000px){.hero .frame{margin-inline:-24px}.examples .ex:nth-child(3n + 2){transform:translateY(12px)}.examples{padding-bottom:12px}}
@media(max-width:900px){.steps{grid-template-columns:1fr}.step{display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px}.step .n{font-size:64px;border:0}.pain .rows{gap:40px}.flag-detail{height:220px}}
@media(max-width:600px){.hero .hero-head{margin-top:30px}.hero .hero-head h1{font-size:39px}.hero .frame{margin-inline:-18px;border-radius:0}.hero .bring-leave{box-shadow:6px 6px 0 #c6a15b24}.step{display:block;padding:22px}.step .n{margin-bottom:16px;padding:0}.csshot{padding:8px;box-shadow:7px 8px 0 #c6a15b26}.close:before{inset:9px}.flag-detail{transform:none}.close{padding:72px 0 100px}.eyebrow{letter-spacing:.12em}}

.close.plum-grain{background-image:repeating-linear-gradient(165deg,transparent 0,transparent 110px,#c6a15b30 111px,transparent 113px),url(/sales/media/tx-satin.svg);background-size:auto,cover}

/* Readable light cards inside dark sections; preserve full supporting artwork. */
.dark .step,.dark .step p,.dark .step li,.dark .step .cols{color:var(--ink-2)}
.dark .step h3,.dark .step b,.dark .step strong{color:var(--plum-deep)}
.flag-detail{height:auto;transform:none;background:var(--ivory)}
.flag-detail img{height:auto;object-fit:contain;object-position:center;transform:none}
.plum-grain{background-size:auto,auto,400px 400px;background-repeat:no-repeat,no-repeat,repeat}
.close.plum-grain{background-size:auto,cover;background-repeat:no-repeat}
.bring-leave b{color:var(--plum-deep)}

/* Flag campaign: full artwork followed by the editorial headline. */
.hero .hero-head{max-width:none;padding:30px 0 34px;margin-top:0;border-bottom:1px solid var(--hair-gold)}
.challenge-campaign-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;align-items:center}
.hero .hero-head .challenge-campaign-heading h1{font:600 clamp(58px,8.5vw,112px)/.88 Georgia,serif;letter-spacing:-.065em;color:#21121b;max-width:10ch}
.challenge-campaign-heading h1 em{color:var(--plum);font-weight:500}
.challenge-campaign-heading h1:after{content:"";display:block;width:65%;height:3px;background:var(--plum);transform:rotate(-2deg);margin-top:22px}
.hero .challenge-campaign-heading p{font:clamp(25px,3vw,38px)/1.1 Georgia,serif;color:var(--plum-deep);margin-bottom:22px;max-width:17ch}
.hero .challenge-campaign-intro{font:500 clamp(28px,3.1vw,40px)/1.12 Georgia,serif;color:var(--plum-deep);margin-bottom:24px}
.hero .frame img{width:100%;height:auto;object-fit:contain}
@media(max-width:640px){.challenge-campaign-heading{grid-template-columns:1fr;gap:28px}.hero .hero-head{padding-top:24px}.hero .hero-head .challenge-campaign-heading h1{font-size:72px}.hero .challenge-campaign-heading p{max-width:none;font-size:28px}.challenge-campaign-heading .btn{width:100%}}
