*{box-sizing:border-box}html{scroll-behavior:smooth}body.si-site{margin:0;font-family:Arial,Helvetica,sans-serif;background:#fff;color:#252525;font-size:14px;line-height:1.8}a{color:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #cc6f2a;outline-offset:5px}.skip-link{position:fixed;top:-100px;left:12px;z-index:100;background:#fff;color:#111;padding:10px}.skip-link:focus{top:10px}.site-header{background:#000;color:#fff;position:sticky;top:0;z-index:20}.admin-bar .site-header{top:32px}.contact-bar{min-height:43px;border-bottom:1px solid #111;display:flex;align-items:center;justify-content:space-between;padding:8px 30px;font-size:12px;gap:16px}.contact-bar a{text-decoration:none}.social-links{display:flex;flex-wrap:wrap;align-items:center;gap:24px}.contact-bar .social-links{font-size:10px;letter-spacing:.2px}.navigation-bar{display:flex;align-items:center;min-height:60px;padding:0 40px;gap:28px}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{display:block;width:205px;height:42px;object-fit:contain}.navigation-bar nav{margin-left:auto;margin-right:0}.nav-list{display:flex;align-items:center;gap:32px;list-style:none;margin:0;padding:0}.nav-list>li>a,.work-menu>summary{text-decoration:none;font-size:11px;letter-spacing:2px;text-transform:uppercase;white-space:nowrap}.nav-list>li>a:hover,.work-menu>summary:hover{color:#ccc}.work-menu{position:relative}.work-menu summary{cursor:pointer;list-style:none}.work-menu summary::-webkit-details-marker{display:none}.work-menu summary:after{content:none}.work-menu ul{position:absolute;top:26px;left:-22px;list-style:none;padding:12px 0;margin:0;background:#101010;width:260px;box-shadow:0 10px 30px #0004}.work-menu ul a{display:block;padding:10px 22px;text-decoration:none;font-size:12px}.work-menu ul a:hover{background:#282828}.menu-toggle{display:none}.home-intro{background:#adadad;color:#fff;text-align:center;padding:40px 24px 44px;margin:0!important}.si-site h1{font-size:40px;font-weight:700;line-height:1.25;margin:0 auto;max-width:1200px;letter-spacing:0}.home-intro p{font-size:14px;line-height:25px;max-width:1000px;margin:48px auto 40px}.home-intro .wp-block-buttons{margin:0;display:flex;justify-content:center}.home-intro .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;width:204px;min-height:49px;padding:12px 20px;border-radius:100px;background:#c3c3c3;color:#fff;font-size:13px;letter-spacing:.5px;font-weight:600;box-shadow:0 6px 20px #0003;text-decoration:none}.home-intro .wp-block-button__link:hover{background:#cc6f2a}.portfolio-section{margin:0!important}.portfolio-filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-around;gap:8px 16px;padding:0 40px 28px;background:#adadad;color:#fff}.portfolio-filters button{border:0;border-bottom:2px solid transparent;padding:8px 0;background:none;color:inherit;font-size:13px;font-weight:600;cursor:pointer}.portfolio-filters button[aria-pressed=true]{border-bottom-color:#fff}.portfolio-filters button:hover{border-bottom-color:#fff8}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}.portfolio-card{position:relative;aspect-ratio:1;overflow:hidden}.portfolio-card[hidden]{display:none}.portfolio-card>a{display:block;width:100%;height:100%;text-decoration:none}.portfolio-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .3s}.portfolio-card h2{position:absolute;inset:auto 0 0;margin:0;padding:44px 24px 24px;background:linear-gradient(transparent,#000c);color:#fff;font-size:14px;line-height:1.5;font-weight:600;letter-spacing:1px;text-transform:uppercase;opacity:0;transition:opacity .2s}.portfolio-card:hover h2,.portfolio-card:focus-within h2{opacity:1}.portfolio-card:hover img{transform:scale(1.025)}.portfolio-count{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.project-intro{background:#b4b4b4;color:#fff;padding:40px 24px;text-align:center;margin:0!important}.project-intro h1{max-width:1250px}.project-intro hr{border:0;border-top:1px solid #ddd7;width:100px;margin:14px auto 18px}.project-intro p{max-width:700px;line-height:25px;margin:0 auto 18px}.project-intro p:last-child{margin-bottom:0}.project-image{margin:0!important;line-height:0}.project-image img{width:100%;height:auto;display:block}.project-video{margin:0;background:#000;aspect-ratio:16/9}.project-video iframe{display:block;width:100%;height:100%;border:0}.related-work{padding-top:50px;margin:0!important}.share-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;padding:30px 20px}.share-links a{font-size:12px;text-decoration:none;border-bottom:1px solid #bbb}.site-footer{background:#050505;color:#bbb;padding:40px 30px 24px;text-align:center}.site-footer .social-links{justify-content:center;font-size:11px}.site-footer a{text-decoration:none}.site-footer p{font-size:12px;margin:20px 0 0}.standard-content{padding:50px 24px;max-width:1200px;margin:auto}.standard-content img{max-width:100%;height:auto}@media(hover:none){.portfolio-card h2{opacity:1;font-size:12px;padding:30px 12px 12px}}@media(min-width:1800px){.portfolio-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.nav-list{gap:18px}.navigation-bar{padding:0 24px}.nav-list>li>a,.work-menu>summary{letter-spacing:1px;font-size:10px}.contact-bar .social-links{gap:14px}.portfolio-filters{justify-content:center;gap:6px 24px}}@media(max-width:850px){.contact-bar .social-links{display:none}.navigation-bar{min-height:64px;justify-content:space-between;flex-wrap:wrap;padding:10px 20px}.brand img{width:180px;height:37px}.menu-toggle{display:block;background:none;color:#fff;border:1px solid #444;padding:6px 12px;cursor:pointer}.navigation-bar nav{display:none;width:100%;margin:0}.navigation-bar nav.is-open{display:block}.nav-list{display:block;padding:10px 0}.nav-list>li{padding:9px 0}.work-menu ul{position:static;width:auto;box-shadow:none;margin-top:10px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.si-site h1{font-size:32px}.home-intro p br{display:none}.portfolio-filters{padding:0 20px 24px}.home-intro{padding-top:35px}.project-intro{padding:35px 24px}.project-intro p{font-size:14px}.contact-bar{padding:7px 20px}.admin-bar .site-header{top:46px}}@media(max-width:480px){.contact-bar{font-size:10px;min-height:34px;padding:6px 12px}.si-site h1{font-size:28px}.home-intro h1 br{display:none}.home-intro p{margin:28px auto;font-size:13px}.home-intro{padding:32px 20px}.portfolio-filters{gap:4px 18px}.portfolio-filters button{font-size:11px;padding:7px 0}.project-intro h1{font-size:28px}.project-intro p{font-size:13px;line-height:23px}.site-footer .social-links{gap:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

body.si-site.single-my-product, .single-my-product #main, .single-my-product .site-footer {background:#000;color:#fff}
.project-intro .share-links{padding:8px 0 0;gap:24px;margin:0 auto;max-width:700px}
.project-intro .share-links a{color:#ddd;border:0;font-size:12px}
.project-intro .share-links a:hover{color:#fff;text-decoration:underline}
.project-carousel{padding:50px 10px 30px;margin:0 auto;background:#000;color:#fff;max-width:1200px}
.carousel-viewport{overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
.carousel-viewport::-webkit-scrollbar{display:none}
.carousel-track{display:flex;list-style:none;margin:0;padding:0;width:100%;gap:0}
.carousel-card{flex:0 0 25%;width:25%;height:auto;aspect-ratio:1}
.carousel-card img{width:100%;height:100%;object-fit:cover}
.carousel-card h2{font-size:13px}
@media(max-width:1279px){.carousel-card{flex-basis:33.333333%;width:33.333333%}}
@media(max-width:1023px){.carousel-card{flex-basis:50%;width:50%}}
@media(max-width:479px){.carousel-card{flex-basis:100%;width:100%}.project-carousel{padding-top:30px}}

/* Use the same line box for navigation links and the Work disclosure. */
.nav-list>li>a,.work-menu>summary{display:block;line-height:20px;padding:0;margin:0}.work-menu{margin:0;padding:0}

/* Active section box without shifting the navigation text. */
.nav-list>.is-current-section>a,.nav-list>.is-current-section>.work-menu>summary{background:#252525;box-shadow:0 0 0 8px #252525;color:#fff}


/* Converted pages retain their original sections, media and custom backgrounds. */
.converted-page{background:#000;color:#fff;padding:30px 0}.converted-page>article>h1{text-align:center;padding:30px 20px}.converted-row{max-width:1200px;margin:0 auto;padding:25px 10px}.converted-row.full-width-row,.project-media-row{max-width:none;padding:0}.converted-row.inner-row{padding:20px 0}.converted-row .wp-block-columns{display:flex;gap:24px;margin:0}.converted-row .wp-block-column{flex:1;min-width:0}.converted-row .wp-block-heading{line-height:1.25;margin:0 0 24px}.converted-row h2{font-size:30px}.converted-row h3{font-size:23px}.converted-row h4{font-size:20px}.converted-row p{line-height:1.8;margin:0 0 20px}.converted-row img{max-width:100%;height:auto}.converted-row figure{margin:0}.converted-row iframe{max-width:100%}.converted-page .wp-block-details{background:#181818;border-bottom:1px solid #444;margin:0 0 10px;padding:0 20px}.converted-page .wp-block-details>summary{cursor:pointer;padding:16px 0;font-size:15px;font-weight:600}.converted-page .wp-block-details p{padding:0 0 15px}.converted-page .team-intro{text-align:center}.converted-page .about-portrait{width:220px;height:220px;object-fit:cover;border-radius:50%}.project-intro>.wp-block-columns{display:block;margin:0}.project-intro>.wp-block-columns>.wp-block-column{margin:0}.project-media-row .wp-block-columns{gap:0}.project-media-row p{margin:0;line-height:1.8}.project-media-row img{display:block;width:100%;height:auto}.project-media-row iframe{width:100%;aspect-ratio:16/9;height:auto;border:0}.share-separator{width:100px;border:0;border-top:1px solid #ddd7;margin:20px auto}.ideas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.ideas-grid img{width:100%;height:auto}.ideas-grid a{text-decoration:none}.ideas-grid h2{font-size:24px;margin-top:20px}.work-menu a[aria-current=page]{background:#252525}.converted-page a:hover{color:#cc6f2a}@media(max-width:781px){.converted-row .wp-block-columns{flex-direction:column;gap:24px}.converted-row{padding:25px 20px}.converted-row .wp-block-column{flex-basis:auto!important;padding-left:0!important;padding-right:0!important}.converted-row .hide-on-small{display:none}.project-media-row{padding:0}.converted-row[style*="min-height"]{min-height:0!important}.ideas-grid{grid-template-columns:1fr}.converted-row h1{font-size:34px}.converted-row h2{font-size:26px}}


/* Keep thumbnail captions compact, including inside converted page rows. */
.si-site .portfolio-card h2{inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1.5;text-align:center;letter-spacing:1px;margin:0;padding:20px;background:transparent;pointer-events:none}
.si-site .portfolio-card img{transition:transform .3s,filter .3s}
.si-site .portfolio-card:hover img,.si-site .portfolio-card:focus-within img{filter:brightness(.45)}
/* Work landing pages: original 1200px composition and Ronneby type sizes. */
.si-work-section .converted-page{padding:0}
.si-work-section .converted-page>article>.converted-row{max-width:1200px;padding:0 10px}
.si-work-section .converted-page>article>.converted-row:first-child>.wp-block-columns{min-height:650px;align-items:stretch}
.si-work-section .converted-page>article>.converted-row:first-child>.wp-block-columns>.wp-block-column{display:flex;align-items:center}
.si-work-section .converted-row.inner-row{width:100%;padding:0}
.si-work-section .converted-row .wp-block-columns{gap:20px}
.si-work-section .converted-row .wp-block-column{flex-grow:1}
.si-work-section .converted-row h1{font-size:60px;line-height:65px;font-weight:700;margin:0;letter-spacing:0}
.si-work-section .converted-row h1:after{content:"";display:block;width:100px;border-top:1px solid #aaa;margin-top:14px;margin-bottom:36px}
.si-work-section .inner-row p{white-space:pre-line;margin:0 0 40px;font-size:14px;line-height:25px}
.si-work-section .converted-page>article>.converted-row:nth-child(2)>.wp-block-columns>.wp-block-column:first-child{padding-top:30px}
.si-work-section .converted-row h4{font-size:25px;line-height:30px;letter-spacing:5px;font-weight:700;margin:0 0 8px}
.si-work-section .converted-row p{font-size:14px;line-height:25px}
.si-work-section .converted-row figure img{display:block;border-radius:4px}
.si-work-section .converted-page>article>.full-width-row{max-width:none;padding:0;scroll-margin-top:110px}
@media(max-width:781px){
 .si-work-section .converted-page>article>.converted-row{padding-left:20px;padding-right:20px}
 .si-work-section .converted-page>article>.converted-row:first-child>.wp-block-columns{min-height:550px}
 .si-work-section .converted-row.inner-row{padding:50px 0}
 .si-work-section .inner-row>.wp-block-columns>.wp-block-column:empty{display:none}
 .si-work-section .converted-row h1{font-size:40px;line-height:40px}
 .si-work-section .converted-row h4{font-size:25px;line-height:30px}
 .si-work-section .converted-page>article>.full-width-row{padding:0;scroll-margin-top:110px}
}

/* Compact homepage category navigation. */
.home .portfolio-filters{justify-content:center;gap:8px 30px}
@media(max-width:600px){.home .portfolio-filters{gap:6px 18px}}

/* Black homepage canvas, preserving the grey introduction and category bar. */
body.si-site.home,.home #main,.home .portfolio-grid{background:#000}
.home .home-intro,.home .portfolio-filters{background:#adadad}

/* Fit the entire thumbnail caption on one centred line. */
.si-site .portfolio-card h2{font-size:10px;letter-spacing:0;padding:20px 12px;white-space:nowrap}
.thumbnail-title-text{display:block;flex-shrink:0;white-space:nowrap}

/* Original Services & Software icons, retained as five small SVGs. */
.page-id-14018 .service-icon-heading{display:flex;align-items:center;gap:18px}
.service-heading-icon{display:inline-block;flex:0 0 42px;width:42px;height:42px;background:center/contain no-repeat}
.icon-box-isometric{background-image:url("icons/box-isometric.svg")}
.icon-cloudy-rain{background-image:url("icons/cloudy-rain.svg")}
.icon-pen{background-image:url("icons/pen.svg")}
.icon-videocamera{background-image:url("icons/videocamera.svg")}
.icon-pc-wifi{background-image:url("icons/pc-wifi.svg")}

/* Services review: original copy and icons in a more structured layout. */
.services-design{max-width:1200px;margin:auto;padding:30px 24px 0;color:#eee}
.services-introduction{text-align:center;padding:30px 0 58px}
.services-design .services-eyebrow{font-size:10px;letter-spacing:2.5px;color:#c2a47c;font-weight:700;margin:0 0 18px}
.services-introduction h1{font-size:48px;line-height:1.2;margin-bottom:22px}
.services-introduction>p:last-child{color:#aaa;font-size:16px;line-height:1.8;margin:0}
.service-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.service-card{position:relative;background:#121212;border:1px solid #303030;border-radius:8px;padding:36px;overflow:hidden}
.service-number{position:absolute;right:26px;top:22px;color:#555;font-size:12px;letter-spacing:2px}
.services-design .service-icon-heading{display:flex;flex-direction:column;align-items:flex-start;gap:24px;font-size:24px;line-height:1.3;max-width:390px;margin:0 0 16px}
.services-design .service-heading-icon{width:48px;height:48px;flex-basis:48px}
.service-card p{font-size:14px;line-height:1.8;color:#aaa;margin:0 0 20px}
.service-card .service-tagline{color:#ddd;font-size:14px;min-height:50px}
.service-tagline strong{font-weight:500}
.service-capabilities{list-style:none;padding:0;margin:24px 0;display:flex;flex-wrap:wrap;gap:8px}
.service-capabilities li{font-size:11px;line-height:1.5;border:1px solid #333;border-radius:3px;padding:6px 9px;color:#ccc;background:#181818}
.service-more{border-top:1px solid #333;padding-top:16px}
.service-more summary{cursor:pointer;font-size:12px;color:#c2a47c;width:fit-content}
.service-more[open] summary{margin-bottom:20px}
.services-software{margin-top:48px;padding:36px;background:#0c0c0c;border:1px solid #292929;border-radius:8px}
.software-intro{display:flex;align-items:center;gap:22px;margin-bottom:30px}
.software-intro .services-eyebrow{margin-bottom:6px}
.software-intro h2{font-size:28px;margin:0;line-height:1.2}
.software-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.software-group h3{font-size:12px;color:#eee;margin:0 0 15px}
.software-group ul{list-style:none;margin:0;padding:0;color:#999;font-size:13px;line-height:2}
.services-contact{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:56px 0 24px}
.services-contact h2{font-size:32px;line-height:1.2;margin:0 0 12px}
.services-contact p{color:#aaa;margin:0}
.services-contact a{border:1px solid #8b714f;border-radius:4px;padding:13px 24px;font-size:13px;text-decoration:none;color:#dfc29c;white-space:nowrap}
.services-contact a:hover{background:#241e16}
@media(max-width:760px){.service-card-grid{grid-template-columns:1fr}.service-card{padding:28px}.services-introduction h1{font-size:34px}.software-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.services-software{padding:26px}.services-contact{align-items:flex-start;flex-direction:column}.services-design{padding:15px 20px 0}.service-card .service-tagline{min-height:0}}

/* About Me: portrait-led companion to the Services design. */
.about-design{max-width:1200px;margin:0 auto;padding:0 24px;color:#eee}
.about-hero{position:relative;isolation:isolate;min-height:550px;display:flex;align-items:center;border:1px solid #242424;border-radius:8px;overflow:hidden;background:#080808}
.about-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;z-index:-2}
.about-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080808 0%,#080808e6 25%,#08080866 48%,transparent 68%);z-index:-1}
.about-hero-copy{width:49%;padding:56px 42px}
.about-design .about-kicker{font-size:10px;font-weight:700;letter-spacing:2.5px;color:#c2a47c;margin:0 0 18px}
.about-hero h1{font-size:54px;line-height:1.1;margin:0 0 24px}
.about-hero-copy>p:not(.about-kicker){color:#ccc;font-size:17px;line-height:1.8;margin:0 0 30px}
.about-button{display:inline-block;text-decoration:none;border:1px solid #8b714f;border-radius:4px;padding:12px 18px;color:#dfc29c;font-size:12px}
.about-button:hover{background:#241e16}
.about-facts{display:grid;grid-template-columns:repeat(3,1fr);padding:30px 0;margin-bottom:22px;border-bottom:1px solid #292929}
.about-facts>div{padding:8px 26px;border-right:1px solid #292929}.about-facts>div:last-child{border:0}
.about-facts strong,.about-facts span{display:block}.about-facts strong{font-size:25px;font-weight:500;color:#eee}.about-facts span{font-size:12px;color:#999;margin-top:4px}
.about-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.about-panel{background:#121212;border:1px solid #303030;border-radius:8px;padding:34px}
.about-panel h2{font-size:25px;line-height:1.3;margin:0 0 24px;font-weight:600}
.about-panel p{font-size:14px;line-height:1.85;color:#aaa;margin:0 0 20px}.about-panel p:last-child{margin-bottom:0}.about-panel strong{color:#ddd;font-weight:500}
.about-section-0,.about-section-5{grid-column:1/-1}.about-section-0{background:transparent;border:0;padding:26px 10px}.about-section-0 h2{max-width:700px;font-size:30px}.about-section-0 p{max-width:980px}
.about-tools{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 24px}.about-tools li{border:1px solid #333;background:#181818;padding:5px 9px;border-radius:3px;font-size:11px;color:#ccc}
.about-section-5{margin-top:10px;background:#0c0c0c}.about-section-5 a{color:#dfc29c;text-underline-offset:4px}.about-section-5 p:last-child{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:12px}
@media(max-width:760px){.about-design{padding:0 20px}.about-hero{min-height:660px;align-items:flex-end}.about-hero>img{height:420px;object-position:65% top}.about-hero:after{background:linear-gradient(0deg,#080808 0%,#080808 28%,transparent 72%)}.about-hero-copy{width:100%;padding:30px 24px}.about-hero h1{font-size:40px}.about-hero-copy>p:not(.about-kicker){font-size:15px}.about-facts{gap:10px}.about-facts>div{padding:6px}.about-facts strong{font-size:18px}.about-facts span{font-size:10px}.about-sections{grid-template-columns:1fr}.about-panel{padding:26px}.about-section-0{padding:20px 0}.about-panel h2,.about-section-0 h2{font-size:24px}}

/* Separate the About hero copy from the portrait. */
@media(min-width:761px){.about-hero>img{inset:0 0 0 auto;width:75%;object-position:right center}.about-hero-copy{width:55%;padding:64px 48px}.about-hero:after{background:linear-gradient(90deg,#080808 0%,#080808 30%,#080808cc 43%,transparent 65%)}.about-hero-copy>p:not(.about-kicker){font-size:17px;line-height:1.85;margin-bottom:34px}.about-hero h1{margin-bottom:28px}}
@media(min-width:761px) and (max-width:1000px){.about-hero-copy{padding:48px 30px}.about-hero-copy>p:not(.about-kicker){font-size:14px}.about-hero h1{font-size:44px}}

/* Accessible social icons retain the original link destinations. */
.si-site a.si-social-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border:0;padding:6px;text-decoration:none;transition:opacity .2s}.si-social-icon:hover{opacity:.65}.si-social-icon span{display:block;width:20px;height:20px;background:center/contain no-repeat}.contact-bar .social-links{gap:12px}.about-section-5 p:last-child{gap:12px}
.si-social-icon .social-facebook{background-image:url("icons/social-facebook.svg")}
.si-social-icon .social-instagram{background-image:url("icons/social-instagram.svg")}
.si-social-icon .social-linkedin{background-image:url("icons/social-linkedin.svg")}
.si-social-icon .social-pinterest{background-image:url("icons/social-pinterest.svg")}
.si-social-icon .social-behance{background-image:url("icons/social-behance.svg")}
.si-social-icon .social-youtube{background-image:url("icons/social-youtube.svg")}
.si-social-icon .social-x{background-image:url("icons/social-x.svg")}
.si-social-icon .social-soundcloud{background-image:url("icons/social-soundcloud.svg")}

/* FAQ: grouped, accessible native accordions. */
.faq-design{max-width:1200px;margin:auto;padding:30px 24px;color:#eee}
.faq-intro{text-align:center;padding:30px 0 40px}
.faq-design .faq-kicker{color:#c2a47c;font-size:10px;font-weight:700;letter-spacing:2.4px;margin:0 0 18px}
.faq-intro h1{font-size:46px;line-height:1.2;margin:0 0 24px}
.faq-intro>p:last-child{font-size:15px;line-height:1.8;color:#aaa;margin:0}
.faq-topics{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:54px}
.faq-topics a{font-size:12px;border:1px solid #333;border-radius:4px;padding:9px 16px;text-decoration:none;color:#ccc;background:#121212}
.faq-topics a:hover{border-color:#a88a61;color:#dfc29c}
.faq-group{display:grid;grid-template-columns:260px minmax(0,1fr);gap:42px;padding:38px 0;border-top:1px solid #292929;scroll-margin-top:125px}
.faq-group>header h2{font-size:26px;line-height:1.3;margin:0 0 14px}
.faq-group>header>p:last-child{font-size:13px;line-height:1.8;color:#999}
.faq-item{background:#121212;border:1px solid #303030;border-radius:6px;margin-bottom:10px;overflow:hidden}
.faq-item summary{list-style:none;cursor:pointer;position:relative;padding:22px 55px 22px 24px;font-size:15px;line-height:1.55;font-weight:500}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:'+';position:absolute;right:22px;top:21px;color:#c2a47c;font-size:20px;font-weight:400;line-height:24px}
.faq-item[open] summary:after{content:'−'}
.faq-item[open]{border-color:#66543d}.faq-item[open] summary{color:#dfc29c}
.faq-answer{padding:0 24px 24px;color:#aaa;font-size:14px;line-height:1.85}
.faq-answer p{margin:0 0 16px}.faq-answer p:last-child{margin:0}.faq-answer a{color:#dfc29c;text-underline-offset:3px}
.faq-contact{margin-top:16px;border:1px solid #303030;border-radius:8px;background:#101010;padding:36px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.faq-contact h2{font-size:30px;margin:0 0 12px;line-height:1.2}.faq-contact p{color:#aaa;font-size:14px;margin:0}
.faq-contact>a{border:1px solid #8b714f;border-radius:4px;color:#dfc29c;text-decoration:none;padding:12px 22px;font-size:13px;white-space:nowrap}
@media(max-width:760px){.faq-design{padding:15px 20px}.faq-intro h1{font-size:32px}.faq-group{grid-template-columns:1fr;gap:16px;padding:28px 0}.faq-topics{margin-bottom:30px}.faq-topics a{font-size:11px;padding:8px 12px}.faq-item summary{font-size:14px;padding-left:18px}.faq-answer{padding-left:18px;padding-right:18px}.faq-contact{flex-direction:column;align-items:flex-start;padding:26px}}
/* Ideas resource library. */
.page-id-14208 .converted-page>article{max-width:1200px;margin:auto;padding:25px 24px}
.resources-intro{text-align:center;padding:30px 0 54px}.resources-kicker{color:#c2a47c;font-size:10px;font-weight:700;letter-spacing:2.4px;margin:0 0 18px}.resources-intro h1{font-size:46px;line-height:1.2;margin-bottom:24px}.resources-intro>p:last-child{font-size:15px;line-height:1.8;color:#aaa;margin:0}.resources-label{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #292929;padding:26px 0}.resources-label h2{font-size:20px;margin:0}.resources-label span{font-size:11px;color:#999;letter-spacing:1px}
.page-id-14208 .ideas-grid{gap:24px}.resource-card{background:#121212;border:1px solid #303030;border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.resource-image{display:block;aspect-ratio:4/3;background:#080808;overflow:hidden}.ideas-grid .resource-image img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .3s}.resource-image:hover img{transform:scale(1.03)}.resource-body{padding:26px;display:flex;flex-direction:column;flex:1}.resource-type{font-size:10px;color:#c2a47c;text-transform:uppercase;letter-spacing:1.5px;margin:0 0 14px}.ideas-grid .resource-card h2{font-size:23px;line-height:1.35;margin:0 0 18px}.resource-description{font-size:14px;line-height:1.85;color:#aaa;margin:0 0 26px}.resource-actions{margin-top:auto;border-top:1px solid #333;padding-top:20px;display:flex;flex-direction:column;align-items:flex-start;gap:18px;font-size:12px}.resource-actions>a:first-child{color:#ccc}.resource-download{display:inline-block;padding:10px 16px;border:1px solid #8b714f;border-radius:4px;color:#dfc29c}.resource-download:hover{background:#241e16}.resource-guide{border:1px solid #303030;border-radius:8px;background:#0c0c0c;margin-top:42px;padding:34px}.resource-guide h2{font-size:26px;line-height:1.3;margin:0 0 28px}.resource-guide ol{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;padding-left:20px;margin:0;color:#c2a47c}.resource-guide strong{display:block;font-size:14px;color:#ddd;margin-bottom:8px}.resource-guide span{display:block;font-size:13px;color:#999;line-height:1.8}.resource-guide a{color:#dfc29c}
@media(max-width:900px){.page-id-14208 .ideas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.page-id-14208 .ideas-grid{grid-template-columns:1fr}.resources-intro h1{font-size:34px}.resources-label{align-items:flex-start;flex-direction:column;gap:8px}.resource-guide{padding:26px}.resource-guide ol{grid-template-columns:1fr;gap:24px}}

/* Keep media in document flow before the related projects, including mobile flex columns. */
.project-media-row .wp-block-column{min-width:0}
.project-media-row iframe,.project-video iframe{display:block}
.project-carousel{clear:both;position:relative;isolation:isolate}
@media(max-width:781px){
 .converted-row .wp-block-columns>.wp-block-column{flex:0 0 auto!important;width:100%}
 .si-site .portfolio-card h2{opacity:0!important;visibility:hidden}
 .project-carousel{padding:24px 12px;margin:0 auto;max-width:480px}
 .project-carousel .carousel-card{flex:0 0 50%;width:50%;aspect-ratio:1}
}
.casefile{background:#0c0c0c;color:#f3f2ed}
.casefile .case-head{background:#c7c6c2;color:#171717;padding:clamp(25px,4vw,58px) max(6vw,calc((100vw - 1280px)/2))}
.case-head .discipline,.case-story dt{font:600 12px/1.5 Arial;letter-spacing:.14em;text-transform:uppercase}
.case-head .discipline{margin:0 0 1.3em}
.si-site .case-head h1{margin:0;max-width:none;font:600 clamp(36px,5.8vw,84px)/1 Arial;letter-spacing:-.045em;text-align:left}
.case-head h1 small{display:block;font:500 clamp(17px,2.3vw,30px)/1.3 Arial;letter-spacing:-.02em;margin-top:12px;color:#383837}
.case-hero,.case-video{max-width:1440px;margin:0 auto}
.case-hero img{display:block;width:100%;height:auto}
.case-story{max-width:1280px;margin:auto;padding:clamp(32px,6vw,80px) 6%;display:grid;grid-template-columns:2fr 1fr;gap:8%}
.case-story h2,.case-video h2{font-size:clamp(23px,3vw,37px);letter-spacing:-.035em;line-height:1.15;margin:0 0 20px}
.case-story p{font-size:16px;line-height:1.7;color:#d2d2ce}
.case-story dl{margin:0;border-top:1px solid #666;padding-top:16px}.case-story dt{color:#bcbab3}.case-story dd{margin:4px 0 20px;font-size:17px}
.case-story .share-links{justify-content:flex-start;padding:16px 0 0;border-top:1px solid #555}
.case-video h2{padding:0 6%}.case-video .project-video{width:100%}
.casefile .project-carousel{max-width:640px}
.casefile .carousel-card{flex:0 0 50%;width:50%}
@media(max-width:700px){.case-story{grid-template-columns:1fr;gap:20px}.case-head h1 small{max-width:27ch}}

.case-story .converted-row,.case-story .wp-block-column{padding:0!important}
.case-story .project-copy p{text-align:left!important}
.case-gallery{max-width:1440px;margin:auto}
.case-hero .project-video{width:100%}
