/* Demo 02 — Swiss experimental agency. */
.sorell-demo-02 { --d2-paper:#f2f2ee; --d2-ink:#111; --d2-orange:#ff4d00; --d2-line:#aaa9a2; color:var(--d2-ink); background:var(--d2-paper); font-family:"Arial Narrow", "Helvetica Neue", Arial, sans-serif; }
.sorell-demo-02 .site-container, .sorell-demo-02 .demo-02-shell { width:min(calc(100% - 2rem), 1400px); margin-inline:auto; }
.sorell-demo-02 .demo-02-shell.is-layout-constrained > * { max-width:none; }
.sorell-demo-02 .site-main { padding:0; }
body.sorell-demo-02:not(.home) .site-main { padding-top:clamp(2.5rem,5vw,4.5rem); }
.sorell-demo-02 .entry-content > *, .sorell-demo-02 .entry-content > .alignwide { max-width:none; }
.sorell-demo-02 .site-header { border:0; color:var(--d2-paper); background:var(--d2-ink); }
.sorell-demo-02 .site-header__inner { min-height:3.35rem; }
.sorell-demo-02 .site-title, .sorell-demo-02 .primary-menu { font-size:.52rem; font-weight:800; letter-spacing:-.04em; text-transform:uppercase; }
.sorell-demo-02 .primary-menu { gap:1.4rem; }
.sorell-demo-02 a { color:inherit; }
.sorell-demo-02 .mobile-contact-link { color:var(--d2-orange); }

@media (max-width:700px), (min-width:701px) and (max-width:1024px) and (orientation:portrait) {
	.sorell-demo-02 .primary-navigation {
		color:var(--d2-paper);
		background:var(--d2-ink);
	}
}

.sorell-demo-02 .demo-02-section { border-bottom:1px solid var(--d2-line); }
.sorell-demo-02 .demo-02-micro { margin:0; font-size:.5rem; font-weight:700; letter-spacing:.04em; line-height:1.35; text-transform:uppercase; }
.sorell-demo-02 .demo-02-display, .sorell-demo-02 h2 { font-family:"Arial Narrow", Impact, "Helvetica Neue", Arial, sans-serif; font-stretch:condensed; font-weight:900; letter-spacing:-.035em; text-transform:uppercase; }
.sorell-demo-02 .demo-02-hero { min-height:calc(100vh - 3.35rem); padding:clamp(4rem,7vw,8rem) 0 clamp(5rem,9vw,9rem); }
.sorell-demo-02 .demo-02-hero__grid { display:grid; width:min(calc(100% - 2rem), 1400px); max-width:none; grid-template-columns:minmax(0,1.45fr) minmax(20rem,.55fr); gap:clamp(3rem,7vw,8rem); align-items:start; }
.sorell-demo-02 .demo-02-display { margin:0; font-size:clamp(5rem,7.4vw,8.5rem); line-height:.79; }
.sorell-demo-02 .demo-02-display span, .sorell-demo-02 .demo-02-manifesto span, .sorell-demo-02 .demo-02-cta span { color:var(--d2-orange); }
.sorell-demo-02 .demo-02-hero__intro { max-width:18rem; margin:clamp(3rem,6vw,6rem) 0 1.5rem; font-size:.59rem; font-weight:700; line-height:1.25; text-transform:uppercase; }
.sorell-demo-02 .demo-02-hero__main.is-layout-constrained > .demo-02-hero__intro { margin-left:0; margin-right:0; }
.sorell-demo-02 .demo-02-actions { gap:.35rem; }
.sorell-demo-02 .demo-02-button .wp-block-button__link { padding:.48rem .75rem; border:1px solid var(--d2-ink); border-radius:0; font-size:.52rem; font-weight:800; letter-spacing:.02em; text-transform:uppercase; }
.sorell-demo-02 .demo-02-button:not(.is-style-outline) .wp-block-button__link { color:var(--d2-paper); background:var(--d2-ink); }
.sorell-demo-02 .demo-02-button.is-style-outline .wp-block-button__link { color:var(--d2-ink); background:transparent; }
.sorell-demo-02 .demo-02-hero__visual { width:min(100%, 30rem); justify-self:end; }
.sorell-demo-02 .demo-02-hero__grid.is-layout-constrained > .demo-02-hero__visual { margin-block:0; }
.sorell-demo-02 .demo-02-hero__image { margin:0; }
.sorell-demo-02 .demo-02-hero__image img { width:100%; aspect-ratio:1/1; object-fit:cover; filter:contrast(1.15); }
.sorell-demo-02 .demo-02-hero__meta { margin-top:1.5rem; padding-top:1rem; border-top:2px solid var(--d2-ink); }
.sorell-demo-02 .demo-02-work { padding-block:clamp(7rem,12vw,12rem); }
.sorell-demo-02 .demo-02-journal { padding-block:clamp(6rem,11vw,11rem); }
.sorell-demo-02 .demo-02-work .demo-02-shell { width:min(calc(100% - clamp(4rem, 10vw, 10rem)), 1400px); max-width:none; margin-inline:auto; }
.sorell-demo-02 .demo-02-work .demo-02-project-query, .sorell-demo-02 .demo-02-work .demo-02-project-grid { width:100%; max-width:none; margin-inline:0; }
.sorell-demo-02 .demo-02-work .demo-02-project-query.is-layout-flow > * { max-width:none; }
.sorell-demo-02 .demo-02-section-head { align-items:flex-end; gap:1rem; margin-bottom:clamp(2.5rem,5vw,5rem); padding-bottom:.85rem; border-bottom:1px solid var(--d2-ink); }
.sorell-demo-02 .demo-02-section-head h2, .sorell-demo-02 .demo-02-capabilities h2 { margin:0; font-size:clamp(2.2rem,3.3vw,4rem); line-height:.85; }
.sorell-demo-02 .demo-02-project-grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); grid-template-areas:"featured featured side" "third fourth fifth"; gap:0; margin:0; padding:0; border:2px solid var(--d2-ink); list-style:none; }
.sorell-demo-02 .demo-02-project-grid > li { display:flex; margin:0; padding:clamp(1.5rem,2.5vw,3rem); border-right:1px solid var(--d2-ink); border-bottom:1px solid var(--d2-ink); }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(1) { grid-area:featured; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(2) { display:block; grid-area:side; align-self:start; border-right:0; border-bottom:0; }
.sorell-demo-02 .demo-02-project-grid > li > .demo-02-project-excerpt { display:none; }
.sorell-demo-02 .demo-02-project-excerpt p { margin:0; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(2) > .demo-02-project-excerpt { display:block; max-width:16rem; margin:1.5rem 0 0; font-size:1rem; line-height:1.45; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(3) { grid-area:third; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) { grid-area:fourth; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(5) { display:block; position:relative; grid-area:fifth; align-self:start; border-right:0; border-bottom:0; }
.sorell-demo-02 .demo-02-project-card { display:flex; flex:1; flex-direction:column; padding:0; border:0; }
.sorell-demo-02 .demo-02-project-grid > li:first-child .demo-02-project-info { order:-1; margin-bottom:clamp(2rem,4vw,4rem); }
.sorell-demo-02 .demo-02-project-grid > li:first-child .demo-02-project-image { flex:1; }
.sorell-demo-02 .demo-02-project-grid > li:not(:first-child) .demo-02-project-image { order:1; flex:0 0 auto; }
.sorell-demo-02 .demo-02-project-grid > li:not(:first-child) .demo-02-project-info { order:2; margin-top:1rem; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(3):not(:first-child) .demo-02-project-info { order:-1; margin:0 0 1rem; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-card { position:relative; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image { position:relative; height:calc(clamp(20rem, 24vw, 27rem) - 24px); margin-bottom:0; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image > a { display:block; height:100%; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image img { height:100%; aspect-ratio:auto; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image::after { content:""; position:absolute; inset:42% 0 0; background:linear-gradient(to bottom, transparent, rgba(0, 0, 0, .72)); pointer-events:none; }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(4):not(:first-child) .demo-02-project-info { position:relative; z-index:1; margin:-4.25rem 1rem 1rem; color:var(--d2-paper); }
.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-info .wp-block-post-title a { color:inherit; }
.sorell-demo-02 .demo-02-project-image { margin:0 0 .75rem; }
.sorell-demo-02 .demo-02-project-image img { width:100%; aspect-ratio:1/1; object-fit:cover; }
.sorell-demo-02 .demo-02-project-grid > li:first-child .demo-02-project-image img { aspect-ratio:2/1; }
.sorell-demo-02 .demo-02-project-grid > li:first-child .demo-02-project-card.is-layout-constrained > .demo-02-project-image { width:100%; max-width:none; margin-inline:0; }
.sorell-demo-02 .demo-02-project-info { align-items:start; gap:1rem; }
.sorell-demo-02 .demo-02-project-info .wp-block-post-title { margin:0; font-size:clamp(1rem,1.6vw,1.8rem); font-weight:800; letter-spacing:0; line-height:.9; text-transform:uppercase; }
.sorell-demo-02 .demo-02-project-info .wp-block-post-title a { text-decoration:none; }
.sorell-demo-02 .demo-02-project-info .wp-block-post-date { margin:0; font-size:.5rem; }
.sorell-demo-02 .demo-02-manifesto { position:relative; overflow:hidden; min-height:30rem; padding:clamp(5rem,8vw,8rem) 0 clamp(4rem,6vw,6rem); color:var(--d2-paper); background:var(--d2-ink); }
.sorell-demo-02 .demo-02-manifesto.is-layout-constrained > .demo-02-shell { position:relative; width:min(calc(100% - clamp(4rem,10vw,10rem)),1400px); max-width:none; min-height:inherit; margin-inline:auto; }
.sorell-demo-02 .demo-02-manifesto__title { max-width:66rem; margin:clamp(4rem,9vw,9rem) 0 0; font-size:clamp(3rem,5.6vw,6.75rem); line-height:.86; }
.sorell-demo-02 .demo-02-manifesto__title span { color:transparent; -webkit-text-stroke:1px var(--d2-paper); }
.sorell-demo-02 .demo-02-manifesto__number { position:absolute; right:0; top:-5rem; margin:0; color:rgba(255,77,0,.28); font-size:clamp(3rem,7vw,8rem); font-weight:900; letter-spacing:-.09em; }
.sorell-demo-02 .demo-02-manifesto__copy { position:absolute; top:85%; right:0; width:min(100%,22rem); max-width:none; margin:0; padding-left:1rem; border-left:2px solid var(--d2-orange); color:rgba(242,242,238,.76); font-size:1rem; font-style:italic; line-height:1.5; }
.sorell-demo-02 .demo-02-capabilities__grid, .sorell-demo-02 .demo-02-featured__grid { display:grid; grid-template-columns:1fr 1fr; }
.sorell-demo-02 .demo-02-capabilities__grid { width:100%; max-width:none; margin:0; }
.sorell-demo-02 .demo-02-capabilities__list { padding:clamp(4rem,6vw,6rem) clamp(2rem,4vw,4rem); }
.sorell-demo-02 .demo-02-capabilities__list h2 { margin-bottom:clamp(4rem,7vw,7rem); }
.sorell-demo-02 .demo-02-capabilities__list p { display:flex; justify-content:space-between; width:100%; margin:0; padding:clamp(1.25rem,2vw,2rem) 0; border-top:2px solid var(--d2-ink); font-size:clamp(.7rem,1vw,.9rem); font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.sorell-demo-02 .demo-02-capabilities__list p:last-child { border-bottom:2px solid var(--d2-ink); }
.sorell-demo-02 .demo-02-service-trigger { cursor:pointer; }
.sorell-demo-02 .demo-02-service-copy { display:none; }
.sorell-demo-02 .demo-02-service-trigger span { font-size:0; }
.sorell-demo-02 .demo-02-service-trigger span::before { content:"+"; font-size:1.4rem; font-weight:400; line-height:1; }
.sorell-demo-02 .demo-02-service-trigger:focus-visible { outline:2px solid var(--d2-orange); outline-offset:4px; }
.sorell-demo-02 .demo-02-capabilities__visual { padding:clamp(4rem,6vw,6rem) clamp(2rem,4vw,4rem); border-left:2px solid var(--d2-ink); }
.sorell-demo-02 .demo-02-capabilities__visual.is-layout-constrained > * { max-width:none; }
.sorell-demo-02 .demo-02-capabilities__visual figure { margin:0; }
.sorell-demo-02 .demo-02-capabilities__visual .demo-02-capability-media[hidden] { display:none; }
.sorell-demo-02 .demo-02-capability-media { position:relative; margin:0 0 2rem; overflow:hidden; }
.sorell-demo-02 .demo-02-capability-media::after { content:""; position:absolute; z-index:1; inset:0; background:rgba(0,0,0,.68); opacity:0; pointer-events:none; transition:opacity .25s ease; }
.sorell-demo-02 .demo-02-capability-media:hover::after,
.sorell-demo-02 .demo-02-capability-media:focus-within::after { opacity:1; }
.sorell-demo-02 .demo-02-capability-view { position:absolute; z-index:2; left:50%; top:50%; padding:.85rem 1.15rem; border:1px solid var(--d2-paper); color:var(--d2-paper); background:transparent; font:inherit; font-size:.65rem; font-weight:800; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; white-space:nowrap; opacity:0; cursor:pointer; transform:translate(-50%,-42%); transition:opacity .25s ease, transform .25s ease, color .2s ease, background-color .2s ease; }
.sorell-demo-02 .demo-02-capability-view[hidden] { display:none; }
.sorell-demo-02 .demo-02-capability-media:hover .demo-02-capability-view,
.sorell-demo-02 .demo-02-capability-media:focus-within .demo-02-capability-view { opacity:1; transform:translate(-50%,-50%); }
.sorell-demo-02 .demo-02-capability-view:hover,
.sorell-demo-02 .demo-02-capability-view:focus-visible { color:var(--d2-ink); background:var(--d2-paper); outline:2px solid var(--d2-orange); outline-offset:3px; }
.sorell-demo-02 .demo-02-capabilities__visual img { width:100%; aspect-ratio:1.45/1; object-fit:cover; }
.sorell-demo-02 .demo-02-featured { color:var(--d2-paper); background:var(--d2-orange); }
.sorell-demo-02 .demo-02-featured__grid { width:min(calc(100% - clamp(4rem,10vw,10rem)),1400px); max-width:none; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:clamp(7rem,14vw,17rem); align-items:center; margin-inline:auto; padding-block:clamp(5rem,9vw,9rem); }
.sorell-demo-02 .demo-02-featured__grid.is-layout-constrained > * { max-width:none; margin:0; }
.sorell-demo-02 .demo-02-featured__copy { align-self:center; padding:0; }
.sorell-demo-02 .demo-02-featured__copy > .demo-02-micro { display:inline-block; margin:0; padding:.45rem .65rem; border:1px solid currentColor; }
.sorell-demo-02 .demo-02-featured__copy h2 { margin:2rem 0; font-size:clamp(4rem,7vw,8rem); line-height:.76; }
.sorell-demo-02 .demo-02-featured__copy > p:not(.demo-02-micro) { max-width:18rem; font-size:clamp(.85rem,1vw,1rem); font-weight:700; line-height:1.35; text-transform:uppercase; }
.sorell-demo-02 .demo-02-featured__image-wrap { position:relative; align-self:center; margin:0 0 0 clamp(4rem,7vw,8rem); }
.sorell-demo-02 .demo-02-featured__image-wrap.is-layout-constrained > * { max-width:none; margin-inline:0; }
.sorell-demo-02 .demo-02-featured__image-wrap figure { margin:0; }
.sorell-demo-02 .demo-02-featured__image-wrap img { width:100%; aspect-ratio:1.2/1; object-fit:cover; filter:brightness(1.15); }
.sorell-demo-02 .demo-02-featured__tag { position:absolute; left:clamp(-3rem,-2vw,-1.5rem); bottom:clamp(-2rem,-1.5vw,-1rem); margin:0; padding:1rem; color:var(--d2-ink); background:var(--d2-paper); font-size:.62rem; font-weight:900; text-transform:uppercase; }
.sorell-demo-02 .demo-02-featured__tag { transition:color .2s ease, background-color .2s ease; }
.sorell-demo-02 .demo-02-featured__tag a { color:inherit; text-decoration:none; }
.sorell-demo-02 .demo-02-featured__tag:has(a:hover), .sorell-demo-02 .demo-02-featured__tag:has(a:focus-visible) { color:var(--d2-paper); background:var(--d2-ink); }
.sorell-demo-02 .demo-02-clients { overflow:hidden; padding:1.25rem 0; color:#333; background:var(--d2-ink); white-space:nowrap; }
.sorell-demo-02 .demo-02-clients p { margin:0; font-size:clamp(1.1rem,2.5vw,2.5rem); font-weight:900; letter-spacing:-.06em; text-transform:uppercase; }
.sorell-demo-02 .demo-02-journal { padding-block:clamp(7rem,11vw,11rem); }
.sorell-demo-02 .demo-02-journal > .demo-02-shell { width:min(calc(100% - clamp(4rem,10vw,10rem)),1400px); max-width:none; }
.sorell-demo-02 .demo-02-journal .demo-02-section-head { margin-bottom:clamp(3.5rem,6vw,6rem); border-bottom:0; }
.sorell-demo-02 .demo-02-journal .demo-02-section-head h2 { font-size:clamp(3.5rem,5vw,5.75rem); }
.sorell-demo-02 .demo-02-journal-query { min-height:0; }
.sorell-demo-02 .demo-02-journal-grid { display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:max-content; align-self:start; height:fit-content; min-height:0; margin:0; padding:0; border:2px solid var(--d2-ink); list-style:none; }
.sorell-demo-02 .demo-02-journal-grid > li { margin-block:0; }
.sorell-demo-02 .demo-02-journal-grid > li:not(:last-child) { border-right:2px solid var(--d2-ink); }
.sorell-demo-02 .demo-02-journal-card { display:grid; grid-template-rows:auto auto auto auto; align-content:start; gap:0; min-height:0; padding:clamp(2rem,2.3vw,2.5rem); padding-bottom:clamp(1rem,1.3vw,1.4rem); }
.sorell-demo-02 .demo-02-journal-card.is-layout-constrained > * { max-width:none; margin-inline:0; }
.sorell-demo-02 .demo-02-journal-card .wp-block-post-date { order:1; margin-bottom:clamp(1.25rem,1.8vw,2rem); color:#92928d; font-size:.6rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.sorell-demo-02 .demo-02-journal-card .wp-block-post-title { order:2; height:2.1em; margin:0 0 clamp(.5rem,.75vw,.8rem); overflow:hidden; font-size:clamp(1.15rem,1.55vw,1.7rem); font-weight:800; letter-spacing:0; line-height:1.05; text-transform:uppercase; }
.sorell-demo-02 .demo-02-journal-card .wp-block-post-title a { text-decoration:none; }
.sorell-demo-02 .demo-02-journal-card .wp-block-post-featured-image { order:3; margin:0 0 clamp(1.25rem,1.8vw,2rem); }
.sorell-demo-02 .demo-02-journal-card .wp-block-post-featured-image a { display:block; height:clamp(13rem,15vw,16rem); }
.sorell-demo-02 .demo-02-journal-card img { display:block; width:100%; height:100%; object-fit:cover; filter:contrast(1.1); }
.sorell-demo-02 .demo-02-journal-card .wp-block-read-more { order:4; align-self:start; display:inline-block; font-size:.58rem; font-weight:800; letter-spacing:0; text-decoration:none; text-transform:uppercase; transition:transform .2s ease; }
.sorell-demo-02 .demo-02-journal-card .wp-block-read-more::after { content:"+"; margin-left:1rem; color:var(--d2-orange); font-size:.95rem; }
.sorell-demo-02 .demo-02-journal-card .wp-block-read-more:hover,
.sorell-demo-02 .demo-02-journal-card .wp-block-read-more:focus-visible { transform:translateY(-3px); }

@media (prefers-reduced-motion:reduce) {
  .sorell-demo-02 .demo-02-journal-card .wp-block-read-more { transition:none; }
}
.sorell-demo-02 .demo-02-journal-card > * { width:100%; max-width:none; margin-inline:0; justify-self:stretch; }
.sorell-demo-02 .demo-02-journal-card .wp-block-post-date { justify-self:start; }
.sorell-demo-02 .demo-02-cta { padding:clamp(5rem,11vw,10rem) 1rem; }
.sorell-demo-02 .demo-02-cta h2 { margin:0 0 2rem; font-size:clamp(3rem,6vw,7rem); line-height:.83; }
.sorell-demo-02 .demo-02-cta .demo-02-button .wp-block-button__link { padding:.9rem 1.5rem; color:var(--d2-paper); background:var(--d2-ink); font-size:.72rem; transition:color .2s ease,background-color .2s ease; }
.sorell-demo-02 .demo-02-cta .demo-02-button .wp-block-button__link:hover,
.sorell-demo-02 .demo-02-cta .demo-02-button .wp-block-button__link:focus-visible { color:var(--d2-ink); background:var(--d2-paper); }
.sorell-demo-02 .demo-02-cta { border-bottom:0; }
.sorell-demo-02 .site-footer { padding:0; border-top:2px solid var(--d2-line); color:var(--d2-ink); background:var(--d2-paper); }
body.sorell-demo-02:not(.home) .site-footer { margin-top:clamp(3rem,6vw,6rem); }
.sorell-demo-02 .demo-02-footer { width:calc(100% - clamp(3rem,5vw,6rem)); max-width:none; gap:0; padding-block:clamp(4rem,6vw,6rem) 2rem; }
.sorell-demo-02 .demo-02-footer__top { display:grid; grid-template-columns:1.05fr 1fr 1fr 1.15fr; gap:clamp(2rem,5vw,6rem); min-height:12rem; }
.sorell-demo-02 .demo-02-footer__identity .site-footer__brand { display:inline-block; margin-bottom:2rem; color:inherit; font-size:clamp(1.15rem,1.5vw,1.5rem); font-weight:900; letter-spacing:-.06em; text-decoration:none; text-transform:uppercase; }
.sorell-demo-02 .demo-02-footer__identity p { max-width:14rem; margin:0; font-size:.6rem; font-weight:800; line-height:1.55; text-transform:uppercase; }
.sorell-demo-02 .demo-02-footer .site-footer__label { margin:0 0 1.5rem; color:#92928d; font-size:.55rem; font-weight:800; text-transform:uppercase; }
.sorell-demo-02 .demo-02-footer .social-menu { flex-direction:column; gap:.25rem; font-size:.65rem; font-weight:800; text-transform:uppercase; }
.sorell-demo-02 .demo-02-footer .social-menu a { text-decoration:none; }
.sorell-demo-02 .demo-02-footer__location { max-width:12rem; margin:0; font-size:.65rem; font-weight:800; line-height:1.45; text-transform:uppercase; }
.sorell-demo-02 .demo-02-footer__inquiries { text-align:right; }
.sorell-demo-02 .demo-02-footer__inquiries a { color:var(--d2-orange); font-size:clamp(1rem,1.45vw,1.5rem); font-weight:800; text-underline-offset:.18em; text-transform:uppercase; }
.sorell-demo-02 .demo-02-footer__bottom { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin-top:clamp(3rem,5vw,5rem); padding-top:2rem; border-top:1px solid var(--d2-line); font-size:.55rem; font-weight:800; text-transform:uppercase; }
.sorell-demo-02 .demo-02-footer__bottom .site-info { margin:0; color:inherit; font-size:inherit; }
.sorell-demo-02 .demo-02-footer__bottom .footer-menu { justify-content:flex-end; gap:2rem; }
.sorell-demo-02 .demo-02-footer__bottom a { color:inherit; text-decoration:none; }
@media (max-width:1000px) { .sorell-demo-02 .demo-02-hero { min-height:0; } .sorell-demo-02 .demo-02-hero__grid { grid-template-columns:1fr .72fr; gap:2rem; } .sorell-demo-02 .demo-02-project-grid { grid-template-columns:1fr 1fr; grid-template-areas:"featured featured" "side third" "fourth fifth"; } }

@media (max-width:820px) {
	.sorell-demo-02 .demo-02-hero__grid {
		grid-template-columns:1fr;
	}

	.sorell-demo-02 .demo-02-hero__grid.is-layout-constrained > .demo-02-hero__main {
		width:100%;
		max-width:none;
		margin-inline:0;
	}

	.sorell-demo-02 .demo-02-hero__visual {
		width:min(82%, 30rem);
		margin-top:3rem;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image,
	.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image > a {
		height:auto;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image img {
		height:auto;
		aspect-ratio:1 / 1;
	}

	.sorell-demo-02 .demo-02-manifesto {
		min-height:0;
	}

	.sorell-demo-02 .demo-02-manifesto__copy {
		position:static;
		width:min(100%, 22rem);
		margin:3rem 0 0 auto;
	}

	.sorell-demo-02 .demo-02-capabilities__grid {
		grid-template-columns:1fr;
	}

	.sorell-demo-02 .demo-02-capabilities__visual {
		border-top:1px solid var(--d2-line);
		border-left:0;
	}

	.sorell-demo-02 .demo-02-capability-view {
		padding:.6rem .8rem;
		font-size:.55rem;
	}

	.sorell-demo-02 .demo-02-featured__grid {
		grid-template-columns:minmax(0, .85fr) minmax(0, 1.15fr);
		gap:2rem;
	}

	.sorell-demo-02 .demo-02-featured__copy h2 {
		font-size:clamp(2.75rem, 7vw, 3.5rem);
	}

	.sorell-demo-02 .demo-02-featured__image-wrap {
		width:88%;
		justify-self:end;
		margin-left:0;
	}

	.sorell-demo-02 .demo-02-featured__tag {
		padding:.7rem .85rem;
		font-size:.52rem;
	}

	.sorell-demo-02 .demo-02-journal-grid {
		grid-template-columns:1fr;
	}

	.sorell-demo-02 .demo-02-journal-grid > li:not(:last-child) {
		border-right:0;
		border-bottom:2px solid var(--d2-ink);
	}

	.sorell-demo-02 .demo-02-cta {
		padding:4rem 1rem;
	}

	.sorell-demo-02 .demo-02-cta h2 {
		margin-bottom:1.25rem;
	}

	.sorell-demo-02 .demo-02-footer__top {
		grid-template-columns:repeat(2, minmax(0, 1fr));
		gap:3rem;
		min-height:0;
	}

	.sorell-demo-02 .demo-02-footer__inquiries {
		text-align:left;
	}
}

@media (max-width:700px) { .sorell-demo-02 .site-header__inner { min-height:auto; } .sorell-demo-02 .demo-02-hero { padding-block:4rem 5rem; } .sorell-demo-02 .demo-02-hero__grid, .sorell-demo-02 .demo-02-capabilities__grid, .sorell-demo-02 .demo-02-featured__grid { grid-template-columns:1fr; } .sorell-demo-02 .demo-02-hero__main { min-width:0; } .sorell-demo-02 .demo-02-hero__visual { width:min(82%,21rem); margin:3rem 0 0 auto; } .sorell-demo-02 .demo-02-display { font-size:clamp(3rem,17vw,4.25rem); } .sorell-demo-02 .demo-02-project-grid { grid-template-columns:1fr; grid-template-areas:"featured" "side" "third" "fourth" "fifth"; } .sorell-demo-02 .demo-02-journal-grid { grid-template-columns:1fr; } .sorell-demo-02 .demo-02-journal-grid > li:not(:last-child) { border-right:0; border-bottom:2px solid var(--d2-ink); } .sorell-demo-02 .demo-02-project-grid > li { border-right:0; } .sorell-demo-02 .demo-02-project-grid > li:first-child .demo-02-project-image img { aspect-ratio:1/1; } .sorell-demo-02 .demo-02-manifesto { min-height:0; } .sorell-demo-02 .demo-02-manifesto__number { position:static; margin-top:2rem; } .sorell-demo-02 .demo-02-manifesto__copy { margin:2rem 0 0; } .sorell-demo-02 .demo-02-capabilities__list, .sorell-demo-02 .demo-02-capabilities__visual, .sorell-demo-02 .demo-02-featured__copy { padding-inline:0; } .sorell-demo-02 .demo-02-capabilities__visual { border-left:0; border-top:1px solid var(--d2-line); } .sorell-demo-02 .demo-02-featured__image-wrap { margin-inline:0; } .sorell-demo-02 .demo-02-featured__tag { left:0; } .sorell-demo-02 .demo-02-journal-card { min-height:0; } .sorell-demo-02 .demo-02-footer__top { grid-template-columns:1fr 1fr; min-height:0; } .sorell-demo-02 .demo-02-footer__inquiries { text-align:left; } .sorell-demo-02 .demo-02-footer__bottom { align-items:flex-start; flex-direction:column; } .sorell-demo-02 .demo-02-footer__bottom .footer-menu { justify-content:flex-start; } }
@media (max-width:700px) { .sorell-demo-02 .demo-02-manifesto__copy { position:static; width:auto; margin:2rem 0 0; } }
@media (max-width:700px) { .sorell-demo-02 .demo-02-featured__image-wrap { margin-left:0; } }
@media (max-width:700px) { .sorell-demo-02 .demo-02-featured__tag { left:0; bottom:0; } }

@media (max-width:700px) {
	.sorell-demo-02 .site-container,
	.sorell-demo-02 .demo-02-shell,
	.sorell-demo-02 .demo-02-work .demo-02-shell,
	.sorell-demo-02 .demo-02-journal > .demo-02-shell,
	.sorell-demo-02 .demo-02-manifesto.is-layout-constrained > .demo-02-shell,
	.sorell-demo-02 .demo-02-featured__grid {
		width:calc(100% - 2rem);
	}

	.sorell-demo-02 .site-header__inner {
		min-height:2.5rem;
		padding-block:0;
		align-items:center;
		flex-direction:row;
	}

	.sorell-demo-02 .site-title,
	.sorell-demo-02 .primary-menu {
		font-size:.46rem;
	}

	.sorell-demo-02 .demo-02-hero {
		padding:2.25rem 0 3rem;
	}

	.sorell-demo-02 .demo-02-hero__grid {
		width:calc(100% - 2rem);
		grid-template-columns:1fr;
		gap:0;
	}

	.sorell-demo-02 .demo-02-display {
		font-size:clamp(2.35rem,12vw,2.9rem);
		line-height:.78;
	}

	.sorell-demo-02 .demo-02-hero__intro {
		max-width:19rem;
		margin:2rem 0 1rem;
		font-size:.54rem;
	}

	.sorell-demo-02 .demo-02-hero__visual {
		width:100%;
		margin:2rem 0 0;
	}

	.sorell-demo-02 .demo-02-hero__grid.is-layout-constrained > .demo-02-hero__visual {
		margin-top:2rem;
		margin-bottom:0;
	}

	.sorell-demo-02 .demo-02-hero__image img {
		aspect-ratio:1.05/1;
	}

	.sorell-demo-02 .demo-02-hero__meta {
		margin-top:.75rem;
		padding-top:.65rem;
	}

	.sorell-demo-02 .demo-02-work,
	.sorell-demo-02 .demo-02-journal {
		padding-block:4.5rem;
	}

	.sorell-demo-02 .demo-02-section-head {
		margin-bottom:2rem;
		padding-bottom:.65rem;
	}

	.sorell-demo-02 .demo-02-section-head h2,
	.sorell-demo-02 .demo-02-capabilities h2,
	.sorell-demo-02 .demo-02-journal .demo-02-section-head h2 {
		font-size:2rem;
	}

	.sorell-demo-02 .demo-02-project-grid {
		grid-template-columns:1fr;
		grid-template-areas:"featured" "side" "third" "fourth" "fifth";
		gap:1rem;
		border:0;
	}

	.sorell-demo-02 .demo-02-project-grid > li,
	.sorell-demo-02 .demo-02-project-grid > li:nth-child(2),
	.sorell-demo-02 .demo-02-project-grid > li:nth-child(5) {
		display:block;
		margin:0;
		padding:0;
		transform:none;
		border:0;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(2) > .demo-02-project-excerpt {
		position:static;
		display:block;
		max-width:none;
		margin:.75rem 0 0;
		font-size:.72rem;
		line-height:1.4;
	}

	.sorell-demo-02 .demo-02-project-grid > li:first-child .demo-02-project-info {
		margin-bottom:1rem;
	}

	.sorell-demo-02 .demo-02-project-grid > li:not(:first-child) .demo-02-project-info,
	.sorell-demo-02 .demo-02-project-grid > li:nth-child(3):not(:first-child) .demo-02-project-info {
		margin:.75rem 0 0;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(3):not(:first-child) .demo-02-project-info {
		order:2;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image {
		height:auto;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image > a {
		height:auto;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .demo-02-project-image img {
		height:auto;
		aspect-ratio:1/1;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(4):not(:first-child) .demo-02-project-info {
		position:absolute;
		z-index:1;
		right:1rem;
		bottom:1rem;
		left:1rem;
		width:auto;
		margin:0;
	}

	.sorell-demo-02 .demo-02-project-grid > li:nth-child(4) .wp-block-post-date {
		flex-shrink:0;
	}

	.sorell-demo-02 .demo-02-project-info .wp-block-post-title {
		font-size:1rem;
	}

	.sorell-demo-02 .demo-02-project-info {
		width:100%;
		justify-content:space-between;
	}

	.sorell-demo-02 .demo-02-project-grid > li:first-child .demo-02-project-image img {
		aspect-ratio:1.35/1;
	}

	.sorell-demo-02 .demo-02-manifesto {
		padding:3.5rem 0;
	}

	.sorell-demo-02 .demo-02-manifesto__title {
		max-width:100%;
		margin:3rem 0 0;
		font-size:clamp(2.1rem,10.5vw,2.75rem);
		line-height:.9;
	}

	.sorell-demo-02 .demo-02-manifesto__number {
		position:absolute;
		top:-5rem;
		right:0;
		font-size:1.75rem;
	}

	.sorell-demo-02 .demo-02-manifesto__copy {
		position:static;
		width:auto;
		margin:2rem 0 0;
		font-size:.8rem;
	}

	.sorell-demo-02 .demo-02-capabilities__grid {
		grid-template-columns:minmax(0,1fr);
	}

	.sorell-demo-02 .demo-02-capabilities__grid > * {
		min-width:0;
		margin-block:0;
	}

	.sorell-demo-02 .demo-02-capabilities__list,
	.sorell-demo-02 .demo-02-capabilities__visual {
		padding:3.5rem 1rem;
	}

	.sorell-demo-02 .demo-02-capabilities__list h2 {
		margin-bottom:2rem;
		font-size:1.4rem;
	}

	.sorell-demo-02 .demo-02-capabilities__list p {
		padding:1rem 0;
		font-size:.62rem;
	}

	.sorell-demo-02 .demo-02-capabilities__visual {
		padding:1.5rem 1rem 2.5rem;
		border-top:1px solid var(--d2-line);
	}

	.sorell-demo-02 .demo-02-capabilities__visual figure {
		margin:0 0 1rem;
	}

	.sorell-demo-02 .demo-02-featured__grid {
		grid-template-columns:minmax(0,1fr);
		gap:2rem;
		padding-block:3.5rem;
	}

	.sorell-demo-02 .demo-02-featured__grid > * {
		min-width:0;
	}

	.sorell-demo-02 .demo-02-featured__copy h2 {
		margin:1.5rem 0;
		font-size:clamp(2.45rem,11vw,3rem);
	}

	.sorell-demo-02 .demo-02-featured__image-wrap {
		display:block;
		width:100%;
		margin:0;
	}

	.sorell-demo-02 .demo-02-featured__image-wrap figure,
	.sorell-demo-02 .demo-02-featured__image-wrap img {
		display:block;
		width:100%;
	}

	.sorell-demo-02 .demo-02-featured__image-wrap img {
		aspect-ratio:1.15/1;
	}

	.sorell-demo-02 .demo-02-featured__tag {
		left:0;
		bottom:0;
		padding:.7rem .8rem;
		font-size:.52rem;
	}

	.sorell-demo-02 .demo-02-clients {
		padding:.85rem 0;
	}

	.sorell-demo-02 .demo-02-journal .demo-02-section-head {
		margin-bottom:2rem;
	}

	.sorell-demo-02 .demo-02-journal-grid {
		grid-template-columns:1fr;
	}

	.sorell-demo-02 .demo-02-journal-card {
		padding:1rem;
	}

	.sorell-demo-02 .demo-02-journal-card .wp-block-post-date {
		margin-bottom:.75rem;
	}

	.sorell-demo-02 .demo-02-journal-card .wp-block-post-title {
		height:auto;
		min-height:2.1em;
		margin-bottom:.75rem;
		font-size:1rem;
	}

	.sorell-demo-02 .demo-02-journal-card .wp-block-post-featured-image {
		margin-bottom:.75rem;
	}

	.sorell-demo-02 .demo-02-journal-card .wp-block-post-featured-image a {
		height:11rem;
	}

	.sorell-demo-02 .sorell-standard-page .sorell-page-content h2 {
		max-width:100%;
		font-size:clamp(1.45rem,7.5vw,2rem);
		line-height:1.1;
		white-space:normal;
	}

	.sorell-demo-02 .demo-02-cta {
		padding:3.5rem 1rem;
	}

	.sorell-demo-02 .demo-02-cta h2 {
		margin-bottom:1.25rem;
		font-size:2.35rem;
	}

	.sorell-demo-02 .demo-02-cta .demo-02-button .wp-block-button__link {
		padding:.65rem 1rem;
		font-size:.58rem;
	}

	.sorell-demo-02 .demo-02-footer {
		width:calc(100% - 2rem);
		padding-block:3rem 1.5rem;
	}

	.sorell-demo-02 .demo-02-footer__top {
		grid-template-columns:minmax(0, 1fr);
		gap:2.5rem 1.5rem;
	}

	.sorell-demo-02 .demo-02-footer__identity .site-footer__brand {
		margin-bottom:1.25rem;
	}

	.sorell-demo-02 .demo-02-footer__inquiries {
		text-align:left;
	}

	.sorell-demo-02 .demo-02-footer__inquiries a {
		font-size:.82rem;
		overflow-wrap:anywhere;
	}

	.sorell-demo-02 .demo-02-footer__bottom {
		align-items:flex-start;
		flex-direction:column;
		margin-top:3rem;
	}

	.sorell-demo-02 .demo-02-footer__bottom .footer-menu {
		justify-content:flex-start;
		gap:1rem;
	}
}

@media (max-width:520px) {
	.sorell-demo-02 .sorell-home__content,
	.sorell-demo-02 .sorell-home__content > *,
	.sorell-demo-02 .demo-02-hero__grid,
	.sorell-demo-02 .demo-02-hero__main,
	.sorell-demo-02 .demo-02-hero__visual {
		min-width:0;
		max-width:100%;
	}

	.sorell-demo-02 .demo-02-hero__intro {
		max-width:30rem;
		font-size:.72rem;
		line-height:1.4;
		letter-spacing:0;
		word-spacing:normal;
	}

	.sorell-demo-02 .demo-02-hero__visual {
		width:100%;
		margin-right:0;
	}
}

/* Shared blog index — Demo 02 visual identity. */
body:is(.blog, .single-post, .archive, .search, .error404, .page):not(.home).sorell-demo-02 {
	--journal-background: var(--d2-paper);
	--journal-surface: var(--d2-paper);
	--journal-text: var(--d2-ink);
	--journal-heading: var(--d2-ink);
	--journal-muted: #6e6e69;
	--journal-border: var(--d2-ink);
	--journal-accent: var(--d2-orange);
	--journal-accent-contrast: var(--d2-paper);
	--journal-card-border-width: 2px;
	--journal-heading-border-width: 2px;
	--journal-heading-weight: 900;
	--journal-heading-spacing: -.085em;
	--journal-title-weight: 800;
	--journal-title-spacing: -.055em;
	--journal-title-transform: uppercase;
	--journal-image-filter: contrast(1.08);
}

/* Projects archive — visual identity only. */
.sorell-demo-02 .projects-grid .project-card__thumbnail {
	background:var(--d2-ink);
}

.sorell-demo-02 .projects-grid .project-card__thumbnail img {
	transition:transform .25s ease, opacity .25s ease;
}

.sorell-demo-02 .projects-grid .project-card__thumbnail:hover img,
.sorell-demo-02 .projects-grid .project-card__thumbnail:focus-visible img {
	transform:scale(1.015);
	opacity:.88;
}

.sorell-demo-02 .projects-archive .project-card__title {
	font-size:clamp(1.2rem,2vw,1.65rem);
	font-weight:800;
	letter-spacing:0;
	line-height:1.05;
	text-transform:uppercase;
}

.sorell-demo-02 .projects-archive .project-card__title a:hover,
.sorell-demo-02 .projects-archive .project-card__title a:focus-visible {
	color:var(--d2-orange);
}

/* Motion — "Signal": sharp lateral entries, quick staggers, a stronger project hover. */
.sorell-demo-02 { --motion-duration:.6s; --motion-ease:cubic-bezier(.2,.9,.1,1); --motion-distance:20px; }
.sorell-demo-02 .demo-02-project-info .wp-block-post-title { transition:transform .25s cubic-bezier(.2,.9,.1,1); }
.sorell-demo-02 .demo-02-project-info .wp-block-post-title a { transition:color .2s ease; }
.sorell-demo-02 .demo-02-project-image img { transition:opacity .25s ease; }
.sorell-demo-02 .demo-02-project-card:focus-within .demo-02-project-info .wp-block-post-title a { color:var(--d2-orange); }
@media (hover:hover) and (pointer:fine) {
	.sorell-demo-02 .demo-02-project-card:hover .demo-02-project-info .wp-block-post-title { transform:translateX(6px); }
	.sorell-demo-02 .demo-02-project-card:hover .demo-02-project-info .wp-block-post-title a { color:var(--d2-orange); }
	.sorell-demo-02 .demo-02-project-card:hover .demo-02-project-image img { opacity:.86; }
}
@media (prefers-reduced-motion:reduce) {
	.sorell-demo-02 .demo-02-project-info .wp-block-post-title,
	.sorell-demo-02 .demo-02-project-info .wp-block-post-title a,
	.sorell-demo-02 .demo-02-project-image img { transition:none; }
	.sorell-demo-02 .demo-02-project-card:hover .demo-02-project-info .wp-block-post-title { transform:none; }
}
