/*
Theme Name: SolidWeb Index
Theme URI: https://solidweb.no/
Author: SolidWeb AS
Author URI: https://solidweb.no/
Description: Restrained editorial WordPress theme for SolidWeb with built-in One Click Import.
Version: 1.4.4
Text Domain: solidweb-publicis
*/

:root{
  --sw-black:#080808;
  --sw-ink:#11110f;
  --sw-white:#fff;
  --sw-paper:#f1efe8;
  --sw-paper-2:#e7e4db;
  --sw-orange:#ff4f2f;
  --sw-orange-soft:#ff6a4e;
  --sw-line:rgba(255,255,255,.22);
  --sw-dark-line:rgba(17,17,15,.24);
  --sw-muted:#a7a69f;
  --sw-wide:1440px;
  --sw-shell:900px;
  --sw-pad:clamp(20px,3vw,48px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--sw-black)}
body{margin:0;background:var(--sw-black);color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open{overflow:hidden}
::selection{background:var(--sw-orange);color:#000}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
button,input,textarea,select{font:inherit}
#main-content{overflow:hidden}
.sw-wide-shell{width:min(calc(100% - (var(--sw-pad) * 2)),var(--sw-wide));margin-inline:auto}
.sw-publicis-shell{width:min(calc(100% - (var(--sw-pad) * 2)),var(--sw-shell));margin-inline:auto}

/* Header */
.sw-header{position:sticky;top:0;z-index:1000;background:rgba(8,8,8,.94);color:#fff;border-bottom:1px solid transparent;transition:background .25s,border-color .25s;backdrop-filter:blur(16px)}
.sw-header.is-scrolled{border-color:#292929;background:rgba(8,8,8,.97)}
.sw-header-inner{height:76px;width:min(calc(100% - (var(--sw-pad) * 2)),var(--sw-wide));margin:auto;display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center}
.sw-logo-wrap{display:flex;align-items:center;min-width:150px}
.custom-logo-link{display:flex;align-items:center}.custom-logo{width:auto;max-width:160px;max-height:42px;object-fit:contain}
.sw-wordmark{font-size:21px;font-weight:900;letter-spacing:-.045em}
.sw-desktop-nav{justify-self:center}.sw-desktop-nav ul,.sw-footer-nav ul{list-style:none;margin:0;padding:0}.sw-desktop-nav ul{display:flex;gap:25px;align-items:center}
.sw-desktop-nav a{position:relative;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;padding:7px 0}
.sw-desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--sw-orange);transition:right .25s ease}.sw-desktop-nav a:hover:after{right:0}
.sw-header-cta{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border-left:1px solid #444;padding-left:24px;white-space:nowrap}.sw-header-cta span{color:var(--sw-orange);font-size:14px;margin-left:6px}
.sw-menu-toggle{display:none;width:42px;height:42px;border:0;background:transparent;position:relative;cursor:pointer;margin-left:auto}.sw-menu-toggle span{position:absolute;left:8px;width:26px;height:1px;background:#fff;transition:.25s}.sw-menu-toggle span:first-child{top:16px}.sw-menu-toggle span:last-child{top:25px}.menu-open .sw-menu-toggle span:first-child{transform:rotate(45deg);top:21px}.menu-open .sw-menu-toggle span:last-child{transform:rotate(-45deg);top:21px}
.sw-menu-overlay{position:fixed;z-index:990;inset:0;background:var(--sw-orange);color:#111;visibility:hidden;opacity:0;transform:translateY(-12px);transition:.28s ease;padding-top:76px}.menu-open .sw-menu-overlay{visibility:visible;opacity:1;transform:none}
.sw-menu-overlay-inner{height:100%;width:min(calc(100% - 40px),1100px);margin:auto;padding:42px 0 28px;display:flex;flex-direction:column;justify-content:space-between}.sw-menu-overlay-top{display:flex;justify-content:space-between;gap:20px}.sw-menu-kicker,.sw-menu-coord{font-size:10px;font-weight:900;letter-spacing:.12em}
.sw-overlay-menu{list-style:none;margin:0;padding:0}.sw-overlay-menu li{border-bottom:1px solid rgba(17,17,15,.3)}.sw-overlay-menu li:first-child{border-top:1px solid rgba(17,17,15,.3)}.sw-overlay-menu a{display:flex;justify-content:space-between;align-items:center;font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,7vw,88px);letter-spacing:-.045em;line-height:.95;padding:8px 0}.sw-overlay-menu a:after{content:"↗";font-family:Arial;font-size:.35em}.sw-overlay-menu a:hover{padding-left:18px}
.sw-menu-contact{display:flex;justify-content:space-between;gap:20px;font-size:11px;font-weight:700}

/* Homepage hero */
.sw-studio-hero{background:var(--sw-black);color:#fff}
.sw-studio-hero-grid{position:relative;display:grid;grid-template-columns:120px minmax(0,1fr) 180px;column-gap:34px;grid-template-areas:"kicker kicker index" "title title sidenote" ". copy copy";padding-top:56px;padding-bottom:58px}
.sw-studio-kicker{grid-area:kicker;display:flex;align-items:center;gap:10px;font-size:9px;font-weight:900;letter-spacing:.15em}.sw-signal-dot{width:8px;height:8px;border-radius:50%;background:var(--sw-orange);box-shadow:0 0 0 5px rgba(255,79,47,.12)}
.sw-studio-index{grid-area:index;justify-self:end;font-size:9px;font-weight:900;color:#7c7c78;letter-spacing:.12em}
.sw-studio-title{grid-area:title;font-family:Georgia,'Times New Roman',serif;font-size:clamp(54px,7.8vw,112px);line-height:.86;font-weight:400;letter-spacing:-.065em;margin:42px 0 50px;max-width:980px}.sw-studio-title::first-letter{color:var(--sw-orange)}
.sw-studio-side-note{grid-area:sidenote;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:7px;font-size:8px;font-weight:900;letter-spacing:.15em;color:#7e7e78}.sw-studio-side-note span:nth-child(2){color:var(--sw-orange)}
.sw-studio-copy{grid-area:copy;display:grid;grid-template-columns:minmax(260px,520px) auto;gap:60px;align-items:end;padding-top:18px;border-top:1px solid #373737}.sw-studio-copy p{margin:0;font-size:13px;line-height:1.55;color:#d4d3cd}.sw-studio-actions{display:flex;gap:26px;align-items:center;justify-content:flex-end}.sw-arrow-link{display:inline-flex;align-items:center;gap:8px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid currentColor;padding-bottom:3px}.sw-arrow-link span{font-size:14px;color:var(--sw-orange)}.sw-arrow-muted{color:#aaa}.sw-arrow-muted:hover{color:#fff}
.sw-studio-visual{height:clamp(480px,64vw,930px);position:relative;overflow:hidden;background:#161616}.sw-studio-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.2),transparent 28%,transparent 76%,rgba(8,8,8,.18));pointer-events:none}.sw-studio-visual img{width:100%;height:112%;object-fit:cover;object-position:center;transform:translateY(var(--sw-parallax,0));filter:saturate(.72) contrast(1.04)}
.sw-studio-image-label{position:absolute;z-index:3;left:var(--sw-pad);bottom:var(--sw-pad);display:flex;align-items:center;gap:8px;background:var(--sw-orange);color:#111;padding:8px 11px;font-size:8px;font-weight:900;letter-spacing:.11em}.sw-studio-image-label strong{font-size:12px;letter-spacing:-.02em}
.sw-studio-image-stamp{position:absolute;z-index:3;right:var(--sw-pad);top:var(--sw-pad);text-align:right;font-size:10px;font-weight:900;line-height:.93;letter-spacing:.14em;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.4)}

/* Marquee */
.sw-marquee{background:var(--sw-orange);color:#111;border-top:1px solid #111;border-bottom:1px solid #111;overflow:hidden;white-space:nowrap}.sw-marquee-track{width:max-content;display:flex;align-items:center;gap:28px;padding:13px 0;animation:swMarquee 26s linear infinite}.sw-marquee span{font-size:12px;font-weight:900;letter-spacing:.12em}.sw-marquee i{font-style:normal;font-size:15px}@keyframes swMarquee{to{transform:translateX(-50%)}}

/* Services */
.sw-studio-services{background:var(--paper,#f1efe8);background:var(--sw-paper);color:var(--sw-ink);padding:78px 0 100px}.sw-studio-section-top{display:grid;grid-template-columns:220px minmax(0,540px);justify-content:space-between;gap:30px;padding-top:12px;border-top:1px solid var(--sw-dark-line);margin-bottom:46px}.sw-studio-section-top>span{font-size:9px;font-weight:900;letter-spacing:.12em}.sw-studio-section-top p{margin:0;font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.35}
.sw-service-rows{border-top:1px solid var(--sw-ink)}.sw-service-row{display:grid;grid-template-columns:60px 1.4fr 1fr 44px;gap:20px;align-items:center;min-height:100px;border-bottom:1px solid var(--sw-ink);transition:background .2s,padding .2s}.sw-service-row:hover{background:var(--sw-orange);padding-left:14px;padding-right:14px}.sw-service-no{font-size:9px;font-weight:900}.sw-service-row strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(31px,4.2vw,61px);font-weight:400;letter-spacing:-.045em;line-height:.9}.sw-service-row em{font-style:normal;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#666}.sw-service-row:hover em{color:#111}.sw-service-arrow{font-size:29px;justify-self:end;transform:rotate(0deg);transition:transform .2s}.sw-service-row:hover .sw-service-arrow{transform:rotate(45deg)}
.sw-service-visual-grid{display:grid;grid-template-columns:.85fr 1.15fr;min-height:520px;margin-top:100px;border:1px solid var(--sw-ink)}.sw-service-visual-copy{padding:clamp(32px,5vw,78px);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}.sw-service-visual-copy>span{font-size:9px;font-weight:900;letter-spacing:.12em}.sw-service-visual-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.6vw,70px);line-height:.95;letter-spacing:-.05em;font-weight:400;margin:28px 0}.sw-service-visual-copy h2 em{color:var(--sw-orange);font-weight:400}.sw-black-pill{display:inline-flex;background:var(--sw-ink);color:#fff;border-radius:999px;padding:10px 14px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.sw-black-pill:hover{background:var(--sw-orange);color:#111}.sw-service-visual-image{min-height:520px;overflow:hidden;border-left:1px solid var(--sw-ink)}.sw-service-visual-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(.75) contrast(1.12);transition:filter .35s,transform .6s}.sw-service-visual-grid:hover img{filter:grayscale(0) contrast(1);transform:scale(1.02)}

/* Projects */
.sw-selected-work{background:var(--sw-black);color:#fff;padding:95px 0 100px}.sw-work-intro{display:grid;grid-template-columns:190px minmax(0,1fr);gap:35px;border-top:1px solid var(--sw-line);padding-top:14px;margin-bottom:60px}.sw-work-intro>div{display:flex;gap:12px;align-items:flex-start}.sw-section-number{color:var(--sw-orange);font-size:9px;font-weight:900}.sw-section-label-alt{font-size:9px;font-weight:900;letter-spacing:.12em}.sw-work-intro h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5.5vw,82px);line-height:.94;font-weight:400;letter-spacing:-.055em;margin:0}.sw-work-intro h2 em{font-weight:400;color:#74736e}
.sw-work-wide{width:min(calc(100% - (var(--sw-pad) * 2)),var(--sw-wide));margin:auto}.sw-project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:54px 24px}.sw-project-card{grid-column:span 6;margin:0!important}.sw-project-card:nth-child(1),.sw-project-card:nth-child(6){grid-column:span 8}.sw-project-card:nth-child(2),.sw-project-card:nth-child(5){grid-column:span 4}.sw-project-media{display:block;aspect-ratio:16/10;overflow:hidden;background:#191919;position:relative}.sw-project-card:nth-child(1) .sw-project-media,.sw-project-card:nth-child(6) .sw-project-media{aspect-ratio:16/9}.sw-project-card:nth-child(2) .sw-project-media,.sw-project-card:nth-child(5) .sw-project-media{aspect-ratio:4/5}.sw-project-media:after{content:"VIEW ↗";position:absolute;inset:auto 12px 12px auto;background:var(--sw-orange);color:#111;padding:7px 9px;font-size:8px;font-weight:900;opacity:0;transform:translateY(6px);transition:.25s}.sw-project-media img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease,filter .4s;filter:saturate(.72)}.sw-project-card:hover img{transform:scale(1.025);filter:saturate(1)}.sw-project-card:hover .sw-project-media:after{opacity:1;transform:none}.sw-project-meta{display:grid;grid-template-columns:1fr auto;gap:20px;border-top:1px solid #444;padding-top:9px;margin-top:10px}.sw-project-tags{grid-column:1/-1;font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#8d8c87;margin:0}.sw-project-card h3{font-family:Georgia,'Times New Roman',serif;font-size:clamp(27px,2.8vw,43px);line-height:.98;font-weight:400;letter-spacing:-.04em;margin:0}.sw-project-card p{font-size:10px;color:#aaa;margin:4px 0 0;max-width:290px;text-align:right}.sw-work-footer-link{display:flex;justify-content:flex-end;margin-top:58px}.sw-work-footer-link a,.sw-all-posts-link{font-size:10px;font-weight:900;letter-spacing:.11em;border-bottom:1px solid currentColor;padding-bottom:4px}.sw-work-footer-link span,.sw-all-posts-link span{color:var(--sw-orange);font-size:14px}

/* Manifesto */
.sw-orange-manifesto{background:var(--sw-orange);color:var(--sw-ink);padding:70px 0 88px}.sw-manifesto-meta{display:flex;justify-content:space-between;border-top:1px solid rgba(17,17,15,.42);padding-top:11px;font-size:9px;font-weight:900;letter-spacing:.12em}.sw-manifesto-grid{display:grid;grid-template-columns:1.6fr .6fr;gap:70px;align-items:end;margin-top:58px}.sw-manifesto-grid h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(54px,7.7vw,120px);line-height:.82;letter-spacing:-.07em;font-weight:400;margin:0}.sw-manifesto-grid h2 em{font-weight:400;color:#fff}.sw-manifesto-copy{border-top:1px solid rgba(17,17,15,.45);padding-top:14px}.sw-manifesto-copy p{font-size:12px;line-height:1.52;margin:0 0 15px}.sw-manifesto-copy .sw-arrow-link span{color:#111}

/* Editorial / latest */
.sw-studio-latest{background:var(--sw-paper);color:var(--sw-ink);padding:85px 0 100px}.sw-editorial-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:auto auto;gap:24px;margin-top:52px}.sw-editorial-card{border-top:1px solid var(--sw-ink);padding-top:10px}.sw-editorial-card-1{grid-row:1/3}.sw-editorial-card-2,.sw-editorial-card-3{display:grid;grid-template-columns:190px 1fr;gap:18px}.sw-editorial-image{display:block;overflow:hidden;background:#ddd}.sw-editorial-card-1 .sw-editorial-image{aspect-ratio:1.4/1}.sw-editorial-card-2 .sw-editorial-image,.sw-editorial-card-3 .sw-editorial-image{aspect-ratio:1/1}.sw-editorial-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s;filter:saturate(.76)}.sw-editorial-card:hover img{transform:scale(1.02);filter:saturate(1)}.sw-editorial-info{display:flex;flex-direction:column;align-items:flex-start}.sw-editorial-meta{width:100%;display:flex;justify-content:space-between;gap:15px;font-size:8px;font-weight:900;letter-spacing:.08em;margin-top:11px}.sw-editorial-card-2 .sw-editorial-meta,.sw-editorial-card-3 .sw-editorial-meta{margin-top:0}.sw-editorial-card h3{font-family:Georgia,'Times New Roman',serif;font-size:clamp(25px,2.8vw,42px);line-height:1;letter-spacing:-.04em;font-weight:400;margin:13px 0 18px}.sw-editorial-card-2 h3,.sw-editorial-card-3 h3{font-size:clamp(20px,2vw,30px)}.sw-editorial-read{font-size:8px;font-weight:900;border-bottom:1px solid currentColor;margin-top:auto}.sw-all-posts-link{display:block;width:max-content;margin:52px 0 0 auto}

/* Contact poster */
.sw-contact-poster{background:var(--sw-black);color:#fff;padding:70px 0 52px}.sw-contact-poster-top{display:flex;justify-content:space-between;border-top:1px solid var(--sw-line);padding-top:11px;font-size:9px;font-weight:900;letter-spacing:.12em}.sw-contact-poster h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(70px,10.4vw,170px);line-height:.77;letter-spacing:-.075em;margin:70px 0 88px}.sw-contact-poster h2 a{display:block}.sw-contact-poster h2 em{color:var(--sw-orange);font-weight:400}.sw-contact-poster h2 span{font-family:Arial;font-size:.35em;vertical-align:top;color:var(--sw-orange)}.sw-contact-poster-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;border-top:1px solid var(--sw-line);padding-top:12px;font-size:10px;font-weight:800}.sw-contact-poster-bottom>*:last-child{text-align:right}

/* Generic landing pages */
.sw-page-hero{background:var(--sw-black);color:#fff;width:min(calc(100% - (var(--sw-pad)*2)),var(--sw-wide));margin:auto;padding:85px 0 70px;display:grid;grid-template-columns:190px minmax(0,1fr);gap:35px}.sw-page-hero .sw-eyebrow{font-size:9px;font-weight:900;text-transform:uppercase;color:var(--sw-orange);letter-spacing:.12em;padding-top:10px}.sw-page-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(58px,8vw,122px);font-weight:400;line-height:.84;letter-spacing:-.065em;margin:0 0 34px}.sw-page-hero p{font-size:13px;line-height:1.5;max-width:560px;margin:0}.sw-page-hero>.sw-arrow-link{grid-column:2;margin-top:20px;width:max-content}.sw-page-image{display:block;width:100%;height:clamp(450px,58vw,820px);object-fit:cover;filter:saturate(.74)}
.sw-section{background:var(--sw-paper);color:var(--sw-ink);padding:80px var(--sw-pad);max-width:none;margin:0}.sw-section>*{max-width:var(--sw-wide);margin-left:auto;margin-right:auto}.sw-section-head{display:grid;grid-template-columns:190px 1fr;gap:35px;border-top:1px solid var(--sw-dark-line);padding-top:12px;margin-bottom:42px}.sw-section-label{font-size:9px;text-transform:uppercase;font-weight:900;letter-spacing:.11em;color:#555}.sw-section-head h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(44px,6vw,86px);font-weight:400;letter-spacing:-.05em;line-height:.92;margin:0}.sw-section-head-right{display:grid;gap:22px}.sw-section-head .sw-lede{font-size:17px;line-height:1.42;max-width:710px;margin:0}
.sw-split{display:grid;grid-template-columns:1fr 1fr;background:var(--sw-black);color:#fff;min-height:650px}.sw-split-image{min-height:650px;overflow:hidden}.sw-split-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.72);transition:transform .7s,filter .35s}.sw-split:hover .sw-split-image img{transform:scale(1.02);filter:saturate(1)}.sw-split-copy{padding:70px clamp(28px,6vw,95px);display:flex;flex-direction:column;justify-content:space-between;border-left:1px solid #2f2f2f}.sw-split-copy .sw-eyebrow{font-size:9px;color:var(--sw-orange);text-transform:uppercase;font-weight:900;letter-spacing:.11em}.sw-split-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(45px,5.5vw,84px);font-weight:400;letter-spacing:-.055em;line-height:.92;margin:15px 0 28px}.sw-split-copy p{font-size:14px;max-width:550px}.sw-process-grid{display:grid!important;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--sw-ink)}.sw-process-item{padding:22px 22px 28px;border-right:1px solid var(--sw-ink);border-bottom:1px solid var(--sw-ink);min-height:230px;display:flex;flex-direction:column;justify-content:space-between}.sw-process-item:first-child{border-left:1px solid var(--sw-ink)}.sw-process-item strong{font-size:9px;color:var(--sw-orange)}.sw-process-item h3{font-family:Georgia,'Times New Roman',serif;font-size:34px;font-weight:400;letter-spacing:-.04em;margin:15px 0}.sw-process-item p{font-size:11px;margin:0;color:#555}

/* Work archive gets a straighter grid */
.page-template-page-arbeider .sw-section .sw-project-grid{grid-template-columns:repeat(2,1fr);gap:50px 24px}.page-template-page-arbeider .sw-section .sw-project-card{grid-column:auto}.page-template-page-arbeider .sw-section .sw-project-media{aspect-ratio:16/10}.page-template-page-arbeider .sw-section .sw-project-meta{border-color:#999}.page-template-page-arbeider .sw-section .sw-project-tags{color:#777}.page-template-page-arbeider .sw-section .sw-project-card p{color:#555}

/* Articles */
.sw-articles{background:var(--sw-paper);color:var(--sw-ink);padding:0 max(var(--sw-pad),calc((100vw - var(--sw-wide))/2)) 100px}.sw-article-row{display:grid;grid-template-columns:150px 1fr auto;gap:30px;border-top:1px solid var(--sw-ink);padding:24px 0;align-items:start;transition:padding .2s,background .2s}.sw-article-row:last-child{border-bottom:1px solid var(--sw-ink)}.sw-article-row:hover{padding-left:14px;padding-right:14px;background:var(--sw-orange)}.sw-article-date{font-size:9px;text-transform:uppercase;color:#777;font-weight:800}.sw-article-row h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(28px,3.5vw,50px);font-weight:400;line-height:.98;letter-spacing:-.045em;margin:0}.sw-article-row .arr{font-size:26px}.sw-single{background:var(--sw-paper);color:var(--sw-ink);max-width:none;padding:80px max(var(--sw-pad),calc((100vw - 980px)/2)) 110px}.sw-single-head h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(58px,7vw,100px);font-weight:400;line-height:.88;letter-spacing:-.06em;margin:16px 0 30px}.sw-single-meta{font-size:9px;text-transform:uppercase;color:#777;font-weight:800}.sw-single-featured{width:100%;max-height:720px;object-fit:cover;margin:45px 0;filter:saturate(.78)}.sw-single-content{max-width:760px;margin:auto}.sw-single-content p,.sw-single-content li{font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.6}.sw-single-content h2{font-family:Georgia,'Times New Roman',serif;font-size:46px;font-weight:400;letter-spacing:-.04em;margin-top:58px}.sw-single-content h3{font-family:Georgia,'Times New Roman',serif;font-size:32px;font-weight:400;margin-top:40px}

/* Contact */
.sw-contact-layout{background:var(--sw-paper);color:var(--sw-ink);display:grid;grid-template-columns:1.4fr .6fr;gap:65px;padding:25px max(var(--sw-pad),calc((100vw - var(--sw-wide))/2)) 100px}.sw-contact-form{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--sw-ink);border-left:1px solid var(--sw-ink)}.sw-contact-form label{font-size:9px;text-transform:uppercase;font-weight:900;letter-spacing:.07em;border-right:1px solid var(--sw-ink);border-bottom:1px solid var(--sw-ink);padding:15px;display:flex;flex-direction:column;gap:7px}.sw-contact-form input,.sw-contact-form textarea,.sw-contact-form select{border:0;background:transparent;outline:0;padding:8px 0;font-size:16px;text-transform:none;width:100%;resize:vertical}.sw-contact-form .sw-form-wide{grid-column:1/-1}.sw-contact-form button{grid-column:1/-1;border:0;background:var(--sw-orange);color:#111;padding:17px;text-align:left;cursor:pointer}.sw-contact-details{border-top:1px solid var(--sw-ink);padding-top:12px}.sw-contact-details h3{font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:400;letter-spacing:-.03em}.sw-contact-details p,.sw-contact-details a{font-size:12px}.sw-form-success{padding:14px;background:#dce9d7;margin-bottom:15px}

/* Project single */
.sw-project-single-hero{display:grid;grid-template-columns:.78fr 1.22fr;background:var(--sw-black);color:#fff;min-height:700px}.sw-project-single-copy{padding:70px clamp(28px,6vw,95px);display:flex;flex-direction:column;justify-content:space-between}.sw-project-single-copy .sw-eyebrow{font-size:9px;color:var(--sw-orange);text-transform:uppercase;letter-spacing:.1em}.sw-project-single-copy h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(55px,7vw,110px);font-weight:400;letter-spacing:-.06em;line-height:.84;margin:18px 0}.sw-project-single-copy p{font-size:15px}.sw-project-single-image{min-height:700px;overflow:hidden}.sw-project-single-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.78)}.sw-page-copy{background:var(--sw-paper);color:var(--sw-ink);padding:80px max(var(--sw-pad),calc((100vw - 860px)/2));font-family:Georgia,'Times New Roman',serif}.sw-page-copy .sw-eyebrow{font-family:Arial,Helvetica,sans-serif;font-size:9px;text-transform:uppercase;font-weight:900;color:var(--sw-orange)}.sw-page-copy p,.sw-page-copy li{font-size:19px;line-height:1.6}.sw-page-copy h2{font-size:46px;font-weight:400}.sw-page-copy h3{font-size:32px;font-weight:400}

/* Footer */
.sw-footer{background:var(--sw-black);color:#fff;padding:58px 0 24px;border-top:1px solid #292929}.sw-footer-shell{width:min(calc(100% - (var(--sw-pad)*2)),var(--sw-wide));margin:auto}.sw-footer-brand-row{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid #333;padding-bottom:28px;margin-bottom:28px}.sw-footer-wordmark{font-size:clamp(50px,8vw,118px);font-weight:900;line-height:.8;letter-spacing:-.075em}.sw-footer-wordmark span{color:var(--sw-orange)}.sw-footer-mini{text-align:right;font-size:8px;font-weight:900;letter-spacing:.12em;line-height:1.5;color:#777}.sw-footer-columns{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:45px;border-top:1px solid #333;padding-top:14px;font-size:10px}.sw-footer-label{font-size:8px;font-weight:900;color:var(--sw-orange);letter-spacing:.11em;margin-bottom:14px}.sw-footer-columns p{margin:0 0 12px}.sw-footer-nav ul{display:flex;flex-direction:column;gap:5px}.sw-footer-nav a{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.sw-footer-contact-link{font-family:Georgia,'Times New Roman',serif;font-size:clamp(24px,3vw,46px);letter-spacing:-.04em;border-bottom:1px solid #fff}.sw-footer-contact-link span{color:var(--sw-orange)}.sw-footer-bottom{border-top:1px solid #333;margin-top:48px;padding-top:11px;display:flex;justify-content:space-between;gap:15px;font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:#777}

/* Motion */
.sw-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.65,.25,1),transform .7s cubic-bezier(.2,.65,.25,1)}.sw-reveal.is-visible{opacity:1;transform:none}

@media(max-width:1100px){
  .sw-desktop-nav{display:none}.sw-header-cta{margin-left:auto}.sw-menu-toggle{display:block}.sw-header-inner{grid-template-columns:1fr auto auto}
  .sw-studio-hero-grid{grid-template-columns:95px minmax(0,1fr) 130px}.sw-studio-copy{grid-template-columns:1fr}.sw-studio-actions{justify-content:flex-start}
  .sw-manifesto-grid{grid-template-columns:1.35fr .65fr}.sw-editorial-card-2,.sw-editorial-card-3{grid-template-columns:150px 1fr}
}
@media(max-width:820px){
  :root{--sw-pad:22px}
  .sw-header-inner{height:68px}.sw-header-cta{display:none}.sw-header-inner{grid-template-columns:1fr auto}.custom-logo{max-width:145px}.sw-menu-overlay{padding-top:68px}
  .sw-studio-hero-grid{grid-template-columns:1fr;grid-template-areas:"kicker" "title" "copy" "sidenote";padding-top:42px}.sw-studio-index{display:none}.sw-studio-title{font-size:clamp(54px,13vw,92px);margin:38px 0 45px}.sw-studio-side-note{align-items:flex-start;flex-direction:row;flex-wrap:wrap;margin-top:32px}.sw-studio-copy{gap:28px}.sw-studio-actions{flex-wrap:wrap}.sw-studio-visual{height:72vw;min-height:430px}
  .sw-studio-section-top{grid-template-columns:1fr;gap:20px}.sw-service-row{grid-template-columns:45px 1fr 40px}.sw-service-row em{display:none}.sw-service-visual-grid{grid-template-columns:1fr}.sw-service-visual-image{border-left:0;border-top:1px solid var(--sw-ink);min-height:420px}
  .sw-work-intro{grid-template-columns:1fr;gap:28px}.sw-project-grid{grid-template-columns:1fr 1fr}.sw-project-card,.sw-project-card:nth-child(n){grid-column:auto}.sw-project-card:nth-child(n) .sw-project-media{aspect-ratio:16/10}.sw-project-card:nth-child(2n) .sw-project-media{aspect-ratio:4/5}.sw-project-meta{grid-template-columns:1fr}.sw-project-card p{text-align:left}.sw-manifesto-grid{grid-template-columns:1fr;gap:45px}.sw-editorial-grid{grid-template-columns:1fr}.sw-editorial-card-1{grid-row:auto}.sw-editorial-card-2,.sw-editorial-card-3{grid-template-columns:190px 1fr}.sw-contact-poster-bottom{grid-template-columns:1fr 1fr}.sw-contact-poster-bottom>*:last-child{text-align:left;grid-column:1/-1}
  .sw-page-hero{grid-template-columns:1fr;padding:65px 0 58px}.sw-page-hero>.sw-arrow-link{grid-column:auto}.sw-section-head{grid-template-columns:1fr}.sw-split{grid-template-columns:1fr}.sw-split-image{min-height:480px}.sw-process-grid{grid-template-columns:1fr 1fr!important}.sw-contact-layout{grid-template-columns:1fr}.sw-project-single-hero{grid-template-columns:1fr}.sw-project-single-image{min-height:500px}.page-template-page-arbeider .sw-section .sw-project-grid{grid-template-columns:1fr 1fr}
  .sw-footer-columns{grid-template-columns:1fr 1fr}.sw-footer-contact{grid-column:1/-1}
}
@media(max-width:560px){
  :root{--sw-pad:18px}
  .sw-header-inner{height:64px}.sw-menu-overlay{padding-top:64px}.sw-menu-overlay-inner{padding-top:28px}.sw-menu-coord{display:none}.sw-overlay-menu a{font-size:45px}
  .sw-studio-hero-grid{padding-top:32px;padding-bottom:38px}.sw-studio-title{font-size:54px;line-height:.88;margin:31px 0 36px}.sw-studio-copy p{font-size:12px}.sw-studio-actions{gap:18px}.sw-studio-side-note{font-size:7px}.sw-studio-visual{min-height:330px;height:88vw}.sw-studio-image-stamp{font-size:8px}
  .sw-marquee-track{gap:18px;padding:10px 0}.sw-marquee span{font-size:10px}
  .sw-studio-services{padding:58px 0 70px}.sw-service-row{grid-template-columns:32px 1fr 28px;min-height:78px;gap:12px}.sw-service-row strong{font-size:31px}.sw-service-arrow{font-size:21px}.sw-service-visual-grid{margin-top:65px;min-height:0}.sw-service-visual-copy{min-height:390px}.sw-service-visual-image{min-height:300px}.sw-service-visual-copy h2{font-size:42px}
  .sw-selected-work{padding:68px 0}.sw-work-intro{margin-bottom:42px}.sw-work-intro h2{font-size:44px}.sw-project-grid{grid-template-columns:1fr;gap:44px}.sw-project-card:nth-child(n) .sw-project-media{aspect-ratio:16/10}.sw-project-card h3{font-size:30px}.sw-work-footer-link{justify-content:flex-start}
  .sw-orange-manifesto{padding:58px 0 68px}.sw-manifesto-meta span:last-child{display:none}.sw-manifesto-grid{margin-top:40px}.sw-manifesto-grid h2{font-size:55px}.sw-studio-latest{padding:60px 0 72px}.sw-editorial-card-2,.sw-editorial-card-3{grid-template-columns:1fr}.sw-editorial-card-2 .sw-editorial-image,.sw-editorial-card-3 .sw-editorial-image{aspect-ratio:1.4/1}.sw-editorial-card-2 .sw-editorial-meta,.sw-editorial-card-3 .sw-editorial-meta{margin-top:11px}.sw-all-posts-link{margin-left:0}
  .sw-contact-poster{padding:58px 0 42px}.sw-contact-poster h2{font-size:69px;margin:54px 0 60px}.sw-contact-poster-bottom{grid-template-columns:1fr;gap:7px}.sw-contact-poster-bottom>*:last-child{grid-column:auto}.sw-contact-poster-top span:last-child{display:none}
  .sw-page-hero{padding:52px 0 46px}.sw-page-hero h1{font-size:58px}.sw-page-image{height:75vw;min-height:320px}.sw-section{padding:58px 18px}.sw-section-head h2{font-size:46px}.sw-split-image{min-height:330px}.sw-split-copy{padding:52px 22px;min-height:500px}.sw-process-grid{grid-template-columns:1fr!important}.sw-process-item{min-height:175px}.page-template-page-arbeider .sw-section .sw-project-grid{grid-template-columns:1fr}.sw-article-row{grid-template-columns:1fr auto}.sw-article-date{grid-column:1/-1}.sw-contact-form{grid-template-columns:1fr}.sw-contact-form .sw-form-wide{grid-column:auto}.sw-project-single-image{min-height:350px}.sw-footer-brand-row{align-items:flex-start;flex-direction:column;gap:22px}.sw-footer-mini{text-align:left}.sw-footer-columns{grid-template-columns:1fr}.sw-footer-contact{grid-column:auto}.sw-footer-bottom{flex-direction:column}.sw-menu-contact{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sw-reveal{opacity:1;transform:none;transition:none}.sw-marquee-track{animation:none}.sw-studio-visual img{transform:none!important}.sw-project-media img,.sw-editorial-image img,.sw-service-visual-image img{transition:none}}

/* =========================================================
   SOLIDWEB INDEX — v1.3.0
   Deliberately restrained editorial direction.
   No marquee, no glass, no pill UI, no "AI agency" blocks.
   ========================================================= */
:root{
  --swx-black:#050505;
  --swx-paper:#f3f0e8;
  --swx-white:#fff;
  --swx-ink:#11110f;
  --swx-muted:#77746d;
  --swx-line:#cfcac0;
  --swx-accent:#ff4f2f;
  --swx-page:1090px;
  --swx-wide:1500px;
}
body{background:var(--swx-black);font-family:Arial,Helvetica,sans-serif;color:var(--swx-ink);font-size:16px}
#main-content{overflow:visible}
::selection{background:var(--swx-accent);color:#000}

/* Quiet, un-designed-looking header: this is intentional. */
.sw-header{position:relative;top:auto;background:var(--swx-black);border:0;color:#fff;backdrop-filter:none}
.sw-header.is-scrolled{background:var(--swx-black);border-color:transparent}
.sw-header-inner{height:62px;width:min(calc(100% - 40px),var(--swx-page));grid-template-columns:auto 1fr auto;gap:28px}
.sw-logo-wrap{min-width:120px}
.custom-logo{max-width:142px;max-height:34px}
.sw-wordmark{font-size:19px;letter-spacing:-.035em}
.sw-desktop-nav{justify-self:end}
.sw-desktop-nav ul{gap:19px}
.sw-desktop-nav a{font-size:9px;letter-spacing:.06em;font-weight:700;padding:4px 0}
.sw-desktop-nav a:after{display:none}
.sw-header-cta{font-size:9px;letter-spacing:.06em;border-left:1px solid #313131;padding-left:20px;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}
.sw-header-cta span{display:none}

/* Menu deliberately plain instead of flashy */
.sw-menu-overlay{background:var(--swx-paper);color:var(--swx-ink);padding-top:62px;transform:none}
.sw-menu-overlay-inner{width:min(calc(100% - 40px),var(--swx-page));padding:32px 0}
.sw-menu-kicker,.sw-menu-coord{font-size:10px;letter-spacing:.08em}
.sw-overlay-menu li{border-color:#bcb7ad}
.sw-overlay-menu li:first-child{border-color:#bcb7ad}
.sw-overlay-menu a{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(42px,6.3vw,78px);letter-spacing:-.045em;padding:7px 0}
.sw-overlay-menu a:after{content:""}
.sw-overlay-menu a:hover{padding-left:0;font-style:italic}
.sw-menu-toggle span{background:#fff}
.menu-open .sw-menu-toggle span{background:#111}

/* Intro — closer to an editorial spread than a landing-page hero */
.swx-intro{background:var(--swx-black);color:#fff;padding:8px 20px 38px}
.swx-intro-inner{width:min(100%,var(--swx-page));margin:auto}
.swx-intro-topline{display:flex;justify-content:space-between;border-top:1px solid #303030;padding-top:10px;font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:#8f8f89}
.swx-intro h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(43px,5.35vw,72px);line-height:1.02;letter-spacing:-.045em;margin:44px 0 38px;max-width:900px}
.swx-intro-grid{display:grid;grid-template-columns:190px minmax(0,520px);gap:56px;justify-content:start;border-top:1px solid #303030;padding-top:16px}
.swx-capability-list{display:flex;flex-direction:column;gap:3px}
.swx-capability-list a{font-size:12px;font-weight:800;line-height:1.35}
.swx-capability-list a:hover{color:var(--swx-accent)}
.swx-intro-copy p{margin:0 0 14px;font-size:14px;line-height:1.45;color:#d4d2cb}
.swx-intro-copy .swx-intro-note{color:#7f7d77}
.swx-text-link{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid currentColor;padding-bottom:2px}
.swx-text-link:hover{color:var(--swx-accent)}

/* One image. No badge, no gradient, no fake browser chrome. */
.swx-hero-image{margin:0;background:#111;position:relative;overflow:hidden;--swx-parallax:0px}
.swx-hero-image img{width:100%;height:clamp(420px,55vw,790px);object-fit:cover;object-position:center;filter:saturate(.78) contrast(1.02);transform:translate3d(0,var(--swx-parallax),0) scale(1.07);transform-origin:center center;will-change:transform;backface-visibility:hidden}
.swx-hero-image figcaption{position:absolute;left:20px;right:20px;bottom:13px;display:flex;justify-content:space-between;gap:20px;font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#fff;text-shadow:0 1px 8px #000}

/* Service "house": more like a contents page than cards. */
.swx-service-house{background:var(--swx-black);color:#fff;padding:58px 20px 72px}
.swx-service-house-inner{width:min(100%,var(--swx-page));margin:auto}
.swx-section-heading{display:grid;grid-template-columns:190px 1fr;gap:56px;align-items:start;margin-bottom:42px}
.swx-section-heading>span{font-family:Georgia,'Times New Roman',serif;font-size:24px;color:#9b8f67}
.swx-section-heading h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:36px;line-height:1.05;letter-spacing:-.035em;margin:0;max-width:500px}
.swx-service-matrix{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #343434;border-bottom:1px solid #343434}
.swx-service-matrix a{min-height:160px;padding:18px 18px 18px 0;border-right:1px solid #343434;display:flex;flex-direction:column;justify-content:space-between}
.swx-service-matrix a+a{padding-left:18px}
.swx-service-matrix a:last-child{border-right:0}
.swx-service-matrix b{font-family:Georgia,'Times New Roman',serif;font-size:26px;font-weight:400;letter-spacing:-.03em}
.swx-service-matrix span{font-size:12px;line-height:1.45;color:#85847e;max-width:190px}
.swx-service-matrix a:hover b{font-style:italic;color:var(--swx-accent)}

/* Proof strip */
.swx-proof{background:var(--swx-paper);display:grid;grid-template-columns:repeat(3,1fr) 1.35fr;border-bottom:1px solid var(--swx-line);color:var(--swx-ink)}
.swx-proof>*{min-height:190px;padding:24px clamp(18px,3vw,42px);border-right:1px solid var(--swx-line)}
.swx-proof>*:last-child{border-right:0}
.swx-proof-item{display:flex;flex-direction:column;justify-content:space-between}
.swx-proof-item strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(52px,6.2vw,94px);font-weight:400;line-height:.9;letter-spacing:-.055em}
.swx-proof-item span{font-size:10px;text-transform:uppercase;letter-spacing:.07em}
.swx-proof-copy{display:flex;align-items:flex-end;font-family:Georgia,'Times New Roman',serif;font-size:27px;line-height:1.08}

/* Work — alternating editorial plates, not cards */
.swx-work{background:var(--swx-paper);padding:72px 20px 90px}
.swx-work-head{width:min(100%,var(--swx-page));margin:0 auto 56px;display:grid;grid-template-columns:190px minmax(0,500px);gap:56px;border-top:1px solid var(--swx-line);padding-top:11px}
.swx-work-head span{font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.08em}
.swx-work-head p{font-family:Georgia,'Times New Roman',serif;font-size:21px;line-height:1.25;margin:0}
.swx-work-list{width:min(100%,var(--swx-wide));margin:auto;display:flex;flex-direction:column;gap:80px}
.swx-work-row{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);min-height:540px;border-top:1px solid var(--swx-line)}
.swx-work-row.is-reverse{grid-template-columns:minmax(300px,.7fr) minmax(0,1.7fr)}
.swx-work-row.is-reverse .swx-work-image{order:2}.swx-work-row.is-reverse .swx-work-copy{order:1;border-left:0;border-right:1px solid var(--swx-line)}
.swx-work-image{overflow:hidden;background:#ddd;min-height:520px}
.swx-work-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.25,1)}
.swx-work-image:hover img{transform:scale(1.012)}
.swx-work-copy{border-left:1px solid var(--swx-line);padding:18px 26px 26px;display:flex;flex-direction:column;justify-content:space-between}
.swx-work-index{font-size:10px;color:#8b877f}
.swx-work-tags{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#77736b;margin-bottom:8px}
.swx-work-copy h3{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,4.2vw,70px);font-weight:400;letter-spacing:-.05em;line-height:.94;margin:0 0 18px}
.swx-work-copy h3 a:hover{font-style:italic}
.swx-work-copy p{font-size:13px;line-height:1.45;max-width:300px;margin:0}
.swx-work-all{width:min(100%,var(--swx-page));margin:42px auto 0;text-align:right}

/* About: image + text, deliberately conventional and calm */
.swx-about{display:grid;grid-template-columns:1.25fr .75fr;background:#dcd8ce;color:var(--swx-ink)}
.swx-about-image{min-height:650px;overflow:hidden}.swx-about-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.62)}
.swx-about-copy{padding:54px clamp(28px,5vw,76px);display:flex;flex-direction:column;justify-content:flex-end;border-left:1px solid #bdb8ae}
.swx-small-label{font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.08em}
.swx-about-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,4.7vw,72px);line-height:.96;font-weight:400;letter-spacing:-.05em;margin:22px 0 28px}
.swx-about-copy p{font-size:14px;line-height:1.5;max-width:460px;margin:0 0 34px}
.swx-about-copy .swx-text-link{align-self:flex-start}

/* Journal behaves like a newspaper index */
.swx-journal{background:#fff;color:var(--swx-ink);padding:64px 20px 80px}
.swx-journal-head,.swx-journal-list,.swx-journal-all{width:min(100%,var(--swx-page));margin-inline:auto}
.swx-journal-head{display:grid;grid-template-columns:190px 1fr;gap:56px;align-items:end;margin-bottom:34px}
.swx-journal-head>span{font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.08em}
.swx-journal-head h2{font-family:Georgia,'Times New Roman',serif;font-size:50px;font-weight:400;letter-spacing:-.04em;margin:0}
.swx-journal-row{display:grid;grid-template-columns:190px 1fr auto;gap:24px;align-items:center;border-top:1px solid #bdb8ae;padding:16px 0}
.swx-journal-row:last-child{border-bottom:1px solid #bdb8ae}
.swx-journal-date{font-size:10px;color:#77736b}
.swx-journal-row h3{font-family:Georgia,'Times New Roman',serif;font-size:26px;font-weight:400;line-height:1.08;letter-spacing:-.025em;margin:0}
.swx-journal-row h3 a:hover{font-style:italic}
.swx-journal-read{font-size:10px;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}
.swx-journal-all{text-align:right;margin-top:22px}

/* Contact */
.swx-contact{background:var(--swx-black);color:#fff;padding:82px 20px 70px}
.swx-contact-inner{width:min(100%,var(--swx-page));margin:auto}
.swx-contact h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(58px,8.2vw,118px);line-height:.86;letter-spacing:-.06em;font-weight:400;margin:35px 0 70px;max-width:850px}
.swx-contact-meta{border-top:1px solid #333;padding-top:12px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;font-size:11px;color:#b7b5af}
.swx-contact-meta a:hover{color:#fff}

/* Footer — no giant wordmark */
.sw-footer{background:var(--swx-black);color:#fff;padding:0 20px 24px;border-top:1px solid #2e2e2e}
.sw-footer-shell{width:min(100%,var(--swx-page))}
.sw-footer-brand-row{padding:22px 0;margin-bottom:0;border-bottom:1px solid #2e2e2e;align-items:center}
.sw-footer-wordmark{font-family:Arial,Helvetica,sans-serif;font-size:20px;letter-spacing:-.025em;font-weight:800;line-height:1}
.sw-footer-wordmark span{color:inherit}
.sw-footer-mini{font-size:8px;letter-spacing:.08em;color:#777}
.sw-footer-columns{grid-template-columns:1fr 1fr 1fr;gap:30px;padding:18px 0 22px;border-top:0;border-bottom:1px solid #2e2e2e}
.sw-footer-label{font-size:8px;color:#73736f;letter-spacing:.08em;margin-bottom:10px}
.sw-footer-columns p,.sw-footer-nav a{font-size:10px;font-weight:400;text-transform:none;letter-spacing:0}
.sw-footer-nav ul{gap:2px}
.sw-footer-bottom{border-top:0;margin-top:0;padding-top:12px;font-size:8px;color:#696965}

/* Generic inner pages: same visual grammar, minus the v1.2 theatrics */
.sw-page-hero{background:var(--swx-black);color:#fff;display:grid;grid-template-columns:190px 1fr;gap:56px;width:auto;margin:0;padding:58px max(20px,calc((100vw - var(--swx-page))/2)) 64px}
.sw-page-hero .sw-eyebrow{font-size:10px;color:#85837e;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.sw-page-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(46px,5.25vw,76px);line-height:.98;font-weight:400;letter-spacing:-.05em;margin:0 0 24px;max-width:800px}
.sw-page-hero p{grid-column:2;font-size:14px;line-height:1.5;color:#c8c6c0;max-width:520px;margin:0}
.sw-page-hero>.sw-arrow-link{grid-column:2;justify-self:start;margin-top:12px}
.sw-page-image{width:100%;height:min(58vw,760px);object-fit:cover;filter:saturate(.72)}
.sw-section{background:var(--swx-paper);color:var(--swx-ink);padding:70px max(20px,calc((100vw - var(--swx-page))/2))}
.sw-section-head{grid-template-columns:190px 1fr;gap:56px;border-top:1px solid var(--swx-line);padding-top:12px}
.sw-section-label{font-size:10px;color:#77736b;text-transform:uppercase;letter-spacing:.07em;font-weight:700}
.sw-section-head h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,4.2vw,62px);font-weight:400;line-height:1;letter-spacing:-.045em;margin:0 0 22px}
.sw-lede{font-size:15px;line-height:1.55;max-width:620px}
.sw-process-grid{border-top:1px solid var(--swx-line);border-left:0;margin-top:50px}
.sw-process-item{border-right:0;border-left:0;border-bottom:1px solid var(--swx-line);min-height:150px;padding:18px 0;display:grid;grid-template-columns:70px 180px 1fr;align-items:start;gap:20px}
.sw-process-item strong{font-size:10px;color:#8a867e}.sw-process-item h3{font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:400;margin:0}.sw-process-item p{font-size:13px;max-width:430px;margin:4px 0 0}
.sw-split{background:var(--swx-black);color:#fff;grid-template-columns:1.15fr .85fr}
.sw-split-copy{background:var(--swx-black);color:#fff;min-height:600px;padding:52px max(28px,5vw)}
.sw-split-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(44px,4.2vw,66px);font-weight:400;line-height:.96;letter-spacing:-.05em}
.sw-split-copy p{font-size:14px;line-height:1.55;color:#c4c2bc}
.sw-split-image{min-height:600px}.sw-split-image img{filter:saturate(.68)}
.sw-arrow-link{font-size:10px;border-bottom:1px solid currentColor;letter-spacing:.05em}.sw-arrow-link span{display:none}
.sw-page-copy{background:var(--swx-paper);color:var(--swx-ink);font-family:Georgia,'Times New Roman',serif;padding:70px max(20px,calc((100vw - 760px)/2))}
.sw-page-copy p,.sw-page-copy li{font-size:19px}.sw-page-copy h2{font-size:44px}.sw-page-copy h3{font-size:31px}
.sw-articles{background:#fff;color:var(--swx-ink);padding:20px max(20px,calc((100vw - var(--swx-page))/2)) 80px}
.sw-article-row{grid-template-columns:150px 1fr auto;border-color:#bdb8ae;padding:16px 0}.sw-article-row h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:27px;letter-spacing:-.025em}.sw-article-row .arr{font-size:0}.sw-article-row .arr:after{content:"Les";font-size:10px;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}
.sw-contact-layout{background:var(--swx-paper);color:var(--swx-ink);grid-template-columns:1.3fr .7fr;gap:50px;padding:45px max(20px,calc((100vw - var(--swx-page))/2)) 80px}
.sw-contact-form{border:0;border-top:1px solid var(--swx-ink)}
.sw-contact-form label{border:0;border-bottom:1px solid #bdb8ae;padding:14px 0;margin-right:22px}
.sw-contact-form input,.sw-contact-form textarea,.sw-contact-form select{font-family:Georgia,'Times New Roman',serif;font-size:19px}
.sw-contact-form button{background:transparent;color:var(--swx-ink);border:0;border-bottom:1px solid var(--swx-ink);padding:14px 0;justify-self:start;width:auto}
.sw-contact-details{border-color:#bdb8ae}.sw-contact-details h3{font-size:29px}
.sw-project-single-hero{background:var(--swx-black);grid-template-columns:.72fr 1.28fr}.sw-project-single-copy{padding:58px max(28px,5vw)}.sw-project-single-copy h1{font-size:clamp(52px,6.2vw,92px)}

/* Old v1.2 homepage elements are disabled if cached template fragments linger. */
.sw-marquee,.sw-orange-manifesto{display:none!important}

@media(max-width:900px){
  .swx-service-matrix{grid-template-columns:1fr 1fr}.swx-service-matrix a:nth-child(2){border-right:0}.swx-service-matrix a:nth-child(-n+2){border-bottom:1px solid #343434}
  .swx-proof{grid-template-columns:1fr 1fr}.swx-proof>*:nth-child(2){border-right:0}.swx-proof>*:nth-child(-n+2){border-bottom:1px solid var(--swx-line)}
  .swx-work-row,.swx-work-row.is-reverse{grid-template-columns:1fr 300px;min-height:440px}.swx-work-row.is-reverse .swx-work-image{order:1}.swx-work-row.is-reverse .swx-work-copy{order:2;border-left:1px solid var(--swx-line);border-right:0}.swx-work-image{min-height:420px}
  .swx-about{grid-template-columns:1fr 1fr}.swx-about-image{min-height:520px}
}
@media(max-width:820px){
  .sw-header-inner{height:60px;grid-template-columns:1fr auto}.sw-desktop-nav,.sw-header-cta{display:none}.sw-menu-toggle{display:block}.sw-menu-overlay{padding-top:60px}
  .swx-intro{padding-top:4px}.swx-intro h1{font-size:54px;margin:36px 0 34px}.swx-intro-grid,.swx-section-heading,.swx-work-head,.swx-journal-head{grid-template-columns:150px 1fr;gap:30px}
  .swx-work-list{gap:52px}.swx-work-row,.swx-work-row.is-reverse{grid-template-columns:1fr}.swx-work-row .swx-work-image,.swx-work-row .swx-work-copy,.swx-work-row.is-reverse .swx-work-image,.swx-work-row.is-reverse .swx-work-copy{order:initial}.swx-work-copy,.swx-work-row.is-reverse .swx-work-copy{border-left:0;border-right:0;border-top:1px solid var(--swx-line);min-height:280px}
  .swx-about{grid-template-columns:1fr}.swx-about-image{min-height:500px}.swx-about-copy{border-left:0;border-top:1px solid #bdb8ae;min-height:460px}
  .sw-page-hero{grid-template-columns:150px 1fr;gap:30px}.sw-page-hero p,.sw-page-hero>.sw-arrow-link{grid-column:2}
  .sw-section-head{grid-template-columns:150px 1fr;gap:30px}.sw-process-item{grid-template-columns:50px 150px 1fr}.sw-split{grid-template-columns:1fr}.sw-contact-layout{grid-template-columns:1fr}
}
@media(max-width:560px){
  .sw-header-inner{width:calc(100% - 28px)}
  .swx-intro{padding:0 14px 34px}.swx-intro-topline{font-size:8px}.swx-intro-topline span:last-child{display:none}.swx-intro h1{font-size:46px;line-height:1;margin:31px 0}
  .swx-intro-grid{grid-template-columns:1fr;gap:24px}.swx-capability-list{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #303030;padding-bottom:16px}.swx-capability-list a{font-size:11px}
  .swx-hero-image img{height:76vw;min-height:330px;transform:translate3d(0,var(--swx-parallax),0) scale(1.045)}.swx-hero-image figcaption{left:14px;right:14px;font-size:8px}.swx-hero-image figcaption span:last-child{display:none}
  .swx-service-house{padding:46px 14px 55px}.swx-section-heading{grid-template-columns:1fr;gap:14px}.swx-section-heading h2{font-size:31px}.swx-section-heading>span{font-size:20px}.swx-service-matrix{grid-template-columns:1fr}.swx-service-matrix a,.swx-service-matrix a+a{padding:15px 0;border-right:0;border-bottom:1px solid #343434;min-height:120px}.swx-service-matrix a:last-child{border-bottom:0}.swx-service-matrix b{font-size:24px}
  .swx-proof{grid-template-columns:1fr 1fr}.swx-proof>*{min-height:140px;padding:18px 14px}.swx-proof-item strong{font-size:56px}.swx-proof-copy{grid-column:1/-1;border-top:1px solid var(--swx-line);font-size:23px;min-height:120px}.swx-proof>*:nth-child(3){border-right:1px solid var(--swx-line)}
  .swx-work{padding:55px 14px 65px}.swx-work-head{grid-template-columns:1fr;gap:12px;margin-bottom:36px}.swx-work-head p{font-size:20px}.swx-work-list{gap:44px}.swx-work-image{min-height:300px;aspect-ratio:4/3}.swx-work-copy,.swx-work-row.is-reverse .swx-work-copy{min-height:250px;padding:15px 0 0}.swx-work-copy h3{font-size:46px}.swx-work-all{text-align:left;margin-top:32px}
  .swx-about-image{min-height:360px}.swx-about-copy{padding:40px 14px;min-height:420px}.swx-about-copy h2{font-size:47px}
  .swx-journal{padding:48px 14px 60px}.swx-journal-head{grid-template-columns:1fr;gap:10px}.swx-journal-head h2{font-size:42px}.swx-journal-row{grid-template-columns:1fr auto;gap:10px;padding:14px 0}.swx-journal-date{grid-column:1/-1}.swx-journal-row h3{font-size:23px}.swx-journal-all{text-align:left}
  .swx-contact{padding:58px 14px}.swx-contact h2{font-size:62px;margin:32px 0 54px}.swx-contact-meta{grid-template-columns:1fr;gap:8px}
  .sw-footer{padding-left:14px;padding-right:14px}.sw-footer-brand-row{align-items:flex-start}.sw-footer-mini{max-width:180px;text-align:right}.sw-footer-columns{grid-template-columns:1fr 1fr}.sw-footer-nav{grid-column:1/-1}.sw-footer-bottom{flex-direction:column;gap:4px}
  .sw-page-hero{grid-template-columns:1fr;gap:13px;padding:46px 14px 50px}.sw-page-hero h1{font-size:50px}.sw-page-hero p,.sw-page-hero>.sw-arrow-link{grid-column:1}.sw-page-image{height:75vw}.sw-section{padding:50px 14px}.sw-section-head{grid-template-columns:1fr;gap:13px}.sw-section-head h2{font-size:46px}.sw-process-item{grid-template-columns:42px 1fr;gap:12px}.sw-process-item p{grid-column:2}.sw-split-copy{padding:44px 14px;min-height:480px}.sw-split-image{min-height:340px}.sw-articles{padding:10px 14px 60px}.sw-article-row{grid-template-columns:1fr auto}.sw-article-date{grid-column:1/-1}.sw-contact-layout{padding:30px 14px 60px}.sw-contact-form{grid-template-columns:1fr}.sw-contact-form .sw-form-wide{grid-column:1}.sw-contact-form label{margin-right:0}.sw-project-single-hero{grid-template-columns:1fr}
}

.sw-empty-portfolio{font-size:16px;padding:28px 0;border-top:1px solid currentColor;border-bottom:1px solid currentColor;opacity:.72}


@media (prefers-reduced-motion:reduce){
  .swx-hero-image img{transform:none!important;will-change:auto}
}

/* =========================================================
   SOLIDWEB INDEX — v1.3.4
   Readability pass: larger navigation, footer and body copy.
   ========================================================= */

/* Base reading scale */
body{font-size:17px;line-height:1.55}

/* Header / desktop navigation */
.sw-header-inner{height:82px}
.sw-desktop-nav ul{gap:30px}
.sw-desktop-nav a{font-size:13px;line-height:1.2;letter-spacing:.065em;padding:10px 0}
.sw-header-cta{font-size:13px;line-height:1.2;letter-spacing:.065em;padding-left:26px}
.sw-wordmark{font-size:24px}

/* Homepage intro and small editorial copy */
.swx-intro-topline{font-size:11px;line-height:1.4}
.swx-capability-list a{font-size:15px;line-height:1.45}
.swx-intro-copy p{font-size:18px;line-height:1.58}
.swx-intro-note{font-size:17px!important}
.swx-text-link{font-size:13px;line-height:1.35}
.swx-hero-image figcaption{font-size:11px;line-height:1.4}

/* Homepage services */
.swx-section-heading h2{font-size:40px}
.swx-service-matrix b{font-size:29px}
.swx-service-matrix span{font-size:16px;line-height:1.55;max-width:230px}
.swx-proof-item span{font-size:12px;line-height:1.35}
.swx-proof-copy{font-size:30px;line-height:1.12}

/* Work / portfolio */
.swx-work-head span{font-size:12px}
.swx-work-head p{font-size:24px;line-height:1.35}
.swx-work-index{font-size:12px}
.swx-work-tags{font-size:11px;line-height:1.4}
.swx-work-copy p{font-size:17px;line-height:1.55;max-width:360px}

/* About and journal */
.swx-small-label{font-size:11px;line-height:1.4}
.swx-about-copy p{font-size:18px;line-height:1.6;max-width:520px}
.swx-journal-head>span{font-size:12px}
.swx-journal-date{font-size:12px;line-height:1.4}
.swx-journal-row h3{font-size:30px;line-height:1.15}
.swx-journal-read{font-size:12px}

/* Contact */
.swx-contact-meta{font-size:15px;line-height:1.5}

/* Standard landing pages and articles */
.sw-page-hero .sw-eyebrow{font-size:12px}
.sw-page-hero p{font-size:18px;line-height:1.6}
.sw-section-label{font-size:12px}
.sw-lede{font-size:19px;line-height:1.65}
.sw-process-item strong{font-size:12px}
.sw-process-item p{font-size:17px;line-height:1.6}
.sw-split-copy p{font-size:18px;line-height:1.65}
.sw-page-copy p,.sw-page-copy li{font-size:20px;line-height:1.7}
.sw-article-row h2{font-size:30px}
.sw-article-row .arr:after{font-size:12px}
.sw-contact-details p,.sw-contact-details a{font-size:16px;line-height:1.6}
.sw-project-single-copy .sw-eyebrow{font-size:11px}
.sw-project-single-copy p{font-size:18px;line-height:1.6}

/* Footer — intentionally no tiny legal-looking body text */
.sw-footer{padding-top:64px}
.sw-footer-mini{font-size:12px;line-height:1.6;letter-spacing:.09em}
.sw-footer-columns{font-size:15px;line-height:1.55;gap:55px}
.sw-footer-label{font-size:12px;line-height:1.35;margin-bottom:16px}
.sw-footer-columns p{font-size:15px;line-height:1.6;margin-bottom:14px}
.sw-footer-nav ul{gap:9px}
.sw-footer-nav a{font-size:14px;line-height:1.45;letter-spacing:.035em}
.sw-footer-bottom{font-size:11px;line-height:1.5;letter-spacing:.055em;margin-top:52px;padding-top:15px}

/* Overlay menu supporting text */
.sw-menu-kicker,.sw-menu-coord{font-size:12px}
.sw-menu-contact{font-size:14px;line-height:1.5}

@media(max-width:1100px){
  .sw-header-inner{height:76px}
}

@media(max-width:820px){
  body{font-size:16px}
  .sw-header-inner{height:70px}
  .sw-menu-overlay{padding-top:70px}
  .swx-intro-topline{font-size:10px}
  .swx-capability-list a{font-size:14px}
  .swx-intro-copy p{font-size:17px}
  .swx-service-matrix span{font-size:15px;max-width:none}
  .swx-work-head p{font-size:22px}
  .swx-work-copy p{font-size:16px}
  .swx-about-copy p{font-size:17px}
  .swx-journal-row h3{font-size:26px}
  .swx-contact-meta{font-size:14px}
  .sw-page-hero p,.sw-split-copy p{font-size:17px}
  .sw-lede{font-size:18px}
  .sw-process-item p{font-size:16px}
  .sw-footer-columns{font-size:14px;gap:34px}
  .sw-footer-columns p{font-size:14px}
  .sw-footer-nav a{font-size:13px}
  .sw-footer-label{font-size:11px}
  .sw-footer-mini{font-size:11px}
  .sw-footer-bottom{font-size:10px}
}

@media(max-width:560px){
  .sw-header-inner{height:66px}
  .sw-menu-overlay{padding-top:66px}
  .swx-capability-list a{font-size:13px}
  .swx-intro-copy p{font-size:17px!important;line-height:1.6}
  .swx-hero-image figcaption{font-size:10px}
  .swx-service-matrix span{font-size:15px}
  .swx-proof-item span{font-size:11px}
  .swx-work-tags{font-size:10px}
  .swx-work-copy p{font-size:16px}
  .swx-about-copy p{font-size:17px}
  .swx-journal-date,.swx-journal-read{font-size:11px}
  .sw-page-copy p,.sw-page-copy li{font-size:18px}
  .sw-footer{padding-top:48px}
  .sw-footer-mini{font-size:11px}
  .sw-footer-columns p{font-size:15px}
  .sw-footer-nav a{font-size:14px}
  .sw-footer-label{font-size:12px}
  .sw-footer-bottom{font-size:10px}
  .sw-menu-kicker{font-size:11px}
  .sw-menu-contact{font-size:14px}
}


/* =========================================================
   SOLIDWEB INDEX — v1.3.6
   Process / value panels: wider copy, calmer editorial rhythm.
   ========================================================= */
.sw-process-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  margin-top:62px;
  border-top:1px solid var(--swx-line);
  border-left:1px solid var(--swx-line);
  border-right:0;
}
.sw-process-item{
  min-width:0;
  min-height:300px;
  padding:22px 28px 28px;
  border:0;
  border-right:1px solid var(--swx-line);
  border-bottom:1px solid var(--swx-line);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:0;
}
.sw-process-item strong{
  display:block;
  font-size:12px;
  line-height:1;
  font-weight:500;
  letter-spacing:.04em;
  color:#77736b;
}
.sw-process-item h3{
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(31px,2.4vw,39px);
  line-height:1.05;
  letter-spacing:-.04em;
  font-weight:400;
  margin:48px 0 22px;
  max-width:270px;
}
.sw-process-item p{
  font-size:17px;
  line-height:1.55;
  color:#4d4a44;
  max-width:300px;
  margin:auto 0 0;
}

/* Give the section intro a little more breathing room before the panels. */
.sw-section-head-right{min-width:0}
.sw-section-head .sw-lede{max-width:680px}

@media(max-width:900px){
  .sw-process-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    margin-top:48px;
  }
  .sw-process-item{min-height:270px}
}

@media(max-width:620px){
  .sw-process-grid{
    grid-template-columns:1fr!important;
    margin-top:38px;
    border-left:0;
  }
  .sw-process-item{
    min-height:0;
    padding:20px 0 26px;
    border-right:0;
    display:grid;
    grid-template-columns:44px 1fr;
    column-gap:14px;
  }
  .sw-process-item strong{grid-column:1;grid-row:1 / span 2;padding-top:5px}
  .sw-process-item h3{
    grid-column:2;
    margin:0 0 12px;
    font-size:31px;
    max-width:none;
  }
  .sw-process-item p{
    grid-column:2;
    margin:0;
    max-width:34em;
    font-size:16px;
  }
}

/* Footer phone availability — v1.3.6 */
.sw-phone-hours {
  white-space: nowrap;
  opacity: .68;
  font-size: .9em;
  margin-left: .22em;
}


/* Solid.Work Incoming Form integration — v1.3.7 */
.sw-solidwork-form form{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--swx-ink,#111)}
.sw-solidwork-form form label{display:flex;flex-direction:column;gap:8px;padding:16px 22px 16px 0;border-bottom:1px solid #bdb8ae;font-size:13px;font-weight:700;letter-spacing:.03em}
.sw-solidwork-form form input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
.sw-solidwork-form form textarea,
.sw-solidwork-form form select{width:100%;border:0;background:transparent;border-radius:0;outline:0;padding:9px 0;font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.35;color:inherit}
.sw-solidwork-form form textarea{min-height:145px;resize:vertical}
.sw-solidwork-form form button,
.sw-solidwork-form form input[type=submit]{appearance:none;border:0;border-bottom:1px solid var(--swx-ink,#111);background:transparent;border-radius:0;padding:15px 0;font:800 14px/1.2 inherit;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;justify-self:start}
.sw-solidwork-form .sw-form-notice{padding:18px 0;border-top:1px solid currentColor;border-bottom:1px solid currentColor;font-size:16px;line-height:1.5}
.sw-solidwork-form .sw-form-notice a{text-decoration:underline}
@media(max-width:760px){.sw-solidwork-form form{grid-template-columns:1fr}.sw-solidwork-form form label{padding-right:0}}


/* =========================================================
   SOLIDWEB INDEX — v1.4.0
   Free plugin library
   ========================================================= */
.sw-plugin-library-shell,.sw-plugin-single-shell{width:min(calc(100% - 40px),1090px);margin-inline:auto}
.sw-plugin-library-hero{background:var(--swx-black);color:#fff;padding:42px 20px 72px}
.sw-plugin-library-kicker{border-top:1px solid #303030;padding-top:12px;font-size:12px;letter-spacing:.08em;color:#88857e}
.sw-plugin-library-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:70px;align-items:end;margin-top:58px}
.sw-plugin-library-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(74px,10.5vw,150px);line-height:.78;letter-spacing:-.075em;font-weight:400;margin:0}
.sw-plugin-library-hero h1 em{font-weight:400;color:#9b8f67}
.sw-plugin-library-intro{padding-bottom:8px}
.sw-plugin-library-intro p{font-family:Georgia,'Times New Roman',serif;font-size:25px;line-height:1.25;letter-spacing:-.025em;margin:0 0 36px}
.sw-plugin-library-count{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:#98958e}

.sw-plugin-library{background:var(--swx-paper);color:var(--swx-ink);padding:0 20px 94px}
.sw-plugin-list{border-top:1px solid var(--swx-line)}
.sw-plugin-row{display:grid;grid-template-columns:52px minmax(270px,.82fr) minmax(0,1.18fr);gap:32px;padding:34px 0 42px;border-bottom:1px solid var(--swx-line);align-items:start}
.sw-plugin-row-index{font-size:12px;color:#77736b;padding-top:5px}
.sw-plugin-row-visual{display:block;overflow:hidden;background:#171715;aspect-ratio:1.35/1}
.sw-plugin-row-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.sw-plugin-row:hover .sw-plugin-row-visual img{transform:scale(1.025)}
.sw-plugin-visual-fallback{width:100%;height:100%;min-height:240px;background:#111;color:#fff;padding:22px;display:flex;flex-direction:column;justify-content:space-between}
.sw-plugin-visual-fallback span{font:700 12px/1 Arial,sans-serif;letter-spacing:.09em;color:#8f8b82}
.sw-plugin-visual-fallback b{font:400 clamp(30px,4vw,54px)/.95 Georgia,'Times New Roman',serif;letter-spacing:-.05em;max-width:90%}
.sw-plugin-row-meta{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--swx-line);padding-top:10px;color:#77736b;font-size:12px;text-transform:uppercase;letter-spacing:.045em}
.sw-plugin-row-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.6vw,64px);line-height:.98;letter-spacing:-.055em;font-weight:400;margin:26px 0 18px}
.sw-plugin-row-copy h2 a:hover{font-style:italic}
.sw-plugin-row-copy p{font-size:17px;line-height:1.55;max-width:590px;color:#4d4a44;margin:0 0 34px}
.sw-plugin-row-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.sw-plugin-detail-link,.sw-plugin-download-link{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.045em;border-bottom:1px solid currentColor;padding-bottom:3px}
.sw-plugin-download-link{color:#b23d28}.sw-plugin-download-link span{font-size:16px;margin-left:6px}
.sw-plugin-empty{padding:90px 0 110px;max-width:660px}.sw-plugin-empty>span{font-size:12px;color:#77736b}.sw-plugin-empty h2{font:400 clamp(48px,6vw,78px)/1 Georgia,'Times New Roman',serif;letter-spacing:-.05em;margin:26px 0}.sw-plugin-empty p{font-size:17px;line-height:1.6}
.sw-plugin-library-note{background:#9a8d66;color:#090909;padding:34px 20px 38px}
.sw-plugin-library-note .sw-plugin-library-shell{display:grid;grid-template-columns:220px 1fr;gap:48px;align-items:start}
.sw-plugin-library-note div>div{font:400 24px/1.1 Georgia,'Times New Roman',serif}
.sw-plugin-library-note p{font-size:17px;line-height:1.55;max-width:600px;margin:0}

.sw-plugin-single{background:var(--swx-paper);color:var(--swx-ink)}
.sw-plugin-single-hero{background:#050505;color:#fff;padding:28px 20px 0}
.sw-plugin-single-top{display:flex;justify-content:space-between;border-top:1px solid #303030;padding-top:11px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#8f8c85}
.sw-plugin-single-top a{color:#fff;border-bottom:1px solid #555}
.sw-plugin-single-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(340px,.94fr);gap:70px;align-items:end;margin-top:60px}
.sw-plugin-single-copy{padding-bottom:58px}
.sw-plugin-single-eyebrow{font-size:12px;letter-spacing:.075em;color:#9b8f67;margin-bottom:24px}
.sw-plugin-single h1{font:400 clamp(62px,8vw,116px)/.88 Georgia,'Times New Roman',serif;letter-spacing:-.07em;margin:0;max-width:760px}
.sw-plugin-single-lede{font-size:19px;line-height:1.55;color:#cac7bf;max-width:590px;margin:34px 0 0}
.sw-plugin-single-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:42px}
.sw-plugin-primary-download{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;min-width:260px;background:#f0eee7;color:#0b0b0a;padding:17px 18px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;transition:background .2s,color .2s}
.sw-plugin-primary-download:hover{background:#9b8f67;color:#000}.sw-plugin-primary-download b{font-size:20px;font-weight:400}
.sw-plugin-download-total,.sw-plugin-file-missing{font-size:12px;text-transform:uppercase;letter-spacing:.055em;color:#8f8c85}
.sw-plugin-single-visual{min-height:520px;background:#161614;align-self:stretch;display:flex;align-items:stretch}
.sw-plugin-single-visual>img{width:100%;height:100%;object-fit:cover;min-height:520px}
.sw-plugin-single-visual .sw-plugin-visual-fallback{min-height:520px}
.sw-plugin-specs{background:#dcd7cb;padding:0 20px;border-bottom:1px solid #b9b3a7}
.sw-plugin-specs .sw-plugin-single-shell{display:grid;grid-template-columns:repeat(4,1fr)}
.sw-plugin-spec{padding:24px 22px 28px 0;border-right:1px solid #b9b3a7;min-height:108px}.sw-plugin-spec+.sw-plugin-spec{padding-left:22px}.sw-plugin-spec:last-child{border-right:0}
.sw-plugin-spec span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#6e6a62;margin-bottom:14px}.sw-plugin-spec b{font:400 24px/1.1 Georgia,'Times New Roman',serif}
.sw-plugin-content-wrap{padding:82px 20px 100px;background:var(--swx-paper)}
.sw-plugin-content-grid{display:grid;grid-template-columns:220px minmax(0,720px);gap:72px;justify-content:start}
.sw-plugin-content-grid aside{border-top:1px solid var(--swx-line);padding-top:13px}.sw-plugin-content-grid aside span{font-size:12px;text-transform:uppercase;letter-spacing:.06em}.sw-plugin-content-grid aside p{font-size:13px;color:#77736b;line-height:1.5}
.sw-plugin-content{font-family:Arial,Helvetica,sans-serif}.sw-plugin-content>*:first-child{margin-top:0}.sw-plugin-content h2,.sw-plugin-content h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}.sw-plugin-content h2{font-size:43px;line-height:1.05;margin:55px 0 20px}.sw-plugin-content h3{font-size:30px;line-height:1.1;margin:42px 0 14px}.sw-plugin-content p,.sw-plugin-content li{font-size:19px;line-height:1.7}.sw-plugin-content ul,.sw-plugin-content ol{padding-left:1.2em}.sw-plugin-content a{text-decoration:underline;text-underline-offset:3px}
.sw-plugin-bottom-download{background:#9a8d66;color:#090909;padding:68px 20px 78px}.sw-plugin-bottom-download span{font-size:12px;text-transform:uppercase;letter-spacing:.06em}.sw-plugin-bottom-download h2{font:400 clamp(56px,7vw,98px)/.9 Georgia,'Times New Roman',serif;letter-spacing:-.06em;margin:34px 0 48px}.sw-plugin-bottom-download a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #403b2c;border-bottom:1px solid #403b2c;padding:16px 0;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.sw-plugin-bottom-download a b{font-size:21px;font-weight:400}

@media(max-width:860px){
  .sw-plugin-library-hero-grid,.sw-plugin-single-grid{grid-template-columns:1fr;gap:40px}.sw-plugin-library-intro{max-width:560px}.sw-plugin-row{grid-template-columns:42px minmax(220px,.75fr) minmax(0,1.25fr);gap:22px}.sw-plugin-single-visual{min-height:440px}.sw-plugin-single-visual>img,.sw-plugin-single-visual .sw-plugin-visual-fallback{min-height:440px}.sw-plugin-content-grid{grid-template-columns:160px 1fr;gap:42px}
}
@media(max-width:640px){
  .sw-plugin-library-hero{padding-top:24px;padding-bottom:50px}.sw-plugin-library-hero-grid{margin-top:42px}.sw-plugin-library-hero h1{font-size:72px}.sw-plugin-library-intro p{font-size:22px}.sw-plugin-row{grid-template-columns:34px 1fr;padding:28px 0 34px}.sw-plugin-row-index{grid-row:1 / span 2}.sw-plugin-row-visual{grid-column:2}.sw-plugin-row-copy{grid-column:2}.sw-plugin-row-copy h2{font-size:40px}.sw-plugin-row-meta{margin-top:4px}.sw-plugin-library-note .sw-plugin-library-shell{grid-template-columns:1fr;gap:18px}.sw-plugin-single-top span{display:none}.sw-plugin-single-grid{margin-top:42px}.sw-plugin-single-copy{padding-bottom:42px}.sw-plugin-single h1{font-size:64px}.sw-plugin-single-visual,.sw-plugin-single-visual>img,.sw-plugin-single-visual .sw-plugin-visual-fallback{min-height:340px}.sw-plugin-specs .sw-plugin-single-shell{grid-template-columns:repeat(2,1fr)}.sw-plugin-spec:nth-child(2){border-right:0}.sw-plugin-spec:nth-child(-n+2){border-bottom:1px solid #b9b3a7}.sw-plugin-content-wrap{padding:58px 20px 72px}.sw-plugin-content-grid{grid-template-columns:1fr;gap:38px}.sw-plugin-content-grid aside{max-width:280px}.sw-plugin-content p,.sw-plugin-content li{font-size:18px}.sw-plugin-content h2{font-size:37px}.sw-plugin-bottom-download h2{font-size:56px}
}


/* =========================================================
   SOLIDWEB INDEX — v1.4.1
   Contact form redesign / Solid.Work Incoming Form
   ========================================================= */

/* The Solid.Work plugin renders its own internal grid. Do not turn the
   outer <form> into a grid — that was what pushed the submit area into
   an unintended third column. */
.sw-contact-layout{
  align-items:start;
  grid-template-columns:minmax(0,1.52fr) minmax(285px,.48fr);
  gap:72px;
  padding-top:62px;
  padding-bottom:96px;
}
.sw-solidwork-form{min-width:0}
.sw-solidwork-form .swif-wrap{width:100%}
.sw-solidwork-form .swif-form,
.sw-solidwork-form form{
  display:block;
  width:100%;
  border:0;
  margin:0;
}
.sw-solidwork-form .swif-hp{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.sw-solidwork-form .swif-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px 24px;
  margin:0;
}
.sw-solidwork-form .swif-grid>label,
.sw-solidwork-form form label{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:0;
  margin:0;
  border:0;
  min-width:0;
  font-size:13px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:.035em;
  color:#171713;
}
.sw-solidwork-form .swif-grid>label>span{
  display:block;
  min-height:16px;
}
.sw-solidwork-form .swif-grid>.swif-full{grid-column:1/-1}
.sw-solidwork-form .swif-grid input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
.sw-solidwork-form .swif-grid textarea,
.sw-solidwork-form .swif-grid select,
.sw-solidwork-form form input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
.sw-solidwork-form form textarea,
.sw-solidwork-form form select{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  min-width:0;
  height:58px;
  padding:0 17px;
  border:1px solid #c8c4b9;
  border-radius:0;
  outline:0;
  background:#f8f7f2;
  box-shadow:none;
  color:#11110f;
  font-family:Arial,Helvetica,sans-serif;
  font-size:17px;
  line-height:1.35;
  transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.sw-solidwork-form .swif-grid input::placeholder,
.sw-solidwork-form .swif-grid textarea::placeholder{color:#8b877e;opacity:1}
.sw-solidwork-form .swif-grid select{
  padding-right:48px;
  background-image:linear-gradient(45deg,transparent 50%,#111 50%),linear-gradient(135deg,#111 50%,transparent 50%);
  background-position:calc(100% - 21px) 25px,calc(100% - 15px) 25px;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}
.sw-solidwork-form .swif-grid textarea,
.sw-solidwork-form form textarea{
  height:auto;
  min-height:190px;
  padding:16px 17px;
  resize:vertical;
}
.sw-solidwork-form .swif-grid input:focus,
.sw-solidwork-form .swif-grid textarea:focus,
.sw-solidwork-form .swif-grid select:focus{
  border-color:#11110f;
  background:#fff;
  box-shadow:0 0 0 1px #11110f;
}
.sw-solidwork-form .swif-bottom{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px 28px;
  align-items:end;
  margin-top:26px;
  padding-top:26px;
  border-top:1px solid #c8c4b9;
}
.sw-solidwork-form .swif-bottom>div:first-child{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.sw-solidwork-form .swif-bottom button,
.sw-solidwork-form form button,
.sw-solidwork-form form input[type=submit]{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  min-width:245px;
  min-height:56px;
  padding:0 20px;
  border:1px solid #11110f;
  border-radius:0;
  background:#11110f;
  color:#fff;
  font:800 13px/1 Arial,Helvetica,sans-serif;
  text-transform:uppercase;
  letter-spacing:.055em;
  cursor:pointer;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.sw-solidwork-form .swif-bottom button:hover,
.sw-solidwork-form form button:hover,
.sw-solidwork-form form input[type=submit]:hover{
  background:#9a8d66;
  color:#090909;
  transform:translateY(-1px);
}
.sw-solidwork-form .swif-bottom button b{font-size:18px;font-weight:400;line-height:1}
.sw-solidwork-form .swif-bottom p{
  max-width:290px;
  margin:0;
  color:#77736b;
  font-size:12px;
  line-height:1.45;
}
.sw-solidwork-form .swif-result{
  align-self:center;
  max-width:330px;
  font-size:14px;
  line-height:1.45;
}
.sw-solidwork-form .swif-result:not(:empty){padding:14px 16px;border:1px solid #11110f;background:#fff}

/* Contact card */
.sw-contact-details{
  position:sticky;
  top:110px;
  border:0;
  background:#11110f;
  color:#fff;
  padding:34px 32px 36px;
  min-height:100%;
}
.sw-contact-details:before{
  content:"Kontakt";
  display:block;
  padding-bottom:15px;
  margin-bottom:38px;
  border-bottom:1px solid #393936;
  color:#8f8b82;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.sw-contact-details h3{
  margin:0 0 24px;
  color:#fff;
  font-family:Georgia,'Times New Roman',serif;
  font-size:34px;
  line-height:1.05;
  font-weight:400;
  letter-spacing:-.035em;
}
.sw-contact-details h3:not(:first-of-type){
  margin-top:42px;
  padding-top:30px;
  border-top:1px solid #393936;
}
.sw-contact-details p,
.sw-contact-details a{
  color:#e8e5de;
  font-size:16px;
  line-height:1.6;
}
.sw-contact-details p{margin:0 0 22px}
.sw-contact-details a{transition:color .18s ease}
.sw-contact-details a:hover{color:#b7aa7f}

@media(max-width:980px){
  .sw-contact-layout{grid-template-columns:1fr;gap:42px}
  .sw-contact-details{position:static;min-height:0;display:grid;grid-template-columns:1fr 1fr;column-gap:40px}
  .sw-contact-details:before{grid-column:1/-1}
  .sw-contact-details h3:not(:first-of-type){margin-top:0;padding-top:0;border-top:0}
}
@media(max-width:680px){
  .sw-contact-layout{padding-top:38px;padding-bottom:64px}
  .sw-solidwork-form .swif-grid{grid-template-columns:1fr;gap:18px}
  .sw-solidwork-form .swif-grid>.swif-full{grid-column:1}
  .sw-solidwork-form .swif-grid input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
  .sw-solidwork-form .swif-grid select{height:56px;font-size:16px}
  .sw-solidwork-form .swif-grid textarea{min-height:165px;font-size:16px}
  .sw-solidwork-form .swif-bottom{grid-template-columns:1fr;margin-top:22px;padding-top:22px}
  .sw-solidwork-form .swif-bottom>div:first-child{display:block}
  .sw-solidwork-form .swif-bottom button{width:100%;min-width:0;margin-bottom:14px}
  .sw-solidwork-form .swif-bottom p{max-width:none}
  .sw-contact-details{grid-template-columns:1fr;padding:28px 24px}
  .sw-contact-details h3:not(:first-of-type){margin-top:28px;padding-top:26px;border-top:1px solid #393936}
}

/* =========================================================
   SOLIDWEB INDEX — v1.4.2
   Plugin catalogue / product page redesign
   ========================================================= */
.sw-plugin-hub-shell,
.sw-plugin-product-shell{
  width:min(calc(100% - 48px),1240px);
  margin-inline:auto;
}

/* Plugin hub */
.sw-plugin-hub-hero{
  background:#050505;
  color:#fff;
  padding:34px 0 58px;
}
.sw-plugin-hub-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:12px;
  border-top:1px solid #30302e;
  color:#98958e;
  font-size:12px;
  font-weight:700;
  letter-spacing:.075em;
}
.sw-plugin-hub-intro{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);
  gap:90px;
  align-items:end;
  padding:82px 0 66px;
}
.sw-plugin-hub-intro h1{
  margin:0;
  font:400 clamp(70px,9vw,126px)/.86 Georgia,'Times New Roman',serif;
  letter-spacing:-.066em;
  text-wrap:balance;
}
.sw-plugin-hub-intro-copy{
  padding-bottom:8px;
}
.sw-plugin-hub-intro-copy strong{
  display:block;
  margin-bottom:18px;
  font:400 27px/1.15 Georgia,'Times New Roman',serif;
  letter-spacing:-.025em;
}
.sw-plugin-hub-intro-copy p{
  margin:0;
  max-width:510px;
  color:#c7c4bd;
  font-size:17px;
  line-height:1.55;
}
.sw-plugin-hub-stats{
  display:grid;
  grid-template-columns:190px 220px 1fr;
  align-items:end;
  border-top:1px solid #30302e;
  padding-top:22px;
  gap:32px;
}
.sw-plugin-hub-stats>div{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.sw-plugin-hub-stats b{
  font:400 34px/1 Georgia,'Times New Roman',serif;
  letter-spacing:-.035em;
}
.sw-plugin-hub-stats span,
.sw-plugin-hub-stats p{
  color:#8d8a84;
  font-size:11px;
  line-height:1.4;
  text-transform:uppercase;
  letter-spacing:.065em;
}
.sw-plugin-hub-stats p{
  justify-self:end;
  margin:0;
  text-align:right;
}

.sw-plugin-hub-library{
  background:var(--swx-paper);
  color:var(--swx-ink);
  padding:68px 0 108px;
}
.sw-plugin-hub-library-head{
  display:grid;
  grid-template-columns:180px minmax(0,480px);
  justify-content:space-between;
  gap:36px;
  padding:12px 0 44px;
  border-top:1px solid var(--swx-line);
}
.sw-plugin-hub-library-head>span{
  font-size:12px;
  font-weight:800;
  letter-spacing:.075em;
}
.sw-plugin-hub-library-head p{
  margin:0;
  color:#66625b;
  font-size:16px;
  line-height:1.5;
}
.sw-plugin-hub-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:72px 28px;
}
.sw-plugin-hub-card{
  min-width:0;
}
.sw-plugin-hub-card.is-featured{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);
  gap:0;
  border-top:1px solid #bcb7ad;
  border-bottom:1px solid #bcb7ad;
  padding:26px 0;
}
.sw-plugin-hub-card-media{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:360px;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#11110f;
}
.sw-plugin-hub-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .55s ease,filter .35s ease;
}
.sw-plugin-hub-card:hover .sw-plugin-hub-card-media img{
  transform:scale(1.018);
}
.sw-plugin-hub-card.is-featured .sw-plugin-hub-card-media{
  aspect-ratio:auto;
  min-height:540px;
}
.sw-plugin-hub-card-index{
  position:absolute;
  top:14px;
  left:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  background:rgba(5,5,5,.92);
  color:#fff;
  font-size:11px;
  letter-spacing:.06em;
}
.sw-plugin-hub-card-copy{
  padding-top:17px;
}
.sw-plugin-hub-card.is-featured .sw-plugin-hub-card-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:26px 0 26px 48px;
}
.sw-plugin-hub-card-meta{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding-top:10px;
  border-top:1px solid #c9c4ba;
  color:#706c64;
  font-size:11px;
  line-height:1.35;
  letter-spacing:.055em;
}
.sw-plugin-hub-card.is-featured .sw-plugin-hub-card-meta{
  border-top:0;
  padding-top:0;
}
.sw-plugin-hub-card h2{
  margin:22px 0 15px;
  font:400 clamp(36px,4vw,58px)/.98 Georgia,'Times New Roman',serif;
  letter-spacing:-.048em;
}
.sw-plugin-hub-card.is-featured h2{
  font-size:clamp(48px,5.2vw,72px);
  max-width:480px;
}
.sw-plugin-hub-card h2 a{
  transition:opacity .2s ease;
}
.sw-plugin-hub-card h2 a:hover{
  opacity:.62;
}
.sw-plugin-hub-card-copy>p{
  max-width:560px;
  margin:0 0 30px;
  color:#4f4b44;
  font-size:17px;
  line-height:1.55;
}
.sw-plugin-hub-card-actions{
  display:flex;
  align-items:center;
  gap:28px;
  margin-top:auto;
  flex-wrap:wrap;
}
.sw-plugin-hub-more,
.sw-plugin-hub-download{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding-bottom:4px;
  border-bottom:1px solid currentColor;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.sw-plugin-hub-download{
  color:#b33f2b;
}
.sw-plugin-hub-more span,
.sw-plugin-hub-download span{
  font-size:16px;
  font-weight:400;
}
.sw-plugin-hub-card:not(.is-featured) .sw-plugin-hub-card-media{
  background:#151513;
}
.sw-plugin-hub-empty{
  padding:78px 0 96px;
  border-top:1px solid var(--swx-line);
  max-width:820px;
}
.sw-plugin-hub-empty>span{
  font-size:12px;
  letter-spacing:.07em;
  color:#77736b;
}
.sw-plugin-hub-empty h2{
  margin:28px 0;
  font:400 clamp(46px,6vw,78px)/.98 Georgia,'Times New Roman',serif;
  letter-spacing:-.052em;
}
.sw-plugin-hub-empty p{
  max-width:560px;
  font-size:17px;
  line-height:1.6;
}
.sw-plugin-hub-footer-note{
  background:#0a0a09;
  color:#fff;
  padding:44px 0 50px;
}
.sw-plugin-hub-footer-note .sw-plugin-hub-shell{
  display:grid;
  grid-template-columns:240px minmax(0,630px);
  justify-content:space-between;
  gap:40px;
  border-top:1px solid #323230;
  padding-top:16px;
}
.sw-plugin-hub-footer-note span{
  color:#ff6044;
  font-size:12px;
  font-weight:800;
  letter-spacing:.075em;
}
.sw-plugin-hub-footer-note p{
  margin:0;
  color:#c7c4bd;
  font:400 24px/1.3 Georgia,'Times New Roman',serif;
  letter-spacing:-.02em;
}

/* Single plugin */
.sw-plugin-single-v2{
  overflow:hidden;
}
.sw-plugin-product-hero{
  background:#050505;
  color:#fff;
  padding:30px 0 56px;
}
.sw-plugin-product-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:12px;
  border-top:1px solid #30302e;
  color:#8e8b85;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.065em;
}
.sw-plugin-product-nav a{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#fff;
}
.sw-plugin-product-nav a span{
  color:#ff6044;
  font-size:16px;
}
.sw-plugin-product-heading{
  display:grid;
  grid-template-columns:190px minmax(0,900px);
  gap:38px;
  padding:68px 0 54px;
  align-items:start;
}
.sw-plugin-product-kicker{
  padding-top:12px;
  border-top:1px solid #333330;
  color:#9a968f;
  font-size:11px;
  line-height:1.45;
  letter-spacing:.07em;
}
.sw-plugin-product-heading h1{
  margin:0;
  max-width:900px;
  font:400 clamp(54px,7.1vw,92px)/.92 Georgia,'Times New Roman',serif;
  letter-spacing:-.058em;
  overflow-wrap:normal;
  word-break:normal;
  text-wrap:balance;
}
.sw-plugin-product-stage{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);
  gap:28px;
  align-items:stretch;
}
.sw-plugin-product-visual{
  position:relative;
  display:flex;
  min-width:0;
  min-height:560px;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#171715;
}
.sw-plugin-product-image-frame{
  width:100%;
  height:100%;
  min-height:560px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.sw-plugin-product-image-frame img{
  width:100%;
  height:100%;
  min-height:560px;
  object-fit:cover;
  object-position:center;
}
.sw-plugin-product-fallback{
  min-height:560px;
}
.sw-plugin-product-visual-label{
  position:absolute;
  left:18px;
  bottom:18px;
  padding:8px 10px;
  background:#050505;
  color:#fff;
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.065em;
}
.sw-plugin-product-summary{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:44px 40px 36px;
  background:#f1efe8;
  color:#11110f;
}
.sw-plugin-product-lede{
  margin:0 0 auto;
  padding-bottom:60px;
  font:400 clamp(24px,2.4vw,34px)/1.24 Georgia,'Times New Roman',serif;
  letter-spacing:-.028em;
}
.sw-plugin-product-facts{
  display:grid;
  grid-template-columns:1fr 1fr;
  margin-bottom:24px;
  border-top:1px solid #c2bdb3;
  border-bottom:1px solid #c2bdb3;
}
.sw-plugin-product-facts>div{
  padding:15px 0 17px;
}
.sw-plugin-product-facts>div+div{
  padding-left:20px;
  border-left:1px solid #c2bdb3;
}
.sw-plugin-product-facts span{
  display:block;
  margin-bottom:7px;
  color:#6e6a62;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.065em;
}
.sw-plugin-product-facts strong{
  font:400 24px/1 Georgia,'Times New Roman',serif;
}
.sw-plugin-product-download{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:78px;
  padding:16px 18px;
  background:#11110f;
  color:#fff;
  transition:background .2s ease,color .2s ease;
}
.sw-plugin-product-download:hover{
  background:#ff4f2f;
  color:#11110f;
}
.sw-plugin-product-download>span{
  display:flex;
  flex-direction:column;
  gap:5px;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.sw-plugin-product-download small{
  color:#8f8b84;
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
}
.sw-plugin-product-download:hover small{
  color:#11110f;
}
.sw-plugin-product-download b{
  font-size:26px;
  font-weight:400;
}
.sw-plugin-product-note{
  margin:13px 0 0;
  color:#77736b;
  font-size:11px;
  line-height:1.45;
}
.sw-plugin-product-unavailable{
  padding:22px 18px;
  border:1px solid #bdb8ae;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.055em;
}

.sw-plugin-product-specbar{
  background:#ded9cf;
  color:#11110f;
  border-bottom:1px solid #bbb5aa;
}
.sw-plugin-product-specgrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.sw-plugin-product-spec{
  min-height:120px;
  padding:28px 24px 26px 0;
  border-right:1px solid #bbb5aa;
}
.sw-plugin-product-spec+.sw-plugin-product-spec{
  padding-left:24px;
}
.sw-plugin-product-spec:last-child{
  border-right:0;
}
.sw-plugin-product-spec span{
  display:block;
  margin-bottom:17px;
  color:#6d685f;
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.sw-plugin-product-spec b{
  font:400 27px/1.05 Georgia,'Times New Roman',serif;
  letter-spacing:-.025em;
}

.sw-plugin-product-body{
  background:var(--swx-paper);
  color:var(--swx-ink);
  padding:92px 0 118px;
}
.sw-plugin-product-bodygrid{
  display:grid;
  grid-template-columns:300px minmax(0,760px);
  justify-content:space-between;
  gap:80px;
  align-items:start;
}
.sw-plugin-product-aside{
  position:sticky;
  top:28px;
  padding-top:12px;
  border-top:1px solid #c9c4ba;
}
.sw-plugin-product-aside-label{
  display:block;
  margin-bottom:34px;
  color:#77736b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.07em;
}
.sw-plugin-product-aside h2{
  margin:0 0 18px;
  font:400 34px/1.08 Georgia,'Times New Roman',serif;
  letter-spacing:-.035em;
}
.sw-plugin-product-aside p{
  margin:0 0 30px;
  color:#625e56;
  font-size:15px;
  line-height:1.6;
}
.sw-plugin-product-aside>a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 0;
  border-top:1px solid #11110f;
  border-bottom:1px solid #11110f;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.sw-plugin-product-aside>a span{
  color:#b33f2b;
  font-size:17px;
}
.sw-plugin-product-content{
  max-width:760px;
}
.sw-plugin-product-content>*:first-child{
  margin-top:0!important;
}
.sw-plugin-product-content h2{
  font-size:clamp(38px,4vw,50px);
  line-height:1.05;
}
.sw-plugin-product-content h3{
  font-size:32px;
}
.sw-plugin-product-content p,
.sw-plugin-product-content li{
  font-size:19px;
  line-height:1.72;
}
.sw-plugin-product-content img{
  width:100%;
  margin:38px 0;
}
.sw-plugin-product-content blockquote{
  margin:50px 0;
  padding:0 0 0 26px;
  border-left:2px solid #ff4f2f;
  font:400 28px/1.35 Georgia,'Times New Roman',serif;
}

.sw-plugin-related{
  background:#e5e1d7;
  color:#11110f;
  padding:64px 0 82px;
  border-top:1px solid #c5c0b6;
}
.sw-plugin-related-head{
  display:flex;
  justify-content:space-between;
  gap:30px;
  padding-top:11px;
  border-top:1px solid #bdb8ae;
  margin-bottom:38px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
}
.sw-plugin-related-head a{
  font-weight:600;
}
.sw-plugin-related-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.sw-plugin-related-image{
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#11110f;
}
.sw-plugin-related-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.sw-plugin-related-card:hover .sw-plugin-related-image img{
  transform:scale(1.02);
}
.sw-plugin-related-meta{
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin-top:12px;
  padding-top:9px;
  border-top:1px solid #bdb8ae;
  color:#716d65;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.sw-plugin-related-card h3{
  margin:15px 0 0;
  font:400 30px/1 Georgia,'Times New Roman',serif;
  letter-spacing:-.035em;
}

.sw-plugin-product-bottom{
  background:#9a8d66;
  color:#0b0b0a;
  padding:60px 0 78px;
}
.sw-plugin-product-bottom-label{
  padding-top:11px;
  border-top:1px solid rgba(17,17,15,.5);
  font-size:10px;
  font-weight:800;
  letter-spacing:.075em;
}
.sw-plugin-product-bottom-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
  gap:80px;
  align-items:end;
  margin-top:52px;
}
.sw-plugin-product-bottom h2{
  margin:0;
  font:400 clamp(52px,6.2vw,88px)/.91 Georgia,'Times New Roman',serif;
  letter-spacing:-.058em;
}
.sw-plugin-product-bottom h2 em{
  font-weight:400;
  color:#f1efe8;
}
.sw-plugin-product-bottom-grid>div>p{
  margin:0 0 28px;
  max-width:420px;
  font-size:16px;
  line-height:1.55;
}
.sw-plugin-product-bottom-grid>div>a{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;
  padding:14px 0;
  border-top:1px solid rgba(17,17,15,.6);
  border-bottom:1px solid rgba(17,17,15,.6);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.sw-plugin-product-bottom-grid>div>a b{
  font-size:20px;
  font-weight:400;
}

@media(max-width:980px){
  .sw-plugin-hub-intro{grid-template-columns:1fr;gap:36px;padding:62px 0 52px}
  .sw-plugin-hub-intro-copy{max-width:620px}
  .sw-plugin-hub-stats{grid-template-columns:1fr 1fr}.sw-plugin-hub-stats p{grid-column:1/-1;justify-self:start;text-align:left;margin-top:8px}
  .sw-plugin-hub-card.is-featured{grid-template-columns:1fr}.sw-plugin-hub-card.is-featured .sw-plugin-hub-card-media{min-height:480px}.sw-plugin-hub-card.is-featured .sw-plugin-hub-card-copy{padding:28px 0 12px}.sw-plugin-hub-card.is-featured .sw-plugin-hub-card-meta{border-top:1px solid #c9c4ba;padding-top:10px}
  .sw-plugin-product-heading{grid-template-columns:150px 1fr;gap:28px}.sw-plugin-product-stage{grid-template-columns:1fr}.sw-plugin-product-summary{min-height:390px}.sw-plugin-product-lede{max-width:700px}.sw-plugin-product-bodygrid{grid-template-columns:220px 1fr;gap:48px}.sw-plugin-product-aside h2{font-size:29px}.sw-plugin-product-bottom-grid{grid-template-columns:1fr;gap:44px}.sw-plugin-product-bottom-grid>div{max-width:560px}
}
@media(max-width:760px){
  .sw-plugin-hub-shell,.sw-plugin-product-shell{width:min(calc(100% - 32px),1240px)}
  .sw-plugin-hub-hero{padding-top:24px}.sw-plugin-hub-topline span:last-child{display:none}.sw-plugin-hub-intro{padding:48px 0 46px}.sw-plugin-hub-intro h1{font-size:clamp(58px,18vw,86px)}.sw-plugin-hub-intro-copy strong{font-size:24px}.sw-plugin-hub-intro-copy p{font-size:16px}.sw-plugin-hub-stats{gap:18px}.sw-plugin-hub-stats b{font-size:30px}
  .sw-plugin-hub-library{padding:48px 0 76px}.sw-plugin-hub-library-head{grid-template-columns:1fr;gap:14px;padding-bottom:32px}.sw-plugin-hub-grid{grid-template-columns:1fr;gap:56px}.sw-plugin-hub-card.is-featured{display:block;padding-top:0}.sw-plugin-hub-card.is-featured .sw-plugin-hub-card-media,.sw-plugin-hub-card-media{min-height:300px;aspect-ratio:16/10}.sw-plugin-hub-card.is-featured h2{font-size:46px}.sw-plugin-hub-card h2{font-size:40px}.sw-plugin-hub-card-copy>p{font-size:16px}.sw-plugin-hub-footer-note .sw-plugin-hub-shell{grid-template-columns:1fr;gap:22px}.sw-plugin-hub-footer-note p{font-size:22px}
  .sw-plugin-product-hero{padding-top:22px;padding-bottom:38px}.sw-plugin-product-nav>span{display:none}.sw-plugin-product-heading{grid-template-columns:1fr;padding:46px 0 36px;gap:20px}.sw-plugin-product-kicker{max-width:220px}.sw-plugin-product-heading h1{font-size:clamp(48px,14vw,70px);line-height:.96;letter-spacing:-.05em}.sw-plugin-product-visual,.sw-plugin-product-image-frame,.sw-plugin-product-image-frame img,.sw-plugin-product-fallback{min-height:330px}.sw-plugin-product-summary{min-height:0;padding:34px 24px 26px}.sw-plugin-product-lede{padding-bottom:40px;font-size:25px}.sw-plugin-product-specgrid{grid-template-columns:1fr 1fr}.sw-plugin-product-spec{min-height:104px;padding:22px 16px 22px 0}.sw-plugin-product-spec+.sw-plugin-product-spec{padding-left:16px}.sw-plugin-product-spec:nth-child(2){border-right:0}.sw-plugin-product-spec:nth-child(-n+2){border-bottom:1px solid #bbb5aa}.sw-plugin-product-spec b{font-size:23px}.sw-plugin-product-body{padding:62px 0 78px}.sw-plugin-product-bodygrid{grid-template-columns:1fr;gap:54px}.sw-plugin-product-aside{position:static}.sw-plugin-product-content p,.sw-plugin-product-content li{font-size:18px}.sw-plugin-related{padding:48px 0 62px}.sw-plugin-related-grid{grid-template-columns:1fr;gap:44px}.sw-plugin-related-card h3{font-size:32px}.sw-plugin-product-bottom{padding:50px 0 62px}.sw-plugin-product-bottom-grid{margin-top:38px}.sw-plugin-product-bottom h2{font-size:52px}
}
@media(max-width:430px){
  .sw-plugin-hub-stats{grid-template-columns:1fr}.sw-plugin-hub-stats p{grid-column:auto}.sw-plugin-hub-card-meta{flex-direction:column;gap:5px}.sw-plugin-hub-card-actions{align-items:flex-start;flex-direction:column;gap:16px}
  .sw-plugin-product-facts{grid-template-columns:1fr}.sw-plugin-product-facts>div+div{padding-left:0;border-left:0;border-top:1px solid #c2bdb3}.sw-plugin-product-download{min-height:72px}.sw-plugin-product-specgrid{grid-template-columns:1fr}.sw-plugin-product-spec,.sw-plugin-product-spec+.sw-plugin-product-spec{padding:20px 0;border-right:0!important;border-bottom:1px solid #bbb5aa}.sw-plugin-product-spec:last-child{border-bottom:0}.sw-plugin-product-nav{font-size:10px}
}

/* =========================================================
   SOLIDWEB INDEX — v1.4.4
   Isolated plugin catalogue + single plugin layout
   New swp3 namespace intentionally avoids all legacy plugin CSS.
   ========================================================= */
.swp3-catalog,.swp3-single{background:#080808;color:#fff;overflow:hidden}
.swp3-shell{width:min(calc(100% - 64px),1360px);margin-inline:auto}
.swp3-topline{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #30302e;padding-top:12px;color:#95918a;font-size:12px;font-weight:700;letter-spacing:.055em;text-transform:uppercase}
.swp3-topline a{color:#fff}.swp3-topline a:hover{opacity:.65}

/* Catalogue */
.swp3-catalog-hero{padding:30px 0 58px;background:#080808}
.swp3-catalog-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:72px;align-items:end;padding:70px 0 58px}
.swp3-catalog-head h1{margin:0;font:400 clamp(68px,8vw,112px)/.9 Georgia,'Times New Roman',serif;letter-spacing:-.058em}
.swp3-catalog-intro{max-width:520px;padding-bottom:6px}.swp3-catalog-intro strong{display:block;margin-bottom:16px;font:400 28px/1.12 Georgia,'Times New Roman',serif;letter-spacing:-.025em}.swp3-catalog-intro p{margin:0;color:#c4c0b8;font-size:18px;line-height:1.55}
.swp3-catalog-stats{display:flex;gap:60px;border-top:1px solid #30302e;padding-top:20px}.swp3-catalog-stats div{display:flex;align-items:baseline;gap:10px}.swp3-catalog-stats b{font:400 34px/1 Georgia,'Times New Roman',serif}.swp3-catalog-stats span{color:#8f8b84;font-size:12px;text-transform:uppercase;letter-spacing:.055em}
.swp3-library{background:#f1efe8;color:#11110f;padding:64px 0 110px}.swp3-library-head{display:flex;justify-content:space-between;gap:40px;border-top:1px solid #bdb8ad;padding:13px 0 40px}.swp3-library-head>span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.065em}.swp3-library-head p{margin:0;max-width:520px;color:#625e57;font-size:16px}
.swp3-list{display:flex;flex-direction:column}.swp3-item{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:48px;padding:38px 0;border-top:1px solid #bbb6ac;align-items:stretch;min-width:0}.swp3-item:last-child{border-bottom:1px solid #bbb6ac}
.swp3-item-media{display:flex;min-width:0;min-height:430px;background:#151513;overflow:hidden}.swp3-item-media img{width:100%;height:100%;min-height:430px;object-fit:cover;transition:transform .45s ease}.swp3-item:hover .swp3-item-media img{transform:scale(1.012)}
.swp3-fallback{width:100%;min-height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:24px;background:#171715;color:#fff}.swp3-fallback span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#aaa69e}.swp3-fallback b{max-width:80%;font:400 42px/1 Georgia,'Times New Roman',serif;letter-spacing:-.04em}
.swp3-item-copy{display:flex;min-width:0;flex-direction:column;padding:6px 0}.swp3-meta{display:flex;justify-content:space-between;gap:20px;color:#6d6962;font-size:11px;text-transform:uppercase;letter-spacing:.055em}.swp3-item-copy h2{margin:36px 0 20px;max-width:650px;font:400 clamp(42px,4.5vw,66px)/.96 Georgia,'Times New Roman',serif;letter-spacing:-.05em;overflow-wrap:anywhere}.swp3-item-copy>p{max-width:620px;margin:0;color:#4e4a43;font-size:18px;line-height:1.58}.swp3-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:42px}.swp3-details,.swp3-download{display:inline-flex;align-items:center;gap:10px;padding-bottom:5px;border-bottom:1px solid currentColor;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.swp3-download{color:#b5412d}.swp3-actions span{font-size:16px;font-weight:400}
.swp3-empty{padding:70px 0;border-top:1px solid #bbb6ac}.swp3-empty h2{font:400 62px/1 Georgia,'Times New Roman',serif;margin:16px 0}.swp3-empty p{font-size:18px}.swp3-catalog-end{padding:46px 0 52px;background:#0b0b0a}.swp3-catalog-end .swp3-shell{display:grid;grid-template-columns:260px minmax(0,650px);justify-content:space-between;gap:40px;border-top:1px solid #30302e;padding-top:15px}.swp3-catalog-end span{color:#ff6044;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.065em}.swp3-catalog-end p{margin:0;color:#d0ccc4;font:400 25px/1.3 Georgia,'Times New Roman',serif}

/* Single plugin */
.swp3-single-hero{padding:30px 0 64px;background:#080808}.swp3-titleblock{display:grid;grid-template-columns:180px minmax(0,1fr);gap:42px;align-items:start;padding:64px 0 44px}.swp3-kicker{padding-top:10px;border-top:1px solid #343431;color:#9b978f;font-size:11px;line-height:1.45;text-transform:uppercase;letter-spacing:.065em}.swp3-titleblock h1{margin:0;max-width:1080px;font:400 clamp(58px,7vw,94px)/.93 Georgia,'Times New Roman',serif;letter-spacing:-.055em;overflow-wrap:anywhere;text-wrap:balance}
.swp3-hero-info{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:70px;align-items:end;border-top:1px solid #30302e;padding:28px 0 34px}.swp3-lede{max-width:800px;margin:0;color:#d3cfc7;font:400 clamp(23px,2.3vw,31px)/1.28 Georgia,'Times New Roman',serif;letter-spacing:-.02em}.swp3-hero-action{min-width:0}.swp3-mini-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #3a3936;border-bottom:1px solid #3a3936;margin-bottom:16px}.swp3-mini-facts span{padding:12px 0 13px}.swp3-mini-facts span+span{padding-left:18px;border-left:1px solid #3a3936}.swp3-mini-facts small{display:block;margin-bottom:5px;color:#8f8b84;font-size:9px;text-transform:uppercase;letter-spacing:.07em}.swp3-mini-facts b{font:400 22px/1 Georgia,'Times New Roman',serif}.swp3-primary-download{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;padding:14px 17px;background:#f1efe8;color:#11110f;transition:background .2s}.swp3-primary-download:hover{background:#ff6044}.swp3-primary-download>span{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.swp3-primary-download small{font-size:9px;font-weight:600;color:#6c6860}.swp3-primary-download b{font-size:24px;font-weight:400}.swp3-hero-action>p{margin:10px 0 0;color:#8f8b84;font-size:11px}.swp3-unavailable{padding:20px;background:#222;color:#aaa}
.swp3-hero-visual{width:100%;height:min(68vw,760px);min-height:480px;overflow:hidden;background:#171715}.swp3-hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center}.swp3-hero-visual .swp3-fallback{min-height:100%}
.swp3-specbar{background:#ded9cd;color:#11110f;border-bottom:1px solid #bbb5aa}.swp3-specgrid{display:grid;grid-template-columns:repeat(4,1fr)}.swp3-specgrid>div{min-width:0;padding:22px 22px 24px 0;border-right:1px solid #b9b3a8}.swp3-specgrid>div+div{padding-left:22px}.swp3-specgrid>div:last-child{border-right:0}.swp3-specgrid span{display:block;margin-bottom:9px;color:#6d685f;font-size:10px;text-transform:uppercase;letter-spacing:.065em}.swp3-specgrid b{font:400 23px/1.1 Georgia,'Times New Roman',serif}
.swp3-body{background:#f1efe8;color:#11110f;padding:82px 0 108px}.swp3-body-grid{display:grid;grid-template-columns:260px minmax(0,820px);justify-content:space-between;gap:90px;align-items:start}.swp3-side{position:sticky;top:110px;border-top:1px solid #bcb7ad;padding-top:14px}.swp3-side>span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.065em}.swp3-side h2{margin:22px 0 14px;font:400 32px/1.03 Georgia,'Times New Roman',serif;letter-spacing:-.03em}.swp3-side p{margin:0 0 24px;color:#5f5a52;font-size:16px;line-height:1.55}.swp3-side a{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.swp3-content{min-width:0}.swp3-content>*:first-child{margin-top:0}.swp3-content h2{margin:56px 0 22px;font:400 clamp(38px,4vw,52px)/1 Georgia,'Times New Roman',serif;letter-spacing:-.04em}.swp3-content h3{margin:42px 0 16px;font:400 28px/1.05 Georgia,'Times New Roman',serif}.swp3-content p,.swp3-content li{font-size:19px;line-height:1.72}.swp3-content p{margin:0 0 26px}.swp3-content img{width:100%;height:auto;margin:42px 0}.swp3-content ul,.swp3-content ol{padding-left:1.25em}.swp3-content a{text-decoration:underline;text-underline-offset:3px}
.swp3-related{background:#e4e0d6;color:#11110f;padding:58px 0 76px}.swp3-related-head{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #b9b3a8;padding-top:13px;margin-bottom:36px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.swp3-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.swp3-related-grid article{min-width:0}.swp3-related-media{display:flex;aspect-ratio:16/10;overflow:hidden;background:#171715}.swp3-related-media img{width:100%;height:100%;object-fit:cover}.swp3-related-grid .swp3-meta{margin-top:13px}.swp3-related-grid h3{margin:15px 0 0;font:400 31px/1 Georgia,'Times New Roman',serif;letter-spacing:-.035em;overflow-wrap:anywhere}
.swp3-bottom{background:#080808;color:#fff;padding:50px 0 64px}.swp3-bottom>.swp3-shell{border-top:1px solid #30302e;padding-top:14px}.swp3-bottom>.swp3-shell>span{color:#ff6044;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.065em}.swp3-bottom>.swp3-shell>div{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:60px;align-items:end;margin-top:34px}.swp3-bottom h2{margin:0;font:400 clamp(58px,7vw,96px)/.9 Georgia,'Times New Roman',serif;letter-spacing:-.055em}.swp3-bottom a{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #44413b;border-bottom:1px solid #44413b;padding:17px 0;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.045em}.swp3-bottom a b{font-size:20px;font-weight:400}

@media(max-width:980px){
  .swp3-shell{width:min(calc(100% - 40px),1360px)}
  .swp3-catalog-head{grid-template-columns:1fr;gap:32px;padding:54px 0 46px}.swp3-catalog-intro{max-width:680px}
  .swp3-item{grid-template-columns:1fr;gap:26px}.swp3-item-media{min-height:0;aspect-ratio:16/9}.swp3-item-media img{min-height:0}.swp3-actions{margin-top:30px}
  .swp3-titleblock{grid-template-columns:1fr;gap:22px;padding:48px 0 34px}.swp3-kicker{max-width:220px}
  .swp3-hero-info{grid-template-columns:1fr;gap:34px}.swp3-hero-action{max-width:520px}.swp3-hero-visual{height:auto;aspect-ratio:16/10;min-height:0}
  .swp3-body-grid{grid-template-columns:200px minmax(0,1fr);gap:50px}.swp3-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.swp3-related-grid article:last-child{display:none}
  .swp3-bottom>.swp3-shell>div{grid-template-columns:1fr;gap:36px}.swp3-bottom a{max-width:520px}
}
@media(max-width:700px){
  .swp3-shell{width:min(calc(100% - 32px),1360px)}.swp3-topline span:last-child{display:none}
  .swp3-catalog-hero{padding-top:22px}.swp3-catalog-head h1{font-size:clamp(58px,18vw,84px)}.swp3-catalog-intro strong{font-size:24px}.swp3-catalog-intro p{font-size:17px}.swp3-catalog-stats{gap:28px;flex-wrap:wrap}.swp3-catalog-stats b{font-size:29px}
  .swp3-library{padding:46px 0 72px}.swp3-library-head{display:block;padding-bottom:26px}.swp3-library-head p{margin-top:10px}.swp3-item{padding:28px 0 36px}.swp3-item-media{aspect-ratio:4/3}.swp3-item-copy h2{font-size:clamp(38px,12vw,52px);margin-top:24px}.swp3-item-copy>p{font-size:17px}.swp3-meta{flex-direction:column;gap:5px}.swp3-catalog-end .swp3-shell{grid-template-columns:1fr;gap:18px}.swp3-catalog-end p{font-size:22px}
  .swp3-single-hero{padding-top:22px;padding-bottom:36px}.swp3-titleblock h1{font-size:clamp(46px,13vw,68px);line-height:.96}.swp3-lede{font-size:23px}.swp3-hero-visual{aspect-ratio:4/3}.swp3-specgrid{grid-template-columns:1fr 1fr}.swp3-specgrid>div:nth-child(2){border-right:0}.swp3-specgrid>div:nth-child(-n+2){border-bottom:1px solid #b9b3a8}.swp3-specgrid b{font-size:20px}
  .swp3-body{padding:58px 0 74px}.swp3-body-grid{grid-template-columns:1fr;gap:48px}.swp3-side{position:static;max-width:420px}.swp3-content p,.swp3-content li{font-size:18px}.swp3-related{padding:44px 0 58px}.swp3-related-grid{grid-template-columns:1fr}.swp3-related-grid article:last-child{display:block}.swp3-related-grid h3{font-size:30px}.swp3-bottom{padding:44px 0 54px}.swp3-bottom h2{font-size:54px}
}
@media(max-width:430px){
  .swp3-specgrid{grid-template-columns:1fr}.swp3-specgrid>div,.swp3-specgrid>div+div{padding:18px 0;border-right:0!important;border-bottom:1px solid #b9b3a8}.swp3-specgrid>div:last-child{border-bottom:0}.swp3-mini-facts{grid-template-columns:1fr 1fr}.swp3-primary-download{min-height:70px}
}
/* v1.4.3 image safety: plugin screenshots should never be cropped on single pages. */
.swp3-hero-visual{height:auto;min-height:0;display:block}
.swp3-hero-visual>img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center top}
@media(max-width:980px){.swp3-hero-visual{height:auto;aspect-ratio:auto}}
@media(max-width:700px){.swp3-hero-visual{aspect-ratio:auto}}
