/* Native WordPress design system. Architectural editorial direction: variance 6, motion 4, density 3.
   Layer scale: content 0, navigation 10, skip link 20. */
@font-face{font-family:Inter;src:url(fonts/InterVariable.woff2) format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url(fonts/JetBrainsMono-SemiBold.ttf) format('truetype');font-weight:600;font-display:swap}
:root{--sn-bg:#f6f7f5;--sn-surface:#ecefeb;--sn-ink:#202722;--sn-muted:#526057;--sn-line:#cbd3cb;--sn-accent:#336749;--sn-on-accent:#f8faf7;--sn-gap:clamp(1.2rem,3vw,3rem);--sn-section:clamp(4rem,8vw,8rem);--sn-width:1280px;--sn-radius:2px;--sn-mono:'JetBrains Mono',Consolas,monospace;--sn-ease:cubic-bezier(.2,.7,.2,1);--sn-duration:420ms;color-scheme:light}
:root[data-theme=dark]{--sn-bg:#171c19;--sn-surface:#222a24;--sn-ink:#eef1ec;--sn-muted:#b5c0b6;--sn-line:#414f44;--sn-accent:#a5ceae;--sn-on-accent:#18291d;color-scheme:dark}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--sn-bg:#171c19;--sn-surface:#222a24;--sn-ink:#eef1ec;--sn-muted:#b5c0b6;--sn-line:#414f44;--sn-accent:#a5ceae;--sn-on-accent:#18291d;color-scheme:dark}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--sn-bg);color:var(--sn-ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input{touch-action:manipulation}img{max-width:100%;height:auto;display:block}figure{margin:0}a{color:inherit;text-underline-offset:.25em}a:hover{color:var(--sn-accent)}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-weight:500;line-height:1.08;letter-spacing:-.045em;overflow-wrap:break-word}h1{font-size:clamp(2.8rem,6.3vw,6rem)}h2{font-size:clamp(2rem,3.9vw,3.65rem);max-width:23ch;margin-bottom:2.5rem}h3{font-size:clamp(1.4rem,2.2vw,2rem);letter-spacing:-.035em}p{color:var(--sn-muted);max-width:68ch}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--sn-accent);outline-offset:5px}::selection{background:var(--sn-accent);color:var(--sn-on-accent)}.wp-site-blocks{padding:0}.wp-site-blocks>*,.wp-site-blocks>main,.wp-site-blocks>footer{margin-block-start:0}.wp-block-post-content{margin-top:0}.wp-block-post-content>.sn-section,.wp-block-post-content>.sn-facts{max-width:none}.sn-shell,.sn-main,.sn-case,.wp-block-post-content{width:min(var(--sn-width),calc(100% - 2 * var(--sn-gap)));margin-inline:auto}.wp-block-post-content .wp-block-post-content{width:100%}.sn-case>.wp-block-post-content{width:100%}.sn-main{padding-block:4rem}.sn-section{padding-block:var(--sn-section);margin:0!important}.sn-section+.sn-section{border-top:1px solid var(--sn-line)}.sn-eyebrow,.sn-mono,.sn-tools,.sn-sheet-caption,.sn-metadata dt{font-family:var(--sn-mono);font-size:.72rem;letter-spacing:.025em;line-height:1.7}.sn-eyebrow{text-transform:uppercase;color:var(--sn-accent);margin-bottom:1.3rem}.sn-lead{font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.7}.sn-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}.sn-skip{position:fixed;left:1rem;top:1rem;padding:1rem;background:var(--sn-ink);color:var(--sn-bg);z-index:20;transform:translateY(-200%)}.sn-skip:focus{transform:translateY(0)}
/* Header: compact brand and navigation align to the drawing-sheet grid. */
.sn-nav{min-height:100px;display:flex;align-items:center;gap:2rem;border-bottom:1px solid var(--sn-line);position:relative;z-index:10}.sn-brand{display:flex;align-items:center;gap:13px;text-decoration:none;flex-shrink:0}.sn-mark{width:43px;height:43px;display:grid;place-items:center;font-size:1.05rem;font-weight:650;border:1px solid var(--sn-ink);position:relative}.sn-mark:after{content:'';position:absolute;width:8px;height:8px;background:var(--sn-bg);right:-4px;bottom:-4px;border-top:1px solid var(--sn-ink);transform:rotate(-45deg)}.sn-brand strong{display:block;font-size:.82rem;font-weight:600}.sn-brand small{display:block;font-family:var(--sn-mono);font-size:.6rem;color:var(--sn-muted);letter-spacing:.04em}.sn-nav nav{display:flex;align-items:center;gap:clamp(.8rem,2vw,1.8rem);margin-left:auto}.sn-nav nav a{font-size:.73rem;text-decoration:none;position:relative;white-space:nowrap;padding:12px 0}.sn-nav nav a:after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--sn-accent);transform:scaleX(0);transform-origin:left;transition:transform var(--sn-duration) var(--sn-ease)}.sn-nav nav a:hover:after,.sn-nav nav a[aria-current]:after{transform:scaleX(1)}.sn-controls{display:flex;align-items:center;gap:1rem}.sn-languages{display:flex;gap:8px;font-family:var(--sn-mono);font-size:.65rem}.sn-languages a{text-decoration:none;min-height:44px;display:grid;place-items:center}.sn-languages a[aria-current]{color:var(--sn-accent);text-decoration:underline;text-underline-offset:7px}.sn-theme{display:grid;place-items:center;color:var(--sn-ink);border:1px solid var(--sn-line);background:transparent;min-width:40px;min-height:40px;border-radius:50%;font-size:1.15rem}.sn-menu{display:none}
/* Hero: typography and the existing BIM visualization occupy separate columns. */
.sn-hero{display:grid;grid-template-columns:1fr 1.08fr;gap:4%;align-items:center;min-height:640px;padding-block:4.5rem}.sn-hero-copy{padding-block:1rem}.sn-hero-title{max-width:10ch;font-size:clamp(3rem,5.8vw,5.5rem);margin-bottom:2rem;font-weight:500}.sn-hero .sn-lead{max-width:43ch;margin-bottom:2rem}.sn-hero-sheet{position:relative;padding:13px;border:1px solid var(--sn-line)}.sn-hero-sheet:before,.sn-hero-sheet:after{content:'+';position:absolute;line-height:1;color:var(--sn-accent);font-family:var(--sn-mono);font-size:16px}.sn-hero-sheet:before{top:-9px;left:-6px}.sn-hero-sheet:after{bottom:-7px;right:-6px}.sn-hero-image{margin:0!important}.sn-hero-image img{width:100%;aspect-ratio:1.04;object-fit:cover;object-position:55% center}.sn-sheet-caption{display:flex;justify-content:space-between;gap:1rem;padding-top:13px;align-items:start}.sn-sheet-caption p{margin:0;font-size:.61rem}.sn-facts{display:grid;grid-template-columns:repeat(3,1fr);padding-block:1.6rem 2.5rem;border-bottom:1px solid var(--sn-line);gap:2rem}.sn-fact{display:flex;align-items:center;gap:1.2rem}.sn-fact h2{font-size:1.8rem;margin:0;white-space:nowrap;letter-spacing:-.04em}.sn-fact p{font-family:var(--sn-mono);font-size:.64rem;margin:0;max-width:22ch}
.wp-block-buttons{gap:.75rem}.wp-block-button__link{font-size:.73rem;line-height:1.4;padding:1rem 1.3rem;background:var(--sn-accent);color:var(--sn-on-accent);border:1px solid var(--sn-accent);border-radius:var(--sn-radius);box-shadow:none;text-decoration:none;min-height:46px;font-weight:600;transition:transform var(--sn-duration) var(--sn-ease)}.wp-block-button.is-style-outline>.wp-block-button__link{background:transparent;color:var(--sn-ink);border:1px solid var(--sn-line);padding:1rem 1.3rem}.wp-block-button__link:hover{color:var(--sn-on-accent);transform:translateY(-2px)}.wp-block-button.is-style-outline>.wp-block-button__link:hover{color:var(--sn-accent)}.sn-actions{display:flex;flex-wrap:wrap;gap:.8rem 1.7rem;margin-top:1.7rem}.sn-link{font-size:.72rem;font-weight:600;text-decoration:none;display:inline-flex;gap:.7rem;align-items:center;min-height:44px;border-bottom:1px solid var(--sn-line)}.sn-link span{transition:transform var(--sn-duration) var(--sn-ease)}.sn-link:hover span{transform:translate(3px,-3px)}
/* Two distinct BIM treatments; no motion is required to access the content. */
.sn-projects{display:grid;grid-template-columns:1.12fr 1fr;gap:3rem}.sn-projects>.sn-project:nth-child(even){margin-top:6rem}.sn-project-visual{min-width:0}.sn-image-link{display:block;position:relative;overflow:hidden}.sn-image-link img{width:100%;aspect-ratio:1.46;object-fit:cover}.sn-image-drawing:after{content:'';position:absolute;inset:12px;border:1px solid rgb(255 255 255 / .75);clip-path:inset(0 100% 0 0);pointer-events:none;transition:clip-path 700ms var(--sn-ease)}.sn-image-drawing:hover:after,.sn-image-drawing:focus-visible:after{clip-path:inset(0)}.sn-project-copy{padding-top:1.65rem}.sn-project-copy h3 a{text-decoration:none}.sn-project-copy .sn-eyebrow{font-size:.65rem}.sn-project-copy p{font-size:.92rem}.sn-project-copy .sn-tools{font-size:.68rem;margin-top:1.5rem;margin-bottom:0}.sn-project-copy h3{margin-bottom:1rem}.sn-comparison{position:relative}.sn-compare-images{position:relative;overflow:hidden;aspect-ratio:1.46;background:#ecefeb}.sn-compare-images>img,.sn-compare-before,.sn-compare-before img{width:100%;height:100%;object-fit:cover}.sn-compare-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.sn-compare-line{position:absolute;inset-block:0;left:var(--split);width:2px;background:#f6f7f5;box-shadow:0 0 0 1px #20272255}.sn-compare-line:after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;background:#f6f7f5;color:#202722;display:grid;place-items:center}.sn-compare-captions{display:flex;justify-content:space-between;gap:1rem;font-family:var(--sn-mono);font-size:.6rem;padding-top:.6rem;color:var(--sn-muted)}.sn-range{width:100%;height:30px;margin:0;accent-color:var(--sn-accent);display:block;cursor:ew-resize}
/* Expertise uses the real drawing as a visual anchor. */
.sn-expertise-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;margin-top:3rem}.sn-plan{border:1px solid var(--sn-line);padding:1rem;background:#f4f5f2}.sn-plan img{width:100%;aspect-ratio:1;object-fit:contain}.sn-expertise-list{display:grid;gap:2.25rem}.sn-expertise-item{display:grid;grid-template-columns:35px 1fr;gap:.1rem .8rem}.sn-expertise-item>.sn-mono{grid-row:span 2;color:var(--sn-accent);padding-top:.4rem}.sn-expertise-item h3{font-size:1.4rem;margin-bottom:.7rem}.sn-expertise-item p:last-child{grid-column:2;font-size:.92rem;margin:0}
/* Bitko becomes the proof point between the introduction and capabilities. */
.sn-projects-digital{display:block;margin-block:3.5rem}.sn-projects-digital>.sn-project{margin:0}.sn-product{display:grid;grid-template-columns:.85fr 1.25fr;gap:3.8rem;align-items:center;background:var(--sn-surface);padding:clamp(1.5rem,4vw,3.4rem);border:1px solid var(--sn-line)}.sn-product .sn-project-copy{grid-column:1;grid-row:1;padding:0}.sn-product .sn-project-copy h3{font-size:clamp(1.8rem,2.7vw,2.6rem);max-width:14ch}.sn-product .sn-project-visual{grid-column:2;grid-row:1;box-shadow:0 20px 40px #0000000c;border:1px solid var(--sn-line);align-self:center}.sn-browser-bar{font-family:var(--sn-mono);font-size:.6rem;display:flex;align-items:center;gap:1rem;padding:.65rem .9rem;color:var(--sn-muted);background:var(--sn-bg)}.sn-image-digital img{aspect-ratio:1.78;object-fit:cover}.sn-keys{display:flex;gap:.5rem;margin-top:1.5rem}.sn-keys kbd{border:1px solid var(--sn-line);border-bottom-width:3px;border-radius:3px;font:600 .55rem var(--sn-mono);padding:.35rem .6rem;background:var(--sn-bg);color:var(--sn-muted);transition:transform var(--sn-duration) var(--sn-ease)}.sn-product:hover .sn-keys kbd:nth-child(2){transform:translateY(2px)}.sn-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 5rem}.sn-capability{padding-block:1rem}.sn-capability h3{font-size:1.45rem}.sn-capability:last-child{grid-column:2}.sn-toolbox{border-top:1px solid var(--sn-line);padding-top:2rem;display:grid;grid-template-columns:1fr 3fr;gap:2rem;margin-top:2rem}.sn-tool-list{font-size:1rem;line-height:2;margin:0}
/* Timeline motion communicates progression without hiding the job history. */
.sn-timeline{margin-top:4rem;position:relative;border-left:1px solid var(--sn-line);padding-left:2rem}.sn-job{display:grid;grid-template-columns:1fr 3fr;gap:2rem;padding:0 0 3rem;position:relative}.sn-job:last-child{padding-bottom:0}.sn-job:before{content:'';position:absolute;left:calc(-2rem - 4px);top:.5rem;width:7px;height:7px;background:var(--sn-bg);border:1px solid var(--sn-accent)}.sn-job.is-visible:before{background:var(--sn-accent)}.sn-job h3{font-size:1.6rem;max-width:28ch;margin-bottom:.6rem}.sn-job .sn-company{color:var(--sn-accent);font-size:.8rem;margin-bottom:1rem}.sn-job-body>p:last-child{font-size:.94rem}.sn-education{display:grid;grid-template-columns:1.1fr 1fr;gap:6rem;align-items:center}.sn-document-sheet{border:1px solid var(--sn-line);padding:1rem;background:#f6f7f5}.sn-document-sheet img{width:100%;aspect-ratio:.85;object-fit:contain}.sn-credential{margin-bottom:2rem}.sn-credential h3{font-size:1.3rem;margin-bottom:.7rem}.sn-about{display:grid;grid-template-columns:1fr 1fr;gap:1rem 5rem}.sn-about h2{grid-row:span 2;font-size:2.5rem}.sn-about>.sn-mono{grid-column:2}.sn-contact h2{font-size:clamp(2.8rem,6.7vw,6.5rem);max-width:13ch}.sn-contact-email{margin-top:3rem;font-family:var(--sn-mono);font-size:.8rem}.sn-footer{border-top:1px solid var(--sn-line);padding-block:3rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sn-footer strong{font-size:.9rem}.sn-footer p{font-size:.75rem;margin:.4rem 0}.sn-footer-links{display:flex;justify-content:flex-end;align-items:start;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.75rem}.sn-footer-links a{min-height:40px;display:inline-flex;align-items:center}.sn-copyright{grid-column:1/-1;color:var(--sn-muted);font-family:var(--sn-mono);font-size:.6rem!important}
/* Reusable case study pages. */
.sn-case{padding-top:3.5rem}.sn-case-heading h1{max-width:18ch;font-size:clamp(2.8rem,6vw,5.5rem)}.sn-case-heading .sn-eyebrow{margin-top:2.5rem}.sn-case-heading .sn-lead{max-width:60ch;font-size:1.2rem}.sn-metadata{display:flex;flex-wrap:wrap;gap:2rem 4rem;margin-block:2.5rem}.sn-metadata dt{color:var(--sn-muted);text-transform:uppercase}.sn-metadata dd{margin:.5rem 0 0;font-size:.85rem}.sn-case-visual{margin-block:3rem 5rem}.sn-case-visual .sn-image-link img{aspect-ratio:1.9}.sn-case-visual .sn-image-digital img{object-fit:contain;background:var(--sn-surface)}.sn-case-visual .sn-compare-images{aspect-ratio:1.8}.sn-story{max-width:100%!important}.sn-story-section{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;margin-block:3.5rem!important}.sn-story-section h2{font-size:1.65rem}.sn-story-section p{font-size:1.05rem}.sn-story>.wp-block-heading{font-size:2rem;margin-top:5rem}.sn-story .wp-block-gallery{gap:2rem!important}.sn-story .wp-block-gallery img{object-fit:contain!important;background:#f6f7f5}.sn-gallery{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.sn-next{margin-top:5rem;padding-block:3rem 5rem;border-top:1px solid var(--sn-line)}.sn-next>a{font-size:clamp(1.7rem,4vw,3rem);text-decoration:none;line-height:1.2}.sn-case .wp-block-post-content{max-width:none}
/* Editor parity while preserving Gutenberg's controls and selection behavior. */
.editor-styles-wrapper{background:var(--sn-bg);color:var(--sn-ink)}.editor-styles-wrapper .sn-section{max-width:1280px}.editor-styles-wrapper .sn-hero{min-height:0}.editor-styles-wrapper .wp-block{max-width:1280px}.editor-styles-wrapper .sn-projects{display:block}
@media(min-width:1600px){.sn-hero{min-height:700px}}
@media(max-width:1024px){.sn-nav{gap:1rem;min-height:90px}.sn-nav nav{gap:1rem}.sn-nav nav a{font-size:.66rem}.sn-brand strong{font-size:.72rem}.sn-brand small{font-size:.53rem}.sn-controls{gap:.6rem}.sn-expertise-grid{gap:3rem}.sn-product{gap:2rem}.sn-product .sn-project-copy h3{font-size:1.9rem}.sn-education{gap:3rem}.sn-hero{min-height:550px;padding-block:3rem}.sn-fact{gap:.6rem}.sn-fact h2{font-size:1.5rem}.sn-fact p{font-size:.6rem}}
@media(max-width:800px){.sn-nav{flex-wrap:wrap;gap:.6rem 1rem;min-height:80px;padding-block:1rem}.sn-brand{margin-right:auto}.sn-menu{display:flex;align-items:center;gap:.7rem;background:none;color:var(--sn-ink);border:0;min-height:44px;font-size:.73rem}.sn-nav nav{order:4;flex-basis:100%;margin:0;justify-content:space-between;gap:.5rem}.sn-nav nav a{font-size:.75rem}.js .sn-nav nav{display:none}.js .sn-nav.is-open nav{display:flex}.sn-hero{grid-template-columns:1fr;gap:2.5rem;padding-block:3rem}.sn-hero-title{font-size:clamp(3.2rem,8vw,4.9rem);max-width:13ch}.sn-hero .sn-lead{max-width:52ch}.sn-hero-sheet{max-width:100%}.sn-hero-image img{aspect-ratio:1.6;object-position:center}.sn-facts{gap:1rem}.sn-fact{display:block}.sn-fact h2{margin-bottom:.6rem}.sn-projects{gap:2rem}.sn-projects>.sn-project:nth-child(even){margin-top:3rem}.sn-expertise-grid{gap:2rem;grid-template-columns:.8fr 1fr}.sn-product{grid-template-columns:1fr}.sn-product .sn-project-copy{grid-column:1;grid-row:1}.sn-product .sn-project-visual{grid-column:1;grid-row:2}.sn-product .sn-project-copy h3{max-width:none;font-size:2.2rem}.sn-product .sn-project-copy p{max-width:58ch}.sn-capabilities{gap:1rem 2rem}.sn-job{grid-template-columns:1fr 3fr;gap:1rem}.sn-education{gap:2rem}.sn-about{gap:1rem 2rem}.sn-about h2{font-size:2rem}.sn-toolbox{grid-template-columns:1fr}.sn-story-section{gap:2rem}}
@media(max-width:600px){.sn-shell,.sn-main,.sn-case,.wp-block-post-content{width:calc(100% - 2rem)}.sn-case>.wp-block-post-content{width:100%}.sn-mark{width:35px;height:35px;font-size:.86rem}.sn-brand{gap:9px}.sn-brand strong{font-size:.69rem}.sn-brand small{font-size:.5rem}.sn-nav{gap:.5rem}.sn-controls{gap:.5rem}.sn-theme{min-width:36px;min-height:40px}.sn-menu{font-size:.65rem;padding-inline:4px}.sn-languages{font-size:.57rem;gap:6px}.sn-nav nav{flex-wrap:wrap;justify-content:flex-start;column-gap:1.5rem}.sn-nav nav a{font-size:.8rem}.sn-hero{padding-block:2.5rem}.sn-hero-title{font-size:clamp(2.85rem,11.7vw,4.6rem);max-width:11ch;margin-bottom:1.5rem}.sn-hero .sn-lead{font-size:1rem}.sn-hero-copy>.sn-eyebrow{font-size:.6rem}.sn-hero-sheet{padding:8px}.sn-hero-image img{aspect-ratio:1.22}.sn-sheet-caption{gap:.5rem;padding-top:10px}.sn-sheet-caption p{font-size:.5rem}.sn-sheet-caption p:last-child{text-align:right}.sn-facts{padding-bottom:2rem;gap:.8rem}.sn-fact h2{font-size:1.15rem}.sn-fact p{font-size:.5rem}.sn-section h2{font-size:2.25rem;max-width:22ch}.sn-projects{grid-template-columns:1fr;gap:3.5rem}.sn-projects>.sn-project:nth-child(even){margin:0}.sn-project-copy h3{font-size:1.9rem}.sn-project-copy .sn-eyebrow{font-size:.59rem}.sn-expertise-grid{grid-template-columns:1fr;gap:2.5rem}.sn-plan img{aspect-ratio:1.3}.sn-expertise-list{gap:2rem}.sn-product{padding:1.2rem;gap:2rem}.sn-product .sn-project-copy h3{font-size:2rem}.sn-capabilities{grid-template-columns:1fr;gap:0}.sn-capability:last-child{grid-column:1}.sn-toolbox{gap:0}.sn-tool-list{font-size:.87rem}.sn-timeline{padding-left:1.2rem}.sn-job{grid-template-columns:1fr;gap:0;padding-bottom:2.5rem}.sn-job:before{left:calc(-1.2rem - 4px)}.sn-job h3{font-size:1.5rem}.sn-job>.sn-mono{margin-bottom:1rem}.sn-education{grid-template-columns:1fr;gap:2.5rem}.sn-document-sheet img{aspect-ratio:1}.sn-about{display:block}.sn-about h2{margin-bottom:2rem}.sn-contact h2{font-size:3rem;max-width:13ch}.sn-footer{grid-template-columns:1fr;gap:1.5rem}.sn-footer-links{justify-content:flex-start;gap:.3rem 1rem}.sn-story-section{grid-template-columns:1fr;gap:.5rem;margin-block:2.5rem!important}.sn-story-section h2{margin-bottom:1rem}.sn-case-heading h1{font-size:2.8rem}.sn-case-heading .sn-lead{font-size:1.05rem}.sn-case-visual{margin-block:2.5rem}.sn-case-visual .sn-image-link img{aspect-ratio:1.4}.sn-case-visual .sn-compare-images{aspect-ratio:1.3}.sn-metadata{gap:1.5rem;display:grid;grid-template-columns:1fr 1fr}.sn-metadata dd{overflow-wrap:anywhere}.sn-story .wp-block-gallery{gap:1rem!important}.sn-story .wp-block-gallery .wp-block-image{width:100%!important}.sn-gallery{grid-template-columns:1fr}.sn-actions{gap:.5rem 1rem}.sn-link{font-size:.68rem}.wp-block-button__link,.wp-block-button.is-style-outline>.wp-block-button__link{padding:.9rem 1rem;font-size:.69rem}.sn-compare-captions{font-size:.54rem}}
@media(prefers-reduced-motion:no-preference){.sn-hero-sheet{animation:sn-sheet-enter 850ms var(--sn-ease) both}.sn-hero-copy{animation:sn-enter 700ms var(--sn-ease) both}.sn-job.is-visible .sn-job-body{animation:sn-enter 550ms var(--sn-ease) both}@keyframes sn-enter{from{opacity:.45;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes sn-sheet-enter{from{opacity:.4;transform:translateY(14px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.sn-product:hover .sn-keys kbd:nth-child(2){transform:none}.sn-image-drawing:after{display:none}}
@media print{.sn-nav,.sn-controls,.sn-menu,.sn-range,.sn-keys,.sn-footer-links{display:none}body{background:white;color:#202722}.sn-section{padding-block:2rem}.sn-project,.sn-job{break-inside:avoid}a{color:inherit}.sn-story-section{display:block}}
/* Studio 1.1 — framed architectural stage, digital interactions. */
:root{--sn-width:1360px;--sn-radius:8px;--sn-section:clamp(4.5rem,9vw,9rem)}
.sn-nav{min-height:88px;border-bottom:0}.sn-mark{border-radius:8px;background:var(--sn-ink);color:var(--sn-bg)}.sn-mark:after{display:none}
.sn-hero.sn-section{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:560px;min-height:max(560px,68svh);padding:clamp(1.5rem,4vw,4rem);margin:0 0 1.5rem!important;overflow:hidden;border-radius:18px;background:#17231c;color:#fff}
.sn-hero-copy{position:relative;z-index:2;padding:0;max-width:720px;padding-right:5rem}.sn-hero-title{max-width:13ch;font-size:clamp(3rem,5.2vw,5.2rem);line-height:.99;letter-spacing:-.065em;margin-bottom:1.2rem;text-wrap:balance}.sn-hero .sn-lead{color:#edf3ed;max-width:53ch;font-size:clamp(.95rem,1.15vw,1.1rem);line-height:1.55;margin-bottom:1.4rem}.sn-hero-copy>.sn-eyebrow{color:#d1edbb;margin-bottom:1.1rem}
.sn-hero-sheet{position:absolute;inset:0;margin:0!important;padding:0;border:0;max-width:none;z-index:0;animation:none!important}.sn-hero-sheet:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,20,15,.8),rgba(9,20,15,.18) 85%),linear-gradient(0deg,rgba(9,20,15,.7),transparent 80%);z-index:1}.sn-hero-sheet:after{display:none}
.sn-hero-image{position:absolute;inset:0;opacity:1;transition:opacity 1100ms ease}.sn-hero-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}.sn-hero-alternate{opacity:0}.sn-hero-image.is-active{opacity:1}.sn-hero-image.is-inactive{opacity:0}.sn-hero .sn-sheet-caption{display:none}
.sn-hero .wp-block-button__link{background:#d1edbb;color:#17231c;border-color:#d1edbb;border-radius:7px}.sn-hero .wp-block-button.is-style-outline>.wp-block-button__link{color:#fff;border-color:#ffffff70;background:#12201940}.sn-hero a:focus-visible,.sn-hero button:focus-visible{outline-color:#d1edbb}
.sn-slide-controls{position:absolute;right:2rem;bottom:2rem;z-index:3;display:flex;gap:.4rem;align-items:center}.sn-slide-controls button{min-width:44px;min-height:44px;border:1px solid #ffffff60;border-radius:50%;color:#fff;background:#152019b8;font:600 .65rem var(--sn-mono)}.sn-slide-controls button[aria-pressed=true]{background:#d1edbb;color:#17231c;border-color:#d1edbb}.sn-slide-controls .sn-slide-pause{border-radius:24px;padding-inline:1rem}
.sn-facts{padding:1.1rem 0 2rem;gap:2rem}.sn-fact+.sn-fact{border-left:1px solid var(--sn-line);padding-left:2rem}.sn-fact h2{font-size:2rem}
.sn-section>.sn-eyebrow{display:flex;align-items:center;gap:1rem}.sn-section>.sn-eyebrow:after{content:'';height:1px;background:var(--sn-line);width:65px}.sn-section>h2{font-size:clamp(2.6rem,4.8vw,4.5rem);letter-spacing:-.06em}
.sn-projects{grid-template-columns:1.15fr 1fr;gap:3.5rem}.sn-projects>.sn-project:nth-child(even){margin-top:8rem}.sn-image-link,.sn-compare-images{border-radius:12px}.sn-image-link img{transition:transform 900ms var(--sn-ease)}.sn-project:hover .sn-image-link img{transform:scale(1.035)}.sn-project-copy{position:relative;border-top:1px solid var(--sn-line);margin-top:1.4rem}.sn-project-copy h3{font-size:clamp(1.8rem,2.5vw,2.4rem)}
.sn-plan,.sn-document-sheet{border-radius:14px;box-shadow:0 24px 60px #1522190b}.sn-expertise-item{border-bottom:1px solid var(--sn-line);padding-bottom:1.6rem;transition:padding-left .35s ease}.sn-expertise-item:hover{padding-left:12px}.sn-product{border-radius:18px;position:relative;overflow:hidden}.sn-product .sn-project-copy{border:0;margin:0}.sn-product .sn-project-visual{border-radius:10px;overflow:hidden;transition:transform 650ms var(--sn-ease)}.sn-product:hover .sn-project-visual{transform:translateY(-6px)}.sn-capability{border-top:1px solid var(--sn-line);padding-top:1.7rem}.sn-job{border-bottom:1px solid var(--sn-line);margin-bottom:2rem;padding-bottom:2rem}.sn-job:last-child{border:0}.sn-contact{background:var(--sn-surface);border-radius:18px;padding:clamp(1.5rem,5vw,5rem);margin-bottom:3rem!important;position:relative;overflow:hidden}.sn-contact h2{font-size:clamp(3rem,6vw,6rem)}
.sn-scroll-progress{position:fixed;inset:0 auto auto 0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--sn-accent);z-index:30;pointer-events:none}
@media(prefers-reduced-motion:no-preference){.sn-reveal.is-visible{animation:sn-digital-enter 800ms var(--sn-ease) both}@keyframes sn-digital-enter{from{opacity:.35;transform:translateY(28px)}to{opacity:1;transform:none}}}
@media(max-width:800px){.sn-hero.sn-section{min-height:580px;padding:2rem}.sn-hero-copy{padding-right:0;padding-bottom:3.5rem}.sn-hero-title{font-size:clamp(3rem,7vw,4.5rem)}.sn-slide-controls{right:1.5rem;bottom:1.2rem}.sn-projects{gap:2rem}.sn-projects>.sn-project:nth-child(even){margin-top:4rem}.sn-fact+.sn-fact{padding-left:1rem}.sn-fact h2{font-size:1.5rem}}
@media(max-width:600px){.sn-hero.sn-section{min-height:610px;padding:1.4rem;border-radius:12px}.sn-hero-title{font-size:clamp(2.55rem,10.8vw,4rem)}.sn-hero-copy{padding-bottom:3.6rem}.sn-hero .sn-lead{font-size:.94rem}.sn-hero-sheet:before{background:linear-gradient(0deg,#0b1814f5,rgba(9,20,15,.36))}.sn-hero-image img{object-position:58% center}.sn-slide-controls{right:1.3rem;bottom:1.2rem}.sn-facts{gap:.5rem}.sn-fact+.sn-fact{padding-left:.6rem}.sn-fact h2{font-size:1.2rem}.sn-projects{grid-template-columns:1fr}.sn-projects>.sn-project:nth-child(even){margin-top:0}.sn-section>h2{font-size:2.5rem}.sn-contact h2{font-size:2.8rem}}
/* Keep the two source image blocks selectable in the editor. */
.editor-styles-wrapper .sn-hero.sn-section{display:block;min-height:0;background:#17231c}.editor-styles-wrapper .sn-hero-sheet{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.editor-styles-wrapper .sn-hero-sheet:before{display:none}.editor-styles-wrapper .sn-hero-image{position:relative;opacity:1}.editor-styles-wrapper .sn-hero-image img{height:220px}.editor-styles-wrapper .sn-hero-copy{padding-bottom:2rem}
@media print{.sn-slide-controls,.sn-scroll-progress{display:none}.sn-hero.sn-section{min-height:450px;print-color-adjust:exact}}
