/* Homepage only. */
.studio-grid{grid-template-columns:var(--page-gutter) repeat(2,minmax(0,1fr)) var(--page-gutter);grid-template-rows:auto auto;min-height:0;background:#edf2f4;padding:0}
.studio-intro{grid-column:1/-1;grid-row:auto;min-height:clamp(460px,56vh,650px);margin:0;padding:clamp(28px,3vw,48px) var(--page-gutter) 42px;background:radial-gradient(ellipse at 82% 65%,rgba(88,179,202,.08),transparent 46%),linear-gradient(120deg,var(--tc-primary),var(--tc-hero-deep))}
.studio-intro::after{display:none}.studio-intro::before{opacity:.09}
.studio-rail-hero{margin:auto 0;padding:48px 0 32px}.studio-rail-hero h1{max-width:100%;font-size:clamp(52px,5.1vw,86px);line-height:1;letter-spacing:-.055em}
.studio-partner-cluster{position:relative;inset:auto;align-self:flex-end;display:flex;align-items:center;gap:22px;min-height:0;border:0;background:none;box-shadow:none}
.studio-partner-cluster::before,.studio-partner-cluster::after{display:none}
.studio-partner-badge{position:static;width:118px;transform:none;box-shadow:none;order:-1}
.studio-erp-hero-link{position:static;inset:auto;padding:10px 0;gap:28px;font-size:13px}
.studio-services,.studio-products{min-height:390px;margin:0 0 64px;color:var(--tc-primary);background:transparent;border-top:0;border-bottom:1px solid #cbd8de}
.studio-products{grid-column:3}.studio-services{grid-column:2;border-right:1px solid #cbd8de}.studio-services::after,.studio-products::after,.studio-tile-shade{display:none}
.studio-tile-content,.studio-products .studio-tile-content{justify-content:flex-start;padding:38px clamp(28px,3.2vw,56px) 32px}
.studio-eyebrow{position:static;color:#607983;font-size:10px;margin-bottom:25px}.studio-eyebrow::before{background:#58b3ca;width:30px;height:2px}
.studio-tile h2{margin:0 0 20px;font-size:clamp(30px,2.6vw,44px);line-height:1.08;letter-spacing:-.04em}
.studio-tile-content>p{color:#657782;font-size:16px;line-height:1.65;max-width:590px}
.studio-tile-link{position:static;inset:auto;margin-top:auto;padding-top:26px;color:var(--tc-primary);border-color:#cbd8de}.studio-services .studio-tile-link{margin-top:36px}
.studio-system-map{width:48%;right:0;bottom:0;stroke:var(--tc-primary);opacity:.07}.studio-system-map circle{fill:var(--tc-primary)}.studio-services:hover .studio-system-map{opacity:.12;transform:none}
.studio-services:hover{background:rgba(255,255,255,.4)}.studio-services:focus-visible{outline:2px solid var(--tc-primary);outline-offset:5px}
.studio-product-links{display:grid;grid-template-columns:1fr;gap:0;border:0}
.studio-product-link{min-height:64px;grid-template-columns:104px minmax(0,1fr) auto;padding:14px 0;gap:18px;color:var(--tc-primary);border:0;border-top:1px solid #cbd8de;background:transparent;box-shadow:none}
.studio-product-link:hover{background:rgba(255,255,255,.5);transform:none;border-color:#cbd8de}.studio-product-category{color:#657782}.studio-product-name{color:var(--tc-primary);font-size:13px}.studio-product-link .studio-tile-arrow{color:var(--tc-primary)}.studio-product-link:focus-visible{outline:2px solid var(--tc-primary);outline-offset:3px}
@media(max-width:800px){.studio-grid{grid-template-columns:var(--page-gutter) minmax(0,1fr) var(--page-gutter)}.studio-services,.studio-products{grid-column:2}.studio-intro{min-height:520px}.studio-rail-hero h1{font-size:clamp(48px,8.5vw,68px)}.studio-services,.studio-products{min-height:0;margin:0;border-right:0;border-top:0}.studio-services{margin-top:0}.studio-products{margin-bottom:32px}.studio-tile-content,.studio-products .studio-tile-content{padding:32px 0}.studio-tile h2{font-size:36px}.studio-product-links{margin-top:28px}}
@media(max-width:600px){.studio-intro{padding:26px 22px 30px;min-height:510px}.studio-rail-hero{padding:42px 0 36px}.studio-rail-hero h1{font-size:clamp(42px,11.8vw,62px)}.studio-partner-cluster{align-self:flex-start;gap:16px;width:100%}.studio-partner-badge{width:100px;flex-shrink:0}.studio-erp-hero-link{font-size:11.5px;gap:12px;flex:1}.studio-tile h2,.studio-services h2{font-size:clamp(29px,8vw,36px)}.studio-product-link{grid-template-columns:92px minmax(0,1fr) auto;min-height:74px;gap:12px}.studio-tile-content>p{font-size:15px}}
/* Keep legacy hover treatments readable on the light surface. */
.studio-erp-hero-link,.studio-erp-hero-link:hover{border:0;background:none;box-shadow:none}
.studio-partner-cluster:has(.studio-erp-hero-link:hover){transform:none}
.studio-product-link:hover .studio-product-name{color:var(--tc-primary)}
.studio-product-link:hover .studio-tile-arrow::before,.studio-product-link:focus-visible .studio-tile-arrow::before{background:var(--tc-primary)}
/* Shared content axes, compact hero and clearer product references. */
.studio-intro { min-height:clamp(420px,49vh,560px); padding-bottom:30px; }
.studio-rail-hero { padding:36px 0 28px; }
.studio-partner-cluster { align-self:stretch; justify-content:flex-start; width:100%; padding-top:18px; border-top:1px solid rgba(188,211,225,.23); }
.studio-services .studio-tile-content { padding-left:0; padding-right:clamp(28px,3.2vw,56px); }
.studio-products .studio-tile-content { padding-left:clamp(28px,3.2vw,56px); padding-right:0; }
.studio-services,.studio-products { border-color:#adbec8; }
.studio-tile-content > p { color:#485f6c; }
.studio-eyebrow { color:#466574; }
.studio-tile-link { border-color:#adbec8; }
.studio-product-links { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:30px; padding-top:0; }
.studio-product-link { position:relative; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:48px auto; align-items:start; gap:16px 10px; min-height:160px; padding:18px; border:1px solid #adbec8; background:rgba(255,255,255,.58); }
.studio-product-logo { grid-column:1/-1; height:48px; }
.studio-product-copy { grid-column:1; grid-row:2; gap:8px; }
.studio-product-link > .studio-tile-arrow { grid-column:2; grid-row:2; align-self:center; border-color:#7893a2; }
.studio-product-category { color:#485f6c; font-size:10px; letter-spacing:.035em; }
.studio-product-name { color:var(--tc-primary); font-size:13px; line-height:1.4; }
.studio-product-link:hover { background:#fff; border-color:#7893a2; }
.studio-tile-link > .studio-tile-arrow { border-color:#7893a2; color:var(--tc-primary); }
.studio-tile-arrow::before { background:var(--tc-primary); }
.studio-voices { padding-left:var(--page-gutter); padding-right:var(--page-gutter); }
@media(max-width:800px) {
 .studio-intro { min-height:460px; }
 .studio-services .studio-tile-content,.studio-products .studio-tile-content { padding:32px 0; }
}
@media(max-width:600px) {
 .studio-intro { min-height:450px; padding-left:var(--page-gutter); padding-right:var(--page-gutter); }
 .studio-rail-hero { padding:36px 0 28px; }
 .studio-partner-cluster { align-self:stretch; padding-top:16px; }
 .studio-product-links { gap:10px; }
 .studio-product-link { grid-template-columns:minmax(0,1fr) auto; min-height:170px; padding:14px 12px; gap:14px 6px; }
 .studio-product-name { font-size:12px; }
 .studio-product-category { font-size:9px; }
}
@media(max-width:360px) {
 .studio-product-links { grid-template-columns:1fr; }
}
/* Hero footer: competence links left, partner badge right. */
.studio-partner-cluster { border:0; padding-top:0; justify-content:space-between; gap:28px; }
.studio-hero-competence { display:flex; align-items:center; flex-wrap:wrap; gap:16px 40px; }
.studio-hero-competence .studio-erp-hero-link { display:inline-flex; gap:24px; padding:10px 0; font-size:clamp(13px,1vw,16px); color:#e4edf3; letter-spacing:.015em; }
.studio-hero-competence .studio-tile-arrow { color:#73b4ca; border-color:rgba(185,213,227,.55); }
.studio-hero-competence .studio-tile-arrow::before { background:currentColor; }
.studio-hero-competence .studio-erp-hero-link:hover { color:#fff; }
.studio-hero-competence .studio-erp-hero-link:hover .studio-tile-arrow { transform:translateX(4px); background:rgba(115,180,202,.13); border-color:#73b4ca; }
.studio-partner-cluster .studio-partner-badge { order:0; flex:0 0 118px; width:118px; margin-left:auto; }
@media(max-width:600px) {
 .studio-partner-cluster { align-items:flex-end; gap:20px; padding-top:0; }
 .studio-hero-competence { flex-direction:column; align-items:flex-start; gap:8px; }
 .studio-hero-competence .studio-erp-hero-link { flex:none; font-size:11.5px; gap:12px; }
 .studio-partner-cluster .studio-partner-badge { flex-basis:90px; width:90px; }
}
@media(max-width:380px) {
 .studio-partner-cluster { flex-wrap:wrap; }
}
/* Slightly taller hero; center the slogan between header and footer. */
.studio-intro { min-height:clamp(480px,56vh,640px); display:grid; grid-template-rows:auto minmax(0,1fr) auto; }
.studio-rail-hero { align-self:center; margin:0; padding:32px 0; }
@media(max-width:800px) { .studio-intro { min-height:520px; } }
@media(max-width:600px) { .studio-intro { min-height:500px; } }
/* Hide the text fallback; draw a single arrow with the original circle and hover. */
.studio-tile-arrow,
.studio-product-link .studio-tile-arrow,
.studio-tile-link > .studio-tile-arrow,
.studio-hero-competence .studio-tile-arrow { color:transparent; font-size:0; }
.studio-hero-competence .studio-tile-arrow { border-color:rgba(255,255,255,.48); background:transparent; }
.studio-hero-competence .studio-tile-arrow::before { background:rgba(255,255,255,.9); }
.studio-hero-competence .studio-erp-hero-link:hover .studio-tile-arrow,
.studio-hero-competence .studio-erp-hero-link:focus-visible .studio-tile-arrow { border-color:rgba(255,255,255,.9); background:rgba(255,255,255,.9); transform:translateX(4px); }
.studio-hero-competence .studio-erp-hero-link:hover .studio-tile-arrow::before,
.studio-hero-competence .studio-erp-hero-link:focus-visible .studio-tile-arrow::before { background:var(--tc-primary); }
/* Taller hero, retaining the centered middle row. */
.studio-intro { min-height:clamp(620px,72vh,820px); }
@media(max-width:800px) { .studio-intro { min-height:620px; } }
@media(max-width:600px) { .studio-intro { min-height:600px; } }
/* Compact product rows and an open lower edge for the services section. */
.studio-services,.studio-products { min-height:0; border-bottom:0; margin-bottom:32px; }
.studio-services .studio-tile-link { border-top:0; padding-top:0; margin-top:28px; }
.studio-product-links { margin-top:24px; }
.studio-product-link { min-height:80px; grid-template-columns:82px minmax(0,1fr) auto; grid-template-rows:auto; align-items:center; gap:12px; padding:12px; }
.studio-product-logo { grid-column:1; grid-row:1; height:40px; align-items:center; }
.studio-product-copy { grid-column:2; grid-row:1; gap:6px; }
.studio-product-link > .studio-tile-arrow { grid-column:3; grid-row:1; align-self:center; }
.studio-product-name { font-size:12px; }
.studio-product-category { font-size:9px; letter-spacing:.02em; }
@media(max-width:1180px) and (min-width:801px) {
 .studio-product-link { grid-template-columns:62px minmax(0,1fr) auto; gap:8px; padding:10px; }
}
@media(max-width:600px) {
 .studio-product-link { min-height:80px; grid-template-columns:48px minmax(0,1fr) auto; grid-template-rows:auto; gap:7px; padding:10px 8px; }
 .studio-product-name { font-size:11px; }
 .studio-product-category { font-size:8px; }
}
/* Extend the middle divider through the section's lower spacing. */
@media(min-width:801px) {
 .studio-services,.studio-products { margin-bottom:0; }
 .studio-services .studio-tile-content,.studio-products .studio-tile-content { padding-bottom:64px; }
}
/* Slightly stronger, still compact product references. */
.studio-product-link { min-height:92px; grid-template-columns:94px minmax(0,1fr) auto; border-color:#93aab7; }
.studio-product-logo { height:46px; }
.studio-product-logo > img { opacity:1; filter:none; }
.studio-product-easydelivery .studio-product-logo > img { max-height:36px; }
.studio-product-schloesslekeller .studio-product-logo > img { max-width:90%; max-height:42px; }
.studio-product-category { color:#3c5361; }
.studio-product-name { color:var(--tc-primary); }
.studio-product-link:hover .studio-product-name { color:var(--tc-primary); }
@media(max-width:1180px) and (min-width:801px) {
 .studio-product-link { grid-template-columns:70px minmax(0,1fr) auto; }
}
@media(max-width:600px) {
 .studio-product-link { min-height:92px; grid-template-columns:54px minmax(0,1fr) auto; }
}
/* Visible blue product-arrow circles on hover and keyboard focus. */
.studio-product-link:hover .studio-tile-arrow,
.studio-product-link:focus-visible .studio-tile-arrow {
 border-color:var(--tc-primary);
 background:#d5e8ef;
 transform:translateX(4px);
}
.studio-product-link:hover .studio-tile-arrow::before,
.studio-product-link:focus-visible .studio-tile-arrow::before { background:var(--tc-primary); }
/* Keep the project link readable on the light service surface. */
.studio-services:hover .studio-tile-link,
.studio-services:focus-visible .studio-tile-link { color:var(--tc-primary-hover); }
.studio-services:hover .studio-tile-arrow,
.studio-services:focus-visible .studio-tile-arrow {
 border-color:var(--tc-primary);
 background:#d5e8ef;
 transform:translateX(4px);
}
.studio-services:hover .studio-tile-arrow::before,
.studio-services:focus-visible .studio-tile-arrow::before { background:var(--tc-primary); }
/* Only the project link is interactive, not the service tile. */
.studio-services:hover { background:transparent; }
.studio-services:hover .studio-tile-link { color:var(--tc-primary); }
.studio-services:hover .studio-tile-arrow { background:transparent; border-color:#7893a2; transform:none; }
.studio-services .studio-project-link { display:inline-flex; align-self:flex-start; align-items:center; gap:22px; text-decoration:none; }
.studio-services .studio-project-link:hover,.studio-services .studio-project-link:focus-visible { color:var(--tc-primary-hover); }
.studio-services .studio-project-link:hover .studio-tile-arrow,
.studio-services .studio-project-link:focus-visible .studio-tile-arrow { background:#d5e8ef; border-color:var(--tc-primary); transform:translateX(4px); }
.studio-project-link:focus-visible { outline:2px solid var(--tc-primary); outline-offset:5px; }
/* Smaller, matching service and product headings. */
.studio-services h2,.studio-products h2 { font-size:clamp(26px,2.4vw,40px); line-height:1.15; text-wrap:initial; }
@media(max-width:800px) {
 .studio-services h2,.studio-products h2 { font-size:clamp(24px,4vw,30px); }
}
/* More room for two-line descriptions, with equal columns and shared outer axes. */
:root { --content-width:1640px; }
@media(min-width:801px) {
 .studio-services .studio-tile-content { padding-right:24px; }
 .studio-products .studio-tile-content { padding-left:24px; }
 .studio-tile-content > p { max-width:none; }
}
/* Align the project link with the center of the product logo row. */
@media(min-width:801px) {
 .studio-services .studio-tile-content,.studio-products .studio-tile-content { display:grid; grid-template-rows:auto auto 1fr 92px; align-content:start; }
 .studio-services .studio-eyebrow,.studio-products .studio-eyebrow { margin-bottom:25px; }
 .studio-services .studio-project-link { grid-row:4; align-self:center; justify-self:start; margin-top:24px; padding:0; }
 .studio-products .studio-product-links { grid-row:4; align-self:center; margin-top:24px; }
}
/* Fine closing rule across both columns. */
.studio-services,.studio-products { border-bottom:1px solid #c7d2d5; }
/* Give product copy more breathing room beside the logos. */
.studio-product-copy { padding-left:12px; }
@media(max-width:600px) { .studio-product-copy { padding-left:6px; } }
/* Quiet references, retaining all customer logos. */
.studio-voices-track { gap:clamp(28px,3vw,48px); }
.studio-voice,.studio-voice:hover { padding:0; border:0; background:transparent; transform:none; box-shadow:none; }
.studio-voice::before { display:none; }
.studio-eyebrow::before { background:var(--tc-primary); }
@media(min-width:1181px) { .studio-voices-track { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:600px) { .studio-voices-track { gap:20px; } .studio-voice { padding:0 4px; } }
/* Customer logos beside the attribution. */
.studio-voice-attribution { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.studio-voice-attribution > div { min-width:0; }
.studio-voice-attribution > div > span { display:block; margin-top:4px; color:#758187; font-size:12px; }
.studio-voice-attribution .studio-voice-logo { flex:0 1 100px; width:100px; height:40px; margin:0; align-items:center; justify-content:flex-end; }
.studio-voice-attribution .studio-voice-logo img { max-width:100%; max-height:32px; object-position:right center; }
/* Compact spacing between each reference and its attribution. */
.studio-voice { min-height:0; gap:18px; }
.studio-voice > .studio-voice-attribution { margin-top:0; }
/* Align attribution rows to the longest reference in each grid row. */
.studio-voices-track { align-items:stretch; }
.studio-voice > .studio-voice-attribution { margin-top:auto; }
/* Identical column axes for references and footer. */
.studio-voices-track,.studio-footer-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(28px,3vw,48px); }
.studio-voice-attribution { flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:12px; }
.studio-voice-attribution .studio-voice-logo { flex:none; width:100px; height:32px; justify-content:flex-start; }
.studio-voice-attribution .studio-voice-logo img { object-position:left center; }
@media(max-width:1180px) {
 .studio-voices-track,.studio-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
 .studio-footer-grid { grid-template-columns:1fr; gap:45px; }
 .studio-voices-track { display:flex; gap:20px; }
}
/* Logos beside names within the shared column grid. */
.studio-voice-attribution { flex-direction:row; align-items:center; justify-content:space-between; gap:16px; }
.studio-voice-attribution .studio-voice-logo { flex:0 1 100px; width:100px; height:40px; justify-content:flex-end; }
.studio-voice-attribution .studio-voice-logo img { object-position:right center; }
/* Display homepage content immediately, without entrance animations. */
.studio-grid *, .studio-grid *::before, .studio-grid *::after { animation:none !important; }

@media(max-width:600px) { .studio-intro { padding-top:26px; } }

/* More space above the shared project/product row. */
.studio-products .studio-product-links { margin-top:56px; }
.studio-services .studio-project-link { margin-top:60px; }
@media(min-width:801px) {
 .studio-services .studio-project-link,.studio-products .studio-product-links { margin-top:56px; }
}
/* Larger product logos with comparable visual weight. */
.studio-product-link { grid-template-columns:116px minmax(0,1fr) auto; }
.studio-product-logo { height:50px; }
.studio-product-easydelivery .studio-product-logo > img { width:116px; max-width:100%; max-height:42px; }
.studio-product-schloesslekeller .studio-product-logo > img { width:104px; max-width:90%; max-height:44px; }
@media(max-width:1180px) and (min-width:801px) { .studio-product-link { grid-template-columns:88px minmax(0,1fr) auto; } }
@media(max-width:600px) { .studio-product-link { grid-template-columns:66px minmax(0,1fr) auto; } }
/* Full-width closing rule beneath the service/product section. */
.studio-grid { border-bottom:1px solid #c7d2d5; }
.studio-services,.studio-products { border-bottom:0; }
/* Project tile shares the size and treatment of one product tile. */
.studio-services .studio-project-link {
 display:grid;
 grid-template-columns:40px minmax(0,1fr) auto;
 align-items:center;
 gap:16px;
 width:calc((100% - 14px)/2);
 min-height:92px;
 padding:12px;
 border:1px solid #93aab7;
 background:rgba(255,255,255,.58);
 font-size:12px;
 color:var(--tc-primary);
 box-shadow:none;
}
.studio-project-icon { width:32px; height:32px; color:var(--tc-primary); }
.studio-services .studio-project-link:hover,.studio-services .studio-project-link:focus-visible { background:#fff; border-color:#7893a2; color:var(--tc-primary); }
@media(max-width:600px) {
 .studio-services .studio-project-link { width:calc((100% - 10px)/2); grid-template-columns:24px minmax(0,1fr) auto; gap:7px; padding:10px 8px; font-size:11px; }
 .studio-project-icon { width:24px; height:24px; }
}
@media(max-width:360px) { .studio-services .studio-project-link { width:100%; } }
/* Compact tiles below the roomy desktop layout. */
@media(max-width:1399px) {
 .studio-product-link { grid-template-columns:72px minmax(0,1fr); gap:12px; padding:12px; }
 .studio-product-link > .studio-tile-arrow,
 .studio-services .studio-project-link > .studio-tile-arrow { display:none; }
 .studio-product-copy { padding-left:0; overflow-wrap:anywhere; }
 .studio-product-easydelivery .studio-product-logo > img { width:72px; max-height:30px; }
 .studio-product-schloesslekeller .studio-product-logo > img { width:66px; max-height:32px; }
 .studio-services .studio-project-link { grid-template-columns:28px minmax(0,1fr); gap:12px; }
 .studio-project-icon { width:26px; height:26px; }
 .studio-services .studio-project-link > span:not(.studio-tile-arrow) { min-width:0; }
}
@media(max-width:600px) {
 .studio-product-link { grid-template-columns:52px minmax(0,1fr); gap:9px; padding:12px 10px; }
 .studio-product-easydelivery .studio-product-logo > img { width:52px; }
 .studio-product-schloesslekeller .studio-product-logo > img { width:48px; }
 .studio-services .studio-project-link { grid-template-columns:24px minmax(0,1fr); gap:10px; }
}
@media(max-width:480px) {
 .studio-services .studio-project-link { width:100%; }
 .studio-product-links { grid-template-columns:1fr; gap:12px; }
 .studio-product-link { grid-template-columns:76px minmax(0,1fr); }
 .studio-product-easydelivery .studio-product-logo > img { width:76px; }
 .studio-product-schloesslekeller .studio-product-logo > img { width:68px; }
 .studio-product-category { font-size:10px; }
 .studio-product-name { font-size:12px; }
}
@media(hover:none) {
 .studio-product-link:hover,.studio-services .studio-project-link:hover { background:rgba(255,255,255,.58); border-color:#93aab7; }
}
/* Stack product tiles in the medium two-column layout. */
@media(min-width:801px) and (max-width:1399px) {
 .studio-products .studio-product-links { grid-template-columns:1fr; gap:12px; }
 .studio-services .studio-tile-content,.studio-products .studio-tile-content { grid-template-rows:auto auto 1fr auto; }
 .studio-product-copy { overflow-wrap:normal; }
 .studio-services .studio-project-link { align-self:center; }
}
@media(min-width:801px) and (max-width:1399px) {
 .studio-services .studio-project-link { width:100%; }
}
@media(min-width:801px) and (max-width:1399px) {
 .studio-services .studio-project-link { align-self:start; }
}
/* Reserve the same two-tile row height on both sides, top-aligned. */
@media(min-width:801px) and (max-width:1399px) {
 .studio-services .studio-tile-content,.studio-products .studio-tile-content { grid-template-rows:auto auto 1fr 252px; }
 .studio-services .studio-project-link,.studio-products .studio-product-links { align-self:start; margin-top:56px; }
}
/* Restore tile arrows once there is room in the wider tablet layout. */
@media(min-width:700px) and (max-width:1399px) {
 .studio-product-link { grid-template-columns:72px minmax(0,1fr) auto; }
 .studio-services .studio-project-link { grid-template-columns:28px minmax(0,1fr) auto; }
 .studio-product-link > .studio-tile-arrow,
 .studio-services .studio-project-link > .studio-tile-arrow { display:inline-flex; }
}
/* Full-height mobile hero and alternating full-width section surfaces. */
@media(max-width:800px) {
 .studio-intro { min-height:100vh; min-height:100svh; }
 .studio-services,.studio-products { grid-column:1/-1; margin:0; padding-left:var(--page-gutter); padding-right:var(--page-gutter); }
 .studio-services,.studio-services:hover { background:#edf2f4; }
 .studio-products { background:#f5f6f4; }
 .studio-services .studio-tile-content,.studio-products .studio-tile-content { padding-top:40px; padding-bottom:48px; }
 .studio-voices { background:#edf2f4; }
 .studio-footer { background:#f5f6f4; }
}
/* Consistent soft tile surfaces and primary-colored controls. */
.studio-product-link,.studio-services .studio-project-link {
 background:var(--tc-tile-surface);
 border-color:var(--tc-tile-border);
 box-shadow:none;
 transition:background-color .2s ease,border-color .2s ease;
}
.studio-project-icon,.studio-services .studio-project-link { color:var(--tc-primary); }
.studio-eyebrow::before { background:var(--tc-primary); }
@media(hover:hover) {
 .studio-product-link:hover,.studio-services .studio-project-link:hover {
  background:var(--tc-tile-hover);
  border-color:var(--tc-cyan);
 }
 .studio-product-link:hover .studio-tile-arrow,
 .studio-services .studio-project-link:hover .studio-tile-arrow {
  background:var(--tc-cyan);
  border-color:var(--tc-cyan);
 }
}
.studio-product-link:focus-visible,.studio-services .studio-project-link:focus-visible {
 background:var(--tc-tile-hover);
 border-color:var(--tc-cyan);
}
/* Primary project action, distinct from the product reference tiles. */
.studio-services .studio-project-link,
.studio-services .studio-project-link:focus-visible {
 background:var(--tc-primary);
 border-color:var(--tc-primary);
 color:#fff;
}
.studio-services .studio-project-icon { color:#fff; }
.studio-services .studio-project-link .studio-tile-arrow {
 border-color:rgba(255,255,255,.7);
 background:transparent;
}
.studio-services .studio-project-link .studio-tile-arrow::before { background:#fff; }
@media(hover:hover) {
 .studio-services .studio-project-link:hover { background:var(--tc-cta-hover); border-color:var(--tc-cta-hover); color:#fff; }
 .studio-services .studio-project-link:hover .studio-tile-arrow { background:var(--tc-cyan); border-color:var(--tc-cyan); }
 .studio-services .studio-project-link:hover .studio-tile-arrow::before { background:var(--tc-primary); }
}
.studio-services .studio-project-link:focus-visible { outline:2px solid var(--tc-primary); outline-offset:4px; }
/* Keep CTA text white even when the surrounding service section is hovered. */
.studio-services .studio-project-link,
.studio-services:hover .studio-project-link,
.studio-services .studio-project-link:visited,
.studio-services .studio-project-link:hover,
.studio-services .studio-project-link:focus-visible,
.studio-services .studio-project-link:active { color:#fff; }
.studio-services .studio-project-link > span:not(.studio-tile-arrow) { color:#fff; }
/* Compact primary action, retaining its alignment with the product row. */
.studio-services .studio-project-link {
 width:fit-content;
 min-width:260px;
 max-width:100%;
 min-height:64px;
 padding:16px 24px;
 gap:18px;
 grid-template-columns:28px minmax(0,1fr) auto;
}
@media(max-width:699px) {
 .studio-services .studio-project-link { grid-template-columns:28px minmax(0,1fr); }
}
@media(max-width:480px) {
 .studio-services .studio-project-link { width:100%; min-width:0; }
}
/* A compact action button alongside quiet product navigation cards. */
.studio-services .studio-project-link {
 grid-template-columns:minmax(0,1fr) auto;
 min-width:0;
 width:fit-content;
 min-height:52px;
 padding:14px 22px;
 gap:24px;
 font-size:14px;
 font-weight:600;
 line-height:1.4;
 border-radius:2px;
 box-shadow:none;
}
.studio-product-link {
 border-color:var(--tc-tile-border);
 background:var(--tc-tile-surface);
 border-radius:2px;
 box-shadow:none;
}
@media(min-width:1400px) {
 .studio-services .studio-project-link { align-self:center; }
}
@media(max-width:699px) {
 .studio-services .studio-project-link { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:480px) {
 .studio-services .studio-project-link { width:100%; justify-items:center; }
}