.ds-page{background:var(--paper)}
.ds-hero{padding:calc(var(--operational-header-height) + var(--space-10)) 0 var(--space-9);background:var(--warm)}
.ds-hero h1{margin:0;font-size:clamp(44.2px,5.95vw,78.2px)}
.ds-hero p{max-width:720px;margin:var(--space-4) 0 0;color:var(--muted);font-size:18px}
.ds-hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--space-5)}.ds-hero-meta span{padding:8px 12px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:rgba(255,255,255,.5);color:var(--muted);font-size:var(--text-caption);font-weight:800}
.ds-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--space-9);padding-top:var(--space-10);padding-bottom:var(--space-12)}
.ds-nav{position:sticky;top:calc(var(--operational-header-height) + 24px);display:flex;height:max-content;max-height:calc(100vh - var(--operational-header-height) - 48px);overflow:auto;flex-direction:column;border-left:1px solid var(--line-strong)}
.ds-nav a{min-height:44px;padding:7px 0 7px 16px;color:var(--muted);font-size:var(--text-caption);font-weight:700}.ds-nav a:hover{color:var(--lavender)}
.ds-content{min-width:0}.ds-section{padding:0 0 var(--space-11);scroll-margin-top:calc(var(--operational-header-height) + 24px)}
.ds-section+.ds-section{padding-top:var(--space-9);border-top:1px solid var(--line-strong)}
.ds-section-head{display:grid;grid-template-columns:52px 1fr;gap:var(--space-4);margin-bottom:var(--space-7)}
.ds-section-head>span{color:var(--mustard);font-family:var(--serif);font-size:28px}.ds-section-head h2{margin:0;font-family:var(--serif);font-size:clamp(28.9px,3.4vw,44.2px);font-weight:400}.ds-section-head p{margin:8px 0 0;color:var(--muted)}
.ds-section>h3{margin:var(--space-7) 0 var(--space-4);font-size:16px}.ds-swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.ds-swatches div{display:grid;gap:5px;font-size:14px}.ds-swatches i{height:76px;border:1px solid var(--line);border-radius:14px;background:var(--swatch)}.ds-swatches code{color:var(--muted)}
.ds-token-row,.ds-demo-row{display:flex;flex-wrap:wrap;gap:12px}.ds-token-row span{padding:12px 15px;border-radius:14px;background:var(--warm);font-size:var(--text-caption)}
.ds-layout-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ds-layout-specs article{display:flex;min-width:0;flex-direction:column;padding:22px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--warm)}.ds-layout-specs strong{font-family:var(--serif);font-size:30px;font-weight:400}.ds-layout-specs p{min-height:72px;margin:8px 0 18px;color:var(--muted);font-size:var(--text-body)}.ds-grid-preview{display:grid;height:62px;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:auto;padding:7px;border:1px solid var(--line-strong);background:var(--paper)}.ds-grid-preview i{background:rgba(138,117,164,.22)}.ds-grid-preview--tablet{grid-template-columns:repeat(4,1fr)}.ds-grid-preview--mobile{grid-template-columns:repeat(2,1fr)}
.ds-spacing-scale{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:var(--space-6);padding:20px;border:1px solid var(--line);background:var(--paper)}.ds-spacing-scale span{display:grid;justify-items:center;gap:8px;min-width:34px}.ds-spacing-scale i{display:block;width:var(--size);max-width:120px;height:22px;background:var(--lavender)}.ds-spacing-scale b{color:var(--muted);font-size:14px}.ds-rhythm-table{display:grid;border-top:1px solid var(--line-strong)}.ds-rhythm-table div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.ds-rhythm-table b{color:var(--lavender-dark);font-family:var(--serif);font-size:17px;font-weight:400}.ds-rhythm-table span{color:var(--muted);font-size:var(--text-caption)}
.ds-type-scale{display:grid;gap:var(--space-6)}.ds-type-scale>div{padding-bottom:var(--space-5);border-bottom:1px solid var(--line)}.ds-type-scale small,.ds-kicker{display:block;margin-bottom:10px;color:var(--mustard-dark);font-size:var(--text-caption);font-weight:800;letter-spacing:.1em;text-transform:uppercase}.ds-type-display{margin:0;font-family:var(--serif);font-size:clamp(2.2312rem,5.1vw,3.825rem);font-weight:400;line-height:var(--leading-display);text-wrap:balance}.ds-type-section{margin:0;font-family:var(--serif);font-size:clamp(1.7rem,3.4vw,2.7625rem);font-weight:400;line-height:var(--leading-section);text-wrap:balance}.ds-type-card{margin:0;font-family:var(--serif);font-size:1.4344rem;font-weight:400;line-height:var(--leading-card);text-wrap:balance}.ds-lead{max-width:720px;margin:0;color:var(--muted);font-size:20px;line-height:var(--leading-lead)}
.ds-surface-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px}.ds-surface{min-height:270px;padding:24px;border:1px solid var(--line);border-radius:var(--radius-md)}.ds-surface h3{margin:0 0 12px;font-family:var(--serif);font-size:23.8px;font-weight:400}.ds-surface p{color:var(--muted);font-size:var(--text-body)}.ds-surface a{color:var(--lavender-dark);font-size:14px;font-weight:800}.ds-surface--paper{background:var(--paper)}.ds-surface--warm{background:var(--warm)}.ds-surface--dark{border-color:rgba(255,255,255,.12);background:var(--ink);color:var(--paper)}.ds-surface--dark h3{color:var(--paper)}.ds-surface--dark p{color:#ded8e2}.ds-surface--dark a{color:#d6c696}
.ds-text-link,.news-read-link{color:var(--lavender-dark);font-weight:800}.ds-text-link:hover{color:var(--lavender)}.ds-text-link.is-current{color:var(--mustard-dark);text-decoration:underline;text-underline-offset:5px}.ds-demo-row{align-items:center;margin-bottom:20px}.ds-note{padding:16px;border-left:3px solid var(--mustard);background:var(--vanilla);font-size:var(--text-body)}.btn:focus-visible,.ds-text-link:focus-visible{outline:3px solid rgba(138,117,164,.35);outline-offset:3px}.btn:active{transform:translateY(0);background:#59456f;color:#fff}.btn:disabled{opacity:.42;cursor:not-allowed;transform:none}
.ds-nav-modes{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ds-menu-mode{padding:28px;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--warm)}.ds-menu-mode--primary{border-color:rgba(138,117,164,.45);box-shadow:inset 0 0 0 1px rgba(138,117,164,.12)}.ds-menu-mode__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;color:var(--muted);font-size:14px;font-weight:800}.ds-status{display:inline-flex;padding:7px 10px;border-radius:var(--radius-pill);font-size:14px;letter-spacing:.06em;text-transform:uppercase}.ds-status--active{background:var(--lavender);color:#fff}.ds-status--stored{border:1px solid var(--line-strong);background:var(--paper);color:var(--mustard-dark)}.ds-menu-mode h3{margin:0 0 10px;font-family:var(--serif);font-size:25.5px;font-weight:400}.ds-menu-mode>p{min-height:78px;color:var(--muted);font-size:var(--text-body)}.ds-menu-mode .ds-list{margin:20px 0 0}.ds-menu-mode .ds-list li{font-size:var(--text-body)}.ds-header-schematic{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-height:92px;padding:12px;border:1px solid var(--line-strong);background:var(--paper)}.ds-header-schematic span,.ds-header-schematic b{display:inline-flex;min-height:34px;align-items:center;justify-content:center;padding:6px 8px;border-radius:8px;background:var(--warm);font-size:8px;font-weight:800}.ds-header-schematic .ds-header-schematic__logo{width:42px;height:42px;border-radius:50%;background:var(--lavender-soft);color:var(--lavender-dark)}.ds-header-schematic b{margin-left:auto;background:var(--lavender);color:#fff}.ds-fullscreen-schematic{display:grid;height:92px;grid-template-columns:.9fr 1.1fr;overflow:hidden;border:1px solid var(--line-strong);background:var(--paper)}.ds-fullscreen-schematic span{display:flex;align-items:flex-end;padding:12px;background:linear-gradient(145deg,var(--lavender-soft),var(--beige));font-family:var(--serif);font-size:13px}.ds-fullscreen-schematic span+span{border-left:1px solid var(--line-strong);background:var(--paper);color:var(--muted);font-family:var(--sans);font-size:10px;font-weight:800;text-transform:uppercase}
.ds-two{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8)}.ds-page blockquote{margin:24px 0 0;padding:24px 28px;border-left:3px solid var(--lavender);background:var(--lavender-soft);font-family:var(--serif);font-size:21px;line-height:1.55}.ds-page blockquote cite{display:block;margin-top:14px;color:var(--muted);font-family:var(--sans);font-size:var(--text-caption);font-style:normal}.ds-list{display:grid;gap:10px;margin:0 0 24px;padding:0;list-style:none}.ds-list li{position:relative;padding-left:24px}.ds-list li::before{content:"";position:absolute;top:.65em;left:2px;width:7px;height:7px;border-radius:50%;background:var(--mustard)}.ds-list--numbered{counter-reset:list}.ds-list--numbered li{counter-increment:list;padding-left:38px}.ds-list--numbered li::before{content:counter(list,decimal-leading-zero);top:0;width:auto;height:auto;border-radius:0;background:none;color:var(--lavender);font-family:var(--serif)}
.ds-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px}.ds-card{padding:28px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--warm)}.ds-card h3{margin:0 0 12px;font-family:var(--serif);font-size:22.95px;font-weight:400}.ds-card p{color:var(--muted);font-size:var(--text-body)}.ds-card>a,.ds-card div>a{color:var(--lavender-dark);font-size:var(--text-caption);font-weight:800}.ds-card--photo,.ds-card--art{overflow:hidden;padding:0}.ds-card--photo>img,.ds-card--art>img{width:100%;aspect-ratio:4/3;object-fit:cover}.ds-card--photo>div,.ds-card--art>div{padding:24px}.ds-card--art>img{object-fit:contain;padding:12px;background:var(--vanilla)}
.ds-news{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--news-column-gap)}.ds-news article{position:relative;min-width:0;padding:0;border:0}.ds-news article:first-child{padding-left:0;border:0}.ds-news article:last-child{padding-right:0}.ds-news__image{position:relative;overflow:hidden;width:100%;aspect-ratio:var(--news-image-ratio);background:var(--warm)}.ds-news__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ds-news time{display:block;margin-top:18px;color:var(--mustard-dark);font-size:14px;font-weight:800}.ds-news h3{margin:10px 0;font-family:var(--serif);font-size:20.4px;font-weight:400}.ds-news p{color:var(--muted);font-size:var(--text-body)}.ds-news a{color:var(--lavender-dark);font-size:var(--text-caption);font-weight:800}
.ds-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:var(--space-8);border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.ds-stats div{padding:28px;border-left:1px solid var(--line-strong)}.ds-stats div:first-child{border:0}.ds-stats strong{display:block;color:var(--lavender);font-family:var(--serif);font-size:48px;font-weight:400}.ds-stats span{color:var(--muted);font-size:14px}
.ds-table{display:grid;gap:8px}.ds-table__head,.ds-table__row{display:grid;grid-template-columns:1.25fr .8fr 1.15fr auto;gap:20px;align-items:center}.ds-table__head{padding:0 20px;color:var(--muted);font-size:14px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.ds-table__row{padding:20px;border-left:4px solid var(--lavender);border-radius:0 16px 16px 0;background:var(--warm);transition:.2s}.ds-table__row:hover{background:var(--lavender-soft);transform:translateX(4px)}.ds-table__row strong{font-family:var(--serif);font-size:18px;font-weight:400}.ds-table__row span{font-size:var(--text-caption)}.ds-table__row a{color:var(--lavender-dark);font-size:14px;font-weight:800}
.ds-media-split{display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden;border-radius:var(--radius-lg);background:var(--warm)}.ds-media-split>img{width:100%;height:100%;min-height:360px;object-fit:cover}.ds-media-split>div{align-self:center;padding:var(--space-7)}.ds-media-split h3{margin:0 0 16px;font-family:var(--serif);font-size:28.9px;font-weight:400}.ds-art-rule{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:30px;margin-top:24px;padding:24px;background:var(--vanilla)}.ds-art-rule img{width:180px;aspect-ratio:1;object-fit:contain}.ds-art-rule p{margin:0;line-height:var(--leading-lead)}
.ds-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ds-form label{display:grid;gap:8px;font-size:var(--text-caption);font-weight:700}.ds-form input,.ds-form textarea{width:100%;padding:14px 16px;border:1px solid var(--line-strong);border-radius:14px;background:#fff;font:inherit}.ds-form input:focus,.ds-form textarea:focus{border-color:var(--lavender);outline:3px solid rgba(138,117,164,.15)}.ds-form__wide{grid-column:1/-1}.ds-check{display:flex!important;grid-column:1/-1;align-items:center}.ds-check input{width:18px;height:18px}
.ds-patterns{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ds-patterns div{padding:20px;border-top:3px solid var(--mustard);background:var(--warm)}.ds-patterns b{font-family:var(--serif);font-size:20px;font-weight:400}.ds-patterns p{margin:8px 0 0;color:var(--muted);font-size:var(--text-body)}.ds-rules{display:grid;gap:0;padding:0;counter-reset:rule;list-style:none}.ds-rules li{counter-increment:rule;padding:18px 0;border-bottom:1px solid var(--line);font-size:15px}.ds-rules li::before{content:counter(rule,decimal-leading-zero);display:inline-block;width:46px;color:var(--lavender);font-family:var(--serif)}
.ds-breakpoints{display:grid;border-top:1px solid var(--line-strong)}.ds-breakpoints div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.ds-breakpoints strong{color:var(--lavender-dark);font-family:var(--serif);font-size:22px;font-weight:400}.ds-breakpoints span{align-self:center;color:var(--muted);font-size:var(--text-caption)}.ds-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:var(--space-6)}.ds-check-grid div{padding:20px;border-left:3px solid var(--mustard);background:var(--warm)}.ds-check-grid b{font-family:var(--serif);font-size:20px;font-weight:400}.ds-check-grid p{margin:8px 0 0;color:var(--muted);font-size:var(--text-body)}
@media(max-width:920px){.ds-layout{grid-template-columns:1fr}.ds-nav{position:static;display:grid;max-height:none;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);padding:10px}.ds-swatches{grid-template-columns:repeat(3,1fr)}.ds-layout-specs,.ds-surface-grid,.ds-nav-modes{grid-template-columns:1fr}.ds-layout-specs p,.ds-menu-mode>p{min-height:0}.ds-card-grid,.ds-patterns{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.ds-hero{padding-top:calc(var(--operational-header-height) + 40px)}.ds-layout{padding-top:40px}.ds-nav{grid-template-columns:1fr 1fr}.ds-section-head{grid-template-columns:38px 1fr}.ds-rhythm-table div,.ds-breakpoints div{grid-template-columns:1fr;gap:4px}.ds-header-schematic b{margin-left:0}.ds-check-grid,.ds-two,.ds-card-grid,.ds-news,.ds-stats,.ds-media-split,.ds-form,.ds-patterns{grid-template-columns:1fr}.ds-news article,.ds-news article:first-child,.ds-news article:last-child{padding:24px 0;border-top:1px solid var(--line-strong);border-left:0}.ds-stats div{border-top:1px solid var(--line-strong);border-left:0}.ds-table__head{display:none}.ds-table__row{grid-template-columns:1fr;gap:8px}.ds-table__row span::before{content:attr(data-label) ": ";color:var(--muted)}.ds-media-split>img{min-height:240px}.ds-art-rule{grid-template-columns:110px 1fr}.ds-art-rule img{width:110px}.ds-form__wide{grid-column:auto}}

.ds-header-schematic{border-color:var(--lavender);background:var(--lavender)}
.ds-header-schematic span{background:transparent;color:#fff;font-weight:500}
.ds-header-schematic .ds-header-schematic__logo{background:var(--mustard);color:var(--ink);font-weight:700}
.ds-header-schematic b{background:#000;color:#fff;font-weight:600}

/* DS 1.2 — readable specimens, narrow-column check and semantic coverage. */
.ds-section-head h2{font-size:clamp(1.7rem,2.98vw,2.55rem)}
.ds-section-head>div,.ds-two>*,.ds-card-grid>*,.ds-patterns>*{min-width:0}
.ds-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.ds-type-scale>div{min-width:0}
.ds-type-scale small{line-height:var(--leading-caption)}
.ds-type-scale p:not([class]){margin:0;max-width:var(--measure-body)}
.ds-specimen{margin-block:var(--space-7);padding:var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--warm)}
.ds-specimen label{display:block;font-size:var(--text-caption);font-weight:700}
.ds-specimen input{display:block;width:min(100%,24rem);margin-block:var(--space-4);accent-color:var(--lavender-dark)}
.ds-specimen__card{width:min(100%,var(--specimen-width,320px));padding:var(--space-5);border:1px solid var(--line);background:var(--paper)}
.ds-specimen__card h3{margin:0 0 var(--space-3);font-family:var(--serif);font-size:1.4344rem;font-weight:400;line-height:var(--leading-card)}
.ds-specimen__card p{margin:0;font-size:var(--text-body);line-height:var(--leading-body)}
.ds-pattern-demo{margin-top:var(--space-6);padding:var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-md)}
.ds-pattern-demo>h3{margin-bottom:var(--space-5);font-family:var(--serif);font-size:clamp(1.275rem,2.12vw,1.7rem);font-weight:400}
.ds-pattern-demo .approved-faq summary{font-family:var(--sans);font-size:1.125rem;line-height:var(--leading-subheading)}
.ds-pattern-demo .approved-faq__answer p{font-size:var(--text-body);line-height:var(--leading-body)}
.ds-coverage{margin-block:var(--space-6)}
.ds-coverage caption{text-align:left;margin-bottom:var(--space-4);font-size:var(--text-caption);color:var(--muted)}
.ds-page .ds-note{max-width:var(--measure-body);margin:var(--space-5) 0 0;line-height:var(--leading-body)}
.ds-page .ds-note+.ds-note{margin-top:var(--space-3)}
.ds-page .ds-nav a:focus-visible,.ds-page input:focus-visible{outline:2px solid var(--lavender-dark);outline-offset:3px}
.ds-page .ds-media-split{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:640px){
 .ds-two,.ds-page .ds-media-split{grid-template-columns:1fr}
 .ds-pattern-demo,.ds-specimen{padding:var(--space-4)}
 .ds-card-grid{grid-template-columns:1fr}
}

/* =========================================================
   DS 1.6 — PALETTE COMPARISON
   The switch affects the complete DS page, including header and footer.
   ========================================================= */
html[data-ds-palette="contrast"]{
  --ink:#1F1B26;
  --muted:#49424F;
  --paper:#FFFFFF;
  --warm:#F0EBE1;
  --vanilla:#EFE2B9;
  --lavender:#73568E;
  --lavender-dark:#54326F;
  --lavender-soft:#E6DCEC;
  --mustard:#97752E;
  --mustard-dark:#6B4D13;
  --beige:#CBB98D;
  --line:rgba(31,27,38,.18);
  --line-strong:rgba(31,27,38,.32);
  --shadow:0 24px 80px rgba(31,27,38,.17);
  --shadow-soft:0 14px 40px rgba(31,27,38,.12);
}

.ds-palette-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.ds-palette-option{display:grid;grid-template-columns:116px minmax(0,1fr);gap:var(--space-5);align-items:center;width:100%;min-height:132px;padding:var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease}
.ds-palette-option:hover{border-color:var(--lavender);transform:translateY(-2px)}
.ds-palette-option:focus-visible{outline:3px solid color-mix(in srgb,var(--lavender) 35%,transparent);outline-offset:3px}
.ds-palette-option.is-active{border-color:var(--lavender-dark);background:var(--warm);box-shadow:inset 0 0 0 1px var(--lavender-dark),var(--shadow-soft)}
.ds-palette-option__swatches{display:grid;height:72px;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid var(--line-strong);border-radius:var(--radius-sm)}
.ds-palette-option__swatches i:nth-child(1){background:#FFFEFB}
.ds-palette-option__swatches i:nth-child(2){background:#F5EED3}
.ds-palette-option__swatches i:nth-child(3){background:#8A75A4}
.ds-palette-option__swatches i:nth-child(4){background:#F6B85A}
.ds-palette-option[data-ds-palette="contrast"] .ds-palette-option__swatches i:nth-child(1){background:#FFFFFF}
.ds-palette-option[data-ds-palette="contrast"] .ds-palette-option__swatches i:nth-child(2){background:#EFE2B9}
.ds-palette-option[data-ds-palette="contrast"] .ds-palette-option__swatches i:nth-child(3){background:#73568E}
.ds-palette-option[data-ds-palette="contrast"] .ds-palette-option__swatches i:nth-child(4){background:#97752E}
.ds-palette-option strong{display:block;margin-bottom:var(--space-2);font-family:var(--serif);font-size:24px;font-weight:400;line-height:var(--leading-card)}
.ds-palette-option small{display:block;color:var(--muted);font-size:14px;line-height:var(--leading-caption)}
.ds-palette-status{margin:var(--space-4) 0 var(--space-7);color:var(--muted)}

html[data-ds-palette="contrast"] .ds-swatches div:nth-child(1) i{background:#1F1B26}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(2) i{background:#73568E}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(3) i{background:#97752E}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(4) i{background:#F0EBE1}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(5) i{background:#EFE2B9}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(6) i{background:#FFFFFF}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(1) code{font-size:0}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(1) code::after{content:"#1F1B26";font-size:14px}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(2) code{font-size:0}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(2) code::after{content:"#73568E";font-size:14px}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(3) code{font-size:0}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(3) code::after{content:"#97752E";font-size:14px}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(4) code{font-size:0}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(4) code::after{content:"#F0EBE1";font-size:14px}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(5) code{font-size:0}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(5) code::after{content:"#EFE2B9";font-size:14px}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(6) code{font-size:0}
html[data-ds-palette="contrast"] .ds-swatches div:nth-child(6) code::after{content:"#FFFFFF";font-size:14px}

@media(max-width:920px){.ds-palette-switch{grid-template-columns:1fr}}
@media(max-width:640px){.ds-palette-option{grid-template-columns:86px minmax(0,1fr);gap:var(--space-4);padding:var(--space-4)}.ds-palette-option__swatches{height:64px}.ds-palette-option strong{font-size:21px}}

.ds-form input,.ds-form textarea{font-size:var(--text-body)}
.ds-card h3{line-height:var(--leading-card)}

.ds-news article:not(:nth-child(3n + 1))::before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--news-column-gap) / -2);width:1px;background:var(--line-strong)}
.ds-rhythm-example{margin-block:var(--space-5);border:1px solid var(--line-strong);border-radius:var(--radius-md);overflow:hidden}
.ds-rhythm-example__part{padding:var(--space-6);background:var(--paper)}
.ds-rhythm-example__part p{margin:0;font-size:var(--text-body)}
.ds-rhythm-example__part+.ds-rhythm-example__part{padding-top:0}
.ds-rhythm-example__part--warm{background:var(--warm)}
.ds-rhythm-example__part+.ds-rhythm-example__part--warm{padding-top:var(--space-6)}
@media(max-width:640px){.ds-news{gap:0}.ds-news article::before{display:none}}

@media(max-width:640px){.ds-news article:last-child{padding-bottom:0}}

/* =========================================================
   DS 1.4 — EDITORIAL DIRECTION AND PAGE CONSTRUCTOR
   ========================================================= */
.ds-layout{gap:var(--space-10);padding-top:var(--space-9)}
.ds-content{counter-reset:ds-section}
.ds-section{
  padding:var(--space-7) 0;
  scroll-margin-top:calc(var(--operational-header-height) + var(--space-5));
}
.ds-section:first-child{padding-top:0}
.ds-section:last-child{padding-bottom:var(--space-11)}
.ds-section+.ds-section{padding-top:var(--space-7);border-top:1px solid var(--line-strong)}
.ds-section-head{grid-template-columns:44px minmax(0,1fr);gap:var(--space-4);margin-bottom:var(--space-7)}
.ds-section-head>span{font-size:24px;line-height:1.15}
.ds-section-head h2{max-width:17ch;font-size:clamp(1.9125rem,3.74vw,3.1875rem);line-height:var(--leading-section)}
.ds-section-head p{max-width:62ch;font-size:var(--text-body);line-height:var(--leading-body)}
.ds-section>h3{font-family:var(--serif);font-size:clamp(1.275rem,2.12vw,1.7rem);font-weight:400;line-height:var(--leading-card)}

.ds-block-map{width:100%;min-width:0;border-collapse:separate;border-spacing:0 8px}
.ds-block-map caption{padding:0 0 var(--space-4);font-size:var(--text-caption);text-align:left;color:var(--muted)}
.ds-block-map thead th{padding:0 var(--space-4) var(--space-3);border:0;background:transparent;color:var(--muted);font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.ds-block-map tbody tr{background:var(--warm)}
.ds-block-map tbody tr:nth-child(3n+2){background:var(--vanilla)}
.ds-block-map tbody tr:nth-child(3n){background:var(--lavender-soft)}
.ds-block-map tbody th,.ds-block-map tbody td{padding:var(--space-4);border:0;border-block:1px solid var(--line);font-size:14px;line-height:1.55}
.ds-block-map tbody th{width:16%;border-left:4px solid var(--lavender);background:transparent;color:var(--ink);font-family:var(--serif);font-size:18px;font-weight:400;line-height:1.25}
.ds-block-map tbody td:nth-child(2){width:15%;font-weight:700;color:var(--ink)}
.ds-block-map tbody td:nth-child(3){width:25%}
.ds-block-map tbody td:nth-child(4){width:21%;color:var(--lavender-dark)}
.ds-block-map tbody td:last-child{border-right:1px solid var(--line);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.ds-block-map a{color:var(--lavender-dark);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.ds-spacing-contract{min-width:820px}
.ds-spacing-contract tbody th{color:var(--lavender-dark);font-family:var(--serif);font-size:18px;font-weight:400}
.ds-spacing-contract tbody td:nth-child(2){white-space:nowrap;color:var(--mustard-dark);font-weight:800}
.ds-data-table{min-width:920px;border-collapse:separate;border-spacing:0 8px}
.ds-data-table thead th{padding:0 var(--space-4) var(--space-3);border:0;background:transparent;color:var(--muted);font-size:14px;letter-spacing:.06em;text-transform:uppercase}
.ds-data-table tbody tr{background:var(--warm)}
.ds-data-table tbody tr:nth-child(2){background:var(--vanilla)}
.ds-data-table tbody tr:nth-child(3){background:var(--lavender-soft)}
.ds-data-table tbody th,.ds-data-table tbody td{padding:var(--space-5) var(--space-4);border:0;border-block:1px solid var(--line)}
.ds-data-table tbody th{border-left:4px solid var(--lavender);font-family:var(--serif);font-size:20px;font-weight:400;line-height:1.25}
.ds-data-table tbody td:last-child{border-right:1px solid var(--line);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.ds-data-table a{color:var(--lavender-dark);font-weight:800;white-space:nowrap;text-decoration:none}

.ds-page-recipes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-9)}
.ds-page-recipes article{display:flex;min-height:250px;flex-direction:column;padding:var(--space-6);border-radius:var(--radius-lg);background:var(--warm)}
.ds-page-recipes article:nth-child(2){background:var(--lavender-soft);color:var(--ink)}
.ds-page-recipes article:nth-child(3){background:var(--ink);color:#fff}
.ds-page-recipes span{margin-bottom:auto;color:var(--mustard-dark);font-size:14px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.ds-page-recipes article:nth-child(2) span{color:var(--mustard-dark)}
.ds-page-recipes article:nth-child(3) span{color:#ead594}
.ds-page-recipes strong{margin-top:var(--space-8);font-family:var(--serif);font-size:22px;font-weight:400;line-height:1.35}
.ds-page-recipes p{margin:var(--space-4) 0 0;color:var(--muted);font-size:14px;line-height:1.6}
.ds-page-recipes article:nth-child(2) p{color:var(--muted)}
.ds-page-recipes article:nth-child(3) p{color:rgba(255,255,255,.74)}

.ds-semantic{display:grid;grid-template-columns:minmax(180px,.28fr) minmax(0,.72fr);gap:var(--space-7);align-items:start;padding:var(--space-8) 0;border-top:1px solid var(--line-strong)}
.ds-semantic__meta{position:sticky;top:calc(var(--operational-header-height) + var(--space-5))}
.ds-semantic__meta>span{display:block;margin-bottom:var(--space-4);color:var(--mustard-dark);font-size:14px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.ds-semantic__meta p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}
.ds-semantic__meta a{color:var(--lavender-dark);font-weight:700}

.ds-manifesto-demo{position:relative;display:flex;min-height:430px;align-items:flex-end;overflow:hidden;padding:var(--space-8);border-radius:var(--radius-xl);background:var(--lavender);color:#fff}
.ds-manifesto-demo img{position:absolute;top:-8%;right:-5%;width:62%;height:auto;aspect-ratio:1;object-fit:contain;opacity:.92;filter:brightness(0) invert(1)}
.ds-manifesto-demo>div{position:relative;z-index:1;max-width:620px}
.ds-manifesto-demo h3{margin:0;font-family:var(--serif);font-size:clamp(1.7rem,3.65vw,2.975rem);font-weight:400;line-height:1.1}
.ds-manifesto-demo p{max-width:580px;margin:var(--space-5) 0 0;color:rgba(255,255,255,.78);font-size:16px}

.ds-route-demo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.ds-route-demo>a{display:flex;min-height:300px;flex-direction:column;padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm);transition:.25s ease}
.ds-route-demo>a:first-child{grid-row:span 2;min-height:616px;background:var(--vanilla)}
.ds-route-demo>a:last-child{background:var(--ink);color:#fff}
.ds-route-demo>a:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}
.ds-route-demo small{color:var(--mustard-dark);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.ds-route-demo>a:last-child small{color:#ead594}
.ds-route-demo h3{margin:auto 0 var(--space-3);font-family:var(--serif);font-size:clamp(1.4875rem,2.55vw,2.125rem);font-weight:400;line-height:1.12}
.ds-route-demo p{margin:0 0 var(--space-4);color:var(--muted)}
.ds-route-demo>a:last-child p{color:rgba(255,255,255,.72)}
.ds-route-demo>a>span{color:var(--lavender-dark);font-size:14px;font-weight:800}
.ds-route-demo>a:last-child>span{color:#ead594}

.ds-program-demo{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:var(--space-7);align-items:end;padding:var(--space-8);border-radius:var(--radius-xl);background:var(--warm)}
.ds-program-demo h3{margin:0;font-family:var(--serif);font-size:clamp(1.9125rem,3.4vw,2.975rem);font-weight:400;line-height:1.1}
.ds-program-demo>div>p{margin:var(--space-4) 0 0;color:var(--muted)}
.ds-program-demo .program-facts{grid-template-columns:1fr 1fr;margin:0;padding:0;border:0}
.ds-program-demo .program-facts>div{min-height:96px;padding:var(--space-4);border-top:1px solid var(--line-strong);background:rgba(255,255,255,.62)}

.ds-steps-demo{margin:0;padding:0;list-style:none;border-top:1px solid var(--line-strong)}
.ds-steps-demo li{display:grid;grid-template-columns:70px minmax(0,1fr);gap:var(--space-5);align-items:start;padding:var(--space-6) 0;border-bottom:1px solid var(--line-strong)}
.ds-steps-demo>li>span{color:var(--lavender);font-family:var(--serif);font-size:30px;line-height:1}
.ds-steps-demo h3{margin:0 0 var(--space-2);font-family:var(--serif);font-size:22.95px;font-weight:400}
.ds-steps-demo p{margin:0;color:var(--muted)}

.ds-outcome-demo{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:var(--radius-xl)}
.ds-outcome-demo>div{display:flex;min-height:340px;flex-direction:column;justify-content:flex-end;padding:var(--space-7);background:var(--vanilla)}
.ds-outcome-demo>div:last-child{background:var(--lavender-soft);color:var(--ink)}
.ds-outcome-demo small{margin-bottom:auto;color:var(--mustard-dark);font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.ds-outcome-demo>div:last-child small{color:var(--mustard-dark)}
.ds-outcome-demo h3{margin:var(--space-8) 0 var(--space-4);font-family:var(--serif);font-size:clamp(1.4875rem,2.55vw,2.125rem);font-weight:400}
.ds-outcome-demo p{margin:0;color:var(--muted)}
.ds-outcome-demo>div:last-child p{color:var(--muted)}

.ds-proof-demo{display:grid;grid-template-columns:.7fr 1.3fr;border-block:1px solid var(--line-strong)}
.ds-proof-demo>div{display:flex;min-height:280px;flex-direction:column;justify-content:center;padding:var(--space-7);border-right:1px solid var(--line-strong)}
.ds-proof-demo>div strong{color:var(--lavender);font-family:var(--serif);font-size:clamp(4rem,8vw,7rem);font-weight:400;line-height:1}
.ds-proof-demo>div span{max-width:180px;margin-top:var(--space-3);color:var(--muted)}
.ds-page .ds-proof-demo blockquote{display:flex;min-height:280px;flex-direction:column;justify-content:center;margin:0;padding:var(--space-7);border:0;background:transparent;font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.35}
.ds-proof-demo blockquote p{margin:0}

.ds-story-demo{display:grid;grid-template-columns:1.12fr .88fr;min-height:420px;overflow:hidden;border-radius:var(--radius-xl);background:var(--warm)}
.ds-story-demo>img{width:100%;height:100%;min-height:420px;object-fit:cover}
.ds-story-demo>div{align-self:center;padding:var(--space-7)}
.ds-story-demo h3{margin:0;font-family:var(--serif);font-size:clamp(1.615rem,3.06vw,2.55rem);font-weight:400;line-height:1.12}
.ds-story-demo p{margin:var(--space-5) 0;color:var(--muted)}

.ds-closing-demo{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:var(--space-9);align-items:center;padding:var(--space-9);background:#efe7d5}
.ds-closing-demo h3{max-width:680px;margin:0;font-family:var(--serif);font-size:clamp(1.7rem,3.4vw,2.975rem);font-weight:400;line-height:1.1}
.ds-closing-demo p{max-width:580px;margin:var(--space-5) 0 0;color:var(--muted)}
.ds-closing-demo>div:last-child{display:grid;gap:var(--space-3)}
.ds-closing-demo .btn{width:100%}
.ds-semantic--closing>.content-caption{grid-column:2;margin:calc(var(--space-7) * -1) 0 0}

.ds-assembly-rule{padding:var(--space-8);border-radius:var(--radius-xl);background:var(--ink);color:#fff}
.ds-assembly-rule>h3{max-width:720px;margin:0 0 var(--space-7);font-family:var(--serif);font-size:clamp(1.7rem,3.4vw,2.975rem);font-weight:400}
.ds-assembly-rule ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.ds-assembly-rule li{padding:0 var(--space-4);border-left:1px solid rgba(255,255,255,.16)}
.ds-assembly-rule li:first-child{padding-left:0;border:0}
.ds-assembly-rule li:last-child{padding-right:0}
.ds-assembly-rule li>span{display:block;margin-bottom:var(--space-7);color:#ead594;font-family:var(--serif);font-size:26px}
.ds-assembly-rule p{margin:0;color:rgba(255,255,255,.72);font-size:14px;line-height:1.65}
.ds-assembly-rule b{color:#fff}

@media(max-width:920px){
  .ds-page-recipes{grid-template-columns:1fr}
  .ds-page-recipes article{min-height:210px}
  .ds-semantic{grid-template-columns:1fr;gap:var(--space-5)}
  .ds-semantic__meta{position:static;display:grid;grid-template-columns:160px minmax(0,1fr);gap:var(--space-5)}
  .ds-route-demo>a:first-child{min-height:616px}
  .ds-program-demo,.ds-story-demo{grid-template-columns:1fr}
  .ds-story-demo>img{min-height:360px;aspect-ratio:16/9}
  .ds-assembly-rule ol{grid-template-columns:1fr 1fr}
  .ds-assembly-rule li{padding:var(--space-5);border:0;border-top:1px solid rgba(255,255,255,.16)}
}

@media(max-width:640px){
  .ds-layout{padding-top:var(--space-7)}
  .ds-section,.ds-section+.ds-section{padding-block:var(--space-7)}
  .ds-section-head{grid-template-columns:36px minmax(0,1fr);margin-bottom:var(--space-6)}
  .ds-section-head h2{font-size:clamp(1.7rem,8.5vw,2.3375rem)}
  .ds-semantic{padding:var(--space-7) 0}
  .ds-semantic__meta{display:block}
  .ds-manifesto-demo{min-height:470px;padding:var(--space-6)}
  .ds-manifesto-demo img{top:-2%;right:-22%;width:105%}
  .ds-route-demo,.ds-program-demo .program-facts,.ds-outcome-demo,.ds-proof-demo,.ds-closing-demo{grid-template-columns:1fr}
  .ds-route-demo>a,.ds-route-demo>a:first-child{min-height:290px;grid-row:auto}
  .ds-program-demo{padding:var(--space-6)}
  .ds-steps-demo li{grid-template-columns:50px minmax(0,1fr);gap:var(--space-4)}
  .ds-outcome-demo>div{min-height:290px;padding:var(--space-6)}
  .ds-proof-demo>div{min-height:220px;border-right:0;border-bottom:1px solid var(--line-strong)}
  .ds-page .ds-proof-demo blockquote{min-height:260px;padding:var(--space-6)}
  .ds-story-demo>img{min-height:260px}
  .ds-story-demo>div{padding:var(--space-6)}
  .ds-closing-demo{gap:var(--space-6);padding:var(--space-7) var(--space-5)}
  .ds-semantic--closing>.content-caption{grid-column:auto;margin:calc(var(--space-4) * -1) 0 0}
  .ds-assembly-rule{padding:var(--space-6)}
  .ds-assembly-rule ol{grid-template-columns:1fr}
  .ds-assembly-rule li{padding:var(--space-5) 0}
  .ds-assembly-rule li>span{margin-bottom:var(--space-3)}
}
