/* SMW365 public studio 2027 – eigenständiger, ruhiger Leistungsauftritt */
.studio-public,
.studio-page {
    --studio-ink:#071b31;
    --studio-ink-2:#0c2945;
    --studio-lime:#8ee600;
    --studio-lime-soft:#eaffc7;
    --studio-paper:#f3f6f4;
    --studio-card:#fff;
    --studio-muted:#617083;
    --studio-line:#dce4e3;
    --studio-radius:24px;
    --studio-shadow:0 24px 70px rgba(7,27,49,.10);
    background:var(--studio-paper);
    color:var(--studio-ink);
    overflow-x:clip;
}

.site-redesign-2026.studio-public .site-header,
.site-redesign-2026.studio-page .site-header {
    position:sticky;
    top:0;
    color:var(--studio-ink);
    background:rgba(255,255,255,.92);
    border-bottom:1px solid rgba(7,27,49,.09);
    box-shadow:none;
    backdrop-filter:blur(18px);
}
.studio-public .site-header .container,
.studio-page .site-header .container { min-height:72px; }
.studio-public .brand,
.studio-page .brand { color:var(--studio-ink);text-shadow:none; }
.studio-public .brand-mark,
.studio-page .brand-mark { color:#71bd00; }
.studio-public .main-nav .nav-link,
.studio-page .main-nav .nav-link { color:#263a4c!important; }
.studio-public .nav-item.is-active>.nav-link,
.studio-page .nav-item.is-active>.nav-link { color:#071b31; }
.studio-public .nav-item.is-active>.nav-link:after,
.studio-page .nav-item.is-active>.nav-link:after { background:var(--studio-lime); }
.studio-public .portal-login-link,
.studio-page .portal-login-link { color:#33495d;border-color:#d8e1e4;background:#fff; }
.studio-public .portal-login-link:hover,
.studio-page .portal-login-link:hover { color:#071b31;border-color:#9dca62;background:#f8ffed; }
.studio-public .nav-toggle,
.studio-page .nav-toggle { color:var(--studio-ink); }
.studio-public .site-header .btn-green,
.studio-page .site-header .btn-green { color:#0a2100;background:var(--studio-lime);box-shadow:none; }
.studio-public .nav-dropdown,.studio-page .nav-dropdown{left:0!important;width:286px!important;min-width:286px!important;max-width:286px!important;transform:translateY(8px)!important}
.studio-public .nav-item:hover>.nav-dropdown,.studio-public .nav-item:focus-within>.nav-dropdown,.studio-page .nav-item:hover>.nav-dropdown,.studio-page .nav-item:focus-within>.nav-dropdown{transform:translateY(0)!important}
.studio-public .nav-dropdown-inner,.studio-page .nav-dropdown-inner{gap:2px!important;padding:8px!important;border-color:#dbe4e3!important;border-radius:15px!important;box-shadow:0 18px 45px rgba(7,27,49,.14)!important}
.studio-public .nav-dropdown-inner:before,.studio-page .nav-dropdown-inner:before{left:34px!important;width:13px!important;height:13px!important;top:-7px!important;border-color:#dbe4e3!important}
.studio-public .nav-sub-link,.studio-page .nav-sub-link{padding:11px 12px!important;border-radius:10px!important}
.studio-public .nav-sub-link:hover,.studio-page .nav-sub-link:hover{background:#f2f8ea!important;transform:none!important}
.studio-public .nav-sub-link strong,.studio-page .nav-sub-link strong{color:var(--studio-ink)!important;font-size:13px!important}
.studio-public .nav-sub-link span,.studio-page .nav-sub-link span{display:none!important}

.studio-home { overflow:hidden;background:var(--studio-paper); }
.studio-home .container,
.studio-page main .container { width:min(1360px,calc(100% - 56px)); }
.studio-home h1,.studio-home h2,.studio-home h3,.studio-page h1,.studio-page h2,.studio-page h3 { color:var(--studio-ink);text-wrap:balance; }
.studio-home h2,.studio-page h2 { margin:0;font-size:clamp(2.35rem,4.7vw,4.8rem);line-height:.98;letter-spacing:-.065em; }
.studio-eyebrow { display:inline-flex;align-items:center;gap:9px;color:#527800;font-size:.72rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase; }
.studio-eyebrow:before { width:28px;height:2px;border-radius:99px;background:var(--studio-lime);content:""; }

/* Hero */
.studio-hero { position:relative;padding:clamp(54px,7vw,98px) 0 0;background:linear-gradient(180deg,#f8faf8 0%,#eef3f0 100%); }
.studio-hero:before { position:absolute;inset:0;pointer-events:none;opacity:.44;background-image:linear-gradient(rgba(7,27,49,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(7,27,49,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,#000,transparent 76%);content:""; }
.studio-hero-grid { position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);align-items:center;gap:clamp(54px,8vw,120px);padding-bottom:clamp(56px,7vw,92px); }
.studio-hero-copy h1 { max-width:690px;margin:22px 0 25px;font-size:clamp(4rem,7vw,7.8rem);line-height:.84;letter-spacing:-.085em; }
.studio-hero-copy h1 em { display:block;color:#6db800;font-family:Georgia,serif;font-size:.76em;font-weight:500;letter-spacing:-.07em; }
.studio-hero-copy>p { max-width:650px;margin:0;color:#526477;font-size:clamp(1.04rem,1.45vw,1.26rem);line-height:1.72; }
.studio-actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:31px; }
.studio-button { display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 21px;border:1px solid transparent;border-radius:999px;color:var(--studio-ink);font-size:.86rem;font-weight:950;text-decoration:none;transition:.2s ease; }
.studio-button:hover { transform:translateY(-2px); }
.studio-button-primary { color:#102000;background:var(--studio-lime);box-shadow:0 15px 32px rgba(99,160,0,.18); }
.studio-button-primary:hover { color:#102000;background:#9cf10e; }
.studio-button-quiet { border-color:#cfdadb;background:#fff; }
.studio-button-quiet:hover { color:var(--studio-ink);border-color:#8eaa6b;background:#fbfff5; }
.studio-hero-points { display:flex;flex-wrap:wrap;gap:12px 24px;margin:28px 0 0;padding:0;list-style:none;color:#405468;font-size:.76rem;font-weight:850; }
.studio-hero-points li { display:flex;align-items:center;gap:8px; }
.studio-hero-points li>span { width:7px;height:7px;border-radius:50%;background:var(--studio-lime);box-shadow:0 0 0 4px rgba(142,230,0,.13); }

.studio-hero-stage { position:relative;min-height:550px; }
.studio-window { position:absolute;inset:24px 30px 28px 0;overflow:hidden;border:1px solid rgba(7,27,49,.14);border-radius:28px;background:#fff;box-shadow:0 38px 90px rgba(7,27,49,.17);transform:rotate(1.2deg); }
.studio-window-bar { display:flex;align-items:center;gap:7px;height:44px;padding:0 16px;border-bottom:1px solid #e2e9e8;background:#f7f9f8; }
.studio-window-bar i { width:8px;height:8px;border-radius:50%;background:#c4cdcc; }
.studio-window-bar i:first-child { background:var(--studio-lime); }
.studio-window-bar span { margin-left:auto;color:#7b898f;font-size:.6rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase; }
.studio-window-media { height:365px;background:#0b2137; }
.studio-window-media img { width:100%;height:100%;object-fit:cover;object-position:top center; }
.studio-window-caption { display:grid;gap:5px;padding:20px 24px 24px; }
.studio-window-caption span { color:#648008;font-size:.65rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase; }
.studio-window-caption strong { overflow:hidden;color:var(--studio-ink);font-size:1.25rem;text-overflow:ellipsis;white-space:nowrap; }
.studio-float-card { position:absolute;z-index:2;display:grid;gap:5px;width:190px;padding:17px;border:1px solid rgba(255,255,255,.25);border-radius:18px;color:#fff;background:rgba(7,27,49,.92);box-shadow:0 20px 55px rgba(7,27,49,.25);backdrop-filter:blur(14px); }
.studio-float-card small { color:#a9bdc8;font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase; }
.studio-float-card strong { font-size:.9rem; }
.studio-float-card span { color:#cbd7de;font-size:.68rem; }
.studio-float-code { right:0;top:0; }
.studio-float-design { right:10px;bottom:0;background:rgba(92,144,0,.94); }
.studio-float-design small,.studio-float-design span { color:#efffd7; }
.studio-capability-line { position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #d7dfdd; }
.studio-capability-line span { padding:18px 22px;border-right:1px solid #d7dfdd;color:#6b7880;font-size:.68rem;font-weight:950;letter-spacing:.09em;text-align:center;text-transform:uppercase; }
.studio-capability-line span:last-child { border-right:0; }

/* Sections */
.studio-section { padding:clamp(76px,9vw,132px) 0; }
.studio-split-heading { display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);align-items:end;gap:clamp(35px,8vw,115px);margin-bottom:52px; }
.studio-split-heading .studio-eyebrow { margin-bottom:18px; }
.studio-split-heading>p { margin:0 0 4px;color:var(--studio-muted);font-size:1rem;line-height:1.75; }

.studio-intro { background:#fff; }
.studio-discipline-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.studio-discipline { position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto 1fr auto;column-gap:18px;min-height:300px;padding:28px;border:1px solid var(--studio-line);border-radius:var(--studio-radius);color:var(--studio-ink);background:#f8faf9;transition:.22s ease; }
.studio-discipline:hover { color:var(--studio-ink);border-color:#a9c87f;background:#fbfff6;box-shadow:var(--studio-shadow);transform:translateY(-4px); }
.studio-discipline-large { background:var(--studio-ink);color:#fff; }
.studio-discipline-large:hover { color:#fff;background:#0a2540; }
.studio-discipline-wide { grid-column:1/-1;min-height:240px; }
.studio-discipline-no { position:absolute;right:23px;top:20px;color:#bec8c8;font-size:2rem;font-weight:950;letter-spacing:-.06em; }
.studio-discipline-large .studio-discipline-no { color:rgba(255,255,255,.2); }
.studio-discipline-icon { grid-row:1/6;display:grid;place-items:center;width:58px;height:58px;border-radius:17px;color:#527f00;background:var(--studio-lime-soft); }
.studio-discipline-icon svg { width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8; }
.studio-discipline p { margin:7px 0 20px;color:#6c7c85;font-size:.66rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase; }
.studio-discipline-large p { color:#a9bdc8; }
.studio-discipline h3 { max-width:540px;margin:0 0 13px;font-size:clamp(1.65rem,3vw,2.7rem);line-height:1;letter-spacing:-.055em; }
.studio-discipline-large h3 { color:#fff; }
.studio-discipline small { max-width:560px;color:#617083;font-size:.88rem;line-height:1.65; }
.studio-discipline-large small { color:#b7c6cf; }
.studio-discipline>strong { align-self:end;margin-top:24px;color:#5f8e00;font-size:.75rem; }
.studio-discipline-large>strong { color:#aef037; }

/* Modules */
.studio-modules { color:#fff;background:var(--studio-ink); }
.studio-module-layout { display:grid;grid-template-columns:minmax(300px,.65fr) minmax(0,1.35fr);align-items:center;gap:clamp(45px,8vw,120px); }
.studio-modules .studio-eyebrow { color:#b9f75c; }
.studio-module-copy h2 { margin:18px 0 22px;color:#fff; }
.studio-module-copy p { max-width:550px;color:#aec0cc;line-height:1.75; }
.studio-text-link { display:inline-flex;align-items:center;gap:9px;margin-top:17px;color:#5d8500;font-size:.82rem;font-weight:950;text-decoration:none; }
.studio-modules .studio-text-link { color:#b9f75c; }
.studio-module-board { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
.studio-module-board article { display:grid;grid-template-columns:38px 1fr;gap:4px 13px;padding:20px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.045); }
.studio-module-board article:hover { border-color:rgba(142,230,0,.42);background:rgba(255,255,255,.07); }
.studio-module-board article>span { grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;color:#b9f75c;background:rgba(142,230,0,.12);font-size:.65rem;font-weight:950; }
.studio-module-board strong { color:#fff;font-size:.94rem; }
.studio-module-board small { color:#94a9b7;font-size:.7rem; }

/* Work */
.studio-work { background:#eef2ef; }
.studio-project-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.studio-project { display:grid;grid-template-columns:minmax(210px,.9fr) minmax(0,1.1fr);overflow:hidden;min-height:320px;border:1px solid var(--studio-line);border-radius:var(--studio-radius);color:var(--studio-ink);background:#fff;transition:.22s ease; }
.studio-project:hover { color:var(--studio-ink);box-shadow:var(--studio-shadow);transform:translateY(-4px); }
.studio-project-featured { grid-column:1/-1;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);min-height:470px; }
.studio-project-image { position:relative;overflow:hidden;background:#102b42; }
.studio-project-image:after { position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,rgba(3,16,27,.65));content:""; }
.studio-project-image img { width:100%;height:100%;object-fit:cover;transition:.4s ease; }
.studio-project:hover .studio-project-image img { transform:scale(1.025); }
.studio-project-image>span { position:absolute;z-index:2;left:16px;bottom:15px;max-width:calc(100% - 32px);padding:7px 10px;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#fff;background:rgba(7,27,49,.7);font-size:.61rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(8px); }
.studio-project-info { display:flex;flex-direction:column;justify-content:center;padding:28px; }
.studio-project-info>small { margin-bottom:13px;color:#709200;font-size:.65rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase; }
.studio-project-info h3 { margin:0 0 12px;font-size:clamp(1.45rem,2.6vw,2.5rem);line-height:1.05;letter-spacing:-.05em; }
.studio-project-info p { margin:0 0 22px;color:var(--studio-muted);font-size:.82rem;line-height:1.65; }
.studio-project-info strong { margin-top:auto;color:#608a00;font-size:.73rem; }
.studio-section-action { margin-top:26px;text-align:center; }

/* Process */
.studio-process { background:#fff; }
.studio-process .studio-eyebrow { margin-bottom:18px; }
.studio-process h2 { max-width:770px;margin-bottom:50px; }
.studio-process-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--studio-line); }
.studio-process-grid article { padding:28px 26px 32px;border-right:1px solid var(--studio-line); }
.studio-process-grid article:last-child { border-right:0; }
.studio-process-grid article>span { color:#7ead00;font-size:.68rem;font-weight:950;letter-spacing:.1em; }
.studio-process-grid h3 { margin:38px 0 11px;font-size:1.25rem; }
.studio-process-grid p { margin:0;color:var(--studio-muted);font-size:.79rem;line-height:1.65; }

.studio-contact-band { padding-top:0;background:#fff; }
.studio-contact-card { display:grid;grid-template-columns:minmax(0,1.2fr) auto;align-items:end;gap:40px;padding:clamp(35px,6vw,72px);border-radius:30px;color:#fff;background:linear-gradient(125deg,#071b31,#123955);box-shadow:0 30px 80px rgba(7,27,49,.17); }
.studio-contact-card .studio-eyebrow { color:#b7f655; }
.studio-contact-card h2 { max-width:800px;margin:17px 0 14px;color:#fff; }
.studio-contact-card p { margin:0;color:#bed0da;line-height:1.7; }
.studio-contact-actions { display:grid;justify-items:start;gap:4px; }
.studio-contact-actions .studio-text-link { color:#d7e5ec; }

/* Shared public footer */
.studio-public .final-cta,.studio-page .final-cta { color:#fff;background:#0b263f; }
.studio-public .final-cta h2,.studio-page .final-cta h2 { color:#fff; }
.studio-public .final-cta p,.studio-page .final-cta p { color:#c6d5df; }
.studio-public .site-footer,.studio-page .site-footer { background:#071827; }
.studio-public .site-footer .brand,.studio-page .site-footer .brand { color:#fff; }
.studio-public .site-footer p,.studio-page .site-footer p,.studio-public .site-footer a,.studio-page .site-footer a { color:#aebfca; }

/* Schlichte Unterseiten */
.studio-subhero { position:relative;overflow:hidden;padding:clamp(72px,9vw,125px) 0;background:#fff; }
.studio-subhero:after { position:absolute;right:-130px;top:-210px;width:500px;height:500px;border:80px solid #eff5e9;border-radius:50%;content:""; }
.studio-subhero-grid { position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);align-items:end;gap:clamp(40px,8vw,120px); }
.studio-subhero h1 { max-width:900px;margin:20px 0 0;font-size:clamp(3.4rem,7.3vw,7rem);line-height:.9;letter-spacing:-.08em; }
.studio-subhero h1 em { display:block;color:#6db500;font-family:Georgia,serif;font-size:.72em;font-weight:500;letter-spacing:-.06em; }
.studio-subhero-grid>div:last-child { padding-bottom:7px; }
.studio-subhero p { margin:0 0 25px;color:var(--studio-muted);font-size:1rem;line-height:1.75; }

.studio-service-bento { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.studio-service-bento>article { scroll-margin-top:100px;padding:30px;border:1px solid var(--studio-line);border-radius:var(--studio-radius);background:#fff; }
.studio-service-bento>article>span,.studio-solution-stack article>div:nth-child(2)>span { color:#688b0a;font-size:.65rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase; }
.studio-service-bento h3 { margin:54px 0 12px;font-size:2rem;letter-spacing:-.05em; }
.studio-service-bento>article>p { margin:0;color:var(--studio-muted);line-height:1.7; }
.studio-service-focus { grid-row:span 2;color:#fff!important;background:var(--studio-ink)!important; }
.studio-service-focus h2 { max-width:620px;margin:21px 0 20px;color:#fff;font-size:clamp(2.6rem,5vw,5rem); }
.studio-service-focus p { max-width:620px;color:#b5c5cf!important;font-size:1rem; }
.studio-service-focus ul { display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:35px 0;padding:0;list-style:none; }
.studio-service-focus li { padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;color:#d9e5eb;background:rgba(255,255,255,.045);font-size:.78rem;font-weight:800; }
.studio-service-focus .studio-text-link { color:#b9f75c; }

.studio-service-database { background:#eef2ef; }
.studio-db-service-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.studio-db-service-grid article { display:grid;grid-template-columns:48px 1fr;gap:16px;padding:22px;border:1px solid var(--studio-line);border-radius:19px;background:#fff; }
.studio-db-service-grid article>span { display:grid;place-items:center;width:46px;height:46px;border-radius:14px;color:#638d00;background:var(--studio-lime-soft); }
.studio-db-service-grid svg { width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8; }
.studio-db-service-grid h3 { margin:2px 0 8px;font-size:1.05rem; }
.studio-db-service-grid p { margin:0;color:var(--studio-muted);font-size:.76rem;line-height:1.55; }
.studio-delivery { background:#fff; }
.studio-delivery-grid { display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(40px,9vw,130px); }
.studio-delivery-grid .studio-eyebrow { margin-bottom:18px; }
.studio-delivery ol { margin:0;padding:0;list-style:none;border-top:1px solid var(--studio-line); }
.studio-delivery li { display:grid;grid-template-columns:42px 1fr;gap:16px;padding:21px 0;border-bottom:1px solid var(--studio-line); }
.studio-delivery li>span { display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:#4e7400;background:var(--studio-lime-soft);font-size:.7rem;font-weight:950; }
.studio-delivery strong,.studio-delivery small { display:block; }.studio-delivery strong { margin:2px 0 5px; }.studio-delivery small { color:var(--studio-muted);line-height:1.5; }

/* Lösungen */
.studio-solution-stack { display:grid;gap:12px; }
.studio-solution-stack article { scroll-margin-top:100px;display:grid;grid-template-columns:70px minmax(250px,.9fr) minmax(280px,1fr) auto;align-items:center;gap:28px;padding:26px 28px;border:1px solid var(--studio-line);border-radius:22px;background:#fff;transition:.2s ease; }
.studio-solution-stack article:hover { border-color:#aac784;box-shadow:var(--studio-shadow);transform:translateY(-2px); }
.studio-solution-number { color:#acc0c0;font-size:2rem;font-weight:950;letter-spacing:-.07em; }
.studio-solution-stack h2 { margin:7px 0 9px;font-size:clamp(2rem,3.2vw,3.6rem); }
.studio-solution-stack article>div:nth-child(2)>p { margin:0;color:var(--studio-muted);line-height:1.6; }
.studio-solution-stack ul { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;color:#516378;font-size:.75rem;font-weight:800; }
.studio-solution-stack li:before { margin-right:7px;color:#6aa700;content:"•"; }
.studio-solution-stack article>a { color:#618a00;font-size:.75rem;font-weight:950;white-space:nowrap; }
.studio-module-examples { background:#eef2ef; }
.studio-tag-cloud { display:flex;flex-wrap:wrap;gap:10px; }
.studio-tag-cloud span { padding:14px 18px;border:1px solid #d8e1df;border-radius:999px;color:#42586b;background:#fff;font-size:.78rem;font-weight:900; }

/* Referenzen */
.studio-reference-list { background:#eef2ef; }
.studio-reference-toolbar { display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px; }
.studio-reference-toolbar h2 { margin-top:14px; }
.studio-filter-tabs { display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;margin:0;padding:0;border:0;background:transparent; }
.studio-filter-tabs button { padding:10px 14px;border:1px solid #d5dfde;border-radius:999px;color:#526579;background:#fff;font-size:.7rem;font-weight:900; }
.studio-filter-tabs button.active,.studio-filter-tabs button:hover { color:#132800;border-color:var(--studio-lime);background:var(--studio-lime-soft); }
.studio-reference-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }
.studio-reference-grid .project-card { display:grid;grid-template-columns:minmax(220px,.95fr) minmax(0,1.05fr);overflow:hidden;min-height:340px;border:1px solid var(--studio-line);border-radius:var(--studio-radius);background:#fff;box-shadow:none;transition:.22s ease; }
.studio-reference-grid .project-card:first-child { grid-column:1/-1;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);min-height:500px; }
.studio-reference-grid .project-card:hover { border-color:#a9c87f;box-shadow:var(--studio-shadow);transform:translateY(-3px); }
.studio-reference-grid .project-card>img { width:100%;height:100%;min-height:300px;object-fit:cover;background:#102a42; }
.studio-reference-grid .project-card>div { display:flex;flex-direction:column;justify-content:center;padding:28px; }
.studio-reference-grid .badge { align-self:flex-start;padding:6px 9px;border-radius:999px;color:#527900;background:var(--studio-lime-soft);font-size:.58rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase; }
.studio-reference-grid .project-card h3 { margin:18px 0 12px;font-size:clamp(1.55rem,2.8vw,2.7rem);line-height:1.04; }
.studio-reference-grid .project-card p { color:var(--studio-muted);font-size:.8rem;line-height:1.65; }
.studio-reference-grid .project-card-meta { display:flex;gap:22px;margin:18px 0;color:#6d7b84;font-size:.65rem; }.studio-reference-grid .project-card-meta span { display:grid;gap:3px; }.studio-reference-grid .project-card-meta strong { color:var(--studio-ink); }
.studio-reference-grid .project-card-cta { margin-top:auto;color:#638d00;font-size:.74rem;font-weight:950; }
.studio-reference-note { padding-block:30px;background:var(--studio-ink); }.studio-reference-note .container { display:flex;flex-wrap:wrap;justify-content:center;gap:12px 36px; }.studio-reference-note span { color:#bfced7;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase; }

/* Kontakt in die neue, ruhigere Sprache einpassen */
.studio-page.page-kontakt .conversion-hero { min-height:auto!important;padding:clamp(70px,8vw,110px) 0!important;background:var(--studio-ink)!important; }
.studio-page.page-kontakt .conversion-hero:before { opacity:.12; }
.studio-page.page-kontakt .section { background:#f3f6f4; }
.studio-page.page-kontakt .contact-card,.studio-page.page-kontakt .contact-aside .card { border-color:var(--studio-line);border-radius:22px;box-shadow:0 18px 50px rgba(7,27,49,.07); }

@media(max-width:1120px){
    .studio-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);gap:45px}
    .studio-hero-stage{min-height:490px}.studio-window-media{height:315px}
    .studio-project{grid-template-columns:1fr}.studio-project-image{min-height:260px}.studio-project-featured{grid-template-columns:1.1fr .9fr}
}
@media(max-width:920px){
    .studio-public .nav-panel,.studio-page .nav-panel{background:#fff;color:var(--studio-ink)}
    .studio-public .main-nav .nav-link,.studio-page .main-nav .nav-link{color:var(--studio-ink)}
    .studio-hero-grid,.studio-module-layout{grid-template-columns:1fr}
    .studio-hero-copy h1{font-size:clamp(4rem,13vw,7rem)}
    .studio-hero-stage{min-height:520px;max-width:720px;width:100%;margin:auto}
    .studio-split-heading{grid-template-columns:1fr;align-items:start;gap:20px}
    .studio-project-featured{grid-template-columns:1fr;min-height:0}.studio-project-featured .studio-project-image{min-height:390px}
    .studio-process-grid{grid-template-columns:repeat(2,1fr)}.studio-process-grid article:nth-child(2){border-right:0}.studio-process-grid article:nth-child(-n+2){border-bottom:1px solid var(--studio-line)}
    .studio-contact-card{grid-template-columns:1fr;align-items:start}
    .studio-subhero-grid,.studio-delivery-grid{grid-template-columns:1fr}.studio-subhero-grid>div:last-child{padding-bottom:0}
    .studio-db-service-grid{grid-template-columns:1fr 1fr}
    .studio-solution-stack article{grid-template-columns:55px 1fr}.studio-solution-stack article>ul,.studio-solution-stack article>a{grid-column:2}
    .studio-reference-toolbar{align-items:flex-start;flex-direction:column}.studio-filter-tabs{justify-content:flex-start}
    .studio-reference-grid .project-card:first-child{grid-template-columns:1fr;min-height:0}.studio-reference-grid .project-card:first-child>img{min-height:400px}
}
@media(max-width:680px){
    .studio-home .container,.studio-page main .container{width:min(100% - 30px,1360px)}
    .studio-section{padding:64px 0}
    .studio-home h2,.studio-page h2{font-size:clamp(2.25rem,12vw,3.35rem)}
    .studio-hero{padding-top:48px}.studio-hero-grid{padding-bottom:55px}
    .studio-hero-copy h1{margin-top:18px;font-size:clamp(3.6rem,17vw,5.25rem)}
    .studio-actions{display:grid}.studio-button{width:100%}
    .studio-hero-points{display:grid}
    .studio-hero-stage{min-height:395px}.studio-window{inset:18px 9px 22px 0;border-radius:20px}.studio-window-media{height:245px}.studio-window-caption{padding:15px 17px 19px}.studio-float-card{width:152px;padding:12px}.studio-float-code{right:-3px}.studio-float-design{right:5px}
    .studio-capability-line{grid-template-columns:repeat(2,1fr)}.studio-capability-line span{border-bottom:1px solid #d7dfdd}.studio-capability-line span:nth-child(2n){border-right:0}.studio-capability-line span:last-child{grid-column:1/-1;border-bottom:0}
    .studio-discipline-grid,.studio-project-grid,.studio-module-board{grid-template-columns:1fr}.studio-discipline-wide{grid-column:auto}.studio-discipline{min-height:260px;padding:22px}.studio-discipline-icon{grid-row:auto;width:50px;height:50px}.studio-discipline p,.studio-discipline h3,.studio-discipline small,.studio-discipline>strong{grid-column:1/-1}.studio-discipline p{margin-top:22px}.studio-discipline-no{font-size:1.55rem}
    .studio-project,.studio-project-featured{grid-template-columns:1fr}.studio-project-image,.studio-project-featured .studio-project-image{min-height:240px}.studio-project-info{padding:22px}
    .studio-process-grid{grid-template-columns:1fr}.studio-process-grid article{border-right:0;border-bottom:1px solid var(--studio-line)!important}.studio-process-grid article:last-child{border-bottom:0!important}.studio-process-grid h3{margin-top:20px}
    .studio-contact-card{padding:32px 23px;border-radius:24px}
    .studio-subhero{padding:60px 0}.studio-subhero h1{font-size:clamp(3rem,15vw,4.6rem)}
    .studio-service-bento,.studio-db-service-grid,.studio-reference-grid{grid-template-columns:1fr}.studio-service-focus{grid-row:auto}.studio-service-focus ul{grid-template-columns:1fr}
    .studio-solution-stack article{grid-template-columns:1fr;gap:16px;padding:22px}.studio-solution-stack article>ul,.studio-solution-stack article>a{grid-column:auto}.studio-solution-stack ul{grid-template-columns:1fr}
    .studio-reference-grid .project-card,.studio-reference-grid .project-card:first-child{grid-template-columns:1fr;min-height:0}.studio-reference-grid .project-card>img,.studio-reference-grid .project-card:first-child>img{min-height:250px;aspect-ratio:16/10}.studio-reference-grid .project-card>div{padding:22px}
}
@media(prefers-reduced-motion:reduce){.studio-home *,.studio-page *{scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Einheitlicher Qualitäts-Pass für alle öffentlichen Seiten */
.studio-public .studio-hero-copy h1{font-size:clamp(3.45rem,5.2vw,5.5rem);line-height:.9;letter-spacing:-.075em}
.studio-public .studio-home h2,
.studio-page main h2{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.04;letter-spacing:-.055em}
.studio-page .studio-subhero{padding:clamp(58px,6vw,78px) 0}
.studio-page .studio-subhero:after{right:-90px;top:-150px;width:390px;height:390px;border-width:62px}
.studio-page .studio-subhero h1{font-size:clamp(3rem,4.9vw,4.35rem);line-height:.94;letter-spacing:-.07em}
.studio-public .final-cta h2,.studio-page .final-cta h2{font-size:clamp(2rem,3.2vw,2.85rem);line-height:1.04;letter-spacing:-.045em}
.studio-page main{overflow:hidden;background:var(--studio-paper)}
.studio-page main>.section,
.studio-page main>.ultra-section{padding-block:clamp(58px,6.5vw,88px)}
.studio-page .hero-sub,
.studio-page .ultra-page-hero,
.studio-page .smw-pricing-hero{min-height:0!important;padding:clamp(52px,5vw,68px) 0!important;color:var(--studio-ink)!important;background:#fff!important}
.studio-page .hero-sub:before,
.studio-page .ultra-page-hero:before,
.studio-page .smw-pricing-hero:before{opacity:.04!important}
.studio-page .hero-sub h1,
.studio-page .ultra-page-hero h1,
.studio-page .smw-pricing-hero h1,
.studio-page .reference-hero h1{max-width:960px;margin:16px 0 18px!important;color:var(--studio-ink)!important;font-size:clamp(3rem,5.1vw,4.75rem)!important;line-height:.96!important;letter-spacing:-.065em!important;text-wrap:balance}
.studio-page .hero-sub h1 span,
.studio-page .ultra-page-hero h1 span,
.studio-page .smw-pricing-hero h1 span{color:#68ac00!important}
.studio-page .hero-sub p,
.studio-page .ultra-page-hero p,
.studio-page .smw-pricing-hero p{max-width:740px;color:var(--studio-muted)!important;font-size:1rem!important;line-height:1.72!important}
.studio-page .hero-sub .check-list{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:25px;color:#405468;font-size:.78rem}
.studio-page .hero-sub .check-list li:before{color:#69aa00}
.studio-page .eyebrow,
.studio-page .smw-pricing-kicker,
.studio-page .smw-pricing-eyebrow{color:#5d8104!important;font-size:.7rem!important;font-weight:950!important;letter-spacing:.11em!important;text-transform:uppercase}

/* Vertrauen: reale Projekte statt erfundener Kennzahlen */
.studio-trust{border-bottom:1px solid var(--studio-line);background:#fff}
.studio-trust-inner{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);align-items:center;gap:40px;padding-block:28px}
.studio-trust-copy{display:grid;gap:5px}
.studio-trust-copy span{color:#648700;font-size:.64rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase}
.studio-trust-copy strong{max-width:580px;color:var(--studio-ink);font-size:.96rem;line-height:1.45}
.studio-trust-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.studio-trust-list a{overflow:hidden;padding:11px 13px;border:1px solid var(--studio-line);border-radius:12px;color:#42586a;background:#f8faf9;font-size:.7rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}
.studio-trust-list a:hover{color:var(--studio-ink);border-color:#a9c87f;background:#f6ffea}

/* Alte Branchen- und Ortsseiten in das neue System integrieren */
.studio-page .ultra-landing-block,
.studio-page .ultra-check-grid{gap:clamp(32px,6vw,76px)!important}
.studio-page .ultra-landing-block>div:first-child h2,
.studio-page .ultra-section-head h2,
.studio-page .ultra-check-grid h2{max-width:820px;margin:14px 0 18px!important}
.studio-page .ultra-landing-block p,
.studio-page .ultra-section-head p,
.studio-page .ultra-check-grid p{color:var(--studio-muted);line-height:1.7}
.studio-page .ultra-landing-list,
.studio-page .ultra-benefit-grid{gap:12px!important}
.studio-page .ultra-landing-list article,
.studio-page .ultra-benefit-grid article,
.studio-page .ultra-check-card{min-height:0!important;padding:24px!important;border:1px solid var(--studio-line)!important;border-radius:20px!important;background:#fff!important;box-shadow:0 14px 38px rgba(7,27,49,.06)!important}
.studio-page .ultra-landing-list h3,
.studio-page .ultra-benefit-grid h3{margin:10px 0 7px!important;color:var(--studio-ink);font-size:1.05rem!important;line-height:1.25}
.studio-page .ultra-landing-list p,
.studio-page .ultra-benefit-grid p{margin:0;color:var(--studio-muted);font-size:.82rem;line-height:1.6}
.studio-page .ultra-benefit-grid article>span{font-size:1.4rem!important;opacity:.45}
.studio-page .ultra-score b{font-size:clamp(3rem,5vw,4.5rem)!important}

/* Preise bleiben erreichbar, drängen sich aber nicht in den Vordergrund */
.studio-page .smw-pricing-hero-grid{gap:clamp(30px,6vw,74px)!important}
.studio-page .smw-pricing-hero-note,
.studio-page .smw-pricing-explain,
.studio-page .smw-pricing-final{border:1px solid var(--studio-line)!important;border-radius:20px!important;box-shadow:0 14px 40px rgba(7,27,49,.06)!important}
.studio-page .smw-pricing-hero-note li{color:#536779!important}
.studio-page .smw-pricing-main{padding-block:clamp(58px,6vw,84px)!important;background:var(--studio-paper)!important}
.studio-page .smw-pricing-head{margin-bottom:28px!important}
.studio-page .smw-pricing-tabs{gap:7px!important;padding:7px!important;border:1px solid var(--studio-line)!important;border-radius:16px!important;background:#fff!important}
.studio-page .smw-pricing-tab{min-height:44px!important;padding:9px 13px!important;border-radius:11px!important}
.studio-page .smw-pricing-grid{gap:12px!important}
.studio-page .smw-price-card{min-height:0!important;padding:25px!important;border:1px solid var(--studio-line)!important;border-radius:20px!important;box-shadow:0 14px 40px rgba(7,27,49,.06)!important}
.studio-page .smw-price-card h3{font-size:1.45rem!important}
.studio-page .smw-price-value strong{font-size:clamp(1.7rem,2.6vw,2.45rem)!important;line-height:1!important}
.studio-page .smw-price-features{font-size:.78rem!important;line-height:1.45}

/* Referenz-Detail und Formulare */
.studio-page .reference-hero{padding:clamp(58px,7vw,90px) 0!important;background:#fff!important}
.studio-page .reference-hero-grid{gap:clamp(34px,6vw,74px)!important}
.studio-page .reference-hero-image{overflow:hidden;border:1px solid var(--studio-line);border-radius:22px!important;box-shadow:var(--studio-shadow)!important}
.studio-page .reference-hero-copy>p:not(.eyebrow){color:var(--studio-muted)!important}
.studio-page .reference-hero-copy .btn-outline{color:var(--studio-ink)!important;border-color:#cfdadb!important;background:#fff!important}
.studio-page .reference-hero-copy .btn-outline:hover{border-color:#9dca62!important;background:#f8ffed!important}
.studio-page .reference-facts-section{padding-block:20px!important;background:var(--studio-ink)!important}
.studio-page .reference-facts{gap:10px!important}
.studio-page .reference-facts article{padding:14px 16px!important}
.studio-page .reference-story-section,
.studio-page .reference-gallery-section,
.studio-page .reference-result-section{padding-block:clamp(58px,6vw,84px)!important}
.studio-page .website-check-form-section .ultra-form-card,
.studio-page .contact-card,
.studio-page .contact-aside .card{border:1px solid var(--studio-line)!important;border-radius:20px!important;box-shadow:0 14px 40px rgba(7,27,49,.07)!important}
.studio-page input,
.studio-page select,
.studio-page textarea{max-width:100%}
.studio-page.page-kontakt .conversion-hero h1{
    max-width:820px!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    background:none!important;
    background-image:none!important;
}
.studio-page.page-kontakt .conversion-hero h1>span{
    color:#8cdb00!important;
    -webkit-text-fill-color:#8cdb00!important;
}
.studio-page.page-kontakt .conversion-hero>div>p{
    max-width:680px;
    color:#d5e2ea!important;
    -webkit-text-fill-color:#d5e2ea!important;
    opacity:1!important;
}
.studio-page.page-kontakt .conversion-hero .trust-row,
.studio-page.page-kontakt .conversion-hero .trust-row span{
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    opacity:1!important;
}
@media(max-width:680px){
    .studio-page.page-kontakt .conversion-hero{
        padding:58px 0 54px!important;
    }
    .studio-page.page-kontakt .conversion-hero h1{
        max-width:100%!important;
        font-size:clamp(2.55rem,11.5vw,3rem)!important;
        line-height:.98!important;
        letter-spacing:-.055em!important;
        overflow-wrap:normal;
    }
    .studio-page.page-kontakt .conversion-hero h1>span{
        display:block;
        white-space:normal!important;
    }
    .studio-page.page-kontakt .conversion-hero>div>p{
        width:100%;
        font-size:.94rem!important;
        line-height:1.58!important;
    }
    .studio-page.page-kontakt .conversion-hero .trust-row{
        width:100%;
        justify-content:flex-start;
        text-align:left;
    }
    .studio-page.page-kontakt .conversion-hero .trust-row span{
        white-space:normal!important;
    }
}
.studio-page.page-website-check .website-check-hero .ultra-trust span{color:#536779!important}
.studio-page.page-website-check .website-check-hero .ultra-trust svg{stroke:#659700!important}

/* Hilfe und sachliche Infoseiten */
.studio-subhero-compact{padding-block:clamp(58px,6vw,82px)}
.studio-subhero-compact h1{font-size:clamp(3rem,5vw,4.7rem)}
.studio-faq-section{background:#eef2ef}
.studio-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.studio-faq-grid article{padding:25px;border:1px solid var(--studio-line);border-radius:20px;background:#fff}
.studio-faq-grid article>span{color:#6c9900;font-size:.67rem;font-weight:950;letter-spacing:.1em}
.studio-faq-grid h2{margin:26px 0 9px!important;font-size:1.35rem!important;letter-spacing:-.03em!important}
.studio-faq-grid p{margin:0;color:var(--studio-muted);font-size:.86rem;line-height:1.65}
.studio-legal-intro{background:#eef2ef}
.studio-legal-panel{max-width:900px!important;padding:clamp(28px,5vw,52px);border:1px solid var(--studio-line);border-radius:24px;background:#fff;box-shadow:var(--studio-shadow)}
.studio-legal-panel>span{color:#668d00;font-size:.67rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase}
.studio-legal-panel h2{margin:16px 0 15px!important}
.studio-legal-panel p{max-width:760px;color:var(--studio-muted);line-height:1.72}
.studio-legal-panel .studio-button{margin-top:12px}
.studio-page .page-simple{padding:clamp(58px,7vw,92px) 0!important;background:#eef2ef!important}
.studio-page .page-simple>.card,
.studio-page .page-simple>.container.card{max-width:1040px;padding:clamp(26px,5vw,52px)!important;border:1px solid var(--studio-line)!important;border-radius:22px!important;box-shadow:var(--studio-shadow)!important}
.studio-page .page-simple h1{margin:14px 0 25px!important;font-size:clamp(3rem,5vw,4.5rem)!important;line-height:.98!important;letter-spacing:-.06em!important}
.studio-page .legal-copy h2{margin:34px 0 10px!important;font-size:1.35rem!important;letter-spacing:-.03em!important}
.studio-page .legal-copy p{color:var(--studio-muted);font-size:.9rem;line-height:1.72}
.studio-page .smw-legal-card,
.studio-page .smw-legal-side .side-card{border-color:var(--studio-line)!important;border-radius:20px!important;box-shadow:0 14px 40px rgba(7,27,49,.06)!important}

@media(max-width:920px){
    .studio-public .studio-hero-copy h1{font-size:clamp(3.35rem,10vw,5rem)}
    .studio-trust-inner{grid-template-columns:1fr;gap:18px}
    .studio-page .hero-sub h1,.studio-page .ultra-page-hero h1,.studio-page .smw-pricing-hero h1,.studio-page .reference-hero h1{font-size:clamp(3rem,8vw,4.4rem)!important}
}
@media(max-width:680px){
    .studio-public .studio-hero-copy h1{font-size:clamp(3rem,14vw,4.15rem)}
    .studio-public .studio-home h2,.studio-page main h2{font-size:clamp(2rem,10vw,3rem)}
    .studio-trust-inner{padding-block:24px}.studio-trust-list{grid-template-columns:1fr}
    .studio-page .hero-sub,.studio-page .ultra-page-hero,.studio-page .smw-pricing-hero{padding:52px 0!important}
    .studio-page main>.section,.studio-page main>.ultra-section{padding-block:48px}
    .studio-page .hero-sub h1,.studio-page .ultra-page-hero h1,.studio-page .smw-pricing-hero h1,.studio-page .reference-hero h1{font-size:clamp(2.75rem,13vw,3.7rem)!important}
    .studio-page .ultra-landing-list article,.studio-page .ultra-benefit-grid article,.studio-page .ultra-check-card,.studio-page .smw-price-card{padding:20px!important}
    .studio-faq-grid{grid-template-columns:1fr}
}

/* Referenzen 2027 – bildstarkes Portfolio statt langem Kartenarchiv */
.page-referenzen .portfolio-page{background:#f2f5f3}
.portfolio-hero{position:relative;overflow:hidden;padding:clamp(62px,7vw,92px) 0 118px;color:#fff;background:#071b31}
.portfolio-hero:after{position:absolute;right:-110px;top:-220px;width:560px;height:560px;border:82px solid rgba(142,230,0,.08);border-radius:50%;content:""}
.portfolio-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.6fr);align-items:end;gap:clamp(45px,9vw,140px)}
.portfolio-kicker{display:inline-flex;align-items:center;gap:10px;color:#b9f75c;font-size:.68rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.portfolio-kicker:before{width:28px;height:2px;border-radius:99px;background:#8ee600;content:""}
.portfolio-hero h1{max-width:850px;margin:20px 0 0;color:#fff;font-size:clamp(3.7rem,5.8vw,5.8rem);line-height:.89;letter-spacing:-.075em}
.portfolio-hero h1 em{display:block;color:#9aea1d;font-family:Georgia,serif;font-size:.72em;font-weight:500;letter-spacing:-.055em}
.portfolio-hero-side{display:grid;gap:25px;padding-bottom:7px}
.portfolio-hero-side>p{margin:0;color:#b8c8d2;font-size:1rem;line-height:1.72}
.portfolio-proof{display:flex;align-items:center;gap:16px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}
.portfolio-proof strong{color:#fff;font-size:2.7rem;line-height:1;letter-spacing:-.06em}
.portfolio-proof span{color:#9fb3c0;font-size:.68rem;font-weight:850;line-height:1.45;text-transform:uppercase}

.portfolio-feature-section{position:relative;z-index:2;margin-top:-70px;padding-bottom:clamp(74px,8vw,112px);background:linear-gradient(180deg,transparent 0 70px,#f2f5f3 70px)}
.portfolio-feature-card{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);overflow:hidden;min-height:480px;border:1px solid rgba(255,255,255,.12);border-radius:28px;color:#071b31;background:#fff;box-shadow:0 34px 90px rgba(7,27,49,.20);transition:.25s ease}
.portfolio-feature-card:hover{color:#071b31;box-shadow:0 38px 105px rgba(7,27,49,.25);transform:translateY(-4px)}
.portfolio-feature-image{position:relative;overflow:hidden;min-height:480px;background:#dfe7e6}
.portfolio-feature-image img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:.45s ease}
.portfolio-feature-card:hover .portfolio-feature-image img{transform:scale(1.018)}
.portfolio-feature-image>span{position:absolute;left:20px;top:20px;padding:8px 12px;border:1px solid rgba(255,255,255,.35);border-radius:999px;color:#fff;background:rgba(7,27,49,.76);font-size:.62rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(10px)}
.portfolio-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(34px,5vw,62px)}
.portfolio-feature-copy>span{color:#638d00;font-size:.65rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.portfolio-feature-copy h2{margin:17px 0 16px!important;font-size:clamp(2.4rem,4vw,4.2rem)!important;line-height:.95!important}
.portfolio-feature-copy p{margin:0;color:#617083;line-height:1.7}
.portfolio-feature-copy ul{display:grid;gap:8px;margin:26px 0 30px;padding:0;list-style:none;color:#405468;font-size:.76rem;font-weight:850}
.portfolio-feature-copy li:before{margin-right:9px;color:#74b900;content:"●"}
.portfolio-feature-copy>strong{margin-top:auto;color:#568000;font-size:.78rem}

.portfolio-archive-section{padding:0 0 clamp(78px,9vw,125px);background:#f2f5f3}
.portfolio-archive-head{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:34px}
.portfolio-kicker-dark{color:#5b7d06}
.portfolio-archive-head h2{margin:14px 0 0!important;font-size:clamp(2.5rem,4vw,4.1rem)!important}
.portfolio-filter-tabs{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;padding:6px;border:1px solid #dbe3e2;border-radius:15px;background:#fff;box-shadow:0 12px 35px rgba(7,27,49,.06)}
.portfolio-filter-tabs button{min-height:39px;padding:0 13px;border:0;border-radius:10px;color:#586a7a;background:transparent;font-size:.67rem;font-weight:900}
.portfolio-filter-tabs button.active,.portfolio-filter-tabs button:hover{color:#173000;background:#8ee600}
.portfolio-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.portfolio-card.project-card{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto 1fr!important;overflow:hidden!important;min-height:0!important;border:1px solid #dce4e3!important;border-radius:21px!important;color:#071b31!important;background:#fff!important;box-shadow:none!important;transition:.22s ease!important}
.portfolio-card.project-card:hover{border-color:#a5c979!important;color:#071b31!important;box-shadow:0 22px 60px rgba(7,27,49,.11)!important;transform:translateY(-4px)!important}
.portfolio-card-image{position:relative;overflow:hidden;aspect-ratio:16/10;background:#0c2945}
.portfolio-card-image img{width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important;object-position:top center;transition:.4s ease}
.portfolio-card:hover .portfolio-card-image img{transform:scale(1.035)}
.portfolio-card-image>span{position:absolute;right:13px;bottom:13px;padding:7px 10px;border-radius:999px;color:#fff;background:rgba(7,27,49,.78);font-size:.6rem;font-weight:900;opacity:0;transform:translateY(6px);transition:.2s ease;backdrop-filter:blur(8px)}
.portfolio-card:hover .portfolio-card-image>span{opacity:1;transform:none}
.portfolio-card-copy{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;padding:22px!important}
.portfolio-card-copy small{overflow:hidden;color:#648600;font-size:.59rem;font-weight:950;letter-spacing:.09em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.portfolio-card-copy h3{margin:12px 0 10px!important;font-size:1.28rem!important;line-height:1.12!important;letter-spacing:-.035em!important}
.portfolio-card-copy p{margin:0!important;color:#697884!important;font-size:.76rem!important;line-height:1.58!important}

.portfolio-outro{padding:clamp(55px,7vw,88px) 0;color:#fff;background:#0b263f}
.portfolio-outro .container{display:flex;align-items:end;justify-content:space-between;gap:40px}
.portfolio-outro span{color:#b9f75c;font-size:.67rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}
.portfolio-outro h2{max-width:760px;margin:13px 0 0!important;color:#fff!important;font-size:clamp(2.3rem,4vw,4rem)!important}
.portfolio-outro .studio-button span{color:inherit;font-size:inherit;letter-spacing:0;text-transform:none}

@media(max-width:980px){
    .portfolio-hero-grid{grid-template-columns:1fr;align-items:start;gap:30px}.portfolio-hero-side{max-width:620px}
    .portfolio-feature-card{grid-template-columns:1fr;min-height:0}.portfolio-feature-image{min-height:0;aspect-ratio:16/9}
    .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .portfolio-archive-head{align-items:flex-start;flex-direction:column}.portfolio-filter-tabs{justify-content:flex-start}
}
@media(max-width:640px){
    .portfolio-hero{padding:52px 0 92px}.portfolio-hero h1{font-size:clamp(3rem,14vw,4.05rem)}.portfolio-hero:after{right:-250px;top:-170px}
    .portfolio-feature-section{margin-top:-48px;background:linear-gradient(180deg,transparent 0 48px,#f2f5f3 48px)}
    .portfolio-feature-card{border-radius:22px}.portfolio-feature-image{aspect-ratio:16/11}.portfolio-feature-copy{padding:25px}
    .portfolio-feature-copy h2{font-size:2.7rem!important}.portfolio-feature-copy ul{margin-block:22px}
    .portfolio-filter-tabs{width:100%;overflow:visible!important;flex-wrap:wrap!important;justify-content:flex-start}.portfolio-filter-tabs button{flex:0 0 auto}
    .portfolio-grid{grid-template-columns:1fr!important}.portfolio-card-copy{padding:20px!important}
    .portfolio-outro .container{align-items:flex-start;flex-direction:column}.portfolio-outro .studio-button{width:100%}
}
