/* Deliberate Conduct: site layer on top of the Keel theme. Header, footer, home, guides, article furniture. */
:root{ --dcs-ochre:#B2884A; --dcs-ochre-ink:#7A5A28; --dcs-night:#1F2328; --dcs-paper:#FEFBF4; --dcs-ui:var(--wp--preset--font-family--public-sans); --dcs-display:var(--wp--preset--font-family--young-serif); }
@media (prefers-color-scheme: dark){ html:not([data-theme="light"]){ --dcs-ochre-ink:#D7B47C; } }
.dcs-wrap{ max-width:72rem; margin:0 auto; padding:0 var(--wp--preset--spacing--40); }
.dcs-kicker{ font-family:var(--dcs-ui); font-size:.72rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dcs-ochre-ink); margin:0 0 .7rem; }
.dcs-h2{ font-family:var(--dcs-display); font-weight:400; font-size:var(--wp--preset--font-size--xx-large); line-height:1.15; margin:0 0 .6rem; }
.dcs-h2 a{ color:inherit; text-decoration:none; }
.dcs-h2 a:hover{ text-decoration:underline; text-decoration-color:var(--dcs-ochre); text-decoration-thickness:2px; text-underline-offset:.15em; }
.dcs-lede{ color:var(--dc-ink-soft); font-size:var(--wp--preset--font-size--medium); line-height:1.5; max-width:42rem; margin:0; }
.dcs-btn{ display:inline-flex; align-items:center; min-height:46px; padding:0 1.2rem; background:var(--dc-ink); color:var(--dc-surface) !important; font-family:var(--dcs-ui); font-weight:600; font-size:.95rem; text-decoration:none !important; border:1.5px solid var(--dc-ink); border-radius:2px; }
.dcs-btn:hover{ background:var(--dcs-ochre-ink); border-color:var(--dcs-ochre-ink); }
.dcs-btn-ghost{ background:transparent; color:var(--dc-ink) !important; }
.dcs-btn-ghost:hover{ background:transparent; color:var(--dcs-ochre-ink) !important; }
.dcs-btn-sm{ min-height:38px; padding:0 .9rem; font-size:.85rem; }
.dcs-actions{ display:flex; flex-wrap:wrap; gap:.7rem; margin:1.6rem 0 0; }

/* Header: the theme's own header part is replaced by the installer. */
header.wp-block-template-part{ margin:0; }
.dcs-header{ border-bottom:1px solid var(--dc-line); background:var(--dc-surface); }
.dcs-header-in{ display:flex; align-items:center; justify-content:space-between; gap:1.5rem; min-height:76px; }
.dcs-brand{ display:inline-flex; line-height:0; }
.dcs-logo{ height:43px; width:auto; }
.dcs-logo-dark{ display:none; }
.dcs-nav{ display:flex; align-items:center; gap:1.6rem; font-family:var(--dcs-ui); font-size:.92rem; }
.dcs-nav a:not(.dcs-btn){ color:var(--dc-ink); text-decoration:none; padding:.4rem 0; border-bottom:2px solid transparent; }
.dcs-nav a:not(.dcs-btn):hover{ border-bottom-color:var(--dcs-ochre); }
.dcs-mnav{ display:none; position:relative; }
.dcs-mnav summary{ list-style:none; cursor:pointer; width:44px; height:44px; display:grid; place-content:center; gap:5px; }
.dcs-mnav summary::-webkit-details-marker{ display:none; }
.dcs-mnav summary span{ display:block; width:22px; height:2px; background:var(--dc-ink); }
.dcs-mnav nav{ position:absolute; right:0; top:52px; z-index:20; min-width:15rem; display:flex; flex-direction:column; padding:.6rem 0; background:var(--dc-surface); border:1px solid var(--dc-line); box-shadow:0 10px 30px rgba(0,0,0,.08); font-family:var(--dcs-ui); }
.dcs-mnav nav a{ padding:.75rem 1.2rem; color:var(--dc-ink); text-decoration:none; }
@media (max-width:860px){ .dcs-nav{ display:none; } .dcs-mnav{ display:block; } .dcs-logo{ height:36px; } }

/* Footer */
footer.wp-block-template-part{ margin-top:var(--wp--preset--spacing--70); }
.dcs-footer{ background:var(--dcs-night); color:#D9D5CB; padding:var(--wp--preset--spacing--60) 0 var(--wp--preset--spacing--40); font-family:var(--dcs-ui); font-size:.9rem; border-top:4px solid var(--dcs-ochre); }
.dcs-foot-grid{ display:grid; gap:2rem; grid-template-columns:1.4fr 1fr 1fr 1fr; }
@media (max-width:900px){ .dcs-foot-grid{ grid-template-columns:1fr 1fr; } .dcs-foot-brand{ grid-column:1/-1; } }
@media (max-width:520px){ .dcs-foot-grid{ grid-template-columns:1fr; } }
.dcs-foot-logo{ height:53px; width:auto; margin-bottom:.8rem; }
.dcs-footer p{ margin:.3rem 0; max-width:22rem; line-height:1.55; }
.dcs-footer h4{ font-family:var(--dcs-ui); font-size:.72rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dcs-ochre); margin:0 0 .8rem; }
.dcs-footer a{ display:block; color:#F2EEE4; text-decoration:none; padding:.28rem 0; }
.dcs-footer a:hover{ color:#fff; text-decoration:underline; text-decoration-color:var(--dcs-ochre); }
.dcs-footer .dcs-mail{ display:inline; }
.dcs-copy{ margin-top:2.2rem !important; padding-top:1.2rem; border-top:1px solid rgba(255,255,255,.12); max-width:none !important; color:#A9A59C; font-size:.8rem; }

/* Home */
.dcs-hero{ padding:var(--wp--preset--spacing--70) 0 var(--wp--preset--spacing--60); border-bottom:1px solid var(--dc-line); }
.dcs-hero-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center; }
.dcs-hero-grid:not(:has(.dcs-hero-fig)){ grid-template-columns:1fr; }
@media (max-width:900px){ .dcs-hero-grid{ grid-template-columns:1fr; gap:2rem; } }
.dcs-hero h1{ font-family:var(--dcs-display); font-weight:400; font-size:clamp(2.3rem, 5.2vw, 3.7rem); line-height:1.07; letter-spacing:-.01em; margin:0 0 1.2rem; max-width:16ch; }
.dcs-deck{ font-size:var(--wp--preset--font-size--medium); line-height:1.55; color:var(--dc-ink-soft); max-width:36rem; margin:0; }
.dcs-hero-fig{ margin:0; }
.dcs-hero-fig img{ display:block; width:100%; height:auto; border:1px solid var(--dc-line); }
.dcs-section{ padding:var(--wp--preset--spacing--70) 0; }
.dcs-band{ background:var(--dc-surface-2); border-block:1px solid var(--dc-line); }
.dcs-three{ border-bottom:1px solid var(--dc-line); }
.dcs-habits{ list-style:none; counter-reset:h; padding:0; margin:2rem 0 0; display:grid; grid-template-columns:repeat(3, 1fr); gap:2rem; }
@media (max-width:860px){ .dcs-habits{ grid-template-columns:1fr; gap:1.4rem; } }
.dcs-habits li{ counter-increment:h; border-top:2px solid var(--dc-ink); padding-top:1rem; }
.dcs-habits li::before{ content:counter(h, upper-roman); display:block; font-family:var(--dcs-display); font-size:1.6rem; color:var(--dcs-ochre-ink); margin-bottom:.4rem; }
.dcs-habits strong{ display:block; font-family:var(--dcs-display); font-weight:400; font-size:var(--wp--preset--font-size--large); line-height:1.2; margin-bottom:.5rem; }
.dcs-habits span{ color:var(--dc-ink-soft); line-height:1.6; }
.dcs-habits a{ display:block; margin-top:.6rem; font-family:var(--dcs-ui); font-weight:600; font-size:.9rem; color:var(--dc-ink); }
.dcs-sec-head{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-end; gap:1rem 2rem; margin-bottom:2.2rem; }
.dcs-sec-link{ margin:0; font-family:var(--dcs-ui); font-weight:600; }
.dcs-sec-link a{ color:var(--dc-ink); }
.dcs-topics{ display:grid; grid-template-columns:repeat(auto-fill, minmax(min(19rem, 100%), 1fr)); gap:0 2.4rem; }
.dcs-topic{ padding:1.4rem 0 1.6rem; border-top:1px solid var(--dc-ink); }
.dcs-num{ font-family:var(--dcs-ui); font-size:.78rem; font-weight:700; letter-spacing:.1em; color:var(--dcs-ochre-ink); margin:0 0 .3rem; }
.dcs-topic h3{ font-family:var(--dcs-display); font-weight:400; font-size:var(--wp--preset--font-size--large); line-height:1.2; margin:0 0 .5rem; }
.dcs-topic h3 a{ color:var(--dc-ink); text-decoration:none; }
.dcs-topic h3 a:hover{ text-decoration:underline; text-decoration-color:var(--dcs-ochre); }
.dcs-topic-ex{ color:var(--dc-ink-soft); font-size:.95rem; line-height:1.55; margin:0 0 .8rem; }
.dcs-arts{ list-style:none; padding:0; margin:0; }
.dcs-arts li{ border-top:1px dotted var(--dc-line); }
.dcs-arts a{ display:block; padding:.55rem 0 .55rem 1.1rem; position:relative; color:var(--dc-ink); text-decoration:none; font-family:var(--dcs-ui); font-size:.92rem; line-height:1.4; }
.dcs-arts a::before{ content:""; position:absolute; left:0; top:1.05em; width:6px; height:6px; border-radius:50%; background:var(--dcs-ochre); }
.dcs-arts a:hover{ text-decoration:underline; }
.dcs-more{ margin:.7rem 0 0; font-family:var(--dcs-ui); font-size:.85rem; font-weight:600; }
.dcs-more a{ color:var(--dcs-ochre-ink); }
.dcs-guide-topics{ margin-top:var(--wp--preset--spacing--60); }

/* Newsletter box (home, guides, topics) and the theme's newsletter part on articles. */
.keel-newsletter{ background:var(--dcs-night) !important; color:#F2EEE4; border-radius:2px !important; border-left:6px solid var(--dcs-ochre); }
.keel-newsletter h2{ color:#fff; font-family:var(--dcs-display); font-weight:400; }
.keel-newsletter .keel-soft, .keel-newsletter p{ color:#D9D5CB !important; }
.keel-newsletter .keel-label{ color:var(--dcs-ochre) !important; }
.keel-newsletter .wp-block-button__link{ background:var(--dcs-ochre) !important; color:var(--dcs-night) !important; border-radius:2px; }
.keel-newsletter .wp-block-button__link:hover{ background:#fff !important; }
.dcs-newsletter{ max-width:72rem; margin:var(--wp--preset--spacing--70) auto 0 !important; padding:var(--wp--preset--spacing--60) var(--wp--preset--spacing--50); }
.dcs-newsletter-home{ margin-left:var(--wp--preset--spacing--40) !important; margin-right:var(--wp--preset--spacing--40) !important; }
@media (min-width:76rem){ .dcs-newsletter-home{ margin-left:auto !important; margin-right:auto !important; } }

/* Article furniture */
.dcs-answer{ border-left:4px solid var(--dcs-ochre); padding:.2rem 0 .2rem 1.2rem; margin-block:0 var(--wp--preset--spacing--40); }
.dcs-answer p{ font-size:1.08em; line-height:1.65; }
.dcs-answer .dcs-answer-label{ font-family:var(--dcs-ui); font-size:.72rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dcs-ochre-ink); margin:0 0 .4rem; }
.keel-body.keel-dropcap > p:first-of-type::first-letter{ float:none; font-size:inherit; margin:0; color:inherit; font-family:inherit; line-height:inherit; }
.keel-part-of .keel-label{ margin:0; }
.keel-part-of a{ font-family:var(--dcs-display); font-size:var(--wp--preset--font-size--medium); line-height:1.3; text-decoration:none; color:var(--dc-ink); }
.keel-part-of a:hover{ text-decoration:underline; text-decoration-color:var(--dcs-ochre); }
.keel-pillar-index h2{ margin-bottom:.6rem; }
.dc-takeaways{ background:var(--dc-surface-2) !important; border:1px solid var(--dc-line); border-radius:2px !important; }
.dc-takeaways > p:first-child{ font-family:var(--dcs-ui); font-size:.72rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dcs-ochre-ink) !important; margin-top:0; }
.dc-takeaways ul{ margin-bottom:0; padding-left:1.1rem; }
.dc-takeaways li{ margin:.35rem 0; }
.dc-faq{ margin-top:var(--wp--preset--spacing--60); }
.dc-sources{ margin-top:var(--wp--preset--spacing--50); padding-top:var(--wp--preset--spacing--30); border-top:1px solid var(--dc-line); font-size:.88rem; color:var(--dc-ink-soft); }
.dc-sources h3{ font-family:var(--dcs-ui); font-size:.72rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--dc-ink-soft); }
.dc-sources a{ word-break:break-word; color:var(--dc-ink-soft); }
.wp-block-quote{ border-left:3px solid var(--dcs-ochre); padding-left:1.2rem; margin-left:0; font-family:var(--dcs-display); font-size:1.12em; line-height:1.5; }
.wp-block-quote cite{ font-family:var(--dcs-ui); font-size:.85rem; color:var(--dc-ink-soft); margin-top:.4rem; }
.wp-block-table table{ border-collapse:collapse; width:100%; font-size:.95rem; }
.wp-block-table th, .wp-block-table td{ border:0; border-bottom:1px solid var(--dc-line); padding:.6rem .5rem; text-align:left; vertical-align:top; }
.wp-block-table th{ font-family:var(--dcs-ui); font-size:.8rem; letter-spacing:.06em; text-transform:uppercase; border-bottom:2px solid var(--dc-ink); }
.keel-pill{ border-radius:2px !important; background:transparent !important; padding:0 !important; color:var(--dcs-ochre-ink) !important; letter-spacing:.14em !important; }
.wp-block-post-featured-image img{ border:1px solid var(--dc-line); }
.keel-body a, .wp-block-post-content a{ color:var(--dc-ink); text-decoration-color:var(--dcs-ochre); text-decoration-thickness:1.5px; text-underline-offset:.18em; }
.keel-body a:hover, .wp-block-post-content a:hover{ color:var(--dcs-ochre-ink); }
.keel-author-card .wp-block-avatar{ display:none; }
.dc-breadcrumbs{ font-family:var(--dcs-ui); font-size:.82rem; color:var(--dc-ink-soft); margin-top:var(--wp--preset--spacing--40); gap:.4rem; }
.dc-breadcrumbs p, .dc-breadcrumbs .wp-block-post-title{ margin:0; font-size:inherit; font-family:inherit; }
.dc-breadcrumbs a{ color:var(--dc-ink-soft); }
.dc-guide-head .keel-label, .keel-pillar-head .keel-label{ color:var(--dcs-ochre-ink); }

/* Site map */
.dcs-map{ margin-bottom:var(--wp--preset--spacing--60); }
.dcs-map h2 a, .dcs-map h3 a{ color:var(--dc-ink); text-decoration:none; }
.dcs-map h3{ font-size:var(--wp--preset--font-size--medium); margin-top:1.6rem; }
.dcs-map ul{ padding-left:1.1rem; }
.dcs-map li{ margin:.3rem 0; }

/* Dark mode: swap the logo. */
@media (prefers-color-scheme: dark){
  html:not([data-theme="light"]) .dcs-logo-light{ display:none; }
  html:not([data-theme="light"]) .dcs-logo-dark{ display:inline; }
  html:not([data-theme="light"]) .dcs-footer{ background:#16191D; }
  html:not([data-theme="light"]) .keel-newsletter{ background:#16191D !important; }
}
html[data-theme="dark"] .dcs-logo-light{ display:none; }
html[data-theme="dark"] .dcs-logo-dark{ display:inline; }
@media print{ .dcs-header nav, .dcs-mnav, .dcs-footer, .keel-newsletter{ display:none !important; } }
