/* Answers for a Broken Heart — Interior Design System v3
   The homepage is the visual source of truth. Interior pages keep their unique
   content/layout purpose while sharing one brand system for shell, typography,
   spacing, surfaces, controls, cards, forms, and responsive behavior. */

:root{
  --ab-pine:#294533;
  --ab-deep:#183024;
  --ab-sage:#738371;
  --ab-cream:#f5f0e7;
  --ab-warm:#fbf8f2;
  --ab-paper:#fffefb;
  --ab-ink:#242a26;
  --ab-muted:#656d67;
  --ab-gold:#ad823d;
  --ab-line:#ded8cd;
  --ab-shadow:0 12px 28px rgba(30,44,35,.08);
  --ab-wide:1160px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0!important;background:var(--ab-paper)!important;color:var(--ab-ink)!important;font-family:Arial,Helvetica,sans-serif!important;line-height:1.65!important}
body a{color:inherit}
body h1,body h2,body h3,body .serif{font-family:Georgia,"Times New Roman",serif!important;font-weight:400!important;letter-spacing:-.025em!important}
body .wrap{width:min(var(--ab-wide),calc(100% - 48px))!important;margin-left:auto!important;margin-right:auto!important}
body .eyebrow{margin:0 0 12px!important;text-transform:uppercase!important;letter-spacing:.18em!important;color:var(--ab-gold)!important;font-size:.67rem!important;font-weight:800!important}

/* Exact homepage shell language */
.siteShellHeader{position:sticky!important;top:0!important;z-index:90!important;background:rgba(255,254,251,.97)!important;border-bottom:1px solid rgba(33,49,40,.08)!important;backdrop-filter:blur(12px)!important;color:#24312b!important;box-shadow:none!important}
.siteShellWrap{width:min(var(--ab-wide),calc(100% - 48px))!important;margin:auto!important}
.siteShellNav{min-height:76px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:28px!important}
.siteShellBrand{display:flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;color:var(--ab-deep)!important;line-height:.84!important}
.siteShellBrandWords{font:1.7rem/.82 Georgia,"Times New Roman",serif!important;letter-spacing:-.04em!important}
.siteShellBrandWords small{display:block!important;font-size:.78rem!important;letter-spacing:-.01em!important}
.siteShellHeart{font:2rem Georgia,"Times New Roman",serif!important;color:var(--ab-gold)!important;transform:rotate(-4deg)!important;margin-top:-4px!important}
.siteShellLinks{display:flex!important;align-items:center!important;gap:27px!important;font-size:.79rem!important;font-weight:400!important}
.siteShellLinks a{position:relative!important;text-decoration:none!important;color:#334139!important;white-space:nowrap!important;padding:29px 0 24px!important}
.siteShellLinks a:hover:after,.siteShellLinks a.active:after,.siteShellLinks a[aria-current="page"]:after{content:""!important;height:2px!important;background:var(--ab-pine)!important;position:absolute!important;left:0!important;right:0!important;bottom:17px!important}
.siteShellMobile{display:none!important;position:relative!important}
.siteShellMobile summary{list-style:none!important;cursor:pointer!important;border:1px solid var(--ab-line)!important;background:#fff!important;padding:8px 12px!important;border-radius:2px!important;font-size:.73rem!important;font-weight:800!important;color:var(--ab-pine)!important}
.siteShellMobile summary::-webkit-details-marker{display:none!important}
.siteShellMobileMenu{position:absolute!important;right:0!important;top:44px!important;width:230px!important;background:#fff!important;border:1px solid var(--ab-line)!important;box-shadow:0 16px 36px rgba(30,44,35,.14)!important;padding:8px!important;border-radius:2px!important}
.siteShellMobileMenu a{display:block!important;text-decoration:none!important;color:#334139!important;padding:10px 11px!important;font-size:.78rem!important;font-weight:700!important;border-bottom:1px solid #eee9df!important}
.siteShellMobileMenu a:last-child{border-bottom:0!important}

.siteShellFooter{background:#244833!important;color:rgba(255,255,255,.88)!important;padding:31px 0 25px!important;font-size:.76rem!important}
.siteShellFooterGrid{display:grid!important;grid-template-columns:240px 1fr!important;gap:48px!important;align-items:start!important}
.siteShellFooterBrand{font:1.5rem/.86 Georgia,"Times New Roman",serif!important;color:#fff!important}
.siteShellFooterBrand small{display:block!important;font-size:.69rem!important;color:rgba(255,255,255,.72)!important}
.siteShellFooterTag{margin-top:12px!important;color:rgba(255,255,255,.68)!important;font-size:.71rem!important;line-height:1.5!important}
.siteShellFooterLinks{display:flex!important;justify-content:flex-end!important;gap:18px 23px!important;flex-wrap:wrap!important}
.siteShellFooterLinks a{text-decoration:none!important;color:rgba(255,255,255,.88)!important;font-size:.72rem!important}
.siteShellCopyright{grid-column:1/-1!important;border-top:1px solid rgba(255,255,255,.13)!important;padding-top:18px!important;color:rgba(255,255,255,.6)!important;font-size:.67rem!important}

/* Interior hero family */
body main>.hero,body .subHero,body .hero:not(.homeHero),body>.hero{background:linear-gradient(120deg,#f7f2e9,#eaf0e8)!important;color:var(--ab-ink)!important;border-bottom:1px solid #ebe5da!important;padding:62px 0 54px!important}
body main>.hero h1,body .subHero h1,body .hero h1{font-size:clamp(3rem,5.2vw,4.9rem)!important;line-height:1.02!important;color:#244432!important;margin-top:0!important;margin-bottom:16px!important;max-width:940px!important}
body main>.hero .lead,body main>.hero .dek,body .subHero .lead,body .hero .lead,body .hero .dek,body .heroLead{font:1.1rem/1.6 Georgia,"Times New Roman",serif!important;color:#525c56!important;max-width:780px!important}
body .breadcrumb{font-size:.73rem!important;color:#6b736f!important;margin-bottom:18px!important}
body .breadcrumb a{color:var(--ab-pine)!important;text-decoration:none!important}
body .meta,body .byline,body .answerByline{color:var(--ab-muted)!important}
body .meta a,body .byline a,body .answerByline a{color:var(--ab-pine)!important;text-decoration:none!important;font-weight:800!important}

/* Consistent section rhythm */
body .section{padding:62px 0!important}
body .resources,body .journals,body .inside,body .library,body .page,body .relatedAnswers,body .next{padding-top:54px!important;padding-bottom:64px!important}
body .section+ .section{border-top-color:var(--ab-line)!important}

/* Homepage button language */
body .btn,body a.btn,body .bookAction,body .journalButton,body button:not(.shareBtn):not(.filter),body input[type="submit"]{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;padding:12px 18px!important;border-radius:2px!important;border:1px solid var(--ab-pine)!important;background:var(--ab-pine)!important;color:#fff!important;font-size:.74rem!important;font-weight:800!important;letter-spacing:.055em!important;text-transform:uppercase!important;box-shadow:none!important;transition:.2s ease!important}
body .btn:hover,body a.btn:hover,body .bookAction:hover,body .journalButton:hover,body button:not(.shareBtn):not(.filter):hover{background:var(--ab-deep)!important;border-color:var(--ab-deep)!important;transform:none!important}
body .btn.outline,body .btn.secondary,body a.btn.outline,body a.btn.secondary,body .bookAction.secondary{background:transparent!important;color:var(--ab-pine)!important;border-color:var(--ab-pine)!important}
body .btn.light,body a.btn.light,body .cta .btn,body .night .btn{background:#fff!important;color:var(--ab-deep)!important;border-color:#fff!important}
body .textLink,body .read,body .cardLink{color:var(--ab-pine)!important;font-weight:800!important}

/* Shared cards and surfaces */
body .card,body .choice,body .qcard,body .answerCard,body .relatedCard,body .truth,body .guideCard,body .resourceCard,body .formCard,body .journeyCard,body .salesCard,body .item,body .journalCard,body .sideCard,body .bookForYou,body .bookForYouGrid div,body .next a{background:#fff!important;border:1px solid var(--ab-line)!important;border-radius:2px!important;box-shadow:none!important}
body .card:hover,body .choice:hover,body .qcard:hover,body .answerCard:hover,body .relatedCard:hover,body .guideCard:hover,body .resourceCard:hover,body .journeyCard:hover,body .salesCard:hover,body .item:hover{transform:translateY(-2px)!important;box-shadow:var(--ab-shadow)!important;border-color:#cfc6b7!important}
body .card h2,body .card h3,body .choice h3,body .choice strong,body .qcard h3,body .answerCard h3,body .relatedCard strong,body .truth strong,body .guideCard h3,body .resourceCard h3,body .salesCard h3,body .item h3,body .sideCard h3{color:#25382d!important}
body .card p,body .choice p,body .choice span,body .qcard p,body .answerCard p,body .relatedCard span,body .truth p,body .guideCard p,body .resourceCard p,body .salesCard p,body .item p,body .sideCard p{color:var(--ab-muted)!important}
body .card small,body .choice small,body .qnum,body .num,body .count,body .answerCard small,body .relatedCard small,body .guideCard small,body .item small,body .cardTag{color:var(--ab-gold)!important}
body .salesCard strong{color:var(--ab-gold)!important}

/* Neutral and dark bands */
body .library,body .tools,body .next,body .relatedAnswers,body .truthSection,body .book,body .resourceBand,body .journals,body .approach{background:#faf8f3!important}
body .cta,body .bookCta,body .answerJourney,body .night,body .signup,body .quickGrid,body .anchor,body .tonight{background:var(--ab-deep)!important;color:#fff!important}
body .cta h2,body .bookCta h2,body .answerJourney h2,body .night h2,body .signup h2,body .quickGrid h2,body .anchor h2,body .tonight h2{color:#fff!important}
body .cta p,body .bookCta p,body .answerJourney p,body .night p,body .signup p,body .quickGrid p,body .anchor p,body .tonight p{color:rgba(255,255,255,.82)!important}
body .series,body .direct{background:var(--ab-cream)!important;border-color:var(--ab-line)!important}

/* Answer/article pages */
body .layout,body .articleWrap{gap:62px!important}
body .article{font-size:1rem!important;color:var(--ab-ink)!important}
body .article h2{color:var(--ab-deep)!important}
body .short,body .shortAnswer{background:var(--ab-deep)!important;color:#fff!important;border-radius:2px!important}
body .short h2,body .shortAnswer h2{color:#fff!important}
body .scripture{background:var(--ab-cream)!important;border:1px solid var(--ab-line)!important;border-radius:2px!important}
body .scripture b{color:var(--ab-gold)!important}
body .scripture blockquote{color:var(--ab-deep)!important}
body .keyline{color:var(--ab-deep)!important;border-left-color:var(--ab-gold)!important}
body .pastoral{background:#eef2ed!important;border-top:3px solid var(--ab-sage)!important;border-radius:0!important}
body .pastoral h3{color:var(--ab-deep)!important}
body .minuteHelp{background:#fff!important;border:1px solid var(--ab-line)!important;border-top:4px solid var(--ab-gold)!important;border-radius:0!important;box-shadow:none!important}
body .minuteHelpHead h2{color:var(--ab-deep)!important}
body .minuteHelpHead span,body .minuteItem strong{color:var(--ab-gold)!important}
body .minuteItem{background:var(--ab-cream)!important;border-radius:0!important}
body .minuteScripture{color:var(--ab-deep)!important}
body .answerSafety{background:#f8f5ef!important;border:1px solid #e3ddd2!important;color:#5d665f!important;border-radius:0!important}
body .answerSafety a{color:var(--ab-pine)!important}
body .answerJourney{border-color:var(--ab-deep)!important;border-radius:0!important}
body .answerJourney .journeyEyebrow{color:#d8bd87!important}
body .journeyCard{color:var(--ab-ink)!important}
body .journeyCard.listen,body .guideCapture{background:var(--ab-cream)!important}
body .journeyCard.bookPath{background:#eef2ed!important}
body .shareBtn{border:1px solid rgba(255,255,255,.4)!important;background:transparent!important;color:#fff!important;border-radius:2px!important}
body .shareBtn:hover{background:#fff!important;color:var(--ab-deep)!important}

/* Libraries, filters, and search */
body .tools{border-top:1px solid #ebe5da!important;border-bottom:1px solid var(--ab-line)!important}
body .search,body .searchBox,body input[type="search"],body input[type="text"],body input[type="email"],body textarea,body select{background:#fff!important;border:1px solid var(--ab-line)!important;border-radius:2px!important;color:var(--ab-ink)!important;box-shadow:none!important}
body .filter{background:#fff!important;border:1px solid var(--ab-line)!important;color:var(--ab-pine)!important;border-radius:999px!important}
body .filter.active{background:var(--ab-pine)!important;color:#fff!important;border-color:var(--ab-pine)!important}

/* Book page */
body .bookBand{border:1px solid var(--ab-line)!important;background:#fff!important;border-radius:0!important;box-shadow:none!important}
body .bookStage{background:linear-gradient(140deg,#eee8de,#fbf8f2)!important}
body .heroBook{background:#fbf9f3!important;border-color:#dad4c8!important}
body .coverTitle{color:#2b5540!important}
body .coverHeart{color:var(--ab-gold)!important}
body .coverAuthor{color:#264b39!important}
body .bookBandCopy{background:var(--ab-cream)!important;border-left:1px solid var(--ab-line)!important}
body .bookBandCopy h2{color:var(--ab-deep)!important}
body .bookBandCopy p{color:#3e4741!important}
body .bookUpdates{background:var(--ab-deep)!important;color:#fff!important;border:1px solid var(--ab-deep)!important;border-radius:2px!important;box-shadow:none!important}
body .bookUpdates h2{color:#fff!important}
body .bookUpdates p{color:rgba(255,255,255,.84)!important}
body .bookUpdatesPrivacy{color:rgba(255,255,255,.72)!important}
body .bookUpdatesForm input{background:#fff!important;border:1px solid rgba(255,255,255,.55)!important;border-radius:2px!important}
body .bookForYou{background:var(--ab-cream)!important;border:1px solid var(--ab-line)!important}
body .bookForYou h2{color:var(--ab-deep)!important}

/* About page */
body .portrait{border-radius:2px!important;border:8px solid rgba(255,255,255,.78)!important;box-shadow:0 8px 24px rgba(33,47,38,.12)!important}
body .sideCard{background:var(--ab-cream)!important}
body .approach{border-top:1px solid var(--ab-line)!important;border-bottom:1px solid var(--ab-line)!important}

/* Free resources / journals */
body .journalWomen .journalCover{background:linear-gradient(155deg,#fff8fa,#f3dce4)!important;color:#5d464b!important}
body .journalMen .journalCover{background:var(--ab-deep)!important;color:#fff!important}
body .journalBody h3{color:var(--ab-deep)!important}
body .journalBody p,body .journalFeatures{color:var(--ab-muted)!important}
body .noGate strong{color:var(--ab-pine)!important}

/* Forms */
body form label{color:#344239!important;font-weight:700!important}
body form input,body form textarea,body form select{padding:12px 13px!important;min-height:44px!important}
body form textarea{min-height:140px!important}
body .privacy,body .note{color:var(--ab-muted)!important}
body .signup .privacy,body .cta .privacy,body .bookUpdatesPrivacy{color:rgba(255,255,255,.72)!important}

/* Utility pages */
body .hero404{background:linear-gradient(120deg,#f7f2e9,#eaf0e8)!important;padding:82px 0 92px!important}
body .hero404 h1{color:#244432!important}
body .hero404 p{color:#525c56!important}
body .success,body .notice,body .message{border-color:var(--ab-line)!important;background:var(--ab-cream)!important;color:var(--ab-ink)!important}

@media(max-width:900px){
  .siteShellLinks{gap:14px!important;font-size:.7rem!important}
}

@media(max-width:820px){
  body .wrap{width:min(100% - 32px,var(--ab-wide))!important}
  body main>.hero,body .subHero,body .hero:not(.homeHero),body>.hero{padding:52px 0 46px!important}
  body main>.hero h1,body .subHero h1,body .hero h1{font-size:clamp(2.8rem,10vw,3.7rem)!important}
  body .bookBandCopy{border-left:0!important;border-top:1px solid var(--ab-line)!important}
  body .layout,body .articleWrap{gap:34px!important}
}

@media(max-width:760px){
  .siteShellLinks{display:none!important}
  .siteShellMobile{display:block!important}
  .siteShellFooterGrid{grid-template-columns:1fr!important;gap:22px!important}
  .siteShellFooterLinks{justify-content:flex-start!important}
  .siteShellCopyright{grid-column:1!important}
  .siteShellWrap{width:min(100% - 30px,var(--ab-wide))!important}
}

@media(max-width:520px){
  body .card,body .choice,body .qcard,body .answerCard,body .relatedCard,body .guideCard,body .resourceCard,body .salesCard,body .item{padding-left:20px!important;padding-right:20px!important}
  body .hero404{padding:62px 0 72px!important}
}
