@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400..800&family=Manrope:wght@400..800&display=swap');
    
:root {
    --ink:#202326;
    --muted:#73777b;
    --line:#e8e9e7;
    --accent:#d25c39
}
* {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth
}
body {
    margin:0;
    color:var(--ink);
    background:#fff;
    font-family:'DM Sans',Arial,sans-serif;
    -webkit-font-smoothing:antialiased
}
a {
    text-decoration:none;
    color:inherit
}
button,input {
    font:inherit
}
button {
    cursor:pointer
}
.wrap {
    width:min(1160px,calc(100% - 48px));
    margin:auto
}
.topline {
    background:#24282b;
    color:#d4d6d5;
    font-size:10px;
    letter-spacing:1.35px;
    font-weight:700
}
.topline-inner {
    height:32px;
    display:flex;
    align-items:center;
    justify-content:space-between
}
.site-header {
    background:white;
    border-bottom:1px solid var(--line);
    position:sticky;
    top:0;
    z-index:20
}
.header-inner {
    height:76px;
    display:flex;
    align-items:center;
    gap:54px
}
.logo {
    font-family:Manrope,sans-serif;
    font-size:34px;
    letter-spacing:-2.6px;
    font-weight:800;
    line-height:1
}
.logo-period,.accent-dot {
    color:var(--accent)
}
.nav {
    display:flex;
    gap:30px;
    align-items:center;
    flex:1
}
.nav a {
    font-size:13px;
    font-weight:700;
    color:#5c6163;
    white-space:nowrap
}
.nav a:hover,.nav a.active {
    color:var(--accent)
}
.header-right {
    display:flex;
    gap:12px
}
.search-trigger,.menu-trigger {
    background:none;
    border:0;
    padding:8px;
    color:#333
}
.menu-trigger {
    display:none;
    font-size:21px
}
.searchbar {
    height:0;
    overflow:hidden;
    transition:height .2s
}
.searchbar.open {
    height:68px
}
.searchbar input {
    width:100%;
    padding:13px 16px;
    border:1px solid var(--line);
    outline:none;
    border-radius:5px
}
.kicker {
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--accent);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.6px
}
.kicker-dot {
    width:7px;
    height:7px;
    background:var(--accent);
    border-radius:50%
}
.page-intro {
    padding:51px 0 39px;
    display:flex;
    justify-content:space-between;
    align-items:end
}
.page-intro h1 {
    font:800 clamp(30px,4vw,46px)/1.18 Manrope,sans-serif;
    letter-spacing:-2.2px;
    margin:12px 0
}
.page-intro h1 em {
    font-style:normal;
    color:var(--accent)
}
.page-intro p {
    font-size:15px;
    color:var(--muted);
    margin:0
}
.intro-link {
    font-size:12px;
    font-weight:800;
    padding-bottom:7px;
    border-bottom:1px solid var(--ink)
}
.intro-link span {
    margin-left:16px
}
.feature-grid {
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
    gap:32px;
    padding-bottom:43px
}
.feature-main {
    display:block
}
.art {
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    isolation:isolate
}
.feature-main>.art {
    height:298px;
    border-radius:5px
}
.art-windows {
    background:linear-gradient(130deg,#c4d8e4,#eaf0f4 58%,#9ab6c8)
}
.art-window {
    width:51%;
    height:65%;
    border-radius:11px;
    background:rgba(255,255,255,.88);
    box-shadow:0 20px 45px #56748b3b;
    transform:rotate(-8deg);
    padding:18px 20px;
    display:flex;
    flex-direction:column;
    gap:12px
}
.win-dots {
    display:flex;
    gap:5px
}
.win-dots i {
    width:7px;
    height:7px;
    background:#9ab3c4;
    border-radius:50%
}
.win-line {
    width:80%;
    height:10px;
    border-radius:10px;
    background:#d7e3eb;
    margin-top:10px
}
.win-line.short {
    width:55%;
    margin-top:0
}
.win-tile-row {
    display:flex;
    gap:9px;
    margin-top:auto
}
.win-tile-row b {
    width:33%;
    height:40px;
    border-radius:5px;
    background:#aac5d6
}
.win-tile-row b:nth-child(2) {
    background:#d6e5ed
}
.art-label {
    position:absolute;
    bottom:18px;
    left:20px;
    font-size:10px;
    font-weight:800;
    letter-spacing:1.4px;
    color:#40586b
}
.feature-text {
    padding:21px 0 0
}
.eyebrow {
    font-size:10px;
    font-weight:800;
    letter-spacing:1.2px;
    color:var(--accent)
}
.eyebrow span {
    padding:0 4px;
    color:#9a9a9a
}
.feature-text h2 {
    font:800 27px/1.26 Manrope,sans-serif;
    letter-spacing:-.9px;
    margin:11px 0 9px;
    max-width:530px
}
.feature-text p {
    font-size:14px;
    line-height:1.7;
    color:var(--muted);
    margin:0 0 13px
}
.story-link,.small-link {
    font-size:12px;
    font-weight:800
}
.story-link span {
    margin-left:9px
}
.feature-side {
    display:flex;
    flex-direction:column;
    gap:22px
}
.side-story {
    display:grid;
    grid-template-columns:43% 1fr;
    gap:18px;
    align-items:center;
    border-bottom:1px solid var(--line);
    padding-bottom:22px
}
.side-story:last-child {
    border-bottom:0
}
.side-story .art {
    height:177px;
    border-radius:5px
}
.side-story h3 {
    font:800 17px/1.38 Manrope,sans-serif;
    letter-spacing:-.4px;
    margin:11px 0 14px
}
.small-link {
    color:#62686a
}
.art-phone {
    background:#e7e7df
}
.phone-shape {
    height:142px;
    width:75px;
    border-radius:17px;
    border:6px solid #242c2c;
    background:#f9f9f5;
    transform:rotate(13deg);
    box-shadow:14px 15px 20px #0002;
    padding:10px
}
.phone-pill {
    height:7px;
    width:28px;
    border-radius:8px;
    background:#252525;
    margin:auto
}
.phone-circle {
    height:39px;
    width:39px;
    border-radius:50%;
    background:#d4d7c8;
    margin:15px auto
}
.phone-lines {
    height:6px;
    width:35px;
    background:#d4d7c8;
    border-radius:5px;
    margin:auto
}
.art-purple {
    background:#d9d2eb
}
.art-orb {
    width:128px;
    height:128px;
    border-radius:50%;
    background:#9c8abb;
    box-shadow:12px 12px 30px #56477850
}
.art-orb.orb-small {
    position:absolute;
    width:55px;
    height:55px;
    right:15px;
    top:10px;
    background:#f1ecfa
}
.art-glyph {
    position:absolute;
    color:white;
    font-size:73px
}
.topic-strip {
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    padding:25px 0;
    display:flex;
    align-items:center;
    gap:32px
}
.strip-label {
    font-size:10px;
    letter-spacing:1.1px;
    font-weight:800;
    white-space:nowrap
}
.topic-list {
    display:flex;
    flex-wrap:wrap;
    gap:10px
}
.topic-list a {
    border:1px solid #e6e7e5;
    border-radius:30px;
    padding:9px 13px;
    font-size:11px;
    font-weight:700
}
.topic-list a:hover {
    border-color:var(--accent);
    color:var(--accent)
}
.topic-list span {
    margin-left:9px;
    color:#92999a
}
.latest {
    padding:56px 0 55px
}
.section-heading {
    display:flex;
    align-items:end;
    justify-content:space-between;
    margin-bottom:25px
}
.section-heading h2 {
    font:800 31px/1.2 Manrope,sans-serif;
    letter-spacing:-1.2px;
    margin:8px 0 0
}
.section-heading>a {
    font-size:12px;
    font-weight:800;
    border-bottom:1px solid;
    padding-bottom:5px
}
.story-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:35px 25px
}
.story-card .art {
    height:177px;
    border-radius:4px
}
.card-body {
    padding:17px 0
}
.card-body h3 {
    font:800 17px/1.4 Manrope,sans-serif;
    letter-spacing:-.4px;
    margin:9px 0
}
.card-body p {
    font-size:13px;
    color:var(--muted);
    line-height:1.65;
    margin:0
}
.story-card:hover h3,.feature-main:hover h2,.side-story:hover h3 {
    color:var(--accent)
}
.art-teal {
    background:#d6e7e4
}
.teal-card {
    background:#fff;
    width:124px;
    height:112px;
    box-shadow:10px 12px 0 #8fbab5;
    border-radius:9px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    color:#42746f;
    font-size:11px;
    font-weight:700;
    transform:rotate(-8deg)
}
.teal-card strong {
    font-size:31px
}
.art-peach {
    background:#f2e0d5
}
.peach-folder {
    width:138px;
    height:95px;
    background:#d89978;
    border-radius:10px;
    transform:rotate(10deg);
    box-shadow:13px 15px 0 #e9c1a8;
    display:grid;
    place-items:center
}
.peach-folder span {
    font-size:51px;
    color:#fff1e9
}
.art-dark {
    background:#292f37
}
.dark-chip {
    background:#4d5560;
    color:white;
    border:1px solid #7b838c;
    border-radius:13px;
    padding:23px 25px;
    font-size:30px;
    font-weight:700;
    box-shadow:10px 12px 0 #191d23
}
.dark-chip span {
    font-size:15px;
    padding:0 9px
}
.art-blue {
    background:#d9e4f3
}
.blue-shield {
    width:102px;
    height:117px;
    background:#7d9bc7;
    clip-path:polygon(50% 0,100% 16%,93% 69%,50% 100%,7% 69%,0 16%);
    display:grid;
    place-items:center;
    color:white;
    font-size:53px
}
.art-yellow {
    background:#f3ebd0
}
.yellow-battery {
    height:84px;
    width:135px;
    border:9px solid #c7ac54;
    border-radius:12px;
    display:flex;
    align-items:center;
    padding:7px
}
.yellow-battery:after {
    content:'';
    position:absolute;
    right:calc(50% - 84px);
    height:29px;
    width:9px;
    border-radius:0 5px 5px 0;
    background:#c7ac54
}
.yellow-battery span {
    height:100%;
    width:68%;
    background:#c7ac54;
    border-radius:2px
}
.art-lilac {
    background:#e6e1f0
}
.lilac-sun {
    font-size:122px;
    color:#b0a1ce
}
.bottom-note {
    display:flex;
    align-items:center;
    gap:20px;
    border-top:1px solid var(--line);
    padding:26px 0 50px
}
.bottom-note>span {
    font-size:31px;
    color:var(--accent)
}
.bottom-note strong {
    font:800 16px Manrope
}
.bottom-note p {
    font-size:12px;
    color:var(--muted);
    margin:5px 0 0
}
.bottom-note a {
    margin-left:auto;
    font-size:12px;
    font-weight:800;
    white-space:nowrap
}
.footer {
    background:#f6f6f4;
    border-top:1px solid #e6e6e2
}
.footer-main {
    padding:48px 0;
    display:flex;
    justify-content:space-between;
    gap:35px
}
.footer-logo {
    font-size:31px
}
.footer-main p {
    font-size:13px;
    color:var(--muted);
    max-width:220px;
    line-height:1.7
}
.footer-links {
    display:flex;
    gap:95px
}
.footer-links>div {
    display:flex;
    flex-direction:column;
    gap:13px
}
.footer-links strong {
    font-size:12px;
    margin-bottom:4px
}
.footer-links a {
    font-size:12px;
    color:#727779
}
.footer-links a:hover {
    color:var(--accent)
}
.footer-bottom {
    border-top:1px solid #e5e5e1;
    padding:19px 0;
    display:flex;
    justify-content:space-between;
    font-size:11px;
    color:#8a8d8d
}
.article-page {
    padding-bottom:50px
}
.breadcrumbs {
    display:flex;
    gap:11px;
    align-items:center;
    padding:27px 0 32px;
    font-size:11px;
    color:#85898a
}
.breadcrumbs a:hover {
    color:var(--accent)
}
.article-head {
    max-width:800px;
    margin:0 auto 27px
}
.article-head h1 {
    font:800 clamp(31px,4.5vw,48px)/1.2 Manrope,sans-serif;
    letter-spacing:-2px;
    margin:13px 0 16px
}
.article-deck {
    font-size:17px;
    line-height:1.7;
    color:#71777a;
    margin:0 0 25px
}
.byline {
    display:flex;
    align-items:center;
    gap:12px;
    border-top:1px solid var(--line);
    padding-top:17px
}
.avatar {
    height:39px;
    width:39px;
    background:#e8e4dd;
    color:#555149;
    border-radius:50%;
    display:grid;
    place-items:center;
    font-size:12px;
    font-weight:800
}
.byline>div:nth-child(2) {
    display:flex;
    flex-direction:column;
    gap:4px
}
.byline strong {
    font-size:12px
}
.byline span {
    font-size:11px;
    color:#8a8e90
}
.byline span b {
    padding:0 5px
}
.article-tools {
    margin-left:auto;
    display:flex;
    gap:10px
}
.article-tools button {
    border:1px solid var(--line);
    border-radius:4px;
    background:#fff;
    padding:8px 11px;
    font-size:11px;
    font-weight:700
}
.article-tools button:hover {
    border-color:var(--accent)
}
.article-cover {
    height:370px;
    border-radius:5px;
    margin:0 auto 45px;
    max-width:1000px
}
.article-cover .art-window {
    width:29%;
    height:70%;
    padding:24px
}
.article-cover .win-tile-row b {
    height:60px
}
.article-columns {
    display:grid;
    grid-template-columns:minmax(0,710px) 270px;
    gap:80px;
    justify-content:center
}
.article-body {
    font-size:16px;
    line-height:1.85;
    color:#43484a
}
.article-body p {
    margin:0 0 23px
}
.article-body .lead {
    font-size:18px;
    color:#252a2d;
    line-height:1.8
}
.article-body h2 {
    font:800 25px/1.35 Manrope,sans-serif;
    letter-spacing:-.6px;
    color:var(--ink);
    margin:41px 0 14px;
    scroll-margin-top:115px
}
.takeaway {
    border-left:3px solid var(--accent);
    background:#f8f7f5;
    padding:20px 23px;
    margin:30px 0
}
.takeaway span,.aside-label {
    font-size:10px;
    font-weight:800;
    letter-spacing:1.4px;
    color:var(--accent)
}
.takeaway p {
    font-size:14px;
    margin:9px 0 0
}
.steps {
    background:#f8f8f7;
    padding:23px 27px;
    border-radius:5px;
    margin:20px 0
}
.steps strong {
    font-size:14px
}
.steps ol {
    padding-left:22px;
    margin:12px 0 0
}
.steps li {
    padding-bottom:7px
}
.aside-box {
    border:1px solid var(--line);
    padding:23px 21px;
    border-radius:5px;
    position:sticky;
    top:108px
}
.aside-box>a {
    display:flex;
    gap:14px;
    border-bottom:1px solid var(--line);
    padding:13px 0;
    font-size:11px;
    color:var(--accent);
    font-weight:800
}
.aside-box>a:last-child {
    border:0;
    padding-bottom:0
}
.aside-box>a span {
    font-size:12px;
    font-weight:600;
    color:#5d6265
}
.aside-help {
    background:#f7f5f2;
    padding:22px;
    margin-top:22px;
    display:flex;
    flex-direction:column;
    gap:12px
}
.aside-help>span {
    font-size:10px;
    color:var(--accent);
    font-weight:800;
    letter-spacing:1px
}
.aside-help strong {
    font:800 17px/1.4 Manrope
}
.aside-help a {
    font-size:11px;
    font-weight:800
}
.article-end {
    text-align:center;
    border-top:1px solid var(--line);
    margin-top:42px;
    padding:29px 0
}
.article-end>span {
    font-size:29px;
    color:var(--accent);
    display:block
}
.article-end strong {
    font:800 20px Manrope
}
.article-end p {
    font-size:13px;
    color:var(--muted);
    margin:9px 0
}
.related {
    border-top:1px solid var(--line);
    margin-top:40px;
    padding-top:36px
}
.related-grid {
    grid-template-columns:repeat(3,1fr)
}

@media(max-width:1050px) {
    .header-inner {
    gap:25px
}
.nav {
    gap:16px
}
.nav a {
    font-size:12px
}
.article-columns {
    gap:35px;
    grid-template-columns:minmax(0,1fr) 240px
}
.footer-links {
    gap:45px
}

}
@media(max-width:760px) {
    .wrap {
    width:min(100% - 34px,1160px)
}
.topline-inner {
    height:28px
}
.topline-inner span:last-child {
    display:none
}
.header-inner {
    height:64px;
    gap:15px
}
.logo {
    font-size:30px
}
.nav {
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:64px;
    background:#fff;
    padding:18px 20px;
    border-bottom:1px solid var(--line);
    box-shadow:0 12px 15px #0001;
    flex-direction:column;
    align-items:flex-start;
    gap:18px
}
.nav.show {
    display:flex
}
.header-right {
    margin-left:auto
}
.menu-trigger {
    display:block
}
.page-intro {
    padding:35px 0 28px
}
.page-intro h1 {
    letter-spacing:-1.5px
}
.intro-link {
    display:none
}
.feature-grid {
    grid-template-columns:1fr;
    gap:24px
}
.feature-main>.art {
    height:240px
}
.feature-text h2 {
    font-size:23px
}
.feature-side {
    gap:15px
}
.side-story .art {
    height:125px
}
.side-story h3 {
    font-size:15px
}
.topic-strip {
    display:block
}
.topic-list {
    margin-top:14px
}
.latest {
    padding:39px 0
}
.story-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:23px 15px
}
.story-card .art {
    height:145px
}
.card-body h3 {
    font-size:15px
}
.card-body p {
    font-size:12px
}
.footer-main {
    display:block
}
.footer-links {
    justify-content:space-between;
    gap:12px;
    margin-top:35px
}
.footer-bottom {
    gap:15px
}
.article-head h1 {
    letter-spacing:-1px
}
.article-deck {
    font-size:15px
}
.article-cover {
    height:250px;
    margin-bottom:28px
}
.article-cover .art-window {
    width:46%;
    height:70%;
    padding:15px
}
.article-cover .win-tile-row b {
    height:30px
}
.article-columns {
    display:block
}
.article-aside {
    display:none
}
.article-body {
    font-size:15px
}
.article-body .lead {
    font-size:16px
}
.related-grid {
    grid-template-columns:repeat(2,1fr)
}
.bottom-note {
    flex-wrap:wrap
}
.bottom-note a {
    margin-left:48px
}

}
@media(max-width:420px) {
    .story-grid {
    grid-template-columns:1fr 1fr
}
.story-card .art {
    height:125px
}
.side-story {
    grid-template-columns:39% 1fr
}
.side-story .art {
    height:118px
}
.footer-links a {
    font-size:11px
}
.article-tools button {
    padding:7px
}
.article-head h1 {
    font-size:30px
}

}
@media print {
    .topline,.site-header,.footer,.article-aside,.related,.article-tools {
    display:none!important
}
.article-columns {
    display:block
}
.article-cover {
    height:200px
}
.article-body {
    font-size:12pt
}

}


/* Production pages: compact Modus layout */
.modus-image {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
}
.art:has(>.modus-image) {
    background:#f2f2ef
}
.inner-shell {
    padding:38px 0 75px
}
.inner-head {
    border-bottom:1px solid var(--line);
    padding:0 0 27px;
    margin-bottom:32px
}
.inner-head h1 {
    font:800 clamp(30px,4vw,42px)/1.2 Manrope,sans-serif;
    letter-spacing:-1.5px;
    margin:12px 0
}
.inner-head p {
    font-size:15px;
    color:var(--muted);
    line-height:1.7;
    max-width:750px;
    margin:0
}
.inner-content {
    max-width:800px;
    font-size:15px;
    line-height:1.85;
    color:#4c5052
}
.inner-content h2 {
    font:800 23px/1.4 Manrope,sans-serif;
    letter-spacing:-.5px;
    color:var(--ink);
    margin:36px 0 14px
}
.inner-content h3 {
    font:800 18px Manrope,sans-serif;
    color:var(--ink)
}
.inner-content p {
    margin:0 0 20px
}
.inner-content ul {
    padding-left:22px
}
.inner-content li {
    margin-bottom:8px
}
.inner-content a:not(.story-card) {
    color:var(--accent)
}
.inner-content .policy-note,.inner-content .note {
    background:#f8f7f5;
    padding:18px 22px;
    border-left:3px solid var(--accent);
    margin:24px 0
}
.listing-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:30px 23px
}
.listing-grid .art {
    height:180px
}
.listing-grid .card-body h3 {
    font-size:17px
}
.pagination {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:35px
}
.pagination a,.pagination span {
    border:1px solid var(--line);
    padding:9px 14px;
    font-size:12px;
    border-radius:4px
}
.pagination .active {
    background:var(--ink);
    color:#fff
}
.search-form {
    display:flex;
    gap:10px;
    margin:24px 0 34px
}
.search-form input {
    min-width:0;
    flex:1;
    padding:13px 16px;
    border:1px solid var(--line);
    border-radius:4px
}
.search-form button,.contact-form button {
    background:var(--ink);
    color:#fff;
    border:0;
    border-radius:4px;
    padding:13px 22px;
    font-weight:700;
    font-size:13px
}
.search-results {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:23px
}
.search-item {
    display:grid;
    grid-template-columns:150px 1fr;
    gap:17px;
    padding:0 0 20px;
    border-bottom:1px solid var(--line)
}
.search-item .art {
    height:110px
}
.search-item h3 {
    font:800 16px/1.4 Manrope;
    margin:8px 0
}
.search-item p {
    font-size:12px;
    color:var(--muted);
    margin:0;
    line-height:1.5
}
.author-hero {
    display:flex;
    align-items:center;
    gap:25px;
    margin-bottom:35px
}
.author-hero img {
    width:100px;
    height:100px;
    object-fit:cover;
    border-radius:50%
}
.author-hero h1 {
    font:800 36px Manrope;
    margin:6px 0
}
.author-hero p {
    color:var(--muted);
    font-size:14px
}
.author-mini {
    display:flex;
    align-items:center;
    gap:15px;
    border:1px solid var(--line);
    border-radius:5px;
    padding:17px;
    margin:15px 0
}
.author-mini img {
    width:70px;
    height:70px;
    border-radius:50%;
    object-fit:cover
}
.author-mini h3 {
    margin:0!important;
    font-size:16px!important
}
.author-mini p {
    margin:5px 0!important;
    font-size:12px
}
.contact-form {
    max-width:680px;
    margin:24px 0
}
.contact-form label {
    display:block;
    font-size:12px;
    font-weight:800;
    margin:15px 0 6px
}
.contact-form input,.contact-form textarea,.contact-form select {
    width:100%;
    padding:13px 15px;
    border:1px solid #dfe1df;
    border-radius:4px;
    background:white;
    font:inherit
}
.contact-form textarea {
    min-height:160px;
    resize:vertical
}
.contact-form button {
    margin-top:17px
}
.article-page .article-columns {
    display:block;
    max-width:800px;
    margin:auto
}
.article-page .article-body {
    max-width:800px
}
.article-body .article-intro {
    font-size:18px;
    color:#2e3335
}
.article-body .article-text {
    margin-bottom:22px
}
.article-body .article-image {
    margin:28px 0
}
.article-body .article-image img {
    max-width:100%;
    height:auto;
    border-radius:4px
}
.article-body .see-also,.article-body .callout {
    border-left:3px solid var(--accent);
    background:#f8f7f5;
    padding:17px 22px;
    margin:23px 0
}
.article-body .fixerhow-video-box {
    margin:25px 0;
    background:#f7f7f5;
    padding:15px;
    border:1px solid var(--line)
}
.fixerhow-video-player {
    width:100%;
    aspect-ratio:16/9;
    background:#111
}
.article-body .article-tags {
    display:flex;
    flex-wrap:wrap;
    gap:9px
}
.article-body .article-tag {
    border:1px solid var(--line);
    border-radius:20px;
    padding:7px 12px;
    font-size:12px
}
.article-body .article-end {
    text-align:left
}
.article-body .article-end-label {
    font-size:11px;
    color:var(--accent);
    font-weight:800;
    margin-bottom:10px
}
.article-cover.modus-cover-image {
    background:#f1f2f0
}
.article-cover.modus-cover-image img {
    width:100%;
    height:100%;
    object-fit:cover
}
.article-related {
    padding:40px 0;
    border-top:1px solid var(--line);
    margin-top:30px
}
.article-related .story-grid {
    margin-top:22px
}
.article-related .story-card .art {
    height:165px
}
.article-body img {
    max-width:100%;
    height:auto
}
.article-body .step-list,.article-body ol,.article-body ul {
    padding-left:25px
}
.article-body li {
    margin-bottom:8px
}
.article-body h3 {
    font:800 19px Manrope
}
.article-body a {
    color:var(--accent)
}
.article-body .fixerhow-video-label {
    font-size:11px;
    font-weight:800;
    color:var(--accent);
    margin-bottom:10px
}
.article-body .inline-related {
    border:1px solid var(--line);
    padding:15px;
    margin:20px 0
}
.article-body blockquote {
    border-left:3px solid var(--accent);
    padding-left:18px
}
.article-body .article-content {
    width:100%
}
.article-page .article-head {
    max-width:800px
}
.article-page .article-cover {
    max-width:1000px
}
.article-page .related-grid {
    grid-template-columns:repeat(3,1fr)
}

@media(max-width:760px) {
    .listing-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px 15px
}
.listing-grid .art {
    height:130px
}
.search-results {
    grid-template-columns:1fr
}
.inner-shell {
    padding:25px 0 55px
}
.search-item {
    grid-template-columns:110px 1fr
}
.search-item .art {
    height:95px
}
.article-page .article-columns {
    display:block
}
.article-related .story-grid {
    grid-template-columns:repeat(2,1fr)
}
.author-hero h1 {
    font-size:27px
}

}


/* Homepage: retain editorial illustration art, not the old FixerHow thumbnail grid. */
.art-photo img { width:100%; height:100%; object-fit:cover; }
